diff --git a/application/Bootstrap.php b/application/Bootstrap.php deleted file mode 100644 index 6d6355f7..00000000 --- a/application/Bootstrap.php +++ /dev/null @@ -1,157 +0,0 @@ -getOptions()); - Zend_Registry::set('config', $config); - - //Load old config - require_once 'WsScore/Configure.php'; - $oldconfig = new Configure(); - - return $config; - } - - //Initialisation global des paramètres de vue - protected function _initViewSettings() - { - $this->bootstrap('view'); - - $view = $this->getResource('view'); - $view->setEncoding('UTF-8'); - $view->doctype('HTML5'); - - $view->headMeta() - ->appendHttpEquiv('viewport', 'width=device-width, initial-scale=1.0') - ->appendHttpEquiv('Content-Type', 'text/html; charset=UTF-8') - ->appendHttpEquiv('Content-Language', 'fr-FR'); - - $view->headLink() - ->appendStylesheet('/libs/bootstrap-v3.0.0/css/bootstrap.min.css', 'all') - ->appendStylesheet('/themes/default/css/docs.css', 'all') - ->appendStylesheet('/themes/default/css/main.css', 'all'); - - $view->headScript() - ->appendFile('/libs/html5shiv.js', 'text/javascript', array('conditional' => 'lt IE 9')) - ->appendFile('/libs/respond.min.js', 'text/javascript', array('conditional' => 'lt IE 9')); - - $view->inlineScript() - ->appendFile('/themes/default/js/jquery.js', 'text/javascript') - ->appendFile('/libs/bootstrap-v3.0.0/js/bootstrap.min.js', 'text/javascript') - ->appendFile('/themes/default/js/scripts.js', 'text/javascript'); - - $view->headTitle()->setSeparator(' - '); - $view->headTitle('Web Service API - Scores & Decisions'); - } - - //Initialisation global des paramètres de log - protected function _initLogging() - { - /*$c = Zend_Registry::get('config'); - $WsLogger = new Zend_Log(); - $WsFileWriter = new Zend_Log_Writer_Stream($c->profil->path->log.'/wsentreprise.log'); - $WsFileWriter->addFilter(Zend_Log::INFO); - $WsLogger->addWriter($WsFileWriter); - Zend_Registry::set('WsLogger', $WsLogger);*/ - } - - protected function _initRouter() - { - $this->bootstrap('frontController'); - $front = $this->getResource('frontController'); - $router = $front->getRouter(); - - //Lire les services disponibles et créer les routes - $services = require_once APPLICATION_PATH . '/../library/WsScore/ServicesConfig.php'; - foreach( $services as $section => $params ) - { - if ($params['actif']) { - $route = new Zend_Controller_Router_Route($section.'/:version', array( - 'controller' => 'service', - 'action' => 'index', - 'service' => $section, - 'version' => '', - )); - $router->addRoute($section, $route); - - $route = new Zend_Controller_Router_Route('jsonrpc/'.$section.'/:version', array( - 'controller' => 'jsonrpc', - 'action' => 'index', - 'service' => $section, - 'version' => '', - )); - $router->addRoute('jsonrpc-'.$section, $route); - } - } - - //Route pour WS Clients - $route = new Zend_Controller_Router_Route('clients/:client/:version', array( - 'controller' => 'service', - 'action' => 'index', - 'service' => 'clients', - 'client' => '', - 'version' => '' - )); - $router->addRoute('client', $route); - - $fichierRoute = new Zend_Controller_Router_Route('fichier/:action/:fichier', array( - 'controller' => 'fichier', - 'fichier' => '', - )); - $router->addRoute('fichier', $fichierRoute); - return $router; - } - - protected function _initDb() - { - $c = Zend_Registry::get('config'); - try { - $db = Zend_Db::factory($c->profil->db->metier); - } catch ( Exception $e ) { - if (APPLICATION_ENV == 'development') { - echo '
'; print_r($e); echo '
'; - } else { - echo "Le service rencontre actuellement un problème technique."; - } - exit; - } - - /** - * Set the default adapter to use with all model - */ - Zend_Db_Table::setDefaultAdapter($db); - } - - protected function _initWsDebug() - { - $autoloader = Zend_Loader_Autoloader::getInstance(); - $autoloader->registerNamespace('WsDebug'); - - $options = array( - 'plugins' => array( - 'Exception', - ), - ); - - $debug = new WsDebug_Controller_Plugin_Debug($options); - - $this->bootstrap('frontController'); - $frontController = $this->getResource('frontController'); - $frontController->registerPlugin($debug); - } - - protected function _initCache() - { - if ( APPLICATION_ENV!='development' ) { - //MetadataCache pour la base de données - $frontendOptions = array( - 'lifetime' => 14400, - 'automatic_serialization' => true - ); - $backendOptions = array(); - $cache = Zend_Cache::factory('Core','Apc', $frontendOptions, $backendOptions); - Zend_Db_Table_Abstract::setDefaultMetadataCache($cache); - } - } -} \ No newline at end of file diff --git a/application/configs/webservices.ini b/application/configs/webservices.ini deleted file mode 100644 index 2152341f..00000000 --- a/application/configs/webservices.ini +++ /dev/null @@ -1,20 +0,0 @@ -[production] -webservice.scores.wsdl = "" -webservice.scores.options.location = "http://192.168.3.2/ws2/" -webservice.scores.options.uri = "http://192.168.3.2/" -webservice.scores.options.trace = 1 -webservice.scores.options.soap_version = SOAP_1_1 - -[staging] -webservice.scores.wsdl = "" -webservice.scores.options.location = "http://78.31.45.206/ws2/" -webservice.scores.options.uri = "http://78.31.45.206/" -webservice.scores.options.trace = 1 -webservice.scores.options.soap_version = SOAP_1_1 - -[development] -webservice.scores.wsdl = "" -webservice.scores.options.location = "http://78.31.45.206/ws2/" -webservice.scores.options.uri = "http://78.31.45.206/" -webservice.scores.options.trace = 1 -webservice.scores.options.soap_version = SOAP_1_1 \ No newline at end of file diff --git a/application/controllers/DemoController.php b/application/controllers/DemoController.php deleted file mode 100644 index 52b03ad0..00000000 --- a/application/controllers/DemoController.php +++ /dev/null @@ -1,110 +0,0 @@ - array( - 'ws' => 'entreprise/v0.7?wsdl', - 'form' => 'getIdentite', - ), - ); - - public function init() - { - require_once 'Web/demo/getIdentite.php'; - $auth = Zend_Auth::getInstance(); - $this->_username = $auth->getIdentity()->username; - $this->_hash = $auth->getIdentity()->hash; - } - - public function indexAction() - { - //Liste - - - $tabMethods = array(); - foreach($this->methods as $method => $element){ - $url = $this->view->url(array( - 'controller' => 'demo', - 'action' => 'method', - 'name' => $method, - )); - $tabMethods[] = array( - 'nom' => $method, - 'url' => $url, - ); - } - - $this->view->assign('methods', $tabMethods); - } - - public function methodAction() - { - $method = $this->_getParam('name',''); - $this->view->assign('method', $method); - //Affichage du formulaire - if (array_key_exists($method, $this->methods)){ - $class = 'Form_'.$method; - if (class_exists($class)){ - $form = new $class; - $form->addElement('hidden', 'method', array( - 'value' => $method, - )); - if ($this->_request->isPost()) { - $formData = $this->_request->getPost(); - $form->populate($formData); - } - $this->view->assign('form', $form); - } else { - $this->view->assign('message',"Impossible d'afficher le formulaire !"); - } - } - } - - public function requeteAction() - { - if ($this->_request->isPost()) { - $formData = $this->_request->getPost(); - $method = $formData['method']; - $class = 'Form_'.$method; - if (class_exists($class)) { - $form = new $class; - if ($form->isValid($formData)) { - $method = $formData['method']; - $siret = $formData['siret']; - $accesWs = $this->methods[$method]['ws']; - $hostName = $this->getRequest()->getHttpHost(); - $options = array( - 'login' => $this->_username, - 'password' => $this->_hash, - 'features' => SOAP_USE_XSI_ARRAY_TYPE + SOAP_SINGLE_ELEMENT_ARRAYS - ); - $client = new Zend_Soap_Client('http://'.$hostName.'/'.$accesWs, $options); - $params = new StdClass(); - $params->siret = $siret; - try { - $reponse = $client->getIdentite($params); - } catch (Zend_Soap_Client_Exception $e) { - $reponse = $e->getMessage(); - } - $soap = array( - 'requete' => $params, - 'reponse' => $reponse, - ); - $this->view->assign('soap',$soap); - $xml = array( - 'requete' => $client->getLastRequest(), - 'reponse' => $client->getLastResponse() - ); - $this->view->assign('xml',$xml); - } else { - $this->_forward('method', 'demo', null, array('name'=> 'getIdentite')); - } - } - } - } - -} - diff --git a/application/controllers/DocumentationController.php b/application/controllers/DocumentationController.php deleted file mode 100644 index dc51bb25..00000000 --- a/application/controllers/DocumentationController.php +++ /dev/null @@ -1,226 +0,0 @@ -getRequest(); - $name = $request->getParam('name'); - - $this->view->key = $name; - } - - public function serviceAction() - { - $request = $this->getRequest(); - $type = $request->getParam('type', 'sd'); - $ws = strtolower($request->getParam('name','entreprise')); - - // Gestion des versions - $serviceVersions = array(); - $configServiceVersions = $this->view->WsServices[$ws]['versions']; - foreach( $configServiceVersions as $section => $params ){ - $serviceVersions[$section] = $params; - if ($params['defaut']) { - $defautVersion = $section; - } - } - $version = $request->getParam('version', $defautVersion); - - $this->view->assign('serviceName', $this->view->WsServices[$ws]['name']); - $this->view->assign('serviceVersion', $version); - - if ( $type == 'client') { - $client = $ws; - $ws = 'entreprise'; - } - - // Charger les classes et les types pour le service suivant la version - if ( $type == 'client') { - $pathClassService = 'WsScore/Clients/'.ucfirst($client).'/v'.$version.'/'; - } else { - $pathClassService = 'WsScore/'.ucfirst($ws).'/v'.$version.'/'; - } - - //Génération du tableau de mapping - $classmap = include $pathClassService.'Config.php'; - - //Définir l'url d'accès au WSDL - $wsdl_url = $this->view->baseUrl(); - if ( $type == 'client') { - $wsdl_url.= '/clients/'.$client.'/v'.$version; - } else { - $wsdl_url.= '/'.$ws.'/v'.$version; - } - if (APPLICATION_ENV == 'production'){ - $wsdl_url.= '?wsdl'; - } else { - $wsdl_url.= '?wsdl-auto'; - } - - // Affichage de la documentation - $doc = new Scores_WebClassDoc(ucfirst($ws), $classmap, $pathClassService); - $tabServiceMethods = $doc->getServiceMethods(); - // Tri des méthodes par ordre alphabétique - $tabServiceMethodsK = array(); - foreach($tabServiceMethods as $method) { - $tabServiceMethodsK[$method['name']] = $method; - } - ksort($tabServiceMethodsK); - $tabServiceTypes = $doc->getServiceTypes(); - - $this->view->assign('wsdl', $wsdl_url); - $this->view->assign('serviceMethods', $tabServiceMethodsK); - $this->view->assign('serviceTypes', $tabServiceTypes); - } - - /** - * Liste les exemples de code disponible pour chaque méthode - */ - public function exemplesAction() - { - $request = $this->getRequest(); - $ws = strtolower($request->getParam('ws','Entreprise')); - $auth = Zend_Auth::getInstance(); - - //Si client possède un webservice particulier alors on redirige vers la doc clients - $clients = include APPLICATION_PATH . '/../library/WsScore/Clients/ClientsConfig.php'; - foreach( $clients as $section => $params ){ - if ($params['actif']) { - $wsClients[$params['idClient']] = $section; - } - } - - if (array_key_exists($auth->getIdentity()->idClient, $wsClients)){ - - $this->_forward('clients', 'documentation', null, array( - 'nom' => $wsClients[$auth->getIdentity()->idClient] - )); - - } else { - - // Liste des webservices - $services = include APPLICATION_PATH . '/../library/WsScore/ServicesConfig.php'; - foreach( $services as $section => $params ) - { - if ($params['actif']) { - $wsServices[$section] = $params; - } - } - - // On vérifie que l'utilisateur peut accèder à la documentation - $username = $auth->getIdentity()->username; - $idClient = $auth->getIdentity()->idClient; - if ( array_key_exists($ws, $wsServices) ) - { - if ( isset($wsServices['idClient']) && $idClient!=$wsServices['idClient'] ) - { - $this->renderScript('documentation/nodoc.phtml'); - exit; - } - if ( isset($wsServices['user']) && !in_array($username, $wsServices['user']) ) - { - $this->renderScript('documentation/nodoc.phtml'); - exit; - } - } - - // Gestion des versions - $serviceVersions = array(); - $configServiceVersions = $wsServices[$ws]['versions']; - foreach( $configServiceVersions as $section => $params ){ - $serviceVersions[$section] = $params; - if ($params['defaut']) { - $defautVersion = $section; - } - } - $version = $request->getParam('version', $defautVersion); - - // Charger les classes et les types pour le service suivant la version - $pathClassService = 'WsScore/'.ucfirst($ws).'/v'.$version.'/'; - - //Génération du tableau de mapping - $classmap = include $pathClassService.'Config.php'; - - //Définir l'url d'accès au WSDL - $wsdl_url = $this->view->baseUrl(); - if (APPLICATION_ENV == 'production'){ - $wsdl_url.= '/'.$ws.'/v'.$version.'?wsdl'; - } else { - $wsdl_url.= '/'.$ws.'/v'.$version.'?wsdl-auto'; - } - // Affichage de la documentation - $doc = new Scores_WebClassDoc(ucfirst($ws), $classmap, $pathClassService); - $tabServiceMethods = $doc->getServiceMethods(); - // Tri des méthodes par ordre alphabétique - $tabServiceMethodsK = array(); - foreach($tabServiceMethods as $method) { - $tabServiceMethodsK[$method['name']] = $method; - } - ksort($tabServiceMethodsK); - $tabServiceTypes = $doc->getServiceTypes(); - $this->view->assign('wsdl', $wsdl_url); - $this->view->assign('serviceMethods', $tabServiceMethodsK); - $this->view->assign('serviceTypes', $tabServiceTypes); - - } - } - - /** - * Affichage exemple de code avec coloration syntaxique - * Le code doit être placé dans public/code et doit être nommé - * [nom de la méthode]-langage.txt - */ - public function codeAction() - { - $langage = strtolower($this->_getParam('langage','')); - $element = $this->_getParam('element',''); - - $fichier = APPLICATION_PATH . '/../public/assets/code/' . $element . '-' . $langage . '.txt'; - if (file_exists($fichier)){ - $sourceCode = file_get_contents($fichier); - - require_once 'Vendors/geshi/geshi.php'; - $geshi = new GeSHi($sourceCode, $langage); - $geshi->enable_line_numbers(GESHI_NORMAL_LINE_NUMBERS); - $sourceHighlight = $geshi->parse_code(); - - $this->view->assign('langage', strtoupper($langage)); - $this->view->assign('code', $sourceHighlight); - } else { - $this->view->assign('langage', - 'Element non traités, Vous pouvez aussi nous fournir des exemples.'); - } - } - - /** - * Affichage de la liste des erreurs avec leur code - */ - public function erreurAction() - { - require_once 'WsScore/WsScore.php'; - $ws = new WsScore(); - $erreurs = $ws->listError; - $this->view->assign('erreurs', $erreurs); - } -} - diff --git a/application/controllers/ErrorController.php b/application/controllers/ErrorController.php deleted file mode 100644 index dca8da6f..00000000 --- a/application/controllers/ErrorController.php +++ /dev/null @@ -1,47 +0,0 @@ -_getParam('error_handler'); - - switch ($errors->type) { - case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ROUTE: - case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_CONTROLLER: - case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ACTION: - - // 404 error -- controller or action not found - $this->getResponse()->setHttpResponseCode(404); - $this->view->message = 'Page not found'; - break; - default: - // application error - $this->getResponse()->setHttpResponseCode(500); - $this->view->message = 'Application error'; - break; - } - - // Log exception, if logger available - if ($log = $this->getLog()) { - $log->crit($this->view->message, $errors->exception); - } - - // conditionally display exceptions - if ($this->getInvokeArg('displayExceptions') == true) { - $this->view->exception = $errors->exception; - } - - $this->view->request = $errors->request; - } - - public function getLog() - { - $bootstrap = $this->getInvokeArg('bootstrap'); - if (!$bootstrap->hasPluginResource('Log')) { - return false; - } - $log = $bootstrap->getResource('Log'); - return $log; - } -} - diff --git a/application/controllers/ExportController.php b/application/controllers/ExportController.php deleted file mode 100644 index 478432b0..00000000 --- a/application/controllers/ExportController.php +++ /dev/null @@ -1,20 +0,0 @@ -_helper->layout->disableLayout(); - $this->_helper->viewRenderer->setNoRender(); - } - - public function indexAction() - { - echo "Export"; - } - - protected function checkFile($path) - { - - } - -} \ No newline at end of file diff --git a/application/controllers/FichierController.php b/application/controllers/FichierController.php deleted file mode 100644 index 4c9d6a01..00000000 --- a/application/controllers/FichierController.php +++ /dev/null @@ -1,139 +0,0 @@ -_helper->layout()->disableLayout(); - $this->_helper->viewRenderer->setNoRender(true); - } - - public function bodaccAction() - { - $auth = Zend_Auth::getInstance(); - if ( $auth->hasIdentity() ) { - - $directory = '/mnt/bodacc'; - - $q = $this->getRequest()->getParam('q'); - $file = base64_decode($q); - - $output_file = $directory.'/'.$file; - - if (file_exists($output_file) && filesize($output_file)>0) { - $content_type = 'application/pdf'; - header('Content-type: '.$content_type.''); - header('Content-Length: '.filesize($output_file)); - header('Content-MD5: '.base64_encode(md5_file($output_file))); - header('Content-Disposition: inline; filename="'.basename($output_file).'"'); - header('Cache-Control: private, max-age=0, must-revalidate'); - header('Pragma: public'); - ini_set('zlib.output_compression','0'); - echo file_get_contents($output_file); - - //Log de la requete - $tabInsert = array( - 'login' => $auth->getIdentity()->username, - 'idClient' => $auth->getIdentity()->idClient, - 'page' => 'histobodacc', - 'siren' => '', - 'nic' => '', - 'params' => $file, - 'test' => 0, - 'raisonSociale' => '', - 'cp' => '', - 'ville' => '', - 'ipClient' => $_SERVER['REMOTE_ADDR'], - ); - require_once 'framework/common/mysql.php'; - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->insert('logs', array_merge($tabInsert,$tabRdvInsee), false, true); - - } else { - echo "Erreur lors de l'affichage du fichier."; - } - } else { - echo "Authentification échoué."; - } - } - - public function logsAction() - { - $file = $this->getRequest()->getParam('fichier'); - $content_type = 'application/csv-tab-delimited-table'; - $c = Zend_Registry::get('config'); - $path = realpath($c->profil->path->files).'/'; - //Envoi du fichier sur la sortie standard - if ( file_exists($path.$file) ) { - header('Content-Transfer-Encoding: none'); - header('Content-type: ' . $content_type.''); - header('Content-Length: ' . filesize($path.$file)); - header('Content-MD5: ' . base64_encode(md5_file($path.$file))); - header('Content-Disposition: filename="' . basename($path.$file) . '"'); - header('Cache-Control: private, max-age=0, must-revalidate'); - header('Pragma: public'); - ini_set('zlib.output_compression', '0'); - echo file_get_contents($path.$file); - } - } - - public function csvAction() - { - $file = $this->getRequest()->getParam('fichier'); - $content_type = 'application/csv-tab-delimited-table'; - $c = Zend_Registry::get('config'); - $path = realpath($c->profil->path->files).'/'; - //Envoi du fichier sur la sortie standard - if ( file_exists($path.$file) ) { - header('Content-Transfer-Encoding: none'); - header('Content-type: ' . $content_type.''); - header('Content-Length: ' . filesize($path.$file)); - header('Content-MD5: ' . base64_encode(md5_file($path.$file))); - header('Content-Disposition: filename="' . basename($path.$file) . '"'); - header('Cache-Control: private, max-age=0, must-revalidate'); - header('Pragma: public'); - ini_set('zlib.output_compression', '0'); - echo file_get_contents($path.$file); - } - } - - public function kbisAction() - { - $file = $this->getRequest()->getParam('fichier'); - $content_type = 'application/pdf'; - $c = Zend_Registry::get('config'); - $path = realpath($c->profil->path->secure).'/kbis/'; - //Envoi du fichier sur la sortie standard - if ( file_exists($path.$file) ) { - header('Content-Transfer-Encoding: none'); - header('Content-type: ' . $content_type.''); - header('Content-Length: ' . filesize($path.$file)); - header('Content-MD5: ' . base64_encode(md5_file($path.$file))); - header('Content-Disposition: filename="' . basename($path.$file) . '"'); - header('Cache-Control: private, max-age=0, must-revalidate'); - header('Pragma: public'); - ini_set('zlib.output_compression', '0'); - echo file_get_contents($path.$file); - } - } - - public function associationsAction() - { - $file = $this->getRequest()->getParam('fichier'); - $content_type = 'application/pdf'; - $c = Zend_Registry::get('config'); - $path = realpath($c->profil->path->files).'/associations/'; - //Envoi du fichier sur la sortie standard - if ( file_exists($path.$file) ) { - header('Content-Transfer-Encoding: none'); - header('Content-type: ' . $content_type.''); - header('Content-Length: ' . filesize($path.$file)); - header('Content-MD5: ' . base64_encode(md5_file($path.$file))); - header('Content-Disposition: filename="' . basename($path.$file) . '"'); - header('Cache-Control: private, max-age=0, must-revalidate'); - header('Pragma: public'); - ini_set('zlib.output_compression', '0'); - echo file_get_contents($path.$file); - } - } - -} \ No newline at end of file diff --git a/application/controllers/ImportController.php b/application/controllers/ImportController.php deleted file mode 100644 index 3d1c3df5..00000000 --- a/application/controllers/ImportController.php +++ /dev/null @@ -1,78 +0,0 @@ -_helper->layout()->disableLayout(); - - $this->view->inlineScript()->appendFile('/scripts/jquery.form.js'); - $this->view->inlineScript()->appendFile('/scripts/jqueryprogressbar.js'); - - $this->view->assign('filesize', ini_get('upload_max_filesize')); - - $request = $this->getRequest(); - $idClient = $request->getParam('idClient', null); - $login = $request->getParam('login', null); - - $this->view->assign('idClient', $idClient); - $this->view->assign('login', $login); - } - - public function fileuploadAction() - { - $this->_helper->layout()->disableLayout(); - $this->_helper->viewRenderer->setNoRender(true); - - $request = $this->getRequest(); - $idClient = $request->getParam('idClient'); - $login = $request->getParam('login'); - - $config = new Zend_Config_Ini(APPLICATION_PATH . '/configs/configuration.ini', 'path'); - $path = realpath($config->data).'/validation'; - if(!file_exists($path)) mkdir($path); - - if ( isset($_FILES) && count($_FILES)==1 ){ - $n = $_FILES['fichier']['name']; - $s = $_FILES['fichier']['size']; - $tmp_name = $_FILES['fichier']['tmp_name']; - - $extValide = array('csv'); - $extension = strrchr($n,'.'); - $extension = substr($extension,1); - //Vérifier l'extension du fichier - if(!in_array($extension, $extValide)){ - echo "Extension de fichier incorrect !"; - } elseif (move_uploaded_file($tmp_name, $path.'/'.$idClient.'-'.$name.'.'.$extension)){ - echo "Fichier envoyé, view->url(array( - 'controller' => 'import', - 'action' => 'checkfile', - 'file' => $idClient.'-'.$name.'.'.$extension, - ))."\">Vérifier le format"; - } else { - echo "Erreur : ".$_FILES['fichier']['error']; - } - } - } - - /** - * Etat de progression de l'upload du fichier - */ - public function fileprogressAction() - { - $this->_helper->layout()->disableLayout(); - $this->_helper->viewRenderer->setNoRender(true); - - $request = $this->getRequest(); - $key = $request->getParam('key', ''); - if (!empty($key)) { - //$rep sera égal à false si la clef n'existe pas dans le cache apc - $rep = apc_fetch('upload_'.$key); - echo json_encode($rep); - } - } - - - -} \ No newline at end of file diff --git a/application/controllers/IndexController.php b/application/controllers/IndexController.php deleted file mode 100644 index 0c86a64e..00000000 --- a/application/controllers/IndexController.php +++ /dev/null @@ -1,14 +0,0 @@ -_helper->layout->disableLayout(); - $this->_helper->viewRenderer->setNoRender(); - - $request = $this->getRequest(); - - //Nom du service - $serviceName = strtolower($request->getParam('service', 'Entreprise')); - - //Service spécifique client - if ($serviceName == 'clients') { - $client = $request->getParam('client', ''); - //Liste des clients - $clients = array(); - $listeClients = include APPLICATION_PATH . '/../library/WsScore/Clients/ClientsConfig.php'; - foreach ( $listeClients as $section => $params ) { - if ($params['actif']){ - $clients[] = $section; - } - } - if (!in_array($client, $clients)){ - echo 'Service clients introuvable !'; - exit; - } - $configServiceVersions = $clients[$client]['versions']; - } - else - { - //Service versions - $services = include APPLICATION_PATH . '/../library/WsScore/ServicesConfig.php'; - $configServiceVersions = $services[$serviceName]['versions']; - } - - //Liste des versions - foreach( $configServiceVersions as $section => $params ) { - $serviceVersions[$section] = $params; - if ($params['defaut']) { - $defautVersion = $section; - } - } - $version = $request->getParam('version', 'v'.$defautVersion); - $version = substr($version, 1); - - // Version inexistante - if ( !array_key_exists($version, $serviceVersions) ) { - echo "Version inexistante."; - exit; - } - // Version désactivé - if ( !$serviceVersions[$version]['actif'] ) { - echo "Version désactivée."; - exit; - } - - // Charger les classes et les types pour le service suivant la version - if ($serviceName == 'clients') { - $pathServiceClassIni = 'WsScore/Clients/'.ucfirst($client).'/v'.$version.'/Entreprise.ini'; - $pathServiceClassPhp = 'WsScore/Clients/'.ucfirst($client).'/v'.$version.'/Entreprise.php'; - $pathServiceUrl = 'clients/'.$client.'/v'.$version.'?wsdl-auto'; - //On redéfini le nom du service - $serviceName = 'Entreprise'; - $fichierWsdl = ucfirst($client).'-'.$serviceName.'-'.$version.'.wsdl'; - } else { - $pathServiceClassIni = 'WsScore/'.ucfirst($serviceName).'/v'.$version.'/'.ucfirst($serviceName).'.ini'; - $pathServiceClassPhp = 'WsScore/'.ucfirst($serviceName).'/v'.$version.'/'.ucfirst($serviceName).'.php'; - $pathServiceUrl = $serviceName.'/v'.$version.'?wsdl-auto'; - $fichierWsdl = ucfirst($serviceName).'-'.$version.'.wsdl'; - } - - //Génération du tableau de mapping - $wsConfig = new Zend_Config_Ini($pathServiceClassIni); - foreach($wsConfig->Type->toArray() as $Type){ - $classmap[$Type] = $Type; - } - - //Inclusion des classes de données - require_once $pathServiceClassPhp; - - // Instance du server - $server = new Zend_Json_Server(); - // Define class name - $server->setClass(ucfirst($serviceName)); - - // Gestion du SMD - if($this->getRequest()->isGet()){ - // Indiquer URL endpoint - //$this->getHelper('url')->url(array('controller'=>'', 'action'=>'' )); - $server->setTarget('/jsonrpc/'.$serviceName.'/'.$version.'/') - ->setEnvelope(Zend_Json_Server_Smd::ENV_JSONRPC_2); - // Grab the SMD - $smd = $server->getServiceMap(); - - //Return the SMD to the client - if (!headers_sent()) { - header('Content-Type: application/json'); - } - echo $smd; - return; - } else { - $server->setAutoEmitResponse(true); - $server->handle(); - } - } -} \ No newline at end of file diff --git a/application/controllers/RefController.php b/application/controllers/RefController.php deleted file mode 100644 index b5f882ee..00000000 --- a/application/controllers/RefController.php +++ /dev/null @@ -1,119 +0,0 @@ -_getParam('q',''); - $fichier = $fichier . '.csv'; - if (!empty($fichier) && file_exists('fichiers/'.$fichier)) - { - $this->_helper->layout->disableLayout(); - $this->_helper->viewRenderer->setNoRender(); - - list($nomFichier, $extFichier) = explode('.',$fichier); - //Distribution du fichier sur la sortie standard - switch ($extFichier) { - case 'png' : $content_type = 'image/png'; break; - case 'gif' : $content_type = 'image/gif'; break; - case 'jpeg': - case 'jpg' : $content_type = 'image/jpeg'; break; - case 'pdf' : $content_type = 'application/pdf'; break; - case 'csv' : $content_type = 'application/csv-tab-delimited-table'; break; - } - $this->getResponse()->setHeader('Content-Type', $content_type); - $contentDisposition = 'attachment'; - switch ($contentDisposition) { - case 'inline': - $this->getResponse()->setHeader('Content-Disposition', 'inline'); - break; - case 'attachment': - $this->getResponse()->setHeader('Content-Disposition', "attachment; filename=\"$fichier\""); - break; - } - - $data = file_get_contents('assets/fichiers/'.$fichier); - - $this->getResponse()->setHeader('Content-Length', strlen($data)) - ->setHeader('Cache-Control', 'private, max-age=0, must-revalidate') - ->setHeader('Pragma', 'public') - ->setBody($data); - } else { - $this->view->assign('message', 'Fichier introuvable !'); - } - } - - /** - * Donne accès aux données contenues dans une table de base de données - */ - public function tableAction () - { - $requetesql = $this->_getParam('q',''); - $fichierCsv = $requetesql.'.csv'; - $fichierSql = $requetesql.'.sql'; - - //Emplacement des fichiers générés - lien symbolique en PRODUCTION - $path = DOC_WEB_LOCAL . 'fichiers/'; - if (!is_dir($path)) { mkdir($path); } - if (!empty($requetesql)) - { - if (!file_exists($path . $fichierCsv)) - { - if (file_exists('assets/sql/'.$fichierSql)) - { - //Connexion mysql - $sql = file_get_contents('assets/sql/'.$fichierSql); - require_once 'framework/common/mysql.php'; - $db = new WDB(); - $db->exportCSV($sql, $path . $fichierCsv, ',', "\n"); - } - } - - if (file_exists($path . $fichierCsv)) - { - $this->_helper->layout->disableLayout(); - $this->_helper->viewRenderer->setNoRender(); - //Distribution du fichier sur la sortie standard - list($nomFichier, $extFichier) = explode('.',$fichierCsv); - switch ($extFichier) - { - case 'png' : $content_type = 'image/png'; break; - case 'gif' : $content_type = 'image/gif'; break; - case 'jpeg': - case 'jpg' : $content_type = 'image/jpeg'; break; - case 'pdf' : $content_type = 'application/pdf'; break; - case 'csv' : $content_type = 'application/csv-tab-delimited-table'; break; - } - $this->getResponse()->setHeader('Content-Type', $content_type); - $contentDisposition = 'attachment'; - switch ($contentDisposition) - { - case 'inline': - $this->getResponse()->setHeader('Content-Disposition', 'inline'); - break; - case 'attachment': - $this->getResponse()->setHeader('Content-Disposition', "attachment; filename=\"$fichierCsv\""); - break; - } - - $data = file_get_contents($path . $fichierCsv); - - $this->getResponse()->setHeader('Content-Length', strlen($data)) - ->setHeader('Cache-Control', 'private, max-age=0, must-revalidate') - ->setHeader('Pragma', 'public') - ->setBody($data); - } - } else { - $this->view->assign('message', 'Paramètres incorrects !'); - } - } - -} \ No newline at end of file diff --git a/application/controllers/ServiceController.php b/application/controllers/ServiceController.php deleted file mode 100644 index 0d5a2032..00000000 --- a/application/controllers/ServiceController.php +++ /dev/null @@ -1,178 +0,0 @@ -_helper->layout->disableLayout(); - $this->_helper->viewRenderer->setNoRender(); - - $request = $this->getRequest(); - - //Get the service name, make sure the string is in lower case - $serviceName = strtolower($request->getParam('service', 'Entreprise')); - - //ClassName and Directory with first letter capitalized - $serviceClassName = ucfirst($serviceName); - - //Customize service for customers - if ('clients' == $serviceName ) { - $client = strtolower($request->getParam('client', '')); - $clientClassName = ucfirst($client); - //Get list of customers - $clients = array(); - $listeClients = include APPLICATION_PATH . '/../library/WsScore/Clients/ClientsConfig.php'; - foreach ( $listeClients as $section => $params ){ - if ($params['actif']) { - $clients[$section] = $params; - } - } - if (!array_key_exists($client, $clients)){ - echo 'Service clients introuvable !'; - exit; - } - $configServiceVersions = $clients[$client]['versions']; - } - else - { - //Service versions - $services = include APPLICATION_PATH . '/../library/WsScore/ServicesConfig.php'; - $configServiceVersions = $services[$serviceName]['versions']; - } - - // Check versions - foreach( $configServiceVersions as $section => $params ) { - $serviceVersions[$section] = $params; - if ($params['defaut']) { - $defautVersion = $section; - } - } - $version = $request->getParam('version', 'v'.$defautVersion); - $version = substr($version, 1); - - // Version inexistante - if ( !array_key_exists($version, $serviceVersions) ) { - echo "Version inexistante."; - exit; - } - // Version désactivé - if ( !$serviceVersions[$version]['actif'] ) { - echo "Version désactivée."; - exit; - } - - // Charger les classes et les types pour le service suivant la version - if ('clients' == $serviceName) { - - $pathServiceClassIni = 'WsScore/Clients/'.$clientClassName.'/v'.$version.'/Config.php'; - $pathServiceClassPhp = 'WsScore/Clients/'.$clientClassName.'/v'.$version.'/Entreprise.php'; - //Gestion du mode de génération du wsdl - if ( APPLICATION_ENV == 'development' - || array_key_exists('mode', $serviceVersions[$version]) - && $serviceVersions[$version]['mode']=='auto') { - $pathServiceUrl = 'clients/'.$client.'/v'.$version.'?wsdl-auto'; - } else { - $pathServiceUrl = 'clients/'.$client.'/v'.$version.'?wsdl'; - } - //On redéfini le nom du service - $serviceClassName = 'Entreprise'; - $fichierWsdl = $clientClassName.'-'.$serviceClassName.'-'.$version.'.wsdl'; - - } else { - - $pathServiceClassIni = 'WsScore/'.$serviceClassName.'/v'.$version.'/Config.php'; - $pathServiceClassPhp = 'WsScore/'.$serviceClassName.'/v'.$version.'/'.$serviceClassName.'.php'; - //Gestion du mode de génération du wsdl - if ( APPLICATION_ENV == 'development' - || array_key_exists('mode', $serviceVersions[$version]) - && $serviceVersions[$version]['mode']=='auto') { - $pathServiceUrl = $serviceName.'/v'.$version.'?wsdl-auto'; - } else { - $pathServiceUrl = $serviceName.'/v'.$version.'?wsdl'; - } - $fichierWsdl = $serviceClassName.'-'.$version.'.wsdl'; - - } - - //Get map of WSDL type to PHP Classes - $classmap = include $pathServiceClassIni; - - //Inclusion des classes de données - require_once $pathServiceClassPhp; - - // Fourniture du wsdl - if ( isset($_GET['wsdl']) && file_exists($fichierWsdl) ) { - - if (!headers_sent()) { - header('Content-Type: text/xml'); - } - echo file_get_contents($fichierWsdl); - - } elseif ( isset($_GET['wsdl']) && !file_exists($fichierWsdl) - || isset($_GET['wsdl-generate']) - || isset($_GET['wsdl-auto']) ) { - - // Définition du webservice - $wsdl = new Zend_Soap_AutoDiscover(); - $wsdl->setComplexTypeStrategy('Zend_Soap_Wsdl_Strategy_ArrayOfTypeSequence'); - $wsdl->setOperationBodyStyle( array('use' => 'literal') ); - $wsdl->setBindingStyle( array('style' => 'document') ); - $wsdl->setClass($serviceClassName); - - // Enregistrement du WSDL dans un fichier - if ( isset($_GET['wsdl-generate']) ) { - if (file_exists($fichierWsdl)) { - unlink($fichierWsdl); - } - $wsdl->dump($fichierWsdl); - echo "Le fichier $fichierWsdl a été généré"; - - //Génération/Fourniture du wsdl - } elseif (isset($_GET['wsdl']) && !file_exists($fichierWsdl)) { - $wsdl->dump($fichierWsdl); - if (!headers_sent()) { - header('Content-Type: text/xml'); - } - echo file_get_contents($fichierWsdl); - - // Envoi sur la sortie standard le wsdl sans enregistrement dans un fichier - } elseif ( isset($_GET['wsdl-auto']) ){ - $wsdl->handle(); - } - - // Fourniture du service - } else { - - // Traitement - if (APPLICATION_ENV == 'production' && file_exists($fichierWsdl)) { - $server = new Zend_Soap_Server($fichierWsdl); - } else { - $hostName = $this->getRequest()->getHttpHost(); - $server = new Zend_Soap_Server('http://'.$hostName.'/'.$pathServiceUrl); - } - - $server->setSoapFeatures(SOAP_USE_XSI_ARRAY_TYPE + SOAP_SINGLE_ELEMENT_ARRAYS); - $server->setClassmap($classmap); - $server->setEncoding('UTF-8'); - $server->registerFaultException(array('WsScores_Exception')); - $server->setWsiCompliant(true); - $server->setObject(new $serviceClassName()); - $server->handle(); - - //Pour débuggage ultime - $debug = false; - if ($debug){ - $request = $server->getLastRequest(); - file_put_contents(APPLICATION_PATH . '/../request.log', $request); - $response = $server->getLastResponse(); - file_put_contents(APPLICATION_PATH . '/../response.log', $response); - } - } - } -} \ No newline at end of file diff --git a/application/controllers/UserController.php b/application/controllers/UserController.php deleted file mode 100644 index 8aa6d43a..00000000 --- a/application/controllers/UserController.php +++ /dev/null @@ -1,73 +0,0 @@ -view->navigation(); - $activeNav->removePages(); - } - - public function indexAction() - { - - } - - public function loginAction() - { - $this->_helper->layout()->disableLayout(); - - $this->view->headLink() - ->appendStylesheet('/themes/default/css/signin.css', 'all'); - - $this->view->headTitle()->append('Connexion'); - $form = new Application_Form_Login(); - $this->view->form = $form; - $request = $this->getRequest(); - if ($request->isPost()) { - $formData = $request->getPost(); - if ($form->isValid($formData)) { - $login = $form->getValue('login'); - $pass = $form->getValue('pass'); - $auth = Zend_Auth::getInstance(); - $authAdapter = new Scores_AuthAdapter($login, $pass); - $result = $auth->authenticate($authAdapter); - if (!$result->isValid()){ - $this->view->message = ''; - foreach ($result->getMessages() as $message) { - $this->view->message.= $message."
"; - } - } else { - $timeout = $auth->getIdentity()->timeout; - - //Ecrit un cookie persistant valide pendant le temps definit - Zend_Session::rememberMe($timeout); - - $storage = new Zend_Auth_Storage_Session(); - $sessionNamespace = new Zend_Session_Namespace($storage->getNamespace()); - $sessionNamespace->setExpirationSeconds($timeout); - $auth->setStorage($storage); - $url = ''; - if (Zend_Session::namespaceIsset('login')){ - $session = new Zend_Session_Namespace('login'); - if (isset($session->url)) { - $url = $session->url; - } - } - if (!empty($url)){ - $this->_redirect($url); - } - - $this->_redirect('/'); - } - - } - } - } - - public function logoutAction() - { - $this->_helper->layout()->disableLayout(); - Zend_Auth::getInstance()->clearIdentity(); - } - -} \ No newline at end of file diff --git a/application/models/AssoActes.php b/application/models/AssoActes.php deleted file mode 100644 index 64952812..00000000 --- a/application/models/AssoActes.php +++ /dev/null @@ -1,16 +0,0 @@ - array( - 'columns' => array('commande_id'), - 'refTableClass' => 'Application_Model_Commandes', - 'refColumns' => array('id'), - ), - ); - - public function insert(array $data) - { - if (empty($data['date_added'])) { - $data['date_added'] = date('Y-m-d H:i:s'); - } - return parent::insert($data); - } -} \ No newline at end of file diff --git a/application/models/CommandesKbis.php b/application/models/CommandesKbis.php deleted file mode 100644 index ae1b9f04..00000000 --- a/application/models/CommandesKbis.php +++ /dev/null @@ -1,5 +0,0 @@ - array( - 'columns' => array('commande_id'), - 'refTableClass' => 'Application_Model_Commandes', - 'refColumns' => array('id'), - ), - ); -} \ No newline at end of file diff --git a/application/models/CommandesStatut.php b/application/models/CommandesStatut.php deleted file mode 100644 index 3f34e362..00000000 --- a/application/models/CommandesStatut.php +++ /dev/null @@ -1,5 +0,0 @@ - array( - 'columns' => 'idClient', - 'refTableClass' => 'Sdv1Clients', - 'refColumns' => 'id' - ), - 'ServiceCode' => array( - 'columns' => 'login', - 'refTableClass' => 'Sdv1ClientsServicesUsers', - 'refColumns' => 'login' - ), - ); -} \ No newline at end of file diff --git a/application/models/Sdv1UtilisateursService.php b/application/models/Sdv1UtilisateursService.php deleted file mode 100644 index 37ee02c4..00000000 --- a/application/models/Sdv1UtilisateursService.php +++ /dev/null @@ -1,6 +0,0 @@ - 'PHP', - 'java' => 'Java', - 'perl' => 'Perl', - 'python' => 'Python', - 'csharp' => 'C#' - ); - - foreach ($langages as $langage => $lib){ - $fichier = 'assets/code/'.$method.'-'.$langage.'.txt'; - if (file_exists($fichier)){ - $url = $this->view->url( - array( - 'controller' => 'documentation', - 'action' => 'code', - 'langage' => $langage, - 'element' => $method, - ), null, true); - $exemple.= '' . $lib . ''; - $exemple.= ' '; - } - } - return $exemple; - } -} \ No newline at end of file diff --git a/application/views/helpers/DocMethod.php b/application/views/helpers/DocMethod.php deleted file mode 100644 index c53039a4..00000000 --- a/application/views/helpers/DocMethod.php +++ /dev/null @@ -1,61 +0,0 @@ - 'string', - 'bool' => 'boolean', - 'integer' => 'int', - ); - - public function docMethod($method) - { - $output = ''; - - $returnType = $method['return']; - $methodName = $method['name']; - - $cptParameters = 0; - $parameters = ''; - foreach ($method['params'] as $param) { - if (isset($param['optional'])) { - $parameters.= '['; - } - $parameters.= '' . $this->transcodeType($param['type']) . ''; - $parameters.= ' '; - $parameters.= '' . $param['name'] . ''; - - if (isset($param['optional'])) { - if (isset($param['defaultValue'])) { - $parameters.= ' = '; - if (is_bool($param['defaultValue'])){ - $parameters.= ($param['defaultValue'] === false) ? 'false' : 'true' ; - } elseif (is_string($param['defaultValue']) && $param['defaultValue']==''){ - $parameters.= "''"; - } else { - $parameters.= $param['defaultValue']; - } - } - $parameters.= ']'; - } - $cptParameters++; - if ($cptParameters < count($method['params'])){ - $parameters.= ', '; - } - } - $output = '' . $this->transcodeType($returnType) . ''; - $output.= ' '; - $output.= '' . $methodName . '' . ' ( ' . $parameters . ' )'; - return $output; - } - - private function transcodeType($type) - { - if(array_key_exists($type, $this->_transcodeType)){ - return $this->_transcodeType[$type]; - } else { - return $type; - } - } - -} diff --git a/application/views/helpers/DocParameter.php b/application/views/helpers/DocParameter.php deleted file mode 100644 index ef96975e..00000000 --- a/application/views/helpers/DocParameter.php +++ /dev/null @@ -1,81 +0,0 @@ - 'string', - 'bool' => 'boolean', - 'integer' => 'int', - ); - - public function docParameter($params, $serviceTypes) - { - $this->serviceTypes = $serviceTypes; - $output = ''; - if (count($params)>0) { - $output.= ''; - } - return $output; - } - - private function parseType($type) - { - $output = ''; - $type = str_replace('[]', '', $type); - if (array_key_exists($type, $this->serviceTypes)) { - $types = $this->serviceTypes[$type]; - $output.= ''; - } elseif (in_array($type, $this->types)) { - $output.= ''; - } elseif ($type == 'void'){ - $output.= 'Void'; - } else { - $output.= ' => Type '.$type.' inconnu'; - } - return $output; - } - - private function formatParam($param) - { - $output = ''; - $output.= '
  • '; - $output.= '' . $this->transcodeType($param['type']) . ''; - $output.= ' '; - $output.= '' . $param['name'] . ''; - if (isset($param['description']) && !empty($param['description'])) { - $output.= ' - '.$param['description']; - } - if (!in_array($param['type'], $this->types)) { - $output.= $this->parseType($param['type']); - } - $output.= '
  • '; - return $output; - } - - private function transcodeType($type) - { - if(array_key_exists($type, $this->_transcodeType)){ - return $this->_transcodeType[$type]; - } else { - return $type; - } - } - -} \ No newline at end of file diff --git a/application/views/helpers/DocReturn.php b/application/views/helpers/DocReturn.php deleted file mode 100644 index 2df7ad7b..00000000 --- a/application/views/helpers/DocReturn.php +++ /dev/null @@ -1,74 +0,0 @@ - 'string', - 'bool' => 'boolean', - 'integer' => 'int', - ); - - public function docReturn($type, $serviceTypes) - { - $this->serviceTypes = $serviceTypes; - return $this->parseType($type); - } - - private function parseType($type) - { - $output = ''; - $type = str_replace('[]', '', $type); - if (array_key_exists($type, $this->serviceTypes)) { - $types = $this->serviceTypes[$type]; - $output.= ''; - } elseif (in_array($type, $this->types)) { - $output.= '' . $type . ' '; - } elseif ($type == 'void'){ - $output.= 'Void'; - } else { - $output.= ' => Type '.$type.' inconnu'; - } - return $output; - } - - private function formatParam($param) - { - $output = ''; - $output.= '
  • '; - $output.= '' . $this->transcodeType($param['type']) . ''; - $output.= ' '; - $output.= ''. $param['name'] . ''; - if (isset($param['description']) && !empty($param['description'])) { - $output.= ' - '.$param['description']; - } - $type = str_replace('[]', '', $param['type']); - if (!in_array($type, $this->types)) { - $output.= $this->parseType($param['type']); - } - $output.= '
  • '; - return $output; - } - - private function transcodeType($type) - { - if(array_key_exists($type, $this->_transcodeType)){ - return $this->_transcodeType[$type]; - } else { - return $type; - } - } - -} diff --git a/application/views/helpers/ProfileLink.php b/application/views/helpers/ProfileLink.php deleted file mode 100644 index 86a1cd43..00000000 --- a/application/views/helpers/ProfileLink.php +++ /dev/null @@ -1,17 +0,0 @@ -hasIdentity()) { - $username = $auth->getIdentity()->username; - $logoutUrl = $this->view->url(array( - 'controller' => 'user', - 'action' => 'logout' - ), null, true); - return 'Déconnexion : ' . $username . ''; - } - } -} \ No newline at end of file diff --git a/application/views/scripts/demo/index.phtml b/application/views/scripts/demo/index.phtml deleted file mode 100644 index 013f5446..00000000 --- a/application/views/scripts/demo/index.phtml +++ /dev/null @@ -1,13 +0,0 @@ -

    Démonstration - Liste des méthodes

    - diff --git a/application/views/scripts/demo/method.phtml b/application/views/scripts/demo/method.phtml deleted file mode 100644 index 4fb949c5..00000000 --- a/application/views/scripts/demo/method.phtml +++ /dev/null @@ -1,5 +0,0 @@ -

    method;?>

    -

    message;?>

    -
    -form;?> -
    diff --git a/application/views/scripts/demo/requete.phtml b/application/views/scripts/demo/requete.phtml deleted file mode 100644 index 9fcf1053..00000000 --- a/application/views/scripts/demo/requete.phtml +++ /dev/null @@ -1,20 +0,0 @@ -

    SOAP

    - -

    Requete

    - -

    Réponse

    - - -

    XML

    -

    Requete

    - -

    Réponse

    - \ No newline at end of file diff --git a/application/views/scripts/documentation/clients.phtml b/application/views/scripts/documentation/clients.phtml deleted file mode 100644 index 47598d03..00000000 --- a/application/views/scripts/documentation/clients.phtml +++ /dev/null @@ -1,42 +0,0 @@ -
    -

    WSDL

    -

    Télécharger le WSDL

    -Le fichier est accessible sans authentification. -
    - -
    -

    Liste des opérations :

    -
      -serviceMethods as $method) {?> -
    1. - - Détail -
    2. - -
    -
    - -
    -

    Détails :

    -serviceMethods as $method) {?> -
    -   -

    -
    Description :
    -
    docDescription($method)?>
    -
    docComplement($method)?>
    -
    -

    docMethod($method);?>

    -
    Paramètres :
    -
    - docParameter($method['params'], $this->serviceTypes);?> -
    -
    Retour :
    -
    - docReturn($method['return'], $this->serviceTypes);?> -
    -
    -

    Exemple : docExemple($method['name']);?>

    -
    - -
    \ No newline at end of file diff --git a/application/views/scripts/documentation/code.phtml b/application/views/scripts/documentation/code.phtml deleted file mode 100644 index 0a98b168..00000000 --- a/application/views/scripts/documentation/code.phtml +++ /dev/null @@ -1,2 +0,0 @@ -

    langage?>

    -code?> diff --git a/application/views/scripts/documentation/erreur.phtml b/application/views/scripts/documentation/erreur.phtml deleted file mode 100644 index 55b7c354..00000000 --- a/application/views/scripts/documentation/erreur.phtml +++ /dev/null @@ -1,10 +0,0 @@ -
    -

    Liste des code erreurs/messages :

    - -
    \ No newline at end of file diff --git a/application/views/scripts/documentation/exemples.phtml b/application/views/scripts/documentation/exemples.phtml deleted file mode 100644 index d9e42e62..00000000 --- a/application/views/scripts/documentation/exemples.phtml +++ /dev/null @@ -1,2 +0,0 @@ -

    Liste des exemples

    - diff --git a/application/views/scripts/documentation/index.phtml b/application/views/scripts/documentation/index.phtml deleted file mode 100644 index 75b0d395..00000000 --- a/application/views/scripts/documentation/index.phtml +++ /dev/null @@ -1,40 +0,0 @@ - -

    -Le WebService utilise une authentification http basic. -Il s'agit donc de transmettre comme paramètres d'authentification -

    -

    http://{login}:{password}@url

    -

    -- {password} est une chaine construite de cette façon md5({login}|{pass})
    -- {login} est l'identifiant fournit
    -- {pass} le mot de passe fournit. -

    - -
    -Info sur le fonctionnement authentification basic -
    - -

    -Vous trouverez dans ces exemples les prérequis pour s'authentifier et suivant -les outils et langage la possibilité de générer le code à partir du WSDL.
    -Exemple : docExemple('authentication')?> -

    - - - -

    Notre service web a été testé avec ces langages/librairies

    - - -
    -

    -Pour toutes remarques ou question merci d'adresser un email à -support@scores-decisions.com -

    \ No newline at end of file diff --git a/application/views/scripts/documentation/nodoc.phtml b/application/views/scripts/documentation/nodoc.phtml deleted file mode 100644 index 3a84ddae..00000000 --- a/application/views/scripts/documentation/nodoc.phtml +++ /dev/null @@ -1 +0,0 @@ -Erreur \ No newline at end of file diff --git a/application/views/scripts/documentation/service.phtml b/application/views/scripts/documentation/service.phtml deleted file mode 100644 index 48b740d5..00000000 --- a/application/views/scripts/documentation/service.phtml +++ /dev/null @@ -1,63 +0,0 @@ - - -
    -
    -

    WSDL

    -
    -
    -

    Télécharger le WSDL

    - Le fichier est accessible sans authentification. -
    -
    - - -
    -
    -

    Liste des opérations

    -
    -
    -
      - serviceMethods as $method) {?> -
    1. - - Détail -
    2. - -
    -
    -
    - -
    -
    -

    Détails

    -
    - -
    \ No newline at end of file diff --git a/application/views/scripts/documentation/services.phtml b/application/views/scripts/documentation/services.phtml deleted file mode 100644 index e652cd41..00000000 --- a/application/views/scripts/documentation/services.phtml +++ /dev/null @@ -1,43 +0,0 @@ - -

    Ci-dessous la liste des services disponibles, personnalisés ou standards..

    - -WsServices as $service => $params) {?> -
    - -
    - - - -
    -
    -

    Informations

    -
    - - - - -
    - \ No newline at end of file diff --git a/application/views/scripts/documentation/servicev.phtml b/application/views/scripts/documentation/servicev.phtml deleted file mode 100644 index bd4476b7..00000000 --- a/application/views/scripts/documentation/servicev.phtml +++ /dev/null @@ -1,40 +0,0 @@ -key, $this->WsServices) ) { - $service = $this->WsServices[$this->key]; -} -?> - - - - - -

    ...

    - - - $versionElement) { ?> -
    -
    - - Version - - Défaut - - Déprécié - - Beta - -
    -
    -

    Information

    -
    -
    - - - - \ No newline at end of file diff --git a/application/views/scripts/error/error.phtml b/application/views/scripts/error/error.phtml deleted file mode 100644 index 1997506c..00000000 --- a/application/views/scripts/error/error.phtml +++ /dev/null @@ -1,28 +0,0 @@ - - - - - Zend Framework Default Application - - -

    An error occurred

    -

    message ?>

    - - exception)): ?> - -

    Exception information:

    -

    - Message: exception->getMessage() ?> -

    - -

    Stack trace:

    -
    exception->getTraceAsString() ?>
    -  
    - -

    Request Parameters:

    -
    request->getParams(), true) ?>
    -  
    - - - - diff --git a/application/views/scripts/footer.phtml b/application/views/scripts/footer.phtml deleted file mode 100644 index 96f0647c..00000000 --- a/application/views/scripts/footer.phtml +++ /dev/null @@ -1,3 +0,0 @@ -
    -

    © Scores & Décisions.

    -
    \ No newline at end of file diff --git a/application/views/scripts/header.phtml b/application/views/scripts/header.phtml deleted file mode 100644 index ecdcea8b..00000000 --- a/application/views/scripts/header.phtml +++ /dev/null @@ -1,35 +0,0 @@ - - \ No newline at end of file diff --git a/application/views/scripts/import/fileform.phtml b/application/views/scripts/import/fileform.phtml deleted file mode 100644 index 0fee8d92..00000000 --- a/application/views/scripts/import/fileform.phtml +++ /dev/null @@ -1,53 +0,0 @@ -
    - -

    Intégration d'un fichier

    - -

    Taille maximale d'un fichier : filesize?>

    - -
    - - - - -
    - -
    - - - -
    -
    - -
    -
    - -
    - -
    - -inlineScript()?> - - \ No newline at end of file diff --git a/application/views/scripts/index/contact.phtml b/application/views/scripts/index/contact.phtml deleted file mode 100644 index 006f24ba..00000000 --- a/application/views/scripts/index/contact.phtml +++ /dev/null @@ -1,6 +0,0 @@ - -

    -

    Pour toutes questions concernant les paramètres techniques ou une explication des données, vous pouvez contactez -votre commercial ou le service support (support@scores-decisions.com).

    - -

    Merci de rappeler pour référence le login utilisé pour l'accès au WebService.

    \ No newline at end of file diff --git a/application/views/scripts/index/index.phtml b/application/views/scripts/index/index.phtml deleted file mode 100644 index 79a3ce48..00000000 --- a/application/views/scripts/index/index.phtml +++ /dev/null @@ -1,7 +0,0 @@ - -

    Scores & Décisions fournit un ensemble d'information sous la forme d'une API -compatible avec le protocole SOAP permettant la communication et l'échange de données avec vos -applications métier. -

    -

    La documentation vous fournira les éléments techniques relatifs aux paramètres de connexion, -structure des données, ...

    \ No newline at end of file diff --git a/application/views/scripts/layout.phtml b/application/views/scripts/layout.phtml deleted file mode 100644 index 71fe6704..00000000 --- a/application/views/scripts/layout.phtml +++ /dev/null @@ -1,26 +0,0 @@ -doctype(); ?> - - - headMeta(); ?> - headTitle(); ?> - headStyle(); ?> - headLink(); ?> - headScript(); ?> - - -
    - render('header.phtml') ?> - -
    - layout()->content; ?> -
    - -
    - - - - inlineScript(); ?> - - diff --git a/application/views/scripts/ref/fichier.phtml b/application/views/scripts/ref/fichier.phtml deleted file mode 100644 index 61db215b..00000000 --- a/application/views/scripts/ref/fichier.phtml +++ /dev/null @@ -1 +0,0 @@ -message ?> diff --git a/application/views/scripts/ref/index.phtml b/application/views/scripts/ref/index.phtml deleted file mode 100644 index b3d9bbc7..00000000 --- a/application/views/scripts/ref/index.phtml +++ /dev/null @@ -1 +0,0 @@ -message ?> diff --git a/application/views/scripts/user/index.phtml b/application/views/scripts/user/index.phtml deleted file mode 100644 index 8b137891..00000000 --- a/application/views/scripts/user/index.phtml +++ /dev/null @@ -1 +0,0 @@ - diff --git a/application/views/scripts/user/login.phtml b/application/views/scripts/user/login.phtml deleted file mode 100644 index c016ce93..00000000 --- a/application/views/scripts/user/login.phtml +++ /dev/null @@ -1,32 +0,0 @@ -doctype(); ?> - - - headMeta(); ?> - headTitle(); ?> - headStyle(); ?> - headLink(); ?> - headScript(); ?> - - -
    - -
    - - - -
    - -
    - - - - inlineScript(); ?> - - diff --git a/application/views/scripts/user/logout.phtml b/application/views/scripts/user/logout.phtml deleted file mode 100644 index 0c8dc053..00000000 --- a/application/views/scripts/user/logout.phtml +++ /dev/null @@ -1,24 +0,0 @@ -doctype(); ?> - - - headMeta(); ?> - headTitle(); ?> - headStyle(); ?> - headLink(); ?> - - -
    - -
    -

    Vous avez été déconnecté.

    -
    - -
    - - - - - - diff --git a/docs/README.txt b/docs/README.txt deleted file mode 100644 index 823de946..00000000 --- a/docs/README.txt +++ /dev/null @@ -1,181 +0,0 @@ -README -====== - -Display the documentation of our services, manage the SOAP services -Based on ZendFramework version 1.x - -Fichier de configuration -======================== -La configuration est décomposé en plusieurs fichiers, -avec adaptation suivant la machine -- mysql.php -- smtp.php -- sphinx.php -- stockage.php - -sans adaptation suivant la machine -- partenaires.php - -Fonctionnement -============== -Obtenir les WSDL -Pour le service Entreprise - - - En mode développement : http://hostname/entreprise/version?wsdl-auto - - Générer le WSDL : http://hostname/entreprise/version?wsdl-generate - - Utiliser le WSDL généré : http://hostname/entreprise/version?wsdl - -Pour le service Interne - - http://hostname/interne/version?wsdl - -Pour les clients - - http://hostname/clients/nom_du_client/version?wsdl - -N.B : Le fichier WSDL est généré automatiquement en appelant -http://hostname/service?wsdl afin de ne pas provoquer d'erreur -après une mise en production - -Pour définir le mode (vhost d'apache) - SetEnv APPLICATION_ENV "development" - SetEnv APPLICATION_ENV "production" - SetEnv APPLICATION_ENV "staging" - -En appelant l'url http://hostname/service, le contoller de l'application, -"service" est automatiquement utiliser. -Tout ce qui est visible dans la class est utilisé par le controller et se -retrouve visible dans le service (wsdl, requête) - -Si des fonctions ne doivent pas être rendu visible il faut donc les séparer -dans un autre controller utilisant une autre class. - - -Documentation des méthodes et ajout spécial -=========================================== - -La documentation est géneré en automatique. - -Voici comment définir simplement la documentation d'une méthode - - /** - * Retourne les informations identitaires de l'entreprise ou de l'établissement demandé - * @param string $key Siren de l'entreprise ou siret de l'établissement - * @return Identite - */ - public function test($key) - { - - } - -Attention ces informations servent aussi pour la structure du WSDL - -Pour spécifier un lien vers un fichier ou pour générer un fichier depuis une -requête SQL à partir de la documentation du service. -Ajouter dans le docblock : - - Pour un fichier - @ref fichier:libellé:{nom_du_fichier.ext} - - Pour une requête SQL - @ref mysql:libellé:{nom_du_fichier.sql} - -Les fichiers a télécharger sont à placer dans le répértoire public/fichier et -les fichiers sql dans public/sql - -Pour spécifier des éléments de taille (non pris en compte sur le WSDL) - @xsd minLength=9 - @xsd maxLength=15 - -Configuration PHP -================= -apt-get install php5-mysql -apt-get install php-apc -apt-get install php5-curl -apt-get install php5-xmlrpc - -Paquet PEAR -- Mail -- Mail_Mime - -WKHTMLTOPDF -=========== -apt-get install libXrender1 -apt-get install libfontconfig - -Configuration VHOST -=================== -a2enmod rewrite - -Exemple de vhost en mode développement - - - ServerName scoresws.sd.dev - AddDefaultCharset utf-8 - - # Pour la gestion des ports : $_SERVER['SERVER_NAME'], $_SERVER['SERVER_PORT'] - UseCanonicalName On - UseCanonicalPhysicalPort On - - DocumentRoot "D:/www/webservice/public" - SetEnv APPLICATION_ENV "development" - - DirectoryIndex index.php - AllowOverride All - Order allow,deny - Allow from all - - RewriteEngine On - RewriteCond %{REQUEST_URI} ^/favicon.ico$ [OR] - RewriteCond %{REQUEST_FILENAME} -s [OR] - RewriteCond %{REQUEST_FILENAME} -l [OR] - RewriteCond %{REQUEST_FILENAME} -d - RewriteRule ^.*$ - [NC,L] - RewriteRule ^.*$ index.php [NC,L] - - - - # Possible values include: debug, info, notice, warn, error, crit, alert, emerg. - LogLevel debug - ErrorLog "logs/scoresws.sd.dev-error.log" - CustomLog "logs/scoresws.sd.dev-access.log" common - - - -Vhost réel - - - ServerName wse.scores-decisions.com - ServerAlias wse1.scores-decisions.com - - # Pour la gestion des ports : $_SERVER['SERVER_NAME'], $_SERVER['SERVER_PORT'] - UseCanonicalName On - UseCanonicalPhysicalPort On - - ServerSignature Off - AddDefaultCharset utf-8 - DocumentRoot /home/vhosts/webservice/public - SetEnv APPLICATION_ENV "production" - - DirectoryIndex index.php - AllowOverride All - Order allow,deny - Allow from all - - RewriteEngine On - RewriteCond %{REQUEST_URI} ^/favicon.ico$ [OR] - RewriteCond %{REQUEST_FILENAME} -s [OR] - RewriteCond %{REQUEST_FILENAME} -l [OR] - RewriteCond %{REQUEST_FILENAME} -d - RewriteRule ^.*$ - [NC,L] - RewriteRule ^.*$ index.php [NC,L] - - - - # Possible values include: debug, info, notice, warn, error, crit, alert, emerg. - LogLevel error - ErrorLog /var/log/apache2/webservice-error.log - CustomLog /var/log/apache2/webservice-access.log common - - - - - diff --git a/docs/logrotate.txt b/docs/logrotate.txt deleted file mode 100644 index 5d4ebec4..00000000 --- a/docs/logrotate.txt +++ /dev/null @@ -1,8 +0,0 @@ -Créer un fichier "webservice" dans /etc/logrotate.d - -/var/log/webservice/*.log { - weekly - missingok - compress - notifempty -} \ No newline at end of file diff --git a/library/Application/Controller/Plugin/Auth.php b/library/Application/Controller/Plugin/Auth.php deleted file mode 100644 index ec0666fa..00000000 --- a/library/Application/Controller/Plugin/Auth.php +++ /dev/null @@ -1,100 +0,0 @@ -getControllerName(); - $action = $request->getActionName(); - - $checkAuth = true; - //Pas d'authentification sur la demande d'authentification - if ( $controller == 'user' && $action == 'login' ) { - $checkAuth = false; - } - - // Pas d'authentification sur ces services - if ( in_array($controller, array('service', 'import')) - || ( $controller == 'fichier' && $action == 'logs' ) - || ( $controller == 'fichier' && $action == 'kbis' ) - || ( $controller == 'fichier' && $action == 'csv' ) - || ( $controller == 'fichier' && $action == 'associations' )) { - $checkAuth = false; - } - - $checkWs = true; - if ( $controller == 'fichier' ) { - $checkWs = false; - } - - if ($checkAuth) { - $login = $request->getParam('login'); - $pass = $request->getParam('pass', ''); - - $hach = $request->getParam('hach'); - if (!empty($hach)) { - $pass = $hach; - } - - $auth = Zend_Auth::getInstance(); - - //On vérifie le tout lors d'une connexion par url - if ( !empty($login) && !empty($pass) ) { - - $authAdapter = new Scores_AuthAdapter($login, $pass, $checkWs); - $result = $auth->authenticate($authAdapter); - if (!$result->isValid()) { - $layout = Zend_Layout::getMVCInstance(); - if ( !$layout->isEnabled() ){ - echo "Identification incorrect ou périmé."; - } else { - $request->setModuleName('default') - ->setControllerName('user') - ->setActionName('logout'); - } - - } else { - - $storage = new Zend_Auth_Storage_Session(); - $session = new Zend_Session_Namespace($storage->getNamespace()); - //$session->setExpirationSeconds(86400); - $auth->setStorage($storage); - - } - - //Sinon on reste sur le standard - } else { - //Pas authentifié - if ( !$auth->hasIdentity() || time() > $auth->getIdentity()->time ) { - - $auth->clearIdentity(); - $session = new Zend_Session_Namespace('login'); - $session->url = $_SERVER['REQUEST_URI']; - - $layout = Zend_Layout::getMVCInstance(); - if (!$layout->isEnabled()){ - echo "Identification incorrect ou périmé."; - } else { - $this->_response->setRedirect('/user/login')->sendResponse(); - } - //Authentifié => on met à jour la session - } else { - - $identity = $auth->getIdentity(); - $identity->time = time() + $identity->timeout; - $auth->getStorage()->write($identity); - - if (Zend_Session::namespaceIsset('login')){ - Zend_Session::namespaceUnset('login'); - } - - } - } - } - } -} \ No newline at end of file diff --git a/library/Application/Controller/Plugin/Services.php b/library/Application/Controller/Plugin/Services.php deleted file mode 100644 index beffb308..00000000 --- a/library/Application/Controller/Plugin/Services.php +++ /dev/null @@ -1,71 +0,0 @@ -getControllerName(); - $action = $request->getActionName(); - - if ( $controller === 'service' ) { - - - } else { - - $auth = Zend_Auth::getInstance(); - $username = $auth->getIdentity()->username; - $idClient = $auth->getIdentity()->idClient; - - $wsServices = array(); - - //Get all webservice client - $clients = include APPLICATION_PATH . '/../library/WsScore/Clients/ClientsConfig.php'; - foreach( $clients as $section => $params ) { - if ( $params['actif'] - && (isset($params['idClient']) && in_array($idClient,$params['idClient'])) ) { - - $params['name'] = $section; - $params['type'] = 'client'; - if ( $idClient == 1 ) { - $params['name'] = 'Client - '.ucfirst($section); - } - $wsServices[$section] = $params; - } - } - - //Standard service - if ( count($wsServices)==0 || $idClient==1 ) { - $services = include APPLICATION_PATH . '/../library/WsScore/ServicesConfig.php'; - foreach( $services as $section => $params ) - { - if ( $params['actif'] ) { - $params['name'] = ucfirst($section); - $params['type'] = 'sd'; - if ( isset($params['idClient']) && in_array($idClient,$params['idClient']) ) { - if ( $idClient == 1 ) { - $params['name'] = 'SD - '.ucfirst($section); - } - $wsServices[$section] = $params; - } - elseif ( !isset($params['idClient']) ) { - if ( $idClient == 1 ) { - $params['name'] = 'SD - '.ucfirst($section); - } - $wsServices[$section] = $params; - } - } - } - } - - $layout = Zend_Layout::getMVCInstance(); - $view = $layout->getView(); - $view->WsServices = $wsServices; - - } - } -} \ No newline at end of file diff --git a/library/Application/Form/Login.php b/library/Application/Form/Login.php deleted file mode 100644 index d607b6a7..00000000 --- a/library/Application/Form/Login.php +++ /dev/null @@ -1,28 +0,0 @@ -setName('login'); - $this->setAction('login'); - $this->setMethod('post'); - $this->addElement('text', 'login', array( - 'filters' => array('StringTrim'), - 'label' => 'Identifiant : ', - 'required' => 'true', - ) - ); - $this->addElement('password', 'pass', - array( - 'label' => 'Mot de passe : ', - 'required' => 'true', - ) - ); - $this->addElement('submit', 'submit', - array( - 'label' => 'Identification', - 'ignore' => true, - )); - } - -} \ No newline at end of file diff --git a/library/Metier/Infogreffe/Infogreffe.php b/library/Metier/Infogreffe/Infogreffe.php deleted file mode 100644 index 3f8a8920..00000000 --- a/library/Metier/Infogreffe/Infogreffe.php +++ /dev/null @@ -1,399 +0,0 @@ -config = $c->profil->infogreffe; - if ( null === $this->config ) { - throw new Exception('Unable to load configuration file.'); - } - } - - public function callRequest() - { - $fromCache = false; - if ( $this->mode_diffusion == 'XL' && $this->fileIsCache($name) ){ - $fromCache = true; - } - - if ($fromCache) { - $xml = $this->fileFromCache(); - } else { - $xml = $this->getProduitsXML(); - $this->error($xml); - } - - if ( $this->mode_diffusion == 'XL' ){ - $this->fileTocache($xml); - } - - $this->error($xml); - - return $xml; - } - - /** - * Save data in cache - * @param string $xml - */ - protected function fileTocache($xml) - { - $filename = $this->type_document . '-' . $this->siren . '.xml'; - $file = $this->config->cache->path . DIRECTORY_SEPARATOR . $filename; - file_put_contents($file, $xml); - } - - /** - * - * @param string $xml - * @return string - */ - protected function fileFromCache() - { - $filename = $this->type_document . '-' . $this->siren . '.xml'; - $file = $file = $this->config->cache->path . DIRECTORY_SEPARATOR . $filename; - return file_get_contents($file); - } - - /** - * - * @param string $xml - * @return boolean - */ - protected function fileIsCache($xml) - { - $filename = $this->type_document . '-' . $this->siren . '.xml'; - $file = $file = $this->config->cache->path . DIRECTORY_SEPARATOR . $filename; - if ( !file_exists($file) ) { - return false; - } - - $dateFile = filemtime($file); - $now = mktime(date('G'), date('i'), date('s'), date('m') , date('d'), date('Y')); - $maxTime = mktime( - date('G',$dateFile)+$this->cacheFiletime, - date('i',$dateFile), - date('s',$dateFile), - date("m",$dateFile), - date("d",$dateFile), - date("Y",$dateFile) - ); - - if ( $now>$maxTime ) { - return true; - } - - return false; - } - - /** - * Detect error - * @param string $xml - * @throws Exception - */ - protected function error($xml) - { - if (!empty($xml)) - { - $doc = new DOMDocument(); - $load = $doc->loadXML($xml, LIBXML_NOERROR | LIBXML_NOWARNING); - if (!$load) { - $tmp = explode('-', $xml); - $errNum = intval($tmp[0]); - $errMsg = $tmp[1]; - if( $errNum == '5' ){ - $errMsg = 'Service partenaire indisponible.'; - } - throw new Exception($errNum . '-' . $errMsg); - } - } - else - { - throw new Exception('Fichier vide'); - } - } - - /** - * Download file from URL - * @param string $url - * @param string $filename - * @throws Exception - * @return string - */ - protected function download($url, $filename) - { - $file = $file = $this->config->storage->path . DIRECTORY_SEPARATOR . $filename; - $fp = fopen($file, 'w'); - $ch = curl_init($url); - curl_setopt($ch, CURLOPT_FILE, $fp); - $data = curl_exec($ch); - if( curl_errno($ch) ) { - throw new Exception( curl_error($ch) ); - } - curl_close($ch); - fclose($fp); - return $file; - } - - /** - * Pdf information - * @param string $pdf - * @return array - * pages => number of pages - * version => pdf version - * size => pdf filesize - */ - public function pdfInfos($pdf) - { - if ( false !== ( $file = file_get_contents( $pdf ) ) ) { - //Number of page - $pages = preg_match_all( "/\/Page\W/", $file, $matches ); - - //Pdf Version - preg_match("/^\%PDF\-(.*)\s/U", $file, $matches); - $version = $matches[1]; - - //Pdf size - $size = filesize($pdf); - - return array( - 'pages' => $pages, - 'version' => $version, - 'size' => $size, - ); - } - - return false; - } - - /** - * Define XML for the request - */ - protected function setXML() - { - //Construct the request - $xml = new SimpleXMLElement(''); - $emetteur = $xml->addChild('emetteur'); - $emetteur->addChild('code_abonne', $this->config->user); - $emetteur->addChild('mot_passe', $this->config->password); - - //Set Command ID - $emetteur->addChild('reference_client', $this->reference_client); - $code_requete = $emetteur->addChild('code_requete'); - $code_requete->addChild('type_profil', 'A'); - $code_requete->addChild('origine_emetteur', 'IC'); - - // C = Commande de documents - $code_requete->addChild('nature_requete', 'C'); - - $code_requete->addChild('type_document', $this->type_document); - $code_requete->addChild('type_requete', 'S'); // S = Simple - - // Mode de diffusion : C = Courrier, T = Téléchargement, M = Mail, XL = XML - $mode_diffusion = $code_requete->addChild('mode_diffusion'); - if ( $this->mode_diffusion=='XL' ) - { - //On ajoute tout les types de diffusions pour XL - $mode_diffusion->addChild('mode')->addAttribute('type', 'C'); - $mode_diffusion->addChild('mode')->addAttribute('type', 'T'); - } - $mode_diffusion->addChild('mode')->addAttribute('type', $this->mode_diffusion); - - $code_requete->addChild('media', 'WS'); - - $commande = $xml->addChild('commande'); - $commande->addChild('num_siren', $this->siren); - - if ( $this->mode_diffusion!='XL' ) - { - // Commande de documents : bilan saisie ou bilan complet - if ( ($this->type_document=='BS' || $this->type_document=='BI') ) - { - $commande->addChild('greffe',$this->greffe); - $commande->addChild('dossier_millesime',$this->dossier_millesime); - $commande->addChild('dossier_statut',$this->dossier_statut); - $commande->addChild('dossier_chrono',$this->dossier_chrono); - $commande->addChild('num_depot',$this->num_depot); - $commande->addChild('date_cloture', $this->date_cloture); - } - // Commande de documents : actes - elseif ( $this->type_document=='AC' ) - { - $commande->addChild('greffe',$this->greffe); - $commande->addChild('dossier_millesime',$this->dossier_millesime); - $commande->addChild('dossier_statut',$this->dossier_statut); - $commande->addChild('dossier_chrono',$this->dossier_chrono); - $commande->addChild('num_depot',$this->num_depot); - $liste_actes = $commande->addChild('liste_actes'); - $liste_actes->addChild('acte')->addAttribute('num', $this->num); - } - } - - $xml = str_replace('', '', $xml->asXML()); - - $this->xml = $xml; - } - - /** - * Send XML Request - * We have some problem to use SOAP so we use CURL - * @throws Exception - * @return string XML Response - */ - protected function getProduitsXML() - { - $this->setXML(); - - //Be sure it's in UTF-8 - $req = utf8_encode($this->xml); - - if ($this->debug) { - file_put_contents($this->type_document.'-'.$this->siren.'-'.$this->mode_diffusion.'.query'); - } - - //Create XML request - $post = ''. - ''. - ''. - ''. - ''.$req.''. - ''. - ''. - ''; - - $ch = curl_init(); - curl_setopt($ch, CURLOPT_URL, $this->config->url); - curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); - curl_setopt($ch, CURLOPT_COOKIEFILE,TRUE); - curl_setopt($ch, CURLOPT_POST, TRUE); - curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); - curl_setopt($ch, CURLOPT_POSTFIELDS, $post); - $response = curl_exec($ch); - - if ( curl_errno($ch) ) { - throw new Exception( curl_error($ch) ); - } - - //Remove SOAP part of XML - $response = str_replace("", '', $response); - $response = str_replace('','', $response); - - return $response; - } -} \ No newline at end of file diff --git a/library/Metier/Infogreffe/InfogreffeSt.php b/library/Metier/Infogreffe/InfogreffeSt.php deleted file mode 100644 index b3d9bbc7..00000000 --- a/library/Metier/Infogreffe/InfogreffeSt.php +++ /dev/null @@ -1 +0,0 @@ - - BI => - ST => - -File name pattern - -AC => acte-[siren]-[type]-[YYYYMMdd]-[num].pdf - siren = [0-9]{9} - type = - num = [0-9]{2} - - Files are store in actes/YYYY/MM/filename.pdf - -BI => bilan-[siren]-[type]-[YYYYMMdd].pdf - siren = [0-9]{9} - type = [consolide|sociaux] - - Files are store in bilans/[type]/[YYYY]; - -ST => statut- - - Files are store in status/ - -Configuration -------------- - -Add to the main configuration (application.ini), these keys : - - infogreffe.cache.path => path for storing cache file - - infogreffe.cache.time => define end of life for the cache in hours - - infogreffe.storage.path => - - - infogreffe.wsdl = infogreffe.wsdl - - infogreffe.url = https://webservices.infogreffe.fr/WSContextInfogreffe/INFOGREFFE - - infogreffe.uri = https://webservices.infogreffe.fr/ - - infogreffe.user = 85000109 - - infogreffe.password = 166 - - - -- Rattraper l'historique des documents et les liés à jo.greffes_bilans et jo.greffes_actes - Attention : Type de document 1 et 2 - Vérifier que nous possèdons le maximum d'infos sur l'association type 1 et 2 - Sinon passer une moulinette, pour chaque siren, récupérer la liste et analyse avec la table actes_files - - jo.greffes_actes : Ajout d'une colonne type_acte2 - - Il est possible sans le type de trouver le fichier - - SELECT siren, count(siren) as nb FROM `actes_files` WHERE `type_libelle` = '' GROUP BY siren ORDER BY nb DESC diff --git a/library/Metier/Infogreffe/infogreffe.wsdl b/library/Metier/Infogreffe/infogreffe.wsdl deleted file mode 100644 index afa38472..00000000 --- a/library/Metier/Infogreffe/infogreffe.wsdl +++ /dev/null @@ -1,80 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Service Soap Experian, Service Produit - - - - - diff --git a/library/Metier/Search/Search.php b/library/Metier/Search/Search.php deleted file mode 100644 index b3d9bbc7..00000000 --- a/library/Metier/Search/Search.php +++ /dev/null @@ -1 +0,0 @@ -db = Zend_Db_Table_Abstract::getDefaultAdapter(); - } else { - $this->db = $db; - } - } - - public function setVersion($version) - { - $this->version = $version; - } - - public function getRulesFromDb($type) - { - $version = str_replace('.','',$this->version); - $sql = "SELECT * FROM jo.sfr_rules_".$version." AS r WHERE r.type='".$type."' ORDER BY r.ordre"; - $result = $this->db->fetchAll($sql, array(), Zend_Db::FETCH_OBJ); - return $result; - } - - public function getParamsFromDb($type, $codif) - { - $version = str_replace('.','',$this->version); - $sql = "SELECT * FROM jo.sfr_params_".$version." AS p WHERE p.type='".$type."' AND p.codif='".$codif."' ORDER BY p.ordre"; - $result = $this->db->fetchAll($sql, array(), Zend_Db::FETCH_OBJ); - return $result; - } - - public function construct($type) - { - $rules = $this->getRulesFromDb($type); - if ( count($rules) > 0 ) { - $this->compileTxt.= "return array(\n"; - $this->addRules($rules); - $this->compileTxt.= ");\n"; - } - - $filename = realpath(__DIR__).'/Rules'.ucfirst(strtolower($type)).'-'.$this->version.'.php'; - - file_put_contents($filename, $this->compileTxt); - } - - public function addRules($rules) - { - foreach ( $rules as $i => $rule ) { - $this->compileTxt.= "\t".$i." => array(\n"; - $this->compileTxt.= "\t\t'name' => '".$rule->label."',\n"; - $this->compileTxt.= "\t\t'value' => '".$rule->value."',\n"; - $this->compileTxt.= "\t\t'po' => ".$rule->po.",\n"; - $this->compileTxt.= "\t\t'comment' => \"".$rule->comment."\",\n"; - $this->compileTxt.= "\t\t'params' => array(\n"; - $this->addParams($rule->type, $rule->codif); - $this->compileTxt.= "\t\t),\n"; - $this->compileTxt.= "\t),\n"; - } - } - - public function addParams($type, $codif) - { - $params = $this->getParamsFromDb($type, $codif); - if ( count($params) > 0 ) { - foreach ( $params as $i => $param ) { - if ( $param->define == '') { - $this->compileTxt.= "\t\t\t".$i." => array( 'var' => '".$param->var."', 'type' => '".$param->cond."', 'value' => '".$param->value."'),\n"; - } else { - $this->compileTxt.= "\t\t\t".$i." => array( 'var' => '".$param->var."', 'type' => '".$param->cond."', 'value' => '".$param->value."', 'define' => array( 'var' => '".$param->define."', 'value' => '".$param->define_value."')),\n"; - } - } - } - } - -} \ No newline at end of file diff --git a/library/Metier/Sfr/RulesPo-1.0.php b/library/Metier/Sfr/RulesPo-1.0.php deleted file mode 100644 index fcc20049..00000000 --- a/library/Metier/Sfr/RulesPo-1.0.php +++ /dev/null @@ -1,492 +0,0 @@ - array( - 'name' => 'PO-NAF-GE', - 'value' => '6000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'NAF', 'type' => 'LIST', 'value' => 'TabNafSFR'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '6'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'GE'), - ), - ), - 1 => array( - 'name' => 'PO-NAF-GE', - 'value' => '12000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'NAF', 'type' => 'LIST', 'value' => 'TabNafSFR'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '7'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'GE'), - ), - ), - 2 => array( - 'name' => 'PO-NAF-GE', - 'value' => '25000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'NAF', 'type' => 'LIST', 'value' => 'TabNafSFR'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '8'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'GE'), - ), - ), - 3 => array( - 'name' => 'PO-NAF-GE', - 'value' => '45000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'NAF', 'type' => 'LIST', 'value' => 'TabNafSFR'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '9'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'GE'), - ), - ), - 4 => array( - 'name' => 'PO-NAF-PME', - 'value' => '4600', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'NAF', 'type' => 'LIST', 'value' => 'TabNafSFR'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '6'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'PME'), - ), - ), - 5 => array( - 'name' => 'PO-NAF-PME', - 'value' => '5700', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'NAF', 'type' => 'LIST', 'value' => 'TabNafSFR'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '7'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'PME'), - ), - ), - 6 => array( - 'name' => 'PO-NAF-PME', - 'value' => '14000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'NAF', 'type' => 'LIST', 'value' => 'TabNafSFR'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '8'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'PME'), - ), - ), - 7 => array( - 'name' => 'PO-NAF-PME', - 'value' => '19000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'NAF', 'type' => 'LIST', 'value' => 'TabNafSFR'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '9'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'PME'), - ), - ), - 8 => array( - 'name' => 'PO-NAF-PME', - 'value' => '700', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'NAF', 'type' => 'LIST', 'value' => 'TabNafSFR'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '6'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'TPE'), - ), - ), - 9 => array( - 'name' => 'PO-NAF-PME', - 'value' => '1000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'NAF', 'type' => 'LIST', 'value' => 'TabNafSFR'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '7'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'TPE'), - ), - ), - 10 => array( - 'name' => 'PO-NAF-PME', - 'value' => '1100', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'NAF', 'type' => 'LIST', 'value' => 'TabNafSFR'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '8'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'TPE'), - ), - ), - 11 => array( - 'name' => 'PO-NAF-PME', - 'value' => '2800', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'NAF', 'type' => 'LIST', 'value' => 'TabNafSFR'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '9'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'TPE'), - ), - ), - 12 => array( - 'name' => 'PO-Date-GE', - 'value' => '3000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '6'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'GE'), - ), - ), - 13 => array( - 'name' => 'PO-Date-GE', - 'value' => '3000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '4'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '7'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'GE'), - ), - ), - 14 => array( - 'name' => 'PO-Date-GE', - 'value' => '3000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '8'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'GE'), - ), - ), - 15 => array( - 'name' => 'PO-Date-GE', - 'value' => '5000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '9'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'GE'), - ), - ), - 16 => array( - 'name' => 'PO-Date-GE', - 'value' => '5000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '10'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'GE'), - ), - ), - 17 => array( - 'name' => 'PO-Date-GE', - 'value' => '5000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '11'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'GE'), - ), - ), - 18 => array( - 'name' => 'PO-Date-GE', - 'value' => '10000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '12'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'GE'), - ), - ), - 19 => array( - 'name' => 'PO-Date-GE', - 'value' => '10000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '13'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'GE'), - ), - ), - 20 => array( - 'name' => 'PO-Date-GE', - 'value' => '10000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '14'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'GE'), - ), - ), - 21 => array( - 'name' => 'PO-Date-PME', - 'value' => '1500', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '6'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'PME'), - ), - ), - 22 => array( - 'name' => 'PO-Date-PME', - 'value' => '1500', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '7'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'PME'), - ), - ), - 23 => array( - 'name' => 'PO-Date-PME', - 'value' => '1500', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '8'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'PME'), - ), - ), - 24 => array( - 'name' => 'PO-Date-PME', - 'value' => '6000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '9'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'PME'), - ), - ), - 25 => array( - 'name' => 'PO-Date-PME', - 'value' => '6000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '4'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '10'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'PME'), - ), - ), - 26 => array( - 'name' => 'PO-Date-PME', - 'value' => '6000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '11'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'PME'), - ), - ), - 27 => array( - 'name' => 'PO-Date-PME', - 'value' => '9000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '12'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'PME'), - ), - ), - 28 => array( - 'name' => 'PO-Date-PME', - 'value' => '9000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '13'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'PME'), - ), - ), - 29 => array( - 'name' => 'PO-Date-PME', - 'value' => '9000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '14'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'PME'), - ), - ), - 30 => array( - 'name' => 'PO-Date-TPE', - 'value' => '500', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '6'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'TPE'), - ), - ), - 31 => array( - 'name' => 'PO-Date-TPE', - 'value' => '500', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '7'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'TPE'), - ), - ), - 32 => array( - 'name' => 'PO-Date-TPE', - 'value' => '500', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '8'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'TPE'), - ), - ), - 33 => array( - 'name' => 'PO-Date-TPE', - 'value' => '1000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '9'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'TPE'), - ), - ), - 34 => array( - 'name' => 'PO-Date-TPE', - 'value' => '1000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '4'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '10'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'TPE'), - ), - ), - 35 => array( - 'name' => 'PO-Date-TPE', - 'value' => '1000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '11'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'TPE'), - ), - ), - 36 => array( - 'name' => 'PO-Date-TPE', - 'value' => '1500', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '12'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'TPE'), - ), - ), - 37 => array( - 'name' => 'PO-Date-TPE', - 'value' => '1500', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '13'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'TPE'), - ), - ), - 38 => array( - 'name' => 'PO-Date-TPE', - 'value' => '1500', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '14'), - 2 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'TPE'), - ), - ), - 39 => array( - 'name' => 'PO-STD-GE', - 'value' => '6000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '6'), - 1 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'GE'), - ), - ), - 40 => array( - 'name' => 'PO-STD-GE', - 'value' => '10000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '7'), - 1 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'GE'), - ), - ), - 41 => array( - 'name' => 'PO-STD-GE', - 'value' => '20000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '8'), - 1 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'GE'), - ), - ), - 42 => array( - 'name' => 'PO-STD-PME', - 'value' => '3000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '6'), - 1 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'PME'), - ), - ), - 43 => array( - 'name' => 'PO-STD-PME', - 'value' => '3700', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '7'), - 1 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'PME'), - ), - ), - 44 => array( - 'name' => 'PO-STD-PME', - 'value' => '5000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '8'), - 1 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'PME'), - ), - ), - 45 => array( - 'name' => 'PO-STD-PME', - 'value' => '9000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '9'), - 1 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'PME'), - ), - ), - 46 => array( - 'name' => 'PO-STD-TPE', - 'value' => '500', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '6'), - 1 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'TPE'), - ), - ), - 47 => array( - 'name' => 'PO-STD-TPE', - 'value' => '600', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '7'), - 1 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'TPE'), - ), - ), - 48 => array( - 'name' => 'PO-STD-TPE', - 'value' => '1000', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '8'), - 1 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'TPE'), - ), - ), - 49 => array( - 'name' => 'PO-STD-TPE', - 'value' => '1300', - 'comment' => "", - 'params' => array( - 0 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '9'), - 1 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'TPE'), - ), - ), -); diff --git a/library/Metier/Sfr/RulesVord-1.0.php b/library/Metier/Sfr/RulesVord-1.0.php deleted file mode 100644 index d87c729d..00000000 --- a/library/Metier/Sfr/RulesVord-1.0.php +++ /dev/null @@ -1,168 +0,0 @@ - array( - 'name' => 'VORd-11.1', - 'value' => 'STOP', - 'comment' => "", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'ContratAge', 'type' => 'EGAL', 'value' => 'UNDEFINE'), - 1 => array( 'var' => 'IR', 'type' => 'EGAL', 'value' => 'UNDEFINE'), - ), - ), - 1 => array( - 'name' => 'VORd-11.2', - 'value' => 'CONTINUE', - 'comment' => "", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'ContratAge', 'type' => 'EGAL', 'value' => 'UNDEFINE'), - 1 => array( 'var' => 'IR', 'type' => 'MIN', 'value' => '-1', 'define' => array( 'var' => 'ContratAge', 'value' => '24')), - ), - ), - 2 => array( - 'name' => 'VORd-11.3', - 'value' => 'CONTINUE', - 'comment' => "", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'ContratAge', 'type' => 'MIN', 'value' => '-1'), - 1 => array( 'var' => 'IR', 'type' => 'EGAL', 'value' => 'UNDEFINE', 'define' => array( 'var' => 'IR', 'value' => '8')), - ), - ), - 3 => array( - 'name' => 'VORd-10.1', - 'value' => 'ROUGE', - 'comment' => "Société dont la solvabilité est limitée et qui rencontre des difficultés de paiement : Faire une DEC pour tout acte éligible", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'FEU', 'type' => 'EGAL', 'value' => 'VERT'), - 1 => array( 'var' => 'IR', 'type' => 'MIN', 'value' => '4.9'), - 2 => array( 'var' => 'IR', 'type' => 'MAX', 'value' => '7.1'), - 3 => array( 'var' => 'ContratAge', 'type' => 'MAX', 'value' => '25'), - 4 => array( 'var' => 'Indiscore', 'type' => 'MIN', 'value' => '9'), - 5 => array( 'var' => 'Indiscore', 'type' => 'MAX', 'value' => '12'), - ), - ), - 4 => array( - 'name' => 'VORd-10.2', - 'value' => 'ORANGE', - 'comment' => "", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'FEU', 'type' => 'EGAL', 'value' => 'VERT'), - 1 => array( 'var' => 'IR', 'type' => 'MIN', 'value' => '4.9'), - 2 => array( 'var' => 'IR', 'type' => 'MAX', 'value' => '7.1'), - 3 => array( 'var' => 'ContratAge', 'type' => 'MIN', 'value' => '24'), - 4 => array( 'var' => 'ContratAge', 'type' => 'MAX', 'value' => '36'), - 5 => array( 'var' => 'Indiscore', 'type' => 'MIN', 'value' => '9'), - 6 => array( 'var' => 'Indiscore', 'type' => 'MAX', 'value' => '12'), - ), - ), - 5 => array( - 'name' => 'VORd-10.3', - 'value' => 'ORANGE', - 'comment' => "", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'FEU', 'type' => 'EGAL', 'value' => 'VERT'), - 1 => array( 'var' => 'IR', 'type' => 'MIN', 'value' => '4.9'), - 2 => array( 'var' => 'IR', 'type' => 'MAX', 'value' => '7.1'), - 3 => array( 'var' => 'ContratAge', 'type' => 'MAX', 'value' => '25'), - 4 => array( 'var' => 'Indiscore', 'type' => 'MIN', 'value' => '11'), - 5 => array( 'var' => 'Indiscore', 'type' => 'MAX', 'value' => '14'), - ), - ), - 6 => array( - 'name' => 'VORd-10.4', - 'value' => 'ROUGE', - 'comment' => "Société dont la solvabilité est limitée et qui rencontre des difficultés de paiement : Faire une DEC pour tout acte éligible", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'FEU', 'type' => 'EGAL', 'value' => 'ORANGE'), - 1 => array( 'var' => 'IR', 'type' => 'MAX', 'value' => '2.1'), - 2 => array( 'var' => 'ContratAge', 'type' => 'MIN', 'value' => '35'), - ), - ), - 7 => array( - 'name' => 'VORd-10.5', - 'value' => 'VERT', - 'comment' => "", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'FEU', 'type' => 'EGAL', 'value' => 'ORANGE'), - 1 => array( 'var' => 'IR', 'type' => 'MIN', 'value' => '2'), - 2 => array( 'var' => 'IR', 'type' => 'MAX', 'value' => '5'), - 3 => array( 'var' => 'ContratAge', 'type' => 'MIN', 'value' => '36'), - 4 => array( 'var' => 'Indiscore', 'type' => 'MIN', 'value' => '7'), - ), - ), - 8 => array( - 'name' => 'VORd-10.6', - 'value' => 'ROUGE', - 'comment' => "Société dont la solvabilité est limitée et qui rencontre des difficultés de paiement : Faire une DEC pour tout acte éligible", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'FEU', 'type' => 'EGAL', 'value' => 'ORANGE'), - 1 => array( 'var' => 'EntrepRecente', 'type' => 'EGAL', 'value' => '1'), - 2 => array( 'var' => 'IR', 'type' => 'MAX', 'value' => '2.1'), - 3 => array( 'var' => 'ContratAge', 'type' => 'MAX', 'value' => '36'), - ), - ), - 9 => array( - 'name' => 'VORd-10.7', - 'value' => 'ROUGE', - 'comment' => "Société dont la solvabilité est limitée et qui rencontre des difficultés de paiement : Faire une DEC pour tout acte éligible", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'FEU', 'type' => 'EGAL', 'value' => 'ORANGE'), - 1 => array( 'var' => 'EntrepRecente', 'type' => 'EGAL', 'value' => '1'), - 2 => array( 'var' => 'ContratAge', 'type' => 'MAX', 'value' => '25'), - 3 => array( 'var' => 'IR', 'type' => 'MIN', 'value' => '4.9'), - 4 => array( 'var' => 'IR', 'type' => 'MAX', 'value' => '7.1'), - 5 => array( 'var' => 'Indiscore', 'type' => 'MIN', 'value' => '9'), - 6 => array( 'var' => 'Indiscore', 'type' => 'MAX', 'value' => '12'), - ), - ), - 10 => array( - 'name' => 'VORd-10.8', - 'value' => 'VERT', - 'comment' => "", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'FEU', 'type' => 'EGAL', 'value' => 'ORANGE'), - 1 => array( 'var' => 'EntrepRecente', 'type' => 'EGAL', 'value' => '1'), - 2 => array( 'var' => 'IR', 'type' => 'MIN', 'value' => '4.9'), - 3 => array( 'var' => 'IR', 'type' => 'MAX', 'value' => '7.1'), - 4 => array( 'var' => 'ContratAge', 'type' => 'MIN', 'value' => '36'), - 5 => array( 'var' => 'Indiscore', 'type' => 'MIN', 'value' => '11'), - ), - ), - 11 => array( - 'name' => 'VORd-10.8-2', - 'value' => 'VERT', - 'comment' => "", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'FEU', 'type' => 'EGAL', 'value' => 'ORANGE'), - 1 => array( 'var' => 'EntrepRecente', 'type' => 'EGAL', 'value' => '1'), - 2 => array( 'var' => 'IR', 'type' => 'MIN', 'value' => '4.9'), - 3 => array( 'var' => 'IR', 'type' => 'MAX', 'value' => '7.1'), - 4 => array( 'var' => 'ContratAge', 'type' => 'MIN', 'value' => '24'), - 5 => array( 'var' => 'Indiscore', 'type' => 'MIN', 'value' => '13'), - ), - ), - 12 => array( - 'name' => 'VORd-10.9', - 'value' => 'ORANGE', - 'comment' => "Faire une DEC si dépassement de la PO proposée", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'FEU', 'type' => 'EGAL', 'value' => 'ROUGE'), - 1 => array( 'var' => 'IR', 'type' => 'MIN', 'value' => '2'), - 2 => array( 'var' => 'IR', 'type' => 'MAX', 'value' => '5'), - 3 => array( 'var' => 'ContratAge', 'type' => 'MIN', 'value' => '36'), - 4 => array( 'var' => 'Indiscore', 'type' => 'MIN', 'value' => '3'), - ), - ), -); diff --git a/library/Metier/Sfr/RulesVorp-1.0.php b/library/Metier/Sfr/RulesVorp-1.0.php deleted file mode 100644 index 207a3634..00000000 --- a/library/Metier/Sfr/RulesVorp-1.0.php +++ /dev/null @@ -1,164 +0,0 @@ - array( - 'name' => 'VORp-1.0', - 'value' => 'DEFINE', - 'comment' => "", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'IsCAC', 'type' => 'EGAL', 'value' => '1', 'define' => array( 'var' => 'TypeEntrep', 'value' => 'CAC')), - 1 => array( 'var' => 'Effectif', 'type' => 'MIN', 'value' => '499', 'define' => array( 'var' => 'TypeEntrep', 'value' => 'GE')), - 2 => array( 'var' => 'Effectif', 'type' => 'MIN', 'value' => '3', 'define' => array( 'var' => 'TypeEntrep', 'value' => 'PME')), - 3 => array( 'var' => 'Effectif', 'type' => 'MIN', 'value' => '-1', 'define' => array( 'var' => 'TypeEntrep', 'value' => 'TPE')), - 4 => array( 'var' => 'Effectif', 'type' => 'EGAL', 'value' => 'UNDEFINE', 'define' => array( 'var' => 'TypeEntrep', 'value' => 'TPE')), - ), - ), - 1 => array( - 'name' => 'VORp-2.1', - 'value' => 'VERT', - 'comment' => "", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'NAF', 'type' => 'LIST', 'value' => 'TabAdminNaf', 'define' => array( 'var' => 'IsAdmin', 'value' => '1')), - ), - ), - 2 => array( - 'name' => 'VORp-2.2', - 'value' => 'VERT', - 'comment' => "", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'FJ', 'type' => 'LIST', 'value' => 'TabAdminFj', 'define' => array( 'var' => 'IsAdmin', 'value' => '1')), - ), - ), - 3 => array( - 'name' => 'VORp-3.1', - 'value' => 'ROUGE', - 'comment' => "Société de droit étranger : faire une DEC si volonté de poursuivre l'affaire", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'NAF', 'type' => 'LIST', 'value' => 'TabEtrangerNaf', 'define' => array( 'var' => 'IsEtranger', 'value' => '1')), - ), - ), - 4 => array( - 'name' => 'VORp-3.2', - 'value' => 'ROUGE', - 'comment' => "Société de droit étranger : faire une DEC si volonté de poursuivre l'affaire", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'FJ', 'type' => 'LIST', 'value' => 'TabEtrangerFj', 'define' => array( 'var' => 'IsEtranger', 'value' => '1')), - ), - ), - 5 => array( - 'name' => 'VORp-4.1', - 'value' => 'ROUGE', - 'comment' => "Cette société fait l'objet d'un Redressement Judiciaire : faire une DEC si volonté de poursuivre l'affaire", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'Indiscore', 'type' => 'MAX', 'value' => '6'), - 1 => array( 'var' => 'RJ', 'type' => 'EGAL', 'value' => '1'), - ), - ), - 6 => array( - 'name' => 'VORp-4.2', - 'value' => 'ROUGE', - 'comment' => "Cette société fait l'objet d'une liquidation judiciaire : pas d'entrée en relation possible", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'Indiscore', 'type' => 'MAX', 'value' => '6'), - 1 => array( 'var' => 'LJ', 'type' => 'EGAL', 'value' => '1'), - ), - ), - 7 => array( - 'name' => 'VORp-4.3', - 'value' => 'ROUGE', - 'comment' => "Cette société fait l'objet d'une Sauvegarde Judiciaire : faire une DEC si volonté de poursuivre l'affaire", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'Indiscore', 'type' => 'MAX', 'value' => '6'), - 1 => array( 'var' => 'SV', 'type' => 'EGAL', 'value' => '1'), - ), - ), - 8 => array( - 'name' => 'VORp-4.4', - 'value' => 'ROUGE', - 'comment' => "Cette entreprise n'est pas active à l'INSEE : pas d'entrée en relation possible", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'Indiscore', 'type' => 'MAX', 'value' => '6'), - 1 => array( 'var' => 'InseeActif', 'type' => 'EGAL', 'value' => '0'), - ), - ), - 9 => array( - 'name' => 'VORp-5.0', - 'value' => 'ORANGE', - 'comment' => "Faire une DEC si dépassement de la PO proposée", - 'po' => 1, - 'params' => array( - 0 => array( 'var' => 'Indiscore', 'type' => 'MAX', 'value' => '16'), - 1 => array( 'var' => 'Indiscore', 'type' => 'MIN', 'value' => '9'), - 2 => array( 'var' => 'InseeAge', 'type' => 'MAX', 'value' => '37', 'define' => array( 'var' => 'EntrepRecente', 'value' => '1')), - 3 => array( 'var' => 'TypeEntrep', 'type' => 'MIN', 'value' => 'PME'), - ), - ), - 10 => array( - 'name' => 'VORp-7.0', - 'value' => 'ORANGE', - 'comment' => "Cette entreprise fait l'objet d'une sauvegarde : faire une DEC si dépassement de la PO", - 'po' => 1, - 'params' => array( - 0 => array( 'var' => 'FEU', 'type' => 'EGAL', 'value' => 'ROUGE'), - 1 => array( 'var' => 'SV', 'type' => 'EGAL', 'value' => '1'), - 2 => array( 'var' => 'Indiscore', 'type' => 'MIN', 'value' => '4'), - ), - ), - 11 => array( - 'name' => 'VORp-8.0', - 'value' => 'VERT', - 'comment' => "", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'GE'), - 1 => array( 'var' => 'Indiscore', 'type' => 'EGAL', 'value' => '9'), - ), - ), - 12 => array( - 'name' => 'VORp-9.0', - 'value' => 'VERT', - 'comment' => "", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'TypeEntrep', 'type' => 'EGAL', 'value' => 'CAC'), - 1 => array( 'var' => 'Indiscore', 'type' => 'MIN', 'value' => '5'), - ), - ), - 13 => array( - 'name' => 'VORp-6.1', - 'value' => 'ROUGE', - 'comment' => "Solvabilité et pérennité compromise : faire une DEC si volonté de poursuivre l'affaire", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'Indiscore', 'type' => 'MAX', 'value' => '6'), - ), - ), - 14 => array( - 'name' => 'VORp-6.2', - 'value' => 'ORANGE', - 'comment' => "Faire une DEC si dépassement de la PO proposée", - 'po' => 1, - 'params' => array( - 0 => array( 'var' => 'Indiscore', 'type' => 'MAX', 'value' => '10'), - 1 => array( 'var' => 'Indiscore', 'type' => 'MIN', 'value' => '5'), - ), - ), - 15 => array( - 'name' => 'VORp-6.3', - 'value' => 'VERT', - 'comment' => "", - 'po' => 0, - 'params' => array( - 0 => array( 'var' => 'Indiscore', 'type' => 'MAX', 'value' => '21'), - 1 => array( 'var' => 'Indiscore', 'type' => 'MIN', 'value' => '9'), - ), - ), -); diff --git a/library/Metier/Sfr/Sfr.php b/library/Metier/Sfr/Sfr.php deleted file mode 100644 index 70e241d8..00000000 --- a/library/Metier/Sfr/Sfr.php +++ /dev/null @@ -1,1026 +0,0 @@ -setVersion($version); - - $this->setCompile($compile); - - //Charger les Tabs - ou pas - - //Charger les Rules (dans l'ordre) - $this->RulesVORP = include realpath(dirname(__FILE__)) . DIRECTORY_SEPARATOR . 'RulesVorp-'.$this->version.'.php'; - $this->RulesVORD = include realpath(dirname(__FILE__)) . DIRECTORY_SEPARATOR . 'RulesVord-'.$this->version.'.php'; - $this->RulesPO = include realpath(dirname(__FILE__)) . DIRECTORY_SEPARATOR . 'RulesPo-'.$this->version.'.php'; - - if ($this->debug) file_put_contents('sfr.log', "DEBUT\n"); - - } - - public function evaluate($siren) - { - Zend_Date::setOptions(array('extend_month' => true)); - - if ($this->debug) file_put_contents('sfr.log', "SIREN = $siren\n", FILE_APPEND); - - //Set ValContratAge - if ( !empty($this->ValContratDate) ) { - $dateContrat = new Zend_Date($this->ValContratDate, 'yyyyMMdd'); - $dateNow = new Zend_Date(); - $diff = $dateNow->sub($dateContrat); - $measure = new Zend_Measure_Time($diff->toValue(), Zend_Measure_Time::SECOND); - $measure->convertTo(Zend_Measure_Time::MONTH); - $this->ValContratAge = $measure->getValue(); - } - - $classInsee = new MInsee(); - $classInsee->AnnoncesInMemory = true; - - //Values are already define ? - if ( $this->ValDateCalculIndiscore === null ) { - - //Vérifier la présence d'un calcul dans la table scores_surveillances - $survM = new Application_Model_JoScoresSurveillance(); - $sql = $survM->select()->where('siren=?', $siren); - $result = $survM->fetchRow($sql); - - //No results - if ( $result === null && $this->notCalculateInError ) { - return false; - } - - //No score - if ( intval($result->indiScoreDate) == 0 && $this->notCalculateInError ) { - return false; - } - - if ( $result !== null ) { - - //Indiscore - aller chercher scores dans l'historique moins de X mois - $dateUpdate = new Zend_Date(substr($result->dateUpdate,0,10), 'yyyy-MM-dd'); - - $dateNow = new Zend_Date(); - $diffUpdate = $dateNow->sub($dateUpdate); - $measureUpdate = new Zend_Measure_Time($diffUpdate->toValue(), Zend_Measure_Time::SECOND); - $measureUpdate->convertTo(Zend_Measure_Time::MONTH); - - if ($this->debug) file_put_contents('sfr.log', "INDISCORE DIFF = " . $measureUpdate->getValue() . "\n", FILE_APPEND); - - if ( $measureUpdate->getValue() <= 12 ) { - $this->ValIndiscore = $result->indiScore20; - $this->ValDateCalculIndiscore = $result->indiScoreDate; - } - - //Définition des marqueurs - $this->ValNAF = $result->naf; - $this->ValFJ = $result->CJ; - $this->ValInseeActif = $result->actif; - - if ( !empty($result->dateCrea) && $result->dateCrea!='0000-00-00 00:00:00' ) { - - $dateC = new Zend_Date($result->dateCrea, 'yyyy-MM-dd'); - $dateNow = new Zend_Date(); - $difference = $dateNow->sub($dateC); - $measure = new Zend_Measure_Time($difference->toValue(), Zend_Measure_Time::SECOND); - $measure->convertTo(Zend_Measure_Time::MONTH); - $this->ValInseeAge = $measure->getValue(); - - } elseif ( !empty($result->dateImmat) && $result->dateImmat!='0000-00-00 00:00:00' ) { - - $dateC = new Zend_Date($result->dateImmat, 'yyyy-MM-dd'); - $dateNow = new Zend_Date(); - $difference = $dateNow->sub($dateC); - $measure = new Zend_Measure_Time($difference->toValue(), Zend_Measure_Time::SECOND); - $measure->convertTo(Zend_Measure_Time::MONTH); - $this->ValInseeAge = $measure->getValue(); - - } - - $this->SituationJuridique = $result->procol; - } - - //Aucun résultat, faire le calcul || donnée manquante || force identite - if ( $this->ValNAF === null - || $this->ValFJ === null - || $this->ValInseeActif === null - || $this->ValInseeAge === null - || $this->forceIdentite === true - ) { - - //Identite - @todo : Gérer les erreurs techniques - $identite = $classInsee->getIdentiteEntreprise($siren, 0, 0, false, false); - - //Naf de l'entreprise - $this->ValNAF = $identite['NafEnt']; - - //Forme juridique de l'entreprise - $this->ValFJ = $identite['FJ']; //insee - - /** - * Effectif de l'entreprise - * 1 - Chiffre au bilan - * 2 - Info insee Identite::Effectif à la centaine approché - */ - $this->ValEffectif = $identite['Effectif']; - - $bilanAgeMax = 3*12; //Age maximum du dernier bilan en mois - if (!empty($identite['bilanDate']) && intval($identite['bilanYP'])>0 ) { - - $dateBilan = new Zend_Date($identite['bilanDate'], 'yyyyMMdd'); - $dateNow = new Zend_Date(); - $difference = $dateNow->sub($dateBilan); - $measure = new Zend_Measure_Time($difference->toValue(), Zend_Measure_Time::SECOND); - $measure->convertTo(Zend_Measure_Time::MONTH); - $nbMonth = $measure->getValue(); - - if ( $nbMonth < $bilanAgeMax ) { - $this->ValEffectif = $identite['bilanYP']; - } - if ($this->debug) file_put_contents('sfr.log', "Bilan : nbMonth = ".$nbMonth."\n", FILE_APPEND); - } - if ($this->debug) file_put_contents('sfr.log', "ValEffectif = ".$this->ValEffectif."\n", FILE_APPEND); - - //Entreprise Active à l'insee - $this->ValInseeActif = $identite['Actif']; - - //Age de l'entreprise en mois - if ( !empty($identite['DateCreaEn']) && $identite['DateCreaEn']!='0000-00-00 00:00:00' ) { - - $dateC = new Zend_Date($identite['DateCreaEn'], 'yyyy-MM-dd'); - $dateNow = new Zend_Date(); - $difference = $dateNow->sub($dateC); - $measure = new Zend_Measure_Time($difference->toValue(), Zend_Measure_Time::SECOND); - $measure->convertTo(Zend_Measure_Time::MONTH); - $this->ValInseeAge = $measure->getValue(); - - } elseif ( !empty($identite['dateImmat']) && $identite['dateImmat']!='0000-00-00 00:00:00' ) { - - $dateC = new Zend_Date($identite['dateImmat'], 'yyyy-MM-dd'); - $dateNow = new Zend_Date(); - $difference = $dateNow->sub($dateC); - $measure = new Zend_Measure_Time($difference->toValue(), Zend_Measure_Time::SECOND); - $measure->convertTo(Zend_Measure_Time::MONTH); - $this->ValInseeAge = $measure->getValue(); - - } - if ($this->debug) file_put_contents('sfr.log', "ValInseeAge = ".$this->ValInseeAge."\n", FILE_APPEND); - - $this->ValSituationJuridique = $identite['SituationJuridique']; - - } - - } - - //Values are defined from outside - else { - - //Age de l'entreprise en mois - if ( !empty($this->ValDateCrea) && $this->ValDateCrea!='0000-00-00 00:00:00' ) { - - $dateC = new Zend_Date($this->ValDateCrea, 'yyyy-MM-dd'); - $dateNow = new Zend_Date(); - $difference = $dateNow->sub($dateC); - $measure = new Zend_Measure_Time($difference->toValue(), Zend_Measure_Time::SECOND); - $measure->convertTo(Zend_Measure_Time::MONTH); - $this->ValInseeAge = $measure->getValue(); - - } elseif ( !empty($this->ValDateImmat) && $this->ValDateImmat!='0000-00-00 00:00:00' ) { - - $dateC = new Zend_Date($this->ValDateImmat, 'yyyy-MM-dd'); - $dateNow = new Zend_Date(); - $difference = $dateNow->sub($dateC); - $measure = new Zend_Measure_Time($difference->toValue(), Zend_Measure_Time::SECOND); - $measure->convertTo(Zend_Measure_Time::MONTH); - $this->ValInseeAge = $measure->getValue(); - - } - if ($this->debug) file_put_contents('sfr.log', "ValInseeAge = ".$this->ValInseeAge."\n", FILE_APPEND); - - //Vérification validité du score - $dateUpdate = new Zend_Date(substr($this->ValDateUpdate,0,10), 'yyyy-MM-dd'); - $dateNow = new Zend_Date(); - $diffUpdate = $dateNow->sub($dateUpdate); - $measureUpdate = new Zend_Measure_Time($diffUpdate->toValue(), Zend_Measure_Time::SECOND); - $measureUpdate->convertTo(Zend_Measure_Time::MONTH); - - if ($this->debug) file_put_contents('sfr.log', "INDISCORE DIFF = " . $measureUpdate->getValue() . "\n", FILE_APPEND); - - if ( $measureUpdate->getValue() > 12 ) { - $this->ValIndiscore = null; - $this->ValDateCalculIndiscore = null; - } - - } - - //GetAnnoncesLegales - //Si procédure collective ou autre - if ( $this->ValInseeActif==1 && !empty($this->ValSituationJuridique) ) { - - $this->ValRJ = 0; //Liste des codes - 1200 - $retRJ = $classInsee->getAnnoncesLegales($siren, 0, array('1200','1201','1202','1203','1204','1205','1206','1207','1208','1209','1210','1211','1212','1214','1215','1216')); - if (count($retRJ)>0) { - $this->ValRJ = 1; - } - if ($this->debug) file_put_contents('sfr.log', "RJ = ".$this->ValRJ."\n", FILE_APPEND); - - $this->ValSV = 0; //Liste des codes - 1100 - $retSV = $classInsee->getAnnoncesLegales($siren, 0, array('1100','1101','1102','1110','1119')); - if (count($retSV)>0) { - $this->ValSV = 1; - } - if ($this->debug) file_put_contents('sfr.log', "SV = ".$this->ValSV."\n", FILE_APPEND); - - $this->ValLJ = 0; //Liste des codes - 1300 - $retLJ = $classInsee->getAnnoncesLegales($siren, 0, array('1300','1301','1302', '1303', '1304', '1305', '1306', '1307', '1308', '1309', '13010', '1311', '1312', '1313', '1346')); - if (count($retLJ)>0) { - $this->ValLJ = 1; - } - if ($this->debug) file_put_contents('sfr.log', "LJ = ".$this->ValLJ."\n", FILE_APPEND); - - } - - //Entreprise coté au CAC - /*$this->ValIsCAC = 0; - require_once 'Metier/partenaires/classMLiens2.php'; - $lienM = new MLiens2($siren, 'siren'); - if ( $lienM->isInGroupeCAC40() ) { - $this->ValIsCAC = 1; - } - if ($this->debug) file_put_contents('sfr.log', "CAC40 = ".$this->ValIsCAC."\n", FILE_APPEND); - */ - - //Si Indiscore = null alors calcul - if ( $this->ValIndiscore === null ) { - $indiscore = calculIndiScore($siren, '', false, 0); // @todo : Gérer les erreurs techniques - $this->ValIndiscore = $indiscore['Indiscore20']; - $this->ValDateCalculIndiscore = date('Y-m-d'); - } - if ($this->debug) file_put_contents('sfr.log', "INDISCORE = ".$this->ValIndiscore."\n", FILE_APPEND); - - //Vérification des valeurs avant traitement - $verif = array('NAF', 'FJ', 'InseeActif', 'InseeAge'); - foreach($verif as $val) { - if ( $this->{'Val'.$val} === null ) { - if ($this->debug) file_put_contents('sfr.log', "ERREUR = ".$val."\n", FILE_APPEND); - return false; - } - } - - //Rules - $ruleType = array( 'VORP' , 'VORD' , 'PO'); - foreach ( $ruleType as $type ) { - $this->rules($type); - } - - return true; - } - - /** - * Execution des règles - * Si les conditions contenu dans la regle - * - * - * @param string $type - */ - protected function rules($type) - { - $rules = $this->{'Rules'.$type}; - foreach ( $rules as $rule ) { - - if ($this->debug) file_put_contents('sfr.log', "\nREGLE - ".$rule['name']."\n", FILE_APPEND); - - $all = false; - if ( $rule['value'] == 'DEFINE' ) { - $all = true; - } - $return = $this->params($rule['params'], $all); - - // Continue always - if ( $rule['value'] == 'CONTINUE' || $rule['value'] == 'DEFINE' ) { - continue; - } - - //Continue - elseif ( $return === false ){ - continue; - } - - // Stop - elseif ( $rule['value'] == 'STOP' && $return === true ) { - break; - } - - //Set Value - else { - if( $type == 'PO' ) { - - if ( $this->displayPo ) { - $this->ValPO = $this->paramValue($rule['value']); - } - - } else { - - $this->RuleLabel = $rule['name']; - $this->displayPo = intval($rule['po']); - - $this->ValFEU = $this->paramValue($rule['value']); - - if ($this->debug) file_put_contents('sfr.log', "VALIDATION : ValFEU = ".$this->ValFEU."\n", FILE_APPEND); - - $this->ValComment = $rule['comment']; - - } - break; - } - - } - } - - /** - * Traitement des conditions - * - Si la condition est FAUSSE - * => arrêt pour passer à la règle suivante - * - Si la condition est VRAI - * => passage à la condition suivante - * @param array $conditions - * - var : Nom de la variable - * - type : Type du test de la condition - * - value : Valeur à tester - * - define : "var" à définir avec la "value" - * @return boolean - */ - protected function params($conditions = array(), $all = false) - { - $test = false; - - if ( count($conditions) > 0 ) { - foreach ( $conditions as $c ) { - - $test = $this->paramEval($c['var'], $c['type'], $c['value']); - - if ($this->debug) file_put_contents('sfr.log', "PARAM - RETURN = ".$test."\n", FILE_APPEND); - - if ( null === $test ) { - // Oops ! Problem ! - } - // Stopper - elseif ( $test === false && $all === false ) { - break; - // Continuer ou Stopper sur element define - } elseif ( $test === true ) { - if ( array_key_exists('define', $c) ) { - $this->paramDefine($c['define']['var'], $c['define']['value']); - } - if ($all === true) { - break; - } - } - - } - } - - return $test; - } - - /** - * Transformation des variables - * @param string $val - * @return number|mixed|NULL - */ - protected function paramValue($val) - { - if ( is_numeric($val) ) { - return (float) $val; - } - - if ( is_string($val) && defined('self::'.$val) ) { - return constant('self::'.$val); - } - - if ( is_string($val) && is_array($this->{$val}) ) { - return $this->{$val}; - } - - return null; - } - - /** - * Evaluation de la condition - * @param string $var - * @param string $type - * @param string $value - * @return boolean|NULL - */ - protected function paramEval($var, $type, $value) - { - $valueReal = $this->paramValue($value); - - if ($this->debug) file_put_contents('sfr.log', "PARAM - ".$var." ".$type." ".$value." = ".$this->{'Val'.$var}."\n", FILE_APPEND); - - switch ($type) { - case 'MIN': - if ( $this->{'Val'.$var}!==null && $this->{'Val'.$var} > $valueReal ) { - return true; - } - return false; - break; - - case 'MAX': - if ( $this->{'Val'.$var}!==null && $this->{'Val'.$var} < $valueReal ) { - return true; - } - return false; - break; - - case 'EGAL': - if ( $this->{'Val'.$var} == $valueReal ) { - return true; - } - return false; - break; - - case 'LIST': - if ( $valueReal !== null && in_array($this->{'Val'.$var}, $valueReal) ) { - return true; - } - return false; - break; - } - - return null; - } - - protected function _Indicateur($value) - { - switch($value) - { - case self::VERT: - return 'VERT'; - break; - case self::ROUGE: - return 'ROUGE'; - break; - case self::ORANGE: - return 'ORANGE'; - break; - } - } - - public function getIndicateur() - { - return $this->_Indicateur($this->ValFEU); - } - - public function getPo() - { - return $this->ValPO; - } - - /** - * - * @param string $name - * @param string $val - */ - protected function paramDefine($name, $val) - { - $value = null; - - if ( is_numeric($val) ) { - $value = (int) $val; - } - - if ( is_string($val) && defined('self::'.$val) ) { - $value = constant('self::'.$val); - } - - if ($this->debug) file_put_contents('sfr.log', "SET VAR - Val".$name." = ".$value."\n", FILE_APPEND); - - $this->{'Val'.$name} = $value; - } - - /** - * - */ - public function getComment() - { - return $this->ValComment; - } - - public function getDateCalculIndiscore() - { - return $this->ValDateCalculIndiscore; - } - - public function getValDebug() - { - return array( - 'ValIsCAC' => $this->ValIsCAC, - 'ValTypeEntrep' => $this->ValTypeEntrep, - 'ValIsAdmin' => $this->ValIsAdmin, - 'ValIsEtranger' => $this->ValIsEtranger, - 'ValEffectif' => $this->ValEffectif, - 'ValNAF' => $this->ValNAF, - 'ValFJ' => $this->ValFJ, - 'ValRJ' => $this->ValRJ, - 'ValLJ' => $this->ValLJ, - 'ValSV' => $this->ValSV, - 'ValIR' => $this->ValIR, - 'ValIndiscore' => $this->ValIndiscore, - 'ValInseeActif' => $this->ValInseeActif, - 'ValInseeAge' => $this->ValInseeAge, - 'ValEntrepRecente' => $this->ValEntrepRecente, - 'ValContratAge' => $this->ValContratAge, - 'ValDateCalculIndiscore' => $this->ValDateCalculIndiscore, - 'Rule' => $this->RuleLabel, - ); - } - - public function setVal($name, $value) - { - if ( in_array($name, array( - 'TypeEntrep', - 'NAF', - 'FJ', - 'InseeAge', - 'DateCalculIndiscore', - 'DateCrea', - 'DateImmat', - 'DateUpdate')) && empty($value) ) { - $this->{'Val'.$name} = self::UNDEFINE; - } else { - $this->{'Val'.$name} = $value; - } - } - - /** - * - */ - protected function setTabs() - { - if ( $this->compile ) { - - } else { - return $this->loadTabsFromDb(); - } - } - - /** - * - */ - protected function loadTabsFromDb(){} - - /** - * - */ - protected function setRules() - { - if ( $this->compile ) { - $this->RulesVORp = include_once 'Metier/Sfr/RulesVORp-'.$this->version.'.php'; - $this->RulesVORd = include_once 'Metier/Sfr/RulesVORd-'.$this->version.'.php'; - } else { - $this->RulesVORp = $this->loadRulesFromDb('VORp'); - $this->RulesVORd = $this->loadRulesFromDb('VORd'); - } - } - - protected function loadRulesFromDb($type = null) - { - - - } - - - protected function setCompile($compile = true) - { - $this->compile = $compile; - } - - /** - * Define static file and version - * @param string $version - */ - protected function setVersion($version = null) - { - if ( null !== $version ) { - $this->version = $version; - } - } - -} \ No newline at end of file diff --git a/library/Metier/bodacc/Cache/Devises.php b/library/Metier/bodacc/Cache/Devises.php deleted file mode 100644 index 8b345ebf..00000000 --- a/library/Metier/bodacc/Cache/Devises.php +++ /dev/null @@ -1,273 +0,0 @@ - "USD", - "DOLLAR" => "USD", - "DOLLARS" => "USD", - "DOLLARS US" => "USD", - "DOLLAR DES ETATS-UNIS" => "USD", - "DOLLARS CANADIENS" => "CAD", - "BRR" => "BRR", - "BRL" => "BRL", - "EURO" => "EUR", - "RÉIS" => "BRL", - "F" => "FRF", - "FRANCS CFA" => "CFA", - "CNY" => "CNY", - "YUAN" => "CNY", - "YUAN REN MIN BI" => "CNY", - "COURONNES TCHÈQUES (RÉPUBLIQUE TCHÈQUE" => "CZK", - "ARIARYS" => "MGA", - "KMF" => "KMF", - "MGA ARIARY" => "MGA", - "MUR" => "MUR", - "ROUPIES MAURICIENNES" => "MUR", - "MURS" => "MUR", - "ROL" => "ROL", - "RON" => "RON", - "FS" => "CHF", - "CHF" => "CHF", - "FRANC SUISSE" => "CHF", - "FRANCS SUISSES" => "CHF", - "YENS" => "JPY", - "DKK" => "DKK", - "COURONNES DANOISES" => "DKK", - "COURONNES NORVÉGIENNES" => "NOK", - "GBP" => "GBP", - "LIVRE STERLING" => "GBP", - "LIVRES STERLING" => "GBP", - "LIVRES STERLINGS" => "GBP", - "ROUBLES BIÉLORUSSES" => "RUB", - "ROUBLES" => "RUB", - "DOLLARS TAIWAN" => "TWD", - "HKD" => "HKD", - "DIRHAMS" => "MAD", - "DINARS TUNISIENS" => "TND", - "FCFA" => "CFA", - "FRANCS BELGES" => "BEF", - "ROUPIE INDIENNE" => "INR", - "DOLLARS HONG KONG" => "HKD", - "RIALS IRANIENS" => "IRR", - "DOLLARS HONG-KONG" => "HKD", - "ECU" => "EUR", - "YUANS" => "CNY", - "DM" => "DEM", - "LEI" => "RON", - "TND" => "TND", - "WON" => "KRW", - "DINAR TUNISIEN" => "TND", - "WONS" => "KRW", - "DIRHAMS MAROCAINS" => "MAD", - "FB" => "BEF", - "CRUZEIROS" => "BRL", - "REALS" => "BRL", - "COURONNES ISLANDAISES" => "ISK", - "DOLLARS AUSTRALIENS" => "AUD", - "DINARS" => "TND", - "RIYAL SAOUDIEN" => "SAR", - "LIVRES SYRIENNES" => "SYP", - "YEN" => "JPY", - "COURONNES SUÉDOISES" => "SEK", - "LIVRES TURQUES" => "TRY", - "SHEKELS" => "ILS", - "FRANC BELGE" => "BEF", - "DOLLAR HONG KONG" => "HKD", - "DOLLARS SINGAPOUR" => "SGD", - "ZLOTY" => "PLN", - "LEVS" => "BGN", - "OUGUIYA" => "MRO", - "ROUPIES INDIENNES" => "INR", - "RIEL" => "KHR", - "COURONNES DANNOISES" => "DKK", - "INR" => "INR", - "ROUPIES DES SEYCHELLES" => "SCR", - "$ CANADIENS" => "CAD", - "LIVRE STERLI" => "GBP", - "NOK" => "NOK", - "LIVRES LIBANAISES" => "LBP", - "RUR" => "RUB", - "USD" => "USD", - "CHS" => "CHE", - "SKK" => "SKK", - "DINAR TUNISI" => "TND", - "PESOS COLOMBIENS" => "COP", - "JIAS" => "CNY", - "DINARS ALGÉRIENS" => "DZD", - "RIELS" => "KHR", - "CLP" => "CLP", - "DINAR ALGÉRIEN" => "DZD", - "RANDS" => "ZAR", - "LEU" => "RON", - "LIVRES CYPRIOTES" => "CYP", - "MAD" => "MAD", - "JPY" => "JPY", - "PNL" => "PLN", - "DOLLARS NÉO-ZÉLANDAIS" => "NZD", - "DOLLAR US" => "USD", - "CYP" => "CYP", - "DIRHAM" => "MAD", - "ZRN" => "ZRN", - "RIYALS SAOUDIENS" => "SAR", - "ZLOTYS" => "PLN", - "FRANCS MALGACHE" => "MGF", - "BAHTS" => "THB", - "SHILLINGS KENYANS" => "KES", - "FRANC COMORIEN" => "KMF", - "KRW" => "KRW", - "$ HONG-KONG" => "HKD", - "COURONNES TCHÈQUES" => "CZK", - "FRANCS CFA-BE" => "XAF", - "DIRHAMS DES E A U" => "AED", - "DOLLAR AUSTRALIEN" => "AUD", - "F, SOIT" => "FRF", - "F SOIT" => "FRF", - "FRANC FRANÇAIS" => "FRF", - "FRANCS GUINÉENS" => "GNF", - "$ US" => "USD", - "REAL" => "BRL", - "LBP" => "LBP", - "TRL" => "TRY", - "RIYAL YÉMÉNITES" => "YER", - "ARIARY" => "MGA", - "PESOS PHILIPPINS" => "PHP", - "KRD" => "DKK", - "WONS CORÉE DU SUD" => "KRW", - "DOLLAR HONG-KONG" => "HKD", - "BAHT" => "THB", - "PESOS CUBAINS" => "CUC", - "DÔNGS" => "VND", - "DINARS JORDANIENS" => "JOD", - "LIVRES ÉGYPTIENNES" => "EGP", - "MALTAISES" => "MTL", - "NOUVEAUX DOLLARS TAÏWAN" => "TWD", - "$ TAIWA" => "TWD", - "F CFA" => "XAF", - "SGD" => "SGD", - "$ SINGAPOUR" => "SGD", - "YUANS RENMINBI" => "CNY", - "DIRHAMS DES EMIRATS ARABES UNIS" => "AED", - "LIVRE TURQUE" => "TRY", - "ERUOS" => "EUR", - "DOLLARS DES ETATS-UNIS" => "USD", - "SCHILLING" => "ATS", - "BIRRS" => "ETB", - "DOLLAR CANADIEN" => "CAD", - "LIVRES CYPRIOBES" => "CYP", - "EUROS (PLANCHER ET" => "EUR", - "FRANCS MALGACHES" => "MGF", - "LEVA" => "BGN", - "DINARDS JORDANIENS" => "JOD", - "PES" => "PHP", - "PESETAS" => "ESP", - "DINARDS" => "DZD", - "NOUVEAUX DOLLARS TAÏWANAIS" => "TWD", - "FRANC" => "FRF", - "COURONNE DANOISE" => "DKK", - "F SUISSES" => "CHF", - "F (SOIT" => "FRF", - "EUROS, COMPRENANT LA CLIENTÈLE ET L'ACHA" => "EUR", - "EUROS, EN CE COMPRIS UN FONDS SIS RÉSIDE" => "EUR", - "F SYMBOLIQUE" => "FRF", - "RIALS" => "IRR", - "EUROS, À L'EXCLUSION DU DROIT AU BAIL DE" => "EUR", - "DH" => "MAD", - "EUROS, CRÉATION L'AUTRE BRANCHE ACTIVITÉ" => "EUR", - "LEI ROUMAIN" => "RON", - "HGK" => "HKD", - "EUROS, ÉTANT PRÉCISÉ QUE LE CÉDANT A CON" => "EUR", - "DZD" => "DZD", - "DON" => "VND", - "EUROS, EN CE COMPRIS LA BRANCHE ACTIVITÉ" => "EUR", - "LEV" => "RON", - "EUROS, AVEC UN DEUXIÈME FONDS SIS À CHEF" => "EUR", - "DÉCEMBRE" => "EUR", - "CEDIS" => "GHS", - "EUROS ; EN CE COMPRIS L'ÉTABLISSEMENT CO" => "EUR", - "EUROS, À L'EXCEPTION LA BOUCHERIE" => "EUR", - "Y" => "JPY", - "EUROS DES ÉLÉMENTS LA BRANCHE ACTIVITÉ >" => "EUR", - "ROUTE BISCHWILLER À SCHILTIGHEIM" => "EUR", - "AVENUE COLMAR, STRASBOURG" => "EUR", - "$ CAN" => "CAD", - "EUUROS" => "EUR", - "EUROS, À L'EXCLUSION L'ACTIVITÉ FABRICAT" => "EUR", - "BRC" => "BRL", - "EUROS ET CRÉATION LA BRANCHE ACTIVITÉ SN" => "EUR", - "EUROS ET CRÉATION LA BRANCHE ACTIVITÉ GL" => "EUR", - "EUROS, ET CRÉATION LA BRANCHE ACTIVITÉ I" => "EUR", - "EGP" => "EGP", - "COURONNE SUE" => "SEK", - "LIVRES" => "GBP", - "EUROS, À L'EXCLUSION LA BRANCHE VENTE AU" => "EUR", - "SOLS" => "PEN", - "EUROS, SOIT LA BRANCHE ACTIVITÉ GROS UV" => "EUR", - "BATHS" => "THB", - "MRO" => "MRO", - "EUROS, À L'EXCLUSION TOUS LES ÉLÉMENTS L" => "EUR", - "PESOS" => "ARS", - "YANS" => "CNY", - "MGF" => "MGF", - "EUROS, CONJOINTEMENT AVEC MME CHERUBINI" => "EUR", - "EUROS, CONSTITUANT UNE BRANCHE COMPLÈTE" => "EUR", - "EUROS, À L'EXCLUSION LA BRANCHE ACTIVITÉ" => "EUR", - "FRANCS SUISSE" => "CHF", - "FL" => "LUF", - "DOLLARS DES CARAÏBES" => "DOP", - "DOLLARS HO" => "HKD", - "EUROS, RÉSULTANT UN PROJET APPORT AUX TE" => "EUR", - "HU" => "HUF", - "EUROS, INCLUANT LES BRANCHES DES FONDS C" => "EUR", - "EUROS, À L'EXCEPTION LA BRANCHE ACTIVITÉ" => "EUR", - "EUROS. ACQUISITION ET ADJONCTION DES NOM" => "EUR", - "BHD" => "TND", - "EUOS" => "EUR", - "TWD" => "TWD", - "RL" => "IRR", - "FRANCS" => "FRF", - "FRF" => "FRF", - "EUROS ; CRÉATION LA BRANCHE ACTIVITÉ VEN" => "EUR", - "EUROS ET CRÉATION LA BRANCHE ACTIVITÉ CA" => "EUR", - "FRANCS FRANCAIS" => "FRF", - "EOROS" => "EUR", - "UROS" => "EUR", - "EUROS - LES OPPOSITIONS SERONT RECUES CH" => "EUR", - "EUROS - JOURNAL PUBLICATEUR : PETITES AF" => "EUR", - "EUROS, SAUF POUR LA BRANCHE JEUX GRATTAG" => "EUR", - "EU" => "EUR", - "EUROS - JOURNAL : LES PETITES AFFICHES D" => "EUR", - "EUROS - JOURNAL ANNONCES LÉGALES : LES A" => "EUR", - "EUORS" => "EUR", - "FRANCS FRANÇAIS. RADIATION PERSONNE PHYS" => "FRF", - "EUROS - JOURNAL PUBLICITE : LES AFFICHES" => "EUR", - "EUROS - JOURNAL PUBLICATEUR LES PETITES" => "EUR", - "EUROS, ANNONCE PARU DANS LES PETITES AFF" => "EUR", - "EUROSO - JOURNAL ANNONCES LES PETITES AF" => "EUR", - "EUROS. LE RECTIFICATIF PORTE SUR LE LIEU" => "EUR", - "EUROS. L'ENTRÉE EN JOUISSANCE EST FIXÉE" => "EUR", - "EUROS. LES OPPOSITIONS SERONT REÇUES POU" => "EUR", - "EUROS ; ACQUIS PAR APPORT PARTIEL ACTIF" => "EUR", - "EUROS JOURNAL ANNONCES LEGALES LES PETIT" => "EUR", - " LIVRES STERLING - PASSIF TRANSMIS :" => "GBP", - "EUROS, PARUTION DANS LES PETITES AFFICHE" => "EUR", - "EUROS - JOURNAL ANNONCES LEGALES LES PET" => "EUR", - "EUROS; LES OPPOSITIONS SERONT REÇU AU SI" => "EUR", - "EUROS - JOURNAL ANNONCES LÉGALES : LES P" => "EUR", - "FRF;F" => "FRF", - "EUROS - PUBLICATION : LES AFFICHES PARIS" => "EUR", - " " => "EUR", - "E" => "EUR", - "EUR (ACQUISITION UNE BRANCHE ACTIVI TÉ)" => "EUR", - "EUROS. VENDEUR : SARL LE TAILLEUR CHEMIS" => "EUR", - "EUROS, PRECEDENT PROPRIÉTAIRE ETURICHEPA" => "EUR", - "£, PASSIF TRANSMIS" => "GBP", - "EUROS LES OPPOSITIONS SERONT REÇUES CHEZ" => "EUR", - "EUROS. ACTIVITÉ : BRANCHE ACTIVITÉ TRANS" => "EUR", - "EUROS ; ACHAT LA CLIENTèLE RELATIVE à L'" => "EUR", - "'" => "EUR", - "EUROS. PUBLICATION : LES PETITES AFFICHE" => "EUR", - "EUROS MADAME BUTON FRANCOIS RCS LA ROCHE" => "EUR", - "EUROS (BRANCHE ACTIVITé)" => "EUR", - "EUROS, LA SOCIéTé GF BATIMENTS A CéDé à" => "EUR", - "USD (SOIT" => "USD", - "EUROS (ACQUISITION UNE BRANCHE ACTIVITé" => "EUR", - "EUROS CONCERNANT L'ACQUISITION UNE BRANC" => "EUR", -); diff --git a/library/Metier/bodacc/Cache/Evenements.php b/library/Metier/bodacc/Cache/Evenements.php deleted file mode 100644 index 1a74a291..00000000 --- a/library/Metier/bodacc/Cache/Evenements.php +++ /dev/null @@ -1,2432 +0,0 @@ - array( - 'libEven' => "Vente aux enchères suite à saisie", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 18, - 'LienEtab' => 0, - ), - '1010' => array( - 'libEven' => "Déclaration de cessation de paiement", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 16, - 'LienEtab' => 0, - ), - '1050' => array( - 'libEven' => "Homologation de la conciliation", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 16, - 'LienEtab' => 0, - ), - '1055' => array( - 'libEven' => "Résolution de la conciliation", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 16, - 'LienEtab' => 0, - ), - '1100' => array( - 'libEven' => "Ouverture sauvegarde", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1101' => array( - 'libEven' => "Jugement arrêtant plan de sauvegarde", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1102' => array( - 'libEven' => "Réforme de Redressement Judiciaire en Sauvegarde", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 18, - 'LienEtab' => 0, - ), - '1110' => array( - 'libEven' => "Ouverture Sauvegarde Financière Accélérée", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 18, - 'LienEtab' => 0, - ), - '1119' => array( - 'libEven' => "Clôture de sauvegarde financière accélérée", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 18, - 'LienEtab' => 0, - ), - '1200' => array( - 'libEven' => "Redressement Judiciaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1201' => array( - 'libEven' => "Conversion sauvegarde en Redressement Judiciaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1202' => array( - 'libEven' => "Renouvellement de la période d'observation", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1203' => array( - 'libEven' => "Avis de dépôt de l'état de collocation", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1204' => array( - 'libEven' => "Avis de dépôt de l'état des créances", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1205' => array( - 'libEven' => "Avis de dépôt de l'état des créances complémentaires nées après jugement d'ouverture", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1206' => array( - 'libEven' => "Avis de dépôt de l'état des créances nées après jugement d'ouverture", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1207' => array( - 'libEven' => "Règlements amiables", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1208' => array( - 'libEven' => "Avis de dépôt du projet de répartition", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1209' => array( - 'libEven' => "Règlement judiciaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1210' => array( - 'libEven' => "Production de titres et créances", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1211' => array( - 'libEven' => "Redressement Judiciaire par extension au(x) gérant(s)", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1212' => array( - 'libEven' => "Réforme de Liquidation Judiciaire en Redressement Judiciaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1214' => array( - 'libEven' => "Avis de dépôt de l'état des créances (Loi de 1985)", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 13, - 'LienEtab' => 0, - ), - '1215' => array( - 'libEven' => "Jugement de désignation des organes de la procédure", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 15, - 'LienEtab' => 0, - ), - '1216' => array( - 'libEven' => "Autre avis de dépôt", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 16, - 'LienEtab' => 0, - ), - '1300' => array( - 'libEven' => "Conversion Redressement Judiciaire en Liquidation Judiciaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1301' => array( - 'libEven' => "Ouverture Liquidation Judiciaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1302' => array( - 'libEven' => "Ouverture Liquidation Judiciaire Simplifiée", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1303' => array( - 'libEven' => "Ouverture Liquidation Judiciaire sur résolution du plan", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1304' => array( - 'libEven' => "Réouverture Liquidation Judiciaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1305' => array( - 'libEven' => "Liquidation Judiciaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1306' => array( - 'libEven' => "Liquidation Judiciaire simplifiée", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1307' => array( - 'libEven' => "Conversion sauvegarde en Liquidation Judiciaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1308' => array( - 'libEven' => "Fin du régime de Liquidation Judiciaire Simplifiée", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1309' => array( - 'libEven' => "Conversion Liquidation Judiciaire en Liquidation Judiciaire Simplifiée", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1310' => array( - 'libEven' => "Procédure d'insolvabilité européenne", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1311' => array( - 'libEven' => "Liquidation Judiciaire par extension au(x) gérant(s)", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1312' => array( - 'libEven' => "Liquidation Judiciaire avec continuation d'exploitation", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1313' => array( - 'libEven' => "Liquidation Judiciaire sans remise des accessoires", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1346' => array( - 'libEven' => "Procédure d'insolvabilité (Règlement 1346/2000 du Conseil Européen)", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 17, - 'LienEtab' => 0, - ), - '1400' => array( - 'libEven' => "Nomination d'un administrateur judiciaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1401' => array( - 'libEven' => "Nomination d'un mandataire judiciaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1402' => array( - 'libEven' => "Nomination d'un représentant des créanciers", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1403' => array( - 'libEven' => "Nominnation/Remplacement de commissaire à l'exécution du plan", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1404' => array( - 'libEven' => "Prolongement de la mission du commissaire à l'exécution du plan", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1405' => array( - 'libEven' => "Nomination d'un juge commissaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1406' => array( - 'libEven' => "Changement de SYNDIC", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1407' => array( - 'libEven' => "Modification de plan", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1408' => array( - 'libEven' => "Modification du plan de cession", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1409' => array( - 'libEven' => "Modification du plan de continuation", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1410' => array( - 'libEven' => "Suite de jugement/règlement/liquidation", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1411' => array( - 'libEven' => "Arrêt du plan de cession", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1412' => array( - 'libEven' => "Arrêt du plan de cession partielle", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1413' => array( - 'libEven' => "Arrêt du plan de continuation", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1414' => array( - 'libEven' => "Arrêt du plan de redressement", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1415' => array( - 'libEven' => "Prolongement du plan cession", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1416' => array( - 'libEven' => "Jugement constatant la bonne exécution du plan", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1417' => array( - 'libEven' => "Jugement d'extension de liquidation judiciaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 14, - 'LienEtab' => 0, - ), - '1418' => array( - 'libEven' => "Jugement d'extension d'une procédure de redressement judiciaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 14, - 'LienEtab' => 0, - ), - '1419' => array( - 'libEven' => "Jugement d'extension d'une procédure de sauvegarde", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 15, - 'LienEtab' => 0, - ), - '1420' => array( - 'libEven' => "Nomination d'un liquidateur judiciaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 17, - 'LienEtab' => 0, - ), - '1421' => array( - 'libEven' => "Jugement prorogeant le plan de redressement", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 17, - 'LienEtab' => 0, - ), - '1423' => array( - 'libEven' => "Entreprise / Fond de commerce en faillite à céder", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 17, - 'LienEtab' => 0, - ), - '1425' => array( - 'libEven' => "Plan de cession avec location gérance", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 17, - 'LienEtab' => 0, - ), - '1430' => array( - 'libEven' => "Jugement autorisant la poursuite d'activité", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 16, - 'LienEtab' => 0, - ), - '1431' => array( - 'libEven' => "Jugement de cessation partielle d'activité", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 16, - 'LienEtab' => 0, - ), - '1435' => array( - 'libEven' => "Suspension de l'exécution provisoire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 16, - 'LienEtab' => 0, - ), - '1436' => array( - 'libEven' => "Suspension provisoire des poursuites", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 16, - 'LienEtab' => 0, - ), - '1440' => array( - 'libEven' => "Jugement accordant un délai pour déposer la liste des créances", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 13, - 'LienEtab' => 0, - ), - '1445' => array( - 'libEven' => "Concordat", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 17, - 'LienEtab' => 0, - ), - '1450' => array( - 'libEven' => "Jugement modifiant la date de cessation des paiements", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 13, - 'LienEtab' => 0, - ), - '1455' => array( - 'libEven' => "Jugement arrêtant le plan d'apurement du passif", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 17, - 'LienEtab' => 0, - ), - '1460' => array( - 'libEven' => "Homologation du plan", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 17, - 'LienEtab' => 0, - ), - '1470' => array( - 'libEven' => "Fin de mission d'administrateur judiciaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 17, - 'LienEtab' => 0, - ), - '1472' => array( - 'libEven' => "Fin de mission du commissaire à l'exécution du plan", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 17, - 'LienEtab' => 0, - ), - '1475' => array( - 'libEven' => "Modification de la mission d'un intervenant", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 18, - 'LienEtab' => 0, - ), - '1480' => array( - 'libEven' => "Jugement ordonnant la jonction des procédures", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 17, - 'LienEtab' => 0, - ), - '1490' => array( - 'libEven' => "Confusion des patrimoines de sociétés", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 18, - 'LienEtab' => 0, - ), - '1500' => array( - 'libEven' => "Clôture de la procédure", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1501' => array( - 'libEven' => "Clôture de la procédure après cession totale", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1502' => array( - 'libEven' => "Clôture de la procédure pour extinction du passif", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1503' => array( - 'libEven' => "Clôture de la procédure pour insuffisance d'actif", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1504' => array( - 'libEven' => "Clôture sauvegarde pour absence de projet de plan", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1505' => array( - 'libEven' => "Appel de jugement", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1506' => array( - 'libEven' => "Infirmation Jugement", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1507' => array( - 'libEven' => "Extrait d'arrêt de la cour d'appel", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1508' => array( - 'libEven' => "Extinction du plan de sauvegarde", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1509' => array( - 'libEven' => "Extinction du plan de redressement", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1510' => array( - 'libEven' => "Rejet du plan", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1511' => array( - 'libEven' => "Résolution du plan de cession", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 13, - 'LienEtab' => 0, - ), - '1512' => array( - 'libEven' => "Résolution du plan de continuation", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 13, - 'LienEtab' => 0, - ), - '1513' => array( - 'libEven' => "Résolution du plan de sauvegarde", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 13, - 'LienEtab' => 0, - ), - '1515' => array( - 'libEven' => "Arrêt divers", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 16, - 'LienEtab' => 0, - ), - '1517' => array( - 'libEven' => "Rectification d'une erreur matérielle", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 17, - 'LienEtab' => 0, - ), - '1518' => array( - 'libEven' => "Infirmation Interdiction de gérer/Faillite Personnelle", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 18, - 'LienEtab' => 0, - ), - '1519' => array( - 'libEven' => "Infirmation de jugement d'extension de liquidation judiciaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 18, - 'LienEtab' => 0, - ), - '1520' => array( - 'libEven' => "Ordonnance", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 17, - 'LienEtab' => 0, - ), - '1521' => array( - 'libEven' => "Délocalisation de la procédure vers un autre Tribunal", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 18, - 'LienEtab' => 0, - ), - '1525' => array( - 'libEven' => "Appel du ministère public", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 17, - 'LienEtab' => 0, - ), - '1530' => array( - 'libEven' => "Jugement constatant l'impécuniosité de la procédure de liquidation", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 17, - 'LienEtab' => 0, - ), - '1535' => array( - 'libEven' => "Jugement modifiant le délai imparti pour la clôture des opérations de liquidation", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 18, - 'LienEtab' => 0, - ), - '1540' => array( - 'libEven' => "Ordonnance statuant sur les contestations du projet de répartition", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 13, - 'LienEtab' => 0, - ), - '1541' => array( - 'libEven' => "Rétractation de prononcé de liquidation judiciaire sur tierce opposition", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 14, - 'LienEtab' => 0, - ), - '1542' => array( - 'libEven' => "Rétractation de jugement d'ouverture d'une procédure de sauvegarde sur tierce opposition", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 15, - 'LienEtab' => 0, - ), - '1543' => array( - 'libEven' => "Rétractation de jugement d'ouverture d'une procédure de redressement judiciaire sur tierce opposition", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 15, - 'LienEtab' => 0, - ), - '1544' => array( - 'libEven' => "Rétractation de jugement d'ouverture d'une procédure de liquidation judiciaire sur tierce opposition", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 15, - 'LienEtab' => 0, - ), - '1545' => array( - 'libEven' => "Rétractation de jugement d'ouverture sur tierce opposition", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 16, - 'LienEtab' => 0, - ), - '1546' => array( - 'libEven' => "Autre rétractation sur tierce opposition", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 16, - 'LienEtab' => 0, - ), - '1550' => array( - 'libEven' => "Jugement d'homologation de l'accord", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 13, - 'LienEtab' => 0, - ), - '1580' => array( - 'libEven' => "Jugement prononçant la continuation de l'activité par apurement du passif", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 17, - 'LienEtab' => 0, - ), - '1600' => array( - 'libEven' => "Faillite personnelle", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1601' => array( - 'libEven' => "Interdiction de gérer", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1602' => array( - 'libEven' => "Jugement de réhabilitation", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1603' => array( - 'libEven' => "Liquidation de biens", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1604' => array( - 'libEven' => "Banqueroute", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1605' => array( - 'libEven' => "Jugement autorisant la reprise des poursuites individuelles", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 13, - 'LienEtab' => 0, - ), - '1610' => array( - 'libEven' => "Faillite personnelle (Loi de 1985)", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 13, - 'LienEtab' => 0, - ), - '1611' => array( - 'libEven' => "Interdiction de gérer (Loi de 1985)", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 13, - 'LienEtab' => 0, - ), - '1620' => array( - 'libEven' => "Jugement condamnant le dirigeant en comblement du passif", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 17, - 'LienEtab' => 0, - ), - '1650' => array( - 'libEven' => "Rétablissement Personnel", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1700' => array( - 'libEven' => "Décision soumise à publicité", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 16, - 'LienEtab' => 0, - ), - '1900' => array( - 'libEven' => "Interdiction temporaire d'exercice de la profession de CAC", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1901' => array( - 'libEven' => "Radiation de la liste des CAC", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 12, - 'LienEtab' => 0, - ), - '1999' => array( - 'libEven' => "Autre procédure collective", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "procol", - 'Version' => 14, - 'LienEtab' => 0, - ), - '2000' => array( - 'libEven' => "Mention d'office", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2100' => array( - 'libEven' => "Diminution de capital", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2101' => array( - 'libEven' => "Modification de capital", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2102' => array( - 'libEven' => "Augmentation de capital", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2200' => array( - 'libEven' => "Cessation d'activité", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2201' => array( - 'libEven' => "Cessation d'activité temporaire", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2202' => array( - 'libEven' => "Dissolution", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2203' => array( - 'libEven' => "Dissolution de la société", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2204' => array( - 'libEven' => "Cessation d'activité avec dissolution", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2205' => array( - 'libEven' => "Fermeture du fonds", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2206' => array( - 'libEven' => "Mise en sommeil de la société", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2207' => array( - 'libEven' => "Suppression d'une branche d'activité", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2208' => array( - 'libEven' => "Suppression de l'établissement principal", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2209' => array( - 'libEven' => "Vente du fonds", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2210' => array( - 'libEven' => "Déclaration de dissolution par l'associé unique.", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 15, - 'LienEtab' => 0, - ), - '2211' => array( - 'libEven' => "Clôture de la liquidation", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "radiations", - 'Version' => 16, - 'LienEtab' => 0, - ), - '2212' => array( - 'libEven' => "Liquidation amiable", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 16, - 'LienEtab' => 0, - ), - '2300' => array( - 'libEven' => "Changement d'adresse", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2301' => array( - 'libEven' => "Modification de l'adresse du siège", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2302' => array( - 'libEven' => "Modification de l'enseigne", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2303' => array( - 'libEven' => "Modification de la date de clôture de l'exercice", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2304' => array( - 'libEven' => "Modification de la date de début d'activité", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2305' => array( - 'libEven' => "Modification de la dénomination", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2306' => array( - 'libEven' => "Modification de la durée de la société", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2307' => array( - 'libEven' => "Modification de la forme juridique", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2308' => array( - 'libEven' => "Modification du nom", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2309' => array( - 'libEven' => "Modification du nom commercial", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2310' => array( - 'libEven' => "Modification du pseudonyme", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2311' => array( - 'libEven' => "Modification sur l'exploitation", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2312' => array( - 'libEven' => "Modification(s) diverse(s)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2313' => array( - 'libEven' => "Modification de l'activité", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2314' => array( - 'libEven' => "Poursuite de l'activité", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2315' => array( - 'libEven' => "Modification de l'administration", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2316' => array( - 'libEven' => "Mise en activité de la société", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2317' => array( - 'libEven' => "Modification du sigle", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2318' => array( - 'libEven' => "Modifications diverses", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2319' => array( - 'libEven' => "Poursuite de l'activité malgré la perte de plus de la moitié du capital social", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 16, - 'LienEtab' => 0, - ), - '2320' => array( - 'libEven' => "Reconsitution de l'actif net", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 17, - 'LienEtab' => 0, - ), - '2321' => array( - 'libEven' => "Reconsitution de la moitié de l'actif net", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 17, - 'LienEtab' => 0, - ), - '2350' => array( - 'libEven' => "Déclaration des associés (loi du 1er février 2005)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2401' => array( - 'libEven' => "Changement de régime matrimonial", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2402' => array( - 'libEven' => "Changement de régime matrimonial (divorce)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2403' => array( - 'libEven' => "Changement de régime matrimonial (mariage)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2404' => array( - 'libEven' => "Changement de régime matrimonial (veuvage)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2405' => array( - 'libEven' => "Changement de régime matrimonial (contrat de mariage)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2406' => array( - 'libEven' => "Reprise du fonds par le conjoint", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2407' => array( - 'libEven' => "Mention du conjoint collaborateur", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2408' => array( - 'libEven' => "Radiation du conjoint collaborateur", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2500' => array( - 'libEven' => "Confirmation établissement principal ou secondaire", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2510' => array( - 'libEven' => "L'établissement secondaire devient principal", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2520' => array( - 'libEven' => "Extension de l'établissement principal", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2600' => array( - 'libEven' => "Décès", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2610' => array( - 'libEven' => "Décision de l'unique actionnaire", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2620' => array( - 'libEven' => "Transmission universelle du patrimoine", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2630' => array( - 'libEven' => "Donation/Partage", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2635' => array( - 'libEven' => "Cession de parts", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 16, - 'LienEtab' => 0, - ), - '2639' => array( - 'libEven' => "Nantissement de parts sociales", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 17, - 'LienEtab' => 0, - ), - '2640' => array( - 'libEven' => "Changement de domicile personnel", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2650' => array( - 'libEven' => "Changement de nationalité", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2660' => array( - 'libEven' => "Réalisation de l'apport partiel d'actif", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2661' => array( - 'libEven' => "Apport partiel", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 17, - 'LienEtab' => 0, - ), - '2662' => array( - 'libEven' => "Apport partiel d'actif (entitée bénéficiaire)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 18, - 'LienEtab' => 0, - ), - '2663' => array( - 'libEven' => "Apport partiel d'actif (entitée apporteuse)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 18, - 'LienEtab' => 0, - ), - '2665' => array( - 'libEven' => "Projet d'Apport partiel", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 18, - 'LienEtab' => 0, - ), - '2666' => array( - 'libEven' => "Projet d'Apport partiel d'actif (entitée bénéficiaire)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 18, - 'LienEtab' => 0, - ), - '2667' => array( - 'libEven' => "Projet d'Apport partiel d'actif (entitée apporteuse)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 18, - 'LienEtab' => 0, - ), - '2670' => array( - 'libEven' => "Déclaration d'affectation de patrimoine (EIRL)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 18, - 'LienEtab' => 0, - ), - '2671' => array( - 'libEven' => "Modification d'affectation du patrimoine (EIRL)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 18, - 'LienEtab' => 0, - ), - '2700' => array( - 'libEven' => "Fusion/Absorption (entitée absorbante)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2701' => array( - 'libEven' => "Fusion/Absorption (Entitée absorbante. Entité absorbée inconnue)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2702' => array( - 'libEven' => "Fusion/Absorption (Entitée absorbante. Entité absorbée mal SIRENEE)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2703' => array( - 'libEven' => "Fusion/Absorption (Entitée absorbante. Entité absorbée non SIRENEE)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2710' => array( - 'libEven' => "Projet de fusion (entitée absorbante)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2720' => array( - 'libEven' => "Fusion/Absorption (entitée absorbée)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2721' => array( - 'libEven' => "Fusion/Absorption (entitée absorbée non identifiée)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2725' => array( - 'libEven' => "Fusion/Absorption", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 16, - 'LienEtab' => 0, - ), - '2726' => array( - 'libEven' => "Projet de Fusion/Absorption", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 16, - 'LienEtab' => 0, - ), - '2730' => array( - 'libEven' => "Projet de fusion (entitée absorbée)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2740' => array( - 'libEven' => "Scission", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 16, - 'LienEtab' => 0, - ), - '2741' => array( - 'libEven' => "Projet de Scission", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 16, - 'LienEtab' => 0, - ), - '2742' => array( - 'libEven' => "Scission - Entité apporteuse", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 18, - 'LienEtab' => 0, - ), - '2743' => array( - 'libEven' => "Scission - Entité bénéficiaire", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 18, - 'LienEtab' => 0, - ), - '2745' => array( - 'libEven' => "Projet de Scission - Entité apporteuse", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 18, - 'LienEtab' => 0, - ), - '2746' => array( - 'libEven' => "Projet de Scission - Entité bénéficiaire", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 18, - 'LienEtab' => 0, - ), - '2750' => array( - 'libEven' => "Société participation", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '2751' => array( - 'libEven' => "Information sur une participation", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 18, - 'LienEtab' => 0, - ), - '2800' => array( - 'libEven' => "Location gérance reçue", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2840' => array( - 'libEven' => "Location/Gérance", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 16, - 'LienEtab' => 1, - ), - '2850' => array( - 'libEven' => "Location gérance donnée : Précédent propriétaire exploitant", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2851' => array( - 'libEven' => "Location gérance donnée : Précédent propriétaire", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2860' => array( - 'libEven' => "Location gérance donnée : Précédent exploitant", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2870' => array( - 'libEven' => "Location gérance donnée", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 15, - 'LienEtab' => 1, - ), - '2875' => array( - 'libEven' => "Gérance/Mandat", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 16, - 'LienEtab' => 1, - ), - '2880' => array( - 'libEven' => "Renouvellement de location gérance", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2881' => array( - 'libEven' => "Changement de location gérance", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2885' => array( - 'libEven' => "Fin de location gérance", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2890' => array( - 'libEven' => "Location gérance relative à une branche", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2891' => array( - 'libEven' => "Location gérance relative à un établissement", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2892' => array( - 'libEven' => "Location gérance relative à un fond", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2900' => array( - 'libEven' => "Transfert d'établissement", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2901' => array( - 'libEven' => "Transfert de siège", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2902' => array( - 'libEven' => "Transfert du fonds", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2903' => array( - 'libEven' => "Projet de transfert du siège", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2904' => array( - 'libEven' => "Transfert du siège à l'étranger", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2950' => array( - 'libEven' => "Création de fonds", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '2980' => array( - 'libEven' => "Transfert entre tribunaux", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 1, - ), - '3100' => array( - 'libEven' => "Dépôt des comptes annuels et des comptes consolidés", - 'Bodacc_Code' => "BODC", - 'Rubrique' => "comptes", - 'Version' => 12, - 'LienEtab' => 0, - ), - '3200' => array( - 'libEven' => "Dépôt des comptes annuels", - 'Bodacc_Code' => "BODC", - 'Rubrique' => "comptes", - 'Version' => 12, - 'LienEtab' => 0, - ), - '3300' => array( - 'libEven' => "Dépôt des comptes consolidés", - 'Bodacc_Code' => "BODC", - 'Rubrique' => "comptes", - 'Version' => 12, - 'LienEtab' => 0, - ), - '3999' => array( - 'libEven' => "Dépôt des comptes", - 'Bodacc_Code' => "BODC", - 'Rubrique' => "comptes", - 'Version' => 14, - 'LienEtab' => 0, - ), - '4000' => array( - 'libEven' => "Création d'entreprise", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "creations", - 'Version' => 12, - 'LienEtab' => 1, - ), - '4050' => array( - 'libEven' => "Création d'entreprise sans activité", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "creations", - 'Version' => 12, - 'LienEtab' => 1, - ), - '4100' => array( - 'libEven' => "Création d'entreprise sans établissement", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "creations", - 'Version' => 12, - 'LienEtab' => 1, - ), - '4200' => array( - 'libEven' => "Création d'établissement", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "creations", - 'Version' => 12, - 'LienEtab' => 1, - ), - '4250' => array( - 'libEven' => "Création suite à transfert", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "creations", - 'Version' => 15, - 'LienEtab' => 1, - ), - '4300' => array( - 'libEven' => "Création suite à reprise d'activité", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "creations", - 'Version' => 12, - 'LienEtab' => 1, - ), - '4350' => array( - 'libEven' => "Création suite à fin de location-gérance", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "creations", - 'Version' => 12, - 'LienEtab' => 1, - ), - '4355' => array( - 'libEven' => "Création suite à prise en location-gérance", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "creations", - 'Version' => 15, - 'LienEtab' => 1, - ), - '4360' => array( - 'libEven' => "Reprise d'activité par suite de la résolution de vente", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "creations", - 'Version' => 12, - 'LienEtab' => 1, - ), - '4400' => array( - 'libEven' => "Création suite à changement de FJ", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "creations", - 'Version' => 12, - 'LienEtab' => 1, - ), - '4410' => array( - 'libEven' => "Création suite à héritage ou donation", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "creations", - 'Version' => 15, - 'LienEtab' => 1, - ), - '4450' => array( - 'libEven' => "Création suite à reprise par le conjoint", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "creations", - 'Version' => 15, - 'LienEtab' => 1, - ), - '4500' => array( - 'libEven' => "Fonds acquis dans le cadre d'une PC", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "creations", - 'Version' => 12, - 'LienEtab' => 1, - ), - '4501' => array( - 'libEven' => "Fonds acquis par achat", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "creations", - 'Version' => 12, - 'LienEtab' => 1, - ), - '4502' => array( - 'libEven' => "Fonds acquis par apport", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "creations", - 'Version' => 12, - 'LienEtab' => 1, - ), - '4503' => array( - 'libEven' => "Clientèle acquise par achat", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "creations", - 'Version' => 12, - 'LienEtab' => 1, - ), - '4600' => array( - 'libEven' => "Immatriculation d'une société de droit européen", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "creations", - 'Version' => 15, - 'LienEtab' => 1, - ), - '4999' => array( - 'libEven' => "Création", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "creations", - 'Version' => 14, - 'LienEtab' => 1, - ), - '5000' => array( - 'libEven' => "Etablissement principal", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5001' => array( - 'libEven' => "Etablissement secondaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5002' => array( - 'libEven' => "Etablissement complémentaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5003' => array( - 'libEven' => "Etablissement", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5004' => array( - 'libEven' => "Plusieurs établissements", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5100' => array( - 'libEven' => "Fonds principal", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5101' => array( - 'libEven' => "Fonds secondaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5102' => array( - 'libEven' => "Fonds complémentaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5103' => array( - 'libEven' => "Fonds", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5104' => array( - 'libEven' => "Fonds artisanal", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5105' => array( - 'libEven' => "Partie de fonds", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5200' => array( - 'libEven' => "Branche ou Partie d'activité", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5201' => array( - 'libEven' => "Clientèle", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5202' => array( - 'libEven' => "Divers éléments", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5203' => array( - 'libEven' => "Droit au bail", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5204' => array( - 'libEven' => "Eléments incorporels", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5205' => array( - 'libEven' => "Licence de débit de boissons de 4e catégorie", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5206' => array( - 'libEven' => "Portefeuille d'assurances", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5300' => array( - 'libEven' => "Bien dépendant de l'établissement ou du fonds principal", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5301' => array( - 'libEven' => "Bien dépendant de l'établissement ou du fonds secondaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5302' => array( - 'libEven' => "Bien dépendant de l'établissement ou du fonds complémentaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5303' => array( - 'libEven' => "Bien dépendant de l'établissement ou du fonds", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5350' => array( - 'libEven' => "Bien en moitié indivise", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5351' => array( - 'libEven' => "Bien en % indivise", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5400' => array( - 'libEven' => "Bien précédemment exploité en location-gérance", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5450' => array( - 'libEven' => "Bien acheté par le locataire-gérant", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 15, - 'LienEtab' => 1, - ), - '5460' => array( - 'libEven' => "Attribution d'un fonds suite à donation, partage ou licitation", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 15, - 'LienEtab' => 1, - ), - '5500' => array( - 'libEven' => "Entreprise réalisant la vente", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5501' => array( - 'libEven' => "Entreprise réalisant la vente : Ancien propriétaire et ancien exploitant", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5502' => array( - 'libEven' => "Entreprise réalisant la vente : Ancien propriétaire en indivision", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5503' => array( - 'libEven' => "Entreprise réalisant la vente : Ancien propriétaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5510' => array( - 'libEven' => "Entreprise réalisant la vente : Co-propriétaire", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5600' => array( - 'libEven' => "Entreprise « Précédent exploitant »", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5650' => array( - 'libEven' => "Entreprise indemnisée", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5700' => array( - 'libEven' => "Entreprise réalisant l'acquisition", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 12, - 'LienEtab' => 1, - ), - '5900' => array( - 'libEven' => "Autre achat, apport, attribution", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 15, - 'LienEtab' => 1, - ), - '5999' => array( - 'libEven' => "Ventes/Cessions", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "ventes", - 'Version' => 14, - 'LienEtab' => 1, - ), - '6000' => array( - 'libEven' => "Radiation pour cause de clôture de la liquidation (amiable/simplifié/général)", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "radiations", - 'Version' => 12, - 'LienEtab' => 0, - ), - '6001' => array( - 'libEven' => "Radiation pour cause de clôture de la liquidation amiable", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "radiations", - 'Version' => 12, - 'LienEtab' => 0, - ), - '6002' => array( - 'libEven' => "Radiation pour cause de clôture de la liquidation judiciaire pour insuffisance d'actif", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "radiations", - 'Version' => 12, - 'LienEtab' => 0, - ), - '6003' => array( - 'libEven' => "Radiation pour cause de clôture de la liquidation judiciaire", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "radiations", - 'Version' => 12, - 'LienEtab' => 0, - ), - '6004' => array( - 'libEven' => "Radiation pour cause de clôture de la liquidation judiciaire simplifié", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "radiations", - 'Version' => 12, - 'LienEtab' => 0, - ), - '6005' => array( - 'libEven' => "Radiation pour clôture du plan de cession", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "radiations", - 'Version' => 12, - 'LienEtab' => 0, - ), - '6100' => array( - 'libEven' => "Radiation pour cause de décès", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "radiations", - 'Version' => 12, - 'LienEtab' => 0, - ), - '6200' => array( - 'libEven' => "Radiation pour cause de mention d'office", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "radiations", - 'Version' => 12, - 'LienEtab' => 1, - ), - '6201' => array( - 'libEven' => "Radiation pour cause de cessation d'activité", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "radiations", - 'Version' => 12, - 'LienEtab' => 0, - ), - '6300' => array( - 'libEven' => "Radiation pour cause de non-exercice", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "radiations", - 'Version' => 12, - 'LienEtab' => 0, - ), - '6400' => array( - 'libEven' => "Radiation pour cause de transfert", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "radiations", - 'Version' => 12, - 'LienEtab' => 1, - ), - '6500' => array( - 'libEven' => "Radiation pour cause de jugement de clôture du plan de cession", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "radiations", - 'Version' => 12, - 'LienEtab' => 0, - ), - '6600' => array( - 'libEven' => "Radiation d'un établissement", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "radiations", - 'Version' => 12, - 'LienEtab' => 1, - ), - '6700' => array( - 'libEven' => "Radiation", - 'Bodacc_Code' => "BODB", - 'Rubrique' => "radiations", - 'Version' => 12, - 'LienEtab' => 1, - ), - '7000' => array( - 'libEven' => "Avis de déclaration d'acceptation d'une succession à concurrence de l'actif net", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "divers", - 'Version' => 12, - 'LienEtab' => 0, - ), - '7001' => array( - 'libEven' => "Avis de dépôt de l'inventaire d'une succession à concurrence de l'actif net", - 'Bodacc_Code' => "BODA", - 'Rubrique' => "divers", - 'Version' => 12, - 'LienEtab' => 0, - ), - '8000' => array( - 'libEven' => "Création d'association", - 'Bodacc_Code' => "ASSO", - 'Rubrique' => "creations", - 'Version' => 12, - 'LienEtab' => 1, - ), - '8010' => array( - 'libEven' => "Changement de nom", - 'Bodacc_Code' => "ASSO", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '8011' => array( - 'libEven' => "Déménagement", - 'Bodacc_Code' => "ASSO", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '8020' => array( - 'libEven' => "Modification de l'objet social", - 'Bodacc_Code' => "ASSO", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '8021' => array( - 'libEven' => "Additif à l'objet social", - 'Bodacc_Code' => "ASSO", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '8025' => array( - 'libEven' => "Modification statutaire", - 'Bodacc_Code' => "ASSO", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '8030' => array( - 'libEven' => "Fusion d'associations", - 'Bodacc_Code' => "ASSO", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '8079' => array( - 'libEven' => "Modification d'association", - 'Bodacc_Code' => "ASSO", - 'Rubrique' => "mmd", - 'Version' => 12, - 'LienEtab' => 0, - ), - '8080' => array( - 'libEven' => "Suspension d'association", - 'Bodacc_Code' => "ASSO", - 'Rubrique' => "divers", - 'Version' => 12, - 'LienEtab' => 0, - ), - '8090' => array( - 'libEven' => "Dissolution d'association", - 'Bodacc_Code' => "ASSO", - 'Rubrique' => "radiations", - 'Version' => 12, - 'LienEtab' => 0, - ), - '9000' => array( - 'libEven' => "Autres opérations", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "autres", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9001' => array( - 'libEven' => "Décisions prises par des assemblées d'obligataires et homologation de résolutions", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "autres", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9002' => array( - 'libEven' => "Désignation de teneurs de comptes de titres nominatifs", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "autres", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9003' => array( - 'libEven' => "Fusions et scissions", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "autres", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9004' => array( - 'libEven' => "Liquidations", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "autres", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9005' => array( - 'libEven' => "Offre de remboursement d'obligations", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "autres", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9006' => array( - 'libEven' => "Réduction de capital", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "autres", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9007' => array( - 'libEven' => "Regroupement d'actions", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "autres", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9010' => array( - 'libEven' => "Bulletin officiel de l'AMF", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "bo", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9011' => array( - 'libEven' => "Bulletin officiel du CMF", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "bo", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9015' => array( - 'libEven' => "Avis divers", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "divers", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9020' => array( - 'libEven' => "Convocations - Assemblées d'actionnaires et de porteurs de parts", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "convoc", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9021' => array( - 'libEven' => "Convocations - Assemblées d'obligataires ou de porteurs de titres d'emprunt", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "convoc", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9022' => array( - 'libEven' => "Convocations - Assemblées de porteurs de certificats d'investissement", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "convoc", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9023' => array( - 'libEven' => "Convocations - Assemblées de porteurs de parts de fondateur", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "convoc", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9024' => array( - 'libEven' => "Convocations - Assemblées de porteurs de titres participatifs", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "convoc", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9030' => array( - 'libEven' => "Emissions/Cotations - Organismes internationaux - Bons, obligations et autres titres", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "cotation", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9031' => array( - 'libEven' => "Emissions/Cotations - Valeurs étrangères - Actions et parts", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "cotation", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9032' => array( - 'libEven' => "Emissions/Cotations - Valeurs étrangères - Bons d'options sur titres et sur indices", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "cotation", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9033' => array( - 'libEven' => "Emissions/Cotations - Valeurs étrangères - Bons, obligations et autres titres", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "cotation", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9034' => array( - 'libEven' => "Emissions/Cotations - Valeurs européennes - Actions et parts", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "cotation", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9035' => array( - 'libEven' => "Emissions/Cotations - Valeurs françaises - Actions et parts", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "cotation", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9036' => array( - 'libEven' => "Emissions/Cotations - Valeurs françaises - Bons d'options sur titres et sur indices", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "cotation", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9037' => array( - 'libEven' => "Emissions/Cotations - Valeurs françaises - Bons, obligations et autres titres", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "cotation", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9038' => array( - 'libEven' => "Emissions/Cotations - Valeurs françaises - Certificats d'investissement", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "cotation", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9040' => array( - 'libEven' => "Publications périodiques - Entreprises d'assurances et organismes de retraites", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "publi", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9041' => array( - 'libEven' => "Publications périodiques - Sociétés commerciales et industrielles", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "publi", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9042' => array( - 'libEven' => "Publications périodiques - Chiffres d'affaires", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "publi", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9043' => array( - 'libEven' => "Publications périodiques - Chiffres d'affaires et situations trimestrielles", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "publi", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9044' => array( - 'libEven' => "Publications périodiques - Tableaux d'activités et résultats", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "publi", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9045' => array( - 'libEven' => "Publications périodiques - Comptes annuels", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "publi", - 'Version' => 16, - 'LienEtab' => 0, - ), - '9046' => array( - 'libEven' => "Publications périodiques - Comptes intermédiaires", - 'Bodacc_Code' => "BALO", - 'Rubrique' => "publi", - 'Version' => 16, - 'LienEtab' => 0, - ), -); diff --git a/library/Metier/bodacc/Cache/FctDir.php b/library/Metier/bodacc/Cache/FctDir.php deleted file mode 100644 index d30cfbc8..00000000 --- a/library/Metier/bodacc/Cache/FctDir.php +++ /dev/null @@ -1,286 +0,0 @@ - "Directeur", - '5' => "Directeur Recherche et Développement", - '6' => "Directeur de la Qualité", - '7' => "Directeur d'Exploitation", - '8' => "Directeur d'Agence/Etablissement", - '9' => "Directeur de la Production", - '10' => "Directeur Commercial", - '11' => "Directeur Financier (DAF)", - '12' => "Directeur Juridique", - '13' => "Directeur des Ressources Humaines DRH", - '14' => "Directeur Informatique", - '15' => "Directeur Administratif", - '16' => "Directeur des Achats", - '17' => "Directeur Marketing", - '18' => "Directeur de la communication", - '19' => "Directeur Technique", - '31' => "Responsable", - '35' => "Responsable Recherche et Développement", - '36' => "Responsable de la Qualité", - '37' => "Responsable d'Exploitation", - '38' => "Responsable d'Agence/Etablissement", - '39' => "Responsable de la Production", - '40' => "Responsable Commercial", - '41' => "Responsable Financier", - '42' => "Responsable Juridique", - '43' => "Responsable des Ressources Humaines RRH", - '44' => "Responsable Informatique", - '45' => "Responsable Administratif", - '46' => "Responsable des Achats", - '47' => "Responsable Marketing", - '48' => "Responsable de la communication", - '49' => "Responsable Technique", - '50' => "Expert comptable", - '55' => "Comptable", - '60' => "Chargé d'affaires", - '61' => "Conducteur de Travaux", - '62' => "Chef de projets", - '63' => "Consultant", - '79' => "Assistant(e) de direction", - '80' => "Avocat", - '90' => "Représentant du personnel", - '91' => "Représentant du Comité d'Entreprise", - '92' => "Scrutateur", - '100' => "Administrateur", - '101' => "Administrateur délégué", - '102' => "administrateur de GIE", - '103' => "Administrateur et membre", - '104' => "Administrateur et membre du GIE", - '105' => "Administrateur et président", - '106' => "Administrateur membre engageant le GIE", - '107' => "Administrateur unique", - '108' => "Administrateur provisoire", - '200' => "Associé", - '201' => "Associé commandité gérant", - '202' => "Associé commandité", - '203' => "Associé de société civile", - '205' => "Associé en nom", - '206' => "Associé exploitant", - '207' => "Associé non exploitant", - '208' => "Associé non gérant", - '209' => "Associé gérant", - '210' => "Associé Indéfiniment et solidairement responsable", - '211' => "Associé indéfiniment responsable", - '212' => "Associé en nue propriété (avec usufruitier)", - '213' => "Associé unique", - '300' => "Commissaire aux comptes titulaire", - '301' => "Co-commissaire aux comptes suppléant", - '302' => "Co-commissaire aux comptes titulaire", - '303' => "Commissaire aux comptes suppléant", - '304' => "Commissaire aux comptes", - '400' => "Co-gérant", - '401' => "Co-gérant associé Indéfiniment responsable", - '402' => "Co-gérant associé", - '403' => "Co-gérant non associé", - '404' => "Co-gérant non statutaire", - '405' => "Co-gérant pouvant engager la société", - '406' => "Co-gérant statutaires", - '500' => "Conjoint Collaborateur", - '600' => "Contrôleur", - '601' => "Contrôleur de gestion et des comptes", - '602' => "Contrôleur de gestion du GIE", - '603' => "Contrôleur de gestion", - '604' => "Contrôleur des comptes titulaire", - '605' => "Contrôleur des comptes du GIE", - '606' => "Contrôleur des comptes et de gestion", - '607' => "Contrôleur des comptes et membre du GIE", - '608' => "Contrôleur des comptes", - '700' => "Directeur", - '701' => "Directeur général adjoint", - '702' => "Directeur général délégué et administrateur", - '703' => "Directeur général délégué et membre du comité de surveillance", - '704' => "Directeur général délégué", - '705' => "Directeur général et administrateur", - '706' => "Directeur général et membre du directoire", - '707' => "Directeur général unique du directoire", - '708' => "Directeur général unique", - '709' => "Directeur général", - '710' => "Directeur gérant", - '711' => "Directeur technique", - '712' => "Directeur des transports", - '713' => "Directeur général non administrateur", - '800' => "Dirigeant", - '801' => "Dirigeant à l'étranger et en France", - '802' => "Dirigeant à l'étranger", - '803' => "Dirigeant en France et à l'étranger", - '804' => "Dirigeant en France", - '805' => "Dirigeant", - '900' => "Gérant", - '901' => "Nouveau gérant", - '902' => "Gérant et directeur technique", - '903' => "Gérant associé en nom collectif", - '904' => "Gérant associé en nom", - '905' => "Gérant associé indéfiniment responsable", - '906' => "Gérant associé unique", - '907' => "Gérant associé", - '908' => "Gérant associé majoritaire", - '909' => "Gérant associé minoritaire", - '910' => "Gérant associé tenu indéfiniment et solidairement des dettes sociales", - '911' => "Gérant majoritaire", - '912' => "Gérant non associé", - '913' => "Gérant non statutaire", - '914' => "Gérant pouvant engager la société", - '915' => "Gérant salarié", - '916' => "Gérant statutaire associé", - '917' => "Gérant statutaire", - '918' => "Gérant et administrateur", - '919' => "Gérant technique", - '920' => "Ancien gérant", - '921' => "Gérante", - '923' => "Gérant co-associé", - '924' => "Gérant unique", - '925' => "Premier Gérant", - '1000' => "Fondé de pouvoir", - '1001' => "Personne ayant pouvoir d'engager à titre habituel la société vis-à-vis des tiers", - '1002' => "Personne ayant pouvoir d'engager la société en France", - '1003' => "Personne ayant pouvoir d'engager la société", - '1004' => "Personne ayant pouvoir de diriger et gérer", - '1005' => "Personne pouvant engager à titre habituel l'assujetti", - '1006' => "Personne", - '1050' => "Personne Physique", - '1090' => "Gérant affaire personnelle", - '1100' => "Mandataire", - '1101' => "Mandataire ad hoc", - '1102' => "Mandataire général", - '1200' => "Membre", - '1201' => "Membre du GIE", - '1202' => "Membre du groupement", - '1203' => "Membre et administrateur", - '1204' => "Membre du comité de direction", - '1205' => "Membre du comité de surveillance", - '1206' => "Membre du conseil de direction", - '1207' => "Membre du conseil de surveillance", - '1208' => "Membre du directoire", - '1209' => "Membre du conseil exécutif", - '1300' => "Président", - '1301' => "Président directeur général", - '1302' => "Président du conseil d'administration assumant la direction général", - '1303' => "Président du conseil d'administration et administrateur", - '1304' => "Président du conseil d'administration et directeur général", - '1305' => "Président du conseil d'administration, directeur général et administrateur", - '1306' => "Président du conseil d'administration", - '1307' => "Président du conseil de surveillance", - '1308' => "Président du directoire", - '1309' => "Président du GIE", - '1310' => "Président et membre du conseil de surveillance", - '1311' => "Président et membre du directoire", - '1312' => "Président et président du comité de direction", - '1313' => "Président et président du comité de surveillance", - '1314' => "Président et administrateur", - '1315' => "Président et associé", - '1316' => "Président et associé unique", - '1317' => "Président directeur général et administrateur", - '1318' => "Président non associé", - '1400' => "Représentant", - '1401' => "Représentant de société étrangère", - '1402' => "Représentant tant en France qu'à l'étranger", - '1403' => "Représentant à l'étranger", - '1404' => "Représentant légal en France", - '1405' => "Représentant légal", - '1500' => "Responsable", - '1501' => "Co-responsable en France", - '1502' => "Responsable pour la France", - '1503' => "Responsable tant en France qu'à l'étranger", - '1504' => "Responsable technique", - '1505' => "Responsable à l'étranger", - '1506' => "Responsable de la société en France", - '1507' => "Responsable en France", - '1508' => "Responsable légal en France", - '1600' => "Secrétaire", - '1601' => "Vice-secrétaire", - '1602' => "Secrétaire du conseil d'administration", - '1603' => "Secrétaire du conseil de surveillance", - '1610' => "Secrétaire général", - '1650' => "Gouverneur", - '1651' => "Sous Gouverneur", - '1700' => "Trésorier", - '1701' => "Vice-trésorier", - '1800' => "Vice-président", - '1801' => "Vice-président du conseil d'administration", - '1802' => "vice-président du conseil de surveillance", - '1803' => "Vice-président et administrateur privé", - '1804' => "Vice-président et administrateur", - '1805' => "Vice-président et membre du conseil de surveillance", - '1900' => "Liquidateur", - '1950' => "Greffier", - '2000' => "Maire", - '2001' => "Premier Adjoint", - '2002' => "Adjoint 3eme Age/Handicapes", - '2003' => "Adjoint Affaires Culturelles", - '2004' => "Adjoint Affaires Economiques", - '2005' => "Adjoint Affaires Générales", - '2006' => "Adjoint Affaires Sociales", - '2007' => "Adjoint Agriculture", - '2008' => "Adjoint Commerce/Artisanat", - '2009' => "Adjoint Communication", - '2010' => "Adjoint Emploi/Insertion", - '2011' => "Adjoint Environnement", - '2012' => "Adjoint Finances/Budget", - '2013' => "Adjoint Intercommunalité", - '2014' => "Adjoint Jeunesse", - '2015' => "Adjoint Logement", - '2016' => "Adjoint Patrimoine", - '2017' => "Adjoint Personnel", - '2018' => "Adjoint Petite Enfance", - '2019' => "Adjoint Politique de la Ville/Logement", - '2020' => "Adjoint Relations Internationales", - '2021' => "Adjoint Santé/Prévention", - '2022' => "Adjoint ServicesTechniques", - '2023' => "Adjoint Sport", - '2024' => "Adjoint Spécial", - '2025' => "Adjoint Sécurité/Prévention", - '2026' => "Adjoint TIC", - '2027' => "Adjoint Tourisme", - '2028' => "Adjoint Transports/Mobilité Urbaine", - '2029' => "Adjoint Urbanisme", - '2030' => "Adjoint Vie Associative", - '2031' => "Adjoint Vie des Quartiers", - '2032' => "Adjoint Voirie", - '2050' => "Secrétariat du Maire", - '2051' => "Premier conseiller", - '2052' => "Conseiller", - '2053' => "Conseiller Communautaire Délégué", - '2054' => "Conseiller Municipal", - '2055' => "Conseiller Municipal Délégué", - '2056' => "Directeur de Cabinet", - '2060' => "Dir/Resp Affaires Juridiques", - '2061' => "Dir/Resp Emploi/Insertion/Urbanisme", - '2062' => "Dir/Resp Petite Enfance/Environnement", - '2063' => "Dir/Resp Ressources Humaines", - '2064' => "Dir/Resp Services Financiers", - '2065' => "Dir/Resp Services Techniques/Transports", - '2066' => "Dir/Resp Technique", - '2067' => "Dir/Resp Urbanisme/Habitat/Voirie", - '2068' => "Directeur 3e Age/Handicapés/Cadre Vie/Esp. Ver", - '2069' => "Directeur Achats", - '2070' => "Directeur Affaires Culturelles/Com. Interne", - '2071' => "Directeur Affaires Economiques", - '2072' => "Directeur Affaires Générales", - '2073' => "Directeur Affaires Sociales/Tourisme", - '2074' => "Directeur Architecture", - '2075' => "Directeur Bibliothèque Municipale", - '2076' => "Directeur Communication", - '2077' => "Directeur Eaux et Services Concédés", - '2078' => "Directeur Enseignement/Affaires Scolaires", - '2079' => "Directeur Espaces Verts", - '2080' => "Directeur Grands Projets", - '2081' => "Directeur Général Adjoint des Services", - '2082' => "Directeur Général des Services", - '2083' => "Directeur Général et Administrateur", - '2084' => "Directeur Informatique", - '2085' => "Directeur Jeunesse/Enseignement", - '2086' => "Directeur Nettoiement/Ordures Ménagères", - '2087' => "Directeur Politique de la Ville", - '2088' => "Directeur Prévention/Sécurité", - '2089' => "Directeur Prévention/Sécurité/Environnement", - '2090' => "Directeur Rel. Internationales", - '2091' => "Directeur Rel. Internationales/Action Culturel", - '2092' => "Directeur Santé", - '2093' => "Directeur Sports/Emploi/Recrutement", - '2094' => "Directeur Tourisme", - '2095' => "Directeur Transports/Mobilité Urbaine", - '2096' => "Directeur Voirie", - '2100' => "Président de section", -); diff --git a/library/Metier/bodacc/Cache/Tribunaux.php b/library/Metier/bodacc/Cache/Tribunaux.php deleted file mode 100644 index 5a9e9132..00000000 --- a/library/Metier/bodacc/Cache/Tribunaux.php +++ /dev/null @@ -1,1771 +0,0 @@ - array('nom'=>"SOUS PREFECTURE D'ABBEVILLE", 'siret'=>"17800001400021", 'dep'=>"80"), - 'ABBEVC' => array('nom'=>"TC ABBEVILLE", 'siret'=>"17800111100198", 'dep'=>"80"), - 'ABBEVG' => array('nom'=>"TGI ABBEVILLE", 'siret'=>"17800111100289", 'dep'=>"80"), - 'AGENA' => array('nom'=>"PREFECTURE D'AGEN", 'siret'=>"17470001300017", 'dep'=>"47"), - 'AGENC' => array('nom'=>"TC AGEN", 'siret'=>"17470111000267", 'dep'=>"47"), - 'AGENG' => array('nom'=>"TGI AGEN", 'siret'=>"17470111000051", 'dep'=>"47"), - 'AIX EB' => array('nom'=>"SOUS PREFECTURE D'AIX EN PROVENCE", 'siret'=>"17130001500186", 'dep'=>"13"), - 'AIXC' => array('nom'=>"TC AIX EN PROVENCE", 'siret'=>"17130111200230", 'dep'=>"13"), - 'AIXG' => array('nom'=>"TGI AIX EN PROVENCE", 'siret'=>"17130111200024", 'dep'=>"13"), - 'AJACCA' => array('nom'=>"PREFECTURE D'AJACCIO", 'siret'=>"17201001900013", 'dep'=>"20"), - 'AJACCC' => array('nom'=>"TC AJACCIO", 'siret'=>"17202111500073", 'dep'=>"20"), - 'AJACCG' => array('nom'=>"TGI AJACCIO", 'siret'=>"17202111500057", 'dep'=>"20"), - 'ALBERB' => array('nom'=>"SOUS PREFECTURE D'ALBERTVILLE", 'siret'=>"17730001900029", 'dep'=>"73"), - 'ALBERG' => array('nom'=>"TGIcc ALBERTVILLE", 'siret'=>"17730111600030", 'dep'=>"73"), - 'ALBIA' => array('nom'=>"PREFECTURE D'ALBI", 'siret'=>"17810001200016", 'dep'=>"81"), - 'ALBIC' => array('nom'=>"TC ALBI", 'siret'=>"17310111400333", 'dep'=>"81"), - 'ALBIG' => array('nom'=>"TGI ALBI", 'siret'=>"17310111400127", 'dep'=>"81"), - 'ALENCA' => array('nom'=>"PREFECTURE D'ALENCON", 'siret'=>"17610001400016", 'dep'=>"61"), - 'ALENCC' => array('nom'=>"TC ALENCON", 'siret'=>"17140111000589", 'dep'=>"61"), - 'ALENCG' => array('nom'=>"TGI ALENCON", 'siret'=>"17140111000092", 'dep'=>"61"), - 'ALESB' => array('nom'=>"SOUS PREFECTURE D'ALES", 'siret'=>"17300001900021", 'dep'=>"30"), - 'ALESC' => array('nom'=>"TC ALES", 'siret'=>"17300111600123", 'dep'=>"30"), - 'ALESG' => array('nom'=>"TGI ALES", 'siret'=>"17300111600297", 'dep'=>"30"), - 'ALTKIB' => array('nom'=>"SOUS PREFECTURE D'ALTKIRCH", 'siret'=>"17680001900067", 'dep'=>"68"), - 'AMBERB' => array('nom'=>"SOUS PREFECTURE D'AMBERT", 'siret'=>"17630001000061", 'dep'=>"63"), - 'AMBERC' => array('nom'=>"TC AMBERT", 'siret'=>"17630111700188", 'dep'=>"63"), - 'AMIENA' => array('nom'=>"PREFECTURE D'AMIENS", 'siret'=>"17800001400013", 'dep'=>"80"), - 'AMIENC' => array('nom'=>"TC AMIENS", 'siret'=>"17800111100156", 'dep'=>"80"), - 'AMIENG' => array('nom'=>"TGI AMIENS", 'siret'=>"17800111100164", 'dep'=>"80"), - 'ANCENB' => array('nom'=>"SOUS PREFECTURE DE ANCENIS", 'siret'=>"17440001000081", 'dep'=>"44"), - 'ANGERA' => array('nom'=>"PREFECTURE D'ANGERS", 'siret'=>"17490001900012", 'dep'=>"49"), - 'ANGERC' => array('nom'=>"TC ANGERS", 'siret'=>"17490111600072", 'dep'=>"49"), - 'ANGERG' => array('nom'=>"TGI ANGERS", 'siret'=>"17490111600056", 'dep'=>"49"), - 'ANGOUA' => array('nom'=>"PREFECTURE D'ANGOULEME", 'siret'=>"17160001800013", 'dep'=>"16"), - 'ANGOUC' => array('nom'=>"TC ANGOULEME", 'siret'=>"17330111000081", 'dep'=>"16"), - 'ANGOUG' => array('nom'=>"TGI ANGOULEME", 'siret'=>"17330111000073", 'dep'=>"16"), - 'ANNECA' => array('nom'=>"PREFECTURE D'ANNECY", 'siret'=>"17740001700014", 'dep'=>"74"), - 'ANNECG' => array('nom'=>"TGIcc ANNECY", 'siret'=>"17730111600063", 'dep'=>"74"), - 'ANNONC' => array('nom'=>"TC ANNONAY", 'siret'=>"17300111600024", 'dep'=>"71"), - 'ANTIBC' => array('nom'=>"TC ANTIBES", 'siret'=>"17130111200669", 'dep'=>"66"), - 'ANTONB' => array('nom'=>"SOUS PREFECTURE D'ANTONY", 'siret'=>"17920001900059", 'dep'=>"92"), - 'APTB' => array('nom'=>"SOUS PREFECTURE D'APT", 'siret'=>"17840001600030", 'dep'=>"84"), - 'ARGELB' => array('nom'=>"SOUS PREFECTURE D'ARGELES GAZOST", 'siret'=>"17650001500035", 'dep'=>"65"), - 'ARGENB' => array('nom'=>"SOUS PREFECTURE D'ARGENTAN", 'siret'=>"17610001400024", 'dep'=>"61"), - 'ARGENC' => array('nom'=>"TC ARGENTAN", 'siret'=>"17140111000365", 'dep'=>"61"), - 'ARGENG' => array('nom'=>"TGI ARGENTAN", 'siret'=>"17140111000217", 'dep'=>"61"), - 'ARGETB' => array('nom'=>"SOUS PREFECTURE D'ARGENTEUIL", 'siret'=>"17950001200069", 'dep'=>"95"), - 'ARLESB' => array('nom'=>"SOUS PREFECTURE D'ARLES", 'siret'=>"17130001500038", 'dep'=>"13"), - 'ARLESC' => array('nom'=>"TC ARLES", 'siret'=>"17130111200107", 'dep'=>"13"), - 'ARRASA' => array('nom'=>"PREFECTURE D'ARRAS", 'siret'=>"17620001200019", 'dep'=>"62"), - 'ARRASC' => array('nom'=>"TC ARRAS", 'siret'=>"17590111500543", 'dep'=>"62"), - 'ARRASG' => array('nom'=>"TGI ARRAS", 'siret'=>"17590111500535", 'dep'=>"62"), - 'AUBENC' => array('nom'=>"TC AUBENAS", 'siret'=>"17300111600032", 'dep'=>"72"), - 'AUBUSB' => array('nom'=>"SOUS PREFECTURE D'AUBUSSON", 'siret'=>"17230001400021", 'dep'=>"23"), - 'AUCHA' => array('nom'=>"PREFECTURE D'AUCH", 'siret'=>"17320001500019", 'dep'=>"32"), - 'AUCHC' => array('nom'=>"TC AUCH", 'siret'=>"17470111000101", 'dep'=>"32"), - 'AUCHG' => array('nom'=>"TGI AUCH", 'siret'=>"17470111000044", 'dep'=>"32"), - 'AURILA' => array('nom'=>"PREFECTURE D'AURILLAC", 'siret'=>"17150001000011", 'dep'=>"15"), - 'AURILC' => array('nom'=>"TC AURILLAC", 'siret'=>"17630111700162", 'dep'=>"15"), - 'AURILG' => array('nom'=>"TGI AURILLAC", 'siret'=>"17630111700089", 'dep'=>"15"), - 'AUTUNB' => array('nom'=>"SOUS PREFECTURE D'AUTUN", 'siret'=>"17710001300065", 'dep'=>"71"), - 'AUTUNC' => array('nom'=>"TC AUTUN", 'siret'=>"17210111500290", 'dep'=>"71"), - 'AUXERA' => array('nom'=>"PREFECTURE D'AUXERRE", 'siret'=>"17890001500011", 'dep'=>"89"), - 'AUXERC' => array('nom'=>"TC AUXERRE", 'siret'=>"17750111101169", 'dep'=>"89"), - 'AUXERG' => array('nom'=>"TGI AUXERRE", 'siret'=>"17750111100138", 'dep'=>"89"), - 'AUXONC' => array('nom'=>"TC AUXONNE", 'siret'=>"17210111500332", 'dep'=>"21"), - 'AVALLB' => array('nom'=>"SOUS PREFECTURE D'AVALLON", 'siret'=>"17890001500037", 'dep'=>"89"), - 'AVESNB' => array('nom'=>"SOUS PREFECTURE D'AVESNES SUR HELPE", 'siret'=>"17590001800045", 'dep'=>"59"), - 'AVESNG' => array('nom'=>"TGIcc AVESNES SUR HELPE", 'siret'=>"17590111500477", 'dep'=>"59"), - 'AVIGNA' => array('nom'=>"PREFECTURE D'AVIGNON", 'siret'=>"17840001600014", 'dep'=>"84"), - 'AVIGNC' => array('nom'=>"TC AVIGNON", 'siret'=>"17300111600214", 'dep'=>"84"), - 'AVIGNG' => array('nom'=>"TGI AVIGNON", 'siret'=>"17300111600222", 'dep'=>"84"), - 'AVRAG' => array('nom'=>"TGI AVRANCHES", 'siret'=>"17140111000225", 'dep'=>"50"), - 'AVRAB' => array('nom'=>"SOUS PREFECTURE D'AVRANCHES", 'siret'=>"17500001700046", 'dep'=>"50"), - 'BAGNEB' => array('nom'=>"SOUS PREFECTURE DE BAGNERES DE BIGORRE", 'siret'=>"17650001500027", 'dep'=>"65"), - 'BAGNEC' => array('nom'=>"TC BAGNERES DE BIGORRE", 'siret'=>"17640111500108", 'dep'=>"65"), - 'BARCEB' => array('nom'=>"SOUS PREFECTURE DE BARCELONNETTE", 'siret'=>"17040001400040", 'dep'=>"44"), - 'BARLDA' => array('nom'=>"PREFECTURE DE BAR LE DUC", 'siret'=>"17550001600019", 'dep'=>"55"), - 'BARLDC' => array('nom'=>"TC BAR LE DUC", 'siret'=>"17540111600462", 'dep'=>"55"), - 'BARLDG' => array('nom'=>"TGI BAR LE DUC", 'siret'=>"17540111600298", 'dep'=>"55"), - 'BAR SB' => array('nom'=>"SOUS PREFECTURE DE BAR SUR AUBE", 'siret'=>"17100001100030", 'dep'=>"10"), - 'BASSEA' => array('nom'=>"PREFECTURE DE BASSE TERRE", 'siret'=>"17971001700015", 'dep'=>"971"), - 'BASSEG' => array('nom'=>"TGI BASSE TERRE", 'siret'=>"17971111400035", 'dep'=>"971"), - 'BASSEM' => array('nom'=>"TMX BASSE-TERRE", 'siret'=>"17971111400035", 'dep'=>"971"), - 'BASTIA' => array('nom'=>"PREFECTURE DE BASTIA", 'siret'=>"17202001800013", 'dep'=>"20"), - 'BASTIC' => array('nom'=>"TC BASTIA", 'siret'=>"17202111500065", 'dep'=>"20"), - 'BASTIG' => array('nom'=>"TGI BASTIA", 'siret'=>"17202111500024", 'dep'=>"20"), - 'BAYEUB' => array('nom'=>"SOUS PREFECTURE DE BAYEUX", 'siret'=>"17140001300032", 'dep'=>"14"), - 'BAYEUC' => array('nom'=>"TC BAYEUX", 'siret'=>"17140111000613", 'dep'=>"14"), - 'BAYONB' => array('nom'=>"SOUS PREFECTURE DE BAYONNE", 'siret'=>"17640001800022", 'dep'=>"64"), - 'BAYONC' => array('nom'=>"TC BAYONNE", 'siret'=>"176401115", 'dep'=>"64"), - 'BAYONG' => array('nom'=>"TGI BAYONNE", 'siret'=>"17640111500140", 'dep'=>"64"), - 'BEAUNB' => array('nom'=>"SOUS PREFECTURE DE BEAUNE", 'siret'=>"17210001800065", 'dep'=>"21"), - 'BEAUNC' => array('nom'=>"TC BEAUNE", 'siret'=>"17210111500357", 'dep'=>"21"), - 'BEAUVA' => array('nom'=>"PREFECTURE DE BEAUVAIS", 'siret'=>"17600001600012", 'dep'=>"60"), - 'BEAUVC' => array('nom'=>"TC BEAUVAIS", 'siret'=>"17800111100222", 'dep'=>"60"), - 'BEAUVG' => array('nom'=>"TGI BEAUVAIS", 'siret'=>"17800111100073", 'dep'=>"60"), - 'BELFOA' => array('nom'=>"PREFECTURE DE BELFORT", 'siret'=>"17900001300013", 'dep'=>"90"), - 'BELFOC' => array('nom'=>"TC BELFORT", 'siret'=>"17250111600484", 'dep'=>"90"), - 'BELFOG' => array('nom'=>"TGI BELFORT", 'siret'=>"17250111600146", 'dep'=>"90"), - 'BELLAB' => array('nom'=>"SOUS PREFECTURE DE BELLAC", 'siret'=>"17870001900023", 'dep'=>"87"), - 'BELLEB' => array('nom'=>"SOUS PREFECTURE DE BELLEY", 'siret'=>"17010001000025", 'dep'=>"13"), - 'BELLEG' => array('nom'=>"TGIcc BELLEY", 'siret'=>"17690111400023", 'dep'=>"13"), - 'BERGEB' => array('nom'=>"SOUS PREFECTURE DE BERGERAC", 'siret'=>"17240001200081", 'dep'=>"24"), - 'BERGEC' => array('nom'=>"TC BERGERAC", 'siret'=>"17330111000230", 'dep'=>"24"), - 'BERGEG' => array('nom'=>"TGI BERGERAC", 'siret'=>"17330111000214", 'dep'=>"24"), - 'BERNAB' => array('nom'=>"SOUS PREFECTURE DE BERNAY", 'siret'=>"17270001500032", 'dep'=>"27"), - 'BERNAC' => array('nom'=>"TC BERNAY", 'siret'=>"17760111900148", 'dep'=>"27"), - 'BERNAG' => array('nom'=>"TGI BERNAY", 'siret'=>"17760111900296", 'dep'=>"27"), - 'BESANA' => array('nom'=>"PREFECTURE DE BESANCON", 'siret'=>"17250001900010", 'dep'=>"25"), - 'BESANC' => array('nom'=>"TC BESANCON", 'siret'=>"17250111600104", 'dep'=>"25"), - 'BESANG' => array('nom'=>"TGI BESANCON", 'siret'=>"17250111600518", 'dep'=>"25"), - 'BETHUB' => array('nom'=>"SOUS PREFECTURE DE BETHUNE", 'siret'=>"17620001200027", 'dep'=>"62"), - 'BETHUG' => array('nom'=>"TGIcc BETHUNE", 'siret'=>"17590111500055", 'dep'=>"62"), - 'BEZIEB' => array('nom'=>"SOUS PREFECTURE DE BEZIERS", 'siret'=>"17340001100024", 'dep'=>"34"), - 'BEZIEC' => array('nom'=>"TC BEZIERS", 'siret'=>"17340111800638", 'dep'=>"34"), - 'BEZIEG' => array('nom'=>"TGI BEZIERS", 'siret'=>"17340111800398", 'dep'=>"34"), - 'BGOING' => array('nom'=>"TGIcc BOURGOIN JALLIEU", 'siret'=>"17380111900376", 'dep'=>"38"), - 'BILLOC' => array('nom'=>"TC BILLOM", 'siret'=>"17630111700196", 'dep'=>"63"), - 'BLAYEB' => array('nom'=>"SOUS PREFECTURE DE BLAYE", 'siret'=>"17330001300070", 'dep'=>"33"), - 'BLAYEC' => array('nom'=>"TC BLAYE", 'siret'=>"17330111000438", 'dep'=>"33"), - 'BLOISA' => array('nom'=>"PREFECTURE DE BLOIS", 'siret'=>"17410001600016", 'dep'=>"41"), - 'BLOISC' => array('nom'=>"TC BLOIS", 'siret'=>"17450111400279", 'dep'=>"41"), - 'BLOISG' => array('nom'=>"TGI BLOIS", 'siret'=>"17450111400113", 'dep'=>"41"), - 'BOBIGA' => array('nom'=>"PREFECTURE DE BOBIGNY", 'siret'=>"17930001700011", 'dep'=>"93"), - 'BOBIGC' => array('nom'=>"TC BOBIGNY", 'siret'=>"17750111101094", 'dep'=>"93"), - 'BOBIGG' => array('nom'=>"TGI BOBIGNY", 'siret'=>"17750111100583", 'dep'=>"93"), - 'BONNEB' => array('nom'=>"SOUS PREFECTURE DE BONNEVILLE", 'siret'=>"", 'dep'=>"74"), - 'BONNEG' => array('nom'=>"TGIcc BONNEVILLE", 'siret'=>"17730111600022", 'dep'=>"74"), - 'BORDEA' => array('nom'=>"PREFECTURE DE BORDEAUX", 'siret'=>"17330001300013", 'dep'=>"33"), - 'BORDEB' => array('nom'=>"SOUS PREFECTURE DE BORDEAUX", 'siret'=>"", 'dep'=>"33"), - 'BORDEC' => array('nom'=>"TC BORDEAUX", 'siret'=>"17330111000149", 'dep'=>"33"), - 'BORDEG' => array('nom'=>"TGI BORDEAUX", 'siret'=>"17330111000115", 'dep'=>"33"), - 'BOULAB' => array('nom'=>"SOUS PREFECTURE DE BOULAY", 'siret'=>"17570001200073", 'dep'=>"57"), - 'BOULBB' => array('nom'=>"SOUS PREFECTURE DE BOULOGNE BILLANCOURT", 'siret'=>"17920001900067", 'dep'=>"92"), - 'BOULOB' => array('nom'=>"SOUS PREFECTURE DE BOULOGNE SUR MER", 'siret'=>"17620001200035", 'dep'=>"62"), - 'BOULOC' => array('nom'=>"TC BOULOGNE SUR MER", 'siret'=>"17590111500758", 'dep'=>"62"), - 'BOULOG' => array('nom'=>"TGI BOULOGNE SUR MER", 'siret'=>"17590111500097", 'dep'=>"62"), - 'BOURGA' => array('nom'=>"PREFECTURE DE BOURG EN BRESSE", 'siret'=>"17010001000017", 'dep'=>"10"), - 'BOURGC' => array('nom'=>"TC BOURG EN BRESSE", 'siret'=>"17690111400445", 'dep'=>"10"), - 'BOURGG' => array('nom'=>"TGI BOURG EN BRESSE", 'siret'=>"17690111400080", 'dep'=>"10"), - 'BRESSB' => array('nom'=>"SOUS PREFECTURE DE BRESSUIRE", 'siret'=>"17790001600060", 'dep'=>"79"), - 'BRESSG' => array('nom'=>"TGIcc BRESSUIRE", 'siret'=>"17860111800106", 'dep'=>"79"), - 'BRESTB' => array('nom'=>"SOUS PREFECTURE DE BREST", 'siret'=>"17290001100054", 'dep'=>"29"), - 'BRESTC' => array('nom'=>"TC BREST", 'siret'=>"17350111500443", 'dep'=>"29"), - 'BRESTG' => array('nom'=>"TGI BREST", 'siret'=>"17350111500104", 'dep'=>"29"), - 'BRGESA' => array('nom'=>"PREFECTURE DE BOURGES", 'siret'=>"17180001400010", 'dep'=>"18"), - 'BRGESC' => array('nom'=>"TC BOURGES", 'siret'=>"17180111100179", 'dep'=>"18"), - 'BRGESG' => array('nom'=>"TGI BOURGES", 'siret'=>"17180111100062", 'dep'=>"18"), - 'BRIANB' => array('nom'=>"SOUS PREFECTURE DE BRIANCON", 'siret'=>"17050001100037", 'dep'=>"51"), - 'BRIEYB' => array('nom'=>"SOUS PREFECTURE DE BRIEY", 'siret'=>"17540001900055", 'dep'=>"54"), - 'BRIEYC' => array('nom'=>"TC BRIEY", 'siret'=>"17540111600041", 'dep'=>"54"), - 'BRIEYG' => array('nom'=>"TGI BRIEY", 'siret'=>"17540111600058", 'dep'=>"54"), - 'BRIGNB' => array('nom'=>"SOUS PREFECTURE DE BRIGNOLES", 'siret'=>"17830001800045", 'dep'=>"83"), - 'BRIGNC' => array('nom'=>"TC BRIGNOLES", 'siret'=>"17130111200628", 'dep'=>"83"), - 'BRIOUB' => array('nom'=>"SOUS PREFECTURE DE BRIOUDE", 'siret'=>"17430001200021", 'dep'=>"43"), - 'BRIOUC' => array('nom'=>"TC BRIOUDE", 'siret'=>"17630111700154", 'dep'=>"43"), - 'BRIVEB' => array('nom'=>"SOUS PREFECTURE DE BRIVE LA GAILLARDE", 'siret'=>"17190001200021", 'dep'=>"19"), - 'BRIVEC' => array('nom'=>"TC BRIVE", 'siret'=>"17870111600315", 'dep'=>"19"), - 'BRIVEG' => array('nom'=>"TGI BRIVE", 'siret'=>"17870111600208", 'dep'=>"19"), - 'CAENA' => array('nom'=>"PREFECTURE DE CAEN", 'siret'=>"17140001300016", 'dep'=>"14"), - 'CAENC' => array('nom'=>"TC CAEN", 'siret'=>"17140111000464", 'dep'=>"14"), - 'CAENG' => array('nom'=>"TGI CAEN", 'siret'=>"17140111000449", 'dep'=>"14"), - 'CAHORA' => array('nom'=>"PREFECTURE DE CAHORS", 'siret'=>"17460001500013", 'dep'=>"46"), - 'CAHORC' => array('nom'=>"TC CAHORS", 'siret'=>"17470111000135", 'dep'=>"46"), - 'CAHORG' => array('nom'=>"TGI CAHORS", 'siret'=>"17470111000077", 'dep'=>"46"), - 'CALAIB' => array('nom'=>"SOUS PREFECTURE DE CALAIS", 'siret'=>"17620001200043", 'dep'=>"62"), - 'CALAIC' => array('nom'=>"TC CALAIS", 'siret'=>"17590111500766", 'dep'=>"62"), - 'CALVIB' => array('nom'=>"SOUS PREFECTURE DE CALVI", 'siret'=>"17202001800054", 'dep'=>"20"), - 'CAMBRB' => array('nom'=>"SOUS PREFECTURE DE CAMBRAI", 'siret'=>"17590001800052", 'dep'=>"59"), - 'CAMBRC' => array('nom'=>"TC CAMBRAI", 'siret'=>"17590111500923", 'dep'=>"59"), - 'CAMBRG' => array('nom'=>"TGI CAMBRAI", 'siret'=>"17590111500931", 'dep'=>"59"), - 'CANNEC' => array('nom'=>"TC CANNES", 'siret'=>"17130111200701", 'dep'=>"64"), - 'CARCAA' => array('nom'=>"PREFECTURE DE CARCASSONNE", 'siret'=>"17110001900016", 'dep'=>"11"), - 'CARCAC' => array('nom'=>"TC CARCASSONNE", 'siret'=>"17340111800661", 'dep'=>"11"), - 'CARCAG' => array('nom'=>"TGI CARCASSONNE", 'siret'=>"17340111800513", 'dep'=>"11"), - 'CARPEB' => array('nom'=>"SOUS PREFECTURE DE CARPENTRAS", 'siret'=>"17840001600055", 'dep'=>"84"), - 'CARPEG' => array('nom'=>"TGIcc CARPENTRAS", 'siret'=>"17300111600206", 'dep'=>"84"), - 'CASTEC' => array('nom'=>"TC CASTELNAUDARY", 'siret'=>"173401118", 'dep'=>"11"), - 'CASTEB' => array('nom'=>"SOUS PREFECTURE DE CASTELLANE", 'siret'=>"17040001400024", 'dep'=>"41"), - 'CASTRB' => array('nom'=>"SOUS PREFECTURE DE CASTRES", 'siret'=>"17810001200024", 'dep'=>"81"), - 'CASTRC' => array('nom'=>"TC CASTRES", 'siret'=>"17310111400069", 'dep'=>"81"), - 'CASTRG' => array('nom'=>"TGI CASTRES", 'siret'=>"17310111400291", 'dep'=>"81"), - 'CASTSB' => array('nom'=>"SOUS PREFECTURE DE CASTELSARRASIN", 'siret'=>"17820001000027", 'dep'=>"82"), - 'CAYENA' => array('nom'=>"PREFECTURE DE CAYENNE", 'siret'=>"17973001500015", 'dep'=>"973"), - 'CAYENG' => array('nom'=>"TGI CAYENNE", 'siret'=>"17972111300043", 'dep'=>"973"), - 'CAYENM' => array('nom'=>"TMX CAYENNE", 'siret'=>"17972111300043", 'dep'=>"973"), - 'CERETB' => array('nom'=>"SOUS PREFECTURE DE CERET", 'siret'=>"17660001300021", 'dep'=>"66"), - 'CERGYA' => array('nom'=>"PREFECTURE DE CERGY", 'siret'=>"17950001200010", 'dep'=>"95"), - 'CHALOB' => array('nom'=>"SOUS PREFECTURE DE CHALON SUR SAONE", 'siret'=>"17710001300024", 'dep'=>"71"), - 'CHALOC' => array('nom'=>"TC CHALON SUR SAONE", 'siret'=>"17210111500316", 'dep'=>"71"), - 'CHALOG' => array('nom'=>"TGI CHALON SUR SAONE", 'siret'=>"17210111500076", 'dep'=>"71"), - 'CHAMBA' => array('nom'=>"PREFECTURE DE CHAMBERY", 'siret'=>"17730001900011", 'dep'=>"73"), - 'CHAMBC' => array('nom'=>"TC CHAMBERY", 'siret'=>"17730111600121", 'dep'=>"73"), - 'CHAMBG' => array('nom'=>"TGI CHAMBERY", 'siret'=>"17730111600238", 'dep'=>"73"), - 'CHAROB' => array('nom'=>"SOUS PREFECTURE DE CHAROLLES", 'siret'=>"17710001300032", 'dep'=>"71"), - 'CHAROC' => array('nom'=>"TC CHAROLLES", 'siret'=>"17210111500449", 'dep'=>"71"), - 'CHARTA' => array('nom'=>"PREFECTURE DE CHARTRES", 'siret'=>"17280001300010", 'dep'=>"28"), - 'CHARTC' => array('nom'=>"TC CHARTRES", 'siret'=>"17780111500540", 'dep'=>"28"), - 'CHARTG' => array('nom'=>"TGI CHARTRES", 'siret'=>"17780111500094", 'dep'=>"28"), - 'CHATBB' => array('nom'=>"SOUS PREFECTURE DE CHATEAUBRIANT", 'siret'=>"17440001000040", 'dep'=>"44"), - 'CHATCB' => array('nom'=>"SOUS PREFECTURE DE CHATEAU CHINON", 'siret'=>"17580001000035", 'dep'=>"58"), - 'CHATDB' => array('nom'=>"SOUS PREFECTURE DE CHATEAUDUN", 'siret'=>"17280001300044", 'dep'=>"28"), - 'CHATEA' => array('nom'=>"PREFECTURE DE CHATEAUROUX", 'siret'=>"17360001600013", 'dep'=>"36"), - 'CHATEC' => array('nom'=>"TC CHATEAUROUX", 'siret'=>"17180111100047", 'dep'=>"36"), - 'CHATEG' => array('nom'=>"TGI CHATEAUROUX", 'siret'=>"17180111100054", 'dep'=>"36"), - 'CHATGB' => array('nom'=>"SOUS PREFECTURE DE CHATEAU GONTIER", 'siret'=>"17530001100020", 'dep'=>"53"), - 'CHATIC' => array('nom'=>"TC CHATILLON SUR SEINE", 'siret'=>"17210111500340", 'dep'=>"21"), - 'CHATEB' => array('nom'=>"SOUS PREFECTURE DE CHATEAULIN", 'siret'=>"17290001100047", 'dep'=>"29"), - 'CHATSB' => array('nom'=>"SOUS PREFECTURE DE CHATEAU SALINS", 'siret'=>"17570001200081", 'dep'=>"57"), - 'CHATTB' => array('nom'=>"SOUS PREFECTURE DE CHATEAU THIERRY", 'siret'=>"17020001800027", 'dep'=>"24"), - 'CHAUMA' => array('nom'=>"PREFECTURE DE CHAUMONT", 'siret'=>"17520001300019", 'dep'=>"52"), - 'CHAUMC' => array('nom'=>"TC CHAUMONT", 'siret'=>"17210111500159", 'dep'=>"52"), - 'CHAUMG' => array('nom'=>"TGI CHAUMONT", 'siret'=>"17210111500142", 'dep'=>"52"), - 'CHAUNC' => array('nom'=>"TC CHAUNY", 'siret'=>"17800111100040", 'dep'=>"23"), - 'CHERBB' => array('nom'=>"SOUS PREFECTURE DE CHERBOURG", 'siret'=>"17500001700061", 'dep'=>"50"), - 'CHERBC' => array('nom'=>"TC CHERBOURG", 'siret'=>"17140111000118", 'dep'=>"50"), - 'CHERBG' => array('nom'=>"TGI CHERBOURG", 'siret'=>"17140111000027", 'dep'=>"50"), - 'CHINOB' => array('nom'=>"SOUS PREFECTURE DE CHINON", 'siret'=>"17370001400041", 'dep'=>"37"), - 'CHLONA' => array('nom'=>"PREFECTURE DE CHALONS SUR MARNE / EN CHAMPAGNE", 'siret'=>"17510001500015", 'dep'=>"51"), - 'CHLONC' => array('nom'=>"TC CHALONS EN CHAMPAGNE", 'siret'=>"17510111200035", 'dep'=>"51"), - 'CHLONG' => array('nom'=>"TGI CHALONS EN CHAMPAGNE", 'siret'=>"17510111200068", 'dep'=>"51"), - 'CHARLA' => array('nom'=>"PREFECTURE DE CHARLEVILLE-MEZIERES", 'siret'=>"17080001500019", 'dep'=>"80"), - 'CHMEZC' => array('nom'=>"TC CHARLEVILLE MEZIERES", 'siret'=>"17510111200134", 'dep'=>"80"), - 'CHMEZG' => array('nom'=>"TGI CHARLEVILLE-MEZIERES", 'siret'=>"17510111200126", 'dep'=>"80"), - 'CHOLEB' => array('nom'=>"SOUS PREFECTURE DE CHOLET", 'siret'=>"17490001900020", 'dep'=>"49"), - 'CHTLTB' => array('nom'=>"SOUS PREFECTURE DE CHATELLERAULT", 'siret'=>"17860001100039", 'dep'=>"86"), - 'CHTLTC' => array('nom'=>"TC CHATELLERAULT", 'siret'=>"17860111800569", 'dep'=>"86"), - 'CLAMEB' => array('nom'=>"SOUS PREFECTURE DE CLAMECY", 'siret'=>"17580001000043", 'dep'=>"58"), - 'CLAMEC' => array('nom'=>"TC CLAMECY", 'siret'=>"17180111100294", 'dep'=>"58"), - 'CLERMB' => array('nom'=>"SOUS PREFECTURE DE CLERMONT", 'siret'=>"17600001600020", 'dep'=>"60"), - 'CLFERA' => array('nom'=>"PREFECTURE DE CLERMONT FERRAND", 'siret'=>"17630001000012", 'dep'=>"63"), - 'CLFERC' => array('nom'=>"TC CLERMONT FERRAND", 'siret'=>"17630111700204", 'dep'=>"63"), - 'CLFERG' => array('nom'=>"TGI CLERMONT FERRAND", 'siret'=>"17630111700303", 'dep'=>"63"), - 'CLHERC' => array('nom'=>"TC CLERMONT L'HERAULT", 'siret'=>"173401118", 'dep'=>"34"), - 'COGNAB' => array('nom'=>"SOUS PREFECTURE DE COGNAC", 'siret'=>"17160001800047", 'dep'=>"16"), - 'COGNAC' => array('nom'=>"TC COGNAC", 'siret'=>"17330111000461", 'dep'=>"16"), - 'COLMAA' => array('nom'=>"PREFECTURE DE COLMAR", 'siret'=>"17680001900018", 'dep'=>"68"), - 'COLMAG' => array('nom'=>"TGIcc COLMAR", 'siret'=>"17680111600136", 'dep'=>"68"), - 'COLMAI' => array('nom'=>"TI COLMAR", 'siret'=>"17680111600128", 'dep'=>"68"), - 'COMMEB' => array('nom'=>"SOUS PREFECTURE DE COMMERCY", 'siret'=>"", 'dep'=>"55"), - 'COMPIB' => array('nom'=>"SOUS PREFECTURE DE COMPIEGNE", 'siret'=>"17600001600038", 'dep'=>"60"), - 'COMPIC' => array('nom'=>"TC COMPIEGNE", 'siret'=>"17800111100313", 'dep'=>"60"), - 'COMPIG' => array('nom'=>"TGI COMPIEGNE", 'siret'=>"17800111100305", 'dep'=>"60"), - 'CONDEC' => array('nom'=>"TC CONDE-SUR-NOIREAU", 'siret'=>"17140111000480", 'dep'=>"14"), - 'CONDOB' => array('nom'=>"SOUS PREFECTURE DE CONDOM", 'siret'=>"17320001500035", 'dep'=>"32"), - 'CONFOB' => array('nom'=>"SOUS PREFECTURE DE CONFOLENS", 'siret'=>"17160001800039", 'dep'=>"16"), - 'CORBEC' => array('nom'=>"TC CORBEIL ESSONNES", 'siret'=>"17750111100666", 'dep'=>"91"), - 'CORBEI' => array('nom'=>"TI CORBEIL ESSONNES", 'siret'=>"17750111100047", 'dep'=>"91"), - 'CORTEB' => array('nom'=>"SOUS PREFECTURE DE CORTE", 'siret'=>"17202001800039", 'dep'=>"20"), - 'COSNEB' => array('nom'=>"SOUS PREFECTURE COSNE COURS SUR LOIRE", 'siret'=>"17580001000027", 'dep'=>"58"), - 'COUTAB' => array('nom'=>"SOUS PREFECTURE DE COUTANCES", 'siret'=>"17500001700038", 'dep'=>"50"), - 'COUTAC' => array('nom'=>"TC COUTANCES", 'siret'=>"17140111000308", 'dep'=>"50"), - 'COUTAG' => array('nom'=>"TGI COUTANCES", 'siret'=>"17140111000274", 'dep'=>"50"), - 'CRETEA' => array('nom'=>"PREFECTURE DE CRETEIL", 'siret'=>"17940001500014", 'dep'=>"94"), - 'CRETEC' => array('nom'=>"TC CRETEIL", 'siret'=>"177501111", 'dep'=>"94"), - 'CRETEG' => array('nom'=>"TGI CRETEIL", 'siret'=>"17750111100641", 'dep'=>"94"), - 'CREUSC' => array('nom'=>"TC LE CREUSOT", 'siret'=>"17210111500308", 'dep'=>"71"), - 'CUSSEC' => array('nom'=>"TC CUSSET", 'siret'=>"17630111700113", 'dep'=>"33"), - 'CUSSEG' => array('nom'=>"TGI CUSSET", 'siret'=>"17630111700063", 'dep'=>"33"), - 'DAXB' => array('nom'=>"SOUS PREFECTURE DE DAX", 'siret'=>"17400001800047", 'dep'=>"40"), - 'DAXC' => array('nom'=>"TC DAX", 'siret'=>"176401115", 'dep'=>"40"), - 'DAXG' => array('nom'=>"TGI DAX", 'siret'=>"17640111500264", 'dep'=>"40"), - 'DIEB' => array('nom'=>"SOUS PREFECTURE DE DIE", 'siret'=>"17260001700039", 'dep'=>"26"), - 'DIEC' => array('nom'=>"TC DIE", 'siret'=>"17380111900186", 'dep'=>"26"), - 'DIEPPB' => array('nom'=>"SOUS PREFECTURE DE DIEPPE", 'siret'=>"17760001200021", 'dep'=>"76"), - 'DIEPPC' => array('nom'=>"TC DIEPPE", 'siret'=>"17760111900098", 'dep'=>"76"), - 'DIEPPG' => array('nom'=>"TGI DIEPPE", 'siret'=>"17760111900023", 'dep'=>"76"), - 'DIGNEA' => array('nom'=>"PREFECTURE DE DIGNE", 'siret'=>"17040001400016", 'dep'=>"40"), - 'DIGNEG' => array('nom'=>"TGI DIGNE", 'siret'=>"17130111200297", 'dep'=>"40"), - 'DIJONA' => array('nom'=>"PREFECTURE DE DIJON", 'siret'=>"17210001800016", 'dep'=>"21"), - 'DIJONC' => array('nom'=>"TC DIJON", 'siret'=>"17210111500498", 'dep'=>"21"), - 'DIJONG' => array('nom'=>"TGI DIJON", 'siret'=>"17210111500480", 'dep'=>"21"), - 'DINANB' => array('nom'=>"SOUS PREFECTURE DE DINAN", 'siret'=>"17220001600027", 'dep'=>"22"), - 'DINANG' => array('nom'=>"TGIcc DINAN", 'siret'=>"17350111500450", 'dep'=>"22"), - 'DOLEB' => array('nom'=>"SOUS PREFECTURE DE DOLE", 'siret'=>"17390001000021", 'dep'=>"39"), - 'DOLEC' => array('nom'=>"TC DOLE", 'siret'=>"17250111600369", 'dep'=>"39"), - 'DOLEG' => array('nom'=>"TGI DOLE", 'siret'=>"17250111600229", 'dep'=>"39"), - 'DOUAIB' => array('nom'=>"SOUS PREFECTURE DE DOUAI", 'siret'=>"17590001800086", 'dep'=>"59"), - 'DOUAIC' => array('nom'=>"TC DOUAI", 'siret'=>"17590111500899", 'dep'=>"59"), - 'DOUAIG' => array('nom'=>"TGI DOUAI", 'siret'=>"17590111500576", 'dep'=>"59"), - 'DRAGUB' => array('nom'=>"SOUS PREFECTURE DE DRAGUIGNAN", 'siret'=>"17830001800", 'dep'=>"83"), - 'DRAGUC' => array('nom'=>"TC DRAGUIGNAN", 'siret'=>"17130111200610", 'dep'=>"83"), - 'DRAGUG' => array('nom'=>"TGI DRAGUIGNAN", 'siret'=>"17130111200792", 'dep'=>"83"), - 'DREUXB' => array('nom'=>"SOUS PREFECTURE DE DREUX", 'siret'=>"17280001300069", 'dep'=>"28"), - 'DREUXC' => array('nom'=>"TC DREUX", 'siret'=>"17780111500557", 'dep'=>"28"), - 'DUNKEB' => array('nom'=>"SOUS PREFECTURE DE DUNKERQUE", 'siret'=>"17590001800029", 'dep'=>"59"), - 'DUNKEC' => array('nom'=>"TC DUNKERQUE", 'siret'=>"17590111500741", 'dep'=>"59"), - 'DUNKEG' => array('nom'=>"TGI DUNKERQUE", 'siret'=>"17590111500725", 'dep'=>"59"), - 'ELBEUC' => array('nom'=>"TC ELBEUF", 'siret'=>"17760111900403", 'dep'=>"76"), - 'EPERNB' => array('nom'=>"SOUS PREFECTURE DE EPERNAY", 'siret'=>"17510001500056", 'dep'=>"51"), - 'EPERNC' => array('nom'=>"TC EPERNAY", 'siret'=>"17510111200027", 'dep'=>"51"), - 'EPINAA' => array('nom'=>"PREFECTURE DE EPINAL", 'siret'=>"17880001700018", 'dep'=>"88"), - 'EPINAC' => array('nom'=>"TC EPINAL", 'siret'=>"17540111600223", 'dep'=>"88"), - 'EPINAG' => array('nom'=>"TGI EPINAL", 'siret'=>"17540111600207", 'dep'=>"88"), - 'ESPALC' => array('nom'=>"TC ESPALION", 'siret'=>"17340111800299", 'dep'=>"12"), - 'ETAMPB' => array('nom'=>"SOUS PREFECTURE DE ETAMPES", 'siret'=>"17910001100057", 'dep'=>"91"), - 'EULETC' => array('nom'=>"TC EULET", 'siret'=>"", 'dep'=>"76"), - 'EVREUA' => array('nom'=>"PREFECTURE DE EVREUX", 'siret'=>"17270001500016", 'dep'=>"27"), - 'EVREUC' => array('nom'=>"TC EVREUX", 'siret'=>"177601119", 'dep'=>"27"), - 'EVREUG' => array('nom'=>"TGI EVREUX", 'siret'=>"17760111900072", 'dep'=>"27"), - 'EVRYA' => array('nom'=>"PREFECTURE DE EVRY", 'siret'=>"17910001100016", 'dep'=>"91"), - 'EVRYC' => array('nom'=>"TC EVRY", 'siret'=>"17750111101128", 'dep'=>"91"), - 'EVRYG' => array('nom'=>"TGI EVRY", 'siret'=>"17750111100518", 'dep'=>"91"), - 'FALAIC' => array('nom'=>"TC FALAISE", 'siret'=>"", 'dep'=>"14"), - 'FECAMC' => array('nom'=>"TC FECAMP (de terre et de mer)", 'siret'=>"17760111900429", 'dep'=>"76"), - 'FIGEAB' => array('nom'=>"SOUS PREFECTURE DE FIGEAC", 'siret'=>"17460001500047", 'dep'=>"46"), - 'FLERSC' => array('nom'=>"TC FLERS", 'siret'=>"", 'dep'=>"61"), - 'FLORAB' => array('nom'=>"SOUS PREFECTURE DE FLORAC", 'siret'=>"", 'dep'=>"48"), - 'FOIXA' => array('nom'=>"PREFECTURE DE FOIX", 'siret'=>"17090001300013", 'dep'=>"90"), - 'FOIXC' => array('nom'=>"TC FOIX", 'siret'=>"17310111400374", 'dep'=>"90"), - 'FOIXG' => array('nom'=>"TGI FOIX", 'siret'=>"17310111400150", 'dep'=>"90"), - 'FONTB' => array('nom'=>"SOUS PREFECTURE DE FONTAINEBLEAU", 'siret'=>"17770001000081", 'dep'=>"77"), - 'FONTEB' => array('nom'=>"SOUS PREFECTURE DE FONTENAY LE COMTE", 'siret'=>"17850001300036", 'dep'=>"85"), - 'FONTG' => array('nom'=>"TGI FONTAINEBLEAU", 'siret'=>"17750111100922", 'dep'=>"77"), - 'FORBAB' => array('nom'=>"SOUS PREFECTURE DE FORBACH", 'siret'=>"17570001200107", 'dep'=>"57"), - 'FORCAB' => array('nom'=>"SOUS PREFECTURE DE FORCALQUIER", 'siret'=>"17040001400032", 'dep'=>"43"), - 'FORTFA' => array('nom'=>"PREFECTURE DE FORT DE FRANCE", 'siret'=>"17972001600015", 'dep'=>"972"), - 'FORTFG' => array('nom'=>"TGI FORT DE FRANCE", 'siret'=>"17972111300118", 'dep'=>"972"), - 'FORTFM' => array('nom'=>"TMX FORT DE FRANCE", 'siret'=>"17972111300142", 'dep'=>"972"), - 'FOUGEB' => array('nom'=>"SOUS PREFECTURE DE FOUGERES", 'siret'=>"17350001800044", 'dep'=>"35"), - 'FREJUC' => array('nom'=>"TC FREJUS", 'siret'=>"17130111200594", 'dep'=>"83"), - 'GAPA' => array('nom'=>"PREFECTURE DE GAP", 'siret'=>"17050001100011", 'dep'=>"50"), - 'GAPC' => array('nom'=>"TC GAP", 'siret'=>"17380111900269", 'dep'=>"50"), - 'GAPG' => array('nom'=>"TGI GAP", 'siret'=>"17380111900277", 'dep'=>"50"), - 'GEXB' => array('nom'=>"SOUS PREFECTURE DE GEX", 'siret'=>"17010001000033", 'dep'=>"11"), - 'GOURDB' => array('nom'=>"SOUS PREFECTURE DE GOURDON", 'siret'=>"17460001500039", 'dep'=>"46"), - 'GOURNC' => array('nom'=>"TC GOURNAY EN BRAY", 'siret'=>"", 'dep'=>"76"), - 'GRANVC' => array('nom'=>"TC GRANVILLE", 'siret'=>"", 'dep'=>"50"), - 'GRASSB' => array('nom'=>"SOUS PREFECTURE DE GRASSE", 'siret'=>"17060001900054", 'dep'=>"61"), - 'GRASSC' => array('nom'=>"TC GRASSE", 'siret'=>"17130111200404", 'dep'=>"61"), - 'GRASSG' => array('nom'=>"TGI GRASSE", 'siret'=>"17130111200651", 'dep'=>"61"), - 'GRAYC' => array('nom'=>"TC GRAY", 'siret'=>"17250111600294", 'dep'=>"70"), - 'GRENOA' => array('nom'=>"PREFECTURE DE GRENOBLE", 'siret'=>"17380001200010", 'dep'=>"38"), - 'GRENOC' => array('nom'=>"TC GRENOBLE", 'siret'=>"17380111900129", 'dep'=>"38"), - 'GRENOG' => array('nom'=>"TGI GRENOBLE", 'siret'=>"17380111900210", 'dep'=>"38"), - 'GUEBWB' => array('nom'=>"SOUS PREFECTURE DE GUEBWILLER", 'siret'=>"17680001900026", 'dep'=>"68"), - 'GUEREA' => array('nom'=>"PREFECTURE DE GUERET", 'siret'=>"17230001400013", 'dep'=>"23"), - 'GUEREG' => array('nom'=>"TGIcc GUERET", 'siret'=>"17870111600026", 'dep'=>"23"), - 'GUINGB' => array('nom'=>"SOUS PREFECTURE DE GUINGAMP", 'siret'=>"17220001600035", 'dep'=>"22"), - 'GUINGG' => array('nom'=>"TGIcc GUINGAMP", 'siret'=>"17350111500484", 'dep'=>"22"), - 'HAGUEB' => array('nom'=>"SOUS PREFECTURE DE HAGUENAU", 'siret'=>"17670001100032", 'dep'=>"67"), - 'HAVREB' => array('nom'=>"SOUS PREFECTURE DE LE HAVRE", 'siret'=>"17760001200039", 'dep'=>"76"), - 'HAVREC' => array('nom'=>"TC LE HAVRE", 'siret'=>"17760111900080", 'dep'=>"76"), - 'HAVREG' => array('nom'=>"TGI LE HAVRE", 'siret'=>"17760111900049", 'dep'=>"76"), - 'HAZEBG' => array('nom'=>"TGIcc HAZEBROUCK", 'siret'=>"17590111500600", 'dep'=>"59"), - 'HONFLC' => array('nom'=>"TC HONFLEUR", 'siret'=>"17140111000571", 'dep'=>"14"), - 'ILEROC' => array('nom'=>"TC L'ILE ROUSSE", 'siret'=>"17202111500081", 'dep'=>"20"), - 'ISSOIB' => array('nom'=>"SOUS PREFECTURE DE ISSOIRE", 'siret'=>"17630001000046", 'dep'=>"63"), - 'ISSOIC' => array('nom'=>"TC ISSOIRE", 'siret'=>"17630111700212", 'dep'=>"63"), - 'ISSOUB' => array('nom'=>"SOUS PREFECTURE DE ISSOUDUN", 'siret'=>"17360001600047", 'dep'=>"36"), - 'ISSOUC' => array('nom'=>"TC ISSOUDUN", 'siret'=>"17180111100146", 'dep'=>"36"), - 'ISTREB' => array('nom'=>"SOUS PREFECTURE DE ISTRES", 'siret'=>"17130001500160", 'dep'=>"13"), - 'JOIGNC' => array('nom'=>"TC JOIGNY", 'siret'=>"17750111100823", 'dep'=>"89"), - 'JONZAB' => array('nom'=>"SOUS PREFECTURE DE JONZAC", 'siret'=>"17170001600040", 'dep'=>"17"), - 'JONZAC' => array('nom'=>"TC JONZAC", 'siret'=>"", 'dep'=>"17"), - 'LACHAB' => array('nom'=>"SOUS PREFECTURE DE LA CHATRE", 'siret'=>"17360001600021", 'dep'=>"36"), - 'LAFLEB' => array('nom'=>"SOUS PREFECTURE DE LA FLECHE", 'siret'=>"17720001100027", 'dep'=>"72"), - 'LAIGLC' => array('nom'=>"TC L'AIGLE", 'siret'=>"", 'dep'=>"61"), - 'LANGOB' => array('nom'=>"SOUS PREFECTURE DE LANGON", 'siret'=>" 1733000130008", 'dep'=>"33"), - 'LANGRB' => array('nom'=>"SOUS PREFECTURE DE LANGRES", 'siret'=>"17520001300035", 'dep'=>"52"), - 'LANGRC' => array('nom'=>"TC LANGRES", 'siret'=>"", 'dep'=>"52"), - 'LANNIB' => array('nom'=>"SOUS PREFECTURE DE LANNION", 'siret'=>"17220001600043", 'dep'=>"22"), - 'LAONA' => array('nom'=>"PREFECTURE DE LAON", 'siret'=>"17020001800019", 'dep'=>"20"), - 'LAONG' => array('nom'=>"TGI LAON", 'siret'=>"17800111100248", 'dep'=>"20"), - 'LARGEB' => array('nom'=>"SOUS PREFECTURE DE LARGENTIERE", 'siret'=>"17070001700032", 'dep'=>"71"), - 'LATOUB' => array('nom'=>"SOUS PREFECTURE DE LA TOUR DU PIN", 'siret'=>"17380001200028", 'dep'=>"38"), - 'LATRIB' => array('nom'=>"SOUS PREFECTURE DE LA TRINITE", 'siret'=>"17972001600031", 'dep'=>"972"), - 'LAVALA' => array('nom'=>"PREFECTURE DE LAVAL", 'siret'=>"17530001100053", 'dep'=>"53"), - 'LAVALC' => array('nom'=>"TC LAVAL", 'siret'=>"17490111600205", 'dep'=>"53"), - 'LAVALG' => array('nom'=>"TGI LAVAL", 'siret'=>"17490111600213", 'dep'=>"53"), - 'LEBLAB' => array('nom'=>"SOUS PREFECTURE DE BLANC", 'siret'=>"17360001600039", 'dep'=>"36"), - 'LEMARB' => array('nom'=>"SOUS PREFECTURE DE MARIN", 'siret'=>"17972001600023", 'dep'=>"972"), - 'LENSB' => array('nom'=>"SOUS PREFECTURE DE LENS", 'siret'=>"", 'dep'=>"62"), - 'LEPUYA' => array('nom'=>"PREFECTURE DE LE PUY EN VELAY", 'siret'=>"17430001200013", 'dep'=>"43"), - 'LEPUYC' => array('nom'=>"TC PUY EN VELAY", 'siret'=>"17630111700576", 'dep'=>"43"), - 'LEPUYG' => array('nom'=>"TGI PUY EN VELAY", 'siret'=>"17630111700071", 'dep'=>"43"), - 'LERAIB' => array('nom'=>"SOUS PREFECTURE DU RAINCY", 'siret'=>"17930001700037", 'dep'=>"93"), - 'LESANB' => array('nom'=>"SOUS PREFECTURE DES ANDELYS", 'siret'=>"17270001500024", 'dep'=>"27"), - 'LESPAB' => array('nom'=>"SOUS PREFECTURE DE LESPARRE MEDOC", 'siret'=>"", 'dep'=>"33"), - 'LESSAB' => array('nom'=>"SOUS PREFECTURE DES SABLES D'OLONNE", 'siret'=>"17850001300028", 'dep'=>"85"), - 'LEVIGB' => array('nom'=>"SOUS PREFECTURE DE VIGAN", 'siret'=>"17300001900039", 'dep'=>"30"), - 'LHAYLB' => array('nom'=>"SOUS PREFECTURE DE L'HAY LES ROSES", 'siret'=>"17940001500001", 'dep'=>"94"), - 'LIBOUB' => array('nom'=>"SOUS PREFECTURE DE LIBOURNE", 'siret'=>"", 'dep'=>"33"), - 'LIBOUC' => array('nom'=>"TC LIBOURNE", 'siret'=>"17330111000479", 'dep'=>"33"), - 'LIBOUG' => array('nom'=>"TGI LIBOURNE", 'siret'=>"17330111000065", 'dep'=>"33"), - 'LILLEA' => array('nom'=>"PREFECTURE DE LILLE", 'siret'=>"17590001800011", 'dep'=>"59"), - 'LILLEC' => array('nom'=>"TC LILLE", 'siret'=>"17590111500519", 'dep'=>"59"), - 'LILLEG' => array('nom'=>"TGI LILLE", 'siret'=>"17590111500709", 'dep'=>"59"), - 'LIMOGA' => array('nom'=>"PREFECTURE DE LIMOGES", 'siret'=>"17870001900015", 'dep'=>"87"), - 'LIMOGC' => array('nom'=>"TC LIMOGES", 'siret'=>"17870111600067", 'dep'=>"87"), - 'LIMOGG' => array('nom'=>"TGI LIMOGES", 'siret'=>"17870111600059", 'dep'=>"87"), - 'LIMOUB' => array('nom'=>"SOUS PREFECTURE DE LIMOUX", 'siret'=>"17110001900032", 'dep'=>"11"), - 'LIMOUC' => array('nom'=>"TC LIMOUX", 'siret'=>"", 'dep'=>"11"), - 'LISIEB' => array('nom'=>"SOUS PREFECTURE DE LISIEUX", 'siret'=>"17140001300024", 'dep'=>"14"), - 'LISIEC' => array('nom'=>"TC LISIEUX", 'siret'=>"17140111000548", 'dep'=>"14"), - 'LISIEG' => array('nom'=>"TGI LISIEUX", 'siret'=>"17140111000522", 'dep'=>"14"), - 'LOCHEB' => array('nom'=>"SOUS PREFECTURE DE LOCHES", 'siret'=>"17370001400025", 'dep'=>"37"), - 'LODEVB' => array('nom'=>"SOUS PREFECTURE DE LODEVE", 'siret'=>"17340001100032", 'dep'=>"34"), - 'LODEVC' => array('nom'=>"TC LODEVE", 'siret'=>"", 'dep'=>"34"), - 'LONSA' => array('nom'=>"PREFECTURE DE LONS LE SAUNIER", 'siret'=>"17390001000013", 'dep'=>"39"), - 'LONSC' => array('nom'=>"TC LONS LE SAUNIER", 'siret'=>"17250111600377", 'dep'=>"39"), - 'LONSG' => array('nom'=>"TGI LONS LE SAUNIER", 'siret'=>"17250111600336", 'dep'=>"39"), - 'LORIEB' => array('nom'=>"SOUS PREFECTURE DE LORIENT", 'siret'=>"17560001400039", 'dep'=>"56"), - 'LORIEC' => array('nom'=>"TC LORIENT", 'siret'=>"17350111500427", 'dep'=>"56"), - 'LORIEG' => array('nom'=>"TGI LORIENT", 'siret'=>"17350111500088", 'dep'=>"56"), - 'LOUHAB' => array('nom'=>"SOUS PREFECTURE DE LOUHANS", 'siret'=>"17710001300040", 'dep'=>"71"), - 'LOUHAC' => array('nom'=>"TC LOUHANS", 'siret'=>"17210111500282", 'dep'=>"71"), - 'LOUVIC' => array('nom'=>"TC LOUVIERS", 'siret'=>"", 'dep'=>"27"), - 'LUNEVB' => array('nom'=>"SOUS PREFECTURE DE LUNEVILLE", 'siret'=>"17540001900063", 'dep'=>"54"), - 'LUREB' => array('nom'=>"SOUS PREFECTURE DE LURE", 'siret'=>"17700001500020", 'dep'=>"70"), - 'LUREG' => array('nom'=>"TGIcc LURE", 'siret'=>"17250111600021", 'dep'=>"70"), - 'LYONA' => array('nom'=>"PREFECTURE DE LYON", 'siret'=>"17690001700011", 'dep'=>"69"), - 'LYONC' => array('nom'=>"TC LYON", 'siret'=>"17690111400395", 'dep'=>"69"), - 'LYONG' => array('nom'=>"TGI LYON", 'siret'=>"17690111400403", 'dep'=>"69"), - 'MACONA' => array('nom'=>"PREFECTURE DE MACON", 'siret'=>"17710001300016", 'dep'=>"71"), - 'MACONC' => array('nom'=>"TC MACON", 'siret'=>"17210111500274", 'dep'=>"71"), - 'MACONG' => array('nom'=>"TGI MACON", 'siret'=>"17210111500092", 'dep'=>"71"), - 'MAMERB' => array('nom'=>"SOUS PREFECTURE DE MAMERS", 'siret'=>"17720001100035", 'dep'=>"72"), - 'MAMERC' => array('nom'=>"TC MAMERS", 'siret'=>"17490111600353", 'dep'=>"72"), - 'MAMOUA' => array('nom'=>"PREFECTURE DE MAYOTTE", 'siret'=>"13000334600017", 'dep'=>"976"), - 'MAMOUP' => array('nom'=>"TPI MAMOUDZOU", 'siret'=>"130003395", 'dep'=>"976"), - 'MAMOUS' => array('nom'=>"TSA MAMOUDZOU", 'siret'=>"13000339500014", 'dep'=>"976"), - 'MANOSC' => array('nom'=>"TC MANOSQUE", 'siret'=>"17130111200255", 'dep'=>"41"), - 'MANSA' => array('nom'=>"PREFECTURE DU MANS", 'siret'=>"17720001100019", 'dep'=>"72"), - 'MANSC' => array('nom'=>"TC LE MANS", 'siret'=>"17490111600031", 'dep'=>"72"), - 'MANSG' => array('nom'=>"TGI LE MANS", 'siret'=>"17490111600049", 'dep'=>"72"), - 'MANTEB' => array('nom'=>"SOUS PREFECTURE DE MANTES LA JOLIE", 'siret'=>"17780001800042", 'dep'=>"78"), - 'MARENC' => array('nom'=>"TC MARENNES", 'siret'=>"17860111800288", 'dep'=>"17"), - 'MARMAB' => array('nom'=>"SOUS PREFECTURE DE MARMANDE", 'siret'=>"17470001300033", 'dep'=>"47"), - 'MARMAC' => array('nom'=>"TC MARMANDE", 'siret'=>"17470111000341", 'dep'=>"47"), - 'MARMAG' => array('nom'=>"TGI MARMANDE", 'siret'=>"17470111000341", 'dep'=>"47"), - 'MARSEA' => array('nom'=>"PREFECTURE DE MARSEILLE", 'siret'=>"17130001500012", 'dep'=>"13"), - 'MARSEC' => array('nom'=>"TC MARSEILLE", 'siret'=>"17130111200057", 'dep'=>"13"), - 'MARSEI' => array('nom'=>"TI MARSEILLE", 'siret'=>"17130111200321", 'dep'=>"13"), - 'MAURIB' => array('nom'=>"SOUS PREFECTURE DE MAURIAC", 'siret'=>"17150001000037", 'dep'=>"15"), - 'MAYENB' => array('nom'=>"SOUS PREFECTURE DE MAYENNE", 'siret'=>"17530001100038", 'dep'=>"53"), - 'MAYENC' => array('nom'=>"TC MAYENNE", 'siret'=>"17490111600270", 'dep'=>"53"), - 'MEAUXB' => array('nom'=>"SOUS PREFECTURE DE MEAUX", 'siret'=>"17770001000099", 'dep'=>"77"), - 'MEAUXC' => array('nom'=>"TC MEAUX", 'siret'=>"17750111100237", 'dep'=>"77"), - 'MEAUXG' => array('nom'=>"TGI MEAUX", 'siret'=>"17750111101003", 'dep'=>"77"), - 'MELUNA' => array('nom'=>"PREFECTURE DE MELUN", 'siret'=>"17770001000016", 'dep'=>"77"), - 'MELUNC' => array('nom'=>"TC MELUN", 'siret'=>"17750111100203", 'dep'=>"77"), - 'MELUNG' => array('nom'=>"TGI MELUN", 'siret'=>"17750111101177", 'dep'=>"77"), - 'MENDEA' => array('nom'=>"PREFECTURE DE MENDE", 'siret'=>"17480001100010", 'dep'=>"48"), - 'MENDEC' => array('nom'=>"TC MENDE", 'siret'=>"17300111600131", 'dep'=>"48"), - 'MENDEG' => array('nom'=>"TGIcc MENDE", 'siret'=>"17300111600131", 'dep'=>"48"), - 'MENTOC' => array('nom'=>"TC MENTON", 'siret'=>"17130111200396", 'dep'=>"65"), - 'METZA' => array('nom'=>"PREFECTURE DE METZ", 'siret'=>"17570001200016", 'dep'=>"57"), - 'METZB' => array('nom'=>"SOUS PREFECTURE DE METZ", 'siret'=>"", 'dep'=>"57"), - 'METZG' => array('nom'=>"TGIcc METZ", 'siret'=>"17570111900059", 'dep'=>"57"), - 'METZI' => array('nom'=>"TI METZ", 'siret'=>"17570111900125", 'dep'=>"57"), - 'MILLAB' => array('nom'=>"SOUS PREFECTURE DE MILLAU", 'siret'=>"17120001700027", 'dep'=>"12"), - 'MILLAC' => array('nom'=>"TC MILLAU", 'siret'=>"17340111800257", 'dep'=>"12"), - 'MILLAG' => array('nom'=>"TGI MILLAU", 'siret'=>"17340111800133", 'dep'=>"12"), - 'MIRANB' => array('nom'=>"SOUS PREFECTURE DE MIRANDE", 'siret'=>"17320001500027", 'dep'=>"32"), - 'MIRECC' => array('nom'=>"TC MIRECOURT", 'siret'=>"17540111600165", 'dep'=>"88"), - 'MOLSHB' => array('nom'=>"SOUS PREFECTURE DE MOLSHEIM", 'siret'=>"17670001100073", 'dep'=>"67"), - 'MONTBB' => array('nom'=>"SOUS PREFECTURE DE MONTBELIARD", 'siret'=>"17250001900051", 'dep'=>"25"), - 'MONTBG' => array('nom'=>"TGIcc MONTBELIARD", 'siret'=>"17250111600120", 'dep'=>"25"), - 'MONTDB' => array('nom'=>"SOUS PREFECTURE DE MONTBARD", 'siret'=>"17210001800057", 'dep'=>"21"), - 'MONTEC' => array('nom'=>"TC MONTEREAU", 'siret'=>"17750111100153", 'dep'=>"77"), - 'MONTIB' => array('nom'=>"SOUS PREFECTURE DE MONTDIDIER", 'siret'=>"17800001400039", 'dep'=>"80"), - 'MONTIC' => array('nom'=>"TC MONTELIMAR", 'siret'=>"17380111900368", 'dep'=>"26"), - 'MONTLB' => array('nom'=>"SOUS PREFECTURE DE MONTLUCON", 'siret'=>"17030001600046", 'dep'=>"31"), - 'MONTLC' => array('nom'=>"TC MONTLUCON", 'siret'=>"17630111700121", 'dep'=>"31"), - 'MONTLG' => array('nom'=>"TGI MONTLUCON", 'siret'=>"17630111700279", 'dep'=>"31"), - 'MONTA' => array('nom'=>"PREFECTURE DE MONT DE MARSAN", 'siret'=>"17400001800013", 'dep'=>"40"), - 'MONTMC' => array('nom'=>"TC MONT DE MARSAN", 'siret'=>"17640111500397", 'dep'=>"40"), - 'MONTMG' => array('nom'=>"TGI MONT DE MARSAN", 'siret'=>"17640111500256", 'dep'=>"40"), - 'MONTNA' => array('nom'=>"PREFECTURE DE MONTAUBAN", 'siret'=>"17820001000019", 'dep'=>"82"), - 'MONTNC' => array('nom'=>"TC MONTAUBAN", 'siret'=>"17310111400309", 'dep'=>"82"), - 'MONTNG' => array('nom'=>"TGI MONTAUBAN", 'siret'=>"17310111400143", 'dep'=>"82"), - 'MONTOB' => array('nom'=>"SOUS PREFECTURE DE MONTMORILLON", 'siret'=>"17860001100047", 'dep'=>"86"), - 'MONTPA' => array('nom'=>"PREFECTURE DE MONTPELLIER", 'siret'=>"17340001100016", 'dep'=>"34"), - 'MONTPC' => array('nom'=>"TC MONTPELLIER", 'siret'=>"17340111800596", 'dep'=>"34"), - 'MONTPG' => array('nom'=>"TGI MONTPELLIER", 'siret'=>"17340111800588", 'dep'=>"34"), - 'MONTRB' => array('nom'=>"SOUS PREFECTURE DE MONTBRISON", 'siret'=>"17420001400036", 'dep'=>"42"), - 'MONTRG' => array('nom'=>"TGIcc MONTBRISON", 'siret'=>"17690111400536", 'dep'=>"42"), - 'MONTSB' => array('nom'=>"SOUS PREFECTURE DE MONTARGIS", 'siret'=>"17450001700044", 'dep'=>"45"), - 'MONTSC' => array('nom'=>"TC MONTARGIS", 'siret'=>"17450111400162", 'dep'=>"45"), - 'MONTSG' => array('nom'=>"TGI MONTARGIS", 'siret'=>"17450111400071", 'dep'=>"45"), - 'MONTUB' => array('nom'=>"SOUS PREFECTURE DE MONTREUIL SUR MER", 'siret'=>"17620001200068", 'dep'=>"62"), - 'MONTYB' => array('nom'=>"SOUS PREFECTURE DE MONTMORENCY", 'siret'=>"17950001200051", 'dep'=>"95"), - 'MORLAB' => array('nom'=>"SOUS PREFECTURE DE MORLAIX", 'siret'=>"17290001100070", 'dep'=>"29"), - 'MORLAC' => array('nom'=>"TC MORLAIX", 'siret'=>"17350111500302", 'dep'=>"29"), - 'MORLAG' => array('nom'=>"TGI MORLAIX", 'siret'=>"17350111500492", 'dep'=>"29"), - 'MORTAB' => array('nom'=>"SOUS PREFECTURE DE MORTAGNE AU PERCHE", 'siret'=>"17610001400032", 'dep'=>"61"), - 'MOULIA' => array('nom'=>"PREFECTURE DE MOULINS", 'siret'=>"17030001600012", 'dep'=>"30"), - 'MOULIC' => array('nom'=>"TC MOULINS", 'siret'=>"17630111700139", 'dep'=>"30"), - 'MOULIG' => array('nom'=>"TGI MOULINS", 'siret'=>"17630111700485", 'dep'=>"30"), - 'MULHOB' => array('nom'=>"SOUS PREFECTURE DE MULHOUSE", 'siret'=>"17680001900034", 'dep'=>"68"), - 'MULHOG' => array('nom'=>"TGIcc MULHOUSE", 'siret'=>"17680111600110", 'dep'=>"68"), - 'MULHOI' => array('nom'=>"TI MULHOUSE", 'siret'=>"17680111600102", 'dep'=>"68"), - 'MURETB' => array('nom'=>"SOUS PREFECTURE DE MURET", 'siret'=>"17310001700024", 'dep'=>"31"), - 'NANCYA' => array('nom'=>"PREFECTURE DE NANCY", 'siret'=>"17540001900014", 'dep'=>"54"), - 'NANCYC' => array('nom'=>"TC NANCY", 'siret'=>"17540111600272", 'dep'=>"54"), - 'NANCYG' => array('nom'=>"TGI NANCY", 'siret'=>"17540111600116", 'dep'=>"54"), - 'NANTEA' => array('nom'=>"PREFECTURE DE NANTES", 'siret'=>"17440001000016", 'dep'=>"44"), - 'NANTEC' => array('nom'=>"TC NANTES", 'siret'=>"17350111500203", 'dep'=>"44"), - 'NANTEG' => array('nom'=>"TGI NANTES", 'siret'=>"17350111500864", 'dep'=>"44"), - 'NANTRA' => array('nom'=>"PREFECTURE DE NANTERRE", 'siret'=>"17920001900018", 'dep'=>"92"), - 'NANTRC' => array('nom'=>"TC NANTERRE", 'siret'=>"17780111500441", 'dep'=>"92"), - 'NANTRG' => array('nom'=>"TGI NANTERRE", 'siret'=>"17780111500151", 'dep'=>"92"), - 'NANTUB' => array('nom'=>"SOUS PREFECTURE DE NANTUA", 'siret'=>"17010001000041", 'dep'=>"11"), - 'NARBOB' => array('nom'=>"SOUS PREFECTURE DE NARBONNE", 'siret'=>"17110001900024", 'dep'=>"11"), - 'NARBOC' => array('nom'=>"TC NARBONNE", 'siret'=>"17340111800075", 'dep'=>"11"), - 'NARBOG' => array('nom'=>"TGI NARBONNE", 'siret'=>"17340111800083", 'dep'=>"11"), - 'NERACB' => array('nom'=>"SOUS PREFECTURE DE NERAC", 'siret'=>"17470001300041", 'dep'=>"47"), - 'NERACC' => array('nom'=>"TC NERAC", 'siret'=>"", 'dep'=>"47"), - 'NEUFCB' => array('nom'=>"SOUS PREFECTURE DE NEUFCHATEAU", 'siret'=>"17880001700026", 'dep'=>"88"), - 'NEUFCC' => array('nom'=>"TC NEUFCHATEL EN BRAY", 'siret'=>"177601119", 'dep'=>"76"), - 'NEVERA' => array('nom'=>"PREFECTURE DE NEVERS", 'siret'=>"17580001000019", 'dep'=>"58"), - 'NEVERC' => array('nom'=>"TC NEVERS", 'siret'=>"17180111100351", 'dep'=>"58"), - 'NEVERG' => array('nom'=>"TGI NEVERS", 'siret'=>"17180111100401", 'dep'=>"58"), - 'NICEA' => array('nom'=>"PREFECTURE DE NICE", 'siret'=>"17060001900013", 'dep'=>"62"), - 'NICEC' => array('nom'=>"TC NICE", 'siret'=>"17130111200677", 'dep'=>"60"), - 'NICEG' => array('nom'=>"TGI NICE", 'siret'=>"17130111200289", 'dep'=>"63"), - 'NIMESI' => array('nom'=>"TI NIMES", 'siret'=>"17300111600099", 'dep'=>"30"), - 'NIMESA' => array('nom'=>"PREFECTURE DE NIMES", 'siret'=>"17300001900013", 'dep'=>"30"), - 'NIMESC' => array('nom'=>"TC NIMES", 'siret'=>"17300111600248", 'dep'=>"30"), - 'NIMESG' => array('nom'=>"TGI NIMES", 'siret'=>"17300111600107", 'dep'=>"30"), - 'NIORTA' => array('nom'=>"PREFECTURE DE NIORT", 'siret'=>"17790001600011", 'dep'=>"79"), - 'NIORTC' => array('nom'=>"TC NIORT", 'siret'=>"17860111800619", 'dep'=>"79"), - 'NIORTG' => array('nom'=>"TGI NIORT", 'siret'=>"17860111800114", 'dep'=>"79"), - 'NOGEMB' => array('nom'=>"SOUS PREFECTURE DE NOGENT SUR MARNE", 'siret'=>"1794000150001", 'dep'=>"94"), - 'NOGENB' => array('nom'=>"SOUS PREFECTURE DE NOGENT SUR SEINE", 'siret'=>"17100001100022", 'dep'=>"10"), - 'NOGERB' => array('nom'=>"SOUS PREFECTURE DE NOGENT LE ROTROU", 'siret'=>"17280001300051", 'dep'=>"28"), - 'NONTRB' => array('nom'=>"SOUS PREFECTURE DE NONTRON", 'siret'=>"17240001200057", 'dep'=>"24"), - 'NOUMEM' => array('nom'=>"TMX NOUMEA", 'siret'=>"13000313000015", 'dep'=>"988"), - 'NOUMEP' => array('nom'=>"TPI NOUMEA", 'siret'=>"130003130", 'dep'=>"988"), - 'NUITSC' => array('nom'=>"TC NUITS ST GEORGES", 'siret'=>"", 'dep'=>"21"), - 'NYONSB' => array('nom'=>"SOUS PREFECTURE DE NYONS", 'siret'=>"17260001700047", 'dep'=>"26"), - 'OLOROB' => array('nom'=>"SOUS PREFECTURE DE OLORON STE MARIE", 'siret'=>"17640001800071", 'dep'=>"64"), - 'OLOROC' => array('nom'=>"TC OLORON SAINTE MARIE", 'siret'=>"17640111500272", 'dep'=>"64"), - 'ORLEAA' => array('nom'=>"PREFECTURE DE ORLEANS", 'siret'=>"17450001700010", 'dep'=>"45"), - 'ORLEAB' => array('nom'=>"SOUS PREFECTURE DE ORLEANS", 'siret'=>"", 'dep'=>"45"), - 'ORLEAC' => array('nom'=>"TC ORLEANS", 'siret'=>"17450111400048", 'dep'=>"45"), - 'ORLEAG' => array('nom'=>"TGI ORLEANS", 'siret'=>"17450111400063", 'dep'=>"45"), - 'PAIMPC' => array('nom'=>"TC PAIMPOL", 'siret'=>"17350111500252", 'dep'=>"22"), - 'PALAIB' => array('nom'=>"SOUS PREFECTURE DE PALAISEAU", 'siret'=>"17910001100040", 'dep'=>"91"), - 'PAMIEB' => array('nom'=>"SOUS PREFECTURE DE PAMIERS", 'siret'=>"17090001300047", 'dep'=>"91"), - 'PAPEEM' => array('nom'=>"TMX PAPEETE", 'siret'=>"17987642000011", 'dep'=>"987"), - 'PAPEEP' => array('nom'=>"TPI PAPEETE", 'siret'=>"17987642000011", 'dep'=>"987"), - 'PARISA' => array('nom'=>"PREFECTURE DE PARIS", 'siret'=>"17750001400010", 'dep'=>"75"), - 'PARISC' => array('nom'=>"TC PARIS", 'siret'=>"17750111100039", 'dep'=>"75"), - 'PARISG' => array('nom'=>"TGI PARIS", 'siret'=>"17750111100476", 'dep'=>"75"), - 'PARTHB' => array('nom'=>"SOUS PREFECTURE DE PARTHENAY", 'siret'=>"17790001600078", 'dep'=>"79"), - 'PAUA' => array('nom'=>"PREFECTURE DE PAU", 'siret'=>"17640001800014", 'dep'=>"64"), - 'PAUC' => array('nom'=>"TC PAU", 'siret'=>"17640111500363", 'dep'=>"64"), - 'PAUG' => array('nom'=>"TGI PAU", 'siret'=>"17640111500066", 'dep'=>"64"), - 'PERIGA' => array('nom'=>"PREFECTURE DE PERIGUEUX", 'siret'=>"17240001200016", 'dep'=>"24"), - 'PERIGC' => array('nom'=>"TC PERIGUEUX", 'siret'=>"17330111000198", 'dep'=>"24"), - 'PERIGG' => array('nom'=>"TGI PERIGUEUX", 'siret'=>"17330111000057", 'dep'=>"24"), - 'PERONB' => array('nom'=>"SOUS PREFECTURE DE PERONNE", 'siret'=>"17800001400047", 'dep'=>"80"), - 'PERONG' => array('nom'=>"TGIcc PERONNE", 'siret'=>"17800111100172", 'dep'=>"80"), - 'PERPIA' => array('nom'=>"PREFECTURE DE PERPIGNAN", 'siret'=>"17660001300013", 'dep'=>"66"), - 'PERPIC' => array('nom'=>"TC PERPIGNAN", 'siret'=>"17340111800653", 'dep'=>"66"), - 'PERPIG' => array('nom'=>"TGI PERPIGNAN", 'siret'=>"17340111800109", 'dep'=>"66"), - 'PEZENC' => array('nom'=>"TC PEZENAS", 'siret'=>"", 'dep'=>"34"), - 'PITHIB' => array('nom'=>"SOUS PREFECTURE DE PITHIVIERS", 'siret'=>"17450001700051", 'dep'=>"45"), - 'POINTB' => array('nom'=>"SOUS PREFECTURE DE POINTE A PITRE", 'siret'=>"17971001700056", 'dep'=>"971"), - 'POINTG' => array('nom'=>"TGI POINTE-A-PITRE", 'siret'=>"17971111400035", 'dep'=>"971"), - 'POINTM' => array('nom'=>"TMX POINTE-A-PITRE", 'siret'=>"17971111400068", 'dep'=>"971"), - 'POITIA' => array('nom'=>"PREFECTURE DE POITIERS", 'siret'=>"17860001100013", 'dep'=>"86"), - 'POITIC' => array('nom'=>"TC POITIERS", 'siret'=>"17860111800395", 'dep'=>"86"), - 'POITIG' => array('nom'=>"TGI POITIERS", 'siret'=>"17860111800056", 'dep'=>"86"), - 'PONTAC' => array('nom'=>"TC PONT AUDEMER", 'siret'=>"17760111900445", 'dep'=>"27"), - 'PONTIB' => array('nom'=>"SOUS PREFECTURE DE PONTIVY", 'siret'=>"17560001400021", 'dep'=>"56"), - 'PONTOB' => array('nom'=>"SOUS PREFECTURE DE PONTOISE", 'siret'=>"17950001200028", 'dep'=>"95"), - 'PONTOC' => array('nom'=>"TC PONTOISE", 'siret'=>"17780111500433", 'dep'=>"95"), - 'PONTOG' => array('nom'=>"TGI PONTOISE", 'siret'=>"17780111500201", 'dep'=>"95"), - 'PONTRB' => array('nom'=>"SOUS PREFECTURE DE PONTARLIER", 'siret'=>"17250001900044", 'dep'=>"25"), - 'PRADEB' => array('nom'=>"SOUS PREFECTURE DE PRADES", 'siret'=>"17660001300039", 'dep'=>"66"), - 'PRIVA' => array('nom'=>"PREFECTURE DE PRIVAS", 'siret'=>"17070001700016", 'dep'=>"70"), - 'PRIVG' => array('nom'=>"TGI PRIVAS", 'siret'=>"17300111600057", 'dep'=>"70"), - 'PRIVI' => array('nom'=>"TI PRIVAS", 'siret'=>"17300111600313", 'dep'=>"70"), - 'PROVIB' => array('nom'=>"SOUS PREFECTURE DE PROVINS", 'siret'=>"17770001000024", 'dep'=>"77"), - 'PROVIC' => array('nom'=>"TC PROVINS", 'siret'=>"17750111100161", 'dep'=>"77"), - 'QUIMPA' => array('nom'=>"PREFECTURE DE QUIMPER", 'siret'=>"17290001100013", 'dep'=>"29"), - 'QUIMPC' => array('nom'=>"TC QUIMPER", 'siret'=>"17350111500799", 'dep'=>"29"), - 'QUIMPG' => array('nom'=>"TGI QUIMPER", 'siret'=>"17350111500500", 'dep'=>"29"), - 'RAMBOB' => array('nom'=>"SOUS PREFECTURE DE RAMBOUILLET", 'siret'=>"17780001800059", 'dep'=>"78"), - 'REDONB' => array('nom'=>"SOUS PREFECTURE DE REDON", 'siret'=>"17350001800051", 'dep'=>"35"), - 'REIMSB' => array('nom'=>"SOUS PREFECTURE DE REIMS", 'siret'=>"17510001500023", 'dep'=>"51"), - 'REIMSC' => array('nom'=>"TC REIMS", 'siret'=>"17510111200050", 'dep'=>"51"), - 'REIMSG' => array('nom'=>"TGI REIMS", 'siret'=>"17510111200043", 'dep'=>"51"), - 'RENNEA' => array('nom'=>"PREFECTURE DE RENNES", 'siret'=>"17350001800010", 'dep'=>"35"), - 'RENNEC' => array('nom'=>"TC RENNES", 'siret'=>"17350111500278", 'dep'=>"35"), - 'RENNEG' => array('nom'=>"TGI RENNES", 'siret'=>"17350111500161", 'dep'=>"35"), - 'RETHEB' => array('nom'=>"SOUS PREFECTURE DE RETHEL", 'siret'=>"17080001500068", 'dep'=>"83"), - 'RIBEAB' => array('nom'=>"SOUS PREFECTURE DE RIBEAUVILLE", 'siret'=>"17680001900042", 'dep'=>"68"), - 'RIOMB' => array('nom'=>"SOUS PREFECTURE DE RIOM", 'siret'=>"17630001000053", 'dep'=>"63"), - 'RIOMC' => array('nom'=>"TC RIOM", 'siret'=>"17630111700220", 'dep'=>"63"), - 'RIOMG' => array('nom'=>"TGI RIOM", 'siret'=>"17630111700253", 'dep'=>"63"), - 'ROANNB' => array('nom'=>"SOUS PREFECTURE DE ROANNE", 'siret'=>"17420001400028", 'dep'=>"42"), - 'ROANNC' => array('nom'=>"TC ROANNE", 'siret'=>"17690111400171", 'dep'=>"42"), - 'ROANNG' => array('nom'=>"TGI ROANNE", 'siret'=>"17690111400528", 'dep'=>"42"), - 'ROCHCB' => array('nom'=>"SOUS PREFECTURE DE ROCHECHOUART", 'siret'=>"17870001900031", 'dep'=>"87"), - 'ROCHEB' => array('nom'=>"SOUS PREFECTURE DE ROCHEFORT", 'siret'=>"17170001600073", 'dep'=>"17"), - 'ROCHEC' => array('nom'=>"TC ROCHEFORT", 'siret'=>"17860111800296", 'dep'=>"17"), - 'ROCHEG' => array('nom'=>"TGI ROCHEFORT", 'siret'=>"17860111800502", 'dep'=>"17"), - 'ROCHLA' => array('nom'=>"PREFECTURE DE LA ROCHELLE", 'siret'=>"17170001600016", 'dep'=>"17"), - 'ROCHLC' => array('nom'=>"TC LA ROCHELLE", 'siret'=>"17860111800213", 'dep'=>"17"), - 'ROCHLG' => array('nom'=>"TGI LA ROCHELLE", 'siret'=>"17860111800155", 'dep'=>"17"), - 'LA ROA' => array('nom'=>"PREFECTURE DE LA ROCHE SUR YON", 'siret'=>"17850001300010", 'dep'=>"85"), - 'ROCHYC' => array('nom'=>"TC LA ROCHE SUR YON", 'siret'=>"17860111800577", 'dep'=>"85"), - 'ROCHYG' => array('nom'=>"TGI LA ROCHE SUR YON", 'siret'=>"17860111800023", 'dep'=>"85"), - 'RODEZA' => array('nom'=>"PREFECTURE DE RODEZ", 'siret'=>"17120001700019", 'dep'=>"12"), - 'RODEZC' => array('nom'=>"TC RODEZ", 'siret'=>"17340111800547", 'dep'=>"12"), - 'RODEZG' => array('nom'=>"TGI RODEZ", 'siret'=>"17340111800539", 'dep'=>"12"), - 'ROMANC' => array('nom'=>"TC ROMANS", 'siret'=>"17380111900079", 'dep'=>"26"), - 'ROMORB' => array('nom'=>"SOUS PREFECTURE DE ROMORANTIN LANTHENAY", 'siret'=>"17410001600024", 'dep'=>"41"), - 'ROMORC' => array('nom'=>"TC ROMORANTIN", 'siret'=>"", 'dep'=>"41"), - 'ROUBAC' => array('nom'=>"TC ROUBAIX TOURCOING", 'siret'=>"17590111500642", 'dep'=>"59"), - 'ROUENA' => array('nom'=>"PREFECTURE DE ROUEN", 'siret'=>"17760001200096", 'dep'=>"76"), - 'ROUENC' => array('nom'=>"TC ROUEN", 'siret'=>"17760111900056", 'dep'=>"76"), - 'ROUENG' => array('nom'=>"TGI ROUEN", 'siret'=>"17760111900346", 'dep'=>"76"), - 'SABLEG' => array('nom'=>"TGI DES SABLES D'OLONNE", 'siret'=>"17860111800031", 'dep'=>"85"), - 'SAINTB' => array('nom'=>"SOUS PREFECTURE DE SAINTES", 'siret'=>"17170001600065", 'dep'=>"17"), - 'SAINTC' => array('nom'=>"TC SAINTES", 'siret'=>"17860111800304", 'dep'=>"17"), - 'SAINTG' => array('nom'=>"TGI SAINTES", 'siret'=>"17860111800205", 'dep'=>"17"), - 'SALINC' => array('nom'=>"TC SALINS LES BAINS", 'siret'=>"17250111600427", 'dep'=>"39"), - 'SALONC' => array('nom'=>"TC SALON DE PROVENCE", 'siret'=>"17130111200495", 'dep'=>"13"), - 'SARLAB' => array('nom'=>"SOUS PREFECTURE DE SARLAT LA CANEDA", 'siret'=>"17240001200073", 'dep'=>"24"), - 'SARLAC' => array('nom'=>"TC SARLAT", 'siret'=>"17330111000289", 'dep'=>"24"), - 'SARRBB' => array('nom'=>"SOUS PREFECTURE DE SARREBOURG", 'siret'=>"17570001200065", 'dep'=>"57"), - 'SARREG' => array('nom'=>"TGIcc SARREGUEMINES", 'siret'=>"17570111900166", 'dep'=>"57"), - 'SARREI' => array('nom'=>"TI SARREGUEMINES", 'siret'=>"17570111900174", 'dep'=>"57"), - 'SARTEB' => array('nom'=>"SOUS PREFECTURE DE SARTENE", 'siret'=>"17201001900112", 'dep'=>"20"), - 'SAUMUB' => array('nom'=>"SOUS PREFECTURE DE SAUMUR", 'siret'=>"17490001900046", 'dep'=>"49"), - 'SAUMUC' => array('nom'=>"TC SAUMUR", 'siret'=>"17490111600106", 'dep'=>"49"), - 'SAUMUG' => array('nom'=>"TGI SAUMUR", 'siret'=>"17490111600064", 'dep'=>"49"), - 'SAVERB' => array('nom'=>"SOUS PREFECTURE DE SAVERNE", 'siret'=>"17670001100099", 'dep'=>"67"), - 'SAVERG' => array('nom'=>"TGIcc SAVERNE", 'siret'=>"17680111600417", 'dep'=>"67"), - 'SAVERI' => array('nom'=>"TI SAVERNE", 'siret'=>"17680111600227", 'dep'=>"67"), - 'SEDANB' => array('nom'=>"SOUS PREFECTURE DE SEDAN", 'siret'=>"17080001500043", 'dep'=>"82"), - 'SEDANC' => array('nom'=>"TC SEDAN", 'siret'=>"17510111200084", 'dep'=>"82"), - 'SEGREB' => array('nom'=>"SOUS PREFECTURE DE SEGRE", 'siret'=>"17490001900038", 'dep'=>"49"), - 'SELESB' => array('nom'=>"SOUS PREFECTURE DE SELESTAT", 'siret'=>"", 'dep'=>"67"), - 'SENLIB' => array('nom'=>"SOUS PREFECTURE DE SENLIS", 'siret'=>"17600001600046", 'dep'=>"60"), - 'SENLIC' => array('nom'=>"TC SENLIS", 'siret'=>"17800111100339", 'dep'=>"60"), - 'SENLIG' => array('nom'=>"TGI SENLIS", 'siret'=>"17800111100321", 'dep'=>"60"), - 'SENSB' => array('nom'=>"SOUS PREFECTURE DE SENS", 'siret'=>"17890001500029", 'dep'=>"89"), - 'SENSC' => array('nom'=>"TC SENS", 'siret'=>"17750111100864", 'dep'=>"89"), - 'SENSG' => array('nom'=>"TGI SENS", 'siret'=>"17750111100146", 'dep'=>"89"), - 'SETEC' => array('nom'=>"TC SETE", 'siret'=>"17340111800646", 'dep'=>"34"), - 'SOISSB' => array('nom'=>"SOUS PREFECTURE DE SOISSONS", 'siret'=>"17020001800050", 'dep'=>"22"), - 'SOISSC' => array('nom'=>"TC SOISSONS", 'siret'=>"17800111100347", 'dep'=>"22"), - 'SOISSG' => array('nom'=>"TGI SOISSONS", 'siret'=>"17800111100123", 'dep'=>"22"), - 'SPIEMP' => array('nom'=>"TPI SAINT PIERRE ET MIQUELON", 'siret'=>"13000269400045", 'dep'=>"975"), - 'SPIEMS' => array('nom'=>"TSA SAINT PIERRE ET MIQUELON", 'siret'=>"13000269400029", 'dep'=>"975"), - 'STAFFC' => array('nom'=>"TC SAINT AFRIQUE", 'siret'=>"17340111800232", 'dep'=>"12"), - 'STAMAB' => array('nom'=>"SOUS PREFECTURE DE ST AMAND MONTROND", 'siret'=>"17180001400028", 'dep'=>"18"), - 'STBARB' => array('nom'=>"SOUS PREFECTURE DE ST BARTHELEMY", 'siret'=>"17971001700049", 'dep'=>"971"), - 'STBENB' => array('nom'=>"SOUS PREFECTURE DE ST BENOIT", 'siret'=>"17974001400024", 'dep'=>"974"), - 'STBRIA' => array('nom'=>"PREFECTURE DE ST BRIEUC", 'siret'=>"17220001600019", 'dep'=>"22"), - 'STBRIC' => array('nom'=>"TC SAINT BRIEUC", 'siret'=>"17350111500781", 'dep'=>"22"), - 'STBRIG' => array('nom'=>"TGI SAINT BRIEUC", 'siret'=>"17350111500153", 'dep'=>"22"), - 'STCLAB' => array('nom'=>"SOUS PREFECTURE DE ST CLAUDE", 'siret'=>"17390001000039", 'dep'=>"39"), - 'STDENA' => array('nom'=>"PREFECTURE DE ST DENIS", 'siret'=>"17974001400016", 'dep'=>"974"), - 'STDENB' => array('nom'=>"SOUS PREFECTURE DE ST DENIS", 'siret'=>"17930001700001", 'dep'=>"93"), - 'STDENG' => array('nom'=>"TGI SAINT DENIS DE LA REUNION", 'siret'=>"17974111100027", 'dep'=>"974"), - 'STDENM' => array('nom'=>"TMX SAINT DENIS DE LA REUNION", 'siret'=>"17974111100027", 'dep'=>"974"), - 'STDIEB' => array('nom'=>"SOUS PREFECTURE DE ST DIE DES VOSGES", 'siret'=>"17880001700034", 'dep'=>"88"), - 'STDIEC' => array('nom'=>"TC SAINT DIE", 'siret'=>"17540111600181", 'dep'=>"88"), - 'STDIEG' => array('nom'=>"TGI SAINT DIE", 'siret'=>"17540111600199", 'dep'=>"88"), - 'STDIZB' => array('nom'=>"SOUS PREFECTURE DE ST DIZIER", 'siret'=>"17520001300027", 'dep'=>"52"), - 'STDIZC' => array('nom'=>"TC SAINT DIZIER", 'siret'=>"17210111500126", 'dep'=>"52"), - 'STEMEB' => array('nom'=>"SOUS PREFECTURE DE STE MENEHOULD", 'siret'=>"17510001500049", 'dep'=>"51"), - 'STETIA' => array('nom'=>"PREFECTURE DE ST ETIENNE", 'siret'=>"17420001400010", 'dep'=>"42"), - 'STETIC' => array('nom'=>"TC SAINT ETIENNE", 'siret'=>"17690111400221", 'dep'=>"42"), - 'STETIG' => array('nom'=>"TGI SAINT ETIENNE", 'siret'=>"17690111400247", 'dep'=>"42"), - 'STFLOB' => array('nom'=>"SOUS PREFECTURE DE ST FLOUR", 'siret'=>"17150001000029", 'dep'=>"15"), - 'STFLOC' => array('nom'=>"TC SAINT FLOUR", 'siret'=>"17630111700170", 'dep'=>"15"), - 'STGAUB' => array('nom'=>"SOUS PREFECTURE DE ST GAUDENS", 'siret'=>"17310001700032", 'dep'=>"31"), - 'STGAUC' => array('nom'=>"TC SAINT GAUDENS", 'siret'=>"17310111400556", 'dep'=>"31"), - 'STGAUG' => array('nom'=>"TGI SAINT GAUDENS", 'siret'=>"17310111400085", 'dep'=>"31"), - 'STGERB' => array('nom'=>"SOUS PREFECTURE DE ST GERMAIN EN LAYE", 'siret'=>"17780001800034", 'dep'=>"78"), - 'STGIRB' => array('nom'=>"SOUS PREFECTURE DE ST GIRONS", 'siret'=>"17090001300054", 'dep'=>"92"), - 'STJEAB' => array('nom'=>"SOUS PREFECTURE DE ST JEAN D'ANGELY", 'siret'=>"17170001600057", 'dep'=>"17"), - 'STJEAC' => array('nom'=>"TC SAINT JEAN D'ANGELY", 'siret'=>"", 'dep'=>"17"), - 'STJEMB' => array('nom'=>"SOUS PREFECTURE DE ST JEAN DE MAURIENNE", 'siret'=>"17730001900037", 'dep'=>"73"), - 'STJULB' => array('nom'=>"SOUS PREFECTURE SAINT JULIEN EN GENEVOIS", 'siret'=>"17740001700048", 'dep'=>"74"), - 'STLAUB' => array('nom'=>"SOUS PREFECTURE DE ST LAURENT DU MARONI", 'siret'=>"17973001500064", 'dep'=>"973"), - 'STLOA' => array('nom'=>"PREFECTURE DE ST LO", 'siret'=>"17500001700012", 'dep'=>"50"), - 'STLOC' => array('nom'=>"TC SAINT LO", 'siret'=>"", 'dep'=>"50"), - 'STMALB' => array('nom'=>"SOUS PREFECTURE DE ST MALO", 'siret'=>"17350001800036", 'dep'=>"35"), - 'STMALC' => array('nom'=>"TC SAINT MALO", 'siret'=>"17350111500369", 'dep'=>"35"), - 'STMALG' => array('nom'=>"TGI SAINT MALO", 'siret'=>"17350111500112", 'dep'=>"35"), - 'STNAZB' => array('nom'=>"SOUS PREFECTURE DE ST NAZAIRE", 'siret'=>"17440001000057", 'dep'=>"44"), - 'STNAZC' => array('nom'=>"TC SAINT NAZAIRE", 'siret'=>"17350111500237", 'dep'=>"44"), - 'STNAZG' => array('nom'=>"TGI SAINT NAZAIRE", 'siret'=>"17350111500187", 'dep'=>"44"), - 'STOMEB' => array('nom'=>"SOUS PREFECTURE DE ST OMER", 'siret'=>"17620001200076", 'dep'=>"62"), - 'STOMEC' => array('nom'=>"TC SAINT OMER", 'siret'=>"17590111500287", 'dep'=>"62"), - 'STOMEG' => array('nom'=>"TGI SAINT OMER", 'siret'=>"17590111500303", 'dep'=>"62"), - 'STPAUB' => array('nom'=>"SOUS PREFECTURE DE ST PAUL", 'siret'=>"17974001400032", 'dep'=>"974"), - 'STPIEB' => array('nom'=>"SOUS PREFECTURE DE ST PIERRE DE LA REUNION", 'siret'=>"17974001400040", 'dep'=>"974"), - 'STPIEG' => array('nom'=>"TGIcc SAINT PIERRE", 'siret'=>"17974111100035", 'dep'=>"974"), - 'STPIMA' => array('nom'=>"PREFECTURE DE ST PIERRE ET MIQUELON", 'siret'=>"17975663000010", 'dep'=>"975"), - 'STQUEB' => array('nom'=>"SOUS PREFECTURE DE ST QUENTIN", 'siret'=>"17020001800043", 'dep'=>"21"), - 'STQUEC' => array('nom'=>"TC SAINT QUENTIN", 'siret'=>"17800111100115", 'dep'=>"21"), - 'STQUEG' => array('nom'=>"TGI SAINT QUENTIN", 'siret'=>"17800111100065", 'dep'=>"23"), - 'STRASA' => array('nom'=>"PREFECTURE DE STRASBOURG", 'siret'=>"17670001100016", 'dep'=>"67"), - 'STRASB' => array('nom'=>"SOUS PREFECTURE DE STRASBOURG", 'siret'=>"17670001100131", 'dep'=>"67"), - 'STRASG' => array('nom'=>"TGIcc STRASBOURG", 'siret'=>"17680111600276", 'dep'=>"67"), - 'STRASI' => array('nom'=>"TI STRASBOURG", 'siret'=>"17680111600268", 'dep'=>"67"), - 'STTROC' => array('nom'=>"TC SAINT TROPEZ", 'siret'=>"17130111200586", 'dep'=>"83"), - 'STVACC' => array('nom'=>"TC SAINT VALERY EN CAUX", 'siret'=>"", 'dep'=>"76"), - 'STVASC' => array('nom'=>"TC SAINT VALERY S/ SOMME", 'siret'=>"", 'dep'=>"80"), - 'TARARC' => array('nom'=>"TC TARARE", 'siret'=>"", 'dep'=>"69"), - 'TARASC' => array('nom'=>"TC TARASCON", 'siret'=>"17130111200503", 'dep'=>"13"), - 'TARASG' => array('nom'=>"TGI TARASCON", 'siret'=>"17130111200149", 'dep'=>"13"), - 'TARBEA' => array('nom'=>"PREFECTURE DE TARBES", 'siret'=>"17650001500019", 'dep'=>"65"), - 'TARBEC' => array('nom'=>"TC TARBES", 'siret'=>"17640111500116", 'dep'=>"65"), - 'TARBEG' => array('nom'=>"TGI TARBES", 'siret'=>"17640111500041", 'dep'=>"65"), - 'THANNB' => array('nom'=>"SOUS PREFECTURE DE THANN", 'siret'=>"17680001900059", 'dep'=>"68"), - 'THIERB' => array('nom'=>"SOUS PREFECTURE DE THIERS", 'siret'=>"17630001000038", 'dep'=>"63"), - 'THIERC' => array('nom'=>"TC THIERS", 'siret'=>"17630111700238", 'dep'=>"63"), - 'THIONB' => array('nom'=>"SOUS PREFECTURE DE THIONVILLE", 'siret'=>"17570001200040", 'dep'=>"57"), - 'THIONG' => array('nom'=>"TGIcc THIONVILLE", 'siret'=>"17570111900182", 'dep'=>"57"), - 'THIONI' => array('nom'=>"TI THIONVILLE", 'siret'=>"17570111900133", 'dep'=>"57"), - 'THONOB' => array('nom'=>"SOUS PREFECTURE DE THONON LES BAINS", 'siret'=>"17740001700055", 'dep'=>"74"), - 'THONOG' => array('nom'=>"TGIcc THONON LES BAINS", 'siret'=>"17730111600089", 'dep'=>"74"), - 'TOULB' => array('nom'=>"SOUS PREFECTURE DE TOUL", 'siret'=>"17540001900071", 'dep'=>"54"), - 'TOULOA' => array('nom'=>"PREFECTURE DE TOULON", 'siret'=>"17830001800011", 'dep'=>"83"), - 'TOULOC' => array('nom'=>"TC TOULON", 'siret'=>"17130111200636", 'dep'=>"83"), - 'TOULOG' => array('nom'=>"TGI TOULON", 'siret'=>"17130111200644", 'dep'=>"83"), - 'TOULSA' => array('nom'=>"PREFECTURE DE TOULOUSE", 'siret'=>"17310001700016", 'dep'=>"31"), - 'TOULSC' => array('nom'=>"TC TOULOUSE", 'siret'=>"17310111400168", 'dep'=>"31"), - 'TOULSG' => array('nom'=>"TGI TOULOUSE", 'siret'=>"17310111400259", 'dep'=>"31"), - 'TOURCC' => array('nom'=>"TC ROUBAIX TOURCOING", 'siret'=>"17590111500642", 'dep'=>"59"), - 'TOURNB' => array('nom'=>"SOUS PREFECTURE DE TOURNON SUR RHONE", 'siret'=>"17070001700024", 'dep'=>"73"), - 'TOURNC' => array('nom'=>"TC TOURNUS", 'siret'=>"", 'dep'=>"71"), - 'TOURSA' => array('nom'=>"PREFECTURE DE TOURS", 'siret'=>"17370001400017", 'dep'=>"37"), - 'TOURSC' => array('nom'=>"TC TOURS", 'siret'=>"17450111400105", 'dep'=>"37"), - 'TOURSG' => array('nom'=>"TGI TOURS", 'siret'=>"17450111400097", 'dep'=>"37"), - 'TROYEA' => array('nom'=>"PREFECTURE DE TROYES", 'siret'=>"17100001100014", 'dep'=>"10"), - 'TROYEC' => array('nom'=>"TC TROYES", 'siret'=>"17510111200415", 'dep'=>"10"), - 'TROYEG' => array('nom'=>"TGI TROYES", 'siret'=>"17510111200076", 'dep'=>"10"), - 'TULLEA' => array('nom'=>"PREFECTURE DE TULLE", 'siret'=>"17190001200013", 'dep'=>"19"), - 'TULLEC' => array('nom'=>"TC TULLE", 'siret'=>"17870111600307", 'dep'=>"19"), - 'TULLEG' => array('nom'=>"TGI TULLE", 'siret'=>"17870111600083", 'dep'=>"19"), - 'USSELB' => array('nom'=>"SOUS PREFECTURE DE USSEL", 'siret'=>"17190001200039", 'dep'=>"19"), - 'VALECB' => array('nom'=>"SOUS PREFECTURE DE VALENCIENNES", 'siret'=>"17590001800037", 'dep'=>"59"), - 'VALECC' => array('nom'=>"TC VALENCIENNES", 'siret'=>"17590111500394", 'dep'=>"59"), - 'VALECG' => array('nom'=>"TGI VALENCIENNES", 'siret'=>"17590111500170", 'dep'=>"59"), - 'VALENA' => array('nom'=>"PREFECTURE DE VALENCE", 'siret'=>"17260001700013", 'dep'=>"26"), - 'VALENG' => array('nom'=>"TGIcc VALENCE", 'siret'=>"17380111900020", 'dep'=>"26"), - 'VANNEA' => array('nom'=>"PREFECTURE DE VANNES", 'siret'=>"17560001400013", 'dep'=>"56"), - 'VANNEC' => array('nom'=>"TC VANNES", 'siret'=>"17350111500351", 'dep'=>"56"), - 'VANNEG' => array('nom'=>"TGI VANNES", 'siret'=>"17350111500518", 'dep'=>"56"), - 'VENDOB' => array('nom'=>"SOUS PREFECTURE DE VENDOME", 'siret'=>"17410001600032", 'dep'=>"41"), - 'VERDUB' => array('nom'=>"SOUS PREFECTURE DE VERDUN", 'siret'=>"17550001600043", 'dep'=>"55"), - 'VERDUC' => array('nom'=>"TC VERDUN", 'siret'=>"17540111600249", 'dep'=>"55"), - 'VERDUG' => array('nom'=>"TGI VERDUN", 'siret'=>"17540111600264", 'dep'=>"55"), - 'VERSAA' => array('nom'=>"PREFECTURE DE VERSAILLES", 'siret'=>"17780001800067", 'dep'=>"78"), - 'VERSAC' => array('nom'=>"TC VERSAILLES", 'siret'=>"17780111500482", 'dep'=>"78"), - 'VERSAG' => array('nom'=>"TGI VERSAILLES", 'siret'=>"17780111500466", 'dep'=>"78"), - 'VERVIB' => array('nom'=>"SOUS PREFECTURE DE VERVINS", 'siret'=>"17020001800035", 'dep'=>"21"), - 'VERVIC' => array('nom'=>"TC VERVINS", 'siret'=>"17800111100131", 'dep'=>"21"), - 'VESOUA' => array('nom'=>"PREFECTURE DE VESOUL", 'siret'=>"17700001500012", 'dep'=>"70"), - 'VESOUC' => array('nom'=>"TC VESOUL GRAY", 'siret'=>"17250111600476", 'dep'=>"70"), - 'VESOUG' => array('nom'=>"TGI VESOUL", 'siret'=>"17250111600286", 'dep'=>"70"), - 'VICHYB' => array('nom'=>"SOUS PREFECTURE DE VICHY", 'siret'=>"17030001600038", 'dep'=>"32"), - 'VIENNB' => array('nom'=>"SOUS PREFECTURE DE VIENNE", 'siret'=>"", 'dep'=>"38"), - 'VIENNC' => array('nom'=>"TC VIENNE", 'siret'=>"17380111900137", 'dep'=>"38"), - 'VIENNG' => array('nom'=>"TGI VIENNE", 'siret'=>"17380111900053", 'dep'=>"38"), - 'VIERZB' => array('nom'=>"SOUS PREFECTURE DE VIERZON", 'siret'=>"17180001400036", 'dep'=>"18"), - 'VILLEB' => array('nom'=>"SOUS PREFECTURE VILLEFRANCHE DE ROUERGUE", 'siret'=>"17120001700035", 'dep'=>"12"), - 'VILLFB' => array('nom'=>"SOUS PREFECTURE DE VILLEFRANCHE SUR SAONE", 'siret'=>"17690001700029", 'dep'=>"69"), - 'VILLFC' => array('nom'=>"TC VILLEFRANCHE SUR SAONE", 'siret'=>"17690111400379", 'dep'=>"69"), - 'VILLFG' => array('nom'=>"TGI VILLEFRANCHE SUR SAONE", 'siret'=>"17690111400056", 'dep'=>"69"), - 'VILLNB' => array('nom'=>"SOUS PREFECTURE DE VILLENEUVE SUR LOT", 'siret'=>"17470001300025", 'dep'=>"47"), - 'VILLNC' => array('nom'=>"TC VILLENEUVE SUR LOT", 'siret'=>"17470111000192", 'dep'=>"47"), - 'VILTAC' => array('nom'=>"TC VILLEFRANCHE-TARARE", 'siret'=>"17690111400379", 'dep'=>"69"), - 'VIMOUC' => array('nom'=>"TC VIMOUTIERS", 'siret'=>"", 'dep'=>"61"), - 'VIREB' => array('nom'=>"SOUS PREFECTURE DE VIRE", 'siret'=>"17140001300057", 'dep'=>"14"), - 'VIREC' => array('nom'=>"TC VIRE", 'siret'=>"", 'dep'=>"14"), - 'VITRYB' => array('nom'=>"SOUS PREFECTURE DE VITRY LE FRANCOIS", 'siret'=>"17510001500031", 'dep'=>"51"), - 'VOUZIB' => array('nom'=>"SOUS PREFECTURE DE VOUZIERS", 'siret'=>"17080001500027", 'dep'=>"84"), - 'WISSEB' => array('nom'=>"SOUS PREFECTURE DE WISSEMBOURG", 'siret'=>"17670001100081", 'dep'=>"67"), - 'YSSINB' => array('nom'=>"SOUS PREFECTURE DE YSSINGEAUX", 'siret'=>"17430001200047", 'dep'=>"43"), - 'LOUVII' => array('nom'=>"TI LOUVIERS", 'siret'=>"17760111900304", 'dep'=>"27"), - 'VIGANI' => array('nom'=>"TI VIGAN", 'siret'=>"17300111600362", 'dep'=>"30"), - 'NANTUI' => array('nom'=>"TI NANTUA", 'siret'=>"17690111400155", 'dep'=>"11"), - 'NICEI' => array('nom'=>"TI NICE", 'siret'=>"17130111200685", 'dep'=>"63"), - 'SEDANI' => array('nom'=>"TI SEDAN", 'siret'=>"17510111200209", 'dep'=>"82"), - 'PERIGI' => array('nom'=>"TI PERIGUEUX", 'siret'=>"17330111000180", 'dep'=>"24"), - 'NANTEI' => array('nom'=>"TI NANTES", 'siret'=>"17350111500880", 'dep'=>"44"), - 'COUTAI' => array('nom'=>"TI COUTANCES", 'siret'=>"17140111000282", 'dep'=>"50"), - 'LIEVII' => array('nom'=>"TI LIEVIN", 'siret'=>"17590111500436", 'dep'=>"62"), - 'PONTOI' => array('nom'=>"TI PONTOISE", 'siret'=>"17780111500573", 'dep'=>"95"), - 'MOUTII' => array('nom'=>"TI MOUTIERS", 'siret'=>"17730111600139", 'dep'=>"73"), - 'CIVRAI' => array('nom'=>"TI CIVRAY", 'siret'=>"17860111800494", 'dep'=>"86"), - 'ROCROI' => array('nom'=>"TI ROCROI", 'siret'=>"17510111200332", 'dep'=>"82"), - 'MARENI' => array('nom'=>"TI MARENNES", 'siret'=>"17860111800080", 'dep'=>"17"), - 'JONZAI' => array('nom'=>"TI JONZAC", 'siret'=>"17860111800098", 'dep'=>"17"), - 'SAINTI' => array('nom'=>"TI SAINT AMAND MONTROND", 'siret'=>"17180111100070", 'dep'=>"18"), - 'USSELI' => array('nom'=>"TI USSEL", 'siret'=>"17870111600091", 'dep'=>"19"), - 'SEMURI' => array('nom'=>"TI SEMUR EN AUXOIS", 'siret'=>"17210111500118", 'dep'=>"21"), - 'BERGEI' => array('nom'=>"TI BERGERAC", 'siret'=>"17330111000222", 'dep'=>"24"), - 'NYONSI' => array('nom'=>"TI NYONS", 'siret'=>"17380111900061", 'dep'=>"26"), - 'MURETI' => array('nom'=>"TI MURET", 'siret'=>"17310111400093", 'dep'=>"31"), - 'STMALI' => array('nom'=>"TI SAINT MALO", 'siret'=>"17350111500120", 'dep'=>"35"), - 'ISSOUI' => array('nom'=>"TI ISSOUDUN", 'siret'=>"17180111100112", 'dep'=>"36"), - 'LE BLI' => array('nom'=>"TI LE BLANC", 'siret'=>"17180111100088", 'dep'=>"36"), - 'LA CHI' => array('nom'=>"TI LA CHATRE", 'siret'=>"17180111100096", 'dep'=>"36"), - 'DOLEI' => array('nom'=>"TI DOLE", 'siret'=>"17250111600054", 'dep'=>"39"), - 'STETII' => array('nom'=>"TI SAINT ETIENNE", 'siret'=>"17690111400189", 'dep'=>"42"), - 'MONTBI' => array('nom'=>"TI MONTBRISON", 'siret'=>"17690111400098", 'dep'=>"42"), - 'STMARI' => array('nom'=>"TI SAINT MARCELLIN", 'siret'=>"17380111900046", 'dep'=>"38"), - 'DIEI' => array('nom'=>"TI DIE", 'siret'=>"17380111900145", 'dep'=>"26"), - 'CHARTI' => array('nom'=>"TI CHARTRES", 'siret'=>"17780111500102", 'dep'=>"28"), - 'BELLAI' => array('nom'=>"TI BELLAC", 'siret'=>"17870111600034", 'dep'=>"87"), - 'DREUXI' => array('nom'=>"TI DREUX", 'siret'=>"17780111500128", 'dep'=>"28"), - 'CHATEI' => array('nom'=>"TI CHATEAUDUN", 'siret'=>"17780111500110", 'dep'=>"28"), - 'MENDEI' => array('nom'=>"TI MENDE", 'siret'=>"17300111600073", 'dep'=>"48"), - 'TULLEI' => array('nom'=>"TI TULLE", 'siret'=>"17870111600166", 'dep'=>"19"), - 'PORTOI' => array('nom'=>"TI PORTO VECCHIO", 'siret'=>"17202111500099", 'dep'=>"20"), - 'SARTEI' => array('nom'=>"TI SARTENE", 'siret'=>"17202111500107", 'dep'=>"20"), - 'KAYSEI' => array('nom'=>"TI KAYSERSBERG", 'siret'=>"17680111600078", 'dep'=>"68"), - 'BOURGI' => array('nom'=>"TI BOURGOIN JALLIEU", 'siret'=>"17380111900103", 'dep'=>"38"), - 'PAIMBI' => array('nom'=>"TI PAIMBOEUF", 'siret'=>"17350111500229", 'dep'=>"44"), - 'CAHORI' => array('nom'=>"TI CAHORS", 'siret'=>"17470111000028", 'dep'=>"46"), - 'EPERNI' => array('nom'=>"TI EPERNAY", 'siret'=>"17510111200233", 'dep'=>"51"), - 'BARLDI' => array('nom'=>"TI BAR LE DUC", 'siret'=>"17540111600306", 'dep'=>"55"), - 'ISSOII' => array('nom'=>"TI ISSOIRE", 'siret'=>"17630111700048", 'dep'=>"63"), - 'BIARRI' => array('nom'=>"TI BIARRITZ", 'siret'=>"17640111500157", 'dep'=>"64"), - 'EPINAI' => array('nom'=>"TI EPINAL", 'siret'=>"17540111600207", 'dep'=>"88"), - 'AUXERI' => array('nom'=>"TI AUXERRE", 'siret'=>"17750111100807", 'dep'=>"89"), - 'SENSI' => array('nom'=>"TI SENS", 'siret'=>"17750111100856", 'dep'=>"89"), - 'CHAMBI' => array('nom'=>"TI CHAMBERY", 'siret'=>"17730111600113", 'dep'=>"73"), - 'JOIGNI' => array('nom'=>"TI JOIGNY", 'siret'=>"17750111100831", 'dep'=>"89"), - 'TONNEI' => array('nom'=>"TI TONNERRE", 'siret'=>"17750111100799", 'dep'=>"89"), - 'IVRY I' => array('nom'=>"TI IVRY SUR SEINE", 'siret'=>"17750111100625", 'dep'=>"94"), - 'CHAREI' => array('nom'=>"TI CHARENTON LE PONT", 'siret'=>"17750111100609", 'dep'=>"94"), - 'BOISSI' => array('nom'=>"TI BOISSY SAINT LEGER", 'siret'=>"17750111100617", 'dep'=>"94"), - 'ROYANI' => array('nom'=>"TI ROYAN", 'siret'=>"17860111800262", 'dep'=>"17"), - 'ARBOII' => array('nom'=>"TI ARBOIS", 'siret'=>"17250111600385", 'dep'=>"39"), - 'ANGERI' => array('nom'=>"TI ANGERS", 'siret'=>"17490111600239", 'dep'=>"49"), - 'SAUMUI' => array('nom'=>"TI SAUMUR", 'siret'=>"17490111600247", 'dep'=>"49"), - 'LAVALI' => array('nom'=>"TI LAVAL", 'siret'=>"17490111600254", 'dep'=>"53"), - 'GRAYI' => array('nom'=>"TI GRAY", 'siret'=>"17250111600278", 'dep'=>"70"), - 'MACONI' => array('nom'=>"TI MACON", 'siret'=>"17210111500423", 'dep'=>"71"), - 'ALBII' => array('nom'=>"TI ALBI", 'siret'=>"17310111400283", 'dep'=>"81"), - 'CASTRI' => array('nom'=>"TI CASTRES", 'siret'=>"17310111400341", 'dep'=>"81"), - 'LAVAUI' => array('nom'=>"TI LAVAUR", 'siret'=>"17310111400051", 'dep'=>"81"), - 'MONTNI' => array('nom'=>"TI MONTAUBAN", 'siret'=>"17310111400242", 'dep'=>"82"), - 'CASTEI' => array('nom'=>"TI CASTELSARRASIN", 'siret'=>"17310111400135", 'dep'=>"82"), - 'MOISSI' => array('nom'=>"TI MOISSAC", 'siret'=>"17310111400036", 'dep'=>"82"), - 'AVIGNI' => array('nom'=>"TI AVIGNON", 'siret'=>"17300111600156", 'dep'=>"84"), - 'CARPEI' => array('nom'=>"TI CARPENTRAS", 'siret'=>"17300111600164", 'dep'=>"84"), - 'ETAMPI' => array('nom'=>"TI ETAMPES", 'siret'=>"17750111100708", 'dep'=>"91"), - 'TARBEI' => array('nom'=>"TI TARBES", 'siret'=>"17640111500090", 'dep'=>"65"), - 'BAGNEI' => array('nom'=>"TI BAGNERES DE BIGORRE", 'siret'=>"17640111500025", 'dep'=>"65"), - 'VESOUI' => array('nom'=>"TI VESOUL", 'siret'=>"17250111600161", 'dep'=>"70"), - 'LUREI' => array('nom'=>"TI LURE", 'siret'=>"17250111600179", 'dep'=>"70"), - 'LA FLI' => array('nom'=>"TI LA FLECHE", 'siret'=>"17490111600130", 'dep'=>"72"), - 'MAMERI' => array('nom'=>"TI MAMERS", 'siret'=>"17490111600122", 'dep'=>"72"), - 'ALBERI' => array('nom'=>"TI ALBERTVILLE", 'siret'=>"17730111600105", 'dep'=>"73"), - 'YVETOI' => array('nom'=>"TI YVETOT", 'siret'=>"17760111900171", 'dep'=>"76"), - 'NBRAYI' => array('nom'=>"TI NEUFCHATEL EN BRAY", 'siret'=>"17760111900189", 'dep'=>"76"), - 'ELBEUI' => array('nom'=>"TI ELBEUF", 'siret'=>"17760111900395", 'dep'=>"76"), - 'POITII' => array('nom'=>"TI POITIERS", 'siret'=>"17860111800411", 'dep'=>"86"), - 'BORDEI' => array('nom'=>"TI BORDEAUX", 'siret'=>"17330111000313", 'dep'=>"33"), - 'BAZASI' => array('nom'=>"TI BAZAS", 'siret'=>"17330111000347", 'dep'=>"33"), - 'BRESSI' => array('nom'=>"TI BRESSUIRE", 'siret'=>"17860111800478", 'dep'=>"79"), - 'DOUAII' => array('nom'=>"TI DOUAI", 'siret'=>"17590111500907", 'dep'=>"59"), - 'CAMBRI' => array('nom'=>"TI CAMBRAI", 'siret'=>"17590111500949", 'dep'=>"59"), - 'CLAMEI' => array('nom'=>"TI CLAMECY", 'siret'=>"17180111100278", 'dep'=>"58"), - 'LECTOI' => array('nom'=>"TI LECTOURE", 'siret'=>"17470111000200", 'dep'=>"32"), - 'MELUNI' => array('nom'=>"TI MELUN", 'siret'=>"17750111100211", 'dep'=>"77"), - 'TROYEI' => array('nom'=>"TI TROYES", 'siret'=>"17510111200266", 'dep'=>"10"), - 'HAVREI' => array('nom'=>"TI LE HAVRE", 'siret'=>"17760111900320", 'dep'=>"76"), - 'GANNAI' => array('nom'=>"TI GANNAT", 'siret'=>"17630111700345", 'dep'=>"38"), - 'BASTII' => array('nom'=>"TI BASTIA", 'siret'=>"17202111500131", 'dep'=>"20"), - 'BRIANI' => array('nom'=>"TI BRIANCON", 'siret'=>"17380111900251", 'dep'=>"51"), - 'CORTEI' => array('nom'=>"TI CORTE", 'siret'=>"17202111500149", 'dep'=>"20"), - 'GAPI' => array('nom'=>"TI GAP", 'siret'=>"17380111900285", 'dep'=>"50"), - 'LAROCI' => array('nom'=>"TI LA ROCHE SUR YON", 'siret'=>"17860111800239", 'dep'=>"85"), - 'MONTMI' => array('nom'=>"TI MONTMORILLON", 'siret'=>"17860111800064", 'dep'=>"86"), - 'CONFOI' => array('nom'=>"TI CONFOLENS", 'siret'=>"17330111000396", 'dep'=>"16"), - 'RUFFEI' => array('nom'=>"TI RUFFEC", 'siret'=>"17330111000412", 'dep'=>"16"), - 'BARBEI' => array('nom'=>"TI BARBEZIEUX SAINT HILAIRE", 'siret'=>"17330111000404", 'dep'=>"16"), - 'STPONI' => array('nom'=>"TI SAINT PONS DE THOMIERES", 'siret'=>"17340111800406", 'dep'=>"34"), - 'UZESI' => array('nom'=>"TI UZES", 'siret'=>"17300111600347", 'dep'=>"30"), - 'AJACCI' => array('nom'=>"TI AJACCIO", 'siret'=>"17202111500115", 'dep'=>"20"), - 'VANVEI' => array('nom'=>"TI VANVES", 'siret'=>"17780111500342", 'dep'=>"92"), - 'VERSAI' => array('nom'=>"TI VERSAILLES", 'siret'=>"17780111500458", 'dep'=>"78"), - 'VERVII' => array('nom'=>"TI VERVINS", 'siret'=>"17800111100388", 'dep'=>"21"), - 'VIERZI' => array('nom'=>"TI VIERZON", 'siret'=>"17180111100195", 'dep'=>"18"), - 'VIREI' => array('nom'=>"TI VIRE", 'siret'=>"17140111000506", 'dep'=>"14"), - 'WISSEI' => array('nom'=>"TI WISSEMBOURG", 'siret'=>"17680111600144", 'dep'=>"67"), - 'DRAGUI' => array('nom'=>"TI DRAGUIGNAN", 'siret'=>"17130111200552", 'dep'=>"83"), - 'LEPUYI' => array('nom'=>"TI PUY EN VELAY", 'siret'=>"17630111700428", 'dep'=>"43"), - 'LERAII' => array('nom'=>"TI LE RAINCY", 'siret'=>"17750111100997", 'dep'=>"93"), - 'MARTII' => array('nom'=>"TI MARTIGUES", 'siret'=>"17130111200123", 'dep'=>"13"), - 'MENTOI' => array('nom'=>"TI MENTON", 'siret'=>"17130111200347", 'dep'=>"65"), - 'MONTRI' => array('nom'=>"TI MONTREUIL SOUS BOIS", 'siret'=>"17750111100542", 'dep'=>"93"), - 'NEUILI' => array('nom'=>"TI NEUILLY SUR SEINE", 'siret'=>"17780111500326", 'dep'=>"92"), - 'PANTII' => array('nom'=>"TI PANTIN", 'siret'=>"17750111101052", 'dep'=>"93"), - 'PARTHI' => array('nom'=>"TI PARTHENAY", 'siret'=>"17860111800544", 'dep'=>"79"), - 'PERONI' => array('nom'=>"TI PERONNE", 'siret'=>"17800111100354", 'dep'=>"80"), - 'POISSI' => array('nom'=>"TI POISSY", 'siret'=>"17780111500185", 'dep'=>"78"), - 'PUTEAI' => array('nom'=>"TI PUTEAUX", 'siret'=>"17780111500334", 'dep'=>"92"), - 'RAMBOI' => array('nom'=>"TI RAMBOUILLET", 'siret'=>"17780111500169", 'dep'=>"78"), - 'RIBEAI' => array('nom'=>"TI RIBEAUVILLE", 'siret'=>"17680111600045", 'dep'=>"68"), - 'ROMORI' => array('nom'=>"TI ROMORANTIN LANTHENAY", 'siret'=>"17450111400238", 'dep'=>"41"), - 'ROUENI' => array('nom'=>"TI ROUEN", 'siret'=>"17760111900353", 'dep'=>"76"), - 'PONTLI' => array('nom'=>"TI PONT L'EVEQUE", 'siret'=>"17140111000555", 'dep'=>"14"), - 'CHATBI' => array('nom'=>"TI CHATEAUBRIANT", 'siret'=>"17350111500211", 'dep'=>"44"), - 'DIZIEI' => array('nom'=>"TI SAINT DIZIER", 'siret'=>"17210111500183", 'dep'=>"52"), - 'MONTCI' => array('nom'=>"TI MONTCEAU LES MINES", 'siret'=>"17210111500100", 'dep'=>"71"), - 'NAZAII' => array('nom'=>"TI SAINT NAZAIRE", 'siret'=>"17350111500724", 'dep'=>"44"), - 'SEVERI' => array('nom'=>"TI SAINT SEVER", 'siret'=>"17640111500231", 'dep'=>"40"), - 'BBRESI' => array('nom'=>"TI BOURG EN BRESSE", 'siret'=>"17690111400486", 'dep'=>"10"), - 'YSSINI' => array('nom'=>"TI YSSINGEAUX", 'siret'=>"17630111700469", 'dep'=>"43"), - 'TREVOI' => array('nom'=>"TI TREVOUX", 'siret'=>"17690111400494", 'dep'=>"16"), - 'ROMANI' => array('nom'=>"TI ROMANS SUR ISERE", 'siret'=>"17380111900384", 'dep'=>"26"), - 'LECHAI' => array('nom'=>"TI LE CHAMBON FEUGEROLLES", 'siret'=>"17690111400544", 'dep'=>"42"), - 'CHINOI' => array('nom'=>"TI CHATEAU CHINON", 'siret'=>"17180111100369", 'dep'=>"58"), - 'FUMAYI' => array('nom'=>"TI FUMAY", 'siret'=>"17510111200464", 'dep'=>"81"), - 'NEVERI' => array('nom'=>"TI NEVERS", 'siret'=>"17180111100377", 'dep'=>"58"), - 'ANGOUI' => array('nom'=>"TI ANGOULEME", 'siret'=>"17330111000099", 'dep'=>"16"), - 'AMBERI' => array('nom'=>"TI AMBERT", 'siret'=>"17630111700022", 'dep'=>"63"), - 'AURILI' => array('nom'=>"TI AURILLAC", 'siret'=>"17630111700394", 'dep'=>"15"), - 'BARSUI' => array('nom'=>"TI BAR SUR AUBE", 'siret'=>"17510111200357", 'dep'=>"10"), - 'BELLEI' => array('nom'=>"TI BELLEY", 'siret'=>"17690111400502", 'dep'=>"13"), - 'BRIEYI' => array('nom'=>"TI BRIEY", 'siret'=>"17540111600066", 'dep'=>"54"), - 'CHALOI' => array('nom'=>"TI CHALONS EN CHAMPAGNE", 'siret'=>"17510111200225", 'dep'=>"51"), - 'CHARLI' => array('nom'=>"TI CHARLEVILLE MEZIERES", 'siret'=>"17510111200324", 'dep'=>"80"), - 'VILLFI' => array('nom'=>"TI VILLEFRANCHE SUR SAONE", 'siret'=>"17690111400510", 'dep'=>"69"), - 'BRIOUI' => array('nom'=>"TI BRIOUDE", 'siret'=>"17630111700527", 'dep'=>"43"), - 'CROUXI' => array('nom'=>"TI CHATEAUROUX", 'siret'=>"17180111100138", 'dep'=>"36"), - 'CLFERI' => array('nom'=>"TI CLERMONT FERRAND", 'siret'=>"17630111700535", 'dep'=>"63"), - 'COGNAI' => array('nom'=>"TI COGNAC", 'siret'=>"17330111000297", 'dep'=>"16"), - 'DAXI' => array('nom'=>"TI DAX", 'siret'=>"17640111500165", 'dep'=>"40"), - 'LAMURI' => array('nom'=>"TI LA MURE", 'siret'=>"17380111900228", 'dep'=>"38"), - 'LAREOI' => array('nom'=>"TI LA REOLE", 'siret'=>"17330111000362", 'dep'=>"33"), - 'ROTROI' => array('nom'=>"TI NOGENT LE ROTROU", 'siret'=>"17780111500490", 'dep'=>"28"), - 'LESPAI' => array('nom'=>"TI LESPARRE MEDOC", 'siret'=>"17330111000339", 'dep'=>"33"), - 'LIBOUI' => array('nom'=>"TI LIBOURNE", 'siret'=>"17330111000354", 'dep'=>"33"), - 'LONGWI' => array('nom'=>"TI LONGWY", 'siret'=>"17540111600074", 'dep'=>"54"), - 'LYONI' => array('nom'=>"TI LYON 3EME", 'siret'=>"17690111400437", 'dep'=>"69"), - 'MAURII' => array('nom'=>"TI MAURIAC", 'siret'=>"17630111700436", 'dep'=>"15"), - 'MONTEI' => array('nom'=>"TI MONTELIMAR", 'siret'=>"17380111900301", 'dep'=>"26"), - 'MONTLI' => array('nom'=>"TI MONTLUCON", 'siret'=>"17630111700261", 'dep'=>"31"), - 'MOULII' => array('nom'=>"TI MOULINS", 'siret'=>"17630111700451", 'dep'=>"30"), - 'MARSAI' => array('nom'=>"TI MONT DE MARSAN", 'siret'=>"17640111500173", 'dep'=>"40"), - 'MURATI' => array('nom'=>"TI MURAT", 'siret'=>"17630111700105", 'dep'=>"15"), - 'NANCYI' => array('nom'=>"TI NANCY", 'siret'=>"17540111600108", 'dep'=>"54"), - 'NIORTI' => array('nom'=>"TI NIORT", 'siret'=>"17860111800460", 'dep'=>"79"), - 'NOGENI' => array('nom'=>"TI NOGENT SUR SEINE", 'siret'=>"17510111200308", 'dep'=>"10"), - 'NEUFCI' => array('nom'=>"TI NEUFCHATEAU", 'siret'=>"17540111600363", 'dep'=>"88"), - 'REIMSI' => array('nom'=>"TI REIMS", 'siret'=>"17510111200241", 'dep'=>"51"), - 'RETHEI' => array('nom'=>"TI RETHEL", 'siret'=>"17510111200316", 'dep'=>"83"), - 'RIOMI' => array('nom'=>"TI RIOM", 'siret'=>"17630111700311", 'dep'=>"63"), - 'ROANNI' => array('nom'=>"TI ROANNE", 'siret'=>"17690111400163", 'dep'=>"42"), - 'FLOURI' => array('nom'=>"TI SAINT FLOUR", 'siret'=>"17630111700444", 'dep'=>"15"), - 'THIERI' => array('nom'=>"TI THIERS", 'siret'=>"17630111700329", 'dep'=>"63"), - 'THONOI' => array('nom'=>"TI THONON LES BAINS", 'siret'=>"17730111600287", 'dep'=>"74"), - 'VICHYI' => array('nom'=>"TI VICHY", 'siret'=>"17630111700287", 'dep'=>"32"), - 'VIENNI' => array('nom'=>"TI VIENNE", 'siret'=>"17380111900236", 'dep'=>"38"), - 'VBANNI' => array('nom'=>"TI VILLEURBANNE", 'siret'=>"17690111400346", 'dep'=>"69"), - 'VITRYI' => array('nom'=>"TI VITRY LE FRANCOIS", 'siret'=>"17510111200217", 'dep'=>"51"), - 'VOUZII' => array('nom'=>"TI VOUZIERS", 'siret'=>"17510111200340", 'dep'=>"84"), - 'ALESI' => array('nom'=>"TI ALES", 'siret'=>"17300111600305", 'dep'=>"30"), - 'APTI' => array('nom'=>"TI APT", 'siret'=>"17300111600370", 'dep'=>"84"), - 'OLONNI' => array('nom'=>"TI DES SABLES D'OLONNE", 'siret'=>"17860111800635", 'dep'=>"85"), - 'ROCHEI' => array('nom'=>"TI ROCHECHOUART", 'siret'=>"17870111600281", 'dep'=>"87"), - 'CAYENI' => array('nom'=>"TI CAYENNE", 'siret'=>"17972111300100", 'dep'=>"973"), - 'ROUSSI' => array('nom'=>"TI L'ILE ROUSSE", 'siret'=>"17202111500123", 'dep'=>"20"), - 'STDENI' => array('nom'=>"TI SAINT DENIS DE LA REUNION", 'siret'=>"17974111100050", 'dep'=>"974"), - 'LAMENI' => array('nom'=>"TI LE LAMENTIN", 'siret'=>"17972111300050", 'dep'=>"972"), - 'SJMAUI' => array('nom'=>"TI SAINT JEAN DE MAURIENNE", 'siret'=>"17730111600147", 'dep'=>"73"), - 'PROVII' => array('nom'=>"TI PROVINS", 'siret'=>"17750111100740", 'dep'=>"77"), - 'VALENI' => array('nom'=>"TI VALENCE", 'siret'=>"17380111900087", 'dep'=>"26"), - 'DIJONI' => array('nom'=>"TI DIJON", 'siret'=>"17210111500472", 'dep'=>"21"), - 'MAYENI' => array('nom'=>"TI MAYENNE", 'siret'=>"17490111600296", 'dep'=>"53"), - 'GONTII' => array('nom'=>"TI CHATEAU GONTIER", 'siret'=>"17490111600288", 'dep'=>"53"), - 'MANOSI' => array('nom'=>"TI MANOSQUE", 'siret'=>"17130111200453", 'dep'=>"41"), - 'FORCAI' => array('nom'=>"TI FORCALQUIER", 'siret'=>"17130111200446", 'dep'=>"41"), - 'TOURNI' => array('nom'=>"TI TOURNON SUR RHONE", 'siret'=>"17300111600065", 'dep'=>"73"), - 'FOIXI' => array('nom'=>"TI FOIX", 'siret'=>"17310111400192", 'dep'=>"90"), - 'PAMIEI' => array('nom'=>"TI PAMIERS", 'siret'=>"17310111400184", 'dep'=>"91"), - 'GIRONI' => array('nom'=>"TI SAINT GIRONS", 'siret'=>"17310111400317", 'dep'=>"92"), - 'ROUERI' => array('nom'=>"TI VILLEFRANCHE DE ROUERGUE", 'siret'=>"17340111800240", 'dep'=>"12"), - 'AFFRII' => array('nom'=>"TI SAINT AFFRIQUE", 'siret'=>"17340111800273", 'dep'=>"12"), - 'ESPALI' => array('nom'=>"TI ESPALION", 'siret'=>"17340111800125", 'dep'=>"12"), - 'AIXI' => array('nom'=>"TI AIX EN PROVENCE", 'siret'=>"17130111200438", 'dep'=>"13"), - 'ROCHLI' => array('nom'=>"TI LA ROCHELLE", 'siret'=>"17860111800148", 'dep'=>"17"), - 'SNTESI' => array('nom'=>"TI SAINTES", 'siret'=>"17860111800189", 'dep'=>"17"), - 'ROCHFI' => array('nom'=>"TI ROCHEFORT", 'siret'=>"17860111800122", 'dep'=>"17"), - 'ANGELI' => array('nom'=>"TI SAINT JEAN D'ANGELY", 'siret'=>"17860111800163", 'dep'=>"17"), - 'BRIVEI' => array('nom'=>"TI BRIVE", 'siret'=>"17870111600190", 'dep'=>"19"), - 'BEAUNI' => array('nom'=>"TI BEAUNE", 'siret'=>"17210111500027", 'dep'=>"21"), - 'GUINGI' => array('nom'=>"TI GUINGAMP", 'siret'=>"17350111500096", 'dep'=>"22"), - 'GUEREI' => array('nom'=>"TI GUERET", 'siret'=>"17870111600174", 'dep'=>"23"), - 'AUBUSI' => array('nom'=>"TI AUBUSSON", 'siret'=>"17870111600125", 'dep'=>"23"), - 'BRGANI' => array('nom'=>"TI BOURGANEUF", 'siret'=>"17870111600117", 'dep'=>"23"), - 'NONTRI' => array('nom'=>"TI NONTRON", 'siret'=>"17330111000255", 'dep'=>"24"), - 'RIBERI' => array('nom'=>"TI RIBERAC", 'siret'=>"17330111000263", 'dep'=>"24"), - 'BAUMEI' => array('nom'=>"TI BAUME LES DAMES", 'siret'=>"17250111600245", 'dep'=>"25"), - 'PONTAI' => array('nom'=>"TI PONTARLIER", 'siret'=>"17250111600237", 'dep'=>"25"), - 'EVREUI' => array('nom'=>"TI EVREUX", 'siret'=>"17760111900379", 'dep'=>"27"), - 'MAUBEI' => array('nom'=>"TI MAUBEUGE", 'siret'=>"17590111500246", 'dep'=>"59"), - 'DOMFRI' => array('nom'=>"TI DOMFRONT", 'siret'=>"17140111000100", 'dep'=>"61"), - 'CALAII' => array('nom'=>"TI CALAIS", 'siret'=>"17590111500121", 'dep'=>"62"), - 'TERNOI' => array('nom'=>"TI SAINT POL SUR TERNOISE", 'siret'=>"17590111500311", 'dep'=>"62"), - 'HOUDAI' => array('nom'=>"TI HOUDAIN", 'siret'=>"17590111500402", 'dep'=>"62"), - 'MONTUI' => array('nom'=>"TI MONTREUIL SUR MER", 'siret'=>"17590111500444", 'dep'=>"62"), - 'FORBAI' => array('nom'=>"TI FORBACH", 'siret'=>"17570111900109", 'dep'=>"57"), - 'HAYANI' => array('nom'=>"TI HAYANGE", 'siret'=>"17570111900091", 'dep'=>"57"), - 'ROUBAI' => array('nom'=>"TI ROUBAIX", 'siret'=>"17590111500204", 'dep'=>"59"), - 'HAZEBI' => array('nom'=>"TI HAZEBROUCK", 'siret'=>"17590111500634", 'dep'=>"59"), - 'TOURCI' => array('nom'=>"TI ROUBAIX TOURCOING", 'siret'=>"17590111500360", 'dep'=>"59"), - 'BOULAI' => array('nom'=>"TI BOULAY MOSELLE", 'siret'=>"17570111900026", 'dep'=>"57"), - 'SARRBI' => array('nom'=>"TI SARREBOURG", 'siret'=>"17570111900067", 'dep'=>"57"), - 'BEZIEI' => array('nom'=>"TI BEZIERS", 'siret'=>"17340111800174", 'dep'=>"34"), - 'RENNEI' => array('nom'=>"TI RENNES", 'siret'=>"17350111500039", 'dep'=>"35"), - 'FOUGEI' => array('nom'=>"TI FOUGERES", 'siret'=>"17350111500179", 'dep'=>"35"), - 'REDONI' => array('nom'=>"TI REDON", 'siret'=>"17350111500146", 'dep'=>"35"), - 'VENDOI' => array('nom'=>"TI VENDOME", 'siret'=>"17450111400030", 'dep'=>"41"), - 'ORLEAI' => array('nom'=>"TI ORLEANS", 'siret'=>"17450111400139", 'dep'=>"45"), - 'MNTARI' => array('nom'=>"TI MONTARGIS", 'siret'=>"17450111400147", 'dep'=>"45"), - 'PITHII' => array('nom'=>"TI PITHIVIERS", 'siret'=>"17450111400154", 'dep'=>"45"), - 'FIGEAI' => array('nom'=>"TI FIGEAC", 'siret'=>"17470111000127", 'dep'=>"46"), - 'GOURDI' => array('nom'=>"TI GOURDON", 'siret'=>"17470111000093", 'dep'=>"46"), - 'MARVEI' => array('nom'=>"TI MARVEJOLS", 'siret'=>"17300111600081", 'dep'=>"48"), - 'CHOLEI' => array('nom'=>"TI CHOLET", 'siret'=>"17490111600080", 'dep'=>"49"), - 'CHAUMI' => array('nom'=>"TI CHAUMONT", 'siret'=>"17210111500175", 'dep'=>"52"), - 'LANGRI' => array('nom'=>"TI LANGRES", 'siret'=>"17210111500167", 'dep'=>"52"), - 'TOULOI' => array('nom'=>"TI TOULOUSE", 'siret'=>"17310111400325", 'dep'=>"31"), - 'AUCHI' => array('nom'=>"TI AUCH", 'siret'=>"17470111000069", 'dep'=>"32"), - 'CONDOI' => array('nom'=>"TI CONDOM", 'siret'=>"17470111000168", 'dep'=>"32"), - 'MIRANI' => array('nom'=>"TI MIRANDE", 'siret'=>"17470111000119", 'dep'=>"32"), - 'BERNAI' => array('nom'=>"TI BERNAY", 'siret'=>"17760111900387", 'dep'=>"27"), - 'AUDEMI' => array('nom'=>"TI PONT AUDEMER", 'siret'=>"17760111900262", 'dep'=>"27"), - 'ANDELI' => array('nom'=>"TI LES ANDELYS", 'siret'=>"17760111900163", 'dep'=>"27"), - 'BSMERI' => array('nom'=>"TI BOULOGNE SUR MER", 'siret'=>"17590111500105", 'dep'=>"62"), - 'CARVII' => array('nom'=>"TI CARVIN", 'siret'=>"17590111500147", 'dep'=>"62"), - 'LENSI' => array('nom'=>"TI LENS", 'siret'=>"17590111500410", 'dep'=>"62"), - 'BETHUI' => array('nom'=>"TI BETHUNE", 'siret'=>"17590111500063", 'dep'=>"62"), - 'SOMERI' => array('nom'=>"TI SAINT OMER", 'siret'=>"17590111500295", 'dep'=>"62"), - 'FORTFI' => array('nom'=>"TI FORT DE FRANCE", 'siret'=>"17972111300126", 'dep'=>"972"), - 'MORTAI' => array('nom'=>"TI MORTAGNE AU PERCHE", 'siret'=>"17140111000134", 'dep'=>"61"), - 'LOUDEI' => array('nom'=>"TI LOUDEAC", 'siret'=>"17350111500641", 'dep'=>"22"), - 'QUIMPI' => array('nom'=>"TI QUIMPER", 'siret'=>"17350111500591", 'dep'=>"29"), - 'QUIMLI' => array('nom'=>"TI QUIMPERLE", 'siret'=>"17350111500583", 'dep'=>"29"), - 'CHATLI' => array('nom'=>"TI CHATEAULIN", 'siret'=>"17350111500609", 'dep'=>"29"), - 'BRESTI' => array('nom'=>"TI BREST", 'siret'=>"17350111500625", 'dep'=>"29"), - 'MORLAI' => array('nom'=>"TI MORLAIX", 'siret'=>"17350111500617", 'dep'=>"29"), - 'ARCACI' => array('nom'=>"TI ARCACHON", 'siret'=>"17330111000024", 'dep'=>"33"), - 'MONTFI' => array('nom'=>"TI MONTFORT SUR MEU", 'siret'=>"17350111500575", 'dep'=>"35"), - 'VITREI' => array('nom'=>"TI VITRE", 'siret'=>"17350111500682", 'dep'=>"35"), - 'VANNEI' => array('nom'=>"TI VANNES", 'siret'=>"17350111500559", 'dep'=>"56"), - 'LORIEI' => array('nom'=>"TI LORIENT", 'siret'=>"17350111500526", 'dep'=>"56"), - 'PONTII' => array('nom'=>"TI PONTIVY", 'siret'=>"17350111500542", 'dep'=>"56"), - 'AURAYI' => array('nom'=>"TI AURAY", 'siret'=>"17350111500567", 'dep'=>"56"), - 'PLOERI' => array('nom'=>"TI PLOERMEL", 'siret'=>"17350111500534", 'dep'=>"56"), - 'LONSLI' => array('nom'=>"TI LONS LE SAUNIER", 'siret'=>"17250111600344", 'dep'=>"39"), - 'CLAUDI' => array('nom'=>"TI SAINT CLAUDE", 'siret'=>"17250111600393", 'dep'=>"39"), - 'CHAMPI' => array('nom'=>"TI CHAMPAGNOLE", 'siret'=>"17250111600401", 'dep'=>"39"), - 'CHAROI' => array('nom'=>"TI CHAROLLES", 'siret'=>"17210111500431", 'dep'=>"71"), - 'CREUSI' => array('nom'=>"TI LE CREUSOT", 'siret'=>"17210111500399", 'dep'=>"71"), - 'AUTUNI' => array('nom'=>"TI AUTUN", 'siret'=>"17210111500415", 'dep'=>"71"), - 'LOUHAI' => array('nom'=>"TI LOUHANS", 'siret'=>"17210111500407", 'dep'=>"71"), - 'FONTEI' => array('nom'=>"TI FONTENAY LE COMTE", 'siret'=>"17860111800403", 'dep'=>"85"), - 'BELFOI' => array('nom'=>"TI BELFORT", 'siret'=>"17250111600310", 'dep'=>"90"), - 'CAGNEI' => array('nom'=>"TI CAGNES SUR MER", 'siret'=>"17130111200719", 'dep'=>"68"), - 'AGENI' => array('nom'=>"TI AGEN", 'siret'=>"17470111000218", 'dep'=>"47"), - 'MARMAI' => array('nom'=>"TI MARMANDE", 'siret'=>"17470111000226", 'dep'=>"47"), - 'VILOTI' => array('nom'=>"TI VILLENEUVE SUR LOT", 'siret'=>"17470111000242", 'dep'=>"47"), - 'NERACI' => array('nom'=>"TI NERAC", 'siret'=>"17470111000234", 'dep'=>"47"), - 'PAUI' => array('nom'=>"TI PAU", 'siret'=>"17640111500215", 'dep'=>"64"), - 'LILLEI' => array('nom'=>"TI LILLE", 'siret'=>"17590111500717", 'dep'=>"59"), - 'ARRASI' => array('nom'=>"TI ARRAS", 'siret'=>"17590111500808", 'dep'=>"62"), - 'LARGEI' => array('nom'=>"TI LARGENTIERE", 'siret'=>"17300111600255", 'dep'=>"71"), - 'MANSI' => array('nom'=>"TI LE MANS", 'siret'=>"17490111600361", 'dep'=>"72"), - 'ST LOI' => array('nom'=>"TI SAINT LO", 'siret'=>"17140111000324", 'dep'=>"50"), - 'AVRAI' => array('nom'=>"TI AVRANCHES", 'siret'=>"17140111000233", 'dep'=>"50"), - 'VALOGI' => array('nom'=>"TI VALOGNES", 'siret'=>"17140111000340", 'dep'=>"50"), - 'VINCEI' => array('nom'=>"TI VINCENNES", 'siret'=>"17750111100989", 'dep'=>"94"), - 'LODEVI' => array('nom'=>"TI LODEVE", 'siret'=>"17340111800349", 'dep'=>"34"), - 'TOULI' => array('nom'=>"TI TOUL", 'siret'=>"17540111600355", 'dep'=>"54"), - 'CARCAI' => array('nom'=>"TI CARCASSONNE", 'siret'=>"17340111800364", 'dep'=>"11"), - 'NARBOI' => array('nom'=>"TI NARBONNE", 'siret'=>"17340111800372", 'dep'=>"11"), - 'MILLAI' => array('nom'=>"TI MILLAU", 'siret'=>"17340111800380", 'dep'=>"12"), - 'SETEI' => array('nom'=>"TI SETE", 'siret'=>"17340111800430", 'dep'=>"34"), - 'CERETI' => array('nom'=>"TI CERET", 'siret'=>"17340111800471", 'dep'=>"66"), - 'PRADEI' => array('nom'=>"TI PRADES", 'siret'=>"17340111800463", 'dep'=>"66"), - 'DIGNEI' => array('nom'=>"TI DIGNE", 'siret'=>"17130111200727", 'dep'=>"40"), - 'SPAULI' => array('nom'=>"TI SAINT PAUL", 'siret'=>"17974111100076", 'dep'=>"978"), - 'BENOII' => array('nom'=>"TI SAINT BENOIT", 'siret'=>"17974111100084", 'dep'=>"974"), - 'MIRECI' => array('nom'=>"TI MIRECOURT", 'siret'=>"17540111600397", 'dep'=>"88"), - 'MIHIEI' => array('nom'=>"TI SAINT MIHIEL", 'siret'=>"17540111600405", 'dep'=>"55"), - 'YRIEXI' => array('nom'=>"TI SAINT YRIEIX LA PERCHE", 'siret'=>"17870111600265", 'dep'=>"87"), - 'BARCEI' => array('nom'=>"TI BARCELONNETTE", 'siret'=>"17130111200743", 'dep'=>"44"), - 'LUNEVI' => array('nom'=>"TI LUNEVILLE", 'siret'=>"17540111600421", 'dep'=>"54"), - 'REMIRI' => array('nom'=>"TI REMIREMONT", 'siret'=>"17540111600439", 'dep'=>"88"), - 'ALENCI' => array('nom'=>"TI ALENCON", 'siret'=>"17140111000381", 'dep'=>"61"), - 'RODEZI' => array('nom'=>"TI RODEZ", 'siret'=>"17340111800554", 'dep'=>"12"), - 'MONTPI' => array('nom'=>"TI MONTPELLIER", 'siret'=>"17340111800604", 'dep'=>"34"), - 'PERPII' => array('nom'=>"TI PERPIGNAN", 'siret'=>"17340111800620", 'dep'=>"66"), - 'CAENI' => array('nom'=>"TI CAEN", 'siret'=>"17140111000456", 'dep'=>"14"), - 'CHERBI' => array('nom'=>"TI CHERBOURG OCTEVILLE", 'siret'=>"17140111000423", 'dep'=>"50"), - 'FLORAI' => array('nom'=>"TI FLORAC", 'siret'=>"17300111600339", 'dep'=>"48"), - 'RAULTI' => array('nom'=>"TI CHATELLERAULT", 'siret'=>"17860111800585", 'dep'=>"86"), - 'STDIEI' => array('nom'=>"TI SAINT DIE", 'siret'=>"17540111600488", 'dep'=>"88"), - 'MEAUXI' => array('nom'=>"TI MEAUX", 'siret'=>"17750111101250", 'dep'=>"77"), - 'AUBAGI' => array('nom'=>"TI AUBAGNE", 'siret'=>"17130111200339", 'dep'=>"13"), - 'BRIGNI' => array('nom'=>"TI BRIGNOLES", 'siret'=>"17130111200545", 'dep'=>"83"), - 'CANNEI' => array('nom'=>"TI CANNES", 'siret'=>"17130111200362", 'dep'=>"64"), - 'ABBEVI' => array('nom'=>"TI ABBEVILLE", 'siret'=>"17800111100396", 'dep'=>"80"), - 'AIXLEI' => array('nom'=>"TI AIX LES BAINS", 'siret'=>"17730111600253", 'dep'=>"73"), - 'ALTKII' => array('nom'=>"TI ALTKIRCH", 'siret'=>"17680111600094", 'dep'=>"68"), - 'AMIENI' => array('nom'=>"TI AMIENS", 'siret'=>"17800111100404", 'dep'=>"80"), - 'ANNECI' => array('nom'=>"TI ANNECY", 'siret'=>"17730111600154", 'dep'=>"74"), - 'ANNEMI' => array('nom'=>"TI ANNEMASSE", 'siret'=>"17730111600303", 'dep'=>"74"), - 'ANTIBI' => array('nom'=>"TI ANTIBES", 'siret'=>"17130111200354", 'dep'=>"66"), - 'ANTONI' => array('nom'=>"TI ANTONY", 'siret'=>"17780111500250", 'dep'=>"92"), - 'ARGENI' => array('nom'=>"TI ARGENTAN", 'siret'=>"17140111000357", 'dep'=>"61"), - 'ARLESI' => array('nom'=>"TI ARLES", 'siret'=>"17130111200115", 'dep'=>"13"), - 'ARPAJI' => array('nom'=>"TI ARPAJON", 'siret'=>"17750111100906", 'dep'=>"91"), - 'ASNIEI' => array('nom'=>"TI ASNIERES SUR SEINE", 'siret'=>"17780111500268", 'dep'=>"92"), - 'AUBERI' => array('nom'=>"TI AUBERVILLIERS", 'siret'=>"17750111100534", 'dep'=>"93"), - 'AULNAI' => array('nom'=>"TI AULNAY SOUS BOIS", 'siret'=>"17750111100104", 'dep'=>"93"), - 'AVALLI' => array('nom'=>"TI AVALLON", 'siret'=>"17750111101243", 'dep'=>"89"), - 'ECOUEI' => array('nom'=>"TI ECOUEN", 'siret'=>"17780111500219", 'dep'=>"95"), - 'EVRYI' => array('nom'=>"TI EVRY", 'siret'=>"17750111101110", 'dep'=>"91"), - 'SANNOI' => array('nom'=>"TI SANNOIS", 'siret'=>"17780111500474", 'dep'=>"95"), - 'HYEREI' => array('nom'=>"TI HYERES", 'siret'=>"17130111200537", 'dep'=>"83"), - 'ILLKII' => array('nom'=>"TI ILLKIRCH GRAFFENSTADEN", 'siret'=>"17680111600201", 'dep'=>"67"), - 'OLOROI' => array('nom'=>"TI OLORON SAINTE MARIE", 'siret'=>"17640111500207", 'dep'=>"64"), - 'ORANGI' => array('nom'=>"TI ORANGE", 'siret'=>"17300111600149", 'dep'=>"84"), - 'ORTHEI' => array('nom'=>"TI ORTHEZ", 'siret'=>"17640111500199", 'dep'=>"64"), - 'BARSEI' => array('nom'=>"TI BAR SUR SEINE", 'siret'=>"17510111200365", 'dep'=>"10"), - 'BAUGEI' => array('nom'=>"TI BAUGE", 'siret'=>"17490111600346", 'dep'=>"49"), - 'BAYEUI' => array('nom'=>"TI BAYEUX", 'siret'=>"17140111000472", 'dep'=>"14"), - 'BEAUVI' => array('nom'=>"TI BEAUVAIS", 'siret'=>"17800111100453", 'dep'=>"60"), - 'BLAYEI' => array('nom'=>"TI BLAYE", 'siret'=>"17330111000446", 'dep'=>"33"), - 'BLOISI' => array('nom'=>"TI BLOIS", 'siret'=>"17450111400287", 'dep'=>"41"), - 'BOBIGI' => array('nom'=>"TI BOBIGNY", 'siret'=>"17750111101086", 'dep'=>"93"), - 'BOULOI' => array('nom'=>"TI BOULOGNE BILLANCOURT", 'siret'=>"17780111500276", 'dep'=>"92"), - 'BRUMAI' => array('nom'=>"TI BRUMATH", 'siret'=>"17680111600250", 'dep'=>"67"), - 'CTHIEI' => array('nom'=>"TI CHATEAU THIERRY", 'siret'=>"17800111100362", 'dep'=>"24"), - 'CHINNI' => array('nom'=>"TI CHINON", 'siret'=>"17450111400253", 'dep'=>"37"), - 'CLEROI' => array('nom'=>"TI CLERMONT", 'siret'=>"17800111100461", 'dep'=>"60"), - 'CLICHI' => array('nom'=>"TI CLICHY", 'siret'=>"17780111500284", 'dep'=>"92"), - 'COLOMI' => array('nom'=>"TI COLOMBES", 'siret'=>"17780111500292", 'dep'=>"92"), - 'COMPII' => array('nom'=>"TI COMPIEGNE", 'siret'=>"17800111100487", 'dep'=>"60"), - 'COURBI' => array('nom'=>"TI COURBEVOIE", 'siret'=>"17780111500318", 'dep'=>"92"), - 'DIEPPI' => array('nom'=>"TI DIEPPE", 'siret'=>"17760111900247", 'dep'=>"76"), - 'DOULLI' => array('nom'=>"TI DOULLENS", 'siret'=>"17800111100420", 'dep'=>"80"), - 'DOURDI' => array('nom'=>"TI DOURDAN", 'siret'=>"17750111100914", 'dep'=>"91"), - 'FALAII' => array('nom'=>"TI FALAISE", 'siret'=>"17140111000498", 'dep'=>"14"), - 'FREJUI' => array('nom'=>"TI FREJUS", 'siret'=>"17130111200560", 'dep'=>"83"), - 'GIENI' => array('nom'=>"TI GIEN", 'siret'=>"17450111400188", 'dep'=>"45"), - 'GONESI' => array('nom'=>"TI GONESSE", 'siret'=>"17780111500227", 'dep'=>"95"), - 'GRASSI' => array('nom'=>"TI GRASSE", 'siret'=>"17130111200370", 'dep'=>"61"), - 'GRENOI' => array('nom'=>"TI GRENOBLE", 'siret'=>"17380111900038", 'dep'=>"38"), - 'GUEBWI' => array('nom'=>"TI GUEBWILLER", 'siret'=>"17680111600086", 'dep'=>"68"), - 'HAGUEI' => array('nom'=>"TI HAGUENAU", 'siret'=>"17680111600219", 'dep'=>"67"), - 'HUNINI' => array('nom'=>"TI HUNINGUE", 'siret'=>"17680111600060", 'dep'=>"68"), - 'JUVISI' => array('nom'=>"TI JUVISY SUR ORGE", 'siret'=>"17750111100898", 'dep'=>"91"), - 'LAONI' => array('nom'=>"TI LAON", 'siret'=>"17800111100446", 'dep'=>"20"), - 'LEVALI' => array('nom'=>"TI LEVALLOIS PERRET", 'siret'=>"17780111500300", 'dep'=>"92"), - 'LISIEI' => array('nom'=>"TI LISIEUX", 'siret'=>"17140111000399", 'dep'=>"14"), - 'LOCHEI' => array('nom'=>"TI LOCHES", 'siret'=>"17450111400246", 'dep'=>"37"), - 'LOUDUI' => array('nom'=>"TI LOUDUN", 'siret'=>"17860111800551", 'dep'=>"86"), - 'LOURDI' => array('nom'=>"TI LOURDES", 'siret'=>"17640111500058", 'dep'=>"65"), - 'MANTEI' => array('nom'=>"TI MANTES LA JOLIE", 'siret'=>"17780111500193", 'dep'=>"78"), - 'MELLEI' => array('nom'=>"TI MELLE", 'siret'=>"17860111800536", 'dep'=>"79"), - 'MOLSHI' => array('nom'=>"TI MOLSHEIM", 'siret'=>"17680111600243", 'dep'=>"67"), - 'MONTDI' => array('nom'=>"TI MONTDIDIER", 'siret'=>"17800111100412", 'dep'=>"80"), - 'MONTYI' => array('nom'=>"TI MONTMORENCY", 'siret'=>"17780111500235", 'dep'=>"95"), - 'SDENII' => array('nom'=>"TI SAINT DENIS", 'siret'=>"17750111101060", 'dep'=>"93"), - 'STOUEI' => array('nom'=>"TI SAINT OUEN", 'siret'=>"17750111101078", 'dep'=>"93"), - 'SALONI' => array('nom'=>"TI SALON DE PROVENCE", 'siret'=>"17130111200131", 'dep'=>"13"), - 'SARLAI' => array('nom'=>"TI SARLAT LA CANEDA", 'siret'=>"17330111000271", 'dep'=>"24"), - 'SCHILI' => array('nom'=>"TI SCHILTIGHEIM", 'siret'=>"17680111600185", 'dep'=>"67"), - 'SEGREI' => array('nom'=>"TI SEGRE", 'siret'=>"17490111600387", 'dep'=>"49"), - 'SELESI' => array('nom'=>"TI SELESTAT", 'siret'=>"17680111600177", 'dep'=>"67"), - 'SENLII' => array('nom'=>"TI SENLIS", 'siret'=>"17800111100479", 'dep'=>"60"), - 'SOISSI' => array('nom'=>"TI SOISSONS", 'siret'=>"17800111100370", 'dep'=>"22"), - 'SPALAI' => array('nom'=>"TI SAINT PALAIS", 'siret'=>"17640111500223", 'dep'=>"64"), - 'SQUENI' => array('nom'=>"TI SAINT QUENTIN", 'siret'=>"17800111100438", 'dep'=>"23"), - 'THANNI' => array('nom'=>"TI THANN", 'siret'=>"17680111600037", 'dep'=>"68"), - 'TOULNI' => array('nom'=>"TI TOULON", 'siret'=>"17130111200578", 'dep'=>"83"), - 'TOURSI' => array('nom'=>"TI TOURS", 'siret'=>"17450111400220", 'dep'=>"37"), - 'SANCEI' => array('nom'=>"TI SANCERRE", 'siret'=>"17180111100153", 'dep'=>"18"), - 'SCALAI' => array('nom'=>"TI SAINT CALAIS", 'siret'=>"17490111600114", 'dep'=>"72"), - 'SGERMI' => array('nom'=>"TI SAINT GERMAIN EN LAYE", 'siret'=>"17780111500177", 'dep'=>"78"), - 'TARASI' => array('nom'=>"TI TARASCON", 'siret'=>"17130111200420", 'dep'=>"13"), - 'ERSTEI' => array('nom'=>"TI ERSTEIN", 'siret'=>"17680111600193", 'dep'=>"67"), - 'MUNSTI' => array('nom'=>"TI MUNSTER", 'siret'=>"17680111600052", 'dep'=>"68"), - 'SCHIRI' => array('nom'=>"TI SCHIRMECK", 'siret'=>"17680111600169", 'dep'=>"67"), - 'WOERTI' => array('nom'=>"TI WOERTH", 'siret'=>"17680111600151", 'dep'=>"67"), - 'MOUSS' => array('nom'=>"TI PONT A MOUSSON", 'siret'=>"17540111600496", 'dep'=>"54"), - 'BITCHI' => array('nom'=>"TI BITCHE", 'siret'=>"17570111900240", 'dep'=>"57"), - 'BOUZOI' => array('nom'=>"TI BOUZONVILLE", 'siret'=>"17570111900257", 'dep'=>"57"), - 'FAULQI' => array('nom'=>"TI FAULQUEMONT", 'siret'=>"17570111900265", 'dep'=>"57"), - 'MORHAI' => array('nom'=>"TI MORHANGE", 'siret'=>"17570111900273", 'dep'=>"57"), - 'PHALSI' => array('nom'=>"TI PHALSBOURG", 'siret'=>"17570111900281", 'dep'=>"57"), - 'ROHRBI' => array('nom'=>"TI ROHRBACH LES BITCHE", 'siret'=>"17570111900299", 'dep'=>"57"), - 'VERDUI' => array('nom'=>"TI VERDUN", 'siret'=>"17540111600264", 'dep'=>"55"), - 'GENNEI' => array('nom'=>"TI SAINT JULIEN EN GENEVOIS", 'siret'=>"17730111600170", 'dep'=>"74"), - 'BONNEI' => array('nom'=>"TI BONNEVILLE", 'siret'=>"17730111600022", 'dep'=>"74"), - 'LIMOUI' => array('nom'=>"TI LIMOUX", 'siret'=>"17340111800067", 'dep'=>"11"), - 'CASTLI' => array('nom'=>"TI CASTELNAUDARY", 'siret'=>"17340111800059", 'dep'=>"11"), - 'DINANI' => array('nom'=>"TI DINAN", 'siret'=>"17350111500674", 'dep'=>"22"), - 'LANNII' => array('nom'=>"TI LANNION", 'siret'=>"17350111500658", 'dep'=>"22"), - 'PAIMPI' => array('nom'=>"TI PAIMPOL", 'siret'=>"17350111500666", 'dep'=>"22"), - 'BELLII' => array('nom'=>"TI MONTBELIARD", 'siret'=>"17250111600419", 'dep'=>"25"), - 'BRIEUI' => array('nom'=>"TI SAINT BRIEUC", 'siret'=>"17350111500633", 'dep'=>"22"), - 'MINESI' => array('nom'=>"TI SAINTE MARIE AUX MINES", 'siret'=>"17680111600029", 'dep'=>"68"), - 'LAURAI' => array('nom'=>"TI VILLEFRANCHE DE LAURAGAIS", 'siret'=>"17310111400366", 'dep'=>"31"), - 'GAUDEI' => array('nom'=>"TI SAINT GAUDENS", 'siret'=>"17310111400200", 'dep'=>"31"), - 'SALINI' => array('nom'=>"TI CHATEAU SALINS", 'siret'=>"17570111900034", 'dep'=>"57"), - 'AVOLDI' => array('nom'=>"TI SAINT AVOLD", 'siret'=>"17570111900075", 'dep'=>"57"), - 'VALECI' => array('nom'=>"TI VALENCIENNES", 'siret'=>"17590111500162", 'dep'=>"59"), - 'CHATII' => array('nom'=>"TI CHATILLON SUR SEINE", 'siret'=>"17210111500373", 'dep'=>"21"), - 'CHASOI' => array('nom'=>"TI CHALON SUR SAONE", 'siret'=>"17210111500381", 'dep'=>"71"), - 'MORTNI' => array('nom'=>"TI MORTAIN", 'siret'=>"17140111000316", 'dep'=>"50"), - 'BESANI' => array('nom'=>"TI BESANCON", 'siret'=>"17250111600211", 'dep'=>"25"), - 'AGENE' => array('nom'=>"Tribunal pour Enfants d'Agen", 'siret'=>"", 'dep'=>"47"), - 'AIXE' => array('nom'=>"Tribunal pour Enfants d'Aix-en-Provence", 'siret'=>"", 'dep'=>"13"), - 'AJACCE' => array('nom'=>"Tribunal pour Enfants d'Ajaccio", 'siret'=>"", 'dep'=>"20"), - 'ALBIE' => array('nom'=>"Tribunal pour Enfants d'Albi", 'siret'=>"", 'dep'=>"81"), - 'ALENCE' => array('nom'=>"Tribunal pour Enfants d'Alençon", 'siret'=>"", 'dep'=>"61"), - 'AMIENE' => array('nom'=>"Tribunal pour Enfants d'Amiens", 'siret'=>"", 'dep'=>"80"), - 'ANGERE' => array('nom'=>"Tribunal pour Enfants d'Angers", 'siret'=>"", 'dep'=>"49"), - 'ANGOUE' => array('nom'=>"Tribunal pour Enfants d'Angoulême", 'siret'=>"", 'dep'=>"16"), - 'ANNECE' => array('nom'=>"Tribunal pour Enfants d'Annecy", 'siret'=>"", 'dep'=>"74"), - 'ARRASE' => array('nom'=>"Tribunal pour Enfants d'Arras", 'siret'=>"", 'dep'=>"62"), - 'AUCHE' => array('nom'=>"Tribunal pour Enfants d'Auch", 'siret'=>"", 'dep'=>"32"), - 'AURILE' => array('nom'=>"Tribunal pour Enfants d'Aurillac", 'siret'=>"", 'dep'=>"15"), - 'AUXERE' => array('nom'=>"Tribunal pour Enfants d'Auxerre", 'siret'=>"", 'dep'=>"89"), - 'AVESNE' => array('nom'=>"Tribunal pour Enfants d'Avesnes-sur-Helpe", 'siret'=>"", 'dep'=>"59"), - 'AVIGNE' => array('nom'=>"Tribunal pour Enfants d'Avignon", 'siret'=>"", 'dep'=>"84"), - 'BASSEE' => array('nom'=>"Tribunal pour Enfants de Basse-Terre", 'siret'=>"", 'dep'=>"971"), - 'BASTIE' => array('nom'=>"Tribunal pour Enfants de Bastia", 'siret'=>"", 'dep'=>"20"), - 'BAYONE' => array('nom'=>"Tribunal pour Enfants de Bayonne", 'siret'=>"", 'dep'=>"64"), - 'BEAUVE' => array('nom'=>"Tribunal pour Enfants de Beauvais", 'siret'=>"", 'dep'=>"60"), - 'BELFOE' => array('nom'=>"Tribunal pour Enfants de Belfort", 'siret'=>"", 'dep'=>"90"), - 'BERGEE' => array('nom'=>"Tribunal pour Enfants de Bergerac", 'siret'=>"", 'dep'=>"24"), - 'BESANE' => array('nom'=>"Tribunal pour Enfants de Besançon", 'siret'=>"", 'dep'=>"25"), - 'BETHUE' => array('nom'=>"Tribunal pour Enfants de Béthune", 'siret'=>"", 'dep'=>"62"), - 'BEZIEE' => array('nom'=>"Tribunal pour Enfants de Béziers", 'siret'=>"", 'dep'=>"34"), - 'BLOISE' => array('nom'=>"Tribunal pour Enfants de Blois", 'siret'=>"", 'dep'=>"41"), - 'BOBIGE' => array('nom'=>"Tribunal pour Enfants de Bobigny", 'siret'=>"", 'dep'=>"93"), - 'BORDEE' => array('nom'=>"Tribunal pour Enfants de Bordeaux", 'siret'=>"", 'dep'=>"33"), - 'BOULOE' => array('nom'=>"Tribunal pour Enfants de Boulogne-Sur-Mer", 'siret'=>"", 'dep'=>"62"), - 'BOURGE' => array('nom'=>"Tribunal pour Enfants de Bourg-en-Bresse", 'siret'=>"", 'dep'=>"10"), - 'BOURHE' => array('nom'=>"Tribunal pour Enfants de Bourges", 'siret'=>"", 'dep'=>"18"), - 'JALLIE' => array('nom'=>"Tribunal pour Enfants de Bourgoin-Jallieu", 'siret'=>"", 'dep'=>"38"), - 'BRESTE' => array('nom'=>"Tribunal pour Enfants de Brest", 'siret'=>"", 'dep'=>"29"), - 'BRIEYE' => array('nom'=>"Tribunal pour Enfants de Briey", 'siret'=>"", 'dep'=>"54"), - 'BRIVEE' => array('nom'=>"Tribunal pour Enfants de Brive-la-Gaillarde", 'siret'=>"", 'dep'=>"19"), - 'CAENE' => array('nom'=>"Tribunal pour Enfants de Caen", 'siret'=>"", 'dep'=>"14"), - 'CAHORE' => array('nom'=>"Tribunal pour Enfants de Cahors", 'siret'=>"", 'dep'=>"46"), - 'CAMBRE' => array('nom'=>"Tribunal pour Enfants de Cambrai", 'siret'=>"", 'dep'=>"59"), - 'CARCAE' => array('nom'=>"Tribunal pour Enfants de Carcassonne", 'siret'=>"", 'dep'=>"11"), - 'CARPEE' => array('nom'=>"Tribunal pour Enfants de Carpentras", 'siret'=>"", 'dep'=>"84"), - 'CASTRE' => array('nom'=>"Tribunal pour Enfants de Castres", 'siret'=>"", 'dep'=>"81"), - 'CAYENE' => array('nom'=>"Tribunal pour Enfants de Cayenne", 'siret'=>"", 'dep'=>"973"), - 'CHALOE' => array('nom'=>"Tribunal pour Enfants de Châlons-en-Champagne", 'siret'=>"", 'dep'=>"51"), - 'CHALSE' => array('nom'=>"Tribunal pour Enfants de Chalon-sur-Saône", 'siret'=>"", 'dep'=>"71"), - 'CHAMBE' => array('nom'=>"Tribunal pour Enfants de Chambéry", 'siret'=>"", 'dep'=>"73"), - 'CHARLE' => array('nom'=>"Tribunal pour Enfants de Charleville-Mézières", 'siret'=>"", 'dep'=>"80"), - 'CHARTE' => array('nom'=>"Tribunal pour Enfants de Chartres", 'siret'=>"", 'dep'=>"28"), - 'CHATEE' => array('nom'=>"Tribunal pour Enfants de Châteauroux", 'siret'=>"", 'dep'=>"36"), - 'CHAUME' => array('nom'=>"Tribunal pour Enfants de Chaumont", 'siret'=>"", 'dep'=>"52"), - 'CHERBE' => array('nom'=>"Tribunal pour Enfants de Cherbourg", 'siret'=>"", 'dep'=>"50"), - 'CLERME' => array('nom'=>"Tribunal pour Enfants de Clermont-Ferrand", 'siret'=>"", 'dep'=>"63"), - 'COLMAE' => array('nom'=>"Tribunal pour Enfants de Colmar", 'siret'=>"", 'dep'=>"68"), - 'COMPIE' => array('nom'=>"Tribunal pour Enfants de Compiègne", 'siret'=>"", 'dep'=>"60"), - 'COUTAE' => array('nom'=>"Tribunal pour Enfants de Coutances", 'siret'=>"", 'dep'=>"50"), - 'CRETEE' => array('nom'=>"Tribunal pour Enfants de Créteil", 'siret'=>"", 'dep'=>"94"), - 'DAXE' => array('nom'=>"Tribunal pour Enfants de Dax", 'siret'=>"", 'dep'=>"40"), - 'DIEPPE' => array('nom'=>"Tribunal pour Enfants de Dieppe", 'siret'=>"", 'dep'=>"76"), - 'DIGNEE' => array('nom'=>"Tribunal pour Enfants de Digne-les-Bains", 'siret'=>"", 'dep'=>"40"), - 'DIJONE' => array('nom'=>"Tribunal pour Enfants de Dijon", 'siret'=>"", 'dep'=>"21"), - 'DOUAIE' => array('nom'=>"Tribunal pour Enfants de Douai", 'siret'=>"", 'dep'=>"59"), - 'DRAGUE' => array('nom'=>"Tribunal pour Enfants de Draguignan", 'siret'=>"", 'dep'=>"83"), - 'DUNKEE' => array('nom'=>"Tribunal pour Enfants de Dunkerque", 'siret'=>"", 'dep'=>"59"), - 'FOIXE' => array('nom'=>"Tribunal pour Enfants de Foix", 'siret'=>"", 'dep'=>"90"), - 'FORTDE' => array('nom'=>"Tribunal pour Enfants de Fort-de-France", 'siret'=>"", 'dep'=>"972"), - 'GAPE' => array('nom'=>"Tribunal pour Enfants de Gap", 'siret'=>"", 'dep'=>"50"), - 'GRASSE' => array('nom'=>"Tribunal pour Enfants de Grasse", 'siret'=>"", 'dep'=>"61"), - 'GRENOE' => array('nom'=>"Tribunal pour Enfants de Grenoble", 'siret'=>"", 'dep'=>"38"), - 'GUEREE' => array('nom'=>"Tribunal pour Enfants de Guéret", 'siret'=>"", 'dep'=>"23"), - 'GUINGE' => array('nom'=>"Tribunal pour Enfants de Guingamp", 'siret'=>"", 'dep'=>"22"), - 'LAROCE' => array('nom'=>"Tribunal pour Enfants de La Rochelle", 'siret'=>"", 'dep'=>"17"), - 'LAONE' => array('nom'=>"Tribunal pour Enfants de Laon", 'siret'=>"", 'dep'=>"20"), - 'LAVALE' => array('nom'=>"Tribunal pour Enfants de Laval", 'siret'=>"", 'dep'=>"53"), - 'LIBOUE' => array('nom'=>"Tribunal pour Enfants de Libourne", 'siret'=>"", 'dep'=>"33"), - 'LILLEE' => array('nom'=>"Tribunal pour Enfants de Lille", 'siret'=>"", 'dep'=>"59"), - 'LIMOGE' => array('nom'=>"Tribunal pour Enfants de Limoges", 'siret'=>"", 'dep'=>"87"), - 'LONSLE' => array('nom'=>"Tribunal pour Enfants de Lons-Le-Saunier", 'siret'=>"", 'dep'=>"39"), - 'LORIEE' => array('nom'=>"Tribunal pour Enfants de Lorient", 'siret'=>"", 'dep'=>"56"), - 'LYONE' => array('nom'=>"Tribunal pour Enfants de Lyon", 'siret'=>"", 'dep'=>"69"), - 'MACONE' => array('nom'=>"Tribunal pour Enfants de Mâcon", 'siret'=>"", 'dep'=>"71"), - 'MAMOUE' => array('nom'=>"Tribunal pour Enfants de Mamoudzou", 'siret'=>"", 'dep'=>"976"), - 'MARSEE' => array('nom'=>"Tribunal pour Enfants de Marseille", 'siret'=>"", 'dep'=>"13"), - 'UVEAE' => array('nom'=>"Tribunal pour Enfants de Mata-Hutu", 'siret'=>"", 'dep'=>"986"), - 'MEAUXE' => array('nom'=>"Tribunal pour Enfants de Meaux", 'siret'=>"", 'dep'=>"77"), - 'MELUNE' => array('nom'=>"Tribunal pour Enfants de Melun", 'siret'=>"", 'dep'=>"77"), - 'MENDEE' => array('nom'=>"Tribunal pour Enfants de Mende", 'siret'=>"", 'dep'=>"48"), - 'METZE' => array('nom'=>"Tribunal pour Enfants de Metz", 'siret'=>"", 'dep'=>"57"), - 'MONTAE' => array('nom'=>"Tribunal pour Enfants de Montargis", 'siret'=>"", 'dep'=>"45"), - 'MONTBE' => array('nom'=>"Tribunal pour Enfants de Montbéliard", 'siret'=>"", 'dep'=>"25"), - 'MONTDE' => array('nom'=>"Tribunal pour Enfants de Mont-de-Marsan", 'siret'=>"", 'dep'=>"40"), - 'MONTPE' => array('nom'=>"Tribunal pour Enfants de Montpellier", 'siret'=>"", 'dep'=>"34"), - 'MOULIE' => array('nom'=>"Tribunal pour Enfants de Moulins", 'siret'=>"", 'dep'=>"30"), - 'MULHOE' => array('nom'=>"Tribunal pour Enfants de Mulhouse", 'siret'=>"", 'dep'=>"68"), - 'NANCYE' => array('nom'=>"Tribunal pour Enfants de Nancy", 'siret'=>"", 'dep'=>"54"), - 'NANTEE' => array('nom'=>"Tribunal pour Enfants de Nanterre", 'siret'=>"", 'dep'=>"92"), - 'NARBOE' => array('nom'=>"Tribunal pour Enfants de Narbonne", 'siret'=>"", 'dep'=>"11"), - 'NEVERE' => array('nom'=>"Tribunal pour Enfants de Nevers", 'siret'=>"", 'dep'=>"58"), - 'NICEE' => array('nom'=>"Tribunal pour Enfants de Nice", 'siret'=>"", 'dep'=>"63"), - 'NIMESE' => array('nom'=>"Tribunal pour Enfants de Nîmes", 'siret'=>"", 'dep'=>"30"), - 'NIORTE' => array('nom'=>"Tribunal pour Enfants de Niort", 'siret'=>"", 'dep'=>"79"), - 'NOUMEE' => array('nom'=>"Tribunal pour Enfants de Nouméa", 'siret'=>"", 'dep'=>"988"), - 'PAPEEE' => array('nom'=>"Tribunal pour Enfants de Papeete", 'siret'=>"", 'dep'=>"987"), - 'PARISE' => array('nom'=>"Tribunal pour Enfants de Paris", 'siret'=>"", 'dep'=>"75"), - 'PAUE' => array('nom'=>"Tribunal pour Enfants de Pau", 'siret'=>"", 'dep'=>"64"), - 'PERIGE' => array('nom'=>"Tribunal pour Enfants de Périgueux", 'siret'=>"", 'dep'=>"24"), - 'PERPIE' => array('nom'=>"Tribunal pour Enfants de Perpignan", 'siret'=>"", 'dep'=>"66"), - 'POINTE' => array('nom'=>"Tribunal pour Enfants de Pointe-à-Pitre", 'siret'=>"", 'dep'=>"971"), - 'POITIE' => array('nom'=>"Tribunal pour Enfants de Poitiers", 'siret'=>"", 'dep'=>"86"), - 'CERGYE' => array('nom'=>"Tribunal pour Enfants de Pontoise", 'siret'=>"", 'dep'=>"95"), - 'PRIVAE' => array('nom'=>"Tribunal pour Enfants de Privas", 'siret'=>"", 'dep'=>"70"), - 'QUIMPE' => array('nom'=>"Tribunal pour Enfants de Quimper", 'siret'=>"", 'dep'=>"29"), - 'REIMSE' => array('nom'=>"Tribunal pour Enfants de Reims", 'siret'=>"", 'dep'=>"51"), - 'RENNEE' => array('nom'=>"Tribunal pour Enfants de Rennes", 'siret'=>"", 'dep'=>"35"), - 'ROANNE' => array('nom'=>"Tribunal pour Enfants de Roanne", 'siret'=>"", 'dep'=>"42"), - 'ROCHEE' => array('nom'=>"Tribunal pour Enfants de Rochefort", 'siret'=>"", 'dep'=>"17"), - 'RODEZE' => array('nom'=>"Tribunal pour Enfants de Rodez", 'siret'=>"", 'dep'=>"12"), - 'ROUENE' => array('nom'=>"Tribunal pour Enfants de Rouen", 'siret'=>"", 'dep'=>"76"), - 'STBRIE' => array('nom'=>"Tribunal pour Enfants de Saint-Brieuc", 'siret'=>"", 'dep'=>"22"), - 'STDENE' => array('nom'=>"Tribunal pour Enfants de Saint-Denis-de-La Réunion", 'siret'=>"", 'dep'=>"974"), - 'STETIE' => array('nom'=>"Tribunal pour Enfants de Saint-Etienne", 'siret'=>"", 'dep'=>"42"), - 'STMALE' => array('nom'=>"Tribunal pour Enfants de Saint-Malo", 'siret'=>"", 'dep'=>"35"), - 'STNAZE' => array('nom'=>"Tribunal pour Enfants de Saint-Nazaire", 'siret'=>"", 'dep'=>"44"), - 'STOMEE' => array('nom'=>"Tribunal pour Enfants de Saint-Omer", 'siret'=>"", 'dep'=>"62"), - 'STPIEE' => array('nom'=>"Tribunal pour Enfants de Saint-Pierre", 'siret'=>"", 'dep'=>"974"), - 'STQUEE' => array('nom'=>"Tribunal pour Enfants de Saint-Quentin", 'siret'=>"", 'dep'=>"23"), - 'SARREE' => array('nom'=>"Tribunal pour Enfants de Sarreguemines", 'siret'=>"", 'dep'=>"57"), - 'SAVERE' => array('nom'=>"Tribunal pour Enfants de Saverne", 'siret'=>"", 'dep'=>"67"), - 'SENLIE' => array('nom'=>"Tribunal pour Enfants de Senlis", 'siret'=>"", 'dep'=>"60"), - 'STRASE' => array('nom'=>"Tribunal pour Enfants de Strasbourg", 'siret'=>"", 'dep'=>"67"), - 'TARASE' => array('nom'=>"Tribunal pour Enfants de Tarascon", 'siret'=>"", 'dep'=>"13"), - 'TARBEE' => array('nom'=>"Tribunal pour Enfants de Tarbes", 'siret'=>"", 'dep'=>"65"), - 'THIONE' => array('nom'=>"Tribunal pour Enfants de Thionville", 'siret'=>"", 'dep'=>"57"), - 'THONOE' => array('nom'=>"Tribunal pour Enfants de Thonon-les-Bains", 'siret'=>"", 'dep'=>"74"), - 'TOULOE' => array('nom'=>"Tribunal pour Enfants de Toulon", 'siret'=>"", 'dep'=>"83"), - 'TOURSE' => array('nom'=>"Tribunal pour Enfants de Tours", 'siret'=>"", 'dep'=>"37"), - 'TROYEE' => array('nom'=>"Tribunal pour Enfants de Troyes", 'siret'=>"", 'dep'=>"10"), - 'VALENE' => array('nom'=>"Tribunal pour Enfants de Valence", 'siret'=>"", 'dep'=>"26"), - 'VANNEE' => array('nom'=>"Tribunal pour Enfants de Vannes", 'siret'=>"", 'dep'=>"56"), - 'VERDUE' => array('nom'=>"Tribunal pour Enfants de Verdun", 'siret'=>"", 'dep'=>"55"), - 'VERSAE' => array('nom'=>"Tribunal pour Enfants de Versailles", 'siret'=>"", 'dep'=>"78"), - 'VESOUE' => array('nom'=>"Tribunal pour Enfants de Vesoul", 'siret'=>"", 'dep'=>"70"), - 'VIENNE' => array('nom'=>"Tribunal pour Enfants de Vienne", 'siret'=>"", 'dep'=>"38"), - 'VILLEE' => array('nom'=>"Tribunal pour Enfants de Villefranche-sur-Saône", 'siret'=>"", 'dep'=>"69"), - 'EPINAE' => array('nom'=>"Tribunal pour Enfants d'Epinal", 'siret'=>"", 'dep'=>"88"), - 'EVREUE' => array('nom'=>"Tribunal pour Enfants d'Evreux", 'siret'=>"", 'dep'=>"27"), - 'EVRYE' => array('nom'=>"Tribunal pour Enfants d'Evry", 'siret'=>"", 'dep'=>"91"), - 'ORLEAE' => array('nom'=>"Tribunal pour Enfants d'Orléans", 'siret'=>"", 'dep'=>"45"), - 'LEHAVE' => array('nom'=>"Tribunal pour Enfants du Havre", 'siret'=>"", 'dep'=>"76"), - 'LEMANE' => array('nom'=>"Tribunal pour Enfants du Mans", 'siret'=>"", 'dep'=>"72"), - 'LEPUYE' => array('nom'=>"Tribunal pour Enfants du Puy-en-Velay", 'siret'=>"", 'dep'=>"43"), - 'MARSEG' => array('nom'=>"TGI MARSEILLE", 'siret'=>"17130111200776", 'dep'=>"13"), - 'PARI1I' => array('nom'=>"TI PARIS 1er", 'siret'=>"17750111100484", 'dep'=>"75"), - 'PARI2I' => array('nom'=>"TI PARIS 2ème", 'siret'=>"17750111100294", 'dep'=>"75"), - 'PARI3I' => array('nom'=>"TI PARIS 3ème", 'siret'=>"17750111100450", 'dep'=>"75"), - 'PARI4I' => array('nom'=>"TI PARIS 4ème", 'siret'=>"17750111100302", 'dep'=>"75"), - 'PARI5I' => array('nom'=>"TI PARIS 5ème", 'siret'=>"17750111100310", 'dep'=>"75"), - 'PARI6I' => array('nom'=>"TI PARIS 6ème", 'siret'=>"17750111100260", 'dep'=>"75"), - 'PARI7I' => array('nom'=>"TI PARIS 7ème", 'siret'=>"17750111100286", 'dep'=>"75"), - 'PARI8I' => array('nom'=>"TI PARIS 8ème", 'siret'=>"17750111100278", 'dep'=>"75"), - 'PARI9I' => array('nom'=>"TI PARIS 9ème", 'siret'=>"17750111100336", 'dep'=>"75"), - 'PAR10I' => array('nom'=>"TI PARIS 10ème", 'siret'=>"17750111100328", 'dep'=>"75"), - 'PAR11I' => array('nom'=>"TI PARIS 11ème", 'siret'=>"17750111101151", 'dep'=>"75"), - 'PAR12I' => array('nom'=>"TI PARIS 12ème", 'siret'=>"17750111100393", 'dep'=>"75"), - 'PAR13I' => array('nom'=>"TI PARIS 13ème", 'siret'=>"17750111100401", 'dep'=>"75"), - 'PAR14I' => array('nom'=>"TI PARIS 14ème", 'siret'=>"17750111100435", 'dep'=>"75"), - 'PAR15I' => array('nom'=>"TI PARIS 15ème", 'siret'=>"17750111100419", 'dep'=>"75"), - 'PAR16I' => array('nom'=>"TI PARIS 16ème", 'siret'=>"17750111100344", 'dep'=>"75"), - 'PAR17I' => array('nom'=>"TI PARIS 17ème", 'siret'=>"17750111100351", 'dep'=>"75"), - 'PAR18I' => array('nom'=>"TI PARIS 18ème", 'siret'=>"17750111100377", 'dep'=>"75"), - 'PAR19I' => array('nom'=>"TI PARIS 19ème", 'siret'=>"17750111100369", 'dep'=>"75"), - 'PAR20I' => array('nom'=>"TI PARIS 20ème", 'siret'=>"17750111100427", 'dep'=>"75"), - 'AVESNI' => array('nom'=>"TI AVESNES SUR HELPE", 'siret'=>"17590111500469", 'dep'=>"59"), - 'BASSEI' => array('nom'=>"TI BASSE TERRE", 'siret'=>"17971111400027", 'dep'=>"971"), - 'BAYONI' => array('nom'=>"TI BAYONNE", 'siret'=>"17640111500140", 'dep'=>"64"), - 'COSNEI' => array('nom'=>"TI COSNE COURS SUR LOIRE", 'siret'=>"17180111100419", 'dep'=>"58"), - 'COULOI' => array('nom'=>"TI COULOMIERS", 'siret'=>"17750111100732", 'dep'=>"77"), - 'DUNKEI' => array('nom'=>"TI DUNKERQUE", 'siret'=>"17590111500998", 'dep'=>"59"), - 'FAULTI' => array('nom'=>"TI MONTEREAU", 'siret'=>"17750111101300", 'dep'=>"77"), - 'GAILLI' => array('nom'=>"TI GAILLAC", 'siret'=>"17310111400077", 'dep'=>"81"), - 'LAGNYI' => array('nom'=>"TI LAGNY SUR MARNE", 'siret'=>"17750111100724", 'dep'=>"77"), - 'LIMOGI' => array('nom'=>"TI LIMOGES", 'siret'=>"17870111600059", 'dep'=>"87"), - 'LONGJI' => array('nom'=>"TI LONGJUMEAU", 'siret'=>"17750111100658", 'dep'=>"91"), - 'LUXEUI' => array('nom'=>"TI LUXEUIL LES BAINS", 'siret'=>"17250111600187", 'dep'=>"70"), - 'MAURDI' => array('nom'=>"TI SAINT MAUR DES FOSSES", 'siret'=>"17750111100492", 'dep'=>"94"), - 'PALAII' => array('nom'=>"TI PALAISEAU", 'siret'=>"17750111100526", 'dep'=>"91"), - 'PIERRI' => array('nom'=>"TI SAINT PIERRE", 'siret'=>"17974111100100", 'dep'=>"974"), - 'POINTI' => array('nom'=>"TI POINTE A PITRE", 'siret'=>"17971111400050", 'dep'=>"971"), - 'VILLEI' => array('nom'=>"TI VILLEJUIF", 'siret'=>"17750111101284", 'dep'=>"94"), - 'MARIEI' => array('nom'=>"TI MARIE GALANTE", 'siret'=>"17971111400092", 'dep'=>"971"), - 'FONTI' => array('nom'=>"TI FONTAINEBLEAU", 'siret'=>"17750111101292", 'dep'=>"77"), - 'BRGESI' => array('nom'=>"TI BOURGES", 'siret'=>"17180111100187", 'dep'=>"18"), - 'NOGEMI' => array('nom'=>"TI NOGENT SUR MARNE", 'siret'=>"17750111100500", 'dep'=>"94"), - 'SMARTI' => array('nom'=>"TI SAINT MARTIN", 'siret'=>"17971111400100", 'dep'=>"970"), - 'AIXPRL' => array('nom'=>"Cour d'Appel d'Aix-en-Provence", 'siret'=>"17130111200016", 'dep'=>"13"), - 'AMIENL' => array('nom'=>"Cour d'Appel d'Amiens", 'siret'=>"17800111100016", 'dep'=>"80"), - 'ANGERL' => array('nom'=>"Cour d'Appel d'Angers", 'siret'=>"17490111600015", 'dep'=>"49"), - 'BASSEL' => array('nom'=>"Cour d'Appel de Basse-Terre", 'siret'=>"17971111400019", 'dep'=>"971"), - 'BASTIL' => array('nom'=>"Cour d'Appel de Bastia", 'siret'=>"17202111500016", 'dep'=>"20"), - 'BESANL' => array('nom'=>"Cour d'Appel de Besançon", 'siret'=>"17250111600013", 'dep'=>"25"), - 'BORDEL' => array('nom'=>"Cour d'Appel de Bordeaux", 'siret'=>"17330111000016", 'dep'=>"33"), - 'BOURGL' => array('nom'=>"Cour d'Appel de Bourges", 'siret'=>"17180111100013", 'dep'=>"18"), - 'CAENL' => array('nom'=>"Cour d'Appel de Caen", 'siret'=>"17140111000407", 'dep'=>"14"), - 'CHAMBL' => array('nom'=>"Cour d'Appel de Chambéry", 'siret'=>"17730111600014", 'dep'=>"73"), - 'COLMAL' => array('nom'=>"Cour d'Appel de Colmar", 'siret'=>"17680111600011", 'dep'=>"68"), - 'DIJONL' => array('nom'=>"Cour d'Appel de Dijon", 'siret'=>"17210111500522", 'dep'=>"21"), - 'DOUAIL' => array('nom'=>"Cour d'Appel de Douai", 'siret'=>"17590111500014", 'dep'=>"59"), - 'FORTFL' => array('nom'=>"Cour d'Appel de Fort-de-France", 'siret'=>"17972111300134", 'dep'=>"972"), - 'GRENOL' => array('nom'=>"COUR APPEL GRENOBLE", 'siret'=>"17380111900012", 'dep'=>"38"), - 'LIMOGL' => array('nom'=>"Cour d'Appel de Limoges", 'siret'=>"17870111600018", 'dep'=>"87"), - 'LYONL' => array('nom'=>"Cour d'Appel de Lyon", 'siret'=>"17690111400015", 'dep'=>"69"), - 'METZL' => array('nom'=>"Cour d'Appel de Metz", 'siret'=>"17570111900018", 'dep'=>"57"), - 'MONTPL' => array('nom'=>"COUR APPEL MONTPELLIER", 'siret'=>"17340111800018", 'dep'=>"34"), - 'NANCYL' => array('nom'=>"Cour d'Appel de Nancy", 'siret'=>"17540111600512", 'dep'=>"54"), - 'NIMESL' => array('nom'=>"Cour d'Appel de Nîmes", 'siret'=>"17300111600016", 'dep'=>"30"), - 'NOUMEL' => array('nom'=>"Cour d'Appel de Nouméa", 'siret'=>"13000313000015", 'dep'=>"988"), - 'PAPEEL' => array('nom'=>"Cour d'Appel de Papeete", 'siret'=>"17987642000011", 'dep'=>"987"), - 'PARISL' => array('nom'=>"Cour d'Appel de Paris", 'siret'=>"17750111100013", 'dep'=>"75"), - 'PAUL' => array('nom'=>"Cour d'Appel de Pau", 'siret'=>"17640111500017", 'dep'=>"64"), - 'POITIL' => array('nom'=>"Cour d'Appel de Poitiers", 'siret'=>"17860111800015", 'dep'=>"86"), - 'REIMSL' => array('nom'=>"Cour d'Appel de Reims", 'siret'=>"17510111200407", 'dep'=>"51"), - 'RENNEL' => array('nom'=>"Cour d'Appel de Rennes", 'siret'=>"17350111500013", 'dep'=>"35"), - 'RIOML' => array('nom'=>"Cour d'Appel de Riom", 'siret'=>"17630111700378", 'dep'=>"63"), - 'ROUENL' => array('nom'=>"Cour d'Appel de Rouen", 'siret'=>"17760111900015", 'dep'=>"76"), - 'STDENL' => array('nom'=>"Cour d'Appel de Saint-Denis-de-La Réunion", 'siret'=>"17974111100019", 'dep'=>"974"), - 'TOULOL' => array('nom'=>"Cour d'Appel de Toulouse", 'siret'=>"17310111400507", 'dep'=>"31"), - 'VERSAL' => array('nom'=>"Cour d'Appel de Versailles", 'siret'=>"17780111500011", 'dep'=>"78"), - 'ORLEAL' => array('nom'=>"Cour d'Appel d'Orléans", 'siret'=>"17450111400014", 'dep'=>"45"), - 'CAYENL' => array('nom'=>"Chambre Détachée de la Cour d'Appel de Fort de France à Cayenne", 'siret'=>"17972111300076", 'dep'=>"973"), - 'BORDEV' => array('nom'=>"Cour Administrative d'Appel de Bordeaux", 'siret'=>"17330004700011", 'dep'=>"33"), - 'DOUAIV' => array('nom'=>"Cour Administrative d'Appel de Douai", 'siret'=>"17590804500016", 'dep'=>"59"), - 'LYONV' => array('nom'=>"Cour Administrative d'Appel de Lyon", 'siret'=>"17690004100029", 'dep'=>"69"), - 'MARSEV' => array('nom'=>"Cour Administrative d'Appel de Marseille", 'siret'=>"17131812400012", 'dep'=>"13"), - 'NANCYV' => array('nom'=>"Cour Administrative d'Appel de Nancy", 'siret'=>"17540004300014", 'dep'=>"54"), - 'NANTEV' => array('nom'=>"Cour Administrative d'Appel de Nantes", 'siret'=>"17440004400023", 'dep'=>"44"), - 'PARISV' => array('nom'=>"Cour Administrative d'Appel de Paris", 'siret'=>"17750004800026", 'dep'=>"75"), - 'AGENL' => array('nom'=>"Cour d'Appel d'Agen", 'siret'=>"17470111000374", 'dep'=>"47"), - 'MAMOUW' => array('nom'=>"Tribunal du Travail de Mamoudzou", 'siret'=>"", 'dep'=>"976"), - 'MATAUW' => array('nom'=>"Tribunal du Travail de Mata-Utu", 'siret'=>"", 'dep'=>"986"), - 'NOUMEW' => array('nom'=>"Tribunal du Travail de Nouméa", 'siret'=>"", 'dep'=>"988"), - 'NUKUHW' => array('nom'=>"Tribunal du Travail de Nuku-Hiva", 'siret'=>"", 'dep'=>"987"), - 'PAPEEW' => array('nom'=>"Tribunal du Travail de Papeete", 'siret'=>"", 'dep'=>"987"), - 'RAIATW' => array('nom'=>"Tribunal du Travail de Raïatéa", 'siret'=>"", 'dep'=>"987"), - 'MATAHP' => array('nom'=>"TPI MATA HUTU", 'siret'=>"130003130", 'dep'=>"986"), - 'STMRTB' => array('nom'=>"SOUS PREFECTURE DE ST MARTIN", 'siret'=>"17971001700031", 'dep'=>"971"), - 'STPRMB' => array('nom'=>"SOUS PREFECTURE DE ST PIERRE", 'siret'=>"17972001600064", 'dep'=>"972"), - 'ETATV' => array('nom'=>"Conseil d'Etat", 'siret'=>"11000027000014", 'dep'=>"75"), - 'VERSAV' => array('nom'=>"Cour Administrative de Versailles", 'siret'=>"17780704700010", 'dep'=>"78"), - 'INCONU' => array('nom'=>"Tribunal Inconnu", 'siret'=>"", 'dep'=>"0"), - 'GUEREC' => array('nom'=>"TC GUERET", 'siret'=>"17870111600026", 'dep'=>"23"), - 'ANNECC' => array('nom'=>"TC ANNECY", 'siret'=>"17730111600063", 'dep'=>"74"), - 'THONOC' => array('nom'=>"TC THONON LES BAINS", 'siret'=>"17730111600089", 'dep'=>"74"), - 'STPIEM' => array('nom'=>"TMX SAINT PIERRE DE LA REUNION", 'siret'=>"17974111100035", 'dep'=>"974"), - 'TORCYB' => array('nom'=>"SOUS PREFECTURE DE TORCY", 'siret'=>"17770001000107", 'dep'=>"77"), - 'PARIRA' => array('nom'=>"PREFECTURE DE LA REGION ILE DE FRANCE", 'siret'=>"17750000600016", 'dep'=>"75"), - 'PARIPA' => array('nom'=>"PREFECTURE DE POLICE", 'siret'=>"17750151700011", 'dep'=>"75"), - 'ARCACB' => array('nom'=>"SOUS PREFECTURE D'ARCACHON", 'siret'=>"17330001300229", 'dep'=>"33"), - 'ANDERB' => array('nom'=>"SOUS PREFECTURE DE ANDERNOS LES BAINS", 'siret'=>"173300013", 'dep'=>"33"), - 'SARCEB' => array('nom'=>"SOUS PREFECTURE DE SARCELLES", 'siret'=>"179500012", 'dep'=>"95"), - 'STMAYB' => array('nom'=>"SOUS PREFECTURE DE ST MARTIN ST BARTHELEMY", 'siret'=>"", 'dep'=>"971"), - 'DJOFFJ' => array('nom'=>"DIRECTION DES JOURNAUX OFFICIELS", 'siret'=>"16000102000017", 'dep'=>"75"), - 'FLERSI' => array('nom'=>"TI FLERS", 'siret'=>"17140111000845", 'dep'=>"61"), - 'MBARDI' => array('nom'=>"TI MONTBARD", 'siret'=>"17210111500746", 'dep'=>"21"), - 'AUBENI' => array('nom'=>"TI AUBENAS", 'siret'=>"17300111600636", 'dep'=>"72"), - 'ANNONI' => array('nom'=>"TI ANNONAY", 'siret'=>"17300111600644", 'dep'=>"71"), - 'PERTUI' => array('nom'=>"TI PERTUIS", 'siret'=>"17300111600651", 'dep'=>"84"), - 'SOISSE' => array('nom'=>"Tribunal pour Enfants de Soissons", 'siret'=>"17800111100800", 'dep'=>"22"), - 'BONNEE' => array('nom'=>"Tribunal pour Enfants de BONNEVILLE", 'siret'=>"17730111600519", 'dep'=>"74"), - 'ABBEVF' => array('nom'=>"JUGE DE PROXIMITE D'ABBEVILLE", 'siret'=>"17800111100396", 'dep'=>"80"), - 'AGENF' => array('nom'=>"JUGE DE PROXIMITE D'AGEN", 'siret'=>"17470111000218", 'dep'=>"47"), - 'AIXF' => array('nom'=>"JUGE DE PROXIMITE D'AIX EN PROVENCE", 'siret'=>"17130111200438", 'dep'=>"13"), - 'AJACCF' => array('nom'=>"JUGE DE PROXIMITE D'AJACCIO", 'siret'=>"17202111500115", 'dep'=>"20"), - 'ALBERF' => array('nom'=>"JUGE DE PROXIMITE D'ALBERTVILLE", 'siret'=>"17730111600105", 'dep'=>"73"), - 'ALBIF' => array('nom'=>"JUGE DE PROXIMITE D'ALBI", 'siret'=>"17310111400283", 'dep'=>"81"), - 'ALENCF' => array('nom'=>"JUGE DE PROXIMITE D'ALENCON", 'siret'=>"17140111000381", 'dep'=>"61"), - 'ALESF' => array('nom'=>"JUGE DE PROXIMITE D'ALES", 'siret'=>"17300111600305", 'dep'=>"30"), - 'AMIENF' => array('nom'=>"JUGE DE PROXIMITE D'AMIENS", 'siret'=>"17800111100404", 'dep'=>"80"), - 'ANGERF' => array('nom'=>"JUGE DE PROXIMITE D'ANGERS", 'siret'=>"17490111600239", 'dep'=>"49"), - 'ANGOUF' => array('nom'=>"JUGE DE PROXIMITE D'ANGOULEME", 'siret'=>"17330111000099", 'dep'=>"16"), - 'ANNECF' => array('nom'=>"JUGE DE PROXIMITE D'ANNECY", 'siret'=>"17730111600154", 'dep'=>"74"), - 'ANNEMF' => array('nom'=>"JUGE DE PROXIMITE D'ANNEMASSE", 'siret'=>"17730111600303", 'dep'=>"74"), - 'ANNONF' => array('nom'=>"JUGE DE PROXIMITE D'ANNONAY", 'siret'=>"17300111600644", 'dep'=>"71"), - 'ANTIBF' => array('nom'=>"JUGE DE PROXIMITE D'ANTIBES", 'siret'=>"17130111200354", 'dep'=>"66"), - 'ANTONF' => array('nom'=>"JUGE DE PROXIMITE D'ANTONY", 'siret'=>"17780111500250", 'dep'=>"92"), - 'ARCACF' => array('nom'=>"JUGE DE PROXIMITE D'ARCACHON", 'siret'=>"17330111000024", 'dep'=>"33"), - 'ARGENF' => array('nom'=>"JUGE DE PROXIMITE D'ARGENTAN", 'siret'=>"17140111000357", 'dep'=>"61"), - 'ARRASF' => array('nom'=>"JUGE DE PROXIMITE D'ARRAS", 'siret'=>"17590111500808", 'dep'=>"62"), - 'ASNIEF' => array('nom'=>"JUGE DE PROXIMITE D'ASNIERES SUR SEINE", 'siret'=>"17780111500268", 'dep'=>"92"), - 'AUBAGF' => array('nom'=>"JUGE DE PROXIMITE D'AUBAGNE", 'siret'=>"17130111200339", 'dep'=>"13"), - 'AUBERF' => array('nom'=>"JUGE DE PROXIMITE D'AUBERVILLIERS", 'siret'=>"17750111100534", 'dep'=>"93"), - 'AUCHF' => array('nom'=>"JUGE DE PROXIMITE D'AUCH", 'siret'=>"17470111000069", 'dep'=>"32"), - 'AULNAF' => array('nom'=>"JUGE DE PROXIMITE D'AULNAY SOUS BOIS", 'siret'=>"17750111100104", 'dep'=>"93"), - 'AVIGNF' => array('nom'=>"JUGE DE PROXIMITE D'AVIGNON", 'siret'=>"17300111600156", 'dep'=>"84"), - 'AVRAF' => array('nom'=>"JUGE DE PROXIMITE D'AVRANCHES", 'siret'=>"17140111000233", 'dep'=>"50"), - 'BASSEF' => array('nom'=>"JUGE DE PROXIMITE DE BASSE TERRE", 'siret'=>"17971111400027", 'dep'=>"971"), - 'BAYONF' => array('nom'=>"JUGE DE PROXIMITE DE BAYONNE", 'siret'=>"17640111500140", 'dep'=>"64"), - 'BEAUNF' => array('nom'=>"JUGE DE PROXIMITE DE BEAUNE", 'siret'=>"17210111500027", 'dep'=>"21"), - 'BEAUVF' => array('nom'=>"JUGE DE PROXIMITE DE BEAUVAIS", 'siret'=>"17800111100453", 'dep'=>"60"), - 'BELLEF' => array('nom'=>"JUGE DE PROXIMITE DE BELLEY", 'siret'=>"17690111400502", 'dep'=>"13"), - 'BERNAF' => array('nom'=>"JUGE DE PROXIMITE DE BERNAY", 'siret'=>"17760111900387", 'dep'=>"27"), - 'BESANF' => array('nom'=>"JUGE DE PROXIMITE DE BESANCON", 'siret'=>"17250111600211", 'dep'=>"25"), - 'BETHUF' => array('nom'=>"JUGE DE PROXIMITE DE BETHUNE", 'siret'=>"17590111500063", 'dep'=>"62"), - 'BEZIEF' => array('nom'=>"JUGE DE PROXIMITE DE BEZIERS", 'siret'=>"17340111800174", 'dep'=>"34"), - 'BLOISF' => array('nom'=>"JUGE DE PROXIMITE DE BLOIS", 'siret'=>"17450111400287", 'dep'=>"41"), - 'BOBIGF' => array('nom'=>"JUGE DE PROXIMITE DE BOBIGNY", 'siret'=>"17750111101086", 'dep'=>"93"), - 'BOISSF' => array('nom'=>"JUGE DE PROXIMITE DE BOISSY SAINT LEGER", 'siret'=>"17750111100617", 'dep'=>"94"), - 'BONNEF' => array('nom'=>"JUGE DE PROXIMITE DE BONNEVILLE", 'siret'=>"17730111600022", 'dep'=>"74"), - 'BORDEF' => array('nom'=>"JUGE DE PROXIMITE DE BORDEAUX", 'siret'=>"17330111000313", 'dep'=>"33"), - 'BOULOF' => array('nom'=>"JUGE DE PROXIMITE DE BOULOGNE BILLANCOURT", 'siret'=>"17780111500276", 'dep'=>"92"), - 'BSMERF' => array('nom'=>"JUGE DE PROXIMITE DE BOULOGNE SUR MER", 'siret'=>"17590111500105", 'dep'=>"62"), - 'BBRESF' => array('nom'=>"JUGE DE PROXIMITE DE BOURG EN BRESSE", 'siret'=>"17690111400486", 'dep'=>"10"), - 'BRGESF' => array('nom'=>"JUGE DE PROXIMITE DE BOURGES", 'siret'=>"17180111100187", 'dep'=>"18"), - 'BOURGF' => array('nom'=>"JUGE DE PROXIMITE DE BOURGOIN JALLIEU", 'siret'=>"17380111900103", 'dep'=>"38"), - 'BRESSF' => array('nom'=>"JUGE DE PROXIMITE DE BRESSUIRE", 'siret'=>"17860111800478", 'dep'=>"79"), - 'BRESTF' => array('nom'=>"JUGE DE PROXIMITE DE BREST", 'siret'=>"17350111500625", 'dep'=>"29"), - 'BRIEYF' => array('nom'=>"JUGE DE PROXIMITE DE BRIEY", 'siret'=>"17540111600066", 'dep'=>"54"), - 'BRIGNF' => array('nom'=>"JUGE DE PROXIMITE DE BRIGNOLES", 'siret'=>"17130111200545", 'dep'=>"83"), - 'BRIVEF' => array('nom'=>"JUGE DE PROXIMITE DE BRIVE", 'siret'=>"17870111600190", 'dep'=>"19"), - 'CAENF' => array('nom'=>"JUGE DE PROXIMITE DE CAEN", 'siret'=>"17140111000456", 'dep'=>"14"), - 'CAGNEF' => array('nom'=>"JUGE DE PROXIMITE DE CAGNES SUR MER", 'siret'=>"17130111200719", 'dep'=>"68"), - 'CAHORF' => array('nom'=>"JUGE DE PROXIMITE DE CAHORS", 'siret'=>"17470111000028", 'dep'=>"46"), - 'CALAIF' => array('nom'=>"JUGE DE PROXIMITE DE CALAIS", 'siret'=>"17590111500121", 'dep'=>"62"), - 'CAMBRF' => array('nom'=>"JUGE DE PROXIMITE DE CAMBRAI", 'siret'=>"17590111500949", 'dep'=>"59"), - 'CANNEF' => array('nom'=>"JUGE DE PROXIMITE DE CANNES", 'siret'=>"17130111200362", 'dep'=>"64"), - 'CARCAF' => array('nom'=>"JUGE DE PROXIMITE DE CARCASSONNE", 'siret'=>"17340111800364", 'dep'=>"11"), - 'CARPEF' => array('nom'=>"JUGE DE PROXIMITE DE CARPENTRAS", 'siret'=>"17300111600164", 'dep'=>"84"), - 'CASTEF' => array('nom'=>"JUGE DE PROXIMITE DE CASTELSARRASIN", 'siret'=>"17310111400135", 'dep'=>"82"), - 'CASTRF' => array('nom'=>"JUGE DE PROXIMITE DE CASTRES", 'siret'=>"17310111400341", 'dep'=>"81"), - 'CAYENF' => array('nom'=>"JUGE DE PROXIMITE DE CAYENNE", 'siret'=>"17972111300100", 'dep'=>"973"), - 'CHASOF' => array('nom'=>"JUGE DE PROXIMITE DE CHALON SUR SAONE", 'siret'=>"17210111500381", 'dep'=>"71"), - 'CHALOF' => array('nom'=>"JUGE DE PROXIMITE DE CHALONS EN CHAMPAGNE", 'siret'=>"17510111200225", 'dep'=>"51"), - 'CHAMBF' => array('nom'=>"JUGE DE PROXIMITE DE CHAMBERY", 'siret'=>"17730111600113", 'dep'=>"73"), - 'CHAREF' => array('nom'=>"JUGE DE PROXIMITE DE CHARENTON LE PONT", 'siret'=>"17750111100609", 'dep'=>"94"), - 'CHARLF' => array('nom'=>"JUGE DE PROXIMITE DE CHARLEVILLE MEZIERES", 'siret'=>"17510111200324", 'dep'=>"80"), - 'CHARTF' => array('nom'=>"JUGE DE PROXIMITE DE CHARTRES", 'siret'=>"17780111500102", 'dep'=>"28"), - 'CROUXF' => array('nom'=>"JUGE DE PROXIMITE DE CHATEAUROUX", 'siret'=>"17180111100138", 'dep'=>"36"), - 'RAULTF' => array('nom'=>"JUGE DE PROXIMITE DE CHATELLERAULT", 'siret'=>"17860111800585", 'dep'=>"86"), - 'CHERBF' => array('nom'=>"JUGE DE PROXIMITE DE CHERBOURG", 'siret'=>"17140111000423", 'dep'=>"50"), - 'CHOLEF' => array('nom'=>"JUGE DE PROXIMITE DE CHOLET", 'siret'=>"17490111600080", 'dep'=>"49"), - 'CLFERF' => array('nom'=>"JUGE DE PROXIMITE DE CLERMONT FERRAND", 'siret'=>"17630111700535", 'dep'=>"63"), - 'COGNAF' => array('nom'=>"JUGE DE PROXIMITE DE COGNAC", 'siret'=>"17330111000297", 'dep'=>"16"), - 'COLMAF' => array('nom'=>"JUGE DE PROXIMITE DE COLMAR", 'siret'=>"17680111600128", 'dep'=>"68"), - 'COLOMF' => array('nom'=>"JUGE DE PROXIMITE DE COLOMBES", 'siret'=>"17780111500292", 'dep'=>"92"), - 'COMPIF' => array('nom'=>"JUGE DE PROXIMITE DE COMPIEGNE", 'siret'=>"17800111100487", 'dep'=>"60"), - 'CONDOF' => array('nom'=>"JUGE DE PROXIMITE DE CONDOM", 'siret'=>"17470111000168", 'dep'=>"32"), - 'COURBF' => array('nom'=>"JUGE DE PROXIMITE DE COURBEVOIE", 'siret'=>"17780111500318", 'dep'=>"92"), - 'COUTAF' => array('nom'=>"JUGE DE PROXIMITE DE COUTANCES", 'siret'=>"17140111000282", 'dep'=>"50"), - 'DAXF' => array('nom'=>"JUGE DE PROXIMITE DE DAX", 'siret'=>"17640111500165", 'dep'=>"40"), - 'DIEPPF' => array('nom'=>"JUGE DE PROXIMITE DE DIEPPE", 'siret'=>"17760111900247", 'dep'=>"76"), - 'DIGNEF' => array('nom'=>"JUGE DE PROXIMITE DE DIGNE", 'siret'=>"17130111200727", 'dep'=>"40"), - 'DIJONF' => array('nom'=>"JUGE DE PROXIMITE DE DIJON", 'siret'=>"17210111500472", 'dep'=>"21"), - 'DINANF' => array('nom'=>"JUGE DE PROXIMITE DE DINAN", 'siret'=>"17350111500674", 'dep'=>"22"), - 'DOLEF' => array('nom'=>"JUGE DE PROXIMITE DE DOLE", 'siret'=>"17250111600054", 'dep'=>"39"), - 'DOUAIF' => array('nom'=>"JUGE DE PROXIMITE DE DOUAI", 'siret'=>"17590111500907", 'dep'=>"59"), - 'DRAGUF' => array('nom'=>"JUGE DE PROXIMITE DE DRAGUIGNAN", 'siret'=>"17130111200552", 'dep'=>"83"), - 'DREUXF' => array('nom'=>"JUGE DE PROXIMITE DE DREUX", 'siret'=>"17780111500128", 'dep'=>"28"), - 'DUNKEF' => array('nom'=>"JUGE DE PROXIMITE DE DUNKERQUE", 'siret'=>"17590111500998", 'dep'=>"59"), - 'ELBEUF' => array('nom'=>"JUGE DE PROXIMITE D'ELBEUF", 'siret'=>"17760111900395", 'dep'=>"76"), - 'EPINAF' => array('nom'=>"JUGE DE PROXIMITE D'EPINAL", 'siret'=>"17540111600207", 'dep'=>"88"), - 'ETAMPF' => array('nom'=>"JUGE DE PROXIMITE D'ETAMPES", 'siret'=>"17750111100708", 'dep'=>"91"), - 'EVREUF' => array('nom'=>"JUGE DE PROXIMITE D'EVREUX", 'siret'=>"17760111900379", 'dep'=>"27"), - 'EVRYF' => array('nom'=>"JUGE DE PROXIMITE D'EVRY", 'siret'=>"17750111101110", 'dep'=>"91"), - 'FOIXF' => array('nom'=>"JUGE DE PROXIMITE DE FOIX", 'siret'=>"17310111400192", 'dep'=>"90"), - 'FONTF' => array('nom'=>"JUGE DE PROXIMITE DE FONTAINEBLEAU", 'siret'=>"17750111101292", 'dep'=>"77"), - 'FONTEF' => array('nom'=>"JUGE DE PROXIMITE DE FONTENAY LE COMTE", 'siret'=>"17860111800403", 'dep'=>"85"), - 'FORTFF' => array('nom'=>"JUGE DE PROXIMITE DE FORT DE FRANCE", 'siret'=>"17972111300126", 'dep'=>"972"), - 'FREJUF' => array('nom'=>"JUGE DE PROXIMITE DE FREJUS", 'siret'=>"17130111200560", 'dep'=>"83"), - 'GAPF' => array('nom'=>"JUGE DE PROXIMITE DE GAP", 'siret'=>"17380111900285", 'dep'=>"50"), - 'GONESF' => array('nom'=>"JUGE DE PROXIMITE DE GONESSE", 'siret'=>"17780111500227", 'dep'=>"95"), - 'GRASSF' => array('nom'=>"JUGE DE PROXIMITE DE GRASSE", 'siret'=>"17130111200370", 'dep'=>"61"), - 'GRENOF' => array('nom'=>"JUGE DE PROXIMITE DE GRENOBLE", 'siret'=>"17380111900038", 'dep'=>"38"), - 'GUEBWF' => array('nom'=>"JUGE DE PROXIMITE DE GUEBWILLER", 'siret'=>"17680111600086", 'dep'=>"68"), - 'GUEREF' => array('nom'=>"JUGE DE PROXIMITE DE GUERET", 'siret'=>"17870111600174", 'dep'=>"23"), - 'GUINGF' => array('nom'=>"JUGE DE PROXIMITE DE GUINGAMP", 'siret'=>"17350111500096", 'dep'=>"22"), - 'HAGUEF' => array('nom'=>"JUGE DE PROXIMITE D'HAGUENAU", 'siret'=>"17680111600219", 'dep'=>"67"), - 'HAZEBF' => array('nom'=>"JUGE DE PROXIMITE D'HAZEBROUCK", 'siret'=>"17590111500634", 'dep'=>"59"), - 'ILLKIF' => array('nom'=>"JUGE DE PROXIMITE D'ILLKIRCH GRAFFENSTADEN", 'siret'=>"17680111600201", 'dep'=>"67"), - 'IVRY F' => array('nom'=>"JUGE DE PROXIMITE D'IVRY SUR SEINE", 'siret'=>"17750111100625", 'dep'=>"94"), - 'JONZAF' => array('nom'=>"JUGE DE PROXIMITE DE JONZAC", 'siret'=>"17860111800098", 'dep'=>"17"), - 'JUVISF' => array('nom'=>"JUGE DE PROXIMITE DE JUVISY SUR ORGE", 'siret'=>"17750111100898", 'dep'=>"91"), - 'LA FLF' => array('nom'=>"JUGE DE PROXIMITE DE LA FLECHE", 'siret'=>"17490111600130", 'dep'=>"72"), - 'LAROCF' => array('nom'=>"JUGE DE PROXIMITE DE LA ROCHE SUR YON", 'siret'=>"17860111800239", 'dep'=>"85"), - 'ROCHLF' => array('nom'=>"JUGE DE PROXIMITE DE LA ROCHELLE", 'siret'=>"17860111800148", 'dep'=>"17"), - 'LAGNYF' => array('nom'=>"JUGE DE PROXIMITE DE LAGNY SUR MARNE", 'siret'=>"17750111100724", 'dep'=>"77"), - 'LAONF' => array('nom'=>"JUGE DE PROXIMITE DE LAON", 'siret'=>"17800111100446", 'dep'=>"20"), - 'LAVALF' => array('nom'=>"JUGE DE PROXIMITE DE LAVAL", 'siret'=>"17490111600254", 'dep'=>"53"), - 'HAVREF' => array('nom'=>"JUGE DE PROXIMITE DU HAVRE", 'siret'=>"17760111900320", 'dep'=>"76"), - 'MANSF' => array('nom'=>"JUGE DE PROXIMITE DU MANS", 'siret'=>"17490111600361", 'dep'=>"72"), - 'LEPUYF' => array('nom'=>"JUGE DE PROXIMITE DU PUY EN VELAY", 'siret'=>"17630111700428", 'dep'=>"43"), - 'LERAIF' => array('nom'=>"JUGE DE PROXIMITE DU RAINCY", 'siret'=>"17750111100997", 'dep'=>"93"), - 'LENSF' => array('nom'=>"JUGE DE PROXIMITE DE LENS", 'siret'=>"17590111500410", 'dep'=>"62"), - 'OLONNF' => array('nom'=>"JUGE DE PROXIMITE DES SABLES D'OLONNE", 'siret'=>"17860111800635", 'dep'=>"85"), - 'LIBOUF' => array('nom'=>"JUGE DE PROXIMITE DE LIBOURNE", 'siret'=>"17330111000354", 'dep'=>"33"), - 'LILLEF' => array('nom'=>"JUGE DE PROXIMITE DE LILLE", 'siret'=>"17590111500717", 'dep'=>"59"), - 'LIMOGF' => array('nom'=>"JUGE DE PROXIMITE DE LIMOGES", 'siret'=>"17870111600059", 'dep'=>"87"), - 'LISIEF' => array('nom'=>"JUGE DE PROXIMITE DE LISIEUX", 'siret'=>"17140111000399", 'dep'=>"14"), - 'LONGJF' => array('nom'=>"JUGE DE PROXIMITE DE LONGJUMEAU", 'siret'=>"17750111100658", 'dep'=>"91"), - 'LONSLF' => array('nom'=>"JUGE DE PROXIMITE DE LONS LE SAUNIER", 'siret'=>"17250111600344", 'dep'=>"39"), - 'LORIEF' => array('nom'=>"JUGE DE PROXIMITE DE LORIENT", 'siret'=>"17350111500526", 'dep'=>"56"), - 'LUREF' => array('nom'=>"JUGE DE PROXIMITE DE LURE", 'siret'=>"17250111600179", 'dep'=>"70"), - 'LYONF' => array('nom'=>"JUGE DE PROXIMITE DE LYON", 'siret'=>"17690111400437", 'dep'=>"69"), - 'MACONF' => array('nom'=>"JUGE DE PROXIMITE DE MACON", 'siret'=>"17210111500423", 'dep'=>"71"), - 'MANOSF' => array('nom'=>"JUGE DE PROXIMITE DE MANOSQUE", 'siret'=>"17130111200453", 'dep'=>"41"), - 'MANTEF' => array('nom'=>"JUGE DE PROXIMITE DE MANTES LA JOLIE", 'siret'=>"17780111500193", 'dep'=>"78"), - 'MARMAF' => array('nom'=>"JUGE DE PROXIMITE DE MARMANDE", 'siret'=>"17470111000226", 'dep'=>"47"), - 'MARSEF' => array('nom'=>"JUGE DE PROXIMITE DE MARSEILLE", 'siret'=>"17130111200321", 'dep'=>"13"), - 'MARTIF' => array('nom'=>"JUGE DE PROXIMITE DE MARTIGUES", 'siret'=>"17130111200123", 'dep'=>"13"), - 'MAUBEF' => array('nom'=>"JUGE DE PROXIMITE DE MAUBEUGE", 'siret'=>"17590111500246", 'dep'=>"59"), - 'MEAUXF' => array('nom'=>"JUGE DE PROXIMITE DE MEAUX", 'siret'=>"17750111101250", 'dep'=>"77"), - 'MELUNF' => array('nom'=>"JUGE DE PROXIMITE DE MELUN", 'siret'=>"17750111100211", 'dep'=>"77"), - 'MENDEF' => array('nom'=>"JUGE DE PROXIMITE DE MENDE", 'siret'=>"17300111600073", 'dep'=>"48"), - 'MENTOF' => array('nom'=>"JUGE DE PROXIMITE DE MENTON", 'siret'=>"17130111200347", 'dep'=>"65"), - 'METZF' => array('nom'=>"JUGE DE PROXIMITE DE METZ", 'siret'=>"17570111900125", 'dep'=>"57"), - 'MILLAF' => array('nom'=>"JUGE DE PROXIMITE DE MILLAU", 'siret'=>"17340111800380", 'dep'=>"12"), - 'MARSAF' => array('nom'=>"JUGE DE PROXIMITE DE MONT DE MARSAN", 'siret'=>"17640111500173", 'dep'=>"40"), - 'MNTARF' => array('nom'=>"JUGE DE PROXIMITE DE MONTARGIS", 'siret'=>"17450111400147", 'dep'=>"45"), - 'MONTNF' => array('nom'=>"JUGE DE PROXIMITE DE MONTAUBAN", 'siret'=>"17310111400242", 'dep'=>"82"), - 'MONTBF' => array('nom'=>"JUGE DE PROXIMITE DE MONTBRISON", 'siret'=>"17690111400098", 'dep'=>"42"), - 'MONTEF' => array('nom'=>"JUGE DE PROXIMITE DE MONTELIMAR", 'siret'=>"17380111900301", 'dep'=>"26"), - 'MONTLF' => array('nom'=>"JUGE DE PROXIMITE DE MONTLUCON", 'siret'=>"17630111700261", 'dep'=>"31"), - 'MONTYF' => array('nom'=>"JUGE DE PROXIMITE DE MONTMORENCY", 'siret'=>"17780111500235", 'dep'=>"95"), - 'MONTPF' => array('nom'=>"JUGE DE PROXIMITE DE MONTPELLIER", 'siret'=>"17340111800604", 'dep'=>"34"), - 'MONTUF' => array('nom'=>"JUGE DE PROXIMITE DE MONTREUIL SUR MER", 'siret'=>"17590111500444", 'dep'=>"62"), - 'MORLAF' => array('nom'=>"JUGE DE PROXIMITE DE MORLAIX", 'siret'=>"17350111500617", 'dep'=>"29"), - 'MULHOF' => array('nom'=>"JUGE DE PROXIMITE DE MULHOUSE", 'siret'=>"17680111600102", 'dep'=>"68"), - 'MURETF' => array('nom'=>"JUGE DE PROXIMITE DE MURET", 'siret'=>"17310111400093", 'dep'=>"31"), - 'NANCYF' => array('nom'=>"JUGE DE PROXIMITE DE NANCY", 'siret'=>"17540111600108", 'dep'=>"54"), - 'NANTEF' => array('nom'=>"JUGE DE PROXIMITE DE NANTES", 'siret'=>"17350111500880", 'dep'=>"44"), - 'NANTUF' => array('nom'=>"JUGE DE PROXIMITE DE NANTUA", 'siret'=>"17690111400155", 'dep'=>"11"), - 'NARBOF' => array('nom'=>"JUGE DE PROXIMITE DE NARBONNE", 'siret'=>"17340111800372", 'dep'=>"11"), - 'NEVERF' => array('nom'=>"JUGE DE PROXIMITE DE NEVERS", 'siret'=>"17180111100377", 'dep'=>"58"), - 'NICEF' => array('nom'=>"JUGE DE PROXIMITE DE NICE", 'siret'=>"17130111200685", 'dep'=>"63"), - 'NIMESF' => array('nom'=>"JUGE DE PROXIMITE DE NIMES", 'siret'=>"17300111600099", 'dep'=>"30"), - 'NIORTF' => array('nom'=>"JUGE DE PROXIMITE DE NIORT", 'siret'=>"17860111800460", 'dep'=>"79"), - 'NOGEMF' => array('nom'=>"JUGE DE PROXIMITE DE NOGENT SUR MARNE", 'siret'=>"17750111100500", 'dep'=>"94"), - 'ORANGF' => array('nom'=>"JUGE DE PROXIMITE D'ORANGE", 'siret'=>"17300111600149", 'dep'=>"84"), - 'ORLEAF' => array('nom'=>"JUGE DE PROXIMITE D'ORLEANS", 'siret'=>"17450111400139", 'dep'=>"45"), - 'PALAIF' => array('nom'=>"JUGE DE PROXIMITE DE PALAISEAU", 'siret'=>"17750111100526", 'dep'=>"91"), - 'PANTIF' => array('nom'=>"JUGE DE PROXIMITE DE PANTIN", 'siret'=>"17750111101052", 'dep'=>"93"), - 'PAUF' => array('nom'=>"JUGE DE PROXIMITE DE PAU", 'siret'=>"17640111500215", 'dep'=>"64"), - 'PERIGF' => array('nom'=>"JUGE DE PROXIMITE DE PERIGUEUX", 'siret'=>"17330111000180", 'dep'=>"24"), - 'PERONF' => array('nom'=>"JUGE DE PROXIMITE DE PERONNE", 'siret'=>"17800111100354", 'dep'=>"80"), - 'PERPIF' => array('nom'=>"JUGE DE PROXIMITE DE PERPIGNAN", 'siret'=>"17340111800620", 'dep'=>"66"), - 'PERTUF' => array('nom'=>"JUGE DE PROXIMITE DE PERTUIS", 'siret'=>"17300111600651", 'dep'=>"84"), - 'POINTF' => array('nom'=>"JUGE DE PROXIMITE DE POINTE A PITRE", 'siret'=>"17971111400050", 'dep'=>"971"), - 'POISSF' => array('nom'=>"JUGE DE PROXIMITE DE POISSY", 'siret'=>"17780111500185", 'dep'=>"78"), - 'POITIF' => array('nom'=>"JUGE DE PROXIMITE DE POITIERS", 'siret'=>"17860111800411", 'dep'=>"86"), - 'PONTAF' => array('nom'=>"JUGE DE PROXIMITE DE PONTARLIER", 'siret'=>"17250111600237", 'dep'=>"25"), - 'PONTOF' => array('nom'=>"JUGE DE PROXIMITE DE PONTOISE", 'siret'=>"17780111500573", 'dep'=>"95"), - 'PRIVF' => array('nom'=>"JUGE DE PROXIMITE DE PRIVAS", 'siret'=>"17300111600313", 'dep'=>"70"), - 'PUTEAF' => array('nom'=>"JUGE DE PROXIMITE DE PUTEAUX", 'siret'=>"17780111500334", 'dep'=>"92"), - 'QUIMPF' => array('nom'=>"JUGE DE PROXIMITE DE QUIMPER", 'siret'=>"17350111500591", 'dep'=>"29"), - 'RAMBOF' => array('nom'=>"JUGE DE PROXIMITE DE RAMBOUILLET", 'siret'=>"17780111500169", 'dep'=>"78"), - 'REDONF' => array('nom'=>"JUGE DE PROXIMITE DE REDON", 'siret'=>"17350111500146", 'dep'=>"35"), - 'REIMSF' => array('nom'=>"JUGE DE PROXIMITE DE REIMS", 'siret'=>"17510111200241", 'dep'=>"51"), - 'RENNEF' => array('nom'=>"JUGE DE PROXIMITE DE RENNES", 'siret'=>"17350111500039", 'dep'=>"35"), - 'RIOMF' => array('nom'=>"JUGE DE PROXIMITE DE RIOM", 'siret'=>"17630111700311", 'dep'=>"63"), - 'ROANNF' => array('nom'=>"JUGE DE PROXIMITE DE ROANNE", 'siret'=>"17690111400163", 'dep'=>"42"), - 'ROCHFF' => array('nom'=>"JUGE DE PROXIMITE DE ROCHEFORT", 'siret'=>"17860111800122", 'dep'=>"17"), - 'RODEZF' => array('nom'=>"JUGE DE PROXIMITE DE RODEZ", 'siret'=>"17340111800554", 'dep'=>"12"), - 'ROMANF' => array('nom'=>"JUGE DE PROXIMITE DE ROMANS SUR ISERE", 'siret'=>"17380111900384", 'dep'=>"26"), - 'ROUBAF' => array('nom'=>"JUGE DE PROXIMITE DE ROUBAIX", 'siret'=>"17590111500204", 'dep'=>"59"), - 'ROUENF' => array('nom'=>"JUGE DE PROXIMITE DE ROUEN", 'siret'=>"17760111900353", 'dep'=>"76"), - 'SAINTF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT AMAND MONTROND", 'siret'=>"17180111100070", 'dep'=>"18"), - 'AVOLDF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT AVOLD", 'siret'=>"17570111900075", 'dep'=>"57"), - 'BENOIF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT BENOIT", 'siret'=>"17974111100084", 'dep'=>"974"), - 'BRIEUF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT BRIEUC", 'siret'=>"17350111500633", 'dep'=>"22"), - 'CLAUDF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT CLAUDE", 'siret'=>"17250111600393", 'dep'=>"39"), - 'SDENIF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT DENIS", 'siret'=>"17750111101060", 'dep'=>"93"), - 'STDENF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT DENIS DE LA REUNION", 'siret'=>"17974111100050", 'dep'=>"974"), - 'STDIEF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT DIE", 'siret'=>"17540111600488", 'dep'=>"88"), - 'DIZIEF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT DIZIER", 'siret'=>"17210111500183", 'dep'=>"52"), - 'STETIF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT ETIENNE", 'siret'=>"17690111400189", 'dep'=>"42"), - 'GAUDEF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT GAUDENS", 'siret'=>"17310111400200", 'dep'=>"31"), - 'SGERMF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT GERMAIN EN LAYE", 'siret'=>"17780111500177", 'dep'=>"78"), - 'GIRONF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT GIRONS", 'siret'=>"17310111400317", 'dep'=>"92"), - 'STMALF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT MALO", 'siret'=>"17350111500120", 'dep'=>"35"), - 'MAURDF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT MAUR DES FOSSES", 'siret'=>"17750111100492", 'dep'=>"94"), - 'NAZAIF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT NAZAIRE", 'siret'=>"17350111500724", 'dep'=>"44"), - 'SOMERF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT OMER", 'siret'=>"17590111500295", 'dep'=>"62"), - 'STOUEF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT OUEN", 'siret'=>"17750111101078", 'dep'=>"93"), - 'SPAULF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT PAUL", 'siret'=>"17974111100076", 'dep'=>"978"), - 'PIERRF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT PIERRE", 'siret'=>"17974111100100", 'dep'=>"974"), - 'SQUENF' => array('nom'=>"JUGE DE PROXIMITE DE SAINT QUENTIN", 'siret'=>"17800111100438", 'dep'=>"23"), - 'SNTESF' => array('nom'=>"JUGE DE PROXIMITE DE SAINTES", 'siret'=>"17860111800189", 'dep'=>"17"), - 'SALONF' => array('nom'=>"JUGE DE PROXIMITE DE SALON DE PROVENCE", 'siret'=>"17130111200131", 'dep'=>"13"), - 'SANNOF' => array('nom'=>"JUGE DE PROXIMITE DE SANNOIS", 'siret'=>"17780111500474", 'dep'=>"95"), - 'SARRBF' => array('nom'=>"JUGE DE PROXIMITE DE SARREBOURG", 'siret'=>"17570111900067", 'dep'=>"57"), - 'SARREF' => array('nom'=>"JUGE DE PROXIMITE DE SARREGUEMINES", 'siret'=>"17570111900174", 'dep'=>"57"), - 'SAUMUF' => array('nom'=>"JUGE DE PROXIMITE DE SAUMUR", 'siret'=>"17490111600247", 'dep'=>"49"), - 'SAVERF' => array('nom'=>"JUGE DE PROXIMITE DE SAVERNE", 'siret'=>"17680111600227", 'dep'=>"67"), - 'SELESF' => array('nom'=>"JUGE DE PROXIMITE DE SELESTAT", 'siret'=>"17680111600177", 'dep'=>"67"), - 'SENLIF' => array('nom'=>"JUGE DE PROXIMITE DE SENLIS", 'siret'=>"17800111100479", 'dep'=>"60"), - 'SENSF' => array('nom'=>"JUGE DE PROXIMITE DE SENS", 'siret'=>"17750111100856", 'dep'=>"89"), - 'SETEF' => array('nom'=>"JUGE DE PROXIMITE DE SETE", 'siret'=>"17340111800430", 'dep'=>"34"), - 'SOISSF' => array('nom'=>"JUGE DE PROXIMITE DE SOISSONS", 'siret'=>"17800111100370", 'dep'=>"22"), - 'STRASF' => array('nom'=>"JUGE DE PROXIMITE DE STRASBOURG", 'siret'=>"17680111600268", 'dep'=>"67"), - 'TARASF' => array('nom'=>"JUGE DE PROXIMITE DE TARASCON", 'siret'=>"17130111200420", 'dep'=>"13"), - 'TARBEF' => array('nom'=>"JUGE DE PROXIMITE DE TARBES", 'siret'=>"17640111500090", 'dep'=>"65"), - 'THANNF' => array('nom'=>"JUGE DE PROXIMITE DE THANN", 'siret'=>"17680111600037", 'dep'=>"68"), - 'THIERF' => array('nom'=>"JUGE DE PROXIMITE DE THIERS", 'siret'=>"17630111700329", 'dep'=>"63"), - 'THIONF' => array('nom'=>"JUGE DE PROXIMITE DE THIONVILLE", 'siret'=>"17570111900133", 'dep'=>"57"), - 'THONOF' => array('nom'=>"JUGE DE PROXIMITE DE THONON LES BAINS", 'siret'=>"17730111600287", 'dep'=>"74"), - 'TOULNF' => array('nom'=>"JUGE DE PROXIMITE DE TOULON", 'siret'=>"17130111200578", 'dep'=>"83"), - 'TOULOF' => array('nom'=>"JUGE DE PROXIMITE DE TOULOUSE", 'siret'=>"17310111400325", 'dep'=>"31"), - 'TOURCF' => array('nom'=>"JUGE DE PROXIMITE DE TOURCOING", 'siret'=>"17590111500360", 'dep'=>"59"), - 'TOURSF' => array('nom'=>"JUGE DE PROXIMITE DE TOURS", 'siret'=>"17450111400220", 'dep'=>"37"), - 'TREVOF' => array('nom'=>"JUGE DE PROXIMITE DE TREVOUX", 'siret'=>"17690111400494", 'dep'=>"16"), - 'TROYEF' => array('nom'=>"JUGE DE PROXIMITE DE TROYES", 'siret'=>"17510111200266", 'dep'=>"10"), - 'TULLEF' => array('nom'=>"JUGE DE PROXIMITE DE TULLE", 'siret'=>"17870111600166", 'dep'=>"19"), - 'UZESF' => array('nom'=>"JUGE DE PROXIMITE DE UZES", 'siret'=>"17300111600347", 'dep'=>"30"), - 'VALENF' => array('nom'=>"JUGE DE PROXIMITE DE VALENCE", 'siret'=>"17380111900087", 'dep'=>"26"), - 'VALECF' => array('nom'=>"JUGE DE PROXIMITE DE VALENCIENNES", 'siret'=>"17590111500162", 'dep'=>"59"), - 'VANNEF' => array('nom'=>"JUGE DE PROXIMITE DE VANNES", 'siret'=>"17350111500559", 'dep'=>"56"), - 'VANVEF' => array('nom'=>"JUGE DE PROXIMITE DE VANVES", 'siret'=>"17780111500342", 'dep'=>"92"), - 'VERSAF' => array('nom'=>"JUGE DE PROXIMITE DE VERSAILLES", 'siret'=>"17780111500458", 'dep'=>"78"), - 'VESOUF' => array('nom'=>"JUGE DE PROXIMITE DE VESOUL", 'siret'=>"17250111600161", 'dep'=>"70"), - 'VICHYF' => array('nom'=>"JUGE DE PROXIMITE DE VICHY", 'siret'=>"17630111700287", 'dep'=>"32"), - 'VIENNF' => array('nom'=>"JUGE DE PROXIMITE DE VIENNE", 'siret'=>"17380111900236", 'dep'=>"38"), - 'VILLFF' => array('nom'=>"JUGE DE PROXIMITE DE VILLEFRANCHE SUR SAONE", 'siret'=>"17690111400510", 'dep'=>"69"), - 'VILLEF' => array('nom'=>"JUGE DE PROXIMITE DE VILLEJUIF", 'siret'=>"17750111101284", 'dep'=>"94"), - 'VILOTF' => array('nom'=>"JUGE DE PROXIMITE DE VILLENEUVE SUR LOT", 'siret'=>"17470111000242", 'dep'=>"47"), - 'VBANNF' => array('nom'=>"JUGE DE PROXIMITE DE VILLEURBANNE", 'siret'=>"17690111400346", 'dep'=>"69"), - 'VIREF' => array('nom'=>"JUGE DE PROXIMITE DE VIRE", 'siret'=>"17140111000506", 'dep'=>"14"), - 'PARI1F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 1er", 'siret'=>"17750111100484", 'dep'=>"75"), - 'PARI2F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 2ème", 'siret'=>"17750111100294", 'dep'=>"75"), - 'PARI3F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 3ème", 'siret'=>"17750111100450", 'dep'=>"75"), - 'PARI4F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 4ème", 'siret'=>"17750111100302", 'dep'=>"75"), - 'PARI5F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 5ème", 'siret'=>"17750111100310", 'dep'=>"75"), - 'PARI6F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 6ème", 'siret'=>"17750111100260", 'dep'=>"75"), - 'PARI7F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 7ème", 'siret'=>"17750111100286", 'dep'=>"75"), - 'PARI8F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 8ème", 'siret'=>"17750111100278", 'dep'=>"75"), - 'PARI9F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 9ème", 'siret'=>"17750111100336", 'dep'=>"75"), - 'PAR10F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 10ème", 'siret'=>"17750111100328", 'dep'=>"75"), - 'PAR11F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 11ème", 'siret'=>"17750111101151", 'dep'=>"75"), - 'PAR12F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 12ème", 'siret'=>"17750111100393", 'dep'=>"75"), - 'PAR13F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 13ème", 'siret'=>"17750111100401", 'dep'=>"75"), - 'PAR14F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 14ème", 'siret'=>"17750111100435", 'dep'=>"75"), - 'PAR15F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 15ème", 'siret'=>"17750111100419", 'dep'=>"75"), - 'PAR16F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 16ème", 'siret'=>"17750111100344", 'dep'=>"75"), - 'PAR17F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 17ème", 'siret'=>"17750111100351", 'dep'=>"75"), - 'PAR18F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 18ème", 'siret'=>"17750111100377", 'dep'=>"75"), - 'PAR19F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 19ème", 'siret'=>"17750111100369", 'dep'=>"75"), - 'PAR20F' => array('nom'=>"JUGE DE PROXIMITE DE PARIS 20ème", 'siret'=>"17750111100427", 'dep'=>"75"), - 'LILLEM' => array('nom'=>"TC LILLE METROPOLE", 'siret'=>"175901115", 'dep'=>"59"), -); diff --git a/library/Metier/bodacc/classMBalo.php b/library/Metier/bodacc/classMBalo.php deleted file mode 100644 index 6741df14..00000000 --- a/library/Metier/bodacc/classMBalo.php +++ /dev/null @@ -1,85 +0,0 @@ -'') return $libEvenSd; - - return substr('95'.$codEvenBoamp.'00',0,4)*1; - } - - function getLibEvenBoamp($codEvenBoamp, $strEvenBoamp='') { - return $this->getCodEvenSd($codEvenBoamp, $strEvenBoamp); - } - -} - -?> \ No newline at end of file diff --git a/library/Metier/bodacc/classMBodacc.php b/library/Metier/bodacc/classMBodacc.php deleted file mode 100644 index 46eeafd2..00000000 --- a/library/Metier/bodacc/classMBodacc.php +++ /dev/null @@ -1,1219 +0,0 @@ -1408, - md5("Jugement d'ouverture d'une procédure de redressement judiciaire")=>'1200', - md5("Jugement d'ouverture de liquidation judiciaire")=>'1301', - md5("Jugement de clôture pour insuffisance d'actif")=>1503, - md5("Jugement de clôture de la liquidation des biens pour insuffisance d'actif")=>1503, - md5("Dépôt de l'état des créances")=>1204, - md5("Dépôt de l'état des créances Loi de 1985")=>1214, - md5("Jugement de plan de redressement")=>1414, - md5("Jugement de clôture pour extinction du passif")=>1502, - md5("Jugement arrêtant le plan de sauvegarde")=>1101, - md5("Liste des créances nées après le jugement d'ouverture d'une procédure de liquidation judiciaire")=>1206, - md5("Jugement de conversion en liquidation judiciaire")=>1300, - md5("Jugement arrêtant un plan de cession")=>1411, - md5("Jugement prononçant la résolution du plan de cession et la liquidation judiciaire")=>'1305;1511', - md5("Liste des créances nées après le jugement d'ouverture d'une procédure de redressement judiciaire")=>1206, - md5("Dépôt de l'état de collocation")=>1203, - md5("Jugement prononçant la résolution du plan de redressement et la liquidation judiciaire")=>'1305;1512', - md5("Jugement prononçant la résolution du plan de sauvegarde et la liquidation judiciaire")=>'1305;1513', - md5("Jugement de faillite personnelle")=>1600, - md5("Jugement de faillite personnelle Loi de 1985")=>1610, - md5("Jugement d'interdiction de gérer")=>1601, - md5("Jugement d'interdiction de gérer Loi de 1985")=>1611, - md5("Arrêt de la cour d'appel infirmant une décision soumise à publicité")=>1506, - md5("Jugement d'ouverture d'une procédure de sauvegarde")=>1100, - - md5("Jugement de reprise de la procédure de liquidation judiciaire")=>1304, - md5("Jugement modifiant le plan de continuation")=>1409, - md5("Dépôt du projet de répartition")=>1208, - md5("Dépôt de l'état des créances et du projet de répartition")=>'1204;1208', - md5("Jugement d'homologation de l'accord")=>1550, - md5("Jugement prononçant la résolution du plan de cession")=>1511, - md5("Jugement de conversion en redressement judiciaire de la procédure de sauvegarde")=>1201, - md5("Jugement de conversion en liquidation judiciaire de la procédure de sauvegarde")=>1307, - md5("Jugement modifiant la date de cessation des paiements")=>1450, - md5("Jugement de clôture de la liquidation des biens pour extinction du passif")=>1502, - md5("Jugement modifiant le plan de redressement")=>1407, - md5("Jugement mettant fin à la procédure de redressement judiciaire")=>1500, - md5("Jugement accordant un délai pour déposer la liste des créances")=>1440, - md5("Jugement modifiant le plan de sauvegarde")=>1407, - md5("Jugement de clôture pour insuffisance d'actif et autorisant la reprise des poursuites individuelles")=>'1503;1605', - md5("Ordonnance statuant sur les contestations du projet de répartition")=>1540, - md5("Jugement de clôture de la procédure de sauvegarde")=>1500, - md5("Jugement mettant fin à la procédure de sauvegarde")=>1500, - - md5("Jugement d'extension de liquidation judiciaire")=>1417, - md5("Jugement d'extension d'une procédure de redressement judiciaire")=>1418, - md5("Jugement d'extension d'une procédure de sauvegarde")=>1419, - md5("Rétractation de prononcé de liquidation judiciaire sur tierce opposition")=>1541, - - md5("Rétractation de jugement d'ouverture d'une procédure de sauvegarde sur tierce opposition")=>1542, - md5("Rétractation de jugement d'ouverture d'une procédure de redressement judiciaire sur tierce opposition")=>1543, - md5("Rétractation de jugement d'ouverture d'une procédure de liquidation judiciaire sur tierce opposition")=>1544, - md5("Jugement de désignation des organes de la procédure")=>1215, // v1.5 Avril 2008 - - md5("Rétractation de jugement d'ouverture sur tierce opposition")=>1545, - md5("Autre rétractation sur tierce opposition")=>1546, - md5("Autre jugement de liquidation des biens")=>1603, - md5("Autre arrêt de la Cour d'Appel")=>1507, - md5("Autre jugement de clôture")=>1500, - md5("Autres avis de dépôt")=>1216, - md5("Arrêts divers")=>1515, - - md5("Autre jugement d'ouverture")=>1998, - md5("Autres jugements et ordonnances")=>1998, - md5("Autre jugement prononçant")=>1998, - - /** - ** v1.5 Avril 2008 - Intégration du Bodacc A en XML : Ventes / Cessions - **/ - md5("Achat d'un fonds par une personne morale (insertion provisoire)")=>5103, - md5("Achat d'un foncs par une personne morale (insertion provisoire)")=>5103, - md5("Achat d'un fonds par une personne morale.")=>5103, // Ajout le 23/12/2010 - md5("Achat d'un établissement principal par une personne physique (immatriculation)")=>5000, - md5("Achat d'un établissement principal par une personne morale lors de l'immatriculation")=>5000, - md5("Autre achat, apport, attribution")=>5900, - md5("Autre achat, appport, attribution")=>5900, - md5("Autre achat, apport, attribution (personne physique)")=>5900, - md5("Autre achat, apport, attribution (personne physque)")=>5900, - md5("Autre achat, apport, atribution (personne morale)")=>5900, - md5("Autre achat, apport, attribution (personne morale)")=>5900, - md5("achat, apport, attribution (personne morale)")=>5900, - md5("Achat d'un fonds par une personne physique (insertion provisoire)")=>5103, - md5("Achat d'un établissement secondaire ou complémentaire par une personne morale")=>5001, - md5("Apport d'un établissement secondaire/complémentaire (personne morale, uniquement)")=>5001, - md5("Achat d'un établissement complémentaire par une personne morale")=>5001, - md5("Achat d'un établissement secondaire ou complémentaire par une personne physique")=>5001, - md5("Mise en activité d'une société suite à achat")=>'2316;5999', - md5("Mise en activité d'une soicété suite à achat")=>'2316;5999', - md5("Achat d'un fonds par le locataire-gérant personne morale")=>5450, - md5("Achat d'un fonds par le locataire-gérant personne physique")=>5450, - md5("Apport d'un établissement principal (immatriculation d'une personne morale, uniquement)")=>5000, - md5("Apport d'un établissement principal (immatriculation d'une personne morale uniquement)")=>5000, - md5("Attribution d'un fonds suite à partage, à licitation (Immatriculation d'une personne physique)")=>5460, - md5("Attribution d'un fonds suite à donation avec délai d'oppositions (Immatriculation d'une personne physique)")=>5460, - md5("Annulation d'avis Vente")=>5999, - md5("Annulation d'avis vente")=>5999, - md5("fonds acquis par achat au prix stipulé de 155 000 euros.")=>5900, - - /** - ** v1.5 Avril 2008 - Intégration du Bodacc A en XML : Créations / Immatriculations - **/ - md5("Immatriculation d'une personne physique suite à création d'un établissement principal")=>4000, - md5("Immatriculation d'une personne morale (B, D) sans activité")=>4050, - md5("Immatriculation d'une personne morale (B, C, D) suite à création d'un établissement principal")=>4000, - md5("Immatriculation d'une personne morale (B, C, D suite à création d'un établissement principal)")=>4000, - md5("Immatriculation d'une personne physique suite à transfert de l'établissement principal")=>4250, - md5("Immatriculation d'une personne morale après 1er avis")=>4000,//??????? - md5("Immatriculation d'une personne morale suite à transfert de son siège social")=>4250, - md5("Immatriculation d'une personne physique, reprise d'activité après location-gérance")=>4350, - md5("Immatriculation d'une personne morale, établissement principal reçu en location-gérance")=>4355, - md5("Immatriculation d'une personne physique après 1er avis")=>4000, - md5("Immatriculation d'une personne physique, établissement principal reçu en location-gérance")=>4355, - md5("Immatriculation d'une personne physique, établissement principal précédemment exploité par le conjoint")=>4450, - md5("Immatriculation d'une personne physique, établissement précédemment exploité par le conjoint")=>4450, - md5("Transformation d'un GAEC")=>4400, - md5("Autre immatriculation personne morale")=>4000, - md5("Autre immatriculation personne physique")=>4000, - md5("Immatriculation d'une société de droit européen (quelle que soit l'origine du fonds)")=>4600, - md5("Immatriculation avec origine du fonds création")=>4000, - md5("Immatriculation avec orgine du fonds création")=>4000, - md5("Immatriculation avec origine de fonds achat")=>4501, - md5("Immatriculation avec origine du fonds achat")=>4501, - md5("Immatriculation d'une personne physique, établissement principal hérité, reçu par donation")=>4410, -); - -$tabTypeAsso=array( - '_1' =>array('even'=>8000,'type'=>'Insertion', 'forme'=>'ASS','lib'=>'ASSOCIATION/CREATION'), - '_2' =>array('even'=>8079,'type'=>'Insertion', 'forme'=>'ASS','lib'=>'ASSOCIATION/MODIFICATION'), - '_3' =>array('even'=>8090,'type'=>'Insertion', 'forme'=>'ASS','lib'=>'ASSOCIATION/DISSOLUTION'), - '_4' =>array('even'=>8000,'type'=>'Insertion', 'forme'=>'FON','lib'=>'FONDATION/CREATION'), - '_5' =>array('even'=>8079,'type'=>'Insertion', 'forme'=>'FON','lib'=>'FONDATION/MODIFICATION'), - '_6' =>array('even'=>8090,'type'=>'Insertion', 'forme'=>'FON','lib'=>'FONDATION/DISSOLUTION'), - '_7' =>array('even'=>8085,'type'=>'Insertion', 'forme'=>'ASS','lib'=>'DECISION DE JUSTICE'), - '_11' =>array('even'=>8000,'type'=>'Rectificatif', 'forme'=>'ASS','lib'=>'ASSOCIATION/CREATION/RECTIFICATIF'), - '_22' =>array('even'=>8079,'type'=>'Rectificatif', 'forme'=>'ASS','lib'=>'ASSOCIATION/MODIFICATION/RECTIFICATIF'), - '_33' =>array('even'=>8090,'type'=>'Rectificatif', 'forme'=>'ASS','lib'=>'ASSOCIATION/DISSOLUTION/RECTIFICATIF'), - '_44' =>array('even'=>8000,'type'=>'Rectificatif', 'forme'=>'FON','lib'=>'FONDATION/CREATION/RECTIFICATIF'), - '_55' =>array('even'=>8079,'type'=>'Rectificatif', 'forme'=>'FON','lib'=>'FONDATION/MODIFICATION/RECTIFICATIF'), - '_66' =>array('even'=>8090,'type'=>'Rectificatif', 'forme'=>'FON','lib'=>'FONDATION/DISSOLUTION/RECTIFICATIF'), - '_101'=>array('even'=>8000,'type'=>'Insertion', 'forme'=>'ASL','lib'=>'ASL/CREATION'), - '_102'=>array('even'=>8000,'type'=>'Rectificatif', 'forme'=>'ASL','lib'=>'ASL/CREATION/RECTIFICATIF'), - '_103'=>array('even'=>8000,'type'=>'Suppression', 'forme'=>'ASL','lib'=>'ASL/CREATION/ANNULATION'), - '_111'=>array('even'=>8000,'type'=>'Suppression', 'forme'=>'ASS','lib'=>'ASSOCIATION/CREATION/ANNULATION'), - '_222'=>array('even'=>8079,'type'=>'Suppression', 'forme'=>'ASS','lib'=>'ASSOCIATION/MODIFICATION/ANNULATION'), - '_333'=>array('even'=>8090,'type'=>'Suppression', 'forme'=>'ASS','lib'=>'ASSOCIATION/DISSOLUTION/ANNULATION'), - '_444'=>array('even'=>8000,'type'=>'Suppression', 'forme'=>'FON','lib'=>'FONDATION/CREATION/ANNULATION'), - '_555'=>array('even'=>8079,'type'=>'Suppression', 'forme'=>'FON','lib'=>'FONDATION/MODIFICATION/ANNULATION'), - '_666'=>array('even'=>8090,'type'=>'Suppression', 'forme'=>'FON','lib'=>'FONDATION/DISSOLUTION/ANNULATION'), - '_201'=>array('even'=>8079,'type'=>'Insertion', 'forme'=>'ASL','lib'=>'ASL/MODIFICATION'), - '_202'=>array('even'=>8079,'type'=>'Rectificatif', 'forme'=>'ASL','lib'=>'ASL/MODIFICATION/RECTIFICATIF'), - '_301'=>array('even'=>8090,'type'=>'Insertion', 'forme'=>'ASL','lib'=>'ASL/DISSOLUTION'), - '_302'=>array('even'=>8090,'type'=>'Rectificatif', 'forme'=>'ASL','lib'=>'ASL/DISSOLUTION/RECTIFICATIF'), - '_303'=>array('even'=>8090,'type'=>'Suppression', 'forme'=>'ASL','lib'=>'ASL/DISSOLUTION/ANNULATION'), - '_8AC'=>array('even'=>8000,'type'=>'Suppression', 'forme'=>'ASL','lib'=>'ASL/CREATION/ANNULATION'), - '_8AD'=>array('even'=>8000,'type'=>'?', 'forme'=>'ASL','lib'=>'ASL/CREATION/DISSOLUTION'), - '_8AM'=>array('even'=>8000,'type'=>'?', 'forme'=>'ASL','lib'=>'ASL/CREATION/MODIFICATION'), - '_8C' =>array('even'=>8000,'type'=>'Insertion', 'forme'=>'ASL','lib'=>'ASL/CREATION'), - '_8CR'=>array('even'=>8000,'type'=>'Rectificatif', 'forme'=>'ASL','lib'=>'ASL/CREATION/RECTIFICATIF'), - '_8D' =>array('even'=>8090,'type'=>'Insertion', 'forme'=>'ASL','lib'=>'ASL/DISSOLUTION'), - '_8DR'=>array('even'=>8090,'type'=>'Rectificatif', 'forme'=>'ASL','lib'=>'ASL/DISSOLUTION/RECTIFICATIF'), - '_8M' =>array('even'=>8079,'type'=>'Insertion', 'forme'=>'ASL','lib'=>'ASL/MODIFICATION'), - '_8RM'=>array('even'=>8079,'type'=>'Rectificatif', 'forme'=>'ASL','lib'=>'ASL/MODIFICATION/RECTIFICATIF'), - '_900'=>array('even'=>8000,'type'=>'Insertion', 'forme'=>'FOD','lib'=>'FONDS_DOTATION/CREATION'), // Création de fonds de dotation - '_901'=>array('even'=>8000,'type'=>'Rectificatif', 'forme'=>'FOD','lib'=>'FONDS_DOTATION/CREATION/RECTIFICATIF'), // Rectificatif de création de fonds de dotation - '_902'=>array('even'=>8000,'type'=>'Suppression', 'forme'=>'FOD','lib'=>'FONDS_DOTATION/CREATION/ANNULATION'), // Annulation de création de fonds de dotation - '_903'=>array('even'=>8079,'type'=>'Insertion', 'forme'=>'FOD','lib'=>'FONDS_DOTATION/MODIFICATION'), // Modification de fonds de dotation - '_904'=>array('even'=>8079,'type'=>'Rectificatif', 'forme'=>'FOD','lib'=>'FONDS_DOTATION/MODIFICATION/RECTIFICATIF'), // Rectificatif de modification de fonds de dotation - '_905'=>array('even'=>8079,'type'=>'Suppression', 'forme'=>'FOD','lib'=>'FONDS_DOTATION/MODIFICATION/ANNULATION'), // Annulation de modification de fonds de dotation - '_906'=>array('even'=>8090,'type'=>'Insertion', 'forme'=>'FOD','lib'=>'FONDS_DOTATION/DISSOLUTION'), // Dissolution de fonds de dotation - '_907'=>array('even'=>8090,'type'=>'Rectificatif', 'forme'=>'FOD','lib'=>'FONDS_DOTATION/DISSOLUTION/RECTIFICATIF'), // Rectificatif de dissolution de fonds de dotation - '_908'=>array('even'=>8090,'type'=>'Suppression', 'forme'=>'FOD','lib'=>'FONDS_DOTATION/DISSOLUTION/ANNULATION'), // Annulation de dissolution de fonds de dotation - '_909'=>array('even'=>8080,'type'=>'Insertion', 'forme'=>'FOD','lib'=>'FONDS_DOTATION/SUSPENSION'), // Avis de suspension d'activité - '_910'=>array('even'=>8080,'type'=>'Rectificatif', 'forme'=>'FOD','lib'=>'FONDS_DOTATION/SUSPENSION/RECTIFICATIF'), // Rectificatif d'avis de suspension d'activité - '_911'=>array('even'=>8080,'type'=>'Suppression', 'forme'=>'FOD','lib'=>'FONDS_DOTATION/SUSPENSION/ANNULATION'), // Annulation d'avis de suspension d'activité - /* - _8CA Annulation creation ASL - _8DA Annulation dissolution ASL - _8MA Annulation modif ASL - _8MR Rectif modif ASL - */ -); - - -class MBodacc -{ - private static $tabAccents = array( - '[A'=>'Á', //5B41 - '^A'=>'Â', //5E41 - '`A'=>'À', //6041 - ']A'=>'Ä', //5D41 - '[a'=>'á', //5B61 - '^a'=>'â', //5E61 - '`a'=>'à', //6061 - ']a'=>'ä', //5D61 - //'AE'=>'Æ', //4145 // Penser à les retransformer pour les vieux systèmes - //'ae'=>'æ', //6165 // Penser à les retransformer pour les vieux systèmes - '|C'=>'Ç', //7C43 - '|c'=>'ç', //7C63 - '[E'=>'É', //5B45 - '^E'=>'Ê', //5E45 - '`E'=>'È', //6045 - ']E'=>'Ë', //5D45 - '[e'=>'é', //5B65 - '^e'=>'ê', //5E65 - '`e'=>'è', //6065 - ']e'=>'ë', //5D65 - '[I'=>'Í', //5B49 - '^I'=>'Î', //5E49 - '`I'=>'Ì', //6049 - ']I'=>'Ï', //5D49 - '[i'=>'í', //5B69 - '^i'=>'î', //5E69 - '`i'=>'ì', //6069 - ']i'=>'ï', //5D69 - '[O'=>'Ó', //5B4F - '^O'=>'Ô', //5E4F - '`O'=>'Ò', //604F - ']O'=>'Ö', //5D4F - '[o'=>'ó', //5B6F - '^o'=>'ô', //5E6F - '`o'=>'ò', //606F - ']o'=>'ö', //5D6F - //'OE'=>'.', //4F45 // Penser à les retransformer pour les vieux systèmes - //'oe'=>'.', // Penser à les retransformer pour les vieux systèmes - '[U'=>'Ú', //5B55 - '^U'=>'Û', //5E55 - '`U'=>'Ù', //6055 - ']U'=>'Ü', //5D55 - '[u'=>'ú', //5B75 - '`u'=>'ù', //6075 - '^u'=>'û', //5E75 - ']u'=>'ü', //5D75 - '[Y'=>'Ý', //5B59 - '[y'=>'ý', //5B79 - ); - - private static $tabBalises=array( - '00'=>'Texte', - '01'=>'Identifiant (NOJO) de l.annonce', - '02'=>'Publication (R1)', - '03'=>'Partie du BODACC et département (R2)', - '04'=>'Tribunal (R3)', - '05'=>'Rubrique au sein du BODACC (R4)', - '06'=>'Numéro de parution', - '07'=>'Numéro d.annonce dans la parution', - '14'=>'R.C.', - '15'=>'SIREN', - '16'=>'Raison sociale', - '17'=>'Activité (Ajout activité ?)', - '18'=>'PDG / CP (?)', - '19'=>'Enseigne / Nom Commercial (?)', - '20'=>'Date', - '22'=>'Forme juridique', - '23'=>'Capital (?)', - '24'=>'Bénéficiaire / Raison sociale (différence avec 16?)', - '25'=>'Sigle', - '26'=>'Objet / Commentaire (a exploiter !) (?)', - '27'=>'Syndic (a vérifier sur les annonces si pas anciennes annonces ?)', - '29'=>'Nom Commercial (?)', - '30'=>'Commentaire adresse', - '31'=>'Rue', - '32'=>'Localité', - '33'=>'Commune', - '35'=>'Conjoint (?)', - '36'=>'Code postal', - '37'=>'Additif (?)', - '40'=>'Texte rectificatif (?)', - '41'=>'Numéro annonce (?)', - '42'=>'Date de parution (?)', - '43'=>'Page (?)', - '44'=>'Numéro de parution (?)', - '70'=>'Numéro annonce', - '71'=>'Date de parution', - '72'=>'Page', - '73'=>'Numéro de parution', - '74'=>'Texte rectificatif/à supprimer', - '75'=>'Numéro annonce', - '76'=>'Numéro annonce', - ); - - private static $tabRubriques=array( - 'A101'=>'21 ventes et cessions (RCS A non inscrit)', - 'A102'=>'22 ventes et cessions (RCS B, C et D non inscrit)', - 'A103'=>'13 Créations d\'établissements (RCS A, PP)', - 'A104'=>'14 Créations d\'établissements (RCS B, Ste)', - 'A105'=>'15 Créations d\'établissements (RCS C, GIE ?)', - 'A106'=>'16 Créations d\'établissements (RCS D, Sté Civile)', - 'A107'=>'17 création d\'étab.second. ....... Pers Phys. ', // - 'A108'=>'18 création d\'étab.second. ....... Société ', // - 'A109'=>'19 création d\'étab.second. ....... Sté Civile ', // - 'A124'=>'24 ventes et cessions (RCS A non inscrit)', - 'A125'=>'25 ventes et cessions (RCS B, C et D non inscrit)', - 'A126'=>'13 création d\'étab.+1 PP .......... Pers Phys. ', // - 'A131'=>'15 Créations d\'établissements (G.Europ.IE)', // - 'A136'=>'35 rectificatif ', // - 'A137'=>'35 additif', // - 'A138'=>'35 rectificatif supp. ', // - 'A205'=>'51 reglement judiciaire ........... PP et Sté ', // - 'A209'=>'63 LB faillite personnelle ........ Pers Phys.', // - 'A210'=>'61 liquidation des biens .......... PP et Sté ', // - 'A215'=>'71 suite reglemt/liquid. .......... PP et Sté ', - 'A220'=>'77 Production titres créance ...... PP et Sté ', // - 'A225'=>'78 Dépôt état des créances vérifiées PP et Sté ', // - 'A228'=>'79 Cloture insuf.actif ......... PP et Sté ', // - 'A236'=>'35 rectificatif ', // - 'A237'=>'35 additif', // - 'A238'=>'35 rectificatif supp.', // - 'A401'=>'80 Banqueroute & Infractions ...... Pers Phys.', // --- - 'A436'=>'35 rectificatif ', // - 'A437'=>'35 additif', // - 'A438'=>'35 rectificatif supp. ', // - 'A701'=>'73 Susp provis poursuites ......... toutes formes', // - 'A736'=>'35 rectificatif ', // - 'A737'=>'35 additif', // - 'A738'=>'35 rectificatif supp. ', // - 'A8X1'=>'60 redressement & liqu.judiciaire.. toutes formes', // - 'A801'=>'52 redressement judiciaire ........ toutes formes', - 'A802'=>'62 ouverture liquidation judiciaire toutes formes', - 'A803'=>'74 Appels jug. ouverture .......... toutes formes', // - 'A804'=>'62 liquidation judiciaire ........ toutes formes', - 'A805'=>'74 Appels jug. LB ................. toutes formes', // - 'A806'=>'75 Arret plan de continuation...... toutes formes', - 'A807'=>'75 Modif plan de continuation...... toutes formes', - 'A808'=>'75 Arret plan de cession .......... toutes formes', - 'A809'=>'75 Modif plan de cession .......... toutes formes', - 'A810'=>'76 Cloture extinction Passif ...... toutes formes', - 'A811'=>'79 Cloture insuf.Actif ............ toutes formes', - 'A812'=>'79 Cloture après cession totale ... toutes formes', - 'A813'=>'63 faillite pers. pp ou gerant .... toutes formes', - 'A814'=>'64 interdiction de gerer .......... toutes formes', - 'A815'=>'78 Dépot Créances ................ toutes formes', - 'A816'=>'78 Dépot Créances nées ap jug ..... toutes formes', - 'A817'=>'78 Dépot Cr.compl.nées ap jug ..... toutes formes', - 'A818'=>'78 Dépot état Collocation ......... toutes formes', - 'A819'=>'75 Modification plan diverse ...... toutes formes', - 'A820'=>'53 Règlements amiables ............ Exploit agric', - 'A821'=>'74 Appels jug. LB ................. toutes formes', - 'A822'=>'56 Procédure insolvabilité......... toutes formes', // - 'A823'=>' Ordonnance statuant sur les contestations', - 'A824'=>'xx Dépôt du projet de répartition', // - 'A836'=>'35 rectificatif ', // - 'A837'=>'35 additif', // - 'A838'=>'35 rectificatif supp. ', // - 'A900'=>'Arrêt Conseil d\'Etat ou Conseil Supérieur des CAC', - 'B1X1'=>'41 Dissolution .............. toutes formes', // - 'B110'=>'31 mod.mut. diverses .............. A Pers Phys.', - 'B111'=>'32 mod mut. diverses .............. B Société', - 'B112'=>'33 mod mut. diverses .............. C GIE ', - 'B113'=>'34 mod mut. diverses .............. D Sté civile', - 'B114'=>'37 loc. gérance recue ............. Pers Phys.', // - 'B115'=>'37 loc. gérance recue ............. Société', // - 'B116'=>'40 radiation ...................... Pers Phys.', - 'B117'=>'40 radiation ...................... Société', - 'B118'=>'37 Location gérance reçue ...... Pers Physique', - 'B119'=>'37 Location gérance reçue ...... Société', - 'B120'=>'30 confirmation Ets pr. ou sec..... Société', - 'B121'=>'30 confirmation Ets pr. ou sec..... Pers Phys.', - 'B122'=>'38 loc.gérance donnée ............. Pers Phys.', // - 'B123'=>'38 loc.gérance donnée ............. Société', // - 'B127'=>'40 radiation d\'office ............. toutes formes ', // - 'B128'=>'39 mention d\'office............. toutes formes ', // - 'B129'=>'39 transfert entre tribunaux ...... Pers Phys.', - 'B130'=>'39 transfert entre tribunaux ...... Société', - 'B132'=>'33 mod mut. diverses .............. GEIE', - 'B133'=>'40 radiation ...................... GEIE', // - 'B134'=>'33 mod mut. diverses trf siège..... GEIE', // - 'B136'=>'35 rectificatif ', // - 'B137'=>'35 additif', // - 'B138'=>'35 rectificatif supp. ', // - 'C301'=>'91 dépot des comptes annuels ...... Société', // - 'C331'=>'91 dépot des comptes annuels ...... Société', - 'C336'=>'35 rectificatif ', // - 'C337'=>'35 additif', // - 'C338'=>'35 rectificatif supp. ', // - ); - - private $tabTribunaux = array(); - private $tabFctDir = array(); - - private $tabDevises = array(); - private $tabEvenements=array(); - - private $regExFonction = ''; - private $tabDirigeants = array( - 'pr.sidents? directeur g.n.ral'=>1301, - 'P\.-D\.G\.'=>1301, - 'pr.sidents? du conseil d\'administration assumant la direction général'=>1302, - 'pr.sidents? du conseil d\'administration et administrateur'=>1303, - 'pr.sidents? du conseil d\'administration et directeur général'=>1304, - 'pr.sidents? du conseil d\'administration, directeur général et administrateur'=>1305, - 'Administrateurs? délégués?'=>101, - 'administrateurs? du G\.?I\.?E\.?'=>102, - 'Administrateurs? et membres?'=>103, - 'Administrateurs? et membres? du G\.?I\.?E\.?'=>104, - 'Administrateurs? et présidents?'=>105, - 'administrateurs? membres? engageants? le G\.?I\.?E\.?'=>106, - 'Administrateurs? uniques?'=>107, - 'Administrateurs?'=>100, - 'Co.?g.rants? associ.s? ind.finiment responsables?'=>401, - 'Co.?g.rants? associ.s?'=>402, - 'Co.?g.rants? non associ.s?'=>403, - 'Co.?g.rants? non statutaires?'=>404, - 'Co.?g.rants? pouvant engager la soci.t.'=>405, - 'Co.?g.rants? statutaires'=>406, - 'Co.?g.rants?'=>400, - 'Nouveaux? g.rants?'=>901, - 'G.rants? et directeurs? techniques?'=>902, - 'g.rants? et associ.s? en nom collectif'=>903, - 'g.rants? associ.s? en nom collectif'=>903, - 'g.rants? et associ.s? en nom'=>904, - 'g.rants? associ.s? en nom'=>904, - 'g..ants? (?:et )associ.s? ind.finiment (?:et solidairement )responsables?'=>905, - 'g.rants? (?:et )associ.s? uniques?'=>906, - 'g.rants? (?:et )associ.s?'=>907, - // gérant associé - 'g.rants? associ.s? majoritaires?'=>908, - 'g.rants? associ.s? minoritaires?'=>909, - 'g.rants? associ.s? tenus? ind.finiment et solidairement des dettes sociales'=>910, - 'g.rants? majoritaire'=>911, - 'g.rants? non associ.s?'=>912, - 'g.rants? non statutaires?'=>913, - 'g.rants? pouvant engager seuls la soci.t.'=>914, - 'g.rants? pouvant engager la soci.t.'=>915, - 'g.rants? salari.s?'=>916, - 'g.rants? statutaires? associ.s?'=>917, - 'g.rants? statutaires?'=>918, - 'g.rants? et administrateurs?'=>919, - 'G.rants? techniques?'=>920, - 'anciens? g.rants?'=>921, - 'g.rant\(e\)'=>900, - 'g.rants?'=>900, - 'associ.s? commandit.s? g.rants?'=>201, - 'associ.s? commandit.s?'=>202, - 'Associ.s? d\'une soci.t. civile'=>203, - 'Associ.s? de soci.t. civile'=>204, - //Associés de société civile - 'associ.s? en nom'=>205, - 'Associ.s? exploitants?'=>206, - 'Associ.s? non exploitants?'=>207, - 'Associ.s? non g.rants?'=>208, - 'Associ.s? g.rants?'=>209, - 'Associ.s? ind.finiment et solidairement responsables?'=>210, - 'Associ.s? ind.finiment responsables?'=>211, - 'Associés?'=>200, - 'Co.?commissaires? aux comptes suppl.ants?'=>301, - 'Co.?commissaires? aux comptes titulaires?'=>302, - 'Commissaires? aux comptes suppl.ants?'=>303, - 'Commissaires? aux comptes titulaires?'=>300, - 'Conjoints? Collaborateurs?'=>500, - 'Contr.leurs? de gestion et des comptes'=>601, - 'contr.leurs? de gestion du G\.?I\.?E\.?'=>602, - 'Contr.leurs? de gestion'=>603, - 'Contr.leurs? des comptes titulaires?'=>604, - 'contr.leurs? des comptes du G\.?I\.?E\.?'=>605, - 'Contr.leurs? des comptes et de gestion'=>606, - 'Contr.leurs? des comptes et membre du G\.?I\.?E\.?'=>607, - 'Contr.leurs? des comptes'=>608, - 'Contr.leurs'=>600, - 'Directeurs? général?u?x? adjoints?'=>701, - 'Directeurs? général?u?x? délégués? et administrateurs?'=>702, - 'Directeurs? général?u?x? délégués? et membres? du comité de surveillance'=>703, - 'Directeurs? général?u?x? délégués?'=>704, - 'Directeurs? général?u?x? et administrateurs?'=>705, - 'Directeurs? général?u?x? et membres? du directoire'=>706, - 'directeurs? général?u?x? uniques? du directoire'=>707, - 'directeurs? général?u?x? uniques?'=>708, - 'directeurs? général?u?x?'=>709, - 'directeurs? gérants?'=>710, - 'Directeurs? techniques?'=>711, - 'Directeurs? des transports'=>712, - 'Directeurs?'=>700, - 'dirigeants? à l\'étranger et en France'=>801, - 'Dirigeants? à l\'étranger'=>802, - 'dirigeants? en France et à l\'étranger'=>803, - 'dirigeants? en France'=>804,//805 autre dirigeant - 'Dirigeants?'=>800, - 'mandataires? ad hoc'=>1101, - 'mandataires? général'=>1102, - 'mandataires? généraux'=>1102, - 'Mandataires?'=>1100, - 'Membres? du G\.?I\.?E\.?'=>1201, - 'membres? du groupement'=>1202, - 'membres? et administrateurs?'=>1203, - 'Membres? du comité de direction'=>1204, - 'Membres? du comité de surveillance'=>1205, - 'Membres? du conseil de direction'=>1206, - 'Membres? du conseil de surveillance'=>1207, - 'Membres? du directoire'=>1208, - 'Membres?'=>1200, - 'fond.s? de pouvoir'=>1000, - 'Personnes? ayant le pouvoir d\'engager à titre habituel la société vis-à-vis des tiers'=>1001, - 'Personnes? ayant pouvoir d\'engager à titre habituel la société vis-à-vis des tiers'=>1001, - 'personnes? ayant le pouvoir d\'engager la société en France'=>1002, - 'personnes? ayant pouvoir d\'engager la société en France'=>1002, - 'Personnes? ayant le pouvoir d\'engager la société'=>1003, - 'Personnes? ayant pouvoir d\'engager la société'=>1003, - 'Personnes? ayant le pouvoir de diriger et gérer'=>1004, - 'Personnes? ayant pouvoir de diriger et gérer'=>1004, - 'personnes? pouvant engager à titre habituel l\'assujetti'=>1005, - 'Personnes?'=>1006, - 'pr.sidents? du conseil d\'administration'=>1306, - 'pr.sidents? du conseil de surveillance'=>1307, - 'pr.sidents? du directoire'=>1308, - 'pr.sidents? du G\.?I\.?E\.?'=>1309, - 'pr.sidents? et membres? du conseil de surveillance'=>1310, - 'Pr.sidents? et membres? du directoire'=>1311, - 'Pr.sidents? et pr.sidents? du comité de direction'=>1312, - 'pr.sidents? et pr.sidents? du comité de surveillance'=>1313, - 'Pr.sidents? et administrateurs?'=>1314, - 'Pr.sidents?'=>1300, - 'repr.sentants? de soci.t. .trang.re'=>1401, - 'repr.sentants? tant en France qu\'à l\'.tranger'=>1402, - 'Repr.sentants? à l\'.tranger'=>1403, - 'repr.sentants? l.gal?a?x? en France'=>1404, - 'Repr.sentants? l.gal?a?x?'=>1405, - 'Repr.sentants? permanents?'=>1405, - 'Repr.sentants?'=>1400, - 'co.?responsables? en France'=>1501, - 'responsables? pour la France'=>1502, - 'responsables? tant en France qu\'à l\'étranger'=>1503, - 'Responsables? technique'=>1504, - 'responsables? à l\'.tranger'=>1505, - 'Responsables? de la soci.t. en France'=>1506, - 'Responsables? en France'=>1507, - 'responsables? l.gal en France'=>1508, - 'responsables? en France'=>1508, - 'Responsables?'=>1500, - 'Vice-pr.sidents? du conseil d\'administration'=>1801, - 'vice-pr.sidents? du conseil de surveillance'=>1802, - 'Vice-pr.sidents? et administrateurs? priv.s?'=>1803, - 'Vice-pr.sidents? et administrateurs?'=>1804, - 'Vice-pr.sidents? et membres? du conseil de surveillance'=>1805, - 'Vice-pr.sidents?'=>1800, - 'Vice-secr.taires?'=>1601, - 'Vice-tr.soriers?'=>1701, - 'Tr.soriers?'=>1700, - 'Secr.taires? du conseil d\'administration'=>1602, - 'Secr.taires? du conseil de surveillance'=>1603, - 'Secr.taires?'=>1600, - 'Liquidateurs?'=>1900, - ); - - public function __construct() - { - /** Charge toute la table des tribunaux pour ne pas lancer systématiquement des requètes sur le serveur MySQL - ** lors des intégrations de Bodacc - **/ - $this->tabTribunaux=$this->getTabTribunaux(); - $this->tabFctDir=$this->getTabFctDir(); - $this->tabEvenements=$this->getTabEvenements(); - $this->tabDevises=$this->getTabDevises(); - $this->regExFonction=implode(')|(', array_keys($this->tabDirigeants)); - } - - /** Converti les accents au format TLS du Bodacc - ** @param string Ligne de texte avec accents au format TLS (sans balise Bodacc) - ** @return string Ligne de texte avec les accents normaux - **/ - public function convertAccents($texteBodacc) { - return strtr($texteBodacc, self::$tabAccents); - } - - /** Vérifie si la balise passée en paramètre est valide - ** @param string Balise Bodacc - ** @return bool - **/ - public function isBaliseBodacc($balise) { - return array_key_exists($balise, self::$tabBalises); - } - - /** Initialisation du tableau privé des tribunaux **/ - private function getTabTribunaux() { - $cache = dirname(__FILE__) . DIRECTORY_SEPARATOR . 'Cache' . DIRECTORY_SEPARATOR . 'Tribunaux.php'; - if ( file_exists($cache) ) { - return include $cache; - } else { - $iDb=new WDB(); - $rep=$iDb->select('tribunaux', 'triCode, triNom, triCP, triSiret', "triCode IS NOT NULL"); - $tabTribunaux=array(); - foreach($rep as $k=>$trib) { - $dep=substr($trib['triCP'],0,2)*1; - if ($dep==97 || $dep==98) $dep=substr($trib['triCP'],0,3)*1; - $tabTmp=array($trib['triCode']=>array('nom'=>$trib['triNom'],'siret'=>$trib['triSiret'],'dep'=>$dep)); - $tabTribunaux=array_merge($tabTribunaux, $tabTmp); - } - return $tabTribunaux; - } - } - - /** Initialisation du tableau privé des codes fonctions de direction **/ - private function getTabFctDir() { - $cache = dirname(__FILE__) . DIRECTORY_SEPARATOR . 'Cache' . DIRECTORY_SEPARATOR . 'FctDir.php'; - if ( file_exists($cache) ) { - return include $cache; - } else { - $iDb=new WDB(); - $rep=$iDb->select('bodacc_fonctions', 'codeFct, libelle', '1'); - $tabRet=array(); - foreach($rep as $tabFct) - $tabRet[$tabFct['codeFct']*1]=$tabFct['libelle']; - - return $tabRet; - } - } - - /** Retourne le libellé d'une fonction de direction **/ - function getFctDir($codeFonction) { - return $this->tabFctDir[$codeFonction]; - } - - /** Initialisation du tableau privé des tribunaux **/ - public function getTribunauxParCommune($codeInseeCommune) { - $iDb=new WDB(); - $rep=$iDb->select('tribunaux t, tribunauxInsee i', 't.triId, t.triIdSup, i.CodeInsee, t.triCode, t.triType, t.triNom, t.triCP, t.triTel, t.triFax, t.triWeb, t.triMail, t.triSiret, t.triAdrNum, t.triAdrIndRep, t.triAdrTypeVoie, t.triAdrVoie, t.triAdrComp, t.triVille, t.triStatut, t.triDateCessation, t.triCommentaire, t.triNumGreffe', "i.CodeInsee='$codeInseeCommune' AND i.triId=t.triId ORDER BY t.triNumGreffe DESC, t.triId ASC", false, MYSQL_ASSOC); - $tabTribunaux=array(); - foreach($rep as $k=>$trib) { - $tabTribunaux[]=$trib; - } -// print_r($tabTribunaux); -// die(); - return $tabTribunaux; - } - - /** Retourne les tribunaux par Département **/ - public function getTribunauxParDep($dep) { - $iDb=new WDB(); - if ($dep<96) - $rep=$iDb->select('tribunaux t', 't.triId, t.triIdSup, t.triCode, t.triType, t.triNom, t.triCP, t.triTel, t.triFax, t.triWeb, t.triMail, t.triSiret, t.triAdrNum, t.triAdrIndRep, t.triAdrTypeVoie, t.triAdrVoie, t.triAdrComp, t.triVille, t.triStatut, t.triDateCessation, t.triCommentaire, t.triNumGreffe', "t.triCP BETWEEN '".$dep."000' AND '".$dep."999' ORDER BY t.triType ASC", false, MYSQL_ASSOC); - else - $rep=$iDb->select('tribunaux t', 't.triId, t.triIdSup, t.triCode, t.triType, t.triNom, t.triCP, t.triTel, t.triFax, t.triWeb, t.triMail, t.triSiret, t.triAdrNum, t.triAdrIndRep, t.triAdrTypeVoie, t.triAdrVoie, t.triAdrComp, t.triVille, t.triStatut, t.triDateCessation, t.triCommentaire, t.triNumGreffe', "t.triCP BETWEEN '".$dep."00' AND '".$dep."99' ORDER BY t.triType ASC", false, MYSQL_ASSOC); - $tabTribunaux=array(); - foreach($rep as $k=>$trib) { - $tabTribunaux[]=$trib; - } - return $tabTribunaux; - } - - /** Donne la cours d'appel d'un tribunal par son code **/ - public function getTribunalIdCA($codeTribunal) { - $iDb=new WDB(); - $rep=$iDb->select('tribunaux', 'triIdSup', "triCode='$codeTribunal'"); - return $rep[0][0]; - } - - public function getListeTribunaux() { - return $this->tabTribunaux; - } - - /** Initialisation du tableau privé des évènements **/ - private function getTabEvenements() { - $cache = dirname(__FILE__) . DIRECTORY_SEPARATOR . 'Cache' . DIRECTORY_SEPARATOR . 'Evenements.php'; - if ( file_exists($cache) ) { - return include $cache; - } else { - $iDb=new WDB(); - $rep=$iDb->select('tabEvenements', 'codEven, libEven, Bodacc_Code, Rubrique, version, lienEtab', '1', false, MYSQL_ASSOC); - $tabRet=array(); - foreach($rep as $k=>$even) { - //$tabTmp=array($trib['codEven']=>$trib['libEven']); - $tabRet[$even['codEven']] = array( - 'libEven'=>$even['libEven'], - 'Bodacc_Code'=>$even['Bodacc_Code'], - 'Rubrique'=>$even['Rubrique'], - 'Version'=>$even['version'], - 'LienEtab'=>$even['lienEtab'], - ); - } - //echo ""; - return $tabRet; - } - } - - /** Initialisation du tableau privé des devises du Bodacc **/ - private function getTabDevises() { - $cache = dirname(__FILE__) . DIRECTORY_SEPARATOR . 'Cache' . DIRECTORY_SEPARATOR . 'Devises.php'; - if ( file_exists($cache) ) { - return include $cache; - } else { - $iDb=new WDB(); - $rep=$iDb->select('bodacc_devises', 'libDeviseBodacc, devIso', '1', false, MYSQL_ASSOC); - $tabDevises=array(); - foreach($rep as $k=>$trib) { - $tabTmp=array($trib['libDeviseBodacc']=>$trib['devIso']); - $tabDevises=array_merge($tabDevises, $tabTmp); - } - return $tabDevises; - } - } - - /** Initialisation du tableau privé des devises du Bodacc **/ - /* - private function getTabDirigeants() { - $iDb=new WDB(); - $rep=$iDb->select('bodacc_dirigeants', 'libDeviseBodacc, devIso', '1'); - $tabDevises=array(); - foreach($rep as $k=>$trib) { - $tabTmp=array($trib['libDeviseBodacc']=>$trib['devIso']); - $tabDevises=array_merge($tabDevises, $tabTmp); - } - return $tabDevises; - }*/ - - /** Vérifie si le code du Tribunal BODACC est connu - ** @param string Code du Tribunal au BODACC - ** @return bool - **/ - public function isTribunal($codeBodaccDuTribunal) { - $codeBodaccDuTribunal=trim($codeBodaccDuTribunal); - return @array_key_exists($codeBodaccDuTribunal, $this->tabTribunaux); - } - - /** Retorne le libellé du code du Tribunal BODACC - ** @param string Code du Tribunal au BODACC - ** @return string Libellé du Tribunal - **/ - public function getTribunalNom($codeBodaccDuTribunal) { - $codeBodaccDuTribunal=trim($codeBodaccDuTribunal); - return $this->tabTribunaux[$codeBodaccDuTribunal]['nom']; - } - - public function getTribunalDep($codeBodaccDuTribunal) { - $codeBodaccDuTribunal=trim($codeBodaccDuTribunal); - return $this->tabTribunaux[$codeBodaccDuTribunal]['dep']; - } - - public function getTribunalSiret($codeBodaccDuTribunal) { - $codeBodaccDuTribunal=trim($codeBodaccDuTribunal); - return $this->tabTribunaux[$codeBodaccDuTribunal]['siret']; - } - - public function getTribunalCode($libelleDuTribunal, $dep=0) { - $libelleDuTribunal=preg_replace('/[0-9]/',' ', str_replace("\r\n",' ', strtoupper($libelleDuTribunal))); - $libelleDuTribunal=str_replace("\n",' ', $libelleDuTribunal); - $libelleDuTribunal=strtr( $libelleDuTribunal, - array( - "TRIBUNAL DE COMM'APPELERCE"=>'TC', // BUG DU BODACC 2008-A093-3146 - 'TRIBUNAL DE COMMERCE'=>'TC', - 'TRIBUNAL DE GRANDE INSTANCE'=>'TGI', - 'TRIBUNAL D\'INSTANCE'=>'TI', - 'TRIBUNAL MIXTE DE COMMERCE'=>'TMX', - 'TRIBUNAL DE PREMIERE INSTANCE'=>'TPI', - 'TRIBUNAL SUPÉRIEUR D\'APPEL'=>'TSA', - ' D\''=>' ', ' DE '=>' ', - 'GREFFE DU'=>'', '-'=>' ', - 'Ç'=>'C', 'É'=>'E', 'Î'=>'I', 'Â'=>'A', 'È'=>'E', 'Ô'=>'O', 'Ê'=>'E', - ' DU MANS'=>' LE MANS', - ' DU CREUSOT'=>' LE CREUSOT', - ' DU HAVRE'=>' LE HAVRE', - ' DU '=>' ', 'PUY'=>'PUY EN VELAY', - 'ALÈS'=>'ALES', - '.'=>' ', - ) - ); - $libelleDuTribunal=trim(preg_replace('/ +/',' ', $libelleDuTribunal)); - if (''.$dep=='2A' || ''.$dep=='2B') $dep=20; - else $dep=$dep*1; - foreach ($this->tabTribunaux as $code=>$tribunal) { - - if ( $dep<>0 && ($tribunal['dep'])*1==$dep ) { - if ( str_replace('TGIcc', 'TGI', strtr($tribunal['nom'],array('-'=>' ',' DE LA REUNION'=>'')))==$libelleDuTribunal ) { - return $code; - } elseif ( str_replace('TIcc', 'TI', strtr($tribunal['nom'],array('-'=>' ',' DE LA REUNION'=>'')))==$libelleDuTribunal ) { - return $code; - } elseif (preg_match('/^PREFECTURE/i',$libelleDuTribunal) && preg_match('/^PREFECTURE/i',$tribunal['nom'])) { - return $code; - } elseif (preg_match('/^SOUS.PREFECTURE/i',$libelleDuTribunal) && preg_match('/^SOUS.PREFECTURE/i',$tribunal['nom'])) { - $sprefEnBase=trim(preg_replace('/^SOUS.PREFECTURE (DE|DU|D\')/i','',$tribunal['nom'])); - $sprefParam =trim(strtr(strtr(preg_replace('/^SOUS.PREFECTURE/i','',$libelleDuTribunal),array('SAINT '=>'ST ', 'SAINTE '=>'STE ', 'BASSIN ARCACHON'=>'ARCACHON', ' (DRÔME)'=>'')),'ÀÂÈÎÔ','AAEIO')); - if($sprefEnBase==$sprefParam) - return $code; - // echo "Pas trouvé $sprefParam ($dep) par rapport à $sprefEnBase en base.".EOL; - //Pas trouvé SAINT QUENTIN (2) par rapport à ST QUENTIN ! - } elseif ( $dep==13 && $tribunal['nom']=='TGI TARASCON' && $libelleDuTribunal=='TGI TARASCON SUR RHONE') - return $code; - elseif ( $dep==13 && $tribunal['nom']=='TC TARASCON' && $libelleDuTribunal=='TC TARASCON SUR RHONE') - return $code; - } elseif ( $dep==0 && str_replace('TGIcc', 'TGI', strtr($tribunal['nom'],array('-'=>' ',' DE LA REUNION'=>'')))==$libelleDuTribunal ) - return $code; - elseif ( $dep==978 && str_replace('TGIcc', 'TGI', strtr($tribunal['nom'],array('-'=>' ',' DE LA REUNION'=>'')))==$libelleDuTribunal ) - return $code; - elseif ( $dep==971 && str_replace('TGIcc', 'TGI', strtr($tribunal['nom'],array('-'=>' ',' DE LA REUNION'=>'')))==$libelleDuTribunal ) - return $code; - elseif ( $dep==974 && $libelleDuTribunal=='TMX SAINT PIERRE LA REUNION') - return $code; - elseif ( $dep==975 && $libelleDuTribunal=='TGI SAINT PIERRE') - return $code; - - elseif ( ($dep==95 || $dep==975) && - ($libelleDuTribunal=='TRIBUNAL PREMIERE INSTANCE SAINT PIERRE ET MIQUELON' || $libelleDuTribunal=='TPI SAINT PIERRE ET MIQUELON') - ) - return $code; - - elseif ( ($dep==971 || $dep==985 || $dep==976) && - ($libelleDuTribunal=='TRIBUNAL PREMIERE INSTANCE MAMOUDZOU' || $libelleDuTribunal=='TPI MAMOUDZOU') - ) - return $code; - elseif ( ($dep==971 || $dep==985 || $dep==976) && - ($libelleDuTribunal=='TRIBUNAL DE GRANDE INSTANCE DE MAMOUDZOU' || $libelleDuTribunal=='TGI MAMOUDZOU') - ) - return $code; - /* - elseif ($dep==13 && $libelleDuTribunal=='TGI TARASCON SUR RHONE') - return $code; - */ - /*else - echo "Pas trouvé $libelleDuTribunal ($dep) par rapport à ".$tribunal['nom'].' en base !'.EOL; - */ - } - //echo "Pas trouvé $libelleDuTribunal ($dep) par rapport à ".$tribunal['nom'].' en base !'.EOL; - //echo "Pas trouvé $sprefParam ($dep) par rapport à $sprefEnBase en base !".EOL; - return false; - } - - /** Vérifie si le code du Tribunal BODACC est connu - ** @param string Code du Tribunal au BODACC - ** @return bool - **/ - public function isCodeEvenement($codeEven) { - $code=$codeEven*1; - if ($code==0) return false; - return array_key_exists($code, $this->tabEvenements); - } - - /** Retourne le libellé de l'évènement BODACC codifié par S&D - ** @param string Code de l'évènement BODACC - ** @return string Libellé de l'évènement - **/ - public function getEvenement($codeEven) { - $code=((int)$codeEven)*1; - if ($code==0) return false; - return @$this->tabEvenements[$code]['libEven']; - } - - /** Retourne le niveau de version du code évènement BODACC codifié par S&D - ** @param string Code de l'évènement BODACC - ** @return integer Niveau de version (12, 13, 14, ...) correspondant à 1.2, 1.3 ou 1.4 pour les clients !!! - **/ - public function getVersionEvenement($codeEven) { - $code=((int)$codeEven)*1; - if ($code==0) return false; - return @$this->tabEvenements[$code]['Version']; - } - - - /** Retourne le libellé du Chapitre de l'évènement BODACC (comptes, creations, mmd, procol, radiations, ventes) - ** @param string Code de l'évènement BODACC - ** @return string Libellé du chapitre (comptes, creations, mmd, procol, radiations, ventes) - **/ - public function getChapitreEvenement($codeEven) { - $code=((int)$codeEven)*1; - if ($code==0) return false; - return @$this->tabEvenements[$code]['Rubrique']; - } - - /** Retourne le code de l'édition du BODACC (A, B ou C) - ** @param string Code de l'évènement BODACC - ** @return string Libellé de l'édition (A, B ou C) - **/ - public function getEditionEvenement($codeEven) { - $code=$codeEven*1; - if ($code==0) return false; - return @$this->tabEvenements[$code]['Bodacc_Code']; - } - - /** Retourne si la porté de l'évènement est relative à l'établissement uniquement - ** @param $codeEven Code de l'évènement BODACC - ** @return bool - **/ - public function isEvenementEtab($codeEven) { - $code=$codeEven*1; - if ($code==0) return false; - return @$this->tabEvenements[$code]['LienEtab']; - } - - /** Vérifie si une devise texte du Bodacc est connu - ** @param string Devise textuelle au BODACC (YENS, EUROS, etc...) - ** @return bool - **/ - public function isDeviseBodacc($strDevise) { - return array_key_exists($strDevise, $this->tabDevises); - } - - /** Retoune le code ISO 4217 d'une devise texte du Bodacc - ** @param string Devise textuelle au BODACC (YENS, EUROS, etc...) - ** @return string Code ISO 4217 de la devise - **/ - public function getDeviseBodacc($strDevise) { - return $this->tabDevises[$strDevise]; - } - - /** Insert le libellé de devise textuel du Bodacc - ** @param string Devise textuelle au BODACC (YENS, EUROS, etc...) - ** @param string Devise ISO - ** @return bool - **/ - public function addDeviseBodacc($strDevise, $deviseIso) { - $iDb=new WDB(); - if (!$iDb->insert('bodacc_devises', array( 'libDeviseBodacc'=>$strDevise, - 'devIso'=>$deviseIso, - 'dateInsert'=>date('YmdHis')),true)) - return false; - // On réinitialise le tableau des devises du Bodacc - $this->tabDevises=$this->getTabDevises(); - return true; - } - - /** Vérifie si le code rubrique de l'annonce au Bodacc est connu - ** @param string Code rubrique de l'annonce - ** @return bool - **/ - public function isRubriqueBodacc($codeRubriqueBodacc) { - //return array_key_exists($balise, self::$tabBalises); - return array_key_exists($codeRubriqueBodacc, self::$tabRubriques); - } - - /** Retourne le code rubrique de l'annonce au Bodacc - ** @param string Code rubrique de l'annonce - ** @return string Libellé de la rubrique au BODACC - **/ - public function getLibRubriqueBodacc($codeRubriqueBodacc) { - return $this->tabRubriques[$codeRubriqueBodacc]; - } - - /** Retourne le code évènement de l'annonce en provenance du Bodacc XML - ** - ** @param string $libJugementXML Libellé de la rubrique au Bodacc XML - ** @return string - **/ - public function getCodeNatureEvenement($libEvenXML) { - global $tabNaturesEvenements; - $codeEven=@$tabNaturesEvenements[md5($libEvenXML)]*1; - if ($codeEven>0) return $codeEven; - else return 0; - } - - public function getDirigeants($strAdministration) { - $tabRet=array(); - $strFonctions=$this->regExFonction; - $tabNoms=array(); - if (is_array($strAdministration)) - $strAdministration=implode('. ', $strAdministration); - $strAdministration=trim($strAdministration); - $strAdministration=str_ireplace('Nom d\'usage :', 'Nom d\'usage =', trim($strAdministration)); - if ($strAdministration=='') return $tabRet; - $tabAdministration=explode(':', $strAdministration); - //file_put_contents('coucou.log',print_r($tabAdministration, 1), FILE_APPEND); - $tabFonctions=$tabNoms=$tabCodeFct=$tabOldFct=array(); - - /** - * On boucle sur chaque ligne qui doit contenir NOM PRENOM suivi de la fonction de la ligne suivante - * La première ligne ne contient pas de NOM PRENOM car il s'agit de la 1ère ligne - */ - foreach ($tabAdministration as $i=>$ligne) { - - /* - file_put_contents('coucou.log','Ligne : '.$ligne."\n", FILE_APPEND); - - preg_match("/(.*)gérants?(.*)$/i", $ligne, $matches); - file_put_contents('coucou.log','Test : '.print_r($matches, 1), FILE_APPEND); - - preg_match("/(.*)g.rants?(.*)$/iu", $ligne, $matches); - file_put_contents('coucou.log','Test : '.print_r($matches, 1), FILE_APPEND); - */ - - /** On recherche la fonction et son code fonction de la ligne */ - foreach ($this->tabDirigeants as $fonction=>$numFct) { - - //file_put_contents('coucou.log','Fonction : '.$fonction, FILE_APPEND); - //@todo : provisoire table bdd en utf8 - if (preg_match("/(.*)$fonction(.*)$/iu", $ligne, $matches)) { - //file_put_contents('coucou.log',"Matched \n", FILE_APPEND); - $tabCodeFct[$i]=$numFct; - $tabFonctions[$i]=@preg_replace("/($strFonctions)/i", '', $tabAdministration[$i+1]); - if(@preg_match("/(partant|ancien|suppression|cha.g|d.part|d.mis(si|is)on|r.vocation)/i", $tabAdministration[$i+1])) - $tabOldFct[$i]=1; - else - $tabOldFct[$i]=0; - break; - } - //file_put_contents('coucou.log',"\n", FILE_APPEND); - } - } //file_put_contents('coucou.log',print_r($tabFonctions, 1), FILE_APPEND); - /** On boucle sur chaque fonction trouvée et on extrait les noms, prénoms **/ - foreach ($tabFonctions as $i=>$ligne) {//$ligne - $numFonction=$tabCodeFct[$i]; - $oldFonction=$tabOldFct[$i]; - $ligne=trim($ligne); - /** Chaque Noms pour une même focntion doit être séparée par " et " ou ";" */ - $strNoms=str_replace(' et ', ';', $ligne); - $tabNoms=explode(';', $strNoms); - $raisonSociale=$nom=$prenom=$usage=''; - foreach ($tabNoms as $noms) { - if (preg_match("/^(.*)\((.*)\).*\((.*)\)/i", $noms, $matches)) { - //Cas type NOM (prenom) (Nom usage : XXXX) - $nom=trim(str_replace(':', '', $matches[1])); - if (preg_match("/(.*)repr.sent.e?(.*)/i", $nom, $matches2)) { - $raisonSociale=$matches2[1]; - $nom=trim(str_replace('par ', '', $matches2[2])); - } - $prenom=trim(str_replace('par ', '', $matches[2])); - $usage=trim(str_ireplace('Nom d\'usage =', '', $matches[3])); - } elseif (preg_match("/^(.*)\((.*)\)/i", $noms, $matches)) { - $nom=trim(str_replace(':', '', $matches[1])); - if (preg_match("/(.*)repr.sent.e?(.*)/i", $nom, $matches2)) { - $raisonSociale=$matches2[1]; - $nom=trim(str_replace('par ', '', $matches2[2])); - } - $prenom=trim($matches[2]); - $usage=''; - //Cas type NOM (prenom) - } elseif (preg_match("/^(.*)/i", $noms, $matches)) { - $tabNomPrenom=$this->getNomPrenomGenre(trim(str_replace(':', '', $matches[1]))); - $nom=$tabNomPrenom['Nom']; - $prenom=$tabNomPrenom['Prenoms']; - $usage=''; - } else - die("Cas non gérée pour cette structure de noms : '$noms'"); - /** @todo Il manque le cas de repr par pour le STE ??? **/ - $tabRet[]=array('fonction'=>$numFonction, 'rs'=>trim(str_replace(',','',$raisonSociale)), 'nom'=>$nom, 'prenom'=>$prenom, 'nomUsage'=>$usage, 'depart'=>$oldFonction); - } - } - //print_r($tabRet); - //$saisie = fgets(STDIN); - return $tabRet; - } - - /** Détermine les NOMs et PRENOMs dans une chaine de caractère - **/ - function getNomPrenomGenre($strNomPrenom) { - $iDb=new WDB('npaipp'); - $noms=$prenoms=$genre=''; - $tabMots=preg_split('/( +|\.+)/', $strNomPrenom); - //print_r($tabMots); - foreach ($tabMots as $i=>$prenom) { - $tabPrenoms=$iDb->select('pp_prenoms', 'prenom, genre, mixte, nbTot', - "prenom='".addslashes($prenom)."' AND nbTot>100 ORDER BY nbTot DESC", - false, MYSQL_ASSOC); - if (count($tabPrenoms)>0) { - $tabPrenom=$tabPrenoms[0]; - if ($i==0) // C'est plutôt le nom de famille au début de la chaîne - $noms.=$prenom.' '; - else { - $prenoms.=$prenom.', '; - if ($genre=='' && $tabPrenom['genre']==1 && $tabPrenom['mixte']==0) - $genre='M'; - elseif ($genre=='' && $tabPrenom['genre']==2 && $tabPrenom['mixte']==0) - $genre='F'; - } - } else - // Ce n'est pas un prénom mais un nom de famille - $noms.=$prenom.' '; - } - return array('Nom'=>trim($noms), 'Prenoms'=>preg_replace('/,$/','',trim($prenoms)), 'Genre'=>$genre); - } - - - function getNumPageAnnonce($bodaccCode, $annee, $num) { - - $tabRet=array(); - $iDb=new WDB(); - $bodacc=$iDb->select('bodacc', - 'Bodacc_Code, Bodacc_Annee_Parution, Bodacc_Num, Num_Annonce, Tribunal_Dept, Tribunal_Code, Rubrique_Bodacc, length(annonce) as Long', - "Bodacc_Code='$bodaccCode' AND Bodacc_Annee_Parution=$annee AND Bodacc_Num=$num"); - - foreach ($bodacc as $k=>$ann) { - $tabRet[$k]=array( 'BodaccCode'=>$ann['Bodacc_Code'], - 'AnneeParution'=>$ann['Bodacc_Annee_Parution'], - 'BodaccNum'=>$ann['Bodacc_Num'], - 'NumAnnonce'=>$ann['Num_Annonce'], - 'Departement'=>$ann['Tribunal_Dept'], - 'Tribunal'=>$ann['Tribunal_Code'], - 'Rubrique'=>$ann['Rubrique_Bodacc'], - 'nbCar'=>$ann['Long'], - ); - } - - return $tabRet; - } - - /** Vérifie si la date du jugement correspond à une date de jugements civils pour une date donnée - ** @param string $tribunal Code BODACC du TGIcc - ** @param date $dateJug Date du jugement - ** @param int $jourJug Jour de la semaine 1=Lundi à 5=Vendredi - ** @param int $jjJug Jour du jugement dans le mois - ** @return bool - **/ - function isAudienceCivile($tribunal, $dateJug, $jourJug, $jjJug, $texteAnnonce) { - //echo "Tribunal=$tribunal, Date='$dateJug', Jour de la semaine='$jourJug', Jour du mois='$jjJug'".EOL; - $tribunal=trim($tribunal); - $droitLocal=false; - - switch ($tribunal) { // Date des audiences civiles droit local - case 'METZG': // Le mercredi - case 'MULHOG': // Le mercredi - $droitLocal=true; - if ($jourJug==3) { - echo date('Y/m/d - H:i:s') ." - Droit local : Audiences civiles du mercredi !".EOL; - return 1; - } - break; - case 'THIONG': // Le jeudi à 9h - $droitLocal=true; - if ($jourJug==4) { - echo date('Y/m/d - H:i:s') ." - Droit local : Audiences civiles du jeudi !".EOL; - return 1; - } - break; - case 'SARREG': // Les 1er, 2ème et 4ème mardi - $droitLocal=true; - if ($jourJug==2 && $jjJug<15 && $jjJug>21) { - echo date('Y/m/d - H:i:s') ." - Droit local : Audiences civiles du mardi !".EOL; - return 1; - } - break; - case 'STRASG': // ? - $droitLocal=true; - //echo date('Y/m/d - H:i:s') ." - Droit local : Audiences civiles de Strasbourg !".EOL; - return 0; - break; - case 'SAVERG': // Le mardi et 2ème, 3ème et 4ème vendredi - $droitLocal=true; - if ($jourJug==2 || ($jourJug==5 && $jjJug>7)) { - echo date('Y/m/d - H:i:s') ." - Droit local : Audiences civiles du vendredi !".EOL; - return 1; - } - case 'COLMAG': // ? - $droitLocal=true; - //echo date('Y/m/d - H:i:s') ." - Droit local : Audiences civiles de Colmar !".EOL; - return 0; - break; - } - - if ($droitLocal && preg_match("/insolvabilit.{0,3}notoire/i", $texteAnnonce)) - return 1; - - return 0; - } - - function getJALparDep($dep) { - $tabRet=array(); - $iDb=new WDB(); - $rep=$iDb->select('tabJAL', 'id, dep, nomJal, siteWeb, email, adresse, cp, ville, tel, fax, parution, aboAnnuel, infos', - "dep=$dep", false, MYSQL_ASSOC); - foreach($rep as $k=>$jal) { - $tabRet[]=$jal; - } - return $tabRet; - } - - function getListeJalCollecte() { - $tabRet=array(); - $iDb=new WDB(); - $rep=$iDb->select('tabJAL', 'id, nomJal', 'sedDateAbo<>0 GROUP BY nomJal ORDER BY nomJal ASC', false, MYSQL_ASSOC); - foreach($rep as $k=>$jal) { - $tabRet['_'.$jal['id']]=$jal['nomJal']; - } - return $tabRet; - } - - function getActiviteReelle($siren, $fj) { - $iDb=new WDB(); - $strEvenVtLg=" AND Rubrique<>'ventes' AND typeEven NOT LIKE '%2700%' AND typeEven NOT LIKE '%2701%' AND typeEven NOT LIKE '%2702%' AND typeEven NOT LIKE '%2703%' AND typeEven NOT LIKE '%2710%' AND typeEven NOT LIKE '%2720%' AND typeEven NOT LIKE '%2721%' AND typeEven NOT LIKE '%2725%' AND typeEven NOT LIKE '%2730%' AND typeEven NOT LIKE '%2740%' AND typeEven NOT LIKE '%2750%' AND typeEven NOT LIKE '%2800%' AND typeEven NOT LIKE '%2840%' AND typeEven NOT LIKE '%2850%' AND typeEven NOT LIKE '%2851%' AND typeEven NOT LIKE '%2860%' AND typeEven NOT LIKE '%2870%' AND typeEven NOT LIKE '%2875%' AND typeEven NOT LIKE '%2880%' AND typeEven NOT LIKE '%2881%' AND typeEven NOT LIKE '%2885%' AND typeEven NOT LIKE '%2890%' AND typeEven NOT LIKE '%2891%' AND typeEven NOT LIKE '%2892%' "; - /** Recherche de l'activité réelle **/ - $bodacc=$iDb->select( 'bodacc_detail', 'Activite', "siren=$siren AND Activite<>'' AND Activite NOT LIKE 'non precis%' $strEvenVtLg ORDER BY Bodacc_Date_Parution DESC LIMIT 0,1", false, MYSQL_ASSOC); - $annCap=@$bodacc[0]; - if ($fj<7000 || $fj>7999) - $tabRet['Activite']=trim(/*preg_replace("/Adjonction.{1,7}activit(?:e|é)(?:.|)\:", '', */$annCap['Activite']);//); - - if ($tabRet['Activite']=='' && trim($tab['activite'])<>'') - $tabRet['Activite']=trim($tab['activite']); - elseif ($tabRet['Activite']=='' && ($fj>90 && $fj<94 || - $fj>9000 && $fj<9400) ) { - $siretMin=(''.$siren.'00000')*1; - $siretMax=(''.$siren.'99999')*1; - $bodacc=$iDb->select( 'asso', 'Assoc_Web, Assoc_Mail, Assoc_Objet, Assoc_NObjet', "siren=$siren AND (Assoc_Objet<>'' OR Assoc_NObjet<>'') ORDER BY Date_Parution DESC LIMIT 0,1", false, MYSQL_ASSOC); - $annCap=@$bodacc[0]; - $tabRet['Activite']=trim($annCap['Assoc_NObjet']); - if ($tabRet['Activite']=='') $tabRet['Activite']=trim($annCap['Assoc_Objet']); - if ($tabRet['Web']=='') $tabRet['Web']=trim($annCap['Assoc_Web']); - if ($tabRet['Mail']=='') $tabRet['Mail']=trim($annCap['Assoc_Mail']); - } elseif ($tabRet['Activite']=='' && ($fj<7000 || $fj>7999)) { - $bodaccHisto=$iDb->select( 'historiques.entrep e, historiques.texte x', - 'e.ANBASE, e.NOBOD, e.CODTRI, e.JAL, e.DATE, e.CODEVE, e.SSCODE, e.DEPT, e.NOANN, e.ROLE, e.SIREN, e.E1GSIR, e.E1GNIC, x.annonceNum, x.annonceTxt', - "e.E1GSIR=$siren AND e.ANBASE=x.annonceNum AND e.DATE BETWEEN 19890101 AND 20041231 AND x.annonceTxt LIKE '%ctivit%' GROUP BY e.ANBASE ORDER BY e.DATE DESC", false, MYSQL_ASSOC); - if (count($bodaccHisto)>0) { - foreach ($bodaccHisto as $idx=>$ann) { - if ($tabCodeTri<>'' && $tabCodeTri<>@$ann['CODTRI']) $tabCodeTri=@$ann['CODTRI']; - if ( ($ann['CODEVE']<20) || - ($ann['CODEVE']>=30 && $ann['CODEVE']<42) || - ($ann['CODEVE']>=51 && $ann['CODEVE']<80) ) { - if (preg_match('/(.*)Activit(?:e|é)(?:.|)\:(.*)(?:Adresse(?:.*|)|Commentaires?|Administration|Etablissement principal|Date d\'effet|Date.de.d.but d.activit.|Capital|Nom commercial)(?:.|)\:/Uis', $ann['annonceTxt'], $matches)) - if (strpos(substr($matches[1],-20),'cess') === false && - strpos(substr($matches[1],-20),'date') === false) { - $tabRet['Activite']=$matches[2]; - break; - } - } - } - } - } - return $tabRet['Activite']; - } - - function getCodeFormeJur($strFJ) { - global $tabCjBodacc; - if (count($tabCjBodacc)<1) - require_once 'Metier/bodacc/configMBodacc.php'; - - $strFJ=strtoupper(trim(preg_replace('/[^a-z]/i','',$strFJ))); - - return @$tabCjBodacc[$strFJ]; - } -} - -?> \ No newline at end of file diff --git a/library/Metier/bodacc/configMBodacc.php b/library/Metier/bodacc/configMBodacc.php deleted file mode 100644 index 2cb206a5..00000000 --- a/library/Metier/bodacc/configMBodacc.php +++ /dev/null @@ -1,3355 +0,0 @@ -5499, // 3710704 - 'SARL'=>5499, // 3092997 - 'SOCIETEPARACTIONSSIMPLIFIEE'=>5710, // 654984 - 'SCI'=>6540, // 314805 - 'SARLASSOCIUNIQUE'=>5498, // 298825 - 'SOCITCIVILEIMMOBILIRE'=>6540, // 236045 - 'SA'=>5599, // 253688 - 'SAS'=>5710, // 278864 - 'SOCITANONYME'=>5599, // 181557 - 'SOCIETEARESPONSABILITELIMITEEAASSOCIEUNIQUE'=>5498, // 141779 - 'SC'=>6599, // 140824 - 'ENTREPRISEUNIPERSONNELLEARESPONSABILITELIMITEE'=>5488, // 125081 - 'SOCITCIVILE'=>6599, // 107132 - 'SOCITRESPONSABILITLIMITEUNIPERSONNELLE'=>5498, // 76627 - 'SOCITENNOMCOLLECTIF'=>5202, // 73878 - 'EURL'=>5488, // 99851 - 'SNC'=>5202, // 75309 - 'SOCITANONYMECONSEILDADMINISTRATION'=>5599, // 61016 - 'SACONSEILDADMINISTRATION'=>5599, // 55159 - 'SOCITDEXERCICELIBRALRESPONSABILITLIMITE'=>5485, // 46107 - 'SARLCAPITALVARIABLE'=>5499, // 30846 - 'EARL'=>6598, // 38235 - 'SOCITPARACTIONSSIMPLIFIEUNIPERSONNELLE'=>5720, // 25570 - 'SOCIETEARESPONSABILITELIMITEESOCIETEAASSOCIEUNIQUE'=>5498, // 24011 - 'SOCITPARACTIONSSIMPLIFIEASSOCIUNIQUE'=>5720, // 21846 - 'EXPLOITATIONAGRICOLERESPONSABILITLIMITE'=>6598, // 20618 - 'SELARL'=>5485, // 26159 - 'SOCITARESPONSABILITELIMITEEACAPITALVARIABLE'=>5499, // 17633 - 'SOCITANONYMEDIRECTOIREETCONSEILDESURVEILLANCE'=>5699, // 26674 - 'SOCITCIVILEDEMOYENS'=>6589, // 14777 - 'SCM'=>6589, // 14931 - 'SOCITDEDROITTRANGER'=>3120, // 13147 - 'SOCITRESPONSABILITLIMITECONSTITUEDUNASSOCIUNIQUE'=>5498, // 11681 - 'SADIRECTOIREETCONSEILDESURVEILLANCE'=>5699, // 12181 - 'SCDECONSTRUCTIONVENTE'=>0, // 11933 - 'SOCIETEPARACTIONSSIMPLIFIEESAS'=>5710, // 10486 - 'ASSOCIATION'=>9220, // 10020 - 'SASU'=>5720, // 12019 - 'SCEA'=>0, // 13267 - 'GIE'=>0, // 9268 - 'GROUPEMENTDINTRTCONOMIQUE'=>0, // 8118 - 'SARLSOCIETEAASSOCIEUNIQUE'=>0, // 7981 - 'SASUNIPERSONNELLE'=>0, // 7615 - 'SARLACAPITALVARIABLE'=>0, // 7322 - 'SOCITCIVILEDEXPLOITATIONAGRICOLE'=>0, // 6741 - 'ASSOCIATIONRGIESELONLALOIDE'=>9220, // 6314 - 'SOCIETECIVILEPROFESSIONNELLE'=>0, // 6139 - 'SOCITANONYMEDIRECTOIRE'=>0, // 6011 - 'SADIRECTOIRE'=>0, // 7171 - 'SOCITCOOPRATIVEAGRICOLE'=>0, // 5399 - 'SARLCONSTITUEDUNASSOCIUNIQUE'=>0, // 5061 - 'GROUPEMENTFONCIERAGRICOLE'=>0, // 4978 - 'SOCITDEXERCICELIBRALARL'=>0, // 4880 - 'SCPROFESSIONNELLE'=>0, // 4560 - 'SICAV'=>0, // 4423 - 'GFA'=>0, // 4617 - 'ENTREPRISEUNIPERSONNELLEARESPONSABILITELIMITEEEURL'=>0, // 4040 - 'SASASSOCIUNIQUE'=>0, // 3813 - 'SOCITCIVILEDECONSTRUCTIONVENTE'=>0, // 3878 - 'SOCITCOOPRATIVEAGRICOLECAPITALVARIABLE'=>0, // 3195 - 'SOCIETEDEXERCICELIBERALPARACTIONSSIMPLIFIEE'=>0, // 3155 - 'SOCITCIVILEAYANTPOUROBJETLACONSTRUCTIONDIMMEUBLESVENTE'=>0, // 3058 - 'SARLU'=>0, // 3714 - 'NONPRCISE'=>0, // 2906 - 'SCP'=>0, // 3513 - 'SOCIETECIVILEDECONSTRUCTIONVENTE'=>0, // 4263 - 'SARLDEPRESSE'=>0, // 4469 - 'SOCITDINVESTISSEMENTSCAPITALVARIABLE'=>0, // 2668 - 'SOCITENCOMMANDITEPARACTIONS'=>0, // 2598 - 'SRVA'=>0, // 2457 - 'GROUPEMENTFORESTIER'=>0, // 2442 - 'SOCITENCOMMANDITESIMPLE'=>0, // 2386 - 'ELRL'=>0, // 2308 - 'SOCIETEDEXERCICELIBERALARESPONSABILITELIMITEESELARL'=>0, // 3025 - 'SOCITCOOPRATIVE'=>0, // 2236 - 'UNIPERSONNELLERESPONSABILITLIMITE'=>0, // 2108 - 'SOCIETEPARACTIONSSIMPLIFIEEACAPITALVARIABLE'=>0, // 2087 - 'SACOOPRATIVECAPITALVARIABLE'=>0, // 2036 - 'GIECOMMERCIAL'=>0, // 1787 - 'SOCITANONYMEDCONOMIEMIXTE'=>0, // 1675 - 'SOCITCIVILEPARTICULIRE'=>0, // 1594 - 'SCPARTICULIRE'=>0, // 1556 - 'GAEC'=>0, // 2386 - 'GROUPEMENTAGRICOLEDEXPLOITATIONENCOMMUN'=>0, // 1477 - 'SOCIETEENNOMCOLLECTIFSNC'=>5202, // 1437 - 'GIESANSBUTLUCRATIF'=>0, // 1373 - 'SOCIETECIVILEACAPITALVARIABLE'=>0, // 1360 - 'SCA'=>0, // 1610 - 'SOCITANONYMECOOPRATIVECAPITALVARIABLE'=>0, // 1325 - 'SOCITDEXERCICELIBRALRESPONSABILITLIMITEUNIPERSONNELLE'=>0, // 1236 - 'SOCITDINVESTISSEMENTSCAPITALVARIABLECONSEIL'=>0, // 1223 - 'SOCITDEXERCICELIBRALARLUNIPERSONNELLE'=>0, // 1200 - 'SOCITANONYMEDCONOMIEMIXTELOCALE'=>0, // 1199 - 'SADCONOMIEMIXTE'=>0, // 1391 - 'COOPRATIVEOUVRIREDEPRODUCTIONRESPONSABILITLIMITE'=>0, // 1078 - 'SELARLASSOCIUNIQUE'=>0, // 1078 - 'SCCAPITALVARIABLE'=>0, // 1050 - 'ETABLISSEMENTPUBLICCARACTREINDUSTRIELETCOMMERCIAL'=>0, // 1026 - 'SARLUNIPERSONNELLE'=>0, // 1326 - 'SCS'=>0, // 989 - 'SARLMEMBREDELUE'=>0, // 961 - 'SOCITARESPLIMEXERCICELIBERAL'=>0, // 924 - 'SOCITRESPONSABILITLIMITEMEMBREDELACOMMUNAUTEUROPENNEOUPARTIELACCORDSURLESPAC'=>0, // 905 - 'SOCITCOOPRATIVECAPITALVARIABLE'=>0, // 1047 - 'UNIONDECOOPRATIVESAGRICOLES'=>0, // 882 - 'SOCIETEARESPONSABILITELIMITEEDEPRESSE'=>0, // 873 - 'SOCITDEXERCICELIBRALRESPONSABILITLIMITEASSOCIUNIQUE'=>0, // 884 - 'SOCIETECIVILEDECONSTRUCTIONVENTELOIDETITRE'=>0, // 842 - 'SELAS'=>0, // 972 - 'SRL'=>0, // 819 - 'ANOSAACONSEILDADMINISTRATION'=>0, // 798 - 'SAEM'=>0, // 855 - 'SOCITDINVESTISSEMENTCAPITALVARIABLE'=>0, // 762 - 'SARLEURL'=>0, // 777 - 'SOCITCOOPRATIVERESPONSABILITLIMITE'=>0, // 740 - 'SOCIETEANONYMECOOPERATIVE'=>0, // 705 - 'SOCITDEXERCICELIBRALRESPONSABILITLIMITEETASSOCIUNIQUE'=>0, // 679 - 'SOCITDCONOMIEMIXTE'=>0, // 676 - 'SARLDEXERCICELIBRE'=>0, // 669 - 'SOCITCIVILEAGRICOLE'=>0, // 659 - 'SARLCOOPRATIVECAPITALVARIABLE'=>0, // 896 - 'SOCIETEPARACTIONSSIMPLIFIEEUNIPERSONNELLESASU'=>0, // 643 - 'SCIDECONSTRUCTIONVENTE'=>0, // 797 - 'SASCAPITALVARIABLE'=>0, // 630 - 'SOCITCOOPRATIVERESPONSABILITLIMITECAPITALVARIABLE'=>0, // 612 - 'CACV'=>0, // 905 - 'COOPRATIVEDUTILISATIONDEMATRIELAGRICOLEENCOMMUN'=>0, // 591 - 'SCCV'=>0, // 891 - 'SOCITDEXERCICELIBRALFORMEANONYME'=>0, // 584 - 'SOCITDINTRTCOLLECTIFAGRICOLE'=>0, // 557 - 'SOCITCIVILEIMMOBILIRECAPITALVARIABLE'=>0, // 536 - 'SOCIETEARESPONSABILITELIMITEEDEXERCICELIBERAL'=>0, // 533 - 'SOCITCOOPRATIVEDEPRODUCTIONRESPONSABILITLIMITECAPITALVARIABLE'=>0, // 532 - 'SERL'=>0, // 582 - 'SOCITCIVILEPROFESSIONNELLEDAVOCATS'=>0, // 516 - 'SNCSOCIETEENNOMCOLLECTIF'=>5202, // 509 - 'ASSOCIATIONLOI'=>9220, // 496 - 'SOCIETEPARACTIONSIMPLIFIEE'=>0, // 480 - 'SOCIETEANONYMESPORTIVEPROFESSIONNELLE'=>0, // 475 - 'SOCITCOOPRATIVEDEPRODUCTIONRESPONSABILITLIMITE'=>0, // 458 - 'SARLAASSOCIEUNIQUEETACAPITALVARIABLE'=>0, // 457 - 'SCPROFESSIONNELLEDAVOCATS'=>0, // 450 - 'SARLCOOPERATIVEACAPITALVARIABLE'=>0, // 431 - 'SOCITDEXPLOITATIONAGRICOLERESPONSABILITELIMITE'=>0, // 427 - 'SACOOPRATIVE'=>0, // 431 - 'SOCITRESPONSABILITLIMITEASSOCIUNIQUE'=>0, // 480 - 'SAD'=>0, // 530 - 'SOCITCIVILEDEPLACEMENTIMMOBILIER'=>0, // 403 - 'SCOPSARL'=>0, // 625 - 'SOCITANONYMEMEMBREDELACOMMUNAUTEUROPENNEOUPARTIELACCORDSURLESPACECONOMIQUEEURO'=>0, // 392 - 'SOCIT'=>0, // 420 - 'ENTREPRISEUNIPERSONNELLERESPONSABILITLIMITEDEXERCICELIBRAL'=>0, // 379 - 'SOCIETEARESPONSABILITELIMITEEMEMBREDELACEE'=>0, // 379 - 'SICA'=>0, // 644 - 'SCDEPLACEMENTIMMOBILIER'=>0, // 357 - 'SAEMLOCALE'=>0, // 356 - 'SCAGRICOLE'=>0, // 352 - 'SCOPRESPONSABILITLIMITE'=>0, // 354 - 'UNIONDECOOPRATIVESAGRICOLESCAPITALVARIABLE'=>0, // 345 - 'SARLCOOPRATIVE'=>0, // 340 - 'EPIC'=>0, // 356 - 'SAMEMBREDELUE'=>0, // 344 - 'SARLASSOCIUNIQUEETCAPITALVARIABLE'=>0, // 549 - 'SCICAPITALVARIABLE'=>0, // 326 - 'SOCIETEDECAUTIONMUTUELLE'=>0, // 321 - 'SOCITRESPONSABILITLIMITECOOPRATIVE'=>0, // 321 - 'SOCITCIVILEDECONTRUCTIONVENTE'=>0, // 318 - 'SEM'=>0, // 379 - 'SELAFA'=>0, // 360 - 'EURLASSOCIUNIQUE'=>0, // 327 - 'SOCITCIVILEDEXPLOITATIONVITICOLE'=>0, // 311 - 'ELUP'=>0, // 316 - 'SOCITCOOPRATIVEARLCAPITALVARIABLE'=>0, // 298 - 'SOCITCOOPRATIVEDEPRODUCTIONARLCAPITALVARIABLE'=>0, // 297 - 'SOCIETEANONYMECOOPERATIVEDEPRODUCTIONDHLM'=>0, // 296 - 'GROUPEMENTFONCIERRURAL'=>0, // 295 - 'SOCITCIVILEDEXPLOITATIONAGRICOLERESPONSABILITELIMITE'=>0, // 294 - 'SOCITCIVILEIMMOBILIREDECONSTRUCTIONVENTE'=>0, // 385 - 'SOCITTRANGREIMMATRICULEAURCS'=>0, // 309 - 'SOCITANONYMEFAISANTAPPELPUBLICLPARGNE'=>0, // 271 - 'SOCITPARACTIONSSIMPLIFIEDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 270 - 'SCDECONSTRUCTION'=>0, // 268 - 'SOCITDEXERCICELIBRALENCOMMANDITEPARACTIONS'=>0, // 266 - 'SOCITCIVILEDECONSTRUCTIONVENTELOIDETITREER'=>0, // 266 - 'EARLCAPITALVARIABLE'=>0, // 260 - 'SOCITDEPLACEMENTPRPONDRANCEIMMOBILIRECAPITALVARIABLE'=>0, // 257 - 'SOCITCOOPRATIVEOUVRIREDEPRODUCTION'=>0, // 253 - 'SOCITCIVILECOOPRATIVE'=>0, // 247 - 'SOCITDEXERCICELIBRALUNIPERSONNELLERESPONSABILITLIMITE'=>0, // 241 - 'SOCITCOOPRATIVEOUVRIREDEPRODUCTIONANONYME'=>0, // 239 - 'SOCITDACTIONSSIMPLIFIECAPITALVARIABLE'=>0, // 238 - 'SOCITCOOPRATIVEDEPRODUCTIONANONYMECAPITALVARIABLE'=>0, // 238 - 'SACAPITALVARIABLE'=>0, // 274 - 'ETABLISSEMENTPUBLICINDUSTRIELETCOMMERCIAL'=>0, // 236 - 'SOCITCOOPRATIVEANONYMEDINTRTCOLLECTIFAGRICOLE'=>0, // 233 - 'SOCIETECIVILEIMMOBILIEREDECONSTRUCTIONVENTE'=>0, // 232 - 'UNIONDESCOOPRATIVESAGRICOLES'=>0, // 357 - 'SOCIETEANONYMEDHLM'=>0, // 228 - 'GROUPEMENTEUROPENDINTRTCONOMIQUE'=>0, // 227 - 'COOPERATIVEACAPITALVARIABLEENARL'=>0, // 231 - 'SDE'=>0, // 243 - 'SCACAPITALVARIABLE'=>0, // 221 - 'SCOPSA'=>0, // 265 - 'SOCITDEXERCICELIBRALUNIPERSONNELLE'=>0, // 215 - 'EUARL'=>0, // 215 - 'SADHLM'=>0, // 378 - 'SOCITCOOPRATIVEDECRDITCAPITALVARIABLE'=>0, // 209 - 'SOCITRESPONSABILITLIMITECOOPRATIVEOUVRIREDEPRODUCTION'=>0, // 207 - 'COOPRATIVEOUVRIREDEPRODUCTIONENSARL'=>0, // 207 - 'COOPERATIVEAGRICOLE'=>0, // 204 - 'SOCIETECOOPERATIVEDEPRODUCTIONENARLACAPITALVARIABLE'=>0, // 274 - 'SOCIETEARESPONSABILITELIMITEEDARCHITECTURE'=>0, // 195 - 'SCDECONTRUCTIONVENTE'=>0, // 200 - 'SOCIETEANONYMECOOPERATIVEDECOMMERCANTSDETAILLANTS'=>0, // 190 - 'SOCITCOOPRATIVEDINTRTCOLLECTIF'=>0, // 190 - 'SARLCOOPERATIVEARTISANALE'=>0, // 189 - 'GEIE'=>0, // 196 - 'SOCITCIVILECOOPRATIVEAGRICOLE'=>0, // 183 - 'CUMA'=>0, // 337 - 'SOCITCOOPRATIVEDECRDIT'=>0, // 182 - 'COOPRATIVEAGRICOLECAPITALVARIABLE'=>0, // 182 - 'STANONYMECOOPRATIVE'=>0, // 179 - 'SOCIETEANONYMEMEMBREDELACEE'=>0, // 216 - 'SOCIETEDEXERCICELIBERALAFORMEANONYMESELAFA'=>0, // 174 - 'SELARLUNIPERSONNELLE'=>0, // 174 - 'COOPRATIVEDEPRODUCTIONARLCAPITALVARIABLE'=>0, // 172 - 'SCOP'=>0, // 212 - 'STCIVILECAPITALVARIABLE'=>0, // 171 - 'COOPERATIVEOUVRIEREDEPRODUCTARESPLIM'=>0, // 169 - 'SOCITTRANGREISSUEDELESPACEECONOMIQUEEUROPEN'=>0, // 166 - 'SOCITCOOPRATIVEDEPRODUCTION'=>0, // 167 - 'SOCITCIVILEPROFESSIONNELLEDENOTAIRES'=>0, // 165 - 'SOCITCOOPRATIVEDECRDITCAPITALVARIABLEETRESPONSABILITLIMITE'=>0, // 168 - 'SOCITCOOPRATIVEOUVRIREDEPRODUCTIONANONYMECAPITALVARIABLE'=>0, // 160 - 'SOCITRESPONSABILITLIMITEOUVRIREDEPRODUCTIONCAPITALVARIABLE'=>0, // 157 - 'SOCIETEANONYMECOOPERATIVEARTISANALE'=>0, // 157 - 'SOCITCIVILEDATTRIBUTION'=>0, // 155 - 'SOCITCOOPRATIVERESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 306 - 'SOCIETEDEXERCICELIBERALPARACTIONSSIMPLIFIEESELAS'=>0, // 171 - 'SEARL'=>0, // 170 - 'SADCONOMIEMIXTELOCALE'=>0, // 149 - 'SOCITEUROPENNE'=>0, // 147 - 'ENTREPRISEUNIPERSONELLEARESPONSABILITELIMITEE'=>0, // 144 - 'SCCOOPRATIVE'=>0, // 146 - 'SOCITANONYMECAPITALVARIABLE'=>0, // 142 - 'SOCITCOOPRATIVECAPITALVARIABLEETRESPONSABILITLIMITE'=>0, // 143 - 'SOCITANONYMEDCONOMIEMIXTECONSEILADMINISTRATION'=>0, // 140 - 'SCDEXPLOITATIONVINICOLE'=>0, // 139 - 'SOCITANONYMECOOPRATIVEDINTRTCOLLECTIFPOURLACCESSIONLAPROPRIT'=>0, // 193 - 'SOCITANONYMECOOPRATIVECAPITALETPERSONNELVARIABLE'=>0, // 138 - 'EARLASSOCIUNIQUE'=>0, // 143 - 'SOCITCOOPRATIVEMARITIME'=>0, // 159 - 'SACOOPRATIVEDECOMMERANTSDTAILLANTS'=>0, // 171 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFANONYME'=>0, // 132 - 'SOCITANONYMEDECONOMIEMIXTECONSEILDADMINISTRATION'=>0, // 132 - 'SICASOUSFORMEDESOCIETEANONYME'=>0, // 129 - 'SANONMEMBREDELUE'=>0, // 130 - 'CETTESOCIETEESTUNESASUNIPERSONNELLE'=>0, // 128 - 'SCDEPORTEFEUILLE'=>0, // 130 - 'SACA'=>0, // 149 - 'SCDATTRIBUTION'=>0, // 127 - 'SCEV'=>0, // 143 - 'SELARLU'=>0, // 192 - 'SARLNONMEMBREDELUE'=>0, // 128 - 'SACOOPRATIVEARTISANALECAPITALVARIABLE'=>0, // 152 - 'SARLCOOPRATIVEDECRDITCAPITALVARIABLE'=>0, // 124 - 'SOCITANONYMECOOPRATIVEOUVRIREDEPRODUCTION'=>0, // 120 - 'SOCITANONYMECOOPRATIVEDEPRODUCTIONCAPITALVARIABLE'=>0, // 120 - 'SOCIETECIVILEDECONSTRUCTION'=>0, // 119 - 'COLLECTIVITTERRITORIALE'=>0, // 116 - 'SARLASSOCIUNIQUECAPITVAR'=>0, // 132 - 'SOCITANONYMEDHLM'=>0, // 121 - 'SOCITCOOPRATIVECAPITALETPERSONNELVARIABLES'=>0, // 113 - 'MUTUELLE'=>0, // 111 - 'COOPRATIVECAPITALVARIABLEENSARL'=>0, // 111 - 'SASDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 112 - 'SARLCAPITALVARIABLEETASSOCIUNIQUE'=>0, // 164 - 'SACO'=>0, // 121 - 'SARLMEMBREDELACEE'=>0, // 134 - 'SOCIETEDECONOMIEMIXTEACONSEILDADMINISTRATION'=>0, // 109 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFRESPONSABILITLIMITE'=>0, // 108 - 'SOCITCOOPRATIVEDEPRODUCTIONRESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 145 - 'SOCIETEDEXERCICELIBERALARESPONSABILITELIMITEEETASSOCIEU'=>0, // 107 - 'COOPERATIVEOUVRIEREDEPRODUCTIONANONYME'=>0, // 107 - 'SOCITCOOPERATIVEDEPRODUCTIONSARL'=>0, // 185 - 'SCDEMOYENS'=>0, // 106 - 'CPAV'=>0, // 106 - 'SOCITRESPONSABILITLIMITENONMEMBREDELACOMMUNAUTEUROPENNEOUNONPARTIELACCORDSUR'=>0, // 105 - 'SACOOPRATIVECAPITALETPERSONNELVARIABLES'=>0, // 195 - 'SOCITCOOPRATIVEOUVRIREDEPRODUCTIONSA'=>0, // 105 - 'SASPORTIVEPROFESSIONNELLE'=>0, // 114 - 'SOCITCIVILEDEGESTIONDEPORTEFEUILLE'=>0, // 103 - 'SOCITDEPARTICIPATIONSFINANCIRESDEPROFESSIONLIBRALERESPONSABILITLIMITE'=>0, // 103 - 'SOCIETEDINTERETCOLLECTIFAGRICOLEARL'=>0, // 103 - 'ENTREPRISEUNIPERSONNELLEARESPONSABILITELIMITEEACAPITALVARIABLE'=>0, // 103 - 'SRLEL'=>0, // 153 - 'SOCITPARACTIONSIMPLIFIECAPITALVARIABLE'=>0, // 138 - 'SARLASSOCIEUNIQUECAPITVAR'=>0, // 102 - 'SCPROFESSIONNELLEDENOTAIRES'=>0, // 103 - 'COOPERATIVEOUVRIEREDEPRODUCTIONENSARL'=>0, // 100 - 'TABLISSEMENTPUBLIC'=>0, // 101 - 'SCMCAPITALVARIABLE'=>0, // 98 - 'SNCCAPITALVARIABLE'=>5202, // 97 - 'URLV'=>0, // 103 - 'SOCITPARACTIONSSIMPLIFIEASSOCIUNIQUEETCAPITALVARIABLE'=>0, // 95 - 'GFRURAL'=>0, // 96 - 'SOCIETEDEXERCICELIBERALUNIPERSONNELLEARESPONSABILITELIMIT'=>0, // 94 - 'BANQUECOOPRATIVE'=>0, // 93 - 'SOCITCOOPRATIVEDEPRODUCTIONRESPONSABILITCAPITALVARIABLE'=>0, // 93 - 'SOCITANONYMENONMEMBREDELACOMMUNAUTEUROPENNEOUNONPARTIELACCORDSURLESPACECONOMI'=>0, // 92 - 'SOCITANONYMECOOPRATIVECONSEILDADMINISTRATIONCAPITALVARIABLE'=>0, // 92 - 'SOCIETEANONYMENONMEMBREDELACEE'=>0, // 90 - 'UNIONDECOOPRATIVEAGRICOLE'=>0, // 90 - 'SOCITANONYMECOOPRATIVECAPITALETPERSONNELVARIABLES'=>0, // 89 - 'SARLCOOPRATIVEOUVRIREDEPRODUCTIONETDECRDITCAPITALVARIABLE'=>0, // 92 - 'ELAS'=>0, // 89 - 'SOCITANONYMECOOPRATIVEDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 88 - 'SOCITCOOPRATIVECAPITALVARIABLEENLAFORMESARL'=>0, // 88 - 'TABLISSEMENTPUBLICCARRACTREINDUSTRIELOUCOMMERCIAL'=>0, // 88 - 'SARLUN'=>0, // 87 - 'SCCOOPRATIVEDECONSTRUCTION'=>0, // 87 - 'SACOOPRATIVEDEPRODUCTIONDHLM'=>0, // 88 - 'SARLCOOPRATIVEARTISANALE'=>0, // 88 - 'SOCIETECOOPERATIVEDEPRODUCTIONARESPONSABILITELIMITEEACAP'=>0, // 85 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFSOUSFORMEANONYMECONSEILDADMINISTRATION'=>0, // 83 - 'SAFAISANTAPPELPUBLICLPARGNE'=>0, // 81 - 'ANOSOCIETEANONYMEADIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 81 - 'SOCIETEANONYMECOOPERATIVEDEBANQUEPOPULAIRE'=>0, // 79 - 'SOCITCIVILEDEPORTEFEUILLE'=>0, // 79 - 'SCCOOPRATIVEAGRICOLE'=>0, // 79 - 'SELEURL'=>0, // 113 - 'SCOPRESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 122 - 'SOCITCIVILEENCONSTRUCTIONVENTELOIDETITRE'=>0, // 105 - 'SOCITDEXERCICELIBRALDENTREPRISEUNIPERSONNELLERESPONSABILITLIMITE'=>0, // 77 - 'SOCIETEARESPONSABILITELIMITEEAASSOCIEUNIQUEETACAPITALVARIABLE'=>0, // 75 - 'SOCITCIVILEDEMOYENSCAPITALVARIABLE'=>0, // 75 - 'SARLCV'=>0, // 115 - 'SOCITCOOPRATIVEDECAUTIONMUTUELLECAPITALVARIABLE'=>0, // 75 - 'SARLSOUSFORMEDEEURL'=>0, // 74 - 'SCEACAPITALVARIABLE'=>0, // 73 - 'SOCITDEXERCICELIBRAL'=>0, // 74 - 'SOCITCIVILECOOPRATIVEDECONSTRUCTION'=>0, // 73 - 'SACOOPRATIVEDEPERSONNESCAPITALVARIABLE'=>0, // 73 - 'SCPDAVOCATS'=>0, // 75 - 'SOCITRESPONSABILITLIMITECOOPRATIVECAPITALVARIABLE'=>0, // 72 - 'SARLENLIQUIDATION'=>0, // 100 - 'SCIDATTRIBUTION'=>0, // 72 - 'TABLISSEMENTPUBLICNATIONAL'=>0, // 71 - 'COLLECTIVITLOCALE'=>0, // 70 - 'SOCIETEPARACTIONSSIMPLIFIEEADIRECTOIREETCONSEILDESURVEI'=>0, // 69 - 'SOCITCOOPRATIVEARTISANARLCAPITALVARIABLE'=>0, // 69 - 'SASPLURIPERSONNELLE'=>0, // 71 - 'SOCITCIVILEPROFESSIONNELLEDHUISSIERSDEJUSTICE'=>0, // 68 - 'SCOPFORMEANONYME'=>0, // 67 - 'ENTREPRISEUNIPERSONNELLERESPONSABILITLIMITEASSOCIUNIQUE'=>0, // 116 - 'SOCITCOOPRATIVEARTISANALERESPONSABILITLIMITE'=>0, // 67 - 'AS'=>0, // 77 - 'SOCIETEDEXERCICELIBERALPARACTIONSSIMPLIFIEEUNIPERSONNELLE'=>0, // 65 - 'SOCIETEANONYMECOOPERATIVEMARITIMEACAPITALVARIABLE'=>0, // 65 - 'VOIRRUBRIQUEOBSERVATIONS'=>0, // 64 - 'SOCITANONYMECOOPRATIVEDINTRTCOLLECTIFAGRICOLE'=>0, // 63 - 'SARLCAPITALPERSONNELVARIABLE'=>0, // 71 - 'SACOOPRATIVEDECONSOMMATIONCAPITALVARIABLE'=>0, // 63 - 'SCDEGESTIONDEPORTEFEUILLE'=>0, // 63 - 'SARLENDISSOLUTION'=>0, // 68 - 'SARLASSOCIUNIQUECAPITALVARIABLE'=>0, // 65 - 'GFR'=>0, // 72 - 'SOCIETEARESPONSABILITELIMITEENONMEMBREDELACEE'=>0, // 61 - 'SCCONSTRUCTIONVENTE'=>0, // 105 - 'SOCIETEARESPONSABILITELIMITEECOOPERATIVEOUVRIEREDEPRODUCTIONETDECREDIT'=>0, // 61 - 'SOCITANONYMEDCONOMIEMIXTEDIRECTOIRE'=>0, // 60 - 'SOCITTRANGRE'=>0, // 60 - 'SOCITDINTRTCOLLECTIFAGRICOLERESPONSABILITLIMITE'=>0, // 60 - 'SOCITCOOPRATIVEDEPRODUCTIONFORMESARL'=>0, // 60 - 'SELCA'=>0, // 62 - 'SCPARTICULIREDEXPLOITATIONAGRICOLE'=>0, // 59 - 'SELURL'=>0, // 71 - 'SOCITCOOPRATIVEDECRDITCAPITALVARIABLEETRESPONSABILITSTATUTAIREMENTLIMITE'=>0, // 58 - 'CAISSEDECRDITMUTUEL'=>0, // 58 - 'SOCIETEANONYMEAOBJETSPORTIF'=>0, // 57 - 'STEUNIPERSONNELLEARESPONSABILITELIMITEE'=>0, // 56 - 'SOCITCOOPRATIVEDECONSOMMATIONANONYMECAPITALVARIABLE'=>0, // 56 - 'UNIONCOOPRATIVE'=>0, // 55 - 'SCC'=>0, // 64 - 'SACOOPRATIVEMARITIMECAPITALVARIABLE'=>0, // 55 - 'SCOPANONYMECAPITALVARIABLE'=>0, // 54 - 'SOCITCOOPRATIVECAPITALETPERSONNELVARIABLE'=>0, // 53 - 'SOCITENCOMMANDITEPARACTIONSCAPITALVARIABLE'=>0, // 53 - 'TABLISSEMENTPUBLICDELTATCARACTREINDUSTRIELETCOMMERCIAL'=>0, // 52 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFARL'=>0, // 78 - 'SOCITCOOPRATIVEARTISANALERESPLIMITEETCAPITALVARIABLE'=>0, // 51 - 'SACONSEILDESURVEILLANCE'=>0, // 51 - 'SARLCOOPERATIVEOUVRIEREDEPRODUCTION'=>0, // 50 - 'SACOOPRATIVEARTISANALE'=>0, // 50 - 'EURLDEXERCICELIBRAL'=>0, // 50 - 'SOCITCIVILEPROFESSIONNELLEDEVTRINAIRES'=>0, // 49 - 'SOCIETEANONYMEEXERCICELIBERAL'=>0, // 49 - 'ENTREPRISEUNIPERSONNELLEARESPONSABILITELIMITEEETACAPITALVARIABLE'=>0, // 49 - 'SOCITCOOPRATIVEAGRICOLELAITIRECAPITALVARIABLE'=>0, // 49 - 'GF'=>0, // 75 - 'SOCITCOOPRATIVEARTISANALECAPITALVARIABLE'=>0, // 82 - 'SOCITRESPONSABILITLIMITEMEMBREDELACEE'=>0, // 48 - 'COOPRATIVECAPITALVARIABLEENARL'=>0, // 48 - 'SOCITCIVILEPROFESSIONNELLEDARCHITECTES'=>0, // 48 - 'SOCITCIVILEPROFESSIONNELLEDINFIRMIERS'=>0, // 47 - 'AUTREFORMEJURIDIQUE'=>0, // 47 - 'SOCIETEANONYMEDEPRESSE'=>0, // 47 - 'SOCITCIVILEPROFESSIONNELLEDEMDECINS'=>0, // 47 - 'SAEML'=>0, // 82 - 'GIECAPITALVARIABLE'=>0, // 47 - 'SCOPANONYME'=>0, // 47 - 'SOCITRESPONSABILITLIMITECAPITALVARIABLEASSOCIUNIQUE'=>0, // 46 - 'SOCITANONYMEDINTRTCOLLECTIFAGRICOLECONSEILDADMINISTRATION'=>0, // 46 - 'SOCITCOOPRATIVEARTISANALEARLCAPITALVARIABLE'=>0, // 49 - 'SOCIETEANONYMEACONSEILDESURVEILLANCE'=>0, // 45 - 'SOCITCOOPRATIVEARTISANALERESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 46 - 'COOPERATIVEMARITIME'=>0, // 45 - 'SOCITDEXERCICELIBRALDEFORMEANONYME'=>0, // 44 - 'SOCIETEANONYMECOOPERATIVEACAPITALVARIABLEADIRECTOIRE'=>0, // 44 - 'TABLISSEMENTPUBLICADMINISTRATIF'=>0, // 44 - 'SACOOPRATIVEDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 51 - 'SOCIETEANOMYMECOOPERATIVE'=>0, // 43 - 'SARLDARCHITECTURE'=>0, // 64 - 'SEMCONSEILDADMINISTRATION'=>0, // 43 - 'COOPRATIVEDECRDITCAPITALVARIABLE'=>0, // 43 - 'SACOOPRATIVEDEBANQUEPOPULAIRE'=>0, // 42 - 'SOCITCIVILEVITICOLE'=>0, // 42 - 'SPAS'=>0, // 46 - 'STCIVILEAYANTPOUROBJETLACONSTRUCTIONDIMMEUBLESVENTE'=>0, // 42 - 'UNIONDECOOPRATIVE'=>0, // 42 - 'SOCIETECOOPERATIVEACAPITALVARIABLEETARESPONSABILITELIMIT'=>0, // 42 - 'SOCITCOOPRATIVEOUVRIREDEPRODUCTIONENLAFORMESARL'=>0, // 42 - 'SOCIETEARESPONSABILITELIMITEEDETYPEEURL'=>0, // 41 - 'SOCIETECOOPERATIVEOUVRIEREDEPRODUCTIONANONYMEACAPITALVAR'=>0, // 41 - 'SOCITCIVILECONSTITUEENVUEDELATTRIBUTIONDUNIMMEUBLE'=>0, // 41 - 'SACOOPRATIVEDECONSOMMATEURSCAPITALVARIABLE'=>0, // 66 - 'SOCIETEANONYMEADIRECTOIREETCONSEILDORIENTATIONETDESURVEILLANCE'=>0, // 41 - 'SCFAISANTAPPELPUBLICLPARGNE'=>0, // 40 - 'SCOPFORMEANONYMEETCAPITALVARIABLE'=>0, // 52 - 'SARLACAPITALETPERSONNELVARIABLE'=>0, // 40 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFAGRICOLESA'=>0, // 40 - 'SOCITANONYMECOOPRATIVEDEPRODUCTIONDHABITATIONLOYERMODRDELOCATIONCONSEILDADMINI'=>0, // 39 - 'SARLSOCITENLIQUIDATION'=>0, // 63 - 'SCDEPERSONNES'=>0, // 39 - 'SACOOPRATIVEDEPRODUCTIONCAPITALVARIABLE'=>0, // 39 - 'COOPERATIVEOUVRIEREDEPRODUCTIONENARL'=>0, // 39 - 'STANONYMECOOPRATIVEDINTRTCOLLECTIFPOURLACCESSIONLAPROPRIT'=>0, // 39 - 'COOPRATIVEDECRDITCAPITALVARIABLEETRESPONSABILITSTATUTAIREMENTLIMITE'=>0, // 40 - 'SAPERSONNELETCAPITALVARIABLES'=>0, // 45 - 'SOCITCOOPRATIVEDECONSOMMATIONRESPONSABILITLIMITE'=>0, // 38 - 'SARU'=>0, // 41 - 'COOPRATIVEDECONSOMMATIONENSOCITANONYME'=>0, // 38 - 'COOPERATIVEAGRICOLEAUCAPITALVARIABLE'=>0, // 38 - 'SOCITENNOMCOLLECTIFCAPITALVARIABLE'=>5202, // 38 - 'SOCIETECIVILEDEPARTICIPATION'=>0, // 38 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFAGRICOLERESPONSABILITLIMITE'=>0, // 38 - 'SOCITCIVILEDEPLACEMENTIMMOBILIERCAPITALVARIABLE'=>0, // 38 - 'ELFA'=>0, // 41 - 'SOCIETEANONYMECOOPERATIVEADIRECTOIRE'=>0, // 38 - 'COOPRATIVEDUTILISATIONDUMATRIELAGRICOLE'=>0, // 37 - 'SOCITCOOPRATIVEDEBANQUE'=>0, // 37 - 'ENTREPRISEUNIPERSONNELLEARESPONSABLITELIMITEE'=>0, // 37 - 'SOCITANONYMECOOPRATIVEARTISANALECAPITALVARIABLE'=>0, // 37 - 'SAPERSONNELETCAPITALVARIABLE'=>0, // 38 - 'UNIONDESOCITSCOOPRATIVESDIRECTOIRE'=>0, // 37 - 'STEDEXERCICELIBERALARESPONSABILITELIMITEE'=>0, // 37 - 'SCEARESPONSABILITLIMITE'=>0, // 38 - 'COOPRATIVERESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 39 - 'SYNDICAT'=>0, // 36 - 'SICAANONYMEADIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 35 - 'SOCITNATIONALE'=>0, // 35 - 'SACOOPRATIVECAPITALETPERSONNELVARIABLE'=>0, // 38 - 'SOCITCOOPRATIVEDECRDITRESPONSABILITSTATUTAIREMENTLIMITE'=>0, // 35 - 'COOPRATIVEDUTILISATIONDEMATRIELAGRICOLE'=>0, // 34 - 'SOCIETEANONYMESIMPLIFIEE'=>0, // 34 - 'SOCITCOOPRATIVEDEPRODUCTIONFORMEANONYMECAPITALVARIABLE'=>0, // 34 - 'SOCITDEPLACEMENTPRPONDRANCEIMMOBILIRECAPITALVARIABLEETCONSEILDADMINISTRATION'=>0, // 33 - 'SCCOOPRATIVEPERSONNELETCAPITALVARIABLES'=>0, // 35 - 'SOCIETEANONYMEACAPITALETPERSONNELVARIABLE'=>0, // 33 - 'SOCITDEXERCICELIBRALRESPONSABILITLIMITECAPITALVARIABLE'=>0, // 33 - 'SARLDEXERCICELIBRAL'=>0, // 34 - 'GROUPEMENTFONCIER'=>0, // 32 - 'SCPROFESSIONNELLEDEVTRINAIRES'=>0, // 32 - 'UNIONDECONOMIESOCIALESTECOOPERATIVESARL'=>0, // 32 - 'SOCITANONYMESOCITDHABITATIONDELOYERMMODR'=>0, // 32 - 'ASSOCIATIONRGIEPARLALOIDUERJUILLET'=>9220, // 32 - 'SARLASSOCIEUNIQUE'=>0, // 53 - 'COOPRATIVE'=>0, // 31 - 'SOCITCOOPRATIVEANONYMEDEBANQUEPOPULAIRECAPITALVARIABLE'=>0, // 31 - 'SOCITCIVILEDEPERSONNES'=>0, // 31 - 'SOCITANONYMEAPARTICIPATIONOUVRIERE'=>0, // 30 - 'SOCITCIVILEIMMOBILIREDATTRIBUTION'=>0, // 30 - 'SCOPCAPITALVARIABLE'=>0, // 30 - 'SOCIETEANONYMECOOPERATIVEDECOMMERCANTDETAILLANTS'=>0, // 30 - 'SOCITCOOPRATIVEOUVRIREDEPRODUCTIONRESPONSABILITLIMITE'=>0, // 30 - 'SASP'=>0, // 64 - 'CAISSEMUTUELLEDECRDIT'=>0, // 30 - 'SAMEMBREDELACEE'=>0, // 41 - 'SAPERSONNELCAPITALVARIABLE'=>0, // 29 - 'SOCIETEANONYMECAPITALFIXECOOPDEBANQUE'=>0, // 29 - 'SACOOPRATIVEDEPRODUCTIONDEHLMCAPITALVARIABLE'=>0, // 29 - 'COMMUNEDE'=>0, // 29 - 'SOCIETECOOPERATIVEDETRAVAILLEURSSARL'=>0, // 29 - 'SOCIETEENCOMMANDITEPARACTIONACAPITALVARIABLE'=>0, // 28 - 'COOPRATIVEDECRDITRESPONSABILITSTATUTAIREMENTLIMITEETCAPITALVARIABLE'=>0, // 28 - 'SCVITICOLE'=>0, // 28 - 'SOCITDINTRTCOLLECTIFAGRICOLEFORMESAS'=>0, // 28 - 'SOCITPUBLIQUELOCALEDAMNAGEMENT'=>0, // 28 - 'SEL'=>0, // 38 - 'CUMAENCOMMUN'=>0, // 28 - 'SASUCAPITALVARIABLE'=>0, // 31 - 'SOCITANONYMEDHLMCONSEILDADMINISTRATION'=>0, // 28 - 'SOCITANONYMECOOPRATIVEDEBANQUECAPITALVARIABLE'=>0, // 28 - 'SK'=>0, // 36 - 'SCPROFESSIONNELLEDINFIRMIERS'=>0, // 28 - 'SRLV'=>0, // 29 - 'SOCITDEXERCICELIBRALRESPONSABILITLIMITEDARCHITECTURE'=>0, // 27 - 'SAOUVRIRECOOPRATIVEDEPERSONNESCAPITALVARIABLE'=>0, // 27 - 'SOCIETEARESPONSABILITELIMITEDEXERCICELIBERAL'=>0, // 27 - 'SCDEPLACEMENTIMMOBILIERCAPITALVARIABLE'=>0, // 27 - 'COOPERATIVEOUVRIEREDEPRODUCTIONACAPITALVARIABLESARL'=>0, // 27 - 'SAOUVRIRECOOPRATIVEPERSONNELETCAPITALVARIABLES'=>0, // 54 - 'SOCIETECIVILECOOPERATIVEACAPITALETPERSONNELVARIABLE'=>0, // 27 - 'SCIC'=>0, // 59 - 'SCDEXPLOITATIONAGRICOLE'=>0, // 27 - 'NONRENSEIGNE'=>0, // 26 - 'SARLENLIQUIDATIONAMIABLE'=>0, // 28 - 'CRDITMUTUEL'=>0, // 26 - 'SACOOPRATIONCONSOMCAPITALVARIABLE'=>0, // 26 - 'SELRL'=>0, // 28 - 'GAECCAPITALVARIABLE'=>0, // 26 - 'SCPROFESSIONNELLEDEMDECINS'=>0, // 27 - 'GICO'=>0, // 27 - 'COOPRATIVEDECRDITCAPITALVARRESPSTATUTAIREMENTLIMITE'=>0, // 26 - 'SCDEPLACEMENTCOLLECTIFIMMOBILIERCAPITALVARIABLE'=>0, // 26 - 'SOCITCIVILECOOPRATIVECAPITALVARIABLE'=>0, // 26 - 'SOCITRESPONSABILITLIMITECAPITALPERSONNELVARIABLE'=>0, // 26 - 'SOCITANONYMEOUVRIRECOOPRATIVEPERSCAPITALVARIABLE'=>0, // 27 - 'SCDEGESTION'=>0, // 27 - 'SCCOOPRATIVEDECRDITCAPITALVARIABLE'=>0, // 25 - 'NONPRCIS'=>0, // 25 - 'SCIDEGESTION'=>0, // 26 - 'COOPRATIVEDEPRODUCTIONANONYMECAPITALVARIABLE'=>0, // 25 - 'COOPRATIVEDECOMMERANTSDTAILLANTS'=>0, // 25 - 'SOCITENCOMMANDITEPARACTIONSMEMBREDELACOMMUNAUTEUROPENNEOUPARTIELACCORDSURLESPA'=>0, // 25 - 'SCPROFESSIONNELLEDHUISSIERS'=>0, // 25 - 'SOCITDEDROITANGLAIS'=>0, // 24 - 'ASSOCIATIONRGIEPARLALOIDE'=>9220, // 24 - 'EU'=>0, // 24 - 'SOCITCOOPRATIVECRDITCAPITALVARIABLEARL'=>0, // 24 - 'SOCITDEPRESSE'=>0, // 24 - 'SKA'=>0, // 45 - 'SOCIETEANOMYMEDECONOMIEMIXTE'=>0, // 24 - 'SOCITDEFAIT'=>0, // 24 - 'COOPRATIVEDEPRODUCTIONRESPONABILITLIMITEETCAPITALVARIABLE'=>0, // 24 - 'SANONMEMBREDELACEE'=>0, // 30 - 'SAEMCONSEILDADMINISTRATION'=>0, // 24 - 'COOPRATIVEDECONSOMMATIONENSA'=>0, // 44 - 'SAR'=>0, // 28 - 'SCIDELOCATION'=>0, // 25 - 'SICAVCAPITALVARIABLE'=>0, // 23 - 'SOCIETEPARACTIONSSIMPLIFIEECOOPERATIVEACAPITALVARIABLE'=>0, // 23 - 'SACOOPDINTRTCOLLECTIFPOURLACCESSIONLAPROPRIT'=>0, // 31 - 'RL'=>0, // 23 - 'SOCITTRANGRENONISSUEDELESPACEECONOMIQUEEUROPEN'=>0, // 23 - 'SOCITDASSURANCEMUTUELLE'=>0, // 23 - 'SCPATRIMONIALE'=>0, // 23 - 'SOCITENPARTICIPATION'=>0, // 23 - 'SCASSOCIUNIQUE'=>0, // 23 - 'SCPROFESSIONNELLEDHUISSIERSDEJUSTICE'=>0, // 23 - 'UNIONDECONOMIESOCIALECOOPERATIVEARESPONSABILITELIMITEE'=>0, // 23 - 'SAADIRECTOIRE'=>0, // 23 - 'SOCITDEGROUPEDASSURANCEMUTUELLE'=>0, // 23 - 'SOCIETEANONYMEAUCAPITALETPERSONNELVARIABLE'=>0, // 23 - 'SOCIETEPARACTIONS'=>0, // 23 - 'SACOOPRATIVEOUVRIREDEPRODUCTIONETDECRDITCONSEILDADMINISTRATION'=>0, // 23 - 'SRCP'=>0, // 23 - 'UNIONDCONOMIESOCIALESARLCOOPRATIVE'=>0, // 25 - 'STECOOPERATOUVRIEREDEPRODUCTIONANONYMEACAPITALVARIABLE'=>0, // 22 - 'SACOOPRATIVEDEPRODUCTIONDHLMCAPITALVARIABLE'=>0, // 24 - 'GROUPEMENTAGRICOLEFONCIER'=>0, // 22 - 'SOCITANONYMEDIRECTOIREDECONOMIEMIXTE'=>0, // 22 - 'SOCITANONYMECONSEILDADMINISTRATIONDHABITATIONLOYERMODRDELOCATION'=>0, // 22 - 'SARLCAPITALETPERSONNELVARIABLES'=>0, // 39 - 'SRLELU'=>0, // 26 - 'SOCITCIVILEAYANTPOUROBJETLACONSTRUCTIONDIMMEUBLES'=>0, // 22 - 'SACOOPRATIVEOUVRIREDEPRODUCTION'=>0, // 43 - 'SICAFORMEANONYME'=>0, // 22 - 'SOCITPARACTIONSSIMPLIFIECAPITALVARIABLEETASSOCIUNIQUE'=>0, // 22 - 'STEDEXERCICELIBERALARESPONSABILITELIMITEEUNIPERSONNELLE'=>0, // 21 - 'SICAVCONSEIL'=>0, // 21 - 'SOCIETECIVILECONSTRUCTIONVENTE'=>0, // 21 - 'EURLACAPITALVARIABLE'=>0, // 37 - 'SAC'=>0, // 27 - 'SAOS'=>0, // 22 - 'SACAPITALETPERSONNELVARIABLES'=>0, // 21 - 'COOPRATIVEARTISANALE'=>0, // 21 - 'ADMINISTRATIONPUBLIQUE'=>0, // 20 - 'SOCITCOOPRATIVEOUVRIREDEPRODUCTIONRESPLIMITEETCAPITALVARIABLE'=>0, // 20 - 'SOCIETEANONYMEACONSEILDADMINISTRATION'=>0, // 20 - 'ADMINTERDITAURCS'=>0, // 20 - 'SOCIETEANONYMECOOPERATIVEMARITIME'=>0, // 20 - 'SOCIETEARESPONSABILITELIMITEEARTISANALE'=>0, // 20 - 'SADC'=>0, // 20 - 'SOCITDEPARTICIPATIONFINANCIREDEPROFESSIONLIBRALEPARACTIONSIMPLIFIE'=>0, // 20 - 'SCCOOPRATIVEAGRICOLECAPITALVARIABLE'=>0, // 20 - 'COMMUNE'=>0, // 20 - 'UNIONDCONOMIESOCIALESOCITANONYMECOOPRATIVECAPITALVARIABLE'=>0, // 20 - 'UNIONCOOPRATIVEAGRICOLECAPITALVARIABLE'=>0, // 20 - 'SOCITCAUTIONMUTUELLE'=>0, // 28 - 'SACOOPRATIVEOUVRIREDEPRODETCRDITCONSEILDADMCAPITALVARIABLE'=>0, // 19 - 'ASARL'=>0, // 19 - 'OFFICEPUBLIC'=>0, // 19 - 'SOCITANONYMECOOPRATIVEDECRDITCAPITALETRESPONSABILITSTATUTAIREMENTLIMITECONSEI'=>0, // 19 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFANONYMECAPITALVARIABLE'=>0, // 19 - 'SICACAPITALVARIABLE'=>0, // 19 - 'SADIRECTOIRECONSEILSURVEILL'=>0, // 20 - 'STECIVILEDEPLACEMENTCOLLECTIFIMMOBILIERCAPITALVARIABLE'=>0, // 19 - 'SOCITCIVILECOOPRATIVEDECRDIT'=>0, // 19 - 'SCENCONSTRUCTIONVENTE'=>0, // 19 - 'SOCIETEANONYMECOOPERATIVEDEBANQUEPOPULAIREACAPITALVARIABLE'=>0, // 19 - 'SCEARL'=>0, // 40 - 'SASACTIONNAIREUNIQUE'=>0, // 19 - 'SOCITDASSURANCESMUTUELLES'=>0, // 19 - 'UCA'=>0, // 20 - 'SADIRECTOIREETCONSEILDORIENTATIONETDESURVEILLANCE'=>0, // 18 - 'SOCITDEPARTICIPATIONSFINANCIRESDEPROFESSIONLIBRALE'=>0, // 18 - 'EXPLOITATIONAGRICOLERESPONSABILITLIMITEASSOCIUNIQUE'=>0, // 24 - 'SELARLETASSOCIUNIQUE'=>0, // 20 - 'SARLK'=>0, // 37 - 'ORGANISMEAUTONOME'=>0, // 18 - 'GFVITICOLE'=>0, // 18 - 'SOCITCIVILEPARTICULIREDEXPLOITATIONAGRICOLE'=>0, // 18 - 'SOCITCOOPRATIVEDETRAVAILLEURSRESPONSABILITLIMITE'=>0, // 18 - 'SOCITDEPARTICIPATIONFINANCIREDEPROFESSIONLIBRALEDAVOCATSPARACTIONSSIMPLIFIE'=>0, // 18 - 'SOCITANONYMECOOPRATIVEDINTRTCOLLECTIFCAPITALVARIABLE'=>0, // 18 - 'SACOOPRATIVEDINTRTCOLLECTIFPOURACCESSIONLAPROPRIT'=>0, // 18 - 'SCPROFESSIONNELLEDARCHITECTES'=>0, // 18 - 'SCACOOPRATIVE'=>0, // 17 - 'COOPERATIVEOUVRIEREDEPRODUCTIONANONYMEACAPITALVARIABLE'=>0, // 17 - 'SOCIETEANONYMEDECONOMIEMIXTEADIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 17 - 'SACOOPRATIVEDECOMMERANTSDTAILLANTSCAPITALVARIABLE'=>0, // 21 - 'SCPDENOTAIRES'=>0, // 17 - 'SARLLIMITE'=>0, // 18 - 'SACOOPRATIVEDENTREPRISESCAPITALVARIABLE'=>0, // 31 - 'SOCITCOOPRATIVEOUVRIREDEPRODUCTIONFORMEANONYMECAPITALVARIABLE'=>0, // 17 - 'SOCITCOOPRATIVEDECRDITRESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 22 - 'SARLASSOCIUNIQUECAPVAR'=>0, // 17 - 'SOCITDEPLACEMENTPRPONDRANCEIMMOBILIRECAPITALVARIABLEETDIRECTOIREETCONSEILDESU'=>0, // 17 - 'SASPORTIVEPROFESSIONNELLEDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 17 - 'SOCIETEPARACTIONSSIMPLIFIEESAASSOCIEUNIQUE'=>0, // 17 - 'SOCITCOOPRATIVEDECAUTIONMUTUELLECAPITALVARIABLELOI'=>0, // 17 - 'SOCIETEPARACTIONSSIMPLIF'=>0, // 17 - 'SOCITCIVILECOOPRATIVECONSTPERSCAPITALVARIABLE'=>0, // 17 - 'SOCITCOOPRATIVEPARTICIPATIONOUVRIRE'=>0, // 16 - 'SDDI'=>0, // 17 - 'SADIRECTOIREDCONOMIEMIXTE'=>0, // 26 - 'SOCITCOOPRATIVEOUVRIREDEPRODUCTIONENLAFORMESA'=>0, // 16 - 'COOPRATIVEDEPRODUCTIONRESPONSABILITLIMITE'=>0, // 16 - 'STEASSURANCESCARACTEREMUTUE'=>0, // 16 - 'SCMU'=>0, // 16 - 'ENTREPRISEUNIPERSONNELLESPORTIVERESPONSABILITLIMITE'=>0, // 16 - 'SOCITCIVILECOOPRATIVEDECONSOMMATIONCAPITALVARIABL'=>0, // 16 - 'UNIONDESCOOPRATIVESAGRICOLESCAPITALVARIABLE'=>0, // 16 - 'SOCITNATIONALISE'=>0, // 16 - 'SACOOPRATIVEDEBANQUECAPITALVARIABLE'=>0, // 16 - 'PERSONNEMORALEDEDROITPUBLIC'=>0, // 16 - 'SCCOOPRATIVECAPITALVARIABLE'=>0, // 16 - 'SOCITDEXERCICELIBRALPARACTIONSSIMPLIFIEASSOCIUNIQUE'=>0, // 16 - 'SOCIETEDEXERCICELIBERALARESPONSABILITELIMITEEDARCHITECTU'=>0, // 16 - 'SOCITANONYMEDHLMDIRECTOIRE'=>0, // 16 - 'SOCITANONYMECOOPRATIVEDEPRODUCTIONDHLMCAPITALVARIABLE'=>0, // 16 - 'COOPRATIVEDUTILISATIONDEMATRIELAGRICOLECUMA'=>0, // 16 - 'SELASSOCIUNIQUE'=>0, // 16 - 'SOCITCOOPRATIVEDEBANQUEPOPULAIRE'=>0, // 16 - 'SOCITCOOPRATIVEDETRAVAILLEURSANONYME'=>0, // 15 - 'COOPRATIVEDEPRODUCTIONRESPONSABILITLIMITECAPITALVARIABLE'=>0, // 15 - 'UNIONDCONOMIESOCIALECOOPRATIVERESPONSABILITLIMITE'=>0, // 16 - 'SOCIETECOOPERATIVEMARITIMEARESPONSABILITELIMITEE'=>0, // 15 - 'SICARESPONSABILITLIMITE'=>0, // 15 - 'SOCITCIVILEPROFESSIONNELLEDEMASSEURSKINSITHRAPEUTES'=>0, // 17 - 'SOCITTANONYMECONSEILDADMINISTRATIONDHLM'=>0, // 15 - 'SCDEPARTICIPATIONS'=>0, // 15 - 'SOCIETEANONYMENATIONALISEEACONSEILDADMINISTRATION'=>0, // 15 - 'SAK'=>0, // 20 - 'SYNDICATPROFESSIONNEL'=>0, // 15 - 'SCKCON'=>0, // 15 - 'SADIRECTOIREETCONSEILDADMINISTRATION'=>0, // 18 - 'SOCITCIVILEDEPLACEMENTCOLLECTIFIMMOBILIER'=>0, // 15 - 'GROUPEMENTDINTERETECONOMIQUEACAPITALVARIABLE'=>0, // 15 - 'SOCITCIVILEFAISANTAPPELPUBLICLPARGNE'=>0, // 15 - 'SCDEPLACEMENTSIMMOBILIERS'=>0, // 15 - 'SOCITANONYMECOOPRATIVEDENTREPRISECAPITALVARIABLE'=>0, // 15 - 'COOPRATIVEDECRDITCAPITALVARIABLEENSARL'=>0, // 18 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFRESPONSLIMITEETCAPITALVARIABLE'=>0, // 15 - 'SAACONSEILDADMINISTRATION'=>0, // 15 - 'SCPROFESSIONNELLEDAVOCAT'=>0, // 15 - 'FORMEJURIDIQUEINDTERMINE'=>0, // 15 - 'SADHABITATIONLOYERMODR'=>0, // 15 - 'SAPARTICIPATIONOUVRIRE'=>0, // 15 - 'SACD'=>0, // 21 - 'SOCITANONYMECOOPRATIVEDEBANQUECAPITALFIXE'=>0, // 14 - 'COOPRATIVEDECRDITCAPITALVARIABLEETRESPSTATUAIREMENTLIMITE'=>0, // 14 - 'EUARLASSOCIUNIQUE'=>0, // 16 - 'SKP'=>0, // 14 - 'SCISOCITENLIQUIDATION'=>0, // 20 - 'MONSIEUR'=>0, // 14 - 'SOCITCOOPRATIVECAPITALVARIABLEAMPRESPONSABILITSTATUTAIREMENTLIMITE'=>0, // 17 - 'UNIONDCONOMIESOCIALE'=>0, // 14 - 'SCIENLIQUIDATION'=>0, // 15 - 'SKACV'=>0, // 16 - 'COOPERATIVEOUVRIEREDEPRODUCTIONENARLETCAPITALVARIABLE'=>0, // 14 - 'SCPARTICULIRECAPITALVARIABLE'=>0, // 14 - 'SADEXERCICELIBRAL'=>0, // 14 - 'SARLASSOCI'=>0, // 15 - 'SOCITCIVILEIMMOBILIREDEGESTION'=>0, // 14 - 'SOCITDINTRTCOLLECTIFAGRICOLECIVIL'=>0, // 14 - 'SOCITANONYMECOOPRATIVEDECOMMERANTSDTAILLANTSCAPITALVARIABLE'=>0, // 14 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFFORMESARLCAPITALVARIABLE'=>0, // 14 - 'SOCITENCOMMANDITEPARACTIONSMEMBREDELUE'=>0, // 14 - 'SOCITCIVILEFONCIRE'=>0, // 14 - 'SADEPRODUCTIONCAPITALVARIABLE'=>0, // 14 - 'GISL'=>0, // 15 - 'SARLPLURIPERSONNELLE'=>0, // 13 - 'STE'=>0, // 13 - 'SARLASSOCIUNIQUESOCITENLIQUIDATION'=>0, // 14 - 'SOCITCIVILEDEXPLOITATION'=>0, // 13 - 'ASSOCIATIONLOIMETTANTDESOBLIGATIONS'=>9220, // 13 - 'COOPRATIVECAPITALVARIABLEETRESPONSABILITLIMITE'=>0, // 13 - 'UNIONDECONOMIESOCIALESOCIETECOOPERATIVEANONYME'=>0, // 13 - 'SCPROFESSIONNELLEDEDIRECTEURSDELABORATOIRESDANALYSESDEBIOLOGIEMDICALE'=>0, // 13 - 'SU'=>0, // 13 - 'SADI'=>0, // 30 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFAGRICOLESAS'=>0, // 13 - 'SOCITRESPONSABILITLIMITEDEPRESSECAPITALVARIABLE'=>0, // 13 - 'STEANONYMEDECONOMIEMIXTE'=>0, // 13 - 'UNIONDESOCITSCOOPRATIVESCONSEILDADMINISTRATION'=>0, // 13 - 'SOCIETEARESPONSABILITELIMITEECOOPERATIVEDECONSOMMATION'=>0, // 13 - 'EUROS'=>0, // 131 - 'SCPROFESSIONNELLEDAVOUS'=>0, // 13 - 'GFACAPITALVARIABLE'=>0, // 14 - 'N'=>0, // 13 - 'SOCITCIVILEPROFESSIONNELLEDECHIRURGIENSDENTISTES'=>0, // 13 - 'SRCV'=>0, // 13 - 'SOCIETEARESPONSABILITELIMITEEASSOCIEUNIQUEEURL'=>0, // 13 - 'SADIRECTOIREETCONSEILDESURVEILLANCECAPITALVARIABLE'=>0, // 13 - 'SACOOPRATIVEDINTRTCOLLECTIFAGRICOLECONSEILDADMINISTRATION'=>0, // 13 - 'SOCIETECOOPERATIVEDECAUTIONMUTUELLELOI'=>0, // 12 - 'COOPRATIVEPRODUCTIONARLCAPITALVARIABLE'=>0, // 12 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFRESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 13 - 'SACOOPRATIVEDECONSOMMATION'=>0, // 13 - 'SARLCOOPRATIVEOUVRIREDEPRODUCTION'=>0, // 12 - 'SOCIETEANONYMEADIRECTOIREETCONSEILDESURV'=>0, // 12 - 'SOCITCIVILEPROFESSIONNELLEDAVOCATSAUCONSEILDETATETLACOURDECASSATION'=>0, // 12 - 'SCSOCITENLIQUIDATION'=>0, // 15 - 'SOCIETECOOPERATIVEDINTERETCOLLECTIFAGRICOLEAFORMECIVILE'=>0, // 12 - 'STEANONYMESPORTIVEPROFESSIONNELLEACONSEILDADMINISTRATION'=>0, // 12 - 'SOCITAGRICOLE'=>0, // 12 - 'SARLUNIPERSONELLE'=>0, // 19 - 'SOCITANONYMEEUROPENNE'=>0, // 12 - 'SARLCOOPRATIVEMARITIME'=>0, // 19 - 'SARLSOCITENDISSOLUTION'=>0, // 15 - 'SARLASSOCIUNIQUECAPVARIAB'=>0, // 12 - 'SELARLCAPITALVARIABLE'=>0, // 12 - 'SACH'=>0, // 13 - 'SOCITANONYMECONSEILDESURVEILLANCE'=>0, // 12 - 'SOCITDEDROITEUROPEN'=>0, // 12 - 'SOCIETECOOPERATIVEARTISANALEARESPLIMITEEETACAPITALVARI'=>0, // 12 - 'SASV'=>0, // 15 - 'SELENCOMMANDITEPARACTIONS'=>0, // 11 - 'SCACV'=>0, // 11 - 'COOPERATIVEDECONSOMMATIONANONYMEACAPITALVARIABLE'=>0, // 11 - 'COMMUNAUTTERRITORIALE'=>0, // 11 - 'SOCIETECIVILEPARTICULIEREACAPITALVARIABLE'=>0, // 11 - 'AUTRESFORMESJURIDIQUES'=>0, // 11 - 'SOCITCOOPRATIVECAPITALVARIABLERESPONSABILITSTATUTAIREMENTLIMITE'=>0, // 11 - 'SACOOPRATIVEDEBANQUE'=>0, // 11 - 'SOCITCOOPRATIVEDECONSOMMATIONENLAFORMESA'=>0, // 11 - 'SACONSEILDESURVEILLANCEETDIRECTOIRE'=>0, // 12 - 'SCPA'=>0, // 15 - 'SOCITPRIVEPARACTIONS'=>0, // 11 - 'SAEMDIRECTOIRE'=>0, // 11 - 'SOCIETEANONYMEDECONOMIEMIXTE'=>0, // 11 - 'SCPROFESSIONNELLEDECHIRURGIENSDENTISTES'=>0, // 11 - 'STEANONYMECOOPERATIVEDINTERETCOLLECTIFACAPITALVARIABLE'=>0, // 11 - 'SADCONOMIEMIXTECONSEILDADMINISTRATION'=>0, // 12 - 'SOCITANONYMECOOPRATIVEDINTRTCOLLECTIFPOURACCESSIONLAPROPRIT'=>0, // 11 - 'SAOBJETSPORTIF'=>0, // 11 - 'SOCIETEDEXERCICELIBERALARESPONSABILITELIMITEE'=>0, // 12 - 'ENTREPRISEUNIPERSONNELLEARESPONSABILITELIMITEEETACAPITAL'=>0, // 11 - 'SADHLMDIRECTOIRE'=>0, // 11 - 'SOCITCIVILEPROFESSIONNELLEDEGEOMTRESEXPERTS'=>0, // 11 - 'SOCITANONYMECOOPRATIVECONSEILDADMINISTRATION'=>0, // 11 - 'GROUPEMENTFONCIERVITICOLE'=>0, // 11 - 'SOCITCIVILECOOPRATIVEAGRICOLECAPITALVARIABLE'=>0, // 11 - 'SOCIETECOOPERATIVEDECONSOMMATIONANONYME'=>0, // 11 - 'BANQUECOOPRATIVERGIEPARLALOINDUJUIN'=>0, // 11 - 'SCPARTICULIREDINVESTISSEMENT'=>0, // 11 - 'SASUNIPERSONNELLEASSOCIUNIQUE'=>0, // 12 - 'SOCIETEANONYMEADIRECTOIREETCONSEILDORIENTATIONETSURVEIL'=>0, // 10 - 'SACOOPRATIVEDEBANQUEPOPULAIRECAPITALVARIABLE'=>0, // 10 - 'SOCITDEGESTIONPATRIMONIALE'=>0, // 10 - 'SOCITCOOPRATIVEDEBANQUECAPITALVARIABLE'=>0, // 10 - 'SASCOOPRATIVE'=>0, // 11 - 'SELASASSOCIUNIQUE'=>0, // 10 - 'SARLASSOCIUNIQUEUNIQUE'=>0, // 10 - 'SOCIETECOOPERATIVEDETRAVAILLEURSANONYME'=>0, // 10 - 'SACOOPRATIVEDIRECTOIREETCONSEILDESURVEILLANCECAPITALVARIABLE'=>0, // 10 - 'SARLCCV'=>0, // 11 - 'SOCITCIVILEPROFESSIONNELLEDEDIRECTEURSDELABORATOIRESDANALYSESDEBIOLOGIEMDICALE'=>0, // 10 - 'SOCIETEARESPONSABILITELIMITEEACARACTEREUNIPERSONNEL'=>0, // 10 - 'SARLOUVRIREDEPRODUCTIONCAPITALVARIABLE'=>0, // 10 - 'SCICV'=>0, // 14 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFCAPITALVARIABLE'=>0, // 10 - 'SOCIETEDEXERCICELIBERALPARACTIONSSIMPLIFIEESSELAS'=>0, // 10 - 'SP'=>0, // 10 - 'SOCITPARACTIONSSIMPLIFIEUNIPERSONNELLECAPITALVARIABLE'=>0, // 10 - 'COLR'=>0, // 12 - 'STECOOPERATIVESARLACAPITALVARIABLE'=>0, // 10 - 'CUMACAPITALVARIABLE'=>0, // 14 - 'SCCOOPRATIVECAPITALETPERSONNELVARIABLES'=>0, // 9 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFAGRICOLERESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 9 - 'SOCITCOOPRATIVEANONYMEDINTRTCOLLECTIFAGRICOLECAPITALVARIABLE'=>0, // 9 - 'SOCITCOOPRATIVEVINICOLE'=>0, // 9 - 'SACOOPRATIVEDINTRTCOLLECTIFCAPITALVARIABLE'=>0, // 9 - 'SOCITDCONOMIEMIXTEDIRECTOIRE'=>0, // 9 - 'COOPERATIVEDETRANSPORTSROUTIERS'=>0, // 9 - 'SELASU'=>0, // 10 - 'SOCITDEDROITALLEMAND'=>0, // 9 - 'SOCITCOOPRATIVEANONYMECAPITALVARIABLE'=>0, // 9 - 'SOCIETECOOPERATIVEDECAUTIONMUTUELLEACAPITALVARIABLELOI'=>0, // 9 - 'COOPRATIVEDECRDITRESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 9 - 'SARLASSOCIUNIQUEENLIQUIDATION'=>0, // 15 - 'SCDECRDITCAPITALVARIABLE'=>0, // 9 - 'SASUNIPERSONELLE'=>0, // 9 - 'SOCITCOOPRATIVEMARITIMERESPONSABILITLIMITECAPITALVARIABLE'=>0, // 9 - 'SAASSOCIUNIQUE'=>0, // 10 - 'SOCITDINVESTISSEMENTSCAPITALVARIABLECONSEILDADMINISTRATION'=>0, // 9 - 'SNCASSOCIUNIQUE'=>5202, // 9 - 'SOCITRESPONSABILITLIMIT'=>0, // 9 - 'CRDITMARITIMECAPITALVARIABLE'=>0, // 9 - 'SOCIETECOOPERATIVEOUVRIEREDEPRODUCTIONASA'=>0, // 16 - 'SARLASSOCIUNQIUE'=>0, // 9 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFAGRICOLECAPITALVARIABLE'=>0, // 9 - 'SARLCOOPRATIVEDETRAVAILLEURS'=>0, // 9 - 'SOCITANONYMEPUBLIQUELOCALEDAMNAGEMENT'=>0, // 9 - 'SOCITCIVILEPROFESSIONNELLEDHUISSIERS'=>0, // 9 - 'UNIONDESOCITSCOOPRATIVESFORMEANONYME'=>0, // 9 - 'SCPI'=>0, // 9 - 'SCCOOPRATIVEDECONSOMMATEURSCAPITALVARIABLE'=>0, // 9 - 'SCARL'=>0, // 9 - 'TABLISSEMENTDECRDITBUTNONLUCRATIF'=>0, // 9 - 'SARLCARACTREUNIPERSONNEL'=>0, // 9 - 'STEDEXERCICELIBERALUNIPERSONNELLEARESPONSABILITELIMITEE'=>0, // 9 - 'SOCIETEANONYMEDHLMADIRECTOIRE'=>0, // 9 - 'RARL'=>0, // 14 - 'SCOPRESPONSABILITLIMITECAPITALVARIABLE'=>0, // 9 - 'SOCITDEDROITANGLAISPRIVATELIMITEDCOMPANY'=>0, // 12 - 'SOCITCIVILECOOPRATIVEDECONSOMMATION'=>0, // 9 - 'SOCITDINVESTISSEMENTSCAPITALVARIABLEETCONSEIL'=>0, // 13 - 'SCDEXPLOITATIONVITICOLE'=>0, // 9 - 'SCDEPARTICIPATION'=>0, // 9 - 'SCV'=>0, // 11 - 'SOCITANONYMECOOPRATIVEDECOMMERANTSDTAILLANTSCONSEILDADMINISTATION'=>0, // 9 - 'SOCITCIVILEPROFESSIONNELLEDAVOUS'=>0, // 9 - 'SOCITCIVILEPROFESSIONNELLEDECOMMISSAIRESPRISEURS'=>0, // 15 - 'SCOPANONYMEPERSONNELETCAPITALVARIABLES'=>0, // 9 - 'SCPROFESSIONNELLEDECOMMISSAIRESPRISEURS'=>0, // 15 - 'SASUASSOCIUNIQUE'=>0, // 9 - 'UNIONDECOOPERATIVESACAPITALVARIABLELOI'=>0, // 9 - 'SOCIETECIVILEEXPLOITATIONAGRICOLEARESPONSABILITELIMITEE'=>0, // 9 - 'SCPCAPITALVARIABLE'=>0, // 8 - 'ASSOCIATIONLOIDE'=>9220, // 8 - 'SOCITCIVILEDEGESTION'=>0, // 8 - 'SOCITRRESPONSABILITLIMITE'=>0, // 8 - 'SCPRL'=>0, // 8 - 'SPAITALIENNE'=>0, // 8 - 'SN'=>0, // 8 - 'SCPROFESSIONELLE'=>0, // 8 - 'SCRL'=>0, // 12 - 'SUARL'=>0, // 8 - 'SOCITCOOPRATIVEOUVRIREDEPRODUCTIONCONSEILDADMINISTRATION'=>0, // 8 - 'TABLISSEMENTPUBLICCARACTREINDUSTRIELOUCOMMERCIAL'=>0, // 8 - 'COOPRATIVEDEPRODUCTIONRESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 9 - 'SCPROFESSIONNELLEDEMASSEURSKINSITHRAPEUTES'=>0, // 11 - 'SCIFAMILIALE'=>0, // 8 - 'SCAMEMBREDELUE'=>0, // 8 - 'COOPRATIVEDECRDITCAPITALVARIABLEETRESPONSABILITLIMITE'=>0, // 10 - 'SCIASSOCIUNIQUE'=>0, // 10 - 'SOCITPARACTIONSSIMPLIFIEUNIPERSONNELLEASSOCIUNIQUE'=>0, // 14 - 'SOCIETECIVILECOOPERATIVEVINICOLE'=>0, // 8 - 'SARLCOOPRATIVECONSOMCAPITALVARIABLE'=>0, // 8 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFAGRICOLE'=>0, // 8 - 'SOCITDEXERCICELIBRALPARACTIONSIMPLIFIE'=>0, // 8 - 'SCISCPSCM'=>0, // 16 - 'FDRATION'=>0, // 8 - 'GROUPEMENTDEMPLOYEURS'=>0, // 8 - 'STECIVILE'=>0, // 8 - 'SOCITCOOPRATIVEDEPRODUCTIONCAPITALVARIABLE'=>0, // 8 - 'MADAME'=>0, // 8 - 'SARLDEFAMILLE'=>0, // 8 - 'SCCOOPRATIVEDECRDIT'=>0, // 8 - 'SOCITMUTUELLECAPITALVARIABLE'=>0, // 8 - 'SCDECONSTRUCTIONVENTEDIMMEUBLES'=>0, // 8 - 'SCICA'=>0, // 9 - 'SOCITCOOPRATIVEDECAUTIONMUTUELLE'=>0, // 8 - 'SDCS'=>0, // 9 - 'SOCITDEPARTICIPATIONFINANCIREDEPROFESSIONLIBRALEDAVOCATSRESPONSABILITLIMITE'=>0, // 8 - 'SOCITCOOPRATIVEOUVRIREDEPRODUCTIONSARLCAPITALVARIABLE'=>0, // 8 - 'SACOOPDIRECTCONSEILSURV'=>0, // 16 - 'COOPRATIVEOUVRIREDEPRODUCTIONANONYMECAPITALETPERSONNELVARIABLE'=>0, // 8 - 'SCCC'=>0, // 8 - 'SACOOPRATIVEPERSONNELETCAPITALVARIABLE'=>0, // 8 - 'SACOOPRATIVEDEPRODUCTION'=>0, // 8 - 'SAENDISSOLUTION'=>0, // 9 - 'SOCIETEANONYMEDHABITATIONALOYERMODERE'=>0, // 8 - 'SARLP'=>0, // 8 - 'COOPERATIVEOUVRIEREDEPRODUCTIONACAPITALVARIABLESA'=>0, // 8 - 'SOCITPARACTIONSSIMPLIFIEDARCHITECTURECAPITALVARIABLE'=>0, // 8 - 'SOCITCCOPRATIVEMARITIME'=>0, // 8 - 'SEML'=>0, // 11 - 'SOCIETEDINTERETCOLLECTIF'=>0, // 8 - 'STEDEPARTICIPATIONSFINANCIRESRESPONSABILITLIMITE'=>0, // 8 - 'ANONYMEACAPITALVARIABLE'=>0, // 8 - 'SOCITCOOPRATIVEAGRICOLECOOPRATIVE'=>0, // 9 - 'SARLCOOPRATIVEARTISANALECAPITALVARIABLE'=>0, // 8 - 'SACOOPRATIVEDIRECTIONETCONSEILDESURVEILLANCE'=>0, // 15 - 'SCOTARLSTCOOPRATIVETRAVAILLEURS'=>0, // 7 - 'UNIONDCONOMIESOCIALECOOPRATIVEFORMEANONYME'=>0, // 7 - 'COOPERATIVEDECONSOMMATIONENSAACAPITALVARIABLE'=>0, // 7 - 'OPAC'=>0, // 8 - 'SAMUTUELLEDIRECTION'=>0, // 7 - 'SOCITCOOPRATIVEDECONSOMMATIONCAPITALVARIABLE'=>0, // 7 - 'COOPRATIVEARTISANALERESPONSABILITLIMITE'=>0, // 7 - 'SARLCOOPERATIVEDEPRODUCTIONCAPITALVARIABLE'=>0, // 7 - 'BANQUECOOPRATIVERGIEPARLALOINODUJUIN'=>0, // 13 - 'SCOPANONYMEETCAPITALVARIABLE'=>0, // 7 - 'SARLEXERCICELIBRAL'=>0, // 7 - 'SRLKOP'=>0, // 13 - 'COOPRATIVEARTISANALECONSEIL'=>0, // 12 - 'SOCITPARACTIONSMEMBREDELACOMMUNAUTEUROPENNEOUPARTIELACCORDSURLESPACECONOMIQUE'=>0, // 7 - 'SARLC'=>0, // 12 - 'COOPERATIVEACAPITALVARIABLESOCIETEANONYME'=>0, // 7 - 'SACOOPDEBANQUEPOPULAIRE'=>0, // 7 - 'SACOOPRATIVEDEPRODUCTIONDHLMCONSEILDADMINISTRATION'=>0, // 7 - 'EURLSARL'=>0, // 7 - 'SARLCOOPRATIVEDECONSOMMATION'=>0, // 9 - 'SACV'=>0, // 7 - 'TABLISSEMENTPUBLICDECOOPRATIONCULTURELLECARACTREINDUSTRIELETCOMMERCIAL'=>0, // 7 - 'SOCITANONYMEDEPRODUCTIONCAPITALVARIABLE'=>0, // 7 - 'SICAVCONSEILDADMINISTRATION'=>0, // 9 - 'SOCITCIVILEPROFESSIONNELLEDECHIRURGIENDENTISTES'=>0, // 7 - 'SARLPERSONNELVARIABLE'=>0, // 9 - 'SOCITANONYMECOOPRATIVEMARITIMECAPITALETPERSONNELVARIABLES'=>0, // 7 - 'SOCIETEANONYMECOOPERATIVEADIRECTOIREETCONSEILDESURVEILLA'=>0, // 7 - 'SCIENLIQUIDATIONAMIABLE'=>0, // 7 - 'SACOOP'=>0, // 13 - 'SCOA'=>0, // 7 - 'SACOOPRATIVEMARITIME'=>0, // 7 - 'ASSOCIATIONRGIESELONLALOI'=>9220, // 7 - 'SOCITCOOPRATIVEDECRDITCAPVARIABLEETRESPSTATUTAIREMENTLIMITE'=>0, // 7 - 'SARLCOOPRATIVEDECONSOMMATIONCAPITALVARIABLE'=>0, // 7 - 'SELACA'=>0, // 7 - 'SELA'=>0, // 8 - 'SARLASSOCIUNIQUEENDISSOLUTION'=>0, // 7 - 'SAEL'=>0, // 10 - 'SOCITOUVRIREDEPRODUCTIONFORMESARLCAPITALVARIABLE'=>0, // 7 - 'SOCIETEANONYMECOOPOUVRIEREDEPRODUCTIONCAPITALETPERSONNELVARIABLES'=>0, // 7 - 'SACOOPRATIVEDIRECTOIRE'=>0, // 8 - 'CRDITMARITIME'=>0, // 7 - 'UNIONDCONOMIESOCIALESADIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 10 - 'SAEXERCICELIBRAL'=>0, // 7 - 'SCOPFORMEANONYMECAPITALETPERSONNELVARIABLES'=>0, // 9 - 'SCOPARESPONSABILITELIMITEEETACAPITALVARIABLE'=>0, // 7 - 'SARLCONSEILDADMINISTRATION'=>0, // 7 - 'SCCVENTE'=>0, // 12 - 'SOCITDINVESTISSEMENTSCAPITALVARIABLEETCONSEILDESURVEILLANCE'=>0, // 8 - 'UNIONDECONOMIESOCIALESTECOOPERATIVEANONYME'=>0, // 7 - 'SACOOPRATIVECAPITALVARIABLEDIRECTOIRE'=>0, // 7 - 'SCCCON'=>0, // 7 - 'SOCITANONYMECOOPCAPITALVARIABLEDIRECTETCONSEILDESURVEILLANCE'=>0, // 7 - 'SOCITCIVILEDEPARTICIPATIONOUVRIRECAPITALVARIABLE'=>0, // 7 - 'SARLASOCIUNIQUE'=>0, // 9 - 'SCDEPERSONNESCAPITALVARIABLE'=>0, // 8 - 'SOCITCIVILEDINTRTCOLLECTIFAGRICOLE'=>0, // 7 - 'PF'=>0, // 9 - 'SCPROFESIONNELLE'=>0, // 7 - 'SCAYANTPOUROBJETLACONSTRUCTIONDIMMEUBLES'=>0, // 8 - 'SOCITCIVILEDEPORTEFEUILLESCAPITALVARIABLE'=>0, // 7 - 'SOCITRESPONSABILITLIMITECAPITALETPERSONNELVARIABLES'=>0, // 7 - 'SOCITCAPITALVARIABLE'=>0, // 6 - 'SOCITCIVILECOOPRATIVEDECRDITCAPITALVARIABLE'=>0, // 6 - 'ETABLISSEMENTPUBLICETRANGER'=>0, // 6 - 'STCIVCONSTRUCATTRIBUTION'=>0, // 6 - 'BACO'=>0, // 9 - 'SADINTRTCOLLECTIFAGRICOLECONSEILDADMINISTRATION'=>0, // 6 - 'SASENDISSOLUTION'=>0, // 6 - 'SOCIETECOOPERATIVEDINTERETCOLLECTIFAGRICOLEARESPONSABILIT'=>0, // 6 - 'STECOOPERATIVEAGRICOLE'=>0, // 6 - 'SACOOPRATIVEDEPRODUCTIONDHABITATIONSLOYERMODRETCAPITALVARIABLE'=>0, // 6 - 'SOCIETEANONYMECOOPERATIVEDENTREPRISESACAPITALVARIABLE'=>0, // 6 - 'SADIRECTOIREETACONSEILDESURVEILLANCE'=>0, // 6 - 'RUEDUMARCHALJOFFRE'=>0, // 6 - 'SELU'=>0, // 7 - 'STPARTFINDEPROFLIBRALES'=>0, // 6 - 'SACOOPRATIVEINTRTCOLLECTIFPOURLACCESSIONPROPRIT'=>0, // 6 - 'CHEMINDUMOULINNEUF'=>0, // 6 - 'COOPRATIVECAPITALVARIABLERESPONSABILITLIMITE'=>0, // 6 - 'SNCENLIQUIDATION'=>5202, // 6 - 'SOCITDASSURANCEMUTUELLEVIECAPITAL'=>0, // 8 - 'SARLCOOPRATIVEOUVRIREDEPRODUCTIONETDECRDIT'=>0, // 6 - 'GROUPEMENTPASTORAL'=>0, // 6 - 'SOCIETEECONOMIEMIXTE'=>0, // 6 - 'SASPORTIVEPROFESSIONNELLECONSEILDADMINISTRATION'=>0, // 7 - 'SAL'=>0, // 10 - 'SADHLMDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 6 - 'SOCITENCOMMANDITEDEDROITTRANGER'=>0, // 6 - 'SADCONOMIEMIXTEDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 6 - 'ASSOCIUNIQUE'=>0, // 6 - 'SACPV'=>0, // 6 - 'SCCOOPRATIVEDECONSTRUCTIONPERSONNELETCAPITALVARIABLES'=>0, // 10 - 'SCPSOCITTITULAIREDOFFICENOTARIAL'=>0, // 8 - 'RGIEMUNICIPALE'=>0, // 6 - 'SARLAU'=>0, // 8 - 'STECOOPERATIVEAGRICOLEACAPITALVARIABLE'=>0, // 6 - 'SELARLDEXERCICELIBRE'=>0, // 6 - 'SOCITRESPONSABILITELIMITE'=>0, // 6 - 'SOCITDASSURANCE'=>0, // 6 - 'SOCIETEARESPONSABILITELIMITEEDINTERETCOLLECTIFAGRICOLE'=>0, // 6 - 'SOCITRESPONSABILITLIMITASSOCIUNIQUE'=>0, // 7 - 'SARLCONSTITUDUNASSOCIUNIQUE'=>0, // 6 - 'SOCIETEANONYMECOOPERATIVEDEPRODUCTION'=>0, // 6 - 'SOCITANONYMECOOPRATIVEDACHATENCOMMUNCAPITALETPERSONNELVARIABLES'=>0, // 6 - 'SOCITCIVILEDEDROITTRANGER'=>0, // 6 - 'SARLCOP'=>0, // 7 - 'COOPRATIVEOUVRIREDEPRODUCTIONFORMEANONYMECAPITALETPERSONNELVARIABLES'=>0, // 6 - 'SCPARTICIPATIONOUVRIRECAPITALVARIABLE'=>0, // 6 - 'SOCIETEPARACTIONSSIMPLIFIEESACAPITALVARIABLE'=>0, // 6 - 'SCF'=>0, // 6 - 'SOCITANONYMECONSEILDESURVEILLANCEETDIRECTOIRE'=>0, // 6 - 'SLA'=>0, // 6 - 'SASA'=>0, // 6 - 'SASSOCIETEPARACTIONSSIMPLIFIE'=>0, // 6 - 'SOCITCIVILEIMMOBILIRECONSTRUCTIONVENTE'=>0, // 6 - 'SOCITDECAUTIONMUTUELLECOOPRATIVE'=>0, // 6 - 'SCENLIQUIDATION'=>0, // 7 - 'COOPRATIVEARTISANALEDIRECTOIRE'=>0, // 6 - 'SOCITDECAUTIONMUTUELLELOIDUMARS'=>0, // 6 - 'SOCITECIVILECOOPRATIVEDECRDIT'=>0, // 6 - 'SOCITCIVILEIMMOBILIREFAMILIALE'=>0, // 6 - 'SOCITENCOMMANDITEPARACTION'=>0, // 6 - 'TETINDUSTRIE'=>0, // 6 - 'SOCIETEENCOMMANDITESIMPLEACAPITALVARIABLE'=>0, // 6 - 'SELR'=>0, // 6 - 'ENTUNIPERSONARESPLIMITEE'=>0, // 6 - 'STEDEDROITTRANGER'=>0, // 6 - 'SCDEXPLOITATIONOSTRICOLE'=>0, // 6 - 'TABLISSEMENTDECRDITCOOPRATIFETMUTUALISTE'=>0, // 6 - 'SACOOPERATIVEDECOMMERCANTSDETAILLANTSACAPITALVARIABLE'=>0, // 6 - 'SELEUARL'=>0, // 6 - 'SOCITANONYMEDECONSOMMATIONCAPITALVARIABLEDIRECTOIRE'=>0, // 6 - 'SG'=>0, // 6 - 'SOCITDEXERCICELIBRALDAVOCATSFORMEANONYME'=>0, // 6 - 'SOCITPARACTIONSSIMPLIFIES'=>0, // 6 - 'SADEDROITTRANGER'=>0, // 6 - 'SCPROFESSIONNELLEDINFIRMIRES'=>0, // 6 - 'SOCITCOOPRATIVEAGRICOLELAITIRE'=>0, // 6 - 'SCPDEMASSEURSKINSITHRAPEUTES'=>0, // 8 - 'SOCITANONYMESOCITDHABITATIONDELOYERMODR'=>0, // 5 - 'SARLRESPONSABILITLIMITE'=>0, // 6 - 'SARLCOOPRATIVEDEPRODUCTION'=>0, // 5 - 'SADEDROITSUISSE'=>0, // 5 - 'SE'=>0, // 5 - 'USRL'=>0, // 7 - 'SOCITANONYMECOOPRATIVEDEPRODUCTIONDHLMCONSEILDADMINISTRATION'=>0, // 9 - 'SCENDISSOLUTION'=>0, // 5 - 'SARLEL'=>0, // 5 - 'SKOPACV'=>0, // 5 - 'CREDITMARITIMEACAPITALVARIABLES'=>0, // 5 - 'SOCITDINVESTISSEMENTCAPITALVARIABLEDACTIONNARIATSALARIS'=>0, // 5 - 'SOCITCOOPRATIVEDETRAVAILLEURSFORMESARL'=>0, // 5 - 'SADIRECTOIRECONSEILDORIENTATIONETDESURVEILLANCE'=>0, // 6 - 'BANQUECOOPERATIVEREGIEPARLALOINDUJUIN'=>0, // 5 - 'SICAFANONYMECONSEIL'=>0, // 5 - 'STECOOPERATIVEOUVRIEREDEPRODUCTIONARESPONSABILITELIMITEE'=>0, // 5 - 'STEXLIBRALRESPONSABILITLIMITE'=>0, // 5 - 'SOCITCOOPRATIVEDECONSOMMATIONCAPITALETPERSONNELVARIABLES'=>0, // 5 - 'GP'=>0, // 5 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFAGRICOLEFORMESACAPITALVARIABLE'=>0, // 5 - 'SCOPETDECRDITRESPONSABILITLIMITE'=>0, // 5 - 'STECOOPERATIVEDINTERETCOLLECTIFARLACAPITALVARIABLE'=>0, // 5 - 'APM'=>0, // 5 - 'SOCITCIVILECOOPRATIVEENTREMDECINS'=>0, // 5 - 'SCPROFESSIONNELLEDECOMMISSAIRESAUXCOMPTES'=>0, // 5 - 'SOCITCIVILEPROFESSIONNELLEDARCHITECTURE'=>0, // 5 - 'SOCITDROITTRANGER'=>0, // 5 - 'SCPROFESSIONNELLEDAVOCATSAUXCONSEILS'=>0, // 5 - 'COOPRATIVEARTISANALEENSARL'=>0, // 5 - 'SLAS'=>0, // 5 - 'SARLASSOCIUNIQUEUNIPERSONNELLE'=>0, // 6 - 'SOCITCIVILEDEXPLOITATIONAGRICOLEETVITICOLE'=>0, // 5 - 'SELARLACAPITALVARIABLE'=>0, // 5 - 'BANQUECOOPRATIVEDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 5 - 'COOPRATIVEOUVRIREDEPRODUCTIONANOMYNECAPITALETPERSONNELVARIABLE'=>0, // 5 - 'PERSONNEPHYSIQUE'=>0, // 5 - 'SACAPITALFIXECOOPRATIVEDEBANQUE'=>0, // 9 - 'SOCITANONYMECOOPRATIVEDINTRTCOLLECTIFDEHLM'=>0, // 5 - 'SOCITCOOPRATIVEAGRICOLECAPITALETPERSONNELVARIABLES'=>0, // 5 - 'SCOOP'=>0, // 9 - 'SOCITCOOPRATIVEDETRAVAILLEURSFORMEANONYME'=>0, // 5 - 'RARLASSOCIUNIQUE'=>0, // 9 - 'SCOPRESPONSABILITETCAPITALVARIABLE'=>0, // 5 - 'COMITDENTREPRISE'=>0, // 5 - 'SOCITCIVILEPROFESSIONNELLEDEDIRECTEURSDELABORATOIRES'=>0, // 5 - 'SELUNIPERSONNELLE'=>0, // 5 - 'SCPDEXPLOITATIONAGRICOLE'=>0, // 5 - 'SCPDHUISSIERS'=>0, // 5 - 'SOCITDETITRISATIONSOUSFORMEDESOCITANONYME'=>0, // 5 - 'SAKCV'=>0, // 5 - 'SACOOPRATIVEDENTREPRISECAPITALVARIABLE'=>0, // 5 - 'SCPROFESSIONNELLEDEDIRECTEURSDELABORATOIRES'=>0, // 5 - 'ASSOCIATIONRGIESELONLALOIDUERJUILLET'=>9220, // 5 - 'SARLDEDROITTRANGER'=>0, // 5 - 'STEDEXERCICELIBERALRESPONSABILITELIMITEE'=>0, // 5 - 'STEPARACTIONSSIMPLIFIEE'=>0, // 5 - 'CHEMINDESVERNESZONEINDUSTRIELLE'=>0, // 5 - 'ASSOCIATIONDEDROITLOCALSANSBUTLUCRATIF'=>9220, // 5 - 'SICARESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 7 - 'SOCITCOOPRATIVEANONYEDINTRTCOLECTIFAGRICOLEETCAPITALVARIABLE'=>0, // 5 - 'SACOOPRATIVEDETRAVAILLEURS'=>0, // 5 - 'SCPTITULAIREDOFFICENOTARIAL'=>0, // 5 - 'SARLDEDROITALLEMAND'=>0, // 5 - 'STCOOPDECRDITCAPITALVARIABLEETRESPONSABILITSTATUTAIREMENTLIMITE'=>0, // 5 - 'SACICAPSACOOPINTRTCOLLPOURACCESSIONLAPROPRIT'=>0, // 5 - 'EURLRESPONSABILITLIMITE'=>0, // 5 - 'SOCIETECOOPERATIVEMARITIMEARESPONSABILITELIMITEEACAPITAL'=>0, // 5 - 'SARLRDUITEUNASSOCIUNIQUE'=>0, // 5 - 'SACOOPRATIVEINTRETCOLLECTIFACCESSIONLAPROPRIT'=>0, // 5 - 'SCAC'=>0, // 6 - 'SCDECOOPRATIVEAGRICOLE'=>0, // 5 - 'SOCITPARACTIONSSIMPLIFIEPLURIPERSONNELLE'=>0, // 5 - 'SOCITCIVILEAGRICOLECOOPRATIVE'=>0, // 5 - 'SOCITCOOPRATIVEDEPRODUCTIONRESPONSABILITETCAPITALVARIABLE'=>0, // 5 - 'SOCITCIVILEDEGESTIONDEBIENSIMMOBILIERS'=>0, // 5 - 'SADCS'=>0, // 6 - 'SARO'=>0, // 5 - 'SOCIETEANONYMEDEXPERTISECOMPTABLE'=>0, // 5 - 'SARLCOOPRATIVEDETRANSPORT'=>0, // 5 - 'SCCA'=>0, // 10 - 'REPRSENTATIONCOMMERCIALEDTABLISSEMENTPUBLICTRANGER'=>0, // 5 - 'SACOOPRATIVECAPITALVARIABLEETDIRECTOIRE'=>0, // 6 - 'SOCITCIVILEIMMOBILRE'=>0, // 5 - 'NONINSCRIT'=>0, // 5 - 'SOCITCOOPRATIVEDETRAVAILLEURS'=>0, // 9 - 'SOCITCOOPRATIVEIC'=>0, // 5 - 'SICASOUSFORMEDESOCITANONYME'=>0, // 5 - 'SCAYANTPOUROBJETLACONSTRUCTIONDIMMEUBLESVENTE'=>0, // 7 - 'COOPERATIVEARESPONSABILITELIMITEEACAPITALVARIABLE'=>0, // 5 - 'SCPROFESSIONNELLEASSOCIUNIQUE'=>0, // 5 - 'SCICAA'=>0, // 5 - 'SALRL'=>0, // 5 - 'SAANONYMEACONSEILDADMINISTRATION'=>0, // 5 - 'SOCIETECOOPERATIVEARTISANALEARESPONSABILITELIMITEEETACAP'=>0, // 5 - 'CM'=>0, // 5 - 'STECIVILECAPITALRIABLE'=>0, // 5 - 'SACS'=>0, // 6 - 'SOCITRESPONSABILITLIMITEDEPRESSEASSOCIUNIQUE'=>0, // 5 - 'SRLCOP'=>0, // 5 - 'SCPROFESSIONNELLEDARCHITECTURE'=>0, // 5 - 'SCAL'=>0, // 5 - 'UNIONDECOOPRATIVESCAPITALVARIABLE'=>0, // 4 - 'SOCITAGRICOLESAUFCOOPR'=>0, // 4 - 'SOCITANONYMECOOPRATIVEDECONSOMMATION'=>0, // 4 - 'SOCITDEPARTICIPATIONSFINANCIRESDEPROFESSIONLIBRALEPARACTIONSSIMPLIFIE'=>0, // 4 - 'SARLNONMEMBREDELACEE'=>0, // 5 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFRESPONSABILITLIMITECAPITALVARIABLE'=>0, // 4 - 'SCPOANONYME'=>0, // 4 - 'COMITDTABLISSEMENT'=>0, // 4 - 'SOCITAGRICOLESAUFCOOPRATIVE'=>0, // 4 - 'SELPARACTIONSSIMPLIFIE'=>0, // 4 - 'SOCITDINTRTCOLLECTIFAGRICOLECOOPRATIVE'=>0, // 4 - 'CICV'=>0, // 5 - 'SACM'=>0, // 8 - 'STDEXLIBRALRESPLIMITE'=>0, // 4 - 'SOCITRESPONSABILITLIMITEUNIPERSONNELLECAPITALVARIABLE'=>0, // 4 - 'CHEZMMEFERRIERARLETTE'=>0, // 4 - 'SOCITANONYMEDHLMCONSEIL'=>0, // 4 - 'SARLCOOPRATIVEDECRDITCAPITALVARIABLEETRESPONSABILITSTATUTAIREMENTLIMITE'=>0, // 4 - 'SICACOOPRATIVEANONYMECAPITALVARIABLE'=>0, // 4 - 'SACOOPRATIVEDECOMMERANTDTAILLANTS'=>0, // 4 - 'SELPARACTIONSSIMPLIFIES'=>0, // 4 - 'RLV'=>0, // 4 - 'SOCITCOOPRATIVEDUTILISATIONDEMATRIELAGRICOLEENCOMMUN'=>0, // 4 - 'SOCITCOOPRATIVEAGRICOLECAPITALVARIALE'=>0, // 4 - 'SOCITDEDROITESPAGNOL'=>0, // 4 - 'EARLENLIQUIDATION'=>0, // 4 - 'SARLSOCITENLIQUIDATIONAMIABLE'=>0, // 8 - 'EPCIC'=>0, // 5 - 'SOCITDECAUTIONMUTUELLECAPITALVARIABLE'=>0, // 4 - 'SARLCOOPERATIVEOUVRIEREDEPRODUCTIONETDECREDIT'=>0, // 4 - 'SOCITCIVILEDECONSTRUCTIONETDATTRIBUTION'=>0, // 4 - 'SCASSOCIUNIQUEETCAPITALVARIABLE'=>0, // 6 - 'SARLDINTRTCOLLECTIFETAGRICOLECAPITALVARIABLE'=>0, // 4 - 'SCO'=>0, // 4 - 'SOCITPARACTIONSSIMPLIFIE'=>0, // 5 - 'SEARLASSOCIUNIQUE'=>0, // 4 - 'SKOP'=>0, // 4 - 'SOCITCOMMANDITESIMPLE'=>0, // 4 - 'SOCITANONYMEDINTRTCOLLECTIFAGRICOLECONSEILDADMINIS'=>0, // 4 - 'SCCAPITALETPERSONNELVARIABLES'=>0, // 4 - 'UDC'=>0, // 4 - 'SRLELI'=>0, // 4 - 'SOCITCOOPRATIVEARTISANALERESPLIMITEETCAPVARIABLE'=>0, // 4 - 'SOCITRESPONSABILITLIMITEPLURIPERSONNELLE'=>0, // 4 - 'SAEMLOCALEDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 4 - 'SARLCOOP'=>0, // 4 - 'ENTREPRISEUNIPERSONNELLEARLDEXERCICELIBERAL'=>0, // 4 - 'SOCIETEANONYMEDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 4 - 'SPFRL'=>0, // 4 - 'SCPROFESSIONNELLEDAVOCATFORMECOOPRATIVE'=>0, // 4 - 'NN'=>0, // 4 - 'UCACAPITALVARIABLE'=>0, // 4 - 'VILLEDE'=>0, // 4 - 'UNIONDESSOCITSCOOPRATIVESAGRICOLESCAPITALETPERSONNELVARIABLE'=>0, // 4 - 'RUEVICTORHUGO'=>0, // 5 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFAGRICOLEFORMECIVILEAUCAPITALVARIABLE'=>0, // 4 - 'SARLASSOCIUNIQUEDEXERCICELIBRAL'=>0, // 4 - 'SOCITANONYMEMEMBREDELUE'=>0, // 4 - 'SOCITANONYMEDIRECTOIREETCONSEILDORIENTATIONETSURVEILLANCE'=>0, // 4 - 'COOPRATIVEARTISANALEFORMEANONYME'=>0, // 4 - 'SACOOPRATIVECONSEILDADMINISTRATION'=>0, // 4 - 'ANOCOOPDACHATENCOMMUNACAPITALETPERSONNELVARIABLES'=>0, // 4 - 'EUREX'=>0, // 4 - 'ANA'=>0, // 4 - 'SELARLUE'=>0, // 4 - 'SOCIETEDEXERCICELIBERALENCOMMANDITEPARACTIONSSELCA'=>0, // 4 - 'SAEMDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 4 - 'GROUPEMENTINTERETECONOMIQUE'=>0, // 4 - 'SCPROFESSIONNEL'=>0, // 4 - 'SCE'=>0, // 7 - 'CABI'=>0, // 4 - 'SARLCAPITALVARIABE'=>0, // 4 - 'QUARTIERLESCONDAMINES'=>0, // 4 - 'SOCITCIVILEIMMOBILIREDELOCATION'=>0, // 4 - 'SARLAVECASSOCIEUNIQUE'=>0, // 4 - 'COOPRATIVEDECONSOMMATIONANONYME'=>0, // 4 - 'SELFORMEANONYME'=>0, // 4 - 'SADCONOMIEMIXTEDIRECTOIRE'=>0, // 4 - 'SACOOPRATIVEOUVRIREDEPRODUCTIONCAPITALVARIABLE'=>0, // 4 - 'SCAGRICOLECAPITALVARIABLE'=>0, // 4 - 'FONDATION'=>0, // 4 - 'SOCITCIVILEDEXPLOITATIONOSTRICOLE'=>0, // 4 - 'SELRESPONSABILITLIMITE'=>0, // 4 - 'STDEPARTICIPATIONSFINANCIRESDEPROFLIBRALEDAVOCATSSOUSFORMEDESAS'=>0, // 4 - 'SARLCAPITALETPERSONNELVARIABLE'=>0, // 5 - 'COOPERATIVEDEPRODUCTIONARLACAPITALVARIABLE'=>0, // 4 - 'COOPERATIVEOUVRIEREDEPRODUCTIONANONYMEACAPITALETPERSONNE'=>0, // 4 - 'SOCITCOOPRATIVEOUVRIREDEPRODUCTIONSOUSFORMESARLCAPITALVARIABLE'=>0, // 4 - 'SRAL'=>0, // 4 - 'SOCITDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 4 - 'SADCONOMIEMIXTECONSEIL'=>0, // 4 - 'SCOPACAPITALVARIABLE'=>0, // 4 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFAGRICOLESICA'=>0, // 4 - 'SOCITDEPLACEMENTCOLLECTIFIMMOBILIER'=>0, // 4 - 'SASCONSEILDADMINISTRATION'=>0, // 4 - 'SOCITDEPARTICIPATIONFINANCIREDEPROFLIBRALEDAVOCATSSOUSFORMEDESAS'=>0, // 4 - 'NP'=>0, // 4 - 'UNIONDESSOCITSCOOPRATIVESAGRICOLES'=>0, // 4 - 'SCPACV'=>0, // 6 - 'ORGANISMEMUTUALISTE'=>0, // 4 - 'SACOOPACAPITALVARIABLEADIRECTCONSEILDESURVEILLANCE'=>0, // 4 - 'SCIA'=>0, // 5 - 'SOCITCOOPRATIVEDECONSTRUCTION'=>0, // 4 - 'AUTRESOCITRESPONSABILITLIMITE'=>0, // 4 - 'SCDINTRTCOLLECTIFAGRICOLECAPITALVARIABLE'=>0, // 4 - 'SCCOOPRATIVEDECONSOMMATION'=>0, // 4 - 'ASSOCIATON'=>9220, // 4 - 'UNIONDECOOPRATIVESMARITIMESANONYMECAPITALVARIABLE'=>0, // 4 - 'SAPR'=>0, // 4 - 'SME'=>0, // 4 - 'SACOOPRATIVEDECONSOMMATIONCONSEILDADMINISTRATIONCAPITALVARIABLE'=>0, // 4 - 'RUEDUGNRALDEGAULLE'=>0, // 4 - 'URL'=>0, // 4 - 'SCPROFESSIONNELLECAPITALVARIABLE'=>0, // 4 - 'UNIONDESOCITSCOOPRATIVESFORMEANONYMEDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 4 - 'SOCITDASSURANCEMUTUELLEVIE'=>0, // 4 - 'SACC'=>0, // 4 - 'BANQUECOOPRATIVERGIEPARLALOINDU'=>0, // 5 - 'COMAC'=>0, // 4 - 'SOCITRESPONSABILITLIMITESOCITUNIQUE'=>0, // 4 - 'SOCITANONYMESPORTIVEPROFESSIONNELLEDIRECTOIREETCONSEIL'=>0, // 4 - 'LV'=>0, // 4 - 'SCOV'=>0, // 4 - 'SACONSEILDADMINSITRATION'=>0, // 4 - 'SOCITDEXERCICELIBRALPARACTIONSSIMPLIFIES'=>0, // 4 - 'SOCITCIVILEIMMOBILIREAGRICOLE'=>0, // 4 - 'SACONOMIEMIXTE'=>0, // 4 - 'STEANONYMECOOPERATIVEACAPITALVARIABLE'=>0, // 4 - 'AVENUEDUMARCHALFOCH'=>0, // 4 - 'RLU'=>0, // 4 - 'SOCITDEDROITBELGE'=>0, // 4 - 'SADIRECCONSEILDESURVEIL'=>0, // 4 - 'SOCITANONYMECOOPRATIVEDEPRODUCTIONDHLMCONSEIL'=>0, // 4 - 'SACONSEILDADMINISTRATIONDHLM'=>0, // 5 - 'SOCITDEDROITBRITANNIQUE'=>0, // 4 - 'SAMONGASQUE'=>0, // 4 - 'SCOPSARLACAPITALVARIABLE'=>0, // 4 - 'SRLAAU'=>0, // 4 - 'SASD'=>0, // 9 - 'SARCL'=>0, // 4 - 'SICAANONYMEDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 4 - 'CENTREDAFFAIREEUROCARABESRUEFRBAULT'=>0, // 4 - 'SKPRL'=>0, // 5 - 'RLCV'=>0, // 4 - 'UNIONECONSOCSARLCAPITALVARIABLE'=>0, // 4 - 'GAF'=>0, // 4 - 'SOCITRESPONSABILITLIMITEASSOCIUNIQUEASSOCIUNIQUE'=>0, // 7 - 'UNIONDECOOPRATIVESLAITIRES'=>0, // 4 - 'SOCITCOOPRATIVECAPITALETPERSONNELVARIABLESCOOPRATIVE'=>0, // 5 - 'SCKC'=>0, // 4 - 'SCIMMOBILIREDECONSTRUCTIONVENTE'=>0, // 5 - 'SOCIETEDINTERETCOLLECTIFAGRICOLESOUSFORMEDESAS'=>0, // 4 - 'CRDITMUTUELCOOPRATIVE'=>0, // 4 - 'SAEC'=>0, // 4 - 'SARLE'=>0, // 5 - 'SAVCOOPRATIVEDEBANQUEPOPULAIRECAPITALVARIABLE'=>0, // 4 - 'SASCAPITALVARIABLEETASSOCIUNIQUE'=>0, // 5 - 'SASUNIPERSONNELLECAPITALVARIABLE'=>0, // 3 - 'STECOOPERATIVERESPLIMITEE'=>0, // 3 - 'UNIONDECRDITMARITIMEMUTUEL'=>0, // 3 - 'EL'=>0, // 3 - 'SCDINTRTCOLLECTIFAGRICOLE'=>0, // 3 - 'EURLCV'=>0, // 3 - 'STECOOPERATIVEDEPRODUCTIONANONYMEACAPITALVARIABLE'=>0, // 3 - 'SOCITCOOPRATIVEDEPRODUCTIONFORMEANONYMEETCAPITALVARIABLE'=>0, // 4 - 'SCCACAPITALVARIABLE'=>0, // 3 - 'SCSCAPITALVARIABLE'=>0, // 3 - 'SCCPV'=>0, // 3 - 'SOCIETECOOPERATIVEDEPRODUCTIONANONYME'=>0, // 3 - 'SACOOPRATIVEOUVRIREDEPRODUCTIONETDECRDIT'=>0, // 3 - 'ETABLISSEMENTPUBLICETRGIE'=>0, // 3 - 'ASSOCIATIONRGIEPARLALOI'=>9220, // 3 - 'SASPDIRECTOIRE'=>0, // 3 - 'SELUARL'=>0, // 7 - 'SOCITREPONSABILITLIMITE'=>0, // 3 - 'SOCITANONYMYECONSEILDADMINISTRATIONDHLM'=>0, // 3 - 'SARLEURLACAPITALVARIABLE'=>0, // 3 - 'CUMAC'=>0, // 3 - 'CAISSEDERASSURANCESMUTUELLESAGRICOLES'=>0, // 3 - 'SCG'=>0, // 6 - 'SCOPRESPONSABILITLIMITEETCAPITALETPERSONNELVARIABLES'=>0, // 3 - 'PERSONNEMORALEAGENTCIAL'=>0, // 3 - 'SOCITCOOPRATIVEFORMEANONYME'=>0, // 3 - 'UKACV'=>0, // 5 - 'SARLCAPITALVARIABLEENDISSOLUTION'=>0, // 3 - 'SARLCOOPRATIVEDINTRTCOLLECTIFAGRICOLECAPITALVARIABLE'=>0, // 3 - 'LOTISSEMENTSODEGSECCAF'=>0, // 3 - 'SICARL'=>0, // 4 - 'SELARLASSCIUNIQUE'=>0, // 3 - 'SOCITCOOPRATIVERESPONSABILITLIMITETCAPITALVARIABLE'=>0, // 3 - 'SCEAPARTICULIRE'=>0, // 3 - 'CONFDRATION'=>0, // 3 - 'SOCITCIVILEDEPATRIMOINE'=>0, // 3 - 'SOCITCOOPRATIVEMARITIMECIVILECAPITALETPERSONNELVARIABLES'=>0, // 3 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFAGRICOLEANONYME'=>0, // 3 - 'SASCOOPRATIVECAPITALVARIABLE'=>0, // 3 - 'SOCITSIMPLIFIE'=>0, // 3 - 'SOCIETEARESPONSABILITELIMITEEAGRICOLEDEFAMILLE'=>0, // 3 - 'SOCITRESPONSABILITLIMITECOOPRATIVECAPITALETPERSONNELVARIABLES'=>0, // 4 - 'SOCIETEANONYMECOOPERATIVEDECOMMERCANTSDETAILLANTSACAPITALVARIABLE'=>0, // 3 - 'ASSOCIATIONDCLARE'=>9220, // 3 - 'SCPDHUISSIERSDEJUSTICE'=>0, // 3 - 'SARLCOOPRATIVEDECRDIT'=>0, // 3 - 'SOCITCOOPRATIVEDECRDITCAPITALVARIABLEETRESPONSABITLIMITE'=>0, // 3 - 'ASSSOCIATION'=>0, // 3 - 'SADECONOMIEMIXTELOCALE'=>0, // 3 - 'SOCITCIVILEDECONSTRUCTIONGESTION'=>0, // 3 - 'SACOOPRATIVEDHLMCAPITALVARIABLE'=>0, // 3 - 'SOCIETEANONYMEDHLMACONSEIL'=>0, // 3 - 'SCCOOPDECONSTRUCTIONPERSONNELETCAPITALVARIABLES'=>0, // 3 - 'UNIONCOOPERATIVEAGRICOLE'=>0, // 3 - 'SICADIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 3 - 'SOCITCIVILEPROFESSIONNELLEDEDIRECTEURSDELABORATOIRESDANALYSESMDICALES'=>0, // 3 - 'SCISOCITENLIQUIDATIONAMIABLE'=>0, // 3 - 'SCK'=>0, // 3 - 'SANATIONALISECONSEILDADMINISTRATION'=>0, // 3 - 'SOCITAGRICOLEDEFAMILLE'=>0, // 3 - 'SOCITCIVILECOOPRATIVEDECONSOMMATIONCAPITALVARIABLE'=>0, // 3 - 'SCPDINFIRMIERS'=>0, // 3 - 'SARLDECOOPRATIVECAPITALVARIABLE'=>0, // 3 - 'SOCITCIVILEASSOCIUNIQUE'=>0, // 5 - 'SOCITCOOPRATIVEDEBANQUEPOPULAIRECAPITALVARIABLE'=>0, // 3 - 'SCDEPATRIMOINE'=>0, // 3 - 'SCOPCAPITALETPERSONNELVARIABLES'=>0, // 3 - 'SOCITENCOMMANDITEPARACTIONSMEMBREDELACEE'=>0, // 3 - 'SCDEPRODUCTIONANONYMECAPITALVARIABLE'=>0, // 3 - 'SACOOPRATIVEDIRECTOIREETCONSEILDORIENTATIONETDESURVEILLANCE'=>0, // 3 - 'SOCITCOOPRATIVEARTISANALERESPONSABILITLIMITECAPITALVARIABLE'=>0, // 3 - 'SOCITANONYMECONSEILDADMINISTRATIONDHLM'=>0, // 3 - 'SOCIETEDEXERCICELIBERALENCOMMANDITEPARACTIONSSELACA'=>0, // 4 - 'SASUE'=>0, // 3 - 'SCOPFORMEANONYMEETCAPITALETPERSONNELVARIABLES'=>0, // 3 - 'STCOOPPRODUCARLCPVARIA'=>0, // 3 - 'SADIRECTOIREETCAPITALVARIABLE'=>0, // 3 - 'SCOPCONSEILDADMINISTRATION'=>0, // 5 - 'COOPRATIVEDECRDITCAPITALVARIABLERESPONSABILITSTATUTAIREMENTLIMITE'=>0, // 3 - 'SOCITDEXERCICELIBRALASSOCIUNIQUE'=>0, // 3 - 'SOCITCIVILEPATRIMONIALE'=>0, // 3 - 'SAPROFESSIONNELLE'=>0, // 3 - 'COOPRATIVEVINICOLE'=>0, // 3 - 'COOPERATIVEOUVRIEREDEPRODUCTIONSARL'=>0, // 3 - 'SARLDEPRESSEETCAPITALVARIABLE'=>0, // 3 - 'SACOOPRATIVEMARITIMECAPITALETPERSONNELVARIABLES'=>0, // 3 - 'SCCOOPRATIVEENTREMDECINS'=>0, // 3 - 'SAOUVRIRECOOPRATIVEPERSCAPITALVARIABLE'=>0, // 3 - 'SASI'=>0, // 4 - 'COOPRATIVEPROFESSIONNELLE'=>0, // 3 - 'UNIONDCONOMIESOCIALESASCOOPRATIVE'=>0, // 3 - 'SELARLDARCHITECTURE'=>0, // 3 - 'SOCITDINTRTCOLLECTIFAGRICOLECAPITALVARIABLE'=>0, // 3 - 'UNIONDCONOMIESOCIALESOCITCOOPRATIVERESPONSABILITL'=>0, // 3 - 'COOPERATIVECOMMERCIALEARLETACAPITALVARIABLE'=>0, // 3 - 'SAENLIQUIDATION'=>0, // 3 - 'STDEPARTICIPATIONSFINANCIRESDEPROFESSIONLIBRALEARL'=>0, // 3 - 'ATTR'=>0, // 3 - 'SEMDIRECTOIRE'=>0, // 3 - 'BQ'=>0, // 3 - 'SOCITCIVILECOOPRATIVEAGRICOLECOOPRATIVE'=>0, // 3 - 'SCPARL'=>0, // 4 - 'SCACCAPITALVARIABLE'=>0, // 3 - 'RGIE'=>0, // 3 - 'SOCITRESPONSABILITLIMITEASSOCIEUNIQUE'=>0, // 4 - 'SARLUNIPERSONNELLEASSOCIUNIQUE'=>0, // 4 - 'ENTREPRISENATIONALECARACTRECONOMIQUEDEDROITALGRIEN'=>0, // 3 - 'ENTREPRISEINDIVIDUELLE'=>0, // 3 - 'SASIMPLIFIE'=>0, // 3 - 'SELARLRESPONSABILITLIMITE'=>0, // 3 - 'SASPLURIPERSONNELLECAPITALVARIABLE'=>0, // 3 - 'SOCIETEDINTERETCOLLECTIFAGRICOLESICA'=>0, // 5 - 'STCOOPRATIVERESPONSABILITLIMITE'=>0, // 3 - 'COOPRATIVECAPITALVARIABLEETRESPONSABILIT'=>0, // 3 - 'SCAQUACOLE'=>0, // 3 - 'SOCITCOOPRATIVEDECONSOMMATION'=>0, // 3 - 'SARLDEPRESSECAPITALVARIABLE'=>0, // 3 - 'SOCITDEDROITNERLANDAIS'=>0, // 3 - 'ASSOCIATIONOUFONDATION'=>9220, // 3 - 'SOCITPROFESSIONNELLERGIEPARLALOIDUNOVEMBRE'=>0, // 3 - 'ARL'=>0, // 5 - 'SACOOPRATIVEETCAPITALVARIABLE'=>0, // 5 - 'COOPRATIVEDECRDITCAPITALVARIABLEETRESPONSABILITSTATUAIREMENTLIMITE'=>0, // 3 - 'SCIMMOBILIREAGRICOLE'=>0, // 3 - 'SOCIETECOOPERATIVEARESPLIMITEE'=>0, // 3 - 'SOCITDEPARTICIPATIONSFINANCIRESRESPONSABILITLIMITE'=>0, // 3 - 'SCFINANCIRE'=>0, // 3 - 'UCL'=>0, // 3 - 'SARLRESPONSABILITLIMITEASSOCIUNIQUE'=>0, // 3 - 'SCIDECONSTRUCTION'=>0, // 3 - 'SOCITCIVILEPROFESSIONNELLEDECOMMISSAIRESAUXCOMPTES'=>0, // 3 - 'SADEDROITBELGE'=>0, // 3 - 'SOCITRESPONSABILITLIMITESARL'=>0, // 3 - 'SACAPITALETPERSONNELVARIABLE'=>0, // 3 - 'SCDECONSTRUCTIONDIMMEUBLES'=>0, // 3 - 'BANQUECOOPERATIVEREGIEPARLALOINDU'=>0, // 3 - 'SARLASSOCIUNIQUEGM'=>0, // 3 - 'SKAC'=>0, // 3 - 'SOCITDEXPLOITATIONAGRICOLE'=>0, // 3 - 'ENTREPRISEAGRICOLERESPONSABILITLIMITE'=>0, // 3 - 'SCPROFESSIONNELLETITULAIREDUNOFFICENOTARIAL'=>0, // 3 - 'ELCA'=>0, // 3 - 'UNIONDECOOPRATIVESMARITIMESFORMEANONYME'=>0, // 3 - 'STECOOPERATIVEOUVRIEREDEPRODUCTION'=>0, // 3 - 'SOCITDPARGNE'=>0, // 3 - 'RUEDUMARS'=>0, // 3 - 'SCPARTICULIRESOCITENLIQUIDATION'=>0, // 3 - 'COOPRATIVECAPITALVARIABLE'=>0, // 3 - 'SARLASSOCIUNIQUESOCITENLIQUIDATIONAMIABLE'=>0, // 3 - 'UNIONDCONOMIESOCIALESOCITCOOPRATIVERESPONSABILITLIMITE'=>0, // 10 - 'SCOUVRIREDEPRODUCTION'=>0, // 3 - 'SICAFORMEANONYMEETCAPITALVARIABLE'=>0, // 3 - 'GROUPEMENTDINTRTPUBLIC'=>0, // 3 - 'ASSOCIATIONL'=>9220, // 5 - 'SCPROFESSIONNELLEDEGREFFIERSDETRIBUNAL'=>0, // 3 - 'SASDARCHITECTURE'=>0, // 3 - 'SCDE'=>0, // 3 - 'SARLL'=>0, // 4 - 'SADHLMCONSEILDADMINISTRATION'=>0, // 4 - 'SLURL'=>0, // 3 - 'UNIONDESOCITSCOOPRATIVESAGRICOLES'=>0, // 3 - 'EARLU'=>0, // 3 - 'CRPV'=>0, // 3 - 'PROFESSIONLIBRALE'=>0, // 3 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFAGRICOLEFORMEANONYME'=>0, // 3 - 'CUMAENCOMMUNCAPITALVARIABLE'=>0, // 3 - 'SCOPRESPONSABILITLIMITETCAPITALVARIABLE'=>0, // 5 - 'SARLUNIPERSONNEL'=>0, // 3 - 'SCPROFESSIONNELLEDECHIRURGIENDENTISTES'=>0, // 3 - 'FDRATIONRGIONALE'=>0, // 3 - 'SOCITCOOPRATIVEDEPRODUCTIONCAPITALVARIABLEETRESPONSABILITLIMITE'=>0, // 3 - 'SARLSTECOOPERATIVEOUVRIEREDEPRODUCTION'=>0, // 3 - 'SOCITDEXERCICELIBRALRESPONSABILITLIMITECAPVARASSOCIUNIQUE'=>0, // 3 - 'STEDEXERCICELIBERALPARACTIONSSIMPLIFIEE'=>0, // 3 - 'SACOOPRATIVEDINTRTCOLLECTIFAGRICOLECONSEILDADMICAPITALVARIABLE'=>0, // 3 - 'ASSOCIATIONRGIEPARLALOIDU'=>9220, // 3 - 'SCMSOCITENLIQUIDATION'=>0, // 5 - 'SADEPRESSE'=>0, // 3 - 'SACONSEILDADMINISTRATIONSOCITENLIQUIDATION'=>0, // 3 - 'SCDECONSTRUCTIONVENTESOCITENLIQUIDATION'=>0, // 3 - 'SOCITANONYMESPORTIVEPROFESSIONNELLECONSEILDADMINISTRATION'=>0, // 3 - 'SI'=>0, // 4 - 'SCFONCIRE'=>0, // 3 - 'COOPRATIVEOUVRIREDEPRODUCTIONRESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 5 - 'RR'=>0, // 3 - 'SASUNIQUE'=>0, // 3 - 'SCN'=>0, // 5 - 'SACOOPRATIVECAPITALVARIABLEETCONSEILDESURVEILLANCE'=>0, // 3 - 'ASSOCATION'=>0, // 3 - 'SARLASSSOCIUNIQUE'=>0, // 3 - 'SASPORTIVEPROFESSIONNELLEDIRECTOIREETCONSEIL'=>0, // 3 - 'SOCITPARACTIONSSIMPLIFIEDARCHITECTURE'=>0, // 3 - 'SACOOPRATIVEDINTRTCOLLECTIFPOURLACCESSIONLAPROPRIT'=>0, // 3 - 'SAU'=>0, // 3 - 'SCDECONSTRUCTIONVENTEETDEGESTION'=>0, // 3 - 'SOCITCOOPRAITVEDINTRTCOLLECTIFRESPONSABILITLIMITE'=>0, // 3 - 'SARLKCV'=>0, // 4 - 'RUEDUNOVEMBRE'=>0, // 4 - 'SARLDEXERCICELIBRALASSOCIUNIQUE'=>0, // 3 - 'SOCITCOOPRATIVEDINTRETCOLLECTIF'=>0, // 3 - 'SOCITANONYMECOOPRATIVEDECONSOMMATIONCONSEILDADMINISTRATION'=>0, // 3 - 'SOCIETEANONYMECOOPERATIVEMARITIMEACAPITALETPERSONNELVARI'=>0, // 3 - 'SCLAITIRE'=>0, // 3 - 'INSTITUTIONRGIEPARLESLOISDESAOTETDCEMBRE'=>0, // 2 - 'SADHABITATIONLOYERSMODRS'=>0, // 2 - 'SCPARLCAPITALVARIABLE'=>0, // 2 - 'SOCITCIVILEPROFESSIONNELLEDAVOCAT'=>0, // 2 - 'ASSOCIATIONS'=>9220, // 2 - 'FEU'=>0, // 2 - 'SADHABITATIONDELOYERMODR'=>0, // 2 - 'SCDEDROITCOMMUN'=>0, // 2 - 'SOCIETEDINVESTISSEMENTACAPITALVARIABLEDACTIONNARIATSALARIESSICAVAS'=>0, // 2 - 'SCDECOSNTRUCTIONVENTE'=>0, // 2 - 'UNIONDESSOCIETESCOOPERATIVESAGRICOLESACAPITALETPERSONNEL'=>0, // 2 - 'SOCITDEDROITDANOIS'=>0, // 2 - 'COOPRATIVEDECONSOMMATIONFORMEANONYMEETCAPITALVARIABLE'=>0, // 2 - 'SARLCOOPOUVRIREPRODUCTIONCRDIT'=>0, // 3 - 'SOCITCOOPRATIVERESPONSABILITLIMITCAPITALVARIABLE'=>0, // 2 - 'SADHLMCONSEIL'=>0, // 2 - 'DE'=>0, // 2 - 'STECOOPDEPRODUCTIONARESPONSABILITELIMITEE'=>0, // 2 - 'SCDECONSTRUCTIONVENTELOIDETITRE'=>0, // 3 - 'GIEC'=>0, // 2 - 'COP'=>0, // 3 - 'SCICARL'=>0, // 2 - 'SACOOPRATIVEINTRTCOLLECTIFDHLMDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 4 - 'PASCAL'=>0, // 2 - 'ADMINISTRATION'=>0, // 2 - 'SOCITDCONOMIEMIXTELOCALE'=>0, // 2 - 'SCEASOCITENLIQUIDATION'=>0, // 2 - 'SSARLASSOCIUNIQUE'=>0, // 3 - 'SARLLIMITEASSOCIUNIQUE'=>0, // 3 - 'SCAICAC'=>0, // 2 - 'SAROL'=>0, // 2 - 'COOPRATIVEOUVRIREDEPRODUCTIONCAPITALVARIABLE'=>0, // 2 - 'SARLARTISANALE'=>0, // 2 - 'SOCIETECOOPERATIVEOUVRIEREDEPRODUCTIONSARLACAPITALVARIABLE'=>0, // 2 - 'SNCSOCITENLIQUIDATION'=>5202, // 3 - 'SOCITPARACTIONSSIMPLIFIECAPITALVARIABLEASSOCIUNIQUE'=>0, // 2 - 'SOCITCOOPRATIVEAYANTLAFORMEDESOCITANONYME'=>0, // 2 - 'SCDEXPLOITATIONAGRICOLERESPONSABILITLIMITE'=>0, // 2 - 'STECOOPERATIVEDEPRODUCTIONANONYME'=>0, // 2 - 'ETSPUBLICINDETCIALEPIC'=>0, // 2 - 'SOCITANONYMECOOPRATIVE'=>0, // 2 - 'SCICARESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 2 - 'SADIRECTOIREETCONSEILDUSURVEILLANCE'=>0, // 2 - 'SARLASSOCIUNIQUEENLIQUIDATIONAMIABLE'=>0, // 4 - 'SOCITCCIVILE'=>0, // 2 - 'SELARLDEMDECINS'=>0, // 2 - 'EURLUNIPERSONNELLE'=>0, // 2 - 'SOCITCOOPRATIVEDEDROITBELGE'=>0, // 2 - 'SCPARTICIPATIONOUVRIREETCAPITALVARIABLE'=>0, // 2 - 'SCDECONSTRCUTIONVENTE'=>0, // 2 - 'SARLCOOPRATIVEDINTRTCOLLECTIFCAPITALVARIABLE'=>0, // 2 - 'SARLDEDROITHONGROIS'=>0, // 2 - 'SAELFORMEANONYMEDEGOMTRESEXPERTS'=>0, // 2 - 'DPARTEMENT'=>0, // 2 - 'COOPERATIVEARTISANALEACONSEIL'=>0, // 2 - 'SOCITDEXERCICELIBRALUNIPERSONNELLERESPONSABILITLIMITECAPVAR'=>0, // 2 - 'SELAL'=>0, // 3 - 'COOPAGRICOLEACAPITALVARIABLE'=>0, // 2 - 'SPRL'=>0, // 2 - 'COOPRATIVERESPONSABILITLIMITE'=>0, // 2 - 'SARLCOOPRATIVEDEPRODUCTIONETCAPITALVARIABLE'=>0, // 3 - 'ETABLISSEMENTPUBLICFONCIER'=>0, // 2 - 'INSTITUTIONRGIEPARLESARTICLESLETSUIVANTSDUCODEMONTAIREETFINANCIER'=>0, // 2 - 'SASDARCHITECTURECAPITALVARIABLE'=>0, // 2 - 'SOCITCIVILEPROFESSIONNELLEDEDENTISTES'=>0, // 2 - 'SOCITCOOPRATIVEFORMEANONYMEETCAPITALVARIABLE'=>0, // 4 - 'SASDIRECTOIRE'=>0, // 2 - 'ASSOCIATIONLOIDUERJUILLET'=>9220, // 2 - 'LOTISSEMENTSODEGSECTIONCAF'=>0, // 2 - 'SCDECHASSE'=>0, // 2 - 'SOCITANONYMEDEDROITSUISSE'=>0, // 2 - 'SARLPERSONNELETCAPITALVARIABLES'=>0, // 2 - 'SOCITCIVILEDECONSTRUCTIONDIMMEUBLES'=>0, // 2 - 'SACOOPRATIVEARTISANALEETCAPITALVARIABLE'=>0, // 3 - 'TABLISSEMENTPUBLICDOTDELAUTONOMIEFINANCIRE'=>0, // 2 - 'SCPROFESSIONNELLEDEGOMTRESEXPERTS'=>0, // 2 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFAGRICOLEANONYMECAPITALVARIABLE'=>0, // 2 - 'SABP'=>0, // 2 - 'SFA'=>0, // 2 - 'SOCITCOOPRATIVEOUVRIREDEPRODUCTIONCAPITALVARIABLE'=>0, // 2 - 'SCALAITIRE'=>0, // 2 - 'UNIONDCONOMIESOCIALESACAPITALVARIABLE'=>0, // 2 - 'SARLA'=>0, // 2 - 'SOCIETEANONYMEADIRECTOIRECONSEILDESURVEILLANCE'=>0, // 2 - 'EXPAGRICOLEARESPONSABILITELIMITEE'=>0, // 2 - 'SURL'=>0, // 2 - 'SACOOPRATIVEPERSONNELLECAPITALVARIABLE'=>0, // 2 - 'SOCITDESCARRIRESDEBEVENAIS'=>0, // 2 - 'EAURLASSOCIUNIQUE'=>0, // 2 - 'SOCITCOOPRATIVEDEPRODUCTIONANONYMEETCAPITALVARIABLE'=>0, // 2 - 'SOCITCOOPRATIVEDECRDITCAPITALVARIABLEARL'=>0, // 2 - 'SELARLDEPHARMACIENSDOFFICINE'=>0, // 2 - 'JOL'=>0, // 2 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFARLCAPITALVAR'=>0, // 2 - 'SADHABITATIONSLOYERMODR'=>0, // 2 - 'ASSOCIATIONSLOI'=>9220, // 2 - 'SCDEPRODUCTIONRESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 2 - 'FONDATIONRECONNUEDUTILITPUBLIQUESUIVANTDCRETDUMINISTREDELINTRIEURENDATEDEERAVRIL'=>0, // 2 - 'SCZ'=>0, // 2 - 'SCPR'=>0, // 2 - 'CAISSEDECRDITAGRICOLEMUTUEL'=>0, // 2 - 'SOCITPARACTIONSSIMPLIFI'=>0, // 2 - 'SACOOPRATIVEDINTRTCOLLECTIFAGRICOLECAPITALVARIABLE'=>0, // 2 - 'SICAVFORMEANONYME'=>0, // 2 - 'SARM'=>0, // 2 - 'SOE'=>0, // 2 - 'SARLDEDROITBRITANNIQUE'=>0, // 2 - 'COOPERATIVECONSOMMATIONARESPONSABILITELIMITEE'=>0, // 2 - 'SADIRECTOIRECONSEILDESURVEILLANCEETCAPITALVARIABLE'=>0, // 4 - 'SGCV'=>0, // 2 - 'SARLASSCOIUNIQUE'=>0, // 2 - 'SARLCAPITALVARIABLESOCITENDISSOLUTION'=>0, // 2 - 'COOPRATIVEANONYME'=>0, // 2 - 'SACOOPRATIVECAPITALETPERSONNELSVARIABLES'=>0, // 2 - 'SOCITDASSURANCECARACTREMUTUEL'=>0, // 2 - 'ENTREPRISEUNIPERSONNELLERESPONSABILITLIMITESARLASSOCIUNIQUE'=>0, // 2 - 'SOCITDEDROITANGLAISFAISANTAPPELPUBLICLPARGNEPUBLICLIMITEDCOMPANY'=>0, // 2 - 'EARLUNIPERSONNELLE'=>0, // 3 - 'SICACOOPRATIVE'=>0, // 2 - 'EURLCAPITALVARIABLE'=>0, // 2 - 'ASSOCIARION'=>9220, // 2 - 'SDI'=>0, // 2 - 'SOCITDEDROITMONEGASQUE'=>0, // 2 - 'SOCITCOOPRATIVEDEPRODUCTIONRESPONSABILITLIMITECAPITALETPERSONNELVARIABLES'=>0, // 2 - 'STEANONYMEADIRECTOIREETCONSEILDORIENTATIONSURVEILLANCE'=>0, // 2 - 'COOPERATIVEOUVRIEREDEPRODUCTIONSA'=>0, // 2 - 'SOCIETEANONYMECOOPERATIVEDEPRODUCTIONDHLMACONSEIL'=>0, // 2 - 'COOPERATIVEDUTILISATIONDEMATERIELAGRICOLECUMA'=>0, // 2 - 'CUMAENCOMMUNETCAPITALVARIABLE'=>0, // 2 - 'STEANONYMEACONSEILDESURVEILLANCEETDIRECTOIRE'=>0, // 2 - 'SOCITDEPARTICIPATIONSFINANCIRERESPONSABILITLIMITE'=>0, // 2 - 'SOCITCOOPRATIVEANONYMEDINTRTCOLLECTIFAGRICOLECOOPRATIVE'=>0, // 2 - 'SARLDECOOPRATIVE'=>0, // 2 - 'SCPROFESSIONNELLEDAVOCATSFORMECOOPRATIVE'=>0, // 2 - 'SOCIETECOOPERATIVEARTISANALEARESPONSABILITELIMITEEACAPITA'=>0, // 2 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFAGRICOLEPARACTIONSSIMPLIFIES'=>0, // 2 - 'SOCITPARACTIONMEMBREDELUE'=>0, // 2 - 'SCICRESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 2 - 'SARLASSOCIUNIQUESARL'=>0, // 4 - 'SADECONSTRUCTIONVENTE'=>0, // 3 - 'SOCITANONYMEPARRESPONSABILITLIMITE'=>0, // 2 - 'SARLPLURIPERSONNEL'=>0, // 2 - 'SOCITDEXERCICELIBRALPARACTIONSSIMPLIFIECAPITALVARIABLE'=>0, // 2 - 'ENTREPRISEUNIPERSONNELLERESPONSABILITLIMITEETASSOCIUNIQUE'=>0, // 3 - 'SOCITENPARTICIPATIONDEXERCICECONJOINT'=>0, // 2 - 'SOCITDEDROITAMRICAIN'=>0, // 2 - 'SOCITCOOPRATIVEDETRAVAILLEURSANONYMES'=>0, // 2 - 'SELARLASSOCIUNIQIUE'=>0, // 2 - 'SCPDECOMMISSAIRESPRISEURS'=>0, // 3 - 'TABLISSEMENTPUBLICNATIONALCARACTREINDUSTRIELETCOMMERCIAL'=>0, // 2 - 'SOCIETECOOPERATIVECREDITCAPITALVARIABLEARL'=>0, // 2 - 'UNIONDECONOMIESOCIALESAADIRECTOIREETCONSEILDESURVEIL'=>0, // 2 - 'SCCOOPRATIVEPERSONNELETCAPITALVARIABLE'=>0, // 3 - 'ORGANISMEPROFESSIONNEL'=>0, // 2 - 'UNIONDCONOMIESOCIALESARLCOOPRATIVECAPITALVARIABLE'=>0, // 2 - 'SOCITCIVILEDECONSTRUCTIONVENTELOIDETITRE'=>0, // 2 - 'SICACIVILE'=>0, // 2 - 'SOCIETECOOPERATIVEDEPRODUCTIONSARL'=>0, // 2 - 'SANATIONALEDCONOMIEMIXTE'=>0, // 2 - 'SOCIETEPARACTIONSSIMPLIFIEESUNIPERSONNELLE'=>0, // 2 - 'SASDIRECTIONETCONSEILDESURVEILLANCE'=>0, // 2 - 'SDET'=>0, // 2 - 'SAKCPV'=>0, // 2 - 'SARLSSOCIUNIQUE'=>0, // 2 - 'SADHLMETCONSEIL'=>0, // 2 - 'BANQUECOOPRATIVESADIRECTOIREETCONSEILDESURVEILLANCEDNOMMCONSEILDORIENTATIONETD'=>0, // 2 - 'SARLDEDROITESPAGNOL'=>0, // 2 - 'SCPDEMDECINS'=>0, // 2 - 'SOCITDINVESTISSEMENTSCAPITALVARIABLEETCONSEILDADMINISTRATION'=>0, // 3 - 'S'=>0, // 3 - 'SAMEMBREDELEU'=>0, // 2 - 'SARLCOOPRATIVECAPITALETPERSONNELVARIABLES'=>0, // 2 - 'SCCOOPRATIVEPERSONNELVARIABLE'=>0, // 2 - 'SASASSOCIUNIQUEETCAPITALVARIABLE'=>0, // 2 - 'SACOOPOUVRIEREDEPRODUCTIONCAPITALETPERSONNELVARIABLES'=>0, // 2 - 'UNIONDECONOMIESOCIALESTECOOPERATIVEPARACTIONSSIMPLIFIEE'=>0, // 2 - 'STECOOPINTERETCOLLECTAGRIC'=>0, // 2 - 'SCDEDROITTRANGER'=>0, // 2 - 'COOPDEPRODUCTIONARESPONSABILITELIMITECAPITALVARIABLE'=>0, // 2 - 'CAISSEREGIONALE'=>0, // 2 - 'SCOPFORMEANONYMEPERSONNELETCAPITALVARIABLES'=>0, // 4 - 'SARLCOOPERATIVEDECONSOMMATION'=>0, // 2 - 'SOCIETECOOPERATIVEAGRICOLEACAPITALCARIABLE'=>0, // 2 - 'SOCITCOOPRATIVEDECRDITRESPONSABILITSTATUTAIREMENT'=>0, // 2 - 'SOCITDEXERCICELIBRALPARACTIONSSIMPLIFI'=>0, // 2 - 'SACOOPRATIVEDECOMMERANTSDTAILLANTSETCAPITALVARIABLE'=>0, // 2 - 'SADCONOMIQUEMIXTELOCALE'=>0, // 2 - 'A'=>0, // 3 - 'SOCITDEDROITTANGER'=>0, // 2 - 'BANQUEPOPULAIRE'=>0, // 2 - 'CRDITMUTUELCOOPRATIVEETCAPITALVARIABLE'=>0, // 2 - 'SOCITDEDROITSUISSE'=>0, // 2 - 'SCDECONSTRUCTIONETDATTRIBUTION'=>0, // 2 - 'SCAYANTLAFORMEDESA'=>0, // 2 - 'SACOOPRATIVEDINTRTCOLLECTIFAGRICOLE'=>0, // 2 - 'SCOPRESPONSABILITLIMITEETDECRDITCAPITALVARIABLE'=>0, // 2 - 'SOCITDEDROITITALIEN'=>0, // 2 - 'SOCITDEPARTICIPATIONFINANCIREDEPROFESSIONLIBRALEDAVOCAT'=>0, // 2 - 'SICASARL'=>0, // 3 - 'SARLUK'=>0, // 2 - 'SCDECONSTRUCIONVENTE'=>0, // 3 - 'SAMEMBREDELAUE'=>0, // 2 - 'SOCITCOPRATIVEMARITIME'=>0, // 2 - 'RUEDUVIEUXMARCHAUXVINS'=>0, // 2 - 'SOCITANONYMEDECONSOMMATIONCONSEILDADMINISTRATION'=>0, // 2 - 'SARLCAPITALVARIABLESOCITENLIQUIDATION'=>0, // 2 - 'GIENONCOMMERCIAL'=>0, // 2 - 'SYNDICATDECOPROPRITAIRES'=>0, // 2 - 'SOCITDINTRETCOLLECTIFAGRICOLE'=>0, // 2 - 'GIEENLIQUIDATION'=>0, // 3 - 'UNIONDESYNDICATS'=>0, // 2 - 'SOCITCIVILEDETUDESETDERECHERCHES'=>0, // 2 - 'JACQUES'=>0, // 2 - 'SYNDICATAGRICOLE'=>0, // 2 - 'COOPRATIVEFORMEANONYMEETCAPITALVARIABLE'=>0, // 3 - 'SASOCITENLIQUIDATION'=>0, // 2 - 'SOCITDEDROITHOLLANDAISRESPONSABILITLIMITE'=>0, // 2 - 'SOCITCOOPRATIVEDEPRODUCTIONANONYMECAPITALVARIABLECOOPRATIVE'=>0, // 2 - 'SARLCCAPITALVARIABLE'=>0, // 2 - 'UCOA'=>0, // 3 - 'SOCIETECIVILEDEPLACEMENTCOLLECTIFIMMOBILIERACAPITALVARIABLE'=>0, // 2 - 'ASOCIATION'=>0, // 2 - 'SARLUNIPESONNELLE'=>0, // 2 - 'SADECOOPRATIVE'=>0, // 2 - 'SARLDEXERCICELIBREASSOCIUNIQUE'=>0, // 2 - 'SOCITDEDROITTRANGERDROITBRITANNIQUE'=>0, // 2 - 'SOCITCOOPRATIVEMARITIMERESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 3 - 'CRDITAGRICOLEMUTUEL'=>0, // 2 - 'SELAR'=>0, // 4 - 'SARRL'=>0, // 3 - 'SOCITENNONCOLLECTIF'=>0, // 2 - 'SCIEA'=>0, // 2 - 'SADCONOINEMIXTELOCALE'=>0, // 2 - 'SCOPARL'=>0, // 3 - 'SASCONSEILDESURVEILLANCE'=>0, // 2 - 'SCOPRESPONSABILITLIMITECAPITALETPERSONNELVARIABLES'=>0, // 2 - 'STECOOPERATIVEDINTERETCOLLECTIFARESPONSABILITELIMITEEACAPITALVARIABLE'=>0, // 2 - 'NONDFINIE'=>0, // 2 - 'SOCITCIVILEIMMOBILIREDEMARCHANDDEBIENS'=>0, // 2 - 'SOCIETEDEXERCICELIBERALARESPONSABILITELIMITE'=>0, // 2 - 'SACOOPRATIVEDEBANQUESCAPITALFIXE'=>0, // 2 - 'SADEDROITFRANAIS'=>0, // 2 - 'SADIRECTOIREETCONSEILDESURVEILANCE'=>0, // 3 - 'SCMPERSONNELETCAPITALVARIABLES'=>0, // 2 - 'EARLDEXERCICELIBRE'=>0, // 2 - 'SELARLDEXERCICELIBRAL'=>0, // 2 - 'GROUPEMENTFORESTIERRURAL'=>0, // 2 - 'SCOPDHLMANONYME'=>0, // 2 - 'SARLKA'=>0, // 3 - 'SOCITOUVRIREDEPRODUCTIONRESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 2 - 'SCCCCOOPRATIVE'=>0, // 2 - 'SCARESPONSABILITLIMITE'=>0, // 2 - 'PHILIPPE'=>0, // 2 - 'SARLASSOCIUNIQUESOCITTRANGRE'=>0, // 2 - 'SARLV'=>0, // 2 - 'ENTREPRISEUNIPERSONNELLEARESPONSABILITELIMITEEEURLETACAPITALVARIABLE'=>0, // 2 - 'SASZU'=>0, // 2 - 'SCPHLM'=>0, // 2 - 'SOCITDEPRESSERESPONSABILITLIMITECAPITALVARIABLE'=>0, // 2 - 'SACOOPRATIVEOUVRIREDEPRODUCTIONCAPITALETPERSONNELVARIABLES'=>0, // 2 - 'SOCITCIVILEPROFESSIONNELLEDAVOCATFORMECOOPRATIVE'=>0, // 2 - 'CA'=>0, // 2 - 'ASSOCIATIONLOIETASSIMILS'=>9220, // 2 - 'SOCITRESPONSABILITLIMITDEDROITMONGASQUE'=>0, // 2 - 'SOCITDEDROITETRANGERASSOCIUNIQUE'=>0, // 3 - 'SELASUNIPERSONNELLE'=>0, // 2 - 'SOCITCOOPRATIVEDINTRTAGRICOLE'=>0, // 2 - 'SARLASSOCIUNIQUESOCITENDISSOLUTION'=>0, // 2 - 'COOPRATIVEANONYMECAPITALVARIABLE'=>0, // 2 - 'SICAANONYMECAPITALVARIABLE'=>0, // 2 - 'INSTITUTIONRGIEPARLALOIDUAOT'=>0, // 2 - 'MAIRIE'=>0, // 2 - 'ARLASSOCIUNIQUE'=>0, // 2 - 'SADIRECTOIREAMPCSURVEILLANCE'=>0, // 2 - 'SAE'=>0, // 2 - 'SCOPFORMEANONYMECAPITALVARIABLE'=>0, // 2 - 'LEGRANDBLEU'=>0, // 2 - 'SAM'=>0, // 2 - 'SARLASSOCIUNIQUEL'=>0, // 2 - 'SOCITCOOPRATIVEPERSONNELETCAPITALVARIABLES'=>0, // 2 - 'STECOOPERATIVEDINTERETCOLLECTIFAGRICOLESICA'=>0, // 2 - 'SARLUNIPERSONNELLESPORTIVE'=>0, // 2 - 'SANONMEMBREDELAUE'=>0, // 2 - 'SCPROFESSSIONNELLE'=>0, // 2 - 'SCPDAVOUS'=>0, // 2 - 'SCPTITULAIREDUNOFFICEDEGREFFIERDETRIBUNALDECOMMERCE'=>0, // 3 - 'COMMUNAUTURBAINE'=>0, // 2 - 'SCICONSTRUCTIONVENTE'=>0, // 3 - 'SOCITCOOPRATIVEDEDROITSUISSE'=>0, // 2 - 'SELARLINTERBARREAUX'=>0, // 2 - 'ASSLOI'=>0, // 2 - 'SARLCOOPER'=>0, // 2 - 'SCPDARCHITECTES'=>0, // 2 - 'CSDECONSTRUCTIONVENTE'=>0, // 2 - 'SCDECONSTRUTIONVENTE'=>0, // 2 - 'SYNDICATINTERCOMMUNAL'=>0, // 2 - 'MICHEL'=>0, // 2 - 'SOCITDEDROITSTRANGERS'=>0, // 2 - 'GAECGROUPEMENTAGRICOLEDEXPLOITATIONENCOMMUN'=>0, // 2 - 'STEDECAUTIONMUTUELLELOIDUMARS'=>0, // 2 - 'RUEDEVELOTTE'=>0, // 2 - 'COOPRATIVEOUVRIREDEPRODUCTIONANONYME'=>0, // 2 - 'COOPRATIVEDECONSOMMATIONFORMEANONYME'=>0, // 2 - 'SOCITCIVILECOOPRATIVEDECRDITETCAPITALVARIABLE'=>0, // 2 - 'SOCITDINTRETCOLLECTIFAGRICOLEARL'=>0, // 2 - 'SCMV'=>0, // 2 - 'SCPROFESSIONNELLEDECHIRURGIENDENTISTE'=>0, // 2 - 'SOCITMUTUELLE'=>0, // 2 - 'SADCONOMIEMIXTELOCALEDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 2 - 'SARLUNIPERSONNELLECAPITALVARIABLE'=>0, // 2 - 'SOCITDEDROITPOLONAIS'=>0, // 2 - 'SOCITDINVESTISSEMENTSCONSEILETCAPITALVARIABLE'=>0, // 2 - 'SCOPDHLMCAPITALVARIABLE'=>0, // 2 - 'SENC'=>0, // 2 - 'ERAL'=>0, // 2 - 'SACOOPRATIVEDINTCOLLECTIFDACCESSIONALAPROPRIT'=>0, // 2 - 'SASUETCAPITALVARIABLE'=>0, // 2 - 'DOMINIQUE'=>0, // 2 - 'SCCOOPRATIVEDECONSOMMATIONCAPITALVARIABLE'=>0, // 2 - 'SOCITDEPLACEMENTPRPONDRANCEIMMOBILIRECAPVARIA'=>0, // 2 - 'STEANONYMEADIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 2 - 'COLA'=>0, // 2 - 'ETABLISSEMENTPUBLICADMINISTRATIFCOMMUNAL'=>0, // 2 - 'SREA'=>0, // 2 - 'SNCENDISSOLUTION'=>5202, // 3 - 'SCDEGESTIONDEBIENSIMMOBILIERS'=>0, // 2 - 'SCDECONSTUCTIONVENTE'=>0, // 2 - 'SCOPSACAPITALVARIABLE'=>0, // 2 - 'SOCITDEXERCICELIBRALFORMEANONYMESELEFACONSEILDADMINISTRATION'=>0, // 2 - 'SASOCITDHABITATIONDELOYERMODR'=>0, // 2 - 'BOULEVARDBERTHELOT'=>0, // 2 - 'CPVA'=>0, // 2 - 'CAISSE'=>0, // 2 - 'SERLARL'=>0, // 2 - 'CT'=>0, // 2 - 'STEDINTERETCOLAGRICOLESOUSFORMEDESARL'=>0, // 2 - 'SCDEGESTIONDEPORTEFEUILLES'=>0, // 2 - 'SAKS'=>0, // 2 - 'SOCITCIVILEAGRICOLECAPITALVARIABLE'=>0, // 2 - 'SOCIETECOOPERATIVEOUVRIEREDEPRODUCTIONSARL'=>0, // 2 - 'SOCITRESPONSABILITLIMITECOOPRATIVEARTISANALE'=>0, // 2 - 'SARLENDISSOLUTIONANTICIPE'=>0, // 1 - 'SANONMEMBREDELACE'=>0, // 1 - 'COMMUNAUTDECOMMUNES'=>0, // 1 - 'BERNARD'=>0, // 1 - 'SADHABITATIONLOYERMODRETCONSEIL'=>0, // 1 - 'EURLSARLCESSIONSDEPARTSSOCIALES'=>0, // 1 - 'SOCITAANONYME'=>0, // 1 - 'SACOOPRATIVEDEPRODUCTIONDEHLMDIRECTOIREETCONSEILDESURVEILLANCECAPITALVARIABLE'=>0, // 1 - 'SCPDEMANDATAIRESJUDICIAIRESLALIQUIDATIONDESENTREPRISES'=>0, // 1 - 'SICFA'=>0, // 1 - 'SARLASSOCUNIQUE'=>0, // 1 - 'SARLDEDROITANGLAIS'=>0, // 1 - 'SICAVETCONSEILDESURVEILLANCE'=>0, // 1 - 'SSARLASSOCIUNIQUEETCAPITALVARIABLE'=>0, // 1 - 'SOCITCOOPTATIVEAGRICOLE'=>0, // 1 - 'SOCITCIVILEDATTRIBUTIONDIMMEUBLESENJOUISSANCE'=>0, // 1 - 'SARLASSCIUNIQUE'=>0, // 2 - 'SCEXPLOITATIONAGRICOLE'=>0, // 1 - 'SAEMCA'=>0, // 1 - 'AFFAIREPERSONNELLEPROFESSIONLIBRALE'=>0, // 1 - 'CLCM'=>0, // 1 - 'SOCITDEDROITTRANGERCARYCHAMBERSPALKSTREETTORKAYROYAUMEUNI'=>0, // 1 - 'SARLASSOCIUNIQUEENTREPRISEUNIPERSONNELLERESPONSABILITLIMITE'=>0, // 1 - 'ENTREPRISEDINSERTIONIDEF'=>0, // 1 - 'SEC'=>0, // 1 - 'INTERCOMTLCOMCLOTLCOMINTERCOMDIFFUSION'=>0, // 1 - 'STPHANE'=>0, // 1 - 'SCIMMOBILIRE'=>0, // 1 - 'SOCITRESPONSABILITLIMITESSOCIUNIQUE'=>0, // 1 - 'SCDEGESTIONDEPATRIMOINE'=>0, // 1 - 'UNIONDESOCITCOOPRATIVESFORMEANONYMEDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 1 - 'SOCITCOOPRATIVEDEPRODUCTIONRESPONSABILITLIMITEECAPITALVARIABLE'=>0, // 1 - 'SOCITCIVILEDECONSTRUCITONVENTE'=>0, // 1 - 'ANDRES'=>0, // 1 - 'ETRUEGEORGESPAILLOT'=>0, // 1 - 'SARLACTIVITAUTORISEJUSQUAU'=>0, // 1 - 'SELEURLASSOCIUNIQUE'=>0, // 1 - 'SCDECONSTRUCTIONVENTECAPITALVARIABLE'=>0, // 1 - 'MARIELOUISE'=>0, // 1 - 'SCOPCAPITALETPERSONNELVARIABLE'=>0, // 1 - 'UNIONDCONOMIESOCIALESOCITCOOPRATIVEPARACTIONSSIMPLIFIE'=>0, // 1 - 'CUMACCOOPRATIVE'=>0, // 1 - 'COOPRATIVEARTISANALERESPONSABLITLIMITEETCAPITALVARIABLE'=>0, // 1 - 'SCPDAVOCATSCAUCHONCOURCELLELEFOURRIQUETMARTINS'=>0, // 1 - 'SOCITCOOPRATIVEOUVRIREDEPRODUCTIONETDECRDIT'=>0, // 1 - 'SARLAASSOCIERUNIQUE'=>0, // 1 - 'SACICAP'=>0, // 2 - 'GLOBALPHONE'=>0, // 1 - 'NONRENSEIGN'=>0, // 1 - 'SOCITCOOPRATIVEAGRICOLECAPITALVARIABLECOOPRATIVE'=>0, // 1 - 'GROUPEMENT'=>0, // 1 - 'SAA'=>0, // 1 - 'SOCITANONYMEPERSONNELVARIABLE'=>0, // 1 - 'SOCITENPARTICIPATIONENTREPERSONNESPHYSIQUES'=>0, // 1 - 'SARLUNIPERSONNELLERESPONSABILITLIMITE'=>0, // 1 - 'SCPACAPITALVARIABLE'=>0, // 2 - 'SOCITCOOPRATIVECAPITALVARIABLEETRESPONSABILITLIMITESARLCOOPRATIVEDETRANSPOR'=>0, // 1 - 'SCPARTICULIREAGRICOLEETARBORICOLE'=>0, // 1 - 'CCM'=>0, // 1 - 'LTD'=>0, // 1 - 'SR'=>0, // 1 - 'SOCITIMMOBILIREDECONSTRUCTIONVENTE'=>0, // 1 - 'SCANONYMEDINTRTCOLLECTIFAGRICOLE'=>0, // 1 - 'COOPERATIVEAGRICOLEFRUITIERE'=>0, // 1 - 'SOCITRESPONSABILITCOOPRATIVE'=>0, // 1 - 'STEDEPARTICIPATIONFINANCIEREDEPROFLIBERALEDAVOCATSSSFORMEDESAS'=>0, // 1 - 'STECOOPERATIVEDINTERETCOLLECTIFAGRICOLEANONYME'=>0, // 1 - 'SOCITANONYMECONSEILDADMNISTRATION'=>0, // 1 - 'SOCITCIVILECOOPRATIVECAPITALETPERSONNELVARIABLES'=>0, // 1 - 'SISA'=>0, // 1 - 'SARLASSOCIUNQUIE'=>0, // 1 - 'SOCITCOOPRATIVEOUVRIREDEPRODUCTIONRESPONSABILITLIMITECAPITALVARIABLE'=>0, // 1 - 'SCPDECOMMISSAIRESAUXCOMPTES'=>0, // 1 - 'SOCITDEDROITIRLANDAIS'=>0, // 1 - 'SACOOPRATIVEDEPRODUCTIONDHLMCONSEILDADMINISTRATIONETCAPITALVARIABLE'=>0, // 1 - 'SOCITCOOPRATIVEDECONSOMMATIONFORMEANONYMEETCAPITAL'=>0, // 1 - 'EARLENLIQUIDATIONAMIABLE'=>0, // 1 - 'SOCITCOOPRATIVEOUVRIRERESPONSABILITLIMITECAPITALVARIABLE'=>0, // 1 - 'SOCITDEXERCICELIBRALRESPONSABILITLIMITEASSOCIUNIQUEETCAPITALVARIABLE'=>0, // 1 - 'SICAANONYMEDIRECTOIRECAPITALVARIABLE'=>0, // 1 - 'STEANONYMEACONSEILDADMINISTRATION'=>0, // 1 - 'JBM'=>0, // 1 - 'SCPROFESSIONNELLEDEDENTISTES'=>0, // 1 - 'SOCIETECIVILEDINTERETCOLLECTIFAGRICOLESICA'=>0, // 2 - 'SRLARL'=>0, // 1 - 'LALONGINE'=>0, // 1 - 'SOCITASSOCIUNIQUE'=>0, // 1 - 'SCOOPPERSONNELVARIABLE'=>0, // 1 - 'SELARLDECHIRURGIENSDENTISTES'=>0, // 2 - 'SCPLACEMENTIMMOBILIER'=>0, // 1 - 'SSCDECONSTRUCTIONVENTE'=>0, // 1 - 'COMPAGNIERESPONSABILITDEDROITMAURICIEN'=>0, // 1 - 'SOCITRESPONSABILITLIMITEETSARLDEDROITALLEMAND'=>0, // 1 - 'UNIONDESOCITSCOOPRATIVESAGRICOLESCAPITALETPERSONNELVARIABLES'=>0, // 1 - 'SACCOOPRATIVE'=>0, // 1 - 'SOCITCOOPRATIVEFORMEANONYMEDINTRTCOLLECTIFAGRICOLE'=>0, // 1 - 'RGIEPUBLICITAIRE'=>0, // 1 - 'SCPATRIMONIALECAPITALVARIABLE'=>0, // 1 - 'SARLVENTEENGROSAUDTAILETIMPORTEXPORTDECHAUSSURESCOMMERCIALISATIONPARTOUSMOYENSD'=>0, // 1 - 'SCPROFESSIONNELDAVOCATS'=>0, // 1 - 'SARLRDUITEUNASSOCI'=>0, // 1 - 'INSTITUTIONRGIEPARLESARTICLESLETSUIVANTSDUCODEMONTAIRE'=>0, // 1 - 'SCOPARESPONSABILITLIMITEETCAPITAVARIABLE'=>0, // 1 - 'SCCMCAPITALVARIABLE'=>0, // 1 - 'SBASTIENDENIS'=>0, // 1 - 'BANQUECOOPRATIVESADIRECTOIREETCONSEILDESURVEILLANCEDNOMMECONSEILDORIENTATIONETDE'=>0, // 1 - 'SOCUTCOOPRATIVEAGRICOLE'=>0, // 1 - 'WILLY'=>0, // 1 - 'SOCITARESPONSABIITLIMITE'=>0, // 1 - 'SCCVDECONSTRUCTIONVENTE'=>0, // 1 - 'CABINET'=>0, // 1 - 'COOPRATIVEDINTRTCOLLECTIFRESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 1 - 'AVENUEDUGNRALDEGAULLE'=>0, // 1 - 'STESOMERSETHOUSETEMPLESTREETBIRMINGHAMBDN'=>0, // 1 - 'GAECASSOCIUNIQUE'=>0, // 1 - 'SOCITDEXERCICELIBRALPASACTIONSSIMPLIFIE'=>0, // 1 - 'NOUVELLESOCITRESPONSABILITLIMITERDUITEUNASSOCIUNIQUE'=>0, // 1 - 'GIEASSOCIUNIQUE'=>0, // 1 - 'STECIVILEDEXPLOITATIONAGRICOLEETVITICOLE'=>0, // 1 - 'SOCITCOOPRATIVEANONYMEDINTRTCOLLECTIFAGRICOLEETCAPITALVARIABLE'=>0, // 1 - 'SOCITEUROSRESPONSABILITLIMITE'=>0, // 1 - 'SOCITRESPONSABILITLIMITEASSOCIATIONUNIQUE'=>0, // 1 - 'STCOOPRATIVEDINTRTCOLLECTIFARLCAPITALVARIABLE'=>0, // 1 - 'SARLOUVRIREDEPRODUTIONCAPITALVARIABLE'=>0, // 1 - 'SAELLOCALE'=>0, // 1 - 'SADIRECTOIREETCONSEILDESURVEILLANCEASSOCIUNIQUE'=>0, // 1 - 'ENTREPRISEUNIPERSONNELLERESPONSABILIT'=>0, // 1 - 'SARI'=>0, // 1 - 'SARLASSOCIUNIPERSONNEL'=>0, // 1 - 'DIVERS'=>0, // 1 - 'SOCITDEXERCICELIBRALPARACTIONSSIMPLIFIS'=>0, // 1 - 'CPAVSCOP'=>0, // 1 - 'AMAR'=>0, // 1 - 'SRLERL'=>0, // 1 - 'CCPV'=>0, // 1 - 'EVDEUROVINSDISTRIBUTION'=>0, // 1 - 'SASCOOPRATIVEDINTERTCOLLECTIFAGRICOLE'=>0, // 1 - 'SOCITDEDROITTRANGERSOCITRESPONSABILITLIMITEASSOCIUNIQUE'=>0, // 1 - 'SOCITDINVESTISSEMENTCAPITALVARIABLEETCONSEILDADMINISTRATION'=>0, // 1 - 'SICP'=>0, // 1 - 'EDGARD'=>0, // 1 - 'UNIONDCONOMIESOCIALESOCITCOOPRATIVEANONYME'=>0, // 1 - 'SOCITANONYMEDECONOMIEMMIXTE'=>0, // 1 - 'SOCIETECOOPERATIVEDINTERETCOLLECTIFARESPONSABILITESLIMITEEETACAPITALVARIABLE'=>0, // 1 - 'SACONSEILDADMINISTRATIONETDIRECTOIRE'=>0, // 1 - 'IFD'=>0, // 1 - 'COOPERATIVEANONYMEACAPITALETPERSONNELVARIABLES'=>0, // 1 - 'STCOOPINTCOLLARLCAPITVA'=>0, // 1 - 'SOCITENCOMMANDITE'=>0, // 1 - 'SMSG'=>0, // 1 - 'EXPLOITATIONAGRICOLE'=>0, // 1 - 'COLLECTIVETERRITORIALE'=>0, // 1 - 'SCCVJS'=>0, // 1 - 'SCOPCAPITALVARIABLEETRESPONSABILITLIMITE'=>0, // 1 - 'SCGROUPEMENTFORESTIER'=>0, // 1 - 'SOCITUNIPERSONNELLEDINVESTISSEMENTRISQUE'=>0, // 1 - 'SACOOPRATIVEDINTRTSCOLLECTIFRESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 1 - 'SOCITCIVILEPROFESSIONNELLEDEMANDATAIRESJUDICIAIRESLALIQUIDATIONDESENTREPRISES'=>0, // 1 - 'SOCITCOOPATIVEARTISANALE'=>0, // 1 - 'VPI'=>0, // 1 - 'SOCITCOOPRATIVEDECRDITRESPONSABILITSTATUTAIREMENTLI'=>0, // 1 - 'SOCITCIVILEPARTICULIRERESPONSABILITLIMITE'=>0, // 1 - 'UNIONDEMUTUELLES'=>0, // 1 - 'GEA'=>0, // 1 - 'SCOPETRESPONSABILITLIMITECAPITALVARIABLE'=>0, // 1 - 'UNIONDECOOPRATIVECAPITALVARIABLE'=>0, // 1 - 'SICACOOPRATIVESAD'=>0, // 1 - 'EARA'=>0, // 1 - 'EURLENLIQUIDATION'=>0, // 1 - 'RUEDESAVERNE'=>0, // 1 - 'STECIVILEEXPLOITATIONAGRICOLEARESPONSABILITELIMITEE'=>0, // 1 - 'SOCITANONYMEETDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 1 - 'RUEMENGES'=>0, // 1 - 'STEPARACTIONSSIMPLIFIEEAVECCOMITESURVEILLANCE'=>0, // 1 - 'SOCITCOOPRATIVEDETRAVAILLEURSRESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 1 - 'SARLPERSONNELETCAPITALVARIABLE'=>0, // 1 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFAGRICOLERESPONSABILITLIMITECOOPRATIVE'=>0, // 2 - 'KTMULTISERVICES'=>0, // 1 - 'SCIDECONSTRUCTIONVENTEENLIQUIDATION'=>0, // 1 - 'COOPRATIVEAGRICOLEDLEVAGEETDINSMINATIONARTIFICIELLE'=>0, // 1 - 'SACIAP'=>0, // 1 - 'SADESOCITDHABITATIONLOYERMODR'=>0, // 1 - 'SOCITANONYMEDINTRTCOLLECTIFAGRICOLEDIRECTOIRE'=>0, // 1 - 'SADU'=>0, // 1 - 'KOPACPV'=>0, // 1 - 'SOCITCOOPRATIVECAPITALETPERSONNELVARIERGIEPARLIVREVCR'=>0, // 1 - 'SOCITCOOPRATIONDECRDITCAPITALVARIABLE'=>0, // 1 - 'SARLDEDROITNERLANDAIS'=>0, // 1 - 'SCPRLCAPITALVARIABLE'=>0, // 1 - 'PALKSTREETCARYCHAMBERSTORQUAYSOUTHDEVON'=>0, // 1 - 'SOCITDEPARTICIPATIONFINANCIREDEPROFLIBRALEDAVOCATSSOUSFORMESARL'=>0, // 1 - 'GEAC'=>0, // 2 - 'SCOOPRESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 1 - 'SCCOOPRATIVEDEMOYENS'=>0, // 1 - 'SOCITRESPONSABILITLIMITESARLDEFAMILLE'=>0, // 1 - 'SASUENDISSOLUTION'=>0, // 1 - 'SCIORANGE'=>0, // 1 - 'SADACS'=>0, // 1 - 'SOCITREDUITEUNAASSOCIUNIQUE'=>0, // 1 - 'SACOOPRATIVEDEPRODUCTIONDHLMCONSEILDESURVEILLANCEETDIRECTOIRECAPITALVARIABLE'=>0, // 2 - 'SOCITDEXERCICELIBRALRESPONSABILITLIMITEDEMDECINS'=>0, // 1 - 'COOPDEPRODUCTIONRESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 1 - 'FDRATIONDPARTEMENTALE'=>0, // 1 - 'EURLC'=>0, // 1 - 'SCCONSTITUEENVUEDELATTRIBUTIONDUNIMMEUBLE'=>0, // 1 - 'SCICCAPITALVARIABLE'=>0, // 1 - 'SCARESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 1 - 'SARLDEPRESSEASSOCIUNIQUE'=>0, // 1 - 'GROUPEMENTFORESTIERCAPITALVARIABLE'=>0, // 1 - 'SOCITUNIPERSONNELLERESPONSABILITLIMITEASSOCIUNIQUE'=>0, // 1 - 'SCSTENLIQUIDATION'=>0, // 1 - 'STCOOPRATIVEDEPRODUCTIONRESPLIMITECAPITALVARIABLE'=>0, // 1 - 'SOCITDCONOMIEMIXTESOCITEANONYMEDECONOMIEMIXTE'=>0, // 1 - 'SOCITCOOPRATIVECRDITCAPITALVARIABLERESPONSABILITLIMITE'=>0, // 1 - 'SCCOOPRATIVEDEMDECINS'=>0, // 1 - 'UNIONDECOOPRATIVESAGRICOLESCAPITALVARIABLEENDISSOLUTION'=>0, // 1 - 'SADECOOPRATIVEDECOMMERANTSDTAILLANTS'=>0, // 1 - 'SASUI'=>0, // 1 - 'RUEALPHONSEDAUDET'=>0, // 1 - 'GIF'=>0, // 1 - 'SARLVARIABLE'=>0, // 1 - 'EARLSOCITENLIQUITATION'=>0, // 1 - 'SCER'=>0, // 1 - 'SOCITCOOPRATIVEAGRICOLERGIONALEDAPPROVISIONNEMENT'=>0, // 1 - 'UARL'=>0, // 1 - 'SCDEBANQUE'=>0, // 1 - 'SCPASSOCIUNIQUE'=>0, // 1 - 'ASO'=>0, // 1 - 'SAIEMLOCALE'=>0, // 1 - 'SOCITCIVILEDEXPLOITATIONAGRICOLESCEA'=>0, // 1 - 'ZARL'=>0, // 1 - 'SOCITCIVILEDEGESTIONDEPATRIMOINE'=>0, // 1 - 'COOPRATIVEDUTILISATIONDEMATRIELAGRICOLEENCOMMUNCOOPRATIVE'=>0, // 2 - 'JEANLOUIS'=>0, // 1 - 'ATI'=>0, // 1 - 'SACCD'=>0, // 1 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFARLCAPITALVARIABLE'=>0, // 1 - 'SOCITRESPONSABILITLIMITESAS'=>0, // 1 - 'SCCAPITALVARIALBE'=>0, // 1 - 'SACAPITALETPERSONNELVARIABLECOOPRATIVE'=>0, // 2 - 'SASSIMPLIFIE'=>0, // 1 - 'SOCITCOOPRATIVEOUVRIREDEPRODUCTIONANONYMECAPITALVARIABLECOOPRATIVE'=>0, // 1 - 'TABLISSEMENTPUBLICDECOOPRATIONCULTURELLE'=>0, // 1 - 'SADEDROITNERLANDAIS'=>0, // 1 - 'BANQUECOOPRATIVESADIRECTOIREETCONSEILDESURVEILLANCEDNOMMCONSEILDORIENTATIONETDE'=>0, // 1 - 'STCOOPRATIVEDEPRODUCTION'=>0, // 1 - 'SADECOOPRATIVEDENTREPRISECAPITALVARIABLE'=>0, // 1 - 'SASSIMPLIFIEE'=>0, // 1 - 'SCEVPARTICULIRE'=>0, // 1 - 'SOCITDEXERCICELIBRALREPONSABILITLIMITE'=>0, // 1 - 'SSCAPITALVARIABLE'=>0, // 1 - 'SOCITCIVILEPROFESSIONNELLEASSOCIUNIQUE'=>0, // 1 - 'SACONSEIL'=>0, // 1 - 'SARLASSOCIUNIQUEETDEXERCICELIBRAL'=>0, // 1 - 'SARLUNIPERSONNELLEEURL'=>0, // 1 - 'SELARLASSOCUNIQUE'=>0, // 1 - 'CAISSEDERASSURANCEMUTUELLEAGRICOLE'=>0, // 1 - 'SCDECONSTRUCTIONVENTR'=>0, // 1 - 'SLCE'=>0, // 1 - 'SOCIETECOOPERATIVECREDITCAPITALVARIABLE'=>0, // 1 - 'SOCITCOOPRATIVEDEPRODUCTIONRESPONSABILITLIMITESCPRL'=>0, // 1 - 'SCPRESPONSABILITLIMITECAPITALVARIABLE'=>0, // 1 - 'MCMETAL'=>0, // 1 - 'RCSPOINTEPITRE'=>0, // 1 - 'ASSOCIATIONRELIGIEUSEETCULTURELLERGIESELONLALOIDE'=>9220, // 1 - 'GROUPEMENTFONCIERAGRICOLECAPITALVARIABLE'=>0, // 1 - 'ADS'=>0, // 1 - 'SOCITPARACTIONSSIMPLIFIEASSOCIEUNIQUE'=>0, // 1 - 'SSARL'=>0, // 1 - 'SCCONSTRUCTION'=>0, // 1 - 'SAENLIEUETPLACEDELASAS'=>0, // 1 - 'SCCR'=>0, // 1 - 'SADIRECTRICEETCONSEILDESURVEILLANCE'=>0, // 1 - 'STECIVILECOOPERATIVEAPERSONNELETKAPVARIABLE'=>0, // 1 - 'EDDINE'=>0, // 1 - 'EXPLOITATIONAGRICOLERESPONSABILITUNIPERSONNELLE'=>0, // 1 - 'SOCIETEPASACTIONSSIMPLIFIEEUNIPERSONNELLE'=>0, // 1 - 'SOCITANONYMECOOPRATIVEDECAUTIONMUTUELLE'=>0, // 1 - 'SKCICA'=>0, // 1 - 'SOCITCOOPRATIVEARTISANALERESPONSABILITELIMITE'=>0, // 1 - 'COOPRATIVEDECRDITCAPITALVARIABLEETARL'=>0, // 1 - 'RGIEMUNICIPALEAUTONOME'=>0, // 1 - 'SOCITCIVLE'=>0, // 1 - 'GICOBUTCOMMERCIAL'=>0, // 1 - 'SASF'=>0, // 1 - 'SRLU'=>0, // 1 - 'SCDHABITATION'=>0, // 1 - 'SOCITENDROITETRANGER'=>0, // 1 - 'SCIARIANE'=>0, // 1 - 'EUAR'=>0, // 2 - 'SARLDEFORMEUNIPERSONNELLE'=>0, // 1 - 'COOPRATIVEDEPRODUCTIONSARLCAPITALVARIABLE'=>0, // 1 - 'SCSOCITENDISSOLUTION'=>0, // 1 - 'SASRUEDUBARGY'=>0, // 1 - 'SARLASSOCIUNIQUELIMITE'=>0, // 1 - 'SOCITCIVILEDESMOYENS'=>0, // 1 - 'SOCITCOOPRATIVEMARITIMECAPITALVARIABLE'=>0, // 1 - 'ASR'=>0, // 1 - 'SARLASSOCIUNIQUEDARCHITECTURE'=>0, // 2 - 'CBA'=>0, // 1 - 'COOPRATIVEDUTILISATIONDEMATRIELAGRICOLECAPITALVARIABLE'=>0, // 1 - 'SCICFORMEANONYME'=>0, // 1 - 'EARLRDUITEUNASSOCI'=>0, // 1 - 'SACOOPRATIVECAPITALVARIABLEDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 1 - 'SOCITANONYMECOOPRATIVECOOPRATIVE'=>0, // 2 - 'SCCAC'=>0, // 1 - 'SCIDATTRIBUTIONETDACQUISITION'=>0, // 1 - 'SARLCAPITALLIBR'=>0, // 1 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFFORMEANONYMEETCAPITALVARIABLE'=>0, // 1 - 'SCIVILEAGRICOLE'=>0, // 1 - 'SECA'=>0, // 1 - 'FEUMONSIEUR'=>0, // 1 - 'SADIRECTOIREETCONSEILDORIENTATIONETSURVEILLANCE'=>0, // 1 - 'SAEMLOCALEBUTLUCRATIF'=>0, // 1 - 'SAP'=>0, // 1 - 'MAX'=>0, // 1 - 'SASDIRECTOIREETCONSEILDESURVEIVEILLANCE'=>0, // 1 - 'SACOOPRATIONDEPRODUCTIONDHLM'=>0, // 1 - 'SASACTIONNAIREUNIUQE'=>0, // 1 - 'LACHAPELLEDABONDANCE'=>0, // 1 - 'GIEGIEEUROPEN'=>0, // 1 - 'SAX'=>0, // 1 - 'EURLBRESSEORNEMENTS'=>0, // 1 - 'SCEALAITIRE'=>0, // 1 - 'SARLETSA'=>0, // 1 - 'PR'=>0, // 1 - 'SCPROFESSIONNELLEDADMINISTRATEURSJUDICIAIRES'=>0, // 1 - 'SOARL'=>0, // 1 - 'LESLIE'=>0, // 1 - 'ENTREPRISEUNIPERSONNELLERESPONSABILITLIMITE'=>0, // 1 - 'VRONIQUE'=>0, // 1 - 'SARA'=>0, // 1 - 'SARLDISSOLUTION'=>0, // 1 - 'SOCITRESPONSABILITLIMITERDUITEASSOCIUNIQUE'=>0, // 1 - 'BGRECUPTEMSAS'=>0, // 1 - 'SOCITDEPARGNEETDECRDITCAPITALVARIABLERESPONSABILITLIMITE'=>0, // 1 - 'SOCITCOOPRATIVERESPONABILITLIMITEETCAPITALVARIABLE'=>0, // 1 - 'EAR'=>0, // 1 - 'SCCL'=>0, // 1 - 'SACONSEILDESURVEILLANCETDIRECTOIRE'=>0, // 1 - 'SARLCAPITALVARIBLE'=>0, // 1 - 'SOCITRESPONSABILITLIMITENONMEMBREDELACEE'=>0, // 1 - 'SARLASSOCIUNIQUESARLUNIPERSONNELLE'=>0, // 1 - 'INSTITUTIONRGIEPARLESLOISETDU'=>0, // 1 - 'SACONSEILDADMINISTRTION'=>0, // 1 - 'DEUROS'=>0, // 2 - 'ARLMEMBREDELACEE'=>0, // 1 - 'ENTREPRISEUNIPERSONNELLERESPONSABILITLIMITEASSOCIUNIQUEUNIPERSONNELLE'=>0, // 1 - 'SARLASSOCIUNIQU'=>0, // 1 - 'SOCITCIVILECONSTITUEPOURLAVENTEDIMMEUBLES'=>0, // 1 - 'SCPARTICULIRECAPITALETPERSONNELVARIABLES'=>0, // 1 - 'COOPRATIVEAGRICOLEDESPRODUCTEURSDELARGIONPOITOUCENTREOUEST'=>0, // 1 - 'SARLASSICUUNIQUE'=>0, // 1 - 'SELARLUNIPERSONNEL'=>0, // 1 - 'SACAC'=>0, // 1 - 'SARLAGENCEDAFFAIRESETPLUSPARTICULIREMENTLAREPRSENTATIONETLENGOCEDETOUTESMARQUES'=>0, // 1 - 'SARLASSOCIUNIQUEDEPRESSE'=>0, // 1 - 'UNIONDESYNDICATSPROFESSIONNELSGROUPANTLESENTREPRISESINSCRITESAURPERTOIREDESMTIERSDANS'=>0, // 1 - 'GROUPEMENTFONCIERRURALCAPITALVARIABLE'=>0, // 1 - 'SOCITRRESPONSABILITLIMITEASSOCIUNIQUE'=>0, // 1 - 'SARLDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 1 - 'SACOOPRATIVEOUVERTEDEPRODUCTIONETDECRDIT'=>0, // 1 - 'SCIEEE'=>0, // 1 - 'SOCIETEPARACTIONSIMPLIFIEEUNIPERSONNELLE'=>0, // 1 - 'SARLMEMBREDELAUE'=>0, // 1 - 'LIE'=>0, // 1 - 'SOCITCIVILEDEPARTICIPATIONFINANCIREDEPROFESSIONLIBRALE'=>0, // 1 - 'SARLCONSTITUEDUNASSOCIEUNIQUE'=>0, // 1 - 'SOCITCOOPRATIVEDINTRETCOLLECTIFARLCAPITALVARIABLE'=>0, // 1 - 'SOCITCIVILEDINTRTCOLLECTIFAGRICOLECAPITALVARIABLE'=>0, // 1 - 'ASSOCIATIONPROFESSIONNELLEFDRATION'=>0, // 1 - 'SOCITCOOPRATIVEARTISANALERESPONSABILITLIMITECOOPRATIVE'=>0, // 1 - 'SCDEGESTIONDEPORTEFFEUILLE'=>0, // 1 - 'SACAPITALACTIONS'=>0, // 1 - 'SAIEM'=>0, // 1 - 'SOCITDINTRTCOLLECTIFAGRICOLECOOPRATIVESTCOOPRATIVEDINTRTCOLLECTIFAGRICOLEANONY'=>0, // 1 - 'SCDINTRTCOLLECTIFANONYME'=>0, // 1 - 'SASAVECCOMITSURVEILLANCE'=>0, // 1 - 'STECIVILECOOPDINTERETCOLLECTIFAGRICOLE'=>0, // 1 - 'SGABTPSARL'=>0, // 1 - 'SARLCAPITALVARIABLEASSOCIUNIQUE'=>0, // 1 - 'SELARLDEMDECINSRADIOLOGUES'=>0, // 1 - 'STEARESPONSABILITELIMITEEACAPITALVARIABLE'=>0, // 1 - 'SELARLDEGOMTRESEXPERTS'=>0, // 1 - 'SARLSOCITAASSOCIUNIQUE'=>0, // 1 - 'SOCITCIVILESCI'=>0, // 1 - 'CIE'=>0, // 1 - 'MABA'=>0, // 1 - 'SACOSACONSEILDADMINISTRATION'=>0, // 1 - 'EARLAVICOLE'=>0, // 1 - 'SCDECONSTRUCTIONVENRTE'=>0, // 1 - 'SARLDEXERCICELIBERAL'=>0, // 1 - 'SACOOPRATIVECONSEILDADMINISTRATIONETCAPITALVARIABLE'=>0, // 1 - 'SCDECONSTRUCTIONVENTELOIDETITREER'=>0, // 1 - 'SOCITDEPARTICIPATIONSFINANCIRESDEPROFESSIONLIBRALERESPONSABILIT'=>0, // 1 - 'SNCENCOURSDELIQUIDATION'=>5202, // 1 - 'SCPEA'=>0, // 2 - 'SCIPAROT'=>0, // 1 - 'SICASOUSFORMEDESAS'=>0, // 1 - 'SARLASOOCIUNIQUE'=>0, // 3 - 'SED'=>0, // 1 - 'SES'=>0, // 1 - 'SCIENCOURSDELIQUIDATION'=>0, // 1 - 'SOCITDEPARTICIPATIONFINANCIREDEPROFESSIONLIBRALEDAVOCATS'=>0, // 1 - 'SCOPREPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 1 - 'EARLPLURIPERSONNELLE'=>0, // 1 - 'SCPROFESSIONNELLEDELABORATOIREDANALYSESDEBIOLOGIEMDICALE'=>0, // 1 - 'SKCRL'=>0, // 1 - 'TABLISSEMENTPUBLICDECOOPRATIONINTERCOMMUNALE'=>0, // 1 - 'COOPRATIVEDECRDITCAPITALVARIABLEETRESPONSABILITLIMIT'=>0, // 1 - 'ABINFORMATIQUEDUCENTRE'=>0, // 1 - 'COMMERANT'=>0, // 1 - 'SOCITRDUITEUNASSOCIUNIQUE'=>0, // 1 - 'WOLFGANG'=>0, // 1 - 'SOCITRESPONSABILITLIMITERDUITEUNASSOCIUNIQUE'=>0, // 1 - 'SOCITCIVILEPARTICULIREDINVESTISSEMENT'=>0, // 1 - 'SARLMEMBREDUE'=>0, // 1 - 'MUTUALIT'=>0, // 1 - 'SOCITCAPITALETPERSONNELVARIABLES'=>0, // 1 - 'SALARL'=>0, // 2 - 'SOCITCIVILECOOPRATIVEDINTRTCOLLECTIFAGRICOLE'=>0, // 1 - 'SOCITDEDROITTRANGE'=>0, // 1 - 'SCDINTRTCOLLECTIFRESPONSABILITLIMITE'=>0, // 1 - 'HENRY'=>0, // 1 - 'COOPRATIVECAPITALVARIABLEETRESPONSABILITELIMITE'=>0, // 1 - 'SOCITCOMMERCIALERESPONSABILITLIMITEDEDROITTRANGER'=>0, // 1 - 'ALT'=>0, // 1 - 'SAEMIXTE'=>0, // 1 - 'SCCCAPITALVARIABLEETRESPONSABILITLIMITE'=>0, // 1 - 'SELARLPARACTIONSSIMPLIFIE'=>0, // 1 - 'GIEBUTLUCRATIF'=>0, // 1 - 'SADEDROITAUTRICHIEN'=>0, // 1 - 'SPASN'=>0, // 1 - 'CAISSELOCALEDECRDITMUTUELCAPITALVARIABLE'=>0, // 1 - 'CRDITMUTUELCAPITALVARIABLEETRESPONSABILITLIMITE'=>0, // 1 - 'SELAFADAVOCATS'=>0, // 1 - 'FRANCIS'=>0, // 1 - 'SCPROFESSIONNELLEDEMOYENS'=>0, // 1 - 'VILLE'=>0, // 1 - 'MJDMATHISFILS'=>0, // 1 - 'MUTUELLERGIEPARLESDISPOSITIONSDULIVREIIIDUCODEDELAMUTUALIT'=>0, // 1 - 'SOCITRESPONSABILITLIMITEUNIPERSONNEL'=>0, // 1 - 'SARLMCC'=>0, // 1 - 'SCCONSEILDADMINISTRATION'=>0, // 1 - 'SCOPRL'=>0, // 2 - 'SBJC'=>0, // 1 - 'GEPA'=>0, // 1 - 'SASUASSOCIATIONUNIQUE'=>0, // 1 - 'SARLPFR'=>0, // 1 - 'SOC'=>0, // 1 - 'UNIONDECOOPRATIVESMARITIMESFORMEANONYMEETCAPITALVARIABLE'=>0, // 1 - 'SCIDEMARCHANDDEBIENS'=>0, // 1 - 'SAIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 1 - 'SOCITANONYMEDCONOMIEMIXTESOCIETEANONYMEDECONOMIEMIXTES'=>0, // 1 - 'SCOPRESPONSABILITELIMITEETCAPITALVARIALBE'=>0, // 1 - 'SOCITCOOPERATIVECRDITCAPITALVARIABLEETRESPONSABILITLIMITE'=>0, // 1 - 'CUMACOOPRATIVEDUTILISATIONDEMATRIELAGRICOLEENCOMMUN'=>0, // 1 - 'LESPALES'=>0, // 1 - 'SARLCOOPRATIVEDINTRTCOLLECTIFAGRICOLE'=>0, // 1 - 'CORRADO'=>0, // 1 - 'SAEMETDIRECTOIRE'=>0, // 1 - 'SOCITRESPONSABILITLIMITEASSOCIUNIQUEUNIPERSONNELLE'=>0, // 2 - 'COOPRATIVESARLCAPITALVARIABLE'=>0, // 1 - 'ARTISAN'=>0, // 1 - 'ISABELLE'=>0, // 1 - 'SCARLCOOPRATIVE'=>0, // 2 - 'SARLASICIUNIQUE'=>0, // 1 - 'EXPLOITATIONAGRICOLEUNIPERSONNELLERESPONSABILITLIMITE'=>0, // 1 - 'CCA'=>0, // 1 - 'SOCITPRIVERESPONSABILITLIMITEDEDROITBELGE'=>0, // 1 - 'UNIONDECOOPERATIVESMARITIMESENANONYME'=>0, // 1 - 'SCICACC'=>0, // 1 - 'SAARLASSOCIUNIQUE'=>0, // 1 - 'RUEDUBOISROBINBOSSERVILLE'=>0, // 1 - 'SAZRL'=>0, // 1 - 'SEA'=>0, // 2 - 'SKICARL'=>0, // 1 - 'SOCITPARACTIONSSIMPLIFIECAPITALEUROS'=>0, // 1 - 'SCIDEPRESSE'=>0, // 1 - 'BANQUECOOPRATIVESOCITDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 2 - 'SOCITCOOPRATIVEDECRDITCAPITALVARIABLEETRESPONSABILITLIMITECOOPRATIVE'=>0, // 2 - 'UNIONDCONOMIESOCIALEANONYME'=>0, // 1 - 'UNIONDCONOMIESOCIALESARL'=>0, // 1 - 'SOCITDEDROITANGLAISFAISANTAPPELPUBLICLPARGNEPUBLICLIMITEDCOMPAGNY'=>0, // 1 - 'SOCITCOOPRATIVEDECRDITRESPONSABILITLIMITECAPITALVARIABLE'=>0, // 1 - 'SOCITCOOPRATIVEAGRICOLEETCAPITALVARIABLE'=>0, // 1 - 'SOCITANONYMECOOPRATIVEDEPRODUCTIONLOYERMODR'=>0, // 1 - 'TABLISSEMENTPUBLICINTERCOMMUNAL'=>0, // 1 - 'SOCITRESPONSABILITPARACTIONSDEDROITBRITANNIQUE'=>0, // 1 - 'AAS'=>0, // 1 - 'SACOOPRATIVEDINTRTCOLLECTIFDHABITATIONS'=>0, // 1 - 'CC'=>0, // 1 - 'SCPE'=>0, // 1 - 'SOCITCOOPRATIVEARTISANALE'=>0, // 1 - 'SCDEPORTEFEUILLES'=>0, // 1 - 'SCPROFESSIONELLEDENOTAIRES'=>0, // 1 - 'COMMUNAUTDAGGLOMRATION'=>0, // 1 - 'SOCITENNOMNOLLECTIF'=>0, // 1 - 'UNIONDECOOPRATIVESAGRICOLEPERSONNELETCAPITALVARIABLES'=>0, // 1 - 'SATLASSOCIUNIQUE'=>0, // 1 - 'SCDEPLACEMENTCOLLECTIFIMMOBILIER'=>0, // 1 - 'SPFLA'=>0, // 1 - 'SOCITCOOPRATIVEDEXPLOITATIONAGRICOLE'=>0, // 1 - 'SDEASSOCIUNIQUE'=>0, // 1 - 'SARLMENBREDELUE'=>0, // 1 - 'SASCOOPRATIVEDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 1 - 'SOCITCOOPRATIVEOUVRIREDEPRODUCTIONFORMEANONYME'=>0, // 1 - 'SARLDEDROITAMRICAIN'=>0, // 1 - 'SOCITCIVILECONSTRUCTIONVENTE'=>0, // 3 - 'COOPRATIVEAGRICOLERESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 2 - 'SARLDECOOPRATIVEOUVRIREDEPRODUCTION'=>0, // 1 - 'COOPRATIVEOUVRIREDEPRODUCTIONANONYMECAPITALETPERSONNELVARIABLECOOPRATIVE'=>0, // 1 - 'SCILAVENIR'=>0, // 1 - 'SKPRLCV'=>0, // 2 - 'SOCITDECAUTIONMUTUELLECAPITABLEVARIABLE'=>0, // 1 - 'SARLOUASSOCIUNIQUE'=>0, // 1 - 'SOCITRESPONSABILITLIMITEASSOCIUNQIUE'=>0, // 1 - 'SARLDEPRODUCTIONCAPITALVARIABLE'=>0, // 1 - 'EUARLASSOCIUNQIUE'=>0, // 1 - 'SEARESPONSABILITLIMITE'=>0, // 1 - 'TYRONE'=>0, // 1 - 'SCPROFESSIONNELLEDEVTRINAIRE'=>0, // 1 - 'SARLUNIPERSSONELLE'=>0, // 1 - 'SELALSASSOCIUNIQUE'=>0, // 1 - 'SICACOPPRATIVE'=>0, // 1 - 'LESCARABES'=>0, // 1 - 'SOCITRESPONSABILITLIMLITESARL'=>0, // 1 - 'GHISLAINE'=>0, // 1 - 'SARLENCOURSDEFORMATION'=>0, // 1 - 'SCEARLASSOCIUNIQUE'=>0, // 1 - 'SERALASSOCIUNIQUE'=>0, // 1 - 'ASSOCIAION'=>9220, // 1 - 'SCMC'=>0, // 1 - 'SOCITCOOPRATIVECAPITALETPERSONNEVARIABLERGIEPARLIVREVCR'=>0, // 1 - 'SCIRORO'=>0, // 1 - 'SARLCOOPRATIVEETCAPITALVARIABLE'=>0, // 2 - 'POURHOMMESFEMMESOUENFANTS'=>0, // 1 - 'RCSCOLMAR'=>0, // 1 - 'TANTENFRANCEQULTRANGERTLSURVEILLANCEVIDOSURVEILLANCEGARDIENNAGESCURITDESPERSO'=>0, // 1 - 'SOCITPARACTIONSSIMPLIFIASSOCIUNIQUE'=>0, // 1 - 'SOCITDEPARTICIPATIONSFINANCIRESDEPROFESSIONLIBRALERESPONSABILITLIMITEDAVOCATS'=>0, // 1 - 'ASS'=>0, // 1 - 'UNIONCOOPRATIVEAGRICOLESCAPITALVARIABLE'=>0, // 1 - 'PERSONNESPHYSIQUESEXERANTTITREINDIVIDUELOUINDPENDANT'=>0, // 1 - 'SARLCAPITALVARIALBE'=>0, // 1 - 'SRRL'=>0, // 1 - 'SMCE'=>0, // 1 - 'SARLSOCITUNIQUEASSOCIUNIQUE'=>0, // 1 - 'SOCITDEPARTICIPATIONFINANCIREDEPROFESSIONLIBRALE'=>0, // 1 - 'SCOPARLETCAPVARIABLE'=>0, // 1 - 'SOCITANONYMEDECONOMIEMIXTELOCALECONSEILDESURVEILLANCEETDIRECTOIRE'=>0, // 1 - 'RUESELLENIK'=>0, // 1 - 'SCADINTRTCOLLECTIFAGRICOLE'=>0, // 1 - 'SCCU'=>0, // 1 - 'SCIENCONSTRUCTIONVENTELOIDETITRE'=>0, // 1 - 'STECOOPERATIVEDINTERETCOLLECTIFARESPONSABILITELIMITEE'=>0, // 1 - 'SCDUCONSTRUCTIONVENTE'=>0, // 1 - 'ETABLISSEMENTPUBLICLOCALCARACTREINDUSTRIELETCOMMERCIAL'=>0, // 1 - 'SOCIETEDINTERETCOLLECTIFAGRICOLESICAENSARL'=>0, // 1 - 'SCGROUPEMENTPASTORALCAPITALVARIABLE'=>0, // 1 - 'ASSOCIAITONLOI'=>9220, // 1 - 'SELARLDENTREPRISEUNIPERSONNELLE'=>0, // 1 - 'SEARLRESPONSABILITLIMITE'=>0, // 1 - 'SCDEMOYENSUNIPERSONNELLE'=>0, // 1 - 'SOCITANONYMECAPITALETPERSONNELVARIABLECOOPRATIVE'=>0, // 1 - 'SCDEPLACEMENTSIMMOBILIERSCAPITALVARIABLE'=>0, // 1 - 'SOCITUNIPERSONNELLE'=>0, // 1 - 'SOCITCOOPRATIVEAGRICOLERESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 1 - 'GIEPERSONNELETCAPITALVARIABLES'=>0, // 1 - 'SCPROFEESSIONNELLE'=>0, // 1 - 'SOCITDEDROITTRANGERIMMATRICULEAURCS'=>0, // 1 - 'SOCITCIVILECONSTITUEENGROUPEMENTFORESTIER'=>0, // 1 - 'SCPRORESSIONNELLEDEVTRINAIRES'=>0, // 1 - 'COOPRATIVEDUTILISATIONDEMATRIELAGRICOLEENCOMMUNCAPITALVARIABLE'=>0, // 1 - 'SOCITDASSURANCESFORMEMUTUELLE'=>0, // 1 - 'SABELGE'=>0, // 1 - 'SCDEPRODUCTIONRESPONSABILITLIMITE'=>0, // 1 - 'SOCITRESPONSAIBILITLIMITE'=>0, // 1 - 'SACAPITALVARIABLEDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 1 - 'SCPDAVOCATFORMECOOPRATIVE'=>0, // 1 - 'SARLDEXERCIELIBRAL'=>0, // 1 - 'SOCITDASSURANCESMUTUELLEVIECAPITAL'=>0, // 1 - 'ENTREPRISEINDIVIDUELLECOMMERCIALE'=>0, // 1 - 'EARLENCOMMUN'=>0, // 1 - 'SCMCAPITALVARIABLECAPITALMINFIXEEUROS'=>0, // 1 - 'SARLREDUITEUNEASSOCIUNIQUE'=>0, // 1 - 'ANNIECOIFFURE'=>0, // 1 - 'SARLCOOPRATIVECAPITALETPERSONNELVARIABLE'=>0, // 1 - 'SCPROFESSIONNELLLE'=>0, // 1 - 'SCIENDISSOLUTION'=>0, // 1 - 'SARLKINGSTREETWORGRANDEBRETAGNEROYAUMEUNI'=>0, // 1 - 'SOCITDEXERCICELIBRALPARACTIONSIMPLIFIECAPITALVARIABLE'=>0, // 1 - 'GIESANSBUTLUCRATIFENLIQUIDATION'=>0, // 1 - 'SOCITAGRICOLESARL'=>0, // 1 - 'SEIE'=>0, // 1 - 'RCSQUIMPERD'=>0, // 1 - 'FIJ'=>0, // 1 - 'SARLENFORMATION'=>0, // 1 - 'THIERRY'=>0, // 1 - 'MUTELLE'=>0, // 1 - 'SARLDECRDITCAPITALVARIABLE'=>0, // 1 - 'SADIRECTOIREETCONSELDESURVEILLANCE'=>0, // 1 - 'SADEDROITESPAGNOL'=>0, // 1 - 'MESSIEURS'=>0, // 1 - 'COOPRATIVECOMMERCIALERESPONSABILITLIMITETCAPITALVARIABLE'=>0, // 1 - 'SARLASSOCIUNIQUEETSARLUNIPERSONNELLE'=>0, // 1 - 'UNIONDECOOPRATIVESAGRICOLESCOOPRATIVE'=>0, // 1 - 'SARLDEDROITTCHQUE'=>0, // 1 - 'SACOOPRATVEDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 1 - 'LASOCITCIVILE'=>0, // 1 - 'SKCCVRL'=>0, // 1 - 'CONSTRUCTIONDIMMEUBLES'=>0, // 1 - 'GROUPEFONCIERRURAL'=>0, // 1 - 'SOCITCOOPRATIVEDECRDITRESPONSABILITSTATUTAIREMENTLIMITEETCAPITALVARIABLE'=>0, // 1 - 'SARLCOOPOUVRIREDEPRODUCTIONETCRDIT'=>0, // 1 - 'SCJ'=>0, // 1 - 'SARLUNPERSONNELLE'=>0, // 1 - 'MEIJIX'=>0, // 1 - 'SARLREDUITEASOCIEUNIQUE'=>0, // 1 - 'SOCITANONYMEPARTICIPATIONOUVRIRE'=>0, // 1 - 'EARLASSOCIASSOCI'=>0, // 1 - 'SOCITRESPONSABILITLIMITEDEFAMILLE'=>0, // 1 - 'SOCIETEPARACTIONSDEDROITITALIEN'=>0, // 1 - 'SOCITDESOCITTRANGER'=>0, // 1 - 'SICAARL'=>0, // 1 - 'SCAV'=>0, // 1 - 'TABLISSEMENTPUBICNATIONAL'=>0, // 1 - 'O'=>0, // 1 - 'SCOPANONYMECAPITALETPERSONNEVARIABLES'=>0, // 1 - 'SELRULR'=>0, // 1 - 'SAI'=>0, // 1 - 'SOCITCIVILEDECOOPRATIVEAGRICOLECAPITALVARIABLE'=>0, // 1 - 'VENTE'=>0, // 1 - 'SELARLDAVOCATS'=>0, // 1 - 'SCKA'=>0, // 1 - 'SOCITCOOPRATIVERESPONSABILITLIMITECOOPRATIVE'=>0, // 1 - 'STRANGREISSUEDELESPACEECONOMIQUEEUROPEN'=>0, // 1 - 'SOCITANONYMEDIRECTOIRECONSEILDESURVEILLANCE'=>0, // 1 - 'SASAIC'=>0, // 1 - 'COOPERATIVES'=>0, // 1 - 'COOPRATIVEAGRICOLEDPARTEMENTALE'=>0, // 1 - 'CONSTRUCTIONDIMMEUBLESVENTE'=>0, // 1 - 'SOCIETECOOPERATIVEDINTERETCOLLECTIFAGRICOLESICA'=>0, // 1 - 'SASUNIERSONNELLE'=>0, // 1 - 'SACSURV'=>0, // 1 - 'SICASOUSFORMEDESOCITANONYMECOOPRATIVE'=>0, // 1 - 'UNIONCOMMERCIALE'=>0, // 1 - 'SACOOPRATIVEOUVRIREDEPRODUCTIONETDECRDITCONSEIL'=>0, // 1 - 'SCOPDHABITATIONSLOYERMODRFOMEANONYMEETCAPITALVARIABLE'=>0, // 1 - 'ETABLISSEMENT'=>0, // 1 - 'SCEAENCOMMUN'=>0, // 1 - 'SOCIETEUNIPERSONNELLEARESPONS'=>0, // 1 - 'SCDECONCTRUCTIONVENTE'=>0, // 1 - 'SCPRLCV'=>0, // 1 - 'SASSA'=>0, // 1 - 'UKA'=>0, // 1 - 'SOCITAONYME'=>0, // 1 - 'SCCI'=>0, // 1 - 'SOCITTRANGREIMMATRUCLEAURCS'=>0, // 1 - 'SACOOPRATIVEMARITIMEETCAPITALVARIABLE'=>0, // 1 - 'SOCITPARACTIONSSIMPLIFIESOCITPARACTIONSSIMPLIFIEPLURIPERSONNELLE'=>0, // 1 - 'SALERL'=>0, // 1 - 'COOPRATIVEDECONSOMMATIONENSACAPITALVARIABLE'=>0, // 1 - 'SCPARTICULIREASSOCIUNIQUEEARL'=>0, // 1 - 'RCSTHIONVILLEB'=>0, // 1 - 'SARLOUVRIREDEPRODUCTION'=>0, // 1 - 'SADEBANQUECOOPRATIVEDIRECTOIREETCONSEILDORIENTATIONETDESURVEILLANCE'=>0, // 1 - 'SCCCV'=>0, // 1 - 'AAD'=>0, // 1 - 'SCPARTICULIREASSOCIUNIQUE'=>0, // 1 - 'SCPARLCV'=>0, // 1 - 'GFI'=>0, // 1 - 'UNIONDECOOPRATIVESMARITIMESANONYME'=>0, // 1 - 'ATH'=>0, // 1 - 'SOCITCOOPRATIVEOUVRIREDEPRODUCTIONCRDITSARL'=>0, // 1 - 'CAISSEMUTUELLERESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 1 - 'SOCITCOOPRATIVVERESPONSABILITLIMIT'=>0, // 1 - 'SADECONSEILDADMINISTRATION'=>0, // 1 - 'SOCITANONYMEOBJETSPORTIFDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 1 - 'SARLLAGRANGE'=>0, // 1 - 'SCIAA'=>0, // 1 - 'SACOOPRATIVEDIRECTOIREETCONSEILDESURVEILLANCEETCAPITALVARIABLE'=>0, // 1 - 'SICASOUSFORMEDESA'=>0, // 1 - 'SOCITCOOPRATIVEOUVRIREDEPRODUCTIONANONYMEETCAPITALVARIABLE'=>0, // 1 - 'SASAUFCOOPR'=>0, // 1 - 'COMPAGNIE'=>0, // 1 - 'SCCONSTITUEENVUEDELATTRIBUTIONDIMMEUBLE'=>0, // 1 - 'SACOOPRATIVEARTISANALECONSEILDADMINISTRATION'=>0, // 1 - 'SCACOOPRATIVECAPITALVARIABLE'=>0, // 1 - 'SCCOOPRATIVEAGRICOLECOOPRATIVE'=>0, // 1 - 'SOCITDEDROITTRANGERCARYCHAMBERSPALKSTREETTQELTORQUAYDEVONGRANDEBRETAGNE'=>0, // 1 - 'SARLASSOCISUNIQUE'=>0, // 1 - 'SOCITSCOOPRATIVES'=>0, // 1 - 'SOCITOUVRIREDEPRODUCTIONRESPONSABILITLIMITECAPITALVARIABLE'=>0, // 1 - 'SOCITCOOPRATIVEEXPLOITESOUSFORMEDESARL'=>0, // 2 - 'HERV'=>0, // 1 - 'COOPRATIVEOUVRIREDEPRODUCTIONRESPONSABILITLIMITESOCIETECOOPERATIVEOUVRIEREDEPRODUCTI'=>0, // 1 - 'CAISSEDPARGNE'=>0, // 1 - 'DISTRICLUBMDICAL'=>0, // 1 - 'SOCITPARACTIONSSIMPLIFIERDUITELASSOCIUNIQUE'=>0, // 1 - 'SCKON'=>0, // 1 - 'ROBERT'=>0, // 1 - 'GAE'=>0, // 1 - 'SCPROFESSONNELLEDHUISSIERSDEJUSTICE'=>0, // 1 - 'QOCITRESPONSABILITLIMITE'=>0, // 1 - 'SARLAAU'=>0, // 1 - 'SICAVAS'=>0, // 1 - 'SACOOPERATIVECAPITALVARIABLE'=>0, // 1 - 'SCDECONSTRUCTIONATTRIBUTION'=>0, // 1 - 'SOCITDEPARTICIPATIONSFINANCIRESDEPROFESSIONLIBRALEDENOTAIRERESPONSABILITLIMITEUNI'=>0, // 1 - 'SADEDROITSUISSESOCIETEETRANGERE'=>0, // 1 - 'SOCITDEDROITISLANDAIS'=>0, // 1 - 'GFRETSC'=>0, // 1 - 'SYNDIC'=>0, // 1 - 'FLORENT'=>0, // 1 - 'AVP'=>0, // 1 - 'UNIONDCONOMIESOCIALESOCITCOOPRATIVEFORMEANONYME'=>0, // 1 - 'SOCIETECOOPERATIVEACAPITALVARIABLESARL'=>0, // 1 - 'SARLJU'=>0, // 1 - 'SACOOPRATIVEOUVRIREDEPRODUCTIONRESPONSABILITLIMITE'=>0, // 1 - 'SASUACTIONNAIREUNIQUE'=>0, // 1 - 'SOCITDPARGNEFORESTIRE'=>0, // 1 - 'SOCITPARACTIONSIMPLIFIE'=>0, // 1 - 'SOCITCIVILEIMMOBILIREASSOCIUNIQUE'=>0, // 1 - 'SACOOPRATIVEOUVRIREPERSONNELETCAPITALVARIABLE'=>0, // 1 - 'SCH'=>0, // 1 - 'SARR'=>0, // 1 - 'SARLCOOPERATIVROUVRIEREDEPRODUCTIONETDECREDIT'=>0, // 1 - 'SOCITPARACTIONSSIMPLIFIS'=>0, // 1 - 'STB'=>0, // 1 - 'SAARL'=>0, // 1 - 'GROUPEMENTDEMPLOYEURSAGRICOLES'=>0, // 1 - 'TWO'=>0, // 1 - 'COOPRATIVEDECRDITCAPITALVARIABLERESPSTATUTAIREMENTLIMITE'=>0, // 1 - 'EUBAL'=>0, // 1 - 'GFASOCITENLIQUIDATIONAMIABLE'=>0, // 1 - 'SACDEPHARMACIENSDOFFICINECAPITALVARIABLEETCONSEILDADMINISTRATION'=>0, // 1 - 'IMMEUBLEMIDASANQUETILCENTER'=>0, // 1 - 'COPRL'=>0, // 1 - 'SARLENTREPRISEUNIPERSONNELLEARESPONSLIMITEE'=>0, // 1 - 'SASDHABITATIONDELOYERMODR'=>0, // 1 - 'INSTITUTIONRGIESELONLESLOISDUAOTETDUDCEMBRE'=>0, // 1 - 'SAPLAC'=>0, // 1 - 'SCOPPERSONNELETCAPITALVARIABLES'=>0, // 1 - 'STEDINTERETCOLLECTIFAGRICOLESAACAPITALVARIABLE'=>0, // 1 - 'SOCITANONYMEDECONOMIEMIXTELOCALESAEML'=>0, // 1 - 'GFASOCITENLIQUIDATION'=>0, // 2 - 'SARLAASSIOCIEUNIQUE'=>0, // 1 - 'SAPC'=>0, // 1 - 'SCPARTICULIREENLIQUIDATIONAMIABLE'=>0, // 1 - 'SOCITANONYMECOOPRATIVEARTISANALEDIRECTOIRE'=>0, // 1 - 'SOCITDEDROITPORTUGAIS'=>0, // 1 - 'STECOOPERATIVEARESPONSABILITELIMITEETACAPITALVARIABLE'=>0, // 1 - 'SARLCOOPRATIVECAPITALVARIABLEDINTERTCOLLECTIF'=>0, // 1 - 'SOCITPARACTIONSSIMPLIFIEACTIONNAIREUNIQUE'=>0, // 1 - 'AKDENIZ'=>0, // 1 - 'SCMENLIQUIDATION'=>0, // 1 - 'SAVA'=>0, // 1 - 'SOCITCOOPRATIVEDECAUTIONMUTUELLELOIMARS'=>0, // 1 - 'SADEDROITSSUISSES'=>0, // 1 - 'SOCITPARACTIONSSIMPLIFIEUNIVERSELLE'=>0, // 1 - 'CMO'=>0, // 1 - 'STEUNIPERSONNELLEARESPONSABILITELIMITEEACAPITALVARIABLE'=>0, // 1 - 'SARLVOCATIONIMMOBILIRE'=>0, // 1 - 'SARLASSOCIUNIQE'=>0, // 1 - 'SCCIMMOBILIRE'=>0, // 1 - 'SACONSEILDADMINISTRATIONR'=>0, // 1 - 'SOCITCIVILEPROFESSIONNELLETITULAIREDUNOFFICEDEGREFFIERDETRIBUNALDECOMMERCE'=>0, // 1 - 'SASCONSTITUEDUNASSOCIUNIQUE'=>0, // 1 - 'SACONSEILDADMIISTRATION'=>0, // 1 - 'GIEENDISSOLUTION'=>0, // 1 - 'VALRIE'=>0, // 1 - 'SACOOPRATIVEDEPRODUCTIONDHABITATIONLOYERMODR'=>0, // 1 - 'SASOCITANONYME'=>0, // 1 - 'SICAVL'=>0, // 1 - 'SARLASSOCIUNQUE'=>0, // 1 - 'EALR'=>0, // 1 - 'SOCITDEDROITTRANGERSOMERSETHOUSEPRICESTREETBLZBIRMINGHAMGRANDEBRETAGNE'=>0, // 1 - 'SCICVENTE'=>0, // 1 - 'SELARLDEPHARMACIENS'=>0, // 1 - 'SOCITCOMMERCIALETRANGRE'=>0, // 1 - 'SOCITCIVILEDECOOPRATIVEAGRICOLE'=>0, // 1 - 'SOCITCIVILECOOPRATIVEDEMOYENSCAPITALVARIABLE'=>0, // 1 - 'RUELONDIEUD'=>0, // 1 - 'NOUVELLESOCITRESPONSABILITLIMITERDUITEASSOCIUNIQUE'=>0, // 1 - 'AVASPE'=>0, // 1 - 'SELARASSOCIUNIQUE'=>0, // 1 - 'FRANCESCA'=>0, // 1 - 'SCSE'=>0, // 1 - 'SPPROFESSIONNELLE'=>0, // 1 - 'SCDEXPLOITATIONHORTICOLE'=>0, // 1 - 'CFA'=>0, // 2 - 'SOCITDINTRTCOLLECTIFAGRICOLEARL'=>0, // 1 - 'SCCCAPITALVARIABLE'=>0, // 1 - 'SADECAUTIONMUTUELLE'=>0, // 1 - 'GROUP'=>0, // 1 - 'PERSONNEMORALEDEDROITPRIVBUTNONLUCRATIF'=>0, // 1 - 'SOCITPRIVERESPONSABILITLIMITERELEVANTDUDROITBELGE'=>0, // 1 - 'CI'=>0, // 1 - 'GROUPEMENTDINTRTCONOMIQUESANSBUTLUCRATIF'=>0, // 1 - 'EVSAL'=>0, // 1 - 'SOCITMEMBREDELUE'=>0, // 1 - 'LECHARVET'=>0, // 1 - 'SCIMARIQUITA'=>0, // 1 - 'SKACAPITALVARIABLE'=>0, // 1 - 'SARLSCOP'=>0, // 1 - 'SCPDAVOCATSAUXCONSEILS'=>0, // 1 - 'COOPENSARL'=>0, // 1 - 'SARLPATRIMONIALE'=>0, // 1 - 'SOCITAONYMEDECONOMIEMIXTE'=>0, // 1 - 'SARLASSOCOUNIQUE'=>0, // 1 - 'RUEDESVERGERS'=>0, // 1 - 'CENTRECOMMERCIAL'=>0, // 1 - 'SOCITENCOMMANDITEPARACTIONSNONMEMBREDELACOMMUNAUTEUROPENNEOUNONPARTIELACCORDSU'=>0, // 1 - 'SARLLAIRDUTEMPS'=>0, // 1 - 'SOCITCIVILECOOPRATIVEPERSONNELETCAPITALVARIABLES'=>0, // 1 - 'SCIENDISSOLUITION'=>0, // 1 - 'RA'=>0, // 1 - 'SOCITPRIVERESPONSABILITLIMITE'=>0, // 1 - 'SCILESVILLASDEBAGATELLE'=>0, // 1 - 'COOPRATIVEDETRANSPORTANONYMECONSEILDADMINISTRATIONETCAPITALVARIABLE'=>0, // 1 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFFORMEANONYME'=>0, // 1 - 'SACCOPRATIVEDACHATENCOMMUN'=>0, // 1 - 'SCOPDECRDITRESPONSABILITLIMITE'=>0, // 1 - 'SOCITANONYMECOOPRATIVEPERSONNELETCAPITALVARIABLE'=>0, // 1 - 'SCDECONSTRUCTIONVENTELOIDETITREO'=>0, // 1 - 'COOPRATIVEFORMEANONYME'=>0, // 1 - 'UNIONRGIONALEDETRANSPORTEURSROUTIERS'=>0, // 1 - 'ASSOCIATIONSPORTIVE'=>9220, // 1 - 'SOCITANONYMENONMEMBREDELUE'=>0, // 1 - 'SCIASSOCIATIONLOI'=>9220, // 1 - 'COOPRATIVERESPONSABILITETCAPITALVARIABLE'=>0, // 1 - 'SRLPMINTERNATIONAL'=>0, // 1 - 'SARLCAPITALEVARIABLE'=>0, // 1 - 'SELARC'=>0, // 1 - 'SOCIETECOOPERATIVEAGRICOLEACAPITALVARIABLELOIN'=>0, // 1 - 'SOCITCIVILEDECONSTRUCTIONVENTEENLIQUIDATION'=>0, // 1 - 'SOCIETESIMPLE'=>0, // 1 - 'SYNDICATPROFESSIONNELENTREPRISERGIEPARLARTICLELDUCODERURALLOIDUJUILLET'=>0, // 1 - 'COOPRATIVEARTISANALEFORMEDESOCITRESPONSABILITLIMIT'=>0, // 1 - 'GIECOMMERCIALENLIQUIDATION'=>0, // 1 - 'COOPRATIVEDECRDIT'=>0, // 1 - 'SOCITANONYMECOOPRATIVEDINTRTCOLLECTIFAGRICOLEDIRECTOIRE'=>0, // 1 - 'SADADMINISTRATION'=>0, // 1 - 'SOCITDEXERCICELIBRALPARACTIONS'=>0, // 1 - 'SACONSEILDADMINISTRATIVE'=>0, // 1 - 'SOCITCIVILEPROFESSIONNELLEDADMINISTRATEURSJUDICIAIRES'=>0, // 1 - 'SCPT'=>0, // 1 - 'SOCITCIVILEIIMMOBILIRE'=>0, // 1 - 'EARLSOCITENLIQUIDATION'=>0, // 1 - 'COOPOUVRIEREDEPRODUCTIONARLACAPITALVARIABLE'=>0, // 1 - 'SELAFADEGOMTRESEXPERTS'=>0, // 1 - 'SARLAASSOCIEUNIQUE'=>0, // 2 - 'RLUNI'=>0, // 1 - 'SARLSDA'=>0, // 1 - 'SARLUNIQUE'=>0, // 1 - 'JEANPAUL'=>0, // 1 - 'RUENATIONALE'=>0, // 1 - 'INSTITUTIONRGIELOISDUAOTETDUDCEMBRE'=>0, // 1 - 'SASASSOCIEUNIQUEDEPUISCESSIONDELINTEGRALITEDESTITRESAMINIRECTIFICATION'=>0, // 1 - 'SNCF'=>0, // 1 - 'SOCITANONYMEDCONOMIEMIXTEETDIRECTOIRE'=>0, // 1 - 'SCCCAPITALETPERSONNELVARIABLE'=>0, // 1 - 'SCUMACV'=>0, // 1 - 'SEE'=>0, // 2 - 'EE'=>0, // 1 - 'SOCITANONYMEDECONOMIEMIXTE'=>0, // 2 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFAGRICOLEFORMEANONYMEETCAPITALVARIABLE'=>0, // 1 - 'SOCITDECRDITMARITIME'=>0, // 1 - 'SARLMEMBRELUE'=>0, // 1 - 'ASSOCIATIONDELOI'=>9220, // 1 - 'BANQUECOOPRATIVESADIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 2 - 'TABLISSEMENTDECRDITBUTLUCRATIF'=>0, // 1 - 'SCPRESPONSABILITLIMITE'=>0, // 1 - 'MONIQUE'=>0, // 1 - 'SCDECONSTRUCTIONVENTEENLIQUIDATION'=>0, // 2 - 'EARLRDUITEUNASSOCIUNIQUE'=>0, // 1 - 'SSCGP'=>0, // 1 - 'SARLROSIERETFILS'=>0, // 1 - 'SAEMLDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 1 - 'SCPROFESSIONNELLEDAVOCATSAUCONSEILDETATETLACOURDECASSATION'=>0, // 1 - 'SOCITCOOPRATIVEDECRDITRESPONSABILITSTATUTAIREMENTLIMITECOOPRATIVE'=>0, // 1 - 'SARLSOMERSETHOUSETEMPLESTREETBIRMINROYAUMEUNI'=>0, // 1 - 'FDA'=>0, // 1 - 'CRDITMUTUELCOOPRATIVECAPITALVARIABLE'=>0, // 1 - 'EUROSFIXE'=>0, // 1 - 'FORMEASSOCIATION'=>9220, // 1 - 'SARLENCOOPRATIVECAPITALVARIABLE'=>0, // 1 - 'SARLASSOCILIMITE'=>0, // 1 - 'COPARL'=>0, // 1 - 'EUTL'=>0, // 1 - 'EARLASSOCIUNIQUEETCAPITALVARIABLE'=>0, // 2 - 'SOCITRESPONSABILITLIMITEDEDROITBRITANNIQUE'=>0, // 1 - 'SOCITDASSURANCESMUTUELLESCAPITALVARIABLE'=>0, // 1 - 'SARLAVECPOURSUITEDACTIVITJUSQUAU'=>0, // 1 - 'SARLCOOPERATIVECREDITCAPITALVARIABLE'=>0, // 1 - 'SCENLIQUIDATIONAMIABLE'=>0, // 1 - 'SARLASSOCIUNIAUE'=>0, // 1 - 'SARLASSOCIASSOCIUNIQUE'=>0, // 1 - 'EGMBATIMENT'=>0, // 1 - 'EUARLRESPONSABILITLIMITEASSOCIUNIQUE'=>0, // 1 - 'SOCITANONYMEEXERCICELIBRALSOCIETEDEXERCICELIBERALAFORMEANONYMEDEGEOMETRESEXPERTS'=>0, // 1 - 'ABEL'=>0, // 1 - 'SASDEXPERTISECOMPTABLE'=>0, // 1 - 'SASARL'=>0, // 1 - 'COOPRATIVEARTISANALERESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 1 - 'C'=>0, // 1 - 'SOCITDEPARTICIPATIONSFINANCIRESDEPROFESSIONLIBRALEDAVOCATCONSTITUESOUSFORMEDESAR'=>0, // 1 - 'SOCITENCOMMANDITEDEDROITALLEMAND'=>0, // 1 - 'EARLABIDEP'=>0, // 1 - 'SCIDECONTRUCTIONVENTE'=>0, // 1 - 'SAFAM'=>0, // 1 - 'SAAL'=>0, // 1 - 'SOCITDEXERCICELIBRALRESPONSABILITLIMITESELARL'=>0, // 1 - 'SELARLRDUITEUNASSOCIUNIQUE'=>0, // 1 - 'SOCITCOOPRATIVEDECRDITCAPITALVARIABLEETRESPONSABILIT'=>0, // 1 - 'SCEAASSOCIUNIQUE'=>0, // 1 - 'CMU'=>0, // 1 - 'SAKD'=>0, // 1 - 'SCAICA'=>0, // 1 - 'SOCITCOOPRATIVERESPONSABILITECAPITALVARIABLE'=>0, // 1 - 'STCOOPDEPRODUCTIONSARL'=>0, // 1 - 'COULEURCAF'=>0, // 1 - 'COOPRATIVEOUVRIREDEPRODUCTIONFORMEANONYME'=>0, // 1 - 'STEXLIBRALRESPONSABILTLIMITE'=>0, // 1 - 'SCDECONSEILETASSURANCEQUALIT'=>0, // 1 - 'SOCITDEXERCICELIBRALERESPONSABILITLIMITE'=>0, // 1 - 'SCU'=>0, // 1 - 'EXPLOITATIONAGRICOLESRESPONSABILITLIMITE'=>0, // 1 - 'ENTREPRISEUNIPERSONNELLEDEXERCICELIBRALRESPONSABILITLIMITE'=>0, // 1 - 'SOCITCOOPRATIVEDEPRODUCTIONENSARLCAPITALVARIABLE'=>0, // 1 - 'ETABLISSEMENTPUBLICDELETAT'=>0, // 1 - 'SEIDELESPACEECONOMIQUEEUROPEN'=>0, // 1 - 'SOCITAGRICOLEDEXPLOITATIONAGRICOLESCEA'=>0, // 1 - 'SOCIETECOOPERATIVEOUVRIERESDEPRODUCTIONARESPONSABILITELIM'=>0, // 1 - 'SICASOUSFORMEDESTEANONYME'=>0, // 1 - 'SASCOMPTERDU'=>0, // 1 - 'SACP'=>0, // 1 - 'STEDINTERETCOLLECTIFAGRICOLESAACAPITALETPERSONNELVARI'=>0, // 1 - 'SACOOPRATIVEDECOMMERANTSDTAILLANTSCONSEILDADMCAPITALVARIABLE'=>0, // 1 - 'SARLAGRICOLEDEFAMILLE'=>0, // 1 - 'SADCONOMIEMIXTEETLOCALE'=>0, // 1 - 'SCPARTICULIREDITEDEPARTICIPATIONOUDEPORTEFEUILLEETCAPITALVARIABLE'=>0, // 1 - 'SCOPRESPONSABILITLIMITEETDECRDIT'=>0, // 1 - 'AGENCECOMMERCIALEDUNTATTRANGER'=>0, // 1 - 'CDS'=>0, // 1 - 'UNIONDCONOMIESOCIALESARLCAPITALVARIABLE'=>0, // 1 - 'COOPRATIVEOUVRIREDEPRODUCTIONRESPONSABILITLIMIT'=>0, // 1 - 'SOCITCIVILESPROFESSIONNELLEDINFIRMIERS'=>0, // 1 - 'SARLMEMBREDELUNIONEUROPENNE'=>0, // 1 - 'GIESANSBUTLUCRATIFSOCITENLIQUIDATION'=>0, // 1 - 'STCOMMANDITEPARACTIONSCOOPRATIVE'=>0, // 1 - 'SCOPRESPONSABILITCAPITALVARIABLE'=>0, // 1 - 'UNIONDCONOMIESOCIALEETSOCITCOOPRATIVECIVILE'=>0, // 1 - 'STECOOPERATIVEDEPRODUCTIONARESPONSABILITELIMITEE'=>0, // 1 - 'SCVA'=>0, // 1 - 'SARLCARACTREPLURIPERSONNEL'=>0, // 1 - 'SOCIETEANONYMEPARACTIONS'=>0, // 1 - 'SOCITESPONSABILITLIMITE'=>0, // 1 - 'SEI'=>0, // 1 - 'COOPRATIVEOUVRIREDERODUCTIONANONYMECAPITALETPERSONNELVARIABLE'=>0, // 1 - 'SCDECONSTRUCTIONENTE'=>0, // 1 - 'SICACIVIL'=>0, // 1 - 'SELEFACONSEILDADMINISTRATION'=>0, // 1 - 'SARLCOOPERATIVECAPITALVARIABLEASSOCIUNIQUE'=>0, // 1 - 'CAISSEDERETRAITE'=>0, // 1 - 'SARLSOCITENLIQUIDATIONJUDICIAIRE'=>0, // 1 - 'SBM'=>0, // 1 - 'SOCITANONYMESA'=>0, // 1 - 'SACOOPRATIVEDEPRODCUTIONDHABITATIONLOYERMODRER'=>0, // 1 - 'TGI'=>0, // 1 - 'SCIGB'=>0, // 1 - 'SICAANONYME'=>0, // 1 - 'SADIRECTIONETCONSEILDESURVEILLANCE'=>0, // 1 - 'SARLDEDROITBRITANIQUE'=>0, // 1 - 'SADIRECTOIREETCONSEILETSURVEILLANCE'=>0, // 1 - 'SELARLDINFIRMIERS'=>0, // 1 - 'CHRISTIAN'=>0, // 1 - 'SCPROFESSIONNELLEDARCHITECTE'=>0, // 1 - 'ASSOCIATIONLESVACHESAUGALLO'=>9220, // 1 - 'SOCITDEDROITTRANGERREGISTREDESSOCITSDEMILAN'=>0, // 1 - 'SCINICE'=>0, // 1 - 'SACOOPRATIVEPERSONNELETCAPITALVARIABLES'=>0, // 1 - 'GUA'=>0, // 1 - 'CPC'=>0, // 1 - 'SOCITCOOPRATIVEANONYMEDINTRT'=>0, // 1 - 'SADINTRTCOLLECTIFAGRICOLE'=>0, // 1 - 'BATRICE'=>0, // 1 - 'SARLDEXPLOITATIONDELAFERMEDECHABRAC'=>0, // 1 - 'SARLAGRICOLEFAMILIALE'=>0, // 1 - 'SOCITRESPONSABILITLIMITEETASSOCIUNIQUE'=>0, // 1 - 'SOCITANONYMECOOPRATIVEDIRECTOIREETCONSEILDESURVEILLANCEETDORIENTATION'=>0, // 1 - 'GISLE'=>0, // 1 - 'MCUISINIER'=>0, // 1 - 'SARLACTIONNAIREUNIQUE'=>0, // 1 - 'UCP'=>0, // 1 - 'RUEAMIRALLINOISCS'=>0, // 1 - 'SASRDUITEUNASSOCIUNIQUE'=>0, // 1 - 'SARLDECRDIT'=>0, // 1 - 'EURAL'=>0, // 1 - 'SOCITPARACTIONSSIMPLIFIESAS'=>0, // 1 - 'MME'=>0, // 1 - 'RGIEDPARTEMENTALE'=>0, // 1 - 'SELALU'=>0, // 1 - 'EXPLOITATIONAGRICOLEENNOMPERSONNEL'=>0, // 1 - 'SOCITPARACTIONMEMBREDELUNIONEUROPENNE'=>0, // 1 - 'SOCITCIVILEAQUACOLE'=>0, // 1 - 'GPA'=>0, // 1 - 'SAEA'=>0, // 1 - 'SOCITDEDROITPORTUGAL'=>0, // 1 - 'LEBABAORUMVILLALAROSERAIEANCIENNEROUTEDULAMENTIN'=>0, // 1 - 'SPASU'=>0, // 1 - 'AVURSARL'=>0, // 1 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFAGRICOLERESPONSABILIT'=>0, // 1 - 'GFV'=>0, // 1 - 'MUTUELLEAGRICOLEBANCAIRECAPITALVARIABLE'=>0, // 1 - 'SIR'=>0, // 1 - 'SYNDICATPROFESSIONNELRGIESELONLALOIDE'=>0, // 1 - 'ENTREPRISEUNIPERSONNELERESPONSABILITLIMITE'=>0, // 1 - 'SELARLDEMEDECINSRADIOLOGUES'=>0, // 1 - 'SARLCAPITALUNIQUE'=>0, // 1 - 'SOCITCOOPRATIVEANONYMEARTISANALECAPITALETPERSONNELVARIABLE'=>0, // 1 - 'CU'=>0, // 1 - 'SOCITANONYMEETCONSEILDESURVEILLANCE'=>0, // 1 - 'R'=>0, // 1 - 'RUEJACQUESPRVERT'=>0, // 1 - 'EXPLOITATIONPERSONNELLE'=>0, // 1 - 'SACOOPRATIVEDIRECTOIRECONSEILDESURVEILLANCEETCAPITALVARIABLE'=>0, // 1 - 'SKACVE'=>0, // 1 - 'SOCITPARACTIONSSIMPLIFIELIMITE'=>0, // 1 - 'SADIRECTOIREETCONVEILDESURVEILLANCE'=>0, // 1 - 'SOCITAGRICOLECAPITALVARIABLE'=>0, // 1 - 'SOCITCOOPRATIVEDECAUTIONMUTUELLECAPITALVARIABLELOICOOPRATIVE'=>0, // 1 - 'STECOOPERATIVEAGRICOLEDEPRODUCTION'=>0, // 1 - 'COMITDPARTEMENTAL'=>0, // 1 - 'EMMANUEL'=>0, // 1 - 'SOCITRESPONSABILITLLIMITE'=>0, // 1 - 'SCDECOOPRATIVECAPITALVARIABLE'=>0, // 1 - 'SARLDECOOPRATIVEARTISANALE'=>0, // 1 - 'SCACAPITALETPERSONNELVARIABLES'=>0, // 1 - 'SCPC'=>0, // 1 - 'EUROSMINIMUM'=>0, // 1 - 'SDN'=>0, // 1 - 'SDA'=>0, // 2 - 'COOPRATIVEDECRDITRESPONSABILITLIMITECAPITALVARIABLE'=>0, // 1 - 'SOCITIMMOBILIEREDINVESTISSEMENT'=>0, // 1 - 'SCIE'=>0, // 1 - 'SOCITRDUITEUNASSOCIUUNIQUE'=>0, // 1 - 'SCDEPLACEMENTIMMOBILIERFAISANTPUBLIQUEMENTAPPELLPARGNE'=>0, // 1 - 'COOPRATIVEDECRDITRESPONSABILITLIMITEETCAPITALVARIABLESTATUTAIREMENTLIMITE'=>0, // 1 - 'SARLGRANCEMAJORITAIRE'=>0, // 1 - 'SAEMCOOPRATIVE'=>0, // 1 - 'SCPPROFESSIONNELLE'=>0, // 1 - 'TM'=>0, // 1 - 'GIAR'=>0, // 1 - 'SOCITANONYMECOOPRATIVEDEPRODUCTIONDHLM'=>0, // 1 - 'AU'=>0, // 1 - 'SCPROFESIONNELLEDEMDECINS'=>0, // 1 - 'SCPROFESSIONNELLEDEGOMTRESEXPERTES'=>0, // 1 - 'SCDEPRODUCTIONANONYME'=>0, // 1 - 'SCERI'=>0, // 1 - 'COOPRATIVEDUTILISATIONDEMATRIELAGRICOLEENCOMMUNENCOURSDELIQUIDATION'=>0, // 1 - 'TABLISEMENTPUBLICDELETATCARACTREINDUSTRIELETCOMMERCIAL'=>0, // 1 - 'ETABLISSEMENTSSERRANDOUR'=>0, // 1 - 'SASHLM'=>0, // 1 - 'AFPH'=>0, // 1 - 'SKCVRL'=>0, // 1 - 'SOCITCOOPRATIVEDENTREPRISESDETRANSPORTSRESPONSABILITLIMITEETCAPITALVARIABLES'=>0, // 1 - 'SCDEMOYEN'=>0, // 1 - 'SOCITDCONOMIE'=>0, // 1 - 'SELARLDAVOCAT'=>0, // 1 - 'SARLCOOPRATIVEAGRICOLE'=>0, // 1 - 'PVI'=>0, // 1 - 'SCDECAUTIONMUTUELLECOOPRATIVE'=>0, // 1 - 'SCPDARCHITECTE'=>0, // 1 - 'SARLDECOOPRATIVEDINTRTCOLLECTIF'=>0, // 1 - 'UNIONDECOOPRATIVESAGRICOLESCAPITALVARIABLECOOPRATIVE'=>0, // 1 - 'SAMEMBLEDELUE'=>0, // 1 - 'COMPLTER'=>0, // 1 - 'SASADIRECTOIREETCONSSURV'=>0, // 1 - 'UNIONDECOOPRATIVEAGRICOLECAPITALVARIABLE'=>0, // 1 - 'SACOOPRATIVEDECONSOMMATIONFORMEANONYME'=>0, // 1 - 'SACOOPDIRECTOIRE'=>0, // 1 - 'SOCITANONYMECAPITALETPERSONNELVARIABLES'=>0, // 1 - 'GROUPEMENTFORESTIERAGRICOLE'=>0, // 1 - 'SCPERSONNELVARIABLE'=>0, // 1 - 'SOCITRESPONSABILITLIMITEUNIQUE'=>0, // 1 - 'SUCCURSALEDESOCITTRANGRE'=>0, // 1 - 'COOPRATIVEDINTRTCOLLECTIFCAPITALVARIABLE'=>0, // 1 - 'SOCITRESPONSABILILTLIMITE'=>0, // 1 - 'ACTIVITINDPENDANTEPROFESSIONLIBRALE'=>0, // 1 - 'SOCITCOOPRATIVEPARACTIONSSIMPLIFIE'=>0, // 1 - 'ASSOCIATIONSYNDICALELIBRE'=>9150, // 1 - 'SADECOOPRATIVECAPITALVARIABLE'=>0, // 1 - 'SCCVLEBON'=>0, // 1 - 'SOCITANONYMEDIRECTOIREETCONSEILDADMINISTRATION'=>0, // 1 - 'SCIV'=>0, // 2 - 'SOCITCOOPRATIVERESPONSABILITLIMLITE'=>0, // 1 - 'SOCITDEXERCICELIBRALFORMEANONYMEDEGOMTRESEXPERTS'=>0, // 1 - 'SCIAGRICOLE'=>0, // 1 - 'SCICAFORMECIVILECOOPRATIVE'=>0, // 1 - 'SOCITPARACTIONSIMPLIFIES'=>0, // 1 - 'SARLASSOCUUNIQUE'=>0, // 1 - 'SOCITRESPONSABILITLIMITEDEDROITNERLANDAIS'=>0, // 1 - 'SCDEPRODUCTIONENARLACAPITALVARIABLE'=>0, // 1 - 'SOCITCIVILESC'=>0, // 1 - 'SOCITCOOPRATIVERESPONSABILITETCAPITALVARIABLE'=>0, // 1 - 'SACONSEILDADMINISTRATIONSA'=>0, // 1 - 'SOCITANONYMECOOPRATIVECAPITALVARIABLECOOPRATIVE'=>0, // 1 - 'SOCIETEDEPARTICIPATIONSFINANCIERESDEPROFLIBERALE'=>0, // 1 - 'SARLDUNASSOCIUNIQUE'=>0, // 1 - 'SARLOASSOCIUNIQUE'=>0, // 1 - 'COMMUNAUTDECOMMUNE'=>0, // 1 - 'SCIDEGESTIONPATRIMONIALE'=>0, // 1 - 'SOCITANONYMECOOPRATIVEMARITIMECONSEILDADMINISTRATION'=>0, // 1 - 'UNIONCOOPRATIVECAPITALVARIABLE'=>0, // 1 - 'RUEDELACITADELLE'=>0, // 1 - 'SOCITCIVILEETIMMOBILIRE'=>0, // 1 - 'SAAUCAPITALETPERSONNELVARIABLES'=>0, // 1 - 'SCDECONSTRUCTIONETDEGESTION'=>0, // 1 - 'SARLSARLDARCHITECTURE'=>0, // 1 - 'SELUARLASSOCIUNIQUE'=>0, // 1 - 'AACCAPITALVARIABLE'=>0, // 1 - 'SASAVECASSOCIUNIQUE'=>0, // 1 - 'SOCITDEPARTICIPATIONSFINANCIRESDEPROFESSIONLIBRALER'=>0, // 1 - 'SCEACOOPRATIVE'=>0, // 1 - 'COOPRATIVEAGRICOLEETVINICOLE'=>0, // 1 - 'SKOPA'=>0, // 1 - 'ZI'=>0, // 1 - 'SOCITDEDROITTRANGERSOCITDEDROITBRITANNIQUE'=>0, // 1 - 'COOPERATIVEDECONSOMMATIONENSOCITCIVILE'=>0, // 1 - 'SOCITCIVILECOOPRATIVEDECONSTRUCTIONCAPITALETPERSONNELVARIABLES'=>0, // 1 - 'GFO'=>0, // 1 - 'SCCAVRESPONSABILITLIMITE'=>0, // 1 - 'SARLASSOCIUNIQUEDEDROITPORTUGAIS'=>0, // 1 - 'SCSOCIETECOOPERATIVEDECREDIT'=>0, // 1 - 'SOCITCIVILECOOPRATIVECAPITALVARIABLEETRESPONSABILITSTATUTAIREMENTLIMITE'=>0, // 1 - 'EURLSSB'=>0, // 1 - 'SAENLIQUIDATIONAMIABLE'=>0, // 1 - 'SADEXERCICELIBRE'=>0, // 1 - 'SCPROFESSIONNELLES'=>0, // 1 - 'SCCOOPRATIVEMARITIMECAPITALVARIABLE'=>0, // 1 - 'SAPATRICIPATIONOUVRIRE'=>0, // 1 - 'SARLCMCSTYLAND'=>0, // 1 - 'SAETCONSEILDESURVEILLANCE'=>0, // 1 - 'SARSUNIPERSONNELLE'=>0, // 1 - 'SOCITENCOOPRATIVEAGRICOLE'=>0, // 1 - 'SCOPFORMEANONYNE'=>0, // 1 - 'YVES'=>0, // 1 - 'SOCITCIVILEDEPORTEFEUILLECAPITALVARIABLE'=>0, // 1 - 'SCDEMOYENCAPITALVARIABLE'=>0, // 1 - 'MIRELLE'=>0, // 1 - 'SALONDECOIFFURE'=>0, // 1 - 'SCDECRDITCAPITALVARIABLEETRESPONSABILITLIMITE'=>0, // 1 - 'SALL'=>0, // 1 - 'SARLCOOPRATIVEOUVRIREDEPRODUCTIONETDECRDITSCOP'=>0, // 1 - 'SCICACAPITALVARIABLE'=>0, // 1 - 'CFRMAPHILIPPAGRI'=>0, // 1 - 'SOCITRESPONSABILITLIMITESARLASSOCIUNIQUE'=>0, // 1 - 'SCEAUNIPERSONNELLE'=>0, // 1 - 'SOCITTRANGRERESPONSABILITLIMITE'=>0, // 1 - 'SARLASSOCIUNIQUES'=>0, // 1 - 'SASASSOCIUNQUE'=>0, // 1 - 'SCDEXPLOITATION'=>0, // 1 - 'SOCITCOOPRATIVEFORMECIVILEETCAPITALVARIABLE'=>0, // 1 - 'SCOPA'=>0, // 2 - 'SOCITANONYMENONMEMBREDELACEE'=>0, // 1 - 'SOCITCOOPRATIVEDEPRODUCTIONRESPONSABILITLIMITECAPITAL'=>0, // 1 - 'SCPARTICULIERE'=>0, // 1 - 'SCDEPRODUCTIONRESPONSABILITLIMITECAPITALVARIABLE'=>0, // 1 - 'COOPRATIVEDUTILISTIONDEMATRIELAGRICOLEENCOMMUN'=>0, // 1 - 'SARLCAPITALVARIABLEMONTANTSOUSLEQUELILNEPEUTTRERDUIT'=>0, // 1 - 'SOCITDEDROITHOLLANDAIS'=>0, // 1 - 'SCDECONSTRUCTIONCOOPRATIVE'=>0, // 1 - 'SOCITCOOPRATIVEDEPRODUCTIONETDECRDIT'=>0, // 1 - 'SARLASSOCIUNIQUEETDEDROITLUXEMBOURGEOIS'=>0, // 1 - 'SACONSEILDEDADMINISTRATION'=>0, // 1 - 'SARLASSOICIUNIQUE'=>0, // 1 - 'SARLCOOPRATIVEARTISANALEPERSONNELVARIABLE'=>0, // 1 - 'SACOOPRATIVEPERSONNELVARIABLE'=>0, // 1 - 'SOCITCOOPRATIVEAGRICOLECOOPRATIVECAPITALVARIABLE'=>0, // 1 - 'SARLDEDROITLUXEMBOURGEOIS'=>0, // 1 - 'SNCCAPITALVARIABLEMININUM'=>0, // 1 - 'SOCITCIVILECOOPRATIVEDECRDITCOOPRATIVE'=>0, // 1 - 'COMMUNTTERRITORIALE'=>0, // 1 - 'CHRISTOPHE'=>0, // 1 - 'SOCITCOOPRATIVEDEPRODUCTIONETSARLCAPITALVARIABLE'=>0, // 1 - 'MUTA'=>0, // 1 - 'SCPDEXPERTAGRICOLEFONCIER'=>0, // 1 - 'SEIEEE'=>0, // 1 - 'SOCITDESDROITSETRANGERS'=>0, // 1 - 'COLLECTIVITTERRITORIALEPERSONNEMORALEDEDROITPUBLIC'=>0, // 1 - 'SAOV'=>0, // 1 - 'GMBH'=>0, // 1 - 'SDECISE'=>0, // 1 - 'SADINTERETCOLLECTIFAGRICOLE'=>0, // 1 - 'SOCIETECOOPERATIVEOUVRIERE'=>0, // 1 - 'ASOSCIATION'=>0, // 1 - 'SDOD'=>0, // 1 - 'SCDAVOCATS'=>0, // 1 - 'SARLUUE'=>0, // 1 - 'SARLMOTARD'=>0, // 1 - 'GRANDRUE'=>0, // 1 - 'SARLSCOOP'=>0, // 1 - 'MJC'=>0, // 1 - 'SASAVECCONSEILDADMINISTRATION'=>0, // 1 - 'SAOO'=>0, // 1 - 'SOCITDEXERCICELIBRALFORMEANONYMESELEFACONSEILDADMI'=>0, // 1 - 'SCCOOPRATIVEDINTRTCOLLECTIFAGRICOLE'=>0, // 1 - 'SACPDHLM'=>0, // 1 - 'SOCITRESPONSABILITASSOCIUNIQUE'=>0, // 1 - 'SCOPANONYMEPERSONNELETCAPITALVARIABLE'=>0, // 1 - 'IMMEUBLELECAHNENTREDTILLEULARGENT'=>0, // 1 - 'SOCITDEXERCICELIBRALRESPONSABILITLIMITEDEPHARMACIENS'=>0, // 1 - 'SADIRECTEURETCONSEILDESURVEILLANCE'=>0, // 2 - 'SNCVARIABLE'=>0, // 1 - 'NONPCISE'=>0, // 1 - 'SIAARL'=>0, // 1 - 'SOICTRESPONSABILITLIMITE'=>0, // 1 - 'SELURLASSOCIUNIQUE'=>0, // 1 - 'SCDEPLACEMENTCOLLECTIFIMMOBILIERETCAPITALVARIABLE'=>0, // 1 - 'SARLASSOCIUNIQUECOMPTERDUDCEMBRE'=>0, // 1 - 'SCPDARCHITECTURE'=>0, // 1 - 'UNIONDCONOMIESOCIALERESPONSABILITLIMITE'=>0, // 1 - 'SOCITCIVILEFINANCIRE'=>0, // 1 - 'SCIENCONSTRUCTIONVENTE'=>0, // 1 - 'SACOOPRATIVEDEPRODUCTIONDEHLMDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 1 - 'CL'=>0, // 1 - 'COOPRATIVEDECRDITCAPITALVARIABLERESPONSABILITLIMITE'=>0, // 1 - 'UNIONCONOMIQUEETSOCIALEDESARLCAPITALVARIABLE'=>0, // 1 - 'TDM'=>0, // 1 - 'SARLENCOURSDELIQUIDATION'=>0, // 1 - 'SICAANONYMEETCAPITALVARIABLE'=>0, // 1 - 'SAAVECCONSEILDADMINISTRATION'=>0, // 1 - 'SCDEMOYENSCAPITALVARIABLE'=>0, // 1 - 'ASSOCIATIONRGIESELONLALOIDEGM'=>9220, // 1 - 'SARLASSOCIUIQUE'=>0, // 1 - 'ETABLISSEMENTPUBLICDELTATCRPARDCRET'=>0, // 1 - 'AUMARCHDUBOUQUET'=>0, // 1 - 'ASSOCIATIONDEDROITLOCALINSCRITEAUREGISTREDESASSOCIATIONSDUTRIBUNALDINSTANCEDEHAGUENAU'=>0, // 1 - 'SCL'=>0, // 1 - 'SACIESTSADECRDITIMMOBILIERDELEST'=>0, // 1 - 'SARLSOCITUNIQUE'=>0, // 1 - 'SOCITENCOMMANDITESIMPLESOCITPARACTIONSSIMPLIFIEACTIONNAIREUNIQUE'=>0, // 1 - 'SOCITCIVILEEXPLOITATIONAGRICOLE'=>0, // 1 - 'SOCITDEDROITSETRANGER'=>0, // 1 - 'SCOUVRIREDEPRODUCTIONCOOPRATIVE'=>0, // 1 - 'SASUNIFIEASSOCIUNIQUE'=>0, // 1 - 'FPOI'=>0, // 1 - 'ETABLISSEMENTPUBLICDECOOPRATIONCULTURELLEINDETCOMMER'=>0, // 1 - 'SOCITENCOMMANDITEPARACTIONSNONMEMBREDELACEE'=>0, // 1 - 'SYNDICATDINITIATIVE'=>0, // 1 - 'SOCITDEGROUPEDASSURANCESMUTUELLE'=>0, // 1 - 'SADEDROITJAPONAIS'=>0, // 1 - 'SCCOOPRATIVEDECONSTRUCTIONCAPITALVARIABLE'=>0, // 1 - 'COMMUNAUTRURALE'=>0, // 1 - 'SCPDECHIRURGIENSDENTISTES'=>0, // 1 - 'SELARLDEPARTICIPATIONSFINANCIRES'=>0, // 1 - 'SCD'=>0, // 1 - 'SATL'=>0, // 1 - 'COOPRATIVECAPITALETPERSONNELVARIABLE'=>0, // 1 - 'TABLISSEMENTPUBLICDESANT'=>0, // 1 - 'SCDECONSTRUCTIONVETE'=>0, // 1 - 'MEMBREDELUE'=>0, // 1 - 'SCDECONSTRUCTIOINVENTE'=>0, // 1 - 'SCPROFESSIONNELLEDEMANDATAIRESLIQUIDATEURS'=>0, // 1 - 'ASSOCIATIONDEDROITLOCAL'=>9260, // 1 - 'RGIEPERSONNALISEDOTEDELAPERSONNALITMORALEETDELAUTONOMIEFINANCIRE'=>0, // 1 - 'MONSIEURETMADAME'=>0, // 1 - 'SCAF'=>0, // 1 - 'SOCIETEETRANGEREIMMATRICULEEAURCSDEBONNEVILLE'=>0, // 1 - 'SICASOUSFORMEDESACAPITALVARIABLE'=>0, // 1 - 'SERSAS'=>0, // 1 - 'LDP'=>0, // 1 - 'SCRESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 1 - 'SOCITDEDROITTRANGERSOCITDEDROITBRITANIQUE'=>0, // 1 - 'SAOUVRIRECOOPRATIVEPERSONNELETCAPITALVARIABLE'=>0, // 1 - 'SELEURLUE'=>0, // 1 - 'CUMAM'=>0, // 1 - 'ASSOCIATIONORDREAPOSTOLIQUE'=>9220, // 1 - 'SARLENDROITETRANGER'=>0, // 1 - 'SARLASSOCIUNIQUEPRCDENTPROPRITAIREEXPLOITANT'=>0, // 1 - 'GE'=>0, // 2 - 'SACONSEILDADMINISTRATIONGM'=>0, // 1 - 'SOCITANONYMEPRIVEPARACTIONS'=>0, // 1 - 'SOCITCOOPRATIVEDECONSOMMATIONCAPITALVARIABLEETPERSONNELVARIABLE'=>0, // 1 - 'SACONSEILDADMINISTRATIONETCAPITALVARIABLE'=>0, // 1 - 'SARLMEMBREDELALUE'=>0, // 1 - 'RCSSAINTDENISB'=>0, // 1 - 'SASUUNIPERSONNELLE'=>0, // 1 - 'SICAFANONYMEACONSEILTITREORDONNANCE'=>0, // 1 - 'SASSIMPLIFI'=>0, // 1 - 'SCDECONSTRUCTIONVENT'=>0, // 1 - 'SOCITENNOMCOLLECTIFASSOCIUNIQUE'=>5202, // 1 - 'SOCITCOOPRATIVEAGRICOLECAPITALVARIBLE'=>0, // 1 - 'TABLISSEMENTDECRDITBUTNONLUCRATIFCAPITALVARIABLE'=>0, // 1 - 'CONFDRATIONINTERSYNDICALE'=>0, // 1 - 'SCSOCITENLIQUIDATIONAMIABLE'=>0, // 1 - 'COPRESPONSABILITLIMITE'=>0, // 1 - 'SAOD'=>0, // 1 - 'SACOOPRATIVECOMMERANTSDTAILLANTS'=>0, // 1 - 'SCPROFESSIONNELLEDAVOCATSAUCONSEIL'=>0, // 1 - 'SOCITCOOPRATIVEANONYMEDETRAVAILLEURS'=>0, // 1 - 'SCAD'=>0, // 1 - 'SARLCONSTITUERDUNASSOCIUNIQUE'=>0, // 1 - 'SOCIETECOOPERATIVEOUVRIEREDEPRODUCTIONACONSEILDADMINISTR'=>0, // 1 - 'SOCITCIVILEGROUPEMENTFORESTIER'=>0, // 1 - 'SCPROFESISONNELLE'=>0, // 1 - 'SCPARTICULIREREGROUPEMENTFONCIERAGRICOLE'=>0, // 1 - 'SICACONSEILDADMINISTRATION'=>0, // 1 - 'SOCITCOOPRATIVEAGRICOLEDINTRTCOLLECTIFRESPONSABILITLIMITE'=>0, // 1 - 'SCDEXPLOITATIONRURALEETAGRICOLE'=>0, // 1 - 'BOULEVARDDUCOLOMBIER'=>0, // 1 - 'SOCITANONYMEMONGASQUE'=>0, // 1 - 'SOCITCOOPRATIVEDEPRODUCTIONRESPONSABILITLIMITEETAUCAPITALVARIABLE'=>0, // 1 - 'SANONEUROPENNE'=>0, // 1 - 'SACONSEILDADMINISTRATIONDHABITATIONLOYERMODR'=>0, // 1 - 'ASDETRFLEETVOTREIMAGE'=>0, // 1 - 'MAURICE'=>0, // 1 - 'SASCOOPRATIVEDINTRTCOLLECTIFCAPITALVARIABLE'=>0, // 1 - 'SCIDATTRIBUTIONDECONSTRUCTION'=>0, // 1 - 'SERGE'=>0, // 1 - 'SCDECONSTRUCTIONETSOCITDEGESTION'=>0, // 1 - 'SASASSOCUNIQUE'=>0, // 1 - 'SCILESPITCHES'=>0, // 1 - 'ASSOCIATIONLOIERJUILLET'=>9220, // 1 - 'SICAVSA'=>0, // 1 - 'SCICAFORMEANONYMEETCAPITALVARIABLE'=>0, // 1 - 'TABLISSEMENTPUBLICLOCAL'=>0, // 1 - 'SEARLU'=>0, // 1 - 'SACOOPRATIVEDINTRTCOLLECTIFPOURLACCESSIONLAPROPRITALSACE'=>0, // 1 - 'JEANMAX'=>0, // 1 - 'GUILLAUME'=>0, // 1 - 'GCA'=>0, // 1 - 'SOCITCOOPRATICERESPONSABILITLIMITE'=>0, // 1 - 'SOCITTCIVILEPROFESSIONNELLE'=>0, // 1 - 'SCADINTRTCOLLECTIFAGRICOLECOOPRATIVE'=>0, // 1 - 'SOCITUNIPERSONNELLERESPONSABILITLIMITE'=>0, // 1 - 'ASSOCIATIONLOS'=>9220, // 1 - 'SCPAV'=>0, // 1 - 'SASASSSOCIUNIQUE'=>0, // 1 - 'SARLASOCIEUNIQUE'=>0, // 1 - 'SELRAL'=>0, // 1 - 'CSI'=>0, // 1 - 'SARLSOCIETEETRANGERE'=>0, // 1 - 'SACOOPRATIVEOUVRIREDEPRODUCTIONCAPITALETPERSONNELVARIABLE'=>0, // 1 - 'SDM'=>0, // 1 - 'SSADIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 1 - 'SOCITRESPONSABILITRDUITEUNASSOCI'=>0, // 1 - 'SNCDEDROITITALIEN'=>0, // 1 - 'VENTETITREAMBULANT'=>0, // 1 - 'SPASUNIPERSONNELLE'=>0, // 1 - 'CMCCAPITALVARIABLE'=>0, // 1 - 'SARLB'=>0, // 1 - 'SARLASSOCIATIONUNIQUE'=>0, // 1 - 'SARLAUTRESOCITRESPONSABILITLIMIT'=>0, // 1 - 'ORGANISMEDEGESTIONDELCOLECATHOLIQUE'=>0, // 1 - 'SCSMEMBREDELUE'=>0, // 1 - 'ETR'=>0, // 1 - 'GROUPEMENTDEXPLOITATIONAGRICOLERESPONSABILITLIMITE'=>0, // 1 - 'SNR'=>0, // 1 - 'LAURENCE'=>0, // 1 - 'SCFERMIRE'=>0, // 1 - 'ACEA'=>0, // 1 - 'SOCIETEARESPONSABILITELIMITEDEDROITBRITANIQUE'=>0, // 1 - 'SOCITCIVILEPARTICULIRECAPITALETPERSONNELVARIABLES'=>0, // 1 - 'SACOOPRATIVEDEPRODUCTIONETDECRDIT'=>0, // 1 - 'SARLUNIPERSONNELLLE'=>0, // 1 - 'RCSMETZB'=>0, // 1 - 'SEURL'=>0, // 1 - 'JCASARL'=>0, // 1 - 'COMMUNAUTDESCOMMUNES'=>0, // 1 - 'SASSIMPLIFIEUNIPERSONNELLE'=>0, // 1 - 'UNIONCONOMIQUESOCIALESARLCAPITALVARIABLE'=>0, // 1 - 'SCOPARLCAPITALVARIABLE'=>0, // 1 - 'SADIRECTOIRETCONSEILDESURVEILLANCE'=>0, // 1 - 'SOCITASSOCI'=>0, // 1 - 'EURLSOCIETEMISEENLIQUIDATION'=>0, // 1 - 'COOPRATIVERESPONSABLITLIMITE'=>0, // 1 - 'SCPROFESSIONNELLEDECONSEILENPROPRITINDUSTRIELLE'=>0, // 1 - 'STEARESPONSABILITELIMITEEDEPRESSE'=>0, // 1 - 'SBS'=>0, // 1 - 'SOCITNONCOMMERCIALE'=>0, // 1 - 'SCAGRICOLESOCITENLIQUIDATION'=>0, // 1 - 'SARLDINTERETCOLLECTIFAGRICOLESICA'=>0, // 1 - 'SOCITDEXERCICELIBRALASSOCIUNIQUEETRESPONSABILITLIMITE'=>0, // 1 - 'SESARL'=>0, // 1 - 'JACQUELINE'=>0, // 1 - 'SARLCOOPRATIVEOUVRIREDEPRODUCTIONCAPITALVARIABLE'=>0, // 1 - 'SCDEPLACEMENTIMMOBILIERFAISANTAPPELPUBLICLPARGNE'=>0, // 1 - 'SAIS'=>0, // 1 - 'PLACEDUPALAISDEJUSTICE'=>0, // 1 - 'SOV'=>0, // 1 - 'SCDEMOOYENS'=>0, // 1 - 'SACOOPRATIVEETCAPITALVARIALE'=>0, // 1 - 'SARLEUROPENNE'=>0, // 1 - 'RRLCONSTITUEDUNASSOCIUNIQUE'=>0, // 1 - 'SELECA'=>0, // 1 - 'SCOPFORMEANONYMEETPERSONNELETCAPITALVARIABLE'=>0, // 1 - 'ANCIENDOSSIERFNONINSCRIT'=>0, // 1 - 'SOCITRESPONSABILITLIMITEASSOCIUNIQUEGRANCEMAJORITAIRE'=>0, // 1 - 'SCOPFORMEANONYMEPERSONNELETCAPITALVARIABLE'=>0, // 1 - 'SOCITCOOPRATIVEDETRAVAILLEURRESPONSABILITLIMITE'=>0, // 1 - 'BANQUECOOPRATIVERGIEPARLALOINODU'=>0, // 1 - 'OVINALPDVELOPPEMENT'=>0, // 1 - 'SOCITCOOPRATIVEPARACTIONSSIMPLIFIEDINTRTCOLLECTIFAGRICOLECAPITALVARIABLE'=>0, // 1 - 'SANATIONALEDIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 1 - 'SCDEXPLOITATIONAGRICOLERESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 1 - 'SOCITPARACTIONSMEMBREDELUE'=>0, // 1 - 'BDEREV'=>0, // 1 - 'RUEPIERREBROSSOLETTE'=>0, // 1 - 'SDERIJKSSTRAATWEGBCPLEERSUMPAYSBAYS'=>0, // 1 - 'SOCITDCONOMIEMIXTEENLIQUIDATION'=>0, // 1 - 'SCADUNIONDCONOMIESOCIALE'=>0, // 1 - 'SOCITCOOPRATIVEDINTRTAGRICOLECAPITALVARIABLE'=>0, // 1 - 'FR'=>0, // 1 - 'SOCITCOOPRATIVEDEPRODUCTIONARL'=>0, // 1 - 'FORMATIONASSOCIATION'=>9220, // 1 - 'SASUNIPERSONNELLESASACTIONNAIREUNIQUE'=>0, // 1 - 'SOCITCOOPRATIVEPERSONNELVARIABLESOCITCOOPRATIVEAGRICOLECAPITALETPERSONNELVARIABL'=>0, // 1 - 'SOGITRESPONSABILITLIMITEASSOCIUNIQUE'=>0, // 1 - 'SEP'=>0, // 1 - 'SDDE'=>0, // 1 - 'SAASSOCI'=>0, // 1 - 'SASCOP'=>0, // 1 - 'SOCITCARACTIONSSIMPLIFIEUNIPERSONNELLE'=>0, // 1 - 'SCEXPLOITATIONAGRICOLERESPONSABILITLIMITE'=>0, // 1 - 'SAOG'=>0, // 1 - 'M'=>0, // 1 - 'SYNDICATPATRONAL'=>0, // 1 - 'PATRICE'=>0, // 1 - 'EUASSOCIUNIQUE'=>0, // 1 - 'SCPROFESSIONNEELLE'=>0, // 1 - 'SADIRECTOIREETCONSEILDEDIRECTOIRE'=>0, // 1 - 'SAEU'=>0, // 1 - 'CAISSELOCALEDECRDITMUTUEL'=>0, // 1 - 'VISIONSTRATGIEMOYENS'=>0, // 1 - 'ASSOCIATIONRGIESEL'=>9220, // 1 - 'SOCITRESPONSABILITLIMITEENTREPRISEAGRICOLERESPLIMITE'=>0, // 1 - 'SPOCITCOOPRATIVERESPONSABILITLIMITEETCAPITALVARIABLE'=>0, // 1 - 'SCCIVILEDECONSTRUCTIONVENTE'=>0, // 1 - 'SARLASSOCISUNIQUEEUROS'=>0, // 1 - 'SOCITDEPARTICIPATIONFINANCIREDEPROFESSIONLIBRALEDAVOCATSSOUSFORMEDESAS'=>0, // 1 - 'SCPANONYMECAPITALVARIABLE'=>0, // 1 - 'SOCITCIVILEIMMOBILIRESC'=>0, // 1 - 'SELARLDENTREPRISEUNIPERSONNELLERESPONSABILITLIMITE'=>0, // 1 - 'SCACAPITABLEVARIABLE'=>0, // 1 - 'SCCM'=>0, // 1 - 'ST'=>0, // 1 - 'CAISSEDECRDITAGRICOLE'=>0, // 1 - 'FRANAISE'=>0, // 1 - 'SOCITCIVIL'=>0, // 1 - 'BOUCHERIEDRUAUX'=>0, // 1 - 'SCIENLIQUIDATIONANTICIPE'=>0, // 1 - 'SARLAMEMBREDELACEE'=>0, // 1 - 'SOCITDEXPERTISECOMPTABLE'=>0, // 1 - 'STECOOPDEPRODUCTIONARESLIMITEEACAPVAR'=>0, // 1 - 'SARLLIMIT'=>0, // 1 - 'ETABLISSEMENTPUBLICDELTATCARACTREADMINISTRATIF'=>0, // 1 - 'UNIONDECONOMIESOCIALESOCITCOOPRATIVESARL'=>0, // 1 - 'COOPRESPONSABILITLIMITE'=>0, // 1 - 'DOCITCIVILE'=>0, // 1 - 'SKCI'=>0, // 1 - 'SOCIETEANONYMEDEDROITCOMMUN'=>0, // 1 - 'SACCAPITALVARIABLE'=>0, // 1 - 'SOCITCOOPRATIVEDINTRTCOLLECTIFSOUSFORMEDESARL'=>0, // 1 - 'SOCITCOOPRATIVEDEPRODUCTIONSARL'=>0, // 1 - 'SPS'=>0, // 1 - 'SADIRECTOIREETCONSEILDESURVEILLANCESADIRECTOIREETCONSEILDESURVEILLANCE'=>0, // 1 - 'SKCPV'=>0, // 1 - 'SOCITCOOPRATIVEANONYMEDINTRTCOLLECTIFCAPITALVARIABLE'=>0, // 1 - 'HAMIDOU'=>0, // 1 - 'SOCITRESPONSABILITLIIMITE'=>0, // 1 - 'SADIRECTOIREETCONSEILDESURVEILLANCEETCAPITALVARIABLE'=>0, // 1 - 'SCPROFESSIONNELLEDECONSEILSJURIDIQUES'=>0, // 1 - 'AUPTITFOURDUMOULIN'=>0, // 1 - 'SCIVENTE'=>0, // 1 -); - ?> \ No newline at end of file diff --git a/library/Metier/common/ICotation.inc b/library/Metier/common/ICotation.inc deleted file mode 100644 index 2e6c9742..00000000 --- a/library/Metier/common/ICotation.inc +++ /dev/null @@ -1,302 +0,0 @@ -reTrtAuto = $retraitementAutomatique; - $this->tabBilan = $tabBilan; - - include ('paramCotation.inc'); - } - - function calculProvisionsPourRisque () { - if ( !$this->reTrtAuto ) - return $this->tabBilan['DP'] + $this->tabBilan['DQ'] - $this->tabBilan['X04']; - else - return (1/2*$this->tabBilan['DP'])+(1/2*$this->tabBilan['DQ']); - } - - function calculEBE () { - return $this->tabBilan['FC'] + $this->tabBilan['FF'] + $this->tabBilan['FI'] + $this->tabBilan['FOB'] - + $this->tabBilan['FM'] + $this->tabBilan['FN'] - $this->tabBilan['FC'] + $this->tabBilan['FC'] - - ( $this->tabBilan['FS'] + $this->tabBilan['FT'] + $this->tabBilan['FU'] + $this->tabBilan['FV'] ) - - ( $this->tabBilan['FW'] - $this->tabBilan['HP'] - $this->tabBilan['HQ'] - $this->tabBilan['HP2'] - $this->tabBilan['HQ2'] ) - - $this->tabBilan['FX'] - ( $this->tabBilan['FY'] + $this->tabBilan['FZ'] ) + ( $this->tabBilan['FO'] - $this->tabBilan['FOB'] ) ; - } - - function calculChiffreAffaires () { - return $this->tabBilan['FC'] - + $this->tabBilan['FF'] - + $this->tabBilan['FI'] - + $this->tabBilan['FO'] - - $this->tabBilan['FOB'] ; - } - - function calculMargeCommerciale () { - return $this->tabBilan['FC'] - ( $this->tabBilan['FS'] + $this->tabBilan['FT'] ) ; - } - - function calculProduction () { - return $this->tabBilan['FF'] + $this->tabBilan['FI'] + $this->tabBilan['FM'] + $this->tabBilan['FN'] ; - } - - function calculValeurAjoutee () { - return $this->calculMargeCommerciale() + $this->calculProduction() - - ( $this->tabBilan['FU'] + $this->tabBilan['FV'] + $this->tabBilan['FW'] ) ; - } - - function calculEBEnonCASA () { - return $this->calculValeurAjoutee() + $this->tabBilan['FO'] - $this->tabBilan['FX'] - ( $this->tabBilan['FY'] + $this->tabBilan['FZ'] ) ; - } - - function calculFondsPropresNetsCorriges() { - return $this->tabBilan['DA'] + $this->tabBilan['DC'] + $this->tabBilan['DB'] + $this->tabBilan['DD'] + $this->tabBilan['DE'] + $this->tabBilan['DF'] + $this->tabBilan['DG'] + $this->tabBilan['DK'] - (1/3*$this->tabBilan['X01']) - + $this->tabBilan['DH'] + $this->tabBilan['DI'] + $this->tabBilan['DJ'] - - $this->tabBilan['CL'] - $this->tabBilan['AB'] + $this->tabBilan['AC'] - $this->tabBilan['AA'] - $this->tabBilan['CB'] + $this->tabBilan['CC'] - $this->tabBilan['X02'] - $this->tabBilan['CM'] - $this->tabBilan['CN'] - + $this->tabBilan['DM'] + $this->tabBilan['DN'] - - $this->tabBilan['X03'] + $this->calculProvisionsPourRisque() - $this->tabBilan['RAD'] ; - } - - function calculDettesFinancieresBancairesBrutes () { - return $this->tabBilan['DS'] - $this->tabBilan['CM1'] + $this->tabBilan['EI'] - $this->tabBilan['CM2'] - + $this->tabBilan['DT'] - $this->tabBilan['CM3'] + $this->tabBilan['DU'] - $this->tabBilan['EH'] - + (3/4*$this->tabBilan['YQ']) + (2/3*$this->tabBilan['YR']) - + (3/4*$this->tabBilan['YQ2']) + (2/3*$this->tabBilan['YR2']) - + $this->tabBilan['DV'] - $this->tabBilan['EI'] - $this->tabBilan['DVI1'] - $this->tabBilan['CM2'] - + $this->tabBilan['YS'] + $this->tabBilan['X08'] - + $this->tabBilan['EH'] + $this->tabBilan['VI1'] - ( $this->tabBilan['X20'] + $this->tabBilan['X21'] ) ; - } - - - - function noteCapitalisation () { - if ( !$this->reTrtAuto ) { - $autresDettesExploit = $this->tabBilan['EA'] - $this->tabBilan['EAVI1'] - $this->tabBilan['EAB'] + $this->tabBilan['EB'] + $this->tabBilan['X01'] + $this->tabBilan['X04'] ; - $dettesFiscalesSociales = $this->tabBilan['DY'] - $this->tabBilan['DYA']; - } else { - $autresDettesExploit = $this->tabBilan['EA'] - $this->tabBilan['EAVI1'] - $this->tabBilan['EAB'] + $this->tabBilan['EB'] + $this->tabBilan['X01'] + 2/3*((1/2*$this->tabBilan['DP'])+(1/2*$this->tabBilan['DQ'])); - $dettesFiscalesSociales = $this->tabBilan['DY'] + 1/3*((1/2*$this->tabBilan['DP'])+(1/2*$this->tabBilan['DQ'])) - $this->tabBilan['DYA'] ; - } - - $numerateur = $this->calculFondsPropresNetsCorriges(); - - $denominateur = $numerateur + $this->tabBilan['DS'] - $this->tabBilan['CM1'] + $this->tabBilan['EI'] - $this->tabBilan['CM2'] + $this->tabBilan['DU'] - $this->tabBilan['EH'] - + $this->tabBilan['DV'] - $this->tabBilan['DVI1'] - $this->tabBilan['EI'] + $this->tabBilan['DT'] - $this->tabBilan['CM3'] + 3/4*$this->tabBilan['YQ'] + 2/3*$this->tabBilan['YR'] - + 3/4*$this->tabBilan['YQ2'] + 2/3*$this->tabBilan['YR2'] - + $this->tabBilan['DW'] + $this->tabBilan['DX'] + $dettesFiscalesSociales - + $autresDettesExploit + $this->tabBilan['DZ'] + $this->tabBilan['DIA'] + $this->tabBilan['ED'] + $this->tabBilan['EAB'] + $this->tabBilan['DYA'] - + $this->tabBilan['EH'] + $this->tabBilan['YS'] + $this->tabBilan['VI1']; - // + $this->tabBilan['X08'] - // - $this->tabBilan['X20'] + $this->tabBilan['YS'] - $this->tabBilan['X08']; - - if ($denominateur==0) - return array('NUMERATEUR'=>$numerateur*100,'DENOMINATEUR'=>$denominateur,'NOTE'=>0); - - return array('NUMERATEUR'=>$numerateur* 100,'DENOMINATEUR'=>$denominateur,'NOTE'=>($numerateur* 100)/$denominateur); - } - - function noteLevierEndettement () { - - $numerateur = $this->calculDettesFinancieresBancairesBrutes(); - - $denominateur = $this->calculFondsPropresNetsCorriges(); - - if ($denominateur==0) - return array('NUMERATEUR'=>$numerateur,'DENOMINATEUR'=>$denominateur,'NOTE'=>0); - - return array('NUMERATEUR'=>$numerateur,'DENOMINATEUR'=>$denominateur,'NOTE'=>$numerateur/$denominateur); - } - - function noteCapaciteRemboursement () { - - $numerateur = $this->calculDettesFinancieresBancairesBrutes(); - - $denominateur = $this->calculEBE(); - - if ($denominateur==0) - return array('NUMERATEUR'=>$numerateur,'DENOMINATEUR'=>$denominateur,'NOTE'=>0); - - return array('NUMERATEUR'=>$numerateur,'DENOMINATEUR'=>$denominateur,'NOTE'=>$numerateur/$denominateur); - } - - function noteCouvChargesFi () { - - $numerateur = $this->calculEBE(); - - $denominateur = $this->tabBilan['GR'] + ( 1/4*$this->tabBilan['HP'] + 1/3*$this->tabBilan['HQ'] ) - + ( 1/4*$this->tabBilan['HP2'] + 1/3*$this->tabBilan['HQ2'] ) - + $this->tabBilan['GS'] - + $this->tabBilan['GT'] - - $this->tabBilan['GJ'] - - $this->tabBilan['GK'] - - $this->tabBilan['GL'] - - $this->tabBilan['GN'] - - $this->tabBilan['GO'] - - $this->tabBilan['GH'] - + $this->tabBilan['GI'] ; - - if ($denominateur==0) - return array('NUMERATEUR'=>$numerateur,'DENOMINATEUR'=>$denominateur,'NOTE'=>0); - - return array('NUMERATEUR'=>$numerateur,'DENOMINATEUR'=>$denominateur,'NOTE'=>$numerateur/$denominateur); - } - - function noteTresorerie () { - - $numerateur = $this->tabBilan['CD'] - $this->tabBilan['CE'] + $this->tabBilan['CF'] - $this->tabBilan['CG'] - - $this->tabBilan['EH'] - ( $this->tabBilan['YS'] + $this->tabBilan['X08'] ) ; - - $denominateur = $this->calculChiffreAffaires(); - if ($denominateur==0) - return array('NUMERATEUR'=>$numerateur*360,'DENOMINATEUR'=>$denominateur,'NOTE'=>0); - - return array('NUMERATEUR'=>$numerateur*360,'DENOMINATEUR'=>$denominateur,'NOTE'=>$numerateur*360/$denominateur); - - } - - function noteMargeExploitation () { - - $numerateur = $this->calculEBE(); - - $denominateur = $this->calculChiffreAffaires(); - - if ($denominateur==0) - return array('NUMERATEUR'=>$numerateur*100,'DENOMINATEUR'=>$denominateur,'NOTE'=>0); - - return array('NUMERATEUR'=>$numerateur*100,'DENOMINATEUR'=>$denominateur,'NOTE'=>$numerateur*100/$denominateur); - } - - - - function getSecteurActivite($naf) { - - $nbSecteurs=count($this->tabActivite); - - while (strlen($naf) > 1) - { - for ($i=1; $i<$nbSecteurs; $i++) - { - for ($j=0; isset($this->tabActivite[$i][$j]); $j++) - { - if ($this->tabActivite[$i][$j]==$naf) - // echo 'NAF '.$naf.' TROUVÉ !
    '; - return $i; - } - } - // echo 'NAF '.$naf.' non trouvé !
    '; - $naf=substr($naf,0,strlen($naf)-1); - } - return 17; // Secteur d'activité par défaut si non trouvé - } - - function getBorne($note, $borne, $secteur) { - - // print_array($this->tabR[$borne][$secteur],0); - for ($j=0; $j<10; $j++) - { - $tabMinMax=explode(':',$this->tabR[$borne][$secteur][$j]); - if ($tabMinMax[0]!='') $min=$tabMinMax[0]; - else $min=-1E99; - if ($tabMinMax[1]!='') $max=$tabMinMax[1]; - else $max=1E99; - - if ( ( $note>$min && $note<=$max ) ) - { -// echo "TROUVE ++++ $note > ".$tabMinMax[0]." et $note <= ". $tabMinMax[1].'
    '; - if ($j==0) return 3; - elseif ($j<4) return $j+4; - else return $j*2+1; - } -// echo "NOK $note < ".$tabMinMax[0]." ou $note > ". $tabMinMax[1].'
    '; - } - return 3; // On retourne la plus basse note par défaut - } - - - function getNoteBorne($note, $borne, $secteur, $numerateur, $denominateur) { - - $noteBorneBrute=$this->getBorne($note, $borne, $secteur); - - switch($borne) - { - case 1: - if ($numerateur<0) return 3; - else return $noteBorneBrute; - break; - case 2: - if ($numerateur==0) return 19; - else return $noteBorneBrute; - break; - case 3: - if ($numerateur==0 && $denominateur>0) return 19; - elseif ($denominateur<0) return 3; - else return $noteBorneBrute; - break; - case 4: - if ($note<0) return 19; - else return $noteBorneBrute; - break; - default: - return $noteBorneBrute; - break; - } - } - - - function getNotationFin ($coteMoy) { - if( $coteMoy > 18.5 ) - return 'A'; - elseif( $coteMoy > 16 ) - return 'B+'; - elseif( $coteMoy > 14 ) - return 'B'; - elseif( $coteMoy > 12.5 ) - return 'C+'; - elseif( $coteMoy > 11 ) - return 'C'; - elseif( $coteMoy > 10 ) - return 'C-'; - elseif( $coteMoy > 9 ) - return 'D+'; - elseif( $coteMoy > 8 ) - return 'D'; - elseif( $coteMoy > 7 ) - return 'D-'; - elseif( $coteMoy > 6 ) - return 'E+'; - elseif( $coteMoy > 4.5 ) - return 'E'; - elseif( $coteMoy > 3 ) - return 'E-'; - else - return 'E--'; - } - - - function getInfosNotation ($notation, $csv=false) { - if ($csv) { - $str =$this->tabNotation[$notation][1].';'. - $this->tabNotation[$notation][2].';'. - $this->tabNotation[$notation][3].';'. - $this->tabNotation[$notation][4].';'; - return $str; - } else { - $str ='Notation : '. $this->tabNotation[$notation][0]."\r\n"; - $str.='Equivalence BDF : '. $this->tabNotation[$notation][1]."\r\n"; - $str.='Grades Moody\'s : '. $this->tabNotation[$notation][2]."\r\n"; - $str.='Grades S&P : '. $this->tabNotation[$notation][3]."\r\n"; - $str.='Probabilité de défaillance : '. $this->tabNotation[$notation][4]." %\r\n"; - return $str; - } -} - -} \ No newline at end of file diff --git a/library/Metier/common/controles.php b/library/Metier/common/controles.php deleted file mode 100644 index 1f2401a8..00000000 --- a/library/Metier/common/controles.php +++ /dev/null @@ -1,47 +0,0 @@ -64 && $ascii<91 ) - /* En ASCII : A=65 et Z=90 - En ISIN... A=10 et Z=35 */ - return ($ascii-55); - return false; -} - -/** Test si un code ISIN donné est valable à partir de son algo de contrôle. - ** @param string $isin Code ISIN à vérifier - ** @return bool - **/ -function isValidIsin($isin) { - - $pays=substr($isin, 0,2); - $nsin=''.substr($isin, 2,9); - $clef=substr($isin,11,1)*1; - - $calcul=''.isinPoidsLettre($pays[0]).isinPoidsLettre($pays[1]).$nsin; - //echo "Etape 1 = $calcul".EOL; - - $sommeImpair=$sommePair=0; - for ($impair=0; $impair<12; $impair=$impair+2) { - $strImpair=''.$calcul[$impair]*2; - if (isset($strImpair[1])) $reste=$strImpair[1]*1; - else $reste=0; - $sommeImpair+=$strImpair[0]*1+$reste; - } - - for ($pair=1; $pair<12; $pair=$pair+2) - $sommePair+=$calcul[$pair]*1; - - $totalcalcul=$sommeImpair+$sommePair; - //echo "Etape 3 = $sommeImpair + $sommePair = $totalcalcul".EOL; - - $dizSuperieur=ceil($totalcalcul/10)*10; - $delta=$dizSuperieur-$totalcalcul; - //echo "Etape 4 = $dizSuperieur - $totalcalcul = $delta".EOL; - - if ($delta==$clef) return true; - - return false; -} -?> \ No newline at end of file diff --git a/library/Metier/common/fonctions.php b/library/Metier/common/fonctions.php deleted file mode 100644 index f843387e..00000000 --- a/library/Metier/common/fonctions.php +++ /dev/null @@ -1,339 +0,0 @@ - Code réponse Serveur - ** "header" => Headers du serveur - ** "body" => Page HTML - **/ -function parse_response($this_response) { - - - // Split response into header and body sections - list($response_headers, $response_body) = explode("\r\n\r\n", $this_response, 2); - $response_header_lines = explode("\r\n", $response_headers); - - // First line of headers is the HTTP response code - $http_response_line = array_shift($response_header_lines); - if(preg_match('@^HTTP/[0-9]\.[0-9] ([0-9]{3})@',$http_response_line, $matches)) { $response_code = $matches[1]; } - - // put the rest of the headers in an array - $response_header_array = array(); - $nbRMID=0; - foreach($response_header_lines as $header_line) - { - list($header,$value) = explode(': ', $header_line, 2); - - if ($header=='Set-cookie' && substr($value,0,5)=='RMID=' && $nbRMID<5)//{ - $nbRMID++; -// echo ("Je gicle le RMID n°$nbRMID\r\n");} - else - $response_header_array[$header] .= $value."\n"; - } - return array('code' => $response_code, 'header' => $response_header_array, 'body' => $response_body); -} - -/** Récupère une page HTML en fonction des paramètres : - ** $url Url distante de la page à récupérer - ** $strCookies Chaine de caractère contenant les cookies - ** $postData Tableau des données à passer en POST uniquement - ** $referer Referer à indiquer lors de l'appel de la page - ** $debug Activer le débogage (True/False) - ** - ** ... et retourne son contenu dans un tableau : - ** "code" => Code réponse Serveur - ** "header" => Headers du serveur - ** "body" => Page HTML - **/ -function getUrl($url, $strCookies='', $postData='', $referer='', $debug=false, $host='') { - - - $ch = curl_init(); - - if ($host=='') - $this_header = array('Host: '. HOST_INSEE); - else - $this_header = array('Host: '. $host); - - curl_setopt($ch, CURLOPT_URL, $url); - curl_setopt($ch, CURLOPT_HEADER, 1); - //curl_setopt($ch, CURLOPT_PROXY, '10.142.10.254:80'); - //curl_setopt($ch, CURLOPT_PROXYUSERPWD, 'username:password'); // Pas nécessaire en authentification NT - - curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); - //curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); - //curl_setopt($ch, CURLOPT_MAXREDIRS, 1); - - $user_agent = 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)'; - curl_setopt($ch, CURLOPT_USERAGENT, $user_agent); - curl_setopt($ch, CURLOPT_REFERER, $referer); - - // Add each cookie that has been returned in the response - // If cookies need to be added/deleted or value changed, then add code here - if ($strCookies!='') { - //die('"'.$strCookies.'"'); - //echo $strCookies."\r\n"; - $cookies = explode("\n", $strCookies); - // Create the basic header - foreach($cookies as $this_cookie) { - if (trim($this_cookie)<>'') - array_push($this_header, 'Cookie: '.$this_cookie); - } - } - - if ($postData!='') { - if (is_array($postData)) - $post_data=$postData; - - $o=""; - foreach ($post_data as $k=>$v) - { - $o.= "$k=".utf8_encode($v)."&"; - } - $post_data=substr($o,0,-1); - - curl_setopt($ch, CURLOPT_POST, 1); - curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data); - //if in_array('',$this_header - /*array_push($this_header, "Content-type: application/x-www-form-urlencoded"); - array_push($this_header, "Content-Length: 44");*/ - } - - curl_setopt($ch, CURLOPT_HTTPHEADER, $this_header); - //print_r($this_header); - - $page=curl_exec($ch); - $response = parse_response($page); - if ($debug){ - $url2=str_replace('http://', '', $url); - $url2=str_replace('/', '_', $url2); - $url2=str_replace('?', '(param)', $url2); - $url2=str_replace('&', '(et)', $url2); - - - $fp=fopen('/var/www/_includes/partenaires/insee/'. date('Ymd-His') .'-'. microtime_float(true) .'-'. $url2 . '.html', 'a'); - fwrite($fp, $url."\r\n"); - fwrite($fp, $page); - fclose($fp); - //echo strip_tags(html_entity_decode($response['body']), ''); - } - //print_r(curl_getinfo($ch)); - curl_close($ch); - return $response; -} - - -function rechercheTelephone($raisonSociale='', $adresse='', $localite='', $departement='', $activite='') { - - $response1=getUrl(SITE_PJ.'pj.cgi?', '', '', '', true, HOST_PJ); - //print_r($response1['header']['Set-cookie']); - $pageHtml=$response1['body']; - $SESSION_ID=getTextInHtml($pageHtml, ''); - $VID=getTextInHtml($pageHtml, ''); - $e_cookie=getTextInHtml($pageHtml, ''); - - $response=getUrl(SITE_PJ.'files/look2002/FR/commun/pji.css', '', '', SITE_PJ.'pj.cgi?', false, HOST_PJ); - $response=getUrl(SITE_PJ.'files/look2002/FR/commun/pji_PJ.css', '', '', SITE_PJ.'pj.cgi?', false, HOST_PJ); - $response=getUrl(SITE_PJ.'files/look2002/FR/commun/script_open.js', '', '', SITE_PJ.'pj.cgi?', false, HOST_PJ); - $response=getUrl(SITE_PJ.'files/look2002/FR/commun/alerte.js', '', '', SITE_PJ.'pj.cgi?', false, HOST_PJ); - $response=getUrl(SITE_PJ.'files/look2002/FR/commun/script_VED.js', '', '', SITE_PJ.'pj.cgi?', false, HOST_PJ); - $response=getUrl(SITE_PJ.'sitecrm/popup.js', '', '', SITE_PJ.'pj.cgi?', false, HOST_PJ); - $response=getUrl('http://sbx.pagesjaunes.fr/RealMedia/ads/Creatives/OasDefault/AUTOPROMO_PJ_banniere_activite/hotel_pj.swf?clickTAG=http://sbx.pagesjaunes.fr/RealMedia/ads/click_lx.ads/www.pagesjaunes.fr/GENERAL/GENERAL/PJ/1238513556/Top/OasDefault/AUTOPROMO_PJ_banniere_activite/hotel_pj.html/61633130323433353434346339306330?', '', '', SITE_PJ.'pj.cgi?', false, HOST_PJ); - $response=getUrl(SITE_PJ.'files/look2002/FR/commun/script_VED.js', '', '', SITE_PJ.'pj.cgi?', false, HOST_PJ); - $response=getUrl('http://sbx.pagesjaunes.fr/RealMedia/ads/Creatives/OasDefault/EDITO_HOME_RIGHT/anim_HP_v2-04-2006.swf', '', '', SITE_PJ.'pj.cgi?', false, HOST_PJ); - $response=getUrl('http://sbx.pagesjaunes.fr/RealMedia/ads/Creatives/OasDefault/EDITO_HOME_RIGHT/visuels_webcam.swf', '', '', SITE_PJ.'pj.cgi?', false, HOST_PJ); - $response=getUrl('http://sbx.pagesjaunes.fr/RealMedia/ads/Creatives/OasDefault/EDITO_HOME_RIGHT/visuels_photo.swf', '', '', SITE_PJ.'pj.cgi?', false, HOST_PJ); - $response=getUrl('http://sbx.pagesjaunes.fr/RealMedia/ads/Creatives/OasDefault/EDITO_HOME_RIGHT/visuels_trafic.swf', '', '', SITE_PJ.'pj.cgi?', false, HOST_PJ); - $response=getUrl('http://sbx.pagesjaunes.fr/RealMedia/ads/Creatives/OasDefault/Edito_webcams/new_04-2006.jpg', '', '', SITE_PJ.'pj.cgi?', false, HOST_PJ); - $response=getUrl('http://e.pagesjaunes.fr/js/m.js', '', '', SITE_PJ.'pj.cgi?', false, HOST_PJ); - - $response2=getUrl($e_cookie, $response1['header']['Set-cookie'], '', SITE_PJ, true, HOST_PJ); - - $cookies=$response1['header']['Set-cookie'] . $response2['header']['Set-Cookie']; - - $input_image=$VALID_ARR=$NUM_RUE=$NEW_DEPARTEMENT=$OBJ_GEO=''; - - // Requête d'interrogation - $postData=array( - 'ACTIVITE_VALIDATED_ASCII'=>'', - 'ID_THEME_SDE'=>'', - 'LISTE_RUB_AVEC_THEME'=>'', - 'input_image'=>$input_image, - - 'FRM_ACTIVITE'=>$activite, - 'FRM_NOM'=>$raisonSociale, - 'FRM_ADRESSE'=>$adresse, - 'FRM_LOCALITE'=>$localite, - 'FRM_DEPARTEMENT'=>$departement, - - 'JF_INSCRIPTIONS_REQ.x'=>'25', - 'JF_INSCRIPTIONS_REQ.y'=>'4', - 'faire'=>'decode_input_image', - 'DEFAULT_ACTION'=>'jf_inscriptions_req', - 'SESSION_ID'=>$SESSION_ID, - 'VID'=>$VID, - 'INFO_VILLE'=>'non', - 'CODE_LOC_INFO_VILLE'=>'00000000', - 'IV_ACTIVATION'=>'oui', - 'lang'=>'FR', - 'pays'=>'FR', - 'srv'=>'PJ', - 'TYPE_RECHERCHE'=>'ZZZ'); -//print_r($postData);//die(); -sleep(1); - $response=getUrl(SITE_PJ, $cookies, $postData, SITE_PJ, true, HOST_PJ); - $pageHtml=$response['body']; - - if (count($tabNT=getTabListeNonTrouve($pageHtml))>0) - { - // Pas de réponses pour ces critères - // Il faut élargir la recherche ! - $tabNTk=array_keys($tabNT); - $input_image=$tabNT[0]; - $DEFAULT_ACTION='inscriptions_req'; - $NEW_DEPARTEMENT=getTextInHtml($pageHtml, ''); - $OBJ_GEO=getTextInHtml($pageHtml, ''); - } - elseif (count($tabGU=getTabListeGU($pageHtml))>0) - { - // Plusieurs Adresses possibles pour l'adresse donnée -// print_r($tabGU); - $input_image=getBonneAdresse($adresse, $tabGU); - $DEFAULT_ACTION='jf_inscriptions_req'; - $VALID_ARR=getTextInHtml($pageHtml, ''); - $NUM_RUE=getTextInHtml($pageHtml, ''); - } - - if ($input_image<>'') { - $CODE_LOC_INFO_VILLE=getTextInHtml($pageHtml, ''); - - $postData=array( - 'GEO_DEP'=>'', // New - 'faire'=>'decode_input_image', - 'DEFAULT_ACTION'=>$DEFAULT_ACTION, - 'input_image'=>$input_image,// diff - 'SESSION_ID'=>$SESSION_ID, - 'VID'=>$VID, - 'INFO_VILLE'=>'oui', // non dans la recherche préc. - 'CODE_LOC_INFO_VILLE'=>$CODE_LOC_INFO_VILLE, // diff - 'IV_ACTIVATION'=>'oui', - 'lang'=>'FR', - 'pays'=>'FR', - 'srv'=>'PJ', - 'TYPE_RECHERCHE'=>'CLOC', // ZZZ - 'SAV_ADRESSE'=>$adresse, // - 'SAV_LOCALITE'=>$localite, // New - 'SAV_DEPARTEMENT'=>$departement, // - 'FRM_NOM'=>$raisonSociale, - 'FRM_ADRESSE'=>$adresse, - 'FRM_LOCALITE'=>$localite, - 'FRM_DEPARTEMENT'=>$departement, - - 'FRM_TYPE_PUB'=>'TOUS', - 'RP_FORM'=>'', - 'VALID_LOC'=>$CODE_LOC_INFO_VILLE, - 'VALID_ARR'=>$VALID_ARR, - 'NUM_RUE'=>$NUM_RUE, - 'test_flash'=>'', - 'ESPLUS'=>'', - 'NEW_DEPARTEMENT'=>$NEW_DEPARTEMENT, - 'OBJ_GEO'=>$OBJ_GEO, - ); -print_r($postData); -sleep(1); - $response=getUrl(SITE_PJ, $cookies, $postData, SITE_PJ, true, HOST_PJ); - $pageHtml=$response['body']; - } - - $nbReponses=trim(getTextInHtml($pageHtml, '', '', 'réponse(s)')); - $tabRep=getTabResponses($pageHtml); - - if (count($tabRep)==$nbReponses) - return $tabRep; - else - return false; -} - -function getTabResponses($pageHtml) { - - $tabRepTmp=explode ('class=fdinscr', $pageHtml); - $tabRep=array(); - foreach($tabRepTmp as $key => $value) - { - if ($key>0) { - $raisonSociale=getTextInHtml($value, 'class=fdrsinscr', '', ''); - $ligneAdresse=html_entity_decode(getTextInHtml($value, '', '', '|')); - $tabligneAdresse=explode('
    ', $ligneAdresse); - $ligneAdresse1=strip_tags($tabligneAdresse[0]); - $ligneAdresse2=strip_tags($tabligneAdresse[1]); - $dispoPlan =(bool)(strpos($value, 'Plan')); - $dispoIti =(bool)(strpos($value, 'Itinéraire')); - $dispoPhoto =(bool)(strpos($value, 'Photo')); - $dispoWeb =(bool)(strpos($value, 'Site   ')); - $lienWeb=getTextInHtml($value, '$raisonSociale, - 'AdresseLigne1' =>$ligneAdresse1, - 'AdresseLigne2' =>$ligneAdresse2, - 'Dispo_Plan' =>$dispoPlan, - 'Dispo_Iti' =>$dispoIti, - 'Dispo_Photo' =>$dispoPhoto, - 'Dispo_Web' =>$dispoWeb, - 'LienWeb' =>$lienWeb)); - } - } - return $tabRep; -} - -function getBonneAdresse($adresse, $tabGU) { - -// tableau de mots à vérifier -$words = array_keys($tabGU); - -// aucune distance de trouvée pour le moment -$shortest = -1; - -// boucle sur les des mots pour trouver le plus près -foreach ($words as $word) { - - // calcule la distance avec le mot mis en entrée, - // et le mot courant - $lev = levenshtein($adresse, $word); - - // cherche une correspondance exacte - if ($lev == 0) { - - // le mot le plus près est celui-ci (correspondance exacte) - $closest = $word; - $shortest = 0; - - // on sort de la boucle ; nous avons trouvé une correspondance exacte - break; - } - - // Si la distance est plus petite que la prochaine distance trouvée - // OU, si le prochain mot le plus près n'a pas encore été trouvé - if ($lev <= $shortest || $shortest < 0) { - // définission du mot le plus près ainsi que la distance - $closest = $word; - $shortest = $lev; - } -} -/* -echo "Mot entré : $adresse\n"; -if ($shortest == 0) { - echo "Correspondance exacte trouvée : $closest\n"; -} else { - echo "Vous voulez dire : $closest ?\n"; -}*/ -return $tabGU[$closest]; -} -?> \ No newline at end of file diff --git a/library/Metier/common/insee.class.php b/library/Metier/common/insee.class.php deleted file mode 100644 index e05690db..00000000 --- a/library/Metier/common/insee.class.php +++ /dev/null @@ -1,548 +0,0 @@ -Fiche Etablissement'); - if ($pos>0) - $tabRet['typeEtablissement']='secondaire'; - - $pos=strpos($pageHtml, '', 'class="basictext">', ''); - $tabRet['adresseSiege']=getTextInHtml($pageHtml, '', 'class="basictext">', ''); - print_r($tabRet); - die(); - // Capital social - - // Chiffre d'affaires - - // Date CA - - // Effectif - - // Forme Juridique - - // Nationalité - - // Activité - - // Siège social - /* - - - - - - - -
    Fiche siège'); - if ($pos>0) - $tabRet['typeEtablissement']='siège'; - - // Recherche Dernière MAJ / Activité - $pos=strpos($responseSiege, '(dernière mise à jour :'); - if ($pos>0) { - $tabRet['dateMAJ']=substr($responseSiege, $pos+51, 10); - $tabRet['dateAbsActivite']=''; - $tabRet['active']='O'; - } else { - $tabRet['active']='N'; - $tabRet['dateMAJ']=''; - $pos=strpos($responseSiege, 'Absence d\'activité notée le : '); - if ($pos>0) $tabRet['dateAbsActivite']=substr($responseSiege, $pos+78, 10); - else { - $pos=strpos($responseSiege, 'Absence d\'activité'); - if ($pos>0) $tabRet['dateAbsActivite']=''; - } - } - - $pos=strpos($responseSiege, ' size="-1"> n° SIRET :'); - $tabRet['siret']=str_replace(' ', '', html_entity_decode(substr($responseSiege, $pos+97, 32))); - - $pos=strpos($responseSiege, 'size="-1"> Date de création :'); - if ($pos>0) { - $posFin=strpos($responseSiege, '', $pos+109); - $tabRet['dateCreation']=str_replace(' ', '', html_entity_decode(substr($responseSiege, $pos+109, $posFin-($pos+109)))); - } - else $tabRet['dateCreation']=''; - - $pos=strpos($responseSiege, ' size="-1"> Raison sociale et Enseigne :'); - $len=127; - if ($pos==0){ - $pos=strpos($responseSiege, ' size="-1"> Raison sociale et Enseigne :'); - $len=122; - if ($pos==0){ - $pos=strpos($responseSiege, ' size="-1"> Raison sociale et Enseigne :'); - $len=126; - $libelleErreur='Informations INSEE non diffusables'; - } - } - if ($libelleErreur=='') { - //LARGE*DOMINIQUE MICHEL/
    GERANT SARL BIMAGIQUE  
    - $posFin=strpos($responseSiege, '', $pos+$len); - $raisonSocialeStr=trim(substr($responseSiege, $pos+$len, $posFin-($pos+$len))); - $raisonSocialeTabLigne=explode('
    ', $raisonSocialeStr); - $tabRet['raisonSociale']=trim(str_replace(' ', '', html_entity_decode($raisonSocialeTabLigne[0]))); - $tabRet['Enseigne']=trim(str_replace(' ', '', html_entity_decode($raisonSocialeTabLigne[1]))); - - $pos=strpos($responseSiege, ' size="-1"> Activité principale :
    '); - $tabRet['NafCode']=substr($responseSiege, $pos+120, 4); - $tabRet['NafLib']=trim(substr($responseSiege, $pos+137, 70)); - - $pos=strpos($responseSiege, ' size="-1"> Adresse :'); - $posFin=strpos($responseSiege, '', $pos+103); - $AdresseStr=substr($responseSiege, $pos+103, $posFin-($pos+103)); - $AdresseTabLigne=explode('
    ', $AdresseStr);//' - $tabRet['AdresseLigne1']=str_replace(' ', '/', $AdresseTabLigne[0]); - $tabRet['AdresseLigne2']=str_replace(' ', '/', $AdresseTabLigne[1]); - $tabRet['AdresseLigne3']=str_replace(' ', '/', $AdresseTabLigne[2]); - /* - $AdresseNum=$AdresseTabLigne1[0]; - $AdresseVoi=$AdresseTabLigne1[1]; - $AdresseRue=$AdresseTabLigne1[2]; - $AdresseCP=$AdresseTabLigne2[0]; - $AdresseVille=$AdresseTabLigne2[1]; - */ - $pos=strpos($responseSiege, 'L\'entreprise est connue au répertoire comme '); - if ($pos>0) { - $posFin=strpos($responseSiege, '', $pos+106); - $tabRet['etatJuridique']=html_entity_decode(substr($responseSiege, $pos+106, $posFin-($pos+106))); - $tabRet['dateEtatJuridique']=''; - } else { - $pos=strpos($responseSiege, 'L\'entreprise est cessée le : '); - $tabRet['dateEtatJuridique']=substr($responseSiege, $pos+86, 10); - $tabRet['etatJuridique']='cessée'; - } - //echo 'GetDataEtab="'.$libelleErreur."\"\r\n"; - - return $tabRet; - } -} - - -function getDataEntreprise($pageHtml) -{ - global $libelleErreur; - - $responseEntreprise=$pageHtml; - $tabRet=array(); - - if ($libelleErreur=='') { - - $pos=strpos($responseEntreprise, 'size="-1"> Date de création :
    '); - if ($pos>0) - $tabRet['dateCreationEntrep']=substr($responseEntreprise, $pos+109, 10); - else - $tabRet['dateCreationEntrep']=''; - - // Raison sociale et Sigle - $pos=strpos($responseEntreprise, ' size="-1"> Raison sociale et Sigle :'); - $posFin=strpos($responseEntreprise, '', $pos+123); - $raisonSocialeStr=trim(substr($responseEntreprise, $pos+123, $posFin-($pos+123))); - $raisonSocialeTabLigne=explode('
    ', $raisonSocialeStr); - $tabRet['raisonSocialeEntrep']=trim(str_replace(' ', '', html_entity_decode($raisonSocialeTabLigne[0]))); - $tabRet['sigle']=trim(str_replace(' ', '', html_entity_decode($raisonSocialeTabLigne[1]))); - - // Activité prinicpale Entrep - $pos=strpos($responseEntreprise, ' size="-1"> Activité principale :
    '); - $tabRet['NafCodeEntrep']=substr($responseEntreprise, $pos+120, 4); - $tabRet['NafLibEntrep']=trim(substr($responseEntreprise, $pos+137, 70)); - - // Forme Juridique - $pos=strpos($responseEntreprise, ' size="-1"> Forme juridique :'); - $tabRet['FJCodeEntrep']=substr($responseEntreprise, $pos+116, 4); - $tabRet['FJLibEntrep']=trim(substr($responseEntreprise, $pos+133, 70)); - - // Nb Etab Actifs - $pos=strpos($responseEntreprise, ' size="-1"> Nb établissements actifs :'); - $posFin=strpos($responseEntreprise, '', $pos+118); - $tabRet['nbEtabActifs']=trim(str_replace(' ', '', html_entity_decode(substr($responseEntreprise, $pos+118, $posFin-($pos+118))))); - } - return $tabRet; -} - -/* -* parseHtml.php -* Author: Carlos Costa Jordao -* Email: carlosjordao@yahoo.com -* -* My notation of variables: -* i_ = integer, ex: i_count -* a_ = array, a_html -* b_ = boolean, -* s_ = string -* -* What it does: -* - parses a html string and get the tags -* - exceptions: html tags like

    , etc -* - At the end, the array will look like this: -* ["IMG"][0]["SRC"] = "xxx" -* ["IMG"][1]["SRC"] = "xxx" -* ["IMG"][1]["ALT"] = "xxx" -* ["A"][0]["HREF"] = "xxx" -* -*/ -function parseHtml( $s_str ) -{ - $i_indicatorL = 0; - $i_indicatorR = 0; - $s_tagOption = ''; - $i_arrayCounter = 0; - $a_html = array(); - // Search for a tag in string - while( is_int(($i_indicatorL=strpos($s_str,'<',$i_indicatorR))) ) { - // Get everything into tag... - $i_indicatorL++; - $i_indicatorR = strpos($s_str,'>', $i_indicatorL); - $s_temp = substr($s_str, $i_indicatorL, ($i_indicatorR-$i_indicatorL) ); - $a_tag = explode( ' ', $s_temp ); - // Here we get the tag's name - list( ,$s_tagName,, ) = each($a_tag); - $s_tagName = strtoupper($s_tagName); - // Well, I am not interesting in
    , or anything else like that... - // So, this is false for tags without options. - $b_boolOptions = is_array(($s_tagOption=each($a_tag))) && $s_tagOption[1]; - if( $b_boolOptions ) { - // Without this, we will mess up the array - $i_arrayCounter = (int)count($a_html[$s_tagName]); - // get the tag options, like src="htt://". Here, s_tagTokOption is 'src' and s_tagTokValue is '"http://"' - - do { - $s_tagTokOption = strtoupper(strtok($s_tagOption[1], "=")); - $s_tagTokValue = trim(strtok("=")); - $a_html[$s_tagName][$i_arrayCounter][$s_tagTokOption] = - $s_tagTokValue; - $b_boolOptions = is_array(($s_tagOption=each($a_tag))) && - $s_tagOption[1]; - } while( $b_boolOptions ); - } - } - return $a_html; -} - -function getDataEntrepriseRNCS($pageHtml) { - - global $libelleErreur; - - $tabRet=array(); - - // Liste et liens vers les Bilans - $tabRet['tabListeBilans']=getTabListeBilans($pageHtml); - $tabRet['raisonSociale']=getTextInHtml($pageHtml, '

    ', '
    ', '
    '); - $tabRet['RCS']=getTextInHtml($pageHtml, 'RCS ', 'RCS ', '', true); - $tabRet['activite']=getTextInHtml($pageHtml, '
    ActivitéSiège - social
    Siège - social75 Avenue la Grande Armee
    - 75116 PARIS 16
    -

    -
    -
    - - - - - - -
    Renseignements - juridiques 
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Forme - juridiqueSA à conseil d'administration
    Capital social171.285.000,00 - EURO
    NationalitéFrance
    -

    -
    -
    -
    - - - - - - -
    Chiffres - clésau 31-12-2004
    - - - - - - - - - - - - - - - -
    Chiffre - d'affaires18.049.000.000 - EU
    EffectifDe 5150 à 5720
    -

    -
    -
    -
    -
    - */ - return $tabRet; -} - -function getDataEcoCoface($pageHtml) { - - global $libelleErreur; - - $tabRet=array(); - - // SIREN - $pos=strpos($pageHtml, 'La forme juridique ou la date de création trop récente de l\'entreprise ne nous permettant pas d\'obtenir suffisamment d\'informations, nous vous offrons ce produit.'); - if ($pos>0) { - $tabRet['infoEco']='OUI'; - $tabRet['societeInactive']=@getTextInHtml($pageHtml, '', ''); - $strCapital=@getTextInHtml($pageHtml, ''); - $tabTmp=explode('', $strCapital); - $tabRet['capital_source']=str_replace(')', '', $tabTmp[0]); - $tabTmp=explode(' ', $tabTmp[1]); - $tabRet['capital_montant']=str_replace(chr(160), '', trim(strip_tags($tabTmp[0]))); - $tabRet['capital_devise']=trim(strip_tags($tabTmp[1])); - $tabRet['dateCreation']=@getTextInHtml($pageHtml, '', ''); - $tabRet['formeJuridique']=@getTextInHtml($pageHtml, '', ''); - $tabRet['cotationBourse']=@getTextInHtml($pageHtml, '', ''); - $tabRet['effectifSociete']=@getTextInHtml($pageHtml, '', ''); - $tabRet['activite']=@getTextInHtml($pageHtml, '', ''); - - $tabRet['sigle']=@getTextInHtml($pageHtml, '', ''); - $tabRet['enseigne']=@getTextInHtml($pageHtml, '', ''); - - // Dirigeants - $strDir=@getTextInHtml($pageHtml, '', '', '
    Société inactive ', ' Capital   (', '(', '
    Date de création ', ' Forme juridique ', ' Cotation en bourse ', ' Effectif société ', ' Activité ', ' Sigle ', ' Enseigne ', 'IDENTITE 
    '); - $tabDir=explode('', $strDir); - $nbDir=1; - foreach ($tabDir as $key => $dir) - { - $tabTmp=explode(' ', $dir); - $typeDir=trim(strip_tags($tabTmp[0])); - $nomDir=trim(strip_tags($tabTmp[1])); - if ($typeDir<>'' && $typeDir<>'Date de création' && $typeDir<>'Forme juridique' && $typeDir<>'Cotation en bourse' - && $typeDir<>'Effectif société' && $typeDir<>'Société inactive' && $typeDir<>'Activité' - && $typeDir<>'Sigle' && $typeDir<>'Enseigne' - && substr($typeDir, 0, 8) <>'Capital ' ) - { - //$tabDir['Produits'].=$produit.'/'; - //$produit=str_replace(' ','_',$produit); - $tabRet['Dirigeant'.$nbDir.'Type']=trim($typeDir); - $tabTmp=explode(' ', $nomDir); - $tabRet['Dirigeant'.$nbDir.'Genre']=trim($tabTmp[0]); - $tabRet['Dirigeant'.$nbDir.'Prenom']=trim($tabTmp[1]); - $tabRet['Dirigeant'.$nbDir.'Nom']=trim($tabTmp[2]); - $nbDir++; - } - } - $tabRet['NbDirigeants']=$nbDir-1; - - // Liens Financiers - $strTmp=@getTextInHtml($pageHtml, 'LIENS FINANCIERS', ' ', ''); - if (strpos($strTmp, 'Néant')>0) - $tabRet['LiensFinanciers']='Néant'; - else - $tabRet['LiensFinanciers']='Présence liens'; - - // ELEMENTS FINANCIERS - $strTmp=@getTextInHtml($pageHtml, 'ELEMENTS FINANCIERS', ' ', ''); - if (strpos($strTmp, 'Néant')>0) - $tabRet['ElementsFinanciers']='Néant'; - else - $tabRet['ElementsFinanciers']='Présence El.Fi.'; - } - else - $tabRet['infoEco']='NON'; - - //echo $pageHtml; - //print_r($tabRet); - //die(); - - return $tabRet; -} - - -function getDataEntrepriseCoface($pageHtml) { - - global $libelleErreur; - - $tabRet=array(); - - // SIREN - $tabRet['siren']=@getTextInHtml($pageHtml, 'portail/entreprise_identite/identite.asp?nsiren=', '?nsiren=', '&IMPRESSION=OUI'); - //$tabRet['siren']=@getTextInHtml($pageHtml, '
     Qui sommes nous - Qui sommes nous - Raison sociale
    ', '', ''); - $tabRS_Adr=explode('
    ', $strRS_Adr); - $tabRet['raisonSociale']=trim($tabRS_Adr[0]); - $tabRS_Adr1=explode(' ', $tabRS_Adr[1]); - $tabRet['AdresseLigne1']=trim($tabRS_Adr1[0]); - $tabRet['AdresseLigne2']=trim($tabRS_Adr1[1]); - $tabRS_Adr1=explode(' ', $tabRS_Adr[2]); - $tabRet['codePostal']=trim($tabRS_Adr1[0]); - $tabRet['ville']=trim($tabRS_Adr1[1]); - $tabRet['UrlGeoLoc']=@getTextInHtml($pageHtml, '
    Téléphone
    ', '', ''); - $tabTelFax=explode('
    ', $strTelFax); - $tabRet['tel']=trim($tabTelFax[0]); - $tabRet['fax']=trim($tabTelFax[1]); - - // Adresse Internet / Email - $strInet=@getTextInHtml($pageHtml, 'Adresse internet
    ', '
    ', '>', '') ); - $tabRet['mail']=trim( @getTextInHtml($tabInet[1], ' href="mailto:', ':', '">') ); - - // Bourse - $strBourse=@getTextInHtml($pageHtml, ' '."\r\n".' Code Sicovam
    ', '', ''); - $tabBourse=explode('
    ', $strBourse); - $tabRet['bourse_isin']=trim($tabBourse[0]); - $tabRet['bourse_marche']=trim($tabBourse[1]); - $tabRet['bourse_ville']=trim($tabBourse[2]); - - // Activité - $tabRet['activite']=trim(str_replace(' ', ' ', @getTextInHtml($pageHtml, 'Libellé code activité ', '', ''))); - - // Produits disponibles - $strDispos=@getTextInHtml($pageHtml, '
    Produits disponibles


    ', '', '
    '); - $tabDispos=explode(' $produit) - { - $produit=trim(str_replace('>', '', str_replace('nowrap>', '', strip_tags($produit)))); - if ($produit<>'' && $produit<>' ') { - $tabRet['Produits'].=$produit.'/'; - $produit=str_replace(' ','_',$produit); - $tabRet['Produit_'.$produit]='Oui'; - } - } -// print_r($tabRet); -// die(); - - return $tabRet; -} - - -function getTabListeBilans($pageHtml) { - $tabUrl=array(); - $deb=$fin=0; - while( is_int(($deb=strpos($pageHtml,'', $s_temp); - $tabUrl[$a_temp[1]]=$a_temp[0]; - } - return $tabUrl; -} - -function getTabListeGU($pageHtml) { - $tabGU=array(); - $deb=$fin=0; - /* Lancer la recherche dans toute la localité -Lancer la recherche sans l'adresse -*/ - while( is_int(($deb=strpos($pageHtml,'', $s_temp); - $tabGU[$a_temp[1]]=$a_temp[0]; - } - return $tabGU; -} - -function getTabListeNonTrouve($pageHtml) { - $tabGU=array(); - $deb=$fin=0; - /* onMouseOver="javascript:mOvr(this);" onMouseOut="javascript:mOut(this);">Lancer la recherche dans toute la localité - onMouseOver="javascript:mOvr(this);" onMouseOut="javascript:mOut(this);">Lancer la recherche sans l'adresse -*/ - while( is_int(($deb=strpos($pageHtml,'onMouseOver="javascript:mOvr(this);" onMouseOut="javascript:mOut(this);">', $s_temp); - $tabGU[$a_temp[1]]=$a_temp[0]; - } - return $tabGU; -} -/** Recherche un texte dans une page HTML - ** - **/ -function getTextInHtml($pageHtml, $strToFind, $strDeb, $strEnd, $include_strDeb=false, $include_strEnd=false, $ltrim=true, $rtrim=true, &$fin, $nbOcc=1) { - $tabRet=array(); - $deb=$nbOccTrouve=0; - while( is_int(($deb=strpos($pageHtml,$strToFind,$fin))) ) { - $deb++; - $deb2 = strpos($pageHtml,$strDeb, $deb); - $fin = strpos($pageHtml,$strEnd, $deb2); - if (!$include_strDeb) - $deb2+=strlen($strDeb); - $s_temp = substr($pageHtml, $deb2, ($fin-$deb2)); - - if ($ltrim) $s_temp=ltrim($s_temp); - if ($rtrim) $s_temp=rtrim($s_temp); - - if ($nbOcc==1) return $s_temp; - //echo $s_temp."\r\n"; - //$a_temp = explode('" class="basic">', $s_temp); - $tabUrl[$nbOccTrouve]=$s_temp; - $nbOccTrouve++; - - if ($nbOcc==$nbOccTrouve) { - // echo "j'ai trouvé le nb demandé, je sort\r\n"; - break; - }; - } - - return $tabUrl; - /* -
  • Le type de voie a été modifié
    -
  • L'orthographe du mot directeur a été modifiée
    -
  • Le code postal a été forcé à partir du département et de la localité
    -*/ -} - ?> \ No newline at end of file diff --git a/library/Metier/common/normad.class.php b/library/Metier/common/normad.class.php deleted file mode 100644 index 7419b526..00000000 --- a/library/Metier/common/normad.class.php +++ /dev/null @@ -1,89 +0,0 @@ -$adrL2, //htmlentities($adrL2), - 'ad2'=>$adrL3, //htmlentities($adrL3), - 'ad3'=>$adrL4, //htmlentities($adrL4), - 'ad4'=>$adrL5, //htmlentities($adrL5), - 'cod'=>$codPos, - 'loc'=>htmlentities($ville), - 'hiddenField'=>'GEN',); - $tabHtml=getUrl(SITE_NORMAD.'traiter_adresse.php', '', $postData, SITE_NORMAD.'validez.php', true, HOST_NORMAD); - $page=$tabHtml['body']; - $posInHtml=0; - $tabRet=array(); - - $retour=trim(str_replace(chr(173), '', getTextInHtml($page, '', '', '', false, true, true, true, $posInHtml))); - $retour=explode('[*', $retour); - $tabRet['retour_code']=str_replace(']','',$retour[1]); - $tabRet['retour_libelle']=trim($retour[0]); - $tabRet['retour_messages']=getTextInHtml($page, '
  • ', 'i>', '
    ', false, false, true, true, $posInHtml, 0); - - // Récupération des Lignes d'adresse - $tabRet['ligne1']=$adrL1; - $tabRet['ligne2']=getTextInHtml($page, 'Adresse en sortie :', '', '', false, false, true, true, $posInHtml); - $tabRet['ligne3']=getTextInHtml($page, ' Volet 2 : ', '', '', false, false, true, true, $posInHtml); - $tabRet['ligne4']=getTextInHtml($page, ' Volet ', '', '', false, false, true, true, $posInHtml); - $tabRet['ligne5']=getTextInHtml($page, ' Volet 4 : ', '', '', false, false, true, true, $posInHtml); - $tabRet['CP']=getTextInHtml($page, ' CP : ', '', '', false, false, true, true, $posInHtml); - $tabRet['ville']=getTextInHtml($page, ' Localité : ', '', '', false, false, true, true, $posInHtml); - $tabRet['ligne6']=$tabRet['CP'] .' '. $tabRet['ville']; - - // Découpage de la rue - $tabRet['voie_num']=getTextInHtml($page, 'Numéro ', '', '
    ', false, false, true, true, $posInHtml); - $tabRet['voie_btq']=getTextInHtml($page, 'Bis/Ter/Quater/...', '', '
    ', false, false, true, true, $posInHtml); - $tabRet['voie_type']=getTextInHtml($page, 'Type', '', '
    ', false, false, true, true, $posInHtml); - $tabRet['voie_denom']=getTextInHtml($page, 'Dénomination', '', '
    ', false, false, true, true, $posInHtml); - $tabRet['voie_motDir']=getTextInHtml($page, 'directeur :
    ', '', '
    ', false, false, true, true, $posInHtml); - $tabRet['voie_matric']=getTextInHtml($page, 'Matricule voie :', '
    ', '
    ', false, true, true, true, $posInHtml); - $tabRet['code_insee_commune']=getTextInHtml($page, 'Code INSEE commune :', '
    ', '
    ', false, true, true, true, $posInHtml); - - print_r($tabRet); - //echo "$voie_num\r\n$voie_btq\r\n$voie_type\r\n$voie_denom\r\n$voie_motDir\r\n$voie_matric\r\n$code_insee_commune\r\n"; - } - -/* - Détails :
    - - 00441644
    - - 28074
    -
    -
    - - - -
    - - - -

     

    -

    Référentiels - d'avril 2006

    -*/ - - } ?> \ No newline at end of file diff --git a/library/Metier/common/paramCotation.inc b/library/Metier/common/paramCotation.inc deleted file mode 100644 index 6fcc5416..00000000 --- a/library/Metier/common/paramCotation.inc +++ /dev/null @@ -1,170 +0,0 @@ -tabNotation['A+']=array('Exceptionnel', 'A3++', 'Aaa' ,'AAA' ,'0.001'); - $this->tabNotation['A'] =array('Excellent', 'A3+', 'Aa1 Aa2 Aa3' ,'AA+ AA AA-' ,'0.01'); - $this->tabNotation['B+']=array('Très bon', '3++', 'A1' ,'A+' ,'0.02'); - $this->tabNotation['B'] =array('Bon', '3+', 'A2 A3' ,'A A-' ,'0.04'); - $this->tabNotation['C+']=array('Assez bon', '3', 'Baa1' ,'BBB+' ,'0.15'); - $this->tabNotation['C'] =array('Acceptable', '3', 'Baa2' ,'BBB' ,'0.30'); - $this->tabNotation['C-']=array('Moyen', '3', 'Baa3' ,'BBB-' ,'0.60'); - $this->tabNotation['D+']=array('Passable', '4+', 'Ba1' ,'BB+' ,'0.90'); - $this->tabNotation['D'] =array('Médiocre', '4', 'Ba2' ,'BB' ,'1.25'); - $this->tabNotation['D-']=array('Très médiocre', '4', 'Ba3' ,'BB-' ,'1.60'); - $this->tabNotation['E+']=array('Mauvais (sous surveillance)', '5', 'B1 B2 B3', 'B+ B B-', '5.00'); - $this->tabNotation['E'] =array('Très mauvais (sensible, sans incident)', '6', 'Caa', 'CCC', '14.00'); - $this->tabNotation['E-']=array('Très mauvais (sensible avec incidents)', '8', 'Ca C', 'CC C', '17.00'); - $this->tabNotation['F'] =array('En défaut, hors procédures judiciaires (douteux)', '8 9', 'D', 'D', 'Défaut'); - $this->tabNotation['Z'] =array('En défaut, avec procédures judiciaires ou contentieuses (douteux)', 'P', '', '', 'Défaut'); - - $this->tabLibActivite[0]=''; - $this->tabLibActivite[15]='Industries Alimentaires : Collecte Appro'; - $this->tabLibActivite[3]='Industries Alimentaires : Collecte et 1ère transformation'; - $this->tabLibActivite[5]='Industries Alimentaires : Eaux de vie et Champagne'; - $this->tabLibActivite[2]='Industries Alimentaires : Autres activités'; - $this->tabLibActivite[6]='Industries extractives / Production Distribution : Énergie Eau'; - $this->tabLibActivite[7]='Construction - BTP'; - $this->tabLibActivite[1]='Industries Manufacturières'; - $this->tabLibActivite[8]='Négoce'; - $this->tabLibActivite[4]='Commerce de Gros'; - $this->tabLibActivite[9]='Commerce Distribution'; - $this->tabLibActivite[10]='Grande Distribution'; - $this->tabLibActivite[12]='Transports'; - $this->tabLibActivite[13]='Media Technologie de l\'information'; - $this->tabLibActivite[14]='Services'; - $this->tabLibActivite[11]='Hôtellerie et Loisirs / Activités immobilières'; - $this->tabLibActivite[16]='Banques. Assurances. Activités financières'; - $this->tabLibActivite[17]='Agriculture. Sylviculture. Pêche. Aquaculture'; - - $this->tabActivite[15]=array('512A'); - $this->tabActivite[3]=array('151A','151C','152','153E','155','157','159G','159J','159N','159Q'); - $this->tabActivite[5]=array('159A','159F'); - $this->tabActivite[2]=array('151E','151F','153A','153C','153F','154','156','158','159B','159D','159L','159S','159T'); - $this->tabActivite[6]=array('11','10','12','13','14','401','402','403','410'); - $this->tabActivite[7]=array('451','452','453','454','455'); - $this->tabActivite[1]=array('251','252','241','242','243','245','246','247','261','262','263','264','265','266','267','268','244','297','300','311','312','313','314','315','316','321','322','323','17','18','19','20','21','271','272','273','274','275','281','282','283','284','285','286','287','291','292','293','294','295','296','341','342','343','353','351','352','354','355','223','331','332','333','334','335','361','362','363','364','365','366','231','232','233','222','371','372'); - $this->tabActivite[8]=array(); - $this->tabActivite[4]=array('511A','511N','511P','512C','512E','512G','512J','513','511C','515A','515C','511E','511G','511J','511L','511R','511T','511U','514','515E','515F','515H','515J','515L','515N','515Q','516','517'); - $this->tabActivite[9]=array('501','502','503','504','505','521A','521B','521C','521J','522','523','524A','524C','524E','524F','524H','524J','524L','524N','524R','524T','524U','524V','524W','524X','524Y','524Z','525','526'); - $this->tabActivite[10]=array('521D','521E','521F','521H','524P'); - $this->tabActivite[12]=array('621','622','623','611','612','602','603','631','632','634','634B','634C','634A','641'); - $this->tabActivite[13]=array('221','722','721','723','724','725','726','924','642','922','921'); - $this->tabActivite[14]=array('703','712E','711','712A','713','714','712C','741A','741C','741E','741G','742','743','741J','744','745','746','747','748','900','633','801','802','803','804','851','852','853','930','911','912','913','527','950'); - $this->tabActivite[11]=array('923','925','926','927','551','552','553','554','555','702'); - $this->tabActivite[16]=array('651','660','672','652E','652A','652C','652F','671'); - $this->tabActivite[17]=array('751','990','752','990','701'); - - $this->tabR[1][0]=array(); - $this->tabR[1][1]=array('0:15.5','15.5:21.7','21.7:25','25:29.1','29.1:33.4','33.4:37','37:40','40:42.6','42.6:44.9','44.9:100'); - $this->tabR[1][2]=array('0:18.7','18.7:22.8','22.8:25','25:27.7','27.7:30.6','30.6:33','33:35','35:36.7','36.7:38.3','38.3:100'); - $this->tabR[1][3]=array('0:18.7','18.7:22.8','22.8:25','25:27.7','27.7:30.6','30.6:33','33:35','35:36.7','36.7:38.3','38.3:100'); - $this->tabR[1][4]=array('0:8.7','8.7:12.8','12.8:15','15:17.7','17.7:20.6','20.6:23','23:25','25:26.7','26.7:28.3','28.3:100'); - $this->tabR[1][5]=array('0:18.7','18.7:22.8','22.8:25','25:27.7','27.7:30.6','30.6:33','33:35','35:36.7','36.7:38.3','38.3:100'); - $this->tabR[1][6]=array('0:20.5','20.5:26.7','26.7:30','30:34.1','34.1:38.4','38.4:42','42:45','45:47.6','47.6:49.9','49.9:100'); - $this->tabR[1][7]=array('0:13.7','13.7:17.8','17.8:20','20:22.7','22.7:25.6','25.6:28','28:30','30:31.7','31.7:33.3','33.3:100'); - $this->tabR[1][8]=array('0:3.7','3.7:7.8','7.8:10','10:12.7','12.7:15.6','15.6:18','18:20','20:21.7','21.7:23.3','23.3:100'); - $this->tabR[1][9]=array('0:13.7','13.7:17.8','17.8:20','20:22.7','22.7:25.6','25.6:28','28:30','30:31.7','31.7:33.3','33.3:100'); - $this->tabR[1][10]=array('0:5.7','5.7:9.8','9.8:12','12:14.7','14.7:17.6','17.6:20','20:22','22:23.7','23.7:25.3','25.3:100'); - $this->tabR[1][11]=array('0:18.7','18.7:22.8','22.8:25','25:27.7','27.7:30.6','30.6:33','33:35','35:36.7','36.7:38.3','38.3:100'); - $this->tabR[1][12]=array('0:13.7','13.7:17.8','17.8:20','20:22.7','22.7:25.6','25.6:28','28:30','30:31.7','31.7:33.3','33.3:100'); - $this->tabR[1][13]=array('0:23.7','23.7:27.8','27.8:30','30:32.7','32.7:35.6','35.6:38','38:40','40:41.7','41.7:43.3','43.3:100'); - $this->tabR[1][14]=array('0:18.7','18.7:22.8','22.8:25','25:27.7','27.7:30.6','30.6:33','33:35','35:36.7','36.7:38.3','38.3:100'); - $this->tabR[1][15]=array('0:15.5','15.5:21.7','21.7:25','25:29.1','29.1:33.4','33.4:37','37:40','40:42.6','42.6:44.9','44.9:100'); - $this->tabR[1][16]=array('0:6.8','6.8:8.9','8.9:10','10:11.4','11.4:12.8','12.8:14','14:15','15:15.9','15.9:16.6','16.6:100'); - $this->tabR[1][17]=array('0:18.7','18.7:22.8','22.8:25','25:27.7','27.7:30.6','30.6:33','33:35','35:36.7','36.7:38.3','38.3:100'); - - $this->tabR[2][0]=array(); - $this->tabR[2][1]=array('1.8:','1.6:1.8','1.5:1.6','1.4:1,5','1.2:1.4','1.0:1.2','0.9:1.0','0.8:0,9','0.7:0,8','0:0.7'); - $this->tabR[2][2]=array('2.2:','1.9:2.2','1.8:1.9','1.6:1.8','1.4:1.6','1.2:1.4','1.0:1.2','0.9:1.0','0.7:0.9','0:0.7'); - $this->tabR[2][3]=array('2.2:','1.9:2.2','1.8:1.9','1.6:1.8','1.4:1.6','1.2:1.4','1.0:1.2','0.9:1.0','0.7:0.9','0:0.7'); - $this->tabR[2][4]=array('3.0:','2.7:3.0','2.5:2.7','2.3:2.5','2.0:2.3','1.7:2.0','1.5:1.7','1.3:1.5','1.1:1.3','0:1.1'); - $this->tabR[2][5]=array('2.6:','2.4:2.6','2.2:2.4','2.0:2.2','1.7:2.0','1.5:1.7','1.3:1.5','1.1:1.3','1.0:1.1','0:1'); - $this->tabR[2][6]=array('1.7:','1.6:1.7','1.5:1.6','1.4:1.5','1.2:1.4','1.1:1.2','1.0:1.1','0.9:1.0','0.8:0.9','0:0.8'); - $this->tabR[2][7]=array('1.5:','1.4:1.5','1.3:1.4','1.1:1.3','1.0:1.2','0.9:1.0','0.8:0.9','0.7:0.8','0.6:0.7','0:0.6'); - $this->tabR[2][8]=array('10.1:','8.8:10.1','8:8.8','7:8','5.8:7','4.8:5.8','4:4.8','3.3:4','2.8:3.3','0:2.8'); - $this->tabR[2][9]=array('3:','2.7:3','2.5:2.7','2.3:2.5','2:2.3','1.7:2','1.5:1.7','1.3:1.5','1.1:1.3','0:1.1'); - $this->tabR[2][10]=array('3.8:','3.3:3.8','3.0:3.3','2.6:3.0','2.2:2.6','1.8:2.2','1.5:1.8','1.2:1.5','1.0:1.2','0:1'); - $this->tabR[2][11]=array('2.3:','2.1:2.3','2:2.1','1.8:2','1.6:1.8','1.5:1.6','1.3:1.5','1.2:1.3','1:1.2','0:1'); - $this->tabR[2][12]=array('2.3:','2.1:2.3','2:2.1','1.8:2','1.6:1.8','1.5:1.6','1.3:1.5','1.2:1.3','1:1.2','0:1'); - $this->tabR[2][13]=array('1.8:','1.6:1.8','1.5:1.6','1.4:1.5','1.2:1.4','1:1.2','0.9:1','0.8:0.9','0.7:0.8','0:0.7'); - $this->tabR[2][14]=array('1.8:','1.6:1.8','1.5:1.6','1.4:1.5','1.2:1.4','1:1.2','0.9:1','0.8:0.9','0.7:0.8','0:0.7'); - $this->tabR[2][15]=array('2.2:','1.9:2.2','1.7:1.9','1.5:1.7','1.2:1.5','1.0:1.2','0.8:1.0','0.7:0.8','0.5:0.7','0:0.5'); - $this->tabR[2][16]=array('10.1:','8.8:10.1','8:8.8','7:8','5.8:7','4.8:5.8','4:4.8','3.3:4','2.8:3.3','0:2.8'); - $this->tabR[2][17]=array('2.2:','1.9:2.2','1.8:1.9','1.6:1.8','1.4:1.6','1.2:1.4','1:1.2','0.9:1','0.7:0.9','0:0.7'); - - $this->tabR[3][0]=array(); - $this->tabR[3][1]=array('4.4:','4:4.4','3.8:4','3.5:3.8','3.1:3.5','2.8:3.1','2.5:2.8','2.2:2.5','2:2.2','0:2'); - $this->tabR[3][2]=array('5.2:','4.7:5.2','4.5:4.7','4.1:4.5','3.7:4.1','3.3:3.7','3:3.3','2.7:3','2.4:2.7','0:2.4'); - $this->tabR[3][3]=array('5.2:','4.7:5.2','4.5:4.7','4.1:4.5','3.7:4.1','3.3:3.7','3:3.3','2.7:3','2.4:2.7','0:2.4'); - $this->tabR[3][4]=array('5.2:','4.7:5.2','4.5:4.7','4.1:4.5','3.7:4.1','3.3:3.7','3:3.3','2.7:3','2.4:2.7','0:2.4'); - $this->tabR[3][5]=array('8.6:','7.9:8.6','7.5:7.9','6.9:7.5','6.2:6.9','5.6:6.2','5:5.6','4.5:5','4:4.5','0:4'); - $this->tabR[3][6]=array('4.4:','4:4.4','3.8:4','3.5:3.8','3.1:3.5','2.8:3.1','2.5:2.8','2.2:2.5','2:2.2','0:2'); - $this->tabR[3][7]=array('4.4:','4:4.4','3.8:4','3.5:3.8','3.1:3.5','2.8:3.1','2.5:2.8','2.2:2.5','2:2.2','0:2'); - $this->tabR[3][8]=array('10.9:','9.7:10.9','9:9.7','8:9','6.8:8','5.8:6.8','5:5.8','4.3:5','3.7:4.3','0:3.7'); - $this->tabR[3][9]=array('5.2:','4.7:5.2','4.5:4.7','4.1:4.5','3.7:4.1','3.3:3.7','3:3.3','2.7:3','2.4:2.7','0:2.4'); - $this->tabR[3][10]=array('5.2:','4.7:5.2','4.5:4.7','4.1:4.5','3.7:4.1','3.3:3.7','3:3.3','2.7:3','2.4:2.7','0:2.4'); - $this->tabR[3][11]=array('5.2:','4.7:5.2','4.5:4.7','4.1:4.5','3.7:4.1','3.3:3.7','3:3.3','2.7:3','2.4:2.7','0:2.4'); - $this->tabR[3][12]=array('5.9:','5.4:5.9','5:5.4','4.5:5','3.9:4.5','3.4:3.9','3:3.4','2.6:3','2.3:2.6','0:2.3'); - $this->tabR[3][13]=array('4.2:','3.8:4.2','3.5:3.8','3.1:3.5','2.7:3.1','2.3:2.7','2:2.3','1.7:2','1.5:1.7','0:1.5'); - $this->tabR[3][14]=array('4.2:','3.8:4.2','3.5:3.8','3.1:3.5','2.7:3.1','2.3:2.7','2:2.3','1.7:2','1.5:1.7','0:1.5'); - $this->tabR[3][15]=array('6.9:','6.3:6.9','6.0:6.3','5.5:6.0','5.0:5.5','4.5:5.0','4.0:4.5','3.6:4.0','3.2:3.6','0:3.2'); - $this->tabR[3][16]=array('10.9:','9.7:10.9','9:9.7','8:9','6.8:8','5.8:6.8','5:5.8','4.3:5','3.7:4.3','0:3.7'); - $this->tabR[3][17]=array('5.2:','4.7:5.2','4.5:4.7','4.1:4.5','3.7:4.1','3.3:3.7','3:3.3','2.7:3','2.4:2.7','0:2.4'); - - $this->tabR[4][0]=array(); - $this->tabR[4][1]=array('0:2','2:2.3','2.3:2.5','2.5:2.9','2.9:3.5','3.5:4.2','4.2:5','5:6','6:7.2','7.2:'); - $this->tabR[4][2]=array('0:2','2:2.3','2.3:2.5','2.5:2.9','2.9:3.5','3.5:4.2','4.2:5','5:6','6:7.2','7.2:'); - $this->tabR[4][3]=array('0:2','2:2.3','2.3:2.5','2.5:2.9','2.9:3.5','3.5:4.2','4.2:5','5:6','6:7.2','7.2:'); - $this->tabR[4][4]=array('0:2','2:2.3','2.3:2.5','2.5:2.9','2.9:3.5','3.5:4.2','4.2:5','5:6','6:7.2','7.2:'); - $this->tabR[4][5]=array('0:1.36','1.36:1.44','1.44:1.5','1.5:1.58','1.58:1.71','1.71:1.85','1.85:2','2:2.16','2.16:2.33','2.33:'); - $this->tabR[4][6]=array('0:2','2:2.3','2.3:2.5','2.5:2.9','2.9:3.5','3.5:4.2','4.2:5','5:6','6:7.2','7.2:'); - $this->tabR[4][7]=array('0:2','2:2.3','2.3:2.5','2.5:2.9','2.9:3.5','3.5:4.2','4.2:5','5:6','6:7.2','7.2:'); - $this->tabR[4][8]=array('0:1.1','1.1:1.2','1.2:1.3','1.3:1.4','1.4:1.6','1.6:1.8','1.8:2','2:2.2','2.2:2.5','2.5:'); - $this->tabR[4][9]=array('0:2','2:2.3','2.3:2.5','2.5:2.9','2.9:3.5','3.5:4.2','4.2:5','5:6','6:7.2','7.2:'); - $this->tabR[4][10]=array('0:2','2:2.3','2.3:2.5','2.5:2.9','2.9:3.5','3.5:4.2','4.2:5','5:6','6:7.2','7.2:'); - $this->tabR[4][11]=array('0:2','2:2.3','2.3:2.5','2.5:2.9','2.9:3.5','3.5:4.2','4.2:5','5:6','6:7.2','7.2:'); - $this->tabR[4][12]=array('0:2','2:2.3','2.3:2.5','2.5:2.9','2.9:3.5','3.5:4.2','4.2:5','5:6','6:7.2','7.2:'); - $this->tabR[4][13]=array('0:2.4','2.4:2.7','2.7:3','3:3.4','3.4:4.1','4.1:5','5:6','6:7.2','7.2:8.7','8.7:'); - $this->tabR[4][14]=array('0:2.4','2.4:2.7','2.7:3','3:3.4','3.4:4.1','4.1:5','5:6','6:7.2','7.2:8.7','8.7:'); - $this->tabR[4][15]=array('0:2.9','2.9:3.4','3.4:3.7','3.7:4.3','4.3:5.2','5.2:6.2','6.2:7.5','7.5:9.1','9.1:10.9','10.9:'); - $this->tabR[4][16]=array('0:1.1','1.1:1.2','1.2:1.3','1.3:1.4','1.4:1.6','1.6:1.8','1.8:2','2:2.2','2.2:2.5','2.5:'); - $this->tabR[4][17]=array('0:2','2:2.3','2.3:2.5','2.5:2.9','2.9:3.5','3.5:4.2','4.2:5','5:6','6:7.2','7.2:'); - - $this->tabR[5][0]=array(); - $this->tabR[5][1]=array('-99:-40','-40:-34','-34:-30','-30:-24','-24:-16','-16:-8','-8:0','0:8.1','8.1:16.1','16.1:'); - $this->tabR[5][2]=array('-99:-40','-40:-34','-34:-30','-30:-24','-24:-16','-16:-8','-8:0','0:8.1','8.1:16.1','16.1:'); - $this->tabR[5][3]=array('-99:-40','-40:-34','-34:-30','-30:-24','-24:-16','-16:-8','-8:0','0:8.1','8.1:16.1','16.1:'); - $this->tabR[5][4]=array('-99:-16.7','-16.7:-12.7','-12.7:-10','-10:-6','-6:-0.7','-0.7:4.7','4.7:10','10:15.3','15.3:20.7','20.7:'); - $this->tabR[5][5]=array('-999:-420','-420:-384','-384:-360','-360:-324','-324:-276','-276:-228','-228:-180','-180:-132','-132:-84','-84:'); - $this->tabR[5][6]=array('-99:-40','-40:-34','-34:-30','-30:-24','-24:-16','-16:-8','-8:0','0:8.1','8.1:16.1','16.1:'); - $this->tabR[5][7]=array('-99:-30','-30:-24','-24:-20','-20:-14','-14:-6','-6:2','2:10','10:18','18:26','26:'); - $this->tabR[5][8]=array('-99:-41.7','-41.7:-34.7','-34.7:-30','-30:-23','-23:-13.7','-13.7:-4.3','-4.3:5','5:14.3','14.3:23.7','23.7:'); - $this->tabR[5][9]=array('-99:-16.7','-16.7:-12.7','-12.7:-10','-10:-6','-6:-0.7','-0.7:4.7','4.7:10','10:15.3','15.3:20.7','20.7:'); - $this->tabR[5][10]=array('-99:-5','-5:-2','-2:0','0:3','3:7','7:11','11:15','15:19','19:23','23:'); - $this->tabR[5][11]=array('-99:-6.7','-6.7:-2.7','-2.7:0','0:4','4:9.3','9.3:14.7','14.7:20','20:25.3','25.3:30.7','30.7:'); - $this->tabR[5][12]=array('-99:-6.7','-6.7:-2.7','-2.7:0','0:4','4:9.3','9.3:14.7','14.7:20','20:25.3','25.3:30.7','30.7:'); - $this->tabR[5][13]=array('-99:-6.7','-6.7:-2.7','-2.7:0','0:4','4:9.3','9.3:14.7','14.7:20','20:25.3','25.3:30.7','30.7:'); - $this->tabR[5][14]=array('-99:-6.7','-6.7:-2.7','-2.7:0','0:4','4:9.3','9.3:14.7','14.7:20','20:25.3','25.3:30.7','30.7:'); - $this->tabR[5][15]=array('-99:-38.3','-38.3:-36.3','-36.3:-35.0','-35:-33','-33.0:-30','-30:-27.7','-27.7:-25.0','-25.0:-22.3','-22.3:-19.7','-19.7:'); - $this->tabR[5][16]=array('-99:-41.7','-41.7:-34.7','-34.7:-30','-30:-23','-23:-13.7','-13.7:-4.3','-4.3:5','5:14.3','14.3:23.7','23.7:'); - $this->tabR[5][17]=array(':-58.3','-58.3:53.3','-53.3:-50','-50:-45','-45:-38.3','-38.3:-31.7','-31.7:-25','-25:-18.3','-18.3:-11.7','-11.7:'); - - $this->tabR[6][0]=array(); - $this->tabR[6][1]=array('0:6','6:6.6','6.6:7','7:7.6','7.6:8.4','8.4:9.2','9.2:10','10:10.8','10.8:11.6','11.6:'); - $this->tabR[6][2]=array('0:6','6:6.6','6.6:7','7:7.6','7.6:8.4','8.4:9.2','9.2:10','10:10.8','10.8:11.6','11.6:'); - $this->tabR[6][3]=array('0:1.5','1.5:2.1','2.1:2.5','2.5:3.1','3.1:3.9','3.9:4.7','4.7:5.5','5.5:6.3','6.3:7.1','7.1:'); - $this->tabR[6][4]=array('0:1.8','1.8:2.2','2.2:2.5','2.5:2.9','2.9:3.4','3.4:4','4:4.5','4.5:5','5:5.6','5.6:'); - $this->tabR[6][5]=array('0:6.7','6.7:7.5','7.5:8','8:8.8','8.8:9.9','9.9:10.9','10.9:12','12:13.1','13.1:14.1','14.1:'); - $this->tabR[6][6]=array('0:7.7','7.7:8.5','8.5:9','9:9.8','9.8:10.9','10.9:11.9','11.9:13','13:14.1','14.1:15.1','15.1:'); - $this->tabR[6][7]=array('0:3','3:3.6','3.6:4','4:4.6','4.6:5.4','5.4:6.2','6.2:7','7:7.8','7.8:8.6','8.6:'); - $this->tabR[6][8]=array('0:1.3','1.3:1.7','1.7:2','2:2.4','2.4:2.9','2.9:3.5','3.5:4','4:4.5','4.5:5.1','5.1:'); - $this->tabR[6][9]=array('0:1.8','1.8:2.2','2.2:2.5','2.5:2.9','2.9:3.4','3.4:4','4:4.5','4.5:5','5:5.6','5.6:'); - $this->tabR[6][10]=array('0:1.3','1.3:1.7','1.7:2','2:2.4','2.4:2.9','2.9:3.5','3.5:4','4:4.5','4.5:5.1','5.1:'); - $this->tabR[6][11]=array('0:8.3','8.3:9.3','9.3:10','10:11','11:12.3','12.3:13.7','13.7:15','15:16.3','16.3:17.7','17.7:'); - $this->tabR[6][12]=array('0:4.7','4.7:5.5','5.5:6','6:6.8','6.8:7.9','7.9:8.9','8.9:10','10:11.1','11.1:12.1','12.1:'); - $this->tabR[6][13]=array('0:3','3:4.8','4.8:6','6:7.8','7.8:10.2','10.2:12.6','12.6:15','15:17.4','17.4:19.8','19.8:'); - $this->tabR[6][14]=array('0:3','3:4.8','4.8:6','6:7.8','7.8:10.2','10.2:12.6','12.6:15','15:17.4','17.4:19.8','19.8:'); - $this->tabR[6][15]=array('0:2','2:2.3','2.3:2.5','2.5:2.8','2.8:3.2','3.2:3.6','3.6:4.0','4.0:4.4','4.4:4.8','4.8:'); - $this->tabR[6][16]=array('0:1.7','1.7:1.9','1.9:2','2:2.2','2.2:2.5','2.5:2.7','2.7:3','3:3.3','3.3:3.5','3.5:'); - $this->tabR[6][17]=array('0:4.7','4.7:5.5','5.5:6','6:6.8','6.8:7.9','7.9:8.9','8.9:10','10:11.1','11.1:12.1','12.1:'); - - ?> \ No newline at end of file diff --git a/library/Metier/common/rncs.class.php b/library/Metier/common/rncs.class.php deleted file mode 100644 index cc0c0025..00000000 --- a/library/Metier/common/rncs.class.php +++ /dev/null @@ -1,9 +0,0 @@ - \ No newline at end of file diff --git a/library/Metier/conversion/bilAltares.php b/library/Metier/conversion/bilAltares.php deleted file mode 100644 index 2ad2da20..00000000 --- a/library/Metier/conversion/bilAltares.php +++ /dev/null @@ -1,795 +0,0 @@ -'CR', - 11=>'CR', - 13=>'CR', - 14=>'CR', - 15=>'CR', - 16=>'CR', - 17=>'CR', - 18=>'CR', - 19=>'CR', - 2=>'VT', - 21=>'VT', - 22=>'VT', - 24=>'VT', - 25=>'VT', - 3=>'CE', - 31=>'ME', - 32=>'ME', - 33=>'ME', - 34=>'ME', - 35=>'Rec', - 36=>'MAF', - 37=>'LG', - 38=>'LG', - 39=>'MD', - 4=>'RD', - 41=>'DIS', - 42=>'FLG', - 51=>'RJ', - 52=>'RJ', - 53=>'RA', - 56=>'PIE', - 57=>'SAUVJ', - 58=>'SAUVP', - 59=>'RR', - 6=>'R&L', - 61=>'LB', - 62=>'LJ', - 63=>'FP', - 64=>'INT', - 65=>'LQ', - 69=>'RL', - 7=>'Suite', - 71=>'SRJ', - 72=>'SRLJ', - 73=>'SP', - 74=>'AP', - 75=>'MP', - 76=>'EP', - 77=>'PRO', - 78=>'DC', - 79=>'CIA', - 8=>'INFR', - 91=>'DC', - 92=>'CP', - ); - -$tabEven2SO=array( // PROCOL - 1010=>92, // Déclaration de cessation de paiement - 1050=>7, // Homologation de la conciliation - 1055=>7, // Résolution de la conciliation - 1100=>57, // Jugement de sauvegarde - 1101=>58, // Plan de sauvegarde - 1200=>52, // Redressement Judiciaire - 1201=>52, // Conversion sauvegarde en Redressement Judiciaire - 1202=>75, // Renouv. Periode Observation - 1203=>78, // Avis de dépot de l'état de collocation - 1204=>78, // Dépôt des créances - 1205=>78, - 1206=>78, - 1207=>53, // Règlemement amiable - 1208=>78, - 1209=>51, // Règlement Judiciaire - 1210=>77, // Production - 1211=>52, // Redressement Judiciaire par extension au(x) gérant(s) - 1212=>69, // Rectif ou Annul.LJ - 1214=>78, // Avis de dépôt de l'état des créances (Loi de 1985) - 1215=>7, // Jugement de désignation des organes de la procédure - 1216=>78, // Autre avis de dépôt - 1300=>62, // Conversion Redressement Judiciaire en Liquidation - 1301=>62, // Ouverture Liquidation Judiciaire - 1302=>66, // Ouverture Liquidation Judiciaire Simplifiée - 1303=>62, // Ouverture Liquidation Judiciaire sur résolution - 1304=>62, // Réouverture Liquidation Judiciaire - 1305=>62, // Liquidation Judiciaire - 1306=>66, // Liquidation Judiciaire simplifiée - 1307=>62, // Conversion sauvegarde en Liquidation Judiciaire - 1308=>62, // Fin du régime de Liquidation Judiciaire Simplifiée - 1309=>62, // Conversion Liquidation Judiciaire en Liquidation - 1310=>56, // Procédure d'Insolvabilité Européenne - 1311=>62, // Liquidation Judiciaire par extension au(x) gérants - 1312=>62, // Liquidation Judiciaire avec continuation d'exploitation - 1313=>62, // Liquidation Judiciaire sans remise des accessoires - 1346=>7, // Procédure d'insolvabilité (Règlement 1346/2000 du Conseil Européen) - 1400=>7, // Nomination d'un administrateur judiciaire - 1401=>7, // Nomination d'un mandataire judiciaire - 1402=>7, // Nomination d'un représentant des créanciers - 1403=>7, // Nominnation/Remplacement de commissaire à l'exécution du plan - 1404=>7, // Prolongement de la mission du commissaire à l'exécution du plan - 1405=>7, // Nomination d'un juge commissaire - 1406=>7, // Changement de SYNDIC - 1407=>75, // Modif. de Plan - 1408=>75, // Modification du plan de cession - 1409=>75, // Modif. de de continuation - 1410=>75, // Suite de jugement/règlement/liquidation - 1411=>75, // Arrêt du plan de cession - 1412=>75, // Arrêt du plan de cession partielle - 1413=>75, // Arrêt du plan de continuation - 1414=>75, // Arrêt du plan de redressement - 1415=>75, // Prolongement du plan cession - 1416=>75, // Jugement constatant la bonne exécution du plan - 1417=>62, // Jugement d'extension de liquidation judiciaire - 1418=>52, // Jugement d'extension d'une procédure de redressement judiciaire - 1419=>57, // Jugement d'extension d'une procédure de sauvegarde - 1420=>7, // Nomination d'un liquidateur judiciaire - 1421=>7, // Jugement prorogeant le plan de redressement - 1425=>7, // Plan de cession avec location gérance - 1430=>7, // Jugement autorisant la poursuite d'activité - 1431=>7, // Jugement de cessation partielle d'activité - 1435=>7, // Suspension de l'exécution provisoire - 1436=>7, // Suspension provisoire des poursuites - 1440=>7, // Jugement accordant un délai pour déposer la liste des créances - 1445=>7, // Concordat - 1450=>92, //Cessation paiement - 1455=>7, // Jugement arrêtant le plan d'apurement du passif - 1460=>7, // Homologation du plan - 1470=>7, // Fin de mission d'administrateur judiciaire - 1480=>7, // Jugement ordonnant la jonction des procédures - 1500=>79, // Clôture de la procédure - 1501=>79, // Clôture de la procédure après cession totale - 1502=>76, // Clôture de la procédure pour extinction du passif - 1503=>79, // Cloture insuf.Actif - 1504=>79, // Clôture sauvegarde pour absence de projet de plan - 1505=>74, // Appel de jugement - 1506=>59, // Rectif ou Annulation RJ - 1507=>74, // Appel de jugement - 1508=>7, // Extinction du plan de sauvegarde - 1509=>7, // Extinction du plan de redressement - 1510=>74, // Rejet du plan - 1511=>7, // Résolution du plan de cession - 1512=>7, // Résolution du plan de continuation - 1513=>7, // Résolution du plan de sauvegarde - 1515=>74, // Arrêt divers - 1517=>59, // Rectification d'une erreur matérielle - 1520=>7, // Ordonnance - 1525=>74, // Appel du ministère public - 1530=>7, // Jugement constatant l'impécuniosité de la procédure de liquidation - 1540=>7, // Ordonnance statuant sur les contestations du projet de répartition - 1541=>74, // Rétractation de prononcé de liquidation judiciaire sur tierce opposition - 1542=>74, // Rétractation de jugement d'ouverture d'une procédure de sauvegarde sur tierce opposition - 1543=>74, // Rétractation de jugement d'ouverture d'une procédure de redressement judiciaire sur tierce opposition - 1544=>74, // Rétractation de jugement d'ouverture d'une procédure de liquidation judiciaire sur tierce opposition - 1545=>74, // Rétractation de jugement d'ouverture sur tierce opposition - 1546=>74, // Autre rétractation sur tierce opposition - 1550=>7, // Suites de jugements - 1580=>7, // Jugement prononçant la continuation de l'activité par apurement du passif - 1600=>63, // Faillite personnelle - 1601=>64, // Interdiction de gérer - 1602=>7, // Jugement de réhabilitation - 1603=>61, // Liquidation de Biens - 1604=>8, // Banqueroute - 1605=>7, // Jugement autorisant la reprise des poursuites individuelles - 1610=>8, // Faillite personnelle (Loi de 1985) - 1611=>8, // Interdiction de gérer (Loi de 1985) - 1620=>7, // Jugement condamnant le dirigeant en comblement du passif - 1650=>8, // Rétablissement Personnel - 1700=>7, // Décision soumise à publicité - 1900=>8, // Interdiction temporaire d'exercice de la profession de CAC - 1901=>8, // Radiation de la liste des CAC - 1999=>7, // Autre procédure collective - // MMD - 2000=>4, // Mention d'office - 2100=>39, // Chg.Capital/Cess.apport de parts - 2101=>39, // Chg.Capital/Cess.apport de parts - 2102=>39, // Chg.Capital/Cess.apport de parts - 2200=>4, // Cessation d'activité - 2201=>4, // Cessation d'activité temporaire - 2202=>41, // Dissolution - 2203=>41, // Dissolution de la société - 2204=>41, // Cessation d'activité avec dissolution - 2205=>4, // Fermeture du fonds - 2206=>39, // Mise en sommeil de la société - 2207=>39, // Suppression d'une branche d'activité - 2208=>39, // Suppression de l'établissement principal - 2209=>39, // Vente du fonds - 2210=>39, // Déclaration de dissolution par l'associé unique. - 2211=>39, // Clôture de la liquidation - 2212=>39, // Liquidation amiable - 2300=>39, // Changement d'Adresse - 2301=>39, // Modification de l'adresse du siège - 2302=>39, // Modification de l'enseigne - 2303=>39, // Modification de la date de clôture de l'exercice - 2304=>39, // Modification de la date de début d'activité - 2305=>39, // Modification de la dénomination - 2306=>39, // Modification de la durée de la société - 2307=>39, // Modification de la forme juridique - 2308=>39, // Modification du nom - 2309=>39, // Modification du nom commercial - 2310=>39, // Modification du pseudonyme - 2311=>39, // Modification sur l'exploitation - 2312=>39, // Modification(s) diverse(s) - 2313=>39, // Modification de l'activité - 2314=>39, // Poursuite de l'activité - 2315=>39, // Modification de l'administration - 2316=>39, // Mise en activité de la société - 2317=>39, // Modification du sigle - 2318=>39, // Modifications diverses - 2319=>39, // Poursuite de l'activité malgré la perte de plus de... - 2320=>39, // Reconsitution de l'actif net - 2321=>39, // Reconsitution de la moitié de l'actif net - 2350=>39, // Déclaration des associés (loi du 1er février 2005) - 2401=>39, // Changement de régime matrimonial - 2402=>39, // Changement de régime matrimonial (divorce) - 2403=>39, // Changement de régime matrimonial (mariage) - 2404=>39, // Changement de régime matrimonial (veuvage) - 2405=>39, // Changement de régime matrimonial (contrat de maria... - 2406=>39, // Reprise du fonds par le conjoint - 2407=>39, // Mention du conjoint collaborateur - 2408=>39, // Radiation du conjoint collaborateur - 2500=>3, // Confirmation établissement principal ou secondaire - 2510=>39, // L'établissement secondaire devient principal - 2520=>39, // Extension de l'établissement principal - 2600=>39, // Décès - 2610=>39, // Décision de l'unique actionnaire - 2620=>39, // Transmission universelle du patrimoine - 2630=>39, // Donation/Partage - 2635=>39, // Cession de parts - 2639=>39, // Nantissement de parts sociales - 2640=>39, // Changement de domicile personnel - 2650=>39, // Changement de nationalité - 2660=>39, // Réalisation de l'apport partiel d'actif - 2661=>39, // Apport partiel - 2700=>39, // Fusion/Absorption (entitée absorbante) - 2701=>39, // Fusion/Absorption (Entitée absorbante. Entité abso... - 2702=>39, // Fusion/Absorption (Entitée absorbante. Entité abso... - 2703=>39, // Fusion/Absorption (Entitée absorbante. Entité abso... - 2710=>39, // Projet de fusion (entitée absorbante) - 2720=>39, // Fusion/Absorption (entitée absorbée) - 2721=>39, // Fusion/Absorption (entitée absorbée non identifiée... - 2725=>39, // Fusion/Absorption - 2726=>39, // Projet de Fusion/Absorption - 2730=>39, // Projet de fusion (entitée absorbée) - 2740=>39, // Scission - 2750=>39, // Société participation - 2800=>37, // Location gérance reçue - 2840=>38, // Location/Gérance - 2850=>38, // Location gérance donnée : Précédent propriétaire e... - 2851=>38, // Location gérance donnée : Précédent propriétaire - 2860=>38, // Location gérance donnée : Précédent exploitant - 2870=>38, // Location gérance donnée - 2875=>38, // Gérance/Mandat - 2880=>38, // Renouvellement de location gérance - 2881=>38, // Changement de location gérance - 2885=>42, // Fin de location gérance - 2890=>38, // Location gérance relative à une branche - 2891=>39, // Location gérance relative à un établissement - 2892=>39, // Location gérance relative à un fond - 2900=>32, // Transfert d'établissement - 2901=>32, // Transfert de siège - 2902=>32, // Transfert du fonds - 2903=>32, // Projet de transfert du siège - 2904=>32, // Transfert du siège à l'étranger - 2950=>32, // Création de fonds - 2980=>32, // Transfert entre tribunaux - // DEPOTS DES COMPTES - 3100=>91, - 3200=>91, - 3300=>91, - 3999=>91, - // CREATIONS - 4000=>1, // Création d'entreprise - 4050=>1, // Création d'entreprise sans activité - 4100=>1, // Création d'entreprise sans établissement - 4200=>17, // Création d'établissement - 4250=>17, // Création suite à transfert - 4300=>17, // Création suite à reprise d'activité - 4350=>1, // Création suite à fin de location-gérance - 4355=>1, // Création suite à prise en location-gérance - 4360=>1, // Reprise d'activité par suite de la résolution de v - 4400=>1, // Création suite à changement de FJ - 4410=>1, // Création suite à héritage ou donation - 4450=>1, // Création suite à reprise par le conjoint - 4500=>17, // Fonds acquis dans le cadre d'une PC - 4501=>17, // Fonds acquis par achat - 4502=>17, // Fonds acquis par apport - 4600=>1, // Immatriculation d'une société de droit européen - 4999=>1, // Création - - // ventes !!! - 5500=>2, // Entreprise réalisant la vente - 5501=>2, // Entreprise réalisant la vente : Ancien propriétair... BODA ventes 12 0000-00-00 00:00:00 - 5502=>2, // Entreprise réalisant la vente : Ancien propriétair... BODA ventes 12 0000-00-00 00:00:00 - 5503=>2, // Entreprise réalisant la vente : Ancien propriétair... BODA ventes 12 0000-00-00 00:00:00 - 5510=>2, // Entreprise réalisant la vente : Co-propriétaire BODA ventes 12 0000-00-00 00:00:00 - 5600=>2, // Entreprise réalisant l'acquisition BODA ventes 12 0000-00-00 00:00:00 - 5650=>2, - 5700=>2, // Entreprise réalisant l'acquisition BODA ventes 12 0000-00-00 00:00:00 - 5999=>2, - - // RADIATIONS - 6000=>4, //Radiation pour cause de clôture de la liquidation (amiable/simplifié/général) - 6001=>4, //Radiation pour cause de clôture de la liquidation amiable - 6002=>4, //Radiation pour cause de clôture de la liquidation judiciaire pour IA - 6003=>4, //Radiation pour cause de clôture de la liquidation judiciaire - 6004=>4, //Radiation pour cause de clôture de la liquidation judiciaire simplifié - 6005=>4, //Radiation pour clôture du plan de cession - 6100=>4, //Radiation pour cause de décès - 6200=>4, //Radiation pour cause de mention d'office - 6201=>4, //Radiation pour cause de cessation d'activité - 6300=>4, //Radiation pour cause de non-exercice - 6400=>4, //Radiation pour cause de transfert - 6500=>4, //Radiation pour cause de jugement de clôture du plan de cession - 6600=>4, //Radiation d'un établissement - 6700=>4, //Radiation - ); -$tabEven2RO=array( 2305=>'a', - 2308=>'a', // Chg de dénomination(RS,Ens,Sigle) - 2309=>'a', // Modification du nom commercial BODB mmd 12 0000-00-00 00:00:00 - 2310=>'a', // Modification du pseudonyme - 2300=>'b', // Changement d'Adresse - 2301=>'b', - 2900=>'b', // Transfert d'établissement - 2901=>'b', // Transfert de siège - 2902=>'b', // Transfert du fonds - 2903=>'b', // Projet de transfert du siège - 2904=>'b', // Transfert du siège à l'étranger - 2950=>'b', // Création de fonds - 2980=>'b', // Transfert entre tribunaux - 2101=>'c', // Chg.Capital/Cess.apport de parts - 2315=>'d', // Changement de Dirigeants - 2313=>'e', // Mod Act/obj.soc./Cess./Mise somm. - 2307=>'f', // Changement de Forme juridique - 2318=>'g', // Opération sur Participations - 2725=>'h', // Fusion Absorption - 2318=>'i', // Mod.garantie financière/Caution - 2401=>'j', // Changement de régime matrimonial - 2319=>'k', // Non dissolution anticipée - 2318=>'l', // Non dissolution anticipée - 2318=>'m', // Dissolution anticipée (ou non) - 2303=>'n', // Mod.date cloture exercice social - 5500=>'V', // Entreprise réalisant la vente - 5501=>'V', // Entreprise réalisant la vente : Ancien propriétair... BODA ventes 12 0000-00-00 00:00:00 - 5502=>'V', // Entreprise réalisant la vente : Ancien propriétair... BODA ventes 12 0000-00-00 00:00:00 - 5503=>'V', // Entreprise réalisant la vente : Ancien propriétair... BODA ventes 12 0000-00-00 00:00:00 - 5510=>'V', // Entreprise réalisant la vente : Co-propriétaire BODA ventes 12 0000-00-00 00:00:00 - 5600=>'V', - 5650=>'V', - 5700=>'A', // Entreprise réalisant l'acquisition BODA ventes 12 0000-00-00 00:00:00 - 1411=>'F', // Arrêt du plan de cession - 1408=>'G', // Modification du plan de cession - 1409=>'N', // Modification du plan de continuation - 1414=>'M', // Arrêt du plan de redressement - - ); - - -function exporte($txt, $lon, $sep='') { - $txt=strtr(trim($txt),array('''=>"'",'&'=>'&', '²'=>'²', "\r"=>'', "\n"=>'', "\t"=>'')); - - if ($sep=='') return sprintf("%-".$lon.'.'.$lon."s", $txt); - - return trim(sprintf("%-".$lon.'.'.$lon."s", $txt)).$sep; -} - - -function conversionSd2So2000($nomFichierIn, $numeroAbonneBil='000960030', $nomFichierOut='', $optionFicheId='S') { - - $message=''; - $iDb=new WDB(); - $iBodacc=new MBodacc(); - $iInsee=new MInsee(); - $iRncs=new MRncs(); - - global $tabEvenSolib; - global $tabEven2SO; - global $tabEven2RO; - - $tabLignes=file($nomFichierIn); -//print_r($tabLignes); -//die(); - - $ligne001=$ligne100=$ligne104=$ligne999=0; - if ($nomFichierOut=='') $nomFichierOut=$nomFichierIn.'.bil'; - - $fp=fopen($nomFichierOut, 'w'); - $dateJ=date('Ymd'); - $ecrireLignePre=false; - - /** Codes/Variables à gérer **/ - $depPar=0; - $SOSTAE=''; - $typeFicheId='I'; // Fiche Identifiant - $optExtInsee=$optScore=false; - - /** Type de fiche Id **/ - if (strpos($optionFicheId, 'S')==true) $typeFicheId='S'; // Fiche Standard - elseif (strpos($optionFicheId, 'C')==true) $typeFicheId='C'; // Fiche Complète - if (strpos($optionFicheId, 'E')==true) $optExtInsee=true; // Option Extension INSEE - if (strpos($optionFicheId, 'N')==true) $optScore=true; // Option Score - - foreach ($tabLignes as $i=>$ligne) { - $typeLigne=substr($ligne, 0, 3)*1; - switch ($typeLigne) { - case 1: // Ligne ignorée - // Ecriture de l'entête - $ligne001++; - break; - case 100: // Structure Bodacc - case 999: // Fin - $strTxt=wordwrap($txtAnn, 39, EOL); - $tabTxt=explode(EOL, $strTxt); - foreach($tabTxt as $j=>$txt) { - $SOSEQ++; - if($j%16==0) { - // Type d'enregistrement 1=EntConf, 2=Rejet, 4=Multipropo, 5=Suivi MAJ Entrep, 7=Infos, 8=Envoi documen, 9=Annonce - $typEnr=9; - if ($j==0) $ligneTXT =initstr($SONABO, 9, '0', ALIGN_RIGHT); // Numéro d'abonné BIL ? - else $ligneTXT.=EOL.initstr($SONABO, 9, '0', ALIGN_RIGHT); // Numéro d'abonné BIL ? - $ligneTXT.=initstr($SONUME, 9, '0', ALIGN_RIGHT); // Numéro d'entreprise BIL ? - $ligneTXT.=initstr($SONUS, 9, '0', ALIGN_RIGHT); // Numéro d'UFS BIL ? - $ligneTXT.=initstr($nann, 9, '0', ALIGN_RIGHT); // Numéro d'annonce BIL ? - $ligneTXT.=initstr($siren, 9, '0', ALIGN_RIGHT); // Siren - $ligneTXT.=initstr($nic, 5, '0', ALIGN_RIGHT); // Nic - $ligneTXT.=exporte('SE', 2); // Code produit BIL ? SE, DE, DI, SJ - $ligneTXT.=initstr($SOSEQ, 5, '0', ALIGN_RIGHT); // Numéro dans la séquence - $ligneTXT.=initstr($dateJ, 8, '0', ALIGN_RIGHT); // Numéro dans la séquence - $ligneTXT.=exporte($typEnr, 1); // Type d'enregistrement 1=EntConf, 2=Rejet, 4=Multipropo, 5=Suivi MAJ Entrep, 7=Infos, 8=Envoi documen, 9=Annonce - $ligneTXT.=exporte('TXT', 3); // Structure identité - $ligneTXT.=exporte('A', 1); // Confirmation 'A'uto ou 'C' pour manuelle - $ligneTXT.=exporte($ref, 30); // Réf. Client - $ligneTXT.=exporte($SOORIG, 1); // 1:Insee actif, 2=Ufs, 3=Annonce, 4=Manuelle, 5=Asso, 7=RCS actif, 8=Insee cessa eco, 9=Insee/RCS radié - $ligneTXT.=exporte($SOJAL, 3); // 001=Bodacc A, 200=Bodacc B, 300=Bodacc C - $ligneTXT.=initstr($datePar, 8, '0', ALIGN_RIGHT); // Date de parution - $ligneTXT.=initstr(0, 5, '0', ALIGN_RIGHT); // Page - $ligneTXT.=exporte($codeEve, 2); // - $ligneTXT.=initstr($depPar, 2, '0', ALIGN_RIGHT); - $ligneTXT.=initstr($numAnn, 6, '0', ALIGN_RIGHT); - $ligneTXT.=exporte($codeRol, 1); // - $ligneTXT.=exporte('T', 1); - } - $ligneTXT.=exporte($txt, 40); - } - $codeEve=$codeRol=''; - $ligneOut=$ligneID.EOL.$ligneANN.EOL.$ligneTXT; - if ($ligne100>1) $ecrireLignePre=true; - if($typeLigne==999) { - $ligne999++; - break; - } - - $nann = trim(substr($ligne, 3 , 10 ))*1; // N° d'annonce - $siren = substr($ligne, 13 , 9 ); // Siren de l'entreprise concernée par l'annonce - $tabIdentite=@$iInsee->getIdentiteEntreprise($siren); - $nic = trim(substr($ligne, 22, 5 ))*1; // Nic - $ref = trim(substr($ligne, 71, 18 )); // Référence Client - $numPar = substr($ligne, 27 , 3 ); // Numéro de parution du Bodacc dans l'année - $bodacc = substr($ligne, 30 , 1 ); // Code Bodacc (A, B ou C) A, B ou C - $datePar= substr($ligne, 31 , 8 )*1; // Date de parution du Bodacc Format AAAAMMJJ - $numAnn = substr($ligne, 39 , 5 ); // Numéro de l'annonce dans le Bodacc - $typeAnn= substr($ligne, 47 , 1 ); // Type d'annonce Bodacc I=Insertion (publication d'une annonce), A=Additif (ajout à une précédente annonce), (1) R=Rectificatif (correction d'une annonce), S=Suppression d'une annonce - $corNumA= substr($ligne, 48 , 5 ); // Numéro de l'annonce corrigée Si annonce différent de Insertion - $corDate= substr($ligne, 53 , 8 ); // Date du Bodacc de l'annonce corrigée Si annonce différent de Insertion. Format AAAAMMJJ - $corPage= substr($ligne, 61 , 6 ); // Première page du Bodacc de l'annonce corrigée Si annonce différent de Insertion - $corNumP= substr($ligne, 67 , 4 ); // Numéro parution du Bodacc dans l'année de l'annonce corrigée Si annonce différent de Insertion - $numRC = trim(substr($ligne,95 , 9 )); // Numéro de RC (Registre du Commerce) de l'entreprise - $rs = trim(substr($ligne,104, 150 )); // Raison sociale de l'entreprise - $nomCom = trim(substr($ligne,254, 100 )); // Nom Commerciale - $ens = trim(substr($ligne,354, 100 )); // Enseigne - $fj = trim(substr($ligne,484, 4 ))*1; // FJ - $fjLib = trim(substr($ligne,488, 90 )); // FJ libellé - $capMnt = trim(substr($ligne,578, 15 )); // Capital - $capDev = trim(substr($ligne,593, 3 )); // Capital Devise - $adrNum = trim(substr($ligne,596, 4 )); // - $adrBtq = trim(substr($ligne,600, 1 )); // FJ libellé - $adrVoi = trim(substr($ligne,601, 5 )); // FJ libellé - $adrLib = trim(substr($ligne,606, 50 )); // FJ libellé - $adrL2 = trim(substr($ligne,656, 50 )); // FJ libellé - $adrL3 = trim(substr($ligne,706, 40 )); // FJ libellé - $adrCP = trim(substr($ligne,746, 5 ))*1; // FJ libellé - $adrVil = trim(substr($ligne,751, 45 )); // FJ libellé - if ($adrCP==0) { - $adrNum = trim(substr($ligne,796, 4 )); // FJ libellé - $adrBtq = trim(substr($ligne,800, 1 )); // FJ libellé - $adrVoi = trim(substr($ligne,801, 5 )); // FJ libellé - $adrLib = trim(substr($ligne,806, 50 )); // FJ libellé - $adrL2 = trim(substr($ligne,856, 50 )); // FJ libellé - $adrL3 = trim(substr($ligne,906, 40 )); // FJ libellé - $adrCP = trim(substr($ligne,946, 5 ))*1; // FJ libellé - $adrVil = trim(substr($ligne,951, 45 )); // FJ libellé - } - $even=array(); - $even[7]= substr($ligne, 996 , 4 )*1; // Code Evènement Bodacc n°1 Cf. Table EVEN - $even[6]= substr($ligne, 1000, 4 )*1; // Code Evènement Bodacc n°2 Cf. Table EVEN - $even[5]= substr($ligne, 1004, 4 )*1; // Code Evènement Bodacc n°3 Cf. Table EVEN - $even[4]= substr($ligne, 1008, 4 )*1; // Code Evènement Bodacc n°4 Cf. Table EVEN - $even[3]= substr($ligne, 1012, 4 )*1; // Code Evènement Bodacc n°5 Cf. Table EVEN - $even[2]= substr($ligne, 1016, 4 )*1; // Code Evènement Bodacc n°6 Cf. Table EVEN - $even[1]= substr($ligne, 1020, 4 )*1; // Code Evènement Bodacc n°7 Cf. Table EVEN - $even[0]= substr($ligne, 1024, 4 )*1; // Code Evènement Bodacc n°8 Cf. Table EVEN - $txtEven=''; - foreach ($even as $codeEven) - if ($codeEven<>0) { - if (@$codeEve=='') $codeEve=$tabEven2SO[$codeEven]; - if (@$codeRol=='') $codeRol=$tabEven2RO[$codeEven]; - $txtEven.=$iBodacc->getEvenement($codeEven).', '; - $catEven=$iBodacc->getChapitreEvenement($codeEven); - } - else - $txtEven.=''; - $txtEven=substr($txtEven,0,strlen($txtEven)-2); - $dateCess= substr($ligne, 1136, 8 )*1; // Date de cessat° des paiements - $dateJuge= substr($ligne, 1144, 8 )*1; // Date de jugement - $dateEffet=substr($ligne, 1161, 8 )*1; // Date d'effet - if ($dateEffet*1==0) $dateEffet=$dateJuge; - - $vteMnt=trim(substr($ligne, 1169, 15 ))*1; // Montant de la vente - $vteDev=substr($ligne, 1184, 3 ); // Devise de la vente - - - if ($nic*1==0) $nic=$tabIdentite['Nic']; - - $SONABO=$numeroAbonneBil; - if ($tabIdentite['Actif']==1) $SOORIG=1; - elseif (!isset($tabIdentite['Actif'])) $SOORIG=3; - elseif ($tabIdentite['Actif']==0 && ($tabIdentite['EntActiveRCS']==1||$tabIdentite['EtabActifRCS']==1)) $SOORIG=7; - elseif ($tabIdentite['Actif']==0 && $tabIdentite['EntActiveRCS']==0 && $tabIdentite['EtabActifRCS']==0) $SOORIG=9; - else $SOORIG=8; - - if ($tabIdentite['Civilite']==1) $SOTSEX='M'; - elseif ($tabIdentite['Civilite']==2) $SOTSEX='F'; - else $SOTSEX=''; - $SONUME=''.preg_replace('/^0+/','', $tabIdentite['Source']).$tabIdentite['SourceId']; - $SONUS='000000000'; - $SOSEQ=1; - if ($adrCP==0) { - $adrNum = $tabIdentite['AdresseNum']; - $adrBtq = $tabIdentite['AdresseBtq']; - $adrVoi = $tabIdentite['AdresseVoie']; - $adrLib = $tabIdentite['AdresseRue']; - $adrL2 = $tabIdentite['Adresse2']; - $adrL3 = ''; - $adrCP = $tabIdentite['CP']; - $adrVil = $tabIdentite['Ville']; - } - $typEnr=1; - $DBILS2 =initstr($SONABO, 9, '0', ALIGN_RIGHT); // Numéro d'abonné BIL ? - $DBILS2.=initstr($SONUME, 9, '0', ALIGN_RIGHT); // Numéro d'entreprise BIL ? - $DBILS2.=initstr($SONUS, 9, '0', ALIGN_RIGHT); // Numéro d'UFS BIL ? - $DBILS2.=initstr($nann, 9, '0', ALIGN_RIGHT); // Numéro d'annonce BIL ? - $DBILS2.=initstr($siren, 9, '0', ALIGN_RIGHT); // Siren - $DBILS2.=initstr($nic, 5, '0', ALIGN_RIGHT); // Nic - $DBILS2.=exporte('SE', 2); // Code produit BIL ? SE, DE, DI, SJ - $DBILS2.=initstr($SOSEQ, 5, '0', ALIGN_RIGHT); // Numéro dans la séquence dans le groupe - $DBILS2.=initstr($dateJ, 8, '0', ALIGN_RIGHT); // Date d'envoi de l'info - $DBILS2.=exporte($typEnr, 1); // Type d'enregistrement 1=EntConf, 2=Rejet, 4=Multipropo, 5=Suivi MAJ Entrep, 7=Infos, 8=Envoi documen, 9=Annonce - $DBILS2.=exporte('ID', 3); // Structure identité - $DBILS2.=exporte('A', 1); // Confirmation 'A'uto ou 'C' pour manuelle - $DBILS2.=exporte($ref, 30); // Réf. Client - //($annonce['codePostalSiege'], 5, '0', ALIGN_RIGHT) - $DBILS2.=exporte($SOORIG, 1); // 1:Insee actif, 2=Ufs, 3=Annonce, 4=Manuelle, 5=Asso, 7=RCS actif, 8=Insee cessa eco, 9=Insee/RCS radié - $DBILS2.=exporte('', 1); // D=Siren douteux - $DBILS2.=exporte('', 9); // Témoin de MAJ - $DBILS2.=exporte($rs, 60); // - $DBILS2.=exporte(substr($rs,60),30); // - $DBILS2.=exporte($tabIdentite['Sigle'], 30); // Vide ! - $DBILS2.=exporte($ens, 60); // - $DBILS2.=initstr($adrNum, 4, '0', ALIGN_RIGHT); // - $DBILS2.=exporte($adrBtq, 1); // - $DBILS2.=exporte(preg_replace('/ +/',' ',$adrVoi.' '.$adrLib), 33); // - $DBILS2.=exporte($adrVil, 32); // - $DBILS2.=initstr($adrCP, 5, '0', ALIGN_RIGHT); // - $DBILS2.=exporte(preg_replace('/ +/',' ',$adrL2.' '.$adrL3), 30); // - $DBILS2.=initstr($tabIdentite['DateCreaEn'], 8, '0', ALIGN_RIGHT); // Date créa ENT - $DBILS2.=exporte($tabIdentite['Siege'], 1); // Statut de l'établissement - $DBILS2.=initstr($tabIdentite['FJ'], 4, 0, ALIGN_RIGHT); - $DBILS2.=exporte($SOTSEX, 1); // Sexe M/F - - $DBILS2.=initstr($tabIdentite['NbEtab']*1, 4, 0, ALIGN_RIGHT); - $DBILS2.=exporte($SOSTAE, 4); // NAF4 ENT - $DBILS2.=exporte('', 4); // Famille ENT - $DBILS2.=exporte($SOSTAE, 4); // NAF4 ETAB - $DBILS2.=exporte('', 4); // Famille ETAB - $DBILS2.=exporte('', 1); // Indicateur Procol - $DBILS2.=exporte('', 2); // Code monnaie - $DBILS2.=initstr(0, 13, '0', ALIGN_RIGHT); // Montant du capital - $DBILS2.=exporte('', 7); // Effectif - $DBILS2.=exporte('', 9); // Num RC - $DBILS2.=initstr(strtr($tabIdentite['Tel'],array('.'=>'','+'=>'00',' '=>'','-'=>'','/'=>'')), 10, '0', ALIGN_RIGHT); - $DBILS2.=initstr(strtr($tabIdentite['Fax'],array('.'=>'','+'=>'00',' '=>'','-'=>'','/'=>'')), 10, '0', ALIGN_RIGHT); - //5630Z5630Z RUE 00000000 00000000 2901929019 - $DBILS2.=exporte($tabIdentite['Web'], 40); - $DBILS2.=exporte('', 3); // Qualité du dirigeant - $DBILS2.=exporte('', 60); // NOM, Prénom du dirigeant - $DBILS2.=initstr(0, 8, '0', ALIGN_RIGHT); // Date Naiss Diri -// $DBILS2.=exporte('', 79); - $DBILS2.=exporte('', 35); // Lieu de Naissance - if ($optScore) { - $tabTmp=$iDb->select('scores_surveillance', - 'siren, actif, procol, indiScore, indiScore20, encours, indiScoreDate, dateBilan, indiScorePre, indiScore20Pre, encoursPre, indiScoreDatePre, sourceModif, nbModifs, dateUpdate', - "siren=$siren AND indiScoreDate>0", false, MYSQL_ASSOC); - if (@$tabTmp[0]['siren']*1==$siren) { - echo "$siren, parution Annonce le $datePar, calcul le ".@$tabTmp[0]['dateUpdate'].EOL; - $tabScore=$tabTmp[0]; - $note=$tabScore['indiScore20']; - $encours=round($tabScore['encours']/1000); - } else { - echo "$siren, parution Annonce le $datePar, pas de calcul !".EOL; - $tabScore=@calculIndiScore($siren, $nic, false, 0, false); - $note=$tabScore['Indiscore20']; - $encours=round($tabScore['encours']/1000); - } - $encoursDev='EUR'; - } else - $note=$encours=$encoursDev=''; - $DBILS2.=initstr($note, 2, '0', ALIGN_RIGHT); //37 Note sur 20 - $DBILS2.=initstr($encours, 7, '0', ALIGN_RIGHT); //44 Encours KE KF - $DBILS2.=exporte('', 1); //45 Code paiement - $DBILS2.=exporte('', 1); //46 Code situfi - $DBILS2.=exporte('', 1); //47 Code Avis - $DBILS2.=exporte($encoursDev,3); //47 Encours de la devise - $DBILS2.=exporte('', 6); // Code Sicovam - $DBILS2.=exporte('', 2); // Type de marché RM, CT, SM, HC, MO, NM, ML, AL, MR - $DBILS2.=exporte('', 12); // Code ISIN - $DBILS2.=exporte('', 9); // Filler Bil anciennement sur 83, 32 puis 9 - $DBILS2.=exporte($tabIdentite['NafEnt'], 5); - $DBILS2.=exporte($tabIdentite['NafEtab'], 5);// - $DBILS2.=exporte('', 18); //60 Filler - $DBILS2.=exporte('', 4); // Filler RUE ? - $DBILS2.=exporte('', 5); // Nic source cible de l'étab - $DBILS2.=initstr(0, 8, '0', ALIGN_RIGHT); // Date de MAJ du capital - $DBILS2.=exporte('', 3); // Monnaie d'origine du capital - $DBILS2.=exporte('', 3); // Monnaie de livraison du capital (fin de l'ancien filler) - $DBILS2.=initstr(0, 8, '0', ALIGN_RIGHT); // Date de création de l'établissement - $DBILS2.=exporte('', 1); // Origine création - $DBILS2.=exporte('', 2); // Tr Eff Ent - $DBILS2.=exporte('', 2); // Tr Eff Etab - $DBILS2.=exporte('', 2); // NAP 40 Entrep - $DBILS2.=exporte('', 2); // NAP 40 Etab - $DBILS2.=exporte('', 5); // Act Artisanale Etab - $DBILS2.=exporte('', 1); // Modalité activité entrep - $DBILS2.=exporte('', 1); // Modalité activité etab - $DBILS2.=exporte('', 2); // Code Région Entrep - $DBILS2.=exporte('', 2); // Code Région Etab - $DBILS2.=exporte($tabIdentite['Dept'], 2); // Département du siège - $DBILS2.=exporte($tabIdentite['codeCommune'], 3); // Localité - $DBILS2.=exporte($tabIdentite['Dept'], 2); // Département de l'étab - $DBILS2.=exporte($tabIdentite['codeCommune'], 3); // Localité - $DBILS2.=exporte('', 1); // Dept Outre Mer - $DBILS2.=exporte('', 1); // Arrondissement - $DBILS2.=exporte('', 1); // Canton Dom ? - $DBILS2.=exporte('', 2); // Canton - $DBILS2.=exporte('', 8); // Code Ilot - $DBILS2.=exporte('', 2); // ZEMET - $DBILS2.=exporte('', 2); // Tranche Comm Etab - $DBILS2.=exporte('', 2); // Dept Unite urbaine - $DBILS2.=exporte('', 1); // Taille UU - $DBILS2.=exporte('', 2); // UU etab - $DBILS2.=exporte('', 5); // Code rivoli - $DBILS2.=exporte('', 2); // PPale région entrep - $DBILS2.=exporte('', 1); // Code monoreg - $DBILS2.=exporte('', 1); // Code monoact - $DBILS2.=exporte('', 1); // Code tranche CA - $DBILS2.=exporte('', 1); // Tranche part CA export - $DBILS2.=exporte('', 1); // RECME - $DBILS2.=exporte('', 1); // Ordinarité - $DBILS2.=exporte('', 2); // Code nature étab - $DBILS2.=exporte('', 2); // Sigularité étab - - $ligneID=$DBILS2; - $ligne100++; - $cor=''; - if ($typeAnn<>'I') - $cor=" - Annonce n°$corNumA $corNumP, page $corPage, du ".WDate::dateT('Ymd','d/M/Y',$corDate); - switch($typeAnn) { - case 'I': $cor='Insertion'.$cor; break; - case 'A': $cor='Additif'.$cor; break; - case 'R': $cor='Rectificatif'.$cor; break; - case 'S': $cor='Suppression'.$cor; break; - default: break; - } - $codeTri= substr($ligne, 89 , 6 ); // Code Tribunal Codification interne utilisée par le Bodacc - $libTri=$iBodacc->getTribunalNom($codeTri); - - $SOSEQ++; - if ($bodacc=='A') $SOJAL='001'; - elseif ($bodacc=='B') $SOJAL='200'; - elseif ($bodacc=='C') $SOJAL='300'; - else $SOJAL='999'; - $DBILS2 =initstr($SONABO, 9, '0', ALIGN_RIGHT); // Numéro d'abonné BIL ? - $DBILS2.=initstr($SONUME, 9, '0', ALIGN_RIGHT); // Numéro d'entreprise BIL ? - $DBILS2.=initstr($SONUS, 9, '0', ALIGN_RIGHT); // Numéro d'UFS BIL ? - $DBILS2.=initstr($nann, 9, '0', ALIGN_RIGHT); // Numéro d'annonce BIL ? - $DBILS2.=initstr($siren, 9, '0', ALIGN_RIGHT); // Siren - $DBILS2.=initstr($nic, 5, '0', ALIGN_RIGHT); // Nic - $DBILS2.=exporte('SE', 2); // Code produit BIL ? SE, DE, DI, SJ - $DBILS2.=initstr($SOSEQ, 5, '0', ALIGN_RIGHT); // Numéro dans la séquence - $DBILS2.=initstr($dateJ, 8, '0', ALIGN_RIGHT); // Numéro dans la séquence - $DBILS2.=exporte('9', 1); // Type d'enregistrement 1=EntConf, 2=Rejet, 4=Multipropo, 5=Suivi MAJ Entrep, 7=Infos, 8=Envoi documen, 9=Annonce - $DBILS2.=exporte('ANN', 3); // Structure identité - $DBILS2.=exporte('A', 1); // Confirmation 'A'uto ou 'C' pour manuelle - $DBILS2.=exporte($ref, 30); // Réf. Client - //($annonce['codePostalSiege'], 5, '0', ALIGN_RIGHT) - $DBILS2.=exporte($SOORIG, 1); // 1:Insee actif, 2=Ufs, 3=Annonce, 4=Manuelle, 5=Asso, 7=RCS actif, 8=Insee cessa eco, 9=Insee/RCS radié - $DBILS2.=exporte($SOJAL, 3); // 001=Bodacc A, 200=Bodacc B, 300=Bodacc C - $DBILS2.=initstr($datePar, 8, '0', ALIGN_RIGHT); // Date de parution - $DBILS2.=initstr(0, 5, '0', ALIGN_RIGHT); // Page - if ($codeEve=='') { - $message.="Siren : $siren, Bodacc $bodacc, code évènement non géré : '$codeEven'".EOL; - /*$nann = trim(substr($ligne, 3 , 10 ))*1; // N° d'annonce - $siren = substr($ligne, 13 , 9 ); // Siren de l'entreprise concernée par l'annonce - $tabIdentite=@$iInsee->getIdentiteEntreprise($siren); - $nic = trim(substr($ligne, 22, 5 ))*1; // Nic - $ref = trim(substr($ligne, 71, 18 )); // Référence Client - $numPar = substr($ligne, 27 , 3 ); // Numéro de parution du Bodacc dans l'année - = substr($ligne, 30 , 1 ); // Code Bodacc (A, B ou C) A, B ou C - $datePar= substr($ligne, 31 , 8 )*1; // Date de parution du Bodacc Format AAAAMMJJ - $numAnn*/ - sendMail('infoslegales@scores-decisions.com', 'ylenaour@scores-decisions.com', "Surveillance Annonces Legales SOFID (ERREUR)", $message); - return $message; - } - $DBILS2.=exporte($codeEve, 2); // - $DBILS2.=initstr($depPar, 2, '0', ALIGN_RIGHT); - $DBILS2.=initstr($numAnn, 6, '0', ALIGN_RIGHT); - $DBILS2.=exporte($codeRol, 1); // - $DBILS2.=exporte($tabEvenSolib[$codeEve], 5); - $DBILS2.=exporte($codeTri, 6); // - $DBILS2.=exporte($numPar, 3); // - $DBILS2.=initstr($dateJuge, 8, '0', ALIGN_RIGHT); // Date de jugement - $DBILS2.=initstr($dateEffet, 8, '0', ALIGN_RIGHT); // Date d'effet - $DBILS2.=initstr($dateCess, 8, '0', ALIGN_RIGHT); // Date de cessat° des paiements - $DBILS2.=exporte($vteDev, 2); // Devise de la vente - $DBILS2.=initstr($vteMnt, 11, '0', ALIGN_RIGHT); // Montant de la vente - $DBILS2.=exporte('', 33); // Particularité - $DBILS2.=exporte('', 4); // Code rubrique du Bodacc A1xx - $DBILS2.=exporte('', 6); // Code lib injecté - - $tabJuge=$iRncs->getIntervenants($siren); - foreach ($tabJuge as $iDepot=>$depot) { - $DBILS2.=exporte($depot['admid'], 5); // Mot clé Nom - $DBILS2.=exporte($depot['admtype'], 1); // Type officier ministeriel - $DBILS2.=initstr($depot['admid'], 7, '0', ALIGN_RIGHT); // Code Bil - $DBILS2.=exporte($depot['admnom'], 30); // Nom syndic - $DBILS2.=initstr($depot['admadrNum'], 4, '0', ALIGN_RIGHT); // N° rue - $DBILS2.=exporte($depot['admadrInd'], 1); // Bis - $DBILS2.=exporte($depot['admadrType'], 3); // Type Voie - $DBILS2.=exporte($depot['admadrVoie'], 33); // Lib Voie - $DBILS2.=exporte($depot['admadr2'], 32); // Lieu - $DBILS2.=exporte($depot['admadrCP'], 5); // CP - $DBILS2.=exporte($depot['admadrVille'], 32); // Ville - $DBILS2.=exporte('', 10); // Tel - if ($iDepot==1) break; - } - - $ligneANN=$DBILS2; - $txtAnn=''; - //if ($ligne100>1) $ecrireLignePre=true; - break; - case 104: // Annonce - $ligne104++; - $txtAnn=trim($txtAnn.' '.trim(substr($ligne, 89 , 1910))); // Texte Annonce - break; - default: // Ligne non gérée - break; - } - if ($ecrireLignePre) { - fwrite($fp, $ligneOut.EOL); - $ecrireLignePre=false; - } - } - fclose($fp); - return true; -} \ No newline at end of file diff --git a/library/Metier/insee/Cache/CodesFJ.php b/library/Metier/insee/Cache/CodesFJ.php deleted file mode 100644 index 42dde51b..00000000 --- a/library/Metier/insee/Cache/CodesFJ.php +++ /dev/null @@ -1,281 +0,0 @@ - "Entrepreneur Individuel à Responsabilité Limité", - 1100 => "Artisan Commerçant", - 1200 => "Commerçant", - 1300 => "Artisan", - 1400 => "Officier public ou ministériel", - 1500 => "Profession libérale", - 1600 => "Exploitant agricole", - 1700 => "Agent commercial", - 1800 => "Associé Gérant de société", - 1900 => "(Autre) personne physique", - 2100 => "Indivision", - 2110 => "Indivision entre personnes physiques", - 2120 => "Indivision avec personne morale", - 2200 => "Société créée de fait", - 2210 => "Société créée de fait entre personnes physiques", - 2220 => "Société créée de fait avec personne morale", - 2300 => "Société en participation", - 2310 => "Société en participation entre personnes physiques", - 2320 => "Société en participation avec personne morale", - 2385 => "Société en participation de professions libérales", - 2400 => "Fiducie", - 2700 => "Paroisse hors zone concordataire", - 2900 => "Autre groupement de droit privé non doté de la personnalité morale", - 3110 => "Représentation ou agence commerciale d'état ou organisme public étranger immatriculé au RCS", - 3120 => "Société étrangère immatriculée au RCS", - 3205 => "Organisation internationale", - 3210 => "État collectivité ou établissement public étranger", - 3220 => "Société étrangère non immatriculée au RCS", - 3290 => "(Autre) personne morale de droit étranger", - 4110 => "Établissement public national à caractère industriel ou commercial doté d'un comptable public", - 4120 => "Établissement public national à caractère industriel ou commercial non doté d'un comptable public", - 4130 => "Exploitant public", - 4140 => "Établissement public local à caractère industriel ou commercial", - 4150 => "Régie d'une collectivité locale à caractère industriel ou commercial", - 4160 => "Institution Banque de France", - 5191 => "Société de caution mutuelle", - 5192 => "Société coopérative de banque populaire", - 5193 => "Caisse de crédit maritime mutuel", - 5194 => "Caisse (fédérale) de crédit mutuel", - 5195 => "Association coopérative inscrite (droit local Alsace Moselle)", - 5196 => "Caisse d'épargne et de prévoyance à forme coopérative", - 5202 => "Société en nom collectif", - 5203 => "Société en nom collectif coopérative", - 5306 => "Société en commandite simple", - 5307 => "Société en commandite simple coopérative", - 5308 => "Société en commandite par actions", - 5309 => "Société en commandite par actions coopérative", - 5370 => "Société de Participations Financières de Profession Libérale Société en commandite par actions", - 5385 => "Société d'exercice libéral en commandite par action", - 5410 => "SARL nationale", - 5415 => "SARL d'économie mixte", - 5422 => "SARL immobilière pour le commerce et l'industrie (SICOMI)", - 5426 => "Société immobilière de gestion", - 5430 => "Safer en SARL", - 5431 => "SARL mixte d'intérêt agricole", - 5432 => "SARL d'intérêt collectif agricole", - 5442 => "SARL d'attribution", - 5443 => "SARL coopérative de construction", - 5451 => "SARL coopérative de consommation", - 5453 => "SARL coopérative artisanale", - 5454 => "SARL coopérative d'intérêt maritime", - 5455 => "SARL coopérative de transports", - 5458 => "SARL coopérative ouvrière de production", - 5459 => "SARL union de sociétés coopératives", - 5460 => "Autre SARL coopérative", - 5470 => "Société de Participations Financières de Profession Libérale en SARL", - 5485 => "Société d'exercice libéral à responsabilité limitée", - 5488 => "Entreprise Unipersonnelle à Responsabilité Limitée", - 5498 => "SARL unipersonnelle", - 5499 => "Autre société à responsabilité limitée", - 5505 => "SA à participation ouvrière à conseil d'administration", - 5510 => "SA nationale à conseil d'administration", - 5515 => "SA d'économie mixte à conseil d'administration", - 5520 => "Société d'investissement à capital variable (SICAV) à conseil d'administration", - 5522 => "Société anonyme immobilière pour le commerce et l'industrie (SICOMI) à conseil d'administration", - 5525 => "Société anonyme immobilière d'investissement à conseil d'administration", - 5530 => "Safer anonyme à conseil d'administration", - 5531 => "Société anonyme mixte d'intérêt agricole (SMIA) à conseil d'administration", - 5532 => "Société anonyme mixte d'intérêt collectif agricole (SICA) à conseil d'administration", - 5542 => "Société anonyme d'attribution à conseil d'administration", - 5543 => "Société anonyme coopérative de construction à conseil d'administration", - 5546 => "SA de HLM à conseil d'administration", - 5547 => "SA coopérative de production de HLM à conseil d'administration", - 5548 => "SA de crédit immobilier à conseil d'administration", - 5551 => "SA coopérative de consommation à conseil d'administration", - 5552 => "SA coopérative de commerçants détaillants à conseil d'administration", - 5553 => "SA coopérative artisanale à conseil d'administration", - 5554 => "SA coopérative (d'intérêt) maritime à conseil d'administration", - 5555 => "SA coopérative de transports à conseil d'administration", - 5558 => "SA coopérative ouvrière de production (SCOP) à conseil d'administration", - 5559 => "SA union de sociétés coopératives à conseil d'administration", - 5560 => "Autre SA coopérative à conseil d'administration", - 5570 => "Société de Participations Financières de Profession Libérale en SA à conseil d'administration", - 5585 => "Société d'exercice libéral à forme anonyme à conseil d'administration", - 5599 => "Autre SA à conseil d'administration", - 5605 => "SA à participation ouvrière à directoire", - 5610 => "SA nationale à directoire", - 5615 => "SA d'économie mixte à directoire", - 5620 => "Société d'investissement à capital variable (SICAV) à directoire", - 5622 => "Société immobilière pour le commerce et l'industrie (SICOMI) anonyme à directoire", - 5625 => "Société immobilière d'investissement anonyme à directoire", - 5630 => "Safer anonyme à directoire", - 5631 => "Société anonyme mixte d'intérêt agricole", - 5632 => "Société anonyme d'intérêt collectif agricole", - 5642 => "Société anonyme d'attribution à directoire", - 5643 => "Société anonyme coopérative de construction à directoire", - 5646 => "Société anonyme de HLM à directoire", - 5647 => "Société coopérative de production de HLM anonyme à directoire", - 5648 => "SA de crédit immobilier à directoire", - 5651 => "SA coopérative de consommation à directoire", - 5652 => "SA coopérative de commerçants détaillants à directoire", - 5653 => "SA coopérative artisanale à directoire", - 5654 => "SA coopérative (d'intérêt) maritime à directoire", - 5655 => "SA coopérative de transport à directoire", - 5658 => "SA coopérative ouvrière de production (SCOP) à directoire", - 5659 => "SA union de sociétés coopératives à directoire", - 5660 => "(Autre) SA coopérative à directoire", - 5670 => "Société de Participations Financières de Profession Libérale en SA à Directoire", - 5685 => "Société d'exercice libéral à forme anonyme à directoire", - 5699 => "Autre SA à directoire", - 5710 => "Société par actions simplifiée", - 5720 => "Société par actions simplifiée à associé unique ou société par actions simplifiée unipersonnelle", - 5770 => "Société de Participations Financières de Profession Libérale en SAS", - 5785 => "Société d’exercice libéral par action simplifiée", - 5800 => "Société européenne", - 6100 => "Caisse d’épargne et de prévoyance", - 6200 => "Groupement d'intérêt économique", - 6210 => "Groupement européen d’intérêt économique", - 6220 => "Groupement d’intérêt économique", - 6316 => "Coopérative d’utilisation de matériel agricole en commun", - 6317 => "Société coopérative agricole", - 6318 => "Union de sociétés coopératives agricoles", - 6411 => "Société d’assurance mutuelle", - 6412 => "Société mutuelle d'assurance", - 6413 => "Union de sociétés mutuelles d'assurances", - 6414 => "Autre société non commerciale d'assurance", - 6511 => "Société Interprofessionnelle de Soins Ambulatoires", - 6521 => "Société civile de placement collectif immobilier", - 6532 => "Société civile d’intérêt collectif agricole", - 6533 => "Groupement agricole d’exploitation en commun", - 6534 => "Groupement foncier agricole", - 6535 => "Groupement agricole foncier", - 6536 => "Groupement forestier", - 6537 => "Groupement pastoral", - 6538 => "Groupement foncier rural", - 6539 => "Société civile foncière", - 6540 => "Société civile immobilière", - 6541 => "Société civile immobilière de construction vente", - 6542 => "Société civile d’attribution", - 6543 => "Société civile coopérative de construction", - 6544 => "Société immobilière d'accession progressive à la propriété", - 6551 => "Société civile coopérative de consommation", - 6554 => "Société civile coopérative (d’intérêt) maritime", - 6558 => "Société civile coopérative entre médecins", - 6560 => "Autre société civile coopérative", - 6561 => "SCP d’avocats", - 6562 => "SCP d’avocats aux conseil", - 6563 => "SCP d’avoués d’appel", - 6564 => "SCP d'huissiers", - 6565 => "SCP de notaires", - 6566 => "SCP de commissaires-priseurs", - 6567 => "SCP de greffiers de tribunal de commerce", - 6568 => "SCP de conseils juridiques", - 6569 => "SCP de commissaires aux comptes", - 6571 => "SCP de médecins", - 6572 => "SCP de dentistes", - 6573 => "SCP d’infirmiers", - 6574 => "SCP de masseurs kinésithérapeutes", - 6575 => "SCP de directeurs de laboratoire d’analyse médicale", - 6576 => "SCP de vétérinaires", - 6577 => "SCP de géomètres-experts", - 6578 => "SCP d’architectes", - 6585 => "(Autres) Société Civile professionnelle", - 6588 => "Société civile laitière", - 6589 => "Société civile de moyens", - 6595 => "Caisse (locale) de crédit mutuel", - 6596 => "Caisse de crédit agricole mutuel", - 6597 => "Société civile d’exploitation agricole", - 6598 => "Exploitation agricole à responsabilité limitée", - 6599 => "Autre société civile", - 6901 => "Autres personnes de droit privé inscrites au registre du commerce et des sociétés", - 7111 => "Autorité constitutionnelle", - 7112 => "Autorité administrative indépendante", - 7113 => "Ministère", - 7120 => "Service central d’un ministère", - 7130 => "Service du ministère des Postes et Télécommunications", - 7150 => "Service du ministère de la Défense", - 7160 => "Service déconcentré à compétence nation. D’un ministère (hors Défense)", - 7171 => "Service déconcentré de l’État à compétence (inter) régionale", - 7172 => "Service déconcentré de l’État à compétence (inter) départementale", - 7179 => "(Autre) Service déconcentré de l’État à compétence territoriale", - 7190 => "Ecole nationale non dotée de la personnalité morale", - 7210 => "Commune et commune nouvelle", - 7220 => "Département", - 7225 => "Collectivité et territoire d'Outre Mer", - 7229 => "(Autre) Collectivité territoriale", - 7230 => "Région", - 7312 => "Commune associée et commune déléguée", - 7313 => "Section de commune", - 7314 => "Ensemble urbain", - 7321 => "Association syndicale autorisée", - 7322 => "Association foncière urbaine", - 7323 => "Association foncière de remembrement", - 7331 => "Établissement public local d’enseignement", - 7340 => "Pôle métropolitain", - 7341 => "Secteur de commune", - 7342 => "District urbain", - 7343 => "Communauté urbaine", - 7344 => "Métropole", - 7345 => "Syndicat intercommunal à vocation multiple", - 7346 => "Communauté de communes", - 7347 => "Communauté de villes", - 7348 => "Communauté d'agglomération", - 7349 => "Autre établissement public local de coopération non spécialisé ou entente", - 7351 => "Institution interdépartemental ou entente", - 7352 => "Institution interrégionale ou entente", - 7353 => "Syndicat intercommunal à vocation unique", - 7354 => "Syndicat mixte communal", - 7355 => "Autre syndicat mixte", - 7356 => "Commission syndicale pour la gestion des biens indivis des communes", - 7361 => "Centre communal d'action sociale", - 7362 => "Caisse des écoles", - 7363 => "Caisse de crédit municipal", - 7364 => "Établissement d'hospitalisation", - 7365 => "Syndicat inter hospitalier", - 7366 => "Établissement public local social et médico-social", - 7371 => "Office public d'habitation à loyer modéré", - 7372 => "Service départemental d'incendie", - 7373 => "Établissement public local culturel", - 7378 => "Régie d'une collectivité locale à caractère administratif", - 7379 => "(Autre) Établissement public administratif local", - 7381 => "Organisme consulaire", - 7382 => "Établissement public national ayant fonction d'administration centrale", - 7383 => "Établissement public national à caractère scientifique culturel et professionnel", - 7384 => "Autre établissement public national d'enseignement", - 7385 => "Autre établissement public national administratif à compétence territoriale limitée", - 7389 => "Établissement public national à caractère administratif", - 7410 => "Groupement d'intérêt public", - 7430 => "Établissement public des cultes d'Alsace-Lorraine", - 7450 => "Etablissement public administratif, cercle et foyer dans les armées", - 7470 => "Groupement de coopération sanitaire à gestion publique", - 7490 => "Autre personne morale de droit administratif", - 7510 => "Service d'une collectivité locale à comptabilité distincte", - 7520 => "Régie d'une collectivité locale non dotée de la personnalité morale", - 8110 => "Régime général de la sécurité sociale", - 8120 => "Régime spécial de sécurité sociale", - 8130 => "Institution de retraite complémentaire", - 8140 => "Mutualité sociale agricole", - 8150 => "Régime maladie des non-salariés non agricoles", - 8160 => "Régime vieillesse ne dépendant pas du régime général de la sécurité sociale", - 8170 => "Régime d'assurance chômage", - 8190 => "Autre régime de prévoyance sociale", - 8210 => "Mutuelle", - 8250 => "Assurance mutuelle agricole", - 8290 => "Autre organisme mutualiste", - 8310 => "Comité central d'entreprise", - 8311 => "Comité d'établissement", - 8410 => "Syndicat de salariés", - 8420 => "Syndicat patronal", - 8450 => "Ordre professionnel ou assimilé", - 8470 => "Centre technique industriel ou comité professionnel du développement économique", - 8490 => "Autre organisme professionnel", - 8510 => "Institution de prévoyance", - 8520 => "Institution de retraite supplémentaire ", - 9110 => "Syndicat de copropriété", - 9150 => "Association syndicale libre", - 9210 => "Association non déclarée", - 9220 => "Association déclarée", - 9221 => "Association déclarée \"entreprises d'insertion par l'économique\"", - 9222 => "Association intermédiaire", - 9223 => "Groupement d'employeurs", - 9224 => "Association d'avocats à responsabilité professionnelle individuelle", - 9230 => "Association déclarée reconnue d'utilité publique", - 9240 => "Congrégation", - 9260 => "Association de droit local", - 9300 => "Fondation", - 9900 => "Autre personne morale de droit privé", - 9970 => "Groupement de coopération sanitaire à gestion privée", -); diff --git a/library/Metier/insee/Cache/CodesNace.php b/library/Metier/insee/Cache/CodesNace.php deleted file mode 100644 index e8bd08e7..00000000 --- a/library/Metier/insee/Cache/CodesNace.php +++ /dev/null @@ -1,736 +0,0 @@ - "A111", - '0112Z' => "A112", - '0113Z' => "A113", - '0114Z' => "A114", - '0115Z' => "A115", - '0116Z' => "A116", - '0119Z' => "A119", - '0121Z' => "A121", - '0122Z' => "A122", - '0123Z' => "A123", - '0124Z' => "A124", - '0125Z' => "A125", - '0126Z' => "A126", - '0127Z' => "A127", - '0128Z' => "A128", - '0129Z' => "A129", - '0130Z' => "A130", - '0141Z' => "A141", - '0142Z' => "A142", - '0143Z' => "A143", - '0144Z' => "A144", - '0145Z' => "A145", - '0146Z' => "A146", - '0147Z' => "A147", - '0149Z' => "A149", - '0150Z' => "A150", - '0161Z' => "A161", - '0162Z' => "A162", - '0163Z' => "A163", - '0164Z' => "A164", - '0170Z' => "A170", - '0210Z' => "A210", - '0220Z' => "A220", - '0230Z' => "A230", - '0240Z' => "A240", - '0311Z' => "A311", - '0312Z' => "A312", - '0321Z' => "A321", - '0322Z' => "A322", - '0510Z' => "B510", - '0520Z' => "B520", - '0610Z' => "B610", - '0620Z' => "B620", - '0710Z' => "B710", - '0721Z' => "B721", - '0729Z' => "B729", - '0811Z' => "B811", - '0812Z' => "B812", - '0891Z' => "B891", - '0892Z' => "B892", - '0893Z' => "B893", - '0899Z' => "B899", - '0910Z' => "B910", - '0990Z' => "B990", - '1011Z' => "C1011", - '1012Z' => "C1012", - '1013A' => "C1013", - '1013B' => "C1013", - '1020Z' => "C1020", - '1031Z' => "C1031", - '1032Z' => "C1032", - '1039A' => "C1039", - '1039B' => "C1039", - '1041A' => "C1041", - '1041B' => "C1041", - '1042Z' => "C1042", - '1051A' => "C1051", - '1051B' => "C1051", - '1051C' => "C1051", - '1051D' => "C1051", - '1052Z' => "C1052", - '1061A' => "C1061", - '1061B' => "C1061", - '1062Z' => "C1062", - '1071A' => "C1071", - '1071B' => "C1071", - '1071C' => "C1071", - '1071D' => "C1071", - '1072Z' => "C1072", - '1073Z' => "C1073", - '1081Z' => "C1081", - '1082Z' => "C1082", - '1083Z' => "C1083", - '1084Z' => "C1084", - '1085Z' => "C1085", - '1086Z' => "C1086", - '1089Z' => "C1089", - '1091Z' => "C1091", - '1092Z' => "C1092", - '1101Z' => "C1101", - '1102A' => "C1102", - '1102B' => "C1102", - '1103Z' => "C1103", - '1104Z' => "C1104", - '1105Z' => "C1105", - '1106Z' => "C1106", - '1107A' => "C1107", - '1107B' => "C1107", - '1200Z' => "C1200", - '1310Z' => "C1310", - '1320Z' => "C1320", - '1330Z' => "C1330", - '1391Z' => "C1391", - '1392Z' => "C1392", - '1393Z' => "C1393", - '1394Z' => "C1394", - '1395Z' => "C1395", - '1396Z' => "C1396", - '1399Z' => "C1399", - '1411Z' => "C1411", - '1412Z' => "C1412", - '1413Z' => "C1413", - '1414Z' => "C1414", - '1419Z' => "C1419", - '1420Z' => "C1420", - '1431Z' => "C1431", - '1439Z' => "C1439", - '1511Z' => "C1511", - '1512Z' => "C1512", - '1520Z' => "C1520", - '1610A' => "C1610", - '1610B' => "C1610", - '1621Z' => "C1621", - '1622Z' => "C1622", - '1623Z' => "C1623", - '1624Z' => "C1624", - '1629Z' => "C1629", - '1711Z' => "C1711", - '1712Z' => "C1712", - '1721A' => "C1721", - '1721B' => "C1721", - '1721C' => "C1721", - '1722Z' => "C1722", - '1723Z' => "C1723", - '1724Z' => "C1724", - '1729Z' => "C1729", - '1811Z' => "C1811", - '1812Z' => "C1812", - '1813Z' => "C1813", - '1814Z' => "C1814", - '1820Z' => "C1820", - '1910Z' => "C1910", - '1920Z' => "C1920", - '2011Z' => "C2011", - '2012Z' => "C2012", - '2013A' => "C2013", - '2013B' => "C2013", - '2014Z' => "C2014", - '2015Z' => "C2015", - '2016Z' => "C2016", - '2017Z' => "C2017", - '2020Z' => "C2020", - '2030Z' => "C2030", - '2041Z' => "C2041", - '2042Z' => "C2042", - '2051Z' => "C2051", - '2052Z' => "C2052", - '2053Z' => "C2053", - '2059Z' => "C2059", - '2060Z' => "C2060", - '2110Z' => "C2110", - '2120Z' => "C2120", - '2211Z' => "C2211", - '2219Z' => "C2219", - '2221Z' => "C2221", - '2222Z' => "C2222", - '2223Z' => "C2223", - '2229A' => "C2229", - '2229B' => "C2229", - '2311Z' => "C2311", - '2312Z' => "C2312", - '2313Z' => "C2313", - '2314Z' => "C2314", - '2319Z' => "C2319", - '2320Z' => "C2320", - '2331Z' => "C2331", - '2332Z' => "C2332", - '2341Z' => "C2341", - '2342Z' => "C2342", - '2343Z' => "C2343", - '2344Z' => "C2344", - '2349Z' => "C2349", - '2351Z' => "C2351", - '2352Z' => "C2352", - '2361Z' => "C2361", - '2362Z' => "C2362", - '2363Z' => "C2363", - '2364Z' => "C2364", - '2365Z' => "C2365", - '2369Z' => "C2369", - '2370Z' => "C2370", - '2391Z' => "C2391", - '2399Z' => "C2399", - '2410Z' => "C2410", - '2420Z' => "C2420", - '2431Z' => "C2431", - '2432Z' => "C2432", - '2433Z' => "C2433", - '2434Z' => "C2434", - '2441Z' => "C2441", - '2442Z' => "C2442", - '2443Z' => "C2443", - '2444Z' => "C2444", - '2445Z' => "C2445", - '2446Z' => "C2446", - '2451Z' => "C2451", - '2452Z' => "C2452", - '2453Z' => "C2453", - '2454Z' => "C2454", - '2511Z' => "C2511", - '2512Z' => "C2512", - '2521Z' => "C2521", - '2529Z' => "C2529", - '2530Z' => "C2530", - '2540Z' => "C2540", - '2550A' => "C2550", - '2550B' => "C2550", - '2561Z' => "C2561", - '2562A' => "C2562", - '2562B' => "C2562", - '2571Z' => "C2571", - '2572Z' => "C2572", - '2573A' => "C2573", - '2573B' => "C2573", - '2591Z' => "C2591", - '2592Z' => "C2592", - '2593Z' => "C2593", - '2594Z' => "C2594", - '2599A' => "C2599", - '2599B' => "C2599", - '2611Z' => "C2611", - '2612Z' => "C2612", - '2620Z' => "C2620", - '2630Z' => "C2630", - '2640Z' => "C2640", - '2651A' => "C2651", - '2651B' => "C2651", - '2652Z' => "C2652", - '2660Z' => "C2660", - '2670Z' => "C2670", - '2680Z' => "C2680", - '2711Z' => "C2711", - '2712Z' => "C2712", - '2720Z' => "C2720", - '2731Z' => "C2731", - '2732Z' => "C2732", - '2733Z' => "C2733", - '2740Z' => "C2740", - '2751Z' => "C2751", - '2752Z' => "C2752", - '2790Z' => "C2790", - '2811Z' => "C2811", - '2812Z' => "C2812", - '2813Z' => "C2813", - '2814Z' => "C2814", - '2815Z' => "C2815", - '2821Z' => "C2821", - '2822Z' => "C2822", - '2823Z' => "C2823", - '2824Z' => "C2824", - '2825Z' => "C2825", - '2829A' => "C2829", - '2829B' => "C2829", - '2830Z' => "C2830", - '2841Z' => "C2841", - '2849Z' => "C2849", - '2891Z' => "C2891", - '2892Z' => "C2892", - '2893Z' => "C2893", - '2894Z' => "C2894", - '2895Z' => "C2895", - '2896Z' => "C2896", - '2899A' => "C2899", - '2899B' => "C2899", - '2910Z' => "C2910", - '2920Z' => "C2920", - '2931Z' => "C2931", - '2932Z' => "C2932", - '3011Z' => "C3011", - '3012Z' => "C3012", - '3020Z' => "C3020", - '3030Z' => "C3030", - '3040Z' => "C3040", - '3091Z' => "C3091", - '3092Z' => "C3092", - '3099Z' => "C3099", - '3101Z' => "C3101", - '3102Z' => "C3102", - '3103Z' => "C3103", - '3109A' => "C3109", - '3109B' => "C3109", - '3211Z' => "C3211", - '3212Z' => "C3212", - '3213Z' => "C3213", - '3220Z' => "C3220", - '3230Z' => "C3230", - '3240Z' => "C3240", - '3250A' => "C3250", - '3250B' => "C3250", - '3291Z' => "C3291", - '3299Z' => "C3299", - '3311Z' => "C3311", - '3312Z' => "C3312", - '3313Z' => "C3313", - '3314Z' => "C3314", - '3315Z' => "C3315", - '3316Z' => "C3316", - '3317Z' => "C3317", - '3319Z' => "C3319", - '3320A' => "C3320", - '3320B' => "C3320", - '3320C' => "C3320", - '3320D' => "C3320", - '3511Z' => "D3511", - '3512Z' => "D3512", - '3513Z' => "D3513", - '3514Z' => "D3514", - '3521Z' => "D3521", - '3522Z' => "D3522", - '3523Z' => "D3523", - '3530Z' => "D3530", - '3600Z' => "E3600", - '3700Z' => "E3700", - '3811Z' => "E3811", - '3812Z' => "E3812", - '3821Z' => "E3821", - '3822Z' => "E3822", - '3831Z' => "E3831", - '3832Z' => "E3832", - '3900Z' => "E3900", - '4110A' => "F4110", - '4110B' => "F4110", - '4110C' => "F4110", - '4110D' => "F4110", - '4120A' => "F4120", - '4120B' => "F4120", - '4211Z' => "F4211", - '4212Z' => "F4212", - '4213A' => "F4213", - '4213B' => "F4213", - '4221Z' => "F4221", - '4222Z' => "F4222", - '4291Z' => "F4291", - '4299Z' => "F4299", - '4311Z' => "F4311", - '4312A' => "F4312", - '4312B' => "F4312", - '4313Z' => "F4313", - '4321A' => "F4321", - '4321B' => "F4321", - '4322A' => "F4322", - '4322B' => "F4322", - '4329A' => "F4329", - '4329B' => "F4329", - '4331Z' => "F4331", - '4332A' => "F4332", - '4332B' => "F4332", - '4332C' => "F4332", - '4333Z' => "F4333", - '4334Z' => "F4334", - '4339Z' => "F4339", - '4391A' => "F4391", - '4391B' => "F4391", - '4399A' => "F4399", - '4399B' => "F4399", - '4399C' => "F4399", - '4399D' => "F4399", - '4399E' => "F4399", - '4511Z' => "G4511", - '4519Z' => "G4519", - '4520A' => "G4520", - '4520B' => "G4520", - '4531Z' => "G4531", - '4532Z' => "G4532", - '4540Z' => "G4540", - '4611Z' => "G4611", - '4612A' => "G4612", - '4612B' => "G4612", - '4613Z' => "G4613", - '4614Z' => "G4614", - '4615Z' => "G4615", - '4616Z' => "G4616", - '4617A' => "G4617", - '4617B' => "G4617", - '4618Z' => "G4618", - '4619A' => "G4619", - '4619B' => "G4619", - '4621Z' => "G4621", - '4622Z' => "G4622", - '4623Z' => "G4623", - '4624Z' => "G4624", - '4631Z' => "G4631", - '4632A' => "G4632", - '4632B' => "G4632", - '4632C' => "G4632", - '4633Z' => "G4633", - '4634Z' => "G4634", - '4635Z' => "G4635", - '4636Z' => "G4636", - '4637Z' => "G4637", - '4638A' => "G4638", - '4638B' => "G4638", - '4639A' => "G4639", - '4639B' => "G4639", - '4641Z' => "G4641", - '4642Z' => "G4642", - '4643Z' => "G4643", - '4644Z' => "G4644", - '4645Z' => "G4645", - '4646Z' => "G4646", - '4647Z' => "G4647", - '4648Z' => "G4648", - '4649Z' => "G4649", - '4651Z' => "G4651", - '4652Z' => "G4652", - '4661Z' => "G4661", - '4662Z' => "G4662", - '4663Z' => "G4663", - '4664Z' => "G4664", - '4665Z' => "G4665", - '4666Z' => "G4666", - '4669A' => "G4669", - '4669B' => "G4669", - '4669C' => "G4669", - '4671Z' => "G4671", - '4672Z' => "G4672", - '4673A' => "G4673", - '4673B' => "G4673", - '4674A' => "G4674", - '4674B' => "G4674", - '4675Z' => "G4675", - '4676Z' => "G4676", - '4677Z' => "G4677", - '4690Z' => "G4690", - '4711A' => "G4711", - '4711B' => "G4711", - '4711C' => "G4711", - '4711D' => "G4711", - '4711E' => "G4711", - '4711F' => "G4711", - '4719A' => "G4719", - '4719B' => "G4719", - '4721Z' => "G4721", - '4722Z' => "G4722", - '4723Z' => "G4723", - '4724Z' => "G4724", - '4725Z' => "G4725", - '4726Z' => "G4726", - '4729Z' => "G4729", - '4730Z' => "G4730", - '4741Z' => "G4741", - '4742Z' => "G4742", - '4743Z' => "G4743", - '4751Z' => "G4751", - '4752A' => "G4752", - '4752B' => "G4752", - '4753Z' => "G4753", - '4754Z' => "G4754", - '4759A' => "G4759", - '4759B' => "G4759", - '4761Z' => "G4761", - '4762Z' => "G4762", - '4763Z' => "G4763", - '4764Z' => "G4764", - '4765Z' => "G4765", - '4771Z' => "G4771", - '4772A' => "G4772", - '4772B' => "G4772", - '4773Z' => "G4773", - '4774Z' => "G4774", - '4775Z' => "G4775", - '4776Z' => "G4776", - '4777Z' => "G4777", - '4778A' => "G4778", - '4778B' => "G4778", - '4778C' => "G4778", - '4779Z' => "G4779", - '4781Z' => "G4781", - '4782Z' => "G4782", - '4789Z' => "G4789", - '4791A' => "G4791", - '4791B' => "G4791", - '4799A' => "G4799", - '4799B' => "G4799", - '4910Z' => "H4910", - '4920Z' => "H4920", - '4931Z' => "H4931", - '4932Z' => "H4932", - '4939A' => "H4939", - '4939B' => "H4939", - '4939C' => "H4939", - '4941A' => "H4941", - '4941B' => "H4941", - '4941C' => "H4941", - '4942Z' => "H4942", - '4950Z' => "H4950", - '5010Z' => "H5010", - '5020Z' => "H5020", - '5030Z' => "H5030", - '5040Z' => "H5040", - '5110Z' => "H5110", - '5121Z' => "H5121", - '5122Z' => "H5122", - '5210A' => "H5210", - '5210B' => "H5210", - '5221Z' => "H5221", - '5222Z' => "H5222", - '5223Z' => "H5223", - '5224A' => "H5224", - '5224B' => "H5224", - '5229A' => "H5229", - '5229B' => "H5229", - '5310Z' => "H5310", - '5320Z' => "H5320", - '5510Z' => "I5510", - '5520Z' => "I5520", - '5530Z' => "I5530", - '5590Z' => "I5590", - '5610A' => "I5610", - '5610B' => "I5610", - '5610C' => "I5610", - '5621Z' => "I5621", - '5629A' => "I5629", - '5629B' => "I5629", - '5630Z' => "I5630", - '5811Z' => "J5811", - '5812Z' => "J5812", - '5813Z' => "J5813", - '5814Z' => "J5814", - '5819Z' => "J5819", - '5821Z' => "J5821", - '5829A' => "J5829", - '5829B' => "J5829", - '5829C' => "J5829", - '5911A' => "J5911", - '5911B' => "J5911", - '5911C' => "J5911", - '5912Z' => "J5912", - '5913A' => "J5913", - '5913B' => "J5913", - '5914Z' => "J5914", - '5920Z' => "J5920", - '6010Z' => "J6010", - '6020A' => "J6020", - '6020B' => "J6020", - '6110Z' => "J6110", - '6120Z' => "J6120", - '6130Z' => "J6130", - '6190Z' => "J6190", - '6201Z' => "J6201", - '6202A' => "J6202", - '6202B' => "J6202", - '6203Z' => "J6203", - '6209Z' => "J6209", - '6311Z' => "J6311", - '6312Z' => "J6312", - '6391Z' => "J6391", - '6399Z' => "J6399", - '6411Z' => "K6411", - '6419Z' => "K6419", - '6420Z' => "K6420", - '6430Z' => "K6430", - '6491Z' => "K6491", - '6492Z' => "K6492", - '6499Z' => "K6499", - '6511Z' => "K6511", - '6512Z' => "K6512", - '6520Z' => "K6520", - '6530Z' => "K6530", - '6611Z' => "K6611", - '6612Z' => "K6612", - '6619A' => "K6619", - '6619B' => "K6619", - '6621Z' => "K6621", - '6622Z' => "K6622", - '6629Z' => "K6629", - '6630Z' => "K6630", - '6810Z' => "L6810", - '6820A' => "L6820", - '6820B' => "L6820", - '6831Z' => "L6831", - '6832A' => "L6832", - '6832B' => "L6832", - '6910Z' => "M6910", - '6920Z' => "M6920", - '7010Z' => "M7010", - '7021Z' => "M7021", - '7022Z' => "M7022", - '7111Z' => "M7111", - '7112A' => "M7112", - '7112B' => "M7112", - '7120A' => "M7120", - '7120B' => "M7120", - '7211Z' => "M7211", - '7219Z' => "M7219", - '7220Z' => "M7220", - '7311Z' => "M7311", - '7312Z' => "M7312", - '7320Z' => "M7320", - '7410Z' => "M7410", - '7420Z' => "M7420", - '7430Z' => "M7430", - '7490A' => "M7490", - '7490B' => "M7490", - '7500Z' => "M7500", - '7711A' => "N7711", - '7711B' => "N7711", - '7712Z' => "N7712", - '7721Z' => "N7721", - '7722Z' => "N7722", - '7729Z' => "N7729", - '7731Z' => "N7731", - '7732Z' => "N7732", - '7733Z' => "N7733", - '7734Z' => "N7734", - '7735Z' => "N7735", - '7739Z' => "N7739", - '7740Z' => "N7740", - '7810Z' => "N7810", - '7820Z' => "N7820", - '7830Z' => "N7830", - '7911Z' => "N7911", - '7912Z' => "N7912", - '7990Z' => "N7990", - '8010Z' => "N8010", - '8020Z' => "N8020", - '8030Z' => "N8030", - '8110Z' => "N8110", - '8121Z' => "N8121", - '8122Z' => "N8122", - '8129A' => "N8129", - '8129B' => "N8129", - '8130Z' => "N8130", - '8211Z' => "N8211", - '8219Z' => "N8219", - '8220Z' => "N8220", - '8230Z' => "N8230", - '8291Z' => "N8291", - '8292Z' => "N8292", - '8299Z' => "N8299", - '8411Z' => "O8411", - '8412Z' => "O8412", - '8413Z' => "O8413", - '8421Z' => "O8421", - '8422Z' => "O8422", - '8423Z' => "O8423", - '8424Z' => "O8424", - '8425Z' => "O8425", - '8430A' => "O8430", - '8430B' => "O8430", - '8430C' => "O8430", - '8510Z' => "P8510", - '8520Z' => "P8520", - '8531Z' => "P8531", - '8532Z' => "P8532", - '8541Z' => "P8541", - '8542Z' => "P8542", - '8551Z' => "P8551", - '8552Z' => "P8552", - '8553Z' => "P8553", - '8559A' => "P8559", - '8559B' => "P8559", - '8560Z' => "P8560", - '8610Z' => "Q8610", - '8621Z' => "Q8621", - '8622A' => "Q8622", - '8622B' => "Q8622", - '8622C' => "Q8622", - '8623Z' => "Q8623", - '8690A' => "Q8690", - '8690B' => "Q8690", - '8690C' => "Q8690", - '8690D' => "Q8690", - '8690E' => "Q8690", - '8690F' => "Q8690", - '8710A' => "Q8710", - '8710B' => "Q8710", - '8710C' => "Q8710", - '8720A' => "Q8720", - '8720B' => "Q8720", - '8730A' => "Q8730", - '8730B' => "Q8730", - '8790A' => "Q8790", - '8790B' => "Q8790", - '8810A' => "Q8810", - '8810B' => "Q8810", - '8810C' => "Q8810", - '8891A' => "Q8891", - '8891B' => "Q8891", - '8899A' => "Q8899", - '8899B' => "Q8899", - '9001Z' => "R9001", - '9002Z' => "R9002", - '9003A' => "R9003", - '9003B' => "R9003", - '9004Z' => "R9004", - '9101Z' => "R9101", - '9102Z' => "R9102", - '9103Z' => "R9103", - '9104Z' => "R9104", - '9200Z' => "R9200", - '9311Z' => "R9311", - '9312Z' => "R9312", - '9313Z' => "R9313", - '9319Z' => "R9319", - '9321Z' => "R9321", - '9329Z' => "R9329", - '9411Z' => "S9411", - '9412Z' => "S9412", - '9420Z' => "S9420", - '9491Z' => "S9491", - '9492Z' => "S9492", - '9499Z' => "S9499", - '9511Z' => "S9511", - '9512Z' => "S9512", - '9521Z' => "S9521", - '9522Z' => "S9522", - '9523Z' => "S9523", - '9524Z' => "S9524", - '9525Z' => "S9525", - '9529Z' => "S9529", - '9601A' => "S9601", - '9601B' => "S9601", - '9602A' => "S9602", - '9602B' => "S9602", - '9603Z' => "S9603", - '9604Z' => "S9604", - '9609Z' => "S9609", - '9700Z' => "T9700", - '9810Z' => "T9810", - '9820Z' => "T9820", - '9900Z' => "U9900", - '0000Z' => "Z000", -); diff --git a/library/Metier/insee/Cache/CodesNaf.php b/library/Metier/insee/Cache/CodesNaf.php deleted file mode 100644 index 4c4cd811..00000000 --- a/library/Metier/insee/Cache/CodesNaf.php +++ /dev/null @@ -1,1480 +0,0 @@ - "En instance de chiffrement", - '011A' => "Culture de céréales ; cultures industrielles", - '011C' => "Culture de légumes ; maraîchage", - '011D' => "Horticulture ; pépinières", - '011F' => "Culture fruitière", - '011G' => "Viticulture", - '012A' => "Elevage de bovins", - '012C' => "Elevage d'ovins, caprins et équidés", - '012E' => "Elevage de porcins", - '012G' => "Elevage de volailles", - '012J' => "Elevage d'autres animaux", - '013Z' => "Culture et élevage associés", - '014A' => "Services aux cultures productives", - '014B' => "Réalisation et entretien de plantations ornementales", - '014D' => "Services annexes à l'élevage", - '015Z' => "Chasse", - '020A' => "Sylviculture", - '020B' => "Exploitation forestière", - '020D' => "Services forestiers", - '050A' => "Pêche", - '050C' => "Pisciculture, aquaculture", - '101Z' => "Extraction et agglomération de la houille", - '102Z' => "Extraction et agglomération du lignite", - '103Z' => "Extraction et agglomération de la tourbe", - '111Z' => "Extraction d'hydrocarbures", - '112Z' => "Services annexes à l'extraction d'hydrocarbures", - '120Z' => "Extraction de minerais d'uranium", - '131Z' => "Extraction de minerais de fer", - '132Z' => "Extraction de minerais de métaux non ferreux", - '141A' => "Extraction de pierres ornementales et de construction", - '141C' => "Extraction de calcaire industriel, de gypse et de craie", - '141E' => "Extraction d'ardoise", - '142A' => "Production de sables et de granulats", - '142C' => "Extraction d'argiles et de kaolin", - '143Z' => "Extraction de minéraux pour l'industrie chimique et d'engrais naturels", - '144Z' => "Production de sel", - '145Z' => "Activités extractives n.c.a.", - '151A' => "Production de viandes de boucherie", - '151C' => "Production de viandes de volailles", - '151E' => "Préparation industrielle de produits à base de viandes", - '151F' => "Charcuterie", - '152Z' => "Industrie du poisson", - '153A' => "Transformation et conservation de pommes de terre", - '153C' => "Préparation de jus de fruits et légumes", - '153E' => "Transformation et conservation de légumes", - '153F' => "Transformation et conservation de fruits", - '154A' => "Fabrication d'huiles et graisses brutes", - '154C' => "Fabrication d'huiles et graisses raffinées", - '154E' => "Fabrication de margarine", - '155A' => "Fabrication de lait liquide et de produits frais", - '155B' => "Fabrication de beurre", - '155C' => "Fabrication de fromages", - '155D' => "Fabrication d'autres produits laitiers", - '155F' => "Fabrication de glaces et sorbets", - '156A' => "Meunerie", - '156B' => "Autres activités de travail des grains", - '156D' => "Fabrication de produits amylacés", - '157A' => "Fabrication d'aliments pour animaux de ferme", - '157C' => "Fabrication d'aliments pour animaux de compagnie", - '158A' => "Fabrication industrielle de pain et de pâtisserie fraîche", - '158B' => "Cuisson de produits de boulangerie", - '158C' => "Boulangerie et boulangerie-pâtisserie", - '158D' => "Pâtisserie", - '158F' => "Biscotterie, biscuiterie, pâtisserie de conservation", - '158H' => "Fabrication de sucre", - '158K' => "Chocolaterie, confiserie", - '158M' => "Fabrication de pâtes alimentaires", - '158P' => "Transformation du thé et du café", - '158R' => "Fabrication de condiments et assaisonnements", - '158T' => "Fabrication d'aliments adaptés à l'enfant et diététiques", - '158V' => "Industries alimentaires n.c.a.", - '159A' => "Production d'eaux de vie naturelles", - '159B' => "Fabrication de spiritueux", - '159D' => "Production d'alcool éthylique de fermentation", - '159F' => "Champagnisation", - '159G' => "Vinification", - '159J' => "Cidrerie", - '159L' => "Production d'autres boissons fermentées", - '159N' => "Brasserie", - '159Q' => "Malterie", - '159S' => "Industrie des eaux de table", - '159T' => "Production de boissons rafraîchissantes", - '160Z' => "Industrie du tabac", - '171A' => "Filature de l'industrie cotonnière", - '171C' => "Filature de l'industrie lainière - cycle cardé", - '171E' => "Préparation de la laine", - '171F' => "Filature de l'industrie lainière - cycle peigné", - '171H' => "Préparation et filature du lin", - '171K' => "Moulinage et texturation de la soie et des textiles artificiels ou synthétiques", - '171M' => "Fabrication de fils à coudre", - '171P' => "Préparation et filature d'autres fibres", - '172A' => "Tissage de l'industrie cotonnière", - '172C' => "Tissage de l'industrie lainière - cycle cardé", - '172E' => "Tissage de l'industrie lainière - cycle peigné", - '172G' => "Tissage de soieries", - '172J' => "Tissage d'autres textiles", - '173Z' => "Ennoblissement textile", - '174A' => "Fabrication de linge de maison et d'articles d'ameublement", - '174B' => "Fabrication de petits articles textiles de literie", - '174C' => "Fabrication d'autres articles confectionnés en textile", - '175A' => "Fabrication de tapis et moquettes", - '175C' => "Ficellerie, corderie, fabrication de filets", - '175E' => "Fabrication de non-tissés", - '175G' => "Industries textiles n.c.a.", - '176Z' => "Fabrication d'étoffes à maille", - '177A' => "Fabrication de bas et chaussettes", - '177C' => "Fabrication de pull-overs et articles similaires", - '181Z' => "Fabrication de vêtements en cuir", - '182A' => "Fabrication de vêtements de travail", - '182C' => "Fabrication de vêtements sur mesure", - '182D' => "Fabrication de vêtements de dessus pour hommes et garçonnets", - '182E' => "Fabrication de vêtements de dessus pour femmes et fillettes", - '182G' => "Fabrication de vêtements de dessous", - '182J' => "Fabrication d'autres vêtements et accessoires", - '183Z' => "Industrie des fourrures", - '191Z' => "Apprêt et tannage des cuirs", - '192Z' => "Fabrication d'articles de voyage et de maroquinerie", - '193Z' => "Fabrication de chaussures", - '201A' => "Sciage et rabotage du bois", - '201B' => "Imprégnation du bois", - '202Z' => "Fabrication de panneaux de bois", - '203Z' => "Fabrication de charpentes et de menuiseries", - '204Z' => "Fabrication d'emballages en bois", - '205A' => "Fabrication d'objets divers en bois", - '205C' => "Fabrication d'objets en liège, vannerie ou sparterie", - '211A' => "Fabrication de pâte à papier", - '211C' => "Fabrication de papier et de carton", - '212A' => "Industrie du carton ondulé", - '212B' => "Fabrication de cartonnages", - '212C' => "Fabrication d'emballages en papier", - '212E' => "Fabrication d'articles en papier à usage sanitaire ou domestique", - '212G' => "Fabrication d'articles de papeterie", - '212J' => "Fabrication de papiers peints", - '212L' => "Fabrication d'autres articles en papier ou en carton", - '221A' => "Edition de livres", - '221C' => "Edition de journaux", - '221E' => "Edition de revues et périodiques", - '221G' => "Edition d'enregistrements sonores", - '221J' => "Autres activités d'édition", - '222A' => "Imprimerie de journaux", - '222C' => "Autre imprimerie (labeur)", - '222E' => "Reliure", - '222G' => "Activités de pré-presse", - '222J' => "Activités graphiques auxiliaires", - '223A' => "Reproduction d'enregistrements sonores", - '223C' => "Reproduction d'enregistrements vidéo", - '223E' => "Reproduction d'enregistrements informatiques", - '231Z' => "Cokéfaction", - '232Z' => "Raffinage de pétrole", - '233Z' => "Elaboration et transformation de matières nucléaires", - '241A' => "Fabrication de gaz industriels", - '241C' => "Fabrication de colorants et de pigments", - '241E' => "Fabrication d'autres produits chimiques inorganiques de base", - '241G' => "Fabrication d'autres produits chimiques organiques de base", - '241J' => "Fabrication de produits azotés et d'engrais", - '241L' => "Fabrication de matières plastiques de base", - '241N' => "Fabrication de caoutchouc synthétique", - '242Z' => "Fabrication de produits agrochimiques", - '243Z' => "Fabrication de peintures et vernis", - '244A' => "Fabrication de produits pharmaceutiques de base", - '244C' => "Fabrication de médicaments", - '244D' => "Fabrication d'autres produits pharmaceutiques", - '245A' => "Fabrication de savons, détergents et produits d'entretien", - '245C' => "Fabrication de parfums et de produits pour la toilette", - '246A' => "Fabrication de produits explosifs", - '246C' => "Fabrication de colles et gélatines", - '246E' => "Fabrication d'huiles essentielles", - '246G' => "Fabrication de produits chimiques pour la photographie", - '246J' => "Fabrication de supports de données", - '246L' => "Fabrication de produits chimiques à usage industriel", - '247Z' => "Fabrication de fibres artificielles ou synthétiques", - '251A' => "Fabrication de pneumatiques", - '251C' => "Rechapage de pneumatiques", - '251E' => "Fabrication d'autres articles en caoutchouc", - '252A' => "Fabrication de plaques, feuilles, tubes et profilés en matières plastiques", - '252C' => "Fabrication d'emballages en matières plastiques", - '252E' => "Fabrication d'éléments en matières plastiques pour la construction", - '252G' => "Fabrication d'articles divers en matières plastiques", - '252H' => "Fabrication de pièces techniques en matières plastiques", - '261A' => "Fabrication de verre plat", - '261C' => "Façonnage et transformation du verre plat", - '261E' => "Fabrication de verre creux", - '261G' => "Fabrication de fibres de verre", - '261J' => "Fabrication et façonnage d'articles techniques en verre", - '261K' => "Fabrication d'isolateurs en verre", - '262A' => "Fabrication d'articles céramiques à usage domestique ou ornemental", - '262C' => "Fabrication d'appareils sanitaires en céramique", - '262E' => "Fabrication d'isolateurs et pièces isolantes en céramique", - '262G' => "Fabrication d'autres produits céramiques à usage technique", - '262J' => "Fabrication d'autres produits céramiques", - '262L' => "Fabrication de produits céramiques réfractaires", - '263Z' => "Fabrication de carreaux en céramique", - '264A' => "Fabrication de briques", - '264B' => "Fabrication de tuiles", - '264C' => "Fabrication de produits divers en terre cuite", - '265A' => "Fabrication de ciment", - '265C' => "Fabrication de chaux", - '265E' => "Fabrication de plâtre", - '266A' => "Fabrication d'éléments en béton pour la construction", - '266C' => "Fabrication d'éléments en plâtre pour la construction", - '266E' => "Fabrication de béton prêt à l'emploi", - '266G' => "Fabrication de mortiers et bétons secs", - '266J' => "Fabrication d'ouvrages en fibre-ciment", - '266L' => "Fabrication d'autres ouvrages en béton ou en plâtre", - '267Z' => "Taille, façonnage et finissage de pierres ornementales et de construction", - '268A' => "Fabrication de produits abrasifs", - '268C' => "Fabrication de produits minéraux non métalliques n.c.a.", - '271Y' => "Sidérurgie", - '271Z' => "Sidérurgie (CECA)", - '272A' => "Fabrication de tubes en fonte", - '272C' => "Fabrication de tubes en acier", - '273A' => "Etirage à froid", - '273C' => "Laminage à froid de feuillards", - '273E' => "Profilage à froid par formage ou pliage", - '273G' => "Tréfilage à froid", - '273J' => "Production de ferroalliages et autres produits non CECA", - '274A' => "Production de métaux précieux", - '274C' => "Production d'aluminium", - '274D' => "Première transformation de l'aluminium", - '274F' => "Production de plomb, de zinc ou d'étain", - '274G' => "Première transformation du plomb, du zinc ou de l'étain", - '274J' => "Production de cuivre", - '274K' => "Première transformation du cuivre", - '274M' => "Métallurgie des autres métaux non ferreux", - '275A' => "Fonderie de fonte", - '275C' => "Fonderie d'acier", - '275E' => "Fonderie de métaux légers", - '275G' => "Fonderie d'autres métaux non ferreux", - '281A' => "Fabrication de constructions métalliques", - '281C' => "Fabrication de menuiseries et fermetures métalliques", - '282A' => "Fabrication de réservoirs et citernes métalliques", - '282B' => "Fabrication de bouteilles pour gaz comprimés", - '282C' => "Fabrication de réservoirs, citernes et conteneurs métalliques", - '282D' => "Fabrication de radiateurs et de chaudières pour le chauffage central", - '283A' => "Fabrication de générateurs de vapeur", - '283B' => "Chaudronnerie nucléaire", - '283C' => "Chaudronnerie-tuyauterie", - '284A' => "Forge, estampage, matriçage", - '284B' => "Découpage, emboutissage", - '284C' => "Métallurgie des poudres", - '285A' => "Traitement et revêtement des métaux", - '285C' => "Décolletage", - '285D' => "Mécanique générale", - '286A' => "Fabrication de coutellerie", - '286C' => "Fabrication d'outillage à main", - '286D' => "Fabrication d'outillage mécanique", - '286F' => "Fabrication de serrures et de ferrures", - '287A' => "Fabrication de fûts et emballages métalliques similaires", - '287C' => "Fabrication d'emballages métalliques légers", - '287E' => "Fabrication d'articles en fils métalliques", - '287G' => "Visserie et boulonnerie", - '287H' => "Fabrication de ressorts", - '287J' => "Fabrication de chaînes", - '287L' => "Fabrication d'articles métalliques ménagers", - '287M' => "Fabrication de coffres-forts", - '287N' => "Fabrication de petits articles métalliques", - '287P' => "Fabrication d'articles métalliques n.c.a.", - '287Q' => "Fabrication d'articles métalliques divers", - '291A' => "Fabrication de moteurs et turbines", - '291B' => "Fabrication de pompes", - '291C' => "Fabrication de pompes et compresseurs", - '291D' => "Fabrication de transmissions hydrauliques et pneumatiques", - '291E' => "Fabrication de compresseurs", - '291F' => "Fabrication d'articles de robinetterie", - '291H' => "Fabrication de roulements", - '291J' => "Fabrication d'organes mécaniques de transmission", - '292A' => "Fabrication de fours et brûleurs", - '292C' => "Fabrication d'ascenseurs, monte-charges et escaliers mécaniques", - '292D' => "Fabrication d'équipements de levage et de manutention", - '292F' => "Fabrication d'équipements aérauliques et frigorifiques industriels", - '292H' => "Fabrication d'équipements d'emballage et de conditionnement", - '292J' => "Fabrication d'appareils de pesage", - '292K' => "Fabrication de machines diverses d'usage général", - '292L' => "Fabrication de matériel pour les industries chimiques", - '292M' => "Fabrication d'autres machines d'usage général", - '293A' => "Fabrication de tracteurs agricoles", - '293C' => "Réparation de matériel agricole", - '293D' => "Fabrication de matériel agricole", - '294A' => "Fabrication de machines-outils à métaux", - '294B' => "Fabrication de machines-outils à bois", - '294C' => "Fabrication de machines-outils portatives à moteur incorporé", - '294D' => "Fabrication de matériel de soudage", - '294E' => "Fabrication d'autres machines-outils", - '295A' => "Fabrication de machines pour la métallurgie", - '295B' => "Fabrication de matériels de mines pour l'extraction", - '295C' => "Fabrication de machines pour l'extraction ou la construction", - '295D' => "Fabrication de matériels de travaux publics", - '295E' => "Fabrication de machines pour l'industrie agroalimentaire", - '295G' => "Fabrication de machines pour les industries textiles", - '295J' => "Fabrication de machines pour les industries du papier et du carton", - '295L' => "Fabrication de machines d'imprimerie", - '295M' => "Fabrication de machines pour le travail du caoutchouc ou des plastiques", - '295N' => "Fabrication de moules et modèles", - '295P' => "Fabrication d'autres machines spécialisées", - '295Q' => "Fabrication de machines d'assemblage automatique", - '295R' => "Fabrication machines spécialisées diverses", - '296A' => "Fabrication d'armement", - '296B' => "Fabrication d'armes de chasse, de tir et de défense", - '297A' => "Fabrication d'appareils électroménagers", - '297C' => "Fabrication d'appareils ménagers non électriques", - '300A' => "Fabrication de machines de bureau", - '300C' => "Fabrication d'ordinateurs et d'autres équipements informatiques", - '311A' => "Fabrication de moteurs, génératrices et transformateurs électriques de petite et moyenne puissance", - '311B' => "Fabrication de moteurs, génératrices et transformateurs électriques de grande puissance", - '311C' => "Réparation de matériels électriques", - '312A' => "Fabrication de matériel de distribution et de commande électrique pour basse tension", - '312B' => "Fabrication de matériel de distribution et de commande électrique pour haute tension", - '313Z' => "Fabrication de fils et câbles isolés", - '314Z' => "Fabrication d'accumulateurs et de piles électriques", - '315A' => "Fabrication de lampes", - '315B' => "Fabrication d'appareils électriques autonomes de sécurité", - '315C' => "Fabrication d'appareils d'éclairage", - '316A' => "Fabrication de matériels électriques pour moteurs et véhicules", - '316C' => "Fabrication de matériel électromagnétique industriel", - '316D' => "Fabrication de matériels électriques n.c.a.", - '321A' => "Fabrication de composants passifs et de condensateurs", - '321B' => "Fabrication de composants électroniques actifs", - '321C' => "Fabrication de composants électroniques actifs", - '321D' => "Assemblage de cartes électroniques pour compte de tiers", - '322A' => "Fabrication d'équipements d'émission et de transmission hertzienne", - '322B' => "Fabrication d'appareils de téléphonie", - '323Z' => "Fabrication d'appareils de réception, enregistrement ou reproduction du son et de l'image", - '331A' => "Fabrication de matériel d'imagerie médicale et de radiologie", - '331B' => "Fabrication d'appareils médicochirurgicaux", - '332A' => "Fabrication d'équipements d'aide à la navigation", - '332B' => "Fabrication d'instrumentation scientifique et technique", - '333Z' => "Fabrication d'équipements de contrôle des processus industriels", - '334A' => "Fabrication de lunettes", - '334B' => "Fabrication d'instruments d'optique et de matériel photographique", - '335Z' => "Horlogerie", - '341Z' => "Construction de véhicules automobiles", - '342A' => "Fabrication de carrosseries automobiles", - '342B' => "Fabrications de caravanes et véhicules de loisirs", - '343Z' => "Fabrication d'équipements automobiles", - '351A' => "Construction de bâtiments de guerre", - '351B' => "Construction de navires civils", - '351C' => "Réparation navale", - '351E' => "Construction de bateaux de plaisance", - '352Z' => "Construction de matériel ferroviaire roulant", - '353A' => "Construction de moteurs pour aéronefs", - '353B' => "Construction de cellules d'aéronefs", - '353C' => "Construction de lanceurs et engins spatiaux", - '354A' => "Fabrication de motocycles", - '354C' => "Fabrication de bicyclettes", - '354E' => "Fabrication de véhicules pour invalides", - '355Z' => "Fabrication de matériels de transport n.c.a.", - '361A' => "Fabrication de sièges", - '361C' => "Fabrication de meubles de bureau et de magasin", - '361E' => "Fabrication de meubles de cuisine", - '361G' => "Fabrication de meubles meublants", - '361H' => "Fabrication de meubles de jardin et d'extérieur", - '361J' => "Fabrication de meubles n.c.a.", - '361K' => "Industries connexes de l'ameublement", - '361M' => "Fabrication de matelas", - '362A' => "Fabrication de monnaies", - '362C' => "Bijouterie, joaillerie, orfèvrerie", - '363Z' => "Fabrication d'instruments de musique", - '364Z' => "Fabrication d'articles de sport", - '365Z' => "Fabrication de jeux et jouets", - '366A' => "Bijouterie fantaisie", - '366C' => "Industrie de la brosserie", - '366E' => "Autres activités manufacturières n.c.a.", - '371Z' => "Récupération de matières métalliques recyclables", - '372Z' => "Récupération de matières non métalliques recyclables", - '401A' => "Production d'électricité", - '401C' => "Transport d'électricité", - '401E' => "Distribution et commerce d'électricité", - '401Z' => "Production et distribution d'électricité", - '402A' => "Production de combustible gazeux", - '402C' => "Distribution de combustibles gazeux", - '402Z' => "Production et distribution de combustibles gazeux", - '403Z' => "Production et distribution de chaleur", - '410Z' => "Captage, traitement et distribution d'eau", - '451A' => "Terrassements divers, démolition", - '451B' => "Terrassements en grande masse", - '451D' => "Forages et sondages", - '452A' => "Construction de maisons individuelles", - '452B' => "Construction de bâtiments divers", - '452C' => "Construction d'ouvrages d'art", - '452D' => "Travaux souterrains", - '452E' => "Réalisation de réseaux", - '452F' => "Construction de lignes électriques et de télécommunication", - '452J' => "Réalisation de couvertures par éléments", - '452K' => "Travaux d'étanchéification", - '452L' => "Travaux de charpente", - '452N' => "Construction de voies ferrées", - '452P' => "Construction de chaussées routières et de sols sportifs", - '452R' => "Travaux maritimes et fluviaux", - '452T' => "Levage, montage", - '452U' => "Autres travaux spécialisés de construction", - '452V' => "Travaux de maçonnerie générale", - '453A' => "Travaux d'installation électrique", - '453C' => "Travaux d'isolation", - '453E' => "Installation d'eau et de gaz", - '453F' => "Installation d'équipements thermiques et de climatisation", - '453H' => "Autres travaux d'installation", - '454A' => "Plâtrerie", - '454C' => "Menuiserie bois et matières plastiques", - '454D' => "Menuiserie métallique ; serrurerie", - '454F' => "Revêtement des sols et des murs", - '454H' => "Miroiterie de bâtiment, vitrerie", - '454J' => "Peinture", - '454L' => "Agencement de lieux de vente", - '454M' => "Travaux de finition n.c.a.", - '455Z' => "Location avec opérateur de matériel de construction", - '501Z' => "Commerce de véhicules automobiles", - '502Z' => "Entretien et réparation de véhicules automobiles", - '503A' => "Commerce de gros d'équipements automobiles", - '503B' => "Commerce de détail d'équipements automobiles", - '504Z' => "Commerce et réparation de motocycles", - '505Z' => "Commerce de détail de carburants", - '511A' => "Intermédiaires du commerce en matières premières agricoles, animaux vivants, matières premières textiles et demi-produits", - '511C' => "Intermédiaires du commerce en combustibles, métaux, minéraux et produits chimiques", - '511E' => "Intermédiaires du commerce en bois et matériaux de construction", - '511G' => "Intermédiaires du commerce en machines, équipements industriels, navires et avions", - '511J' => "Intermédiaires du commerce en meubles, articles de ménage et quincaillerie", - '511L' => "Intermédiaires du commerce en textiles, habillement, chaussures et articles en cuir", - '511N' => "Intermédiaires du commerce en produits alimentaires", - '511P' => "Centrales d'achats alimentaires", - '511R' => "Autres intermédiaires spécialisés du commerce", - '511T' => "Intermédiaires non spécialisés du commerce", - '511U' => "Centrales d'achats non alimentaires", - '512A' => "Commerce de gros de céréales et aliments pour le bétail", - '512C' => "Commerce de gros de fleurs et plantes", - '512E' => "Commerce de gros d'animaux vivants", - '512G' => "Commerce de gros de cuirs et peaux", - '512J' => "Commerce de gros de tabac non manufacturé", - '513A' => "Commerce de gros de fruits et légumes", - '513C' => "Commerce de gros de viandes de boucherie", - '513D' => "Commerce de gros de produits à base de viande", - '513E' => "Commerce de gros de volailles et gibiers", - '513G' => "Commerce de gros de produits laitiers, oeufs, huiles", - '513J' => "Commerce de gros de boissons", - '513L' => "Commerce de gros de tabac", - '513N' => "Commerce de gros de sucre, chocolat et confiserie", - '513Q' => "Commerce de gros de café, thé, cacao et épices", - '513S' => "Commerce de gros de poissons, crustacés et mollusques", - '513T' => "Commerces de gros alimentaires spécialisés divers", - '513V' => "Commerce de gros de produits surgelés", - '513W' => "Commerce de gros alimentaire non spécialisé", - '514A' => "Commerce de gros de textiles", - '514C' => "Commerce de gros d'habillement", - '514D' => "Commerce de gros de la chaussure", - '514F' => "Commerce de gros d'appareils électroménagers et de radios et télévisions", - '514H' => "Commerce de gros de vaisselle et verrerie de ménage", - '514J' => "Commerce de gros de produits pour l'entretien et l'aménagement de l'habitat", - '514L' => "Commerce de gros de parfumerie et de produits de beauté", - '514N' => "Commerce de gros de produits pharmaceutiques", - '514Q' => "Commerce de gros de papeterie", - '514R' => "Commerce de gros de jouets", - '514S' => "Autres commerces de gros de biens de consommation", - '515A' => "Commerce de gros de combustibles", - '515C' => "Commerce de gros de minerais et métaux", - '515E' => "Commerce de gros de bois et de produits dérivés", - '515F' => "Commerce de gros de matériaux de construction et d'appareils sanitaires", - '515H' => "Commerce de gros de quincaillerie", - '515J' => "Commerce de gros de fournitures pour plomberie et chauffage", - '515L' => "Commerce de gros de produits chimiques", - '515N' => "Commerce de gros d'autres produits intermédiaires", - '515Q' => "Commerce de gros de déchets et débris", - '516A' => "Commerce de gros de machines-outils", - '516C' => "Commerce de gros d'équipements pour la construction", - '516E' => "Commerce de gros de machines pour l'industrie textile et l'habillement", - '516G' => "Commerce de gros de machines de bureau et de matériel informatique", - '516J' => "Commerce de gros de matériel électrique et électronique", - '516K' => "Commerce gros fournitures et équipements industriels divers", - '516L' => "Commerce de gros de fournitures et équipements divers pour le commerce et les services", - '516N' => "Commerce de gros de matériel agricole", - '517Z' => "Commerce de gros non spécialisé", - '518A' => "Commerce de gros de machines-outils", - '518C' => "Commerce de gros de machines pour l'extraction, la construction et le génie civil", - '518E' => "Commerce de gros de machines pour l'industrie textile et l'habillement", - '518G' => "Commerce de gros d'ordinateurs, d'équipements informatiques périphériques et de progiciels", - '518H' => "Commerce de gros d'autres machines et équipements de bureau", - '518J' => "Commerce de gros de composants et d'autres équipements électroniques", - '518L' => "Commerce de gros de matériel électrique", - '518M' => "Commerce de gros de fournitures et équipements industriels divers", - '518N' => "Commerce de gros de fournitures et équipements divers pour le commerce et les services", - '518P' => "Commerce de gros de matériel agricole", - '519A' => "Autres commerces de gros spécialisés", - '519B' => "Commerce de gros non spécialisé", - '521A' => "Commerce de détail de produits surgelés", - '521B' => "Commerce d'alimentation générale", - '521C' => "Supérettes", - '521D' => "Supermarchés", - '521E' => "Magasins populaires", - '521F' => "Hypermarchés", - '521H' => "Grands magasins", - '521J' => "Autres commerces de détail en magasin non spécialisé", - '522A' => "Commerce de détail de fruits et légumes", - '522C' => "Commerce de détail de viandes et produits à base de viande", - '522E' => "Commerce de détail de poissons, crustacés et mollusques", - '522G' => "Commerce de détail de pain, pâtisserie et confiserie", - '522J' => "Commerce de détail de boissons", - '522L' => "Commerce de détail de tabac", - '522N' => "Commerce de détail de produits laitiers", - '522P' => "Commerces de détail alimentaires spécialisés divers", - '523A' => "Commerce de détail de produits pharmaceutiques", - '523C' => "Commerce de détail d'articles médicaux et orthopédiques", - '523E' => "Commerce de détail de parfumerie et de produits de beauté", - '524A' => "Commerce de détail de textiles", - '524C' => "Commerce de détail d'habillement", - '524E' => "Commerce de détail de la chaussure", - '524F' => "Commerce de détail de maroquinerie et d'articles de voyage", - '524H' => "Commerce de détail de meubles", - '524J' => "Commerce de détail d'équipement du foyer", - '524L' => "Commerce de détail d'appareils électroménagers, de radio et de télévision", - '524N' => "Commerce de détail de quincaillerie", - '524P' => "Commerce de détail de bricolage", - '524R' => "Commerce de détail de livres, journaux et papeterie", - '524T' => "Commerce de détail d'optique et de photographie", - '524U' => "Commerce de détail de revêtements de sols et de murs", - '524V' => "Commerce de détail d'horlogerie et de bijouterie", - '524W' => "Commerce de détail d'articles de sport et de loisir", - '524X' => "Commerce de détail de fleurs", - '524Y' => "Commerce de détail de charbons et combustibles", - '524Z' => "Commerces de détail divers en magasin spécialisé", - '525Z' => "Commerce de détail de biens d'occasion", - '526A' => "Vente par correspondance sur catalogue général", - '526B' => "Vente par correspondance spécialisée", - '526D' => "Commerce de détail alimentaire sur éventaires et marchés", - '526E' => "Commerce de détail non alimentaire sur éventaires et marchés", - '526G' => "Vente à domicile", - '526H' => "Vente par automate", - '527A' => "Réparation de chaussures et d'articles en cuir", - '527C' => "Réparation de matériel électronique grand public", - '527D' => "Réparation d'appareils électroménagers", - '527F' => "Réparation de montres, horloges et bijoux", - '527H' => "Réparation d'articles personnels et domestiques n.c.a.", - '551A' => "Hôtels touristiques avec restaurant", - '551C' => "Hôtels touristiques sans restaurant", - '551D' => "Hôtels de préfecture", - '551E' => "Autres hôtels", - '552A' => "Auberges de jeunesse et refuges", - '552C' => "Exploitation de terrains de camping", - '552E' => "Autre hébergement touristique", - '552F' => "Hébergement collectif non touristique", - '553A' => "Restauration de type traditionnel", - '553B' => "Restauration de type rapide", - '554A' => "Cafés tabacs", - '554B' => "Débits de boissons", - '554C' => "Discothèques", - '555A' => "Cantines et restaurants d'entreprises", - '555C' => "Restauration collective sous contrat", - '555D' => "Traiteurs, organisation de réceptions", - '601Z' => "Transports ferroviaires", - '602A' => "Transports urbains de voyageurs", - '602B' => "Transports routiers réguliers de voyageurs", - '602C' => "Téléphériques, remontées mécaniques", - '602E' => "Transport de voyageurs par taxis", - '602G' => "Autres transports routiers de voyageurs", - '602L' => "Transports routiers de marchandises de proximité", - '602M' => "Transports routiers de marchandises interurbains", - '602N' => "Déménagement", - '602P' => "Location de camions avec conducteur", - '603Z' => "Transports par conduites", - '611A' => "Transports maritimes", - '611B' => "Transports côtiers", - '612Z' => "Transports fluviaux", - '621Z' => "Transports aériens réguliers", - '622Z' => "Transports aériens non réguliers", - '623Z' => "Transports spatiaux", - '631A' => "Manutention portuaire", - '631B' => "Manutention non portuaire", - '631D' => "Entreposage frigorifique", - '631E' => "Entreposage non frigorifique", - '632A' => "Gestion d'infrastructures de transports terrestres", - '632C' => "Services portuaires, maritimes et fluviaux", - '632E' => "Services aéroportuaires", - '633Z' => "Agences de voyage", - '634A' => "Messagerie, fret express", - '634B' => "Affrètement", - '634C' => "Organisation des transports internationaux", - '641A' => "Postes nationales", - '641C' => "Autres activités de courrier", - '642A' => "Télécommunications nationales", - '642B' => "Autres activités de télécommunications", - '642C' => "Télécommunications (hors transmissions audiovisuelles)", - '642D' => "Transmission d'émissions de radio et de télévision", - '651A' => "Banque centrale", - '651C' => "Banques", - '651D' => "Banques mutualistes", - '651E' => "Caisses d'épargne", - '651F' => "Intermédiations monétaires n.c.a.", - '652A' => "Crédit-bail", - '652C' => "Distribution de crédit", - '652E' => "Organismes de placement en valeurs mobilières", - '652F' => "Intermédiations financières diverses", - '660A' => "Assurance-vie et capitalisation", - '660C' => "Caisses de retraite", - '660E' => "Assurance dommages", - '660F' => "Réassurance", - '660G' => "Assurance relevant du code de la mutualité", - '671A' => "Administration de marchés financiers", - '671C' => "Gestion de portefeuilles", - '671E' => "Autres auxiliaires financiers", - '672Z' => "Auxiliaires d'assurance", - '701A' => "Promotion immobilière de logements", - '701B' => "Promotion immobilière de bureaux", - '701C' => "Promotion immobilière d'infrastructures", - '701D' => "Supports juridiques de programme", - '701F' => "Marchands de biens immobiliers", - '702A' => "Location de logements", - '702B' => "Location de terrains", - '702C' => "Location d'autres biens immobiliers", - '703A' => "Agences immobilières", - '703C' => "Administration d'immeubles résidentiels", - '703D' => "Administration d'autres biens immobiliers", - '703E' => "Supports juridiques de gestion de patrimoine", - '711A' => "Location de courte durée de véhicules automobiles", - '711B' => "Location de longue durée de véhicules automobiles", - '711Z' => "Location de véhicules automobiles", - '712A' => "Location d'autres matériels de transport terrestre", - '712C' => "Location de matériels de transport par eau", - '712E' => "Location d'appareils de transport aérien", - '713A' => "Location de matériel agricole", - '713C' => "Location de machines et équipements pour la construction", - '713E' => "Location de machines de bureau et de matériel informatique", - '713G' => "Location de machines et équipements divers", - '714A' => "Location de linge", - '714B' => "Location d'autres biens personnels et domestiques", - '721Z' => "Conseil en systèmes informatiques", - '722A' => "Edition de logiciels (non personnalisés)", - '722C' => "Autres activités de réalisation de logiciels", - '722Z' => "Autres activités de réalisation de logiciels", - '723Z' => "Traitement de données", - '724Z' => "Activités de banques de données", - '725Z' => "Entretien et réparation de machines de bureau et de matériel informatique", - '726Z' => "Autres activités rattachées à l'informatique", - '731Z' => "Recherche-développement en sciences physiques et naturelles", - '732Z' => "Recherche-développement en sciences humaines et sociales", - '741A' => "Activités juridiques", - '741C' => "Activités comptables", - '741E' => "Etudes de marché et sondages", - '741G' => "Conseil pour les affaires et la gestion", - '741J' => "Administration d'entreprises", - '742A' => "Activités d'architecture", - '742B' => "Métreurs, géomètres", - '742C' => "Ingénierie, études techniques", - '743A' => "Contrôle technique automobile", - '743B' => "Analyses, essais et inspections techniques", - '744A' => "Gestion de supports de publicité", - '744B' => "Agences, conseil en publicité", - '745A' => "Sélection et mise à disposition de personnel", - '745B' => "Travail temporaire", - '746Z' => "Enquêtes et sécurité", - '747Z' => "Activités de nettoyage", - '748A' => "Studios et autres activités photographiques", - '748B' => "Laboratoires techniques de développement et de tirage", - '748D' => "Conditionnement à façon", - '748F' => "Secrétariat et traduction", - '748G' => "Routage", - '748H' => "Centres d'appel", - '748J' => "Organisation de foires et salons", - '748K' => "Services annexes à la production", - '751A' => "Administration publique générale", - '751C' => "Tutelle des activités sociales", - '751E' => "Tutelle des activités économiques", - '751G' => "Activités de soutien aux administrations", - '752A' => "Affaires étrangères", - '752C' => "Défense", - '752E' => "Justice", - '752G' => "Police", - '752J' => "Protection civile", - '753A' => "Activités générales de sécurité sociale", - '753B' => "Gestion des retraites complémentaires", - '753C' => "Distribution sociale de revenus", - '801Z' => "Enseignement primaire", - '802A' => "Enseignement secondaire général", - '802C' => "Enseignement secondaire technique ou professionnel", - '803Z' => "Enseignement supérieur", - '804A' => "Ecoles de conduite", - '804C' => "Formation des adultes et formation continue", - '804D' => "Autres enseignements", - '851A' => "Activités hospitalières", - '851C' => "Pratique médicale", - '851E' => "Pratique dentaire", - '851G' => "Activités des auxiliaires médicaux", - '851H' => "Soins hors d'un cadre réglementé", - '851J' => "Ambulances", - '851K' => "Laboratoires d'analyses médicales", - '851L' => "Centres de collecte et banques d'organes", - '852Z' => "Activités vétérinaires", - '853A' => "Accueil des enfants handicapés", - '853B' => "Accueil des enfants en difficulté", - '853C' => "Accueil des adultes handicapés", - '853D' => "Accueil des personnes âgées", - '853E' => "Autres hébergements sociaux", - '853G' => "Crèches et garderies d'enfants", - '853H' => "Aide par le travail, ateliers protégés", - '853J' => "Aide à domicile", - '853K' => "Autres formes d'action sociale", - '900A' => "Collecte et traitement des eaux usées", - '900B' => "Enlèvement et traitement des ordures ménagères", - '900C' => "Elimination et traitement des autres déchets", - '900E' => "Traitements des autres déchets solides", - '900G' => "Autres travaux d'assainissement et de voirie", - '911A' => "Organisations patronales et consulaires", - '911C' => "Organisations professionnelles", - '912Z' => "Syndicats de salariés", - '913A' => "Organisations religieuses", - '913C' => "Organisations politiques", - '913E' => "Organisations associatives n.c.a.", - '921A' => "Production de films pour la télévision", - '921B' => "Production de films institutionnels et publicitaires", - '921C' => "Production de films pour le cinéma", - '921D' => "Prestations techniques pour le cinéma et la télévision", - '921F' => "Distribution de films cinématographiques", - '921G' => "Edition et distribution vidéo", - '921J' => "Projection de films cinématographiques", - '922A' => "Activités de radio", - '922B' => "Production de programmes de télévision", - '922C' => "Diffusion de programmes de télévision", - '922D' => "Edition de chaînes généralistes", - '922E' => "Edition de chaînes thématiques", - '922F' => "Distribution de bouquets de programmes de radio et de télévision", - '923A' => "Activités artistiques", - '923B' => "Services annexes aux spectacles", - '923D' => "Gestion de salles de spectacles", - '923F' => "Manèges forains et parcs d'attractions", - '923H' => "Bals et discothèques", - '923J' => "Autres spectacles", - '923K' => "Activités diverses du spectacle", - '924Z' => "Agences de presse", - '925A' => "Gestion des bibliothèques", - '925C' => "Gestion du patrimoine culturel", - '925E' => "Gestion du patrimoine naturel", - '926A' => "Gestion d'installations sportives", - '926C' => "Autres activités sportives", - '927A' => "Jeux de hasard et d'argent", - '927C' => "Autres activités récréatives", - '930A' => "Blanchisserie - teinturerie de gros", - '930B' => "Blanchisserie - teinturerie de détail", - '930D' => "Coiffure", - '930E' => "Soins de beauté", - '930G' => "Soins aux défunts", - '930H' => "Pompes funèbres", - '930K' => "Activités thermales et de thalassothérapie", - '930L' => "Autres soins corporels", - '930N' => "Autres services personnels", - '950Z' => "Activités des ménages en tant qu'employeur de personnel domestique", - '960Z' => "Activités indifférenciées des ménages en tant que producteurs de biens pour usage propre", - '970Z' => "Activités indifférenciées des ménages en tant que producteurs de services pour usage propre", - '990Z' => "Activités extra-territoriales", - '0111Z' => "Culture de céréales (à l'exception du riz), de légumineuses et de graines oléagineuses", - '0112Z' => "Culture du riz", - '0113Z' => "Culture de légumes, de melons, de racines et de tubercules", - '0114Z' => "Culture de la canne à sucre", - '0115Z' => "Culture du tabac", - '0116Z' => "Culture de plantes à fibres", - '0119Z' => "Autres cultures non permanentes", - '0121Z' => "Culture de la vigne", - '0122Z' => "Culture de fruits tropicaux et subtropicaux", - '0123Z' => "Culture d'agrumes", - '0124Z' => "Culture de fruits à pépins et à noyau", - '0125Z' => "Culture d'autres fruits d'arbres ou d'arbustes et de fruits à coque", - '0126Z' => "Culture de fruits oléagineux", - '0127Z' => "Culture de plantes à boissons", - '0128Z' => "Culture de plantes à épices, aromatiques, médicinales et pharmaceutiques", - '0129Z' => "Autres cultures permanentes", - '0130Z' => "Reproduction de plantes", - '0141Z' => "Élevage de vaches laitières", - '0142Z' => "Élevage d'autres bovins et de buffles", - '0143Z' => "Élevage de chevaux et d'autres équidés", - '0144Z' => "Élevage de chameaux et d'autres camélidés", - '0145Z' => "Élevage d'ovins et de caprins", - '0146Z' => "Élevage de porcins", - '0147Z' => "Élevage de volailles", - '0149Z' => "Élevage d'autres animaux", - '0150Z' => "Culture et élevage associés", - '0161Z' => "Activités de soutien aux cultures", - '0162Z' => "Activités de soutien à la production animale", - '0163Z' => "Traitement primaire des récoltes", - '0164Z' => "Traitement des semences", - '0170Z' => "Chasse, piégeage et services annexes", - '0210Z' => "Sylviculture et autres activités forestières", - '0220Z' => "Exploitation forestière", - '0230Z' => "Récolte de produits forestiers non ligneux poussant à l'état sauvage", - '0240Z' => "Services de soutien à l'exploitation forestière", - '0311Z' => "Pêche en mer", - '0312Z' => "Pêche en eau douce", - '0321Z' => "Aquaculture en mer", - '0322Z' => "Aquaculture en eau douce", - '0510Z' => "Extraction de houille", - '0520Z' => "Extraction de lignite", - '0610Z' => "Extraction de pétrole brut", - '0620Z' => "Extraction de gaz naturel", - '0710Z' => "Extraction de minerais de fer", - '0721Z' => "Extraction de minerais d'uranium et de thorium", - '0729Z' => "Extraction d'autres minerais de métaux non ferreux", - '0811Z' => "Extraction de pierres ornementales et de construction, de calcaire industriel, de gypse, de craie et d'ardoise", - '0812Z' => "Exploitation de gravières et sablières, extraction d'argiles et de kaolin", - '0891Z' => "Extraction des minéraux chimiques et d'engrais minéraux", - '0892Z' => "Extraction de tourbe", - '0893Z' => "Production de sel", - '0899Z' => "Autres activités extractives nca", - '0910Z' => "Activités de soutien à l'extraction d'hydrocarbures", - '0990Z' => "Activités de soutien aux autres industries extractives", - '1011Z' => "Transformation et conservation de la viande de boucherie", - '1012Z' => "Transformation et conservation de la viande de volaille", - '1013A' => "Préparation industrielle de produits à base de viande", - '1013B' => "Charcuterie", - '1020Z' => "Transformation et conservation de poisson, de crustacés et de mollusques", - '1031Z' => "Transformation et conservation de pommes de terre", - '1032Z' => "Préparation de jus de fruits et légumes", - '1039A' => "Autre transformation et conservation de légumes", - '1039B' => "Transformation et conservation de fruits", - '1041A' => "Fabrication d'huiles et graisses brutes", - '1041B' => "Fabrication d'huiles et graisses raffinées", - '1042Z' => "Fabrication de margarine et graisses comestibles similaires", - '1051A' => "Fabrication de lait liquide et de produits frais", - '1051B' => "Fabrication de beurre", - '1051C' => "Fabrication de fromage", - '1051D' => "Fabrication d'autres produits laitiers", - '1052Z' => "Fabrication de glaces et sorbets", - '1061A' => "Meunerie", - '1061B' => "Autres activités du travail des grains", - '1062Z' => "Fabrication de produits amylacés", - '1071A' => "Fabrication industrielle de pain et de pâtisserie fraîche", - '1071B' => "Cuisson de produits de boulangerie", - '1071C' => "Boulangerie et boulangerie-pâtisserie", - '1071D' => "Pâtisserie", - '1072Z' => "Fabrication de biscuits, biscottes et pâtisseries de conservation", - '1073Z' => "Fabrication de pâtes alimentaires", - '1081Z' => "Fabrication de sucre", - '1082Z' => "Fabrication de cacao, chocolat et de produits de confiserie", - '1083Z' => "Transformation du thé et du café", - '1084Z' => "Fabrication de condiments et assaisonnements", - '1085Z' => "Fabrication de plats préparés", - '1086Z' => "Fabrication d'aliments homogénéisés et diététiques", - '1089Z' => "Fabrication d'autres produits alimentaires nca", - '1091Z' => "Fabrication d'aliments pour animaux de ferme", - '1092Z' => "Fabrication d'aliments pour animaux de compagnie", - '1101Z' => "Production de boissons alcooliques distillées", - '1102A' => "Fabrication de vins effervescents", - '1102B' => "Vinification", - '1103Z' => "Fabrication de cidre et de vins de fruits", - '1104Z' => "Production d'autres boissons fermentées non distillées", - '1105Z' => "Fabrication de bière", - '1106Z' => "Fabrication de malt", - '1107A' => "Industrie des eaux de table", - '1107B' => "Production de boissons rafraîchissantes", - '1200Z' => "Fabrication de produits à base de tabac", - '1310Z' => "Préparation de fibres textiles et filature", - '1320Z' => "Tissage", - '1330Z' => "Ennoblissement textile", - '1391Z' => "Fabrication d'étoffes à mailles", - '1392Z' => "Fabrication d'articles textiles, sauf habillement", - '1393Z' => "Fabrication de tapis et moquettes", - '1394Z' => "Fabrication de ficelles, cordes et filets", - '1395Z' => "Fabrication de non-tissés, sauf habillement", - '1396Z' => "Fabrication d'autres textiles techniques et industriels", - '1399Z' => "Fabrication d'autres textiles nca", - '1411Z' => "Fabrication de vêtements en cuir", - '1412Z' => "Fabrication de vêtements de travail", - '1413Z' => "Fabrication de vêtements de dessus", - '1414Z' => "Fabrication de vêtements de dessous", - '1419Z' => "Fabrication d'autres vêtements et accessoires", - '1420Z' => "Fabrication d'articles en fourrure", - '1431Z' => "Fabrication d'articles chaussants à mailles", - '1439Z' => "Fabrication d'autres articles à mailles", - '1511Z' => "Apprêt et tannage des cuirs ; préparation et teinture des fourrures", - '1512Z' => "Fabrication d'articles de voyage, de maroquinerie et de sellerie", - '1520Z' => "Fabrication de chaussures", - '1610A' => "Sciage et rabotage du bois, hors imprégnation", - '1610B' => "Imprégnation du bois", - '1621Z' => "Fabrication de placage et de panneaux de bois", - '1622Z' => "Fabrication de parquets assemblés", - '1623Z' => "Fabrication de charpentes et d'autres menuiseries", - '1624Z' => "Fabrication d'emballages en bois", - '1629Z' => "Fabrication d'objets divers en bois ; fabrication d'objets en liège, vannerie et sparterie", - '1711Z' => "Fabrication de pâte à papier", - '1712Z' => "Fabrication de papier et de carton", - '1721A' => "Fabrication de carton ondulé", - '1721B' => "Fabrication de cartonnages", - '1721C' => "Fabrication d'emballages en papier", - '1722Z' => "Fabrication d'articles en papier à usage sanitaire ou domestique", - '1723Z' => "Fabrication d'articles de papeterie", - '1724Z' => "Fabrication de papiers peints", - '1729Z' => "Fabrication d'autres articles en papier ou en carton", - '1811Z' => "Imprimerie de journaux", - '1812Z' => "Autre imprimerie (labeur)", - '1813Z' => "Activités de pré-presse", - '1814Z' => "Reliure et activités connexes", - '1820Z' => "Reproduction d'enregistrements", - '1910Z' => "Cokéfaction", - '1920Z' => "Raffinage du pétrole", - '2011Z' => "Fabrication de gaz industriels", - '2012Z' => "Fabrication de colorants et de pigments", - '2013A' => "Enrichissement et retraitement de matières nucléaires", - '2013B' => "Fabrication d'autres produits chimiques inorganiques de base nca", - '2014Z' => "Fabrication d'autres produits chimiques organiques de base", - '2015Z' => "Fabrication de produits azotés et d'engrais", - '2016Z' => "Fabrication de matières plastiques de base", - '2017Z' => "Fabrication de caoutchouc synthétique", - '2020Z' => "Fabrication de pesticides et d'autres produits agrochimiques", - '2030Z' => "Fabrication de peintures, vernis, encres et mastics", - '2041Z' => "Fabrication de savons, détergents et produits d'entretien", - '2042Z' => "Fabrication de parfums et de produits pour la toilette", - '2051Z' => "Fabrication de produits explosifs", - '2052Z' => "Fabrication de colles", - '2053Z' => "Fabrication d'huiles essentielles", - '2059Z' => "Fabrication d'autres produits chimiques nca", - '2060Z' => "Fabrication de fibres artificielles ou synthétiques", - '2110Z' => "Fabrication de produits pharmaceutiques de base", - '2120Z' => "Fabrication de préparations pharmaceutiques", - '2211Z' => "Fabrication et rechapage de pneumatiques", - '2219Z' => "Fabrication d'autres articles en caoutchouc", - '2221Z' => "Fabrication de plaques, feuilles, tubes et profilés en matières plastiques", - '2222Z' => "Fabrication d'emballages en matières plastiques", - '2223Z' => "Fabrication d'éléments en matières plastiques pour la construction", - '2229A' => "Fabrication de pièces techniques à base de matières plastiques", - '2229B' => "Fabrication de produits de consommation courante en matières plastiques", - '2311Z' => "Fabrication de verre plat", - '2312Z' => "Façonnage et transformation du verre plat", - '2313Z' => "Fabrication de verre creux", - '2314Z' => "Fabrication de fibres de verre", - '2319Z' => "Fabrication et façonnage d'autres articles en verre, y compris verre technique", - '2320Z' => "Fabrication de produits réfractaires", - '2331Z' => "Fabrication de carreaux en céramique", - '2332Z' => "Fabrication de briques, tuiles et produits de construction, en terre cuite", - '2341Z' => "Fabrication d'articles céramiques à usage domestique ou ornemental", - '2342Z' => "Fabrication d'appareils sanitaires en céramique", - '2343Z' => "Fabrication d'isolateurs et pièces isolantes en céramique", - '2344Z' => "Fabrication d'autres produits céramiques à usage technique", - '2349Z' => "Fabrication d'autres produits céramiques", - '2351Z' => "Fabrication de ciment", - '2352Z' => "Fabrication de chaux et plâtre", - '2361Z' => "Fabrication d'éléments en béton pour la construction", - '2362Z' => "Fabrication d'éléments en plâtre pour la construction", - '2363Z' => "Fabrication de béton prêt à l'emploi", - '2364Z' => "Fabrication de mortiers et bétons secs", - '2365Z' => "Fabrication d'ouvrages en fibre-ciment", - '2369Z' => "Fabrication d'autres ouvrages en béton, en ciment ou en plâtre", - '2370Z' => "Taille, façonnage et finissage de pierres", - '2391Z' => "Fabrication de produits abrasifs", - '2399Z' => "Fabrication d'autres produits minéraux non métalliques nca", - '2410Z' => "Sidérurgie", - '2420Z' => "Fabrication de tubes, tuyaux, profilés creux et accessoires correspondants en acier", - '2431Z' => "étirage à froid de barres", - '2432Z' => "Laminage à froid de feuillards", - '2433Z' => "Profilage à froid par formage ou pliage", - '2434Z' => "Tréfilage à froid", - '2441Z' => "Production de métaux précieux", - '2442Z' => "Métallurgie de l'aluminium", - '2443Z' => "Métallurgie du plomb, du zinc ou de l'étain", - '2444Z' => "Métallurgie du cuivre", - '2445Z' => "Métallurgie des autres métaux non ferreux", - '2446Z' => "élaboration et transformation de matières nucléaires", - '2451Z' => "Fonderie de fonte", - '2452Z' => "Fonderie d'acier", - '2453Z' => "Fonderie de métaux légers", - '2454Z' => "Fonderie d'autres métaux non ferreux", - '2511Z' => "Fabrication de structures métalliques et de parties de structures", - '2512Z' => "Fabrication de portes et fenêtres en métal", - '2521Z' => "Fabrication de radiateurs et de chaudières pour le chauffage central", - '2529Z' => "Fabrication d'autres réservoirs, citernes et conteneurs métalliques", - '2530Z' => "Fabrication de générateurs de vapeur, à l'exception des chaudières pour le chauffage central", - '2540Z' => "Fabrication d'armes et de munitions", - '2550A' => "Forge, estampage, matriçage ; métallurgie des poudres", - '2550B' => "Découpage, emboutissage", - '2561Z' => "Traitement et revêtement des métaux", - '2562A' => "Décolletage", - '2562B' => "Mécanique industrielle", - '2571Z' => "Fabrication de coutellerie", - '2572Z' => "Fabrication de serrures et de ferrures", - '2573A' => "Fabrication de moules et modèles", - '2573B' => "Fabrication d'autres outillages", - '2591Z' => "Fabrication de fûts et emballages métalliques similaires", - '2592Z' => "Fabrication d'emballages métalliques légers", - '2593Z' => "Fabrication d'articles en fils métalliques, de chaînes et de ressorts", - '2594Z' => "Fabrication de vis et de boulons", - '2599A' => "Fabrication d'articles métalliques ménagers", - '2599B' => "Fabrication d'autres articles métalliques", - '2611Z' => "Fabrication de composants électroniques", - '2612Z' => "Fabrication de cartes électroniques assemblées", - '2620Z' => "Fabrication d'ordinateurs et d'équipements périphériques", - '2630Z' => "Fabrication d'équipements de communication", - '2640Z' => "Fabrication de produits électroniques grand public", - '2651A' => "Fabrication d'équipements d'aide à la navigation", - '2651B' => "Fabrication d'instrumentation scientifique et technique", - '2652Z' => "Horlogerie", - '2660Z' => "Fabrication d'équipements d'irradiation médicale, d'équipements électromédicaux et électrothérapeutiques", - '2670Z' => "Fabrication de matériels optique et photographique", - '2680Z' => "Fabrication de supports magnétiques et optiques", - '2711Z' => "Fabrication de moteurs, génératrices et transformateurs électriques", - '2712Z' => "Fabrication de matériel de distribution et de commande électrique", - '2720Z' => "Fabrication de piles et d'accumulateurs électriques", - '2731Z' => "Fabrication de câbles de fibres optiques", - '2732Z' => "Fabrication d'autres fils et câbles électroniques ou électriques", - '2733Z' => "Fabrication de matériel d'installation électrique", - '2740Z' => "Fabrication d'appareils d'éclairage électrique", - '2751Z' => "Fabrication d'appareils électroménagers", - '2752Z' => "Fabrication d'appareils ménagers non électriques", - '2790Z' => "Fabrication d'autres matériels électriques", - '2811Z' => "Fabrication de moteurs et turbines, à l'exception des moteurs d'avions et de véhicules", - '2812Z' => "Fabrication d'équipements hydrauliques et pneumatiques", - '2813Z' => "Fabrication d'autres pompes et compresseurs", - '2814Z' => "Fabrication d'autres articles de robinetterie", - '2815Z' => "Fabrication d'engrenages et d'organes mécaniques de transmission", - '2821Z' => "Fabrication de fours et brûleurs", - '2822Z' => "Fabrication de matériel de levage et de manutention", - '2823Z' => "Fabrication de machines et d'équipements de bureau (à l'exception des ordinateurs et équipements périphériques)", - '2824Z' => "Fabrication d'outillage portatif à moteur incorporé", - '2825Z' => "Fabrication d'équipements aérauliques et frigorifiques industriels", - '2829A' => "Fabrication d'équipements d'emballage, de conditionnement et de pesage", - '2829B' => "Fabrication d'autres machines d'usage général", - '2830Z' => "Fabrication de machines agricoles et forestières", - '2841Z' => "Fabrication de machines-outils pour le travail des métaux", - '2849Z' => "Fabrication d'autres machines-outils", - '2891Z' => "Fabrication de machines pour la métallurgie", - '2892Z' => "Fabrication de machines pour l'extraction ou la construction", - '2893Z' => "Fabrication de machines pour l'industrie agro-alimentaire", - '2894Z' => "Fabrication de machines pour les industries textiles", - '2895Z' => "Fabrication de machines pour les industries du papier et du carton", - '2896Z' => "Fabrication de machines pour le travail du caoutchouc ou des plastiques", - '2899A' => "Fabrication de machines d'imprimerie", - '2899B' => "Fabrication d'autres machines spécialisées", - '2910Z' => "Construction de véhicules automobiles", - '2920Z' => "Fabrication de carrosseries et remorques", - '2931Z' => "Fabrication d'équipements électriques et électroniques automobiles", - '2932Z' => "Fabrication d'autres équipements automobiles", - '3011Z' => "Construction de navires et de structures flottantes", - '3012Z' => "Construction de bateaux de plaisance", - '3020Z' => "Construction de locomotives et d'autre matériel ferroviaire roulant", - '3030Z' => "Construction aéronautique et spatiale", - '3040Z' => "Construction de véhicules militaires de combat", - '3091Z' => "Fabrication de motocycles", - '3092Z' => "Fabrication de bicyclettes et de véhicules pour invalides", - '3099Z' => "Fabrication d'autres équipements de transport nca", - '3101Z' => "Fabrication de meubles de bureau et de magasin", - '3102Z' => "Fabrication de meubles de cuisine", - '3103Z' => "Fabrication de matelas", - '3109A' => "Fabrication de sièges d'ameublement d'intérieur", - '3109B' => "Fabrication d'autres meubles et industries connexes de l'ameublement", - '3211Z' => "Frappe de monnaie", - '3212Z' => "Fabrication d'articles de joaillerie et bijouterie", - '3213Z' => "Fabrication d'articles de bijouterie fantaisie et articles similaires", - '3220Z' => "Fabrication d'instruments de musique", - '3230Z' => "Fabrication d'articles de sport", - '3240Z' => "Fabrication de jeux et jouets", - '3250A' => "Fabrication de matériel médico-chirurgical et dentaire", - '3250B' => "Fabrication de lunettes", - '3291Z' => "Fabrication d'articles de brosserie", - '3299Z' => "Autres activités manufacturières nca", - '3311Z' => "Réparation d'ouvrages en métaux", - '3312Z' => "Réparation de machines et équipements mécaniques", - '3313Z' => "Réparation de matériels électroniques et optiques", - '3314Z' => "Réparation d'équipements électriques", - '3315Z' => "Réparation et maintenance navale", - '3316Z' => "Réparation et maintenance d'aéronefs et d'engins spatiaux", - '3317Z' => "Réparation et maintenance d'autres équipements de transport", - '3319Z' => "Réparation d'autres équipements", - '3320A' => "Installation de structures métalliques, chaudronnées et de tuyauterie", - '3320B' => "Installation de machines et équipements mécaniques", - '3320C' => "Conception d'ensemble et assemblage sur site industriel d'équipements de contrôle des processus industriels", - '3320D' => "Installation d'équipements électriques, de matériels électroniques et optiques ou d'autres matériels", - '3511Z' => "Production d'électricité", - '3512Z' => "Transport d'électricité", - '3513Z' => "Distribution d'électricité", - '3514Z' => "Commerce d'électricité", - '3521Z' => "Production de combustibles gazeux", - '3522Z' => "Distribution de combustibles gazeux par conduites", - '3523Z' => "Commerce de combustibles gazeux par conduites", - '3530Z' => "Production et distribution de vapeur et d'air conditionné", - '3600Z' => "Captage, traitement et distribution d'eau", - '3700Z' => "Collecte et traitement des eaux usées", - '3811Z' => "Collecte des déchets non dangereux", - '3812Z' => "Collecte des déchets dangereux", - '3821Z' => "Traitement et élimination des déchets non dangereux", - '3822Z' => "Traitement et élimination des déchets dangereux", - '3831Z' => "Démantèlement d'épaves", - '3832Z' => "Récupération de déchets triés", - '3900Z' => "Dépollution et autres services de gestion des déchets", - '4110A' => "Promotion immobilière de logements", - '4110B' => "Promotion immobilière de bureaux", - '4110C' => "Promotion immobilière d'autres bâtiments", - '4110D' => "Supports juridiques de programmes", - '4120A' => "Construction de maisons individuelles", - '4120B' => "Construction d'autres bâtiments", - '4211Z' => "Construction de routes et autoroutes", - '4212Z' => "Construction de voies ferrées de surface et souterraines", - '4213A' => "Construction d'ouvrages d'art", - '4213B' => "Construction et entretien de tunnels", - '4221Z' => "Construction de réseaux pour fluides", - '4222Z' => "Construction de réseaux électriques et de télécommunications", - '4291Z' => "Construction d'ouvrages maritimes et fluviaux", - '4299Z' => "Construction d'autres ouvrages de génie civil nca", - '4311Z' => "Travaux de démolition", - '4312A' => "Travaux de terrassement courants et travaux préparatoires", - '4312B' => "Travaux de terrassement spécialisés ou de grande masse", - '4313Z' => "Forages et sondages", - '4321A' => "Travaux d'installation électrique dans tous locaux", - '4321B' => "Travaux d'installation électrique sur la voie publique", - '4322A' => "Travaux d'installation d'eau et de gaz en tous locaux", - '4322B' => "Travaux d'installation d'équipements thermiques et de climatisation", - '4329A' => "Travaux d'isolation", - '4329B' => "Autres travaux d'installation nca", - '4331Z' => "Travaux de plâtrerie", - '4332A' => "Travaux de menuiserie bois et pvc", - '4332B' => "Travaux de menuiserie métallique et serrurerie", - '4332C' => "Agencement de lieux de vente", - '4333Z' => "Travaux de revêtement des sols et des murs", - '4334Z' => "Travaux de peinture et vitrerie", - '4339Z' => "Autres travaux de finition", - '4391A' => "Travaux de charpente", - '4391B' => "Travaux de couverture par éléments", - '4399A' => "Travaux d'étanchéification", - '4399B' => "Travaux de montage de structures métalliques", - '4399C' => "Travaux de maçonnerie générale et gros œuvre de bâtiment", - '4399D' => "Autres travaux spécialisés de construction", - '4399E' => "Location avec opérateur de matériel de construction", - '4511Z' => "Commerce de voitures et de véhicules automobiles légers", - '4519Z' => "Commerce d'autres véhicules automobiles", - '4520A' => "Entretien et réparation de véhicules automobiles légers", - '4520B' => "Entretien et réparation d'autres véhicules automobiles", - '4531Z' => "Commerce de gros d'équipements automobiles", - '4532Z' => "Commerce de détail d'équipements automobiles", - '4540Z' => "Commerce et réparation de motocycles", - '4611Z' => "Intermédiaires du commerce en matières premières agricoles, animaux vivants, matières premières textiles et produits semi-finis", - '4612A' => "Centrales d'achat de carburant", - '4612B' => "Autres intermédiaires du commerce en combustibles, métaux, minéraux et produits chimiques", - '4613Z' => "Intermédiaires du commerce en bois et matériaux de construction", - '4614Z' => "Intermédiaires du commerce en machines, équipements industriels, navires et avions", - '4615Z' => "Intermédiaires du commerce en meubles, articles de ménage et quincaillerie", - '4616Z' => "Intermédiaires du commerce en textiles, habillement, fourrures, chaussures et articles en cuir", - '4617A' => "Centrales d'achat alimentaires", - '4617B' => "Autres intermédiaires du commerce en denrées, boissons et tabac", - '4618Z' => "Intermédiaires spécialisés dans le commerce d'autres produits spécifiques", - '4619A' => "Centrales d'achat non alimentaires", - '4619B' => "Autres intermédiaires du commerce en produits divers", - '4621Z' => "Commerce de gros (commerce interentreprises) de céréales, de tabac non manufacturé, de semences et d'aliments pour le bétail", - '4622Z' => "Commerce de gros (commerce interentreprises) de fleurs et plantes", - '4623Z' => "Commerce de gros (commerce interentreprises) d'animaux vivants", - '4624Z' => "Commerce de gros (commerce interentreprises) de cuirs et peaux", - '4631Z' => "Commerce de gros (commerce interentreprises) de fruits et légumes", - '4632A' => "Commerce de gros (commerce interentreprises) de viandes de boucherie", - '4632B' => "Commerce de gros (commerce interentreprises) de produits à base de viande", - '4632C' => "Commerce de gros (commerce interentreprises) de volailles et gibier", - '4633Z' => "Commerce de gros (commerce interentreprises) de produits laitiers, œufs, huiles et matières grasses comestibles", - '4634Z' => "Commerce de gros (commerce interentreprises) de boissons", - '4635Z' => "Commerce de gros (commerce interentreprises) de produits à base de tabac", - '4636Z' => "Commerce de gros (commerce interentreprises) de sucre, chocolat et confiserie", - '4637Z' => "Commerce de gros (commerce interentreprises) de café, thé, cacao et épices", - '4638A' => "Commerce de gros (commerce interentreprises) de poissons, crustacés et mollusques", - '4638B' => "Commerce de gros (commerce interentreprises) alimentaire spécialisé divers", - '4639A' => "Commerce de gros (commerce interentreprises) de produits surgelés", - '4639B' => "Commerce de gros (commerce interentreprises) alimentaire non spécialisé", - '4641Z' => "Commerce de gros (commerce interentreprises) de textiles", - '4642Z' => "Commerce de gros (commerce interentreprises) d'habillement et de chaussures", - '4643Z' => "Commerce de gros (commerce interentreprises) d'appareils électroménagers", - '4644Z' => "Commerce de gros (commerce interentreprises) de vaisselle, verrerie et produits d'entretien", - '4645Z' => "Commerce de gros (commerce interentreprises) de parfumerie et de produits de beauté", - '4646Z' => "Commerce de gros (commerce interentreprises) de produits pharmaceutiques", - '4647Z' => "Commerce de gros (commerce interentreprises) de meubles, de tapis et d'appareils d'éclairage", - '4648Z' => "Commerce de gros (commerce interentreprises) d'articles d'horlogerie et de bijouterie", - '4649Z' => "Commerce de gros (commerce interentreprises) d'autres biens domestiques", - '4651Z' => "Commerce de gros (commerce interentreprises) d'ordinateurs, d'équipements informatiques périphériques et de logiciels", - '4652Z' => "Commerce de gros (commerce interentreprises) de composants et d'équipements électroniques et de télécommunication", - '4661Z' => "Commerce de gros (commerce interentreprises) de matériel agricole", - '4662Z' => "Commerce de gros (commerce interentreprises) de machines-outils", - '4663Z' => "Commerce de gros (commerce interentreprises) de machines pour l'extraction, la construction et le génie civil", - '4664Z' => "Commerce de gros (commerce interentreprises) de machines pour l'industrie textile et l'habillement", - '4665Z' => "Commerce de gros (commerce interentreprises) de mobilier de bureau", - '4666Z' => "Commerce de gros (commerce interentreprises) d'autres machines et équipements de bureau", - '4669A' => "Commerce de gros (commerce interentreprises) de matériel électrique", - '4669B' => "Commerce de gros (commerce interentreprises) de fournitures et équipements industriels divers", - '4669C' => "Commerce de gros (commerce interentreprises) de fournitures et équipements divers pour le commerce et les services", - '4671Z' => "Commerce de gros (commerce interentreprises) de combustibles et de produits annexes", - '4672Z' => "Commerce de gros (commerce interentreprises) de minerais et métaux", - '4673A' => "Commerce de gros (commerce interentreprises) de bois et de matériaux de construction", - '4673B' => "Commerce de gros (commerce interentreprises) d'appareils sanitaires et de produits de décoration", - '4674A' => "Commerce de gros (commerce interentreprises) de quincaillerie", - '4674B' => "Commerce de gros (commerce interentreprises) de fournitures pour la plomberie et le chauffage", - '4675Z' => "Commerce de gros (commerce interentreprises) de produits chimiques", - '4676Z' => "Commerce de gros (commerce interentreprises) d'autres produits intermédiaires", - '4677Z' => "Commerce de gros (commerce interentreprises) de déchets et débris", - '4690Z' => "Commerce de gros (commerce interentreprises) non spécialisé", - '4711A' => "Commerce de détail de produits surgelés", - '4711B' => "Commerce d'alimentation générale", - '4711C' => "Supérettes", - '4711D' => "Supermarchés", - '4711E' => "Magasins multi-commerces", - '4711F' => "Hypermarchés", - '4719A' => "Grands magasins", - '4719B' => "Autres commerces de détail en magasin non spécialisé", - '4721Z' => "Commerce de détail de fruits et légumes en magasin spécialisé", - '4722Z' => "Commerce de détail de viandes et de produits à base de viande en magasin spécialisé", - '4723Z' => "Commerce de détail de poissons, crustacés et mollusques en magasin spécialisé", - '4724Z' => "Commerce de détail de pain, pâtisserie et confiserie en magasin spécialisé", - '4725Z' => "Commerce de détail de boissons en magasin spécialisé", - '4726Z' => "Commerce de détail de produits à base de tabac en magasin spécialisé", - '4729Z' => "Autres commerces de détail alimentaires en magasin spécialisé", - '4730Z' => "Commerce de détail de carburants en magasin spécialisé", - '4741Z' => "Commerce de détail d'ordinateurs, d'unités périphériques et de logiciels en magasin spécialisé", - '4742Z' => "Commerce de détail de matériels de télécommunication en magasin spécialisé", - '4743Z' => "Commerce de détail de matériels audio et vidéo en magasin spécialisé", - '4751Z' => "Commerce de détail de textiles en magasin spécialisé", - '4752A' => "Commerce de détail de quincaillerie, peintures et verres en petites surfaces (moins de 400 m²)", - '4752B' => "Commerce de détail de quincaillerie, peintures et verres en grandes surfaces (400 m² et plus)", - '4753Z' => "Commerce de détail de tapis, moquettes et revêtements de murs et de sols en magasin spécialisé", - '4754Z' => "Commerce de détail d'appareils électroménagers en magasin spécialisé", - '4759A' => "Commerce de détail de meubles", - '4759B' => "Commerce de détail d'autres équipements du foyer", - '4761Z' => "Commerce de détail de livres en magasin spécialisé", - '4762Z' => "Commerce de détail de journaux et papeterie en magasin spécialisé", - '4763Z' => "Commerce de détail d'enregistrements musicaux et vidéo en magasin spécialisé", - '4764Z' => "Commerce de détail d'articles de sport en magasin spécialisé", - '4765Z' => "Commerce de détail de jeux et jouets en magasin spécialisé", - '4771Z' => "Commerce de détail d'habillement en magasin spécialisé", - '4772A' => "Commerce de détail de la chaussure", - '4772B' => "Commerce de détail de maroquinerie et d'articles de voyage", - '4773Z' => "Commerce de détail de produits pharmaceutiques en magasin spécialisé", - '4774Z' => "Commerce de détail d'articles médicaux et orthopédiques en magasin spécialisé", - '4775Z' => "Commerce de détail de parfumerie et de produits de beauté en magasin spécialisé", - '4776Z' => "Commerce de détail de fleurs, plantes, graines, engrais, animaux de compagnie et aliments pour ces animaux en magasin spécialisé", - '4777Z' => "Commerce de détail d'articles d'horlogerie et de bijouterie en magasin spécialisé", - '4778A' => "Commerces de détail d'optique", - '4778B' => "Commerces de détail de charbons et combustibles", - '4778C' => "Autres commerces de détail spécialisés divers", - '4779Z' => "Commerce de détail de biens d'occasion en magasin", - '4781Z' => "Commerce de détail alimentaire sur éventaires et marchés", - '4782Z' => "Commerce de détail de textiles, d'habillement et de chaussures sur éventaires et marchés", - '4789Z' => "Autres commerces de détail sur éventaires et marchés", - '4791A' => "Vente à distance sur catalogue général", - '4791B' => "Vente à distance sur catalogue spécialisé", - '4799A' => "Vente à domicile", - '4799B' => "Vente par automates et autres commerces de détail hors magasin, éventaires ou marchés nca", - '4910Z' => "Transport ferroviaire interurbain de voyageurs", - '4920Z' => "Transports ferroviaires de fret", - '4931Z' => "Transports urbains et suburbains de voyageurs", - '4932Z' => "Transports de voyageurs par taxis", - '4939A' => "Transports routiers réguliers de voyageurs", - '4939B' => "Autres transports routiers de voyageurs", - '4939C' => "Téléphériques et remontées mécaniques", - '4941A' => "Transports routiers de fret interurbains", - '4941B' => "Transports routiers de fret de proximité", - '4941C' => "Location de camions avec chauffeur", - '4942Z' => "Services de déménagement", - '4950Z' => "Transports par conduites", - '5010Z' => "Transports maritimes et côtiers de passagers", - '5020Z' => "Transports maritimes et côtiers de fret", - '5030Z' => "Transports fluviaux de passagers", - '5040Z' => "Transports fluviaux de fret", - '5110Z' => "Transports aériens de passagers", - '5121Z' => "Transports aériens de fret", - '5122Z' => "Transports spatiaux", - '5210A' => "Entreposage et stockage frigorifique", - '5210B' => "Entreposage et stockage non frigorifique", - '5221Z' => "Services auxiliaires des transports terrestres", - '5222Z' => "Services auxiliaires des transports par eau", - '5223Z' => "Services auxiliaires des transports aériens", - '5224A' => "Manutention portuaire", - '5224B' => "Manutention non portuaire", - '5229A' => "Messagerie, fret express", - '5229B' => "Affrètement et organisation des transports", - '5310Z' => "Activités de poste dans le cadre d'une obligation de service universel", - '5320Z' => "Autres activités de poste et de courrier", - '5510Z' => "Hôtels et hébergement similaire", - '5520Z' => "Hébergement touristique et autre hébergement de courte durée", - '5530Z' => "Terrains de camping et parcs pour caravanes ou véhicules de loisirs", - '5590Z' => "Autres hébergements", - '5610A' => "Restauration traditionnelle", - '5610B' => "Cafétérias et autres libres-services", - '5610C' => "Restauration de type rapide", - '5621Z' => "Services des traiteurs", - '5629A' => "Restauration collective sous contrat", - '5629B' => "Autres services de restauration nca", - '5630Z' => "Débits de boissons", - '5811Z' => "Édition de livres", - '5812Z' => "Édition de répertoires et de fichiers d'adresses", - '5813Z' => "Édition de journaux", - '5814Z' => "Édition de revues et périodiques", - '5819Z' => "Autres activités d'édition", - '5821Z' => "Édition de jeux électroniques", - '5829A' => "Édition de logiciels système et de réseau", - '5829B' => "Edition de logiciels outils de développement et de langages", - '5829C' => "Edition de logiciels applicatifs", - '5911A' => "Production de films et de programmes pour la télévision", - '5911B' => "Production de films institutionnels et publicitaires", - '5911C' => "Production de films pour le cinéma", - '5912Z' => "Post-production de films cinématographiques, de vidéo et de programmes de télévision", - '5913A' => "Distribution de films cinématographiques", - '5913B' => "Edition et distribution vidéo", - '5914Z' => "Projection de films cinématographiques", - '5920Z' => "Enregistrement sonore et édition musicale", - '6010Z' => "Édition et diffusion de programmes radio", - '6020A' => "Edition de chaînes généralistes", - '6020B' => "Edition de chaînes thématiques", - '6110Z' => "Télécommunications filaires", - '6120Z' => "Télécommunications sans fil", - '6130Z' => "Télécommunications par satellite", - '6190Z' => "Autres activités de télécommunication", - '6201Z' => "Programmation informatique", - '6202A' => "Conseil en systèmes et logiciels informatiques", - '6202B' => "Tierce maintenance de systèmes et d'applications informatiques", - '6203Z' => "Gestion d'installations informatiques", - '6209Z' => "Autres activités informatiques", - '6311Z' => "Traitement de données, hébergement et activités connexes", - '6312Z' => "Portails internet", - '6391Z' => "Activités des agences de presse", - '6399Z' => "Autres services d'information nca", - '6411Z' => "Activités de banque centrale", - '6419Z' => "Autres intermédiations monétaires", - '6420Z' => "Activités des sociétés holding", - '6430Z' => "Fonds de placement et entités financières similaires", - '6491Z' => "Crédit-bail", - '6492Z' => "Autre distribution de crédit", - '6499Z' => "Autres activités des services financiers, hors assurance et caisses de retraite, nca", - '6511Z' => "Assurance vie", - '6512Z' => "Autres assurances", - '6520Z' => "Réassurance", - '6530Z' => "Caisses de retraite", - '6611Z' => "Administration de marchés financiers", - '6612Z' => "Courtage de valeurs mobilières et de marchandises", - '6619A' => "Supports juridiques de gestion de patrimoine mobilier", - '6619B' => "Autres activités auxiliaires de services financiers, hors assurance et caisses de retraite, nca", - '6621Z' => "évaluation des risques et dommages", - '6622Z' => "Activités des agents et courtiers d'assurances", - '6629Z' => "Autres activités auxiliaires d'assurance et de caisses de retraite", - '6630Z' => "Gestion de fonds", - '6810Z' => "Activités des marchands de biens immobiliers", - '6820A' => "Location de logements", - '6820B' => "Location de terrains et d'autres biens immobiliers", - '6831Z' => "Agences immobilières", - '6832A' => "Administration d'immeubles et autres biens immobiliers", - '6832B' => "Supports juridiques de gestion de patrimoine immobilier", - '6910Z' => "Activités juridiques", - '6920Z' => "Activités comptables", - '7010Z' => "Activités des sièges sociaux", - '7021Z' => "Conseil en relations publiques et communication", - '7022Z' => "Conseil pour les affaires et autres conseils de gestion", - '7111Z' => "Activités d'architecture", - '7112A' => "Activité des géomètres", - '7112B' => "Ingénierie, études techniques", - '7120A' => "Contrôle technique automobile", - '7120B' => "Analyses, essais et inspections techniques", - '7211Z' => "Recherche-développement en biotechnologie", - '7219Z' => "Recherche-développement en autres sciences physiques et naturelles", - '7220Z' => "Recherche-développement en sciences humaines et sociales", - '7311Z' => "Activités des agences de publicité", - '7312Z' => "Régie publicitaire de médias", - '7320Z' => "études de marché et sondages", - '7410Z' => "Activités spécialisées de design", - '7420Z' => "Activités photographiques", - '7430Z' => "Traduction et interprétation", - '7490A' => "Activité des économistes de la construction", - '7490B' => "Activités spécialisées, scientifiques et techniques diverses", - '7500Z' => "Activités vétérinaires", - '7711A' => "Location de courte durée de voitures et de véhicules automobiles légers", - '7711B' => "Location de longue durée de voitures et de véhicules automobiles légers", - '7712Z' => "Location et location-bail de camions", - '7721Z' => "Location et location-bail d'articles de loisirs et de sport", - '7722Z' => "Location de vidéocassettes et disques vidéo", - '7729Z' => "Location et location-bail d'autres biens personnels et domestiques", - '7731Z' => "Location et location-bail de machines et équipements agricoles", - '7732Z' => "Location et location-bail de machines et équipements pour la construction", - '7733Z' => "Location et location-bail de machines de bureau et de matériel informatique", - '7734Z' => "Location et location-bail de matériels de transport par eau", - '7735Z' => "Location et location-bail de matériels de transport aérien", - '7739Z' => "Location et location-bail d'autres machines, équipements et biens matériels nca", - '7740Z' => "Location-bail de propriété intellectuelle et de produits similaires, à l'exception des œuvres soumises à copyright", - '7810Z' => "Activités des agences de placement de main-d'œuvre", - '7820Z' => "Activités des agences de travail temporaire", - '7830Z' => "Autre mise à disposition de ressources humaines", - '7911Z' => "Activités des agences de voyage", - '7912Z' => "Activités des voyagistes", - '7990Z' => "Autres services de réservation et activités connexes", - '8010Z' => "Activités de sécurité privée", - '8020Z' => "Activités liées aux systèmes de sécurité", - '8030Z' => "Activités d'enquête", - '8110Z' => "Activités combinées de soutien lié aux bâtiments", - '8121Z' => "Nettoyage courant des bâtiments", - '8122Z' => "Autres activités de nettoyage des bâtiments et nettoyage industriel", - '8129A' => "Désinfection, désinsectisation, dératisation", - '8129B' => "Autres activités de nettoyage nca", - '8130Z' => "Services d'aménagement paysager", - '8211Z' => "Services administratifs combinés de bureau", - '8219Z' => "Photocopie, préparation de documents et autres activités spécialisées de soutien de bureau", - '8220Z' => "Activités de centres d'appels", - '8230Z' => "Organisation de foires, salons professionnels et congrès", - '8291Z' => "Activités des agences de recouvrement de factures et des sociétés d'information financière sur la clientèle", - '8292Z' => "Activités de conditionnement", - '8299Z' => "Autres activités de soutien aux entreprises nca", - '8411Z' => "Administration publique générale", - '8412Z' => "Administration publique (tutelle) de la santé, de la formation, de la culture et des services sociaux, autre que sécurité sociale", - '8413Z' => "Administration publique (tutelle) des activités économiques", - '8421Z' => "Affaires étrangères", - '8422Z' => "Défense", - '8423Z' => "Justice", - '8424Z' => "Activités d'ordre public et de sécurité", - '8425Z' => "Services du feu et de secours", - '8430A' => "Activités générales de sécurité sociale", - '8430B' => "Gestion des retraites complémentaires", - '8430C' => "Distribution sociale de revenus", - '8510Z' => "Enseignement pré-primaire", - '8520Z' => "Enseignement primaire", - '8531Z' => "Enseignement secondaire général", - '8532Z' => "Enseignement secondaire technique ou professionnel", - '8541Z' => "Enseignement post-secondaire non supérieur", - '8542Z' => "Enseignement supérieur", - '8551Z' => "Enseignement de disciplines sportives et d'activités de loisirs", - '8552Z' => "Enseignement culturel", - '8553Z' => "Enseignement de la conduite", - '8559A' => "Formation continue d'adultes", - '8559B' => "Autres enseignements", - '8560Z' => "Activités de soutien à l'enseignement", - '8610Z' => "Activités hospitalières", - '8621Z' => "Activité des médecins généralistes", - '8622A' => "Activités de radiodiagnostic et de radiothérapie", - '8622B' => "Activités chirurgicales", - '8622C' => "Autres activités des médecins spécialistes", - '8623Z' => "Pratique dentaire", - '8690A' => "Ambulances", - '8690B' => "Laboratoires d'analyses médicales", - '8690C' => "Centres de collecte et banques d'organes", - '8690D' => "Activités des infirmiers et des sages-femmes", - '8690E' => "Activités des professionnels de la rééducation, de l'appareillage et des pédicures-podologues", - '8690F' => "Activités de santé humaine non classées ailleurs", - '8710A' => "Hébergement médicalisé pour personnes âgées", - '8710B' => "Hébergement médicalisé pour enfants handicapés", - '8710C' => "Hébergement médicalisé pour adultes handicapés et autre hébergement médicalisé", - '8720A' => "Hébergement social pour handicapés mentaux et malades mentaux", - '8720B' => "Hébergement social pour toxicomanes", - '8730A' => "Hébergement social pour personnes âgées", - '8730B' => "Hébergement social pour handicapés physiques", - '8790A' => "Hébergement social pour enfants en difficultés", - '8790B' => "Hébergement social pour adultes et familles en difficultés et autre hébergement social", - '8810A' => "Aide à domicile", - '8810B' => "Accueil ou accompagnement sans hébergement d'adultes handicapés ou de personnes âgées", - '8810C' => "Aide par le travail", - '8891A' => "Accueil de jeunes enfants", - '8891B' => "Accueil ou accompagnement sans hébergement d'enfants handicapés", - '8899A' => "Autre accueil ou accompagnement sans hébergement d'enfants et d'adolescents", - '8899B' => "Action sociale sans hébergement nca", - '9001Z' => "Arts du spectacle vivant", - '9002Z' => "Activités de soutien au spectacle vivant", - '9003A' => "Création artistique relevant des arts plastiques", - '9003B' => "Autre création artistique", - '9004Z' => "Gestion de salles de spectacles", - '9101Z' => "Gestion des bibliothèques et des archives", - '9102Z' => "Gestion des musées", - '9103Z' => "Gestion des sites et monuments historiques et des attractions touristiques similaires", - '9104Z' => "Gestion des jardins botaniques et zoologiques et des réserves naturelles", - '9200Z' => "Organisation de jeux de hasard et d'argent", - '9311Z' => "Gestion d'installations sportives", - '9312Z' => "Activités de clubs de sports", - '9313Z' => "Activités des centres de culture physique", - '9319Z' => "Autres activités liées au sport", - '9321Z' => "Activités des parcs d'attractions et parcs à thèmes", - '9329Z' => "Autres activités récréatives et de loisirs", - '9411Z' => "Activités des organisations patronales et consulaires", - '9412Z' => "Activités des organisations professionnelles", - '9420Z' => "Activités des syndicats de salariés", - '9491Z' => "Activités des organisations religieuses", - '9492Z' => "Activités des organisations politiques", - '9499Z' => "Autres organisations fonctionnant par adhésion volontaire", - '9511Z' => "Réparation d'ordinateurs et d'équipements périphériques", - '9512Z' => "Réparation d'équipements de communication", - '9521Z' => "Réparation de produits électroniques grand public", - '9522Z' => "Réparation d'appareils électroménagers et d'équipements pour la maison et le jardin", - '9523Z' => "Réparation de chaussures et d'articles en cuir", - '9524Z' => "Réparation de meubles et d'équipements du foyer", - '9525Z' => "Réparation d'articles d'horlogerie et de bijouterie", - '9529Z' => "Réparation d'autres biens personnels et domestiques", - '9601A' => "Blanchisserie-teinturerie de gros", - '9601B' => "Blanchisserie-teinturerie de détail", - '9602A' => "Coiffure", - '9602B' => "Soins de beauté", - '9603Z' => "Services funéraires", - '9604Z' => "Entretien corporel", - '9609Z' => "Autres services personnels nca", - '9700Z' => "Activités des ménages en tant qu'employeurs de personnel domestique", - '9810Z' => "Activités indifférenciées des ménages en tant que producteurs de biens pour usage propre", - '9820Z' => "Activités indifférenciées des ménages en tant que producteurs de services pour usage propre", - '9900Z' => "Activités des organisations et organismes extraterritoriaux", - '0000Z' => "En instance de chiffrement", -); diff --git a/library/Metier/insee/Cache/CodesNafa.php b/library/Metier/insee/Cache/CodesNafa.php deleted file mode 100644 index f9143314..00000000 --- a/library/Metier/insee/Cache/CodesNafa.php +++ /dev/null @@ -1,686 +0,0 @@ - "CULTURE ET PRODUCTION ANIMALE, CHASSE ET SERVICES ANNEXES", - '16' => "TRAVAIL DU BOIS ET FABRICATION D'ARTICLES EN BOIS ET EN LIÈGE, À L'EXCEPTION DES MEUBLES ; FABRICATION D'ARTICLES EN VANNERIE ET SPARTERIE", - '0162ZP' => "Maréchalerie", - '7' => "EXTRACTION DE MINERAIS MÉTALLIQUES", - '72' => "EXTRACTION DE MINERAIS DE MÉTAUX NON FERREUX", - '0729ZP' => "Orpaillage", - '8' => "AUTRES INDUSTRIES EXTRACTIVES", - '0811ZA' => "Extraction de pierres ornementales et de construction et d'ardoise", - '0811ZB' => "Extraction de calcaire industriel, de gypse et de craie", - '0812ZZ' => "Exploitation de gravières et sablières, extraction d'argiles et de kaolin", - '0891ZZ' => "Extraction des minéraux chimiques et d'engrais minéraux", - '0892ZZ' => "Extraction de tourbe", - '0893ZZ' => "Production de sel", - '0899ZZ' => "Autres activités extractives n.c.a", - '9' => "SERVICES DE SOUTIEN AUX INDUSTRIES EXTRACTIVES", - '99' => "ACTIVITÉS DE SOUTIEN AUX AUTRES INDUSTRIES EXTRACTIVES", - '0990ZP' => "Activités de soutien aux autres industries extractives", - '10' => "INDUSTRIES ALIMENTAIRES", - '101' => "TRANSFORMATION ET CONSERVATION DE LA VIANDE ET PRÉPARATION DE PRODUITS À BASE DE VIANDE", - '1011ZZ' => "Transformation et conservation de la viande de boucherie", - '1012ZZ' => "Transformation et conservation de la viande de volaille", - '1013AZ' => "Préparation industrielle de produits à base de viande", - '1013BZ' => "Charcuterie", - '102' => "PRÉPARATIONS ET CONSERVES À BASE DE POISSONS ET", - '1020ZZ' => "Transformation et conservation de poisson, de crustacés et de mollusques", - '103' => "TRANSFORMATION ET CONSERVATION DE FRUITS ET LÉGUMES", - '1031ZZ' => "Transformation et conservation de pommes de terre", - '1032ZZ' => "Préparation de jus de fruits et légumes", - '1039AP' => "Autre transformation et conservation de longue durée de légumes", - '1039BP' => "Transformation et conservation de fruits", - '104' => "FABRICATION D'HUILES ET GRAISSES VÉGÉTALES ET ANIMALES", - '1041AZ' => "Fabrication d'huiles et graisses brutes", - '1041BZ' => "Fabrication d'huiles et graisses raffinées", - '1042ZZ' => "Fabrication de margarine et graisses comestibles similaires", - '105' => "FABRICATION DE PRODUITS LAITIERS", - '1051AZ' => "Fabrication de lait liquide et de produits frais", - '1051BZ' => "Fabrication de beurre", - '1051CZ' => "Fabrication de fromage", - '1051DZ' => "Fabrication d'autres produits laitiers", - '1052ZZ' => "Fabrication de glaces et sorbets", - '106' => "TRAVAIL DES GRAINS ; FABRICATION DE PRODUITS AMYLACÉS", - '1061AZ' => "Meunerie", - '1061BZ' => "Autres activités du travail des grains", - '1062ZZ' => "Fabrication de produits amylacés", - '107' => "FABRICATION DE PRODUITS DE BOULANGERIE-PÂTISSERIE ET DE PÂTES ALIMENTAIRES", - '1071AA' => "Fabrication industrielle de pain", - '1071AB' => "Fabrication industrielle de pâtisserie fraîche", - '1071CA' => "Boulangerie", - '1071CB' => "Boulangerie-pâtisserie", - '1071DZ' => "Pâtisserie", - '1072ZZ' => "Fabrication de biscuits, biscottes et pâtisseries de conservation", - '1073ZZ' => "Fabrication de pâtes alimentaires", - '108' => "FABRICATION D'AUTRES PRODUITS ALIMENTAIRES", - '1081ZZ' => "Fabrication de sucre", - '1082ZZ' => "Fabrication de cacao, chocolat et de produits de confiserie", - '1083ZZ' => "Transformation du thé et du café", - '1084ZZ' => "Fabrication de condiments et assaisonnements", - '1085ZZ' => "Fabrication de plats préparés", - '1086ZZ' => "Fabrication d'aliments homogénéisés et diététiques", - '1089ZZ' => "Fabrication d'autres produits alimentaires n.c.a.", - '109' => "FABRICATION D'ALIMENTS POUR ANIMAUX", - '1091ZZ' => "Fabrication d'aliments pour animaux de ferme", - '1092ZZ' => "Fabrication d'aliments pour animaux de compagnie", - '11' => "FABRICATION DE BOISSONS", - '110' => "FABRICATION DE BOISSONS", - '1101ZQ' => "Production d'eaux de vie naturelles", - '1101ZR' => "Fabrication de spiritueux", - '1102AP' => "Fabrication de vins effervescents selon la méthode champenoise ou autres méthodes", - '1103ZZ' => "Fabrication de cidre et de vins de fruits", - '1104ZZ' => "Production d'autres boissons fermentées non distillées", - '1105ZZ' => "Fabrication de bière", - '1106ZZ' => "Fabrication de malt", - '1107AZ' => "Industrie des eaux de table", - '1107BZ' => "Production de boissons rafraîchissantes", - '13' => "FABRICATION DE TEXTILES", - '131' => "PRÉPARATION DE FIBRES TEXTILES ET FILATURE", - '1310ZA' => "Filature et préparation de la laine", - '1310ZB' => "Moulinage et texturation de la soie et des textiles artificiels ou synthétiques", - '1310ZC' => "Préparation et filature d'autres fibres", - '132' => "TISSAGE", - '1320ZA' => "Tissage de l'industrie cotonnière", - '1320ZB' => "Tissage de l'industrie lainière", - '1320ZC' => "Tissage de soieries", - '1320ZD' => "Tissage d'autres textiles", - '133' => "ENNOBLISSEMENT TEXTILE", - '1330ZZ' => "Ennoblissement textile", - '139' => "FABRICATION D'AUTRES TEXTILES", - '1391ZZ' => "Fabrication d'étoffes à mailles", - '1392ZA' => "Fabrication de linge de maison et d'articles d'ameublement", - '1392ZB' => "Fabrication de tapisserie à la main", - '1392ZC' => "Fabrication de coussins et petits articles textiles divers", - '1392ZD' => "Voilerie", - '1392ZE' => "Fabrication d'articles de campement en textile", - '1392ZF' => "Fabrication de bâches, lambrequins et autres articles en textile", - '1393ZZ' => "Fabrication de tapis et moquettes", - '1394ZZ' => "Fabrication de ficelles, cordes et filets", - '1395ZZ' => "Fabrication de non-tissés, sauf habillement", - '1396ZZ' => "Fabrication de textiles techniques et industriels", - '1399ZA' => "Fabrication de feutres", - '1399ZB' => "Fabrication de tulles, lacets et autres textiles n.c.a", - '14' => "INDUSTRIE DE L'HABILLEMENT", - '141' => "FABRICATION DE VÊTEMENTS, AUTRES QU'EN FOURRURE", - '1411ZZ' => "Fabrication de vêtements en cuir", - '1412ZZ' => "Fabrication de vêtements de travail", - '1413ZA' => "Modéliste-styliste", - '1413ZB' => "Fabrication de vêtements féminins sur mesure", - '1413ZC' => "Fabrication de vêtements masculins sur mesure", - '1413ZD' => "Chemiserie sur mesure", - '1413ZE' => "Fabrication de gaines, corsets et autres vêtements sur mesure", - '1413ZF' => "Fabrication de vêtements de dessus pour hommes et garçonnets", - '1413ZG' => "Fabrication de vêtements de dessus pour femmes et fillettes", - '1414ZZ' => "Fabrication de vêtements de dessous", - '1419ZA' => "Fabrication de layette", - '1419ZB' => "Fabrication de chapellerie", - '1419ZC' => "Modiste", - '1419ZD' => "Fabrication d'écharpes, cravates, foulards", - '1419ZE' => "Fabrication d'autres vêtements et accessoires", - '1419ZF' => "Fabrication d'accessoires en cuir", - '142' => "FABRICATION D'ARTICLES EN FOURRURE", - '1420ZZ' => "Fabrication d'articles en fourrure", - '143' => "FABRICATION D'ARTICLES À MAILLES", - '1431ZZ' => "Fabrication d'articles chaussants à mailles", - '1439ZA' => "Fabrication de lainages à la main", - '1439ZB' => "Fabrication de lainages à la machine", - '15' => "INDUSTRIE DU CUIR ET DE LA CHAUSSURE", - '151' => "APPRÊT ET TANNAGE DES CUIRS ; PRÉPARATION ET TEINTURE DES FOURRURES ;", - '1511ZZ' => "Apprêt et tannage des cuirs ; préparation et teinture des fourrures", - '1512ZA' => "Fabrication d'articles de maroquinerie", - '1512ZB' => "Gainerie", - '1512ZC' => "Sellerie", - '1512ZD' => "Bourrellerie", - '152' => "FABRICATION DE CHAUSSURES", - '1520ZA' => "Fabrication de sabots", - '1520ZB' => "Fabrication de chaussures et de bottes", - '1520ZC' => "Fabrication de chaussures et de bottes sur mesure", - '161' => "SCIAGE ET RABOTAGE DU BOIS", - '1610AQ' => "Sciage et rabotage du bois", - '1610AR' => "Fabrication de parquets, moulures et baguettes", - '1610BZ' => "Imprégnation du bois", - '162' => "FABRICATION D'ARTICLES EN BOIS, LIÈGE, VANNERIE ET SPARTERIE", - '1621ZZ' => "Fabrication de placage et de panneaux de bois", - '1622ZZ' => "Fabrication de parquets assemblés", - '1623ZZ' => "Fabrication de charpentes et d'autres menuiseries", - '1624ZA' => "Fabrication de caisses et de palettes en bois", - '1624ZB' => "Tonnellerie", - '1629ZA' => "Fabrication d'objets divers en bois", - '1629ZB' => "Vannerie, sparterie, travail de la paille", - '1629ZC' => "Fabrication d'objets en liège", - '17' => "INDUSTRIE DU PAPIER ET DU CARTON", - '171' => "FABRICATION DE PÂTE À PAPIER, DE PAPIER ET DE CARTON", - '1711ZZ' => "Fabrication de pâte à papier", - '1712ZZ' => "Fabrication de papier et de carton", - '172' => "FABRICATION D'ARTICLES EN PAPIER OU EN CARTON", - '1721AZ' => "Fabrication de carton ondulé", - '1721BZ' => "Fabrication de cartonnages", - '1721CZ' => "Fabrication d'emballages en papier", - '1722ZZ' => "Fabrication d'articles en papier à usage sanitaire ou domestique", - '1723ZZ' => "Fabrication d'articles de papeterie", - '1724ZZ' => "Fabrication de papiers peints", - '1729ZZ' => "Fabrication d'autres articles en papier ou en carton", - '18' => "IMPRIMERIE ET REPRODUCTION D'ENREGISTREMENTS", - '181' => "IMPRIMERIE ET SERVICES ANNEXES", - '1812ZA' => "Imprimerie de labeur", - '1812ZB' => "Sérigraphie de type imprimerie", - '1813ZA' => "Travaux de préparation d'impression", - '1813ZB' => "Graphisme-décoration", - '1813ZC' => "Activités graphiques n.c.a.", - '1814ZZ' => "Reliure et activités connexes", - '182' => "REPRODUCTION D'ENREGISTREMENTS", - '1820ZZ' => "Reproduction d'enregistrements", - '19' => "COKÉFACTION ET RAFFINAGE", - '191' => "COKÉFACTION", - '1910ZP' => "Production de brai et de coke de brai", - '1920ZP' => "Agglomération de la tourbe", - '20' => "INDUSTRIE CHIMIQUE", - '201' => "FABRICATION DE PRODUITS CHIMIQUES DE BASE, DE PRODUITS AZOTÉS ET D'ENGRAIS, DE", - '2011ZZ' => "Fabrication de gaz industriels", - '2012ZZ' => "Fabrication de colorants et de pigments", - '2013AZ' => "Enrichissement et retraitement de matières nucléaires", - '2013BZ' => "Fabrication d'autres produits chimiques inorganiques de base n.c.a", - '2014ZA' => "Fabrication d'autres produits organiques de base", - '2014ZB' => "Fabrication de produits de la distillation du bois", - '2015ZZ' => "Fabrication de produits azotés et d'engrais", - '2016ZZ' => "Fabrication de matières plastiques de base", - '2017ZZ' => "Fabrication de caoutchouc synthétique", - '202' => "FABRICATION DE PESTICIDES ET D'AUTRES PRODUITS AGROCHIMIQUES", - '2020ZZ' => "Fabrication de pesticides et d'autres produits agrochimiques", - '203' => "FABRICATION DE PEINTURES, VERNIS, ENCRES ET MASTICS", - '2030ZZ' => "Fabrication de peintures, vernis, encres et mastics", - '204' => "FABRICATION DE SAVONS, DE PRODUITS D'ENTRETIEN ET DE PARFUMS", - '2041ZZ' => "Fabrication de savons, détergents et produits d'entretien", - '2042ZZ' => "Fabrication de parfums et de produits pour la toilette", - '205' => "FABRICATION D'AUTRES PRODUITS CHIMIQUES", - '2051ZZ' => "Fabrication de produits explosifs", - '2052ZZ' => "Fabrication de colles", - '2053ZZ' => "Fabrication d'huiles essentielles", - '2059ZZ' => "Fabrication d'autres produits chimiques n.c.a.", - '206' => "FABRICATION DE FIBRES ARTIFICIELLES OU SYNTHÉTIQUES", - '2060ZZ' => "Fabrication de fibres artificielles ou synthétiques", - '21' => "INDUSTRIE PHARMACEUTIQUE", - '211' => "FABRICATION DE PRODUITS PHARMACEUTIQUES DE BASE", - '2110ZP' => "Fabrication d'édulcorants de synthèse", - '212' => "FABRICATION DE PRÉPARATIONS PHARMACEUTIQUES", - '2120ZP' => "Fabrication de substances radioactives de diagnostic et de pansements", - '22' => "FABRICATION DE PRODUITS EN CAOUTCHOUC ET EN PLASTIQUE", - '221' => "FABRICATION DE PRODUITS EN CAOUTCHOUC", - '2211ZZ' => "Fabrication et rechapage de pneumatiques", - '2219ZZ' => "Fabrication d'autres articles en caoutchouc", - '222' => "FABRICATION DE PRODUITS EN PLASTIQUE", - '2221ZZ' => "Fabrication de plaques, feuilles, tubes et profilés en matières plastiques", - '2222ZZ' => "Fabrication d'emballages en matières plastiques", - '2223ZZ' => "Fabrication d'éléments en matières plastiques pour la construction", - '2229AZ' => "Fabrication de pièces techniques à base de matières plastiques", - '2229BZ' => "Fabrication d'éléments divers en matières plastiques", - '23' => "FABRICATION D'AUTRES PRODUITS MINÉRAUX NON MÉTALLIQUES", - '231' => "FABRICATION DE VERRE ET D'ARTICLES EN VERRE", - '2311ZZ' => "Fabrication de verre plat", - '2312ZZ' => "Façonnage et transformation du verre plat", - '2313ZA' => "Fabrication de verre creux ou autres verres", - '2313ZB' => "Soufflage de verre", - '2313ZC' => "Façonnage de verre et de cristal", - '2314ZZ' => "Fabrication de fibres de verre", - '2319ZA' => "Fabrication de vitraux", - '2319ZB' => "Fabrication d'articles techniques en verre", - '232' => "FABRICATION DE PRODUITS RÉFRACTAIRES", - '2320ZZ' => "Fabrication de produits réfractaires", - '233' => "FABRICATION DE MATÉRIAUX DE CONSTRUCTION EN TERRE CUITE", - '2331ZZ' => "Fabrication de carreaux en céramique", - '2332ZA' => "Fabrication de briques", - '2332ZB' => "Fabrication de tuiles", - '2332ZC' => "Fabrication de produits divers en terre cuite", - '234' => "FABRICATION D'AUTRES PRODUITS EN CÉRAMIQUE ET EN PORCELAINE", - '2341ZZ' => "Fabrication d'articles céramiques à usage domestique ou ornemental", - '2342ZZ' => "Fabrication d'appareils sanitaires en céramique", - '2343ZZ' => "Fabrication d'isolateurs et pièces isolantes en céramique", - '2344ZZ' => "Fabrication d'autres produits céramiques à usage technique", - '2349ZZ' => "Fabrication d'autres produits céramiques", - '235' => "FABRICATION DE CIMENT, CHAUX ET PLÂTRE", - '2351ZZ' => "Fabrication de ciment céramiques", - '2352ZZ' => "Fabrication de chaux et plâtre.", - '236' => "FABRICATION D'OUVRAGES EN BÉTON, EN CIMENT OU EN", - '2361ZZ' => "Fabrication d'éléments en béton pour la construction", - '2362ZZ' => "Fabrication d'éléments en plâtre pour la construction", - '2363ZZ' => "Fabrication de béton prêt à l'emploi", - '2364ZZ' => "Fabrication de mortiers et bétons secs", - '2365ZZ' => "Fabrication d'ouvrages en fibre-ciment", - '2369ZA' => "Fabrication de cheminées décoratives", - '2369ZB' => "Fabrication d'éléments décoratifs en béton ou en plâtre", - '237' => "TAILLE, FAÇONNAGE ET FINISSAGE DE PIERRES", - '2370ZZ' => "Taille, façonnage et finissage de pierres", - '239' => "FABRICATION DE PRODUITS ABRASIFS ET DE PRODUITS MINÉRAUX NON MÉTALLIQUES", - '2391ZZ' => "Fabrication de produits abrasifs", - '2399ZZ' => "Fabrication d'autres produits minéraux non métalliques n.c.a.", - '24' => "MÉTALLURGIE", - '241' => "SIDÉRURGIE", - '2410ZZ' => "Sidérurgie", - '242' => "FABRICATION DE TUBES, TUYAUX, PROFILÉS CREUX ET ACCESSOIRES CORRESPONDANTS EN", - '2420ZZ' => "Fabrication de tubes, tuyaux, profilés creux et accessoires correspondants en acier", - '243' => "FABRICATION D'AUTRES PRODUITS DE PREMIÈRE TRANSFORMATION DE L'ACIER", - '2431ZZ' => "Etirage à froid de barres", - '2432ZZ' => "Laminage à froid de feuillards", - '2433ZZ' => "Profilage à froid par formage ou pliage", - '2434ZZ' => "Tréfilage à froid", - '244' => "PRODUCTION DE MÉTAUX PRÉCIEUX ET D'AUTRES MÉTAUX NON FERREUX", - '2441ZZ' => "Production de métaux précieux", - '2442ZA' => "Production d'aluminium", - '2442ZB' => "Première transformation de l'aluminium", - '2443ZZ' => "Métallurgie du plomb, du zinc ou de l'étain", - '2444ZZ' => "Métallurgie du cuivre", - '2445ZZ' => "Métallurgie des autres métaux non ferreux", - '2446ZZ' => "Elaboration et transformation de matières nucléaires", - '245' => "FONDERIE", - '2451ZZ' => "Fonderie de fonte", - '2452ZZ' => "Fonderie d'acier", - '2453ZZ' => "Fonderie de métaux légers", - '2454ZZ' => "Fonderie d'autres métaux non ferreux", - '25' => "FABRICATION DE PRODUITS MÉTALLIQUES, À L'EXCEPTION DES MACHINES ET DES ÉQUIPEMENTS", - '251' => "FABRICATION D'ÉLÉMENTS EN MÉTAL POUR LA CONSTRUCTION", - '2511ZZ' => "Fabrication de structures métalliques et de parties de structures", - '2512ZZ' => "Fabrication de portes et fenêtres en métal", - '252' => "FABRICATION DE RÉSERVOIRS, CITERNES ET CONTENEURS MÉTALLIQUES", - '2521ZZ' => "Fabrication de radiateurs et de chaudières pour le chauffage central", - '2529ZZ' => "Fabrication d'autres réservoirs, citernes et conteneurs métalliques", - '253' => "FABRICATION DE GÉNÉRATEURS DE VAPEUR, À L'EXCEPTION DES CHAUDIÈRES POUR LE", - '2530ZA' => "Fabrication de générateurs de vapeur", - '2530ZB' => "Chaudronnerie nucléaire", - '254' => "FABRICATION D'ARMES ET DE MUNITIONS", - '2540ZZ' => "Fabrication d'armes et de munitions", - '255' => "FORGE, EMBOUTISSAGE, ESTAMPAGE ; MÉTALLURGIE DES POUDRES", - '2550AZ' => "Forge, estampage, matriçage, métallurgie des poudres", - '2550BZ' => "Découpage, emboutissage", - '256' => "FORGE, EMBOUTISSAGE, ESTAMPAGE ; MÉTALLURGIE DES POUDRES TRAITEMENT ET", - '2561ZA' => "Sérigraphie de type marquage", - '2561ZB' => "Traitement et revêtement des métaux", - '2562AZ' => "Décolletage", - '2562BZ' => "Mécanique industrielle", - '257' => "FABRICATION DE COUTELLERIE, D'OUTILLAGE ET DE QUINCAILLERIE", - '2571ZZ' => "Fabrication de coutellerie", - '2572ZZ' => "Fabrication de serrures et de ferrures", - '2573AZ' => "Fabrication de moules et modèles", - '2573BA' => "Fabrication d'outillage à main", - '2573BB' => "Fabrication d'outillage mécanique", - '259' => "FABRICATION D'AUTRES OUVRAGES EN MÉTAUX", - '2591ZZ' => "Fabrication de fûts et emballages métalliques similaires", - '2592ZZ' => "Fabrication d'emballages métalliques légers", - '2593ZA' => "Fabrication d'articles en fils métalliques et de chaînes", - '2593ZB' => "Fabrication de ressorts", - '2594ZZ' => "Fabrication de vis et de boulons", - '2599AA' => "Dinanderie", - '2599AB' => "Autres fabrications d'articles de ménage", - '2599BA' => "Fabrication de petits articles métalliques", - '2599BB' => "Fabrication de coffres-forts", - '2599BC' => "Fabrication d'autres articles métalliques n.c.a.", - '26' => "FABRICATION DE PRODUITS INFORMATIQUES, ÉLECTRONIQUES ET OPTIQUES", - '261' => "FABRICATION DE COMPOSANTS ET CARTES ÉLECTRONIQUES", - '2611ZA' => "Fabrication de composants électroniques (hors capteurs solaires)", - '2611ZB' => "Fabrication de capteurs solaires photovoltaïques", - '2612ZZ' => "Fabrication de cartes électroniques assemblées", - '262' => "FABRICATION D'ORDINATEURS ET D'ÉQUIPEMENTS PÉRIPHÉRIQUES", - '2620ZZ' => "Fabrication d'ordinateurs et d'autres équipements informatiques", - '263' => "FABRICATION D'ÉQUIPEMENTS DE COMMUNICATION", - '2630ZZ' => "Fabrication d'équipements de communication", - '264' => "FABRICATION DE PRODUITS ÉLECTRONIQUES GRAND PUBLIC", - '2640ZZ' => "Fabrication de produits électroniques grand public", - '265' => "FABRICATION D'INSTRUMENTS ET D'APPAREILS DE MESURE, D'ESSAI ET DE NAVIGATION ;", - '2651AZ' => "Fabrication d'équipements d'aide à la navigation", - '2651BZ' => "Fabrication d'instrumentation scientifique et technique", - '2652ZZ' => "Horlogerie", - '266' => "FABRICATION D'ÉQUIPEMENTS D'IRRADIATION MÉDICALE, D'ÉQUIPEMENTS", - '2660ZZ' => "Fabrication d'équipements d'irradiation médicale, d'équipements électromédicaux et électrothérapeutiques", - '267' => "FABRICATION DE MATÉRIELS OPTIQUE ET PHOTOGRAPHIQUE", - '2670ZA' => "Fabrication de matériels photographiques et cinématographiques", - '2670ZB' => "Fabrication d'instruments d'optique", - '268' => "FABRICATION DE SUPPORTS MAGNÉTIQUES ET OPTIQUES", - '2680ZZ' => "Fabrication de supports magnétiques et optiques", - '27' => "FABRICATION D'ÉQUIPEMENTS ÉLECTRIQUES", - '271' => "FABRICATION DE MOTEURS, GÉNÉRATRICES ET TRANSFORMATEURS ÉLECTRIQUES ET DE", - '2711ZA' => "Fabrication de moteurs électriques", - '2711ZB' => "Fabrication de transformateurs électriques", - '2711ZC' => "Fabrication de groupes électrogènes", - '2712ZZ' => "Fabrication de matériel de distribution et de commande électrique", - '272' => "FABRICATION DE PILES ET D'ACCUMULATEURS ÉLECTRIQUES", - '2720ZZ' => "Fabrication de piles et d'accumulateurs électriques", - '273' => "FABRICATION DE FILS ET CÂBLES ET DE MATÉRIEL D'INSTALLATION ÉLECTRIQUE", - '2731ZZ' => "Fabrication de câbles de fibres optiques", - '2732ZZ' => "Fabrication d'autres fils et câbles électroniques ou électrique", - '2733ZZ' => "Fabrication de matériel d'installation électrique", - '274' => "FABRICATION D'APPAREILS D'ÉCLAIRAGE ÉLECTRIQUE", - '2740ZA' => "Fabrication de lampes", - '2740ZB' => "Fabrication de luminaires", - '2740ZC' => "Fabrication d'abat-jour", - '2740ZD' => "Fabrication d'autres appareils d'éclairage", - '275' => "FABRICATION D'APPAREILS MÉNAGERS", - '2751ZZ' => "Fabrication d'appareils électroménagers", - '2752ZZ' => "Fabrication d'appareils ménagers non électriques", - '279' => "FABRICATION D'AUTRES MATÉRIELS ÉLECTRIQUES", - '2790ZZ' => "Fabrication d'autres matériels électriques", - '28' => "FABRICATION DE MACHINES ET ÉQUIPEMENTS N.C.A", - '281' => "FABRICATION DE MACHINES D'USAGE GÉNÉRAL", - '2811ZA' => "Fabrication de moteurs et turbines, à l'exception des moteurs d'avion et de véhicules", - '2811ZB' => "Fabrication de turbines éoliennes", - '2812ZZ' => "Fabrication d'équipements hydrauliques et pneumatiques", - '2813ZA' => "Fabrication de pompes", - '2813ZB' => "Fabrication de compresseurs", - '2814ZZ' => "Fabrication d'autres articles de robinetterie", - '2815ZZ' => "Fabrication d'engrenages et d'organes mécaniques de transmission", - '282' => "FABRICATION D'AUTRES MACHINES D'USAGE GÉNÉRAL", - '2821ZA' => "Fabrication de fours et brûleurs non solaires", - '2821ZB' => "Fabrication de chauffages solaires", - '2822ZA' => "Fabrication d'ascenseurs, monte-charges et escaliers mécaniques", - '2822ZB' => "Fabrication d'équipements de levage et de manutention", - '2823ZZ' => "Fabrication de machines de bureau (à l'exception des ordinateurs et équipements périphériques)", - '2824ZZ' => "Fabrication d'outillage portatif à moteur incorporé", - '2825ZA' => "Fabrication de capteur solaire à effet de serre", - '2825ZB' => "Fabrication d'équipements de réfrigération industrielle", - '2825ZC' => "Fabrication d'équipements aérauliques", - '2829AA' => "Fabrication d'équipements d'emballage et de conditionnement", - '2829AB' => "Fabrication d'appareils de pesage", - '2829BZ' => "Fabrication d'autres machines d'usage général", - '283' => "FABRICATION DE MACHINES AGRICOLES ET FORESTIÈRES", - '2830ZZ' => "Fabrication de machines agricoles et forestières", - '284' => "FABRICATION DE MACHINES DE FORMAGE DES MÉTAUX ET DE MACHINES-OUTILS", - '2841ZZ' => "Fabrication de machines-outils pour le travail des métaux", - '2849ZZ' => "Fabrication d'autres machines-outils", - '289' => "FABRICATION D'AUTRES MACHINES D'USAGE SPÉCIFIQUE", - '2891ZZ' => "Fabrication de machines pour la métallurgie", - '2892ZA' => "Fabrication de matériels de mines pour l'extraction", - '2892ZB' => "Fabrication de matériels de travaux publics", - '2893ZZ' => "Fabrication de machines pour l'industrie agro-alimentaire", - '2894ZZ' => "Fabrication de machines pour les industries textiles", - '2895ZZ' => "Fabrication de machines pour les industries du papier et du carton", - '2896ZZ' => "Fabrication de machines pour le travail du caoutchouc ou des plastiques", - '2899AZ' => "Fabrication de machines d'imprimerie", - '2899BZ' => "Fabrication d'autres machines spécialisées", - '29' => "INDUSTRIE AUTOMOBILE", - '291' => "CONSTRUCTION DE VÉHICULES AUTOMOBILES", - '2910ZA' => "Construction de voiturettes", - '2910ZB' => "Construction d'autres véhicules automobiles", - '292' => "FABRICATION DE CARROSSERIES ET REMORQUES", - '2920ZA' => "Fabrication de carrosseries", - '2920ZB' => "Aménagement de véhicules", - '2920ZC' => "Fabrication de remorques et de semi-remorques", - '293' => "FABRICATION D'ÉQUIPEMENTS AUTOMOBILES", - '2931ZZ' => "Fabrication de matériels électriques et électroniques automobiles", - '2932ZZ' => "Fabrication d'autres équipements automobiles", - '30' => "FABRICATION D'AUTRES MATÉRIELS DE TRANSPORT", - '301' => "CONSTRUCTION NAVALE", - '3011ZA' => "Construction de navires", - '3011ZB' => "Transformation et équipement des navires", - '3012ZZ' => "Construction de bateaux de plaisance", - '302' => "CONSTRUCTION DE LOCOMOTIVES ET D'AUTRE MATÉRIEL FERROVIAIRE ROULANT", - '3020ZZ' => "Construction de locomotives et d'autre matériel ferroviaire roulant", - '303' => "CONSTRUCTION AÉRONAUTIQUE ET SPATIALE", - '3030ZA' => "Construction de moteurs pour aéronefs", - '3030ZB' => "Construction de cellules d'aéronefs", - '3030ZC' => "Construction de lanceurs et engins spatiaux", - '304' => "CONSTRUCTION DE VÉHICULES MILITAIRES DE COMBAT", - '3040ZZ' => "Construction de véhicules militaires de combat", - '309' => "FABRICATION DE MATÉRIELS DE TRANSPORT N.C.A", - '3091ZA' => "Construction de motocycles", - '3091ZB' => "Fabrication d'équipements pour motocycles", - '3092ZA' => "Construction de bicyclettes", - '3092ZB' => "Fabrication d'équipements pour bicyclettes", - '3092ZC' => "Fabrication de véhicules pour invalides et enfants", - '3099ZZ' => "Fabrication d'autres équipements de transport n.c.a.", - '31' => "FABRICATION DE MEUBLES", - '310' => "FABRICATION DE MEUBLES", - '3101ZZ' => "Fabrication de meubles de bureau et de magasin", - '3102ZZ' => "Fabrication de meubles de cuisine", - '3103ZZ' => "Fabrication de matelas", - '3109AZ' => "Fabrication de sièges d'ameublement d'intérieur", - '3109BA' => "Fabrication et finissage de meubles divers", - '3109BB' => "Fabrication de meubles de jardin et d'extérieur", - '3109BC' => "Fabrication de meubles en rotin", - '32' => "AUTRES INDUSTRIES MANUFACTURIÈRES", - '321' => "FABRICATION D'ARTICLES DE JOAILLERIE, BIJOUTERIE ET ARTICLES SIMILAIRES", - '3211ZZ' => "Frappe de monnaies", - '3212ZZ' => "Fabrication d'articles de joaillerie et de bijouterie", - '3213ZZ' => "Fabrication d'articles de bijouterie fantaisie et articles similaires", - '322' => "FABRICATION D'INSTRUMENTS DE MUSIQUE", - '3220ZA' => "Lutherie", - '3220ZB' => "Facteur d'orgues", - '3220ZC' => "Fabrication d'autres instruments de musique", - '323' => "FABRICATION D'ARTICLES DE SPORT", - '3230ZZ' => "Fabrication d'articles de sport", - '324' => "FABRICATION DE JEUX ET JOUETS", - '3240ZZ' => "Fabrication de jeux et jouets", - '325' => "FABRICATION D'INSTRUMENTS ET DE FOURNITURES À USAGE MÉDICAL ET DENTAIRE", - '3250AA' => "Fabrication de prothèses dentaires", - '3250AB' => "Fabrication de prothèses et orthèses podales", - '3250AC' => "Fabrication de prothèses et orthèses diverses", - '3250AD' => "Fabrication d'équipements médico-chirurgicaux", - '3250BP' => "Fabrication de lunettes de protection", - '329' => "ACTIVITÉS MANUFACTURIÈRES N.C.A", - '3291ZZ' => "Fabrication d'articles de brosserie", - '3299ZA' => "Fabrication de bougies", - '3299ZB' => "Fabrication d'accessoires du vêtements", - '3299ZC' => "Fabrication d'articles de Paris, d'arts ou religieux", - '3299ZD' => "Fabrication d'articles de fumeurs", - '3299ZE' => "Taxidermie", - '3299ZF' => "Fabrication d'équipements de protection et de sécurité", - '3299ZG' => "Fabrication de produits manufacturés non classés ailleurs", - '33' => "RÉPARATION ET INSTALLATION DE MACHINES ET D'ÉQUIPEMENTS", - '331' => "RÉPARATION D'OUVRAGES EN MÉTAUX, DE MACHINES ET D'ÉQUIPEMENTS", - '3311ZZ' => "Réparation d'ouvrages en métaux", - '3312ZA' => "Réparation de matériel agricole", - '3312ZB' => "Réparation d'autres machines", - '3313ZZ' => "Réparation de matériels électroniques et optiques", - '3314ZZ' => "Réparation d'équipements électriques", - '3315ZZ' => "Réparation et maintenance navale", - '3316ZZ' => "Réparation et maintenance d'aéronefs et d'engins spatiaux", - '3317ZZ' => "Réparation et maintenance d'autres équipements de transport", - '3319ZZ' => "Réparation d'autres équipements", - '332' => "INSTALLATION DE MACHINES ET D'ÉQUIPEMENTS INDUSTRIELS", - '3320AZ' => "Installation de structures métalliques, chaudronnées et de tuyauterie", - '3320BZ' => "Installation de machines et équipements mécaniques", - '3320CZ' => "Conception d'ensemble et assemblage sur site industriel d'équipements de contrôle des processus industriels", - '3320DZ' => "Installation d'équipements électriques, de matériels électroniques et optiques ou d'autres matériels", - '37' => "COLLECTE ET TRAITEMENT DES EAUX USÉES", - '370' => "COLLECTE ET TRAITEMENT DES EAUX USÉES", - '3700ZP' => "Entretien de fosses septiques", - '38' => "COLLECTE, TRAITEMENT ET ÉLIMINATION DES DÉCHETS ; RÉCUPÉRATION", - '381' => "COLLECTE DES DÉCHETS", - '3812ZP' => "Collecte des déchets nucléaires", - '382' => "TRAITEMENT ET ÉLIMINATION DES DÉCHETS", - '3821ZP' => "Incinération des déchets non dangereux et production de cendres et scories associée", - '3822ZP' => "Traitement et élimination de déchets nucléaires radioactifs", - '383' => "RÉCUPÉRATION", - '3831ZA' => "Démantèlement d'épaves en vue de la récupération de matières métalliques", - '3831ZB' => "Démantèlement d'épaves en vue de la récupération de matières non métalliques", - '3832ZA' => "Traitement de matières métalliques recyclables", - '3832ZB' => "Traitement de matières non métalliques recyclables", - '39' => "DÉPOLLUTION ET AUTRES SERVICES DE GESTION DES DÉCHETS", - '390' => "DÉPOLLUTION ET AUTRES SERVICES DE GESTION DES DÉCHETS", - '3900ZP' => "Désamiantage", - '41' => "CONSTRUCTION DE BÂTIMENTS", - '412' => "CONSTRUCTION DE BÂTIMENTS RÉSIDENTIELS ET NON RÉSIDENTIELS", - '4120AZ' => "Construction de maisons individuelles", - '4120BA' => "Construction de bâtiments", - '4120BB' => "Réhabilitation de bâtiments", - '42' => "GÉNIE CIVIL", - '421' => "CONSTRUCTION DE ROUTES ET DE VOIES FERRÉES", - '4211ZA' => "Pose de signalisation routière verticale", - '4211ZB' => "Aménagement de chaussées", - '4212ZZ' => "Construction de voies ferrées de surface et souterraines", - '4213AZ' => "Construction d'ouvrages d'art", - '4213BZ' => "Construction et entretien de tunnels", - '422' => "CONSTRUCTION DE RÉSEAUX ET DE LIGNES", - '4221ZA' => "Construction d'installations de réseaux pour fluides", - '4221ZB' => "Forage des puits d'eau", - '4222ZA' => "Construction de centrales électriques", - '4222ZB' => "Construction de lignes électriques et de télécommunication", - '429' => "CONSTRUCTION D'AUTRES OUVRAGES DE GÉNIE CIVIL", - '4291ZZ' => "Construction d'ouvrages maritimes et fluviaux", - '4299ZP' => "Construction d'installations sportives et d'ouvrages industriels ou miniers", - '43' => "TRAVAUX DE CONSTRUCTION SPÉCIALISÉS", - '431' => "DÉMOLITION ET PRÉPARATION DES SITES", - '4311ZZ' => "Travaux de démolition", - '4312AZ' => "Travaux de terrassement courants et travaux préparatoires", - '4312BA' => "Terrassements", - '4312BB' => "Artificiers", - '4313ZZ' => "Forages et sondages", - '432' => "TRAVAUX D'INSTALLATION ÉLECTRIQUE, PLOMBERIE ET AUTRES TRAVAUX", - '4321AA' => "Installation d'antennes", - '4321AB' => "Installation électrique", - '4321BZ' => "Travaux d'installation électrique sur la voie publique", - '4322AZ' => "Travaux d'installation d'eau et de gaz en tous locaux", - '4322BA' => "Installation et entretien de climatisation et chaufferie", - '4322BB' => "Installation de chauffage individuel", - '4322BC' => "Entretien de chaudières domestiques", - '4329AZ' => "Travaux d'isolation", - '4329BA' => "Installation d'ascenseurs", - '4329BB' => "Montage de clôtures et de grilles", - '4329BC' => "Installation de stores et bannes", - '4329BD' => "Autres travaux d'installation divers", - '433' => "TRAVAUX DE FINITION", - '4331ZA' => "Travaux de plâtrerie d'extérieur", - '4331ZB' => "Travaux de plâtrerie d'intérieur", - '4332AA' => "Menuiserie bois", - '4332AB' => "Menuiserie PVC", - '4332BA' => "Installation de serres et de vérandas", - '4332BB' => "Métallerie, serrurerie", - '4332CZ' => "Agencement de lieux de vente", - '4333ZZ' => "Travaux de revêtement des sols et des murs", - '4334ZA' => "Travaux de miroiterie de bâtiment, vitrerie", - '4334ZB' => "Travaux de peinture extérieure", - '4334ZC' => "Travaux de peinture intérieure et peinture plâtrerie", - '4334ZD' => "Travaux de peinture en lettres sur bâtiments", - '4339ZZ' => "Autres travaux de finition", - '439' => "AUTRES TRAVAUX DE CONSTRUCTION SPÉCIALISÉS", - '4391AZ' => "Travaux de charpente", - '4391BZ' => "Travaux de couverture par éléments", - '4399AZ' => "Travaux d'étanchéification", - '4399BZ' => "Travaux de montage de structures métalliques", - '4399CZ' => "Travaux de maçonnerie générale et gros oeuvre de bâtiment", - '4399DA' => "Installation de piscines de résidence et construction de piscines extérieures", - '4399DB' => "Construction de cheminées et de fours industriels", - '4399DC' => "Autres travaux spéciaux de construction", - '4399EZ' => "Location avec opérateur de matériel de construction", - '45' => "COMMERCE ET RÉPARATION D'AUTOMOBILES ET DE MOTOCYCLES", - '452' => "ENTRETIEN ET RÉPARATION DE VÉHICULES AUTOMOBILES", - '4520AA' => "Réparation automobile de véhicules automobiles légers : entretien courant", - '4520AB' => "Réparation automobile de véhicules automobiles légers : mécanique", - '4520AC' => "Réparation automobile de véhicules automobiles légers : carrosserie", - '4520AD' => "Réparation automobile de véhicules automobiles légers : électricité, électronique", - '4520BA' => "Réparation automobile d'autres véhicules automobiles : entretien courant", - '4520BB' => "Réparation automobile d'autres véhicules automobiles : mécanique", - '4520BC' => "Réparation automobile d'autres véhicules automobiles : diesel", - '4520BD' => "Réparation automobile d'autres véhicules automobiles : carrosserie", - '4520BE' => "Réparation automobile d'autres véhicules automobiles : électricité, électronique", - '454' => "COMMERCE ET RÉPARATION DE MOTOCYCLES", - '4540ZP' => "Réparation de motocycles", - '47' => "COMMERCE DE DÉTAIL, À L'EXCEPTION DES AUTOMOBILES ET DES MOTOCYCLES", - '472' => "COMMERCE DE DÉTAIL ALIMENTAIRE EN MAGASIN SPÉCIALISÉ", - '4722ZA' => "Boucherie", - '4722ZB' => "Boucherie charcuterie", - '4722ZC' => "Boucherie chevaline", - '4722ZD' => "Volailles, gibiers", - '4722ZE' => "Triperie", - '4723ZP' => "Préparation de poissons, crustacés et mollusques", - '477' => "AUTRES COMMERCES DE DÉTAIL EN MAGASIN SPÉCIALISÉ", - '4776ZP' => "Commerce de détail de fleurs", - '478' => "COMMERCE DE DÉTAIL SUR ÉVENTAIRES ET MARCHÉS", - '4781ZQ' => "Boucherie sur éventaires et marchés", - '4781ZR' => "Boucherie charcuterie sur éventaires et marchés", - '4781ZS' => "Boucherie chevaline sur éventaires et marchés", - '4781ZT' => "Volailles, gibiers sur éventaires et marchés", - '4781ZU' => "Triperie sur éventaires et marchés", - '4781ZV' => "Préparation de poissons, crustacés, mollusques sur éventaires, marchés", - '4789ZP' => "Commerce de détail de fleurs sur éventaires et marchés", - '49' => "TRANSPORTS TERRESTRES ET TRANSPORT PAR CONDUITES", - '493' => "AUTRES TRANSPORTS TERRESTRES DE VOYAGEURS", - '4932ZA' => "Taxis", - '4932ZB' => "Location de voitures avec chauffeur", - '494' => "TRANSPORTS ROUTIERS DE FRET ET SERVICES DE DÉMÉNAGEMENT", - '4942ZZ' => "Services de déménagement", - '52' => "ENTREPOSAGE ET SERVICES AUXILIAIRES DES TRANSPORTS", - '522' => "ENTREPOSAGE ET STOCKAGE SERVICES AUXILIAIRES DES TRANSPORTS", - '5221ZP' => "Assistance et remorquage de véhicules automobiles", - '56' => "RESTAURATION", - '561' => "RESTAURANTS ET SERVICES DE RESTAURATION MOBILE", - '5610CQ' => "Fabrication artisanale associée à la vente de plats pour consommation immédiate en magasins sédentaires ou sur", - '5610CR' => "Fabrication artisanale associée à la vente de plats pour consommation immédiate en véhicules motorisés ou non", - '58' => "ÉDITION", - '581' => "ÉDITION DE LIVRES ET PÉRIODIQUES ET AUTRES ACTIVITÉS D'ÉDITION", - '5819ZP' => "Edition d'imprimés fiduciaires, imprimés commerciaux, formulaires imprimés", - '71' => "ACTIVITÉS D'ARCHITECTURE ET D'INGÉNIERIE ; ACTIVITÉS DE CONTRÔLE ET ANALYSES", - '712' => "ACTIVITÉS DE CONTRÔLE ET ANALYSES TECHNIQUES", - '7120AZ' => "Contrôle technique automobile", - '73' => "PUBLICITÉ ET ÉTUDES DE MARCHÉ", - '731' => "PUBLICITÉ", - '7311ZP' => "Pose d'affiches", - '74' => "AUTRES ACTIVITÉS SPÉCIALISÉES, SCIENTIFIQUES ET TECHNIQUES", - '741' => "ACTIVITÉS SPÉCIALISÉES DE DESIGN", - '7410ZP' => "Conception de modèles pour étalages et décoration", - '742' => "ACTIVITÉS PHOTOGRAPHIQUES", - '7420ZQ' => "Studio de photographie", - '7420ZR' => "Portrait, reportage", - '7420ZS' => "Photographie industrielle et publicitaire", - '7420ZT' => "Laboratoires techniques de développement et de tirage", - '80' => "ENQUÊTES ET SÉCURITÉ", - '802' => "ACTIVITÉS LIÉES AUX SYSTÈMES DE SÉCURITÉ", - '8020ZP' => "Activité de surveillance et installation de systèmes d'alarme non dissociées", - '81' => "SERVICES RELATIFS AUX BÂTIMENTS ET AMÉNAGEMENT PAYSAGER", - '812' => "ACTIVITÉS DE NETTOYAGE", - '8121ZZ' => "Nettoyage courant des bâtiments", - '8122ZZ' => "Autres activités de nettoyage des bâtiments et nettoyage industriel", - '8129AZ' => "Désinfection, désinsectisation, dératisation", - '8129BP' => "Autres services de nettoyage", - '82' => "ACTIVITÉS ADMINISTRATIVES ET AUTRES ACTIVITÉS DE SOUTIEN AUX ENTREPRISES", - '821' => "ACTIVITÉS ADMINISTRATIVES", - '8211ZP' => "Services administratifs divers", - '8219ZP' => "Travaux à façon divers", - '829' => "ACTIVITÉS DE SOUTIEN AUX ENTREPRISES N.C.A", - '8292ZZ' => "Activités de conditionnement", - '86' => "ACTIVITÉS POUR LA SANTÉ HUMAINE", - '8690AZ' => "Ambulances", - '90' => "ACTIVITÉS CRÉATIVES, ARTISTIQUES ET DE SPECTACLE", - '900' => "ACTIVITÉS CRÉATIVES, ARTISTIQUES ET DE SPECTACLE", - '9001ZP' => "Spectacles de marionnettes", - '9003AP' => "Restauration d'objets d'art", - '95' => "RÉPARATION D'ORDINATEURS ET DE BIENS PERSONNELS ET DOMESTIQUES", - '951' => "RÉPARATION D'ORDINATEURS ET D'ÉQUIPEMENTS DE COMMUNICATION", - '9511ZZ' => "Réparation d'ordinateurs et d'équipements périphériques", - '9512ZZ' => "Réparation d'équipements de communication", - '952' => "RÉPARATION DE BIENS PERSONNELS ET DOMESTIQUES", - '9521ZZ' => "Réparation de produits électroniques grand public", - '9522ZA' => "Réparation de tondeuses à gazon", - '9522ZB' => "Réparation d'appareils électroménagers", - '9523ZZ' => "Réparation de chaussures et d'articles en cuir", - '9524ZZ' => "Réparation de meubles et d'équipements du foyer", - '9525ZZ' => "Réparation d'articles d'horlogerie et de bijouterie", - '9529ZA' => "Aiguisage de coutellerie", - '9529ZB' => "Réparation de cycles", - '9529ZC' => "Atelier de retouches", - '9529ZD' => "Réparation d'articles de sport et de campement", - '9529ZE' => "Accordeurs de piano et restauration d'autres instruments de musique", - '9529ZF' => "Réparation non classées ailleurs", - '96' => "AUTRES SERVICES PERSONNELS", - '960' => "AUTRES SERVICES PERSONNELS", - '9601AZ' => "Blanchisserie-teinturerie de gros", - '9601BQ' => "Laveries, blanchisseries et teintureries de détail", - '9601BR' => "Pressings", - '9602AA' => "Coiffure en salon", - '9602AB' => "Coiffure hors salon", - '9602BA' => "Soins de beauté en salon", - '9602BB' => "Soins de beauté hors salon", - '9603ZP' => "Embaumement, soins mortuaires", - '9609ZP' => "Toilettage d'animaux de compagnie", - 'A' => "AGRICULTURE, SYLVICULTURE ET PÊCHE", - 'B' => "INDUSTRIES EXTRACTIVES", - 'C' => "INDUSTRIE MANUFACTURIÈRE", - 'E' => "PRODUCTION ET DISTRIBUTION D'EAU ; ASSAINISSEMENT, GESTION DES DÉCHETS ET", - 'F' => "CONSTRUCTION", - 'G' => "COMMERCE ; RÉPARATION D'AUTOMOBILES ET DE MOTOCYCLES", - 'H' => "TRANSPORTS ET ENTREPOSAGE", - 'I' => "HÉBERGEMENT ET RESTAURATION", - 'J' => "INFORMATION ET COMMUNICATION", - 'M' => "ACTIVITÉS SPÉCIALISÉES, SCIENTIFIQUES ET TECHNIQUES", - 'N' => "ACTIVITÉS DE SERVICES ADMINISTRATIFS ET DE SOUTIEN", - 'Q' => "SANTÉ HUMAINE ET ACTION SOCIALE", - 'R' => "ARTS, SPECTACLES ET ACTIVITÉS RÉCRÉATIVES", - 'S' => "AUTRES ACTIVITÉS DE SERVICES", -); diff --git a/library/Metier/insee/classMInsee.php b/library/Metier/insee/classMInsee.php deleted file mode 100644 index 6922f161..00000000 --- a/library/Metier/insee/classMInsee.php +++ /dev/null @@ -1,6290 +0,0 @@ -'Modification de l\'établissement', - 'iOA'=>'Activation économique de l\'établissement par adjonction de moyens de production', - 'i0C'=>'Création de l\'établissement', - 'iOD'=>'Désactivation économique de l\'établissement par suppression de moyens de production', - 'i0F'=>'Fermeture de l\'établissement', - 'iOR'=>'Modification simple ou modification de moyen de production de l\'établissement', - 'iCC'=>'Création de l\' entreprise par création du premier établissement', - 'iRC'=>'Réactivation de l\'entreprise par création de l\'établissement', - 'iRR'=>'Réactivation de l\'entreprise par réactivation de l\'établissement', - 'iFF'=>'Fermeture de l\'établissement entraînant la fermeture de l\'entreprise', - 'iTC'=>'Création de l\'établissement dans le cadre d\'un transfert', - 'iTR'=>'Réactivation de l\'établissement dans le cadre d\'un transfert', - 'iT0'=>'Modification simple ou de moyens de production sur l\'établissement dans le cadre d\'un transfert', - 'iTA'=>'Activation économique de l\'établissement par adjonction de moyens de production dans le cadre d\'un transfert', - 'iTD'=>'Désactivation économique de l\'établissement par suppression de moyens de production dans le cadre d\'un transfert', - 'iTF'=>'Fermeture de l\'établissement dans le cadre d\'un transfert', - 'iER'=>'Modification ERR de l\'établissement', - // Evènements Crées par différentiel de la Mensuelle Insee par S&D - 'iM0C'=>'Création de l\'établissement', - 'iM0F'=>'Fermeture de l\'établissement', - 'iM0R'=>'Réactivation de l\'établissement', - 'iM00'=>'Modification de l\'établissement', - 'iMAS'=>'Modification de la nature d\'activité et de la saisonalité', - 'iMAC'=>'Modification de la nature d\'activité de l\'établissement', - 'iMSA'=>'Modification de la saisonalité de l\'établissement', - // Evènements Crées par diff3+4 - 'iMPF'=>'Etablissement présumé fermé (formalités de création faites par le repreneur)', - 'iMNP'=>'Etablissement présumé fermé (retour de courrier en NPAI)', - // Décret n°2010-1042 du 01/09/2010 relatif à l'inscription au registre du commerce et des sociétés et au répertoire national mentionné à l'article R. 123-220 du code de commerce - // Codification provisoire à changer dans l'attente de l'INSEE - 'i810'=>'Suppression du SIREN suite au refus d\'inscription au Registre du Commerce et des Sociétés', // Anciennement iRCS - // Nouveaux évènements Sirene3 de la quotidienne Insee - 'i110'=>'Création de l\'entreprise', - 'i120'=>'Réactivation de l\'entreprise', - 'i125'=>'Réactivation de l\'entreprise suite à une mise à jour du répertoire SIRENE', - 'i130'=>'Création de l\'établissement', - 'i145'=>'Reprise d\'activité de l\'établissement suite à une mise à jour du répertoire SIRENE', - 'i400'=>'Suppression du doublon', - 'i410'=>'Cessation juridique de l\'entreprise', - 'i420'=>'Absence d\'activité de l\'entreprise (cessation économique de l\'entreprise)', - 'i425'=>'Absence d\'activité d\'une entreprise suite à une mise à jour au répertoire SIRENE', - 'i430'=>'Fermeture de l\'établissement', - 'i435'=>'Fermeture de l\'établissement suite à une mise à jour au répertoire SIRENE', - 'i510'=>'Création de l\'établissement d\'arrivée et cessation de l\'établissement de départ dans le cadre d\'un transfert', - 'i520'=>'Création de l\'établissement d\'arrivée et modification de l\'établissement de départ dans le cadre d\'un transfert', - 'i530'=>'Modification de l\'établissement d\'arrivée et cessation de l\'établissement de départ dans le cadre d\'un transfert', - 'i540'=>'Modification de l\'établissement d\'arrivée et modification de l\'établissement de départ dans le cadre d\'un transfert', - 'i610'=>'Modification d\'activité au niveau du SIREN associé à une activation économique par adjonction de moyens de production', - 'i620'=>'Modification d\'activité au niveau du SIREN associé à une désactivation économique par suppression de moyens de production', - 'i621'=>'Modification d\'activité du SIREN associé à une désactivation économique par suppression de moyens de production suite à une correction d\'erreur', - 'i631'=>'Modification d\'activité du SIREN associé', - 'i640'=>'Modification d\'activité au niveau de l\'établissement associée à une activation économique par adjonction de moyens de production', - 'i650'=>'Modification d\'activité au niveau de l\'établissement associée à une désactivation économique par suppression de moyens de production', - 'i661'=>'Modification d\'activité de l\'établissement', - 'i710'=>'Modification de l\'identification du SIREN', - 'i711'=>'Modification de l\'identification du SIREN suite à correction d\'erreur', - 'i720'=>'Modification de l\'adresse ou de l\'identification de l\'établissement', - 'i780'=>'Modification de l\'établissement', - 'i781'=>'Modification de l\'établissement suite à correction d\'erreur', - 'i795'=>'Personne radiée à sa demande de de la base SIRENE diffusion', -); - -global $tabDestinat; -$tabDestinat=array( - 'i3'=>'Etablissement vendu', - 'i7'=>'Maintien d\'activité, l\'établissement devient siège', - 'i8'=>'Maintien d\'activité, l\'établissement devient principal', - 'iA'=>'Maintien d\'activité, l\'établissement devient secondaire', - 'iB'=>'Etablissement fermé', - 'iC'=>'Etablissement supprimé', - 'iD'=>'Mise en location-gérance de la totalité du fonds', - 'iE'=>'Mise en location-gérance d\'une partie du fonds', - 'iF'=>'Cessation d\'activité (pour les liasses agricoles)', - 'iG'=>'Mise en location-gérance de la totalité des terres et des bâtiments agricoles (pour les liasses agricoles)', - 'iH'=>'Mise en location-gérance d\'une partie des terres et des bâtiments agricoles (pour les liasses agricoles)', - 'iI'=>'Transmission au conjoint (pour les liasses agricoles)', - 'iJ'=>'Cession (pour les liasses agricoles)', - 'iVP'=>'Suppression partielle d\'activité par vente', - 'iDP'=>'Suppression partielle d\'activité par disparition', - 'iRP'=>'Suppression partielle d\'activité par reprise par le propriétaire', -); - -global $tabTypEtab; -$tabTypEtab=array( - 'i00'=>'Rappel des données de l\'établissement du siège en cas de modification exclusive de l\'entreprise', - 'i08'=>'Siège avant transfert non fermé', - 'i09'=>'Siège après transfert non créé', - 'i10'=>'Siège avant transfert fermé', - 'i11'=>'Siège après transfert créé', - 'i12'=>'Siège créé (hors transfert)', - 'i13'=>'Siège fermé (hors transfert)', - 'i14'=>'Siège modifié (hors transfert) : modification de l\'activité principale avec activation économique', - 'i15'=>'Siège modifié (hors transfert) : modification de l\'activité principale avec désactivation économique', - 'i16'=>'Siège modifié (hors transfert) : modification de l\'activité principale de l\'établissement', - 'i17'=>'Siège modifié (hors transfert) : modification de l\'identification de l\'établissement', - 'i19'=>'Siège modifié (hors transfert) : autre modification de l\'établissement', - 'i20'=>'Établissement avant transfert fermé', - 'i21'=>'Établissement après transfert créé', - 'i22'=>'Établissement créé (hors transfert)', - 'i23'=>'Établissement fermé (hors transfert)', - 'i24'=>'Établissement modifié (hors transfert) : modification de l\'activité principale avec activation économique', - 'i25'=>'Établissement modifié (hors transfert) : modification de l\'activité principale avec désactivation économique', - 'i26'=>'Établissement modifié (hors transfert) : autre modification de l\'activité principale de l\'établissement', - 'i27'=>'Établissement modifié (hors transfert) : modification de l\'identification de l\'établissement', - 'i29'=>'Établissement modifié (hors transfert) : modification d\'une autre variable de l\'établissement', - 'i30'=>'Établissement avant transfert non fermé', - 'i31'=>'Établissement après transfert non créé', - 'i32'=>'Établissement supprimé', -); - -require_once 'Metier/bodacc/classMBodacc.php'; -require_once 'Metier/bodacc/classMBalo.php'; -require_once 'Metier/partenaires/classMTva.php'; -require_once 'Metier/partenaires/classMMap.php'; -require_once 'Metier/partenaires/classMAmabis.php'; -require_once 'Metier/partenaires/classMRncs.php'; -require_once 'Metier/partenaires/classMTel.php'; -require_once 'Metier/partenaires/classMBourse.php'; -require_once 'Metier/partenaires/classMBilans.php'; - -class MInsee -{ - private static $tabFct=array( - 'ADM'=>'Administrateur', - 'ASS'=>'Associé', - 'COG'=>'Co-gérant', - 'CON'=>'Contrôleur de gestion', - 'DID'=>'Directeur Général Délégué', - 'DIR'=>'Directeur', - 'GER'=>'Gérant', - 'PCS'=>'Président du Conseil de Surveillance', - 'PDG'=>'Président Directeur Général', - 'PP'=>'Personne Physique', - 'PRD'=>'Président du directoire', - 'PRE'=>'Président du Conseil d\'Administration', - 'VIC'=>'Vice président du CA ou Surv.', - ); - - private static $tabDep=array( - '01'=>'Ain', - '1'=>'Ain', - '02'=>'Aisne', - '2'=>'Aisne', - '03'=>'Allier', - '3'=>'Allier', - '04'=>'Alpes-de-Haute-Provence', - '4'=>'Alpes-de-Haute-Provence', - '05'=>'Hautes-Alpes', - '5'=>'Hautes-Alpes', - '06'=>'Alpes-Maritimes', - '6'=>'Alpes-Maritimes', - '07'=>'Ardèche', - '7'=>'Ardèche', - '08'=>'Ardennes', - '8'=>'Ardennes', - '09'=>'Ariège', - '9'=>'Ariège', - '10'=>'Aube', - '11'=>'Aude', - '12'=>'Aveyron', - '13'=>'Bouches-du-Rhône', - '14'=>'Calvados', - '15'=>'Cantal', - '16'=>'Charente', - '17'=>'Charente-Maritime', - '18'=>'Cher', - '19'=>'Corrèze', - '20'=>'Corse', - '2A'=>'Corse-du-Sud', - '20A'=>'Corse-du-Sud', - '2B'=>'Haute-Corse', - '20B'=>'Haute-Corse', - '21'=>'Côte-d\'Or', - '22'=>'Côtes-d\'Armor', - '23'=>'Creuse', - '24'=>'Dordogne', - '25'=>'Doubs', - '26'=>'Drôme', - '27'=>'Eure', - '28'=>'Eure-et-Loir', - '29'=>'Finistère', - '30'=>'Gard', - '31'=>'Haute-Garonne', - '32'=>'Gers', - '33'=>'Gironde', - '34'=>'Hérault', - '35'=>'Ille-et-Vilaine', - '36'=>'Indre', - '37'=>'Indre-et-Loire', - '38'=>'Isère', - '39'=>'Jura', - '40'=>'Landes', - '41'=>'Loir-et-Cher', - '42'=>'Loire', - '43'=>'Haute-Loire', - '44'=>'Loire-Atlantique', - '45'=>'Loiret', - '46'=>'Lot', - '47'=>'Lot-et-Garonne', - '48'=>'Lozère', - '49'=>'Maine-et-Loire', - '50'=>'Manche', - '51'=>'Marne', - '52'=>'Haute-Marne', - '53'=>'Mayenne', - '54'=>'Meurthe-et-Moselle', - '55'=>'Meuse', - '56'=>'Morbihan', - '57'=>'Moselle', - '58'=>'Nièvre', - '59'=>'Nord', - '60'=>'Oise', - '61'=>'Orne', - '62'=>'Pas-de-Calais', - '63'=>'Puy-de-Dôme', - '64'=>'Pyrénées-Atlantiques', - '65'=>'Hautes-Pyrénées', - '66'=>'Pyrénées-Orientales', - '67'=>'Bas-Rhin', - '68'=>'Haut-Rhin', - '69'=>'Rhône', - '70'=>'Haute-Saône', - '71'=>'Saône-et-Loire', - '72'=>'Sarthe', - '73'=>'Savoie', - '74'=>'Haute-Savoie', - '75'=>'Paris', - '76'=>'Seine-Maritime', - '77'=>'Seine-et-Marne', - '78'=>'Yvelines', - '79'=>'Deux-Sèvres', - '80'=>'Somme', - '81'=>'Tarn', - '82'=>'Tarn-et-Garonne', - '83'=>'Var', - '84'=>'Vaucluse', - '85'=>'Vendée', - '86'=>'Vienne', - '87'=>'Haute-Vienne', - '88'=>'Vosges', - '89'=>'Yonne', - '90'=>'Territoire de Belfort', - '91'=>'Essonne', - '92'=>'Hauts-de-Seine', - '93'=>'Seine-Saint-Denis', - '94'=>'Val-de-Marne', - '95'=>'Val-d\'Oise', - '971'=>'Guadeloupe', - '972'=>'Martinique', - '973'=>'Guyane', - '974'=>'Réunion', - '975'=>'Saint-Pierre-et-Miquelon', - '976'=>'Mayotte', - '985'=>'Mayotte', // Codification au Bodacc - '986'=>'Wallis-et-Futuna', - '987'=>'Polynésie-Française', - '988'=>'Nouvelle-Calédonie', - ); - - private static $tabDepArt=array( - '01'=>'de l\'Ain', - '1'=>'de l\'Ain', - '02'=>'de l\'Aisne', - '2'=>'de l\'Aisne', - '03'=>'de l\'Allier', - '3'=>'de l\'Allier', - '04'=>'des Alpes-de-Haute-Provence', - '4'=>'des Alpes-de-Haute-Provence', - '05'=>'des Hautes-Alpes', - '5'=>'des Hautes-Alpes', - '06'=>'Ades lpes-Maritimes', - '6'=>'des Alpes-Maritimes', - '07'=>'de l\'Ardèche', - '7'=>'de l\'Ardèche', - '08'=>'des Ardennes', - '8'=>'des Ardennes', - '09'=>'de l\'Ariège', - '9'=>'de l\'Ariège', - '10'=>'de l\'Aube', - '11'=>'de l\'Aude', - '12'=>'de l\'Aveyron', - '13'=>'des Bouches-du-Rhône', - '14'=>'du Calvados', - '15'=>'du Cantal', - '16'=>'de la Charente', - '17'=>'de la Charente-Maritime', - '18'=>'du Cher', - '19'=>'de la Corrèze', - '20'=>'de la Corse', - '2A'=>'de la Corse-du-Sud', - '20A'=>'de la Corse-du-Sud', - '2B'=>'de la Haute-Corse', - '20B'=>'de la Haute-Corse', - '21'=>'de la Côte-d\'Or', - '22'=>'des Côtes-d\'Armor', - '23'=>'de la Creuse', - '24'=>'de la Dordogne', - '25'=>'du Doubs', - '26'=>'de la Drôme', - '27'=>'de l\'Eure', - '28'=>'de l\'Eure-et-Loir', - '29'=>'du Finistère', - '30'=>'du Gard', - '31'=>'de la Haute-Garonne', - '32'=>'du Gers', - '33'=>'de la Gironde', - '34'=>'de l\'Hérault', - '35'=>'de l\'Ille-et-Vilaine', - '36'=>'de l\'Indre', - '37'=>'de l\'Indre-et-Loire', - '38'=>'de l\'Isère', - '39'=>'du Jura', - '40'=>'des Landes', - '41'=>'du Loir-et-Cher', - '42'=>'de la Loire', - '43'=>'de la Haute-Loire', - '44'=>'de la Loire-Atlantique', - '45'=>'du Loiret', - '46'=>'du Lot', - '47'=>'du Lot-et-Garonne', - '48'=>'de la Lozère', - '49'=>'du Maine-et-Loire', - '50'=>'de la Manche', - '51'=>'de la Marne', - '52'=>'de la Haute-Marne', - '53'=>'de la Mayenne', - '54'=>'de la Meurthe-et-Moselle', - '55'=>'de la Meuse', - '56'=>'du Morbihan', - '57'=>'de la Moselle', - '58'=>'de la Nièvre', - '59'=>'du Nord', - '60'=>'de l\'Oise', - '61'=>'de l\'Orne', - '62'=>'du Pas-de-Calais', - '63'=>'du Puy-de-Dôme', - '64'=>'des Pyrénées-Atlantiques', - '65'=>'des Hautes-Pyrénées', - '66'=>'des Pyrénées-Orientales', - '67'=>'du Bas-Rhin', - '68'=>'du Haut-Rhin', - '69'=>'du Rhône', - '70'=>'de la Haute-Saône', - '71'=>'de la Saône-et-Loire', - '72'=>'de la Sarthe', - '73'=>'de la Savoie', - '74'=>'de la Haute-Savoie', - '75'=>'de Paris', - '76'=>'de la Seine-Maritime', - '77'=>'de la Seine-et-Marne', - '78'=>'des Yvelines', - '79'=>'des Deux-Sèvres', - '80'=>'de la Somme', - '81'=>'du Tarn', - '82'=>'du Tarn-et-Garonne', - '83'=>'du Var', - '84'=>'du Vaucluse', - '85'=>'de la Vendée', - '86'=>'de la Vienne', - '87'=>'de la Haute-Vienne', - '88'=>'des Vosges', - '89'=>'de l\'Yonne', - '90'=>'du Territoire de Belfort', - '91'=>'de l\'Essonne', - '92'=>'des Hauts-de-Seine', - '93'=>'de la Seine-Saint-Denis', - '94'=>'du Val-de-Marne', - '95'=>'du Val-d\'Oise', - '971'=>'de la Guadeloupe', - '972'=>'de la Martinique', - '973'=>'de la Guyane', - '974'=>'de la Réunion', - '975'=>'de Saint-Pierre-et-Miquelon', - '976'=>'de Mayotte', - '985'=>'de Mayotte', // Codification au Bodacc - '986'=>'de Wallis-et-Futuna', - '987'=>'de la Polynésie-Française', - '988'=>'de la Nouvelle-Calédonie', - ); - - /** Nature d'établissements */ - private static $tabNature = array( - '20'=>'Petit magasin (moins de 300m²)', - '21'=>'Magasin (de 300m² à 400m²)', - '22'=>'Grande surface (de 400 à 2500m²)', - '23'=>'Très grande surface (plus de 2500m²)', - '91'=>'Base d\'activité sur chantiers', - '92'=>'Base d\'activité sur marchés', - '93'=>'Base d\'activité en clientèle', - '99'=>'Autre' - ); - - /** Régions du code officiel géographique */ - private static $tabRegion = array( - '1'=>'Guadeloupe', - '2'=>'Martinique', - '3'=>'Guyane', - '4'=>'Réunion', - '11'=>'Ile-de-France', - '21'=>'Champagne-Ardenne', - '22'=>'Picardie', - '23'=>'Haute-Normandie', - '24'=>'Centre', - '25'=>'Basse-Normandie', - '26'=>'Bourgogne', - '31'=>'Nord-Pas-de-Calais', - '41'=>'Lorraine', - '42'=>'Alsace', - '43'=>'Franche-Comté', - '52'=>'Pays de la Loire', - '53'=>'Bretagne', - '54'=>'Poitou-Charentes', - '72'=>'Aquitaine', - '73'=>'Midi-Pyrénées', - '74'=>'Limousin', - '82'=>'Rhône-Alpes', - '83'=>'Auvergne', - '91'=>'Languedoc-Roussillon', - '93'=>'Provence Alpes Côte d Azur', - '94'=>'Corse', - '98'=>'Territoire d outre-mer (TOM)', - '99'=>'Etranger' - ); - - /** Tranches de Chiffre d'Affaires INSEE */ - private static $tabTCA = array( - '0'=>'N/C', - '1'=>'de 500 000 à 1 ME', - '2'=>'de 1 à 2 ME', - '3'=>'de 2 à 5 ME', - '4'=>'de 5 à 10 ME', - '5'=>'de 10 à 20 ME', - '6'=>'de 20 à 50 ME', - '7'=>'de 50 à 100 ME', - '8'=>'de 100 à 200 ME', - '9'=>'plus de 200 ME' - ); - - /** Tranche de CA Export */ - private static $tabTCAexp = array( - '0'=>'0%', - '1'=>'moins de 5%', - '2'=>'de 5 à 25%', - '3'=>'de 25 à 50%', - '4'=>'plus de 50%', - ); - - /** Tranche d'habitants de commune détaillée */ - private static $tabTCD=array( - '1'=>'Commune de moins de 50 habitants', - '2'=>'Commune de 50 à 99 habitants', - '3'=>'Commune de 100 à 149 habitants', - '4'=>'Commune de 150 à 199 habitants', - '5'=>'Commune de 200 à 249 habitants', - '6'=>'Commune de 250 à 299 habitants', - '7'=>'Commune de 300 à 399 habitants', - '8'=>'Commune de 400 à 499 habitants', - '11'=>'Commune de 500 à 699 habitants', - '12'=>'Commune de 700 à 999 habitants', - '13'=>'Commune de 1000 à 1499 habitants', - '14'=>'Commune de 1500 à 1999 habitants', - '15'=>'Commune de 2000 à 2499 habitants', - '16'=>'Commune de 2500 à 2999 habitants', - '17'=>'Commune de 3000 à 3999 habitants', - '18'=>'Commune de 4000 à 4999 habitants', - '21'=>'De 5 000 à 6 999 habitants', - '22'=>'De 7 000 à 9 999 habitants', - '31'=>'De 10 000 à 14 999 habitants', - '32'=>'De 15 000 à 19 999 habitants', - '41'=>'De 20 000 à 24 999 habitants', - '42'=>'De 25 000 à 29 999 habitants', - '43'=>'De 30 000 à 39 999 habitants', - '44'=>'De 40 000 à 49 999 habitants', - '51'=>'De 50 000 à 69 999 habitants', - '52'=>'De 70 000 à 99 999 habitants', - '61'=>'De 100 000 à 149 999 habitants', - '62'=>'De 150 000 à 199 999 habitants', - '71'=>'De 200 000 à 299 999 habitants', - '72'=>'De 300 000 à 499 999 habitants', - '73'=>'De 500 000 à 1 499 999 habitants', - '80'=>'Plus de 1 500 000 habitants' - ); - - /** Tranches d'effectifs INSEE */ - private static $tabEffectif=array( - 0=>'N/C', - 1=>'de 1 à 2 salarié(s)', - 2=>'de 3 à 5 salariés', - 3=>'de 6 à 9 salariés', - 11=>'de 10 à 19 salariés', - 12=>'de 20 à 49 salariés', - 21=>'de 50 à 99 salariés', - 22=>'de 100 à 199 salariés', - 31=>'de 200 à 249 salariés', - 32=>'de 250 à 499 salariés', - 41=>'de 500 à 999 salariés', - 42=>'de 1 000 à 1 999 salariés', - 51=>'de 2 000 à 4 999 salariés', - 52=>'de 5 000 à 9 999 salariés', - 53=>'plus de 10 000 salariés' - ); - - /** Libellé des singularités INSEE */ - private static $tabSingularite=array( - '1'=>'Propiétaire Exploitant direct', - '2'=>'Locataire Gérant', - '10'=>'Loueur de fonds', - '30'=>'Unité singulière de première espèce: avocats assocés, stations services sous mandat..', - '31'=>'Associé d\'exploitation en commun; ce groupe comprend notamment: associé de société de fait, associé d\'indivision', - '33'=>'Employeur non exploitant: prestataire de personnel, gérant mandataire', - '34'=>'Membre d\'une société civile professionnelle', - '40'=>'Siège d\'une unité SIREN de droit privé sans activité', - '41'=>'Siège d\'un organisme public sans activité', - '42'=>'Siège d\'un établissement public local non doté de l\'autonomie comptable: une partie des centres communaux d\'action sociale, une partie des caisses des écoles', - '43'=>'Sièges de domiciliation', - '52'=>'Sans domicile fixe', - '60'=>'Activité occasionnelle ou accessoire: Expert auprès des tribunaux, médecin, infirmier, pharmacien remplçant, avocat stagiaire, sportif amateur', - '70'=>'Activité en location (autre que le fond de commerce): Exploitant de terrain de camping, location de garage ou parking, locations de meublés, location de terres agricoles', - '80'=>'Gestion immobilière de biens propres: syndicats de copropriétaires', - '90'=>'Unité singulière de seconde espèce: établissement d\'une entreprise installée à Monaco, siège à l\'etranger de sociétés, associé gérant de sociétés' - ); - - /**Libellé des origines de création INSEE*/ - private static $tabOrigine=array( - '0'=>'Non renseigné', - '1'=>'Création pure', - '2'=>'Création suite à déménagement', // Création S&D du 20/04/2011 ancien 'Réinstallation après transfert' - '3'=>'Achat', - '4'=>'Apport', - '5'=>'Reprise au conjoint ou apport reçu', - '6'=>'Prise en location-gérance', - '7'=>'Partage', - '8'=>'Reprise', - '9'=>'Autre modalité d\'acquisition', - 'A'=>'Reprise globale d\'une exploitation agricole', - 'B'=>'Poursuite de l\'exploitation agricole par le conjoint', - 'C'=>'Transfert de propriété d\'une exploitation agricole', - 'D'=>'Apport d\'exploitation(s) agricole(s) individuelle(s)', - 'E'=>'Reprise totale ou partielle d\'exploitation individuelle', - ); - - private static $tabEven=array( - 'i110'=>'Création d\'une entreprise', - 'i120'=>'Réactivation d\'une entreprise', - 'i125'=>'Réactivation d\'une entreprise suite à une mise à jour du répertoire', - 'i130'=>'Création d\'un établissement', - 'i145'=>'Reprise d\'activité dans un établissement suite à une mise à jour du répertoire', - 'i400'=>'Suppression d\'un double', - 'i410'=>'Cessation juridique de l\'entreprise', - 'i420'=>'Absence d\'activité de l\'entreprise (cessation économique de l\'entreprise)', - 'i425'=>'Absence d\'activité d\'une entreprise suite à une mise à jour au répertoire', - 'i430'=>'Fermeture d\'un établissement', - 'i435'=>'Fermeture d\'un établissement suite à une mise à jour au répertoire', - 'i510'=>'Création de l\'établissement d\'arrivée et cessation de l\'établissement de départ dans le cadre d\'un transfert', - 'i520'=>'Création de l\'établissement d\'arrivée et modification de l\'établissement de départ dans le cadre d\'un transfert', - 'i530'=>'Modification de l\'établissement d\'arrivée et cessation de l\'établissement de départ dans le cadre d\'un transfert', - 'i540'=>'Modification de l\'établissement d\'arrivée et modification de l\'établissement de départ dans le cadre d\'un transfert', - 'i610'=>'Modification d\'activité au niveau du SIREN associé à une activation économique par adjonction de moyens de production', - 'i620'=>'Modification d\'activité au niveau du SIREN associé à une désactivation économique par suppression de moyens de production', - 'i621'=>'Modification d\'activité du SIREN associé à une désactivation économique par suppression de moyens de production suite à une correction d\'erreur', - 'i631'=>'Autre modification d\'activité du SIREN associé', - 'i640'=>'Modification d\'activité au niveau de l\'établissement associée à une activation économique par adjonction de moyens de production', - 'i650'=>'Modification d\'activité au niveau de l\'établissement associée à une désactivation économique par suppression de moyens de production', - 'i661'=>'Autre modification d\'activité au niveau de l\'établissement', - 'i710'=>'Modification de l\'identification du SIREN', - 'i711'=>'Modification de l\'identification du SIREN suite à correction d\'erreur', - 'i720'=>'Modification de l\'adresse ou de l\'identification de l\'établissement', - 'i780'=>'Autre modification entraînant la mise à jour d\'au moins une variable du répertoire', - 'i781'=>'Autre modification entraînant la mise à jour d\'au moins une variable du répertoire suite à correction d\'erreur', - ); - - private $tabCodeVoie = array(); - private $tabCodesNaf=array(); - private $tabCodesNafa=array(); - private $tabCodesNace=array(); - - private $body=''; - private $codeRetour=0; - private $header=array(); - - private $iDb; - private $iDbInsee; - private $iDbSD; - private $iBodacc; - - // Plan de redressement ou de continuation - private $debutPlan; // Date de début/jugement/publication du plan SSAAMMJJ - private $dureePlan; // Durée du plan en mois - private $finPlan; // Date de fin du plan SSAAMMJJ - - // Appel de jugement - private $appelJugement=false; // Présence d'un appel de jugement - - /** - * Debug mode - * @var boolean - */ - public $debug = false; - - /** - * Log time execution of request - * @var boolean - */ - protected $debugtime = false; - - /** - * Get all annonces and keep in memroy - * @var boolean - */ - public $AnnoncesInMemory = false; - - /** - * Store annonces - * @var array - */ - public $annoncesBodacc = array(); - - /** - * Store annonces histo - * @var array - */ - public $annoncesBodaccHisto = array(); - - /** - * - */ - public function __construct() - { - $this->iDb=new WDB(); - $this->iDbInsee=new WDB('insee'); - $this->iDbSD=new WDB('sdv1'); - $this->tabCodeVoie=$this->getTabCodeVoie(); - $this->iBodacc=new MBodacc(); - } - - /** Test de la validité du siren demandé - * @param int SIREN à tester - * @param int NIC (facultatif) - * @param mixed Message textuel d'erreur à afficher en cas d'erreur ou false - * @return mixed true, false ou Message d'erreur passé en paramètre - */ - function valideSiren($siren, $nic='', $erreur=false) { - - /** Si le siren est de taille < à 9, on ajoute des 0 significatifs **/ - switch (strlen($siren)) { - case 1: $siren='00000000'.$siren; break; - case 2: $siren='0000000'.$siren; break; - case 3: $siren='000000'.$siren; break; - case 4: $siren='00000'.$siren; break; - case 5: $siren='0000'.$siren; break; - case 6: $siren='000'.$siren; break; - case 7: $siren='00'.$siren; break; - case 8: $siren='0'.$siren; break; - } - - if (strlen($nic)>0) { - switch (strlen($nic)) { - case 1: $nic='0000'.$nic; break; - case 2: $nic='000'.$nic; break; - case 3: $nic='00'.$nic; break; - case 4: $nic='0'.$nic; break; - } - } - - - if (!valideData($siren, 9, 9,'N')) //Siren non précisé ou incorrect. - return $erreur; - elseif ($siren*1==0) // Siren vide - return $erreur; - else - { - if (!isset($nic) || trim($nic)=='') - { - $somme=0; - for ($i=0; $i<=8; $i+=2) // Traitement IMPAIR - $somme+=(integer)substr($siren,$i,1); - - for ($i=1; $i<=7; $i+=2) - { // Traitement PAIR - $var_tmp=(string)(2*((integer)substr($siren,$i,1))); - $som_tmp=0; - for($j=0;$j356000000) { - $somme=0; - for ($i=0; $i<=12; $i+=2) - { // Traitement PAIR - $var_tmp=(string)(2*((integer)substr($SIRET,$i,1))); - $som_tmp=0; - for($j=0;$jvalideSiren($siren)) - return -1; - elseif (!valideData($numEtab,1,4,'N')) // Nic de format incorrect. - return -1; - else { - for ($cle=0; $cle<10; $cle++) { - if ($this->valideSiren($siren, ''.$nic.''.$cle)) - return $cle; - } - } - return -1; - } - - /** Vérifie si le n° de département est un département français valide - ** @param int Numéro de département Français - ** @return bool - **/ - public function isDepartement($dept) { - return array_key_exists($dept, self::$tabDep); - } - - /** Retourne le libellé du département si département français valide - ** @param int Numéro de département Français - ** @return string Libellé département - **/ - public function getDepartement($dept, $article=false) { - if ($article) - return self::$tabDepArt[$dept]; - - return self::$tabDep[$dept]; - } - - public function getEffectifMoyen($trancheEffectif) { - $trancheEffectif=$trancheEffectif*1; - if ($trancheEffectif==0) return 0; - elseif ($trancheEffectif==53) return 10000; - else { - $libEffectif=self::$tabEffectif[$trancheEffectif]; - $tabTmp=explode('à', $libEffectif); - $eff_min=trim(str_replace(' ','', $tabTmp[0])); - $tabTmp=explode('salari', $tabTmp[1]); - $eff_max=trim(str_replace(' ','', $tabTmp[0])); - return floor(($eff_min+$eff_max)/2); - } - } - - /** Retourne le code forme juridique d'une entreprise. - ** @param int Numéro de SIREN (9 chiffres) ou SIRET (14 chiffres) - ** @return string Forme Juridique sur 4 caractères ou falseen cas d'erreur ou si inexistant - **/ - function getFJInsee($siren_siret) { - $len=strlen($siren_siret); - if ($len==9) - $siren=$siren_siret; - elseif ($len==14) - $siren=$siren_siret; - else - return false; - $rep=$this->iDb->select('identite', 'CJ', "SIREN='$siren'"); - return $rep[0][0]; - } - - /** - * Recherche Etablissements - * - * @param string $raisonSociale - * @param string $adresse - * @param string $codePostal - * @param string $ville - * @param string $siege - * @param int $actif - * @param int $deb - * @param int $nbRep - * @param int $maxRep - * @param string $pertinence - * @param bool $uniquementAvecSiren - * @param string $ape_etab - * @param int $fj - * @return array - */ - public function rechercheEtab($raisonSociale, $adresse='', $codePostal='', $ville='', $siege='', $actif=2, $deb=0, $nbRep=20, $maxRep=200, $pertinence=false, $uniquementAvecSiren='', $ape_etab='', $fj=null) - { - $tabAdr = $this->structureVoie(strtoupper($adresse)); - $numAdresse = preg_replace('/^0+/','',''.$tabAdr['num']*1); - $adresse = trimAccent($tabAdr['libVoie']); - $formR = array( - 'type' => 'ent', - 'siret' => '', - 'raisonSociale' => $raisonSociale, - 'numVoie' => $numAdresse, - 'voie' => $adresse, - 'cpVille' => $codePostal.' '.$ville, - 'actif' => $actif, - 'siege' => $siege, - 'fj' => $fj, - ); - if ($ape_etab<>'') $formR['naf']=$ape_etab; - - require_once 'Metier/sphinx/rechercheFonc.php'; - if ($uniquementAvecSiren=='') - $result = rechercheEnt($formR, $deb, $nbRep, $maxRep); - else - $result = rechercheEnt($formR, $deb, $nbRep, $maxRep, $uniquementAvecSiren); - - return $result; - } - - /** - * Recherche dirigeant - * @param string $nom - * @param string $prenom - * @param string $fonction - * @param string $dateNaiss - * @param string $villeNaiss - * @param number $deb - * @param integer $nbRep - * @param integer $maxRep - * @param string $pertinence - * @return array - */ - public function rechercheDir($nom, $prenom='', $fonction='', $dateNaiss='', $villeNaiss='', $deb=0, $nbRep=20, $maxRep=200, $pertinence=false) - { - debugLog('I',"rechercheDir de $nom, $prenom, $fonction, $dateNaiss, $villeNaiss (Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $jour=$mois=$annee=''; - if ($dateNaiss<>'' && $dateNaiss<>'//' && $dateNaiss<>'0/0/0') { - $tabDateNaiss=explode('/', $dateNaiss); - - $jour=$tabDateNaiss[0]*1; - if ($jour<1 || $jour>31) $jour=''; - - $mois =$tabDateNaiss[1]*1; - if ($mois<1 || $mois>12) $mois=''; - - $annee=$tabDateNaiss[2]*1; - if ($annee>0 && $annee<100) $annee=('19'.$annee)*1; - if ($annee<1800 || $annee>date('Y')*1) $annee=''; - } - $formR = array( - 'type' => 'dir', - 'nom' => $nom, - 'prenom' => $prenom, - 'dirDateNaissAAAA' => $annee, - 'dirDateNaissMM' => $mois, - 'dirDateNaissJJ' => $jour, - // 'departement' => 'D', - 'cpVille' => $villeNaiss, - ); - - $version = defined('SPHINX_DIR_VERSION') ? SPHINX_DIR_VERSION : 1; - $result = array(); - require_once 'Metier/sphinx/rechercheFonc.php'; - $result = rechercheDir($formR, $deb, $nbRep, $maxRep); - - return $result; - } - - /** - * - * @return multitype:Ambigous <> - */ - private function getTabCodeVoie() - { - return array( - 'ABE' => "Abbaye", - 'AGL' => "Agglomération", - 'AIRE' => "Aire", - 'ALL' => "Allée", - 'ALL' => "Allee", - 'ACH' => "Ancien chemin", - 'ART' => "Ancienne route", - 'ANSE' => "Anse", - 'ARC' => "Arcade", - 'AUT' => "Autoroute", - 'AV' => "Avenue", - 'BRE' => "Barrière", - 'BCH' => "Bas chemin", - 'BSTD' => "Bastide", - 'BAST' => "Baston", - 'BEGI' => "Beguinage", - 'BER' => "Berge", - 'BOIS' => "Bois", - 'BCLE' => "Boucle", - 'BD' => "Boulevard", - 'BRG' => "Bourg", - 'BUT' => "Butte", - 'CALE' => "Cale", - 'CAMP' => "Camp", - 'CGNE' => "Campagne", - 'CPG' => "Camping", - 'CARR' => "Carré", - 'CAU' => "Carreau", - 'CAR' => "Carrefour", - 'CARE' => "Carrière", - 'CST' => "Castel", - 'CAV' => "Cavée", - 'CTRE' => "Central", - 'CTRE' => "Centre", - 'CHL' => "Chalet", - 'CHP' => "Chapelle", - 'CHI' => "Charmille", - 'CHT' => "Château", - 'CHS' => "Chaussée", - 'CHE' => "Chemin", - 'CHV' => "Chemin vicinaux", - 'CHV' => "Chemin vicinal", - 'CHEM' => "Cheminement", - 'CITE' => "Cîte", - 'CLOI' => "Cloître", - 'CLOS' => "Clos", - 'COL' => "Col", - 'COLI' => "Colline", - 'CTR' => "Contour", - 'COR' => "Corniche", - 'COTE' => "Côte", - 'COTT' => "Cottage", - 'COUR' => "Cour", - 'CRS' => "Cours", - 'DARS' => "Darse", - 'DEG' => "Degré", - 'DSG' => "Descente", - 'DSC' => "Descente", - 'DIG' => "Digue", - 'DOM' => "Domaine", - 'ECA' => "Ecart", - 'ECL' => "Ecluse", - 'EGL' => "Eglise", - 'EN' => "Enceinte", - 'ENV' => "Enclave", - 'ENC' => "Enclos", - 'ESC' => "Escalier", - 'ESPA' => "Espace", - 'ESP' => "Esplanade", - 'ETING' => "Etang", - 'FG' => "Faubourg", - 'FRM' => "Ferme", - 'FON' => "Fontaine", - 'FORT' => "Fort", - 'FORM' => "Forum", - 'FOS' => "Fosse", - 'FOYR' => "Foyer", - 'GAL' => "Galerie", - 'GARE' => "Gare", - 'GARN' => "Garenne", - 'GBD' => "Grand boulevard", - 'GDEN' => "Grande ensemble", - 'GR' => "Grande rue", - 'GRI' => "Grille", - 'GRIM' => "Grimpette", - 'GPE' => "Groupe", - 'GPT' => "Groupement", - 'HLE' => "Halle", - 'HAM' => "Hameau", - 'HCH' => "Haut chemin", - 'HIP' => "Hippodrome", - 'HLM' => "HLM", - 'ILE' => "Ile", - 'IMM' => "Immeuble", - 'IMP' => "Impasse", - 'JARD' => "Jardin", - 'JTE' => "Jetée", - 'LEVE' => "Levée", - 'LD' => "Lieu dit", - 'LD' => "Lieudit", - 'LOT' => "Lotissement", - 'MAIL' => "Mail", - 'MF' => "Maison forestière", - 'MAN' => "Manoir", - 'MAR' => "Marche", - 'MAS' => "Mas", - 'MET' => "Métro", - 'MTE' => "Montée", - 'MLN' => "Moulin", - 'MUS' => "Musée", - 'NTE' => "Nouvelle route", - 'PAL' => "Palais", - 'PARC' => "Parc", - 'PKG' => "Parking", - 'PRV' => "Parvis", - 'PAS' => "Passage", - 'PN' => "Passage à niveau", - 'PASS' => "Passe", - 'PLE' => "Passerelle", - 'PAT' => "Patio", - 'PAV' => "Pavillon", - 'PERI' => "Périphérique", - 'PSTY' => "Péristyle", - 'PTA' => "Petites allée", - 'PCH' => "Petit chemin", - 'PAE' => "Petite avenue", - 'PIM' => "Petite impasse", - 'PRT' => "Petite route", - 'PTR' => "Petite rue", - 'PL' => "Place", - 'PLCI' => "Placis", - 'PLAG' => "Plage", - 'PLN' => "Plaine", - 'PLAN' => "Plan", - 'PLT' => "Plateau", - 'PNT' => "Pointe", - 'PONT' => "Pont", - 'PCH' => "Porche", - 'PORT' => "Port", - 'PTE' => "Porte", - 'PORQ' => "Portique", - 'POT' => "Poterne", - 'POUR' => "Pourtour", - 'PRE' => "Pré", - 'PRQ' => "Presqu'île", - 'PROM' => "Promenade", - 'QU' => "Quai", - 'QUAI' => "Quai", - 'QUA' => "Quartier", - 'RAC' => "Raccourci", - 'RAID' => "Raidillon", - 'RPE' => "Rampe", - 'REM' => "Rempart", - 'RES' => "Résidence", - 'ROC' => "Roc", - 'ROC' => "Rocade", - 'RPT' => "Rond point", - 'ROQT' => "Roquet", - 'RTD' => "Rotonde", - 'RTE' => "Route", - 'R' => "Rue", - 'RUE' => "Rue", - 'RLE' => "Ruelle", - 'SEN' => "Sente", - 'SEN' => "Sentier", - 'SQ' => "Square", - 'STDE' => "Stade", - 'STA' => "Station", - 'TPL' => "Terre plein", - 'TRN' => "Terrain", - 'TSSE' => "Terrasse", - 'TRT' => "Tertre", - 'TOUR' => "Tour", - 'TRA' => "Traverse", - 'VAL' => "Vallon", - 'VAL' => "Vallée", - 'VEN' => "Venelle", - 'VIA' => "Via", - 'VTE' => "Vieille route", - 'VCHE' => "Vieux chemin", - 'VLA' => "Villa", - 'VGE' => "Village", - 'VLGE' => "Village", - 'VOI' => "Voie", - 'VOIE' => "Voie", - 'ZONE' => "Zone", - 'ZAC' => "Zone d'aménagement concerté", - 'Z A C' => "Zone d'aménagement concerté", - 'ZAD' => "Zone d'aménagement différé", - 'Z A D' => "Zone d'aménagement différé", - 'ZA' => "Zone artisanale", - 'Z A' => "Zone artisanale", - 'ZI' => "Zone industrielle", - 'Z I' => "Zone industrielle", - 'ZUP' => "Zone à urbaniser en priorité", - 'Z U P' => "Zone à urbaniser en priorité", - ); - } - - /** - * Vérifie si le code voie est une abréviation autorisée (selon la Norme AFNOR XP Z 10-011) - * @param string $codeVoie - * @return boolean - */ - public function isCodeVoie($codeVoie) { - return array_key_exists($codeVoie, $this->tabCodeVoie); - } - - /** Retourne le libellé du code voie selon les abréviations autorisées pour les types de voie (Norme AFNOR XP Z 10-011) - ** @param string Code voie - ** @return string Libellé de la voie - **/ - public function getCodeVoie($codeVoie) - { - return $this->tabCodeVoie[$codeVoie]; - } - - /** - * Initialise la table des codes NAF 4 et 5 positions - */ - private function setTabCodesNaf() - { - if (count($this->tabCodesNaf)==0) { - $cacheNaf = dirname(__FILE__) . DIRECTORY_SEPARATOR . 'Cache' . DIRECTORY_SEPARATOR . 'CodesNaf.php'; - $cacheNace = dirname(__FILE__) . DIRECTORY_SEPARATOR . 'Cache' . DIRECTORY_SEPARATOR . 'CodesNace.php'; - if ( file_exists($cacheNaf) ) { - $this->tabCodesNaf = include $cacheNaf; - $this->tabCodesNace = include $cacheNace; - } else { - $tabNafs = $tabNace = array(); - $tabTmp = $this->iDb->select('tabNaf4', 'codNaf700 AS naf, libNaf700 AS LibNaf', 1, false, MYSQL_ASSOC); - foreach ($tabTmp as $i=>$tabNaf) { - $tabNafs[$tabNaf['naf']]=$tabNaf['LibNaf']; - } - - $tabTmp = $this->iDb->select('tabNaf5', 'codNaf5 AS naf, libNaf5 AS LibNaf, codNaf1', 1, false, MYSQL_ASSOC); - foreach ($tabTmp as $i=>$tabNaf) { - $tabNafs[$tabNaf['naf']]=$tabNaf['LibNaf']; - $tabNace[$tabNaf['naf']]=$tabNaf['codNaf1'].preg_replace('/^0/','',substr($tabNaf['naf'],0,4)); - } - $this->tabCodesNaf = $tabNafs; - $this->tabCodesNace = $tabNace; - } - } - } - - /** - * - * @param unknown $code_naf - * @return array - */ - public function getLibelleNaf($code_naf) - { - if ($code_naf == '') - return ''; - - $this->setTabCodesNaf(); - return $this->tabCodesNaf[$code_naf]; - - } - - public function getCodesNaf() - { - $this->setTabCodesNaf(); - return array_keys($this->tabCodesNaf); - } - - /** Initialise la table des codes NAFA rev 2 - **/ - private function setTabCodesNafa() - { - if (count($this->tabCodesNafa)==0) { - $cache = dirname(__FILE__) . DIRECTORY_SEPARATOR . 'Cache' . DIRECTORY_SEPARATOR . 'CodesNafa.php'; - if ( file_exists($cache) ) { - $this->tabCodesNafa = include $cache; - } else { - $tabNafs=array(); - $tabTmp=$this->iDb->select( 'tabNafa', 'codNafa AS nafa, libNafa', 1, true, MYSQL_ASSOC); - foreach ($tabTmp as $i=>$tabNaf) - $tabNafs[$tabNaf['nafa']]=$tabNaf['libNafa']; - $this->tabCodesNafa=$tabNafs; - } - } - } - public function getLibelleNafa($code_nafa) - { - if ($code_nafa == '') - return ''; - - $this->setTabCodesNafa(); - return $this->tabCodesNafa[$code_nafa]; - } - - public function getEvenements($siren, $nic=0, $iDeb=0, $iMax=1000) - { - global $tabEvenInsee; - global $tabDestinat; - global $tabTypEtab; - $tabRet=$tabId=array(); - - $strNic=''; - if ($nic*1>0) $strNic=" AND insNIC=$nic "; - - $insee=$this->iDbInsee->select('insee_even', 'id, insSIREN, siretValide, insNIC, insLIBCOM, insSIEGE, insAUXILT, insORIGINE, insTEFET, insAPET700, insAPRM, insMODET, insMARCHET, insSAISONAT, insACTIVNAT, insENSEIGNE, insL1_NOMEN, insL2_COMP, insL4_VOIE, insL3_CADR, insNUMVOIE, insINDREP, insTYPVOIE, insLIBVOIE, insL5_DISP, insL6_POST, insCODPOS, insL7_ETRG, insRPET, insDEPCOM, insCODEVOIE, insDREACTET, insEXPLET, insDAPET, insLIEUACT, insACTISURF, insDEFET, insTEL, insCJ, insCIVILITE, insTEFEN, insAPEN700, insMODEN, insMARCHEN, insNOMEN, insTYPCREH, insEVE, insDATEVE, insTRAN, insNICTRAN, insMNICSIEGE, insMNOMEN, insMCJ, insMAPEN, insFiller1, insFiller2, insMMARCHEN, insMORDIN, insEFENCENT, insSIGLE, insNBETEXPL, insNICSIEGE, insDEPCOMEN, insFiller3, insMENSEIGNE, insMAPET, insMNATURE, insMADRESSE, insMEFET, insMSINGT, insMTELT, insMMARCHET, insMAUXILT, insSINGT, insEFETCENT, insSIRETPS, insDESTINAT, insDATEMAJ, idFlux, dirNom, dirNomUsage, dirPrenom, insDCRET, insDCREN, insPRODPART, insSIRETASS, insDREACTEN, insEXPLEN, insFiller4, insDEFEN, insMONOREG, insREGIMP, insMONOACT, insMSIGLE, insMEXPLEN, insRPEN, insMEXPLET, insTYPETAB, insDAPEN', "insSIREN=$siren $strNic ORDER BY insDATEMAJ DESC LIMIT $iDeb, $iMax",false, MYSQL_ASSOC); - if (count($insee)>0){ - foreach ($insee as $i=>$even) { - $tabSiren[$even['insDATEVE']] = array( - 'rs'=>$even['insNOMEN'], - 'sigle'=>$even['insSIGLE'], - 'ape'=>$even['insAPEN700'], - 'nic'=>$even['insNICSIEGE'], - 'cj'=>$even['insCJ'], - ); - $tabSiret[$even['insNIC']][$even['insDATEVE']] = array( - 'ens'=>$even['insENSEIGNE'], - 'ape'=>$even['insAPET700'], - 'adresse'=>$even['insL2_COMP'].' '.$even['insL3_CADR'].' '.$even['insL4_VOIE'].' '.$even['insL5_DISP'].' '.$even['insL6_POST'].' '.$even['insL7_ETRG'], - 'effectif'=>$even['insEFENCENT'].' (Tranche '.$even['insTEFET'].')', - ); - } - } - if (count($insee)>0){ - foreach ($insee as $i=>$even) { - $tabId[]=$even['id']; - $libDet=''; - if ($even['insMNOMEN']==1) { - $libDet.='Modification de la raison sociale : '.$even['insNOMEN']; - $strPre=getInfoPrecedente($tabSiren, $even['insDATEVE'], 'rs'); - if ($strPre<>'' && $strPre<>$even['insNOMEN']) $libDet.=" (Précédent : $strPre)"; - $libDet.=', '; - } - if ($even['insMENSEIGNE']==1) { - $libDet.='Modification de l\'enseigne : '.$even['insENSEIGNE']; - $strPre=getInfoPrecedente($tabSiret[$even['insNIC']], $even['insDATEVE'], 'ens'); - if ($strPre<>'' && $strPre<>$even['insENSEIGNE']) $libDet.=" (Précédent : $strPre)"; - $libDet.=', '; - } - if ($even['insMSIGLE']==1) { - $libDet.='Modification du sigle : '.$even['insSIGLE']; - $strPre=getInfoPrecedente($tabSiren, $even['insDATEVE'], 'sigle'); - if ($strPre<>'' && $strPre<>$even['insSIGLE']) $libDet.=" (Précédent : $strPre)"; - $libDet.=', '; - } - if ($even['insMAPEN']==1) { - $libDet.='Modification de l\'activité de l\'entreprise : '.$even['insAPEN700'].' - '.$this->getLibelleNaf($even['insAPEN700']); - $strPre=getInfoPrecedente($tabSiren, $even['insDATEVE'], 'ape'); - if ($strPre<>'' && $strPre<>$even['insAPEN700']) $libDet.=" (Précédent : $strPre - ".$this->getLibelleNaf($strPre).')'; - $libDet.=', '; - } - if ($even['insMAPET']==1) { - $libDet.='Modification de l\'activité de l\'établissement : '.$even['insAPET700'].' - '.$this->getLibelleNaf($even['insAPET700']); - $strPre=getInfoPrecedente($tabSiret[$even['insNIC']], $even['insDATEVE'], 'ape'); - if ($strPre<>'' && $strPre<>$even['insAPET700']) $libDet.=" (Précédent : $strPre - ".$this->getLibelleNaf($strPre).')'; - $libDet.=', '; - } - if ($even['insMNICSIEGE']==1) { - $libDet.='Modification du nic du siège : '.$even['insNICSIEGE']; - $strPre=getInfoPrecedente($tabSiren, $even['insDATEVE'], 'nic'); - if ($strPre<>'' && $strPre<>$even['insNICSIEGE']) $libDet.=" (Précédent : $strPre)"; - $libDet.=', '; - } - if ($even['insMADRESSE']==1) { - $libDet.='Modification de l\'adresse : '.$even['insL2_COMP'].' '.$even['insL3_CADR'].' '.$even['insL4_VOIE'].' '.$even['insL5_DISP'].' '.$even['insL6_POST'].' '.$even['insL7_ETRG']; - $strPre=getInfoPrecedente($tabSiret[$even['insNIC']], $even['insDATEVE'], 'adresse'); - if ($strPre<>'' && $strPre<>$even['insL2_COMP'].' '.$even['insL3_CADR'].' '.$even['insL4_VOIE'].' '.$even['insL5_DISP'].' '.$even['insL6_POST'].' '.$even['insL7_ETRG']) $libDet.=" (Précédent : $strPre)"; - $libDet.=', '; - } - if ($even['insMEFET']==1) $libDet.='Modification de l\'effectif : '.$even['insEFENCENT'].' (Tranche '.$even['insTEFET'].'), '; - if ($even['insEXPLET']=='O') $strTmp='Exploitant'; - elseif ($even['insEXPLET']=='N')$strTmp='Non exploitant participant au système productif'; - elseif ($even['insEXPLET']=='X')$strTmp='Non exploitant ne participant pas au système productif'; - if ($even['insMEXPLET']==1) $libDet.='Modification du caractère exploitant de l\'établissement : '.$strTmp.', '; - if ($even['insEXPLEN']=='O') $strTmp='Exploitant'; - elseif ($even['insEXPLEN']=='N')$strTmp='Non exploitant participant au système productif'; - elseif ($even['insEXPLEN']=='X')$strTmp='Non exploitant ne participant pas au système productif'; - if ($even['insMEXPLEN']==1) $libDet.='Modification du caractère exploitant de l\'entreprise : '.$strTmp.', '; - if ($even['insMCJ']==1) { - $libDet.='Modification de la forme juridique : '.$even['insCJ'].' - '.$this->getLibelleFJ($even['insCJ']); - $strPre=getInfoPrecedente($tabSiret[$even['insNIC']], $even['insDATEVE'], 'cj'); - if ($strPre<>'' && $strPre<>$even['insCJ']) $libDet.=" (Précédent : $strPre - ".$this->getLibelleFJ($even['insCJ']).')'; - $libDet.=', '; - } - if ($even['insAUXILT']==1) $strTmp='Auxiliaire'; - else $strTmp='Non auxiliaire'; - if ($even['insMAUXILT']==1) $libDet.='Modification du caractère auxiliaire de l\'établissement : '.$strTmp.', '; - - if (trim($even['insDESTINAT'])<>'' && $even['insDESTINAT']<>'NR' && $even['insDESTINAT']*1<>9) - $libDet.=$tabDestinat['i'.trim($even['insDESTINAT'])].', '; - - $libDet.=$tabTypEtab['i'.trim($even['insTYPETAB'])].', '; - - $typeSiretAss=''; - $siretAss=$even['insSIRETASS']; - switch ($even['insPRODPART']*1) { - case 1: $typeSiretAss='Loueur de fond'; break; - case 2: $typeSiretAss='Locataire du fond'; break; - case 3: $typeSiretAss='Prestataire de personnel'; break; - } - if ($siretAss*1==0) { - $tabPS=array(); - $siretAss=$even['insSIRETPS']; - if ($siretAss*1>0) - $tabPS=$this->getIdentiteLight(substr($siretAss,0,9)); - $tabEt=$this->getIdentiteLight($siren); - // 'Nom'=>$etab['raisonSociale'], - if ($tabPS['actif']==1 && $tabEt['actif']==0) $typeSiretAss='Successeur'; - elseif ($tabPS['actif']==0 && $tabEt['actif']==1) $typeSiretAss='Prédécesseur'; - else $typeSiretAss='Prédécesseur ou Successeur'; - } - - $dateEve=$even['insDATEVE']; - $dateMaj=$even['insDATEMAJ']; - if (str_replace('-','',$dateEve*1)==0) $dateEve=$dateMaj; - - $tabRet[]=array('codeEven' => 'I'.$even['insEVE'], - 'nic' => $even['insNIC'], - 'siretAssocie'=>$siretAss, - 'typeSiretAss'=>$typeSiretAss, - 'siege' => $even['insSIEGE'], - 'libEven' => $tabEvenInsee['i'.trim($even['insEVE'])], - 'libEvenDet'=> substr($libDet,0,-2), - 'dateMAJ' => $dateMaj, - 'dateEven' => $dateEve, - ); - } - } - - /** Recherche d'évènement pour lesquels le SIREN est ASSOCIE **/ - $siretDeb=$siren.'00000'; - $siretFin=$siren.'99999'; - $insee=$this->iDbInsee->select('insee_even', 'id, insSIREN, siretValide, insNIC, insLIBCOM, insSIEGE, insAUXILT, insORIGINE, insTEFET, insAPET700, insAPRM, insMODET, insMARCHET, insSAISONAT, insACTIVNAT, insENSEIGNE, insL1_NOMEN, insL2_COMP, insL4_VOIE, insL3_CADR, insNUMVOIE, insINDREP, insTYPVOIE, insLIBVOIE, insL5_DISP, insL6_POST, insCODPOS, insL7_ETRG, insRPET, insDEPCOM, insCODEVOIE, insDREACTET, insEXPLET, insDAPET, insLIEUACT, insACTISURF, insDEFET, insTEL, insCJ, insCIVILITE, insTEFEN, insAPEN700, insMODEN, insMARCHEN, insNOMEN, insTYPCREH, insEVE, insDATEVE, insTRAN, insNICTRAN, insMNICSIEGE, insMNOMEN, insMCJ, insMAPEN, insFiller1, insFiller2, insMMARCHEN, insMORDIN, insEFENCENT, insSIGLE, insNBETEXPL, insNICSIEGE, insDEPCOMEN, insFiller3, insMENSEIGNE, insMAPET, insMNATURE, insMADRESSE, insMEFET, insMSINGT, insMTELT, insMMARCHET, insMAUXILT, insSINGT, insEFETCENT, insSIRETPS, insDESTINAT, insDATEMAJ, idFlux, dirNom, dirNomUsage, dirPrenom, insDCRET, insDCREN, insPRODPART, insSIRETASS, insDREACTEN, insEXPLEN, insFiller4, insDEFEN, insMONOREG, insREGIMP, insMONOACT, insMSIGLE, insMEXPLEN, insRPEN, insMEXPLET, insTYPETAB, insDAPEN, ROUND(insSIRETASS/100000) AS sirenAss', "insSIRETASS BETWEEN $siretDeb AND $siretFin GROUP BY insSIREN, sirenAss ORDER BY insDATEMAJ DESC LIMIT 0,4500",false, MYSQL_ASSOC); - foreach ($insee as $i=>$even) { - if (in_array($even['id'], $tabId)) - continue; - else - $tabId[]=$even['id']; - $libDet='';/* - if ($even['insMNOMEN']==1) $libDet.='Modification de la raison sociale : '.$even['insNOMEN'].', '; - if ($even['insMENSEIGNE']==1) $libDet.='Modification de l\'enseigne : '.$even['insENSEIGNE'].', '; - if ($even['insMSIGLE']==1) $libDet.='Modification du sigle : '.$even['insSIGLE'].', '; - if ($even['insMAPEN']==1) $libDet.='Modification de l\'activité de l\'entreprise : '.$even['insAPEN700'].', '; - if ($even['insMAPET']==1) $libDet.='Modification de l\'activité de l\'établissement : '.$even['insAPET700'].', '; - if ($even['insMADRESSE']==1) $libDet.='Modification de l\'adresse : '.$even['insL2_COMP'].' '.$even['insL3_CADR'].' '.$even['insL4_VOIE'].' '.$even['insL5_DISP'].' '.$even['insL6_POST'].' '.$even['insL7_ETRG'].', '; - if ($even['insMEFET']==1) $libDet.='Modification de l\'effectif : '.$even['insEFENCENT'].' (Tranche '.$even['insTEFET'].'), '; - if (trim($even['insDESTINAT'])<>'' && $even['insDESTINAT']<>'NR' && $even['insDESTINAT']*1<>9) - $libDet.=$tabDestinat['i'.trim($even['insDESTINAT'])].', '; - - $libDet.=$tabTypEtab['i'.trim($even['insTYPETAB'])].', '; - */ - $typeSiretAss=''; - switch ($even['insPRODPART']*1) { - case 2: $typeSiretAss='Loueur de fond'; break; - case 1: $typeSiretAss='Locataire du fond'; break; - case 3: $typeSiretAss='Client en delegation de personnel'; break; - } - /*if ($siretAss*1==0) { - $tabPS=array(); - $siretAss=$even['insSIRETPS']; - if ($siretAss*1>0) - $tabPS=$this->getIdentiteLight(substr($siretAss,0,9)); - $tabEt=$this->getIdentiteLight($siren); - // 'Nom'=>$etab['raisonSociale'], - if ($tabPS['actif']==1 && $tabEt['actif']==0) $typeSiretAss='Successeur'; - elseif ($tabPS['actif']==0 && $tabEt['actif']==1) $typeSiretAss='Prédécesseur'; - else $typeSiretAss='Prédécesseur ou Successeur'; - }*/ - - $dateEve=$even['insDATEVE']; - $dateMaj=$even['insDATEMAJ']; - if (str_replace('-','',$dateEve*1)==0) $dateEve=$dateMaj; - - $tabRet[]=array('codeEven' => 'I'.$even['insEVE'], - 'nic' => substr($even['insSIRETASS'],9,5), - 'siretAssocie'=>''.$even['insSIREN'].$even['insNIC'], - 'typeSiretAss'=>$typeSiretAss, - 'siege' => $even['insSIEGE'], - 'libEven' => "Modification d'une entreprise/établissement lié",//$tabEvenInsee['i'.trim($even['insEVE'])], - 'libEvenDet'=> '',//substr($libDet,0,-3), - 'dateMAJ' => $dateMaj, - 'dateEven' => $dateEve, - ); - } - - /** Recherche d'évènement pour lesquels le SIREN est Prédécesseur ou Successeur **/ - $siretDeb=$siren.'00000'; - $siretFin=$siren.'99999'; - $insee=$this->iDbInsee->select('insee_even', 'id, insSIREN, siretValide, insNIC, insLIBCOM, insSIEGE, insAUXILT, insORIGINE, insTEFET, insAPET700, insAPRM, insMODET, insMARCHET, insSAISONAT, insACTIVNAT, insENSEIGNE, insL1_NOMEN, insL2_COMP, insL4_VOIE, insL3_CADR, insNUMVOIE, insINDREP, insTYPVOIE, insLIBVOIE, insL5_DISP, insL6_POST, insCODPOS, insL7_ETRG, insRPET, insDEPCOM, insCODEVOIE, insDREACTET, insEXPLET, insDAPET, insLIEUACT, insACTISURF, insDEFET, insTEL, insCJ, insCIVILITE, insTEFEN, insAPEN700, insMODEN, insMARCHEN, insNOMEN, insTYPCREH, insEVE, insDATEVE, insTRAN, insNICTRAN, insMNICSIEGE, insMNOMEN, insMCJ, insMAPEN, insFiller1, insFiller2, insMMARCHEN, insMORDIN, insEFENCENT, insSIGLE, insNBETEXPL, insNICSIEGE, insDEPCOMEN, insFiller3, insMENSEIGNE, insMAPET, insMNATURE, insMADRESSE, insMEFET, insMSINGT, insMTELT, insMMARCHET, insMAUXILT, insSINGT, insEFETCENT, insSIRETPS, insDESTINAT, insDATEMAJ, idFlux, dirNom, dirNomUsage, dirPrenom, insDCRET, insDCREN, insPRODPART, insSIRETASS, insDREACTEN, insEXPLEN, insFiller4, insDEFEN, insMONOREG, insREGIMP, insMONOACT, insMSIGLE, insMEXPLEN, insRPEN, insMEXPLET, insTYPETAB, insDAPEN, ROUND(insSIRETPS/100000) AS sirenAss', "insSIRETPS BETWEEN $siretDeb AND $siretFin GROUP BY insSIREN, sirenAss ORDER BY insDATEMAJ DESC LIMIT 0,4500",false, MYSQL_ASSOC); - foreach ($insee as $i=>$even) { - if (in_array($even['id'], $tabId)) - continue; - else - $tabId[]=$even['id']; - $libDet=''; - - $typeSiretAss='Prédécesseur ou Successeur'; - $dateEve=$even['insDATEVE']; - $dateMaj=$even['insDATEMAJ']; - if (str_replace('-','',$dateEve*1)==0) $dateEve=$dateMaj; - - $tabRet[]=array('codeEven' => 'I'.$even['insEVE'], - 'nic' => substr($even['insSIRETPS'],9,5), - 'siretAssocie'=>''.$even['insSIREN'].$even['insNIC'], - 'typeSiretAss'=>$typeSiretAss, - 'siege' => $even['insSIEGE'], - 'libEven' => "Modification d'une entreprise/établissement lié",//$tabEvenInsee['i'.trim($even['insEVE'])], - 'libEvenDet'=> '',//substr($libDet,0,-3), - 'dateMAJ' => $dateMaj, - 'dateEven' => $dateEve, - ); - } - return $tabRet; - } - - public function getLibelleFJ($code_forme_juridique, $court=false) - { - $fj=$code_forme_juridique*1; - if ($fj>0 && $fj<10000) { - $tmp=$this->iDb->select('tabFJur', 'libelle AS LibFJ, libelleCourt AS LibCourt', "code=$fj", false, MYSQL_ASSOC); - $libLong =@$tmp[0]['LibFJ']; - $libCourt=@$tmp[0]['LibCourt']; - if ($court) { - if ($libCourt=='') { - if (strlen($libLong)>20) return substr($libLong,0,17).'...'; - else return $libLong; - } - return $libCourt; - } - else - return $libLong; - } - if ($court) return "En chiffrement"; - return 'En instance de chiffrement'; - } - - /** - * - * @return array - */ - public function getCodesFJ() - { - $tabFJ = array(); - $cache = dirname(__FILE__) . DIRECTORY_SEPARATOR . 'Cache' . DIRECTORY_SEPARATOR . 'CodesFJ.php'; - if ( file_exists($cache) ) { - $tabFJ = include $cache; - } else { - $tabTmp=$this->iDb->select('tabFJur', 'code AS FJ, libelle AS libFJ', 'code>=1000', false, MYSQL_ASSOC); - foreach ($tabTmp as $i=>$tabCJ) - $tabFJ[$tabCJ['FJ']]=str_replace('"','\"',$tabCJ['libFJ']); - } - - return array_keys($tabFJ); - } - - /** Découpe une ligne d'adresse textuelle en un tableau contenant les différentes composantes de l'adresse - **
    Array (
    -	 **      [adrComp0] => Maison des associations
    -	 **      [num]      => 33
    -	 **      [typeVoie] => R
    -	 **      [libVoie]  => Louis Blanc
    -	 **      [cp]		=> ...
    -	 **      [ville]	=> ... Si contenu dans l'adresse
    -	 ** )
    - ** - ** @param string $strLigneDAdresse La ligne d'adresse textuelle (ex : Maison des associations, 33 rue Louis Blanc - ** @return array tableau contenant l'adresse structurée ici - **/ - public function structureVoie($strLigneDAdresse) - { - $tabRet=$tabAdr=array(); - $strLigneDAdresse=trim($strLigneDAdresse); - if ($strLigneDAdresse=='') return $tabRet; - $tabLignes=explode(',', preg_replace('/,$/', '', $strLigneDAdresse)); - foreach ($tabLignes as $strLigneDAdresse) { - $strLigneDAdresse=trimAccent($strLigneDAdresse); - $strLigneDAdresse=preg_replace('/[^0-9a-zA-Z]/', ' ', $strLigneDAdresse); - $strLigneDAdresse=trim(preg_replace('/ +/', ' ', $strLigneDAdresse)); - //echo "1. Adresse nettoyées = $strLigneDAdresse".EOL; - $adrAvecCP=preg_match("/(.*)([0-9]{5,5}|[0-9][0-9] [0-9]{3,3})([\D]*)/", $strLigneDAdresse, $tabAdrTmp); - if ($adrAvecCP) { - //echo "Adresse avec Code Postal\n"; - //print_r($tabAdrTmp); - $strLigneDAdresse=trim($tabAdrTmp[1]); - $tabRet['cp']=$tabAdrTmp[2]; - $tabRet['ville']=trim(strtoupper($tabAdrTmp[3])); - }// else echo "Adresse sans Code Postal\n"; - $adrAvecNum=preg_match("/^([0-9]{1,4})(.*)/", $strLigneDAdresse, $tabAdrTmp); - if ($adrAvecNum) { - //echo "Adresse avec Numéro de voie\n"; - //print_r($tabAdrTmp); - $tabRet['num']=$tabAdrTmp[1]; - if (preg_match("/^\b(B|BIS|T|TER|Q|a|c|d|e|f|g|h|i|j|k|l|m|n|o|p|r|s)\b(.*)/i", $tabAdrTmp[2], $tabAdrTmp2)) - { //echo "Adresse avec Bis, Ter, Q...\n"; - //print_r($tabAdrTmp2); - $tabRet['indRep']=trim($tabAdrTmp2[1]); $typeVoie=trim($tabAdrTmp2[2]);} - else $typeVoie=trim($tabAdrTmp[2]); - } else $typeVoie=trim($strLigneDAdresse); - // On récupère le type de voie si possible et le libellé de la voie - $voieTrouvee=false; - foreach ($this->tabCodeVoie as $code=>$voie) { - if (preg_match("/^($voie |$voie".'s '."|$code )(.*)/i", $typeVoie, $tabAdrTmp)) { - //echo "Adresse avec type de voie\n"; - //print_r($tabAdrTmp); - $tabRet['typeVoie']=$code; - $tabRet['libVoie']=trim(strtoupper($tabAdrTmp[2])); - $voieTrouvee=true; - break; - } - } - if (!$voieTrouvee) $tabAdr[]=$typeVoie; - } - foreach ($tabAdr as $k=>$ligne) - $tabRet['adrComp'.$k]=trim(strtoupper($ligne)); - - if (!isset($tabRet['libVoie'])) { $tabRet['libVoie']=$ligne; unset($tabRet['adrComp'.$k]); } - - if (isset($tabRet['adrComp0'])) { - if ($tabRet['adrComp0']=='BIS' || $tabRet['adrComp0']=='B') { - $tabRet['indRep']='B'; - $tabRet['adrComp0']=''; - } elseif ($tabRet['adrComp0']=='TER' || $tabRet['adrComp0']=='T') { - $tabRet['indRep']='T'; - $tabRet['adrComp0']=''; - } - } - - return $tabRet; - } - - /** - * Liste des établissements par siren/nic - * @param string $siren - * @param string $nic - * @param int $deb - * @param int $nbRep - * @param int $maxRep - * @param int $dep - * @param int $actif - * @param int $siege - */ - public function getEtablissements($siren, $nic='', $deb=0, $nbRep=20, $maxRep=200, $dep=0, $actif=-1, $siege=null) - { - $this->setTabCodesNaf(); - $deb=$deb*1; - $dep=$dep*1; - $nbRep=$nbRep*1; - - $strInfo=''; - - $limit="LIMIT $deb, $nbRep"; - - $sqlInfo="e.id, e.source, e.source_id, e.triCode, e.autre_id, e.siren, e.nic, e.siege, ". - "e.raisonSociale, e.enseigne, e.sigle, e.adr_num, e.adr_btq, e.adr_typeVoie, e.adr_libVoie, ". - "e.adr_comp, e.adr_cp, e.adr_ville, e.adr_dep, e.adr_com, e.tel, e.fax, e.cj, e.ape_etab, e.ape_entrep, e.teff_etab, ". - "CONCAT(e.siren, e.nic) as siret, e.actif, e.identite_pre, IF(e.siege=2,0.5,e.siege) AS triSiege"; - - $strActif=''; - if (intval($actif)==1) $strActif=' AND e.actif=1 '; - elseif (intval($actif)==0) $strActif=' AND e.actif=0 '; - - $strSiege=''; - if ($siege===null) $strSiege=''; - elseif ($siege==1) $strSiege='AND e.siege=1 '; - elseif ($siege==0) $strSiege='AND e.siege IN(0,2) '; - - //Search with "departement" - if ($dep>0 && $dep<99999) { - - if ($dep<96) $strDep='AND adr_cp BETWEEN '.$dep.'000 AND '.$dep.'999'; - elseif ($dep>9999) $strDep="AND adr_cp BETWEEN $dep AND $dep"; - else $strDep='AND adr_cp BETWEEN '.$dep.'00 AND '.$dep.'99'; - - $tabTmp=$this->iDb->select('etablissements e', 'count(*)', "siren=$siren $strDep $strActif $strSiege"); - $nbTot=$tabTmp[0][0]; - - $listeEtab=$this->iDb->select('etablissements e', $sqlInfo, - "siren=$siren $strDep $strActif $strSiege ORDER BY triSiege DESC, e.actif DESC,e.nic DESC $limit", false, MYSQL_ASSOC); - - } - //Search without NIC - elseif ($nic=='') { - - $tabTmp=$this->iDb->select('etablissements e', 'count(*)', "siren=$siren $strActif $strSiege"); - $nbTot=$tabTmp[0][0]; - - $listeEtab=$this->iDb->select('etablissements e', $sqlInfo, - "e.siren=$siren $strActif $strSiege ORDER BY triSiege DESC, e.actif DESC, e.nic DESC $limit", false, MYSQL_ASSOC); - - } - //Search with NIC - else { - - $tabTmp=$this->iDb->select('etablissements e', 'count(*)', "siren=$siren AND (nic=$nic OR siege=1) $strActif $strSiege"); - $nbTot=$tabTmp[0][0]; - $listeEtab=$this->iDb->select('etablissements e', $sqlInfo, - "siren=$siren AND (nic=$nic OR siege=1) $strActif $strSiege ORDER BY triSiege DESC, e.actif DESC, e.nic DESC $limit", false, MYSQL_ASSOC); - - } - - // - if ($nbTot==0 && $actif==-1) { - - require_once 'Metier/sphinx/rechercheFonc.php'; - $liste = verificationDuSiret($siren); - if ($liste != false) { - //print 'Essayez :
    '; - $listeSiren=array(); - foreach ($liste as $s) { - if (sommeDeControle($s) != 0) { - //print 'erreur somme de controle sur '.$s.' ('.sommeDeControle($s).')
    '; - } else { - $listeSiren[]=$s; - } - } - $strSiren=implode(',',$listeSiren); - $tabTmp=$this->iDb->select('etablissements', 'count(*)', "siren IN ($strSiren) AND siege=1"); - $nbTot=$tabTmp[0][0]; - $listeEtab=$this->iDb->select('etablissements e', $sqlInfo, - "siren IN ($strSiren) AND siege=1 ORDER BY e.rang DESC, e.actif DESC, e.nic ASC $limit", true, MYSQL_ASSOC); - $strInfo='Siren saisi invalide'; - } - } - - foreach ($listeEtab as $etab) { - $tel=sprintf('%010d', strtr($etab['tel'],array('-'=>'', '/'=>'','.'=>'',','=>''))); - if ($tel<>'0000000000') $tel=implode('.', str_split($tel,2)); - else $tel=''; - - $fax=sprintf('%010d', strtr($etab['fax'],array('-'=>'', '/'=>'','.'=>'',','=>''))); - if ($fax<>'0000000000') $fax=implode('.', str_split($fax,2)); - else $fax=''; - - $nom=trim($etab['raisonSociale']); - // Cas des noms vides à l'INSEE (une centaine) - if ($nom=='') $nom=@preg_replace('/,.*$/','',$etab['identite_pre']); - - $pays = 'France'; - if ( $etab['adr_dep']==99 ) { - $resultPays = $this->iDb->select("tabPays", "libPays", "codePaysInsee = ".$etab['adr_com'], false, MYSQL_ASSOC); - $pays = $resultPays[0]['libPays']; - } - - $tabRet[] = array( - 'Localisation' => $etab['Loc'], - 'id' => $etab['id'], - 'Pertinence' => 100, - 'Siret' => $etab['siret'], - 'Siege' => $etab['siege'], - 'Nom' => $nom, - 'Sigle' => $etab['sigle'], - 'Enseigne' => $etab['enseigne'], - 'Adresse' => trim(preg_replace('/ +/', ' ', trim( $etab['adr_num'] .' '. $etab['adr_btq'] .' '. - $etab['adr_typeVoie'] .' '. $etab['adr_libVoie']))), - 'Adresse2' => trim(preg_replace('/ +/', ' ', $etab['adr_comp'])), - 'CP' => $etab['adr_cp'], - 'Ville' => $etab['adr_ville'], - 'Pays' => $pays, - 'Tel' => $tel, - 'Fax' => $fax, - 'FJ' => $etab['cj'], - 'FJLib' => $this->getLibelleFJ($etab['cj']), - 'Siren' => $etab['siren'], - 'Nic' => $etab['nic'], - 'Actif' => $etab['actif'], - 'NafEtab' => $etab['ape_etab'], // Etablissement - 'NafEnt' => $etab['ape_entrep'], // Entreprise - 'NafEtabLib' => $this->getLibelleNaf($etab['ape_etab']), - 'NafEntLib' => $this->getLibelleNaf($etab['ape_entrep']), - 'EffEtTr' => $etab['teff_etab'], - 'EffEtTrLib' => self::$tabEffectif[$etab['teff_etab']], - ); - } - - if ($dep==0) $dep=''; // Evite l'affichage d'un 0 inutile sur l'Extranet - - return array( - 'criteres' => array('siren'=>$siren, 'nic'=>$nic, 'dep'=>$dep), - 'info' => $strInfo, - 'nbReponses' => count($tabRet), - 'nbReponsesTotal' => $nbTot, - 'reponses' => $tabRet); - } - - /** - * Liste des établissements par Identifiant TEL/AUTRE - * @param string $typeId - * @param string $id - * @param int $deb - * @param int $nbRep - * @param int $maxRep - * @param int $dep - * @param int $actif - * @return array - */ - public function getEtablissementsParId($typeId, $id, $deb=0, $nbRep=20, $maxRep=200, $dep=0, $actif=2) - { - $this->setTabCodesNaf(); - $deb=$deb*1; - $dep=$dep*1; - - $nbRep=$nbRep*1; - $limit="LIMIT $deb, $nbRep"; - - $filtreActif = ''; - if ( $actif==1 || $actif==0 ) { - $filtreActif = " AND WHERE actif=$actif"; - } - - if ($typeId=='TEL') { - debugLog('I',"Recherche par TEL de $id avec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabTmp=$this->iDb->select('etablissements', 'count(*)', "TEL=$id OR FAX=$id $filtreActif"); - $nbTot=$tabTmp[0][0]; - $listeEtab=$this->iDb->select('etablissements e', - "'Etab' as Loc, e.id, e.source, e.source_id, e.triCode, e.autre_id, e.siren, e.nic, e.siege, ". - "e.raisonSociale, e.enseigne, e.sigle, e.adr_num, e.adr_btq, e.adr_typeVoie, e.adr_libVoie, ". - "e.adr_comp, e.adr_cp, e.adr_ville, e.tel, e.fax, e.cj, e.ape_etab, e.ape_entrep,". - "CONCAT(e.siren, e.nic) as siret, e.actif", - "TEL=$id OR FAX=$id $filtreActif ORDER BY e.siege DESC, e.actif DESC $limit", false, MYSQL_ASSOC); - - } elseif ($typeId=='AUTRE') { - /** Formatage des numéros de RC **/ - $tabId=array($id); - if (preg_match('/(\d*)(\D)(\d*)/', $id,$matches)) { - if (strlen($matches[1])<=2) { - // Années du type 54 ou 07 - if ($matches[1]>date('y')) $deb='19'.$matches[1]; - else $deb='20'.$matches[1]; - } else // Années du type 1900 ou 2000 - $deb=substr($matches[1],2,2); - $numero =$matches[3]*1; - for ($i=strlen($numero); $i<=7; $i++) { - $tabId[]=$matches[1].$matches[2].sprintf('%0'.$i.'s',$numero); - $tabId[]=$deb.$matches[2].sprintf('%0'.$i.'s',$numero); - } - } - $strId=implode("','", $tabId); - - /** Gestion du numéro de département ou CP **/ - $strDep=''; - if ($dep>0 && $dep<99999) { - if ($dep<96) $strDep='AND adr_cp BETWEEN '.$dep.'000 AND '.$dep.'999'; - elseif ($dep>9999) $strDep="AND adr_cp BETWEEN $dep AND $dep"; - else $strDep='AND adr_cp BETWEEN '.$dep.'00 AND '.$dep.'99'; - } - $tabTmp=$this->iDb->select('etablissements', 'count(*)', "autre_id IN ('$strId') $filtreActif $strDep"); - $nbTot=$tabTmp[0][0]; - $listeEtab=$this->iDb->select('etablissements e', - "'Etab' as Loc, e.id, e.source, e.source_id, e.triCode, e.autre_id, e.siren, e.nic, e.siege, ". - "e.raisonSociale, e.enseigne, e.sigle, e.adr_num, e.adr_btq, e.adr_typeVoie, e.adr_libVoie, ". - "e.adr_comp, e.adr_cp, e.adr_ville, e.tel, e.fax, e.cj, e.ape_etab, e.ape_entrep, e.teff_etab, ". - "CONCAT(e.siren, e.nic) as siret, e.actif", - "autre_id IN ('$strId') $filtreActif $strDep ORDER BY siege DESC $limit", false, MYSQL_ASSOC); - - } - foreach ($listeEtab as $etab) { - $tabRet[]=array( - 'Localisation'=>$etab['Loc'], - 'id'=>$etab['id'], - 'Pertinence'=>100, - 'Siret'=>$etab['siret'], - 'Siege'=>$etab['siege'], - 'Nom'=>$etab['raisonSociale'], - 'Sigle'=>$etab['sigle'], - 'Enseigne'=>$etab['enseigne'], - 'Adresse'=>trim(preg_replace('/ +/', ' ', trim( $etab['adr_num'] .' '. $etab['adr_btq'] .' '. - $etab['adr_typeVoie'] .' '. $etab['adr_libVoie']))), - 'Adresse2'=>trim(preg_replace('/ +/', ' ', $etab['adr_comp'])), - 'CP'=>$etab['adr_cp'], - 'Ville'=>$etab['adr_ville'], - 'Tel'=>$etab['tel'], - 'Fax'=>$etab['fax'], - 'FJ'=>$etab['cj'], - 'FJLib'=>$this->getLibelleFJ($etab['cj']), - 'Siren'=>$etab['siren'], - 'Nic'=>$etab['nic'], - 'Actif'=>$etab['actif'], - 'NafEtab'=>$etab['ape_etab'], // Etablissement - 'NafEnt'=>$etab['ape_entrep'], // Entreprise - 'NafEtabLib'=>$this->getLibelleNaf($etab['ape_etab']), - 'NafEntLib' =>$this->getLibelleNaf($etab['ape_entrep']), - ); - } - - if ($dep==0) $dep=''; // Evite l'affichage d'un 0 inutile sur l'Extranet - - return array( - 'criteres'=>array('autreId'=>$id, 'dep'=>$dep), - 'nbReponses'=>count($tabRet), - 'nbReponsesTotal'=>$nbTot, - 'reponses'=>$tabRet); - } - - /** Retourne juste si un siren existe - ** - ** @param integer $siren - ** @return bool - **/ - function sirenExiste($siren) { - $siren=$siren*1; - $listeEtab=$this->iDb->select('etablissements', 'id', "siren=$siren LIMIT 0,1", false, MYSQL_ASSOC); - if (@count($listeEtab)>0) - return true; - return false; - } - - /** Retourne l'identité issue de la table établissements - ** - ** @param integer $siren - ** @return bool - **/ - function getIdentiteLight($siren, $nic=0, $id=0) { - $siren=$siren*1; - $nic=$nic*1; - $id=$id*1; - $limit=''; //LIMIT O,1' ; - if ($id>0 && $siren<1000) $where=" id=$id "; - elseif ($nic<>0) $where=" siren=$siren AND nic=$nic "; - elseif ($siren<>0) $where=" siren=$siren "; - else return array(); - - $listeEtab=$this->iDb->select('etablissements e', - "e.id, e.source, e.source_id, e.autre_id, e.siren, e.nic, e.siege, e.autre_id, e.triCode, ". - "e.raisonSociale, e.enseigne, e.sigle, e.adr_num, e.adr_btq, e.adr_typeVoie, e.adr_libVoie, ". - "e.adr_comp, e.adr_cp, e.adr_ville, e.tel, e.fax, e.cj, e.ape_etab, e.ape_entrep, ". - "e.adr_dep, e.adr_com, e.capital, e.capitalDev, e.capitalSrc, e.tca, e.teff_entrep, e.teff_etab, ". - "CONCAT(e.siren, e.nic) as siret, e.actif, e.identite_pre", - "$where ORDER BY siege DESC, actif DESC, nic DESC $limit", false, MYSQL_ASSOC); - $etab=@$listeEtab[0]; - - $nom=trim($etab['raisonSociale']); - // Cas des noms vides à l'INSEE (une centaine) - if ($nom=='') $nom=@preg_replace('/,.*$/','',$etab['identite_pre']); - - $tabRet=array( 'id'=>$etab['id'], - 'Siret'=>$etab['siret'], - 'Siege'=>$etab['siege'], - 'Nom'=>$nom, - 'Tribunal'=>$etab['triCode'], - 'Sigle'=>$etab['sigle'], - 'Enseigne'=>$etab['enseigne'], - 'Adresse'=>trim(preg_replace('/ +/', ' ', trim( $etab['adr_num'] .' '. $etab['adr_btq'] .' '. - $etab['adr_typeVoie'] .' '. $etab['adr_libVoie']))), - 'Adresse2'=>trim(preg_replace('/ +/', ' ', $etab['adr_comp'])), - 'AdresseNum'=>$etab['adr_num'], - 'AdresseBtq'=>$etab['adr_btq'], - 'AdresseVoie'=>$etab['adr_typeVoie'], - 'AdresseRue'=>$etab['adr_libVoie'], - 'CP'=>$etab['adr_cp'], - 'Ville'=>$etab['adr_ville'], - 'Tel'=>$etab['tel'], - 'Fax'=>$etab['fax'], - 'FJ'=>$etab['cj'], - 'FJ_lib'=>$this->getLibelleFJ($etab['cj']), - 'Siren'=>$etab['siren'], - 'Nic'=>$etab['nic'], - 'Actif'=>$etab['actif'], - 'NafEtab'=>$etab['ape_etab'], - 'NafEnt'=>$etab['ape_entrep'], - 'NafEntLib' =>$this->getLibelleNaf($etab['ape_entrep']), - 'NafEtabLib'=>$this->getLibelleNaf($etab['ape_etab']), - 'AutreId'=>$etab['autre_id'], - 'Source'=>$etab['source'], - 'SourceId'=>$etab['source_id'], - // Ajout du 25 mars 2010 - 'Dept'=>$etab['adr_dep'], - 'codeCommune'=>$etab['adr_com'], - 'Capital'=>$etab['capital'], - 'CapitalDev'=>$etab['capitalDev'], - 'TrancheCA'=>$etab['tca'], - 'TrancheCALib'=>self::$tabTCA[$etab['tca']], - 'EffEnTr'=>$etab['teff_entrep'], - 'EffEnTrLib'=>self::$tabEffectif[$etab['teff_entrep']], - 'EffEtTr'=>$etab['teff_etab'], - 'EffEtTrLib'=>self::$tabEffectif[$etab['teff_etab']], - // Added 30/05/2012 - //'EffEn'=>$etab['teff_entrep'], - //'EffEt'=>$etab['teff_etab'], - ); - - return $tabRet; - } - - /** Retourne la liste des devise - ** - ** @param string $codeDevise Code ISO devise - ** @return Devise ou liste des devises (si pas de code ISO en entrée) - **/ - function getDevises($codeIso='') { - if (trim($codeIso)<>'') $strWhere="devIso='$codeIso'"; - else $strWhere='1'; - $liste=$this->iDb->select('tabDevises', 'devIso, devNom', $strWhere, false, MYSQL_ASSOC); - $tabRet=array(); - foreach ($liste as $ligne) - $tabRet[$ligne['devIso']]=$ligne['devNom']; - return $tabRet; - } - - /** Retourne la liste des mandataires/administrateurs/oppositions d'une ou plusieurs cours d'appel - ** - ** @param array $arrIdCA Id S&D de la cour d'appel - ** @param bool $condense Par défaut retourne un tableau concatenant Nom, prenom, adresse complète - ** @param array $type Type d'opposition. Ex array('A','M') pour Admin/Mandataires. Autres: a'V'ocat,'H'uissier,'N'otaire - ** @return Liste des Mandataires/Administrateurs de la cours d'appel - **/ - function getMandataires($arrIdCA=array(), $condense=true, $type=array()) { - if (count($arrIdCA)>0) $strIdCA='AND ( coursAppel in ('.implode(',', $arrIdCA).') OR coursAppel2 in ('.implode(',', $arrIdCA).') )'; - else $strIdCA=''; - - if (count($type)>0) $strType="AND type in ('".implode("','", $type)."') "; - else $strType=''; - - - if (!$condense) - $fields='id,sirenGrp,sirenMand,Nom,Prenom,type,tribunal,Statut,adresse,adresseComp,cp,ville,tel,fax,email,web,contact'; - else - $fields="id, CONCAT(Nom,' ',Prenom,' ',adresse,' ',adresseComp,' ',cp,' ',ville) as Mand"; - - $liste=$this->iDb->select('tabMandataires', $fields, "1 $strIdCA $strType ORDER BY sirenGrp", true, MYSQL_ASSOC); - $tabRet=array(); - if (!$condense) foreach ($liste as $ligne) $tabRet[]=$ligne; - else foreach ($liste as $ligne) $tabRet[$ligne['id']]=preg_replace('/ +/',' ',$ligne['Mand']); - - return $tabRet; - } - - /** Retourne la liste des mandataires/administrateurs/oppositions correspondant à un nom - ** - ** @param string $nom Nom du mandataire - ** @param bool $condense Par défaut retourne un tableau concatenant Nom, prenom, adresse complète - ** @param array $type Type d'opposition. Ex array('A','M') pour Admin/Mandataires. Autres: a'V'ocat,'H'uissier,'N'otaire - ** @return Liste des Mandataires/Administrateurs de la cours d'appel - **/ - function searchMandataires($nom, $condense=true, $type=array(), $cpDep=0) { - - $strIdCA="AND (Nom LIKE '%$nom%' OR Prenom LIKE '%$nom%') "; - - if (count($type)>0) $strType="AND type in ('".implode("','", $type)."') "; - else $strType=''; - - if ($cpDep>0 && $cpDep<100) $strCp="AND cp BETWEEN $cpDep"."000 AND $cpDep"."999 "; - elseif ($cpDep>99 && $cpDep<1000) $strCp="AND cp BETWEEN $cpDep"."00 AND $cpDep"."99 "; - elseif ($cpDep>999) $strCp="AND cp=$cpDep "; - else $strCp=''; - - if (!$condense) - $fields='id,sirenGrp,sirenMand,Nom,Prenom,type,tribunal,Statut,adresse,adresseComp,cp,ville,tel,fax,email,web,contact'; - else - $fields="id, CONCAT(Nom,' ',Prenom,' ',adresse,' ',adresseComp,' ',cp,' ',ville) as Mand"; - - $liste=$this->iDb->select('tabMandataires', $fields, "1 $strIdCA $strType $strCp ORDER BY sirenGrp", false, MYSQL_ASSOC); - $tabRet=array(); - if (!$condense) foreach ($liste as $ligne) $tabRet[]=$ligne; - else foreach ($liste as $ligne) $tabRet[$ligne['id']]=preg_replace('/ +/',' ',$ligne['Mand']); - - return $tabRet; - } - - /** Récupère les informations du mandataire - ** - ** @param integer $idMand Identifiant SD du mandataire - ** @return array - **/ - function getMandataire($idMand) { - $fields='id,sirenGrp,sirenMand,Nom,Prenom,type,coursAppel,coursAppel2,tribunal,Statut,stagiaire,adresse,adresseComp,cp,ville,tel,fax,email,web,contact'; - $liste=$this->iDb->select('tabMandataires', $fields, "id=$idMand", true, MYSQL_ASSOC); - return @$liste[0]; - } - - - function getHuissiers($arrIdCA=array(), $condense=true) { - if (count($arrIdCA)>0) - $strIdCA="AND tribunal in ('".implode("','", $arrIdCA)."')"; - - else $strIdCA=''; - if (!$condense) - $fields='id,sirenGrp,sirenMand,Nom,Prenom,type,tribunal,Statut,adresse,adresseComp,cp,ville,tel,fax,email,web,contact'; - else - $fields="id, CONCAT(Nom,' ',Prenom,' ',adresse,' ',adresseComp,' ',cp,' ',ville) as Mand"; - - $liste=$this->iDb->select('tabMandataires', $fields, "1 AND type='H' $strIdCA ORDER BY sirenGrp", false, MYSQL_ASSOC); - $tabRet=array(); - if (!$condense) foreach ($liste as $ligne) $tabRet[]=$ligne; - else foreach ($liste as $ligne) $tabRet[$ligne['id']]=preg_replace('/ +/',' ',$ligne['Mand']); - //@wsLog('HUISSIERS',$strIdCA,count($liste)); - return $tabRet; - } - - /** Retourne l'identite Textuelle d'un mandataires/administrateurs - ** - ** @param integer $idMand Id S&d du mandataire - ** @return string Mandataire - **/ - function getMandatairesParId($idMand) { - if ($idMand>0) { - $liste=$this->iDb->select('tabMandataires', "CONCAT(Nom,' ',Prenom,' ',adresse,' ',adresseComp,' ',cp,' ',ville) as Mand", "id=$idMand", false); - return $liste[0][0]; - } - return ''; - } - - /** - * - * @param unknown $siren - * @param number $nic - * @param number $id - * @return boolean|Ambigous - */ - function getNaf4($siren, $nic=0, $id=0) - { - $tabRet=array(); - $siren=$siren*1; - if ($siren==0) return false; - $nic=$nic*1; - $id=$id*1; - if ($nic<>0) $where=" siren=$siren AND nic=$nic "; - else $where=" siren=$siren AND siege=1 "; - - $insee = $this->iDbInsee->select('bascule', 'siren, nic, apen5, apen4, apet5, apet4', $where, false, MYSQL_ASSOC); - $tabRet = $insee[0]; - $tabRet['apen4_lib'] = $this->getLibelleNaf($tabRet['apen4']); - $tabRet['apet4_lib'] = $this->getLibelleNaf($tabRet['apet4']); - return $tabRet; - } - - /** - * - * @param string $siren - * @param int $nic - * @param int $id - * @param string $forceVerif - * @param string $accesDist - * @return array - */ - function getIdentiteEntreprise($siren, $nic=0, $id=0, $forceVerif=false, $accesDist=true) - { - if($this->debugtime) { - $timer=array('debutIdentite'=>microtime(true)); - $tdebIni=microtime(1); - $ligne=date('YmdHis').";$siren;getIdentiteEntreprise Début ---"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - } - - $classWDate = new WDate(); - - $siren=$siren*1; - $nic=$nic*1; - $id=$id*1; - $limit=''; - if ($id>0 && $siren<1000) $where=" id=$id "; - elseif ($nic<>0) $where=" siren=$siren AND nic=$nic "; - elseif ($siren<>0) $where=" siren=$siren ";//AND siege=1 "; - $listeEtab = $this->iDb->select('etablissements e', - "e.id, e.source, e.source_id, e.triCode, e.autre_id, e.siren, e.nic, e.siege, e.autre_id, ". - "e.raisonSociale, e.enseigne, e.sigle, e.adr_num, e.adr_btq, e.adr_typeVoie, e.adr_libVoie, ". - "e.adr_comp, e.adr_cp, e.adr_ville, e.tel, e.fax, e.cj, e.ape_etab, e.ape_entrep, ". - "e.capital, e.capitalDev, e.capitalSrc, CONCAT(e.siren, e.nic) as siret, e.actif, ". - "e.age_entrep, e.age_etab, e.tca, e.tcaexp, e.teff_entrep, e.teff_etab", - "$where ORDER BY siege DESC, actif DESC, nic DESC $limit", false, MYSQL_ASSOC); - - /** Si le siren est valide, on part chez Infogreffe **/ - if (count($listeEtab)==0 && $this->valideSiren($siren) && $accesDist) { - $iGeffes=new MGreffes(); - $etabG=$iGeffes->getIdentite($siren); - if ($etabG) { - $adr=$this->structureVoie($etabG['Adresse']); - // Date de dernière MAJ - $lastMaj=str_replace('-','',$etabG['DateRadiation'])*1; - if (str_replace('-','',$etabG['DateCreation'])*1>$lastMaj) - $lastMaj=str_replace('-','',$etabG['DateCreation'])*1; - if (str_replace('-','',$etabG['DateUpdate'])*1>$lastMaj) - $lastMaj=str_replace('-','',$etabG['DateUpdate'])*1; - - $etab = array( - 'id' => $etabG['id'], - 'siret' => $etabG['Siret'], - 'siege' => $etabG['Siege'], - 'raisonSociale' => $etabG['Nom'], - 'sigle' => $etabG['Sigle'], - 'enseigne' => $etabG['Enseigne'], - 'Adresse' => $etabG['Adresse'], - 'adr_comp' => $etabG['Adresse2'], - 'adr_num' => $adr['num'], - 'adr_btq' => $adr['adr_btq'], - 'adr_typeVoie' => $adr['typeVoie'], - 'adr_libVoie' => $adr['libVoie'], - 'adr_dep' => substr($etabG['CP'],0,2), - 'adr_cp' => $etabG['CP'], - 'adr_ville' => $etabG['Ville'], - 'tel' => $etabG['Tel'], - 'fax' => $etabG['Fax'], - 'cj' => $etabG['FJ'], - 'siren' => $etabG['Siren'], - 'nic' => $etabG['Nic'], - 'actif' => $etabG['Actif'], - 'ape_etab' => $etabG['NafEtab'], - 'ape_entrep' => $etabG['NafEnt'], - 'autre_id' => $etabG['NumRC'], - 'dateMAJ' => $classWDate->DateT('Ymd','Y-m-d',$lastMaj), - ); - } - $timer['accesInfogreffeCarInconnu']=microtime(true); - } else { - $etab = $listeEtab[0]; - $nic = $etab['nic']; - $timer['tableEtablissements']=microtime(true); - } - - /** Informations locales issues de la table infos_entrep - **/ - if ($siren>100) { - $info = $this->iDb->select('infos_entrep', 'raisonSociale, isin, nscrl, tel, fax, web, mail, latitude, longitude, precis, dateCreation, dateFermeture, naf, naf_lib, ca, effectif, nbEtab, activite, sirenDoublon, waldec', "siren=$siren", false, MYSQL_ASSOC); - $tab=$info[0]; - $waldec=$tab['waldec']; - if ($tab['sirenDoublon']==0) { - $info=$this->iDb->select('infos_entrep', 'siren AS sirenDoublon', "sirenDoublon=$siren", false, MYSQL_ASSOC); - $tab['sirenDoublon']=$info[0]['sirenDoublon']; - } - - $insee=$this->iDb->select('etablissements', 'CONCAT(SIREN,NIC) AS siret', "SIREN=$siren AND SIEGE=1 ORDER BY ACTIF%10 DESC, NIC DESC",false,MYSQL_ASSOC); - $siretSiege=$insee[0]['siret']; - $timer['infosEntrep']=microtime(true); - } - - if ($nic>0) $strNic="AND NIC=$nic"; - else $strNic='AND NIC<100000 AND SIEGE=1'; - - $moisNonDiff=0; - - /** Informations INSEE **/ - if ($siren>100) { - $insee=$this->iDbInsee->select('identite', 'ACTIF%10 AS ACTIF, actifEco%10 AS actifEco, NOM, NOM2, SIGLE, ENSEIGNE, ADR_NUMVOIE, ADR_BTQ, ADR_TYPVOIE, ADR_LIBVOIE, ADR_LIBCOM, ADR_CP, ADR_COMP, ADR_DISTSP, PAYS, DCREN, SIEGE, AUXILT, SAISONAT, CJ, CIVILITE, NBETAB, APE_ENT, APE_ETAB, PROCOL, PROCOL_TYPE, PROCOL_DATE, CAPITAL, EFF_ENT, NUMRC, TEL, FAX, DIR_FCT, DIR_IDEN, DIR_DATEN, DIR_LIEUN, CAPITAL_DATE, CAPITAL_DEV, DCRET, TEFF_ENT, ADR_DEP, ADR_COM, TCA, TCAEXP, EFF_ET, TEFF_ET, CODEVOIE, DATE_MAJ, APRM, ACTIVNAT, ORIGINE, MODET, EXPLET, LIEUACT, ACTISURF, DEFET, MODEN, PRODPART, EXPLEN, MONOREG, REGIMP, MONOACT, DEFEN, DEFET, IDENTITE_PRE', - "SIREN=$siren $strNic ORDER BY SIEGE DESC, ACTIF DESC LIMIT 0,1",false,MYSQL_ASSOC); - if (count($insee)>0) { - $tabInsee=$insee[0]; - $tabNotice=$this->getInfosNotice($siren, $nic); - $tabInsee['TCA_AN']=$tabNotice['insEAEANT']; - $tabInsee['RECME']=$tabNotice['insRECME']; - // On force l'indicateur "actifEco" à 0 si l'établissement est juridiquement inactif - if ($tabInsee['ACTIF']*1==0) $tabInsee['actifEco']=0; - } else { - // Siren absent de l'Insee - $tabInsee = array( - 'CIVILITE'=>0, - 'NBETAB'=>1, - 'TEL'=>$etab['tel'], /** @todo Prendre sur les pages jaunes **/ - 'FAX'=>$etab['fax'], /** @todo idem **/ - 'Web'=>'', /** @todo Prendre sur les pages jaunes et/ou google **/ - 'Mail'=>'', /** @todo idem **/ - 'CJ'=>$etab['cj'], - 'CJ_lib'=>$this->getLibelleFJ($etab['cj']), - 'ACTIF'=>$etab['actif'], - 'APE_ETAB'=>$etab['ape_etab']?$etab['ape_etab']:$etab['ape_entrep'], - 'APE_ENT'=>$etab['ape_entrep']?$etab['ape_entrep']:$etab['ape_etab'], - 'CAPITAL'=>$etab['capital'], - 'CAPITAL_DEV'=>$etab['capitalDev'], - 'ADR_DEP'=>$etab['adr_dep'], - 'TEFF_ENT'=>$etab['teff_entrep'], - 'DEFEN'=>'', - 'TEFF_ET'=>$etab['teff_etab'], - 'DEFET'=>'', - 'TCA'=>$etab['tca'], - 'TCA_AN'=>'', - 'TCAEXP'=>$etab['tcaexp'], - ); - } - - $tabTmp=$this->iDb->select('etablissements', 'count(*) AS nbEtabs', "siren=$siren AND NIC<100000 AND ACTIF%10=1",false,MYSQL_ASSOC); - $nbEtab=$tabTmp[0]['nbEtabs']; - $inseeND=$this->iDbInsee->select('insee_nondiff', 'siren, mois, dateInsert',"siren=$siren",false,MYSQL_ASSOC); - $moisNonDiff=@$tabTmp[0]['mois']; - $timer['tableIdentite']=microtime(true); - - } else { - - $tabInsee = array( - 'CIVILITE'=>0, - 'NBETAB'=>1, - 'TEL'=>$etab['tel'], /** @todo Prendre sur les pages jaunes **/ - 'FAX'=>$etab['fax'], /** @todo idem **/ - 'Web'=>'', /** @todo Prendre sur les pages jaunes et/ou google **/ - 'Mail'=>'', /** @todo idem **/ - 'CJ'=>$etab['cj'], - 'CJ_lib'=>$this->getLibelleFJ($etab['cj']), - 'ACTIF'=>$etab['actif'], - 'APE_ETAB'=>$etab['ape_etab']?$etab['ape_etab']:$etab['ape_entrep'], - 'APE_ENT'=>$etab['ape_entrep']?$etab['ape_entrep']:$etab['ape_etab'], - 'CAPITAL'=>'', - 'CAPITAL_DEV'=>'', - 'ADR_DEP'=>$etab['adr_dep'], - ); - $nbEtab='N/C'; - - } - - if (count($info)==0) { - $idComp=$this->getIdentitePart($siren, $etab['raisonSociale'], $etab['enseigne'], $etab['sigle'], 0, $accesDist); - $tab=$idComp; - $timer['getIdentitePart']=microtime(true); - } - - /** Géocodage de l'adresse **/ - $mMap=new MMap($accesDist);//$etab['adr_num'].' '.$this->getCodeVoie($etab['adr_typeVoie']).' '.$etab['adr_libVoie'], $etab['adr_cp'], $etab['adr_ville']); - $mMap->geoCodeAdresse($etab['adr_num'],'',$etab['adr_typeVoie'],$this->getCodeVoie($etab['adr_typeVoie']), $etab['adr_libVoie'], $etab['adr_cp'], $etab['adr_ville'], 'France', trim($tabInsee['ADR_DEP'].$tabInsee['ADR_COM'].$tabInsee['CODEVOIE'])); - $tab['latitude']=$mMap->latitudeDec; - $tab['longitude']=$mMap->longitudeDec; - $tab['altitude']=$mMap->altitude; - $tab['precis']=$mMap->precision; - $timer['geoCodage']=microtime(true); - - /** Accès provisoire à AMABIS **/ - if ($accesDist) { - if($this->debugtime) { - $ligne=date('YmdHis').";$siren;MAmabis Avant"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - $tdeb=microtime(1); - } - - $iAmabis=new MAmabis(); - $repAmabis=$iAmabis->getZonage($etab['adr_num'],$etab['adr_btq'],$etab['adr_typeVoie'],$etab['adr_libVoie'], $etab['adr_cp'], $etab['adr_ville'], trim($tabInsee['ADR_DEP'].$tabInsee['ADR_COM'].$tabInsee['CODEVOIE']), false, 'TEST', false); - $duree=round(microtime(1)-$tdeb,3); - - if($this->debugtime) { - $ligne=date('YmdHis').";$siren;MAmabis APRES ($duree s)"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - $timer['zonesPrioritaires']=microtime(true); - } - } else - $repAmabis=array(); - - - /** N° de TVA Intracommunautaire **/ - if ($siren*1>100) { - if($this->debugtime) { - $ligne=date('YmdHis').";$siren;MTva Avant"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - $tdeb=microtime(1); - } - - $iTva=new MTva($siren, $accesDist); - $vatNumber=$iTva->vatNumber; - $vatDefined=$iTva->vatDefined; - - if($this->debugtime) { - $duree=round(microtime(1)-$tdeb,3); - $ligne=date('YmdHis').";$siren;MTva APRES ($duree s)"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - $timer['tvaIntra']=microtime(true); - } - } else { - $vatNumber='FR00000000000'; - $vatDefined=false; - } - - $nom =trim($etab['raisonSociale']); - if ($nom=='') $nom=@preg_replace('/,.*$/','',$tabInsee['IDENTITE_PRE']); - $nom2=$tel=$fax=''; - if (strtoupper(trim($tabInsee['NOM2']))<>strtoupper(trim($etab['sigle']))) - $nom2=trim($tabInsee['NOM2']); - - if (trim($tab['tel'])<>'') $tel=trim($tab['tel']); - elseif ($tabInsee['TEL']<>'') $tel=implode('.', str_split($tabInsee['TEL'],2)); - - if (trim($tab['fax'])<>'') $fax=trim($tab['fax']); - elseif ($tabInsee['FAX']<>'') $fax=implode('.', str_split($tabInsee['FAX'],2)); - - if($this->debugtime) { - $ligne=date('YmdHis').";$siren;MTel Avant"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - $tdeb=microtime(1); - } - - $iTel=new MTel(false);//$accesDist); - $iTel->getTel($siren); - $tmp=$iTel->getTel($siren, $nic); - - if($this->debugtime) { - $duree=round(microtime(1)-$tdeb,3); - $ligne=date('YmdHis').";$siren;MTel APRES ($duree s)"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - } - - $activitePJ_An8=''; - foreach ($tmp as $tmp2) { - if ($tmp2['typeTel']=='tel' && ($tel==''||$tel==trim($tab['tel'])) ) - $tel=implode('.', str_split($tmp2['telephone'],2)); - if ($tmp2['typeTel']=='fax' && ($fax==''||$fax==trim($tab['fax'])) ) - $fax=implode('.', str_split($tmp2['telephone'],2)); - if ($tmp2['typeTel']=='web' && $tab['web']=='') $tab['web']=$tmp2['infoTel']; - if ($tmp2['typeTel']=='mail' && $tab['mail']=='') $tab['mail']=$tmp2['infoTel']; - if ($tmp2['typeTel']=='an8') $activitePJ_An8=$tmp2['infoTel']; - } - $timer['telFax']=microtime(true); - - /** Type d'exploitation - ** 0 : N/C - ** 1 : Locataire d'un fond de commerce - ** 2 : Loueur d'un fond de commerce - ** 3 : Prestataire de personnel - ** 10: Exploitation directe - ** 11: Sans activité ??? - **/ - $typeExploitation=0; - if (strtoupper($tabInsee['EXPLET'])=='O') { - switch ($tabInsee['PRODPART']*1) { - case 1: // Locataire d'un fond de commerce - $tabAnn2=$this->getAnnoncesLegales($siren, 0, array(5700)); - if (count($tabAnn2)>0) $typeExploitation=0; - else $typeExploitation=1; - break; - case 2: // Loueur d'un fond de commerce - case 3: // Prestataire de personnel - $typeExploitation=$tabInsee['PRODPART']*1; - break; - default: - if (!($tabInsee['CJ']>=7000 && $tabInsee['CJ']<8000) && - !($tabInsee['CJ']>=9000 && $tabInsee['CJ']<10000) ) { - if ($tabInsee['ORIGINE']*1==6) // Prise en location-gérance - $typeExploitation=1; // Locataire d'un fond de commerce - elseif ($tabInsee['ORIGINE']*1==1 || // Création pure - $tabInsee['ORIGINE']*1==3 || // Achat - $tabInsee['ORIGINE']*1==4) // Apport - /* - '2'=>'Réinstallation après transfert', - '5'=>'Reprise au conjoint ou apport reçu', - - '7'=>'Partage', - '8'=>'Reprise', - '9'=>'Autre modalité d\'acquisition', - 'A'=>'Reprise globale d\'une exploitation agricole', - 'B'=>'Poursuite de l\'exploitation agricole par le conjoint', - 'C'=>'Transfert de propriété d\'une exploitation agricole', - 'D'=>'Apport d\'exploitation(s) agricole(s) individuelle(s)', - 'E'=>'Reprise totale ou partielle d\'exploitation individuelle', - */ - $typeExploitation=10; - elseif ($nbEtab<2) { - $tabAnn=$this->getAnnoncesLegales($siren, 0, 'L'); - if (count($tabAnn)>0) { - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "classMInsee::getAnnonces... sur $siren", print_r($this->getAnnoncesLegales($siren, 0, 'L'), true)); - //ICI - if ($tabAnn[0]['DateParution']>$tabInsee['DCRET'] && ($tabAnn[0]['Departement']==$tabInsee['ADR_DEP'] || $tabAnn[0]['Departement']==substr(''.$tabInsee['ADR_DEP'].''.$tabInsee['ADR_COM'],O,3)*1)) - $typeExploitation=1; // Locataire d'un fond de commerce - } elseif (count($this->getAnnoncesLegales($siren, 0, 'G'))>0) { - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "classMInsee::getAnnonces... sur $siren", print_r($this->getAnnoncesLegales($siren, 0, 'G'), true)); - $typeExploitation=2; // Loueur d'un fond de commerce - } - } elseif ($tabInsee['ORIGINE']*1 <>0 && - $tabInsee['ORIGINE']*1 <>8 && - $tabInsee['ORIGINE']*1 <>9 && - $tabInsee['ORIGINE'] <>'NR') - $typeExploitation=10; // Exploitation directe - } - break; - } - } - $timer['typeExploitation']=microtime(true); - - /** Recherche de prédécesseur ou successeur - **/ - - global $tabInfoUser; //@todo : Voir à quoi - - $tabAssoc=$this->getSiretAssoc($siren, $nic); - if (count($tabAssoc)>0) { - if (isset($tabAssoc['pre'])) { - // Il y a un prédécesseur - if ($tabInsee['ORIGINE']*1==0 || - $tabInsee['ORIGINE']*1==1 || - $tabInsee['ORIGINE']*1==9 || - $tabInsee['ORIGINE']=='NR') - $tabInsee['ORIGINE']=2; // Transfert - } - } - $timer['siretPrecSuivant']=microtime(true); - - /** Code Pays - **/ - $codePaysIso2='FR'; - if ($tabInsee['ADR_DEP']>98) { - $codePaysInsee=$tabInsee['ADR_COM']; - $tabTmp=$this->iDb->select( 'jo.tabPays j, insee.insee_tabPays i', - 'j.codPays, j.numPays, j.codPays3, j.codePaysInpi, j.libPays, i.LIBCOG, i.ACTUAL', - "j.codePaysInsee=$codePaysInsee AND j.codePaysInsee=substring( i.COG, 3, 3 ) AND i.ACTUAL IN (1,4) AND j.numPays is NOT NULL", false, MYSQL_ASSOC); - if (count($tabTmp)==1) { - $codePaysIso2=$tabTmp[0]['codPays']; - } else { - $codePaysIso2=''; - foreach ($tabTmp as $tabTmp2) { - if (trim(preg_replace('/[^A-Z]/','',strtoupper(strtr($tabTmp2['libPays'], - 'àáâãäåæçèéêëìíîïðñòóôõöùúûüýÿÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖÙÚÛÜÝ', - "aaaaaaaceeeeiiiionooooouuuuyyAAAAAAACEEEEIIIIONOOOOOUUUUY"))))==trim(preg_replace('/[^A-Z]/','',strtoupper($tabTmp2['LIBCOG'])))) { - $codePaysIso2=$tabTmp2['codPays']; - break; - } - } - // Exception lié à anomalies de données INSEE - if ($codePaysIso2=='' && $codePaysInsee==237) $codePaysIso2='KR'; - } - } - $timer['codePays']=microtime(true); - - $tabIris=$this->getInfosIris($tabInsee['ADR_DEP'].$tabInsee['ADR_COM'], substr($tabInsee['CODEVOIE'],0,4), $etab['adr_num'], $etab['adr_btq'], $etab['adr_typeVoie'], $etab['adr_libVoie']); - if ($tabInsee['CODEVOIE']=='') { - // On récupere le code Rivoli s'il est absent de SIRENE (cf. doc Sirene) - $tabInsee['CODEVOIE']=@$tabIris['Rivoli']; - } - $timer['codeIris']=microtime(true); - - // Est-ce un ancien établissement siège ? - $ancienSiege=false; - $dateFinSiege=0; - if ($etab['siege']==0 || ($etab['siege']==1 && $tabInsee['ACTIF']==0)) { - $dateFinSiege=$this->isAncienSiege($siren,$nic); - if ($dateFinSiege>19000101) $ancienSiege=true; - } - $timer['ancienSiege']=microtime(true); - - $tabInsee['actifEcoDate']=''; - $tabInsee['actifEcoType']=''; - - if ($tabInsee['ACTIF']*1==1 && $tabInsee['actifEco']*1==0) - { - /** L'établissement est actif juridiquement à l'INSEE mais sans activité économique **/ - $tabTmp=$this->iDb->select('insee.insee_even', 'insEVE, IF(insDATEVE=0, idFlux*1, insDATEVE) AS insDATEVE', - "insSIREN=$siren AND insNIC=$nic AND insEVE IN ('MPF','MNP','650') ORDER BY insDATEVE DESC", false, MYSQL_ASSOC); - if (count($tabTmp)>0) { - $tabModif=$tabTmp[0]; - switch(''.$tabModif['insEVE']) { - case '650': // Fermé économiquement - $tabInsee['actifEcoType']='ECOF'; - $tabInsee['actifEcoDate']=$tabModif['insDATEVE']; - break; - case 'MPF': // Présumé Fermé par la trimestrielle Insee - $tabInsee['actifEcoType']='PFER'; - $tabInsee['actifEcoDate']=$tabModif['insDATEVE']; - break; - case 'MNP': // Présumé Fermé par la trimestrille NPAI - $tabInsee['actifEcoType']='NPAI'; - $tabInsee['actifEcoDate']=$tabModif['insDATEVE']; - break; - } - } - - /** Evènement Relatif à une cessation ECO entreprise **/ - $tabTmp=$this->iDb->select('insee.insee_even', 'insEVE, IF(insDATEVE=0, idFlux*1, insDATEVE) AS insDATEVE', - "insSIREN=$siren AND insEVE IN ('OD','TD','420','425','620','621') ORDER BY insDATEVE DESC", false, MYSQL_ASSOC); - if (count($tabTmp)>0) { - $tabModif=$tabTmp[0]; - switch(''.$tabModif['insEVE']) { - case 'OD': - case 'TD': - case '420': // Absence d'activité de l'entreprise (cessation économique de l.entreprise) - case '425': // Absence d'activité d'une entreprise suite à une mise à jour au répertoire // - case '620': - case '621': - $tabInsee['actifEcoType']='ECOF'; - $tabInsee['actifEcoDate']=$tabModif['insDATEVE']; - break; - } - } - } - - $tabRet=array( 'id'=>$etab['id'], - 'Siret'=>$etab['siret'], - 'SiretSiege'=>$siretSiege, - 'AncienSiege'=>$ancienSiege, - 'AncienSiegeDateFin'=>$dateFinSiege, - 'Siege'=>$etab['siege'], - 'Tribunal'=>strtr($etab['triCode'],array('préfec'=>'','sous-p'=>'','Déclar'=>'')), - 'Nom'=>$nom, //EIRL - - 'Nom2'=>$nom2, - 'Sigle'=>$etab['sigle'], - 'Enseigne'=>$etab['enseigne'], //EIRL - 'Adresse'=>trim(preg_replace('/ +/', ' ', trim( $etab['adr_num'] .' '. $etab['adr_btq'] .' '. - $etab['adr_typeVoie'] .' '. $etab['adr_libVoie']))), - 'Adresse2'=>trim(preg_replace('/ +/', ' ', $etab['adr_comp'])), - 'AdresseNum'=>$etab['adr_num'], - 'AdresseBtq'=>$etab['adr_btq'], - 'AdresseVoie'=>$etab['adr_typeVoie'], - 'AdresseRue'=>$etab['adr_libVoie'], - 'CP'=>$etab['adr_cp'], - 'Ville'=>$etab['adr_ville'], - 'Pays'=>$tabInsee['PAYS'], - 'PaysIso2'=>$codePaysIso2, - - 'Civilite'=>$tabInsee['CIVILITE'], - 'NbEtab'=>$nbEtab, - 'Tel'=>$tel, - 'Fax'=>$fax, - 'Web'=>$tab['web'], - 'Mail'=>$tab['mail'], - - 'GeoLat'=>$tab['latitude'], - 'GeoLon'=>$tab['longitude'], - 'GeoAlt'=>$tab['altitude'], - 'GeoPrecis'=>$tab['precis'], - - 'TvaNumero'=>$vatNumber, - 'TvaAttribue'=>$vatDefined, - - 'FJ'=>$tabInsee['CJ'], - 'FJ_lib'=>$this->getLibelleFJ($tabInsee['CJ']), - 'RECME'=>$tabInsee['RECME'], - 'Siren'=>$etab['siren'], - 'Nic'=>$etab['nic'], - 'Actif'=>$tabInsee['ACTIF'], // Etablissement juridiquement ACTIF - 'ActifEco'=>$tabInsee['actifEco'], // Etablissement économiquement ACTIF - 'ActifEcoDate'=>$tabInsee['actifEcoDate'], // Etablissement économiquement Inactif depuis - 'ActifEcoType'=>$tabInsee['actifEcoType'], // Type d'inactivité éco ECOF, NPAI, PFER ou vide - 'NafEtab'=>$tabInsee['APE_ETAB'], - 'NafEnt'=>$tabInsee['APE_ENT'], - 'NaceEtab'=>$this->getCodeNace($tabInsee['APE_ETAB']), - 'NaceEnt'=>$this->getCodeNace($tabInsee['APE_ENT']), - 'NafEntLib' =>$this->getLibelleNaf($tabInsee['APE_ENT']), - 'NafEtabLib'=>$this->getLibelleNaf($tabInsee['APE_ETAB']), - 'AutreId'=>$etab['autre_id'], - 'Source'=>$etab['source'], - 'SourceId'=>$etab['source_id'], - 'Isin'=>$tab['isin'], - 'Capital'=>$etab['capital'],//IKI - 'CapitalDev'=>$etab['capitalDev'], - 'CapitalSrc'=>$etab['capitalSrc'], - -// 'Singularite'=>'', - 'DateCreaEt'=>$tabInsee['DCRET'], - 'DateCreaEn'=>$tabInsee['DCREN'], -// 'DateClotEn'=>$tabInsee[''], -// 'DateClotEt'=>$tabInsee[''], -// 'SitJur_lib'=>$tabInsee['PROCOL_TYPE'], -// 'SitJur_date'=>$tabInsee['PROCOL_DATE'], - 'SituationJuridique'=>'', - 'EffEnTr'=>$tabInsee['TEFF_ENT'], - 'EffEnTrLib'=>self::$tabEffectif[$tabInsee['TEFF_ENT']], - 'EffEtTr'=>$tabInsee['TEFF_ET'], - 'EffEtTrLib'=>self::$tabEffectif[$tabInsee['TEFF_ET']], - 'EffectifEtab'=>$tabInsee['EFF_ET'], - 'Effectif'=>$tabInsee['EFF_ENT'], - 'Dept'=>$tabInsee['ADR_DEP'], - 'codeCommune'=>$tabInsee['ADR_COM'], - 'TrancheCA'=>$tabInsee['TCA'], - 'TrancheCALib'=>self::$tabTCA[$tabInsee['TCA']], - 'TrancheCAexp'=>$tabInsee['TCAEXP'], - 'TrancheCAexpLib'=>self::$tabTCAexp[$tabInsee['TCAEXP']], - 'TrancheCAType'=>'I', - 'AnneeEffEn'=>$tabInsee['DEFEN'], - 'AnneeEffEt'=>$tabInsee['DEFET'], - 'AnneeTCA'=>$tabInsee['TCA_AN'], - - 'dir1Titre'=>self::$tabFct[$tabInsee['DIR_FCT']], - 'dir1NomPrenom'=>preg_replace('/^EIRL\s/','',$tabInsee['DIR_IDEN']), - 'Rivoli'=>substr($tabInsee['CODEVOIE'],0,4).' '.substr($tabInsee['CODEVOIE'],-1), - 'InfosIris'=>$tabIris, - 'NatureActivite'=>$tabInsee['ACTIVNAT'], // Nature de l'activité - 'OrigineCreation'=>$tabInsee['ORIGINE'], // Origine de la création - 'Auxiliaire'=>$tabInsee['AUXILT'], // 1=Auxiliaire / 0=Non auxiliaire - 'Saisonnalite'=>$tabInsee['SAISONAT'], // P=Activité permanente / S=Activité saisonnière - 'ACTISURF'=>$tabInsee['ACTISURF'], - 'EXPLEN'=>$tabInsee['EXPLEN'], - 'EXPLET'=>$tabInsee['EXPLET'], - 'LIEUACT'=>$tabInsee['LIEUACT'], - 'MODEN'=>$tabInsee['MODEN'], - 'MONOACT'=>$tabInsee['MONOACT'], - 'MONOREG'=>$tabInsee['MONOREG'], - 'REGIMP'=>$tabInsee['REGIMP'], - 'PRODPART'=>$tabInsee['PRODPART'], - 'GeoInfos'=>$repAmabis, - 'NonDiffusible'=>$moisNonDiff, - 'TypeExploitation'=>$typeExploitation, - 'DateMajINSEE'=>str_replace('--','',$classWDate->dateT('Ymd','Y-m-d',$tabInsee['DATE_MAJ'])), - 'APRM'=>$tabInsee['APRM'], - 'APRM_Lib'=>$this->getLibelleNafa($tabInsee['APRM']), - 'AutreSiret'=>$tabAssoc, - // MODET, - ); - - /** Estimation du Chiffre d'affaires **/ - $cj1=substr($tabInsee['CJ'],0,1)*1; - if ($tabRet['TrancheCA']*1==0 && $tabRet['AnneeTCA']*1==0 && $tabInsee['ACTIF']==1 && $tabInsee['CJ']<>1800 && $tabInsee['CJ']<>1900 && $cj1<>7 && $cj1<>8 && $cj1<>9) { - $caEstime=$this->getCAnafEffectif($tabInsee['APE_ENT'], $tabInsee['EFF_ENT']); - $tabRet['TrancheCA']=$this->getTca($caEstime); - $tabRet['TrancheCALib']=self::$tabTCA[$tabRet['TrancheCA']]; - if ($tabRet['TrancheCA']*1>0) { - $tabRet['TrancheCAType']='E'; - $tabRet['AnneeTCA']=date('Y')-2; - } - } - - /** Si tourisme, recherche du classeement **/ - $tabNafTourisme=array( '5510Z', // Hôtels et hébergement similaire - '5520Z', // Hébergement touristique et autre hébergement de co - '5530Z', // Terrains de camping et parcs pour caravanes ou véh - '702A', // Location de logements - '6820A', // Location de logements - '6820B', // Location de terrains et d'autres biens immobiliers - '551A', // Hôtels touristiques avec restaurant - '5610A', // Restauration traditionnelle - '741J', // Administration d'entreprises - '7010Z', // Activités des sièges sociaux - '552C', // Exploitation de terrains de camping - '702C', // Location d'autres biens immobiliers - '551C', // Hôtels touristiques sans restaurant - '553A', // Restauration de type traditionnel - ); - if (in_array($tabInsee['APE_ENT'], $tabNafTourisme) || - in_array($tabInsee['APE_ETAB'], $tabNafTourisme) ) { - $ret=$this->iDb->select('tourisme', 'id, nom, adresse, adrCp, adrVille, nbEtoiles, typeClasse, categorie, dateClasse, tel, fax, mail, web, typeChambres, capacite', "siren=$siren AND nic=$nic", false, MYSQL_ASSOC); - if (isset($ret[0])) { - $tabRet['NafEtabLib'].=' ('.$ret[0]['nbEtoiles'].' étoiles le '. - $classWDate->dateT('Y-m-d','d/m/Y',$ret[0]['dateClasse']).')'; - if ($tabRet['Tel']=='') $tabRet['Tel']=$ret[0]['tel']; - if ($tabRet['Fax']=='') $tabRet['Fax']=$ret[0]['fax']; - if ($tabRet['Web']=='') $tabRet['Web']=$ret[0]['web']; - if ($tabRet['Mail']=='') $tabRet['Mail']=$ret[0]['mail']; - } - } - - /** Nombre d'actions du capital si disponible **/ - if ($etab['capital']>0) { - $insee=$this->iDbInsee->select( - 'sdv1.capitalActions', - 'capital, deviseCapital, nbActions, actionNominale, dateInfo', - "siren=$siren AND capital>0 ORDER BY dateInfo DESC LIMIT 0,1",false,MYSQL_ASSOC); - $tabRet['CapitalNbActions']=0; - $tabRet['CapitalMtActions']=0; - //sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getIdentite sur $siren", print_r($insee, true).EOL.mysql_error()); - if (count($insee)>0) { - if ($etab['capital']==$insee[0]['capital']) { - $tabRet['CapitalNbActions']=$insee[0]['nbActions']; - $tabRet['CapitalMtActions']=$insee[0]['actionNominale']; - } - } - } - $timer['nbActionsCapital']=microtime(true); - - /** Numéro de TVA non défini - **/ - if (!$vatDefined) { - // Dom Tom ou étranger - if ($tabRet['Dept']>96) - $tabRet['TvaFacultatif']=2; - // Micro-entreprise - if ($tabRet['FJ']*1<2000 && $tabRet['Effectif']==0 && $tabRet['TrancheCA']==0) - $tabRet['TvaFacultatif']=1; - // Erreur lors de la récupération du numéro de TVA - if ($vatDefined===NULL) - $tabRet['TvaFacultatif']=99; - } - - - /** Date de début d'activité de l'entreprise si absente INSEE - **/ - if ($siren>100 && $tabRet['DateCreaEn']==0) { - $insee=$this->iDbInsee->select('identite', 'DCREN', "SIREN=$siren AND DCREN>0 ORDER BY DCREN ASC LIMIT 0,1",false,MYSQL_ASSOC); - if (count($insee)>0) - $tabRet['DateCreaEn']=$insee[0]['DCREN']; - else { - $tmp=$this->getAvisInsee($siren); - $dateCreaEn=$classWDate->dateT('Y-m-d','Ymd',$tmp['dateEtatEn']); - if (preg_match("/Prise d'activité/", $tmp['etatEn']) && - $dateCreaEn>19000101) { - $this->iDbInsee->update('identite', array('DCREN'=>$dateCreaEn), - "SIREN=$siren AND NIC=".$etab['nic']); -/* @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "MInsee::getIdentiteEntreprise() sur $siren DateCreaEn trouvée", -print_r($tmp, true)); - } else - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "MInsee::getIdentiteEntreprise() sur $siren date NON TROUVEE", -print_r($tmp, true)); -*/ - } - } - } - $timer['dateDebutActivite']=microtime(true); - - - /** Adresse de domiciliation - **/ - $tabDom=$this->infoAdresseDom( $tabRet['AdresseNum'], - $tabRet['AdresseBtq'], - $tabRet['AdresseVoie'], - $tabRet['AdresseRue'], - $tabRet['Adresse2'], - $tabRet['CP'], $tabRet['Ville']); - if (is_array($tabDom) && count($tabDom)>0) - foreach($tabDom as $i=>$dom) { - $tabRet['AdresseDom']=1; - $tabRet['AdresseDomNb']=$dom['nbEntrep']; - $domiciliataire=''; - if (preg_match('/^CHEZ (.*)$/i',$tabRet['Adresse2'], $matches) && - !preg_match('/ M | M. | MR | MME | MLLE /i',$tabRet['Adresse2'])) { - $domiciliataire=$matches[1]; - $tabRet['AdresseDom']=2; - } - $tabRet['AdresseDomEnt'][]=array('siren'=>$dom['siren'], - 'nom'=>prepareString($dom['nom']), - ); - } - $timer['adresseDom']=microtime(true); - - - //Siren en doublon - if ($tab['sirenDoublon']>0) $tabRet['AutreSiren'] = array( - 'listeSiren' => array( - 'siren'=>$tab['sirenDoublon'], - 'type' =>'doublon' - ) - ); - - //Situation Juridique - if ($siren>100) { - $tabProcol = $this->getAnnoncesLegales($siren, 0, 'P', false); - - if (count($tabProcol)>0) { - - if ($this->dureePlan>0 && date('Ymd')<$this->finPlan) { - $tabRet['SituationJuridique']='PL'; - } - // Plan révolu - elseif ($this->dureePlan>0 && date('Ymd')>=$this->finPlan) { - $tabRet['SituationJuridique']=''; - } - // Appel de jugement - elseif ($this->appelJugement) { - $tabRet['SituationJuridique']='PA'; - } - // En cours de procédure - else { - $tabRet['SituationJuridique']='P'; - } - - $tabTmp=$this->iDb->select('scores_cutoff', 'encours, scoreSolv, scoreDir, scoreConf, DATE(dateInsert)*1 AS dateInsert, DATE(dateUpdate)*1 AS dateUpdate', "siren=$siren", false, MYSQL_ASSOC); - if( count($tabTmp) > 0 ) { - if ($tabTmp[0]['scoreSolv']>0) { - //Tri des dates de procol - $tabDates = array(); - foreach ($tabProcol as $iProcol=>$procol) { - $tabDates[]=$procol['dateJugement']; - } - rsort($tabDates); - $dateProcol = str_replace('-','',$tabDates[0])*1; - - if($tabTmp[0]['dateUpdate']>$tabTmp[0]['dateInsert']) { - $dateMaj=str_replace('-','',$tabTmp[0]['dateUpdate']); - } else { - $dateMaj=str_replace('-','',$tabTmp[0]['dateInsert']); - } - if ($dateProcol<=$dateMaj) { - $tabRet['SituationJuridique']=''; - } - } - } - - } elseif (count($this->getAnnoncesLegales($siren, 0, 'A', false))>0) { - $tabRet['SituationJuridique']='A'; - } elseif (count($this->getAnnoncesLegales($siren, 0, 'D', false))>0) { - $tabRet['SituationJuridique']='D'; - } - - /** Date de dernière mise à jour **/ - $tabAnn=$this->getAnnoncesLegales($siren, 0, '', false, false); - $tabDates=array(); - foreach ($tabAnn as $iAnn=>$ann) - $tabDates[]=$ann['dateInsertionSD']; - rsort($tabDates); - $tabRet['dateMajANN']=$classWDate->dateT('Y-m-d','Y-m-d',$tabDates[0]); - if ($tabRet['dateMajANN']=='--') $tabRet['dateMajANN']=''; - $timer['getAnnoncesLegales']=microtime(true); - } - - if (($tabInsee['CJ']>0 && $tabInsee['CJ']<20 || - $tabInsee['CJ']>999 && $tabInsee['CJ']<2000) && $tabInsee['DIR_FCT']=='') - $tabRet['dir1Titre']=self::$tabFct['PP']; - - if ($tabInsee['CIVILITE']>0 && $tabRet['dir1NomPrenom']=='') { - if ($tabInsee['CIVILITE']==1) $tabRet['dir1NomPrenom']='M. '; - elseif ($tabInsee['CIVILITE']==2) $tabRet['dir1NomPrenom']='Mme '; - $tabRet['dir1NomPrenom'].=$tabInsee['NOM']; - } - - if ($tabInsee['CIVILITE']>0 && ($tabRet['dir1Nom']=='' || $tabRet['dir1Prenom'])) { - $tmp=$this->iDbInsee->select( 'insee_even', 'dirNom, dirNomUsage, dirPrenom', "insSIREN=$siren ORDER BY insDATEVE DESC LIMIT 0,1", false, MYSQL_ASSOC); - $tabRet['dir1Nom']=@strtoupper($tmp[0]['dirNom']); - $tabRet['dir1Prenom']=@ucwords(strtolower(@$tmp[0]['dirPrenom'])); - $tabRet['dir1NomUsage']=@strtoupper($tmp[0]['dirNomUsage']); - unset($tmp); - } - - if ($tabInsee['ACTIF']==0 && $siren>100) { - if ($etab['nic']*1>0) $strNic='AND insNIC='.$etab['nic']; - else $strNic=''; -// $tmp=$this->iDbInsee->select( 'insee_even', 'insDATEVE', "insSIREN=$siren $strNic AND ( insEVE LIKE 'FF' OR insEVE LIKE '410' OR insEVE LIKE '420' OR insEVE LIKE '425' OR insDESTINAT<>'') ORDER BY insDATEVE DESC LIMIT 0,1", false, MYSQL_ASSOC); -// $tabRet['DateClotEn']=@$tmp[0]['insDATEVE']; - $tmp=$this->iDbInsee->select( 'insee_even', 'insDATEVE', "insSIREN=$siren $strNic AND ( insEVE LIKE 'FF' OR insEVE LIKE 'TF' OR insEVE LIKE '0F' OR insEVE LIKE 'TD' OR insEVE LIKE '0D' OR insEVE LIKE '410' OR insEVE LIKE '420' OR insEVE LIKE '425' OR insEVE LIKE '400' OR insEVE LIKE '430' OR insEVE LIKE '435' OR insDESTINAT<>'') ORDER BY insDATEVE DESC LIMIT 0,1", false, MYSQL_ASSOC); - $tabRet['DateClotEt']=@$tmp[0]['insDATEVE']; - unset($tmp); - $timer['dateClotureInsee']=microtime(true); - } - - if ($tabRet['TrancheCALib']=='') $tabRet['TrancheCALib']='N/C'; - if ($tabRet['EffEnTrLib']=='') $tabRet['EffEnTrLib']='N/C'; - - $tabRet['CapitalLib']=''; - $strEvenVtLg=" AND Rubrique<>'ventes' AND typeEven NOT LIKE '%2700%' AND typeEven NOT LIKE '%2701%' AND typeEven NOT LIKE '%2702%' AND typeEven NOT LIKE '%2703%' AND typeEven NOT LIKE '%2710%' AND typeEven NOT LIKE '%2720%' AND typeEven NOT LIKE '%2721%' AND typeEven NOT LIKE '%2725%' AND typeEven NOT LIKE '%2730%' AND typeEven NOT LIKE '%2740%' AND typeEven NOT LIKE '%2750%' AND typeEven NOT LIKE '%2800%' AND typeEven NOT LIKE '%2840%' AND typeEven NOT LIKE '%2850%' AND typeEven NOT LIKE '%2851%' AND typeEven NOT LIKE '%2860%' AND typeEven NOT LIKE '%2870%' AND typeEven NOT LIKE '%2875%' AND typeEven NOT LIKE '%2880%' AND typeEven NOT LIKE '%2881%' AND typeEven NOT LIKE '%2885%' AND typeEven NOT LIKE '%2890%' AND typeEven NOT LIKE '%2891%' AND typeEven NOT LIKE '%2892%' "; - if ($siren>100) { - if ($tabRet['CapitalSrc']<>5) { - /** Recherche du n° RC, de la Forme Juridique et du Capital au Bodacc **/ - $bodacc=$this->iDb->select( 'bodacc_detail', 'Capital, CapitalDev', - "siren=$siren AND capital<>0 $strEvenVtLg ORDER BY Bodacc_Date_Parution DESC LIMIT 0,1", false, MYSQL_ASSOC); - $annCap=@$bodacc[0]; - if ($tabRet['Capital']==0 || $tabRet['CapitalDev']=='' || $tabRet['Capital']<>$annCap['Capital']*1) { - if ($tabInsee['CJ']>1999 && $tabInsee['CJ']<7000) { - $tabRet['Capital']=$annCap['Capital']*1; - $tabRet['CapitalDev']=$annCap['CapitalDev']; - $tabRet['CapitalSrc']=10; - } - } - - if ($tabRet['Capital']==0 || $tabRet['CapitalDev']=='') { - $iDbHisto=new WDB('historiques'); - $bodaccHisto=$iDbHisto->select( - 'entrep e, texte x',//.codEven Code évènement du mouvement Bodacc libEven ', - 'e.ANBASE, e.NOBOD, e.CODTRI, e.JAL, e.DATE, e.CODEVE, e.SSCODE, e.DEPT, e.NOANN, e.ROLE, e.SIREN, e.E1GSIR, e.E1GNIC, x.annonceNum, x.annonceTxt', - "e.E1GSIR=$siren AND e.ANBASE=x.annonceNum AND e.DATE BETWEEN 19890101 AND 20041231 AND x.annonceTxt LIKE '%capital%' /*AND (e.CODEVE BETWEEN 10 AND 19 OR e.CODEVE BETWEEN 30 AND 41 OR e.CODEVE BETWEEN 51 AND 79 ) */ GROUP BY e.ANBASE ORDER BY e.DATE DESC", false, MYSQL_ASSOC); - if (count($bodaccHisto)>0) { - foreach ($bodaccHisto as $ann) { - if ($ann['DATE']<19960101 && $ann['E1GSIR']<>$ann['SIREN']) continue; - $tabCodeTri=$ann['CODTRI']; - if ( ($ann['CODEVE']>=10 && $ann['CODEVE']<20) || - ($ann['CODEVE']>=30 && $ann['CODEVE']<42) || - ($ann['CODEVE']>=51 && $ann['CODEVE']<80) ) { - if (preg_match('/Capital(?:.|)\:(.*)(eur.|f|livre)/Uis', $ann['annonceTxt'], $matches) && $tabInsee['CJ']>1999 && $tabInsee['CJ']<7000) - - $tabRet['Capital']=trim(strtr($matches[1],array(' '=>'', ',00 '=>'', '.00 '=>'')))*1; - if (substr(strtoupper($matches[2]),0,3)=='EUR') - $tabRet['CapitalDev']='EUR'; - elseif (substr(strtoupper($matches[2]),0,3)=='LIV') - $tabRet['CapitalDev']='GBP'; - else - $tabRet['CapitalDev']='FRF'; - break; - } - } - } - } - } - if ($tabRet['CapitalDev']<>'' && $tabRet['CapitalDev']<>'EUR') { - $dev=$tabRet['CapitalDev']; - $devise=$this->iDbSD->select( 'devise_liste l, devise_cours c', 'c.devise, c.valeur, c.date, l.devNom, l.devNomPays, l.devPaysIso', "c.devise='$dev' and l.devIso='$dev' ORDER BY c.date DESC LIMIT 0,1", false, MYSQL_ASSOC); - $dev=@$devise[0]; - //die(print_r($dev)); - $devise=$tabRet['Capital']*$dev['valeur']*1; - $tabRet['CapitalLib']=''.$dev['devNom'].' soit '.number_format(round($devise),null,null,' ').' EUR'; - } - $timer['capital']=microtime(true); - - /** Recherche du code Tribunal du siège **/ - if ($tabRet['CapitalSrc']<>5) { - $bodacc=$this->iDb->select( 'bodacc_detail', 'RC, FJ, Tribunal_Code', - "siren=$siren AND RC<>'' $strEvenVtLg ORDER BY Bodacc_Date_Parution DESC LIMIT 0,1", false, MYSQL_ASSOC); - if ($tabRet['AutreId']=='') $tabRet['AutreId']=@$bodacc[0]['RC']; - if ($tabRet['Tribunal']=='') $tabRet['Tribunal']=@$bodacc[0]['Tribunal_Code']; - } - - if ($tabRet['FJ_lib']=='') { - $bodacc=$this->iDb->select( 'bodacc_detail', 'FJ', - "siren=$siren AND FJ<>'' $strEvenVtLg ORDER BY Bodacc_Date_Parution DESC LIMIT 0,1", false, MYSQL_ASSOC); - $tabRet['FJ_lib']=@$bodacc[0]['FJ']; - } - /** Recherche de l'activité réelle **/ - $bodacc=$this->iDb->select( 'bodacc_detail', 'Activite', "siren=$siren AND Activite<>'' AND Activite NOT LIKE 'non precis%' $strEvenVtLg ORDER BY Bodacc_Date_Parution DESC LIMIT 0,1", false, MYSQL_ASSOC); - $annCap=$bodacc[0]; - if ($tabInsee['CJ']<7000 || $tabInsee['CJ']>7999) - $tabRet['Activite']=trim(/*preg_replace("/Adjonction.{1,7}activit(?:e|é)(?:.|)\:", '', */$annCap['Activite']);//); - - if ($tabRet['Activite']=='' && trim($tab['activite'])<>'') - $tabRet['Activite']=trim($tab['activite']); - elseif ($tabRet['Activite']=='' && ($tabInsee['CJ']>90 && $tabInsee['CJ']<94 || - $tabInsee['CJ']>9000 && $tabInsee['CJ']<9400) ) { - $siretMin=(''.$siren.'00000')*1; - $siretMax=(''.$siren.'99999')*1; - //$bodacc=$this->iDb->select( 'asso', 'Assoc_Web, Assoc_Mail, Assoc_Objet, Assoc_NObjet', "Siret BETWEEN $siretMin AND $siretMax AND (Assoc_Objet<>'' OR Assoc_NObjet<>'') ORDER BY Date_Parution DESC LIMIT 0,1", true, MYSQL_ASSOC); - $bodacc=$this->iDb->select( 'asso', 'Assoc_Web, Assoc_Mail, Assoc_Objet, Assoc_NObjet, Assoc_Nom, typeAsso, Waldec', "siren=$siren AND dateSuppr=0 AND (Assoc_Objet<>'' OR Assoc_NObjet<>'') ORDER BY Date_Parution DESC LIMIT 0,1", false, MYSQL_ASSOC); - $annCap=@$bodacc[0]; - $tabRet['Activite'] = trim($annCap['Assoc_NObjet']); - if (trim($tabRet['AutreId'])=='') - $tabRet['AutreId'] = trim($annCap['Waldec']); - $tabRet['nomLong'] = trim($annCap['Assoc_Nom']); - if ($tabRet['Activite']=='') $tabRet['Activite']=trim($annCap['Assoc_Objet']); - if ($tabRet['Web']=='') $tabRet['Web']=trim($annCap['Assoc_Web']); - if ($tabRet['Mail']=='') $tabRet['Mail']=trim($annCap['Assoc_Mail']); - if ($annCap['typeAsso']=='ASL' && $tabRet['FJ']<>9150) { - $tabRet['FJ2'] = $tabRet['FJ']; - $tabRet['FJ2_Lib'] = $tabRet['FJ_lib']; - $tabRet['FJ'] = 9150; - $tabRet['FJ_lib'] = $this->getLibelleFJ(9150); - } elseif ($annCap['typeAsso']=='FOD') { - $tabRet['FJ_lib'].= ' (Fonds de dotation)'; - } - if (trim($tabRet['AutreId'])=='') - $tabRet['AutreId'] = trim($waldec); - - } elseif ($tabRet['Activite']=='' && ($tabInsee['CJ']<7000 || $tabInsee['CJ']>7999)) { - $iDbHisto=new WDB('historiques'); - //10 à 19// Création d'entreprise - //30 à 41 - //51 à 79=>'1503', // Cloture insuf.Actif - $bodaccHisto=$iDbHisto->select( - 'entrep e, texte x',//.codEven Code évènement du mouvement Bodacc libEven ', - 'e.ANBASE, e.NOBOD, e.CODTRI, e.JAL, e.DATE, e.CODEVE, e.SSCODE, e.DEPT, e.NOANN, e.ROLE, e.SIREN, e.E1GSIR, e.E1GNIC, x.annonceNum, x.annonceTxt', - "e.E1GSIR=$siren AND e.ANBASE=x.annonceNum AND e.DATE BETWEEN 19890101 AND 20041231 AND x.annonceTxt LIKE '%ctivit%' GROUP BY e.ANBASE ORDER BY e.DATE DESC", false, MYSQL_ASSOC); - if (count($bodaccHisto)>0) { - foreach ($bodaccHisto as $idx=>$ann) { - if ($ann['DATE']<19960101 && $ann['E1GSIR']<>$ann['SIREN']) continue; - if ($tabCodeTri<>'' && $tabCodeTri<>@$ann['CODTRI']) $tabCodeTri=@$ann['CODTRI']; - //if ($siren==403119431) $tabRet['Activite'].="$idx(".$ann['CODEVE'].'):'.$ann['annonceTxt'].' / '; - if ( ($ann['CODEVE']<20) || - ($ann['CODEVE']>=30 && $ann['CODEVE']<42) || - ($ann['CODEVE']>=51 && $ann['CODEVE']<80) ) { - //Activite: r - if (preg_match('/(.*)Activit(?:e|é)(?:.|)\:(.*)(?:Adresse(?:.*|)|Commentaires?|Administration|Etablissement principal|Date d\'effet|Date.de.d.but d.activit.|Capital|Nom commercial)(?:.|)\:/Uis', $ann['annonceTxt'], $matches)) - if (strpos(substr($matches[1],-20),'cess') === false && - strpos(substr($matches[1],-20),'date') === false) { - $tabRet['Activite']=$matches[2]; - break; - } - } - } - } - } - $timer['activiteReelle']=microtime(true); - - $bodacc=$this->iDb->select('rncs_dirigeants', - "nom, prenom, naissance_nom, civilite, fonction_code as code, fonction_lib as libelle, naissance_date AS dateNaiss, naissance_lieu AS lieuNaiss, dirRS as rs, '' as dateEffet", - "siren=$siren AND actif%10=1 AND fonction_lib NOT LIKE '%Administrateur%' ORDER BY actif DESC, fonction_lib DESC", false, MYSQL_ASSOC); - if (count($bodacc)==0) - $bodacc=$this->iDb->select('rncs_dirigeants', - "nom, prenom, naissance_nom, civilite, fonction_code as code, fonction_lib as libelle, naissance_date AS dateNaiss, naissance_lieu AS lieuNaiss, dirRS as rs, '' as dateEffet", - "siren=$siren AND actif%10=0 AND fonction_lib NOT LIKE '%Administrateur%' ORDER BY actif DESC, fonction_lib DESC", false, MYSQL_ASSOC); - - if (count($bodacc)>0) { - $k=1; - foreach ($bodacc as $ann) { - if ($tabInsee['CJ']>=7000 && $tabInsee['CJ']<=7999 && - $ann['libelle']<>'Maire' && - //$ann['libelle']<>'Premier Adjoint' && - $ann['libelle']<>'Président' && - $ann['libelle']<>'Directeur général') continue; - $tabRet['dir'.$k.'Code']=$ann['code']; - $tabRet['dir'.$k.'Titre']=$ann['libelle']; - if (trim($ann['naissance_nom'])<>'') { - if ($ann['civilite']=='MME' || $ann['civilite']=='MLLE') - $nomNaiss=' née '.trim($ann['naissance_nom']); - elseif ($ann['civilite']=='M') - $nomNaiss=' né '.trim($ann['naissance_nom']); - else - $nomNaiss=' né(e) '.trim($ann['naissance_nom']); - } else $nomNaiss=''; - if (trim($ann['rs'])<>'') { - $tabRet['dir'.$k.'NomPrenom']=$ann['rs']; - if (trim($ann['nom'])<>'' || trim($ann['prenom'])<>'') - $tabRet['dir'.$k.'NomPrenom'].=' repr. par '.$ann['nom'].' '.$ann['prenom']; - } else { - $tabRet['dir'.$k.'NomPrenom']=$ann['nom'].' '.$ann['prenom'].$nomNaiss; - $tabRet['dir'.$k.'Nom']=$ann['nom']; - $tabRet['dir'.$k.'Prenom']=$ann['prenom']; - } - $tabRet['dir'.$k.'DateFct']=$ann['dateEffet']; - $tabRet['dir'.$k.'DateNaiss']=$ann['dateNaiss']; - $tabRet['dir'.$k.'LieuNaiss']=$ann['lieuNaiss']; - if ($k==2) break; - $k++; - } - } - else { - $bodacc=$this->iDb->select('bodacc_dirigeants d, bodacc_detail b, bodacc_fonctions f', - 'd.num, d.dateEffet, d.Rubrique, d.fonction, d.rs, d.nom, d.prenom, d.nomUsage, d.depart, d.dateInsert, f.libelle', - "b.SIREN=$siren AND b.id=d.id AND b.typeEven NOT BETWEEN 5000 AND 5700 AND b.typeEven NOT BETWEEN 2700 AND 2900 AND d.fonction=f.codeFct AND d.depart<>1 AND f.triCode IN ('ASS','COG','DID','DIR','GER','PCS','PDG','PRD','PRE','PRT','VIC') GROUP BY d.fonction, d.rs, d.nom, d.prenom ORDER BY d.dateEffet DESC", false, MYSQL_ASSOC); - //$annCap=@$bodacc[0]; - if (count($bodacc)>0) { - $k=1; - foreach ($bodacc as $ann) { - $tabRet['dir'.$k.'Code']=$ann['fonction']; - $tabRet['dir'.$k.'Titre']=$ann['libelle']; - $tabRet['dir'.$k.'NomPrenom']=$ann['rs'].' '.$ann['nom'].' '.$ann['prenom']; - $tabRet['dir'.$k.'Nom']=$ann['nom']; - $tabRet['dir'.$k.'Prenom']=$ann['prenom']; - $tabRet['dir'.$k.'DateFct']=$ann['dateEffet']; - if ($k==2) break; - $k++; - } - } - } - $timer['dirigeants']=microtime(true); - - /** Recherche du site Web ou Email dans le JO ASSO - **/ - if ( ($tabRet['Web']=='' || $tabRet['Mail']=='') && - ($tabInsee['CJ']>90 && $tabInsee['CJ']<94 || - $tabInsee['CJ']>9000 && $tabInsee['CJ']<9400) ) { - $siretMin=(''.$siren.'00000')*1; - $siretMax=(''.$siren.'99999')*1; - //$bodacc=$this->iDb->select( 'asso', 'Assoc_Web, Assoc_Mail', "Siret BETWEEN $siretMin AND $siretMax AND (Assoc_Web<>'' OR Assoc_Mail<>'') ORDER BY Date_Parution DESC LIMIT 0,1", true, MYSQL_ASSOC); - $bodacc=$this->iDb->select( 'asso', 'Assoc_Web, Assoc_Mail', "siren=$siren AND dateSuppr=0 AND (Assoc_Web<>'' OR Assoc_Mail<>'') ORDER BY Date_Parution DESC LIMIT 0,1", false, MYSQL_ASSOC); - $annCap=@$bodacc[0]; - if ($tabRet['Web']=='') $tabRet['Web']=trim($annCap['Assoc_Web']); - if ($tabRet['Mail']=='') $tabRet['Mail']=trim($annCap['Assoc_Mail']); - - } - } else { - if ($etab['source']==3) { - $id=$etab['source_id']; - $bodacc=$this->iDb->select( 'asso', 'Activite, Sous_Prefecture, Assoc_Web, Assoc_Mail, Assoc_Objet, Assoc_Fusion, Assoc_Date_Declaration2', "id=$id AND dateSuppr=0", false, MYSQL_ASSOC); - $annCap=@$bodacc[0]; - $tabRet['Activite'] = $annCap['Assoc_Objet']; - $tabRet['Web'] = $annCap['Assoc_Web']; - $tabRet['Mail'] = $annCap['Assoc_Mail']; - $tabRet['VilleDecl'] = $annCap['Sous_Prefecture']; - if ($tabRet['Actif']==0) { - // $tabRet['DateClotEn'] = $annCap['Assoc_Date_Declaration2']; - $tabRet['DateClotEt'] = $annCap['Assoc_Date_Declaration2']; - } else { - $tabRet['DateCreaEt'] = $annCap['Assoc_Date_Declaration2']; - $tabRet['DateCreaEn'] = $annCap['Assoc_Date_Declaration2']; - } - } - } - $timer['association']=microtime(true); - - - if (@count($etabG)>0) { - // On initialise les dernères variables en prov. d'Infogreffes - //$tabRet['DateClotEn'] = $etabG['DateRadiation']; - $tabRet['DateClotEt'] = $etabG['DateRadiation']; - $tabRet['dateImmat'] = $etabG['DateCreation']; - if ($tabRet['dateImmat']*1==0) - $tabRet['dateImmat']= substr($etabG['NumRC2'],0,4).'0101'; - $tabRet['DateCreaEt'] = $tabRet['DateCreaEn'] = substr($etabG['NumRC2'],0,4).'0100'; - - $tabRet['FJ'] = $etabG['FJ']; - if ($etabG['FJ']==1900) { - $tabRet['dir1Titre']='PP'; - $tabNom=explode(' ', $etabG['Nom']); - $tabNom[0]=strtoupper($tabNom[0]); - for($i=1; isset($tabNom[$i]); $i++) - if ($tabNom[$i]=='EPOUSE') - $tabNom[$i]='epouse'; - elseif ($tabNom[$i-1]<>'epouse') - $tabNom[$i]=ucwords(strtolower($tabNom[$i])); - $tabRet['dir1NomPrenom']=implode(' ', $tabNom); - } - $tabRet['FJ_lib'] = $etabG['FJLib']; // prepareString($etab['FJLib']), - $tabRet['AutreId'] = $etabG['NumRC']; - /* 'Source'=>$etab['source'], - 'SourceId'=>$etab['source_id'],*/ - $tabRet['NafEtab'] = $etabG['NafEtab']; - $tabRet['NafEnt'] = $etabG['NafEnt']; - $tabRet['NafEntLib'] = $etabG['NafEntLib']; - $tabRet['NafEtabLib'] = $etabG['NafEtabLib']; - $tabRet['SiretSiege'] = $etabG['Siret']; - $tabRet['DateMajRCS'] = $etab['dateMAJ']; - $tabRet['numGreffe'] = $etabG['NumGreffe']; - $tabRet['numRC'] = $etabG['NumRC2']; - $tabRet['Enseigne'] = $etabG['Enseigne']; - $iRncs=new MRncs(); - $tabRet['Tribunal'] = $iRncs->getCodeBodaccTribunal($etabG['NumGreffe']); - } - if ($tabRet['Siege']==1 && $tabRet['Actif'] && $tabRet['Tribunal']=='') - $tabRet['Tribunal']=$tabCodeTri; - - $rep=$this->iDb->select('rncs_entrep', 'siren, sirenValide, actif, numGreffe, triCode, triId, numRC, numRC2, raisonSociale, nom, prenom, nomUsage, sigle, dateNaiss, lieuNaiss, sexe, nationalite, pays, naf, cj, capitalMontant, capitalDevise, capitalDevIso, dateImma, dateRad, dateRad*1 AS dateRadNum, capitalType, capitalCent, provisoires, flux, DATE(dateUpdate) AS jourUpdate', "siren=$siren", false, MYSQL_ASSOC); - $entrep=$rep[0]; - if (isset($entrep['numGreffe'])) { //ETRANGER// - $tabRet['numGreffe'] = $entrep['numGreffe']; - $tabRet['numRC'] = $entrep['numRC2']; - if (( preg_match('/[A-Z]/i',substr($tabRet['AutreId'],2,2)) && - !preg_match('/[A-Z]/i',substr($tabRet['AutreId'],0,2)) - ) || $tabRet['AutreId']=='') - $tabRet['AutreId'] = $etabG['NumRC2']; - $tabRet['Tribunal'] = $entrep['triCode']; - if (strtoupper(trim($entrep['raisonSociale']))<>strtoupper(trim($tabRet['Nom']))) - $tabRet['nomLong'] = strtoupper($entrep['raisonSociale']); - if (strtoupper(trim($entrep['sigle']))<>strtoupper(trim($tabRet['Sigle']))) - $tabRet['sigleLong']= strtoupper($entrep['sigle']); - $tabRet['dateImmat'] = $entrep['dateImma']; - $tabRet['dateRad'] = $entrep['dateRad']; - //if ($entrep['actif']==0 && $entrep['dateRadNum']==0) {} - $tabRet['Capital'] = $entrep['capitalMontant']+($entrep['capitalCent']/100); - $tabRet['CapitalDev'] = $entrep['capitalDevIso']; - $tabRet['CapitalType'] = trim(strtoupper(substr($entrep['capitalType'],0,1))); - - // Par défaut, la Forme juridique qui fait foie est celle de l'INPI - $fjInpi=$entrep['cj']*1; - if ($tabRet['FJ']*1<>$fjInpi && $fjInpi>0) { - $tabRet['FJ2'] = $tabRet['FJ']; - $tabRet['FJ2_Lib'] = $tabRet['FJ_lib']; - $tabRet['FJ'] = $fjInpi; - $tabRet['FJ_lib'] = $this->getLibelleFJ($fjInpi); - } else { - $tabRet['FJ2'] = $tabRet['FJ']; - $tabRet['FJ2_Lib'] = $tabRet['FJ_lib']; - } - if ($fjInpi>=1000 && $fjInpi<2000) { - $tabRet['dir1Titre']='Personne physique'; - $tabRet['dir1NomPrenom']=strtoupper($entrep['nom']).' '.ucwords(strtolower($entrep['prenom'])); - $tabRet['dir1Nom']=strtoupper($entrep['nom']); - $tabRet['dir1Prenom']=ucwords(strtolower($entrep['prenom'])); - $tabRet['dir1NomUsage']=strtoupper($entrep['nomUsage']); - $tabRet['dir1DateNaiss']=$entrep['dateNaiss']; - $tabRet['dir1LieuNaiss']=$entrep['lieuNaiss']; - } - - if ($tabRet['DateMajRCS']=='') { - if ($entrep['jourUpdate']<>'0000-00-00') - $tabRet['DateMajRCS']=$entrep['jourUpdate']; - else - $tabRet['DateMajRCS']=$entrep['flux']; - } - if ($entrep['actif']==1 || $entrep['actif']==11) - $tabRet['EntActiveRCS']=1; // On signal que l'entreprise est active au RCS - else { - $tabRet['EntActiveRCS']=0; // On signal que l'entreprise est radié du RCS - if ($tabRet['SituationJuridique']=='') - $tabRet['SituationJuridique']='RR'; // On signal que l'entreprise est radié du RCS - } - - /** Spécificité EIRL **/ - if ($fjInpi==1000) { - $rep=$this->iDb->select('rncs_eirl', - 'denomination, activite', - "siren=$siren", false, MYSQL_ASSOC); - $entrep=$rep[0]; - $tabRet['Activite']=$entrep['activite']; - } - - /** Informations sur l'établissement au RNCS **/ - $rep=$this->iDb->select('rncs_etab', - 'id, siege, actif, enseigne, nomCommercial, - adrNumVoie, adrIndRep, adrLibVoie, adrTypeVoie, adrVoie, - cp, commune, adrComp, adresse1, adresse2, adresse3, - naf, dateFermeture, flux, dateInsert, DATE(dateUpdate) AS jourUpdate', - "siren=$siren AND nic=$nic", false, MYSQL_ASSOC); - $entrep=$rep[0]; - if (isset($entrep['id'])) { - $tabRet['EtabActifRCS']=0; - if ($entrep['jourUpdate']<>'0000-00-00' && - str_replace('-','',$entrep['jourUpdate'])*1>str_replace('-','',$tabRet['DateMajRCS'])) - $tabRet['DateMajRCS']=$entrep['jourUpdate']; - - if ($entrep['actif']*1==1) $tabRet['EtabActifRCS']=1; // On signal que l'établissement est actif au RCS - $tabRet['NomCommercial']=$entrep['nomCommercial']; - $tabRet['enseigneLong']=$entrep['enseigne']; - - if ($codePaysIso2<>'FR' && $codePaysIso2<>'') { - $tabRet['Adresse'] = trim(preg_replace('/ +/', ' ', $entrep['adrNumVoie'] .' '.$entrep['adrIndRep'].' '. - $entrep['adrTypeVoie'].' '.$entrep['adrVoie'])); - $tabRet['Adresse2'] = trim(preg_replace('/ +/', ' ', $entrep['adrComp'])); - $tabRet['AdresseNum'] = $entrep['adrNumVoie']; - $tabRet['AdresseBtq'] = $entrep['adrIndRep']; - $tabRet['AdresseVoie'] = $entrep['adrTypeVoie']; - $tabRet['AdresseRue'] = $entrep['adrVoie']; - $tabRet['CP'] = $entrep['cp']; - $tabRet['Ville'] = $entrep['commune']; - /* 'Siren'=>$etab['siren'], - 'Nic'=>$etab['nic'], - */ - } - } - $timer['infosRNCS']=microtime(true); - } elseif ($siren>1000) { - /** - ** Recherche au RM - **/ - $rep=$this->iDb->select('artisanat', 'siren, actif, numRM, denomination, sigle, nomCommercial, enseigne, fj, effectif, aprm, debutActivite, activite, adresse, cp, ville, cessation, radiation, nom,prenom,nomUsage,dateNaiss,lieuNaiss,qualite,qualif,dateQualif,dateFctDeb,dateFctFin,DATE(dateUpdate) AS jourUpdate, DATE(dateInsert) AS dateInsert', "siren=$siren", false, MYSQL_ASSOC); - $entrep=$rep[0]; - if (isset($entrep['numRM'])) { - $tabRet['AutreId'] = $entrep['numRM']; - - /** @todo Traiter ou non les zones : - * - denomination, fj,effectif,adresse,cp,ville, - * - cessation, dateQualif,dateFctDeb,dateFctFin - * Transformer les FJ en CJ dans la table - * Ajouter les fonctions des dir dans la table - * Ne pas prendre les supprimer dans la construction des index ! - */ - if ($tabRet['Activite']=='') $tabRet['Activite']=$entrep['activite']; - if ($tabRet['APRM']=='') { - $tabRet['APRM']=$entrep['aprm']; - $tabRet['APRM_Lib']=$this->getLibelleNafa($entrep['aprm']); - } - - // $tabRet['Tribunal'] = $entrep['triCode']; - if (strtoupper(trim($entrep['nom'].' '.$entrep['prenom'].' '.$entrep['nomUsage']))<>strtoupper(trim($tabRet['Nom']))) - $tabRet['nomLong'] = strtoupper(trim($entrep['nom'].' '.$entrep['prenom'].' '.$entrep['nomUsage'])); - if (strtoupper(trim($entrep['sigle']))<>strtoupper(trim($tabRet['Sigle']))) - $tabRet['sigleLong']= strtoupper($entrep['sigle']); - - $tabRet['dateImmat'] = $entrep['debutActivite']; - $tabRet['dateRad'] = $entrep['radiation']; - - // Si on est au greffe, on est artisan commercant - if ($tabRet['numGreffe']*1>0) - $fjInpi=1100; // Artisan Commerçant - else - $fjInpi=1300; // Artisan - - // Par défaut, la Forme juridique qui fait foie est celle de l'INPI - if ($tabRet['FJ']*1<>$fjInpi) { - $tabRet['FJ2'] = $tabRet['FJ']; - $tabRet['FJ2_Lib'] = $tabRet['FJ_lib']; - $tabRet['FJ'] = $fjInpi; - $tabRet['FJ_lib'] = $this->getLibelleFJ($fjInpi); - } else { - $tabRet['FJ2'] = $tabRet['FJ']; - $tabRet['FJ2_Lib'] = $tabRet['FJ_lib']; - } - - $tabRet['dir1Titre']=ucwords(strtolower($entrep['qualite'].' '.$entrep['qualif'])); - $tabRet['dir1NomPrenom']=strtoupper($entrep['nom']).' '.ucwords(strtolower($entrep['prenom'])); - $tabRet['dir1Nom']=strtoupper($entrep['nom']); - $tabRet['dir1Prenom']=ucwords(strtolower($entrep['prenom'])); - $tabRet['dir1DateNaiss']=$entrep['dateNaiss']; - $tabRet['dir1LieuNaiss']=$entrep['lieuNaiss']; - - if ($tabRet['DateMajRCS']=='') { - if ($entrep['jourUpdate']<>'0000-00-00') - $tabRet['DateMajRCS']=$entrep['jourUpdate']; - else - $tabRet['DateMajRCS']=$entrep['dateInsert']; - } - if ($entrep['actif']==1 || $entrep['actif']==11) - $tabRet['EntActiveRCS']=1; // On signal que l'entreprise est active au RCS - else { - $tabRet['EntActiveRCS']=0; // On signal que l'entreprise est radié du RCS - if ($tabRet['SituationJuridique']=='') - $tabRet['SituationJuridique']='RR'; // On signal que l'entreprise est radié du RCS - } - - $tabRet['NomCommercial']=$entrep['nomCommercial']; - $tabRet['enseigneLong']=$entrep['enseigne']; - } - } - - if ( $accesDist && - // Département couvert par Infogreffe - $tabRet['Dept']<>57 && $tabRet['Dept']<>67 && $tabRet['Dept']<>68 && $tabRet['Dept']<>97 && $tabRet['Dept']<>98 && $tabRet['Dept']<>99 && - // Forme Juridique présente au greffe - ( $tabInsee['CJ']==1100 || - $tabInsee['CJ']==1200 || - $tabInsee['CJ']==1300 || - $tabInsee['CJ']==1700 || - ($tabInsee['CJ']>=3100 && $tabInsee['CJ']<=3299) || - ($tabInsee['CJ']>=4100 && $tabInsee['CJ']<=4199) || - ($tabInsee['CJ']>=5100 && $tabInsee['CJ']<=5899) || - ($tabInsee['CJ']>=6100 && $tabInsee['CJ']<=6599) || - $tabInsee['CJ']==9900 || - preg_match('/EIRL/', $nom) || preg_match('/EIRL/', $nom2) || - preg_match('/EIRL/', $tabRet['Sigle']) || preg_match('/EIRL/', $tabRet['Enseigne']) || - preg_match('/EIRL/', $tabRet['Adresse']) || preg_match('/EIRL/', $tabRet['Adresse2']) - ) && - ( $tabInsee['CJ']==1700 || // Agents commerciaux (uniquement au Greffes RSAC) - $tabRet['numRC']=='' || // Numéro de RCS absent = Anomalie (<à3%) - $tabRet['Tribunal']=='' || // Tribunal absent = anomalie - str_replace('-','',$tabRet['dateImmat'])*1==0 || // Pas de date d'immat = anomalie (<à9%) - ($nbEtab*1==0 && str_replace('-','',$tabRet['dateRad'])*1==0) // Inactif sans date de RAD - ) - ) { - - if($this->debugtime) { - $ligne=date('YmdHis').";$siren;MGreffes Avant"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - $tdeb=microtime(1); - } - - $iGeffes=new MGreffes(); - $iRncs=new MRncs(); - $etabG=$iGeffes->getIdentite($siren); - - if($this->debugtime) { - $duree=round(microtime(1)-$tdeb,3); - $ligne=date('YmdHis').";$siren;MGreffes APRES ($duree s)"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - } - - if ($etabG) { - if ($tabRet['numRC']=='') $tabRet['numRC'] = $etabG['NumRC2']; - if ($tabRet['Tribunal']=='') $tabRet['Tribunal'] = $iRncs->getCodeBodaccTribunal($etabG['NumGreffe']); - if (str_replace('-','',$tabRet['dateImmat'])*1==0) $tabRet['dateImmat']= $etabG['DateCreation']; - if (str_replace('-','',$tabRet['dateRad'])*1==0) { - $tabRet['dateRad'] = $etabG['DateRadiation']; - if (str_replace('-','',$tabRet['dateRad'])*1>0 && $tabRet['SituationJuridique']=='') - $tabRet['SituationJuridique']='RR'; - } - if (preg_match('/[A-Z]/i',substr($tabRet['AutreId'],2,2)) || $tabRet['AutreId']=='') - $tabRet['AutreId'] = $etabG['NumRC2']; - } - $timer['infosInfogreffes']=microtime(true); - } - - /** Si il n'y a aucun établissement actif et qu'on est radié au RCS : - ** on part chercher la dernière annonce de Radiation au Bodacc - **/ - if (($nbEtab*1)==0 || (isset($entrep['numGreffe']) && $entrep['actif']==0 && $entrep['dateRadNum']==0)) { - $tabRad=$this->getAnnoncesLegales($siren, 0, 'R'); - //@file_put_contents('/var/www/html/ws2/inseeDebug.log', print_r($tabRad, true)); - if (count($tabRad)>0) { - // Il y a au moins une annonce de radiation au Bodacc - if ($tabRet['SituationJuridique']=='') - $tabRet['SituationJuridique']='RP'; - - $dateEff=str_replace('-','', $tabRad[0]['dateEffet'])*1; - $dateJug=str_replace('-','', $tabRad[0]['dateJugement'])*1; - $datePar=str_replace('-','', $tabRad[0]['DateParution'])*1; - if ($dateEff>0) - $tabRet['dateRad']=$dateEff; - elseif ($dateJug>0) - $tabRet['dateRad']=$dateJug; - elseif ($datePar>0) - $tabRet['dateRad']=$datePar; - } - $timer['infosRadiation']=microtime(true); - } - - /** Eléments Financiers en provenance du dernier Bilan - **/ - $rep=$this->iDb->select('bilans', 'siren, dateExercice, dureeExercice, monnaie, typeBilan, unite, postes, dateProvPartenaire, dateInsert', "siren=$siren AND typeBilan IN ('N','S') ORDER BY dateExercice DESC LIMIT 0,1", true, MYSQL_ASSOC); - $entrep=$rep[0]; - if (isset($entrep['dateExercice'])) { - $tabRet['bilanAnnee'] = substr($entrep['dateExercice'],0,4); - $tabRet['bilanDate'] = $entrep['dateExercice']; - $tabRet['bilanMois'] = $entrep['dureeExercice']; - $tabRet['bilanDevise'] = $entrep['monnaie']; - if ($entrep['dateProvPartenaire']>0) - $tabRet['bilanDateMaj']=$classWDate->dateT('Ymd','Y-m-d',$entrep['dateProvPartenaire']); - else - $tabRet['bilanDateMaj']=$classWDate->dateT('Y-m-d','Y-m-d',$entrep['dateInsert']); - - switch (strtoupper(trim($entrep['unite']))) { - case 'M': $unite='M'; break; - case 'K': $unite='K'; break; - default: $unite='U'; break; - } - $tabTmp=explode(';', $entrep['postes']); - $tabBilan=array(); - foreach ($tabTmp as $i=>$strTmp) { - $tabTmp2=explode('=', $strTmp); - if (isset($tabTmp2[1])) - if ($unite=='K' && $tabTmp2[0]<>'YP' && $tabTmp2[0]<>'YP1' && $tabTmp2[0]<>'376') - $tabBilan[$tabTmp2[0]]=$tabTmp2[1]*1000; - elseif ($unite=='M' && $tabTmp2[0]<>'YP' && $tabTmp2[0]<>'YP1' && $tabTmp2[0]<>'376') - $tabBilan[$tabTmp2[0]]=$tabTmp2[1]*1000000; - else $tabBilan[$tabTmp2[0]]=$tabTmp2[1]; - } - if (strtoupper($entrep['typeBilan'])=='S') { - $mBil=new MBilans(0); - $tabTmp=$mBil->bilanSimplifie2Normal($tabBilan); - $tabBilan=array_merge($tabTmp, $tabBilan); - } - - $tabRet['bilanDA'] = $tabBilan['DA']; - $tabRet['bilanFL'] = $tabBilan['FL']; - $tabRet['bilanHN'] = $tabBilan['HN']; - $tabRet['bilanYP'] = $tabBilan['YP']; - - // Fiche AGS - $tabRet['bilanPQ'] = $tabBilan['PQ']; - $tabRet['bilanPU'] = $tabBilan['PU']; - $tabRet['bilanPY'] = $tabBilan['PY']; - $tabRet['bilanQC'] = $tabBilan['QC']; - - /** Tranche de CA Bilan Réel si TCA Insee ou Estimée < dernière clôture **/ - if ($tabRet['AnneeTCA']<=$tabRet['bilanAnnee'] && $tabInsee['ACTIF']==1) { - $tabRet['TrancheCA']=$this->getTca($tabBilan['FL']); - $tabRet['TrancheCALib']=self::$tabTCA[$tabRet['TrancheCA']]; - $tabRet['TrancheCAType']='R'; - $tabRet['AnneeTCA']=$tabRet['bilanAnnee']; - } - - /** Contrôle de la cohérence du type d'exploitation **/ - if ($tabBilan['AH']>0 && // Je possède un fond commercial - $tabRet['TypeExploitation']<>2 && // et je ne suis pas Loueur d'un fond - $tabRet['TypeExploitation']<>3 && // et je ne suis pas Prestataire de personnel - $tabRet['TypeExploitation']<>10) { // et je ne suis pas exploitant direct - /*@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Identite sur $siren : Type d'exploitation", - "Fonds commercial au dernier bilan .... ".$tabBilan['AH'].EOL. - "Ancien type d'exploitation ........... ".$tabRet['TypeExploitation'].EOL. - "Nouveau type d'exploitation .......... 10 (exploitation directe)".EOL.print_r($tabBilan,true));*/ - $tabRet['TypeExploitation']=10; - } - - /** Controle de cohérence du capital car parfois absent en Alsace Moselle au RNCS **/ - if ($tabRet['FJ']>2000 && $tabRet['Capital']==0 && $tabRet['CapitalDev']=='') { - $tabRet['Capital']=$tabRet['bilanDA']; - $tabRet['CapitalDev']=$tabRet['bilanDevise']; - } - - $timer['infosBilan']=microtime(true); - } elseif($caEstime>0 && $tabInsee['ACTIF']==1) { - $tabRet['bilanAnnee'] = date('Y')-2; - $tabRet['bilanFLestime']=$caEstime; - } - - /** CA Estimé si aucune info Bilan au TCA Insee - **/ - //$tabRet['caEstime'] = getCAnafEffectif($tabRet['NafEnt'],$tabRet['Effectif']); - - $tabRet['TribunalLib']=$this->iBodacc->getTribunalNom($tabRet['Tribunal']); - - if($this->debugtime) { - $duree=round(microtime(1)-$tdebIni,3); - $ligne=date('YmdHis').";$siren;getIdentiteEntreprise Fin ($duree s) ==="; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - } - - /** Si on n'a trouvé aucune activité, on prend le libellé de l'activité pages Jaunes **/ - if ($tabRet['Activite']=='' && $activitePJ_An8<>'') - $tabRet['Activite']=$activitePJ_An8; - - /** Numero de Registre du métier si nécessaire **/ - if ( ($tabRet['FJ']==1100 || $tabRet['FJ']==1300 || $tabRet['FJ']==11 || $tabRet['FJ']==13 || $tabInsee['APRM']<>'') && - ($tabRet['Dept']=='2A' || $tabRet['Dept']=='2B' || $tabRet['Dept']<98) ) { - // Artisan Commerçant OU Artisan en FRANCE - $tabRet['NumRM']=$siren.' RM '.$tabRet['Dept']; - if ($tabRet['Dept']=='2A') $tabRet['NumRM'].='.1'; // Ajaccio - elseif ($tabRet['Dept']=='2B') $tabRet['NumRM'].='.2'; // Bastia - elseif ($tabRet['Dept']==97) $tabRet['NumRM'].=substr($tabRet['codeCommune'],0,1); - } - - /** Recherche des infos boursières **/ - $iBourse=new MBourse($siren); - $bourse=$iBourse->getInfosBourse($siren); - $tabRet['Bourse']=array('placeCotation'=>$bourse['placeCotation'], - 'nombreTitres'=>$bourse['nombreTitres'], - 'capitalisation'=>$bourse['close']*$bourse['nombreTitres'], - 'derCoursDate'=>$bourse['date'], - 'derCoursCloture'=>$bourse['close']); - $timer['infosBoursieres']=microtime(true); - - /** Date de dernière mise à jour **/ - $lastMaj=str_replace('-','',$tabRet['DateMajINSEE'])*1; - if (str_replace('-','',$tabRet['DateMajRCS'])*1>$lastMaj) - $lastMaj=str_replace('-','',$tabRet['DateMajRCS'])*1; - if (str_replace('-','',$tabRet['bilanDateMaj'])*1>$lastMaj) - $lastMaj=str_replace('-','',$tabRet['bilanDateMaj'])*1; - if (str_replace('-','',$tabRet['dateMajANN'])*1>$lastMaj) - $lastMaj=str_replace('-','',$tabRet['dateMajANN'])*1; - $tabRet['dateMajIdentite']=$classWDate->dateT('Ymd','Y-m-d',$lastMaj); - - $i=$dureeCalc=0;$strTime=''; - $strTimeCsv=date('Y/m/d H:i:s').",$siren,$nic,$id,"; - foreach ($timer as $lib=>$time) { - $strTime.=sprintf("%30s",$lib)."\t:\t"; - $duree=round($time-$timePre,3); - $dureeCalc+=$duree; - if ($i==0) { $strTime.="0 s"; $timeDeb=$time; } - else $strTime.="$duree s"; - $strTimeCsv.="$duree,"; - $strTime.="\n"; - $timePre=$time; - $i++; - } - $dureeTot=round($time-$timeDeb,3); - $tempsPerdu=round($dureeTot-$dureeCalc,3); - if ($tempsPerdu<0) $tempsPerdu=0; - $strTime.="Temps perdu\t:\t$tempsPerdu s ---------------------- -TOTAL : $dureeTot s\n"; - $strTimeCsv.="$tempsPerdu,$dureeTot".EOL; - - /*if (!file_exists(REP_TEMP.'/debugIdentite.csv')) { - $fp=fopen(REP_TEMP.'/debugIdentite.csv', 'a+'); - $strTimeTmp='dateTime,siren,nic,id,'; - foreach ($timer as $lib=>$time) - $strTimeTmp.=$lib.','; - $strTimeTmp.='tempsPerdu,dureeTot'.EOL; - fwrite($fp, $strTimeTmp); - fclose($fp); - } - $fp=fopen(REP_TEMP.'/debugIdentite.csv', 'a+'); - fwrite($fp, $strTimeCsv); - fclose($fp);*/ - - if(ENV<>'PRD' && $tabInfoUser['login']=='ylenaour') - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Identite sur $siren : Durées ".ENV, $strTime.EOL.print_r($tabRet,true)); - - return $tabRet; - } - - - function getDirigeantsOp($siren) { - $siren=$siren*1; - $tabRet=array(); - $dirs=$this->iDb->select( - 'sdv1.dirigeantsOp d, jo.bodacc_fonctions f', - 'siren, nic, civ, nom, prenom, d.codFct, f.libelle, tel, fax, email, dateInsert, dateUpdate', - "siren=$siren AND d.codFct=f.codeFct", false, MYSQL_ASSOC); - - foreach ($dirs as $k=>$dir) { - $tabRet[]=array( - 'Fonction' => $dir['codFct'], - 'Titre' => $dir['libelle'], - 'Societe' => '', - 'Civilite' => $dir['civ'], - 'Nom' => trim(strtoupper($dir['nom'])), - 'Prenom' => ucwords(strtolower($dir['prenom'])), - 'NaissDate' => '', - 'NaissVille' => '', - 'NaissDepPays' => '', - 'Ancien' => 0, - 'DateFct' => '', - 'Cinf' => 0, - ); - } - return $tabRet; - } - - function getDirigeants($siren, $histo=true) - { - $siren=$siren*1; - $tabRet=array(); - - $classWDate = new WDate(); - - if ($histo) { - $bodacc=$this->iDb->select( - 'bodacc_dirigeants d, bodacc_detail b, bodacc_fonctions f', - 'd.num, d.dateEffet, d.Rubrique, d.fonction, d.rs, d.nom, d.prenom, d.nomUsage, d.depart, d.dateInsert, f.libelle', - "b.SIREN=$siren AND b.id=d.id AND b.typeEven NOT BETWEEN 5000 AND 5700 AND b.typeEven NOT BETWEEN 2700 AND 2900 AND d.fonction=f.codeFct GROUP BY d.fonction, d.rs, d.nom, d.prenom ORDER BY d.dateEffet DESC, d.fonction DESC", true, MYSQL_ASSOC); - if (count($bodacc)>0) { - foreach ($bodacc as $k=>$ann) { - /* if (!$histo && ( - $ann['fonction']<>300 && // Commissaire aux comptes titulaire - $ann['fonction']<>301 && // Co-commissaire aux comptes suppléant - $ann['fonction']<>302 && // Co-commissaire aux comptes titulaire - $ann['fonction']<>303 && // Commissaire aux comptes suppléant - $ann['fonction']<>304) ) // Commissaire aux comptes - continue;*/ - $tabRet[]=array( 'Fonction' => $ann['fonction'], - 'Titre' => $ann['libelle'], - 'Societe' => $ann['rs'], - 'Nom' => trim(strtr($ann['nom'], array( "Modification d'"=>'', - "Modification de"=>'', - "Nomination d'un"=>'', - ))), - 'Prenom' => $ann['prenom'], - 'NomUsage' => $ann['nomUsage'], - 'Ancien' => $ann['depart'], - 'DateFct' => $ann['dateEffet'], - ); - } - } - $iDbHisto=new WDB('historiques'); - $iBodacc=new MBodacc(); - $bodaccHisto=$iDbHisto->select( - 'entrep e, texte x', - 'e.ANBASE, e.NOBOD, e.CODTRI, e.JAL, e.DATE, e.CODEVE, e.SSCODE, e.DEPT, e.NOANN, e.ROLE, e.SIREN, e.E1GSIR, e.E1GNIC, x.annonceNum, x.annonceTxt', - "e.E1GSIR=$siren AND e.ANBASE=x.annonceNum AND e.DATE BETWEEN 19890101 AND 20050101 AND x.annonceTxt LIKE '%Administration%' GROUP BY e.ANBASE ORDER BY e.DATE DESC", true, MYSQL_ASSOC); - if (count($bodaccHisto)>0) { - foreach ($bodaccHisto as $ann) { - if ($ann['DATE']<19960101 && $ann['E1GSIR']<>$ann['SIREN']) continue; - if ( ($ann['CODEVE']<20) || - ($ann['CODEVE']>=30 && $ann['CODEVE']<42) || - ($ann['CODEVE']>=51 && $ann['CODEVE']<80) ) { - if (preg_match('/Administration(?:.|)\:(.*)(?:Adresse.*|Commentaires?|Activit(?:e|é)|Etablissement principal|Date d\'effet|Date.de.d.but d.activit.)(?:.|)\:/Uis', $ann['annonceTxt'], $matches)) { - $iDir=0; - $tabAdministration=$iBodacc->getDirigeants($matches[1]); - foreach ($tabAdministration as $tabDir) { - /* $tabDir['num']=$numDir; - $tabDir['dateEffet']=$dateEffet; - $tabDir['id']=$idAnnRet; - $tabDir['Rubrique']='mmd'; - $tabDir['dateInsert']=$dateInsert; - //'fonction'=>$numFonction, 'rs'=>trim(str_replace(',','',$raisonSociale)), 'nom'=>$nom, 'prenom'=>$prenom, 'nomUsage'=>$usage, 'depart'=>$oldFonction); - - */ - $nom=trim(strtr(preg_replace('/ +/',' ', $tabDir['nom']), - array( "Modification d'"=>'', - "Modification"=>'', - "Modification de"=>'', - "Nomination d'un"=>'', - "Nomination en qualité d'"=>'', - "Nomination en qualité de"=>'', - "dont le est"=>'', - "nouvel"=>'', - "partant"=>'', - "ancien d'honneur"=>'', - "nouveaux"=>'', - "nouveau"=>'', - "ancien"=>'', - "Nouveau"=>'', - "Cette société se constitue Date de début d'"=>'', - ))); - if ($nom<>'') { - $tabRet[]=array( 'Fonction' => $tabDir['fonction'], - 'Titre' => $iBodacc->getFctDir($tabDir['fonction']),//.' ('.$tabDir['fonction'].')', - 'Societe' => $tabDir['rs'], - 'Nom' => $nom, - 'Prenom' => $tabDir['prenom'], - 'NomUsage' => $tabDir['nomUsage'], - 'Ancien' => $tabDir['depart'], - 'DateFct' => $classWDate->dateT('Ymd','Y-m-d', $ann['DATE']), - ); - $this->iDb->insert('bodacc_dirigeants_histo', - array( 'siren' => $siren, - 'id' => $ann['ANBASE'], - 'num' => $iDir, - 'dateEffet' => $classWDate->dateT('Ymd','Y-m-d', $ann['DATE']), - 'fonction' => $tabDir['fonction'], - 'rs' => $tabDir['rs'], - 'nom' => $nom, - 'prenom' => $tabDir['prenom'], - 'nomUsage' => $tabDir['nomUsage'], - 'depart' => $tabDir['depart'], - ), true); - /*if (mysql_errno()>0) { - echo mysql_errno().' : '.mysql_error().EOL; - }*/ - $iDir++; - } - } - //break; - } - } - } - } - } - - if (!$histo || ($histo && count($tabRet)==0) ) { - $dirs=$this->iDb->select( - 'rncs_dirigeants/* d, bodacc_fonctions f*/', - 'siren, raisonSociale, dirSiren, dirRS, civilite, nom, prenom, naissance_nom, naissance_date, naissance_lieu, fonction_code, fonction_lib, cinf, dateFin, flux, dateInsert/*f.libelle*/', - "siren=$siren /*AND d.fonction_code=f.codeFct*/ AND actif%10=1", false, MYSQL_ASSOC); - - foreach ($dirs as $k=>$dir) { - if ($dir['naissance_date']<>'0000-00-00') - $dateNaiss=$classWDate->dateT('Y-m-d','d/m/Y', $dir['naissance_date']); - else - $dateNaiss=''; - if ($dir['flux']<>'0000-00-00') - $dateModif=$classWDate->dateT('Y-m-d','d/m/Y', $dir['flux']); - else - $dateModif=$classWDate->dateT('Y-m-d','d/m/Y', $dir['dateInsert']); - $nom=trim($dir['nom']); - $nomUsage=''; - if (trim($dir['naissance_nom'])<>'') { - $nom=trim($dir['naissance_nom']); - $nomUsage=trim($dir['nom']); - } - $tabRet[]=array( 'Fonction' =>$dir['fonction_code'], - 'Titre' =>$dir['fonction_lib'], - 'Siren' =>$dir['dirSiren'], - 'Societe' =>$dir['dirRS'], - 'Civilite' =>$dir['civilite'], - 'Nom' =>$nom, - 'Prenom' =>$dir['prenom'], - 'NomUsage' =>$nomUsage, - 'NaissDate' =>$dateNaiss, - 'NaissVille' =>$dir['naissance_lieu'], - 'NaissDepPays' =>'', // 25 - 'Ancien' =>0, - 'DateFct' =>$dateModif, - 'Cinf' =>$dir['cinf'], - ); - } - } - - /** Recherche de CAC si liste des dirigeants actifs **/ - if (!$histo) { - $bodacc=$this->iDb->select( - 'bodacc_dirigeants d, bodacc_detail b, bodacc_fonctions f', - 'd.num, d.dateEffet, d.Rubrique, d.fonction, d.rs, d.nom, d.prenom, d.nomUsage, d.depart, d.dateInsert, f.libelle', - "b.SIREN=$siren AND b.id=d.id AND b.typeEven NOT BETWEEN 5000 AND 5700 AND b.typeEven NOT BETWEEN 2700 AND 2900 AND d.fonction=f.codeFct AND d.fonction BETWEEN 300 AND 304 GROUP BY d.fonction, d.rs, d.nom, d.prenom ORDER BY d.dateEffet DESC, d.fonction DESC", false, MYSQL_ASSOC); - if (count($bodacc)>0) { - foreach ($bodacc as $k=>$ann) { - $rs=trim(strtoupper($ann['rs'])); - $nom=preg_replace('/en fonction le .*/i','',$ann['nom']); - $nom=preg_replace('/Nomination .*/i','',$nom); - $nom=preg_replace('/Modification .*/i','',$nom); - $nom=preg_replace('/Nouvelles?\s+$/i','',trim($nom)); - $nom=preg_replace('/Nouveaux?\s+$/i','',trim($nom)); - $nom=preg_replace('/ancien.*/i','',$nom); - $nom=preg_replace('/en remplacement d.*/i','',$nom); - $nom=trim(strtoupper(preg_replace('/(\.|,)$/','',trim($nom)))); - $prenom=trim($ann['prenom']); - if ($prenom=='' && $rs=='' && $nom<>'') { - $rs=$nom; - $nom=''; - } - //if ($rs==$nom) - $tabRet[]=array('Fonction' => $ann['fonction'], - 'Titre' => $ann['libelle'], - 'Societe' => $rs, - 'Nom' => $nom, - 'Prenom' => $prenom, - 'NomUsage' => $ann['nomUsage'], - 'Ancien' => $ann['depart'], - 'DateFct' => $ann['dateEffet'], - ); - if ($k>1) break; // On s'arrête à 2 CAC (pb des co-cac non gérés) - } - } - } - - /** Si on ne trouve absolument rien, on regarde quand même dans l'histroique RNCS **/ - if (count($tabRet)==0) { - $dirs=$this->iDb->select( - 'rncs_dirigeants/* d, bodacc_fonctions f*/', - 'siren, raisonSociale, dirSiren, dirRS, civilite, nom, prenom, naissance_nom, naissance_date, naissance_lieu, fonction_code, fonction_lib, cinf, dateFin, flux, dateInsert, /*f.libelle*/ date(dateUpdate)*1 as dateUpdate', - "siren=$siren /*AND d.fonction_code=f.codeFct*/ AND actif%10=0 ORDER BY dateUpdate DESC", false, MYSQL_ASSOC); - - $dateUpdatePre=$dirs[0]['dateUpdate']; - foreach ($dirs as $k=>$dir) { - if ($dir['naissance_date']<>'0000-00-00') - $dateNaiss=$classWDate->dateT('Y-m-d','d/m/Y', $dir['naissance_date']); - else - $dateNaiss=''; - if ($dir['flux']<>'0000-00-00') - $dateModif=$classWDate->dateT('Y-m-d','d/m/Y', $dir['flux']); - else - $dateModif=$classWDate->dateT('Y-m-d','d/m/Y', $dir['dateInsert']); - if ($dir['dateUpdate']<>$dateUpdatePre) break; - $tabRet[]=array( 'Fonction' => $dir['fonction_code'], - 'Titre' => $dir['fonction_lib'], - 'Siren' => $dir['Siren'], - 'Societe' => $dir['dirRS'], - 'Civilite' => $dir['civilite'], - 'Nom' => trim($dir['nom']), - 'Prenom' => $dir['prenom'], - 'NomUsage' => $tabDir['nomUsage'], - 'NaissDate' => $dateNaiss, - 'NaissVille' => $dir['naissance_lieu'], - 'NaissDepPays' => '', // 25 - 'Ancien' => 1, - 'DateFct' => $dateModif, - 'Cinf' => $dir['cinf'], - ); - $dateUpdatePre=$dir['dateUpdate']; - } - } - - if (count($tabRet)==0) { - - if ($tabIdentite['FJ']*1>1000 && $tabIdentite['FJ']*1<2000) { - $tabTmp=explode(' ', $tabIdentite['Nom']); - $nom=$prenom=''; - foreach ($tabTmp as $mot) - if (strtoupper($mot)==$mot) - $nom.=' '.$mot; - else - $prenom.=' '.$mot; - if ($etab['Civilite']*1==1) { $genre='Monsieur '; $civilite='M'; } - elseif ($etab['Civilite']*1==2) { $genre='Madame '; $civilite='MME'; } - else { $genre=''; $civilite=''; } - - $tabTmp=$this->iDbInsee->select('identite', 'SIREN, CJ, CIVILITE, DIR_DATEN, DIR_LIEUN', - "SIREN=$siren AND (DIR_DATEN>0 OR DIR_LIEUN<>'') ORDER BY DIR_DATEN DESC, DIR_LIEUN DESC", - false, MYSQL_ASSOC); - $tabTmp=@$tabTmp[0]; - - $tabRet[]=array( 'Titre' =>'Personne physique', - 'Societe' =>'',//utf8_encode($dir['Societe']), - 'Civilite' =>$civilite, - 'Nom' =>trim($nom), - 'Prenom' =>trim($prenom), - 'NomUsage' =>'', - 'NaissDate' =>$classWDate->dateT('Ymd', 'd/m/Y', $tabTmp['DIR_DATEN']),// 07/09/1961 - 'NaissVille' =>$tabTmp['DIR_LIEUN'], // LE RUSSEY//, - 'NaissDepPays' =>'', // 25 - 'Ancien' =>0, - 'DateFct' =>$tabIdentite['DateCrea'],//$tabIdentite['DateImma'], - ); - $this->iDb->insert('rncs_dirigeants', array('siren' => $siren, - 'raisonSociale' => $etab['Nom'], - 'civilite' => $civilite, - 'nom' => trim($nom), - 'prenom' => trim($prenom), - 'naissance_nom' => '', - 'naissance_date'=> $tabTmp['DIR_DATEN'], - 'naissance_lieu'=> $tabTmp['DIR_LIEUN'], - 'fonction_code' => 1050, - 'fonction_lib' => 'Personne physique', - 'actif' => 1, - 'dateInsert' => date('YmdHis'), - 'source' => 'inp', - ), true); - } - } - return $tabRet; - } - - /** - * Liste des annonces légales pour un siren donnée - * @param integer $siren - * @param integer $idAnnonce - * @param mixed $rubrique Filter par rubrique - * (P)rocol, (D)issolution, (R)adiation, (A)bsorption, (L)ocataire, (G)érance:propriétaire, - * (V)endeur, bodacc (C), (BODA) (BODB) (BODC) ou tableau des codeEven - * @param bool $forceVerif - * @return array - */ - function getAnnoncesLegales($siren, $idAnnonce=0, $rubrique='', $forceVerif=false, $allTextes=false, $deleted=false) - { - $siren=$siren*1; - $strIdAnn = ''; - $tabRet = array(); - $procol = false; // Par défaut, on ne trouve pas de procédure collective ! - $this->dureePlan = 0; // Par défaut, on ne trouve aucune durée de plan - - $classWDate = new WDate(); - - $tabId = $this->getIdentiteLight($siren); - $fj = $tabId['FJ']; - - if ($idAnnonce>0) $strIdAnn=" AND d.id=$idAnnonce "; - elseif ($idAnnonce==0 && $siren<100) return $tabRet; - - if ( !is_array($rubrique) && !in_array($rubrique, array('','P','PH','D','A','C','R','L','G','V','BODA','BODB','BODC')) ) - return false; - - if ($rubrique=='P' || $rubrique=='PH') // Procédure collective - $strIdAnn=" AND d.Rubrique='procol' AND d.typeEven NOT LIKE '%1005%' - AND d.typeEven NOT LIKE '%1010%' - AND d.typeEven NOT LIKE '%1050%' - AND d.typeEven NOT LIKE '%1055%' - AND d.typeEven NOT LIKE '%1550%' "; - /** - * @todo Prévoir de ne pas sortir l'annonce si 'P' demandé et date juge > 10 ans - * AND e.DATE>=".((date('Y')*1)-10).''.date('md') - */ - elseif ($rubrique=='D') // Dissolution de la société - $strIdAnn=" AND (d.typeEven LIKE '%2202%' OR d.typeEven LIKE '%2203%' OR d.typeEven LIKE '%2204%' OR - d.typeEven LIKE '%2210%' OR d.typeEven LIKE '%2211%' OR d.typeEven LIKE '%2212%') "; - elseif ($rubrique=='A') // Absorption - $strIdAnn=" AND (d.typeEven LIKE '%2720%' OR d.typeEven LIKE '%2721%') "; - elseif ($rubrique=='BODA') // BODACC A - $strIdAnn=" AND d.Rubrique IN ('creations','procol','ventes') "; - elseif ($rubrique=='BODB') // BODACC B - $strIdAnn=" AND d.Rubrique IN ('mmd','radiations') "; - elseif ($rubrique=='C' || $rubrique=='BODC') // Dépôt des comptes, BODACC C - $strIdAnn=" AND (d.Rubrique='comptes' OR d.typeEven LIKE '%3100%' OR d.typeEven LIKE '%3200%' - OR d.typeEven LIKE '%3300%' OR d.typeEven LIKE '%3999%') "; - elseif ($rubrique=='R') - $strIdAnn=" AND (d.typeEven LIKE '%2202%' OR d.typeEven LIKE '%2203%' OR d.typeEven LIKE '%2204%' OR - d.typeEven LIKE '%2210%' OR d.typeEven LIKE '%2211%' OR d.typeEven LIKE '%2212%' OR - d.Rubrique='radiations') "; - elseif ($rubrique=='L') // Location gérance Locataire - $strIdAnn=" AND (d.typeEven LIKE '%2800%' OR d.typeEven LIKE '%2875%' OR d.typeEven LIKE '%2880%' OR - d.typeEven LIKE '%2881%' OR d.typeEven LIKE '%2885%' OR d.typeEven LIKE '%2840%' OR - d.typeEven LIKE '%4355%') "; - elseif ($rubrique=='G') // Location gérance Propriétaire - $strIdAnn=" AND (d.typeEven LIKE '%2850%' OR d.typeEven LIKE '%2851%' OR d.typeEven LIKE '%2860%' OR - d.typeEven LIKE '%2870%') "; - elseif ($rubrique=='V') // Ventes/Cessions - $strIdAnn=" AND (d.typeEven LIKE '%5500%' OR d.typeEven LIKE '%5501%' OR d.typeEven LIKE '%5502%' OR - d.typeEven LIKE '%5503%' OR d.typeEven LIKE '%5510%' OR d.typeEven LIKE '%5600%' OR - d.typeEven LIKE '%5650%') "; - elseif (is_array($rubrique) && count($rubrique)>0) { - $strIdAnn=" AND ("; - foreach ($rubrique as $codeEven) - $tabTmp[]=" d.typeEven LIKE '%$codeEven%' "; - $strIdAnn.= implode(' OR ',$tabTmp); - $strIdAnn.=')'; - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "classMInsee::getAnnonces... sur $siren", $strIdAnn); - } - - //Stockage en mémoire pour requetes multiples - if ( $idAnnonce == 0 && $this->AnnoncesInMemory === true ) { - $strIdAnn = ''; - - if ($rubrique=='P' || $rubrique=='PH') { - $dRubriqueIn = array('procol'); - $dRubriqueOut = array(); - $dTypeEvenIn = array(); - $dTypeEvenOut = array('1005','1010','1050','1055','1550'); - } elseif ($rubrique=='D') { // Dissolution de la société - $dRubriqueIn = array(); - $dRubriqueOut = array(); - $dTypeEvenIn = array('2202','2203','2204','2210','2211','2212'); - $dTypeEvenOut = array(); - } elseif ($rubrique=='A') { // Absorption - $dRubriqueIn = array(); - $dRubriqueOut = array(); - $dTypeEvenIn = array('2720','2721'); - $dTypeEvenOut = array(); - } elseif ($rubrique=='BODA') { // BODACC A - $dRubriqueIn = array('creations','procol','ventes'); - $dRubriqueOut = array(); - $dTypeEvenIn = array(); - $dTypeEvenOut = array(); - } elseif ($rubrique=='BODB') { // BODACC B - $dRubriqueIn = array('mmd','radiations'); - $dRubriqueOut = array(); - $dTypeEvenIn = array(); - $dTypeEvenOut = array(); - } elseif ($rubrique=='C' || $rubrique=='BODC') { // Dépôt des comptes, BODACC C - $dRubriqueIn = array('comptes'); - $dRubriqueOut = array(); - $dTypeEvenIn = array('3100','3200','3300','3999'); - $dTypeEvenOut = array(); - } elseif ($rubrique=='R') { - $dRubriqueIn = array('radiations'); - $dRubriqueOut = array(); - $dTypeEvenIn = array('2202','2203','2204','2210','2211','2212'); - $dTypeEvenOut = array(); - } elseif ($rubrique=='L') { // Location gérance Locataire - $dRubriqueIn = array(); - $dRubriqueOut = array(); - $dTypeEvenIn = array('2800','2875','2880','2881','2885','2840','4355'); - $dTypeEvenOut = array(); - } elseif ($rubrique=='G') { // Location gérance Propriétaire - $dRubriqueIn = array(); - $dRubriqueOut = array(); - $dTypeEvenIn = array('2850','2851','2860','2870'); - $dTypeEvenOut = array(); - } elseif ($rubrique=='V') { // Ventes/Cessions - $dRubriqueIn = array(); - $dRubriqueOut = array(); - $dTypeEvenIn = array('5500','5501','5502','5503','5510','5600','5650'); - $dTypeEvenOut = array(); - } elseif (is_array($rubrique) && count($rubrique)>0) { - $dRubriqueIn = array(); - $dRubriqueOut = array(); - $dTypeEvenIn = array(); - $dTypeEvenOut = array(); - foreach ($rubrique as $codeEven) $dTypeEvenIn[]= $codeEven; - } - } - - //elseif ($rubrique=='V') $strIdAnn=" AND d.Rubrique='ventes' "; - - /** On recherche dans les annonces récentes **/ - if ($idAnnonce==0 || $idAnnonce>=1) { - - //Annonces supprimées ou rectifiées - $strDeleted = "AND d.dateSuppr=0 "; - if ( $deleted === true ) { - $strDeleted = "AND (d.dateSuppr=0 OR d.dateSuppr!='0000-00-00 00:00:00' AND d.idSuppr=0) "; - } - - $groupBy=' '; - $strCle='1 '; - if ($siren<>0) $strCle ="d.siren=$siren "; - else $groupBy=' GROUP BY d.id '; - - if ( $this->AnnoncesInMemory === true && count($this->annoncesBodacc)==0 - || $this->AnnoncesInMemory === false ) { - - $bodacc = $this->iDb->select( - 'bodacc_detail d, bodacc b, tribunaux t',//.codEven Code évènement du mouvement Bodacc libEven ', - "b.id, b.Bodacc_Code, b.Bodacc_Annee_Parution, b.Bodacc_Num, b.Num_Annonce, b.Bodacc_Date_Parution, b.Tribunal_Dept, b.Tribunal_Code, d.Rubrique, b.typeAnnonce, b.corrNum_Annonce, b.corrBodacc_Date_Parution, b.corrPage, b.corrNumParution, b.corrTexteRectificatif, b.annonce, b.dateInsert, t.triCode, t.triNom, t.triSiret, d.typeEven, d.dateEffet, d.dateDebutActivite, d.dateCessationActivite, d.dateJugement, d.dateFinObservation, d.VenteMt, d.VenteDev, d.FJ, d.Capital, d.CapitalDev, CONCAT(d.commentaires,' ',d.fusion) as complement, d.raisonSociale, d.nomCommercial, d.enseigne, d.sigle, d.adresse, d.codePostal, d.ville, d.adresseSiege, d.codePostalSiege, d.villeSiege, IF(d.dateSuppr=0,'',d.dateSuppr) AS deleted", - "$strCle AND d.id=b.id AND b.Tribunal_Code=t.triCode $strDeleted $strIdAnn $groupBy ORDER BY b.Bodacc_Date_Parution DESC", false, MYSQL_ASSOC); - - if ( $this->AnnoncesInMemory === true ) - $this->annoncesBodacc = $bodacc; - - } - - //Filtrer les annonces en mémoire - if ( $this->AnnoncesInMemory === true && count($this->annoncesBodacc)>0 ) { - - $bodacc = array(); - foreach ( $this->annoncesBodacc as $ann ) { - $stop = false; - - if (count($dRubriqueOut)>0 && in_array($ann['Rubrique'], $dRubriqueOut) ) { - $stop = true; - } - if (count($dRubriqueIn)>0 && !in_array($ann['Rubrique'], $dRubriqueIn) ) { - $stop = true; - } - - $tabEven = explode(';', $ann['typeEven']); - foreach ($tabEven as $even) { - if (count($dTypeEvenOut)>0 && in_array($ann['typeEven'], $dTypeEvenOut) ) { - $stop = true; - } - if (count($dTypeEvenIn)>0 && !in_array($ann['typeEven'], $dTypeEvenIn) ) { - $stop = true; - } - } - if($stop === true) continue; - - $bodacc[] = $ann; - } - } - - $k=0; - if (count($bodacc)>0) { - foreach ($bodacc as $k=>$ann) { - $tabEven=explode(';', $ann['typeEven']); - $tabRetEven=array(); - - if ($ann['typeAnnonce']<>'Insertion') { - - //Sélection des événements - foreach ($tabEven as $even) { - if ($even!=0) { - $tabRetEven[]=array( - 'CodeEven' => $even, - 'LibEven' => $this->iBodacc->getEvenement($even) - ); - } - } - //Libellé générique - $tabRetEven[] = array( - 'CodeEven' => '0000', - 'LibEven' => $ann['typeAnnonce']." de l'annonce du ".$classWDate->dateT('Y-m-d','d/m/Y',$ann['corrBodacc_Date_Parution']) - ); - - } else { - - if (trim($ann['typeEven'])<>'') { - foreach ($tabEven as $even) { - if ( $even!=0 ) { - $tabRetEven[] = array( - 'CodeEven'=>$even, - 'LibEven'=>$this->iBodacc->getEvenement($even) - ); - - if ( ($this->dureePlan==0 || $this->dureePlan==120) - && ( $even==1407 // Modification de plan - || $even==1409 // Modification du plan de continuation - || $even==1413 // Arrêt du plan de continuation - || $even==1414 // Arrêt du plan de redressement - || $even==1101 // Arrêt du plan de sauvegarde - ) - ) { - //Lecture dureePlan dans annonce - $this->debutPlan=str_replace('-','',$ann['dateJugement']); // SSAAMMJJ - if (preg_match('/dur.e(?:.*)plan(?:.*)(\d+)\s+ans?/Uis', $ann['annonce'], $matches)) { - $this->dureePlan = $matches[1]*12; // 10 ans = 120 mois - } - - //file_put_contents('test.log', "MATCH DUREE PLAN\n".print_r($ann,1)."\n"); - - //dureePlan par défaut sur FJ et par défaut - if ($this->dureePlan<1 || $this->dureePlan>120 ) { - if ( in_array($fj, array( - 16,1600, // Exploitant agricole - 63,6316,6317,6318, // Société coopérative agricole - 5431,5432,5531,5532, // SMIA, SICA - 5631,5632,6532, - 6533,6534,6535, // GAEC, GFA, Gpt Agricole Foncier - 6597,6598, - )) - ) { - $this->dureePlan=180; // 15 ans - } else { - $this->dureePlan=120; // 10 ans = 120 mois - } - } - $this->finPlan=$classWDate->period2Days($this->debutPlan, $this->dureePlan.' mois'); - } - - } - } - - } else { - switch ($ann['Rubrique']) { - case 'mmd': $codeEven='2313'; $libEven='Modification(s) diverse(s)'; break; - case 'comptes': $codeEven='3999'; $libEven='Dépôt des comptes'; break; - case 'creations': $codeEven='4999'; $libEven='Création d\'entreprise'; break; - case 'procol': $codeEven='1999'; $libEven='Procédure collective'; break; - case 'radiations': $codeEven='6700'; $libEven='Radiation'; break; - case 'ventes': $codeEven='5999'; $libEven='Vente/Cession'; break; - default: $codeEven='0000'; $libEven=$ann['Rubrique']; break; - } - $tabRetEven[]=array('CodeEven'=>$codeEven,'LibEven'=>$libEven); - } - } - - if ($ann['Rubrique']=='procol') $procol=true; - - //dateDebutActivite - // - $dateCes=str_replace('-','', $ann['dateCessationActivite'])*1; - $dateDeb=str_replace('-','', $ann['dateDebutActivite'])*1; - $dateEff=str_replace('-','', $ann['dateEffet'])*1; - if ($dateCes>0) - $dateEffet=$ann['dateCessationActivite']; - elseif ($dateDeb>0) - $dateEffet=$ann['dateDebutActivite']; - else - $dateEffet=$ann['dateEffet']; - $adresseAnn=trim(preg_replace('/ +/',' ', $ann['adresseSiege'].' '.$ann['codePostalSiege'].' '.$ann['villeSiege'])); - - if (strlen($adresse)<8) - $adresseAnn=trim(preg_replace('/ +/',' ', $ann['adresse'].' '.$ann['codePostal'].' '.$ann['ville'])); - - $tabRet[$k]=array( - 'id'=>$ann['id'], - 'BodaccCode'=>'BOD'.$ann['Bodacc_Code'], - 'BodaccNum'=>$ann['Bodacc_Num'], - 'NumAnnonce'=>$ann['Num_Annonce'], - 'DateParution'=>$ann['Bodacc_Date_Parution'], - 'Departement'=>$ann['Tribunal_Dept'], - 'Tribunal'=>$ann['triNom'], - 'TribunalCode'=>$ann['triCode'], - 'TribunalSiret'=>$ann['triSiret'], - 'Rubrique'=>$ann['Rubrique'], - 'typeAnnonce'=>$ann['typeAnnonce'], - 'texteRectificatif'=>$ann['corrTexteRectificatif'], - //'texteAnnonce'=>$ann['annonce'], - 'dateEffet'=>$dateEffet, - 'dateJugement'=>$ann['dateJugement'], - /// d.dateDebutActivite, d.dateCessationActivite, d.dateJugement', - 'dateFin'=>$ann['dateFinObservation'], - 'montantVente'=>trim($ann['VenteMt'].' '.$ann['VenteDev']), - 'libFJ'=>$ann['FJ'], - 'codFJ'=>$this->iBodacc->getCodeFormeJur($ann['FJ']), - 'capital'=>$ann['Capital'], - 'capitalDev'=>$ann['CapitalDev'], - 'raisonSociale'=>$ann['raisonSociale'], - 'nomCommercial'=>$ann['nomCommercial'], - 'sigle'=>$ann['sigle'], - 'adresse'=>$adresseAnn, - 'dateInsertionSD'=>$ann['dateInsert'], - 'evenements'=>$tabRetEven, - 'complement'=>$ann['complement'], - 'deleted' => $ann['deleted'], - ); - - if ($idAnnonce<>0 || $allTextes) - $tabRet[$k]['texteAnnonce']=$ann['annonce']; - } - } - } - //Fin recherche dans les annonces récentes - - /** On recherche dans les annonces passées **/ - if ($idAnnonce==0 || $idAnnonce<0) { - - $iDbHisto=new WDB('historiques'); - $tabTmp=array( 10=>'4000', // Création d'entreprise - 11=>'4000', - 13=>'4000', - 14=>'4000', - 15=>'4000', - 16=>'4000', - 17=>'4200', // Création d'établissement - 18=>'4200', - 19=>'4200', - 20=>'5999', // ou 5700 en fonction du code xxx - 21=>'5999', - 22=>'5999', - 24=>'5999', - 25=>'5999', - 30=>'2500', // Confirmation Ets - 31=>'2318', - 32=>'2318', - 33=>'2318', - 34=>'2318', - 35=>'2318', - 36=>'2318', - 37=>'2800', // Loc. Gérance recue - 38=>'2860', // Loc. Gérance donnée - 39=>'2318', - 40=>'6700', // Radiation - 41=>'2202', // Dissolution - 42=>'2885', // Fin location gérance - 51=>'1209', // Règlement Judiciaire - 52=>'1200', // Redressement Judiciaire - 53=>'1207', // Règlemement amiable - //53=> Conciliation ???????????????????????????????????????? - 56=>'1310', // Procédure d'Insolvabilité Européenne - 57=>'1100', // Jugement de sauvegarde - 58=>'1101', // Plan de sauvegarde - 59=>'1506', // Rectif ou Annulation RJ - 60=>'1305', // Redr.& liq.Judiciaire - 61=>'1603', // Liquidation de Biens - 62=>'1305', - 63=>'1600', // Faillite personnelle - 64=>'1601', // Interdiction de gérer - 65=>'1305', - 66=>'1306', // Liquidation Judiciaire Simplifiée - 69=>'1506',//Rectif ou Annul.LJ - 70=>'1550', // Suites de jugements - 71=>'1550', // Suite reglement/L - 72=>'1550', // Suite redressement/L - 73=>'1550', // Susp.Provis.pours. ????????????????????????????????????????? - 74=>'1505', // Appel de jugement - 75=>'1407', // Modif. de Plan - 76=>'1502', // Extinction Passif - 77=>'1210', // Production - 78=>'1204', // Dépôt des créances - 79=>'1503', // Cloture insuf.Actif - 92=>'1450', //Cessation paiement ?? - ); - $tabTmp2=array( ''=>'2318', - 'a'=>'2308', // Chg de dénomination(RS,Ens,Sigle) - 'b'=>'2300', // Changement d'Adresse - 'c'=>'2101', // Chg.Capital/Cess.apport de parts - 'd'=>'2315', // Changement de Dirigeants - 'e'=>'2313', // Mod Act/obj.soc./Cess./Mise somm. - 'f'=>'2307', // Changement de Forme juridique - 'g'=>'2318', // Opération sur Participations - 'h'=>'2725', // Fusion Absorption - 'i'=>'2318', // Mod.garantie financière/Caution - 'j'=>'2401', // Changement de régime matrimonial - 'k'=>'2319', // Non dissolution anticipée - 'l'=>'2318', // Non dissolution anticipée - 'm'=>'2318', // Dissolution anticipée (ou non) - 'n'=>'2303', // Mod.date cloture exercice social - 'o'=>'2300;2101', // Mod.Adresse + Capital - 'p'=>'2300;2315', // Mod.Adresse + Dirigeants - 'q'=>'2300;2313', // Mod.Adresse + Activité - 'r'=>'2300;2307', // Mod.Adresse + F.Juridique - 's'=>'2101;2315', // Modification Capital + Dirigeants - 't'=>'2101;2313', // Modification Capital + Activité - 'u'=>'2101;2307', // Mod.Capital + Forme Juridique - 'v'=>'2315;2313', // Mod.Dirigeants + Activité - 'w'=>'2315;2307', // Mod.Dirigeants + Forme Juridique - 'x'=>'2313;2307', // Mod.Activité + Forme Juridique - 'y'=>'2318', // Changement de Dirigeants ? - 'z'=>'2318', // - //'K'=> - ); - - if ($idAnnonce<0) { - $idAnnonce=abs($idAnnonce); - $strIdAnn=" AND e.ANBASE=$idAnnonce "; - } else - $strIdAnn=''; - - if ($rubrique=='P') $strIdAnn=" AND e.E1GSIR NOT IN(340460104) AND e.CODEVE BETWEEN 50 AND 79 ";//AND e.DATE>=".((date('Y')*1)-10).''.date('md'); - elseif ($rubrique=='PH') $strIdAnn=" AND e.CODEVE BETWEEN 50 AND 79 "; - elseif ($rubrique=='R') $strIdAnn=" AND e.CODEVE BETWEEN 40 AND 42 "; - elseif ($rubrique=='L') $strIdAnn=" AND e.CODEVE IN(37,42) "; - elseif ($rubrique=='G') $strIdAnn=" AND e.CODEVE=38 "; - elseif ($rubrique=='BODA') $strIdAnn=" AND e.JAL=1 "; - elseif ($rubrique=='BODB') $strIdAnn=" AND e.JAL=200 "; - elseif (is_array($rubrique)) { - $tabCodEve=$tabCodRol=array(); - foreach ($rubrique as $codeEvenTmp) { - $codRet=array_search($codeEvenTmp, $tabTmp2); // Ne gère pas les ; de tabtmp2 - if ($codRet) $tabCodRol[]=$codRet; - else { - $tabCodEve[]=array_search($codeEvenTmp, $tabTmp)*1; - } - } - $strIdAnn=''; - $tabCodEve=array_unique($tabCodEve); - $tabCodRol=array_unique($tabCodRol); - if (count($tabCodEve)>0) - $strIdAnn.=' AND e.CODEVE IN('.implode(',',$tabCodEve).') '; - if (count($tabCodRol)>0) - $strIdAnn.=" AND e.ROLE IN('".implode("','",$tabCodRol)."') "; - } - - // On ne part pas dans l'histo dans certains cas... - if ($rubrique<>'V' && $rubrique<>'D' && $rubrique<>'A' && $rubrique<>'C' && $rubrique<>'BODC') { - $bodaccHisto=$iDbHisto->select( - 'texte x, entrep e',//.codEven Code évènement du mouvement Bodacc libEven ', - 'e.ANBASE, e.NOBOD, e.CODTRI, e.JAL, e.DATE, e.CODEVE, e.SSCODE, e.DEPT, e.NOANN, e.ROLE, e.SIREN, e.E1GSIR, e.E1GNIC, x.annonceNum, x.annonceTxt/*, t.triNom, t.triSiret*/', - "e.E1GSIR=$siren AND e.ANBASE=x.annonceNum /*AND e.CODTRI=t.triCode*/ $strIdAnn AND e.DATE BETWEEN 19890101 AND 20041231 GROUP BY e.ANBASE ORDER BY e.DATE DESC", false, MYSQL_ASSOC); - if (count($bodaccHisto)>0) { - foreach ($bodaccHisto as $ann) { - if ($ann['DATE']<19960101 && $ann['E1GSIR']<>$ann['SIREN']) continue; - $k++; - //if ($ann['DATE']<19920101) break; - //if ($ann['DATE']>20051231) continue; - if ($ann['JAL']==1) $Bodacc_Code='BODA'; - elseif ($ann['JAL']==200) $Bodacc_Code='BODB'; - - if ($ann['CODEVE']>49 && $ann['CODEVE']<80) $procol=true; - - if ($ann['CODEVE']<20) $rub='creations'; // 4xxx - elseif ($ann['CODEVE']<=25) $rub='ventes'; // 5xxx - elseif ($ann['CODEVE']<40) $rub='mmd'; // 2xxx - elseif ($ann['CODEVE']<42) $rub='radiations'; // 6xxx - elseif ($ann['CODEVE']<50) $rub='mmd'; // 2xxx - elseif ($ann['CODEVE']<80) $rub='procol'; // 1xxx - $tabEvens=array(); - $newCodeEven=$tabTmp[$ann['CODEVE']]; - if ($newCodeEven*1==2318) { - $tabNewEven=@explode(';', $tabTmp2[$ann['ROLE']]); - if (count($tabNewEven)>0) { - foreach ($tabNewEven as $newCodeEven) - $tabEvens[]=array('CodeEven'=>$newCodeEven,'LibEven'=>$this->iBodacc->getEvenement($newCodeEven)); - } else - $tabEvens[]=array('CodeEven'=>$newCodeEven,'LibEven'=>$this->iBodacc->getEvenement($newCodeEven)); - } else { - - $tabEvens[]=array('CodeEven'=>$newCodeEven,'LibEven'=>$this->iBodacc->getEvenement($newCodeEven)); - if (($this->dureePlan==0 || $this->dureePlan==120) && $ann['CODEVE']==75) { // Modification de plan - $this->debutPlan=$ann['DATE']; // SSAAMMJJ - if (preg_match('/dur.e(?:.*)plan(?:.*)(\d+)\s+ans?/Uis', $ann['annonceTxt'], $matches)) { - $this->dureePlan=$matches[1]*12; // 10 ans = 120 mois - } - //dureePlan par défaut sur FJ et par défaut - if ($this->dureePlan<1 || $this->dureePlan>120 ) { - if ( in_array($fj, array( - 16,1600, // Exploitant agricole - 63,6316,6317,6318, // Société coopérative agricole - 5431,5432,5531,5532, // SMIA, SICA - 5631,5632,6532, - 6533,6534,6535, // GAEC, GFA, Gpt Agricole Foncier - 6597,6598, - )) - ) { - $this->dureePlan=180; // 15 ans - } else { - $this->dureePlan=120; // 10 ans = 120 mois - } - } - $this->finPlan=$classWDate->period2Days($this->debutPlan, $this->dureePlan.' mois'); - //sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Annonce de Plan Histo sur $siren se terminant le $finPlan (durée=$dureePlan mois, début le $debutPlan)", print_r($ann, true).EOL.print_r($matches, true)); - } - - } - // Recherche du capital et de la FJ dans le texte histo - if ( ($ann['CODEVE']>=10 && $ann['CODEVE']<20) || - ($ann['CODEVE']>=30 && $ann['CODEVE']<42) || - ($ann['CODEVE']>=51 && $ann['CODEVE']<80) ) { - // Recherche du capital - if (preg_match('/Capital(?:.|)\:(.*)(eur.|f|livre)/Uis', $ann['annonceTxt'], $matches)) {// && $tabInsee['CJ']>1999 && $tabInsee['CJ']<7000) - $capital=trim(strtr($matches[1],array(' '=>'', ',00 '=>'', '.00 '=>'')))*1; - if (substr(strtoupper($matches[2]),0,3)=='EUR') - $capitalDev='EUR'; - elseif (substr(strtoupper($matches[2]),0,3)=='LIV') - $capitalDev='GBP'; - else - $capitalDev='FRF'; - } else - $capital=$capitalDev=''; - // Recherche de la forme juridique - if (preg_match('/Forme(?:.|)\:(.*)(Capital|Adresse|Activit.|Administration|Commentaire)(?:.|)\:/Uis', $ann['annonceTxt'], $matches)) {// && $tabInsee['CJ']>1999 && $tabInsee['CJ']<7000) - $libFJ=trim($matches[1]); - } - } - - $tabRet[$k]=array( - 'id'=>-$ann['ANBASE'], - 'BodaccCode'=>$Bodacc_Code, - 'BodaccNum'=>$ann['NOBOD'], - 'NumAnnonce'=>$ann['NOANN'], - 'DateParution'=>substr($ann['DATE'],0,4).'-'.substr($ann['DATE'],4,2).'-'.substr($ann['DATE'],6,2), - 'Departement'=>$ann['DEPT'], - 'Tribunal'=>$this->iBodacc->getTribunalNom($ann['CODTRI']), //$ann['triNom'], - 'TribunalSiret'=>$this->iBodacc->getTribunalSiret($ann['CODTRI']),//$ann['triSiret'], - 'Rubrique'=>$rub, - 'typeAnnonce'=>'Insertion',/** @todo à GERER $ann['SSCODE'],**/ - //'texteRectificatif'=>$ann['corrTexteRectificatif'], - //'texteAnnonce'=>$ann['annonceTxt'], - 'dateEffet'=>substr($ann['DATE'],0,4).'-'.substr($ann['DATE'],4,2).'-'.substr($ann['DATE'],6,2), - 'dateJugement'=>substr($ann['DATE'],0,4).'-'.substr($ann['DATE'],4,2).'-'.substr($ann['DATE'],6,2), 'dateFin'=>'', - 'montantVente'=>'', - 'libFJ'=>$libFJ, - 'codFJ'=>$this->iBodacc->getCodeFormeJur($libFJ), - 'capital'=>$capital, - 'capitalDev'=>$capitalDev, - 'raisonSociale'=>'',//$ann['raisonSociale'], - 'nomCommercial'=>'',//$ann['nomCommercial'], - 'sigle'=>'',//$ann['sigle'], - 'adresse'=>'',//$adresseAnn, - 'dateInsertionSD'=>'', - 'evenements'=>$tabEvens, - ); - if ($idAnnonce<>0 || $allTextes) - $tabRet[$k]['texteAnnonce']=$ann['NOANN'].' - '.$ann['annonceTxt']; - } - } - } - } - - // On ne cherche pas de PROCOL + récente si on est en visualisation d'annonce Bodacc Classique - if ($idAnnonce>=1 || $idAnnonce<0) return $tabRet; - - // Si je n'ai pas d'annonce Bodacc de procol on vérifie dans la table de collecte - // Si annonce Bodacc de Procol et pas de Vérif Forcée chez un partenaire alors on affiche la collecte - - $tabTmp=$this->getProColPart($siren, $rubrique, $forceVerif, $idAnnonce, $fj); - $tabRet=array_merge($tabTmp, $tabRet); - - /** On vérifie si la société n'est pas in bonis pour les raisons suivantes : - ** 1502 : Clôture de la procédure pour extinction du passif - **/ - if ($rubrique=='P') { - $tabJugements=array(); - foreach ($tabRet as $i=>$ann) { - $tabJugements[$ann['dateJugement']]=$ann['evenements'][0]['CodeEven']; - } - // Si plan recherche des annonces suivantes - if ($this->dureePlan>0) { - ksort($tabJugements); - // Tableau chronologique des dates de jugement ==> code jugement - reset($tabJugements); - foreach ($tabJugements as $dateJuge=>$codeJuge) { - if ($dateJuge>$this->debutPlan & ( - ($codeJuge>=1100 && $codeJuge<=1101)|| // Sauvegarde - ($codeJuge>=1200 && $codeJuge<=1202)||$codeJuge==1211|| // RJ - ($codeJuge>=1300 && $codeJuge<=1313)|| // LJ - ($codeJuge>=1500 && $codeJuge<=1504) ) ) // Cloture - // Si plan suivi de SV, RJ, LJ ou clôture alors pas de plan - $this->dureePlan=0; - } - } - - // Tableau ante-chronologique des dates de jugement ==> code jugement - krsort($tabJugements); - reset($tabJugements); - - $tabNoProcol=array(); - $tmp=$this->iDb->select('tabEvenements', 'codEven,affProcol', 'affProcol>0', false, MYSQL_ASSOC); - foreach ($tmp as $tmp2) - $tabNoProcol[$tmp2['codEven']]=$tmp2['affProcol']; - - if (@array_key_exists(current($tabJugements), $tabNoProcol)) { - // Ce code jugement Procol n'appel pas forcément l'indicateur : SituationJuridique=P - //sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "MInsee::getAnnonceProcol sur $siren (avant le SWITCH)", print_r($tabNoProcol, true)); - switch($tabNoProcol[current($tabJugements)]) { - case 1: // PAS DE MENTION DE LA PROCOL - //sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "MInsee::getAnnonceProcol sur $siren (cas 1)", print_r($tabNoProcol, true)); - $tabRet=array(); - break; - case 2: // Ne pas mentionner la procol si CJ=1xxx - //$tabId=$this->getIdentiteLight($siren); - if (substr($tabId['FJ'],0,1)*1==1) { - //sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "MInsee::getAnnonceProcol sur $siren (cas 2a)", print_r($tabNoProcol, true)); - $tabRet=array(); - } elseif ($tabId['Actif']*1>0 && substr($tabId['FJ'],0,1)*1<>9 ) { - $derProcol =str_replace('-','',key($tabJugements))*1; - $maxLatence=date('Ymd',mktime(0,0,0,(substr($derProcol,4,2)*1)+1,substr($derProcol,6,2),substr($derProcol,0,4))); - if (date('Ymd')>$maxLatence) { - sendMail('production@scores-decisions.com', 'prod@scores-decisions.com', "Vérifier la Procédure Collective sur $siren (cas 2b)", "L'entreprise, siren $siren, fait l'objet d'une clôture de procédure collective de type ".current($tabJugements)." alors qu'elle est encore active !".EOL."Merci de vérifier et de supprimer la procédure le cas échéant !"); - $tabRet=array(); - } - } - break; - case 3: // Pas Procol si actif RCS - //$tabId=$this->getIdentiteLight($siren); - if ($tabId['Actif']*1>0) { - sendMail('production@scores-decisions.com', 'prod@scores-decisions.com', "MInsee::getAnnonceProcol sur $siren (cas 3)", print_r($tabNoProcol, true)); - $tabRet=array(); - } - break; - case 4: // Le dernier jugement est un appel => Procol Suspendu - $this->appelJugement=true; - break; - } - } - - if (count($tabRet)>0) { - $derProcol=str_replace('-','',key($tabJugements))*1; - $dateTropAncienne=(date('Ymd')*1)-120000; - if ($derProcol<$dateTropAncienne) { - //$tabId=$this->getIdentiteLight($siren); - if ($tabId['Actif']*1>0) { - /** Procédure trop ancienne **/ - $derPr=$classWDate->dateT('Ymd','d/m/Y',$derProcol); - @sendMail('production@scores-decisions.com', 'prod@scores-decisions.com', "Vérifier la Procédure Collective sur $siren (cas 5)", "L'entreprise, siren $siren, fait l'objet d'une clôture de procédure collective de type ".current($tabJugements)." en date du $derPr alors que cela fait plus de 12 ans !".EOL."Merci de vérifier et de supprimer la procédure le cas échéant !".EOL.print_r($tabBilans,true).EOL."Liste des derniers jugements :".EOL.print_r($tabJugements,true)); - $tabRet=array(); - } - } elseif ((current($tabJugements)>=1300 && current($tabJugements)<=1313 && current($tabJugements)!=1310) || - (current($tabJugements)>=1500 && current($tabJugements)<=1504)) { - /** En Procol mais présence d'une annonce de cloture ou LJ - avec Bilan publié ultérieurement - **/ - $mBil=new MBilans($siren); - $tabBilans=$mBil->listeBilans($accesDist); - $derExercice=0; - - foreach ($tabBilans as $idx=>$bilan) - if ($bilan['dateExercice']>$derExercice) $derExercice=$bilan['dateExercice']; - - if ($derExercice>$derProcol) { - $derEx=$classWDate->dateT('Ymd','d/m/Y',$derExercice); - $derPr=$classWDate->dateT('Ymd','d/m/Y',$derProcol); - @sendMail('production@scores-decisions.com', 'prod@scores-decisions.com', "Vérifier la Procédure Collective sur $siren (cas 4)", "L'entreprise, siren $siren, fait l'objet d'une clôture de procédure collective de type ".current($tabJugements)." en date du $derPr alors que le dernier bilan publié date du $derEx !".EOL."Merci de vérifier et de supprimer la procédure le cas échéant !".EOL.print_r($tabBilans,true).EOL."Liste des derniers jugements :".EOL.print_r($tabJugements,true)); - $tabRet=array(); - } - } - } - } elseif ($rubrique=='D' && count($tabRet)>0) { - $tabJugements=array(); - foreach ($tabRet as $i=>$ann) { - $tabJugements[$ann['DateParution']]=$ann['evenements'][0]['CodeEven']; - } - // Tableau ante-chronologique des dates de jugement ==> code jugement - krsort($tabJugements); - reset($tabJugements); - - $mBil=new MBilans($siren); - $tabBilans=$mBil->listeBilans($accesDist); - $derExercice=0; - $derProcol=str_replace('-','',key($tabJugements))*1; - foreach ($tabBilans as $idx=>$bilan) - if ($bilan['dateExercice']>$derExercice) $derExercice=$bilan['dateExercice']; - if ($derExercice>$derProcol) { - $derEx=$classWDate->dateT('Ymd','d/m/Y',$derExercice); - $derPr=$classWDate->dateT('Ymd','d/m/Y',$derProcol); - @sendMail('production@scores-decisions.com', 'prod@scores-decisions.com', "MInsee::getAnnonceProcol Dissolution sur $siren (cas 4)", "L'entreprise, siren $siren, fait l'objet d'une dissolution de type ".current($tabJugements)." en date du $derPr alors que le dernier bilan publié date du $derEx !".EOL."Merci de vérifier et de supprimer le code évènement le cas échéant !".EOL.print_r($tabBilans,true).EOL."Liste des dernieres annonces :".EOL.print_r($tabJugements,true)); - $tabRet=array(); - } - } - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "MInsee::getAnnonceProcol Debug Fin sur $siren", print_r($tabRet,true)); - return $tabRet; - } - - /** - * Retourne les annonces du bulletin des annonces légales officielles - * @param string $siren - * @param int $idAnnonce - * @param int $offset - * @param int $lignes - * @return array - */ - function getAnnoncesBalo($siren, $idAnnonce=0, $offset=0, $lignes=100) - { - $siren=$siren*1; - - if ($siren<001000000) $siren='000'.$siren; - elseif ($siren<010000000) $siren='00'.$siren; - elseif ($siren<100000000) $siren='0'.$siren; - - $strIdAnn=''; - $tabRet=array(); - - if ($idAnnonce>0) { - //$idBalo=//.$tabBalo['Num_Affaire'].','.$tabBalo['Num_Parution']; - $tmp=explode('.', $idAnnonce); - //if (strlen($tmp[0])==9 && is_numeric($tmp[0])) $rcs=$tmp[0]; - if (is_numeric($tmp[0])) $num=$tmp[0]; - if (is_numeric($tmp[1])) $par=$tmp[1]; - //$idBaloPdf=basename($tabBalo['Url_Annonce_Pdf']); - $strIdAnn=" AND Num_Affaire='$num' AND Num_Parution='$par' "; - //$idAnnonce - } - - $mBalo=new MBalo(); - - $bodacc=$this->iDb->select('balo', "Societe_Rcs, Categorie, Num_Affaire, Date_Parution, Num_Parution, Url_Annonce_Html, Url_Annonce_Pdf, Annonce_Html, dateInsert", "Societe_Rcs='$siren' AND Date_Parution>='2004-01-01' $strIdAnn ORDER BY Date_Parution DESC, Num_Affaire LIMIT $offset, $lignes", false, MYSQL_ASSOC); - // $RP=mysql_select('balo', " ", "Societe_Rcs='$rcs' "); - $k=0; - if (count($bodacc)>0) { - foreach ($bodacc as $k=>$ann) { - $tabRetEven=array(); - $tabRetEven[]=array('CodeEven'=>$mBalo->getLibEven($ann['Categorie']), - 'LibEven'=> $ann['Categorie']); - - $tabRet[$k]=array( 'id'=>$ann['Num_Affaire'].'.'.$ann['Num_Parution'], - 'BodaccCode'=>'BALO', - 'BodaccNum'=>$ann['Num_Parution'], - 'NumAnnonce'=>$ann['Num_Affaire'], - 'DateParution'=>$ann['Date_Parution'], - //'Departement'=>'',$ann['Tribunal_Dept'], - //'Tribunal'=>$ann['triNom'], - //'TribunalSiret'=>$ann['triSiret'], - //'Rubrique'=>$ann['Rubrique'], - 'typeAnnonce'=>'Insertion', - 'dateInsertionSD'=>$ann['dateInsert'], - 'evenements'=>$tabRetEven, - 'Lien_Annonce_Pdf'=>basename($ann['Url_Annonce_Pdf']), - ); - if ($idAnnonce<>0) $tabRet[$k]['texteAnnonce']=strtr( preg_replace('//Uis', '', - preg_replace('/( class=".*")/ie', ' ', $ann['Annonce_Html'])), array(' '=>' ', ''=>'', ''=>'')); - } - } - return $tabRet; - } - - /** - * Retourne le nombre d'annonce Balo pour un siren - * @param string $siren - * @return int - */ - function getAnnoncesBaloCount($siren) - { - $bodacc = $this->iDb->select('balo', "count(*) AS nb", "Societe_Rcs='$siren' AND Date_Parution>='2004-01-01' ORDER BY Date_Parution DESC, Num_Affaire", false, MYSQL_ASSOC); - $nb = 0; - if (count($bodacc)>0) { - $nb = $bodacc[0]['nb']; - } - return $nb; - } - - /** - * Retourne les annonces du bulletin officiel des annonces de marché publique - * @param string $siren - * @param string $idAnnonce - * @param string|array $type A:Avis d'attribution, M:Avis de marché - * @param int $offset - * @param int $lignes - * @return Ambigous multitype:multitype:string Ambigous , unknown> - */ - function getAnnoncesBoamp($siren, $idAnnonce='', $type=array('A', 'M'), $offset=0, $lignes=100) - { - $siren=$siren*1; - - if ($siren<001000000) $siren='000'.$siren; - elseif ($siren<010000000) $siren='00'.$siren; - elseif ($siren<100000000) $siren='0'.$siren; - - $strIdAnn=''; - $idA=0; - $tabRet=array(); - - $mBoamp=new MBoamp(); - - if ( is_string($type) && $type=='A' || is_array($type) && in_array('A',$type) ) { - - /** Recherche dans les avis d'attribution **/ - if ($idAnnonce<>'') { - $tmp=explode('.', $idAnnonce); - $idA=$tmp[1]; - //if (strlen($tmp[0])==9 && is_numeric($tmp[0])) $rcs=$tmp[0]; - if ($tmp[0]=='A') $strIdAnn=" AND l.id='$idA' "; - elseif ($tmp[0]=='O') $strIdAnn=""; - } - - $bodacc = $this->iDb->select( - 'boamp_lots l, boamp b, boamp_detail d', - "l.id, l.idAnn, l.Boamp_Code, l.Boamp_Rubrique, b.Boamp_Rubrique_Lib, b.typeAnnonce, l.Boamp_Date_Parution, b.Boamp_Num, b.Boamp_Annee_Parution, b.Num_AnnoncePre, b.Num_Annonce, b.Boamp_Dept, b.annonce, l.num, l.`desc` AS description, l.nom, d.raisonSociale, l.montantTxt, sum(l.montant) AS montant, l.montantAnMin, l.montantAnMax, l.trancheCond, l.trancheFerme, l.dateAttrib, l.intitule, l.nomenclature, l.objets, l.cpv, l.cpvComp, l.volume, l.execution, l.livraison, l.dureeJours, l.dureeMois, l.dateDeb, l.dateFin, l.dateInsert, d.titre, d.objet, d.titreMarche, d.typeObjetMarche, d.objetAutre, d.autres", - "l.siren='$siren' AND l.idAnn=b.id AND l.idAnn=d.id $strIdAnn GROUP BY b.id ORDER BY l.Boamp_Date_Parution DESC LIMIT $offset,$lignes", false, MYSQL_ASSOC - ); - - $k=0; - if (count($bodacc)>0) { - foreach ($bodacc as $k=>$ann) { - $tabRetEven=array(); - /*montantTxt, l.montant, l.montantAnMin, , l.trancheCond, l.trancheFerme, l.dateAttrib*/ - if ($ann['nom']<>'') $strMontant=' "'.strtoupper($ann['raisonSociale']).'"'; - - if ($ann['montant']*1>0) $strMontant.=' ('.number_format($ann['montant'], 2, ',', ' ').' EUR)'; - elseif ($ann['montantTxt']<>'') $strMontant.=' ('.$ann['montantTxt'].')'; - elseif ($ann['montantAnMin']<>'' && $ann['montantAnMax']) - $strMontant.=' ('.$ann['montantAnMin'].' à '. - $ann['montantAnMax'].')'; - elseif ($ann['trancheCond']<>'' && $ann['trancheFerme']) - $strMontant.=' ('.$ann['trancheCond'].' / '. - $ann['trancheFerme'].')'; - else $strMontant.=''; - $tabRetEven[]=array('CodeEven'=>$mBoamp->getCodEvenSd($ann['Boamp_Rubrique']), - 'LibEven'=>$mBoamp->getLibEvenBoamp($ann['Boamp_Rubrique'], $ann['Boamp_Rubrique_Lib']).$strMontant); - // Axxx pour lot attribué ou Oxxx pour Organisation - if ($ann['Num_AnnoncePre']<>0) $numAnn=$ann['Num_AnnoncePre'].'-'.$ann['Num_Annonce']; - else $numAnn=$ann['Num_Annonce']; - if ($ann['Boamp_Code']=='MAPA') - $lienMapa='http://www.boamp.fr/index.php?action=avis&num_parution=MAPA&num_annonce='.$ann['Num_AnnoncePre'].'-'.$ann['Num_Annonce'].'&total=500&_s=0&indice=0';//&affichage_avis=officiel'; - else { - $lettre = substr($ann['Boamp_Code'],-1); - $annee = $ann['Boamp_Annee_Parution']; - $num = sprintf("%04d",$ann['Boamp_Num']); - $numPar=$lettre.$annee.$num; - $lienMapa='http://www.boamp.fr/index.php?action=avis&num_parution='.$numPar.'&num_annonce='.$ann['Num_Annonce'].'&total=500&_s=0&indice=0'; - } - $infosComp=''; - $objetMarche=trim($ann['objet'].' '.$ann['objetAutre'].' '.$ann['autres']); - //titre, titreMarche, typeObjetMarche - $tabRet[$k]=array( 'id'=>'A.'.$ann['id'], - 'BodaccCode'=>$ann['Boamp_Code'], - 'BodaccNum'=>$ann['Boamp_Num'], - 'NumAnnonce'=>$numAnn, - 'DateParution'=>$ann['Boamp_Date_Parution'], - 'Departement'=>$ann['Boamp_Dept'], - //'Tribunal'=>$ann['triNom'], - //'TribunalSiret'=>$ann['triSiret'], - //'Rubrique'=>$ann['Boamp_Rubrique_Lib'], - 'typeAnnonce'=>$ann['typeAnnonce'], - 'dateInsertionSD'=>$ann['dateInsert'], - 'Montant'=>$ann['montant'], - 'Organisme'=>strtoupper($ann['raisonSociale']), - 'Objet'=>$objetMarche, - 'evenements'=>$tabRetEven, - 'infosComp'=>$infosComp, // Non géré - 'Lien_Annonce_Html'=>$lienMapa, // Non géré - ); - /**/ - if ($idA<>0) - if ($ann['Boamp_Code']=='MAPA') - $tabRet[$k]['texteAnnonce']=$ann['annonce']; - else - $tabRet[$k]['texteAnnonce']= - strtr( preg_replace('//Uis', '', - preg_replace('//Uis', '', - preg_replace('/( class=".*")/ie', ' ', $ann['annonce']))), - array(' '=>' ', ''=>'', ''=>'', '

    '=>'
    ') - ); - } - } - } - - if ( is_string($type) && $type=='M' || is_array($type) && in_array('M',$type) ) { - // Recherche dans les avis de marchés - if ($idAnnonce<>'') { - $tmp=explode('.', $idAnnonce); - $idA=$tmp[1]; - //if (strlen($tmp[0])==9 && is_numeric($tmp[0])) $rcs=$tmp[0]; - if ($tmp[0]=='A') $strIdAnn=" AND d.id='$idA' "; - elseif ($tmp[0]=='O') $strIdAnn=""; - } - - $bodacc=$this->iDb->select( - 'boamp b, boamp_detail d', - "d.id, d.Boamp_Code, d.Boamp_Rubrique, b.Boamp_Rubrique_Lib, b.typeAnnonce, d.Boamp_Date_Parution, b.Boamp_Num, b.Boamp_Annee_Parution, b.Num_AnnoncePre, b.Num_Annonce, b.Boamp_Dept, b.annonce, titre AS description, d.raisonSociale, d.estimValeur AS montantTxt, d.estimValeurMin AS montantAnMin, d.estimValeurMax AS montantAnMax, objet, cpv_obj, cpv_comp, d.dateInsert", - "d.siren='$siren' AND d.id=b.id $strIdAnn GROUP BY b.id ORDER BY d.Boamp_Date_Parution DESC", - false, MYSQL_ASSOC - ); - - if (count($bodacc)>0) { - foreach ($bodacc as $k=>$ann) { - $id=$ann['id']; - $rub=$ann['Boamp_Rubrique']; - $tabRetEven=array(); - $strMontant=''; - if ($ann['objet']<>'') $strMontant.=' "'.$ann['objet'].'"'; - - if ($rub=='6' || // Avis d'attribution - $rub=='7' || // Avis en cas de transparence ex ante volontaire - $rub=='77' || // Avis d'attribution - $rub=='8' || // Avis d'attribution - $rub=='82' || // Rectificatif - $rub=='83' || // Rectificatif - $rub=='84' || // Avis d'attribution comportant des lots infructueux - $rub=='9' || // Résultat de marché - $rub=='92' || // Rectificatif - $rub=='93' || // Résultat de marché / Infructueux - Sans suite - $rub=='94' || // Résultat de marché / Résultat de marché comportant des lots infructueux - $rub=='96' || // Annulation - Rectificatif - Sans suite - Infructueux - $rub=='977' // Annulation - Rectificatif / Avis en cas de transparence ex ante volontaire - ) { - $tabTmp=$this->iDb->select( 'boamp_lots l', - "l.id, l.idAnn, l.Boamp_Code, l.Boamp_Rubrique, l.Boamp_Date_Parution, l.num, l.`desc` AS description, l.nom, l.montantTxt, l.montant, l.montantAnMin, l.montantAnMax, l.trancheCond, l.trancheFerme, l.dateAttrib, l.intitule, l.nomenclature, l.objets, l.cpv, l.cpvComp, l.volume, l.execution, l.livraison, l.dureeJours, l.dureeMois, l.dateDeb, l.dateFin", - "l.idAnn=$id", false, MYSQL_ASSOC); - foreach ($tabTmp as $k2=>$ann2) { - if ($ann2['nom']<>'') $strMontant.=' "'.strtoupper($ann2['nom']).'"'; - if ($ann2['montant']*1>0) $strMontant.=' ('.number_format($ann2['montant'], 2, ',', ' ').' EUR)'; - elseif ($ann2['montantTxt']<>'') $strMontant.=' ('.$ann2['montantTxt'].')'; - elseif ($ann2['montantAnMin']<>'' && $ann2['montantAnMax']) - $strMontant.=' ('.$ann2['montantAnMin'].' à '. - $ann2['montantAnMax'].')'; - elseif ($ann2['trancheCond']<>'' && $ann2['trancheFerme']) - $strMontant.=' ('.$ann['trancheCond'].' / '. - $ann['trancheFerme'].')'; - else $strMontant.=''; - } - } - $tabRetEven[]=array('CodeEven'=>$mBoamp->getCodEvenSd($ann['Boamp_Rubrique']), - 'LibEven'=>$mBoamp->getLibEvenBoamp($ann['Boamp_Rubrique'], $ann['Boamp_Rubrique_Lib']).$strMontant); - // Axxx pour lot attribué ou Oxxx pour Organisation - if ($ann['Num_AnnoncePre']<>0) $numAnn=$ann['Num_AnnoncePre'].'-'.$ann['Num_Annonce']; - else $numAnn=$ann['Num_Annonce']; - if ($ann['Boamp_Code']=='MAPA') - $lienMapa='http://www.boamp.fr/index.php?action=avis&num_parution=MAPA&num_annonce='.$ann['Num_AnnoncePre'].'-'.$ann['Num_Annonce'].'&total=500&_s=0&indice=0';//&affichage_avis=officiel'; - else { - $lettre = substr($ann['Boamp_Code'],-1); - $annee = $ann['Boamp_Annee_Parution']; - $num = sprintf("%04d",$ann['Boamp_Num']); - $numPar=$lettre.$annee.$num; - $lienMapa='http://www.boamp.fr/index.php?action=avis&num_parution='.$numPar.'&num_annonce='.$ann['Num_Annonce'].'&total=500&_s=0&indice=0'; - } - $infosComp=''; - $tabRet[$k]=array( 'id'=>'O.'.$id, - 'BodaccCode'=>$ann['Boamp_Code'], - 'BodaccNum'=>$ann['Boamp_Num'], - 'NumAnnonce'=>$numAnn, - 'DateParution'=>$ann['Boamp_Date_Parution'], - 'Departement'=>$ann['Boamp_Dept'], - //'Tribunal'=>$ann['triNom'], - //'TribunalSiret'=>$ann['triSiret'], - //'Rubrique'=>$ann['Boamp_Rubrique_Lib'], - 'typeAnnonce'=>$ann['typeAnnonce'], - 'dateInsertionSD'=>$ann['dateInsert'], - 'evenements'=>$tabRetEven, - 'infosComp'=>$infosComp, // Non géré - 'Lien_Annonce_Html'=>$lienMapa, // Non géré - ); - - if ($idA<>0) - if ($ann['Boamp_Code']=='MAPA') - $tabRet[$k]['texteAnnonce']=$ann['annonce']; - else - $tabRet[$k]['texteAnnonce']= - strtr( preg_replace('//Uis', '', - preg_replace('//Uis', '', - preg_replace('/( class=".*")/ie', ' ', $ann['annonce']))), - array(' '=>' ', ''=>'', ''=>'', '

    '=>'
    ') - ); - } - } - } - debugLog('I', "getAnnoncesBoamp(siren=$siren, idAnnonce=$idAnnonce, $idA)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - return $tabRet; - } - - /** - * Nombre total d'annonces BOAMP - * @param string $siren - * @param string $type A:avis d'attribution, M:Avis de marché - */ - public function getAnnoncesBoampCount($siren, $type='') - { - $bodaccA = array(); - $bodaccM = array(); - if ( $type=='' || $type=='A' ) { - - /** Recherche dans les avis d'attribution **/ - $bodaccA=$this->iDb->select( - 'boamp_lots l, boamp b, boamp_detail d', - "l.id", - "l.siren='$siren' AND l.idAnn=b.id AND l.idAnn=d.id GROUP BY b.id ORDER BY l.Boamp_Date_Parution", - false, MYSQL_ASSOC - ); - } - if ( $type=='' || $type=='M') { - - /** Recherche dans les avis de marchés **/ - $bodaccM=$this->iDb->select( 'boamp b, boamp_detail d', - "d.id", - "d.siren='$siren' AND d.id=b.id GROUP BY b.id ORDER BY d.Boamp_Date_Parution DESC", - false, MYSQL_ASSOC - ); - - } - $nb = count($bodaccA) + count($bodaccM); - return $nb; - } - - function getAnnoncesAsso($siren, $idAnnonce=0, $offset=0, $lignes=100) - { - debugLog('I', "Début getAnnoncesAsso(siren=$siren, idAnnonce=$idAnnonce)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $siretMin=$siren.'00000'; - $siretMax=$siren.'99999'; - $strIdAnn=''; - $tabRet=array(); - - if ($idAnnonce>0){ - $strIdAnn="id=$idAnnonce"; - } elseif (substr($siren,0,1)=='W' && $idAnnonce == 0) { - $strIdAnn = "Waldec='$siren'"; - } else { - $strIdAnn = "siren=$siren"; - } - - $classWDate = new WDate(); - - $bodacc=$this->iDb->select('asso', "id, Assoc_Nom, siren, nic, Waldec, Activite, Num_Annonce, Date_Parution, Num_Parution, Departement, Sous_Prefecture, Type_Annonce, Annonce_Html, Assoc_Objet, Assoc_Adresse, Assoc_NObjet, Assoc_AObjet, Assoc_NAdresse, Assoc_Fusion, Assoc_Annulation, Assoc_ANom, Assoc_NNom, Assoc_Date_Declaration, Assoc_Date_Declaration2, typeAnnonce, codEven, dateInsert", "$strIdAnn AND dateSuppr=0 ORDER BY Date_Parution DESC LIMIT $offset,$lignes", false, MYSQL_ASSOC); - - $k=0; - if (count($bodacc)>0) { - foreach ($bodacc as $k=>$ann) { - $tabEven=explode(';', $ann['codEven']); - $tabRetEven=array(); - if ($ann['typeAnnonce']<>'Insertion')//BODACC n°002 A du 04/01/2006. - $tabRetEven[]=array('CodeEven'=>'0000', - 'LibEven'=> $ann['typeAnnonce'].' de l\'annonce './*n°'. - $ann['corrNum_Annonce'].' BODACC n°'. - $ann['corrNumParution'].*/' du '. - $classWDate->dateT('Y-m-d','d/m/Y',$ann['corrDate_Parution'])/*.' (page '. - $ann['corrPage'].')'*/); - else { - if (trim($ann['codEven'])<>'') { - foreach ($tabEven as $even) - $tabRetEven[]=array('CodeEven'=>$even,'LibEven'=>$this->iBodacc->getEvenement($even)); - } - else { - $tabRetEven[]=array('CodeEven'=>0000,//$mAsso->getLibEven($ann['Categorie']), - 'LibEven'=> $ann['Type_Annonce']); - } - } - - // Rubrique - if (preg_match('/cr(é|e)ation/i', $ann['Type_Annonce'])) - $rub='creations'; - elseif (preg_match('/Dissolution/i', $ann['Type_Annonce'])) - $rub='radiations'; - else - $rub='mmd'; - // typeAnnonce - if (preg_match('/Annulation/i', $ann['Type_Annonce'])) - $type='Suppression'; - elseif (preg_match('/Rectif/i', $ann['Type_Annonce'])) - $type='Rectificatif'; - else - $type='Insertion'; - if (str_replace('-','',$ann['Date_Parution'])*1>=20070401) $dateInsert=$ann['Date_Parution']; - else $dateInsert=''; - - $tabRet[$k]=array( 'id'=>$ann['id'], - 'BodaccCode'=>'ASSO', - 'BodaccNum'=>$ann['Num_Parution'], - 'NumAnnonce'=>$ann['Num_Annonce'], - 'DateParution'=>$ann['Date_Parution'], - 'Departement'=>$ann['Departement'], - 'Tribunal'=>$ann['Sous_Prefecture'], - //'TribunalSiret'=>$ann['triSiret'], - 'Rubrique'=>$rub, - 'typeAnnonce'=>$type, - 'dateInsertionSD'=>$dateInsert, - 'evenements'=>$tabRetEven, - //'Lien_Annonce_Pdf'=>basename($ann['Url_Annonce_Pdf']), - ); - if ($idAnnonce<>0){ - /*if ( preg_match( "~(\x00[\x80-\xff]|[\x00-\x07][\x00-\xff]~", $ann['Annonce_Html'] ) ) - $tabRet[$k]['texteAnnonce']='utf8 : '.$ann['Annonce_Html']; - else */ - //$tabRet[$k]['texteAnnonce']=strip_tags(strtr(htmlentities($ann['Annonce_Html']),array('>'=>'>','&'=>'&','<'=>'<'))); - - if (mb_detect_encoding($ann['Annonce_Html']) == 'UTF-8'){ - $tmp = utf8_decode($ann['Annonce_Html']); - } else { - $tmp = $ann['Annonce_Html']; - } - $tabRet[$k]['texteAnnonce'] = $tmp; - } - } - } - debugLog('I', "Fin getAnnoncesAsso(siren=$siren, idAnnonce=$idAnnonce) : ".count($tabRet).' annonce(s)', __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - return $tabRet; - } - - /** - * Nombre d'annonces association - * @param int $idAnnonce - * @param string $siren - */ - public function getAnnoncesAssoCount($siren, $idAnnonce = 0) - { - $strIdAnn = ''; - - if ($idAnnonce>0) { - $strIdAnn="id=$idAnnonce"; - } elseif (substr($siren,0,1)=='W' && $idAnnonce == 0) { - $strIdAnn = "Waldec='$siren'"; - } else { - $strIdAnn = "siren=$siren"; - } - - $bodacc=$this->iDb->select('asso', "COUNT(*) AS nb", "$strIdAnn AND dateSuppr=0", false, MYSQL_ASSOC); - $nb = 0; - if (count($bodacc)>0) { - $nb = $bodacc[0]['nb']; - } - return $nb; - } - - /** @todo $nic inutilisé pour l'instant **/ - function getIdentitePart($siren, $rs, $enseigne, $sigle, $nic=0, $refresh=false) { - $dateUpdate=0; - $lastYear=date('Ymd',mktime(0,0,0,date('m'),date('d'),date('Y')-1))*1; - $tabRet=array(); - - /** Chargement initial au cas ou la requête Coface plante **/ - $tabTmp=$this->iDb->select('infos_entrep', 'raisonSociale, isin, nscrl, tel, fax, web, mail, DATE(dateUpdate)*1 as dateUpdate', "siren=$siren", false, MYSQL_ASSOC); - $idComp=@$tabTmp[0]; - if (isset($idComp['raisonSociale'])) { - // L'entrep est en base infos_entrep - if ($idComp['web']<>'http://') $web=$idComp['web']; - else $web=''; - $tabRet=array( 'raisonSociale'=>$idComp['raisonSociale'], - 'isin'=>$idComp['isin'], - 'nscrl'=>$idComp['nscrl'], - 'tel'=>$idComp['tel'], - 'fax'=>$idComp['fax'], - 'web'=>$web, - 'mail'=>$idComp['mail'], - 'enCache'=>true, - ); - $dateUpdate=$idComp['dateUpdate']; - } - - // On ne rafraichie que si demandé et - // que la requête en base est trop ancienne et nscrl est vide ou tel ou web - if ($refresh && $dateUpdate<$lastYear && ($idComp['nscrl']==0 || $idComp['tel']=='') ) { - $timeout=20; - // La mise à jour ne se fera pas si lastMAJ<365 - /*$strUpdate='AND (DATEDIFF(NOW(),dateUpdate)<365 OR (nscrl<>0 AND DATEDIFF(NOW(),dateUpdate)>0))'; - $timeout=10; - $strUpdate='AND nscrl<>0 AND DATEDIFF(NOW(),dateUpdate)>0';*/ - $referer=''; - $url='http://www.cofacerating.fr/portail/entreprise_identite/identite.asp?ip=pagespro&lg=fr&nsiren='.$siren; - $tdeb=microtime(1); - $page=getUrl($url, '', '', $referer, false, 'www.cofacerating.fr', '', $timeout); - $duree=round(microtime(1)-$tdeb,3); - $this->body=$page['body']; - $this->codeRetour=$page['code']; - $this->header=$page['header']; - if ($this->codeRetour==408) - // Si timeout, on sort afin de ne pas écraser les données en base - return $tabRet; - - $tabRet['nscrl']=@getTextInHtml($this->body, '&nscrl=', '=','&'); - $strTmp=trim(str_replace(chr(160), ' ', html_entity_decode(utf8_encode(@getTextInHtml($this->body, ' Raison sociale
    ', '',''))))); - $tmp=explode('
    ', $strTmp); - $tabRet['raisonSociale']=trim($tmp[0]); - unset($tmp[0]); - $tabRet['adresse']=trim(strip_tags(implode(',', $tmp))); - - $tel=trim(@getTextInHtml($this->body, 'Téléphone
    ', '', '
    ')); - $fax=trim(@getTextInHtml($this->body, 'Télécopie
    ', '
    ', '')); - $web=trim(@getTextInHtml($this->body, '>Adresse internet
    ', '
    ')); - $mail=trim(@getTextInHtml($this->body, '')); - $bourse=trim(@getTextInHtml($this->body, 'Ville Bourse', 'class="tabval">', '')); - $tmp=explode('
    ', $bourse); - $isin=trim($tmp[0]); - $tabRet['bourseMarche']=trim($tmp[1]); - $tabRet['bourseVille']=trim($tmp[2]); - - /** On ne charge les valeurs tel, fax, web et mail que si non vides - **/ - if ($tel<>'') $tabRet['tel']=$tel; - if ($fax<>'') $tabRet['fax']=$fax; - if ($web<>'') $tabRet['web']=$web; - if ($mail<>'') $tabRet['mail']=$mail; - if (($tabRet['isin']<>'' || trim($tmp[0])<>'') && trim($tmp[0])<>$tabRet['isin']) { - if (trim($tmp[0])<>'' && $tabRet['isin']=='') - $tabRet['isin']=$isin; -// else -// @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "MInsee::getIdentitePart sur $siren ISIN différents", "Les codes ISIN du siren $siren sont différents en base et chez notre partenaire : ".$tabRet['isin'].' différent de '.trim($tmp[0]).EOL.print_r($tabRet, true)); - } elseif ($isin<>'') $tabRet['isin']=$isin; - - $tabRet['bourseIsin']=$tabRet['isin']; - - /* - $infosDispo=trim(@getTextInHtml($this->body, 'Liste Produits
    ', '

    ', 'Un secteur ou une région en France

    ')); - $tabTmp=explode('(.*)<\/a>/i', $lien, $matches); - if ($matches[2]<>'') $this->tabInfos[$matches[2]]=$matches[1]; - if (substr($matches[2], 0, 12)=='rapport éco.') $this->infoEco='http://www.cofacerating.fr/portail/entreprise_identite/'.$matches[1]; - elseif (substr($matches[2], 0, 6)=='bilan ') $this->tabBilans[]=substr($matches[2], 6,strlen($matches[2])-6); - }* - $tabRet['activite']=trim(str_replace(chr(160), ' ', html_entity_decode(utf8_encode(@getTextInHtml($this->body, 'Libellé code activité ', '', ''))))); - $tabRet['naf']=trim(@getTextInHtml($this->body, ''Administrateur judiciaire', - 'M'=>'Mandataire judiciaire', - 'H'=>'Huissier', - 'L'=>'Liquidateur', - 'R'=>'Représentant des Créanciers', - 'O'=>'Opposition', - 'U'=>'Curateur', - 'C'=>'Commissaire au plan', - 'S'=>'Syndic', - 'D'=>'Commissaire au concordat', - 'T'=>'Conciliateur', - 'V'=>'Avocat', - 'N'=>'Notaire', - 'J'=>'Juge Commissaire', - 'K'=>'Juge Commissaire Suppléant', - ); - - /** Date la plus ancienne acceptée pour les jugements collectés **/ - $debutForclusion=date('Ymd',mktime(0,0,0,date('m')-24,date('d'),date('Y'))); - - - if ($rubrique=='P' || - $rubrique=='PH') // Procédure collective - $strIdAnn=" AND a.typeEven BETWEEN 1000 AND 1999 AND a.typeEven NOT IN(1005, 1010, 1050, 1055, 1550) "; - elseif ($rubrique=='D') // Dissolution de la société - $strIdAnn=" AND a.typeEven IN (2202, 2203, 2204, 2210, 2211, 2212) "; - elseif ($rubrique=='A') // Absorption - $strIdAnn=" AND a.typeEven IN (2720, 2721) "; - elseif ($rubrique=='C' || $rubrique=='BODC') // Dépôt des comptes - $strIdAnn=" AND a.typeEven BETWEEN 3000 AND 3999 "; - elseif ($rubrique=='R') - $strIdAnn=" AND a.typeEven IN (2202, 2203, 2204, 2210, 2211, 2212) "; - elseif ($rubrique=='L') // Location gérance Locataire - $strIdAnn=" AND a.typeEven IN (2800, 2875, 2880, 2881, 2885, 2840) "; - elseif ($rubrique=='G') // Location gérance Propriétaire - $strIdAnn=" AND a.typeEven IN (2850, 2851, 2860, 2870) "; - elseif ($rubrique=='V') // Ventes/Cessions - $strIdAnn=" AND a.typeEven IN (5500, 5501, 5502, 5503, 5510, 5600, 5650) "; - elseif (is_array($rubrique) && count($rubrique)>0) { - $strIdAnn=" AND (a.typeEven IN (".implode(',',$rubrique).') OR '; - foreach ($rubrique as $codeEven) - $tabTmp[]=" a.typeEven LIKE '%$codeEven%' "; - $strIdAnn.=implode(' OR ',$tabTmp); - $strIdAnn.=')'; - } - //else return $tabRet; - - if ($idAnnonce<>0) $strIdAnn.= " AND a.id=".preg_replace('/^0\./','', $idAnnonce); - - //sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getProcolPart Deb $siren", print_r($tabRet,true)); - - /** Recherche des jugements enregistrés en base S&D **/ - $collecte=$this->iDb->select( 'annonces a, tribunaux t/*, etablissements e*/', - 'a.id, a.siren, a.typeEven, a.strEven, a.dateJugement, a.dateCessationPaiement, a.dateEffetFinP, a.numero, a.inter1type, a.inter1id, a.inter1nom, a.inter2type, a.inter2id, a.inter2nom, a.inter3type, a.inter3id, a.inter3nom, a.inter4type, a.inter4id, a.inter4nom, a.tribunal, a.montant, a.actionsNb, a.complement, a.nouvActivite, a.nouvDir, a.nouvAdr, a.nouvFJ, a.source, a.parutionIdJal, a.parutionNum, a.dateSource, a.annonce, a.dateInsert, t.triNom, t.triSiret, t.triCP, a.raisonSociale, a.adresse, a.codePostal, a.ville', - "a.siren=$siren AND a.tribunal=t.triCode /*AND a.siren=e.siren*/ $strIdAnn AND a.dateSuppr=0 GROUP BY a.siren, a.dateJugement, typeEven ORDER BY /*e.siege DESC, e.actif DESC,*/ a.dateJugement DESC", true, MYSQL_ASSOC); - /*sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getProcolPart Deb $siren", " -SELECT a.id, a.siren, a.typeEven, a.strEven, a.dateJugement, a.dateCessationPaiement, a.dateEffetFinP, a.numero, a.inter1type, a.inter1id, a.inter1nom, a.inter2type, a.inter2id, a.inter2nom, a.inter3type, a.inter3id, a.inter3nom, a.inter4type, a.inter4id, a.inter4nom, a.tribunal, a.montant, a.actionsNb, a.complement, a.nouvActivite, a.nouvDir, a.nouvAdr, a.nouvFJ, a.source, a.parutionIdJal, a.parutionNum, a.dateSource, a.annonce, a.dateInsert, t.triNom, t.triSiret, t.triCP, a.raisonSociale, a.adresse, a.codePostal, a.ville -FROM annonces a, tribunaux t -WHERE a.siren=$siren AND a.tribunal=t.triCode $strIdAnn AND a.dateSuppr=0 -GROUP BY a.siren, a.dateJugement, typeEven -ORDER BY a.dateJugement DESC".EOL.EOL.print_r($collecte,true));*/ - if (count($collecte)>0) { - foreach ($collecte as $k=>$ann) { - $dept=substr($ann['triCP'],0,2)*1; - $depotComptes=false; - if ($dept==97) $dept=substr($ann['triCP'],0,3)*1; - $adresse=''; - - /** Ajout des informations identitaires pour les annonces collecte avant Décembre 2008 **/ - if (trim($ann['raisonSociale'])=='' || trim($ann['adresse'])=='' || trim($ann['codePostal'])=='' || trim($ann['ville'])=='') { - $tabTmp=$this->getIdentiteLight($siren); - $ann['raisonSociale'] = $tabTmp['Nom']; - $ann['adresse'] = $tabTmp['Adresse']; - $ann['codePostal'] = $tabTmp['CP']; - $ann['ville'] = $tabTmp['Ville']; - } - $adresse.=ucfirst(strtolower($ann['adresse'])).', '; - - $adresse=trim(preg_replace('/^0+/','', preg_replace('/ +/',' ', $adresse))); - if (preg_match('/(3100|3200|3300|3999)/', $ann['typeEven'].';'.$ann['strEven'])) { - $depotComptes=true; - $strRCS='Siren : '. $ann['siren'] . '. '; - } else - $strRCS=$ann['siren'] . ' RCS '. ucfirst(strtolower(strtr($ann['triNom'], array('TGIcc '=>'','TGI '=>'','TC '=>'','TI '=>'',)))).'. '; - - $texteAnnonce= 'Date : '.strtolower($classWDate->dateT('Y-m-d','d M Y',$ann['dateJugement'])) .'. '. $this->iBodacc->getEvenement($ann['typeEven']).'. '. - $strRCS . - trim($ann['raisonSociale']). '. Adresse : '. $adresse.' '.$ann['codePostal'].' '.$ann['ville'].'. '; - - if (trim($ann['numero'])<>'') $texteAnnonce.='Jugement Numéro : '.trim($ann['numero']).'. '; - - if ($ann['dateCessationPaiement']*1<>0) $texteAnnonce.='Cessation des paiements le '.strtolower($classWDate->dateT('Y-m-d','d M Y',$ann['dateCessationPaiement'])).'. '; - - if (trim($ann['inter1type'])<>'' && ($ann['inter1id']>0 || trim($ann['inter1nom'])<>'') ) { - $texteAnnonce.=$tabInter[$ann['inter1type']].' : '.$ann['inter1nom']; - if ($ann['inter1id']<>0) { - $tabTmp=$this->iDb->select( 'tabMandataires', 'sirenGrp, sirenMand, tel, fax, email', 'id='.$ann['inter1id'], false, MYSQL_ASSOC); - $mand=$tabTmp[0]; - if ($mand['sirenGrp']<>0) $texteAnnonce.=', Siren SCP '.$mand['sirenGrp']; - if ($mand['sirenMand']<>0) $texteAnnonce.=', Siren '.$mand['sirenMand']; - if ($mand['tel']<>'') $texteAnnonce.=', Telephone '.$mand['tel']; - if ($mand['fax']<>'') $texteAnnonce.=', Telecopie '.$mand['fax']; - if ($mand['email']<>'') $texteAnnonce.=', E-mail : '.$mand['email']; - } - $texteAnnonce.='. '; - } - if (trim($ann['inter2type'])<>'' && ($ann['inter2id']>0 || trim($ann['inter2nom'])<>'') ) { - $texteAnnonce.=$tabInter[$ann['inter2type']].' : '.$ann['inter2nom']; - if ($ann['inter2id']<>0) { - $tabTmp=$this->iDb->select( 'tabMandataires', 'sirenGrp, sirenMand, tel, fax, email', 'id='.$ann['inter2id'], false, MYSQL_ASSOC); - $mand=$tabTmp[0]; - if ($mand['sirenGrp']<>0) $texteAnnonce.=', Siren SCP '.$mand['sirenGrp']; - if ($mand['sirenMand']<>0) $texteAnnonce.=', Siren '.$mand['sirenMand']; - if ($mand['tel']<>'') $texteAnnonce.=', Telephone '.$mand['tel']; - if ($mand['fax']<>'') $texteAnnonce.=', Telecopie '.$mand['fax']; - if ($mand['email']<>'') $texteAnnonce.=', E-mail : '.$mand['email']; - } - $texteAnnonce.='. '; - } - if (trim($ann['inter3type'])<>'' && ($ann['inter3id']>0 || trim($ann['inter3nom'])<>'') ) { - $texteAnnonce.=$tabInter[$ann['inter3type']].' : '.$ann['inter3nom']; - if ($ann['inter3id']<>0) { - $tabTmp=$this->iDb->select( 'tabMandataires', 'sirenGrp, sirenMand, tel, fax, email', 'id='.$ann['inter3id'], false, MYSQL_ASSOC); - $mand=$tabTmp[0]; - if ($mand['sirenGrp']<>0) $texteAnnonce.=', Siren SCP '.$mand['sirenGrp']; - if ($mand['sirenMand']<>0) $texteAnnonce.=', Siren '.$mand['sirenMand']; - if ($mand['tel']<>'') $texteAnnonce.=', Telephone '.$mand['tel']; - if ($mand['fax']<>'') $texteAnnonce.=', Telecopie '.$mand['fax']; - if ($mand['email']<>'') $texteAnnonce.=', E-mail : '.$mand['email']; - } - $texteAnnonce.='. '; - } - if (trim($ann['inter4type'])<>'' && ($ann['inter4id']>0 || trim($ann['inter4nom'])<>'') ) { - $texteAnnonce.=$tabInter[$ann['inter4type']].' : '.$ann['inter4nom']; - if ($ann['inter4id']<>0) { - $tabTmp=$this->iDb->select( 'tabMandataires', 'sirenGrp, sirenMand, tel, fax, email', 'id='.$ann['inter4id'], false, MYSQL_ASSOC); - $mand=$tabTmp[0]; - if ($mand['sirenGrp']<>0) $texteAnnonce.=', Siren SCP '.$mand['sirenGrp']; - if ($mand['sirenMand']<>0) $texteAnnonce.=', Siren '.$mand['sirenMand']; - if ($mand['tel']<>'') $texteAnnonce.=', Telephone '.$mand['tel']; - if ($mand['fax']<>'') $texteAnnonce.=', Telecopie '.$mand['fax']; - if ($mand['email']<>'') $texteAnnonce.=', E-mail : '.$mand['email']; - } - $texteAnnonce.='. '; - } - - if (trim($ann['nouvActivite'])<>'') $texteAnnonce.=' Activité : '.trim($ann['nouvActivite']).'. '; - if (trim($ann['nouvDir'])<>'') $texteAnnonce.=' Administration : '.trim($ann['nouvDir']).'. '; - if (trim($ann['nouvAdr'])<>'') $texteAnnonce.=' Nouvelle adresse : '.trim($ann['nouvAdr']).'. '; - if ($ann['nouvFJ']*1>0) $texteAnnonce.=' Transformation de la société en '.$this->getLibelleFJ($ann['nouvFJ']).'. '; - - if ($ann['dateEffetFinP']*1<>'') { - if ($depotComptes) - $texteAnnonce.=' Comptes annuels et rapports de l\'exercice clos le : '.strtolower($classWDate->dateT('Y-m-d','d M Y',$ann['dateEffetFinP'])).'. '; - else - $texteAnnonce.=' Date d\'effet : '.strtolower($classWDate->dateT('Y-m-d','d M Y',$ann['dateEffetFinP'])).'. '; - } - - if (trim($ann['complement'])<>'') $texteAnnonce.=' Observations : '.trim($ann['complement']).'.'; - - /** Si la procédure à moins de 4 mois on l'affiche **/ - $tabEven=explode(';', $ann['strEven']); - - $tabRetEven=array(); - $tabRetEven[]=array('CodeEven'=>$ann['typeEven'],'LibEven'=>$this->iBodacc->getEvenement($ann['typeEven'])); - if ($ann['typeEven']==2102 || $ann['typeEven']==2100) $capital=true; - else $capital=false; - - if (trim($ann['strEven'])<>'') { - foreach ($tabEven as $even) { - $tabRetEven[]=array('CodeEven'=>$even,'LibEven'=>$this->iBodacc->getEvenement($even)); - if ($even==2102 || $even==2100) $capital=true; - } - } - - if (($this->dureePlan<1 || $this->dureePlan==120) && - ( $ann['typeEven']==1407 || // Modification de plan - $ann['typeEven']==1409 || // Modification du plan de continuation - $ann['typeEven']==1413 || // Arrêt du plan de continuation - $ann['typeEven']==1414) ) // Arrêt du plan de redressement - { - $this->debutPlan=str_replace('-','',$ann['dateJugement']); // SSAAMMJJ - if (preg_match('/dur.e(?:.*)plan(?:.*)(\d+)\s+ans?/Uis', $ann['annonce'], $matches)) { - $this->dureePlan=$matches[1]*12; // 10 ans = 120 mois - } elseif (preg_match('/dur.e(?:.*)plan(?:.*)(\d+)\s+ans?/Uis', $texteAnnonce, $matches)) { - $this->dureePlan=$matches[1]*12; // 10 ans = 120 mois - } - if ($this->dureePlan<1 || $this->dureePlan>120) { - if (($fj==16 || $fj==1600 || // Exploitant agricole - $fj==63 || $fj==6316 || $fj==6317 || $fj==6318 || // Société coopérative agricole - $fj==5431 || $fj==5432 || $fj==5531 || $fj==5532 || // SMIA, SICA - $fj==5631 || $fj==5632 || $fj==6532 || - $fj==6533 || $fj==6534 || $fj==6535 || // GAEC, GFA, Gpt Agricole Foncier - $fj==6597 || $fj==6598) /*&& $this->dureePlan>180*/) - $this->dureePlan=180; // 15 ans - else - $this->dureePlan=120; // 10 ans = 120 mois - } - $this->finPlan=$classWDate->period2Days($this->debutPlan, $this->dureePlan.' mois'); - } - $strVente=''; - $nouvCapital=''; - if ($ann['montant']>0) { - if ($capital) { - $nouvCapital=$ann['montant']; - $texteAnnonce.=' Nouveau capital : '.trim($ann['montant']). ' euros'; - if ($ann['actionsNb']>0) - $texteAnnonce.=' divisé en '.$ann['actionsNb'].' actions de '. round($ann['montant']/$ann['actionsNb']). ' euros'; - } elseif (!preg_match('/ pour un montant de /Uis', $ann['complement'])) { - $texteAnnonce.=' Montant : '.trim($ann['montant']). ' euros'; - $strVente=trim($ann['montant']). ' EUR'; - } - $texteAnnonce.='. '; - } - - // On ne prend l'annonce saisie directement que si elle est plus volumineuse - if (trim($ann['annonce'])<>'' && strlen(trim($ann['annonce']))>strlen($texteAnnonce)) - $texteAnnonce=trim($ann['annonce']); - - $texteAnnonce=preg_replace('/ +/', ' ', strtr($texteAnnonce, array('*'=>' ', '/'=>' ', '..'=>'.'))); - - if (str_replace('-','',$ann['dateSource'])*1<>0) $dateParution=$ann['dateSource']; - else $dateParution=$ann['dateInsert']; - - /** Si la procédure à moins de 4 mois on l'affiche **/ - if ((str_replace('-','',$ann['dateJugement'])*1)>=$debutForclusion) { - $tabRet[$k]=array('id'=>'0.'.$ann['id'], - 'BodaccCode'=>$ann['source'].'-'.$ann['parutionIdJal'], - 'BodaccNum'=>$ann['parutionNum'], - 'NumAnnonce'=>0, - 'DateParution'=>$dateParution, - 'Departement'=>$dept, - 'Tribunal'=>$ann['triNom'], - 'TribunalSiret'=>$ann['triSiret'], - 'Rubrique'=>'procol', - 'typeAnnonce'=>'insertion', - 'dateEffet'=>$ann['dateCessationPaiement'], - 'dateJugement'=>$ann['dateJugement'], - 'dateFin'=>$ann['dateEffetFinP'], - 'montantVente'=>$strVente, - 'libFJ'=>$ann['nouvFJ'],//,if (trim($ann['nouvAdr'])<>'') $texteAnnonce.=' Nouvelle adresse : '.trim($ann['nouvAdr']).'. '; - 'codFJ'=>$this->iBodacc->getCodeFormeJur($ann['nouvFJ']), - 'capital'=>$nouvCapital, - 'capitalDev'=>'EUR', - 'raisonSociale'=>$ann['raisonSociale'], - 'nomCommercial'=>'', - 'sigle'=>'', - 'adresse'=>$ann['nouvAdr'], - 'dateInsertionSD'=>$ann['dateInsert'], - 'evenements'=>$tabRetEven, - 'texteAnnonce'=>$texteAnnonce, - 'complement'=>$ann['complement'], - ); - if ($depotComptes) - $tabRet[$k]['dateEffet']=$ann['dateEffetFinP']; - } - } - } - - //sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getProcolPart Fin $siren", print_r($tabRet,true)); - - return $tabRet; -} - - - function listeConventions($naf4, $dep=0) { - $dep=$dep*1; - if ($dep>0) { - if ($dep<10) $dep='Dep0'.$dep; - else $dep='Dep'.$dep; - $strDep="AND (n.territoire='' OR n.territoire LIKE '%$dep%')"; - } - $listeCC=$this->iDb->select('conv_naf n, conventions c', - 'n.`id CC`, n.`nom CC`, n.`editeur CC`, n.`nb page CC`, n.`isbn CC`, n.`date edition CC`, c.infoCC, joCCmaj', - "n.naf='$naf4' AND substring(n.`id CC`,1,4)=c.numBrochure $strDep GROUP BY n.`id CC`", false, MYSQL_ASSOC); - return $listeCC; - } - - private function findSiteWeb($rs) - { - /** @TODO Provisoirement tant qu'on ne vérifie pas le .fr ou .com auprès d'un registrar **/ - return false; - - $referer='http://www.google.fr/'; - $url='http://www.google.fr/search?hl=fr&q='.urlencode($rs).'&btnG=Rechercher&meta=cr%3DcountryFR'; - $page=getUrl($url, '', '', $referer, false, 'www.google.fr','', 5); - $fp=fopen('./findSiteWeb.log', 'a+'); - if ($page['code']==200) { - $levMin=100; - $pctMin=0; - $urlLev=$urlPct=''; - $body=$page['body']; - preg_match_all('/$url) - { - $lev=@levenshtein ($urlapprox,$url); - if ($lev>0 && $lev<$levMin) { - $levMin=$lev; - $urlLev=$url; - } - $sim=similar_text($urlapprox,$url,$pct); - if ($pct>$pctMin && strpos($url, 'zonebourse')===false) { - $pctMin=$pct; - $urlPct=$url; - } - fwrite($fp, date('Y-m-d H:i:s') .' - '. $page['code'] . " - $rs - $i - $lev (Min=$levMin) - $pct (Min=$pctMin) - $urlLev - $urlPct - $url\n"); - //2008-05-20 20:01:08 - 200- ARKEMA FRANCE - 53 - 20 - 10 - http://www.arkema.fr/ - http://www.zonebourse.com/ARKEMA-17031/ - /intl/fr/about.html - - } - - fclose($fp); - - if ($levMin<15 && $pctMin>44 && $urlLev==$urlPct) { - fwrite($fp, date('Y-m-d H:i:s') .' - '. $page['code'] . " - $rs - $i - $lev (Min=$levMin) - $pct (Min=$pctMin) - $urlLev - $urlPct - $url !!! RETURNED !!!\n"); - return $urlLev; - } - return false; - } - fclose($fp); - return false; - } - - function getImportExport($siren, $type='', $annee='') { - if ($type=='') $strimportExport=" AND importExport IN ('I','E') "; - elseif ($type=='I') $strimportExport=" AND importExport='I' "; - elseif ($type=='E') $strimportExport=" AND importExport='E' "; - if ($annee*1>0) $strAnnees=" AND annee=$annee "; - else { - $tabAnnees=array(); - $strAnnees=' AND annee IN ('; - for ($an=date('Y')-6; $aniDb->select('importExport', 'importExport, annee, /*siren, raisonSociale, naf, categorie, adresse,*/ rangNational, deptSiege', "1 $strImportExport $strAnnees AND siren=$siren ORDER BY annee DESC, importExport ASC",false, MYSQL_ASSOC); - return $tabImportExport; - } - - function getInfosNotice($siren, $nic) { - /** Elements provenant du Notice 80 hors identité **/ - $tabTmp=$this->iDbInsee->select('insee_notices', 'insSIREN, insNIC, insL4_VOIE, insL6_POST, insRPET, insDEPCOMEN, insRPEN, insARRONET, insCTONET, insTCD, insZEMET, insDU, insTU, insUU, insMMINTRET, insMMINTREN, insVMAJ, insVMAJ1, insVMAJ2, insVMAJ3, insRECME, insEAEANT, insEAEAPET, insEAESEC1T, insEAESEC2T, insEAEANN, insEAEAPEN, insEAESEC1N, insEAESEC2N, insEAESEC3N, insEAESEC4N, dateNotice', "insSIREN=$siren AND insNIC=$nic ORDER BY dateNotice DESC LIMIT 0,1", false, MYSQL_ASSOC); - return $tabTmp[0]; - } - - function infoAdresseDom($adresseNum, $adresseBtq, $adresseVoie, $adresseRue, $adresseComp, $cp, $ville, $active=true) { - $adresseNum=trim($adresseNum)*1; - $adresseBtq='';//trim($adresseBtq); - $adresseVoie=trim($adresseVoie); - $adresseRue=trim($adresseRue); - $cp=trim($cp); - $ville=trim($ville); - - if ($adresseNum=='' && $adresseBtq=='' && $adresseVoie=='' && $adresseRue=='' && $cp=='' && $ville=='') - return false; - - $tabAdr=$this->structureVoie($adresseNum.' '.$adresseBtq.' '.$adresseVoie.' '.$adresseRue); - $num=$tabAdr['num']*1; - if ($num==0) return false; - $indRep=trim($tabAdr['indRep']); - $typeVoie=trim($tabAdr['typeVoie']); - $libVoie=trim(substr($tabAdr['libVoie'],-5)); - - $strAdrActive=''; - if ($active) { - $strAdrActive.=" AND (enActif=1 OR etActif=1) AND nbEntrep>30 AND pasEntrepDom=0 AND siren>1000 "; - } - $tabTmp=$this->iDb->select('tabAdrDom', - 'id, siren, nic, enActif, etActif, procol, nom, nom2, sigle, enseigne, adrNum, adrBtq, adrTypVoie, adrLibVoie, ville, cp, adrComp, adrDistSp, cj, apen, apet, nbEntrep, dateInsert, dateUpdate', - "adrNum=$num AND adrBtq='$indRep' AND adrTypVoie LIKE '%$typeVoie%' AND adrLibVoie LIKE '%$libVoie%' AND cp=$cp $strAdrActive", false, MYSQL_ASSOC); - if (count($tabTmp)>0) { -/* sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Adresse de domiciliation", print_r($tabAdr,true).EOL.print_r($tabTmp, true).EOL. -"num=$num=$adresseNum".EOL. -"indRep=$indRep=$adresseBtq".EOL. -"typeVoie=$typeVoie=$adresseVoie".EOL. -"libVoie=$libVoie=$adresseRue".EOL. -"adresseComp=$adresseComp".EOL. -"cp/ville=$cp/$ville".EOL);*/ - return $tabTmp; - }/* else { - sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Adresse de domiciliation Debug", print_r($tabAdr,true).EOL.print_r($tabTmp, true).EOL. -"num=$num=$adresseNum".EOL. -"indRep=$indRep=$adresseBtq".EOL. -"typeVoie=$typeVoie=$adresseVoie".EOL. -"libVoie=$libVoie=$adresseRue".EOL. -"adresseComp=$adresseComp".EOL. -"cp/ville=$cp/$ville".EOL); - return $tabTmp; - }*/ - - return false; - } - - /** - * Retourne l'adresse normalisé - * @param string $siren - * @param string $nic - * @param string $cedexa (1=>On, 0=>Off) - * @return array - * L1_NOM, L2_NOM2, L3_ADRCOMP, L4_VOIE, L5_DISTSP, L6_POST, L7_PAYS - */ - function getAdresse($siren, $nic, $cedexa=1) - { - // Table etablissements - $tabIdentite = $this->getIdentiteLight($siren, $nic); - $codeVoie = strtoupper($this->getCodeVoie($tabIdentite['AdresseVoie'])); - if ($codeVoie=='') $codeVoie=$tabIdentite['AdresseVoie']; - $tabRet = array( - 'L1_NOM' => $tabIdentite['Nom'], - 'L2_NOM2' => $tabIdentite['Enseigne'], - 'L3_ADRCOMP' => '', - 'L4_VOIE' => trim(preg_replace('/ +/',' ',preg_replace('/^0+/','',$tabIdentite['AdresseNum'].' '. - $tabIdentite['AdresseBtq'].' '. $codeVoie.' '. $tabIdentite['AdresseRue']))), - 'L5_DISTSP' => $tabIdentite['Adresse2'], - 'L6_POST' => $tabIdentite['CP'].' '.$tabIdentite['Ville'], - 'L7_PAYS' => '', - ); - - if (strlen($tabRet['L4_VOIE'])>38) { - $tabRet['L4_VOIE']=trim(preg_replace('/ +/',' ',preg_replace('/^0+/','', - $tabIdentite['AdresseNum'].' '. - $tabIdentite['AdresseBtq'].' '. - $tabIdentite['AdresseVoie'].' '. - $tabIdentite['AdresseRue']))); - } - - //Notice 80 - Override $tabRet - $tabNotice = $this->getInfosNotice($siren, $nic); - if ($tabNotice['L6_POST']<>'' && $tabNotice['L6_POST']<>$tabRet['L6_POST']) { - $tabRet['L6_POST'] = $tabNotice['L6_POST']; - } - - $tabTmp = $this->iDbInsee->select('identite','NOM2, ADR_COMP, ADR_DISTSP, PAYS', - "SIREN=$siren AND NIC=$nic", false, MYSQL_ASSOC); - $tabIdentite = $tabTmp[0]; - if ($tabIdentite['NOM2']<>'' && $tabIdentite['NOM2']<>$tabRet['L2_NOM2']) { - $tabRet['L2_NOM2']=$tabIdentite['NOM2']; - } - if ($tabIdentite['ADR_COMP']<>'' && $tabIdentite['ADR_COMP']<>$tabRet['L3_ADRCOMP']) { - $tabRet['L3_ADRCOMP']=$tabIdentite['ADR_COMP']; - } - if ($tabIdentite['ADR_DISTSP']<>'' && $tabIdentite['ADR_DISTSP']<>$tabRet['L5_DISTSP']) { - $tabRet['L5_DISTSP']=$tabIdentite['ADR_DISTSP']; - } - if ($tabIdentite['PAYS']<>'' && $tabIdentite['PAYS']<>$tabRet['L7_PAYS']) { - $tabRet['L7_PAYS']=$tabIdentite['PAYS']; - } - - //Cedexa - if ($cedexa = 1) { - $tabTmp = $this->iDbInsee->select('cedexa','contrat, hexavia, codePostal, l1_nom, l2_nomComp, l3_compGeo, l4_numVoie, l4_indRep, l4_libVoie, l5_distrib, l5_numMS, l5_libCom, l6_codCedex, l6_achCedex, codeInsee, actif, dateFlux, dateInsert, dateUpdate', "siren=$siren AND nic=$nic", false, MYSQL_ASSOC); - if ( count($tabTmp)>0 ) { - $tabCedex = $tabTmp[0]; - - if ($tabCedex['l2_nomComp']<>'' && $tabCedex['l2_nomComp']<>$tabRet['L2_NOM2']) { - $tabRet['L2_NOM2']=$tabCedex['l2_nomComp']; - } - if ($tabCedex['l3_compGeo']<>'' && $tabCedex['l3_compGeo']<>$tabRet['L3_ADRCOMP']) { - $tabRet['L3_ADRCOMP']=$tabCedex['l3_compGeo']; - } - $l4=trim(preg_replace('/ +/',' ',preg_replace('/^0+/','', $tabCedex['l4_numVoie'].' '.$tabCedex['l4_indRep'].' '.$tabCedex['l4_libVoie']))); - if ($l4<>'' && $l4<>$tabRet['L4_VOIE']) { - $tabRet['L4_VOIE']=$l4; - } - $l5=trim(preg_replace('/ +/',' ', $tabCedex['l5_distrib'].' '.$tabCedex['l5_numMS'].' '.$tabCedex['l5_libCom'])); - if ($l5<>'' && $l5<>$tabRet['L5_DISTSP']) { - $tabRet['L5_DISTSP']=$l5; - } - $l6=trim(preg_replace('/ +/',' ', $tabCedex['l6_codCedex'].' '.$tabCedex['l6_achCedex'])); - if ($l6<>'' && $l6<>$tabRet['L6_POST']) { - $tabRet['L6_POST']=$l6; - } - } - } - - return $tabRet; - } - - - function getActivite($siren, $nic=0) - { - $tabIdentite=$this->getIdentiteLight($siren, $nic); - // F.Jur - $fj=$tabIdentite['FJ']; - // Naf 5 - $naf5en=$tabIdentite['NafEnt']; - $naf5et=$tabIdentite['NafEtab']; - // Naf 4 - $naf4en=$naf4et=-1; - $tabNaf4=$this->getNaf4($siren, $nic); - if (isset($tabNaf4['apen4'])) - $naf4en=$tabNaf4['apen4']; - if (isset($tabNaf4['apet4'])) - $naf4et=$tabNaf4['apet4']; - - // Activité Pages Jaunes - $strNic=''; - $an8en=$an8et=-1; - if ($nic*1>0) $strNic="AND nic=$nic"; - $ret=$this->iDb->select('jo.telephonie', - 'infoTel, count(*) AS nb', - "siren=$siren AND typeTel='an8' GROUP BY infoTel ORDER BY nb DESC LIMIT 0,1", false, MYSQL_ASSOC); - if (count($ret)>0) { - $an8en=$ret[0]['infoTel']; - $ret=$this->iDb->select('jo.telephonie', - 'infoTel', - "siren=$siren $strNic AND typeTel='an8' ORDER BY dateProvPartenaire DESC LIMIT 0,1", false, MYSQL_ASSOC); - if (count($ret)>0) - $an8et=$ret[0]['infoTel']; - } - - // Recherche des activités réglementées possibles Naf4&5 ou An8 - $ret=$this->iDb->select('jo.tabActivReg', - 'id, libActivite, listeActivite, naf5, naf4, codAn8, listeCJ, nomAutorite', - "naf5='$naf5en' OR naf5='$naf5et' OR naf4='$naf4en' OR - naf4='$naf4et' OR codAn8='$an8en' OR codAn8='$an8et'", false, MYSQL_ASSOC); - /* @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Activités réglementées sur $siren", - "naf5='$naf5en' OR naf5='$naf5et' OR naf4='$naf4en' OR naf4='$naf4et' OR codAn8='$an8en' OR codAn8='$an8et'".EOL. - print_r($ret, true));*/ - foreach ($ret as $iRet=>$tabAct) { - // Filtre 'listeActivite' : Si défini, on recherche la présence de mots dans l'activité - if (trim($tabAct['listeActivite'])<>'') { - $ok=false; - $tabTmp=explode(';',trim($tabAct['listeActivite'])); - $tabIdentite=$this->getIdentiteEntreprise($siren, $nic); - foreach ($tabTmp as $strTmp) - if (preg_match("/$strTmp/i", $tabIdentite['Activite'])) $ok=true; - if (!$ok) continue; - } - // Filtre 'listeCJ' : Si défini, on limite aux CJ listées - if (trim($tabAct['listeCJ'])<>'') { - $ok=false; - $tabTmp=explode(';',trim($tabAct['listeCJ'])); - foreach ($tabTmp as $strTmp) - if (preg_match("/^$strTmp/", $fj)) $ok=true; - if (!$ok) continue; - } - return array( 'idActivite'=>$tabAct['id'], - 'libActivite'=>$tabAct['libActivite'], - 'nomAutorite'=>$tabAct['nomAutorite'], - ); - } - return false; - } - - public function getCodeNace($naf5) - { - if ($naf5<>'') { - $this->setTabCodesNaf(); - return $this->tabCodesNace[$naf5]; - } - else - return ''; - } - - public function getEtabClients($refClient, $idClient, $login, $deb=0, $nbRep=20, $maxRep=200) - { - $this->setTabCodesNaf(); - $deb=$deb*1; - $nbRep=$nbRep*1; - $limit="LIMIT $deb, $nbRep"; - -// $strLogin=" AND idClient=$idClient "; - - $listeEtab=$this->iDb->select('jo.etablissements e, jo.surveillances_site s', - "'Etab' AS Loc, e.id, e.source, e.source_id, e.triCode, e.autre_id, e.siren, e.nic, e.siege, e.raisonSociale, e.enseigne, e.sigle, e.adr_num, e.adr_btq, e.adr_typeVoie, e.adr_libVoie, e.adr_comp, e.adr_cp, e.adr_ville, e.tel, e.fax, e.cj, e.ape_etab, e.ape_entrep, CONCAT( e.siren, e.nic ) AS siret, e.actif", - "s.login='$login' AND s.siren=e.siren AND (s.nic=e.nic OR e.siege=1) AND s.ref='$refClient' ORDER BY e.siege DESC, e.actif DESC $limit", false, MYSQL_ASSOC); - $nbTot=count($listeEtab); - foreach ($listeEtab as $etab) { - $tel=sprintf('%010d', strtr($etab['tel'],array('-'=>'', '/'=>'','.'=>'',','=>''))); - if ($tel<>'0000000000') $tel=implode('.', str_split($tel,2)); - else $tel=''; - - $fax=sprintf('%010d', strtr($etab['fax'],array('-'=>'', '/'=>'','.'=>'',','=>''))); - if ($fax<>'0000000000') $fax=implode('.', str_split($fax,2)); - else $fax=''; - - $tabRet[]=array( 'Localisation'=>$etab['Loc'], - 'id'=>$etab['id'], - 'Pertinence'=>100, - 'Siret'=>$etab['siret'], - 'Siege'=>$etab['siege'], - 'Nom'=>$etab['raisonSociale'], - 'Sigle'=>$etab['sigle'], - 'Enseigne'=>$etab['enseigne'], - 'Adresse'=>trim(preg_replace('/ +/', ' ', trim( $etab['adr_num'] .' '. $etab['adr_btq'] .' '. - $etab['adr_typeVoie'] .' '. $etab['adr_libVoie']))), - 'Adresse2'=>trim(preg_replace('/ +/', ' ', $etab['adr_comp'])), - 'CP'=>$etab['adr_cp'], - 'Ville'=>$etab['adr_ville'], - 'Tel'=>$tel, - 'Fax'=>$fax, - 'FJ'=>$etab['cj'], - 'FJLib'=>$this->getLibelleFJ($etab['cj']), - 'Siren'=>$etab['siren'], - 'Nic'=>$etab['nic'], - 'Actif'=>$etab['actif'], - 'NafEtab'=>$etab['ape_etab'], // Etablissement - 'NafEnt'=>$etab['ape_entrep'], // Entreprise - 'NafEtabLib'=>$this->getLibelleNaf($etab['ape_etab']), - 'NafEntLib' =>$this->getLibelleNaf($etab['ape_entrep']), - ); - } - - if ($dep==0) $dep=''; // Evite l'affichage d'un 0 inutile sur l'Extranet - - return array( 'criteres'=>array('siren'=>$siren, 'nic'=>$nic, 'dep'=>$dep), - 'nbReponses'=>count($tabRet), - 'nbReponsesTotal'=>$nbTot, - 'reponses'=>$tabRet); - } - - public function getAvisInsee($siren, $nic='') - { - $classWDate = new WDate(); - - if ($siren*1==0 || !$this->valideSiren($siren, $nic)) return false; - if ($nic=='' || $nic*1==0 || $nic>99999) - $strNic=" AND nic=nicSiege"; - else $strNic=" AND nic=$nic"; - $tabTmp=$this->iDbInsee->select('insee_avis', 'raiSoc, dateMaj, siren, nic, etatEt, dateEtatEt, typeEtab, adresseEt0, adresseEt1, adresseEt2, adresseEt3, fj, fjLib, nafEt, nafEtLib, effEtPeriode, effEtTr, erreurs, adresseEn0, adresseEn1, adresseEn2, adresseEn3, nafEn, nafEnLib, effEnPeriode, effEnTr, fjEn, fjEnLib, employes, etatEn, dateEtatEn, nicSiege, nbEtabActifs, dateInsert, dateUpdate, DATE(IF(dateUpdate>dateInsert, dateUpdate, dateInsert))*1 AS dateMajSD', - "siren=$siren $strNic", - false, MYSQL_ASSOC); - $tabInfos=@$tabTmp[0]; - if ($tabInfos['dateMajSD']==date('Ymd')) { - $tabInfos['enCache']=true; -// sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "classMInsee::getAvisInsee... en cache sur $siren", print_r($tabInfos, true)); - return $tabInfos; - } - - /** Initialisation de la session sur le site de l'Insee **/ - $url = 'http://avis-situation-sirene.insee.fr/avisitu/jsp/avis.jsp'; - $referer = $cookie = ''; - $page = getUrl($url, $cookie, '', $referer, false, 'avis-situation-sirene.insee.fr', '', 5); - //Code en 4xx ou 5xx signifie une erreur du serveur - $codeN = floor($page['code']/100); - if($codeN==4 || $codeN==5) - { - return false; - } - else - { - $tabInfos=array(); - $referer = $url; - $body = $page['body']; - $serviceDispo = true; - - if (preg_match("/
    $siren, - 'critere' => $crit, // S pour le siège ou vide avec un NIC !!! - 'nic' => $nic, - 'departement' => $dep, - 'departement_actif' => $depActif, - 'bSubmit' => 'Valider'); - $page = getUrl($url, $cookie, $post, $referer, false, 'avis-situation-sirene.insee.fr', '', 5); - $referer=$url; - $body = $page['body']; -/* $fp=@fopen($fichier, "a"); - @fwrite($fp, $body); - @fclose($fp);*/ - - if (preg_match("/

    Fiche établissement<\/h3>/Uis", $body, $matches))//
  • établissement
  • - $tabInfos['fiche']='etab'; - - if (preg_match('/
    (.*)/Uis', $body, $matches)) { - $tabInfos['raiSoc']=str_replace(''',"'",trim($matches[1])); - } - - if (preg_match("/Dernière mise à jour : (.*)<\/div>/Uis", $body, $matches)) - $tabInfos['dateMaj']=$classWDate->dateT('d/m/Y','Y-m-d',trim($matches[1])); - - $s1=substr($siren,0,3); - $s2=substr($siren,3,3); - $s3=substr($siren,6,3); - if (preg_match('/
    (?:.*)('.$s1.'(?:.*)'.$s2.'(?:.*)'.$s3.')(?:.*)(\d\d\d\d\d)(?:.*)<\/div>/Uis', $body, $matches)) { - $tabInfos['siren'] = trim(str_replace(' ','',$matches[1])); - $tabInfos['nic'] = trim($matches[2]); - if ($nic=='') $nic=$tabInfos['nic']; - } else - $tabInfos['siren']=$siren; - - if (preg_match('/
    "; - } - elseif ($this->header_type == GESHI_HEADER_PRE_TABLE) { - if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { - return "$footer"; - } - return ($this->force_code_block ? '
    ' : '') . - "$footer"; - } - else { - if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { - return "$footer"; - } - return ($this->force_code_block ? '' : '') . - "$footer"; - } - } - - /** - * Replaces certain keywords in the header and footer with - * certain configuration values - * - * @param string The header or footer content to do replacement on - * @return string The header or footer with replaced keywords - * @since 1.0.2 - * @access private - */ - function replace_keywords($instr) { - $keywords = $replacements = array(); - - $keywords[] = '
      to have no effect at all if there are line numbers - // (
        s have margins that should be destroyed so all layout is - // controlled by the set_overall_style method, which works on the - //
         or 
        container). Additionally, set default styles for lines - if (!$economy_mode || $this->line_numbers != GESHI_NO_LINE_NUMBERS) { - //$stylesheet .= "$selector, {$selector}ol, {$selector}ol li {margin: 0;}\n"; - $stylesheet .= "$selector.de1, $selector.de2 {{$this->code_style}}\n"; - } - - // Add overall styles - // note: neglect economy_mode, empty styles are meaningless - if ($this->overall_style != '') { - $stylesheet .= "$selector {{$this->overall_style}}\n"; - } - - // Add styles for links - // note: economy mode does not make _any_ sense here - // either the style is empty and thus no selector is needed - // or the appropriate key is given. - foreach ($this->link_styles as $key => $style) { - if ($style != '') { - switch ($key) { - case GESHI_LINK: - $stylesheet .= "{$selector}a:link {{$style}}\n"; - break; - case GESHI_HOVER: - $stylesheet .= "{$selector}a:hover {{$style}}\n"; - break; - case GESHI_ACTIVE: - $stylesheet .= "{$selector}a:active {{$style}}\n"; - break; - case GESHI_VISITED: - $stylesheet .= "{$selector}a:visited {{$style}}\n"; - break; - } - } - } - - // Header and footer - // note: neglect economy_mode, empty styles are meaningless - if ($this->header_content_style != '') { - $stylesheet .= "$selector.head {{$this->header_content_style}}\n"; - } - if ($this->footer_content_style != '') { - $stylesheet .= "$selector.foot {{$this->footer_content_style}}\n"; - } - - // Styles for important stuff - // note: neglect economy_mode, empty styles are meaningless - if ($this->important_styles != '') { - $stylesheet .= "$selector.imp {{$this->important_styles}}\n"; - } - - // Simple line number styles - if ((!$economy_mode || $this->line_numbers != GESHI_NO_LINE_NUMBERS) && $this->line_style1 != '') { - $stylesheet .= "{$selector}li, {$selector}.li1 {{$this->line_style1}}\n"; - } - if ((!$economy_mode || $this->line_numbers != GESHI_NO_LINE_NUMBERS) && $this->table_linenumber_style != '') { - $stylesheet .= "{$selector}.ln {{$this->table_linenumber_style}}\n"; - } - // If there is a style set for fancy line numbers, echo it out - if ((!$economy_mode || $this->line_numbers == GESHI_FANCY_LINE_NUMBERS) && $this->line_style2 != '') { - $stylesheet .= "{$selector}.li2 {{$this->line_style2}}\n"; - } - - // note: empty styles are meaningless - foreach ($this->language_data['STYLES']['KEYWORDS'] as $group => $styles) { - if ($styles != '' && (!$economy_mode || - (isset($this->lexic_permissions['KEYWORDS'][$group]) && - $this->lexic_permissions['KEYWORDS'][$group]))) { - $stylesheet .= "$selector.kw$group {{$styles}}\n"; - } - } - foreach ($this->language_data['STYLES']['COMMENTS'] as $group => $styles) { - if ($styles != '' && (!$economy_mode || - (isset($this->lexic_permissions['COMMENTS'][$group]) && - $this->lexic_permissions['COMMENTS'][$group]) || - (!empty($this->language_data['COMMENT_REGEXP']) && - !empty($this->language_data['COMMENT_REGEXP'][$group])))) { - $stylesheet .= "$selector.co$group {{$styles}}\n"; - } - } - foreach ($this->language_data['STYLES']['ESCAPE_CHAR'] as $group => $styles) { - if ($styles != '' && (!$economy_mode || $this->lexic_permissions['ESCAPE_CHAR'])) { - // NEW: since 1.0.8 we have to handle hardescapes - if ($group === 'HARD') { - $group = '_h'; - } - $stylesheet .= "$selector.es$group {{$styles}}\n"; - } - } - foreach ($this->language_data['STYLES']['BRACKETS'] as $group => $styles) { - if ($styles != '' && (!$economy_mode || $this->lexic_permissions['BRACKETS'])) { - $stylesheet .= "$selector.br$group {{$styles}}\n"; - } - } - foreach ($this->language_data['STYLES']['SYMBOLS'] as $group => $styles) { - if ($styles != '' && (!$economy_mode || $this->lexic_permissions['SYMBOLS'])) { - $stylesheet .= "$selector.sy$group {{$styles}}\n"; - } - } - foreach ($this->language_data['STYLES']['STRINGS'] as $group => $styles) { - if ($styles != '' && (!$economy_mode || $this->lexic_permissions['STRINGS'])) { - // NEW: since 1.0.8 we have to handle hardquotes - if ($group === 'HARD') { - $group = '_h'; - } - $stylesheet .= "$selector.st$group {{$styles}}\n"; - } - } - foreach ($this->language_data['STYLES']['NUMBERS'] as $group => $styles) { - if ($styles != '' && (!$economy_mode || $this->lexic_permissions['NUMBERS'])) { - $stylesheet .= "$selector.nu$group {{$styles}}\n"; - } - } - foreach ($this->language_data['STYLES']['METHODS'] as $group => $styles) { - if ($styles != '' && (!$economy_mode || $this->lexic_permissions['METHODS'])) { - $stylesheet .= "$selector.me$group {{$styles}}\n"; - } - } - // note: neglect economy_mode, empty styles are meaningless - foreach ($this->language_data['STYLES']['SCRIPT'] as $group => $styles) { - if ($styles != '') { - $stylesheet .= "$selector.sc$group {{$styles}}\n"; - } - } - foreach ($this->language_data['STYLES']['REGEXPS'] as $group => $styles) { - if ($styles != '' && (!$economy_mode || - (isset($this->lexic_permissions['REGEXPS'][$group]) && - $this->lexic_permissions['REGEXPS'][$group]))) { - if (is_array($this->language_data['REGEXPS'][$group]) && - array_key_exists(GESHI_CLASS, $this->language_data['REGEXPS'][$group])) { - $stylesheet .= "$selector."; - $stylesheet .= $this->language_data['REGEXPS'][$group][GESHI_CLASS]; - $stylesheet .= " {{$styles}}\n"; - } else { - $stylesheet .= "$selector.re$group {{$styles}}\n"; - } - } - } - // Styles for lines being highlighted extra - if (!$economy_mode || (count($this->highlight_extra_lines)!=count($this->highlight_extra_lines_styles))) { - $stylesheet .= "{$selector}.ln-xtra, {$selector}li.ln-xtra, {$selector}div.ln-xtra {{$this->highlight_extra_lines_style}}\n"; - } - $stylesheet .= "{$selector}span.xtra { display:block; }\n"; - foreach ($this->highlight_extra_lines_styles as $lineid => $linestyle) { - $stylesheet .= "{$selector}.lx$lineid, {$selector}li.lx$lineid, {$selector}div.lx$lineid {{$linestyle}}\n"; - } - - return $stylesheet; - } - - /** - * Get's the style that is used for the specified line - * - * @param int The line number information is requested for - * @access private - * @since 1.0.7.21 - */ - function get_line_style($line) { - //$style = null; - $style = null; - if (isset($this->highlight_extra_lines_styles[$line])) { - $style = $this->highlight_extra_lines_styles[$line]; - } else { // if no "extra" style assigned - $style = $this->highlight_extra_lines_style; - } - - return $style; - } - - /** - * this functions creates an optimized regular expression list - * of an array of strings. - * - * Example: - * $list = array('faa', 'foo', 'foobar'); - * => string 'f(aa|oo(bar)?)' - * - * @param $list array of (unquoted) strings - * @param $regexp_delimiter your regular expression delimiter, @see preg_quote() - * @return string for regular expression - * @author Milian Wolff - * @since 1.0.8 - * @access private - */ - function optimize_regexp_list($list, $regexp_delimiter = '/') { - $regex_chars = array('.', '\\', '+', '*', '?', '[', '^', ']', '$', - '(', ')', '{', '}', '=', '!', '<', '>', '|', ':', $regexp_delimiter); - sort($list); - $regexp_list = array(''); - $num_subpatterns = 0; - $list_key = 0; - - // the tokens which we will use to generate the regexp list - $tokens = array(); - $prev_keys = array(); - // go through all entries of the list and generate the token list - $cur_len = 0; - for ($i = 0, $i_max = count($list); $i < $i_max; ++$i) { - if ($cur_len > GESHI_MAX_PCRE_LENGTH) { - // seems like the length of this pcre is growing exorbitantly - $regexp_list[++$list_key] = $this->_optimize_regexp_list_tokens_to_string($tokens); - $num_subpatterns = substr_count($regexp_list[$list_key], '(?:'); - $tokens = array(); - $cur_len = 0; - } - $level = 0; - $entry = preg_quote((string) $list[$i], $regexp_delimiter); - $pointer = &$tokens; - // properly assign the new entry to the correct position in the token array - // possibly generate smaller common denominator keys - while (true) { - // get the common denominator - if (isset($prev_keys[$level])) { - if ($prev_keys[$level] == $entry) { - // this is a duplicate entry, skip it - continue 2; - } - $char = 0; - while (isset($entry[$char]) && isset($prev_keys[$level][$char]) - && $entry[$char] == $prev_keys[$level][$char]) { - ++$char; - } - if ($char > 0) { - // this entry has at least some chars in common with the current key - if ($char == strlen($prev_keys[$level])) { - // current key is totally matched, i.e. this entry has just some bits appended - $pointer = &$pointer[$prev_keys[$level]]; - } else { - // only part of the keys match - $new_key_part1 = substr($prev_keys[$level], 0, $char); - $new_key_part2 = substr($prev_keys[$level], $char); - - if (in_array($new_key_part1[0], $regex_chars) - || in_array($new_key_part2[0], $regex_chars)) { - // this is bad, a regex char as first character - $pointer[$entry] = array('' => true); - array_splice($prev_keys, $level, count($prev_keys), $entry); - $cur_len += strlen($entry); - continue; - } else { - // relocate previous tokens - $pointer[$new_key_part1] = array($new_key_part2 => $pointer[$prev_keys[$level]]); - unset($pointer[$prev_keys[$level]]); - $pointer = &$pointer[$new_key_part1]; - // recreate key index - array_splice($prev_keys, $level, count($prev_keys), array($new_key_part1, $new_key_part2)); - $cur_len += strlen($new_key_part2); - } - } - ++$level; - $entry = substr($entry, $char); - continue; - } - // else: fall trough, i.e. no common denominator was found - } - if ($level == 0 && !empty($tokens)) { - // we can dump current tokens into the string and throw them away afterwards - $new_entry = $this->_optimize_regexp_list_tokens_to_string($tokens); - $new_subpatterns = substr_count($new_entry, '(?:'); - if (GESHI_MAX_PCRE_SUBPATTERNS && $num_subpatterns + $new_subpatterns > GESHI_MAX_PCRE_SUBPATTERNS) { - $regexp_list[++$list_key] = $new_entry; - $num_subpatterns = $new_subpatterns; - } else { - if (!empty($regexp_list[$list_key])) { - $new_entry = '|' . $new_entry; - } - $regexp_list[$list_key] .= $new_entry; - $num_subpatterns += $new_subpatterns; - } - $tokens = array(); - $cur_len = 0; - } - // no further common denominator found - $pointer[$entry] = array('' => true); - array_splice($prev_keys, $level, count($prev_keys), $entry); - - $cur_len += strlen($entry); - break; - } - unset($list[$i]); - } - // make sure the last tokens get converted as well - $new_entry = $this->_optimize_regexp_list_tokens_to_string($tokens); - if (GESHI_MAX_PCRE_SUBPATTERNS && $num_subpatterns + substr_count($new_entry, '(?:') > GESHI_MAX_PCRE_SUBPATTERNS) { - if ( !empty($regexp_list[$list_key]) ) { - ++$list_key; - } - $regexp_list[$list_key] = $new_entry; - } else { - if (!empty($regexp_list[$list_key])) { - $new_entry = '|' . $new_entry; - } - $regexp_list[$list_key] .= $new_entry; - } - return $regexp_list; - } - /** - * this function creates the appropriate regexp string of an token array - * you should not call this function directly, @see $this->optimize_regexp_list(). - * - * @param &$tokens array of tokens - * @param $recursed bool to know wether we recursed or not - * @return string - * @author Milian Wolff - * @since 1.0.8 - * @access private - */ - function _optimize_regexp_list_tokens_to_string(&$tokens, $recursed = false) { - $list = ''; - foreach ($tokens as $token => $sub_tokens) { - $list .= $token; - $close_entry = isset($sub_tokens['']); - unset($sub_tokens['']); - if (!empty($sub_tokens)) { - $list .= '(?:' . $this->_optimize_regexp_list_tokens_to_string($sub_tokens, true) . ')'; - if ($close_entry) { - // make sub_tokens optional - $list .= '?'; - } - } - $list .= '|'; - } - if (!$recursed) { - // do some optimizations - // common trailing strings - // BUGGY! - //$list = preg_replace_callback('#(?<=^|\:|\|)\w+?(\w+)(?:\|.+\1)+(?=\|)#', create_function( - // '$matches', 'return "(?:" . preg_replace("#" . preg_quote($matches[1], "#") . "(?=\||$)#", "", $matches[0]) . ")" . $matches[1];'), $list); - // (?:p)? => p? - $list = preg_replace('#\(\?\:(.)\)\?#', '\1?', $list); - // (?:a|b|c|d|...)? => [abcd...]? - // TODO: a|bb|c => [ac]|bb - static $callback_2; - if (!isset($callback_2)) { - $callback_2 = create_function('$matches', 'return "[" . str_replace("|", "", $matches[1]) . "]";'); - } - $list = preg_replace_callback('#\(\?\:((?:.\|)+.)\)#', $callback_2, $list); - } - // return $list without trailing pipe - return substr($list, 0, -1); - } -} // End Class GeSHi - - -if (!function_exists('geshi_highlight')) { - /** - * Easy way to highlight stuff. Behaves just like highlight_string - * - * @param string The code to highlight - * @param string The language to highlight the code in - * @param string The path to the language files. You can leave this blank if you need - * as from version 1.0.7 the path should be automatically detected - * @param boolean Whether to return the result or to echo - * @return string The code highlighted (if $return is true) - * @since 1.0.2 - */ - function geshi_highlight($string, $language, $path = null, $return = false) { - $geshi = new GeSHi($string, $language, $path); - $geshi->set_header_type(GESHI_HEADER_NONE); - - if ($return) { - return '' . $geshi->parse_code() . ''; - } - - echo '' . $geshi->parse_code() . ''; - - if ($geshi->error()) { - return false; - } - return true; - } -} - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/4cs.php b/library/Vendors/geshi/geshi/4cs.php deleted file mode 100644 index 48b671f4..00000000 --- a/library/Vendors/geshi/geshi/4cs.php +++ /dev/null @@ -1,139 +0,0 @@ - 'GADV 4CS', - 'COMMENT_SINGLE' => array(1 => "//"), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'All', 'AllMatches', 'And', 'And_Filters', 'As', 'Asc', 'BasedOn', - 'BestMatch', 'Block', 'Buffer', 'ByRef', 'ByVal', 'Call', 'Channel', - 'Chr', 'Clear', 'Close', 'Confirm', 'Const', 'Continue', 'Cos', - 'Critical', 'Declare', 'Default', 'DefaultChannel', 'DefaultDelayTime', - 'DefaultReceiveMode', 'DefaultResponseTime', '#Define', 'DelayTime', - 'Delete', 'Div', 'Else', '#Else', 'ElseIf', '#ElseIf', 'End', 'EndCritical', - 'EndInlineC', 'EndFunction', 'EndIf', '#EndIf', 'EndInputList', - 'EndLocalChannel', 'EndScenario', 'EndSub', 'EndWhile', 'Error', - 'ErrorLevelOff', 'ErrorLevelOn', 'ErrorLevelSet', 'ErrorLevelSetRaw', - 'Event', 'EventMode', 'EventOff', 'EventOn', 'EventSet', 'EventSetRaw', - 'Execute', 'Exit', 'Exp', 'FileClose', 'FilterClear', 'FileEOF', 'FileOpen', - 'FileRead', 'FileSize', 'FileWrite', 'FilterAdd', 'FilterMode', - 'FilterOff', 'FilterOn', 'For', 'Format', 'Function', 'GoOnline', 'GoTo', - 'Handle', 'Hide', 'If', '#If', '#IfDef', '#IfNDef', 'Ignore', '#Include', - 'InlineC', 'Input', 'InputItem', 'InputList', 'Kill', 'LBound', 'LocalChannel', - 'Local', 'Log', 'Log10', 'LogOff', 'LogOn', 'Loop', 'Message', 'Mod', - 'MonitorChannel', 'MostFormat', 'MostMessage', 'Named', 'Never', 'Next', - 'NoOrder', 'Not', 'Nothing', 'NoWait', 'Numeric', 'OnError', 'OnEvent', - 'Or', 'Or_Filters', 'Order', 'Pass', 'Pow', 'Prototype', 'Quit', 'Raise', - 'Random', 'Receive', 'ReceiveMode', 'ReceiveRaw', 'Redim', 'Remote', 'Repeat', - 'Repeated', 'ResponseTime', 'Resume', 'ResumeCritical', 'RT_Common', - 'RT_Dll_Call', 'RT_FILEIO', 'RT_General', 'RT_HardwareAccess', - 'RT_MessageVariableAccess', 'RT_Scenario', 'RT_VariableAccess', 'Runtime', - 'Scenario', 'ScenarioEnd', 'ScenarioStart', 'ScenarioStatus', 'ScenarioTerminate', - 'Send', 'SendRaw', 'Set', 'SetError', 'Sin', 'Single', 'Show', 'Start', - 'StartCritical', 'Starts', 'Static', 'Step', 'Stop', 'String', 'Sub', - 'System_Error', 'TerminateAllChilds', 'Terminates', 'Then', 'Throw', 'TimeOut', - 'To', 'TooLate', 'Trunc', 'UBound', 'Unexpected', 'Until', 'User_Error', - 'View', 'Wait', 'Warning', 'While', 'XOr' - ), - 2 => array( - 'alias', 'winapi', 'long', 'char', 'double', 'float', 'int', 'short', 'lib' - ) - ), - 'SYMBOLS' => array( - '=', ':=', '<', '>', '<>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000C0; font-weight: bold;', - 2 => 'color: #808080;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000;' - ), - 'BRACKETS' => array( - 0 => 'color: #000080;' - ), - 'STRINGS' => array( - 0 => 'color: #800080;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #66cc66;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000080;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/abap.php b/library/Vendors/geshi/geshi/abap.php deleted file mode 100644 index 942d2397..00000000 --- a/library/Vendors/geshi/geshi/abap.php +++ /dev/null @@ -1,1409 +0,0 @@ -.htm - * - * CHANGES - * ------- - * 2009/02/25 (1.0.8.3) - * - Some more rework of the language file - * 2009/01/04 (1.0.8.2) - * - Major Release, more than 1000 statements and keywords added = whole abap 7.1 (Sandra Rossi) - * 2007/06/27 (1.0.0) - * - First Release - * - * TODO - * ---- - * - in DATA data TYPE type, 2nd "data" and 2nd "type" are highlighted with data - * style, but should be ignored. Same problem for all words!!! This is quite impossible to - * solve it as we should define syntaxes of all statements (huge effort!) and use a lex - * or something like that instead of regexp I guess. - * - Some words are considered as being statement names (report, tables, etc.) though they - * are used as keyword in some statements. For example: FORM xxxx TABLES itab. It was - * arbitrary decided to define them as statement instead of keyword, because it may be - * useful to have the URL to SAP help for some of them. - * - if a comment is between 2 words of a keyword (for example SEPARATED "comment \n BY), - * it is not considered as a keyword, but it should! - * - for statements like "READ DATASET", GeSHi does not allow to set URLs because these - * statements are determined by REGEXPS. For "READ DATASET", the URL should be - * ABAPREAD_DATASET.htm. If a technical solution is found, be careful : URLs - * are sometimes not valid because the URL does not exist. For example, for "AT NEW" - * statement, the URL should be ABAPAT_ITAB.htm (not ABAPAT_NEW.htm). - * There are many other exceptions. - * Note: for adding this functionality within your php program, you can execute this code: - * function add_urls_to_multi_tokens( $matches ) { - * $url = preg_replace( "/[ \n]+/" , "_" , $matches[3] ); - * if( $url == $matches[3] ) return $matches[0] ; - * else return $matches[1]."".$matches[3]."".$matches[4]; - * } - * $html = $geshi->parse_code(); - * $html = preg_replace_callback( "£(zzz:(control|statement|data);\">)(.+?)()£s", "add_urls_to_multi_tokens", $html ); - * echo $html; - * - Numbers followed by a dot terminating the statement are not properly recognized - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array( - 'LANG_NAME' => 'ABAP', - 'COMMENT_SINGLE' => array( - 1 => '"' - ), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - // lines beginning with star at 1st position are comments - // (star anywhere else is not a comment, especially be careful with - // "assign dref->* to " statement) - 2 => '/^\*.*?$/m' - ), - 'CASE_KEYWORDS' => 0, - 'QUOTEMARKS' => array( - 1 => "'", - 2 => "`" - ), - 'ESCAPE_CHAR' => '', - - 'KEYWORDS' => array( - //*********************************************** - // Section 2 : process sequences of several tokens - //*********************************************** - - 7 => array( - 'at new', - 'at end of', - 'at first', - 'at last', - 'loop at', - 'loop at screen', - ), - - 8 => array( - 'private section', - 'protected section', - 'public section', - 'at line-selection', - 'at selection-screen', - 'at user-command', - 'assign component', - 'assign table field', - 'call badi', - 'call customer-function', - 'call customer subscreen', - 'call dialog', - 'call function', - 'call method', - 'call screen', - 'call selection-screen', - 'call transaction', - 'call transformation', - 'close cursor', - 'close dataset', - 'commit work', - 'convert date', - 'convert text', - 'convert time stamp', - 'create data', - 'create object', - 'delete dataset', - 'delete from', - 'describe distance', - 'describe field', - 'describe list', - 'describe table', - 'exec sql', - 'exit from sql', - 'exit from step-loop', - 'export dynpro', - 'export nametab', - 'free memory', - 'generate subroutine-pool', - 'get badi', - 'get bit', - 'get cursor', - 'get dataset', - 'get locale', - 'get parameter', - 'get pf-status', - 'get property', - 'get reference', - 'get run time', - 'get time', - 'get time stamp', - 'import directory', - 'insert report', - 'insert text-pool', - 'leave list-processing', - 'leave program', - 'leave screen', - 'leave to list-processing', - 'leave to transaction', - 'modify line', - 'modify screen', - 'move percentage', - 'open cursor', - 'open dataset', - 'raise event', - 'raise exception', - 'read dataset', - 'read line', - 'read report', - 'read table', - 'read textpool', - 'receive results from function', - 'refresh control', - 'rollback work', - 'set bit', - 'set blank lines', - 'set country', - 'set cursor', - 'set dataset', - 'set extended check', - 'set handler', - 'set hold data', - 'set language', - 'set left scroll-boundary', - 'set locale', - 'set margin', - 'set parameter', - 'set pf-status', - 'set property', - 'set run time analyzer', - 'set run time clock', - 'set screen', - 'set titlebar', - 'set update task', - 'set user-command', - 'suppress dialog', - 'truncate dataset', - 'wait until', - 'wait up to', - ), - - 9 => array( - 'accepting duplicate keys', - 'accepting padding', - 'accepting truncation', - 'according to', - 'actual length', - 'adjacent duplicates', - 'after input', - 'all blob columns', - 'all clob columns', - 'all fields', - 'all methods', - 'all other columns', - 'and mark', - 'and return to screen', - 'and return', - 'and skip first screen', - 'and wait', - 'any table', - 'appendage type', - 'archive mode', - 'archiving parameters', - 'area handle', - 'as checkbox', - 'as icon', - 'as line', - 'as listbox', - 'as person table', - 'as search patterns', - 'as separate unit', - 'as subscreen', - 'as symbol', - 'as text', - 'as window', - 'at cursor-selection', - 'at exit-command', - 'at next application statement', - 'at position', - - 'backup into', - 'before output', - 'before unwind', - 'begin of block', - 'begin of common part', - 'begin of line', - 'begin of screen', - 'begin of tabbed block', - 'begin of version', - 'begin of', - 'big endian', - 'binary mode', - 'binary search', - 'by kernel module', - 'bypassing buffer', - - 'client specified', - 'code page', - 'code page hint', - 'code page into', - 'color black', - 'color blue', - 'color green', - 'color pink', - 'color red', - 'color yellow', - 'compression off', - 'compression on', - 'connect to', - 'corresponding fields of table', - 'corresponding fields of', - 'cover page', - 'cover text', - 'create package', - 'create private', - 'create protected', - 'create public', - 'current position', - - 'data buffer', - 'data values', - 'dataset expiration', - 'daylight saving time', - 'default key', - 'default program', - 'default screen', - 'defining database', - 'deleting leading', - 'deleting trailing', - 'directory entry', - 'display like', - 'display offset', - 'during line-selection', - 'dynamic selections', - - 'edit mask', - 'end of block', - 'end of common part', - 'end of file', - 'end of line', - 'end of screen', - 'end of tabbed block', - 'end of version', - 'end of', - 'endian into', - 'ending at', - 'enhancement options into', - 'enhancement into', - 'environment time format', - 'execute procedure', - 'exporting list to memory', - 'extension type', - - 'field format', - 'field selection', - 'field value into', - 'final methods', - 'first occurrence of', - 'fixed-point arithmetic', - 'for all entries', - 'for all instances', - 'for appending', - 'for columns', - 'for event of', - 'for field', - 'for high', - 'for input', - 'for lines', - 'for low', - 'for node', - 'for output', - 'for select', - 'for table', - 'for testing', - 'for update', - 'for user', - 'frame entry', - 'frame program from', - 'from code page', - 'from context', - 'from database', - 'from logfile id', - 'from number format', - 'from screen', - 'from table', - 'function key', - - 'get connection', - 'global friends', - 'group by', - - 'hashed table of', - 'hashed table', - - 'if found', - 'ignoring case', - 'ignoring conversion errors', - 'ignoring structure boundaries', - 'implementations from', - 'in background', - 'in background task', - 'in background unit', - 'in binary mode', - 'in byte mode', - 'in char-to-hex mode', - 'in character mode', - 'in group', - 'in legacy binary mode', - 'in legacy text mode', - 'in program', - 'in remote task', - 'in text mode', - 'in table', - 'in update task', - 'include bound', - 'include into', - 'include program from', - 'include structure', - 'include type', - 'including gaps', - 'index table', - 'inheriting from', - 'init destination', - 'initial line of', - 'initial line', - 'initial size', - 'internal table', - 'into sortable code', - - 'keep in spool', - 'keeping directory entry', - 'keeping logical unit of work', - 'keeping task', - 'keywords from', - - 'left margin', - 'left outer', - 'levels into', - 'line format', - 'line into', - 'line of', - 'line page', - 'line value from', - 'line value into', - 'lines of', - 'list authority', - 'list dataset', - 'list name', - 'little endian', - 'lob handle for', - 'local friends', - 'locator for', - 'lower case', - - 'main table field', - 'match count', - 'match length', - 'match line', - 'match offset', - 'matchcode object', - 'maximum length', - 'maximum width into', - 'memory id', - 'message into', - 'messages into', - 'modif id', - - 'nesting level', - 'new list identification', - 'next cursor', - 'no database selection', - 'no dialog', - 'no end of line', - 'no fields', - 'no flush', - 'no intervals', - 'no intervals off', - 'no standard page heading', - 'no-extension off', - 'non-unique key', - 'non-unique sorted key', - 'not at end of mode', - 'number of lines', - 'number of pages', - - 'object key', - 'obligatory off', - 'of current page', - 'of page', - 'of program', - 'offset into', - 'on block', - 'on commit', - 'on end of task', - 'on end of', - 'on exit-command', - 'on help-request for', - 'on radiobutton group', - 'on rollback', - 'on value-request for', - 'open for package', - 'option class-coding', - 'option class', - 'option coding', - 'option expand', - 'option syncpoints', - 'options from', - 'order by', - 'overflow into', - - 'package section', - 'package size', - 'preferred parameter', - 'preserving identifier escaping', - 'primary key', - 'print off', - 'print on', - 'program from', - 'program type', - - 'radiobutton groups', - 'radiobutton group', - 'range of', - 'reader for', - 'receive buffer', - 'reduced functionality', - 'ref to data', - 'ref to object', - 'ref to', - - 'reference into', - 'renaming with suffix', - 'replacement character', - 'replacement count', - 'replacement length', - 'replacement line', - 'replacement offset', - 'respecting blanks', - 'respecting case', - 'result into', - 'risk level', - - 'sap cover page', - 'search fkeq', - 'search fkge', - 'search gkeq', - 'search gkge', - 'section of', - 'send buffer', - 'separated by', - 'shared buffer', - 'shared memory', - 'shared memory enabled', - 'skipping byte-order mark', - 'sorted by', - 'sorted table of', - 'sorted table', - 'spool parameters', - 'standard table of', - 'standard table', - 'starting at', - 'starting new task', - 'statements into', - 'structure default', - 'structures into', - - 'table field', - 'table of', - 'text mode', - 'time stamp', - 'time zone', - 'to code page', - 'to column', - 'to context', - 'to first page', - 'to last page', - 'to last line', - 'to line', - 'to lower case', - 'to number format', - 'to page', - 'to sap spool', - 'to upper case', - 'tokens into', - 'transporting no fields', - 'type tableview', - 'type tabstrip', - - 'unicode enabling', - 'up to', - 'upper case', - 'using edit mask', - 'using key', - 'using no edit mask', - 'using screen', - 'using selection-screen', - 'using selection-set', - 'using selection-sets of program', - - 'valid between', - 'valid from', - 'value check', - 'via job', - 'via selection-screen', - 'visible length', - - 'whenever found', - 'with analysis', - 'with byte-order mark', - 'with comments', - 'with current switchstates', - 'with explicit enhancements', - 'with frame', - 'with free selections', - 'with further secondary keys', - 'with header line', - 'with hold', - 'with implicit enhancements', - 'with inactive enhancements', - 'with includes', - 'with key', - 'with linefeed', - 'with list tokenization', - 'with native linefeed', - 'with non-unique key', - 'with null', - 'with pragmas', - 'with precompiled headers', - 'with selection-table', - 'with smart linefeed', - 'with table key', - 'with test code', - 'with type-pools', - 'with unique key', - 'with unix linefeed', - 'with windows linefeed', - 'without further secondary keys', - 'without selection-screen', - 'without spool dynpro', - 'without trmac', - 'word into', - 'writer for' - ), - - //********************************************************** - // Other abap statements - //********************************************************** - 3 => array( - 'add', - 'add-corresponding', - 'aliases', - 'append', - 'assign', - 'at', - 'authority-check', - - 'break-point', - - 'clear', - 'collect', - 'compute', - 'concatenate', - 'condense', - 'class', - 'class-events', - 'class-methods', - 'class-pool', - - 'define', - 'delete', - 'demand', - 'detail', - 'divide', - 'divide-corresponding', - - 'editor-call', - 'end-of-file', - 'end-enhancement-section', - 'end-of-definition', - 'end-of-page', - 'end-of-selection', - 'endclass', - 'endenhancement', - 'endexec', - 'endform', - 'endfunction', - 'endinterface', - 'endmethod', - 'endmodule', - 'endon', - 'endprovide', - 'endselect', - 'enhancement', - 'enhancement-point', - 'enhancement-section', - 'export', - 'extract', - 'events', - - 'fetch', - 'field-groups', - 'find', - 'format', - 'form', - 'free', - 'function-pool', - 'function', - - 'get', - - 'hide', - - 'import', - 'infotypes', - 'input', - 'insert', - 'include', - 'initialization', - 'interface', - 'interface-pool', - 'interfaces', - - 'leave', - 'load-of-program', - 'log-point', - - 'maximum', - 'message', - 'methods', - 'method', - 'minimum', - 'modify', - 'move', - 'move-corresponding', - 'multiply', - 'multiply-corresponding', - - 'new-line', - 'new-page', - 'new-section', - - 'overlay', - - 'pack', - 'perform', - 'position', - 'print-control', - 'program', - 'provide', - 'put', - - 'raise', - 'refresh', - 'reject', - 'replace', - 'report', - 'reserve', - - 'scroll', - 'search', - 'select', - 'selection-screen', - 'shift', - 'skip', - 'sort', - 'split', - 'start-of-selection', - 'submit', - 'subtract', - 'subtract-corresponding', - 'sum', - 'summary', - 'summing', - 'supply', - 'syntax-check', - - 'top-of-page', - 'transfer', - 'translate', - 'type-pool', - - 'uline', - 'unpack', - 'update', - - 'window', - 'write' - - ), - - //********************************************************** - // keywords - //********************************************************** - - 4 => array( - 'abbreviated', - 'abstract', - 'accept', - 'acos', - 'activation', - 'alias', - 'align', - 'all', - 'allocate', - 'and', - 'assigned', - 'any', - 'appending', - 'area', - 'as', - 'ascending', - 'asin', - 'assigning', - 'atan', - 'attributes', - 'avg', - - 'backward', - 'between', - 'bit-and', - 'bit-not', - 'bit-or', - 'bit-set', - 'bit-xor', - 'boolc', - 'boolx', - 'bound', - 'bt', - 'blocks', - 'bounds', - 'boxed', - 'by', - 'byte-ca', - 'byte-cn', - 'byte-co', - 'byte-cs', - 'byte-na', - 'byte-ns', - - 'ca', - 'calling', - 'casting', - 'ceil', - 'center', - 'centered', - 'changing', - 'char_off', - 'charlen', - 'circular', - 'class_constructor', - 'client', - 'clike', - 'close', - 'cmax', - 'cmin', - 'cn', - 'cnt', - 'co', - 'col_background', - 'col_group', - 'col_heading', - 'col_key', - 'col_negative', - 'col_normal', - 'col_positive', - 'col_total', - 'color', - 'column', - 'comment', - 'comparing', - 'components', - 'condition', - 'context', - 'copies', - 'count', - 'country', - 'cpi', - 'creating', - 'critical', - 'concat_lines_of', - 'cos', - 'cosh', - 'count_any_not_of', - 'count_any_of', - 'cp', - 'cs', - 'csequence', - 'currency', - 'current', - 'cx_static_check', - 'cx_root', - 'cx_dynamic_check', - - 'dangerous', - 'database', - 'datainfo', - 'date', - 'dbmaxlen', - 'dd/mm/yy', - 'dd/mm/yyyy', - 'ddmmyy', - 'deallocate', - 'decfloat', - 'decfloat16', - 'decfloat34', - 'decimals', - 'default', - 'deferred', - 'definition', - 'department', - 'descending', - 'destination', - 'disconnect', - 'display-mode', - 'distance', - 'distinct', - 'div', - 'dummy', - - 'encoding', - 'end-lines', - 'engineering', - 'environment', - 'eq', - 'equiv', - 'error_message', - 'errormessage', - 'escape', - 'exact', - 'exception-table', - 'exceptions', - 'exclude', - 'excluding', - 'exists', - 'exp', - 'exponent', - 'exporting', - 'extended_monetary', - - 'field', - 'filter-table', - 'filters', - 'filter', - 'final', - 'find_any_not_of', - 'find_any_of', - 'find_end', - 'floor', - 'first-line', - 'font', - 'forward', - 'for', - 'frac', - 'from_mixed', - 'friends', - 'from', - - 'giving', - 'ge', - 'gt', - - 'handle', - 'harmless', - 'having', - 'head-lines', - 'help-id', - 'help-request', - 'high', - 'hold', - 'hotspot', - - 'id', - 'ids', - 'immediately', - 'implementation', - 'importing', - 'in', - 'initial', - 'incl', - 'including', - 'increment', - 'index', - 'index-line', - 'inner', - 'inout', - 'intensified', - 'into', - 'inverse', - 'is', - 'iso', - - 'join', - - 'key', - 'kind', - - 'log10', - 'language', - 'late', - 'layout', - 'le', - 'lt', - 'left-justified', - 'leftplus', - 'leftspace', - 'left', - 'length', - 'level', - 'like', - 'line-count', - 'line-size', - 'lines', - 'line', - 'load', - 'long', - 'lower', - 'low', - 'lpi', - - 'matches', - 'match', - 'mail', - 'major-id', - 'max', - 'medium', - 'memory', - 'message-id', - 'module', - 'minor-id', - 'min', - 'mm/dd/yyyy', - 'mm/dd/yy', - 'mmddyy', - 'mode', - 'modifier', - 'mod', - 'monetary', - - 'name', - 'nb', - 'ne', - 'next', - 'no-display', - 'no-extension', - 'no-gap', - 'no-gaps', - 'no-grouping', - 'no-heading', - 'no-scrolling', - 'no-sign', - 'no-title', - 'no-topofpage', - 'no-zero', - 'nodes', - 'non-unicode', - 'no', - 'number', - 'nmax', - 'nmin', - 'not', - 'null', - 'numeric', - 'numofchar', - - 'o', - 'objects', - 'obligatory', - 'occurs', - 'offset', - 'off', - 'of', - 'only', - 'open', - 'option', - 'optional', - 'options', - 'output-length', - 'output', - 'out', - 'on change of', - 'or', - 'others', - - 'pad', - 'page', - 'pages', - 'parameter-table', - 'part', - 'performing', - 'pos_high', - 'pos_low', - 'priority', - 'public', - 'pushbutton', - - 'queue-only', - 'quickinfo', - - 'raising', - 'range', - 'read-only', - 'received', - 'receiver', - 'receiving', - 'redefinition', - 'reference', - 'regex', - 'replacing', - 'reset', - 'responsible', - 'result', - 'results', - 'resumable', - 'returncode', - 'returning', - 'right', - 'right-specified', - 'rightplus', - 'rightspace', - 'round', - 'rows', - 'repeat', - 'requested', - 'rescale', - 'reverse', - - 'scale_preserving', - 'scale_preserving_scientific', - 'scientific', - 'scientific_with_leading_zero', - 'screen', - 'scrolling', - 'seconds', - 'segment', - 'shift_left', - 'shift_right', - 'sign', - 'simple', - 'sin', - 'sinh', - 'short', - 'shortdump-id', - 'sign_as_postfix', - 'single', - 'size', - 'some', - 'source', - 'space', - 'spots', - 'stable', - 'state', - 'static', - 'statusinfo', - 'sqrt', - 'string', - 'strlen', - 'structure', - 'style', - 'subkey', - 'submatches', - 'substring', - 'substring_after', - 'substring_before', - 'substring_from', - 'substring_to', - 'super', - 'supplied', - 'switch', - - 'tan', - 'tanh', - 'table_line', - 'table', - 'tab', - 'then', - 'timestamp', - 'times', - 'time', - 'timezone', - 'title-lines', - 'title', - 'top-lines', - 'to', - 'to_lower', - 'to_mixed', - 'to_upper', - 'trace-file', - 'trace-table', - 'transporting', - 'trunc', - 'type', - - 'under', - 'unique', - 'unit', - 'user-command', - 'using', - 'utf-8', - - 'valid', - 'value', - 'value-request', - 'values', - 'vary', - 'varying', - 'version', - - 'warning', - 'where', - 'width', - 'with', - 'word', - 'with-heading', - 'with-title', - - 'xsequence', - 'xstring', - 'xstrlen', - - 'yes', - 'yymmdd', - - 'z', - 'zero' - - ), - - //********************************************************** - // screen statements - //********************************************************** - - 5 => array( - 'call subscreen', - 'chain', - 'endchain', - 'on chain-input', - 'on chain-request', - 'on help-request', - 'on input', - 'on request', - 'on value-request', - 'process' - ), - - //********************************************************** - // internal statements - //********************************************************** - - 6 => array( - 'generate dynpro', - 'generate report', - 'import dynpro', - 'import nametab', - 'include methods', - 'load report', - 'scan abap-source', - 'scan and check abap-source', - 'syntax-check for dynpro', - 'syntax-check for program', - 'syntax-trace', - 'system-call', - 'system-exit', - 'verification-message' - ), - - //********************************************************** - // Control statements - //********************************************************** - - 1 => array( - 'assert', - 'case', - 'catch', - 'check', - 'cleanup', - 'continue', - 'do', - 'else', - 'elseif', - 'endat', - 'endcase', - 'endcatch', - 'endif', - 'enddo', - 'endloop', - 'endtry', - 'endwhile', - 'exit', - 'if', - 'loop', - 'resume', - 'retry', - 'return', - 'stop', - 'try', - 'when', - 'while' - - ), - - //********************************************************** - // variable declaration statements - //********************************************************** - - 2 => array( - 'class-data', - 'controls', - 'constants', - 'data', - 'field-symbols', - 'fields', - 'local', - 'parameters', - 'ranges', - 'select-options', - 'statics', - 'tables', - 'type-pools', - 'types' - ) - ), - 'SYMBOLS' => array( - 0 => array( - '->*', '->', '=>', - '(', ')', '{', '}', '[', ']', '+', '-', '*', '/', '!', '%', '^', '&', ':', ',', '.' - ), - 1 => array( - '>=', '<=', '<', '>', '=' - ), - 2 => array( - '?=' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false, - 8 => false, - 9 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000066; text-transform: uppercase; font-weight: bold; zzz:control;', //control statements - 2 => 'color: #cc4050; text-transform: uppercase; font-weight: bold; zzz:data;', //data statements - 3 => 'color: #005066; text-transform: uppercase; font-weight: bold; zzz:statement;', //first token of other statements - 4 => 'color: #500066; text-transform: uppercase; font-weight: bold; zzz:keyword;', // next tokens of other statements ("keywords") - 5 => 'color: #005066; text-transform: uppercase; font-weight: bold; zzz:statement;', - 6 => 'color: #000066; text-transform: uppercase; font-weight: bold; zzz:control;', - 7 => 'color: #000066; text-transform: uppercase; font-weight: bold; zzz:control;', - 8 => 'color: #005066; text-transform: uppercase; font-weight: bold; zzz:statement;', - 9 => 'color: #500066; text-transform: uppercase; font-weight: bold; zzz:keyword;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #339933;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #808080;' - ), - 'STRINGS' => array( - 0 => 'color: #4da619;' - ), - 'NUMBERS' => array( - 0 => 'color: #3399ff;' - ), - 'METHODS' => array( - 1 => 'color: #202020;', - 2 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #808080;', - 1 => 'color: #800080;', - 2 => 'color: #0000ff;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://help.sap.com/abapdocu/en/ABAP{FNAMEU}.htm', - 2 => 'http://help.sap.com/abapdocu/en/ABAP{FNAMEU}.htm', - 3 => 'http://help.sap.com/abapdocu/en/ABAP{FNAMEU}.htm', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '', - 9 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '->', - 2 => '=>' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 7 => array( - 'SPACE_AS_WHITESPACE' => true - ), - 8 => array( - 'SPACE_AS_WHITESPACE' => true - ), - 9 => array( - 'SPACE_AS_WHITESPACE' => true - ) - ) - ), - 'TAB_WIDTH' => 4 -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/actionscript.php b/library/Vendors/geshi/geshi/actionscript.php deleted file mode 100644 index 41d66edd..00000000 --- a/library/Vendors/geshi/geshi/actionscript.php +++ /dev/null @@ -1,197 +0,0 @@ - 'ActionScript', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - '#include', 'for', 'foreach', 'each', 'if', 'elseif', 'else', 'while', 'do', 'dowhile', - 'endwhile', 'endif', 'switch', 'case', 'endswitch', 'return', 'break', 'continue', 'in' - ), - 2 => array( - 'null', 'false', 'true', 'var', - 'default', 'function', 'class', - 'new', '_global' - ), - 3 => array( - '#endinitclip', '#initclip', '__proto__', '_accProps', '_alpha', '_currentframe', - '_droptarget', '_focusrect', '_framesloaded', '_height', '_highquality', '_lockroot', - '_name', '_parent', '_quality', '_root', '_rotation', '_soundbuftime', '_target', '_totalframes', - '_url', '_visible', '_width', '_x', '_xmouse', '_xscale', '_y', '_ymouse', '_yscale', 'abs', - 'Accessibility', 'acos', 'activityLevel', 'add', 'addListener', 'addPage', 'addProperty', - 'addRequestHeader', 'align', 'allowDomain', 'allowInsecureDomain', 'and', 'appendChild', - 'apply', 'Arguments', 'Array', 'asfunction', 'asin', 'atan', 'atan2', 'attachAudio', 'attachMovie', - 'attachSound', 'attachVideo', 'attributes', 'autosize', 'avHardwareDisable', 'background', - 'backgroundColor', 'BACKSPACE', 'bandwidth', 'beginFill', 'beginGradientFill', 'blockIndent', - 'bold', 'Boolean', 'border', 'borderColor', 'bottomScroll', 'bufferLength', 'bufferTime', - 'builtInItems', 'bullet', 'Button', 'bytesLoaded', 'bytesTotal', 'call', 'callee', 'caller', - 'Camera', 'capabilities', 'CAPSLOCK', 'caption', 'catch', 'ceil', 'charAt', 'charCodeAt', - 'childNodes', 'chr', 'clear', 'clearInterval', 'cloneNode', 'close', 'Color', 'concat', - 'connect', 'condenseWhite', 'constructor', 'contentType', 'ContextMenu', 'ContextMenuItem', - 'CONTROL', 'copy', 'cos', 'createElement', 'createEmptyMovieClip', 'createTextField', - 'createTextNode', 'currentFps', 'curveTo', 'CustomActions', 'customItems', 'data', 'Date', - 'deblocking', 'delete', 'DELETEKEY', 'docTypeDecl', 'domain', 'DOWN', - 'duplicateMovieClip', 'duration', 'dynamic', 'E', 'embedFonts', 'enabled', - 'END', 'endFill', 'ENTER', 'eq', 'Error', 'ESCAPE(Konstante)', 'escape(Funktion)', 'eval', - 'exactSettings', 'exp', 'extends', 'finally', 'findText', 'firstChild', 'floor', - 'flush', 'focusEnabled', 'font', 'fps', 'fromCharCode', 'fscommand', - 'gain', 'ge', 'get', 'getAscii', 'getBeginIndex', 'getBounds', 'getBytesLoaded', 'getBytesTotal', - 'getCaretIndex', 'getCode', 'getCount', 'getDate', 'getDay', 'getDepth', 'getEndIndex', 'getFocus', - 'getFontList', 'getFullYear', 'getHours', 'getInstanceAtDepth', 'getLocal', 'getMilliseconds', - 'getMinutes', 'getMonth', 'getNewTextFormat', 'getNextHighestDepth', 'getPan', 'getProgress', - 'getProperty', 'getRGB', 'getSeconds', 'getSelected', 'getSelectedText', 'getSize', 'getStyle', - 'getStyleNames', 'getSWFVersion', 'getText', 'getTextExtent', 'getTextFormat', 'getTextSnapshot', - 'getTime', 'getTimer', 'getTimezoneOffset', 'getTransform', 'getURL', 'getUTCDate', 'getUTCDay', - 'getUTCFullYear', 'getUTCHours', 'getUTCMilliseconds', 'getUTCMinutes', 'getUTCMonth', 'getUTCSeconds', - 'getVersion', 'getVolume', 'getYear', 'globalToLocal', 'goto', 'gotoAndPlay', 'gotoAndStop', - 'hasAccessibility', 'hasAudio', 'hasAudioEncoder', 'hasChildNodes', 'hasEmbeddedVideo', 'hasMP3', - 'hasPrinting', 'hasScreenBroadcast', 'hasScreenPlayback', 'hasStreamingAudio', 'hasStreamingVideo', - 'hasVideoEncoder', 'height', 'hide', 'hideBuiltInItems', 'hitArea', 'hitTest', 'hitTestTextNearPos', - 'HOME', 'hscroll', 'html', 'htmlText', 'ID3', 'ifFrameLoaded', 'ignoreWhite', 'implements', - 'import', 'indent', 'index', 'indexOf', 'Infinity', '-Infinity', 'INSERT', 'insertBefore', 'install', - 'instanceof', 'int', 'interface', 'isActive', 'isDebugger', 'isDown', 'isFinite', 'isNaN', 'isToggled', - 'italic', 'join', 'Key', 'language', 'lastChild', 'lastIndexOf', 'le', 'leading', 'LEFT', 'leftMargin', - 'length', 'level', 'lineStyle', 'lineTo', 'list', 'LN10', 'LN2', 'load', 'loadClip', 'loaded', 'loadMovie', - 'loadMovieNum', 'loadSound', 'loadVariables', 'loadVariablesNum', 'LoadVars', 'LocalConnection', - 'localFileReadDisable', 'localToGlobal', 'log', 'LOG10E', 'LOG2E', 'manufacturer', 'Math', 'max', - 'MAX_VALUE', 'maxChars', 'maxhscroll', 'maxscroll', 'mbchr', 'mblength', 'mbord', 'mbsubstring', 'menu', - 'message', 'Microphone', 'min', 'MIN_VALUE', 'MMExecute', 'motionLevel', 'motionTimeOut', 'Mouse', - 'mouseWheelEnabled', 'moveTo', 'Movieclip', 'MovieClipLoader', 'multiline', 'muted', 'name', 'names', 'NaN', - 'ne', 'NEGATIVE_INFINITY', 'NetConnection', 'NetStream', 'newline', 'nextFrame', - 'nextScene', 'nextSibling', 'nodeName', 'nodeType', 'nodeValue', 'not', 'Number', 'Object', - 'on', 'onActivity', 'onChanged', 'onClipEvent', 'onClose', 'onConnect', 'onData', 'onDragOut', - 'onDragOver', 'onEnterFrame', 'onID3', 'onKeyDown', 'onKeyUp', 'onKillFocus', 'onLoad', 'onLoadComplete', - 'onLoadError', 'onLoadInit', 'onLoadProgress', 'onLoadStart', 'onMouseDown', 'onMouseMove', 'onMouseUp', - 'onMouseWheel', 'onPress', 'onRelease', 'onReleaseOutside', 'onResize', 'onRollOut', 'onRollOver', - 'onScroller', 'onSelect', 'onSetFocus', 'onSoundComplete', 'onStatus', 'onUnload', 'onUpdate', 'onXML', - 'or(logischesOR)', 'ord', 'os', 'parentNode', 'parseCSS', 'parseFloat', 'parseInt', 'parseXML', 'password', - 'pause', 'PGDN', 'PGUP', 'PI', 'pixelAspectRatio', 'play', 'playerType', 'pop', 'position', - 'POSITIVE_INFINITY', 'pow', 'prevFrame', 'previousSibling', 'prevScene', 'print', 'printAsBitmap', - 'printAsBitmapNum', 'PrintJob', 'printNum', 'private', 'prototype', 'public', 'push', 'quality', - 'random', 'rate', 'registerClass', 'removeListener', 'removeMovieClip', 'removeNode', 'removeTextField', - 'replaceSel', 'replaceText', 'resolutionX', 'resolutionY', 'restrict', 'reverse', 'RIGHT', - 'rightMargin', 'round', 'scaleMode', 'screenColor', 'screenDPI', 'screenResolutionX', 'screenResolutionY', - 'scroll', 'seek', 'selectable', 'Selection', 'send', 'sendAndLoad', 'separatorBefore', 'serverString', - 'set', 'setvariable', 'setBufferTime', 'setClipboard', 'setDate', 'setFocus', 'setFullYear', 'setGain', - 'setHours', 'setInterval', 'setMask', 'setMilliseconds', 'setMinutes', 'setMode', 'setMonth', - 'setMotionLevel', 'setNewTextFormat', 'setPan', 'setProperty', 'setQuality', 'setRate', 'setRGB', - 'setSeconds', 'setSelectColor', 'setSelected', 'setSelection', 'setSilenceLevel', 'setStyle', - 'setTextFormat', 'setTime', 'setTransform', 'setUseEchoSuppression', 'setUTCDate', 'setUTCFullYear', - 'setUTCHours', 'setUTCMilliseconds', 'setUTCMinutes', 'setUTCMonth', 'setUTCSeconds', 'setVolume', - 'setYear', 'SharedObject', 'SHIFT(Konstante)', 'shift(Methode)', 'show', 'showMenu', 'showSettings', - 'silenceLevel', 'silenceTimeout', 'sin', 'size', 'slice', 'smoothing', 'sort', 'sortOn', 'Sound', 'SPACE', - 'splice', 'split', 'sqrt', 'SQRT1_2', 'SQRT2', 'Stage', 'start', 'startDrag', 'static', 'status', 'stop', - 'stopAllSounds', 'stopDrag', 'String', 'StyleSheet(Klasse)', 'styleSheet(Eigenschaft)', 'substr', - 'substring', 'super', 'swapDepths', 'System', 'TAB', 'tabChildren', 'tabEnabled', 'tabIndex', - 'tabStops', 'tan', 'target', 'targetPath', 'tellTarget', 'text', 'textColor', 'TextField', 'TextFormat', - 'textHeight', 'TextSnapshot', 'textWidth', 'this', 'throw', 'time', 'toggleHighQuality', 'toLowerCase', - 'toString', 'toUpperCase', 'trace', 'trackAsMenu', 'try', 'type', 'typeof', 'undefined', - 'underline', 'unescape', 'uninstall', 'unloadClip', 'unloadMovie', 'unLoadMovieNum', 'unshift', 'unwatch', - 'UP', 'updateAfterEvent', 'updateProperties', 'url', 'useCodePage', 'useEchoSuppression', 'useHandCursor', - 'UTC', 'valueOf', 'variable', 'version', 'Video', 'visible', 'void', 'watch', 'width', - 'with', 'wordwrap', 'XML', 'xmlDecl', 'XMLNode', 'XMLSocket' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '!', '@', '%', '&', '*', '|', '/', '<', '>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #0066CC;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array() -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/actionscript3.php b/library/Vendors/geshi/geshi/actionscript3.php deleted file mode 100644 index 4aab929d..00000000 --- a/library/Vendors/geshi/geshi/actionscript3.php +++ /dev/null @@ -1,473 +0,0 @@ - 'ActionScript 3', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Regular expressions - 2 => "/(?<=[\\s^])(s|tr|y)\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/(?:\\\\.|(?!\n)[^\\/\\\\])*\\/[msixpogcde]*(?=[\\s$\\.\\;])|(?<=[\\s^(=])(m|q[qrwx]?)?\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[msixpogc]*(?=[\\s$\\.\\,\\;\\)])/iU", - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'with', 'while', 'void', 'undefined', 'typeof', 'try', 'true', - 'throw', 'this', 'switch', 'super', 'set', 'return', 'public', 'protected', - 'private', 'null', 'new', 'is', 'internal', 'instanceof', 'in', - 'import', 'if', 'get', 'for', 'false', 'else', 'each', 'do', - 'delete', 'default', 'continue', 'catch', 'case', 'break', 'as', - 'extends' - ), - 2 => array( - 'var' - ), - 3 => array( - 'function' - ), - 4 => array( - 'class', 'package' - ), - 6 => array( - 'flash.xml', 'flash.utils', 'flash.ui', 'flash.text', - 'flash.system', 'flash.profiler', 'flash.printing', 'flash.net', - 'flash.media', 'flash.geom', 'flash.filters', 'flash.external', - 'flash.events', 'flash.errors', 'flash.display', - 'flash.accessibility' - ), - 7 => array( - 'zoom', 'year', 'y', 'xmlDecl', 'x', 'writeUnsignedInt', - 'writeUTFBytes', 'writeUTF', 'writeShort', 'writeObject', - 'writeMultiByte', 'writeInt', 'writeFloat', 'writeExternal', - 'writeDynamicProperty', 'writeDynamicProperties', 'writeDouble', - 'writeBytes', 'writeByte', 'writeBoolean', 'wordWrap', - 'willTrigger', 'width', 'volume', 'visible', 'videoWidth', - 'videoHeight', 'version', 'valueOf', 'value', 'usingTLS', - 'useRichTextClipboard', 'useHandCursor', 'useEchoSuppression', - 'useCodePage', 'url', 'uri', 'uploadCompleteData', 'upload', - 'updateProperties', 'updateAfterEvent', 'upState', 'unshift', - 'unlock', 'unload', 'union', 'unescapeMultiByte', 'unescape', - 'underline', 'uncompress', 'type', 'ty', 'tx', 'transparent', - 'translate', 'transformPoint', 'transform', 'trackAsMenu', 'track', - 'trace', 'totalMemory', 'totalFrames', 'topLeft', 'top', - 'togglePause', 'toXMLString', 'toUpperCase', 'toUTCString', - 'toTimeString', 'toString', 'toPrecision', 'toLowerCase', - 'toLocaleUpperCase', 'toLocaleTimeString', 'toLocaleString', - 'toLocaleLowerCase', 'toLocaleDateString', 'toFixed', - 'toExponential', 'toDateString', 'timezoneOffset', 'timerComplete', - 'timer', 'time', 'threshold', 'thickness', 'textWidth', - 'textSnapshot', 'textInput', 'textHeight', 'textColor', 'text', - 'test', 'target', 'tan', 'tabStops', 'tabIndexChange', 'tabIndex', - 'tabEnabledChange', 'tabEnabled', 'tabChildrenChange', - 'tabChildren', 'sync', 'swfVersion', 'swapChildrenAt', - 'swapChildren', 'subtract', 'substring', 'substr', 'styleSheet', - 'styleNames', 'strength', 'stopPropagation', - 'stopImmediatePropagation', 'stopDrag', 'stopAll', 'stop', 'status', - 'startDrag', 'start', 'stageY', 'stageX', 'stageWidth', - 'stageHeight', 'stageFocusRect', 'stage', 'sqrt', 'split', 'splice', - 'source', 'soundTransform', 'soundComplete', 'sortOn', 'sort', - 'songName', 'some', 'socketData', 'smoothing', 'slice', 'size', - 'sin', 'silent', 'silenceTimeout', 'silenceLevel', 'showSettings', - 'showRedrawRegions', 'showDefaultContextMenu', 'show', 'shortcut', - 'shiftKey', 'shift', 'sharpness', 'sharedEvents', 'shadowColor', - 'shadowAlpha', 'settings', 'setUseEchoSuppression', 'setUTCSeconds', - 'setUTCMonth', 'setUTCMinutes', 'setUTCMilliseconds', 'setUTCHours', - 'setUTCFullYear', 'setUTCDate', 'setTimeout', 'setTime', - 'setTextFormat', 'setStyle', 'setSilenceLevel', 'setSettings', - 'setSelection', 'setSelected', 'setSelectColor', 'setSeconds', - 'setQuality', 'setPropertyIsEnumerable', 'setProperty', 'setPixels', - 'setPixel32', 'setPixel', 'setNamespace', 'setName', - 'setMotionLevel', 'setMonth', 'setMode', 'setMinutes', - 'setMilliseconds', 'setLoopback', 'setLoopBack', 'setLocalName', - 'setKeyFrameInterval', 'setInterval', 'setHours', 'setFullYear', - 'setEmpty', 'setDirty', 'setDate', 'setCompositionString', - 'setClipboard', 'setChildren', 'setChildIndex', - 'setAdvancedAntiAliasingTable', 'serverString', 'separatorBefore', - 'sendToURL', 'send', 'selectionEndIndex', 'selectionBeginIndex', - 'selectable', 'select', 'seek', 'securityError', 'securityDomain', - 'secondsUTC', 'seconds', 'search', 'scrollV', 'scrollRect', - 'scrollH', 'scroll', 'screenResolutionY', 'screenResolutionX', - 'screenDPI', 'screenColor', 'scenes', 'scaleY', 'scaleX', - 'scaleMode', 'scale9Grid', 'scale', 'save', 'sandboxType', - 'sameDomain', 'running', 'round', 'rotation', 'rotate', 'root', - 'rollOver', 'rollOut', 'rightToRight', 'rightToLeft', 'rightPeak', - 'rightMargin', 'right', 'rewind', 'reverse', 'resume', 'restrict', - 'resize', 'reset', 'requestHeaders', 'replaceText', - 'replaceSelectedText', 'replace', 'repeatCount', 'render', - 'removedFromStage', 'removed', 'removeNode', 'removeNamespace', - 'removeEventListener', 'removeChildAt', 'removeChild', - 'relatedObject', 'registerFont', 'registerClassAlias', 'redOffset', - 'redMultiplier', 'rect', 'receiveVideo', 'receiveAudio', - 'readUnsignedShort', 'readUnsignedInt', 'readUnsignedByte', - 'readUTFBytes', 'readUTF', 'readShort', 'readObject', - 'readMultiByte', 'readInt', 'readFloat', 'readExternal', - 'readDouble', 'readBytes', 'readByte', 'readBoolean', 'ratios', - 'rate', 'random', 'quality', 'push', 'publish', 'proxyType', - 'prototype', 'propertyIsEnumerable', 'progress', - 'processingInstructions', 'printAsBitmap', 'print', - 'previousSibling', 'preventDefault', 'prevScene', 'prevFrame', - 'prettyPrinting', 'prettyIndent', 'preserveAlpha', 'prependChild', - 'prefix', 'pow', 'position', 'pop', 'polar', 'playerType', 'play', - 'pixelSnapping', 'pixelDissolve', 'pixelBounds', 'pixelAspectRatio', - 'perlinNoise', 'pause', 'parseXML', 'parseInt', 'parseFloat', - 'parseCSS', 'parse', 'parentNode', 'parentDomain', - 'parentAllowsChild', 'parent', 'parameters', 'paperWidth', - 'paperHeight', 'pan', 'paletteMap', 'pageWidth', 'pageHeight', - 'overState', 'outsideCutoff', 'os', 'orientation', 'open', - 'opaqueBackground', 'onPlayStatus', 'onMetaData', 'onCuePoint', - 'offsetPoint', 'offset', 'objectID', 'objectEncoding', 'numLock', - 'numLines', 'numFrames', 'numChildren', 'normalize', 'noise', - 'nodeValue', 'nodeType', 'nodeName', 'nodeKind', 'noAutoLabeling', - 'nextValue', 'nextSibling', 'nextScene', 'nextNameIndex', - 'nextName', 'nextFrame', 'netStatus', 'navigateToURL', - 'namespaceURI', 'namespaceDeclarations', 'namespace', 'names', - 'name', 'muted', 'multiline', 'moveTo', 'mouseY', 'mouseX', - 'mouseWheelEnabled', 'mouseWheel', 'mouseUp', 'mouseTarget', - 'mouseOver', 'mouseOut', 'mouseMove', 'mouseLeave', - 'mouseFocusChange', 'mouseEnabled', 'mouseDown', 'mouseChildren', - 'motionTimeout', 'motionLevel', 'monthUTC', 'month', - 'modificationDate', 'mode', 'minutesUTC', 'minutes', 'min', - 'millisecondsUTC', 'milliseconds', 'method', 'message', 'merge', - 'menuSelect', 'menuItemSelect', 'maxScrollV', 'maxScrollH', - 'maxLevel', 'maxChars', 'max', 'matrixY', 'matrixX', 'matrix', - 'match', 'mask', 'mapPoint', 'mapBitmap', 'map', 'manufacturer', - 'macType', 'loopback', 'loop', 'log', 'lock', 'localeCompare', - 'localY', 'localX', 'localToGlobal', 'localName', - 'localFileReadDisable', 'loaderURL', 'loaderInfo', 'loader', - 'loadPolicyFile', 'loadBytes', 'load', 'liveDelay', 'link', - 'lineTo', 'lineStyle', 'lineGradientStyle', 'level', - 'letterSpacing', 'length', 'leftToRight', 'leftToLeft', 'leftPeak', - 'leftMargin', 'left', 'leading', 'lastIndexOf', 'lastIndex', - 'lastChild', 'language', 'labels', 'knockout', 'keyUp', - 'keyLocation', 'keyFrameInterval', 'keyFocusChange', 'keyDown', - 'keyCode', 'kerning', 'join', 'italic', 'isXMLName', - 'isPrototypeOf', 'isNaN', 'isFocusInaccessible', 'isFinite', - 'isEmpty', 'isDefaultPrevented', 'isDebugger', 'isBuffering', - 'isAttribute', 'isAccessible', 'ioError', 'invert', 'invalidate', - 'intersects', 'intersection', 'interpolate', 'insideCutoff', - 'insertChildBefore', 'insertChildAfter', 'insertBefore', 'inner', - 'init', 'info', 'inflatePoint', 'inflate', 'indexOf', 'index', - 'indent', 'inScopeNamespaces', 'imeComposition', 'ime', - 'ignoreWhitespace', 'ignoreWhite', 'ignoreProcessingInstructions', - 'ignoreComments', 'ignoreCase', 'identity', 'idMap', 'id3', - 'httpStatus', 'htmlText', 'hoursUTC', 'hours', 'hitTestTextNearPos', - 'hitTestState', 'hitTestPoint', 'hitTestObject', 'hitTest', - 'hitArea', 'highlightColor', 'highlightAlpha', 'hideObject', - 'hideBuiltInItems', 'hide', 'height', 'hasVideoEncoder', 'hasTLS', - 'hasStreamingVideo', 'hasStreamingAudio', 'hasSimpleContent', - 'hasScreenPlayback', 'hasScreenBroadcast', 'hasProperty', - 'hasPrinting', 'hasOwnProperty', 'hasMP3', 'hasIME', 'hasGlyphs', - 'hasEventListener', 'hasEmbeddedVideo', 'hasDefinition', - 'hasComplexContent', 'hasChildNodes', 'hasAudioEncoder', 'hasAudio', - 'hasAccessibility', 'gridFitType', 'greenOffset', 'greenMultiplier', - 'graphics', 'gotoAndStop', 'gotoAndPlay', 'globalToLocal', 'global', - 'getUTCSeconds', 'getUTCMonth', 'getUTCMinutes', - 'getUTCMilliseconds', 'getUTCHours', 'getUTCFullYear', 'getUTCDay', - 'getUTCDate', 'getTimezoneOffset', 'getTimer', 'getTime', - 'getTextRunInfo', 'getTextFormat', 'getText', 'getStyle', - 'getStackTrace', 'getSelectedText', 'getSelected', 'getSeconds', - 'getRemote', 'getRect', 'getQualifiedSuperclassName', - 'getQualifiedClassName', 'getProperty', 'getPrefixForNamespace', - 'getPixels', 'getPixel32', 'getPixel', 'getParagraphLength', - 'getObjectsUnderPoint', 'getNamespaceForPrefix', 'getMonth', - 'getMinutes', 'getMilliseconds', 'getMicrophone', 'getLocal', - 'getLineText', 'getLineOffset', 'getLineMetrics', 'getLineLength', - 'getLineIndexOfChar', 'getLineIndexAtPoint', 'getImageReference', - 'getHours', 'getFullYear', 'getFirstCharInParagraph', - 'getDescendants', 'getDefinitionByName', 'getDefinition', 'getDay', - 'getDate', 'getColorBoundsRect', 'getClassByAlias', 'getChildIndex', - 'getChildByName', 'getChildAt', 'getCharIndexAtPoint', - 'getCharBoundaries', 'getCamera', 'getBounds', 'genre', - 'generateFilterRect', 'gain', 'fullYearUTC', 'fullYear', - 'fullScreen', 'fscommand', 'fromCharCode', 'framesLoaded', - 'frameRate', 'frame', 'fps', 'forwardAndBack', 'formatToString', - 'forceSimple', 'forEach', 'fontType', 'fontStyle', 'fontSize', - 'fontName', 'font', 'focusRect', 'focusOut', 'focusIn', 'focus', - 'flush', 'floor', 'floodFill', 'firstChild', 'findText', 'filters', - 'filter', 'fillRect', 'fileList', 'extension', 'extended', 'exp', - 'exec', 'exactSettings', 'every', 'eventPhase', 'escapeMultiByte', - 'escape', 'errorID', 'error', 'equals', 'enumerateFonts', - 'enterFrame', 'endian', 'endFill', 'encodeURIComponent', - 'encodeURI', 'enabled', 'embedFonts', 'elements', - 'dynamicPropertyWriter', 'dropTarget', 'drawRoundRect', 'drawRect', - 'drawEllipse', 'drawCircle', 'draw', 'download', 'downState', - 'doubleClickEnabled', 'doubleClick', 'dotall', 'domain', - 'docTypeDecl', 'doConversion', 'divisor', 'distance', 'dispose', - 'displayState', 'displayMode', 'displayAsPassword', 'dispatchEvent', - 'description', 'describeType', 'descent', 'descendants', - 'deltaTransformPoint', 'delta', 'deleteProperty', 'delay', - 'defaultTextFormat', 'defaultSettings', 'defaultObjectEncoding', - 'decodeURIComponent', 'decodeURI', 'decode', 'deblocking', - 'deactivate', 'dayUTC', 'day', 'dateUTC', 'date', 'dataFormat', - 'data', 'd', 'customItems', 'curveTo', 'currentTarget', - 'currentScene', 'currentLabels', 'currentLabel', 'currentFrame', - 'currentFPS', 'currentDomain', 'currentCount', 'ctrlKey', 'creator', - 'creationDate', 'createTextNode', 'createGradientBox', - 'createElement', 'createBox', 'cos', 'copyPixels', 'copyChannel', - 'copy', 'conversionMode', 'contextMenuOwner', 'contextMenu', - 'contentType', 'contentLoaderInfo', 'content', 'containsRect', - 'containsPoint', 'contains', 'constructor', 'connectedProxyType', - 'connected', 'connect', 'condenseWhite', 'concatenatedMatrix', - 'concatenatedColorTransform', 'concat', 'computeSpectrum', - 'compress', 'componentY', 'componentX', 'complete', 'compare', - 'comments', 'comment', 'colors', 'colorTransform', 'color', 'code', - 'close', 'cloneNode', 'clone', 'client', 'click', 'clearTimeout', - 'clearInterval', 'clear', 'clamp', 'children', 'childNodes', - 'childIndex', 'childAllowsParent', 'child', 'checkPolicyFile', - 'charCount', 'charCodeAt', 'charCode', 'charAt', 'changeList', - 'change', 'ceil', 'caretIndex', 'caption', 'capsLock', 'cancelable', - 'cancel', 'callee', 'callProperty', 'call', 'cacheAsBitmap', 'c', - 'bytesTotal', 'bytesLoaded', 'bytesAvailable', 'buttonMode', - 'buttonDown', 'bullet', 'builtInItems', 'bufferTime', - 'bufferLength', 'bubbles', 'browse', 'bottomScrollV', 'bottomRight', - 'bottom', 'borderColor', 'border', 'bold', 'blurY', 'blurX', - 'blueOffset', 'blueMultiplier', 'blockIndent', 'blendMode', - 'bitmapData', 'bias', 'beginGradientFill', 'beginFill', - 'beginBitmapFill', 'bandwidth', 'backgroundColor', 'background', - 'b', 'available', 'avHardwareDisable', 'autoSize', 'attributes', - 'attribute', 'attachNetStream', 'attachCamera', 'attachAudio', - 'atan2', 'atan', 'asyncError', 'asin', 'ascent', 'artist', - 'areSoundsInaccessible', 'areInaccessibleObjectsUnderPoint', - 'applyFilter', 'apply', 'applicationDomain', 'appendText', - 'appendChild', 'antiAliasType', 'angle', 'alwaysShowSelection', - 'altKey', 'alphas', 'alphaOffset', 'alphaMultiplier', 'alpha', - 'allowInsecureDomain', 'allowDomain', 'align', 'album', - 'addedToStage', 'added', 'addPage', 'addNamespace', 'addHeader', - 'addEventListener', 'addChildAt', 'addChild', 'addCallback', 'add', - 'activityLevel', 'activity', 'active', 'activating', 'activate', - 'actionScriptVersion', 'acos', 'accessibilityProperties', 'abs' - ), - 8 => array( - 'WRAP', 'VERTICAL', 'VARIABLES', - 'UTC', 'UPLOAD_COMPLETE_DATA', 'UP', 'UNLOAD', 'UNKNOWN', - 'UNIQUESORT', 'TOP_RIGHT', 'TOP_LEFT', 'TOP', 'TIMER_COMPLETE', - 'TIMER', 'TEXT_NODE', 'TEXT_INPUT', 'TEXT', 'TAB_INDEX_CHANGE', - 'TAB_ENABLED_CHANGE', 'TAB_CHILDREN_CHANGE', 'TAB', 'SYNC', - 'SUBTRACT', 'SUBPIXEL', 'STATUS', 'STANDARD', 'SQUARE', 'SQRT2', - 'SQRT1_2', 'SPACE', 'SOUND_COMPLETE', 'SOCKET_DATA', 'SHOW_ALL', - 'SHIFT', 'SETTINGS_MANAGER', 'SELECT', 'SECURITY_ERROR', 'SCROLL', - 'SCREEN', 'ROUND', 'ROLL_OVER', 'ROLL_OUT', 'RIGHT', 'RGB', - 'RETURNINDEXEDARRAY', 'RESIZE', 'REPEAT', 'RENDER', - 'REMOVED_FROM_STAGE', 'REMOVED', 'REMOTE', 'REGULAR', 'REFLECT', - 'RED', 'RADIAL', 'PROGRESS', 'PRIVACY', 'POST', 'POSITIVE_INFINITY', - 'PORTRAIT', 'PIXEL', 'PI', 'PENDING', 'PAGE_UP', 'PAGE_DOWN', 'PAD', - 'OVERLAY', 'OUTER', 'OPEN', 'NaN', 'NUM_PAD', 'NUMPAD_SUBTRACT', - 'NUMPAD_MULTIPLY', 'NUMPAD_ENTER', 'NUMPAD_DIVIDE', - 'NUMPAD_DECIMAL', 'NUMPAD_ADD', 'NUMPAD_9', 'NUMPAD_8', 'NUMPAD_7', - 'NUMPAD_6', 'NUMPAD_5', 'NUMPAD_4', 'NUMPAD_3', 'NUMPAD_2', - 'NUMPAD_1', 'NUMPAD_0', 'NUMERIC', 'NO_SCALE', 'NO_BORDER', - 'NORMAL', 'NONE', 'NEVER', 'NET_STATUS', 'NEGATIVE_INFINITY', - 'MULTIPLY', 'MOUSE_WHEEL', 'MOUSE_UP', 'MOUSE_OVER', 'MOUSE_OUT', - 'MOUSE_MOVE', 'MOUSE_LEAVE', 'MOUSE_FOCUS_CHANGE', 'MOUSE_DOWN', - 'MITER', 'MIN_VALUE', 'MICROPHONE', 'MENU_SELECT', - 'MENU_ITEM_SELECT', 'MEDIUM', 'MAX_VALUE', 'LOW', 'LOG2E', 'LOG10E', - 'LOCAL_WITH_NETWORK', 'LOCAL_WITH_FILE', 'LOCAL_TRUSTED', - 'LOCAL_STORAGE', 'LN2', 'LN10', 'LITTLE_ENDIAN', 'LINK', - 'LINEAR_RGB', 'LINEAR', 'LIGHT_COLOR', 'LIGHTEN', 'LEFT', 'LCD', - 'LAYER', 'LANDSCAPE', 'KOREAN', 'KEY_UP', 'KEY_FOCUS_CHANGE', - 'KEY_DOWN', 'JUSTIFY', 'JAPANESE_KATAKANA_HALF', - 'JAPANESE_KATAKANA_FULL', 'JAPANESE_HIRAGANA', 'Infinity', 'ITALIC', - 'IO_ERROR', 'INVERT', 'INSERT', 'INPUT', 'INNER', 'INIT', - 'IME_COMPOSITION', 'IGNORE', 'ID3', 'HTTP_STATUS', 'HORIZONTAL', - 'HOME', 'HIGH', 'HARDLIGHT', 'GREEN', 'GET', 'FULLSCREEN', 'FULL', - 'FOCUS_OUT', 'FOCUS_IN', 'FLUSHED', 'FLASH9', 'FLASH8', 'FLASH7', - 'FLASH6', 'FLASH5', 'FLASH4', 'FLASH3', 'FLASH2', 'FLASH1', 'F9', - 'F8', 'F7', 'F6', 'F5', 'F4', 'F3', 'F2', 'F15', 'F14', 'F13', - 'F12', 'F11', 'F10', 'F1', 'EXACT_FIT', 'ESCAPE', 'ERROR', 'ERASE', - 'ENTER_FRAME', 'ENTER', 'END', 'EMBEDDED', 'ELEMENT_NODE', 'E', - 'DYNAMIC', 'DOWN', 'DOUBLE_CLICK', 'DIFFERENCE', 'DEVICE', - 'DESCENDING', 'DELETE', 'DEFAULT', 'DEACTIVATE', 'DATA', - 'DARK_COLOR', 'DARKEN', 'CRT', 'CONTROL', 'CONNECT', 'COMPLETE', - 'COLOR', 'CLOSE', 'CLICK', 'CLAMP', 'CHINESE', 'CHANGE', 'CENTER', - 'CASEINSENSITIVE', 'CAPTURING_PHASE', 'CAPS_LOCK', 'CANCEL', - 'CAMERA', 'BUBBLING_PHASE', 'BOTTOM_RIGHT', 'BOTTOM_LEFT', 'BOTTOM', - 'BOLD_ITALIC', 'BOLD', 'BLUE', 'BINARY', 'BIG_ENDIAN', 'BEVEL', - 'BEST', 'BACKSPACE', 'AUTO', 'AT_TARGET', 'ASYNC_ERROR', 'AMF3', - 'AMF0', 'ALWAYS', 'ALPHANUMERIC_HALF', 'ALPHANUMERIC_FULL', 'ALPHA', - 'ADVANCED', 'ADDED_TO_STAGE', 'ADDED', 'ADD', 'ACTIVITY', - 'ACTIONSCRIPT3', 'ACTIONSCRIPT2' - ), - //FIX: Must be last in order to avoid conflicts with keywords present - //in other keyword groups, that might get highlighted as part of the URL. - //I know this is not a proper work-around, but should do just fine. - 5 => array( - 'uint', 'int', 'arguments', 'XMLSocket', 'XMLNodeType', 'XMLNode', - 'XMLList', 'XMLDocument', 'XML', 'Video', 'VerifyError', - 'URLVariables', 'URLStream', 'URLRequestMethod', 'URLRequestHeader', - 'URLRequest', 'URLLoaderDataFormat', 'URLLoader', 'URIError', - 'TypeError', 'Transform', 'TimerEvent', 'Timer', 'TextSnapshot', - 'TextRenderer', 'TextLineMetrics', 'TextFormatAlign', 'TextFormat', - 'TextFieldType', 'TextFieldAutoSize', 'TextField', 'TextEvent', - 'TextDisplayMode', 'TextColorType', 'System', 'SyntaxError', - 'SyncEvent', 'StyleSheet', 'String', 'StatusEvent', 'StaticText', - 'StageScaleMode', 'StageQuality', 'StageAlign', 'Stage', - 'StackOverflowError', 'Sprite', 'SpreadMethod', 'SoundTransform', - 'SoundMixer', 'SoundLoaderContext', 'SoundChannel', 'Sound', - 'Socket', 'SimpleButton', 'SharedObjectFlushStatus', 'SharedObject', - 'Shape', 'SecurityPanel', 'SecurityErrorEvent', 'SecurityError', - 'SecurityDomain', 'Security', 'ScriptTimeoutError', 'Scene', - 'SWFVersion', 'Responder', 'RegExp', 'ReferenceError', 'Rectangle', - 'RangeError', 'QName', 'Proxy', 'ProgressEvent', - 'PrintJobOrientation', 'PrintJobOptions', 'PrintJob', 'Point', - 'PixelSnapping', 'ObjectEncoding', 'Object', 'Number', 'NetStream', - 'NetStatusEvent', 'NetConnection', 'Namespace', 'MovieClip', - 'MouseEvent', 'Mouse', 'MorphShape', 'Microphone', 'MemoryError', - 'Matrix', 'Math', 'LocalConnection', 'LoaderInfo', 'LoaderContext', - 'Loader', 'LineScaleMode', 'KeyboardEvent', 'Keyboard', - 'KeyLocation', 'JointStyle', 'InvalidSWFError', - 'InterpolationMethod', 'InteractiveObject', 'IllegalOperationError', - 'IOErrorEvent', 'IOError', 'IMEEvent', 'IMEConversionMode', 'IME', - 'IExternalizable', 'IEventDispatcher', 'IDynamicPropertyWriter', - 'IDynamicPropertyOutput', 'IDataOutput', 'IDataInput', 'ID3Info', - 'IBitmapDrawable', 'HTTPStatusEvent', 'GridFitType', 'Graphics', - 'GradientType', 'GradientGlowFilter', 'GradientBevelFilter', - 'GlowFilter', 'Function', 'FrameLabel', 'FontType', 'FontStyle', - 'Font', 'FocusEvent', 'FileReferenceList', 'FileReference', - 'FileFilter', 'ExternalInterface', 'EventPhase', 'EventDispatcher', - 'Event', 'EvalError', 'ErrorEvent', 'Error', 'Endian', 'EOFError', - 'DropShadowFilter', 'DisplayObjectContainer', 'DisplayObject', - 'DisplacementMapFilterMode', 'DisplacementMapFilter', 'Dictionary', - 'DefinitionError', 'Date', 'DataEvent', 'ConvolutionFilter', - 'ContextMenuItem', 'ContextMenuEvent', 'ContextMenuBuiltInItems', - 'ContextMenu', 'ColorTransform', 'ColorMatrixFilter', 'Class', - 'CapsStyle', 'Capabilities', 'Camera', 'CSMSettings', 'ByteArray', - 'Boolean', 'BlurFilter', 'BlendMode', 'BitmapFilterType', - 'BitmapFilterQuality', 'BitmapFilter', 'BitmapDataChannel', - 'BitmapData', 'Bitmap', 'BevelFilter', 'AsyncErrorEvent', 'Array', - 'ArgumentError', 'ApplicationDomain', 'AntiAliasType', - 'ActivityEvent', 'ActionScriptVersion', 'AccessibilityProperties', - 'Accessibility', 'AVM1Movie' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '!', '%', '&', '*', '|', '/', '<', '>', '^', '-', '+', '~', '?', ':', ';', '.', ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0033ff; font-weight: bold;', - 2 => 'color: #6699cc; font-weight: bold;', - 3 => 'color: #339966; font-weight: bold;', - 4 => 'color: #9900cc; font-weight: bold;', - 5 => 'color: #004993;', - 6 => 'color: #004993;', - 7 => 'color: #004993;', - 8 => 'color: #004993;' - ), - 'COMMENTS' => array( - 1 => 'color: #009900; font-style: italic;', - 2 => 'color: #009966; font-style: italic;', - 'MULTI' => 'color: #3f5fbf;' - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #990000;' - ), - 'NUMBERS' => array( - 0 => 'color: #000000; font-weight:bold;' - ), - 'METHODS' => array( - 0 => 'color: #000000;', - ), - 'SYMBOLS' => array( - 0 => 'color: #000066; font-weight: bold;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => 'http://www.google.com/search?q={FNAMEL}%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:{FNAMEL}.html', - 6 => '', - 7 => '', - 8 => '' - ), - 'OOLANG' => false,//Save some time as OO identifiers aren't used - 'OBJECT_SPLITTERS' => array( - // commented out because it's not very relevant for AS, as all properties, methods and constants are dot-accessed. - // I believe it's preferable to have package highlighting for example, which is not possible with this enabled. - // 0 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array() -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/ada.php b/library/Vendors/geshi/geshi/ada.php deleted file mode 100644 index c6b0597b..00000000 --- a/library/Vendors/geshi/geshi/ada.php +++ /dev/null @@ -1,135 +0,0 @@ - 'Ada', - 'COMMENT_SINGLE' => array(1 => '--'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'begin', 'declare', 'do', 'else', 'elsif', 'exception', 'for', 'if', - 'is', 'loop', 'while', 'then', 'end', 'select', 'case', 'until', - 'goto', 'return' - ), - 2 => array( - 'abs', 'and', 'at', 'mod', 'not', 'or', 'rem', 'xor' - ), - 3 => array( - 'abort', 'abstract', 'accept', 'access', 'aliased', 'all', 'array', - 'body', 'constant', 'delay', 'delta', 'digits', 'entry', 'exit', - 'function', 'generic', 'in', 'interface', 'limited', 'new', 'null', - 'of', 'others', 'out', 'overriding', 'package', 'pragma', 'private', - 'procedure', 'protected', 'raise', 'range', 'record', 'renames', - 'requeue', 'reverse', 'separate', 'subtype', 'synchronized', - 'tagged', 'task', 'terminate', 'type', 'use', 'when', 'with' - ) - ), - 'SYMBOLS' => array( - '(', ')' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #00007f;', - 2 => 'color: #0000ff;', - 3 => 'color: #46aa03; font-weight:bold;', - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'COMMENTS' => array( - 1 => 'color: #adadad; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #7f007f;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff0000;' - ), - 'METHODS' => array( - 1 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/apache.php b/library/Vendors/geshi/geshi/apache.php deleted file mode 100644 index 34704eb2..00000000 --- a/library/Vendors/geshi/geshi/apache.php +++ /dev/null @@ -1,480 +0,0 @@ - 'Apache configuration', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - /*keywords*/ - 1 => array( - //core.c - 'AcceptFilter','AcceptPathInfo','AccessConfig','AccessFileName', - 'AddDefaultCharset','AddOutputFilterByType','AllowEncodedSlashes', - 'AllowOverride','AuthName','AuthType','ContentDigest', - 'CoreDumpDirectory','DefaultType','DocumentRoot','EnableMMAP', - 'EnableSendfile','ErrorDocument','ErrorLog','FileETag','ForceType', - 'HostnameLookups','Include','LimitInternalRecursion', - 'LimitRequestBody','LimitRequestFields','LimitRequestFieldsize', - 'LimitRequestLine','LimitXMLRequestBody','LogLevel','MaxMemFree', - 'MaxRequestsPerChild','NameVirtualHost','Options','PidFile','Port', - 'Protocol','Require','RLimitCPU','RLimitMEM','RLimitNPROC', - 'Satisfy','ScoreBoardFile','ServerAdmin','ServerAlias','ServerName', - 'ServerPath','ServerRoot','ServerSignature','ServerTokens', - 'SetHandler','SetInputFilter','SetOutputFilter','ThreadStackSize', - 'Timeout','TraceEnable','UseCanonicalName', - 'UseCanonicalPhysicalPort', - - //http_core.c - 'KeepAlive','KeepAliveTimeout','MaxKeepAliveRequests', - - //mod_actions.c - 'Action','Script', - - //mod_alias.c - 'Alias','AliasMatch','Redirect','RedirectMatch','RedirectPermanent', - 'RedirectTemp','ScriptAlias','ScriptAliasMatch', - - //mod_asis.c - - //mod_auth_basic.c - 'AuthBasicAuthoritative','AuthBasicProvider', - - //mod_auth_digest.c - 'AuthDigestAlgorithm','AuthDigestDomain','AuthDigestNcCheck', - 'AuthDigestNonceFormat','AuthDigestNonceLifetime', - 'AuthDigestProvider','AuthDigestQop','AuthDigestShmemSize', - - //mod_authn_alias.c - - //mod_authn_anon.c - 'Anonymous','Anonymous_LogEmail','Anonymous_MustGiveEmail', - 'Anonymous_NoUserId','Anonymous_VerifyEmail', - - //mod_authn_dbd.c - 'AuthDBDUserPWQuery','AuthDBDUserRealmQuery', - - //mod_authn_dbm.c - 'AuthDBMType','AuthDBMUserFile', - - //mod_authn_default.c - 'AuthDefaultAuthoritative', - - //mod_authn_file.c - 'AuthUserFile', - - //mod_authnz_ldap.c - 'AuthLDAPBindDN','AuthLDAPBindPassword','AuthLDAPCharsetConfig', - 'AuthLDAPCompareDNOnServer','AuthLDAPDereferenceAliases', - 'AuthLDAPGroupAttribute','AuthLDAPGroupAttributeIsDN', - 'AuthLDAPRemoteUserAttribute','AuthLDAPRemoteUserIsDN', - 'AuthLDAPURL','AuthzLDAPAuthoritative', - - //mod_authz_dbm.c - 'AuthDBMGroupFile','AuthzDBMAuthoritative','AuthzDBMType', - - //mod_authz_default.c - 'AuthzDefaultAuthoritative', - - //mod_authz_groupfile.c - 'AuthGroupFile','AuthzGroupFileAuthoritative', - - //mod_authz_host.c - 'Allow','Deny','Order', - - //mod_authz_owner.c - 'AuthzOwnerAuthoritative', - - //mod_authz_svn.c - 'AuthzForceUsernameCase','AuthzSVNAccessFile','AuthzSVNAnonymous', - 'AuthzSVNAuthoritative','AuthzSVNNoAuthWhenAnonymousAllowed', - - //mod_authz_user.c - 'AuthzUserAuthoritative', - - //mod_autoindex.c - 'AddAlt','AddAltByEncoding','AddAltByType','AddDescription', - 'AddIcon','AddIconByEncoding','AddIconByType','DefaultIcon', - 'FancyIndexing','HeaderName','IndexHeadInsert','IndexIgnore', - 'IndexOptions','IndexOrderDefault','IndexStyleSheet','ReadmeName', - - //mod_bt.c - 'Tracker','TrackerDetailURL','TrackerFlags','TrackerHashMaxAge', - 'TrackerHashMinAge','TrackerHashWatermark','TrackerHome', - 'TrackerReturnInterval','TrackerReturnMax', - 'TrackerReturnPeerFactor','TrackerReturnPeers','TrackerRootInclude', - 'TrackerStyleSheet', - - //mod_bw.c - 'BandWidth','BandWidthError','BandWidthModule','BandWidthPacket', - 'ForceBandWidthModule','LargeFileLimit','MaxConnection', - 'MinBandWidth', - - //mod_cache.c - 'CacheDefaultExpire','CacheDisable','CacheEnable', - 'CacheIgnoreCacheControl','CacheIgnoreHeaders', - 'CacheIgnoreNoLastMod','CacheIgnoreQueryString', - 'CacheLastModifiedFactor','CacheMaxExpire','CacheStoreNoStore', - 'CacheStorePrivate', - - //mod_cern_meta.c - 'MetaDir','MetaFiles','MetaSuffix', - - //mod_cgi.c - 'ScriptLog','ScriptLogBuffer','ScriptLogLength', - - //mod_charset_lite.c - 'CharsetDefault','CharsetOptions','CharsetSourceEnc', - - //mod_dav.c - 'DAV','DAVDepthInfinity','DAVMinTimeout', - - //mod_dav_fs.c - 'DAVLockDB', - - //mod_dav_lock.c - 'DAVGenericLockDB', - - //mod_dav_svn.c - 'SVNActivitiesDB','SVNAllowBulkUpdates','SVNAutoversioning', - 'SVNIndexXSLT','SVNListParentPath','SVNMasterURI','SVNParentPath', - 'SVNPath','SVNPathAuthz','SVNReposName','SVNSpecialURI', - - //mod_dbd.c - 'DBDExptime','DBDKeep','DBDMax','DBDMin','DBDParams','DBDPersist', - 'DBDPrepareSQL','DBDriver', - - //mod_deflate.c - 'DeflateBufferSize','DeflateCompressionLevel','DeflateFilterNote', - 'DeflateMemLevel','DeflateWindowSize', - - //mod_dir.c - 'DirectoryIndex','DirectorySlash', - - //mod_disk_cache.c - 'CacheDirLength','CacheDirLevels','CacheMaxFileSize', - 'CacheMinFileSize','CacheRoot', - - //mod_dumpio.c - 'DumpIOInput','DumpIOLogLevel','DumpIOOutput', - - //mod_env.c - 'PassEnv','SetEnv','UnsetEnv', - - //mod_expires.c - 'ExpiresActive','ExpiresByType','ExpiresDefault', - - //mod_ext_filter.c - 'ExtFilterDefine','ExtFilterOptions', - - //mod_file_cache.c - 'cachefile','mmapfile', - - //mod_filter.c - 'FilterChain','FilterDeclare','FilterProtocol','FilterProvider', - 'FilterTrace', - - //mod_gnutls.c - 'GnuTLSCache','GnuTLSCacheTimeout','GnuTLSCertificateFile', - 'GnuTLSKeyFile','GnuTLSPGPCertificateFile','GnuTLSPGPKeyFile', - 'GnuTLSClientVerify','GnuTLSClientCAFile','GnuTLSPGPKeyringFile', - 'GnuTLSEnable','GnuTLSDHFile','GnuTLSRSAFile','GnuTLSSRPPasswdFile', - 'GnuTLSSRPPasswdConfFile','GnuTLSPriorities', - 'GnuTLSExportCertificates', - - //mod_headers.c - 'Header','RequestHeader', - - //mod_imagemap.c - 'ImapBase','ImapDefault','ImapMenu', - - //mod_include.c - 'SSIAccessEnable','SSIEndTag','SSIErrorMsg','SSIStartTag', - 'SSITimeFormat','SSIUndefinedEcho','XBitHack', - - //mod_ident.c - 'IdentityCheck','IdentityCheckTimeout', - - //mod_info.c - 'AddModuleInfo', - - //mod_isapi.c - 'ISAPIAppendLogToErrors','ISAPIAppendLogToQuery','ISAPICacheFile', - 'ISAPIFakeAsync','ISAPILogNotSupported','ISAPIReadAheadBuffer', - - //mod_log_config.c - 'BufferedLogs','CookieLog','CustomLog','LogFormat','TransferLog', - - //mod_log_forensic.c - 'ForensicLog', - - //mod_log_rotate.c - 'RotateInterval','RotateLogs','RotateLogsLocalTime', - - //mod_logio.c - - //mod_mem_cache.c - 'MCacheMaxObjectCount','MCacheMaxObjectSize', - 'MCacheMaxStreamingBuffer','MCacheMinObjectSize', - 'MCacheRemovalAlgorithm','MCacheSize', - - //mod_mime.c - 'AddCharset','AddEncoding','AddHandler','AddInputFilter', - 'AddLanguage','AddOutputFilter','AddType','DefaultLanguage', - 'ModMimeUsePathInfo','MultiviewsMatch','RemoveCharset', - 'RemoveEncoding','RemoveHandler','RemoveInputFilter', - 'RemoveLanguage','RemoveOutputFilter','RemoveType','TypesConfig', - - //mod_mime_magic.c - 'MimeMagicFile', - - //mod_negotiation.c - 'CacheNegotiatedDocs','ForceLanguagePriority','LanguagePriority', - - //mod_php5.c - 'php_admin_flag','php_admin_value','php_flag','php_value', - 'PHPINIDir', - - //mod_proxy.c - 'AllowCONNECT','BalancerMember','NoProxy','ProxyBadHeader', - 'ProxyBlock','ProxyDomain','ProxyErrorOverride', - 'ProxyFtpDirCharset','ProxyIOBufferSize','ProxyMaxForwards', - 'ProxyPass','ProxyPassInterpolateEnv','ProxyPassMatch', - 'ProxyPassReverse','ProxyPassReverseCookieDomain', - 'ProxyPassReverseCookiePath','ProxyPreserveHost', - 'ProxyReceiveBufferSize','ProxyRemote','ProxyRemoteMatch', - 'ProxyRequests','ProxySet','ProxyStatus','ProxyTimeout','ProxyVia', - - //mod_proxy_ajp.c - - //mod_proxy_balancer.c - - //mod_proxy_connect.c - - //mod_proxy_ftp.c - - //mod_proxy_http.c - - //mod_rewrite.c - 'RewriteBase','RewriteCond','RewriteEngine','RewriteLock', - 'RewriteLog','RewriteLogLevel','RewriteMap','RewriteOptions', - 'RewriteRule', - - //mod_setenvif.c - 'BrowserMatch','BrowserMatchNoCase','SetEnvIf','SetEnvIfNoCase', - - //mod_so.c - 'LoadFile','LoadModule', - - //mod_speling.c - 'CheckCaseOnly','CheckSpelling', - - //mod_ssl.c - 'SSLCACertificateFile','SSLCACertificatePath','SSLCADNRequestFile', - 'SSLCADNRequestPath','SSLCARevocationFile','SSLCARevocationPath', - 'SSLCertificateChainFile','SSLCertificateFile', - 'SSLCertificateKeyFile','SSLCipherSuite','SSLCryptoDevice', - 'SSLEngine','SSLHonorCipherOrder','SSLMutex','SSLOptions', - 'SSLPassPhraseDialog','SSLProtocol','SSLProxyCACertificateFile', - 'SSLProxyCACertificatePath','SSLProxyCARevocationFile', - 'SSLProxyCARevocationPath','SSLProxyCipherSuite','SSLProxyEngine', - 'SSLProxyMachineCertificateFile','SSLProxyMachineCertificatePath', - 'SSLProxyProtocol','SSLProxyVerify','SSLProxyVerifyDepth', - 'SSLRandomSeed','SSLRenegBufferSize','SSLRequire','SSLRequireSSL', - 'SSLSessionCache','SSLSessionCacheTimeout','SSLUserName', - 'SSLVerifyClient','SSLVerifyDepth', - - //mod_status.c - 'ExtendedStatus','SeeRequestTail', - - //mod_substitute.c - 'Substitute', - - //mod_suexec.c - 'SuexecUserGroup', - - //mod_unique_id.c - - //mod_userdir.c - 'UserDir', - - //mod_usertrack.c - 'CookieDomain','CookieExpires','CookieName','CookieStyle', - 'CookieTracking', - - //mod_version.c - - //mod_vhost_alias.c - 'VirtualDocumentRoot','VirtualDocumentRootIP', - 'VirtualScriptAlias','VirtualScriptAliasIP', - - //mod_view.c - 'ViewEnable', - - //mod_win32.c - 'ScriptInterpreterSource', - - //mpm_winnt.c - 'Listen','ListenBacklog','ReceiveBufferSize','SendBufferSize', - 'ThreadLimit','ThreadsPerChild','Win32DisableAcceptEx', - - //mpm_common.c - 'AcceptMutex','AddModule','ClearModuleList','EnableExceptionHook', - 'Group','LockFile','MaxClients','MaxSpareServers','MaxSpareThreads', - 'MinSpareServers','MinSpareThreads','ServerLimit','StartServers', - 'StartThreads','User', - - //util_ldap.c - 'LDAPCacheEntries','LDAPCacheTTL','LDAPConnectionTimeout', - 'LDAPOpCacheEntries','LDAPOpCacheTTL','LDAPSharedCacheFile', - 'LDAPSharedCacheSize','LDAPTrustedClientCert', - 'LDAPTrustedGlobalCert','LDAPTrustedMode','LDAPVerifyServerCert', - - //Unknown Mods ... - 'AgentLog','BindAddress','bs2000account','CacheForceCompletion', - 'CacheGCInterval','CacheSize','NoCache','qsc','RefererIgnore', - 'RefererLog','Resourceconfig','ServerType','SingleListen' - ), - /*keywords 2*/ - 2 => array( - 'all','on','off','standalone','inetd','indexes', - 'force-response-1.0','downgrade-1.0','nokeepalive', - 'includes','followsymlinks','none', - 'x-compress','x-gzip' - ), - /*keywords 3*/ - 3 => array( - //core.c - 'Directory','DirectoryMatch','Files','FilesMatch','IfDefine', - 'IfModule','Limit','LimitExcept','Location','LocationMatch', - 'VirtualHost', - - //mod_authn_alias.c - 'AuthnProviderAlias', - - //mod_proxy.c - 'Proxy','ProxyMatch', - - //mod_version.c - 'IfVersion' - ) - ), - 'SYMBOLS' => array( - '+', '-' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #00007f;', - 2 => 'color: #0000ff;', - 3 => 'color: #000000; font-weight:bold;', - ), - 'COMMENTS' => array( - 1 => 'color: #adadad; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #339933;' - ), - 'STRINGS' => array( - 0 => 'color: #7f007f;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff0000;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'BRACKETS' => GESHI_NEVER, - 'SYMBOLS' => GESHI_NEVER - ), - 'KEYWORDS' => array( - 3 => array( - 'DISALLOWED_BEFORE' => '(?<=<|<\/)', - 'DISALLOWED_AFTER' => '(?=\s|\/|>)', - ) - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/applescript.php b/library/Vendors/geshi/geshi/applescript.php deleted file mode 100644 index 9e214f2e..00000000 --- a/library/Vendors/geshi/geshi/applescript.php +++ /dev/null @@ -1,157 +0,0 @@ - 'AppleScript', - 'COMMENT_SINGLE' => array(1 => '--'), - 'COMMENT_MULTI' => array( '(*' => '*)'), - 'COMMENT_REGEXP' => array( - 2 => '/(?<=[a-z])\'/i', - 3 => '/(? GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'application','close','count','delete','duplicate','exists','launch','make','move','open', - 'print','quit','reopen','run','save','saving', 'idle', 'path to', 'number', 'alias', 'list', 'text', 'string', - 'integer', 'it','me','version','pi','result','space','tab','anything','case','diacriticals','expansion', - 'hyphens','punctuation','bold','condensed','expanded','hidden','italic','outline','plain', - 'shadow','strikethrough','subscript','superscript','underline','ask','no','yes','false', 'id', - 'true','weekday','monday','mon','tuesday','tue','wednesday','wed','thursday','thu','friday', - 'fri','saturday','sat','sunday','sun','month','january','jan','february','feb','march', - 'mar','april','apr','may','june','jun','july','jul','august','aug','september', 'quote', 'do JavaScript', - 'sep','october','oct','november','nov','december','dec','minutes','hours', 'name', 'default answer', - 'days','weeks', 'folder', 'folders', 'file', 'files', 'window', 'eject', 'disk', 'reveal', 'sleep', - 'shut down', 'restart', 'display dialog', 'buttons', 'invisibles', 'item', 'items', 'delimiters', 'offset of', - 'AppleScript\'s', 'choose file', 'choose folder', 'choose from list', 'beep', 'contents', 'do shell script', - 'paragraph', 'paragraphs', 'missing value', 'quoted form', 'desktop', 'POSIX path', 'POSIX file', - 'activate', 'document', 'adding', 'receiving', 'content', 'new', 'properties', 'info for', 'bounds', - 'selection', 'extension', 'into', 'onto', 'by', 'between', 'against', 'set the clipboard to', 'the clipboard' - ), - 2 => array( - 'each','some','every','whose','where','index','first','second','third','fourth', - 'fifth','sixth','seventh','eighth','ninth','tenth','last','front','back','st','nd', - 'rd','th','middle','named','through','thru','before','after','beginning','the', 'as', - 'div','mod','and','not','or','contains','equal','equals','isnt', 'less', 'greater' - ), - 3 => array( - 'script','property','prop','end','to','set','global','local','on','of', - 'in','given','with','without','return','continue','tell','if','then','else','repeat', - 'times','while','until','from','exit','try','error','considering','ignoring','timeout', - 'transaction','my','get','put','is', 'copy' - ) - ), - 'SYMBOLS' => array( - ')','+','-','^','*','/','&','<','>=','<','<=','=','�' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0066ff;', - 2 => 'color: #ff0033;', - 3 => 'color: #ff0033; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => '', - 3 => 'color: #ff0000;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000000; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #009900;' - ), - 'NUMBERS' => array( - 0 => 'color: #000000;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;' - ), - 'REGEXPS' => array( - 0 => 'color: #339933;', - 4 => 'color: #0066ff;', - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => ',+-=<>/?^&*' - ), - 'REGEXPS' => array( - //Variables - 0 => '[\\$%@]+[a-zA-Z_][a-zA-Z0-9_]*', - //File descriptors - 4 => '<[a-zA-Z_][a-zA-Z0-9_]*>', - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'SPACE_AS_WHITESPACE' => true - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/apt_sources.php b/library/Vendors/geshi/geshi/apt_sources.php deleted file mode 100644 index f4cf9ae3..00000000 --- a/library/Vendors/geshi/geshi/apt_sources.php +++ /dev/null @@ -1,144 +0,0 @@ - 'Apt sources', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - /*keywords*/ - 1 => array( - 'deb-src', 'deb' - ), - 2 => array( - //Generic - 'stable', 'old-stable', 'testing', 'testing-proposed-updates', - 'unstable', 'unstable-proposed-updates', 'experimental', - 'non-US', 'security', 'volatile', 'volatile-sloppy', - 'apt-build', - 'stable/updates', - //Debian - 'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato', 'woody', 'sarge', - 'etch', 'lenny', 'sid', - //Ubuntu - 'warty', 'warty-updates', 'warty-security', 'warty-proposed', 'warty-backports', - 'hoary', 'hoary-updates', 'hoary-security', 'hoary-proposed', 'hoary-backports', - 'breezy', 'breezy-updates', 'breezy-security', 'breezy-proposed', 'breezy-backports', - 'dapper', 'dapper-updates', 'dapper-security', 'dapper-proposed', 'dapper-backports', - 'edgy', 'edgy-updates', 'edgy-security', 'edgy-proposed', 'edgy-backports', - 'feisty', 'feisty-updates', 'feisty-security', 'feisty-proposed', 'feisty-backports', - 'gutsy', 'gutsy-updates', 'gutsy-security', 'gutsy-proposed', 'gutsy-backports', - 'hardy', 'hardy-updates', 'hardy-security', 'hardy-proposed', 'hardy-backports', - 'intrepid', 'intrepid-updates', 'intrepid-security', 'intrepid-proposed', 'intrepid-backports' - ), - 3 => array( - 'main', 'restricted', 'preview', 'contrib', 'non-free', - 'commercial', 'universe', 'multiverse' - ) - ), - 'REGEXPS' => array( - 0 => "(((http|ftp):\/\/|file:\/)[^\s]+)|(cdrom:\[[^\]]*\][^\s]*)", - ), - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => true, - 3 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #00007f;', - 2 => 'color: #b1b100;', - 3 => 'color: #b16000;' - ), - 'COMMENTS' => array( - 1 => 'color: #adadad; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - ), - 'BRACKETS' => array( - ), - 'STRINGS' => array( - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - ), - 'REGEXPS' => array( - 0 => 'color: #009900;', - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'NUMBERS' => GESHI_NEVER, - 'METHODS' => GESHI_NEVER, - 'SCRIPT' => GESHI_NEVER, - 'SYMBOLS' => GESHI_NEVER, - 'ESCAPE_CHAR' => GESHI_NEVER, - 'BRACKETS' => GESHI_NEVER, - 'STRINGS' => GESHI_NEVER, - ), - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => '(?|^\/])', - 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-&\.])' - ) - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/library/Vendors/geshi/geshi/asm.php b/library/Vendors/geshi/geshi/asm.php deleted file mode 100644 index d54e2402..00000000 --- a/library/Vendors/geshi/geshi/asm.php +++ /dev/null @@ -1,225 +0,0 @@ - 'ASM', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - //Line address prefix suppression - 'COMMENT_REGEXP' => array(2 => "/^(?:[0-9a-f]{0,4}:)?[0-9a-f]{4}(?:[0-9a-f]{4})?/mi"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - /*CPU*/ - 1 => array( - 'aaa','aad','aam','aas','adc','add','and','call','cbw','clc','cld','cli','cmc','cmp', - 'cmps','cmpsb','cmpsw','cwd','daa','das','dec','div','esc','hlt','idiv','imul','in','inc', - 'int','into','iret','ja','jae','jb','jbe','jc','jcxz','je','jg','jge','jl','jle','jmp', - 'jna','jnae','jnb','jnbe','jnc','jne','jng','jnge','jnl','jnle','jno','jnp','jns','jnz', - 'jo','jp','jpe','jpo','js','jz','lahf','lds','lea','les','lods','lodsb','lodsw','loop', - 'loope','loopew','loopne','loopnew','loopnz','loopnzw','loopw','loopz','loopzw','mov', - 'movs','movsb','movsw','mul','neg','nop','not','or','out','pop','popf','push','pushf', - 'rcl','rcr','ret','retf','retn','rol','ror','sahf','sal','sar','sbb','scas','scasb','scasw', - 'shl','shr','stc','std','sti','stos','stosb','stosw','sub','test','wait','xchg','xlat', - 'xlatb','xor','bound','enter','ins','insb','insw','leave','outs','outsb','outsw','popa','pusha','pushw', - 'arpl','lar','lsl','sgdt','sidt','sldt','smsw','str','verr','verw','clts','lgdt','lidt','lldt','lmsw','ltr', - 'bsf','bsr','bt','btc','btr','bts','cdq','cmpsd','cwde','insd','iretd','iretdf','iretf', - 'jecxz','lfs','lgs','lodsd','loopd','looped','loopned','loopnzd','loopzd','lss','movsd', - 'movsx','movzx','outsd','popad','popfd','pushad','pushd','pushfd','scasd','seta','setae', - 'setb','setbe','setc','sete','setg','setge','setl','setle','setna','setnae','setnb','setnbe', - 'setnc','setne','setng','setnge','setnl','setnle','setno','setnp','setns','setnz','seto','setp', - 'setpe','setpo','sets','setz','shld','shrd','stosd','bswap','cmpxchg','invd','invlpg','wbinvd','xadd','lock', - 'rep','repe','repne','repnz','repz' - ), - /*FPU*/ - 2 => array( - 'f2xm1','fabs','fadd','faddp','fbld','fbstp','fchs','fclex','fcom','fcomp','fcompp','fdecstp', - 'fdisi','fdiv','fdivp','fdivr','fdivrp','feni','ffree','fiadd','ficom','ficomp','fidiv', - 'fidivr','fild','fimul','fincstp','finit','fist','fistp','fisub','fisubr','fld','fld1', - 'fldcw','fldenv','fldenvw','fldl2e','fldl2t','fldlg2','fldln2','fldpi','fldz','fmul', - 'fmulp','fnclex','fndisi','fneni','fninit','fnop','fnsave','fnsavew','fnstcw','fnstenv', - 'fnstenvw','fnstsw','fpatan','fprem','fptan','frndint','frstor','frstorw','fsave', - 'fsavew','fscale','fsqrt','fst','fstcw','fstenv','fstenvw','fstp','fstsw','fsub','fsubp', - 'fsubr','fsubrp','ftst','fwait','fxam','fxch','fxtract','fyl2x','fyl2xp1', - 'fsetpm','fcos','fldenvd','fnsaved','fnstenvd','fprem1','frstord','fsaved','fsin','fsincos', - 'fstenvd','fucom','fucomp','fucompp' - ), - /*registers*/ - 3 => array( - 'ah','al','ax','bh','bl','bp','bx','ch','cl','cr0','cr2','cr3','cs','cx','dh','di','dl', - 'dr0','dr1','dr2','dr3','dr6','dr7','ds','dx','eax','ebp','ebx','ecx','edi','edx', - 'es','esi','esp','fs','gs','si','sp','ss','st','tr3','tr4','tr5','tr6','tr7' - ), - /*Directive*/ - 4 => array( - '186','286','286c','286p','287','386','386c','386p','387','486','486p', - '8086','8087','alpha','break','code','const','continue','cref','data','data?', - 'dosseg','else','elseif','endif','endw','err','err1','err2','errb', - 'errdef','errdif','errdifi','erre','erridn','erridni','errnb','errndef', - 'errnz','exit','fardata','fardata?','if','lall','lfcond','list','listall', - 'listif','listmacro','listmacroall',' model','no87','nocref','nolist', - 'nolistif','nolistmacro','radix','repeat','sall','seq','sfcond','stack', - 'startup','tfcond','type','until','untilcxz','while','xall','xcref', - 'xlist','alias','align','assume','catstr','comm','comment','db','dd','df','dq', - 'dt','dup','dw','echo','elseif1','elseif2','elseifb','elseifdef','elseifdif', - 'elseifdifi','elseife','elseifidn','elseifidni','elseifnb','elseifndef','end', - 'endm','endp','ends','eq',' equ','even','exitm','extern','externdef','extrn','for', - 'forc','ge','goto','group','high','highword','if1','if2','ifb','ifdef','ifdif', - 'ifdifi','ife',' ifidn','ifidni','ifnb','ifndef','include','includelib','instr','invoke', - 'irp','irpc','label','le','length','lengthof','local','low','lowword','lroffset', - 'macro','mask','mod','msfloat','name','ne','offset','opattr','option','org','%out', - 'page','popcontext','private','proc','proto','ptr','public','purge','pushcontext','record', - 'rept','seg','segment','short','size','sizeof','sizestr','struc','struct', - 'substr','subtitle','subttl','textequ','this','title','typedef','union','width', - '.model', '.stack', '.code', '.data' - ), - /*Operands*/ - 5 => array( - '@b','@f','addr','basic','byte','c','carry?','dword', - 'far','far16','fortran','fword','near','near16','overflow?','parity?','pascal','qword', - 'real4',' real8','real10','sbyte','sdword','sign?','stdcall','sword','syscall','tbyte', - 'vararg','word','zero?','flat','near32','far32', - 'abs','all','assumes','at','casemap','common','compact', - 'cpu','dotname','emulator','epilogue','error','export','expr16','expr32','farstack', - 'forceframe','huge','language','large','listing','ljmp','loadds','m510','medium','memory', - 'nearstack','nodotname','noemulator','nokeyword','noljmp','nom510','none','nonunique', - 'nooldmacros','nooldstructs','noreadonly','noscoped','nosignextend','nothing', - 'notpublic','oldmacros','oldstructs','os_dos','para','prologue', - 'readonly','req','scoped','setif2','smallstack','tiny','use16','use32','uses' - ) - ), - 'SYMBOLS' => array( - '[', ']', '(', ')', - '+', '-', '*', '/', '%', - '.', ',', ';', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #00007f; font-weight: bold;', - 2 => 'color: #0000ff; font-weight: bold;', - 3 => 'color: #00007f;', - 4 => 'color: #000000; font-weight: bold;', - 5 => 'color: #000000; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #adadad; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900; font-weight: bold;' - ), - 'STRINGS' => array( - 0 => 'color: #7f007f;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000ff;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( -// 0 => 'color: #0000ff;', -// 1 => 'color: #0000ff;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '' - ), - 'NUMBERS' => - GESHI_NUMBER_BIN_PREFIX_PERCENT | - GESHI_NUMBER_BIN_SUFFIX | - GESHI_NUMBER_HEX_PREFIX | - GESHI_NUMBER_HEX_SUFFIX | - GESHI_NUMBER_OCT_SUFFIX | - GESHI_NUMBER_INT_BASIC | - GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_NONSCI_F | - GESHI_NUMBER_FLT_SCI_ZERO, - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Hex numbers -// 0 => /* */ "(?<=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))(?:[0-9][0-9a-fA-F]{0,31}[hH]|0x[0-9a-fA-F]{1,32})(?=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))", - //Binary numbers -// 1 => "(?<=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))[01]{1,64}[bB](?=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 8, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?|^])", - 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%])" - ) - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/asp.php b/library/Vendors/geshi/geshi/asp.php deleted file mode 100644 index 4a9d6c8e..00000000 --- a/library/Vendors/geshi/geshi/asp.php +++ /dev/null @@ -1,164 +0,0 @@ - 'ASP', - 'COMMENT_SINGLE' => array(1 => "'", 2 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'include', 'file', 'Const', 'Dim', 'Option', 'Explicit', 'Implicit', 'Set', 'Select', 'ReDim', 'Preserve', - 'ByVal', 'ByRef', 'End', 'Private', 'Public', 'If', 'Then', 'Else', 'ElseIf', 'Case', 'With', 'NOT', - 'While', 'Wend', 'For', 'Loop', 'Do', 'Request', 'Response', 'Server', 'ADODB', 'Session', 'Application', - 'Each', 'In', 'Get', 'Next', 'INT', 'CINT', 'CBOOL', 'CDATE', 'CBYTE', 'CCUR', 'CDBL', 'CLNG', 'CSNG', - 'CSTR', 'Fix', 'Is', 'Sgn', 'String', 'Boolean', 'Currency', 'Me', 'Single', 'Long', 'Integer', 'Byte', - 'Variant', 'Double', 'To', 'Let', 'Xor', 'Resume', 'On', 'Error', 'Imp', 'GoTo', 'Call', 'Global' - ), - 2 => array( - 'Null', 'Nothing', 'And', - 'False', - 'True', 'var', 'Or', 'BOF', 'EOF', 'xor', - 'Function', 'Class', 'New', 'Sub' - ), - 3 => array( - 'CreateObject', 'Write', 'Redirect', 'Cookies', 'BinaryRead', 'ClientCertificate', 'Form', 'QueryString', - 'ServerVariables', 'TotalBytes', 'AddHeader', 'AppendToLog', 'BinaryWrite', 'Buffer', 'CacheControl', - 'Charset', 'Clear', 'ContentType', 'End()', 'Expires', 'ExpiresAbsolute', 'Flush()', 'IsClientConnected', - 'PICS', 'Status', 'Connection', 'Recordset', 'Execute', 'Abandon', 'Lock', 'UnLock', 'Command', 'Fields', - 'Properties', 'Property', 'Send', 'Replace', 'InStr', 'TRIM', 'NOW', 'Day', 'Month', 'Hour', 'Minute', 'Second', - 'Year', 'MonthName', 'LCase', 'UCase', 'Abs', 'Array', 'As', 'LEN', 'MoveFirst', 'MoveLast', 'MovePrevious', - 'MoveNext', 'LBound', 'UBound', 'Transfer', 'Open', 'Close', 'MapPath', 'FileExists', 'OpenTextFile', 'ReadAll' - ) - ), - 'SYMBOLS' => array( - 1 => array( - '<%', '%>' - ), - 0 => array( - '(', ')', '[', ']', '!', '@', '%', '&', '*', '|', '/', '<', '>', - ';', ':', '?', '='), - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #990099; font-weight: bold;', - 2 => 'color: #0000ff; font-weight: bold;', - 3 => 'color: #330066;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000;', - 2 => 'color: #ff6600;', - 'MULTI' => 'color: #008000;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #006600; font-weight:bold;' - ), - 'STRINGS' => array( - 0 => 'color: #cc0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #800000;' - ), - 'METHODS' => array( - 1 => 'color: #9900cc;' - ), - 'SYMBOLS' => array( - 0 => 'color: #006600; font-weight: bold;', - 1 => 'color: #000000; font-weight: bold;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - '<%' => '%>' - ), - 1 => array( - '' - ), - 2 => array( - '' - ), - 3 => "/(?P<%=?)(?:\"[^\"]*?\"|\/\*(?!\*\/).*?\*\/|.)*?(?P%>|\Z)/sm" - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true, - 2 => true, - 3 => true - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/autoconf.php b/library/Vendors/geshi/geshi/autoconf.php deleted file mode 100644 index 0883f9f5..00000000 --- a/library/Vendors/geshi/geshi/autoconf.php +++ /dev/null @@ -1,512 +0,0 @@ - 'Autoconf', - 'COMMENT_SINGLE' => array(2 => '#'), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - //Multiline-continued single-line comments - 1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m', - //Multiline-continued preprocessor define - 2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m', - //Single Line comment started by dnl - 3 => '/(? GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array(), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B | - GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - 'AC_ACT_IFELSE', - 'AC_AIX', - 'AC_ALLOCA', - 'AC_ARG_ARRAY', - 'AC_ARG_ENABLE', - 'AC_ARG_PROGRAM', - 'AC_ARG_VAR', - 'AC_ARG_WITH', - 'AC_AUTOCONF_VERSION', - 'AC_BEFORE', - 'AC_C_BACKSLASH_A', - 'AC_C_BIGENDIAN', - 'AC_C_CHAR_UNSIGNED', - 'AC_C_CONST', - 'AC_C_CROSS', - 'AC_C_FLEXIBLE_ARRAY_MEMBER', - 'AC_C_INLINE', - 'AC_C_LONG_DOUBLE', - 'AC_C_PROTOTYPES', - 'AC_C_RESTRICT', - 'AC_C_STRINGIZE', - 'AC_C_TYPEOF', - 'AC_C_VARARRAYS', - 'AC_C_VOLATILE', - 'AC_CACHE_CHECK', - 'AC_CACHE_LOAD', - 'AC_CACHE_SAVE', - 'AC_CACHE_VAL', - 'AC_CANONICAL_BUILD', - 'AC_CANONICAL_HOST', - 'AC_CANONICAL_SYSTEM', - 'AC_CANONICAL_TARGET', - 'AC_CHAR_UNSIGNED', - 'AC_CHECK_ALIGNOF', - 'AC_CHECK_DECL', - 'AC_CHECK_DECLS', - 'AC_CHECK_DECLS_ONCE', - 'AC_CHECK_FILE', - 'AC_CHECK_FILES', - 'AC_CHECK_FUNC', - 'AC_CHECK_FUNCS', - 'AC_CHECK_FUNCS_ONCE', - 'AC_CHECK_HEADER', - 'AC_CHECK_HEADERS', - 'AC_CHECK_HEADERS_ONCE', - 'AC_CHECK_LIB', - 'AC_CHECK_MEMBER', - 'AC_CHECK_MEMBERS', - 'AC_CHECK_PROG', - 'AC_CHECK_PROGS', - 'AC_CHECK_SIZEOF', - 'AC_CHECK_TARGET_TOOL', - 'AC_CHECK_TARGET_TOOLS', - 'AC_CHECK_TOOL', - 'AC_CHECK_TOOLS', - 'AC_CHECK_TYPE', - 'AC_CHECK_TYPES', - 'AC_CHECKING', - 'AC_COMPILE_CHECK', - 'AC_COMPILE_IFELSE', - 'AC_COMPUTE_INT', - 'AC_CONFIG_AUX_DIR', - 'AC_CONFIG_COMMANDS', - 'AC_CONFIG_COMMANDS_POST', - 'AC_CONFIG_COMMANDS_PRE', - 'AC_CONFIG_FILES', - 'AC_CONFIG_HEADERS', - 'AC_CONFIG_ITEMS', - 'AC_CONFIG_LIBOBJ_DIR', - 'AC_CONFIG_LINKS', - 'AC_CONFIG_MACRO_DIR', - 'AC_CONFIG_SRCDIR', - 'AC_CONFIG_SUBDIRS', - 'AC_CONFIG_TESTDIR', - 'AC_CONST', - 'AC_COPYRIGHT', - 'AC_CROSS_CHECK', - 'AC_CYGWIN', - 'AC_DATAROOTDIR_CHECKED', - 'AC_DECL_SYS_SIGLIST', - 'AC_DECL_YYTEXT', - 'AC_DEFINE', - 'AC_DEFINE_UNQUOTED', - 'AC_DEFUN', - 'AC_DEFUN_ONCE', - 'AC_DIAGNOSE', - 'AC_DIR_HEADER', - 'AC_DISABLE_OPTION_CHECKING', - 'AC_DYNIX_SEQ', - 'AC_EGREP_CPP', - 'AC_EGREP_HEADER', - 'AC_EMXOS2', - 'AC_ENABLE', - 'AC_ERLANG_CHECK_LIB', - 'AC_ERLANG_NEED_ERL', - 'AC_ERLANG_NEED_ERLC', - 'AC_ERLANG_PATH_ERL', - 'AC_ERLANG_PATH_ERLC', - 'AC_ERLANG_SUBST_ERTS_VER', - 'AC_ERLANG_SUBST_INSTALL_LIB_DIR', - 'AC_ERLANG_SUBST_INSTALL_LIB_SUBDIR', - 'AC_ERLANG_SUBST_LIB_DIR', - 'AC_ERLANG_SUBST_ROOT_DIR', - 'AC_ERROR', - 'AC_EXEEXT', - 'AC_F77_DUMMY_MAIN', - 'AC_F77_FUNC', - 'AC_F77_LIBRARY_LDFLAGS', - 'AC_F77_MAIN', - 'AC_F77_WRAPPERS', - 'AC_FATAL', - 'AC_FC_FREEFORM', - 'AC_FC_FUNC', - 'AC_FC_LIBRARY_LDFLAGS', - 'AC_FC_MAIN', - 'AC_FC_SRCEXT', - 'AC_FC_WRAPPERS', - 'AC_FIND_X', - 'AC_FIND_XTRA', - 'AC_FOREACH', - 'AC_FUNC_ALLOCA', - 'AC_FUNC_CHECK', - 'AC_FUNC_CHOWN', - 'AC_FUNC_CLOSEDIR_VOID', - 'AC_FUNC_ERROR_AT_LINE', - 'AC_FUNC_FNMATCH', - 'AC_FUNC_FNMATCH_GNU', - 'AC_FUNC_FORK', - 'AC_FUNC_FSEEKO', - 'AC_FUNC_GETGROUPS', - 'AC_FUNC_GETLOADAVG', - 'AC_FUNC_GETMNTENT', - 'AC_FUNC_GETPGRP', - 'AC_FUNC_LSTAT', - 'AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK', - 'AC_FUNC_MALLOC', - 'AC_FUNC_MBRTOWC', - 'AC_FUNC_MEMCMP', - 'AC_FUNC_MKTIME', - 'AC_FUNC_MMAP', - 'AC_FUNC_OBSTACK', - 'AC_FUNC_REALLOC', - 'AC_FUNC_SELECT_ARGTYPES', - 'AC_FUNC_SETPGRP', - 'AC_FUNC_SETVBUF_REVERSED', - 'AC_FUNC_STAT', - 'AC_FUNC_STRCOLL', - 'AC_FUNC_STRERROR_R', - 'AC_FUNC_STRFTIME', - 'AC_FUNC_STRNLEN', - 'AC_FUNC_STRTOD', - 'AC_FUNC_STRTOLD', - 'AC_FUNC_UTIME_NULL', - 'AC_FUNC_VPRINTF', - 'AC_FUNC_WAIT3', - 'AC_GCC_TRADITIONAL', - 'AC_GETGROUPS_T', - 'AC_GETLOADAVG', - 'AC_GNU_SOURCE', - 'AC_HAVE_FUNCS', - 'AC_HAVE_HEADERS', - 'AC_HAVE_LIBRARY', - 'AC_HAVE_POUNDBANG', - 'AC_HEADER_ASSERT', - 'AC_HEADER_CHECK', - 'AC_HEADER_DIRENT', - 'AC_HEADER_EGREP', - 'AC_HEADER_MAJOR', - 'AC_HEADER_RESOLV', - 'AC_HEADER_STAT', - 'AC_HEADER_STDBOOL', - 'AC_HEADER_STDC', - 'AC_HEADER_SYS_WAIT', - 'AC_HEADER_TIME', - 'AC_HEADER_TIOCGWINSZ', - 'AC_HELP_STRING', - 'AC_INCLUDES_DEFAULT', - 'AC_INIT', - 'AC_INLINE', - 'AC_INT_16_BITS', - 'AC_IRIX_SUN', - 'AC_ISC_POSIX', - 'AC_LANG_ASSERT', - 'AC_LANG_C', - 'AC_LANG_CALL', - 'AC_LANG_CONFTEST', - 'AC_LANG_CPLUSPLUS', - 'AC_LANG_FORTRAN77', - 'AC_LANG_FUNC_LINK_TRY', - 'AC_LANG_POP', - 'AC_LANG_PROGRAM', - 'AC_LANG_PUSH', - 'AC_LANG_RESTORE', - 'AC_LANG_SAVE', - 'AC_LANG_SOURCE', - 'AC_LANG_WERROR', - 'AC_LIBOBJ', - 'AC_LIBSOURCE', - 'AC_LIBSOURCES', - 'AC_LINK_FILES', - 'AC_LINK_IFELSE', - 'AC_LN_S', - 'AC_LONG_64_BITS', - 'AC_LONG_DOUBLE', - 'AC_LONG_FILE_NAMES', - 'AC_MAJOR_HEADER', - 'AC_MEMORY_H', - 'AC_MINGW32', - 'AC_MINIX', - 'AC_MINUS_C_MINUS_O', - 'AC_MMAP', - 'AC_MODE_T', - 'AC_MSG_CHECKING', - 'AC_MSG_ERROR', - 'AC_MSG_FAILURE', - 'AC_MSG_NOTICE', - 'AC_MSG_RESULT', - 'AC_MSG_WARN', - 'AC_OBJEXT', - 'AC_OBSOLETE', - 'AC_OFF_T', - 'AC_OPENMP', - 'AC_OUTPUT', - 'AC_OUTPUT_COMMANDS', - 'AC_PACKAGE_BUGREPORT', - 'AC_PACKAGE_NAME', - 'AC_PACKAGE_STRING', - 'AC_PACKAGE_TARNAME', - 'AC_PACKAGE_URL', - 'AC_PACKAGE_VERSION', - 'AC_PATH_PROG', - 'AC_PATH_PROGS', - 'AC_PATH_PROGS_FEATURE_CHECK', - 'AC_PATH_TARGET_TOOL', - 'AC_PATH_TOOL', - 'AC_PATH_X', - 'AC_PATH_XTRA', - 'AC_PID_T', - 'AC_PREFIX', - 'AC_PREFIX_DEFAULT', - 'AC_PREFIX_PROGRAM', - 'AC_PREPROC_IFELSE', - 'AC_PREREQ', - 'AC_PRESERVE_HELP_ORDER', - 'AC_PROG_AWK', - 'AC_PROG_CC', - 'AC_PROG_CC_C89', - 'AC_PROG_CC_C99', - 'AC_PROG_CC_C_O', - 'AC_PROG_CC_STDC', - 'AC_PROG_CPP', - 'AC_PROG_CPP_WERROR', - 'AC_PROG_CXX', - 'AC_PROG_CXX_C_O', - 'AC_PROG_CXXCPP', - 'AC_PROG_EGREP', - 'AC_PROG_F77', - 'AC_PROG_F77_C_O', - 'AC_PROG_FC', - 'AC_PROG_FC_C_O', - 'AC_PROG_FGREP', - 'AC_PROG_GCC_TRADITIONAL', - 'AC_PROG_GREP', - 'AC_PROG_INSTALL', - 'AC_PROG_LEX', - 'AC_PROG_LN_S', - 'AC_PROG_MAKE_SET', - 'AC_PROG_MKDIR_P', - 'AC_PROG_OBJC', - 'AC_PROG_OBJCPP', - 'AC_PROG_OBJCXX', - 'AC_PROG_OBJCXXCPP', - 'AC_PROG_RANLIB', - 'AC_PROG_SED', - 'AC_PROG_YACC', - 'AC_PROGRAM_CHECK', - 'AC_PROGRAM_EGREP', - 'AC_PROGRAM_PATH', - 'AC_PROGRAMS_CHECK', - 'AC_PROGRAMS_PATH', - 'AC_REMOTE_TAPE', - 'AC_REPLACE_FNMATCH', - 'AC_REPLACE_FUNCS', - 'AC_REQUIRE', - 'AC_REQUIRE_AUX_FILE', - 'AC_REQUIRE_CPP', - 'AC_RESTARTABLE_SYSCALLS', - 'AC_RETSIGTYPE', - 'AC_REVISION', - 'AC_RSH', - 'AC_RUN_IFELSE', - 'AC_SCO_INTL', - 'AC_SEARCH_LIBS', - 'AC_SET_MAKE', - 'AC_SETVBUF_REVERSED', - 'AC_SIZE_T', - 'AC_SIZEOF_TYPE', - 'AC_ST_BLKSIZE', - 'AC_ST_BLOCKS', - 'AC_ST_RDEV', - 'AC_STAT_MACROS_BROKEN', - 'AC_STDC_HEADERS', - 'AC_STRCOLL', - 'AC_STRUCT_DIRENT_D_INO', - 'AC_STRUCT_DIRENT_D_TYPE', - 'AC_STRUCT_ST_BLKSIZE', - 'AC_STRUCT_ST_BLOCKS', - 'AC_STRUCT_ST_RDEV', - 'AC_STRUCT_TIMEZONE', - 'AC_STRUCT_TM', - 'AC_SUBST', - 'AC_SUBST_FILE', - 'AC_SYS_INTERPRETER', - 'AC_SYS_LARGEFILE', - 'AC_SYS_LONG_FILE_NAMES', - 'AC_SYS_POSIX_TERMIOS', - 'AC_SYS_RESTARTABLE_SYSCALLS', - 'AC_SYS_SIGLIST_DECLARED', - 'AC_TEST_CPP', - 'AC_TEST_PROGRAM', - 'AC_TIME_WITH_SYS_TIME', - 'AC_TIMEZONE', - 'AC_TRY_ACT', - 'AC_TRY_COMPILE', - 'AC_TRY_CPP', - 'AC_TRY_LINK', - 'AC_TRY_LINK_FUNC', - 'AC_TRY_RUN', - 'AC_TYPE_GETGROUPS', - 'AC_TYPE_INT16_T', - 'AC_TYPE_INT32_T', - 'AC_TYPE_INT64_T', - 'AC_TYPE_INT8_T', - 'AC_TYPE_INTMAX_T', - 'AC_TYPE_INTPTR_T', - 'AC_TYPE_LONG_DOUBLE', - 'AC_TYPE_LONG_DOUBLE_WIDER', - 'AC_TYPE_LONG_LONG_INT', - 'AC_TYPE_MBSTATE_T', - 'AC_TYPE_MODE_T', - 'AC_TYPE_OFF_T', - 'AC_TYPE_PID_T', - 'AC_TYPE_SIGNAL', - 'AC_TYPE_SIZE_T', - 'AC_TYPE_SSIZE_T', - 'AC_TYPE_UID_T', - 'AC_TYPE_UINT16_T', - 'AC_TYPE_UINT32_T', - 'AC_TYPE_UINT64_T', - 'AC_TYPE_UINT8_T', - 'AC_TYPE_UINTMAX_T', - 'AC_TYPE_UINTPTR_T', - 'AC_TYPE_UNSIGNED_LONG_LONG_INT', - 'AC_UID_T', - 'AC_UNISTD_H', - 'AC_USE_SYSTEM_EXTENSIONS', - 'AC_USG', - 'AC_UTIME_NULL', - 'AC_VALIDATE_CACHED_SYSTEM_TUPLE', - 'AC_VERBOSE', - 'AC_VFORK', - 'AC_VPRINTF', - 'AC_WAIT3', - 'AC_WARN', - 'AC_WARNING', - 'AC_WITH', - 'AC_WORDS_BIGENDIAN', - 'AC_XENIX_DIR', - 'AC_YYTEXT_POINTER', - 'AH_BOTTOM', - 'AH_HEADER', - 'AH_TEMPLATE', - 'AH_TOP', - 'AH_VERBATIM', - 'AU_ALIAS', - 'AU_DEFUN'), - ), - 'SYMBOLS' => array('(', ')', '[', ']', '!', '@', '%', '&', '*', '|', '/', '<', '>', ';;', '`'), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #00ffff;', - ), - 'COMMENTS' => array( - 1 => 'color: #666666;', - 2 => 'color: #339900;', - 3 => 'color: #666666;', - 'MULTI' => 'color: #ff0000; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;', - 1 => 'color: #000099;', - 2 => 'color: #660099;', - 3 => 'color: #660099;', - 4 => 'color: #660099;', - 5 => 'color: #006699;', - 'HARD' => '', - ), - 'BRACKETS' => array( - 0 => 'color: #008000;' - ), - 'STRINGS' => array( - 0 => 'color: #996600;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000dd;', - GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;', - GESHI_NUMBER_OCT_PREFIX => 'color: #208080;', - GESHI_NUMBER_HEX_PREFIX => 'color: #208080;', - GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;', - GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI => 'color:#800080;' - ), - 'METHODS' => array( - 1 => 'color: #202020;', - 2 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;', - 1 => 'color: #000080;', - 2 => 'color: #000040;', - 3 => 'color: #000040;', - 4 => 'color: #008080;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'COMMENTS' => array( - 'DISALLOWED_BEFORE' => '$' - ), - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(? "(?![\.\-a-zA-Z0-9_%\\/])" - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/autohotkey.php b/library/Vendors/geshi/geshi/autohotkey.php deleted file mode 100644 index 6a352833..00000000 --- a/library/Vendors/geshi/geshi/autohotkey.php +++ /dev/null @@ -1,373 +0,0 @@ - 'Autohotkey', - 'COMMENT_SINGLE' => array( - 1 => ';' - ), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'while','if','and','or','else','return' - ), - 2 => array( - // built in variables - 'A_AhkPath','A_AhkVersion','A_AppData','A_AppDataCommon', - 'A_AutoTrim','A_BatchLines','A_CaretX','A_CaretY', - 'A_ComputerName','A_ControlDelay','A_Cursor','A_DD', - 'A_DDD','A_DDDD','A_DefaultMouseSpeed','A_Desktop', - 'A_DesktopCommon','A_DetectHiddenText','A_DetectHiddenWindows','A_EndChar', - 'A_EventInfo','A_ExitReason','A_FormatFloat','A_FormatInteger', - 'A_Gui','A_GuiEvent','A_GuiControl','A_GuiControlEvent', - 'A_GuiHeight','A_GuiWidth','A_GuiX','A_GuiY', - 'A_Hour','A_IconFile','A_IconHidden','A_IconNumber', - 'A_IconTip','A_Index','A_IPAddress1','A_IPAddress2', - 'A_IPAddress3','A_IPAddress4','A_ISAdmin','A_IsCompiled', - 'A_IsCritical','A_IsPaused','A_IsSuspended','A_KeyDelay', - 'A_Language','A_LastError','A_LineFile','A_LineNumber', - 'A_LoopField','A_LoopFileAttrib','A_LoopFileDir','A_LoopFileExt', - 'A_LoopFileFullPath','A_LoopFileLongPath','A_LoopFileName','A_LoopFileShortName', - 'A_LoopFileShortPath','A_LoopFileSize','A_LoopFileSizeKB','A_LoopFileSizeMB', - 'A_LoopFileTimeAccessed','A_LoopFileTimeCreated','A_LoopFileTimeModified','A_LoopReadLine', - 'A_LoopRegKey','A_LoopRegName','A_LoopRegSubkey','A_LoopRegTimeModified', - 'A_LoopRegType','A_MDAY','A_Min','A_MM', - 'A_MMM','A_MMMM','A_Mon','A_MouseDelay', - 'A_MSec','A_MyDocuments','A_Now','A_NowUTC', - 'A_NumBatchLines','A_OSType','A_OSVersion','A_PriorHotkey', - 'A_ProgramFiles','A_Programs','A_ProgramsCommon','A_ScreenHeight', - 'A_ScreenWidth','A_ScriptDir','A_ScriptFullPath','A_ScriptName', - 'A_Sec','A_Space','A_StartMenu','A_StartMenuCommon', - 'A_Startup','A_StartupCommon','A_StringCaseSense','A_Tab', - 'A_Temp','A_ThisFunc','A_ThisHotkey','A_ThisLabel', - 'A_ThisMenu','A_ThisMenuItem','A_ThisMenuItemPos','A_TickCount', - 'A_TimeIdle','A_TimeIdlePhysical','A_TimeSincePriorHotkey','A_TimeSinceThisHotkey', - 'A_TitleMatchMode','A_TitleMatchModeSpeed','A_UserName','A_WDay', - 'A_WinDelay','A_WinDir','A_WorkingDir','A_YDay', - 'A_YEAR','A_YWeek','A_YYYY','Clipboard', - 'ClipboardAll','ComSpec','ErrorLevel','ProgramFiles', - ), - 3 => array( - 'AutoTrim', - 'BlockInput','Break','Click', - 'ClipWait','Continue','Control', - 'ControlClick','ControlFocus','ControlGet', - 'ControlGetFocus','ControlGetPos','ControlGetText', - 'ControlMove','ControlSend','ControlSendRaw', - 'ControlSetText','CoordMode','Critical', - 'DetectHiddenText','DetectHiddenWindows','DllCall','Drive', - 'DriveGet','DriveSpaceFree', - 'Else','EnvAdd','EnvDiv', - 'EnvGet','EnvMult','EnvSet', - 'EnvSub','EnvUpdate','Exit', - 'ExitApp','FileAppend','FileCopy', - 'FileCopyDir','FileCreateDir','FileCreateShortcut', - 'FileDelete','FileGetAttrib','FileGetShortcut', - 'FileGetSize','FileGetTime','FileGetVersion', - 'FileInstall','FileMove','FileMoveDir', - 'FileRead','FileReadLine','FileRecycle', - 'FileRecycleEmpty','FileRemoveDir','FileSelectFile', - 'FileSelectFolder','FileSetAttrib','FileSetTime', - 'FormatTime','Gosub', - 'Goto','GroupActivate','GroupAdd', - 'GroupClose','GroupDeactivate','Gui', - 'GuiControl','GuiControlGet','Hotkey', - 'IfExist','IfGreater','IfGreaterOrEqual', - 'IfInString','IfLess','IfLessOrEqual', - 'IfMsgBox','IfNotEqual','IfNotExist', - 'IfNotInString','IfWinActive','IfWinExist', - 'IfWinNotActive','IfWinNotExist','ImageSearch', - 'IniDelete','IniRead','IniWrite', - 'Input','InputBox','KeyHistory', - 'KeyWait','ListHotkeys','ListLines', - 'ListVars','Loop', - 'Menu','MouseClick','MouseClickDrag', - 'MouseGetPos','MouseMove','MsgBox', - 'OnMessage','OnExit','OutputDebug', - 'PixelGetColor','PixelSearch','PostMessage', - 'Process','Progress','Random', - 'RegExMatch','RegExReplace','RegisterCallback', - 'RegDelete','RegRead','RegWrite', - 'Reload','Repeat','Return', - 'Run','RunAs','RunWait', - 'Send','SendEvent','SendInput', - 'SendMessage','SendMode','SendPlay', - 'SendRaw','SetBatchLines','SetCapslockState', - 'SetControlDelay','SetDefaultMouseSpeed','SetEnv', - 'SetFormat','SetKeyDelay','SetMouseDelay', - 'SetNumlockState','SetScrollLockState','SetStoreCapslockMode', - 'SetTimer','SetTitleMatchMode','SetWinDelay', - 'SetWorkingDir','Shutdown','Sleep', - 'Sort','SoundBeep','SoundGet', - 'SoundGetWaveVolume','SoundPlay','SoundSet', - 'SoundSetWaveVolume','SplashImage','SplashTextOff', - 'SplashTextOn','SplitPath','StatusBarGetText', - 'StatusBarWait','StringCaseSense','StringGetPos', - 'StringLeft','StringLen','StringLower', - 'StringMid','StringReplace','StringRight', - 'StringSplit','StringTrimLeft','StringTrimRight', - 'StringUpper','Suspend','SysGet', - 'Thread','ToolTip','Transform', - 'TrayTip','URLDownloadToFile','While', - 'VarSetCapacity', - 'WinActivate','WinActivateBottom','WinClose', - 'WinGet','WinGetActiveStats','WinGetActiveTitle', - 'WinGetClass','WinGetPos','WinGetText', - 'WinGetTitle','WinHide','WinKill', - 'WinMaximize','WinMenuSelectItem','WinMinimize', - 'WinMinimizeAll','WinMinimizeAllUndo','WinMove', - 'WinRestore','WinSet','WinSetTitle', - 'WinShow','WinWait','WinWaitActive', - 'WinWaitClose','WinWaitNotActive' - ), - 4 => array( - 'Abs','ACos','Asc','ASin', - 'ATan','Ceil','Chr','Cos', - 'Exp','FileExist','Floor', - 'GetKeyState','IL_Add','IL_Create','IL_Destroy', - 'InStr','IsFunc','IsLabel','Ln', - 'Log','LV_Add','LV_Delete','LV_DeleteCol', - 'LV_GetCount','LV_GetNext','LV_GetText','LV_Insert', - 'LV_InsertCol','LV_Modify','LV_ModifyCol','LV_SetImageList', - 'Mod','NumGet','NumPut', - 'Round', - 'SB_SetIcon','SB_SetParts','SB_SetText','Sin', - 'Sqrt','StrLen','SubStr','Tan', - 'TV_Add','TV_Delete','TV_GetChild','TV_GetCount', - 'TV_GetNext','TV_Get','TV_GetParent','TV_GetPrev', - 'TV_GetSelection','TV_GetText','TV_Modify', - 'WinActive','WinExist' - ), - 5 => array( - // #Directives - 'AllowSameLineComments','ClipboardTimeout','CommentFlag', - 'ErrorStdOut','EscapeChar','HotkeyInterval', - 'HotkeyModifierTimeout','Hotstring','IfWinActive', - 'IfWinExist','IfWinNotActive','IfWinNotExist', - 'Include','IncludeAgain','InstallKeybdHook', - 'InstallMouseHook','KeyHistory','LTrim', - 'MaxHotkeysPerInterval','MaxMem','MaxThreads', - 'MaxThreadsBuffer','MaxThreadsPerHotkey','NoEnv', - 'NoTrayIcon','Persistent','SingleInstance', - 'UseHook','WinActivateForce' - ), - 6 => array( - 'Shift','LShift','RShift', - 'Alt','LAlt','RAlt', - 'LControl','RControl', - 'Ctrl','LCtrl','RCtrl', - 'LWin','RWin','AppsKey', - 'AltDown','AltUp','ShiftDown', - 'ShiftUp','CtrlDown','CtrlUp', - 'LWinDown','LWinUp','RWinDown', - 'RWinUp','LButton','RButton', - 'MButton','WheelUp','WheelDown', - 'WheelLeft','WheelRight','XButton1', - 'XButton2','Joy1','Joy2', - 'Joy3','Joy4','Joy5', - 'Joy6','Joy7','Joy8', - 'Joy9','Joy10','Joy11', - 'Joy12','Joy13','Joy14', - 'Joy15','Joy16','Joy17', - 'Joy18','Joy19','Joy20', - 'Joy21','Joy22','Joy23', - 'Joy24','Joy25','Joy26', - 'Joy27','Joy28','Joy29', - 'Joy30','Joy31','Joy32', - 'JoyX','JoyY','JoyZ', - 'JoyR','JoyU','JoyV', - 'JoyPOV','JoyName','JoyButtons', - 'JoyAxes','JoyInfo','Space', - 'Tab','Enter', - 'Escape','Esc','BackSpace', - 'BS','Delete','Del', - 'Insert','Ins','PGUP', - 'PGDN','Home','End', - 'Up','Down','Left', - 'Right','PrintScreen','CtrlBreak', - 'Pause','ScrollLock','CapsLock', - 'NumLock','Numpad0','Numpad1', - 'Numpad2','Numpad3','Numpad4', - 'Numpad5','Numpad6','Numpad7', - 'Numpad8','Numpad9','NumpadMult', - 'NumpadAdd','NumpadSub','NumpadDiv', - 'NumpadDot','NumpadDel','NumpadIns', - 'NumpadClear','NumpadUp','NumpadDown', - 'NumpadLeft','NumpadRight','NumpadHome', - 'NumpadEnd','NumpadPgup','NumpadPgdn', - 'NumpadEnter','F1','F2', - 'F3','F4','F5', - 'F6','F7','F8', - 'F9','F10','F11', - 'F12','F13','F14', - 'F15','F16','F17', - 'F18','F19','F20', - 'F21','F22','F23', - 'F24','Browser_Back','Browser_Forward', - 'Browser_Refresh','Browser_Stop','Browser_Search', - 'Browser_Favorites','Browser_Home','Volume_Mute', - 'Volume_Down','Volume_Up','Media_Next', - 'Media_Prev','Media_Stop','Media_Play_Pause', - 'Launch_Mail','Launch_Media','Launch_App1', - 'Launch_App2' - ), - 7 => array( - // Gui commands - 'Add', - 'Show', 'Submit', 'Cancel', 'Destroy', - 'Font', 'Color', 'Margin', 'Flash', 'Default', - 'GuiEscape','GuiClose','GuiSize','GuiContextMenu','GuiDropFilesTabStop', - ), - 8 => array( - // Gui Controls - 'Button', - 'Checkbox','Radio','DropDownList','DDL', - 'ComboBox','ListBox','ListView', - 'Text', 'Edit', 'UpDown', 'Picture', - 'TreeView','DateTime', 'MonthCal', - 'Slider' - ) - ), - 'SYMBOLS' => array( - '(',')','[',']', - '+','-','*','/','&','^', - '=','+=','-=','*=','/=','&=', - '==','<','<=','>','>=',':=', - ',','.' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false, - 8 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #AAAAFF; font-weight: bold;', // reserved #blue - 2 => 'color: #88FF88;', // BIV yellow - 3 => 'color: #FF00FF; font-style: italic;', // commands purple - 4 => 'color: #888844; font-weight: bold;', // functions #0080FF - 5 => 'color: #000000; font-style: italic;', // directives #black - 6 => 'color: #FF0000; font-style: italic;', // hotkeys #red - 7 => 'color: #000000; font-style: italic;', // gui commands #black - 8 => 'color: #000000; font-style: italic;' // gui controls - ), - 'COMMENTS' => array( - 'MULTI' => 'font-style: italic; color: #669900;', - 1 => 'font-style: italic; color: #009933;' - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => 'color: #00FF00; font-weight: bold;' - ), - 'STRINGS' => array( - 0 => 'font-weight: bold; color: #008080;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000dd;' - ), - 'METHODS' => array( - 1 => 'color: #0000FF; font-style: italic; font-weight: italic;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000000; font-weight: italic;' - ), - 'REGEXPS' => array( - 0 => 'font-weight: italic; color: #A00A0;', - 1 => 'color: #CC0000; font-style: italic;', - 2 => 'color: #DD0000; font-style: italic;', - 3 => 'color: #88FF88;' - ), - 'SCRIPT' => array( - ) - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - 1 => '_' - ), - 'REGEXPS' => array( - //Variables - 0 => '%[a-zA-Z_][a-zA-Z0-9_]*%', - //hotstrings - 1 => '::[\w\d]+::', - //labels - 2 => '\w[\w\d]+:\s', - //Built-in Variables - 3 => '\bA_\w+\b(?![^<]*>)' - ), - 'URLS' => array( - 1 => '', - 2 => 'http://www.autohotkey.com/docs/Variables.htm#{FNAME}', - 3 => 'http://www.autohotkey.com/docs/commands/{FNAME}.htm', - 4 => 'http://www.autohotkey.com/docs/Functions.htm#BuiltIn', - 5 => 'http://www.autohotkey.com/docs/commands/_{FNAME}.htm', - 6 => '', - 7 => 'http://www.autohotkey.com/docs/commands/Gui.htm#{FNAME}', - 8 => 'http://www.autohotkey.com/docs/commands/GuiControls.htm#{FNAME}' - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true, - 2 => true, - 3 => true - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 5 => array( - 'DISALLOWED_BEFORE' => '(? \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/autoit.php b/library/Vendors/geshi/geshi/autoit.php deleted file mode 100644 index c8ef4404..00000000 --- a/library/Vendors/geshi/geshi/autoit.php +++ /dev/null @@ -1,1175 +0,0 @@ - 'AutoIt', - 'COMMENT_SINGLE' => array(';'), - 'COMMENT_MULTI' => array( - '#comments-start' => '#comments-end', - '#cs' => '#ce'), - 'COMMENT_REGEXP' => array( - 0 => '/(? '/(?<=include)\s+<.*?>/' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'And','ByRef','Case','Const','ContinueCase','ContinueLoop', - 'Default','Dim','Do','Else','ElseIf','EndFunc','EndIf','EndSelect', - 'EndSwitch','EndWith','Enum','Exit','ExitLoop','False','For','Func', - 'Global','If','In','Local','Next','Not','Or','ReDim','Return', - 'Select','Step','Switch','Then','To','True','Until','WEnd','While', - 'With' - ), - 2 => array( - '@AppDataCommonDir','@AppDataDir','@AutoItExe','@AutoItPID', - '@AutoItUnicode','@AutoItVersion','@AutoItX64','@COM_EventObj', - '@CommonFilesDir','@Compiled','@ComputerName','@ComSpec','@CR', - '@CRLF','@DesktopCommonDir','@DesktopDepth','@DesktopDir', - '@DesktopHeight','@DesktopRefresh','@DesktopWidth', - '@DocumentsCommonDir','@error','@exitCode','@exitMethod', - '@extended','@FavoritesCommonDir','@FavoritesDir','@GUI_CtrlHandle', - '@GUI_CtrlId','@GUI_DragFile','@GUI_DragId','@GUI_DropId', - '@GUI_WinHandle','@HomeDrive','@HomePath','@HomeShare', - '@HotKeyPressed','@HOUR','@InetGetActive','@InetGetBytesRead', - '@IPAddress1','@IPAddress2','@IPAddress3','@IPAddress4','@KBLayout', - '@LF','@LogonDNSDomain','@LogonDomain','@LogonServer','@MDAY', - '@MIN','@MON','@MyDocumentsDir','@NumParams','@OSBuild','@OSLang', - '@OSServicePack','@OSTYPE','@OSVersion','@ProcessorArch', - '@ProgramFilesDir','@ProgramsCommonDir','@ProgramsDir','@ScriptDir', - '@ScriptFullPath','@ScriptLineNumber','@ScriptName','@SEC', - '@StartMenuCommonDir','@StartMenuDir','@StartupCommonDir', - '@StartupDir','@SW_DISABLE','@SW_ENABLE','@SW_HIDE','@SW_LOCK', - '@SW_MAXIMIZE','@SW_MINIMIZE','@SW_RESTORE','@SW_SHOW', - '@SW_SHOWDEFAULT','@SW_SHOWMAXIMIZED','@SW_SHOWMINIMIZED', - '@SW_SHOWMINNOACTIVE','@SW_SHOWNA','@SW_SHOWNOACTIVATE', - '@SW_SHOWNORMAL','@SW_UNLOCK','@SystemDir','@TAB','@TempDir', - '@TRAY_ID','@TrayIconFlashing','@TrayIconVisible','@UserName', - '@UserProfileDir','@WDAY','@WindowsDir','@WorkingDir','@YDAY', - '@YEAR' - ), - 3 => array( - 'Abs','ACos','AdlibDisable','AdlibEnable','Asc','AscW','ASin', - 'Assign','ATan','AutoItSetOption','AutoItWinGetTitle', - 'AutoItWinSetTitle','Beep','Binary','BinaryLen','BinaryMid', - 'BinaryToString','BitAND','BitNOT','BitOR','BitRotate','BitShift', - 'BitXOR','BlockInput','Break','Call','CDTray','Ceiling','Chr', - 'ChrW','ClipGet','ClipPut','ConsoleRead','ConsoleWrite', - 'ConsoleWriteError','ControlClick','ControlCommand', - 'ControlDisable','ControlEnable','ControlFocus','ControlGetFocus', - 'ControlGetHandle','ControlGetPos','ControlGetText','ControlHide', - 'ControlListView','ControlMove','ControlSend','ControlSetText', - 'ControlShow','ControlTreeView','Cos','Dec','DirCopy','DirCreate', - 'DirGetSize','DirMove','DirRemove','DllCall','DllCallbackFree', - 'DllCallbackGetPtr','DllCallbackRegister','DllClose','DllOpen', - 'DllStructCreate','DllStructGetData','DllStructGetPtr', - 'DllStructGetSize','DllStructSetData','DriveGetDrive', - 'DriveGetFileSystem','DriveGetLabel','DriveGetSerial', - 'DriveGetType','DriveMapAdd','DriveMapDel','DriveMapGet', - 'DriveSetLabel','DriveSpaceFree','DriveSpaceTotal','DriveStatus', - 'EnvGet','EnvSet','EnvUpdate','Eval','Execute','Exp', - 'FileChangeDir','FileClose','FileCopy','FileCreateNTFSLink', - 'FileCreateShortcut','FileDelete','FileExists','FileFindFirstFile', - 'FileFindNextFile','FileGetAttrib','FileGetLongName', - 'FileGetShortcut','FileGetShortName','FileGetSize','FileGetTime', - 'FileGetVersion','FileInstall','FileMove','FileOpen', - 'FileOpenDialog','FileRead','FileReadLine','FileRecycle', - 'FileRecycleEmpty','FileSaveDialog','FileSelectFolder', - 'FileSetAttrib','FileSetTime','FileWrite','FileWriteLine','Floor', - 'FtpSetProxy','GUICreate','GUICtrlCreateAvi','GUICtrlCreateButton', - 'GUICtrlCreateCheckbox','GUICtrlCreateCombo', - 'GUICtrlCreateContextMenu','GUICtrlCreateDate','GUICtrlCreateDummy', - 'GUICtrlCreateEdit','GUICtrlCreateGraphic','GUICtrlCreateGroup', - 'GUICtrlCreateIcon','GUICtrlCreateInput','GUICtrlCreateLabel', - 'GUICtrlCreateList','GUICtrlCreateListView', - 'GUICtrlCreateListViewItem','GUICtrlCreateMenu', - 'GUICtrlCreateMenuItem','GUICtrlCreateMonthCal','GUICtrlCreateObj', - 'GUICtrlCreatePic','GUICtrlCreateProgress','GUICtrlCreateRadio', - 'GUICtrlCreateSlider','GUICtrlCreateTab','GUICtrlCreateTabItem', - 'GUICtrlCreateTreeView','GUICtrlCreateTreeViewItem', - 'GUICtrlCreateUpdown','GUICtrlDelete','GUICtrlGetHandle', - 'GUICtrlGetState','GUICtrlRead','GUICtrlRecvMsg', - 'GUICtrlRegisterListViewSort','GUICtrlSendMsg','GUICtrlSendToDummy', - 'GUICtrlSetBkColor','GUICtrlSetColor','GUICtrlSetCursor', - 'GUICtrlSetData','GUICtrlSetFont','GUICtrlSetDefColor', - 'GUICtrlSetDefBkColor','GUICtrlSetGraphic','GUICtrlSetImage', - 'GUICtrlSetLimit','GUICtrlSetOnEvent','GUICtrlSetPos', - 'GUICtrlSetResizing','GUICtrlSetState','GUICtrlSetStyle', - 'GUICtrlSetTip','GUIDelete','GUIGetCursorInfo','GUIGetMsg', - 'GUIGetStyle','GUIRegisterMsg','GUISetAccelerators()', - 'GUISetBkColor','GUISetCoord','GUISetCursor','GUISetFont', - 'GUISetHelp','GUISetIcon','GUISetOnEvent','GUISetState', - 'GUISetStyle','GUIStartGroup','GUISwitch','Hex','HotKeySet', - 'HttpSetProxy','HWnd','InetGet','InetGetSize','IniDelete','IniRead', - 'IniReadSection','IniReadSectionNames','IniRenameSection', - 'IniWrite','IniWriteSection','InputBox','Int','IsAdmin','IsArray', - 'IsBinary','IsBool','IsDeclared','IsDllStruct','IsFloat','IsHWnd', - 'IsInt','IsKeyword','IsNumber','IsObj','IsPtr','IsString','Log', - 'MemGetStats','Mod','MouseClick','MouseClickDrag','MouseDown', - 'MouseGetCursor','MouseGetPos','MouseMove','MouseUp','MouseWheel', - 'MsgBox','Number','ObjCreate','ObjEvent','ObjGet','ObjName','Opt', - 'Ping','PixelChecksum','PixelGetColor','PixelSearch','PluginClose', - 'PluginOpen','ProcessClose','ProcessExists','ProcessGetStats', - 'ProcessList','ProcessSetPriority','ProcessWait','ProcessWaitClose', - 'ProgressOff','ProgressOn','ProgressSet','Ptr','Random','RegDelete', - 'RegEnumKey','RegEnumVal','RegRead','RegWrite','Round','Run', - 'RunAs','RunAsWait','RunWait','Send','SendKeepActive','SetError', - 'SetExtended','ShellExecute','ShellExecuteWait','Shutdown','Sin', - 'Sleep','SoundPlay','SoundSetWaveVolume','SplashImageOn', - 'SplashOff','SplashTextOn','Sqrt','SRandom','StatusbarGetText', - 'StderrRead','StdinWrite','StdioClose','StdoutRead','String', - 'StringAddCR','StringCompare','StringFormat','StringInStr', - 'StringIsAlNum','StringIsAlpha','StringIsASCII','StringIsDigit', - 'StringIsFloat','StringIsInt','StringIsLower','StringIsSpace', - 'StringIsUpper','StringIsXDigit','StringLeft','StringLen', - 'StringLower','StringMid','StringRegExp','StringRegExpReplace', - 'StringReplace','StringRight','StringSplit','StringStripCR', - 'StringStripWS','StringToBinary','StringTrimLeft','StringTrimRight', - 'StringUpper','Tan','TCPAccept','TCPCloseSocket','TCPConnect', - 'TCPListen','TCPNameToIP','TCPRecv','TCPSend','TCPShutdown', - 'TCPStartup','TimerDiff','TimerInit','ToolTip','TrayCreateItem', - 'TrayCreateMenu','TrayGetMsg','TrayItemDelete','TrayItemGetHandle', - 'TrayItemGetState','TrayItemGetText','TrayItemSetOnEvent', - 'TrayItemSetState','TrayItemSetText','TraySetClick','TraySetIcon', - 'TraySetOnEvent','TraySetPauseIcon','TraySetState','TraySetToolTip', - 'TrayTip','UBound','UDPBind','UDPCloseSocket','UDPOpen','UDPRecv', - 'UDPSend','UDPShutdown','UDPStartup','VarGetType','WinActivate', - 'WinActive','WinClose','WinExists','WinFlash','WinGetCaretPos', - 'WinGetClassList','WinGetClientSize','WinGetHandle','WinGetPos', - 'WinGetProcess','WinGetState','WinGetText','WinGetTitle','WinKill', - 'WinList','WinMenuSelectItem','WinMinimizeAll','WinMinimizeAllUndo', - 'WinMove','WinSetOnTop','WinSetState','WinSetTitle','WinSetTrans', - 'WinWait','WinWaitActive','WinWaitClose','WinWaitNotActive' - ), - 4 => array( - 'ArrayAdd','ArrayBinarySearch','ArrayConcatenate','ArrayDelete', - 'ArrayDisplay','ArrayFindAll','ArrayInsert','ArrayMax', - 'ArrayMaxIndex','ArrayMin','ArrayMinIndex','ArrayPop','ArrayPush', - 'ArrayReverse','ArraySearch','ArraySort','ArraySwap','ArrayToClip', - 'ArrayToString','ArrayTrim','ChooseColor','ChooseFont', - 'ClipBoard_ChangeChain','ClipBoard_Close','ClipBoard_CountFormats', - 'ClipBoard_Empty','ClipBoard_EnumFormats','ClipBoard_FormatStr', - 'ClipBoard_GetData','ClipBoard_GetDataEx','ClipBoard_GetFormatName', - 'ClipBoard_GetOpenWindow','ClipBoard_GetOwner', - 'ClipBoard_GetPriorityFormat','ClipBoard_GetSequenceNumber', - 'ClipBoard_GetViewer','ClipBoard_IsFormatAvailable', - 'ClipBoard_Open','ClipBoard_RegisterFormat','ClipBoard_SetData', - 'ClipBoard_SetDataEx','ClipBoard_SetViewer','ClipPutFile', - 'ColorConvertHSLtoRGB','ColorConvertRGBtoHSL','ColorGetBlue', - 'ColorGetGreen','ColorGetRed','Date_Time_CompareFileTime', - 'Date_Time_DOSDateTimeToArray','Date_Time_DOSDateTimeToFileTime', - 'Date_Time_DOSDateTimeToStr','Date_Time_DOSDateToArray', - 'Date_Time_DOSDateToStr','Date_Time_DOSTimeToArray', - 'Date_Time_DOSTimeToStr','Date_Time_EncodeFileTime', - 'Date_Time_EncodeSystemTime','Date_Time_FileTimeToArray', - 'Date_Time_FileTimeToDOSDateTime', - 'Date_Time_FileTimeToLocalFileTime','Date_Time_FileTimeToStr', - 'Date_Time_FileTimeToSystemTime','Date_Time_GetFileTime', - 'Date_Time_GetLocalTime','Date_Time_GetSystemTime', - 'Date_Time_GetSystemTimeAdjustment', - 'Date_Time_GetSystemTimeAsFileTime', - 'Date_Time_GetSystemTimes','Date_Time_GetTickCount', - 'Date_Time_GetTimeZoneInformation', - 'Date_Time_LocalFileTimeToFileTime','Date_Time_SetFileTime', - 'Date_Time_SetLocalTime','Date_Time_SetSystemTime', - 'Date_Time_SetSystemTimeAdjustment', - 'Date_Time_SetTimeZoneInformation','Date_Time_SystemTimeToArray', - 'Date_Time_SystemTimeToDateStr','Date_Time_SystemTimeToDateTimeStr', - 'Date_Time_SystemTimeToFileTime','Date_Time_SystemTimeToTimeStr', - 'Date_Time_SystemTimeToTzSpecificLocalTime', - 'Date_Time_TzSpecificLocalTimeToSystemTime','DateAdd', - 'DateDayOfWeek','DateDaysInMonth','DateDiff','DateIsLeapYear', - 'DateIsValid','DateTimeFormat','DateTimeSplit','DateToDayOfWeek', - 'DateToDayOfWeekISO','DateToDayValue','DateToMonth', - 'DayValueToDate','DebugBugReportEnv','DebugOut','DebugSetup', - 'Degree','EventLog__Backup','EventLog__Clear','EventLog__Close', - 'EventLog__Count','EventLog__DeregisterSource','EventLog__Full', - 'EventLog__Notify','EventLog__Oldest','EventLog__Open', - 'EventLog__OpenBackup','EventLog__Read','EventLog__RegisterSource', - 'EventLog__Report','FileCountLines','FileCreate','FileListToArray', - 'FilePrint','FileReadToArray','FileWriteFromArray', - 'FileWriteLog','FileWriteToLine','GDIPlus_ArrowCapCreate', - 'GDIPlus_ArrowCapDispose','GDIPlus_ArrowCapGetFillState', - 'GDIPlus_ArrowCapGetHeight','GDIPlus_ArrowCapGetMiddleInset', - 'GDIPlus_ArrowCapGetWidth','GDIPlus_ArrowCapSetFillState', - 'GDIPlus_ArrowCapSetHeight','GDIPlus_ArrowCapSetMiddleInset', - 'GDIPlus_ArrowCapSetWidth','GDIPlus_BitmapCloneArea', - 'GDIPlus_BitmapCreateFromFile','GDIPlus_BitmapCreateFromGraphics', - 'GDIPlus_BitmapCreateFromHBITMAP', - 'GDIPlus_BitmapCreateHBITMAPFromBitmap','GDIPlus_BitmapDispose', - 'GDIPlus_BitmapLockBits','GDIPlus_BitmapUnlockBits', - 'GDIPlus_BrushClone','GDIPlus_BrushCreateSolid', - 'GDIPlus_BrushDispose','GDIPlus_BrushGetType', - 'GDIPlus_CustomLineCapDispose','GDIPlus_Decoders', - 'GDIPlus_DecodersGetCount','GDIPlus_DecodersGetSize', - 'GDIPlus_Encoders','GDIPlus_EncodersGetCLSID', - 'GDIPlus_EncodersGetCount','GDIPlus_EncodersGetParamList', - 'GDIPlus_EncodersGetParamListSize','GDIPlus_EncodersGetSize', - 'GDIPlus_FontCreate','GDIPlus_FontDispose', - 'GDIPlus_FontFamilyCreate','GDIPlus_FontFamilyDispose', - 'GDIPlus_GraphicsClear','GDIPlus_GraphicsCreateFromHDC', - 'GDIPlus_GraphicsCreateFromHWND','GDIPlus_GraphicsDispose', - 'GDIPlus_GraphicsDrawArc','GDIPlus_GraphicsDrawBezier', - 'GDIPlus_GraphicsDrawClosedCurve','GDIPlus_GraphicsDrawCurve', - 'GDIPlus_GraphicsDrawEllipse','GDIPlus_GraphicsDrawImage', - 'GDIPlus_GraphicsDrawImageRect','GDIPlus_GraphicsDrawImageRectRect', - 'GDIPlus_GraphicsDrawLine','GDIPlus_GraphicsDrawPie', - 'GDIPlus_GraphicsDrawPolygon','GDIPlus_GraphicsDrawRect', - 'GDIPlus_GraphicsDrawString','GDIPlus_GraphicsDrawStringEx', - 'GDIPlus_GraphicsFillClosedCurve','GDIPlus_GraphicsFillEllipse', - 'GDIPlus_GraphicsFillPie','GDIPlus_GraphicsFillRect', - 'GDIPlus_GraphicsGetDC','GDIPlus_GraphicsGetSmoothingMode', - 'GDIPlus_GraphicsMeasureString','GDIPlus_GraphicsReleaseDC', - 'GDIPlus_GraphicsSetSmoothingMode','GDIPlus_GraphicsSetTransform', - 'GDIPlus_ImageDispose','GDIPlus_ImageGetGraphicsContext', - 'GDIPlus_ImageGetHeight','GDIPlus_ImageGetWidth', - 'GDIPlus_ImageLoadFromFile','GDIPlus_ImageSaveToFile', - 'GDIPlus_ImageSaveToFileEx','GDIPlus_MatrixCreate', - 'GDIPlus_MatrixDispose','GDIPlus_MatrixRotate','GDIPlus_ParamAdd', - 'GDIPlus_ParamInit','GDIPlus_PenCreate','GDIPlus_PenDispose', - 'GDIPlus_PenGetAlignment','GDIPlus_PenGetColor', - 'GDIPlus_PenGetCustomEndCap','GDIPlus_PenGetDashCap', - 'GDIPlus_PenGetDashStyle','GDIPlus_PenGetEndCap', - 'GDIPlus_PenGetWidth','GDIPlus_PenSetAlignment', - 'GDIPlus_PenSetColor','GDIPlus_PenSetCustomEndCap', - 'GDIPlus_PenSetDashCap','GDIPlus_PenSetDashStyle', - 'GDIPlus_PenSetEndCap','GDIPlus_PenSetWidth','GDIPlus_RectFCreate', - 'GDIPlus_Shutdown','GDIPlus_Startup','GDIPlus_StringFormatCreate', - 'GDIPlus_StringFormatDispose','GetIP','GUICtrlAVI_Close', - 'GUICtrlAVI_Create','GUICtrlAVI_Destroy','GUICtrlAVI_Open', - 'GUICtrlAVI_OpenEx','GUICtrlAVI_Play','GUICtrlAVI_Seek', - 'GUICtrlAVI_Show','GUICtrlAVI_Stop','GUICtrlButton_Click', - 'GUICtrlButton_Create','GUICtrlButton_Destroy', - 'GUICtrlButton_Enable','GUICtrlButton_GetCheck', - 'GUICtrlButton_GetFocus','GUICtrlButton_GetIdealSize', - 'GUICtrlButton_GetImage','GUICtrlButton_GetImageList', - 'GUICtrlButton_GetState','GUICtrlButton_GetText', - 'GUICtrlButton_GetTextMargin','GUICtrlButton_SetCheck', - 'GUICtrlButton_SetFocus','GUICtrlButton_SetImage', - 'GUICtrlButton_SetImageList','GUICtrlButton_SetSize', - 'GUICtrlButton_SetState','GUICtrlButton_SetStyle', - 'GUICtrlButton_SetText','GUICtrlButton_SetTextMargin', - 'GUICtrlButton_Show','GUICtrlComboBox_AddDir', - 'GUICtrlComboBox_AddString','GUICtrlComboBox_AutoComplete', - 'GUICtrlComboBox_BeginUpdate','GUICtrlComboBox_Create', - 'GUICtrlComboBox_DeleteString','GUICtrlComboBox_Destroy', - 'GUICtrlComboBox_EndUpdate','GUICtrlComboBox_FindString', - 'GUICtrlComboBox_FindStringExact','GUICtrlComboBox_GetComboBoxInfo', - 'GUICtrlComboBox_GetCount','GUICtrlComboBox_GetCurSel', - 'GUICtrlComboBox_GetDroppedControlRect', - 'GUICtrlComboBox_GetDroppedControlRectEx', - 'GUICtrlComboBox_GetDroppedState','GUICtrlComboBox_GetDroppedWidth', - 'GUICtrlComboBox_GetEditSel','GUICtrlComboBox_GetEditText', - 'GUICtrlComboBox_GetExtendedUI', - 'GUICtrlComboBox_GetHorizontalExtent', - 'GUICtrlComboBox_GetItemHeight','GUICtrlComboBox_GetLBText', - 'GUICtrlComboBox_GetLBTextLen','GUICtrlComboBox_GetList', - 'GUICtrlComboBox_GetListArray','GUICtrlComboBox_GetLocale', - 'GUICtrlComboBox_GetLocaleCountry','GUICtrlComboBox_GetLocaleLang', - 'GUICtrlComboBox_GetLocalePrimLang', - 'GUICtrlComboBox_GetLocaleSubLang','GUICtrlComboBox_GetMinVisible', - 'GUICtrlComboBox_GetTopIndex','GUICtrlComboBox_InitStorage', - 'GUICtrlComboBox_InsertString','GUICtrlComboBox_LimitText', - 'GUICtrlComboBox_ReplaceEditSel','GUICtrlComboBox_ResetContent', - 'GUICtrlComboBox_SelectString','GUICtrlComboBox_SetCurSel', - 'GUICtrlComboBox_SetDroppedWidth','GUICtrlComboBox_SetEditSel', - 'GUICtrlComboBox_SetEditText','GUICtrlComboBox_SetExtendedUI', - 'GUICtrlComboBox_SetHorizontalExtent', - 'GUICtrlComboBox_SetItemHeight','GUICtrlComboBox_SetMinVisible', - 'GUICtrlComboBox_SetTopIndex','GUICtrlComboBox_ShowDropDown', - 'GUICtrlComboBoxEx_AddDir','GUICtrlComboBoxEx_AddString', - 'GUICtrlComboBoxEx_BeginUpdate','GUICtrlComboBoxEx_Create', - 'GUICtrlComboBoxEx_CreateSolidBitMap', - 'GUICtrlComboBoxEx_DeleteString','GUICtrlComboBoxEx_Destroy', - 'GUICtrlComboBoxEx_EndUpdate','GUICtrlComboBoxEx_FindStringExact', - 'GUICtrlComboBoxEx_GetComboBoxInfo', - 'GUICtrlComboBoxEx_GetComboControl','GUICtrlComboBoxEx_GetCount', - 'GUICtrlComboBoxEx_GetCurSel', - 'GUICtrlComboBoxEx_GetDroppedControlRect', - 'GUICtrlComboBoxEx_GetDroppedControlRectEx', - 'GUICtrlComboBoxEx_GetDroppedState', - 'GUICtrlComboBoxEx_GetDroppedWidth', - 'GUICtrlComboBoxEx_GetEditControl','GUICtrlComboBoxEx_GetEditSel', - 'GUICtrlComboBoxEx_GetEditText', - 'GUICtrlComboBoxEx_GetExtendedStyle', - 'GUICtrlComboBoxEx_GetExtendedUI','GUICtrlComboBoxEx_GetImageList', - 'GUICtrlComboBoxEx_GetItem','GUICtrlComboBoxEx_GetItemEx', - 'GUICtrlComboBoxEx_GetItemHeight','GUICtrlComboBoxEx_GetItemImage', - 'GUICtrlComboBoxEx_GetItemIndent', - 'GUICtrlComboBoxEx_GetItemOverlayImage', - 'GUICtrlComboBoxEx_GetItemParam', - 'GUICtrlComboBoxEx_GetItemSelectedImage', - 'GUICtrlComboBoxEx_GetItemText','GUICtrlComboBoxEx_GetItemTextLen', - 'GUICtrlComboBoxEx_GetList','GUICtrlComboBoxEx_GetListArray', - 'GUICtrlComboBoxEx_GetLocale','GUICtrlComboBoxEx_GetLocaleCountry', - 'GUICtrlComboBoxEx_GetLocaleLang', - 'GUICtrlComboBoxEx_GetLocalePrimLang', - 'GUICtrlComboBoxEx_GetLocaleSubLang', - 'GUICtrlComboBoxEx_GetMinVisible','GUICtrlComboBoxEx_GetTopIndex', - 'GUICtrlComboBoxEx_InitStorage','GUICtrlComboBoxEx_InsertString', - 'GUICtrlComboBoxEx_LimitText','GUICtrlComboBoxEx_ReplaceEditSel', - 'GUICtrlComboBoxEx_ResetContent','GUICtrlComboBoxEx_SetCurSel', - 'GUICtrlComboBoxEx_SetDroppedWidth','GUICtrlComboBoxEx_SetEditSel', - 'GUICtrlComboBoxEx_SetEditText', - 'GUICtrlComboBoxEx_SetExtendedStyle', - 'GUICtrlComboBoxEx_SetExtendedUI','GUICtrlComboBoxEx_SetImageList', - 'GUICtrlComboBoxEx_SetItem','GUICtrlComboBoxEx_SetItemEx', - 'GUICtrlComboBoxEx_SetItemHeight','GUICtrlComboBoxEx_SetItemImage', - 'GUICtrlComboBoxEx_SetItemIndent', - 'GUICtrlComboBoxEx_SetItemOverlayImage', - 'GUICtrlComboBoxEx_SetItemParam', - 'GUICtrlComboBoxEx_SetItemSelectedImage', - 'GUICtrlComboBoxEx_SetMinVisible','GUICtrlComboBoxEx_SetTopIndex', - 'GUICtrlComboBoxEx_ShowDropDown','GUICtrlDTP_Create', - 'GUICtrlDTP_Destroy','GUICtrlDTP_GetMCColor','GUICtrlDTP_GetMCFont', - 'GUICtrlDTP_GetMonthCal','GUICtrlDTP_GetRange', - 'GUICtrlDTP_GetRangeEx','GUICtrlDTP_GetSystemTime', - 'GUICtrlDTP_GetSystemTimeEx','GUICtrlDTP_SetFormat', - 'GUICtrlDTP_SetMCColor','GUICtrlDTP_SetMCFont', - 'GUICtrlDTP_SetRange','GUICtrlDTP_SetRangeEx', - 'GUICtrlDTP_SetSystemTime','GUICtrlDTP_SetSystemTimeEx', - 'GUICtrlEdit_AppendText','GUICtrlEdit_BeginUpdate', - 'GUICtrlEdit_CanUndo','GUICtrlEdit_CharFromPos', - 'GUICtrlEdit_Create','GUICtrlEdit_Destroy', - 'GUICtrlEdit_EmptyUndoBuffer','GUICtrlEdit_EndUpdate', - 'GUICtrlEdit_Find','GUICtrlEdit_FmtLines', - 'GUICtrlEdit_GetFirstVisibleLine','GUICtrlEdit_GetLimitText', - 'GUICtrlEdit_GetLine','GUICtrlEdit_GetLineCount', - 'GUICtrlEdit_GetMargins','GUICtrlEdit_GetModify', - 'GUICtrlEdit_GetPasswordChar','GUICtrlEdit_GetRECT', - 'GUICtrlEdit_GetRECTEx','GUICtrlEdit_GetSel','GUICtrlEdit_GetText', - 'GUICtrlEdit_GetTextLen','GUICtrlEdit_HideBalloonTip', - 'GUICtrlEdit_InsertText','GUICtrlEdit_LineFromChar', - 'GUICtrlEdit_LineIndex','GUICtrlEdit_LineLength', - 'GUICtrlEdit_LineScroll','GUICtrlEdit_PosFromChar', - 'GUICtrlEdit_ReplaceSel','GUICtrlEdit_Scroll', - 'GUICtrlEdit_SetLimitText','GUICtrlEdit_SetMargins', - 'GUICtrlEdit_SetModify','GUICtrlEdit_SetPasswordChar', - 'GUICtrlEdit_SetReadOnly','GUICtrlEdit_SetRECT', - 'GUICtrlEdit_SetRECTEx','GUICtrlEdit_SetRECTNP', - 'GUICtrlEdit_SetRectNPEx','GUICtrlEdit_SetSel', - 'GUICtrlEdit_SetTabStops','GUICtrlEdit_SetText', - 'GUICtrlEdit_ShowBalloonTip','GUICtrlEdit_Undo', - 'GUICtrlHeader_AddItem','GUICtrlHeader_ClearFilter', - 'GUICtrlHeader_ClearFilterAll','GUICtrlHeader_Create', - 'GUICtrlHeader_CreateDragImage','GUICtrlHeader_DeleteItem', - 'GUICtrlHeader_Destroy','GUICtrlHeader_EditFilter', - 'GUICtrlHeader_GetBitmapMargin','GUICtrlHeader_GetImageList', - 'GUICtrlHeader_GetItem','GUICtrlHeader_GetItemAlign', - 'GUICtrlHeader_GetItemBitmap','GUICtrlHeader_GetItemCount', - 'GUICtrlHeader_GetItemDisplay','GUICtrlHeader_GetItemFlags', - 'GUICtrlHeader_GetItemFormat','GUICtrlHeader_GetItemImage', - 'GUICtrlHeader_GetItemOrder','GUICtrlHeader_GetItemParam', - 'GUICtrlHeader_GetItemRect','GUICtrlHeader_GetItemRectEx', - 'GUICtrlHeader_GetItemText','GUICtrlHeader_GetItemWidth', - 'GUICtrlHeader_GetOrderArray','GUICtrlHeader_GetUnicodeFormat', - 'GUICtrlHeader_HitTest','GUICtrlHeader_InsertItem', - 'GUICtrlHeader_Layout','GUICtrlHeader_OrderToIndex', - 'GUICtrlHeader_SetBitmapMargin', - 'GUICtrlHeader_SetFilterChangeTimeout', - 'GUICtrlHeader_SetHotDivider','GUICtrlHeader_SetImageList', - 'GUICtrlHeader_SetItem','GUICtrlHeader_SetItemAlign', - 'GUICtrlHeader_SetItemBitmap','GUICtrlHeader_SetItemDisplay', - 'GUICtrlHeader_SetItemFlags','GUICtrlHeader_SetItemFormat', - 'GUICtrlHeader_SetItemImage','GUICtrlHeader_SetItemOrder', - 'GUICtrlHeader_SetItemParam','GUICtrlHeader_SetItemText', - 'GUICtrlHeader_SetItemWidth','GUICtrlHeader_SetOrderArray', - 'GUICtrlHeader_SetUnicodeFormat','GUICtrlIpAddress_ClearAddress', - 'GUICtrlIpAddress_Create','GUICtrlIpAddress_Destroy', - 'GUICtrlIpAddress_Get','GUICtrlIpAddress_GetArray', - 'GUICtrlIpAddress_GetEx','GUICtrlIpAddress_IsBlank', - 'GUICtrlIpAddress_Set','GUICtrlIpAddress_SetArray', - 'GUICtrlIpAddress_SetEx','GUICtrlIpAddress_SetFocus', - 'GUICtrlIpAddress_SetFont','GUICtrlIpAddress_SetRange', - 'GUICtrlIpAddress_ShowHide','GUICtrlListBox_AddFile', - 'GUICtrlListBox_AddString','GUICtrlListBox_BeginUpdate', - 'GUICtrlListBox_Create','GUICtrlListBox_DeleteString', - 'GUICtrlListBox_Destroy','GUICtrlListBox_Dir', - 'GUICtrlListBox_EndUpdate','GUICtrlListBox_FindInText', - 'GUICtrlListBox_FindString','GUICtrlListBox_GetAnchorIndex', - 'GUICtrlListBox_GetCaretIndex','GUICtrlListBox_GetCount', - 'GUICtrlListBox_GetCurSel','GUICtrlListBox_GetHorizontalExtent', - 'GUICtrlListBox_GetItemData','GUICtrlListBox_GetItemHeight', - 'GUICtrlListBox_GetItemRect','GUICtrlListBox_GetItemRectEx', - 'GUICtrlListBox_GetListBoxInfo','GUICtrlListBox_GetLocale', - 'GUICtrlListBox_GetLocaleCountry','GUICtrlListBox_GetLocaleLang', - 'GUICtrlListBox_GetLocalePrimLang', - 'GUICtrlListBox_GetLocaleSubLang','GUICtrlListBox_GetSel', - 'GUICtrlListBox_GetSelCount','GUICtrlListBox_GetSelItems', - 'GUICtrlListBox_GetSelItemsText','GUICtrlListBox_GetText', - 'GUICtrlListBox_GetTextLen','GUICtrlListBox_GetTopIndex', - 'GUICtrlListBox_InitStorage','GUICtrlListBox_InsertString', - 'GUICtrlListBox_ItemFromPoint','GUICtrlListBox_ReplaceString', - 'GUICtrlListBox_ResetContent','GUICtrlListBox_SelectString', - 'GUICtrlListBox_SelItemRange','GUICtrlListBox_SelItemRangeEx', - 'GUICtrlListBox_SetAnchorIndex','GUICtrlListBox_SetCaretIndex', - 'GUICtrlListBox_SetColumnWidth','GUICtrlListBox_SetCurSel', - 'GUICtrlListBox_SetHorizontalExtent','GUICtrlListBox_SetItemData', - 'GUICtrlListBox_SetItemHeight','GUICtrlListBox_SetLocale', - 'GUICtrlListBox_SetSel','GUICtrlListBox_SetTabStops', - 'GUICtrlListBox_SetTopIndex','GUICtrlListBox_Sort', - 'GUICtrlListBox_SwapString','GUICtrlListBox_UpdateHScroll', - 'GUICtrlListView_AddArray','GUICtrlListView_AddColumn', - 'GUICtrlListView_AddItem','GUICtrlListView_AddSubItem', - 'GUICtrlListView_ApproximateViewHeight', - 'GUICtrlListView_ApproximateViewRect', - 'GUICtrlListView_ApproximateViewWidth','GUICtrlListView_Arrange', - 'GUICtrlListView_BeginUpdate','GUICtrlListView_CancelEditLabel', - 'GUICtrlListView_ClickItem','GUICtrlListView_CopyItems', - 'GUICtrlListView_Create','GUICtrlListView_CreateDragImage', - 'GUICtrlListView_CreateSolidBitMap', - 'GUICtrlListView_DeleteAllItems','GUICtrlListView_DeleteColumn', - 'GUICtrlListView_DeleteItem','GUICtrlListView_DeleteItemsSelected', - 'GUICtrlListView_Destroy','GUICtrlListView_DrawDragImage', - 'GUICtrlListView_EditLabel','GUICtrlListView_EnableGroupView', - 'GUICtrlListView_EndUpdate','GUICtrlListView_EnsureVisible', - 'GUICtrlListView_FindInText','GUICtrlListView_FindItem', - 'GUICtrlListView_FindNearest','GUICtrlListView_FindParam', - 'GUICtrlListView_FindText','GUICtrlListView_GetBkColor', - 'GUICtrlListView_GetBkImage','GUICtrlListView_GetCallbackMask', - 'GUICtrlListView_GetColumn','GUICtrlListView_GetColumnCount', - 'GUICtrlListView_GetColumnOrder', - 'GUICtrlListView_GetColumnOrderArray', - 'GUICtrlListView_GetColumnWidth','GUICtrlListView_GetCounterPage', - 'GUICtrlListView_GetEditControl', - 'GUICtrlListView_GetExtendedListViewStyle', - 'GUICtrlListView_GetGroupInfo', - 'GUICtrlListView_GetGroupViewEnabled','GUICtrlListView_GetHeader', - 'GUICtrlListView_GetHotCursor','GUICtrlListView_GetHotItem', - 'GUICtrlListView_GetHoverTime','GUICtrlListView_GetImageList', - 'GUICtrlListView_GetISearchString','GUICtrlListView_GetItem', - 'GUICtrlListView_GetItemChecked','GUICtrlListView_GetItemCount', - 'GUICtrlListView_GetItemCut','GUICtrlListView_GetItemDropHilited', - 'GUICtrlListView_GetItemEx','GUICtrlListView_GetItemFocused', - 'GUICtrlListView_GetItemGroupID','GUICtrlListView_GetItemImage', - 'GUICtrlListView_GetItemIndent','GUICtrlListView_GetItemParam', - 'GUICtrlListView_GetItemPosition', - 'GUICtrlListView_GetItemPositionX', - 'GUICtrlListView_GetItemPositionY','GUICtrlListView_GetItemRect', - 'GUICtrlListView_GetItemRectEx','GUICtrlListView_GetItemSelected', - 'GUICtrlListView_GetItemSpacing','GUICtrlListView_GetItemSpacingX', - 'GUICtrlListView_GetItemSpacingY','GUICtrlListView_GetItemState', - 'GUICtrlListView_GetItemStateImage','GUICtrlListView_GetItemText', - 'GUICtrlListView_GetItemTextArray', - 'GUICtrlListView_GetItemTextString','GUICtrlListView_GetNextItem', - 'GUICtrlListView_GetNumberOfWorkAreas','GUICtrlListView_GetOrigin', - 'GUICtrlListView_GetOriginX','GUICtrlListView_GetOriginY', - 'GUICtrlListView_GetOutlineColor', - 'GUICtrlListView_GetSelectedColumn', - 'GUICtrlListView_GetSelectedCount', - 'GUICtrlListView_GetSelectedIndices', - 'GUICtrlListView_GetSelectionMark','GUICtrlListView_GetStringWidth', - 'GUICtrlListView_GetSubItemRect','GUICtrlListView_GetTextBkColor', - 'GUICtrlListView_GetTextColor','GUICtrlListView_GetToolTips', - 'GUICtrlListView_GetTopIndex','GUICtrlListView_GetUnicodeFormat', - 'GUICtrlListView_GetView','GUICtrlListView_GetViewDetails', - 'GUICtrlListView_GetViewLarge','GUICtrlListView_GetViewList', - 'GUICtrlListView_GetViewRect','GUICtrlListView_GetViewSmall', - 'GUICtrlListView_GetViewTile','GUICtrlListView_HideColumn', - 'GUICtrlListView_HitTest','GUICtrlListView_InsertColumn', - 'GUICtrlListView_InsertGroup','GUICtrlListView_InsertItem', - 'GUICtrlListView_JustifyColumn','GUICtrlListView_MapIDToIndex', - 'GUICtrlListView_MapIndexToID','GUICtrlListView_RedrawItems', - 'GUICtrlListView_RegisterSortCallBack', - 'GUICtrlListView_RemoveAllGroups','GUICtrlListView_RemoveGroup', - 'GUICtrlListView_Scroll','GUICtrlListView_SetBkColor', - 'GUICtrlListView_SetBkImage','GUICtrlListView_SetCallBackMask', - 'GUICtrlListView_SetColumn','GUICtrlListView_SetColumnOrder', - 'GUICtrlListView_SetColumnOrderArray', - 'GUICtrlListView_SetColumnWidth', - 'GUICtrlListView_SetExtendedListViewStyle', - 'GUICtrlListView_SetGroupInfo','GUICtrlListView_SetHotItem', - 'GUICtrlListView_SetHoverTime','GUICtrlListView_SetIconSpacing', - 'GUICtrlListView_SetImageList','GUICtrlListView_SetItem', - 'GUICtrlListView_SetItemChecked','GUICtrlListView_SetItemCount', - 'GUICtrlListView_SetItemCut','GUICtrlListView_SetItemDropHilited', - 'GUICtrlListView_SetItemEx','GUICtrlListView_SetItemFocused', - 'GUICtrlListView_SetItemGroupID','GUICtrlListView_SetItemImage', - 'GUICtrlListView_SetItemIndent','GUICtrlListView_SetItemParam', - 'GUICtrlListView_SetItemPosition', - 'GUICtrlListView_SetItemPosition32', - 'GUICtrlListView_SetItemSelected','GUICtrlListView_SetItemState', - 'GUICtrlListView_SetItemStateImage','GUICtrlListView_SetItemText', - 'GUICtrlListView_SetOutlineColor', - 'GUICtrlListView_SetSelectedColumn', - 'GUICtrlListView_SetSelectionMark','GUICtrlListView_SetTextBkColor', - 'GUICtrlListView_SetTextColor','GUICtrlListView_SetToolTips', - 'GUICtrlListView_SetUnicodeFormat','GUICtrlListView_SetView', - 'GUICtrlListView_SetWorkAreas','GUICtrlListView_SimpleSort', - 'GUICtrlListView_SortItems','GUICtrlListView_SubItemHitTest', - 'GUICtrlListView_UnRegisterSortCallBack', - 'GUICtrlMenu_AddMenuItem','GUICtrlMenu_AppendMenu', - 'GUICtrlMenu_CheckMenuItem','GUICtrlMenu_CheckRadioItem', - 'GUICtrlMenu_CreateMenu','GUICtrlMenu_CreatePopup', - 'GUICtrlMenu_DeleteMenu','GUICtrlMenu_DestroyMenu', - 'GUICtrlMenu_DrawMenuBar','GUICtrlMenu_EnableMenuItem', - 'GUICtrlMenu_FindItem','GUICtrlMenu_FindParent', - 'GUICtrlMenu_GetItemBmp','GUICtrlMenu_GetItemBmpChecked', - 'GUICtrlMenu_GetItemBmpUnchecked','GUICtrlMenu_GetItemChecked', - 'GUICtrlMenu_GetItemCount','GUICtrlMenu_GetItemData', - 'GUICtrlMenu_GetItemDefault','GUICtrlMenu_GetItemDisabled', - 'GUICtrlMenu_GetItemEnabled','GUICtrlMenu_GetItemGrayed', - 'GUICtrlMenu_GetItemHighlighted','GUICtrlMenu_GetItemID', - 'GUICtrlMenu_GetItemInfo','GUICtrlMenu_GetItemRect', - 'GUICtrlMenu_GetItemRectEx','GUICtrlMenu_GetItemState', - 'GUICtrlMenu_GetItemStateEx','GUICtrlMenu_GetItemSubMenu', - 'GUICtrlMenu_GetItemText','GUICtrlMenu_GetItemType', - 'GUICtrlMenu_GetMenu','GUICtrlMenu_GetMenuBackground', - 'GUICtrlMenu_GetMenuBarInfo','GUICtrlMenu_GetMenuContextHelpID', - 'GUICtrlMenu_GetMenuData','GUICtrlMenu_GetMenuDefaultItem', - 'GUICtrlMenu_GetMenuHeight','GUICtrlMenu_GetMenuInfo', - 'GUICtrlMenu_GetMenuStyle','GUICtrlMenu_GetSystemMenu', - 'GUICtrlMenu_InsertMenuItem','GUICtrlMenu_InsertMenuItemEx', - 'GUICtrlMenu_IsMenu','GUICtrlMenu_LoadMenu', - 'GUICtrlMenu_MapAccelerator','GUICtrlMenu_MenuItemFromPoint', - 'GUICtrlMenu_RemoveMenu','GUICtrlMenu_SetItemBitmaps', - 'GUICtrlMenu_SetItemBmp','GUICtrlMenu_SetItemBmpChecked', - 'GUICtrlMenu_SetItemBmpUnchecked','GUICtrlMenu_SetItemChecked', - 'GUICtrlMenu_SetItemData','GUICtrlMenu_SetItemDefault', - 'GUICtrlMenu_SetItemDisabled','GUICtrlMenu_SetItemEnabled', - 'GUICtrlMenu_SetItemGrayed','GUICtrlMenu_SetItemHighlighted', - 'GUICtrlMenu_SetItemID','GUICtrlMenu_SetItemInfo', - 'GUICtrlMenu_SetItemState','GUICtrlMenu_SetItemSubMenu', - 'GUICtrlMenu_SetItemText','GUICtrlMenu_SetItemType', - 'GUICtrlMenu_SetMenu','GUICtrlMenu_SetMenuBackground', - 'GUICtrlMenu_SetMenuContextHelpID','GUICtrlMenu_SetMenuData', - 'GUICtrlMenu_SetMenuDefaultItem','GUICtrlMenu_SetMenuHeight', - 'GUICtrlMenu_SetMenuInfo','GUICtrlMenu_SetMenuStyle', - 'GUICtrlMenu_TrackPopupMenu','GUICtrlMonthCal_Create', - 'GUICtrlMonthCal_Destroy','GUICtrlMonthCal_GetColor', - 'GUICtrlMonthCal_GetColorArray','GUICtrlMonthCal_GetCurSel', - 'GUICtrlMonthCal_GetCurSelStr','GUICtrlMonthCal_GetFirstDOW', - 'GUICtrlMonthCal_GetFirstDOWStr','GUICtrlMonthCal_GetMaxSelCount', - 'GUICtrlMonthCal_GetMaxTodayWidth', - 'GUICtrlMonthCal_GetMinReqHeight','GUICtrlMonthCal_GetMinReqRect', - 'GUICtrlMonthCal_GetMinReqRectArray', - 'GUICtrlMonthCal_GetMinReqWidth','GUICtrlMonthCal_GetMonthDelta', - 'GUICtrlMonthCal_GetMonthRange','GUICtrlMonthCal_GetMonthRangeMax', - 'GUICtrlMonthCal_GetMonthRangeMaxStr', - 'GUICtrlMonthCal_GetMonthRangeMin', - 'GUICtrlMonthCal_GetMonthRangeMinStr', - 'GUICtrlMonthCal_GetMonthRangeSpan','GUICtrlMonthCal_GetRange', - 'GUICtrlMonthCal_GetRangeMax','GUICtrlMonthCal_GetRangeMaxStr', - 'GUICtrlMonthCal_GetRangeMin','GUICtrlMonthCal_GetRangeMinStr', - 'GUICtrlMonthCal_GetSelRange','GUICtrlMonthCal_GetSelRangeMax', - 'GUICtrlMonthCal_GetSelRangeMaxStr', - 'GUICtrlMonthCal_GetSelRangeMin', - 'GUICtrlMonthCal_GetSelRangeMinStr','GUICtrlMonthCal_GetToday', - 'GUICtrlMonthCal_GetTodayStr','GUICtrlMonthCal_GetUnicodeFormat', - 'GUICtrlMonthCal_HitTest','GUICtrlMonthCal_SetColor', - 'GUICtrlMonthCal_SetCurSel','GUICtrlMonthCal_SetDayState', - 'GUICtrlMonthCal_SetFirstDOW','GUICtrlMonthCal_SetMaxSelCount', - 'GUICtrlMonthCal_SetMonthDelta','GUICtrlMonthCal_SetRange', - 'GUICtrlMonthCal_SetSelRange','GUICtrlMonthCal_SetToday', - 'GUICtrlMonthCal_SetUnicodeFormat','GUICtrlRebar_AddBand', - 'GUICtrlRebar_AddToolBarBand','GUICtrlRebar_BeginDrag', - 'GUICtrlRebar_Create','GUICtrlRebar_DeleteBand', - 'GUICtrlRebar_Destroy','GUICtrlRebar_DragMove', - 'GUICtrlRebar_EndDrag','GUICtrlRebar_GetBandBackColor', - 'GUICtrlRebar_GetBandBorders','GUICtrlRebar_GetBandBordersEx', - 'GUICtrlRebar_GetBandChildHandle','GUICtrlRebar_GetBandChildSize', - 'GUICtrlRebar_GetBandCount','GUICtrlRebar_GetBandForeColor', - 'GUICtrlRebar_GetBandHeaderSize','GUICtrlRebar_GetBandID', - 'GUICtrlRebar_GetBandIdealSize','GUICtrlRebar_GetBandLength', - 'GUICtrlRebar_GetBandLParam','GUICtrlRebar_GetBandMargins', - 'GUICtrlRebar_GetBandMarginsEx','GUICtrlRebar_GetBandRect', - 'GUICtrlRebar_GetBandRectEx','GUICtrlRebar_GetBandStyle', - 'GUICtrlRebar_GetBandStyleBreak', - 'GUICtrlRebar_GetBandStyleChildEdge', - 'GUICtrlRebar_GetBandStyleFixedBMP', - 'GUICtrlRebar_GetBandStyleFixedSize', - 'GUICtrlRebar_GetBandStyleGripperAlways', - 'GUICtrlRebar_GetBandStyleHidden', - 'GUICtrlRebar_GetBandStyleHideTitle', - 'GUICtrlRebar_GetBandStyleNoGripper', - 'GUICtrlRebar_GetBandStyleTopAlign', - 'GUICtrlRebar_GetBandStyleUseChevron', - 'GUICtrlRebar_GetBandStyleVariableHeight', - 'GUICtrlRebar_GetBandText','GUICtrlRebar_GetBarHeight', - 'GUICtrlRebar_GetBKColor','GUICtrlRebar_GetColorScheme', - 'GUICtrlRebar_GetRowCount','GUICtrlRebar_GetRowHeight', - 'GUICtrlRebar_GetTextColor','GUICtrlRebar_GetToolTips', - 'GUICtrlRebar_GetUnicodeFormat','GUICtrlRebar_HitTest', - 'GUICtrlRebar_IDToIndex','GUICtrlRebar_MaximizeBand', - 'GUICtrlRebar_MinimizeBand','GUICtrlRebar_MoveBand', - 'GUICtrlRebar_SetBandBackColor','GUICtrlRebar_SetBandForeColor', - 'GUICtrlRebar_SetBandHeaderSize','GUICtrlRebar_SetBandID', - 'GUICtrlRebar_SetBandIdealSize','GUICtrlRebar_SetBandLength', - 'GUICtrlRebar_SetBandLParam','GUICtrlRebar_SetBandStyle', - 'GUICtrlRebar_SetBandStyleBreak', - 'GUICtrlRebar_SetBandStyleChildEdge', - 'GUICtrlRebar_SetBandStyleFixedBMP', - 'GUICtrlRebar_SetBandStyleFixedSize', - 'GUICtrlRebar_SetBandStyleGripperAlways', - 'GUICtrlRebar_SetBandStyleHidden', - 'GUICtrlRebar_SetBandStyleHideTitle', - 'GUICtrlRebar_SetBandStyleNoGripper', - 'GUICtrlRebar_SetBandStyleTopAlign', - 'GUICtrlRebar_SetBandStyleUseChevron', - 'GUICtrlRebar_SetBandStyleVariableHeight', - 'GUICtrlRebar_SetBandText','GUICtrlRebar_SetBKColor', - 'GUICtrlRebar_SetColorScheme','GUICtrlRebar_SetTextColor', - 'GUICtrlRebar_SetToolTips','GUICtrlRebar_SetUnicodeFormat', - 'GUICtrlRebar_ShowBand','GUICtrlSlider_ClearSel', - 'GUICtrlSlider_ClearTics','GUICtrlSlider_Create', - 'GUICtrlSlider_Destroy','GUICtrlSlider_GetBuddy', - 'GUICtrlSlider_GetChannelRect','GUICtrlSlider_GetLineSize', - 'GUICtrlSlider_GetNumTics','GUICtrlSlider_GetPageSize', - 'GUICtrlSlider_GetPos','GUICtrlSlider_GetPTics', - 'GUICtrlSlider_GetRange','GUICtrlSlider_GetRangeMax', - 'GUICtrlSlider_GetRangeMin','GUICtrlSlider_GetSel', - 'GUICtrlSlider_GetSelEnd','GUICtrlSlider_GetSelStart', - 'GUICtrlSlider_GetThumbLength','GUICtrlSlider_GetThumbRect', - 'GUICtrlSlider_GetThumbRectEx','GUICtrlSlider_GetTic', - 'GUICtrlSlider_GetTicPos','GUICtrlSlider_GetToolTips', - 'GUICtrlSlider_GetUnicodeFormat','GUICtrlSlider_SetBuddy', - 'GUICtrlSlider_SetLineSize','GUICtrlSlider_SetPageSize', - 'GUICtrlSlider_SetPos','GUICtrlSlider_SetRange', - 'GUICtrlSlider_SetRangeMax','GUICtrlSlider_SetRangeMin', - 'GUICtrlSlider_SetSel','GUICtrlSlider_SetSelEnd', - 'GUICtrlSlider_SetSelStart','GUICtrlSlider_SetThumbLength', - 'GUICtrlSlider_SetTic','GUICtrlSlider_SetTicFreq', - 'GUICtrlSlider_SetTipSide','GUICtrlSlider_SetToolTips', - 'GUICtrlSlider_SetUnicodeFormat','GUICtrlStatusBar_Create', - 'GUICtrlStatusBar_Destroy','GUICtrlStatusBar_EmbedControl', - 'GUICtrlStatusBar_GetBorders','GUICtrlStatusBar_GetBordersHorz', - 'GUICtrlStatusBar_GetBordersRect','GUICtrlStatusBar_GetBordersVert', - 'GUICtrlStatusBar_GetCount','GUICtrlStatusBar_GetHeight', - 'GUICtrlStatusBar_GetIcon','GUICtrlStatusBar_GetParts', - 'GUICtrlStatusBar_GetRect','GUICtrlStatusBar_GetRectEx', - 'GUICtrlStatusBar_GetText','GUICtrlStatusBar_GetTextFlags', - 'GUICtrlStatusBar_GetTextLength','GUICtrlStatusBar_GetTextLengthEx', - 'GUICtrlStatusBar_GetTipText','GUICtrlStatusBar_GetUnicodeFormat', - 'GUICtrlStatusBar_GetWidth','GUICtrlStatusBar_IsSimple', - 'GUICtrlStatusBar_Resize','GUICtrlStatusBar_SetBkColor', - 'GUICtrlStatusBar_SetIcon','GUICtrlStatusBar_SetMinHeight', - 'GUICtrlStatusBar_SetParts','GUICtrlStatusBar_SetSimple', - 'GUICtrlStatusBar_SetText','GUICtrlStatusBar_SetTipText', - 'GUICtrlStatusBar_SetUnicodeFormat','GUICtrlStatusBar_ShowHide', - 'GUICtrlTab_Create','GUICtrlTab_DeleteAllItems', - 'GUICtrlTab_DeleteItem','GUICtrlTab_DeselectAll', - 'GUICtrlTab_Destroy','GUICtrlTab_FindTab','GUICtrlTab_GetCurFocus', - 'GUICtrlTab_GetCurSel','GUICtrlTab_GetDisplayRect', - 'GUICtrlTab_GetDisplayRectEx','GUICtrlTab_GetExtendedStyle', - 'GUICtrlTab_GetImageList','GUICtrlTab_GetItem', - 'GUICtrlTab_GetItemCount','GUICtrlTab_GetItemImage', - 'GUICtrlTab_GetItemParam','GUICtrlTab_GetItemRect', - 'GUICtrlTab_GetItemRectEx','GUICtrlTab_GetItemState', - 'GUICtrlTab_GetItemText','GUICtrlTab_GetRowCount', - 'GUICtrlTab_GetToolTips','GUICtrlTab_GetUnicodeFormat', - 'GUICtrlTab_HighlightItem','GUICtrlTab_HitTest', - 'GUICtrlTab_InsertItem','GUICtrlTab_RemoveImage', - 'GUICtrlTab_SetCurFocus','GUICtrlTab_SetCurSel', - 'GUICtrlTab_SetExtendedStyle','GUICtrlTab_SetImageList', - 'GUICtrlTab_SetItem','GUICtrlTab_SetItemImage', - 'GUICtrlTab_SetItemParam','GUICtrlTab_SetItemSize', - 'GUICtrlTab_SetItemState','GUICtrlTab_SetItemText', - 'GUICtrlTab_SetMinTabWidth','GUICtrlTab_SetPadding', - 'GUICtrlTab_SetToolTips','GUICtrlTab_SetUnicodeFormat', - 'GUICtrlToolbar_AddBitmap','GUICtrlToolbar_AddButton', - 'GUICtrlToolbar_AddButtonSep','GUICtrlToolbar_AddString', - 'GUICtrlToolbar_ButtonCount','GUICtrlToolbar_CheckButton', - 'GUICtrlToolbar_ClickAccel','GUICtrlToolbar_ClickButton', - 'GUICtrlToolbar_ClickIndex','GUICtrlToolbar_CommandToIndex', - 'GUICtrlToolbar_Create','GUICtrlToolbar_Customize', - 'GUICtrlToolbar_DeleteButton','GUICtrlToolbar_Destroy', - 'GUICtrlToolbar_EnableButton','GUICtrlToolbar_FindToolbar', - 'GUICtrlToolbar_GetAnchorHighlight','GUICtrlToolbar_GetBitmapFlags', - 'GUICtrlToolbar_GetButtonBitmap','GUICtrlToolbar_GetButtonInfo', - 'GUICtrlToolbar_GetButtonInfoEx','GUICtrlToolbar_GetButtonParam', - 'GUICtrlToolbar_GetButtonRect','GUICtrlToolbar_GetButtonRectEx', - 'GUICtrlToolbar_GetButtonSize','GUICtrlToolbar_GetButtonState', - 'GUICtrlToolbar_GetButtonStyle','GUICtrlToolbar_GetButtonText', - 'GUICtrlToolbar_GetColorScheme', - 'GUICtrlToolbar_GetDisabledImageList', - 'GUICtrlToolbar_GetExtendedStyle','GUICtrlToolbar_GetHotImageList', - 'GUICtrlToolbar_GetHotItem','GUICtrlToolbar_GetImageList', - 'GUICtrlToolbar_GetInsertMark','GUICtrlToolbar_GetInsertMarkColor', - 'GUICtrlToolbar_GetMaxSize','GUICtrlToolbar_GetMetrics', - 'GUICtrlToolbar_GetPadding','GUICtrlToolbar_GetRows', - 'GUICtrlToolbar_GetString','GUICtrlToolbar_GetStyle', - 'GUICtrlToolbar_GetStyleAltDrag', - 'GUICtrlToolbar_GetStyleCustomErase','GUICtrlToolbar_GetStyleFlat', - 'GUICtrlToolbar_GetStyleList','GUICtrlToolbar_GetStyleRegisterDrop', - 'GUICtrlToolbar_GetStyleToolTips', - 'GUICtrlToolbar_GetStyleTransparent', - 'GUICtrlToolbar_GetStyleWrapable','GUICtrlToolbar_GetTextRows', - 'GUICtrlToolbar_GetToolTips','GUICtrlToolbar_GetUnicodeFormat', - 'GUICtrlToolbar_HideButton','GUICtrlToolbar_HighlightButton', - 'GUICtrlToolbar_HitTest','GUICtrlToolbar_IndexToCommand', - 'GUICtrlToolbar_InsertButton','GUICtrlToolbar_InsertMarkHitTest', - 'GUICtrlToolbar_IsButtonChecked','GUICtrlToolbar_IsButtonEnabled', - 'GUICtrlToolbar_IsButtonHidden', - 'GUICtrlToolbar_IsButtonHighlighted', - 'GUICtrlToolbar_IsButtonIndeterminate', - 'GUICtrlToolbar_IsButtonPressed','GUICtrlToolbar_LoadBitmap', - 'GUICtrlToolbar_LoadImages','GUICtrlToolbar_MapAccelerator', - 'GUICtrlToolbar_MoveButton','GUICtrlToolbar_PressButton', - 'GUICtrlToolbar_SetAnchorHighlight','GUICtrlToolbar_SetBitmapSize', - 'GUICtrlToolbar_SetButtonBitMap','GUICtrlToolbar_SetButtonInfo', - 'GUICtrlToolbar_SetButtonInfoEx','GUICtrlToolbar_SetButtonParam', - 'GUICtrlToolbar_SetButtonSize','GUICtrlToolbar_SetButtonState', - 'GUICtrlToolbar_SetButtonStyle','GUICtrlToolbar_SetButtonText', - 'GUICtrlToolbar_SetButtonWidth','GUICtrlToolbar_SetCmdID', - 'GUICtrlToolbar_SetColorScheme', - 'GUICtrlToolbar_SetDisabledImageList', - 'GUICtrlToolbar_SetDrawTextFlags','GUICtrlToolbar_SetExtendedStyle', - 'GUICtrlToolbar_SetHotImageList','GUICtrlToolbar_SetHotItem', - 'GUICtrlToolbar_SetImageList','GUICtrlToolbar_SetIndent', - 'GUICtrlToolbar_SetIndeterminate','GUICtrlToolbar_SetInsertMark', - 'GUICtrlToolbar_SetInsertMarkColor','GUICtrlToolbar_SetMaxTextRows', - 'GUICtrlToolbar_SetMetrics','GUICtrlToolbar_SetPadding', - 'GUICtrlToolbar_SetParent','GUICtrlToolbar_SetRows', - 'GUICtrlToolbar_SetStyle','GUICtrlToolbar_SetStyleAltDrag', - 'GUICtrlToolbar_SetStyleCustomErase','GUICtrlToolbar_SetStyleFlat', - 'GUICtrlToolbar_SetStyleList','GUICtrlToolbar_SetStyleRegisterDrop', - 'GUICtrlToolbar_SetStyleToolTips', - 'GUICtrlToolbar_SetStyleTransparent', - 'GUICtrlToolbar_SetStyleWrapable','GUICtrlToolbar_SetToolTips', - 'GUICtrlToolbar_SetUnicodeFormat','GUICtrlToolbar_SetWindowTheme', - 'GUICtrlTreeView_Add','GUICtrlTreeView_AddChild', - 'GUICtrlTreeView_AddChildFirst','GUICtrlTreeView_AddFirst', - 'GUICtrlTreeView_BeginUpdate','GUICtrlTreeView_ClickItem', - 'GUICtrlTreeView_Create','GUICtrlTreeView_CreateDragImage', - 'GUICtrlTreeView_CreateSolidBitMap','GUICtrlTreeView_Delete', - 'GUICtrlTreeView_DeleteAll','GUICtrlTreeView_DeleteChildren', - 'GUICtrlTreeView_Destroy','GUICtrlTreeView_DisplayRect', - 'GUICtrlTreeView_DisplayRectEx','GUICtrlTreeView_EditText', - 'GUICtrlTreeView_EndEdit','GUICtrlTreeView_EndUpdate', - 'GUICtrlTreeView_EnsureVisible','GUICtrlTreeView_Expand', - 'GUICtrlTreeView_ExpandedOnce','GUICtrlTreeView_FindItem', - 'GUICtrlTreeView_FindItemEx','GUICtrlTreeView_GetBkColor', - 'GUICtrlTreeView_GetBold','GUICtrlTreeView_GetChecked', - 'GUICtrlTreeView_GetChildCount','GUICtrlTreeView_GetChildren', - 'GUICtrlTreeView_GetCount','GUICtrlTreeView_GetCut', - 'GUICtrlTreeView_GetDropTarget','GUICtrlTreeView_GetEditControl', - 'GUICtrlTreeView_GetExpanded','GUICtrlTreeView_GetFirstChild', - 'GUICtrlTreeView_GetFirstItem','GUICtrlTreeView_GetFirstVisible', - 'GUICtrlTreeView_GetFocused','GUICtrlTreeView_GetHeight', - 'GUICtrlTreeView_GetImageIndex', - 'GUICtrlTreeView_GetImageListIconHandle', - 'GUICtrlTreeView_GetIndent','GUICtrlTreeView_GetInsertMarkColor', - 'GUICtrlTreeView_GetISearchString','GUICtrlTreeView_GetItemByIndex', - 'GUICtrlTreeView_GetItemHandle','GUICtrlTreeView_GetItemParam', - 'GUICtrlTreeView_GetLastChild','GUICtrlTreeView_GetLineColor', - 'GUICtrlTreeView_GetNext','GUICtrlTreeView_GetNextChild', - 'GUICtrlTreeView_GetNextSibling','GUICtrlTreeView_GetNextVisible', - 'GUICtrlTreeView_GetNormalImageList', - 'GUICtrlTreeView_GetParentHandle','GUICtrlTreeView_GetParentParam', - 'GUICtrlTreeView_GetPrev','GUICtrlTreeView_GetPrevChild', - 'GUICtrlTreeView_GetPrevSibling','GUICtrlTreeView_GetPrevVisible', - 'GUICtrlTreeView_GetScrollTime','GUICtrlTreeView_GetSelected', - 'GUICtrlTreeView_GetSelectedImageIndex', - 'GUICtrlTreeView_GetSelection','GUICtrlTreeView_GetSiblingCount', - 'GUICtrlTreeView_GetState','GUICtrlTreeView_GetStateImageIndex', - 'GUICtrlTreeView_GetStateImageList','GUICtrlTreeView_GetText', - 'GUICtrlTreeView_GetTextColor','GUICtrlTreeView_GetToolTips', - 'GUICtrlTreeView_GetTree','GUICtrlTreeView_GetUnicodeFormat', - 'GUICtrlTreeView_GetVisible','GUICtrlTreeView_GetVisibleCount', - 'GUICtrlTreeView_HitTest','GUICtrlTreeView_HitTestEx', - 'GUICtrlTreeView_HitTestItem','GUICtrlTreeView_Index', - 'GUICtrlTreeView_InsertItem','GUICtrlTreeView_IsFirstItem', - 'GUICtrlTreeView_IsParent','GUICtrlTreeView_Level', - 'GUICtrlTreeView_SelectItem','GUICtrlTreeView_SelectItemByIndex', - 'GUICtrlTreeView_SetBkColor','GUICtrlTreeView_SetBold', - 'GUICtrlTreeView_SetChecked','GUICtrlTreeView_SetCheckedByIndex', - 'GUICtrlTreeView_SetChildren','GUICtrlTreeView_SetCut', - 'GUICtrlTreeView_SetDropTarget','GUICtrlTreeView_SetFocused', - 'GUICtrlTreeView_SetHeight','GUICtrlTreeView_SetIcon', - 'GUICtrlTreeView_SetImageIndex','GUICtrlTreeView_SetIndent', - 'GUICtrlTreeView_SetInsertMark', - 'GUICtrlTreeView_SetInsertMarkColor', - 'GUICtrlTreeView_SetItemHeight','GUICtrlTreeView_SetItemParam', - 'GUICtrlTreeView_SetLineColor','GUICtrlTreeView_SetNormalImageList', - 'GUICtrlTreeView_SetScrollTime','GUICtrlTreeView_SetSelected', - 'GUICtrlTreeView_SetSelectedImageIndex','GUICtrlTreeView_SetState', - 'GUICtrlTreeView_SetStateImageIndex', - 'GUICtrlTreeView_SetStateImageList','GUICtrlTreeView_SetText', - 'GUICtrlTreeView_SetTextColor','GUICtrlTreeView_SetToolTips', - 'GUICtrlTreeView_SetUnicodeFormat','GUICtrlTreeView_Sort', - 'GUIImageList_Add','GUIImageList_AddBitmap','GUIImageList_AddIcon', - 'GUIImageList_AddMasked','GUIImageList_BeginDrag', - 'GUIImageList_Copy','GUIImageList_Create','GUIImageList_Destroy', - 'GUIImageList_DestroyIcon','GUIImageList_DragEnter', - 'GUIImageList_DragLeave','GUIImageList_DragMove', - 'GUIImageList_Draw','GUIImageList_DrawEx','GUIImageList_Duplicate', - 'GUIImageList_EndDrag','GUIImageList_GetBkColor', - 'GUIImageList_GetIcon','GUIImageList_GetIconHeight', - 'GUIImageList_GetIconSize','GUIImageList_GetIconSizeEx', - 'GUIImageList_GetIconWidth','GUIImageList_GetImageCount', - 'GUIImageList_GetImageInfoEx','GUIImageList_Remove', - 'GUIImageList_ReplaceIcon','GUIImageList_SetBkColor', - 'GUIImageList_SetIconSize','GUIImageList_SetImageCount', - 'GUIImageList_Swap','GUIScrollBars_EnableScrollBar', - 'GUIScrollBars_GetScrollBarInfoEx','GUIScrollBars_GetScrollBarRect', - 'GUIScrollBars_GetScrollBarRGState', - 'GUIScrollBars_GetScrollBarXYLineButton', - 'GUIScrollBars_GetScrollBarXYThumbBottom', - 'GUIScrollBars_GetScrollBarXYThumbTop', - 'GUIScrollBars_GetScrollInfo','GUIScrollBars_GetScrollInfoEx', - 'GUIScrollBars_GetScrollInfoMax','GUIScrollBars_GetScrollInfoMin', - 'GUIScrollBars_GetScrollInfoPage','GUIScrollBars_GetScrollInfoPos', - 'GUIScrollBars_GetScrollInfoTrackPos','GUIScrollBars_GetScrollPos', - 'GUIScrollBars_GetScrollRange','GUIScrollBars_Init', - 'GUIScrollBars_ScrollWindow','GUIScrollBars_SetScrollInfo', - 'GUIScrollBars_SetScrollInfoMax','GUIScrollBars_SetScrollInfoMin', - 'GUIScrollBars_SetScrollInfoPage','GUIScrollBars_SetScrollInfoPos', - 'GUIScrollBars_SetScrollRange','GUIScrollBars_ShowScrollBar', - 'GUIToolTip_Activate','GUIToolTip_AddTool','GUIToolTip_AdjustRect', - 'GUIToolTip_BitsToTTF','GUIToolTip_Create','GUIToolTip_DelTool', - 'GUIToolTip_Destroy','GUIToolTip_EnumTools', - 'GUIToolTip_GetBubbleHeight','GUIToolTip_GetBubbleSize', - 'GUIToolTip_GetBubbleWidth','GUIToolTip_GetCurrentTool', - 'GUIToolTip_GetDelayTime','GUIToolTip_GetMargin', - 'GUIToolTip_GetMarginEx','GUIToolTip_GetMaxTipWidth', - 'GUIToolTip_GetText','GUIToolTip_GetTipBkColor', - 'GUIToolTip_GetTipTextColor','GUIToolTip_GetTitleBitMap', - 'GUIToolTip_GetTitleText','GUIToolTip_GetToolCount', - 'GUIToolTip_GetToolInfo','GUIToolTip_HitTest', - 'GUIToolTip_NewToolRect','GUIToolTip_Pop','GUIToolTip_PopUp', - 'GUIToolTip_SetDelayTime','GUIToolTip_SetMargin', - 'GUIToolTip_SetMaxTipWidth','GUIToolTip_SetTipBkColor', - 'GUIToolTip_SetTipTextColor','GUIToolTip_SetTitle', - 'GUIToolTip_SetToolInfo','GUIToolTip_SetWindowTheme', - 'GUIToolTip_ToolExists','GUIToolTip_ToolToArray', - 'GUIToolTip_TrackActivate','GUIToolTip_TrackPosition', - 'GUIToolTip_TTFToBits','GUIToolTip_Update', - 'GUIToolTip_UpdateTipText','HexToString','IE_Example', - 'IE_Introduction','IE_VersionInfo','IEAction','IEAttach', - 'IEBodyReadHTML','IEBodyReadText','IEBodyWriteHTML','IECreate', - 'IECreateEmbedded','IEDocGetObj','IEDocInsertHTML', - 'IEDocInsertText','IEDocReadHTML','IEDocWriteHTML', - 'IEErrorHandlerDeRegister','IEErrorHandlerRegister','IEErrorNotify', - 'IEFormElementCheckBoxSelect','IEFormElementGetCollection', - 'IEFormElementGetObjByName','IEFormElementGetValue', - 'IEFormElementOptionSelect','IEFormElementRadioSelect', - 'IEFormElementSetValue','IEFormGetCollection','IEFormGetObjByName', - 'IEFormImageClick','IEFormReset','IEFormSubmit', - 'IEFrameGetCollection','IEFrameGetObjByName','IEGetObjById', - 'IEGetObjByName','IEHeadInsertEventScript','IEImgClick', - 'IEImgGetCollection','IEIsFrameSet','IELinkClickByIndex', - 'IELinkClickByText','IELinkGetCollection','IELoadWait', - 'IELoadWaitTimeout','IENavigate','IEPropertyGet','IEPropertySet', - 'IEQuit','IETableGetCollection','IETableWriteToArray', - 'IETagNameAllGetCollection','IETagNameGetCollection','Iif', - 'INetExplorerCapable','INetGetSource','INetMail','INetSmtpMail', - 'IsPressed','MathCheckDiv','Max','MemGlobalAlloc','MemGlobalFree', - 'MemGlobalLock','MemGlobalSize','MemGlobalUnlock','MemMoveMemory', - 'MemMsgBox','MemShowError','MemVirtualAlloc','MemVirtualAllocEx', - 'MemVirtualFree','MemVirtualFreeEx','Min','MouseTrap', - 'NamedPipes_CallNamedPipe','NamedPipes_ConnectNamedPipe', - 'NamedPipes_CreateNamedPipe','NamedPipes_CreatePipe', - 'NamedPipes_DisconnectNamedPipe', - 'NamedPipes_GetNamedPipeHandleState','NamedPipes_GetNamedPipeInfo', - 'NamedPipes_PeekNamedPipe','NamedPipes_SetNamedPipeHandleState', - 'NamedPipes_TransactNamedPipe','NamedPipes_WaitNamedPipe', - 'Net_Share_ConnectionEnum','Net_Share_FileClose', - 'Net_Share_FileEnum','Net_Share_FileGetInfo','Net_Share_PermStr', - 'Net_Share_ResourceStr','Net_Share_SessionDel', - 'Net_Share_SessionEnum','Net_Share_SessionGetInfo', - 'Net_Share_ShareAdd','Net_Share_ShareCheck','Net_Share_ShareDel', - 'Net_Share_ShareEnum','Net_Share_ShareGetInfo', - 'Net_Share_ShareSetInfo','Net_Share_StatisticsGetSvr', - 'Net_Share_StatisticsGetWrk','Now','NowCalc','NowCalcDate', - 'NowDate','NowTime','PathFull','PathMake','PathSplit', - 'ProcessGetName','ProcessGetPriority','Radian', - 'ReplaceStringInFile','RunDOS','ScreenCapture_Capture', - 'ScreenCapture_CaptureWnd','ScreenCapture_SaveImage', - 'ScreenCapture_SetBMPFormat','ScreenCapture_SetJPGQuality', - 'ScreenCapture_SetTIFColorDepth','ScreenCapture_SetTIFCompression', - 'Security__AdjustTokenPrivileges','Security__GetAccountSid', - 'Security__GetLengthSid','Security__GetTokenInformation', - 'Security__ImpersonateSelf','Security__IsValidSid', - 'Security__LookupAccountName','Security__LookupAccountSid', - 'Security__LookupPrivilegeValue','Security__OpenProcessToken', - 'Security__OpenThreadToken','Security__OpenThreadTokenEx', - 'Security__SetPrivilege','Security__SidToStringSid', - 'Security__SidTypeStr','Security__StringSidToSid','SendMessage', - 'SendMessageA','SetDate','SetTime','Singleton','SoundClose', - 'SoundLength','SoundOpen','SoundPause','SoundPlay','SoundPos', - 'SoundResume','SoundSeek','SoundStatus','SoundStop', - 'SQLite_Changes','SQLite_Close','SQLite_Display2DResult', - 'SQLite_Encode','SQLite_ErrCode','SQLite_ErrMsg','SQLite_Escape', - 'SQLite_Exec','SQLite_FetchData','SQLite_FetchNames', - 'SQLite_GetTable','SQLite_GetTable2d','SQLite_LastInsertRowID', - 'SQLite_LibVersion','SQLite_Open','SQLite_Query', - 'SQLite_QueryFinalize','SQLite_QueryReset','SQLite_QuerySingleRow', - 'SQLite_SaveMode','SQLite_SetTimeout','SQLite_Shutdown', - 'SQLite_SQLiteExe','SQLite_Startup','SQLite_TotalChanges', - 'StringAddComma','StringBetween','StringEncrypt','StringInsert', - 'StringProper','StringRepeat','StringReverse','StringSplit', - 'StringToHex','TCPIpToName','TempFile','TicksToTime','Timer_Diff', - 'Timer_GetTimerID','Timer_Init','Timer_KillAllTimers', - 'Timer_KillTimer','Timer_SetTimer','TimeToTicks','VersionCompare', - 'viClose','viExecCommand','viFindGpib','viGpibBusReset','viGTL', - 'viOpen','viSetAttribute','viSetTimeout','WeekNumberISO', - 'WinAPI_AttachConsole','WinAPI_AttachThreadInput','WinAPI_Beep', - 'WinAPI_BitBlt','WinAPI_CallNextHookEx','WinAPI_Check', - 'WinAPI_ClientToScreen','WinAPI_CloseHandle', - 'WinAPI_CommDlgExtendedError','WinAPI_CopyIcon', - 'WinAPI_CreateBitmap','WinAPI_CreateCompatibleBitmap', - 'WinAPI_CreateCompatibleDC','WinAPI_CreateEvent', - 'WinAPI_CreateFile','WinAPI_CreateFont','WinAPI_CreateFontIndirect', - 'WinAPI_CreateProcess','WinAPI_CreateSolidBitmap', - 'WinAPI_CreateSolidBrush','WinAPI_CreateWindowEx', - 'WinAPI_DefWindowProc','WinAPI_DeleteDC','WinAPI_DeleteObject', - 'WinAPI_DestroyIcon','WinAPI_DestroyWindow','WinAPI_DrawEdge', - 'WinAPI_DrawFrameControl','WinAPI_DrawIcon','WinAPI_DrawIconEx', - 'WinAPI_DrawText','WinAPI_EnableWindow','WinAPI_EnumDisplayDevices', - 'WinAPI_EnumWindows','WinAPI_EnumWindowsPopup', - 'WinAPI_EnumWindowsTop','WinAPI_ExpandEnvironmentStrings', - 'WinAPI_ExtractIconEx','WinAPI_FatalAppExit','WinAPI_FillRect', - 'WinAPI_FindExecutable','WinAPI_FindWindow','WinAPI_FlashWindow', - 'WinAPI_FlashWindowEx','WinAPI_FloatToInt', - 'WinAPI_FlushFileBuffers','WinAPI_FormatMessage','WinAPI_FrameRect', - 'WinAPI_FreeLibrary','WinAPI_GetAncestor','WinAPI_GetAsyncKeyState', - 'WinAPI_GetClassName','WinAPI_GetClientHeight', - 'WinAPI_GetClientRect','WinAPI_GetClientWidth', - 'WinAPI_GetCurrentProcess','WinAPI_GetCurrentProcessID', - 'WinAPI_GetCurrentThread','WinAPI_GetCurrentThreadId', - 'WinAPI_GetCursorInfo','WinAPI_GetDC','WinAPI_GetDesktopWindow', - 'WinAPI_GetDeviceCaps','WinAPI_GetDIBits','WinAPI_GetDlgCtrlID', - 'WinAPI_GetDlgItem','WinAPI_GetFileSizeEx','WinAPI_GetFocus', - 'WinAPI_GetForegroundWindow','WinAPI_GetIconInfo', - 'WinAPI_GetLastError','WinAPI_GetLastErrorMessage', - 'WinAPI_GetModuleHandle','WinAPI_GetMousePos','WinAPI_GetMousePosX', - 'WinAPI_GetMousePosY','WinAPI_GetObject','WinAPI_GetOpenFileName', - 'WinAPI_GetOverlappedResult','WinAPI_GetParent', - 'WinAPI_GetProcessAffinityMask','WinAPI_GetSaveFileName', - 'WinAPI_GetStdHandle','WinAPI_GetStockObject','WinAPI_GetSysColor', - 'WinAPI_GetSysColorBrush','WinAPI_GetSystemMetrics', - 'WinAPI_GetTextExtentPoint32','WinAPI_GetWindow', - 'WinAPI_GetWindowDC','WinAPI_GetWindowHeight', - 'WinAPI_GetWindowLong','WinAPI_GetWindowRect', - 'WinAPI_GetWindowText','WinAPI_GetWindowThreadProcessId', - 'WinAPI_GetWindowWidth','WinAPI_GetXYFromPoint', - 'WinAPI_GlobalMemStatus','WinAPI_GUIDFromString', - 'WinAPI_GUIDFromStringEx','WinAPI_HiWord','WinAPI_InProcess', - 'WinAPI_IntToFloat','WinAPI_InvalidateRect','WinAPI_IsClassName', - 'WinAPI_IsWindow','WinAPI_IsWindowVisible','WinAPI_LoadBitmap', - 'WinAPI_LoadImage','WinAPI_LoadLibrary','WinAPI_LoadLibraryEx', - 'WinAPI_LoadShell32Icon','WinAPI_LoadString','WinAPI_LocalFree', - 'WinAPI_LoWord','WinAPI_MakeDWord','WinAPI_MAKELANGID', - 'WinAPI_MAKELCID','WinAPI_MakeLong','WinAPI_MessageBeep', - 'WinAPI_Mouse_Event','WinAPI_MoveWindow','WinAPI_MsgBox', - 'WinAPI_MulDiv','WinAPI_MultiByteToWideChar', - 'WinAPI_MultiByteToWideCharEx','WinAPI_OpenProcess', - 'WinAPI_PointFromRect','WinAPI_PostMessage','WinAPI_PrimaryLangId', - 'WinAPI_PtInRect','WinAPI_ReadFile','WinAPI_ReadProcessMemory', - 'WinAPI_RectIsEmpty','WinAPI_RedrawWindow', - 'WinAPI_RegisterWindowMessage','WinAPI_ReleaseCapture', - 'WinAPI_ReleaseDC','WinAPI_ScreenToClient','WinAPI_SelectObject', - 'WinAPI_SetBkColor','WinAPI_SetCapture','WinAPI_SetCursor', - 'WinAPI_SetDefaultPrinter','WinAPI_SetDIBits','WinAPI_SetEvent', - 'WinAPI_SetFocus','WinAPI_SetFont','WinAPI_SetHandleInformation', - 'WinAPI_SetLastError','WinAPI_SetParent', - 'WinAPI_SetProcessAffinityMask','WinAPI_SetSysColors', - 'WinAPI_SetTextColor','WinAPI_SetWindowLong','WinAPI_SetWindowPos', - 'WinAPI_SetWindowsHookEx','WinAPI_SetWindowText', - 'WinAPI_ShowCursor','WinAPI_ShowError','WinAPI_ShowMsg', - 'WinAPI_ShowWindow','WinAPI_StringFromGUID','WinAPI_SubLangId', - 'WinAPI_SystemParametersInfo','WinAPI_TwipsPerPixelX', - 'WinAPI_TwipsPerPixelY','WinAPI_UnhookWindowsHookEx', - 'WinAPI_UpdateLayeredWindow','WinAPI_UpdateWindow', - 'WinAPI_ValidateClassName','WinAPI_WaitForInputIdle', - 'WinAPI_WaitForMultipleObjects','WinAPI_WaitForSingleObject', - 'WinAPI_WideCharToMultiByte','WinAPI_WindowFromPoint', - 'WinAPI_WriteConsole','WinAPI_WriteFile', - 'WinAPI_WriteProcessMemory','WinNet_AddConnection', - 'WinNet_AddConnection2','WinNet_AddConnection3', - 'WinNet_CancelConnection','WinNet_CancelConnection2', - 'WinNet_CloseEnum','WinNet_ConnectionDialog', - 'WinNet_ConnectionDialog1','WinNet_DisconnectDialog', - 'WinNet_DisconnectDialog1','WinNet_EnumResource', - 'WinNet_GetConnection','WinNet_GetConnectionPerformance', - 'WinNet_GetLastError','WinNet_GetNetworkInformation', - 'WinNet_GetProviderName','WinNet_GetResourceInformation', - 'WinNet_GetResourceParent','WinNet_GetUniversalName', - 'WinNet_GetUser','WinNet_OpenEnum','WinNet_RestoreConnection', - 'WinNet_UseConnection','Word_VersionInfo','WordAttach','WordCreate', - 'WordDocAdd','WordDocAddLink','WordDocAddPicture','WordDocClose', - 'WordDocFindReplace','WordDocGetCollection', - 'WordDocLinkGetCollection','WordDocOpen','WordDocPrint', - 'WordDocPropertyGet','WordDocPropertySet','WordDocSave', - 'WordDocSaveAs','WordErrorHandlerDeRegister', - 'WordErrorHandlerRegister','WordErrorNotify','WordMacroRun', - 'WordPropertyGet','WordPropertySet','WordQuit' - ), - 5 => array( - 'ce','comments-end','comments-start','cs','include','include-once', - 'NoTrayIcon','RequireAdmin' - ), - 6 => array( - 'AutoIt3Wrapper_Au3Check_Parameters', - 'AutoIt3Wrapper_Au3Check_Stop_OnWarning', - 'AutoIt3Wrapper_Change2CUI','AutoIt3Wrapper_Compression', - 'AutoIt3Wrapper_cvsWrapper_Parameters','AutoIt3Wrapper_Icon', - 'AutoIt3Wrapper_Outfile','AutoIt3Wrapper_Outfile_Type', - 'AutoIt3Wrapper_Plugin_Funcs','AutoIt3Wrapper_Res_Comment', - 'AutoIt3Wrapper_Res_Description','AutoIt3Wrapper_Res_Field', - 'AutoIt3Wrapper_Res_File_Add','AutoIt3Wrapper_Res_Fileversion', - 'AutoIt3Wrapper_Res_FileVersion_AutoIncrement', - 'AutoIt3Wrapper_Res_Icon_Add','AutoIt3Wrapper_Res_Language', - 'AutoIt3Wrapper_Res_LegalCopyright', - 'AutoIt3Wrapper_res_requestedExecutionLevel', - 'AutoIt3Wrapper_Res_SaveSource','AutoIt3Wrapper_Run_After', - 'AutoIt3Wrapper_Run_Au3check','AutoIt3Wrapper_Run_Before', - 'AutoIt3Wrapper_Run_cvsWrapper','AutoIt3Wrapper_Run_Debug_Mode', - 'AutoIt3Wrapper_Run_Obfuscator','AutoIt3Wrapper_Run_Tidy', - 'AutoIt3Wrapper_Tidy_Stop_OnError','AutoIt3Wrapper_UseAnsi', - 'AutoIt3Wrapper_UseUpx','AutoIt3Wrapper_UseX64', - 'AutoIt3Wrapper_Version','EndRegion','forceref', - 'Obfuscator_Ignore_Funcs','Obfuscator_Ignore_Variables', - 'Obfuscator_Parameters','Region','Tidy_Parameters' - ) - ), - 'SYMBOLS' => array( - '(',')','[',']', - '+','-','*','/','&','^', - '=','+=','-=','*=','/=','&=', - '==','<','<=','>','>=', - ',','.' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000FF; font-weight: bold;', - 2 => 'color: #800000; font-weight: bold;', - 3 => 'color: #000080; font-style: italic; font-weight: bold;', - 4 => 'color: #0080FF; font-style: italic; font-weight: bold;', - 5 => 'color: #F000FF; font-style: italic;', - 6 => 'color: #A00FF0; font-style: italic;' - ), - 'COMMENTS' => array( - 'MULTI' => 'font-style: italic; color: #669900;', - 0 => 'font-style: italic; color: #009933;', - 1 => 'font-style: italic; color: #9977BB;', - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => 'color: #FF0000; font-weight: bold;' - ), - 'STRINGS' => array( - 0 => 'font-weight: bold; color: #9977BB;' - ), - 'NUMBERS' => array( - 0 => 'color: #AC00A9; font-style: italic; font-weight: bold;' - ), - 'METHODS' => array( - 1 => 'color: #0000FF; font-style: italic; font-weight: bold;' - ), - 'SYMBOLS' => array( - 0 => 'color: #FF0000; font-weight: bold;' - ), - 'REGEXPS' => array( - 0 => 'font-weight: bold; color: #AA0000;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://www.autoitscript.com/autoit3/docs/keywords.htm', - 2 => 'http://www.autoitscript.com/autoit3/docs/macros.htm', - 3 => 'http://www.autoitscript.com/autoit3/docs/functions/{FNAME}.htm', - 4 => '', - 5 => '', - 6 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - //Variables - 0 => '[\\$%@]+[a-zA-Z_][a-zA-Z0-9_]*' - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true, - 2 => true, - 3 => true - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 4 => array( - 'DISALLOWED_BEFORE' => '(? array( - 'DISALLOWED_BEFORE' => '(? array( - 'DISALLOWED_BEFORE' => '(? \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/avisynth.php b/library/Vendors/geshi/geshi/avisynth.php deleted file mode 100644 index f74f50c3..00000000 --- a/library/Vendors/geshi/geshi/avisynth.php +++ /dev/null @@ -1,194 +0,0 @@ - 'AviSynth', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/', '[*' => '*]'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - // Reserved words. - 1 => array( - 'try', 'cache', 'function', 'global', 'return' - ), - // Constants / special variables. - 2 => array( - 'true', 'yes', 'false', 'no', '__END__' - ), - // Internal Filters. - 3 => array( - 'AviSource', 'AviFileSource', 'AddBorders', 'AlignedSplice', 'AssumeFPS', 'AssumeScaledFPS', - 'AssumeFrameBased', 'AssumeFieldBased', 'AssumeBFF', 'AssumeTFF', 'Amplify', 'AmplifydB', - 'AssumeSampleRate', 'AudioDub', 'AudioDubEx', 'Animate', 'ApplyRange', - 'BicubicResize', 'BilinearResize', 'BlackmanResize', 'Blur', 'Bob', 'BlankClip', 'Blackness', - 'ColorYUV', 'ConvertBackToYUY2', 'ConvertToRGB', 'ConvertToRGB24', 'ConvertToRGB32', - 'ConvertToYUY2', 'ConvertToY8', 'ConvertToYV411', 'ConvertToYV12', 'ConvertToYV16', 'ConvertToYV24', - 'ColorKeyMask', 'Crop', 'CropBottom', 'ChangeFPS', 'ConvertFPS', 'ComplementParity', 'ConvertAudioTo8bit', - 'ConvertAudioTo16bit', 'ConvertAudioTo24bit', 'ConvertAudioTo32bit', 'ConvertAudioToFloat', 'ConvertToMono', - 'ConditionalFilter', 'ConditionalReader', 'ColorBars', 'Compare', - 'DirectShowSource', 'DeleteFrame', 'Dissolve', 'DuplicateFrame', 'DoubleWeave', 'DelayAudio', - 'EnsureVBRMP3Sync', - 'FixLuminance', 'FlipHorizontal', 'FlipVertical', 'FixBrokenChromaUpsampling', 'FadeIn0', 'FadeIn', - 'FadeIn2', 'FadeOut0', 'FadeOut', 'FadeOut2', 'FadeIO0', 'FadeIO', 'FadeIO2', 'FreezeFrame', 'FrameEvaluate', - 'GreyScale', 'GaussResize', 'GeneralConvolution', 'GetChannel', 'GetLeftChannel', 'GetRightChannel', - 'HorizontalReduceBy2', 'Histogram', - 'ImageReader', 'ImageSource', 'ImageWriter', 'Invert', 'Interleave', 'Info', - 'KillAudio', 'KillVideo', - 'Levels', 'Limiter', 'Layer', 'Letterbox', 'LanczosResize', 'Lanczos4Resize', 'Loop', - 'MergeARGB', 'MergeRGB', 'MergeChroma', 'MergeLuma', 'Merge', 'Mask', 'MaskHS', 'MergeChannels', 'MixAudio', - 'MonoToStereo', 'MessageClip', - 'Normalize', - 'OpenDMLSource', 'Overlay', - 'PointResize', 'PeculiarBlend', 'Pulldown', - 'RGBAdjust', 'ResetMask', 'Reverse', 'ResampleAudio', 'ReduceBy2', - 'SegmentedAviSource', 'SegmentedDirectShowSource', 'SoundOut', 'ShowAlpha', 'ShowRed', 'ShowGreen', - 'ShowBlue', 'SwapUV', 'Subtract', 'SincResize', 'Spline16Resize', 'Spline36Resize', 'Spline64Resize', - 'SelectEven', 'SelectOdd', 'SelectEvery', 'SelectRangeEvery', 'Sharpen', 'SpatialSoften', 'SeparateFields', - 'ShowFiveVersions', 'ShowFrameNumber', 'ShowSMPTE', 'ShowTime', 'StackHorizontal', 'StackVertical', 'Subtitle', - 'SwapFields', 'SuperEQ', 'SSRC', 'ScriptClip', - 'Tweak', 'TurnLeft', 'TurnRight', 'Turn180', 'TemporalSoften', 'TimeStretch', 'TCPServer', 'TCPSource', 'Trim', - 'Tone', - 'UToY', 'UToY8', 'UnalignedSplice', - 'VToY', 'VToY8', 'VerticalReduceBy2', 'Version', - 'WavSource', 'Weave', 'WriteFile', 'WriteFileIf', 'WriteFileStart', 'WriteFileEnd', - 'YToUV' - ), - // Internal functions. - 4 => array( - 'Abs', 'Apply', 'Assert', 'AverageLuma', 'AverageChromaU', 'AverageChromaV', - 'Ceil', 'Cos', 'Chr', 'ChromaUDifference', 'ChromaVDifference', - 'Defined', 'Default', - 'Exp', 'Exist', 'Eval', - 'Floor', 'Frac', 'Float', 'Findstr', 'GetMTMode', - 'HexValue', - 'Int', 'IsBool', 'IsClip', 'IsFloat', 'IsInt', 'IsString', 'Import', - 'LoadPlugin', 'Log', 'LCase', 'LeftStr', 'LumaDifference', 'LoadVirtualDubPlugin', 'LoadVFAPIPlugin', - 'LoadCPlugin', 'Load_Stdcall_Plugin', - 'Max', 'MulDiv', 'MidStr', - 'NOP', - 'OPT_AllowFloatAudio', 'OPT_UseWaveExtensible', - 'Pi', 'Pow', - 'Round', 'Rand', 'RevStr', 'RightStr', 'RGBDifference', 'RGBDifferenceFromPrevious', 'RGBDifferenceToNext', - 'Sin', 'Sqrt', 'Sign', 'Spline', 'StrLen', 'String', 'Select', 'SetMemoryMax', 'SetWorkingDir', 'SetMTMode', - 'SetPlanarLegacyAlignment', - 'Time', - 'UCase', 'UDifferenceFromPrevious', 'UDifferenceToNext', 'UPlaneMax', 'UPlaneMin', 'UPlaneMedian', - 'UPlaneMinMaxDifference', - 'Value', 'VersionNumber', 'VersionString', 'VDifferenceFromPrevious', 'VDifferenceToNext', 'VPlaneMax', - 'VPlaneMin', 'VPlaneMedian', 'VPlaneMinMaxDifference', - 'YDifferenceFromPrevious', 'YDifferenceToNext', 'YPlaneMax', 'YPlaneMin', 'YPlaneMedian', - 'YPlaneMinMaxDifference' - ) - ), - 'SYMBOLS' => array( - '+', '++', '-', '--', '/', '*', '%', - '=', '==', '<', '<=', '>', '>=', '<>', '!=', - '!', '?', ':', - '|', '||', '&&', - '\\', - '(', ')', '{', '}', - '.', ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color:#9966CC; font-weight:bold;', - 2 => 'color:#0000FF; font-weight:bold;', - 3 => 'color:#CC3300; font-weight:bold;', - 4 => 'color:#660000; font-weight:bold;' - ), - 'COMMENTS' => array( - 1 => 'color:#008000; font-style:italic;', - 'MULTI' => 'color:#000080; font-style:italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color:#000099;' - ), - 'BRACKETS' => array( - 0 => 'color:#006600; font-weight:bold;' - ), - 'STRINGS' => array( - 0 => 'color:#996600;' - ), - 'NUMBERS' => array( - 0 => 'color:#006666;' - ), - 'METHODS' => array( - 1 => 'color:#9900CC;' - ), - 'SYMBOLS' => array( - 0 => 'color:#006600; font-weight:bold;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://avisynth.org/mediawiki/{FNAME}', - 4 => '' - ), - 'REGEXPS' => array( - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); -?> diff --git a/library/Vendors/geshi/geshi/awk.php b/library/Vendors/geshi/geshi/awk.php deleted file mode 100644 index 5d540315..00000000 --- a/library/Vendors/geshi/geshi/awk.php +++ /dev/null @@ -1,158 +0,0 @@ - 'awk', - 'COMMENT_SINGLE' => array( - 1 => '#' - ), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array ( - 1 => array( - 'for', 'in', 'if', 'else', 'while', 'do', 'continue', 'break' - ), - 2 => array( - 'BEGIN', 'END' - ), - 3 => array( - 'ARGC', 'ARGV', 'CONVFMT', 'ENVIRON', - 'FILENAME', 'FNR', 'FS', 'NF', 'NR', 'OFMT', - 'OFS','ORS','RLENGTH','RS','RSTART','SUBSEP' - ), - 4 => array( - 'gsub','index','length','match','split', - 'sprintf','sub','substr','tolower','toupper', - 'atan2','cos','exp','int','log','rand', - 'sin','sqrt','srand' - ), - 5 => array( - 'print','printf','getline','close','fflush','system' - ), - 6 => array( - 'function', 'return' - ) - ), - 'SYMBOLS' => array ( - 0 => array( - '(',')','[',']','{','}' - ), - 1 => array( - '!','||','&&' - ), - 2 => array( - '<','>','<=','>=','==','!=' - ), - 3 => array( - '+','-','*','/','%','^','++','--' - ), - 4 => array( - '~','!~' - ), - 5 => array( - '?',':' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #C20CB9; font-weight: bold;', - 3 => 'color: #4107D5; font-weight: bold;', - 4 => 'color: #07D589; font-weight: bold;', - 5 => 'color: #0BD507; font-weight: bold;', - 6 => 'color: #078CD5; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color:#808080;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'SYMBOLS' => array( - 0 => 'color:black;', - 1 => 'color:black;', - 2 => 'color:black;', - 3 => 'color:black;', - 4 => 'color:#C4C364;', - 5 => 'color:black;font-weight:bold;'), - 'SCRIPT' => array(), - 'REGEXPS' => array( - 0 => 'color:#000088;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #000000;' - ), - 'BRACKETS' => array( - 0 => 'color: #7a0874; font-weight: bold;' - ), - 'METHODS' => array() - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array (), - 'REGEXPS' => array( - 0 => "\\$[a-zA-Z0-9_]+" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array (), - 'HIGHLIGHT_STRICT_BLOCK' => array() -); - -?> diff --git a/library/Vendors/geshi/geshi/bash.php b/library/Vendors/geshi/geshi/bash.php deleted file mode 100644 index dad391c8..00000000 --- a/library/Vendors/geshi/geshi/bash.php +++ /dev/null @@ -1,327 +0,0 @@ - 'Bash', - // Bash DOES have single line comments with # markers. But bash also has - // the $# variable, so comments need special handling (see sf.net - // 1564839) - 'COMMENT_SINGLE' => array('#'), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - //Variables - 1 => "/\\$\\{[^\\n\\}]*?\\}/i", - //BASH-style Heredoc - 2 => '/<<-?\s*?(\'?)([a-zA-Z0-9]+)\1\\n.*\\n\\2(?![a-zA-Z0-9])/siU', - //Escaped String Starters - 3 => "/\\\\['\"]/siU" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array("\'"), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - //Simple Single Char Escapes - 1 => "#\\\\[nfrtv\\$\\\"\n]#i", - // $var - 2 => "#\\$[a-z_][a-z0-9_]*#i", - // ${...} - 3 => "/\\$\\{[^\\n\\}]*?\\}/i", - // $(...) - 4 => "/\\$\\([^\\n\\)]*?\\)/i", - // `...` - 5 => "/`[^`]*`/" - ), - 'KEYWORDS' => array( - 1 => array( - 'case', 'do', 'done', 'elif', 'else', 'esac', 'fi', 'for', 'function', - 'if', 'in', 'select', 'set', 'then', 'until', 'while', 'time' - ), - 2 => array( - 'aclocal', 'aconnect', 'aplay', 'apm', 'apmsleep', 'apropos', - 'apt-cache', 'apt-file', 'apt-get', 'apt-key', 'apt-src', 'aptitude', - 'ar', 'arch', 'arecord', 'as', 'as86', 'ash', 'autoconf', - 'autoheader', 'automake', 'awk', - - 'basename', 'bash', 'bc', 'bison', 'bunzip2', 'bzcat', - 'bzcmp', 'bzdiff', 'bzegrep', 'bzfgrep', 'bzgrep', - 'bzip2', 'bzip2recover', 'bzless', 'bzmore', - - 'c++', 'cal', 'cat', 'chattr', 'cc', 'cdda2wav', 'cdparanoia', - 'cdrdao', 'cd-read', 'cdrecord', 'chfn', 'chgrp', 'chmod', - 'chown', 'chroot', 'chsh', 'chvt', 'clear', 'cmp', 'comm', 'co', - 'col', 'cp', 'cpio', 'cpp', 'csh', 'cut', 'cvs', 'cvs-pserver', - - 'dash', 'date', 'dc', 'dch', 'dcop', 'dd', 'ddate', 'ddd', - 'deallocvt', 'debconf', 'defoma', 'depmod', 'df', 'dh', - 'dialog', 'diff', 'diff3', 'dig', 'dir', 'dircolors', 'directomatic', - 'dirname', 'dmesg', 'dnsdomainname', 'domainname', 'dpkg', - 'dselect', 'du', 'dumpkeys', - - 'ed', 'egrep', 'env', 'expr', - - 'false', 'fbset', 'ffmpeg', 'fgconsole','fgrep', 'file', 'find', - 'flex', 'flex++', 'fmt', 'free', 'ftp', 'funzip', 'fuser', - - 'g++', 'gawk', 'gc','gcc', 'gdb', 'getent', 'getkeycodes', - 'getopt', 'gettext', 'gettextize', 'gimp', 'gimp-remote', - 'gimptool', 'gmake', 'gocr', 'grep', 'groups', 'gs', 'gunzip', - 'gzexe', 'gzip', - - 'git', 'gitaction', 'git-add', 'git-add--interactive', 'git-am', - 'git-annotate', 'git-apply', 'git-archive', 'git-bisect', - 'git-bisect--helper', 'git-blame', 'git-branch', 'git-bundle', - 'git-cat-file', 'git-check-attr', 'git-checkout', - 'git-checkout-index', 'git-check-ref-format', 'git-cherry', - 'git-cherry-pick', 'git-clean', 'git-clone', 'git-commit', - 'git-commit-tree', 'git-config', 'git-count-objects', 'git-daemon', - 'git-describe', 'git-diff', 'git-diff-files', 'git-diff-index', - 'git-difftool', 'git-difftool--helper', 'git-diff-tree', - 'gitdpkgname', 'git-fast-export', 'git-fast-import', 'git-fetch', - 'git-fetch-pack', 'git-fetch--tool', 'git-filter-branch', 'gitfm', - 'git-fmt-merge-msg', 'git-for-each-ref', 'git-format-patch', - 'git-fsck', 'git-fsck-objects', 'git-gc', 'git-get-tar-commit-id', - 'git-grep', 'git-hash-object', 'git-help', 'git-http-fetch', - 'git-http-push', 'git-imap-send', 'git-index-pack', 'git-init', - 'git-init-db', 'git-instaweb', 'gitkeys', 'git-log', - 'git-lost-found', 'git-ls-files', 'git-ls-remote', 'git-ls-tree', - 'git-mailinfo', 'git-mailsplit', 'git-merge', 'git-merge-base', - 'git-merge-file', 'git-merge-index', 'git-merge-octopus', - 'git-merge-one-file', 'git-merge-ours', 'git-merge-recursive', - 'git-merge-resolve', 'git-merge-subtree', 'git-mergetool', - 'git-mergetool--lib', 'git-merge-tree', 'gitmkdirs', 'git-mktag', - 'git-mktree', 'gitmount', 'git-mv', 'git-name-rev', - 'git-pack-objects', 'git-pack-redundant', 'git-pack-refs', - 'git-parse-remote', 'git-patch-id', 'git-peek-remote', 'git-prune', - 'git-prune-packed', 'gitps', 'git-pull', 'git-push', - 'git-quiltimport', 'git-read-tree', 'git-rebase', - 'git-rebase--interactive', 'git-receive-pack', 'git-reflog', - 'gitregrep', 'git-relink', 'git-remote', 'git-repack', - 'git-repo-config', 'git-request-pull', 'git-rerere', 'git-reset', - 'git-revert', 'git-rev-list', 'git-rev-parse', 'gitrfgrep', - 'gitrgrep', 'git-rm', 'git-send-pack', 'git-shell', 'git-shortlog', - 'git-show', 'git-show-branch', 'git-show-index', 'git-show-ref', - 'git-sh-setup', 'git-stage', 'git-stash', 'git-status', - 'git-stripspace', 'git-submodule', 'git-svn', 'git-symbolic-ref', - 'git-tag', 'git-tar-tree', 'gitunpack', 'git-unpack-file', - 'git-unpack-objects', 'git-update-index', 'git-update-ref', - 'git-update-server-info', 'git-upload-archive', 'git-upload-pack', - 'git-var', 'git-verify-pack', 'git-verify-tag', 'gitview', - 'git-web--browse', 'git-whatchanged', 'gitwhich', 'gitwipe', - 'git-write-tree', 'gitxgrep', - - 'head', 'hexdump', 'hostname', - - 'id', 'ifconfig', 'ifdown', 'ifup', 'igawk', 'install', - - 'join', - - 'kbd_mode','kbdrate', 'kdialog', 'kfile', 'kill', 'killall', - - 'lame', 'last', 'lastb', 'ld', 'ld86', 'ldd', 'less', 'lex', 'link', - 'ln', 'loadkeys', 'loadunimap', 'locate', 'lockfile', 'login', - 'logname', 'lp', 'lpr', 'ls', 'lsattr', 'lsmod', 'lsmod.old', - 'lspci', 'ltrace', 'lynx', - - 'm4', 'make', 'man', 'mapscrn', 'mesg', 'mkdir', 'mkfifo', - 'mknod', 'mktemp', 'more', 'mount', 'mplayer', 'msgfmt', 'mv', - - 'namei', 'nano', 'nasm', 'nawk', 'netstat', 'nice', - 'nisdomainname', 'nl', 'nm', 'nm86', 'nmap', 'nohup', 'nop', - - 'od', 'openvt', - - 'passwd', 'patch', 'pcregrep', 'pcretest', 'perl', 'perror', - 'pgawk', 'pidof', 'ping', 'pr', 'procmail', 'prune', 'ps', 'pstree', - 'ps2ascii', 'ps2epsi', 'ps2frag', 'ps2pdf', 'ps2ps', 'psbook', - 'psmerge', 'psnup', 'psresize', 'psselect', 'pstops', - - 'rbash', 'rcs', 'rcs2log', 'read', 'readlink', 'red', 'resizecons', - 'rev', 'rm', 'rmdir', 'rsh', 'run-parts', - - 'sash', 'scp', 'screen', 'sed', 'seq', 'sendmail', 'setfont', - 'setkeycodes', 'setleds', 'setmetamode', 'setserial', 'setterm', - 'sh', 'showkey', 'shred', 'size', 'size86', 'skill', 'sleep', - 'slogin', 'snice', 'sort', 'sox', 'split', 'ssed', 'ssh', 'ssh-add', - 'ssh-agent', 'ssh-keygen', 'ssh-keyscan', 'stat', 'strace', - 'strings', 'strip', 'stty', 'su', 'sudo', 'suidperl', 'sum', 'svn', - 'svnadmin', 'svndumpfilter', 'svnlook', 'svnmerge', 'svnmucc', - 'svnserve', 'svnshell', 'svnsync', 'svnversion', 'svnwrap', 'sync', - - 'tac', 'tail', 'tar', 'tee', 'tempfile', 'touch', 'tr', 'tree', - 'true', - - 'umount', 'uname', 'unicode_start', 'unicode_stop', 'uniq', - 'unlink', 'unzip', 'updatedb', 'updmap', 'uptime', 'users', - 'utmpdump', 'uuidgen', - - 'valgrind', 'vdir', 'vi', 'vim', 'vmstat', - - 'w', 'wall', 'watch', 'wc', 'wget', 'whatis', 'whereis', - 'which', 'whiptail', 'who', 'whoami', 'whois', 'wine', 'wineboot', - 'winebuild', 'winecfg', 'wineconsole', 'winedbg', 'winedump', - 'winefile', 'wodim', 'write', - - 'xargs', 'xhost', 'xmodmap', 'xset', - - 'yacc', 'yes', 'ypdomainname', - - 'zcat', 'zcmp', 'zdiff', 'zdump', 'zegrep', 'zfgrep', 'zforce', - 'zgrep', 'zip', 'zipgrep', 'zipinfo', 'zless', 'zmore', 'znew', - 'zsh', 'zsoelim' - ), - 3 => array( - 'alias', 'bg', 'bind', 'break', 'builtin', 'cd', 'command', - 'compgen', 'complete', 'continue', 'declare', 'dirs', 'disown', - 'echo', 'enable', 'eval', 'exec', 'exit', 'export', 'fc', - 'fg', 'getopts', 'hash', 'help', 'history', 'jobs', 'let', - 'local', 'logout', 'popd', 'printf', 'pushd', 'pwd', 'readonly', - 'return', 'shift', 'shopt', 'source', 'suspend', 'test', 'times', - 'trap', 'type', 'typeset', 'ulimit', 'umask', 'unalias', 'unset', - 'wait' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '!', '@', '%', '&', '*', '|', '/', '<', '>', ';;', '`' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #c20cb9; font-weight: bold;', - 3 => 'color: #7a0874; font-weight: bold;' - ), - 'COMMENTS' => array( - 0 => 'color: #666666; font-style: italic;', - 1 => 'color: #800000;', - 2 => 'color: #cc0000; font-style: italic;', - 3 => 'color: #000000; font-weight: bold;' - ), - 'ESCAPE_CHAR' => array( - 1 => 'color: #000099; font-weight: bold;', - 2 => 'color: #007800;', - 3 => 'color: #007800;', - 4 => 'color: #007800;', - 5 => 'color: #780078;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #7a0874; font-weight: bold;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;', - 'HARD' => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #000000;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000000; font-weight: bold;' - ), - 'REGEXPS' => array( - 0 => 'color: #007800;', - 1 => 'color: #007800;', - 2 => 'color: #007800;', - 4 => 'color: #007800;', - 5 => 'color: #660033;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Variables (will be handled by comment_regexps) - 0 => "\\$\\{[a-zA-Z_][a-zA-Z0-9_]*?\\}", - //Variables without braces - 1 => "\\$[a-zA-Z_][a-zA-Z0-9_]*", - //Variable assignment - 2 => "(? "\\$[*#\$\\-\\?!\d]", - //Parameters of commands - 5 => "(?<=\s)--?[0-9a-zA-Z\-]+(?=[\s=]|<(?:SEMI|PIPE)>|$)" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'COMMENTS' => array( - 'DISALLOWED_BEFORE' => '$' - ), - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(? "(?![\.\-a-zA-Z0-9_%=\\/])" - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/basic4gl.php b/library/Vendors/geshi/geshi/basic4gl.php deleted file mode 100644 index 7ac86930..00000000 --- a/library/Vendors/geshi/geshi/basic4gl.php +++ /dev/null @@ -1,341 +0,0 @@ - 'Basic4GL', - 'COMMENT_SINGLE' => array(1 => "'"), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - - // Navy Blue Bold Keywords - - 'true','rnd_max','m_pi','m_e','false','VK_ZOOM','VK_UP','VK_TAB','VK_SUBTRACT','VK_SPACE','VK_SNAPSHOT', - 'VK_SHIFT','VK_SEPARATOR','VK_SELECT','VK_SCROLL','VK_RWIN','VK_RSHIFT','VK_RMENU','VK_RIGHT','VK_RETURN', - 'VK_RCONTROL','VK_RBUTTON','VK_PROCESSKEY','VK_PRIOR','VK_PRINT','VK_PLAY','VK_PAUSE','VK_NUMPAD9','VK_NUMPAD8', - 'VK_NUMPAD7','VK_NUMPAD6','VK_NUMPAD5','VK_NUMPAD4','VK_NUMPAD3','VK_NUMPAD2','VK_NUMPAD1','VK_NUMPAD0', - 'VK_NUMLOCK','VK_NONCONVERT','VK_NEXT','VK_MULTIPLY','VK_MODECHANGE','VK_MENU','VK_MBUTTON','VK_LWIN', - 'VK_LSHIFT','VK_LMENU','VK_LEFT','VK_LCONTROL','VK_LBUTTON','VK_KANJI','VK_KANA','VK_JUNJA','VK_INSERT', - 'VK_HOME','VK_HELP','VK_HANJA','VK_HANGUL','VK_HANGEUL','VK_FINAL','VK_F9','VK_F8','VK_F7','VK_F6','VK_F5', - 'VK_F4','VK_F3','VK_F24','VK_F23','VK_F22','VK_F21','VK_F20','VK_F2','VK_F19','VK_F18','VK_F17','VK_F16', - 'VK_F15','VK_F14','VK_F13','VK_F12','VK_F11','VK_F10','VK_F1','VK_EXSEL','VK_EXECUTE','VK_ESCAPE','VK_EREOF', - 'VK_END','VK_DOWN','VK_DIVIDE','VK_DELETE','VK_DECIMAL','VK_CRSEL','VK_CONVERT','VK_CONTROL','VK_CLEAR', - 'VK_CAPITAL','VK_CANCEL','VK_BACK','VK_ATTN','VK_APPS','VK_ADD','VK_ACCEPT','TEXT_SIMPLE','TEXT_OVERLAID', - 'TEXT_BUFFERED','SPR_TILEMAP','SPR_SPRITE','SPR_INVALID','MOUSE_RBUTTON','MOUSE_MBUTTON','MOUSE_LBUTTON', - 'GL_ZOOM_Y','GL_ZOOM_X','GL_ZERO','GL_XOR','GL_WIN_swap_hint','GL_WIN_draw_range_elements','GL_VIEWPORT_BIT', - 'GL_VIEWPORT','GL_VERTEX_ARRAY_TYPE_EXT','GL_VERTEX_ARRAY_TYPE','GL_VERTEX_ARRAY_STRIDE_EXT','GL_VERTEX_ARRAY_STRIDE', - 'GL_VERTEX_ARRAY_SIZE_EXT','GL_VERTEX_ARRAY_SIZE','GL_VERTEX_ARRAY_POINTER_EXT','GL_VERTEX_ARRAY_POINTER', - 'GL_VERTEX_ARRAY_EXT','GL_VERTEX_ARRAY_COUNT_EXT','GL_VERTEX_ARRAY','GL_VERSION_1_1','GL_VERSION','GL_VENDOR', - 'GL_V3F','GL_V2F','GL_UNSIGNED_SHORT','GL_UNSIGNED_INT','GL_UNSIGNED_BYTE','GL_UNPACK_SWAP_BYTES','GL_UNPACK_SKIP_ROWS', - 'GL_UNPACK_SKIP_PIXELS','GL_UNPACK_ROW_LENGTH','GL_UNPACK_LSB_FIRST','GL_UNPACK_ALIGNMENT','GL_TRUE','GL_TRIANGLE_STRIP', - 'GL_TRIANGLE_FAN','GL_TRIANGLES','GL_TRANSFORM_BIT','GL_TEXTURE_WRAP_T','GL_TEXTURE_WRAP_S','GL_TEXTURE_WIDTH', - 'GL_TEXTURE_STACK_DEPTH','GL_TEXTURE_RESIDENT','GL_TEXTURE_RED_SIZE','GL_TEXTURE_PRIORITY','GL_TEXTURE_MIN_FILTER', - 'GL_TEXTURE_MATRIX','GL_TEXTURE_MAG_FILTER','GL_TEXTURE_LUMINANCE_SIZE','GL_TEXTURE_INTERNAL_FORMAT','GL_TEXTURE_INTENSITY_SIZE', - 'GL_TEXTURE_HEIGHT','GL_TEXTURE_GREEN_SIZE','GL_TEXTURE_GEN_T','GL_TEXTURE_GEN_S','GL_TEXTURE_GEN_R','GL_TEXTURE_GEN_Q', - 'GL_TEXTURE_GEN_MODE','GL_TEXTURE_ENV_MODE','GL_TEXTURE_ENV_COLOR','GL_TEXTURE_ENV','GL_TEXTURE_COORD_ARRAY_TYPE_EXT', - 'GL_TEXTURE_COORD_ARRAY_TYPE','GL_TEXTURE_COORD_ARRAY_STRIDE_EXT','GL_TEXTURE_COORD_ARRAY_STRIDE','GL_TEXTURE_COORD_ARRAY_SIZE_EXT', - 'GL_TEXTURE_COORD_ARRAY_SIZE','GL_TEXTURE_COORD_ARRAY_POINTER_EXT','GL_TEXTURE_COORD_ARRAY_POINTER','GL_TEXTURE_COORD_ARRAY_EXT', - 'GL_TEXTURE_COORD_ARRAY_COUNT_EXT','GL_TEXTURE_COORD_ARRAY','GL_TEXTURE_COMPONENTS','GL_TEXTURE_BORDER_COLOR','GL_TEXTURE_BORDER', - 'GL_TEXTURE_BLUE_SIZE','GL_TEXTURE_BIT','GL_TEXTURE_BINDING_2D','GL_TEXTURE_BINDING_1D','GL_TEXTURE_ALPHA_SIZE', - 'GL_TEXTURE_2D','GL_TEXTURE_1D','GL_TEXTURE9_ARB','GL_TEXTURE9','GL_TEXTURE8_ARB','GL_TEXTURE8','GL_TEXTURE7_ARB', - 'GL_TEXTURE7','GL_TEXTURE6_ARB','GL_TEXTURE6','GL_TEXTURE5_ARB','GL_TEXTURE5','GL_TEXTURE4_ARB','GL_TEXTURE4', - 'GL_TEXTURE3_ARB','GL_TEXTURE31_ARB','GL_TEXTURE31','GL_TEXTURE30_ARB','GL_TEXTURE30','GL_TEXTURE3','GL_TEXTURE2_ARB', - 'GL_TEXTURE29_ARB','GL_TEXTURE29','GL_TEXTURE28_ARB','GL_TEXTURE28','GL_TEXTURE27_ARB','GL_TEXTURE27','GL_TEXTURE26_ARB', - 'GL_TEXTURE26','GL_TEXTURE25_ARB','GL_TEXTURE25','GL_TEXTURE24_ARB','GL_TEXTURE24','GL_TEXTURE23_ARB','GL_TEXTURE23', - 'GL_TEXTURE22_ARB','GL_TEXTURE22','GL_TEXTURE21_ARB','GL_TEXTURE21','GL_TEXTURE20_ARB','GL_TEXTURE20','GL_TEXTURE2', - 'GL_TEXTURE1_ARB','GL_TEXTURE19_ARB','GL_TEXTURE19','GL_TEXTURE18_ARB','GL_TEXTURE18','GL_TEXTURE17_ARB', - 'GL_TEXTURE17','GL_TEXTURE16_ARB','GL_TEXTURE16','GL_TEXTURE15_ARB','GL_TEXTURE15','GL_TEXTURE14_ARB','GL_TEXTURE14', - 'GL_TEXTURE13_ARB','GL_TEXTURE13','GL_TEXTURE12_ARB','GL_TEXTURE12','GL_TEXTURE11_ARB','GL_TEXTURE11','GL_TEXTURE10_ARB', - 'GL_TEXTURE10','GL_TEXTURE1','GL_TEXTURE0_ARB','GL_TEXTURE0','GL_TEXTURE','GL_T4F_V4F','GL_T4F_C4F_N3F_V4F','GL_T2F_V3F', - 'GL_T2F_N3F_V3F','GL_T2F_C4UB_V3F','GL_T2F_C4F_N3F_V3F','GL_T2F_C3F_V3F','GL_T','GL_SUBPIXEL_BITS','GL_STEREO', - 'GL_STENCIL_WRITEMASK','GL_STENCIL_VALUE_MASK','GL_STENCIL_TEST','GL_STENCIL_REF','GL_STENCIL_PASS_DEPTH_PASS', - 'GL_STENCIL_PASS_DEPTH_FAIL','GL_STENCIL_INDEX','GL_STENCIL_FUNC','GL_STENCIL_FAIL','GL_STENCIL_CLEAR_VALUE', - 'GL_STENCIL_BUFFER_BIT','GL_STENCIL_BITS','GL_STENCIL','GL_STACK_UNDERFLOW','GL_STACK_OVERFLOW','GL_SRC_COLOR', - 'GL_SRC_ALPHA_SATURATE','GL_SRC_ALPHA','GL_SPOT_EXPONENT','GL_SPOT_DIRECTION','GL_SPOT_CUTOFF','GL_SPHERE_MAP', - 'GL_SPECULAR','GL_SOURCE2_RGB_EXT','GL_SOURCE2_RGB','GL_SOURCE2_ALPHA_EXT','GL_SOURCE2_ALPHA','GL_SOURCE1_RGB_EXT', - 'GL_SOURCE1_RGB','GL_SOURCE1_ALPHA_EXT','GL_SOURCE1_ALPHA','GL_SOURCE0_RGB_EXT','GL_SOURCE0_RGB','GL_SOURCE0_ALPHA_EXT', - 'GL_SOURCE0_ALPHA','GL_SMOOTH','GL_SHORT','GL_SHININESS','GL_SHADE_MODEL','GL_SET','GL_SELECTION_BUFFER_SIZE', - 'GL_SELECTION_BUFFER_POINTER','GL_SELECT','GL_SCISSOR_TEST','GL_SCISSOR_BOX','GL_SCISSOR_BIT','GL_S','GL_RIGHT', - 'GL_RGB_SCALE_EXT','GL_RGB_SCALE','GL_RGBA_MODE','GL_RGBA8','GL_RGBA4','GL_RGBA2','GL_RGBA16','GL_RGBA12','GL_RGBA', - 'GL_RGB8','GL_RGB5_A1','GL_RGB5','GL_RGB4','GL_RGB16','GL_RGB12','GL_RGB10_A2','GL_RGB10','GL_RGB','GL_RETURN', - 'GL_REPLACE','GL_REPEAT','GL_RENDER_MODE','GL_RENDERER','GL_RENDER','GL_RED_SCALE','GL_RED_BITS','GL_RED_BIAS', - 'GL_RED','GL_READ_BUFFER','GL_R3_G3_B2','GL_R','GL_QUAD_STRIP','GL_QUADS','GL_QUADRATIC_ATTENUATION','GL_Q', - 'GL_PROXY_TEXTURE_2D','GL_PROXY_TEXTURE_1D','GL_PROJECTION_STACK_DEPTH','GL_PROJECTION_MATRIX','GL_PROJECTION', - 'GL_PRIMARY_COLOR_EXT','GL_PRIMARY_COLOR','GL_PREVIOUS_EXT','GL_PREVIOUS','GL_POSITION','GL_POLYGON_TOKEN', - 'GL_POLYGON_STIPPLE_BIT','GL_POLYGON_STIPPLE','GL_POLYGON_SMOOTH_HINT','GL_POLYGON_SMOOTH','GL_POLYGON_OFFSET_UNITS', - 'GL_POLYGON_OFFSET_POINT','GL_POLYGON_OFFSET_LINE','GL_POLYGON_OFFSET_FILL','GL_POLYGON_OFFSET_FACTOR','GL_POLYGON_MODE', - 'GL_POLYGON_BIT','GL_POLYGON','GL_POINT_TOKEN','GL_POINT_SMOOTH_HINT','GL_POINT_SMOOTH','GL_POINT_SIZE_RANGE', - 'GL_POINT_SIZE_GRANULARITY','GL_POINT_SIZE','GL_POINT_BIT','GL_POINTS','GL_POINT','GL_PIXEL_MODE_BIT', - 'GL_PIXEL_MAP_S_TO_S_SIZE','GL_PIXEL_MAP_S_TO_S','GL_PIXEL_MAP_R_TO_R_SIZE','GL_PIXEL_MAP_R_TO_R','GL_PIXEL_MAP_I_TO_R_SIZE', - 'GL_PIXEL_MAP_I_TO_R','GL_PIXEL_MAP_I_TO_I_SIZE','GL_PIXEL_MAP_I_TO_I','GL_PIXEL_MAP_I_TO_G_SIZE','GL_PIXEL_MAP_I_TO_G', - 'GL_PIXEL_MAP_I_TO_B_SIZE','GL_PIXEL_MAP_I_TO_B','GL_PIXEL_MAP_I_TO_A_SIZE','GL_PIXEL_MAP_I_TO_A','GL_PIXEL_MAP_G_TO_G_SIZE', - 'GL_PIXEL_MAP_G_TO_G','GL_PIXEL_MAP_B_TO_B_SIZE','GL_PIXEL_MAP_B_TO_B','GL_PIXEL_MAP_A_TO_A_SIZE','GL_PIXEL_MAP_A_TO_A', - 'GL_PHONG_WIN','GL_PHONG_HINT_WIN','GL_PERSPECTIVE_CORRECTION_HINT','GL_PASS_THROUGH_TOKEN','GL_PACK_SWAP_BYTES', - 'GL_PACK_SKIP_ROWS','GL_PACK_SKIP_PIXELS','GL_PACK_ROW_LENGTH','GL_PACK_LSB_FIRST','GL_PACK_ALIGNMENT','GL_OUT_OF_MEMORY', - 'GL_OR_REVERSE','GL_OR_INVERTED','GL_ORDER','GL_OR','GL_OPERAND2_RGB_EXT','GL_OPERAND2_RGB','GL_OPERAND2_ALPHA_EXT', - 'GL_OPERAND2_ALPHA','GL_OPERAND1_RGB_EXT','GL_OPERAND1_RGB','GL_OPERAND1_ALPHA_EXT','GL_OPERAND1_ALPHA','GL_OPERAND0_RGB_EXT', - 'GL_OPERAND0_RGB','GL_OPERAND0_ALPHA_EXT','GL_OPERAND0_ALPHA','GL_ONE_MINUS_SRC_COLOR','GL_ONE_MINUS_SRC_ALPHA', - 'GL_ONE_MINUS_DST_COLOR','GL_ONE_MINUS_DST_ALPHA','GL_ONE','GL_OBJECT_PLANE','GL_OBJECT_LINEAR','GL_NO_ERROR', - 'GL_NOTEQUAL','GL_NORMAL_ARRAY_TYPE_EXT','GL_NORMAL_ARRAY_TYPE','GL_NORMAL_ARRAY_STRIDE_EXT','GL_NORMAL_ARRAY_STRIDE', - 'GL_NORMAL_ARRAY_POINTER_EXT','GL_NORMAL_ARRAY_POINTER','GL_NORMAL_ARRAY_EXT','GL_NORMAL_ARRAY_COUNT_EXT', - 'GL_NORMAL_ARRAY','GL_NORMALIZE','GL_NOR','GL_NOOP','GL_NONE','GL_NICEST','GL_NEVER','GL_NEAREST_MIPMAP_NEAREST','GL_NEAREST_MIPMAP_LINEAR', - 'GL_NEAREST','GL_NAND','GL_NAME_STACK_DEPTH','GL_N3F_V3F','GL_MULT','GL_MODULATE','GL_MODELVIEW_STACK_DEPTH','GL_MODELVIEW_MATRIX', - 'GL_MODELVIEW','GL_MAX_VIEWPORT_DIMS','GL_MAX_TEXTURE_UNITS_ARB','GL_MAX_TEXTURE_UNITS','GL_MAX_TEXTURE_STACK_DEPTH', - 'GL_MAX_TEXTURE_SIZE','GL_MAX_PROJECTION_STACK_DEPTH','GL_MAX_PIXEL_MAP_TABLE','GL_MAX_NAME_STACK_DEPTH','GL_MAX_MODELVIEW_STACK_DEPTH', - 'GL_MAX_LIST_NESTING','GL_MAX_LIGHTS','GL_MAX_EVAL_ORDER','GL_MAX_ELEMENTS_VERTICES_WIN','GL_MAX_ELEMENTS_INDICES_WIN', - 'GL_MAX_CLIP_PLANES','GL_MAX_CLIENT_ATTRIB_STACK_DEPTH','GL_MAX_ATTRIB_STACK_DEPTH','GL_MATRIX_MODE','GL_MAP_STENCIL', - 'GL_MAP_COLOR','GL_MAP2_VERTEX_4','GL_MAP2_VERTEX_3','GL_MAP2_TEXTURE_COORD_4','GL_MAP2_TEXTURE_COORD_3','GL_MAP2_TEXTURE_COORD_2', - 'GL_MAP2_TEXTURE_COORD_1','GL_MAP2_NORMAL','GL_MAP2_INDEX','GL_MAP2_GRID_SEGMENTS','GL_MAP2_GRID_DOMAIN','GL_MAP2_COLOR_4', - 'GL_MAP1_VERTEX_4','GL_MAP1_VERTEX_3','GL_MAP1_TEXTURE_COORD_4','GL_MAP1_TEXTURE_COORD_3','GL_MAP1_TEXTURE_COORD_2', - 'GL_MAP1_TEXTURE_COORD_1','GL_MAP1_NORMAL','GL_MAP1_INDEX','GL_MAP1_GRID_SEGMENTS','GL_MAP1_GRID_DOMAIN', - 'GL_MAP1_COLOR_4','GL_LUMINANCE_ALPHA','GL_LUMINANCE8_ALPHA8','GL_LUMINANCE8','GL_LUMINANCE6_ALPHA2','GL_LUMINANCE4_ALPHA4', - 'GL_LUMINANCE4','GL_LUMINANCE16_ALPHA16','GL_LUMINANCE16','GL_LUMINANCE12_ALPHA4','GL_LUMINANCE12_ALPHA12','GL_LUMINANCE12', - 'GL_LUMINANCE','GL_LOGIC_OP_MODE','GL_LOGIC_OP','GL_LOAD','GL_LIST_MODE','GL_LIST_INDEX','GL_LIST_BIT', - 'GL_LIST_BASE','GL_LINE_WIDTH_RANGE','GL_LINE_WIDTH_GRANULARITY','GL_LINE_WIDTH','GL_LINE_TOKEN','GL_LINE_STRIP','GL_LINE_STIPPLE_REPEAT', - 'GL_LINE_STIPPLE_PATTERN','GL_LINE_STIPPLE','GL_LINE_SMOOTH_HINT','GL_LINE_SMOOTH','GL_LINE_RESET_TOKEN','GL_LINE_LOOP', - 'GL_LINE_BIT','GL_LINES','GL_LINEAR_MIPMAP_NEAREST','GL_LINEAR_MIPMAP_LINEAR','GL_LINEAR_ATTENUATION','GL_LINEAR', - 'GL_LINE','GL_LIGHT_MODEL_TWO_SIDE','GL_LIGHT_MODEL_LOCAL_VIEWER','GL_LIGHT_MODEL_AMBIENT','GL_LIGHTING_BIT', - 'GL_LIGHTING','GL_LIGHT7','GL_LIGHT6','GL_LIGHT5','GL_LIGHT4','GL_LIGHT3','GL_LIGHT2','GL_LIGHT1','GL_LIGHT0', - 'GL_LESS','GL_LEQUAL','GL_LEFT','GL_KEEP','GL_INVERT','GL_INVALID_VALUE','GL_INVALID_OPERATION','GL_INVALID_ENUM','GL_INTERPOLATE_EXT', - 'GL_INTERPOLATE','GL_INTENSITY8','GL_INTENSITY4','GL_INTENSITY16','GL_INTENSITY12','GL_INTENSITY','GL_INT', - 'GL_INDEX_WRITEMASK','GL_INDEX_SHIFT','GL_INDEX_OFFSET','GL_INDEX_MODE','GL_INDEX_LOGIC_OP','GL_INDEX_CLEAR_VALUE','GL_INDEX_BITS', - 'GL_INDEX_ARRAY_TYPE_EXT','GL_INDEX_ARRAY_TYPE','GL_INDEX_ARRAY_STRIDE_EXT','GL_INDEX_ARRAY_STRIDE','GL_INDEX_ARRAY_POINTER_EXT', - 'GL_INDEX_ARRAY_POINTER','GL_INDEX_ARRAY_EXT','GL_INDEX_ARRAY_COUNT_EXT','GL_INDEX_ARRAY','GL_INCR','GL_HINT_BIT', - 'GL_GREEN_SCALE','GL_GREEN_BITS','GL_GREEN_BIAS','GL_GREEN','GL_GREATER','GL_GEQUAL','GL_FRONT_RIGHT','GL_FRONT_LEFT', - 'GL_FRONT_FACE','GL_FRONT_AND_BACK','GL_FRONT','GL_FOG_START','GL_FOG_SPECULAR_TEXTURE_WIN','GL_FOG_MODE','GL_FOG_INDEX', - 'GL_FOG_HINT','GL_FOG_END','GL_FOG_DENSITY','GL_FOG_COLOR','GL_FOG_BIT','GL_FOG','GL_FLOAT','GL_FLAT','GL_FILL', - 'GL_FEEDBACK_BUFFER_TYPE','GL_FEEDBACK_BUFFER_SIZE','GL_FEEDBACK_BUFFER_POINTER','GL_FEEDBACK','GL_FASTEST','GL_FALSE', - 'GL_EYE_PLANE','GL_EYE_LINEAR','GL_EXT_vertex_array','GL_EXT_paletted_texture','GL_EXT_bgra','GL_EXTENSIONS','GL_EXP2', - 'GL_EXP','GL_EVAL_BIT','GL_EQUIV','GL_EQUAL','GL_ENABLE_BIT','GL_EMISSION','GL_EDGE_FLAG_ARRAY_STRIDE_EXT','GL_EDGE_FLAG_ARRAY_STRIDE', - 'GL_EDGE_FLAG_ARRAY_POINTER_EXT','GL_EDGE_FLAG_ARRAY_POINTER','GL_EDGE_FLAG_ARRAY_EXT','GL_EDGE_FLAG_ARRAY_COUNT_EXT','GL_EDGE_FLAG_ARRAY', - 'GL_EDGE_FLAG','GL_DST_COLOR','GL_DST_ALPHA','GL_DRAW_PIXEL_TOKEN','GL_DRAW_BUFFER','GL_DOUBLE_EXT','GL_DOUBLEBUFFER', - 'GL_DOUBLE','GL_DONT_CARE','GL_DOMAIN','GL_DITHER','GL_DIFFUSE','GL_DEPTH_WRITEMASK','GL_DEPTH_TEST','GL_DEPTH_SCALE', - 'GL_DEPTH_RANGE','GL_DEPTH_FUNC','GL_DEPTH_COMPONENT','GL_DEPTH_CLEAR_VALUE','GL_DEPTH_BUFFER_BIT','GL_DEPTH_BITS', - 'GL_DEPTH_BIAS','GL_DEPTH','GL_DECR','GL_DECAL','GL_CW','GL_CURRENT_TEXTURE_COORDS','GL_CURRENT_RASTER_TEXTURE_COORDS','GL_CURRENT_RASTER_POSITION_VALID', - 'GL_CURRENT_RASTER_POSITION','GL_CURRENT_RASTER_INDEX','GL_CURRENT_RASTER_DISTANCE','GL_CURRENT_RASTER_COLOR','GL_CURRENT_NORMAL', - 'GL_CURRENT_INDEX','GL_CURRENT_COLOR','GL_CURRENT_BIT','GL_CULL_FACE_MODE','GL_CULL_FACE','GL_COPY_PIXEL_TOKEN', - 'GL_COPY_INVERTED','GL_COPY','GL_CONSTANT_EXT','GL_CONSTANT_ATTENUATION','GL_CONSTANT','GL_COMPILE_AND_EXECUTE','GL_COMPILE','GL_COMBINE_RGB_EXT', - 'GL_COMBINE_RGB','GL_COMBINE_EXT','GL_COMBINE_ALPHA_EXT','GL_COMBINE_ALPHA','GL_COMBINE','GL_COLOR_WRITEMASK', - 'GL_COLOR_TABLE_WIDTH_EXT','GL_COLOR_TABLE_RED_SIZE_EXT','GL_COLOR_TABLE_LUMINANCE_SIZE_EXT','GL_COLOR_TABLE_INTENSITY_SIZE_EXT', - 'GL_COLOR_TABLE_GREEN_SIZE_EXT','GL_COLOR_TABLE_FORMAT_EXT','GL_COLOR_TABLE_BLUE_SIZE_EXT','GL_COLOR_TABLE_ALPHA_SIZE_EXT', - 'GL_COLOR_MATERIAL_PARAMETER','GL_COLOR_MATERIAL_FACE','GL_COLOR_MATERIAL','GL_COLOR_LOGIC_OP','GL_COLOR_INDEXES', - 'GL_COLOR_INDEX8_EXT','GL_COLOR_INDEX4_EXT','GL_COLOR_INDEX2_EXT','GL_COLOR_INDEX1_EXT','GL_COLOR_INDEX16_EXT', - 'GL_COLOR_INDEX12_EXT','GL_COLOR_INDEX','GL_COLOR_CLEAR_VALUE','GL_COLOR_BUFFER_BIT','GL_COLOR_ARRAY_TYPE_EXT', - 'GL_COLOR_ARRAY_TYPE','GL_COLOR_ARRAY_STRIDE_EXT','GL_COLOR_ARRAY_STRIDE','GL_COLOR_ARRAY_SIZE_EXT','GL_COLOR_ARRAY_SIZE', - 'GL_COLOR_ARRAY_POINTER_EXT','GL_COLOR_ARRAY_POINTER','GL_COLOR_ARRAY_EXT','GL_COLOR_ARRAY_COUNT_EXT','GL_COLOR_ARRAY', - 'GL_COLOR','GL_COEFF','GL_CLIP_PLANE5','GL_CLIP_PLANE4','GL_CLIP_PLANE3','GL_CLIP_PLANE2','GL_CLIP_PLANE1','GL_CLIP_PLANE0', - 'GL_CLIENT_VERTEX_ARRAY_BIT','GL_CLIENT_PIXEL_STORE_BIT','GL_CLIENT_ATTRIB_STACK_DEPTH','GL_CLIENT_ALL_ATTRIB_BITS', - 'GL_CLIENT_ACTIVE_TEXTURE_ARB','GL_CLIENT_ACTIVE_TEXTURE','GL_CLEAR','GL_CLAMP','GL_CCW','GL_C4UB_V3F','GL_C4UB_V2F', - 'GL_C4F_N3F_V3F','GL_C3F_V3F','GL_BYTE','GL_BLUE_SCALE','GL_BLUE_BITS','GL_BLUE_BIAS','GL_BLUE','GL_BLEND_SRC','GL_BLEND_DST', - 'GL_BLEND','GL_BITMAP_TOKEN','GL_BITMAP','GL_BGR_EXT','GL_BGRA_EXT','GL_BACK_RIGHT','GL_BACK_LEFT','GL_BACK', - 'GL_AUX_BUFFERS','GL_AUX3','GL_AUX2','GL_AUX1','GL_AUX0','GL_AUTO_NORMAL','GL_ATTRIB_STACK_DEPTH','GL_AND_REVERSE', - 'GL_AND_INVERTED','GL_AND','GL_AMBIENT_AND_DIFFUSE','GL_AMBIENT','GL_ALWAYS','GL_ALPHA_TEST_REF','GL_ALPHA_TEST_FUNC', - 'GL_ALPHA_TEST','GL_ALPHA_SCALE','GL_ALPHA_BITS','GL_ALPHA_BIAS','GL_ALPHA8','GL_ALPHA4','GL_ALPHA16','GL_ALPHA12', - 'GL_ALPHA','GL_ALL_ATTRIB_BITS','GL_ADD_SIGNED_EXT','GL_ADD_SIGNED','GL_ADD','GL_ACTIVE_TEXTURE_ARB','GL_ACTIVE_TEXTURE', - 'GL_ACCUM_RED_BITS','GL_ACCUM_GREEN_BITS','GL_ACCUM_CLEAR_VALUE','GL_ACCUM_BUFFER_BIT','GL_ACCUM_BLUE_BITS','GL_ACCUM_ALPHA_BITS', - 'GL_ACCUM','GL_4_BYTES','GL_4D_COLOR_TEXTURE','GL_3_BYTES','GL_3D_COLOR_TEXTURE','GL_3D_COLOR','GL_3D','GL_2_BYTES', - 'GL_2D','GLU_V_STEP','GLU_VERTEX','GLU_VERSION_1_2','GLU_VERSION_1_1','GLU_VERSION','GLU_U_STEP','GLU_UNKNOWN','GLU_TRUE', - 'GLU_TESS_WINDING_RULE','GLU_TESS_WINDING_POSITIVE','GLU_TESS_WINDING_ODD','GLU_TESS_WINDING_NONZERO','GLU_TESS_WINDING_NEGATIVE', - 'GLU_TESS_WINDING_ABS_GEQ_TWO','GLU_TESS_VERTEX_DATA','GLU_TESS_VERTEX','GLU_TESS_TOLERANCE','GLU_TESS_NEED_COMBINE_CALLBACK','GLU_TESS_MISSING_END_POLYGON', - 'GLU_TESS_MISSING_END_CONTOUR','GLU_TESS_MISSING_BEGIN_POLYGON','GLU_TESS_MISSING_BEGIN_CONTOUR','GLU_TESS_ERROR_DATA', - 'GLU_TESS_ERROR8','GLU_TESS_ERROR7','GLU_TESS_ERROR6','GLU_TESS_ERROR5','GLU_TESS_ERROR4','GLU_TESS_ERROR3','GLU_TESS_ERROR2', - 'GLU_TESS_ERROR1','GLU_TESS_ERROR','GLU_TESS_END_DATA','GLU_TESS_END','GLU_TESS_EDGE_FLAG_DATA','GLU_TESS_EDGE_FLAG', - 'GLU_TESS_COORD_TOO_LARGE','GLU_TESS_COMBINE_DATA','GLU_TESS_COMBINE','GLU_TESS_BOUNDARY_ONLY','GLU_TESS_BEGIN_DATA', - 'GLU_TESS_BEGIN','GLU_SMOOTH','GLU_SILHOUETTE','GLU_SAMPLING_TOLERANCE','GLU_SAMPLING_METHOD','GLU_POINT','GLU_PATH_LENGTH', - 'GLU_PARAMETRIC_TOLERANCE','GLU_PARAMETRIC_ERROR','GLU_OUT_OF_MEMORY','GLU_OUTSIDE','GLU_OUTLINE_POLYGON','GLU_OUTLINE_PATCH', - 'GLU_NURBS_ERROR9','GLU_NURBS_ERROR8','GLU_NURBS_ERROR7','GLU_NURBS_ERROR6','GLU_NURBS_ERROR5','GLU_NURBS_ERROR4', - 'GLU_NURBS_ERROR37','GLU_NURBS_ERROR36','GLU_NURBS_ERROR35','GLU_NURBS_ERROR34','GLU_NURBS_ERROR33','GLU_NURBS_ERROR32', - 'GLU_NURBS_ERROR31','GLU_NURBS_ERROR30','GLU_NURBS_ERROR3','GLU_NURBS_ERROR29','GLU_NURBS_ERROR28','GLU_NURBS_ERROR27','GLU_NURBS_ERROR26', - 'GLU_NURBS_ERROR25','GLU_NURBS_ERROR24','GLU_NURBS_ERROR23','GLU_NURBS_ERROR22','GLU_NURBS_ERROR21','GLU_NURBS_ERROR20', - 'GLU_NURBS_ERROR2','GLU_NURBS_ERROR19','GLU_NURBS_ERROR18','GLU_NURBS_ERROR17','GLU_NURBS_ERROR16','GLU_NURBS_ERROR15','GLU_NURBS_ERROR14', - 'GLU_NURBS_ERROR13','GLU_NURBS_ERROR12','GLU_NURBS_ERROR11','GLU_NURBS_ERROR10','GLU_NURBS_ERROR1','GLU_NONE', - 'GLU_MAP1_TRIM_3','GLU_MAP1_TRIM_2','GLU_LINE','GLU_INVALID_VALUE','GLU_INVALID_ENUM','GLU_INTERIOR','GLU_INSIDE','GLU_INCOMPATIBLE_GL_VERSION', - 'GLU_FLAT','GLU_FILL','GLU_FALSE','GLU_EXTERIOR','GLU_EXTENSIONS','GLU_ERROR','GLU_END','GLU_EDGE_FLAG','GLU_DOMAIN_DISTANCE', - 'GLU_DISPLAY_MODE','GLU_CW','GLU_CULLING','GLU_CCW','GLU_BEGIN','GLU_AUTO_LOAD_MATRIX','CHANNEL_UNORDERED','CHANNEL_ORDERED', - 'CHANNEL_MAX' - ), - 2 => array( - - // Red Lowercase Keywords - - 'WriteWord','WriteString','WriteReal','WriteLine','WriteInt','WriteFloat','WriteDouble','WriteChar','WriteByte', - 'windowwidth','windowheight','waittimer','Vec4','Vec3','Vec2','val','UpdateJoystick','ucase$','Transpose','tickcount', - 'textscroll','textrows','textmode','textcols','tanh','tand','tan','synctimercatchup','synctimer','swapbuffers', - 'str$','stopsoundvoice','stopsounds','stopmusic','sqrt','sqr','sprzorder','spryvel','sprytiles','sprysize','spryrepeat', - 'spryflip','sprycentre','spry','sprxvel','sprxtiles','sprxsize','sprxrepeat','sprxflip','sprxcentre','sprx', - 'sprvisible','sprvel','sprtype','sprtop','sprspin','sprsolid','sprsetzorder','sprsetyvel','sprsetysize','sprsetyrepeat', - 'sprsetyflip','sprsetycentre','sprsety','sprsetxvel','sprsetxsize','sprsetxrepeat','sprsetxflip','sprsetxcentre', - 'sprsetx','sprsetvisible','sprsetvel','sprsettiles','sprsettextures','sprsettexture','sprsetspin','sprsetsolid', - 'sprsetsize','sprsetscale','sprsetpos','sprsetparallax','sprsetframe','sprsetcolor','sprsetanimspeed','sprsetanimloop', - 'sprsetangle','sprsetalpha','sprscale','sprright','sprpos','sprparallax','sprleft','spriteareawidth','spriteareaheight', - 'sprframe','sprcolor','sprcameraz','sprcameray','sprcamerax','sprcamerasetz','sprcamerasety','sprcamerasetx', - 'sprcamerasetpos','sprcamerasetfov','sprcamerasetangle','sprcamerapos','sprcamerafov','sprcameraangle', - 'sprbottom','spranimspeed','spranimloop','spranimdone','sprangle','spralpha','spraddtextures','spraddtexture', - 'sounderror','sleep','sind','sin','showcursor','sgn','settextscroll','setmusicvolume','SendMessage','Seek', - 'scankeydown','RTInvert','rnd','right$','resizetext','resizespritearea','RejectConnection','ReceiveMessage','ReadWord', - 'ReadText','ReadReal','ReadLine','ReadInt','ReadFloat','ReadDouble','ReadChar','ReadByte','randomize','printr', - 'print','pow','playsound','playmusic','performancecounter','Orthonormalize','OpenFileWrite','OpenFileRead','Normalize', - 'newtilemap','newsprite','NewServer','NewConnection','musicplaying','mouse_yd','mouse_y','mouse_xd','mouse_x', - 'mouse_wheel','mouse_button','mid$','MessageSmoothed','MessageReliable','MessagePending','MessageChannel','maxtextureunits', - 'MatrixZero','MatrixTranslate','MatrixScale','MatrixRotateZ','MatrixRotateY','MatrixRotateX','MatrixRotate','MatrixIdentity', - 'MatrixCrossProduct','MatrixBasis','log','locate','loadtexture','loadsound','loadmipmaptexture','loadmipmapimagestrip', - 'loadimagestrip','loadimage','Length','len','left$','lcase$','keydown','Joy_Y','Joy_X','Joy_Up','Joy_Right','Joy_Left', - 'Joy_Keys','Joy_Down','Joy_Button','Joy_3','Joy_2','Joy_1','Joy_0','int','inscankey','input$','inkey$','inittimer', - 'imagewidth','imagestripframes','imageheight','imageformat','imagedatatype','hidecursor','glViewport','glVertex4sv', - 'glVertex4s','glVertex4iv','glVertex4i','glVertex4fv','glVertex4f','glVertex4dv','glVertex4d','glVertex3sv','glVertex3s', - 'glVertex3iv','glVertex3i','glVertex3fv','glVertex3f','glVertex3dv','glVertex3d','glVertex2sv','glVertex2s','glVertex2iv', - 'glVertex2i','glVertex2fv','glVertex2f','glVertex2dv','glVertex2d','gluPerspective','gluOrtho2D','gluLookAt', - 'glubuild2dmipmaps','glTranslatef','glTranslated','gltexsubimage2d','glTexParameteriv','glTexParameteri', - 'glTexParameterfv','glTexParameterf','glteximage2d','glTexGeniv','glTexGeni','glTexGenfv','glTexGenf','glTexGendv', - 'glTexGend','glTexEnviv','glTexEnvi','glTexEnvfv','glTexEnvf','glTexCoord4sv','glTexCoord4s','glTexCoord4iv','glTexCoord4i', - 'glTexCoord4fv','glTexCoord4f','glTexCoord4dv','glTexCoord4d','glTexCoord3sv','glTexCoord3s','glTexCoord3iv','glTexCoord3i', - 'glTexCoord3fv','glTexCoord3f','glTexCoord3dv','glTexCoord3d','glTexCoord2sv','glTexCoord2s','glTexCoord2iv','glTexCoord2i', - 'glTexCoord2fv','glTexCoord2f','glTexCoord2dv','glTexCoord2d','glTexCoord1sv','glTexCoord1s','glTexCoord1iv','glTexCoord1i','glTexCoord1fv', - 'glTexCoord1f','glTexCoord1dv','glTexCoord1d','glStencilOp','glStencilMask','glStencilFunc','glShadeModel','glSelectBuffer', - 'glScissor','glScalef','glScaled','glRotatef','glRotated','glRenderMode','glRectsv','glRects','glRectiv','glRecti', - 'glRectfv','glRectf','glRectdv','glRectd','glReadBuffer','glRasterPos4sv','glRasterPos4s','glRasterPos4iv', - 'glRasterPos4i','glRasterPos4fv','glRasterPos4f','glRasterPos4dv','glRasterPos4d','glRasterPos3sv','glRasterPos3s', - 'glRasterPos3iv','glRasterPos3i','glRasterPos3fv','glRasterPos3f','glRasterPos3dv','glRasterPos3d','glRasterPos2sv', - 'glRasterPos2s','glRasterPos2iv','glRasterPos2i','glRasterPos2fv','glRasterPos2f','glRasterPos2dv','glRasterPos2d', - 'glPushName','glPushMatrix','glPushClientAttrib','glPushAttrib','glPrioritizeTextures','glPopName','glPopMatrix', - 'glPopClientAttrib','glPopAttrib','glpolygonstipple','glPolygonOffset','glPolygonMode','glPointSize','glPixelZoom', - 'glPixelTransferi','glPixelTransferf','glPixelStorei','glPixelStoref','glPassThrough','glOrtho','glNormal3sv','glNormal3s', - 'glNormal3iv','glNormal3i','glNormal3fv','glNormal3f','glNormal3dv','glNormal3d','glNormal3bv','glNormal3b','glNewList', - 'glMultMatrixf','glMultMatrixd','glmultitexcoord2f','glmultitexcoord2d','glMatrixMode','glMaterialiv','glMateriali', - 'glMaterialfv','glMaterialf','glMapGrid2f','glMapGrid2d','glMapGrid1f','glMapGrid1d','glLogicOp','glLoadName','glLoadMatrixf', - 'glLoadMatrixd','glLoadIdentity','glListBase','glLineWidth','glLineStipple','glLightModeliv','glLightModeli','glLightModelfv', - 'glLightModelf','glLightiv','glLighti','glLightfv','glLightf','glIsTexture','glIsList','glIsEnabled','glInitNames', - 'glIndexubv','glIndexub','glIndexsv','glIndexs','glIndexMask','glIndexiv','glIndexi','glIndexfv','glIndexf','glIndexdv', - 'glIndexd','glHint','glGetTexParameteriv','glGetTexParameterfv','glGetTexLevelParameteriv','glGetTexLevelParameterfv', - 'glGetTexGeniv','glGetTexGenfv','glGetTexGendv','glGetTexEnviv','glGetTexEnvfv','glgetstring','glgetpolygonstipple','glGetPixelMapuiv', - 'glGetMaterialiv','glGetMaterialfv','glGetLightiv','glGetLightfv','glGetIntegerv','glGetFloatv', - 'glGetError','glGetDoublev','glGetClipPlane','glGetBooleanv','glgentextures','glgentexture', - 'glgenlists','glFrustum','glFrontFace','glFogiv','glFogi','glFogfv','glFogf','glFlush','glFinish','glFeedbackBuffer', - 'glEvalPoint2','glEvalPoint1','glEvalMesh2','glEvalMesh1','glEvalCoord2fv','glEvalCoord2f','glEvalCoord2dv','glEvalCoord2d', - 'glEvalCoord1fv','glEvalCoord1f','glEvalCoord1dv','glEvalCoord1d','glEndList','glEnd','glEnableClientState','glEnable', - 'glEdgeFlagv','glEdgeFlag','glDrawBuffer','glDrawArrays','glDisableClientState','glDisable','glDepthRange','glDepthMask', - 'glDepthFunc','gldeletetextures','gldeletetexture','gldeletelists','glCullFace','glCopyTexSubImage2D','glCopyTexSubImage1D', - 'glCopyTexImage2D','glCopyTexImage1D','glColorMaterial','glColorMask','glColor4usv','glColor4us','glColor4uiv','glColor4ui', - 'glColor4ubv','glColor4ub','glColor4sv','glColor4s','glColor4iv','glColor4i','glColor4fv','glColor4f','glColor4dv', - 'glColor4d','glColor4bv','glColor4b','glColor3usv','glColor3us','glColor3uiv','glColor3ui','glColor3ubv','glColor3ub', - 'glColor3sv','glColor3s','glColor3iv','glColor3i','glColor3fv','glColor3f','glColor3dv','glColor3d','glColor3bv', - 'glColor3b','glClipPlane','glClearStencil','glClearIndex','glClearDepth','glClearColor','glClearAccum','glClear', - 'glcalllists','glCallList','glBlendFunc','glBindTexture','glBegin','glArrayElement','glAreTexturesResident', - 'glAlphaFunc','glactivetexture','glAccum','font','FindNextFile','FindFirstFile','FindClose','FileError', - 'extensionsupported','exp','execute','EndOfFile','drawtext','divbyzero','Determinant','deletesprite','deletesound', - 'DeleteServer','deleteimage','DeleteConnection','defaultfont','CrossProduct','cosd','cos','copysprite','ConnectionPending', - 'ConnectionHandShaking','ConnectionConnected','ConnectionAddress','compilererrorline','compilererrorcol','compilererror', - 'compilefile','compile','color','cls','CloseFile','clearregion','clearline','clearkeys','chr$','charat$','bindsprite', - 'beep','atnd','atn2d','atn2','atn','atand','asc','argcount','arg','animatesprites','AcceptConnection','abs' - ), - 3 => array( - - // Blue Lowercase Keywords - - 'xor','while','wend','until','type','traditional_print','traditional','to','then','struc','string','step','single', - 'run','return','reset','read','or','null','not','next','lor','loop','language','land','integer','input','if', - 'goto','gosub','for','endstruc','endif','end','elseif','else','double','do','dim','data','const','basic4gl','as', - 'and','alloc' - ) - - ), - 'SYMBOLS' => array( - '=', '<', '>', '>=', '<=', '+', '-', '*', '/', '%', '(', ')', '{', '}', '[', ']', '&', ';', ':', '$' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000080; font-weight: bold;', - 2 => 'color: #FF0000;', - 3 => 'color: #0000FF;' - ), - 'COMMENTS' => array( - 1 => 'color: #657CC4; font-style: italic;' - ), - 'BRACKETS' => array( - 0 => 'color: #000080;' - ), - 'STRINGS' => array( - 0 => 'color: #008000;' - ), - 'NUMBERS' => array( - 0 => 'color: #000080; font-weight: bold;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #0000FF;' - ), - 'ESCAPE_CHAR' => array( - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/library/Vendors/geshi/geshi/bf.php b/library/Vendors/geshi/geshi/bf.php deleted file mode 100644 index ba44e6ca..00000000 --- a/library/Vendors/geshi/geshi/bf.php +++ /dev/null @@ -1,114 +0,0 @@ - 'Brainfuck', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array(1 => '/[^\n+\-<>\[\]\.\,Y]+/s'), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - ), - 'SYMBOLS' => array( - 0 => array('+', '-'), - 1 => array('[', ']'), - 2 => array('<', '>'), - 3 => array('.', ','), - 4 => array('Y') //Brainfork Extension ;-) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #006600;', - 1 => 'color: #660000;', - 2 => 'color: #000066;', - 3 => 'color: #660066;', - 4 => 'color: #666600;' - ), - 'ESCAPE_CHAR' => array( - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'STRINGS' => GESHI_NEVER, - 'NUMBERS' => GESHI_NEVER - ), - 'KEYWORDS' => array( - 'DISALLOW_BEFORE' => '', - 'DISALLOW_AFTER' => '' - ) - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/bibtex.php b/library/Vendors/geshi/geshi/bibtex.php deleted file mode 100644 index e47e0665..00000000 --- a/library/Vendors/geshi/geshi/bibtex.php +++ /dev/null @@ -1,183 +0,0 @@ - 'BibTeX', - 'OOLANG' => false, - 'COMMENT_SINGLE' => array( - 1 => '%%' - ), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 0 => array( - '@comment','@preamble','@string' - ), - // Standard entry types - 1 => array( - '@article','@book','@booklet','@conference','@inbook', - '@incollection','@inproceedings','@manual','@mastersthesis', - '@misc','@phdthesis','@proceedings','@techreport','@unpublished' - ), - // Custom entry types - 2 => array( - '@collection','@patent','@webpage' - ), - // Standard entry field names - 3 => array( - 'address','annote','author','booktitle','chapter','crossref', - 'edition','editor','howpublished','institution','journal','key', - 'month','note','number','organization','pages','publisher','school', - 'series','title','type','volume','year' - ), - // Custom entry field names - 4 => array( - 'abstract','affiliation','chaptername','cited-by','cites', - 'contents','copyright','date-added','date-modified','doi','eprint', - 'isbn','issn','keywords','language','lccn','lib-congress', - 'location','price','rating','read','size','source','url' - ) - ), - 'URLS' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'SYMBOLS' => array( - '{', '}', '#', '=', ',' - ), - 'CASE_SENSITIVE' => array( - 1 => false, - 2 => false, - 3 => false, - 4 => false, - GESHI_COMMENTS => false, - ), - // Define the colors for the groups listed above - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #C02020;', // Standard entry types - 2 => 'color: #C02020;', // Custom entry types - 3 => 'color: #C08020;', // Standard entry field names - 4 => 'color: #C08020;' // Custom entry field names - ), - 'COMMENTS' => array( - 1 => 'color: #2C922C; font-style: italic;' - ), - 'STRINGS' => array( - 0 => 'color: #2020C0;' - ), - 'SYMBOLS' => array( - 0 => 'color: #E02020;' - ), - 'REGEXPS' => array( - 1 => 'color: #2020C0;', // {...} - 2 => 'color: #C08020;', // BibDesk fields - 3 => 'color: #800000;' // LaTeX commands - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000000; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #E02020;' - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'REGEXPS' => array( - // {parameters} - 1 => array( - GESHI_SEARCH => "(?<=\\{)(?:\\{(?R)\\}|[^\\{\\}])*(?=\\})", - GESHI_REPLACE => '\0', - GESHI_MODIFIERS => 's', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - 2 => array( - GESHI_SEARCH => "\bBdsk-(File|Url)-\d+", - GESHI_REPLACE => '\0', - GESHI_MODIFIERS => 'Us', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - 3 => array( - GESHI_SEARCH => "\\\\[A-Za-z0-9]*+", - GESHI_REPLACE => '\0', - GESHI_MODIFIERS => 'Us', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'OBJECT_SPLITTERS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'NUMBERS' => GESHI_NEVER - ), - 'KEYWORDS' => array( - 3 => array( - 'DISALLOWED_AFTER' => '(?=\s*=)' - ), - 4 => array( - 'DISALLOWED_AFTER' => '(?=\s*=)' - ), - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/blitzbasic.php b/library/Vendors/geshi/geshi/blitzbasic.php deleted file mode 100644 index e43ec463..00000000 --- a/library/Vendors/geshi/geshi/blitzbasic.php +++ /dev/null @@ -1,185 +0,0 @@ - 'BlitzBasic', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'If','EndIf','ElseIf','Else If','Else','While','Wend','Return','Next','Include','End Type','End Select','End If','End Function','End','Select', - 'Type','Forever','For','Or','And','AppTitle','Case','Goto','Gosub','Step','Stop','Int','Last','False','Then','To','True','Until','Float', - 'String','Before','Not' - ), - 2 => array( - // All Functions - 2D BB and 3D BB - 'Xor','WriteString','WriteShort','WritePixelFast','WritePixel','WriteLine','WriteInt','WriteFloat','WriteFile','WriteBytes', - 'WriteByte','Write','WaitTimer','WaitMouse','WaitKey','WaitJoy','VWait','Viewport', - 'Upper','UpdateGamma','UnlockBuffer','UDPTimeouts','UDPStreamPort','UDPStreamIP','UDPMsgPort','UDPMsgIP', - 'Trim','TotalVidMem','TileImage','TileBlock','TFormImage','TFormFilter','Text', - 'TCPTimeouts','TCPStreamPort','TCPStreamIP','Tan','SystemProperty','StringWidth','StringHeight','Str','StopNetGame', - 'StopChannel','StartNetGame','Sqr','SoundVolume','SoundPitch','SoundPan','Sin','Shr', - 'ShowPointer','Shl','Sgn','SetGfxDriver','SetGamma','SetFont','SetEnv','SetBuffer','SendUDPMsg','SendNetMsg', - 'SeekFile','SeedRnd','ScanLine','ScaleImage','SaveImage','SaveBuffer','Sar','RuntimeError','RSet', - 'RotateImage','RndSeed','Rnd','Right','ResumeChannel','Restore','ResizeImage','ResizeBank','Replace', - 'Repeat','RecvUDPMsg','RecvNetMsg','RectsOverlap','Rect','ReadString','ReadShort','ReadPixelFast','ReadPixel','ReadLine', - 'ReadInt','ReadFloat','ReadFile','ReadDir','ReadBytes','ReadByte','ReadAvail','Read','Rand','Print', - 'PokeShort','PokeInt','PokeFloat','PokeByte','Plot','PlaySound','PlayMusic','PlayCDTrack','Pi','PeekShort', - 'PeekInt','PeekFloat','PeekByte','PauseChannel','Oval','Origin','OpenTCPStream','OpenMovie','OpenFile', - 'Null','NextFile','New','NetPlayerName','NetPlayerLocal','NetMsgType','NetMsgTo','NetMsgFrom', - 'NetMsgData','MovieWidth','MoviePlaying','MovieHeight','MoveMouse','MouseZSpeed','MouseZ','MouseYSpeed','MouseY','MouseXSpeed', - 'MouseX','MouseHit','MouseDown','Mod','Millisecs','MidHandle','Mid','MaskImage','LSet','Lower', - 'LoopSound','Log10','Log','LockBuffer','Locate','Local','LoadSound','LoadImage','LoadFont','LoadBuffer', - 'LoadAnimImage','Line','Len','Left','KeyHit','KeyDown','JoyZDir','JoyZ','JoyYDir', - 'JoyYaw','JoyY','JoyXDir','JoyX','JoyVDir','JoyV','JoyUDir','JoyU','JoyType','JoyRoll', - 'JoyPitch','JoyHit','JoyHat','JoyDown','JoinNetGame','Instr','Insert','Input', - 'ImageYHandle','ImageXHandle','ImageWidth','ImagesOverlap','ImagesCollide','ImageRectOverlap','ImageRectCollide','ImageHeight','ImageBuffer', - 'HostNetGame','HostIP','HidePointer','Hex','HandleImage','GraphicsWidth','GraphicsHeight','GraphicsDepth','GraphicsBuffer','Graphics', - 'GrabImage','Global','GFXModeWidth','GFXModeHeight','GfxModeExists','GFXModeDepth','GfxDriverName','GetMouse', - 'GetKey','GetJoy','GetEnv','GetColor','GammaRed','GammaGreen','GammaBlue','Function','FrontBuffer','FreeTimer', - 'FreeSound','FreeImage','FreeFont','FreeBank','FontWidth','FontHeight','FlushMouse','FlushKeys', - 'FlushJoy','Floor','Flip','First','FileType','FileSize','FilePos','Field', - 'Exp','Exit','ExecFile','Eof','EndGraphics','Each','DrawMovie','DrawImageRect','DrawImage','DrawBlockRect','DrawBlock', - 'DottedIP','Dim','DeleteNetPlayer','DeleteFile','DeleteDir','Delete','Delay','Default','DebugLog','Data', - 'CurrentTime','CurrentDir','CurrentDate','CreateUDPStream','CreateTimer','CreateTCPServer','CreateNetPlayer','CreateImage','CreateDir','CreateBank', - 'CountHostIPs','CountGFXModes','CountGfxDrivers','Cos','CopyStream','CopyRect','CopyPixelFast','CopyPixel','CopyImage','CopyFile', - 'CopyBank','Const','CommandLine','ColorRed','ColorGreen','ColorBlue','Color','ClsColor','Cls','CloseUDPStream', - 'CloseTCPStream','CloseTCPServer','CloseMovie','CloseFile','CloseDir','Chr','ChannelVolume','ChannelPlaying','ChannelPitch','ChannelPan', - 'ChangeDir','Ceil','CallDLL','Bin','BankSize','BackBuffer','AvailVidMem','AutoMidHandle', - 'ATan2','ATan','ASin','Asc','After','ACos','AcceptTCPStream','Abs', - // 3D Commands - 'Wireframe','Windowed3D','WBuffer','VertexZ','VertexY', - 'VertexX','VertexW','VertexV','VertexU','VertexTexCoords','VertexRed','VertexNZ','VertexNY','VertexNX','VertexNormal', - 'VertexGreen','VertexCoords','VertexColor','VertexBlue','VertexAlpha','VectorYaw','VectorPitch','UpdateWorld','UpdateNormals','TurnEntity', - 'TrisRendered','TriangleVertex','TranslateEntity','TFormVector','TFormPoint','TFormNormal','TFormedZ','TFormedY','TFormedX','TextureWidth', - 'TextureName','TextureHeight','TextureFilter','TextureCoords','TextureBuffer','TextureBlend','TerrainZ','TerrainY','TerrainX','TerrainSize', - 'TerrainShading','TerrainHeight','TerrainDetail','SpriteViewMode','ShowEntity','SetCubeFace','SetAnimTime','SetAnimKey','ScaleTexture','ScaleSprite', - 'ScaleMesh','ScaleEntity','RotateTexture','RotateSprite','RotateMesh','RotateEntity','ResetEntity','RenderWorld','ProjectedZ','ProjectedY', - 'ProjectedX','PositionTexture','PositionMesh','PositionEntity','PointEntity','PickedZ','PickedY','PickedX','PickedTriangle','PickedTime', - 'PickedSurface','PickedNZ','PickedNY','PickedNX','PickedEntity','PaintSurface','PaintMesh','PaintEntity','NameEntity','MoveEntity', - 'ModifyTerrain','MeshWidth','MeshHeight','MeshesIntersect','MeshDepth','MD2AnimTime','MD2AnimLength','MD2Animating','LoadTexture','LoadTerrain', - 'LoadSprite','LoadMesh','LoadMD2','LoaderMatrix','LoadBSP','LoadBrush','LoadAnimTexture','LoadAnimSeq','LoadAnimMesh','Load3DSound', - 'LinePick','LightRange','LightMesh','LightConeAngles','LightColor','HWMultiTex','HideEntity','HandleSprite','Graphics3D','GfxMode3DExists', - 'GfxMode3D','GfxDriverCaps3D','GfxDriver3D','GetSurfaceBrush','GetSurface','GetParent','GetMatElement','GetEntityType','GetEntityBrush','GetChild', - 'GetBrushTexture','FreeTexture','FreeEntity','FreeBrush','FlipMesh','FitMesh','FindSurface','FindChild','ExtractAnimSeq','EntityZ', - 'EntityYaw','EntityY','EntityX','EntityVisible','EntityType','EntityTexture','EntityShininess','EntityRoll','EntityRadius','EntityPitch', - 'EntityPickMode','EntityPick','EntityParent','EntityOrder','EntityName','EntityInView','EntityFX','EntityDistance','EntityColor','EntityCollided', - 'EntityBox','EntityBlend','EntityAutoFade','EntityAlpha','EmitSound','Dither','DeltaYaw','DeltaPitch','CreateTexture','CreateTerrain', - 'CreateSurface','CreateSprite','CreateSphere','CreatePlane','CreatePivot','CreateMirror','CreateMesh','CreateListener','CreateLight','CreateCylinder', - 'CreateCube','CreateCone','CreateCamera','CreateBrush','CountVertices','CountTriangles','CountSurfaces','CountGfxModes3D','CountCollisions','CountChildren', - 'CopyMesh','CopyEntity','CollisionZ','CollisionY','CollisionX','CollisionTriangle','CollisionTime','CollisionSurface','Collisions','CollisionNZ', - 'CollisionNY','CollisionNX','CollisionEntity','ClearWorld','ClearTextureFilters','ClearSurface','ClearCollisions','CaptureWorld','CameraZoom','CameraViewport', - 'CameraRange','CameraProjMode','CameraProject','CameraPick','CameraFogRange','CameraFogMode','CameraFogColor','CameraClsMode','CameraClsColor','BSPLighting', - 'BSPAmbientLight','BrushTexture','BrushShininess','BrushFX','BrushColor','BrushBlend','BrushAlpha','AntiAlias','AnimTime','AnimSeq', - 'AnimLength','Animating','AnimateMD2','Animate','AmbientLight','AlignToVector','AddVertex','AddTriangle','AddMesh','AddAnimSeq', - ) - ), - 'SYMBOLS' => array( - '(',')' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000066; font-weight: bold;', - 2 => 'color: #0000ff;' - ), - 'COMMENTS' => array( - 1 => 'color: #D9D100; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000066;' - ), - 'STRINGS' => array( - 0 => 'color: #009900;' - ), - 'NUMBERS' => array( - 0 => 'color: #CC0000;' - ), - 'METHODS' => array( - 1 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000066;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - ) - ), - 'URLS' => array( - 1 => '', - 2 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - 1 => '\\' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => false, - 1 => false - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/bnf.php b/library/Vendors/geshi/geshi/bnf.php deleted file mode 100644 index f52df9cb..00000000 --- a/library/Vendors/geshi/geshi/bnf.php +++ /dev/null @@ -1,119 +0,0 @@ - 'bnf', - 'COMMENT_SINGLE' => array(';'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', "'"), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array(), - 'SYMBOLS' => array( - 0 => array('(', ')'), - 1 => array('<', '>'), - 2 => array('[', ']'), - 3 => array('{', '}'), - 4 => array('=', '*', '/', '|', ':'), - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false - ), - 'STYLES' => array( - 'KEYWORDS' => array(), - 'COMMENTS' => array( - 0 => 'color: #666666; font-style: italic;', // Single Line comments - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => '' - ), - 'STRINGS' => array( - 0 => 'color: #a00;', - 1 => 'color: #a00;' - ), - 'NUMBERS' => array( - 0 => '' - ), - 'METHODS' => array( - 0 => '' - ), - 'SYMBOLS' => array( - 0 => 'color: #000066; font-weight: bold;', // Round brackets - 1 => 'color: #000066; font-weight: bold;', // Angel Brackets - 2 => 'color: #000066; font-weight: bold;', // Square Brackets - 3 => 'color: #000066; font-weight: bold;', // BRaces - 4 => 'color: #006600; font-weight: bold;', // Other operator symbols - ), - 'REGEXPS' => array( - 0 => 'color: #007;', - ), - 'SCRIPT' => array( - 0 => '' - ) - ), - 'URLS' => array(), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - //terminal symbols - 0 => array( - GESHI_SEARCH => '(<)([^&]+?)(>)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/boo.php b/library/Vendors/geshi/geshi/boo.php deleted file mode 100644 index 09d4ee40..00000000 --- a/library/Vendors/geshi/geshi/boo.php +++ /dev/null @@ -1,217 +0,0 @@ - 'Boo', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'''", "'", '"""', '"'), - 'HARDQUOTE' => array('"""', '"""'), - 'HARDESCAPE' => array('\"""'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array(//Namespace - 'namespace', 'import', 'from' - ), - 2 => array(//Jump - 'yield', 'return', 'goto', 'continue', 'break' - ), - 3 => array(//Conditional - 'while', 'unless', 'then', 'in', 'if', 'for', 'else', 'elif' - ), - 4 => array(//Property - 'set', 'get' - ), - 5 => array(//Exception - 'try', 'raise', 'failure', 'except', 'ensure' - ), - 6 => array(//Visibility - 'public', 'private', 'protected', 'internal' - ), - 7 => array(//Define - 'struct', 'ref', 'of', 'interface', 'event', 'enum', 'do', 'destructor', 'def', 'constructor', 'class' - ), - 8 => array(//Cast - 'typeof', 'cast', 'as' - ), - 9 => array(//BiMacro - 'yieldAll', 'using', 'unchecked', 'rawArayIndexing', 'print', 'normalArrayIndexing', 'lock', - 'debug', 'checked', 'assert' - ), - 10 => array(//BiAttr - 'required', 'property', 'meta', 'getter', 'default' - ), - 11 => array(//BiFunc - 'zip', 'shellp', 'shellm', 'shell', 'reversed', 'range', 'prompt', - 'matrix', 'map', 'len', 'join', 'iterator', 'gets', 'enumerate', 'cat', 'array' - ), - 12 => array(//HiFunc - '__switch__', '__initobj__', '__eval__', '__addressof__', 'quack' - ), - 13 => array(//Primitive - 'void', 'ushort', 'ulong', 'uint', 'true', 'timespan', 'string', 'single', - 'short', 'sbyte', 'regex', 'object', 'null', 'long', 'int', 'false', 'duck', - 'double', 'decimal', 'date', 'char', 'callable', 'byte', 'bool' - ), - 14 => array(//Operator - 'not', 'or', 'and', 'is', 'isa', - ), - 15 => array(//Modifier - 'virtual', 'transient', 'static', 'partial', 'override', 'final', 'abstract' - ), - 16 => array(//Access - 'super', 'self' - ), - 17 => array(//Pass - 'pass' - ) - ), - 'SYMBOLS' => array( - '[|', '|]', '${', '(', ')', '[', ']', '{', '}', '!', '@', '%', '&', '*', '|', '/', '<', '>', '+', '-', ';' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true, - 9 => true, - 10 => true, - 11 => true, - 12 => true, - 13 => true, - 14 => true, - 15 => true, - 16 => true, - 17 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color:green;font-weight:bold;', - 2 => 'color:navy;', - 3 => 'color:blue;font-weight:bold;', - 4 => 'color:#8B4513;', - 5 => 'color:teal;font-weight:bold;', - 6 => 'color:blue;font-weight:bold;', - 7 => 'color:blue;font-weight:bold;', - 8 => 'color:blue;font-weight:bold;', - 9 => 'color:maroon;', - 10 => 'color:maroon;', - 11 => 'color:purple;', - 12 => 'color:#4B0082;', - 13 => 'color:purple;font-weight:bold;', - 14 => 'color:#008B8B;font-weight:bold;', - 15 => 'color:brown;', - 16 => 'color:black;font-weight:bold;', - 17 => 'color:gray;' - ), - 'COMMENTS' => array( - 1 => 'color: #999999; font-style: italic;', - 2 => 'color: #999999; font-style: italic;', - 'MULTI' => 'color: #008000; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #0000FF; font-weight: bold;', - 'HARD' => 'color: #0000FF; font-weight: bold;', - ), - 'BRACKETS' => array( - 0 => 'color: #006400;' - ), - 'STRINGS' => array( - 0 => 'color: #008000;', - 'HARD' => 'color: #008000;' - ), - 'NUMBERS' => array( - 0 => 'color: #00008B;' - ), - 'METHODS' => array( - 0 => 'color: 000000;', - 1 => 'color: 000000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #006400;' - ), - 'REGEXPS' => array( - #0 => 'color: #0066ff;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '', - 9 => '', - 10 => '', - 11 => '', - 12 => '', - 13 => '', - 14 => '', - 15 => '', - 16 => '', - 17 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 0 => '.', - 1 => '::' - ), - 'REGEXPS' => array( - #0 => '%(@)?\/(?:(?(1)[^\/\\\\\r\n]+|[^\/\\\\\r\n \t]+)|\\\\[\/\\\\\w+()|.*?$^[\]{}\d])+\/%' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/library/Vendors/geshi/geshi/c.php b/library/Vendors/geshi/geshi/c.php deleted file mode 100644 index b0e2987d..00000000 --- a/library/Vendors/geshi/geshi/c.php +++ /dev/null @@ -1,202 +0,0 @@ - 'C', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Multiline-continued single-line comments - 1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m', - //Multiline-continued preprocessor define - 2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - //Simple Single Char Escapes - 1 => "#\\\\[\\\\abfnrtv\'\"?\n]#i", - //Hexadecimal Char Specs - 2 => "#\\\\x[\da-fA-F]{2}#", - //Hexadecimal Char Specs - 3 => "#\\\\u[\da-fA-F]{4}#", - //Hexadecimal Char Specs - 4 => "#\\\\U[\da-fA-F]{8}#", - //Octal Char Specs - 5 => "#\\\\[0-7]{1,3}#" - ), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B | - GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - 'if', 'return', 'while', 'case', 'continue', 'default', - 'do', 'else', 'for', 'switch', 'goto' - ), - 2 => array( - 'null', 'false', 'break', 'true', 'function', 'enum', 'extern', 'inline' - ), - 3 => array( - 'printf', 'cout' - ), - 4 => array( - 'auto', 'char', 'const', 'double', 'float', 'int', 'long', - 'register', 'short', 'signed', 'sizeof', 'static', 'struct', - 'typedef', 'union', 'unsigned', 'void', 'volatile', 'wchar_t', - - 'int8', 'int16', 'int32', 'int64', - 'uint8', 'uint16', 'uint32', 'uint64', - - 'int_fast8_t', 'int_fast16_t', 'int_fast32_t', 'int_fast64_t', - 'uint_fast8_t', 'uint_fast16_t', 'uint_fast32_t', 'uint_fast64_t', - - 'int_least8_t', 'int_least16_t', 'int_least32_t', 'int_least64_t', - 'uint_least8_t', 'uint_least16_t', 'uint_least32_t', 'uint_least64_t', - - 'int8_t', 'int16_t', 'int32_t', 'int64_t', - 'uint8_t', 'uint16_t', 'uint32_t', 'uint64_t', - - 'intmax_t', 'uintmax_t', 'intptr_t', 'uintptr_t' - ), - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', - '+', '-', '*', '/', '%', - '=', '<', '>', - '!', '^', '&', '|', - '?', ':', - ';', ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;', - 4 => 'color: #993333;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #339933;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 1 => 'color: #000099; font-weight: bold;', - 2 => 'color: #660099; font-weight: bold;', - 3 => 'color: #660099; font-weight: bold;', - 4 => 'color: #660099; font-weight: bold;', - 5 => 'color: #006699; font-weight: bold;', - 'HARD' => '', - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000dd;', - GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;', - GESHI_NUMBER_OCT_PREFIX => 'color: #208080;', - GESHI_NUMBER_HEX_PREFIX => 'color: #208080;', - GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;', - GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI => 'color:#800080;' - ), - 'METHODS' => array( - 1 => 'color: #202020;', - 2 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAMEL}.html', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/c_mac.php b/library/Vendors/geshi/geshi/c_mac.php deleted file mode 100644 index 1a034ae0..00000000 --- a/library/Vendors/geshi/geshi/c_mac.php +++ /dev/null @@ -1,227 +0,0 @@ - 'C (Mac)', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Multiline-continued single-line comments - 1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m', - //Multiline-continued preprocessor define - 2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - //Simple Single Char Escapes - 1 => "#\\\\[\\\\abfnrtv\'\"?\n]#i", - //Hexadecimal Char Specs - 2 => "#\\\\x[\da-fA-F]{2}#", - //Hexadecimal Char Specs - 3 => "#\\\\u[\da-fA-F]{4}#", - //Hexadecimal Char Specs - 4 => "#\\\\U[\da-fA-F]{8}#", - //Octal Char Specs - 5 => "#\\\\[0-7]{1,3}#" - ), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B | - GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - 'if', 'return', 'while', 'case', 'continue', 'default', - 'do', 'else', 'for', 'switch', 'goto' - ), - 2 => array( - 'NULL', 'false', 'break', 'true', 'enum', 'errno', 'EDOM', - 'ERANGE', 'FLT_RADIX', 'FLT_ROUNDS', 'FLT_DIG', 'DBL_DIG', 'LDBL_DIG', - 'FLT_EPSILON', 'DBL_EPSILON', 'LDBL_EPSILON', 'FLT_MANT_DIG', 'DBL_MANT_DIG', - 'LDBL_MANT_DIG', 'FLT_MAX', 'DBL_MAX', 'LDBL_MAX', 'FLT_MAX_EXP', 'DBL_MAX_EXP', - 'LDBL_MAX_EXP', 'FLT_MIN', 'DBL_MIN', 'LDBL_MIN', 'FLT_MIN_EXP', 'DBL_MIN_EXP', - 'LDBL_MIN_EXP', 'CHAR_BIT', 'CHAR_MAX', 'CHAR_MIN', 'SCHAR_MAX', 'SCHAR_MIN', - 'UCHAR_MAX', 'SHRT_MAX', 'SHRT_MIN', 'USHRT_MAX', 'INT_MAX', 'INT_MIN', - 'UINT_MAX', 'LONG_MAX', 'LONG_MIN', 'ULONG_MAX', 'HUGE_VAL', 'SIGABRT', - 'SIGFPE', 'SIGILL', 'SIGINT', 'SIGSEGV', 'SIGTERM', 'SIG_DFL', 'SIG_ERR', - 'SIG_IGN', 'BUFSIZ', 'EOF', 'FILENAME_MAX', 'FOPEN_MAX', 'L_tmpnam', - 'SEEK_CUR', 'SEEK_END', 'SEEK_SET', 'TMP_MAX', 'stdin', 'stdout', 'stderr', - 'EXIT_FAILURE', 'EXIT_SUCCESS', 'RAND_MAX', 'CLOCKS_PER_SEC', - // Mac-specific constants: - 'kCFAllocatorDefault' - ), - 3 => array( - 'printf', 'fprintf', 'snprintf', 'sprintf', 'assert', - 'isalnum', 'isalpha', 'isdigit', 'iscntrl', 'isgraph', 'islower', 'isprint', - 'ispunct', 'isspace', 'isupper', 'isxdigit', 'tolower', 'toupper', - 'exp', 'log', 'log10', 'pow', 'sqrt', 'ceil', 'floor', 'fabs', 'ldexp', - 'frexp', 'modf', 'fmod', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', 'atan2', - 'sinh', 'cosh', 'tanh', 'setjmp', 'longjmp', - 'va_start', 'va_arg', 'va_end', 'offsetof', 'sizeof', 'fopen', 'freopen', - 'fflush', 'fclose', 'remove', 'rename', 'tmpfile', 'tmpname', 'setvbuf', - 'setbuf', 'vfprintf', 'vprintf', 'vsprintf', 'fscanf', 'scanf', 'sscanf', - 'fgetc', 'fgets', 'fputc', 'fputs', 'getc', 'getchar', 'gets', 'putc', - 'putchar', 'puts', 'ungetc', 'fread', 'fwrite', 'fseek', 'ftell', 'rewind', - 'fgetpos', 'fsetpos', 'clearerr', 'feof', 'ferror', 'perror', 'abs', 'labs', - 'div', 'ldiv', 'atof', 'atoi', 'atol', 'strtod', 'strtol', 'strtoul', 'calloc', - 'malloc', 'realloc', 'free', 'abort', 'exit', 'atexit', 'system', 'getenv', - 'bsearch', 'qsort', 'rand', 'srand', 'strcpy', 'strncpy', 'strcat', 'strncat', - 'strcmp', 'strncmp', 'strcoll', 'strchr', 'strrchr', 'strspn', 'strcspn', - 'strpbrk', 'strstr', 'strlen', 'strerror', 'strtok', 'strxfrm', 'memcpy', - 'memmove', 'memcmp', 'memchr', 'memset', 'clock', 'time', 'difftime', 'mktime', - 'asctime', 'ctime', 'gmtime', 'localtime', 'strftime' - ), - 4 => array( - 'auto', 'char', 'const', 'double', 'float', 'int', 'long', - 'register', 'short', 'signed', 'static', 'struct', - 'typedef', 'union', 'unsigned', 'void', 'volatile', 'extern', 'jmp_buf', - 'signal', 'raise', 'va_list', 'ptrdiff_t', 'size_t', 'FILE', 'fpos_t', - 'div_t', 'ldiv_t', 'clock_t', 'time_t', 'tm', 'wchar_t', - - 'int8', 'int16', 'int32', 'int64', - 'uint8', 'uint16', 'uint32', 'uint64', - - 'int_fast8_t', 'int_fast16_t', 'int_fast32_t', 'int_fast64_t', - 'uint_fast8_t', 'uint_fast16_t', 'uint_fast32_t', 'uint_fast64_t', - - 'int_least8_t', 'int_least16_t', 'int_least32_t', 'int_least64_t', - 'uint_least8_t', 'uint_least16_t', 'uint_least32_t', 'uint_least64_t', - - 'int8_t', 'int16_t', 'int32_t', 'int64_t', - 'uint8_t', 'uint16_t', 'uint32_t', 'uint64_t', - - 'intmax_t', 'uintmax_t', 'intptr_t', 'uintptr_t', - - // Mac-specific types: - 'CFArrayRef', 'CFDictionaryRef', 'CFMutableDictionaryRef', 'CFBundleRef', 'CFSetRef', 'CFStringRef', - 'CFURLRef', 'CFLocaleRef', 'CFDateFormatterRef', 'CFNumberFormatterRef', 'CFPropertyListRef', - 'CFTreeRef', 'CFWriteStreamRef', 'CFCharacterSetRef', 'CFMutableStringRef', 'CFNotificationRef', - 'CFReadStreamRef', 'CFNull', 'CFAllocatorRef', 'CFBagRef', 'CFBinaryHeapRef', - 'CFBitVectorRef', 'CFBooleanRef', 'CFDataRef', 'CFDateRef', 'CFMachPortRef', 'CFMessagePortRef', - 'CFMutableArrayRef', 'CFMutableBagRef', 'CFMutableBitVectorRef', 'CFMutableCharacterSetRef', - 'CFMutableDataRef', 'CFMutableSetRef', 'CFNumberRef', 'CFPlugInRef', 'CFPlugInInstanceRef', - 'CFRunLoopRef', 'CFRunLoopObserverRef', 'CFRunLoopSourceRef', 'CFRunLoopTimerRef', 'CFSocketRef', - 'CFTimeZoneRef', 'CFTypeRef', 'CFUserNotificationRef', 'CFUUIDRef', 'CFXMLNodeRef', 'CFXMLParserRef', - 'CFXMLTreeRef' - ), - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000ff;', - 2 => 'color: #0000ff;', - 3 => 'color: #0000dd;', - 4 => 'color: #0000ff;' - ), - 'COMMENTS' => array( - 1 => 'color: #ff0000;', - 2 => 'color: #339900;', - 'MULTI' => 'color: #ff0000; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 1 => 'color: #000099; font-weight: bold;', - 2 => 'color: #660099; font-weight: bold;', - 3 => 'color: #660099; font-weight: bold;', - 4 => 'color: #660099; font-weight: bold;', - 5 => 'color: #006699; font-weight: bold;', - 'HARD' => '', - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #666666;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000dd;', - GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;', - GESHI_NUMBER_OCT_PREFIX => 'color: #208080;', - GESHI_NUMBER_HEX_PREFIX => 'color: #208080;', - GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;', - GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI => 'color:#800080;' - ), - 'METHODS' => array( - 1 => 'color: #00eeff;', - 2 => 'color: #00eeff;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAMEL}.html', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/caddcl.php b/library/Vendors/geshi/geshi/caddcl.php deleted file mode 100644 index 74310d6d..00000000 --- a/library/Vendors/geshi/geshi/caddcl.php +++ /dev/null @@ -1,126 +0,0 @@ - 'CAD DCL', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'boxed_column','boxed_radio_column','boxed_radio_row','boxed_row', - 'column','concatenation','button','dialog','edit_box','image','image_button', - 'errtile','list_box','ok_cancel','ok_cancel_help','ok_cancel_help_errtile', - 'ok_cancel_help_info','ok_only','paragraph','popup_list','radio_button', - 'radio_column','radio_row','row','slider','spacer','spacer_0','spacer_1','text', - 'text_part','toggle', - 'action','alignment','allow_accept','aspect_ratio','big_increment', - 'children_alignment','children_fixed_height', - 'children_fixed_width','color', - 'edit_limit','edit_width','fixed_height','fixed_width', - 'height','initial_focus','is_cancel','is_default', - 'is_enabled','is_tab_stop','is-bold','key','label','layout','list', - 'max_value','min_value','mnemonic','multiple_select','password_char', - 'small_increment','tabs','tab_truncate','value','width', - 'false','true','left','right','centered','top','bottom', - 'dialog_line','dialog_foreground','dialog_background', - 'graphics_background','black','red','yellow','green','cyan', - 'blue','magenta','whitegraphics_foreground', - 'horizontal','vertical' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/cadlisp.php b/library/Vendors/geshi/geshi/cadlisp.php deleted file mode 100644 index 9277e519..00000000 --- a/library/Vendors/geshi/geshi/cadlisp.php +++ /dev/null @@ -1,186 +0,0 @@ - 'CAD Lisp', - 'COMMENT_SINGLE' => array(1 => ";"), - 'COMMENT_MULTI' => array(";|" => "|;"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'abs','acad_colordlg','acad_helpdlg','acad_strlsort','action_tile', - 'add_list','alert','alloc','and','angle','angtof','angtos','append','apply', - 'arx','arxload','arxunload','ascii','assoc','atan','atof','atoi','atom', - 'atoms-family','autoarxload','autoload','Boole','boundp','caddr', - 'cadr','car','cdr','chr','client_data_tile','close','command','cond', - 'cons','cos','cvunit','defun','defun-q','defun-q-list-ref', - 'defun-q-list-set','dictadd','dictnext','dictremove','dictrename', - 'dictsearch','dimx_tile','dimy_tile','distance','distof','done_dialog', - 'end_image','end_list','entdel','entget','entlast','entmake', - 'entmakex','entmod','entnext','entsel','entupd','eq','equal','eval','exit', - 'exp','expand','expt','fill_image','findfile','fix','float','foreach','function', - 'gc','gcd','get_attr','get_tile','getangle','getcfg','getcname','getcorner', - 'getdist','getenv','getfiled','getint','getkword','getorient','getpoint', - 'getreal','getstring','getvar','graphscr','grclear','grdraw','grread','grtext', - 'grvecs','handent','help','if','initdia','initget','inters','itoa','lambda','last', - 'layoutlist','length','list','listp','load','load_dialog','log','logand','logior', - 'lsh','mapcar','max','mem','member','menucmd','menugroup','min','minusp','mode_tile', - 'namedobjdict','nentsel','nentselp','new_dialog','nil','not','nth','null', - 'numberp','open','or','osnap','polar','prin1','princ','print','progn','prompt', - 'quit','quote','read','read-char','read-line','redraw','regapp','rem','repeat', - 'reverse','rtos','set','set_tile','setcfg','setenv','setfunhelp','setq','setvar', - 'setview','sin','slide_image','snvalid','sqrt','ssadd','ssdel','ssget','ssgetfirst', - 'sslength','ssmemb','ssname','ssnamex','sssetfirst','start_dialog','start_image', - 'start_list','startapp','strcase','strcat','strlen','subst','substr','t','tablet', - 'tblnext','tblobjname','tblsearch','term_dialog','terpri','textbox','textpage', - 'textscr','trace','trans','type','unload_dialog','untrace','vector_image','ver', - 'vports','wcmatch','while','write-char','write-line','xdroom','xdsize','zerop', - 'vl-acad-defun','vl-acad-undefun','vl-arx-import','vlax-3D-point', - 'vlax-add-cmd','vlax-create-object','vlax-curve-getArea', - 'vlax-curve-getClosestPointTo','vlax-curve-getClosestPointToProjection', - 'vlax-curve-getDistAtParam','vlax-curve-getDistAtPoint', - 'vlax-curve-getEndParam','vlax-curve-getEndPoint', - 'vlax-curve-getFirstDeriv','vlax-curve-getParamAtDist', - 'vlax-curve-getParamAtPoint','vlax-curve-getPointAtDist', - 'vlax-curve-getPointAtParam','vlax-curve-getSecondDeriv', - 'vlax-curve-getStartParam','vlax-curve-getStartPoint', - 'vlax-curve-isClosed','vlax-curve-isPeriodic','vlax-curve-isPlanar', - 'vlax-dump-object','vlax-erased-p','vlax-for','vlax-get-acad-object', - 'vlax-get-object','vlax-get-or-create-object','vlax-get-property', - 'vlax-import-type-library','vlax-invoke-method','vlax-ldata-delete', - 'vlax-ldata-get','vlax-ldata-list','vlax-ldata-put','vlax-ldata-test', - 'vlax-make-safearray','vlax-make-variant','vlax-map-collection', - 'vlax-method-applicable-p','vlax-object-released-p','vlax-product-key', - 'vlax-property-available-p','vlax-put-property','vlax-read-enabled-p', - 'vlax-release-object','vlax-remove-cmd','vlax-safearray-fill', - 'vlax-safearray-get-dim','vlax-safearray-get-element', - 'vlax-safearray-get-l-bound','vlax-safearray-get-u-bound', - 'vlax-safearray-put-element','vlax-safearray-type','vlax-tmatrix', - 'vlax-typeinfo-available-p','vlax-variant-change-type', - 'vlax-variant-type','vlax-variant-value','vlax-write-enabled-p', - 'vl-bb-ref','vl-bb-set','vl-catch-all-apply','vl-catch-all-error-message', - 'vl-catch-all-error-p','vl-cmdf','vl-consp','vl-directory-files','vl-doc-export', - 'vl-doc-import','vl-doc-ref','vl-doc-set','vl-every','vl-exit-with-error', - 'vl-exit-with-value','vl-file-copy','vl-file-delete','vl-file-directory-p', - 'vl-filename-base','vl-filename-directory','vl-filename-extension', - 'vl-filename-mktemp','vl-file-rename','vl-file-size','vl-file-systime', - 'vl-get-resource','vlisp-compile','vl-list-exported-functions', - 'vl-list-length','vl-list-loaded-vlx','vl-load-all','vl-load-com', - 'vl-load-reactors','vl-member-if','vl-member-if-not','vl-position', - 'vl-prin1-to-string','vl-princ-to-string','vl-propagate','vlr-acdb-reactor', - 'vlr-add','vlr-added-p','vlr-beep-reaction','vlr-command-reactor', - 'vlr-current-reaction-name','vlr-data','vlr-data-set', - 'vlr-deepclone-reactor','vlr-docmanager-reactor','vlr-dwg-reactor', - 'vlr-dxf-reactor','vlr-editor-reactor','vl-registry-delete', - 'vl-registry-descendents','vl-registry-read','vl-registry-write', - 'vl-remove','vl-remove-if','vl-remove-if-not','vlr-insert-reactor', - 'vlr-linker-reactor','vlr-lisp-reactor','vlr-miscellaneous-reactor', - 'vlr-mouse-reactor','vlr-notification','vlr-object-reactor', - 'vlr-owner-add','vlr-owner-remove','vlr-owners','vlr-pers','vlr-pers-list', - 'vlr-pers-p','vlr-pers-release','vlr-reaction-names','vlr-reactions', - 'vlr-reaction-set','vlr-reactors','vlr-remove','vlr-remove-all', - 'vlr-set-notification','vlr-sysvar-reactor','vlr-toolbar-reactor', - 'vlr-trace-reaction','vlr-type','vlr-types','vlr-undo-reactor', - 'vlr-wblock-reactor','vlr-window-reactor','vlr-xref-reactor', - 'vl-some','vl-sort','vl-sort-i','vl-string-elt','vl-string-left-trim', - 'vl-string-mismatch','vl-string-position','vl-string-right-trim', - 'vl-string-search','vl-string-subst','vl-string-translate','vl-string-trim', - 'vl-symbol-name','vl-symbolp','vl-symbol-value','vl-unload-vlx','vl-vbaload', - 'vl-vbarun','vl-vlx-loaded-p' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '!', '%', '^', '&', '/','+','-','*','=','<','>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/cfdg.php b/library/Vendors/geshi/geshi/cfdg.php deleted file mode 100644 index ee17fdf5..00000000 --- a/library/Vendors/geshi/geshi/cfdg.php +++ /dev/null @@ -1,124 +0,0 @@ - - * Copyright: (c) 2006 John Horigan http://www.ozonehouse.com/john/ - * Release Version: 1.0.8.8 - * Date Started: 2006/03/11 - * - * CFDG language file for GeSHi. - * - * CHANGES - * ------- - * 2006/03/11 (1.0.0) - * - First Release - * - * TODO (updated 2006/03/11) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'CFDG', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'include', 'startshape', 'rule', 'background' - ), - 2 => array( - 'SQUARE', 'CIRCLE', 'TRIANGLE', - ), - 3 => array( - 'b','brightness','h','hue','sat','saturation', - 'a','alpha','x','y','z','s','size', - 'r','rotate','f','flip','skew','xml_set_object' - ) - ), - 'SYMBOLS' => array( - '[', ']', '{', '}', '*', '|' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #717100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #006666;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/cfm.php b/library/Vendors/geshi/geshi/cfm.php deleted file mode 100644 index dd508eec..00000000 --- a/library/Vendors/geshi/geshi/cfm.php +++ /dev/null @@ -1,299 +0,0 @@ - 'ColdFusion', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - /* CFM Tags */ - 1 => array( - 'cfabort', 'cfapplet', 'cfapplication', 'cfargument', 'cfassociate', - 'cfbreak', 'cfcache', 'cfcase', 'cfcatch', 'cfchart', 'cfchartdata', - 'cfchartseries', 'cfcol', 'cfcollection', 'cfcomponent', - 'cfcontent', 'cfcookie', 'cfdefaultcase', 'cfdirectory', - 'cfdocument', 'cfdocumentitem', 'cfdocumentsection', 'cfdump', - 'cfelse', 'cfelseif', 'cferror', 'cfexecute', 'cfexit', 'cffile', - 'cfflush', 'cfform', 'cfformgroup', 'cfformitem', 'cfftp', - 'cffunction', 'cfgrid', 'cfgridcolumn', 'cfgridrow', 'cfgridupdate', - 'cfheader', 'cfhtmlhead', 'cfhttp', 'cfhttpparam', 'cfif', - 'cfimport', 'cfinclude', 'cfindex', 'cfinput', 'cfinsert', - 'cfinvoke', 'cfinvokeargument', 'cfldap', 'cflocation', 'cflock', - 'cflog', 'cflogin', 'cfloginuser', 'cflogout', 'cfloop', 'cfmail', - 'cfmailparam', 'cfmailpart', 'cfmodule', 'cfNTauthenticate', - 'cfobject', 'cfobjectcache', 'cfoutput', 'cfparam', 'cfpop', - 'cfprocessingdirective', 'cfprocparam', - 'cfprocresult', 'cfproperty', 'cfquery', 'cfqueryparam', - 'cfregistry', 'cfreport', 'cfreportparam', 'cfrethrow', 'cfreturn', - 'cfsavecontent', 'cfschedule', 'cfscript', 'cfsearch', 'cfselect', - 'cfset', 'cfsetting', 'cfsilent', 'cfstoredproc', - 'cfswitch', 'cftable', 'cftextarea', 'cfthrow', 'cftimer', - 'cftrace', 'cftransaction', 'cftree', 'cftreeitem', 'cftry', - 'cfupdate', 'cfwddx' - ), - /* HTML Tags */ - 2 => array( - 'a', 'abbr', 'acronym', 'address', 'applet', - - 'base', 'basefont', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'b', - - 'caption', 'center', 'cite', 'code', 'colgroup', 'col', - - 'dd', 'del', 'dfn', 'dir', 'div', 'dl', 'dt', - - 'em', - - 'fieldset', 'font', 'form', 'frame', 'frameset', - - 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'hr', 'html', - - 'iframe', 'ilayer', 'img', 'input', 'ins', 'isindex', 'i', - - 'kbd', - - 'label', 'legend', 'link', 'li', - - 'map', 'meta', - - 'noframes', 'noscript', - - 'object', 'ol', 'optgroup', 'option', - - 'param', 'pre', 'p', - - 'q', - - 'samp', 'script', 'select', 'small', 'span', 'strike', 'strong', 'style', 'sub', 'sup', 's', - - 'table', 'tbody', 'td', 'textarea', 'text', 'tfoot', 'thead', 'th', 'title', 'tr', 'tt', - - 'ul', 'u', - - 'var', - ), - /* HTML attributes */ - 3 => array( - 'abbr', 'accept-charset', 'accept', 'accesskey', 'action', 'align', 'alink', 'alt', 'archive', 'axis', - 'background', 'bgcolor', 'border', - 'cellpadding', 'cellspacing', 'char', 'charoff', 'charset', 'checked', 'cite', 'class', 'classid', 'clear', 'code', 'codebase', 'codetype', 'color', 'cols', 'colspan', 'compact', 'content', 'coords', - 'data', 'datetime', 'declare', 'defer', 'dir', 'disabled', - 'enctype', - 'face', 'for', 'frame', 'frameborder', - 'headers', 'height', 'href', 'hreflang', 'hspace', 'http-equiv', - 'id', 'ismap', - 'label', 'lang', 'language', 'link', 'longdesc', - 'marginheight', 'marginwidth', 'maxlength', 'media', 'method', 'multiple', - 'name', 'nohref', 'noresize', 'noshade', 'nowrap', - 'object', 'onblur', 'onchange', 'onclick', 'ondblclick', 'onfocus', 'onkeydown', 'onkeypress', 'onkeyup', 'onload', 'onmousedown', 'onmousemove', 'onmouseout', 'onmouseover', 'onmouseup', 'onreset', 'onselect', 'onsubmit', 'onunload', - 'profile', 'prompt', - 'readonly', 'rel', 'rev', 'rowspan', 'rows', 'rules', - 'scheme', 'scope', 'scrolling', 'selected', 'shape', 'size', 'span', 'src', 'standby', 'start', 'style', 'summary', - 'tabindex', 'target', 'text', 'title', 'type', - 'usemap', - 'valign', 'value', 'valuetype', 'version', 'vlink', 'vspace', - 'width' - ), - /* CFM Script delimeters */ - 4 => array( - 'var', 'function', 'while', 'if','else' - ), - /* CFM Functions */ - 5 => array( - 'Abs', 'GetFunctionList', 'LSTimeFormat','ACos','GetGatewayHelper','LTrim','AddSOAPRequestHeader','GetHttpRequestData', - 'Max','AddSOAPResponseHeader','GetHttpTimeString','Mid','ArrayAppend','GetLocale','Min','ArrayAvg','GetLocaleDisplayName', - 'Minute','ArrayClear','GetMetaData','Month','ArrayDeleteAt','GetMetricData','MonthAsString','ArrayInsertAt','GetPageContext', - 'Now','ArrayIsEmpty','GetProfileSections','NumberFormat','ArrayLen','GetProfileString','ParagraphFormat','ArrayMax', - 'GetLocalHostIP','ParseDateTime','ArrayMin','GetSOAPRequest','Pi','ArrayNew','GetSOAPRequestHeader','PreserveSingleQuotes', - 'ArrayPrepend','GetSOAPResponse','Quarter','ArrayResize','GetSOAPResponseHeader','QueryAddColumn','ArraySet', - 'GetTempDirectory','QueryAddRow','ArraySort','QueryNew','ArraySum','GetTempFile','QuerySetCell', - 'ArraySwap','GetTickCount','QuotedValueList','ArrayToList','GetTimeZoneInfo','Rand','Asc','GetToken','Randomize', - 'ASin','Hash','RandRange','Atn','Hour','REFind','BinaryDecode','HTMLCodeFormat','REFindNoCase','BinaryEncode', - 'HTMLEditFormat','ReleaseComObject','BitAnd','IIf','RemoveChars','BitMaskClear','IncrementValue','RepeatString', - 'BitMaskRead','InputBaseN','Replace','BitMaskSet','Insert','ReplaceList','BitNot','Int','ReplaceNoCase','BitOr', - 'IsArray','REReplace','BitSHLN','IsBinary','REReplaceNoCase','BitSHRN','IsBoolean','Reverse','BitXor','IsCustomFunction', - 'Right','Ceiling','IsDate','RJustify','CharsetDecode','IsDebugMode','Round','CharsetEncode','IsDefined','RTrim', - 'Chr','IsLeapYear','Second','CJustify','IsLocalHost','SendGatewayMessage','Compare','IsNumeric','SetEncoding', - 'CompareNoCase','IsNumericDate','SetLocale','Cos','IsObject','SetProfileString','CreateDate','IsQuery','SetVariable', - 'CreateDateTime','IsSimpleValue','Sgn','CreateObject','IsSOAPRequest','Sin','CreateODBCDate','IsStruct','SpanExcluding', - 'CreateODBCDateTime','IsUserInRole','SpanIncluding','CreateODBCTime','IsValid','Sqr','CreateTime','IsWDDX','StripCR', - 'CreateTimeSpan','IsXML','StructAppend','CreateUUID','IsXmlAttribute','StructClear','DateAdd','IsXmlDoc','StructCopy', - 'DateCompare','IsXmlElem','StructCount','DateConvert','IsXmlNode','StructDelete','DateDiff','IsXmlRoot','StructFind', - 'DateFormat','JavaCast','StructFindKey','DatePart','JSStringFormat','StructFindValue','Day','LCase','StructGet', - 'DayOfWeek','Left','StructInsert','DayOfWeekAsString','Len','StructIsEmpty','DayOfYear','ListAppend','StructKeyArray', - 'DaysInMonth','ListChangeDelims','StructKeyExists','DaysInYear','ListContains','StructKeyList','DE','ListContainsNoCase', - 'StructNew','DecimalFormat','ListDeleteAt','StructSort','DecrementValue','ListFind','StructUpdate','Decrypt','ListFindNoCase', - 'Tan','DecryptBinary','ListFirst','TimeFormat','DeleteClientVariable','ListGetAt','ToBase64','DirectoryExists', - 'ListInsertAt','ToBinary','DollarFormat','ListLast','ToScript','Duplicate','ListLen','ToString','Encrypt','ListPrepend', - 'Trim','EncryptBinary','ListQualify','UCase','Evaluate','ListRest','URLDecode','Exp','ListSetAt','URLEncodedFormat', - 'ExpandPath','ListSort','URLSessionFormat','FileExists','ListToArray','Val','Find','ListValueCount','ValueList', - 'FindNoCase','ListValueCountNoCase','Week','FindOneOf','LJustify','Wrap','FirstDayOfMonth','Log','WriteOutput', - 'Fix','Log10','XmlChildPos','FormatBaseN','LSCurrencyFormat','XmlElemNew','GetAuthUser','LSDateFormat','XmlFormat', - 'GetBaseTagData','LSEuroCurrencyFormat','XmlGetNodeType','GetBaseTagList','LSIsCurrency','XmlNew','GetBaseTemplatePath', - 'LSIsDate','XmlParse','GetClientVariablesList','LSIsNumeric','XmlSearch','GetCurrentTemplatePath','LSNumberFormat', - 'XmlTransform','GetDirectoryFromPath','LSParseCurrency','XmlValidate','GetEncoding','LSParseDateTime','Year', - 'GetException','LSParseEuroCurrency','YesNoFormat','GetFileFromPath','LSParseNumber' - ), - /* CFM Attributes */ - 6 => array( - 'dbtype','connectstring','datasource','username','password','query','delimeter','description','required','hint','default','access','from','to','list','index' - ), - 7 => array( - 'EQ', 'GT', 'LT', 'GTE', 'LTE', 'IS', 'LIKE', 'NEQ' - ) - ), - 'SYMBOLS' => array( - '/', '=', '{', '}', '(', ')', '[', ']', '<', '>', '&' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #990000; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #0000FF;', - 4 => 'color: #000000; font-weight: bold;', - 5 => 'color: #0000FF;', - 6 => 'color: #0000FF;', - 7 => 'color: #0000FF;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #0000FF;' - ), - 'STRINGS' => array( - 0 => 'color: #009900;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF0000;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #0000FF;' - ), - 'SCRIPT' => array( - 0 => 'color: #808080; font-style: italic;', - 1 => 'color: #00bbdd;', - 2 => 'color: #0000FF;', - 3 => 'color: #000099;', - 4 => 'color: #333333;', - 5 => 'color: #333333;' - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => 'http://december.com/html/4/element/{FNAMEL}.html', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_ALWAYS, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - '' - ), - 1 => array( - ' '>' - ), - 2 => "/(?!<#)(?:(?:##)*)(#)[a-zA-Z0-9_\.\(\)]+(#)/", - 3 => array( - '' => '' - ), - 4 => array( - '<' => '>' - ), - 5 => '/((?!])+?(>)/si' - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => false, - 1 => false, - 2 => true, - 3 => true, - 4 => true, - 5 => true - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 1 => array( - 'DISALLOWED_BEFORE' => '(?<=<|<\/)', - 'DISALLOWED_AFTER' => '(?=\s|\/|>)', - ), - 2 => array( - 'DISALLOWED_BEFORE' => '(?<=<|<\/)', - 'DISALLOWED_AFTER' => '(?=\s|\/|>)', - ), - 3 => array( - 'DISALLOWED_BEFORE' => '(?|^])', // allow ; before keywords - 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-])', // allow & after keywords - ), - 7 => array( - 'DISALLOWED_BEFORE' => '(?&|^])', // allow ; before keywords - 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-])', // allow & after keywords - ) - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/chaiscript.php b/library/Vendors/geshi/geshi/chaiscript.php deleted file mode 100644 index e1baad4d..00000000 --- a/library/Vendors/geshi/geshi/chaiscript.php +++ /dev/null @@ -1,140 +0,0 @@ - 'ChaiScript', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - //Regular Expressions - 'COMMENT_REGEXP' => array(2 => "/(?<=[\\s^])s\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[gimsu]*(?=[\\s$\\.\\;])|(?<=[\\s^(=])m?\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[gimsu]*(?=[\\s$\\.\\,\\;\\)])/iU"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'break', 'else', 'else if', 'eval', 'for', 'if', 'return', 'while', 'try', 'catch', 'finally', - ), - 2 => array( - 'def', 'false', 'fun', 'true', 'var', 'attr', - ), - 3 => array( - // built in functions - 'throw', - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', - '+', '-', '*', '/', '%', - '!', '@', '&', '|', '^', - '<', '>', '=', - ',', ';', '?', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000066; font-weight: bold;', - 2 => 'color: #003366; font-weight: bold;', - 3 => 'color: #000066;' - ), - 'COMMENTS' => array( - 1 => 'color: #006600; font-style: italic;', - 2 => 'color: #009966; font-style: italic;', - 'MULTI' => 'color: #006600; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #3366CC;' - ), - 'NUMBERS' => array( - 0 => 'color: #CC0000;' - ), - 'METHODS' => array( - 1 => 'color: #660066;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - ), - 1 => array( - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/cil.php b/library/Vendors/geshi/geshi/cil.php deleted file mode 100644 index 142c7743..00000000 --- a/library/Vendors/geshi/geshi/cil.php +++ /dev/null @@ -1,196 +0,0 @@ - 'CIL', - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'COMMENT_SINGLE' => array('//'), - 'COMMENT_MULTI' => array(), - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array(//Dotted - '.zeroinit', '.vtfixup', '.vtentry', '.vtable', '.ver', '.try', '.subsystem', '.size', '.set', '.removeon', - '.publickeytoken', '.publickey', '.property', '.permissionset', '.permission', '.pdirect', '.param', '.pack', - '.override', '.other', '.namespace', '.mresource', '.module', '.method', '.maxstack', '.manifestres', '.locals', - '.localized', '.locale', '.line', '.language', '.import', '.imagebase', '.hash', '.get', '.fire', '.file', '.field', - '.export', '.event', '.entrypoint', '.emitbyte', '.data', '.custom', '.culture', '.ctor', '.corflags', '.class', - '.cctor', '.assembly', '.addon' - ), - 2 => array(//Attributes - 'wrapper', 'with', 'winapi', 'virtual', 'vector', 'vararg', 'value', 'userdefined', 'unused', 'unmanagedexp', - 'unmanaged', 'unicode', 'to', 'tls', 'thiscall', 'synchronized', 'struct', 'strict', 'storage', 'stdcall', - 'static', 'specialname', 'special', 'serializable', 'sequential', 'sealed', 'runtime', 'rtspecialname', 'request', - 'reqsecobj', 'reqrefuse', 'reqopt', 'reqmin', 'record', 'public', 'privatescope', 'private', 'preservesig', - 'prejitgrant', 'prejitdeny', 'platformapi', 'pinvokeimpl', 'pinned', 'permitonly', 'out', 'optil', 'opt', - 'notserialized', 'notremotable', 'not_in_gc_heap', 'noprocess', 'noncaslinkdemand', 'noncasinheritance', - 'noncasdemand', 'nometadata', 'nomangle', 'nomachine', 'noinlining', 'noappdomain', 'newslot', 'nested', 'native', - 'modreq', 'modopt', 'marshal', 'managed', 'literal', 'linkcheck', 'lcid', 'lasterr', 'internalcall', 'interface', - 'instance', 'initonly', 'init', 'inheritcheck', 'in', 'import', 'implicitres', 'implicitcom', 'implements', - 'illegal', 'il', 'hidebysig', 'handler', 'fromunmanaged', 'forwardref', 'fixed', 'finally', 'final', 'filter', - 'filetime', 'field', 'fault', 'fastcall', 'famorassem', 'family', 'famandassem', 'extern', 'extends', 'explicit', - 'error', 'enum', 'endmac', 'deny', 'demand', 'default', 'custom', 'compilercontrolled', 'clsid', 'class', 'cil', - 'cf', 'cdecl', 'catch', 'beforefieldinit', 'autochar', 'auto', 'at', 'assert', 'assembly', 'as', 'any', 'ansi', - 'alignment', 'algorithm', 'abstract' - ), - 3 => array(//Types - 'wchar', 'void', 'variant', 'unsigned', 'valuetype', 'typedref', 'tbstr', 'sysstring', 'syschar', 'string', - 'streamed_object', 'stream', 'stored_object', 'safearray', 'objectref', 'object', 'nullref', 'method', 'lpwstr', - 'lpvoid', 'lptstr', 'lpstruct', 'lpstr', 'iunknown', 'int64', 'int32', 'int16', 'int8', 'int', 'idispatch', - 'hresult', 'float64', 'float32', 'float', 'decimal', 'date', 'currency', 'char', 'carray', 'byvalstr', - 'bytearray', 'boxed', 'bool', 'blob_object', 'blob', 'array' - ), - 4 => array(//Prefix - 'volatile', 'unaligned', 'tail', 'readonly', 'no', 'constrained' - ), - 5 => array(//Suffix - 'un', 'u8', 'u4', 'u2', 'u1', 'u', 's', 'ref', 'r8', 'r4', 'm1', 'i8', 'i4', 'i2', 'i1', 'i'#, '.8', '.7', '.6', '.5', '.4', '.3', '.2', '.1', '.0' - ), - 6 => array(//Base - 'xor', 'switch', 'sub', 'stloc', - 'stind', 'starg', - 'shr', 'shl', 'ret', 'rem', 'pop', 'or', 'not', 'nop', 'neg', 'mul', - 'localloc', 'leave', 'ldnull', 'ldloca', - 'ldloc', 'ldind', 'ldftn', 'ldc', 'ldarga', - 'ldarg', 'jmp', 'initblk', 'endfinally', 'endfilter', - 'endfault', 'dup', 'div', 'cpblk', 'conv', 'clt', 'ckfinite', 'cgt', 'ceq', 'calli', - 'call', 'brzero', 'brtrue', 'brnull', 'brinst', - 'brfalse', 'break', 'br', 'bne', 'blt', 'ble', 'bgt', 'bge', 'beq', 'arglist', - 'and', 'add' - ), - 7 => array(//Object - 'unbox.any', 'unbox', 'throw', 'stsfld', 'stobj', 'stfld', 'stelem', 'sizeof', 'rethrow', 'refanyval', 'refanytype', 'newobj', - 'newarr', 'mkrefany', 'ldvirtftn', 'ldtoken', 'ldstr', 'ldsflda', 'ldsfld', 'ldobj', 'ldlen', 'ldflda', 'ldfld', - 'ldelema', 'ldelem', 'isinst', 'initobj', 'cpobj', 'castclass', - 'callvirt', 'callmostderived', 'box' - ), - 8 => array(//Other - 'prefixref', 'prefix7', 'prefix6', 'prefix5', 'prefix4', 'prefix3', 'prefix2', 'prefix1', 'prefix0' - ), - 9 => array(//Literal - 'true', 'null', 'false' - ), - 10 => array(//Comment-like - '#line', '^THE_END^' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '!', '!!' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true, - 9 => true, - 10 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color:maroon;font-weight:bold;', - 2 => 'color:blue;font-weight:bold;', - 3 => 'color:purple;font-weight:bold;', - 4 => 'color:teal;', - 5 => 'color:blue;', - 6 => 'color:blue;', - 7 => 'color:blue;', - 8 => 'color:blue;', - 9 => 'color:00008B', - 10 => 'color:gray' - ), - 'COMMENTS' => array( - 0 => 'color:gray;font-style:italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #008000; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #006400;' - ), - 'STRINGS' => array( - 0 => 'color: #008000;' - ), - 'NUMBERS' => array( - 0 => 'color: #00008B;' - ), - 'METHODS' => array( - 1 => 'color: #000033;' - ), - 'SYMBOLS' => array( - 0 => 'color: #006400;' - ), - 'REGEXPS' => array( - 0 => 'color:blue;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '', - 9 => '', - 10 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '::' - ), - 'REGEXPS' => array( - 0 => '(?<=ldc\\.i4\\.)[0-8]|(?<=(?:ldarg|ldloc|stloc)\\.)[0-3]' # Pickup the opcodes that end with integers - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/library/Vendors/geshi/geshi/clojure.php b/library/Vendors/geshi/geshi/clojure.php deleted file mode 100644 index 4bcb9a3a..00000000 --- a/library/Vendors/geshi/geshi/clojure.php +++ /dev/null @@ -1,134 +0,0 @@ - 'Clojure', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(';|' => '|;'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'defn', 'defn-', 'defmulti', 'defmethod', 'defmacro', 'deftest', - 'defstruct', 'def', 'defonce', 'let', 'letfn', 'do', 'cond', 'condp', - 'for', 'loop', 'recur', 'when', 'when-not', 'when-let', 'when-first', - 'if', 'if-let', 'if-not', 'doto', 'and', 'or','not','aget','aset', - 'dosync', 'doseq', 'dotimes', 'dorun', 'doall', - 'load', 'import', 'unimport', 'ns', 'in-ns', 'refer', 'print', - 'try', 'catch', 'finally', 'throw', 'fn', 'update-in', - 'with-open', 'with-local-vars', 'binding', - 'gen-class', 'gen-and-load-class', 'gen-and-save-class', - 'implement', 'proxy', 'lazy-cons', 'with-meta', - 'struct', 'struct-map', 'delay', 'locking', 'sync', 'time', 'apply', - 'remove', 'merge', 'interleave', 'interpose', 'distinct', - 'cons', 'concat', 'lazy-cat', 'cycle', 'rest', 'frest', 'drop', - 'drop-while', 'nthrest', 'take', 'take-while', 'take-nth', 'butlast', - 'reverse', 'sort', 'sort-by', 'split-at', 'partition', 'split-with', - 'first', 'ffirst', 'rfirst', 'zipmap', 'into', 'set', 'vec', - 'to-array-2d', 'not-empty', 'seq?', 'not-every?', 'every?', 'not-any?', - 'map', 'mapcat', 'vector?', 'list?', 'hash-map', 'reduce', 'filter', - 'vals', 'keys', 'rseq', 'subseq', 'rsubseq', 'count', 'empty?', - 'fnseq', 'repeatedly', 'iterate', 'drop-last', - 'repeat', 'replicate', 'range', 'into-array', - 'line-seq', 'resultset-seq', 're-seq', 're-find', 'tree-seq', 'file-seq', - 'iterator-seq', 'enumeration-seq', 'declare', 'xml-seq', - 'symbol?', 'string?', 'vector', 'conj', 'str', - 'pos?', 'neg?', 'zero?', 'nil?', 'inc', 'dec', 'format', - 'alter', 'commute', 'ref-set', 'floor', 'assoc', 'send', 'send-off' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '!', '%', '^', '&', '/','+','-','*','=','<','>',';','|', '.', '..', '->', - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => true, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 0 => 'color: #555;', - 1 => 'color: #555;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - '::', ':' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/cmake.php b/library/Vendors/geshi/geshi/cmake.php deleted file mode 100644 index ccd855b0..00000000 --- a/library/Vendors/geshi/geshi/cmake.php +++ /dev/null @@ -1,181 +0,0 @@ - () - * - First Release - * - * TODO (updated ) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'CMake', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'ESCAPE_REGEXP' => array( - // Quoted variables ${...} - 1 => "/\\$(ENV)?\\{[^\\n\\}]*?\\}/i", - // Quoted registry keys [...] - 2 => "/\\[HKEY[^\n\\]]*?]/i" - ), - 'KEYWORDS' => array( - 1 => array( - 'add_custom_command', 'add_custom_target', 'add_definitions', - 'add_dependencies', 'add_executable', 'add_library', - 'add_subdirectory', 'add_test', 'aux_source_directory', 'break', - 'build_command', 'cmake_minimum_required', 'cmake_policy', - 'configure_file', 'create_test_sourcelist', 'define_property', - 'else', 'elseif', 'enable_language', 'enable_testing', - 'endforeach', 'endfunction', 'endif', 'endmacro', - 'endwhile', 'execute_process', 'export', 'file', 'find_file', - 'find_library', 'find_package', 'find_path', 'find_program', - 'fltk_wrap_ui', 'foreach', 'function', 'get_cmake_property', - 'get_directory_property', 'get_filename_component', 'get_property', - 'get_source_file_property', 'get_target_property', - 'get_test_property', 'if', 'include', 'include_directories', - 'include_external_msproject', 'include_regular_expression', - 'install', 'link_directories', 'list', 'load_cache', - 'load_command', 'macro', 'mark_as_advanced', 'math', 'message', - 'option', 'output_required_files', 'project', 'qt_wrap_cpp', - 'qt_wrap_ui', 'remove_definitions', 'return', 'separate_arguments', - 'set', 'set_directory_properties', 'set_property', - 'set_source_files_properties', 'set_target_properties', - 'set_tests_properties', 'site_name', 'source_group', 'string', - 'target_link_libraries', 'try_compile', 'try_run', 'unset', - 'variable_watch', 'while' - ), - 2 => array( - // Deprecated commands - 'build_name', 'exec_program', 'export_library_dependencies', - 'install_files', 'install_programs', 'install_targets', - 'link_libraries', 'make_directory', 'remove', 'subdir_depends', - 'subdirs', 'use_mangled_mesa', 'utility_source', - 'variable_requires', 'write_file' - ), - 3 => array( - // Special command arguments, this list is not comprehesive. - 'AND', 'APPEND', 'ASCII', 'BOOL', 'CACHE', 'COMMAND', 'COMMENT', - 'COMPARE', 'CONFIGURE', 'DEFINED', 'DEPENDS', 'DIRECTORY', - 'EQUAL', 'EXCLUDE_FROM_ALL', 'EXISTS', 'FALSE', 'FATAL_ERROR', - 'FILEPATH', 'FIND', 'FORCE', 'GET', 'GLOBAL', 'GREATER', - 'IMPLICIT_DEPENDS', 'INSERT', 'INTERNAL', 'IS_ABSOLUTE', - 'IS_DIRECTORY', 'IS_NEWER_THAN', 'LENGTH', 'LESS', - 'MAIN_DEPENDENCY', 'MATCH', 'MATCHALL', 'MATCHES', 'MODULE', 'NOT', - 'NOTFOUND', 'OFF', 'ON', 'OR', 'OUTPUT', 'PARENT_SCOPE', 'PATH', - 'POLICY', 'POST_BUILD', 'PRE_BUILD', 'PRE_LINK', 'PROPERTY', - 'RANDOM', 'REGEX', 'REMOVE_AT', 'REMOVE_DUPLICATES', 'REMOVE_ITEM', - 'REPLACE', 'REVERSE', 'SEND_ERROR', 'SHARED', 'SORT', 'SOURCE', - 'STATIC', 'STATUS', 'STREQUAL', 'STRGREATER', 'STRING', 'STRIP', - 'STRLESS', 'SUBSTRING', 'TARGET', 'TEST', 'TOLOWER', 'TOUPPER', - 'TRUE', 'VERBATIM', 'VERSION', 'VERSION_EQUAL', 'VERSION_GREATOR', - 'VERSION_LESS', 'WORKING_DIRECTORY', - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => true - ), - 'SYMBOLS' => array( - 0 => array('(', ')') - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #1f3f81; font-style: bold;', - 2 => 'color: #1f3f81;', - 3 => 'color: #077807; font-sytle: italic;' - ), - 'BRACKETS' => array(), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 1 => 'color: #b08000;', - 2 => 'color: #0000cd;' - ), - 'STRINGS' => array( - 0 => 'color: #912f11;', - ), - 'SYMBOLS' => array( - 0 => 'color: #197d8b;' - ), - 'NUMBERS' => array(), - 'METHODS' => array(), - 'REGEXPS' => array( - 0 => 'color: #b08000;', - 1 => 'color: #0000cd;' - ), - 'SCRIPT' => array() - ), - 'URLS' => array( - 1 => 'http://www.cmake.org/cmake/help/cmake2.6docs.html#command:{FNAMEL}', - 2 => 'http://www.cmake.org/cmake/help/cmake2.6docs.html#command:{FNAMEL}', - 3 => '', - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - // Unquoted variables - 0 => "\\$(ENV)?\\{[^\\n}]*?\\}", - // Unquoted registry keys - 1 => "\\[HKEY[^\n\\]]*?]" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array(), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - // These keywords cannot come after a open paren - 1 => array( - 'DISALLOWED_AFTER' => '(?= *\()' - ), - 2 => array( - 'DISALLOWED_AFTER' => '(?= *\()' - ) - ), - 'ENABLE_FLAGS' => array( - 'BRACKETS' => GESHI_NEVER, - 'METHODS' => GESHI_NEVER, - 'NUMBERS' => GESHI_NEVER - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/cobol.php b/library/Vendors/geshi/geshi/cobol.php deleted file mode 100644 index c1220a06..00000000 --- a/library/Vendors/geshi/geshi/cobol.php +++ /dev/null @@ -1,244 +0,0 @@ - 'COBOL', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array(1 => '/^\*.*?$/m'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', "'"), - 'ESCAPE_CHAR' => '\\', - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | - GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_SCI_SHORT | - GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( //Compiler Directives - 'ANSI', 'BLANK', 'NOBLANK', 'CALL-SHARED', 'CANCEL', 'NOCANCEL', - 'CHECK', 'CODE', 'NOCODE', 'COLUMNS', 'COMPACT', 'NOCOMPACT', - 'COMPILE', 'CONSULT', 'NOCONSULT', 'CROSSREF', 'NOCROSSREF', - 'DIAGNOSE-74', 'NODIAGNOSE-74', 'DIAGNOSE-85', 'NODIAGNOSE-85', - 'DIAGNOSEALL', 'NODIAGNOSEALL', 'ENDIF', 'ENDUNIT', 'ENV', - 'ERRORFILE', 'ERRORS', 'FIPS', 'NOFIPS', 'FMAP', 'HEADING', 'HEAP', - 'HIGHPIN', 'HIGHREQUESTERS', 'ICODE', 'NOICODE', 'IF', 'IFNOT', - 'INNERLIST', 'NOINNERLIST', 'INSPECT', 'NOINSPECT', 'LARGEDATA', - 'LD', 'LESS-CODE', 'LIBRARY', 'LINES', 'LIST', 'NOLIST', 'LMAP', - 'NOLMAP', 'MAIN', 'MAP', 'NOMAP', 'NLD', 'NONSTOP', 'NON-SHARED', - 'OPTIMIZE', 'PERFORM-TRACE', 'PORT', 'NOPORT', 'RESETTOG', - 'RUNNABLE', 'RUNNAMED', 'SAVE', 'SAVEABEND', 'NOSAVEABEND', - 'SEARCH', 'NOSEARCH', 'SECTION', 'SETTOG', 'SHARED', 'SHOWCOPY', - 'NOSHOWCOPY', 'SHOWFILE', 'NOSHOWFILE', 'SOURCE', 'SQL', 'NOSQL', - 'SQLMEM', 'SUBSET', 'SUBTYPE', 'SUPPRESS', 'NOSUPPRESS', 'SYMBOLS', - 'NOSYMBOLS', 'SYNTAX', 'TANDEM', 'TRAP2', 'NOTRAP2', 'TRAP2-74', - 'NOTRAP2-74', 'UL', 'WARN', 'NOWARN' - ), - 2 => array( //Statement Keywords - 'ACCEPT', 'ADD', 'TO', 'GIVING', 'CORRESPONDING', 'ALTER', 'CALL', - 'CHECKPOINT', 'CLOSE', 'COMPUTE', 'CONTINUE', 'COPY', - 'DELETE', 'DISPLAY', 'DIVIDE', 'INTO', 'REMAINDER', 'ENTER', - 'COBOL', 'EVALUATE', 'EXIT', 'GO', 'INITIALIZE', - 'TALLYING', 'REPLACING', 'CONVERTING', 'LOCKFILE', 'MERGE', 'MOVE', - 'MULTIPLY', 'OPEN', 'PERFORM', 'TIMES', - 'UNTIL', 'VARYING', 'RETURN', - ), - 3 => array( //Reserved in some contexts - 'ACCESS', 'ADDRESS', 'ADVANCING', 'AFTER', 'ALL', - 'ALPHABET', 'ALPHABETIC', 'ALPHABETIC-LOWER', 'ALPHABETIC-UPPER', - 'ALPHANUMERIC', 'ALPHANUMERIC-EDITED', 'ALSO', 'ALTERNATE', - 'AND', 'ANY', 'APPROXIMATE', 'AREA', 'AREAS', 'ASCENDING', 'ASSIGN', - 'AT', 'AUTHOR', 'BEFORE', 'BINARY', 'BLOCK', 'BOTTOM', 'BY', - 'CD', 'CF', 'CH', 'CHARACTER', 'CHARACTERS', - 'CHARACTER-SET', 'CLASS', 'CLOCK-UNITS', - 'CODE-SET', 'COLLATING', 'COLUMN', 'COMMA', - 'COMMON', 'COMMUNICATION', 'COMP', 'COMP-3', 'COMP-5', - 'COMPUTATIONAL', 'COMPUTATIONAL-3', 'COMPUTATIONAL-5', - 'CONFIGURATION', 'CONTAINS', 'CONTENT', 'CONTROL', - 'CONTROLS', 'CORR', 'COUNT', - 'CURRENCY', 'DATA', 'DATE', 'DATE-COMPILED', 'DATE-WRITTEN', 'DAY', - 'DAY-OF-WEEK', 'DE', 'DEBUG-CONTENTS', 'DEBUG-ITEM', 'DEBUG-LINE', - 'DEBUG-SUB-2', 'DEBUG-SUB-3', 'DEBUGGING', 'DECIMAL-POINT', - 'DECLARATIVES', 'DEBUG-NAME', 'DEBUG-SUB-1', 'DELIMITED', - 'DELIMITER', 'DEPENDING', 'DESCENDING', 'DESTINATION', 'DETAIL', - 'DISABLE', 'DIVISION', 'DOWN', 'DUPLICATES', - 'DYNAMIC', 'EGI', 'ELSE', 'EMI', 'ENABLE', 'END', 'END-ADD', - 'END-COMPUTE', 'END-DELETE', 'END-DIVIDE', 'END-EVALUATE', 'END-IF', - 'END-MULTIPLY', 'END-OF-PAGE', 'END-PERFORM', 'END-READ', - 'END-RECEIVE', 'END-RETURN', 'END-REWRITE', 'END-SEARCH', - 'END-START', 'END-STRING', 'END-SUBTRACT', 'END-UNSTRING', - 'END-WRITE', 'EOP', 'EQUAL', 'ERROR', 'ESI', - 'EVERY', 'EXCEPTION', 'EXCLUSIVE', 'EXTEND', - 'EXTENDED-STORAGE', 'EXTERNAL', 'FALSE', 'FD', 'FILE', - 'FILE-CONTROL', 'FILLER', 'FINAL', 'FIRST', 'FOOTING', 'FOR', - 'FROM', 'FUNCTION', 'GENERATE', 'GENERIC', 'GLOBAL', - 'GREATER', 'GROUP', 'GUARDIAN-ERR', 'HIGH-VALUE', - 'HIGH-VALUES', 'I-O', 'I-O-CONTROL', 'IDENTIFICATION', 'IN', - 'INDEX', 'INDEXED', 'INDICATE', 'INITIAL', 'INITIATE', - 'INPUT', 'INPUT-OUTPUT', 'INSTALLATION', - 'INVALID', 'IS', 'JUST', 'JUSTIFIED', 'KEY', 'LABEL', 'LAST', - 'LEADING', 'LEFT', 'LESS', 'LIMIT', 'LIMITS', 'LINAGE', - 'LINAGE-COUNTER', 'LINE', 'LINE-COUNTER', 'LINKAGE', 'LOCK', - 'LOW-VALUE', 'LOW-VALUES', 'MEMORY', 'MESSAGE', - 'MODE', 'MODULES', 'MULTIPLE', 'NATIVE', - 'NEGATIVE', 'NEXT', 'NO', 'NOT', 'NULL', 'NULLS', 'NUMBER', - 'NUMERIC', 'NUMERIC-EDITED', 'OBJECT-COMPUTER', 'OCCURS', 'OF', - 'OFF', 'OMITTED', 'ON', 'OPTIONAL', 'OR', 'ORDER', - 'ORGANIZATION', 'OTHER', 'OUTPUT', 'OVERFLOW', 'PACKED-DECIMAL', - 'PADDING', 'PAGE', 'PAGE-COUNTER', 'PF', 'PH', 'PIC', - 'PICTURE', 'PLUS', 'POINTER', 'POSITION', 'POSITIVE', 'PRINTING', - 'PROCEDURE', 'PROCEDURES', 'PROCEED', 'PROGRAM', 'PROGRAM-ID', - 'PROGRAM-STATUS', 'PROGRAM-STATUS-1', 'PROGRAM-STATUS-2', 'PROMPT', - 'PROTECTED', 'PURGE', 'QUEUE', 'QUOTE', 'QUOTES', 'RD', - 'RECEIVE', 'RECEIVE-CONTROL', 'RECORD', 'RECORDS', - 'REDEFINES', 'REEL', 'REFERENCE', 'REFERENCES', 'RELATIVE', - 'REMOVAL', 'RENAMES', 'REPLACE', - 'REPLY', 'REPORT', 'REPORTING', 'REPORTS', 'RERUN', - 'RESERVE', 'RESET', 'REVERSED', 'REWIND', 'REWRITE', 'RF', - 'RH', 'RIGHT', 'ROUNDED', 'RUN', 'SAME', 'SD', - 'SECURITY', 'SEGMENT', 'SEGMENT-LIMIT', 'SELECT', 'SEND', - 'SENTENCE', 'SEPARATE', 'SEQUENCE', 'SEQUENTIAL', 'SET', - 'SIGN', 'SIZE', 'SORT', 'SORT-MERGE', 'SOURCE-COMPUTER', - 'SPACE', 'SPACES', 'SPECIAL-NAMES', 'STANDARD', 'STANDARD-1', - 'STANDARD-2', 'START', 'STARTBACKUP', 'STATUS', 'STOP', 'STRING', - 'SUB-QUEUE-1', 'SUB-QUEUE-2', 'SUB-QUEUE-3', 'SUBTRACT', - 'SYMBOLIC', 'SYNC', 'SYNCDEPTH', 'SYNCHRONIZED', - 'TABLE', 'TAL', 'TAPE', 'TERMINAL', 'TERMINATE', 'TEST', - 'TEXT', 'THAN', 'THEN', 'THROUGH', 'THRU', 'TIME', - 'TOP', 'TRAILING', 'TRUE', 'TYPE', 'UNIT', 'UNLOCK', 'UNLOCKFILE', - 'UNLOCKRECORD', 'UNSTRING', 'UP', 'UPON', 'USAGE', 'USE', - 'USING', 'VALUE', 'VALUES', 'WHEN', 'WITH', 'WORDS', - 'WORKING-STORAGE', 'WRITE', 'ZERO', 'ZEROES' - ), - 4 => array( //Standard functions - 'ACOS', 'ANNUITY', 'ASIN', 'ATAN', 'CHAR', 'COS', 'CURRENT-DATE', - 'DATE-OF-INTEGER', 'DAY-OF-INTEGER', 'FACTORIAL', 'INTEGER', - 'INTEGER-OF-DATE', 'INTEGER-OF-DAY', 'INTEGER-PART', 'LENGTH', - 'LOG', 'LOG10', 'LOWER-CASE', 'MAX', 'MEAN', 'MEDIAN', 'MIDRANGE', - 'MIN', 'MOD', 'NUMVAL', 'NUMVAL-C', 'ORD', 'ORD-MAX', 'ORD-MIN', - 'PRESENT-VALUE', 'RANDOM', 'RANGE', 'REM', 'REVERSE', 'SIN', 'SQRT', - 'STANDARD-DEVIATION', 'SUM', 'TAN', 'UPPER-CASE', 'VARIANCE', - 'WHEN-COMPILED' - ), - 5 => array( //Privileged Built-in Functions - '#IN', '#OUT', '#TERM', '#TEMP', '#DYNAMIC', 'COBOL85^ARMTRAP', - 'COBOL85^COMPLETION', 'COBOL_COMPLETION_', 'COBOL_CONTROL_', - 'COBOL_GETENV_', 'COBOL_PUTENV_', 'COBOL85^RETURN^SORT^ERRORS', - 'COBOL_RETURN_SORT_ERRORS_', 'COBOL85^REWIND^SEQUENTIAL', - 'COBOL_REWIND_SEQUENTIAL_', 'COBOL85^SET^SORT^PARAM^TEXT', - 'COBOL_SET_SORT_PARAM_TEXT_', 'COBOL85^SET^SORT^PARAM^VALUE', - 'COBOL_SET_SORT_PARAM_VALUE_', 'COBOL_SET_MAX_RECORD_', - 'COBOL_SETMODE_', 'COBOL85^SPECIAL^OPEN', 'COBOL_SPECIAL_OPEN_', - 'COBOLASSIGN', 'COBOL_ASSIGN_', 'COBOLFILEINFO', 'COBOL_FILE_INFO_', - 'COBOLSPOOLOPEN', 'CREATEPROCESS', 'ALTERPARAMTEXT', - 'CHECKLOGICALNAME', 'CHECKMESSAGE', 'DELETEASSIGN', 'DELETEPARAM', - 'DELETESTARTUP', 'GETASSIGNTEXT', 'GETASSIGNVALUE', 'GETBACKUPCPU', - 'GETPARAMTEXT', 'GETSTARTUPTEXT', 'PUTASSIGNTEXT', 'PUTASSIGNVALUE', - 'PUTPARAMTEXT', 'PUTSTARTUPTEXT' - ) - ), - 'SYMBOLS' => array( - //Avoid having - in identifiers marked as symbols - ' + ', ' - ', ' * ', ' / ', ' ** ', - '.', ',', - '=', - '(', ')', '[', ']' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000080; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #008000; font-weight: bold;', - 4 => 'color: #000080;', - 5 => 'color: #008000;', - ), - 'COMMENTS' => array( - 1 => 'color: #a0a0a0; font-style: italic;', - 'MULTI' => 'color: #a0a0a0; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #339933;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #993399;' - ), - 'METHODS' => array( - 1 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000066;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 - ); - -?> diff --git a/library/Vendors/geshi/geshi/cpp-qt.php b/library/Vendors/geshi/geshi/cpp-qt.php deleted file mode 100644 index 8523d16b..00000000 --- a/library/Vendors/geshi/geshi/cpp-qt.php +++ /dev/null @@ -1,564 +0,0 @@ - 'C++ (QT)', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Multiline-continued single-line comments - 1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m', - //Multiline-continued preprocessor define - 2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - //Simple Single Char Escapes - 1 => "#\\\\[\\\\abfnrtv\'\"?\n]#i", - //Hexadecimal Char Specs - 2 => "#\\\\x[\da-fA-F]{2}#", - //Hexadecimal Char Specs - 3 => "#\\\\u[\da-fA-F]{4}#", - //Hexadecimal Char Specs - 4 => "#\\\\U[\da-fA-F]{8}#", - //Octal Char Specs - 5 => "#\\\\[0-7]{1,3}#" - ), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B | - GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - 'case', 'continue', 'default', 'do', 'else', 'for', 'goto', 'if', 'return', - 'switch', 'while', 'delete', 'new', 'this' - ), - 2 => array( - 'NULL', 'false', 'break', 'true', 'enum', 'errno', 'EDOM', - 'ERANGE', 'FLT_RADIX', 'FLT_ROUNDS', 'FLT_DIG', 'DBL_DIG', 'LDBL_DIG', - 'FLT_EPSILON', 'DBL_EPSILON', 'LDBL_EPSILON', 'FLT_MANT_DIG', 'DBL_MANT_DIG', - 'LDBL_MANT_DIG', 'FLT_MAX', 'DBL_MAX', 'LDBL_MAX', 'FLT_MAX_EXP', 'DBL_MAX_EXP', - 'LDBL_MAX_EXP', 'FLT_MIN', 'DBL_MIN', 'LDBL_MIN', 'FLT_MIN_EXP', 'DBL_MIN_EXP', - 'LDBL_MIN_EXP', 'CHAR_BIT', 'CHAR_MAX', 'CHAR_MIN', 'SCHAR_MAX', 'SCHAR_MIN', - 'UCHAR_MAX', 'SHRT_MAX', 'SHRT_MIN', 'USHRT_MAX', 'INT_MAX', 'INT_MIN', - 'UINT_MAX', 'LONG_MAX', 'LONG_MIN', 'ULONG_MAX', 'HUGE_VAL', 'SIGABRT', - 'SIGFPE', 'SIGILL', 'SIGINT', 'SIGSEGV', 'SIGTERM', 'SIG_DFL', 'SIG_ERR', - 'SIG_IGN', 'BUFSIZ', 'EOF', 'FILENAME_MAX', 'FOPEN_MAX', 'L_tmpnam', - 'SEEK_CUR', 'SEEK_END', 'SEEK_SET', 'TMP_MAX', 'stdin', 'stdout', 'stderr', - 'EXIT_FAILURE', 'EXIT_SUCCESS', 'RAND_MAX', 'CLOCKS_PER_SEC', - 'virtual', 'public', 'private', 'protected', 'template', 'using', 'namespace', - 'try', 'catch', 'inline', 'dynamic_cast', 'const_cast', 'reinterpret_cast', - 'static_cast', 'explicit', 'friend', 'typename', 'typeid', 'class' , - 'foreach','connect', 'Q_OBJECT' , 'slots' , 'signals', 'Q_SIGNALS', 'Q_SLOTS', - 'Q_FOREACH', 'QCOMPARE', 'QVERIFY', 'qDebug', 'kDebug', 'QBENCHMARK' - ), - 3 => array( - 'cin', 'cerr', 'clog', 'cout', - 'printf', 'fprintf', 'snprintf', 'sprintf', 'assert', - 'isalnum', 'isalpha', 'isdigit', 'iscntrl', 'isgraph', 'islower', 'isprint', - 'ispunct', 'isspace', 'isupper', 'isxdigit', 'tolower', 'toupper', - 'exp', 'log', 'log10', 'pow', 'sqrt', 'ceil', 'floor', 'fabs', 'ldexp', - 'frexp', 'modf', 'fmod', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', 'atan2', - 'sinh', 'cosh', 'tanh', 'setjmp', 'longjmp', - 'va_start', 'va_arg', 'va_end', 'offsetof', 'sizeof', 'fopen', 'freopen', - 'fflush', 'fclose', 'remove', 'rename', 'tmpfile', 'tmpname', 'setvbuf', - 'setbuf', 'vfprintf', 'vprintf', 'vsprintf', 'fscanf', 'scanf', 'sscanf', - 'fgetc', 'fgets', 'fputc', 'fputs', 'getc', 'getchar', 'gets', 'putc', - 'putchar', 'puts', 'ungetc', 'fread', 'fwrite', 'fseek', 'ftell', 'rewind', - 'fgetpos', 'fsetpos', 'clearerr', 'feof', 'ferror', 'perror', 'abs', 'labs', - 'div', 'ldiv', 'atof', 'atoi', 'atol', 'strtod', 'strtol', 'strtoul', 'calloc', - 'malloc', 'realloc', 'free', 'abort', 'exit', 'atexit', 'system', 'getenv', - 'bsearch', 'qsort', 'rand', 'srand', 'strcpy', 'strncpy', 'strcat', 'strncat', - 'strcmp', 'strncmp', 'strcoll', 'strchr', 'strrchr', 'strspn', 'strcspn', - 'strpbrk', 'strstr', 'strlen', 'strerror', 'strtok', 'strxfrm', 'memcpy', - 'memmove', 'memcmp', 'memchr', 'memset', 'clock', 'time', 'difftime', 'mktime', - 'asctime', 'ctime', 'gmtime', 'localtime', 'strftime' - ), - 4 => array( - 'auto', 'bool', 'char', 'const', 'double', 'float', 'int', 'long', 'longint', - 'register', 'short', 'shortint', 'signed', 'static', 'struct', - 'typedef', 'union', 'unsigned', 'void', 'volatile', 'extern', 'jmp_buf', - 'signal', 'raise', 'va_list', 'ptrdiff_t', 'size_t', 'FILE', 'fpos_t', - 'div_t', 'ldiv_t', 'clock_t', 'time_t', 'tm', 'wchar_t', - - 'int8', 'int16', 'int32', 'int64', - 'uint8', 'uint16', 'uint32', 'uint64', - - 'int_fast8_t', 'int_fast16_t', 'int_fast32_t', 'int_fast64_t', - 'uint_fast8_t', 'uint_fast16_t', 'uint_fast32_t', 'uint_fast64_t', - - 'int_least8_t', 'int_least16_t', 'int_least32_t', 'int_least64_t', - 'uint_least8_t', 'uint_least16_t', 'uint_least32_t', 'uint_least64_t', - - 'int8_t', 'int16_t', 'int32_t', 'int64_t', - 'uint8_t', 'uint16_t', 'uint32_t', 'uint64_t', - - 'intmax_t', 'uintmax_t', 'intptr_t', 'uintptr_t' - ), - 5 => array( - "Q_UINT16", "Q_UINT32", "Q_UINT64", "Q_UINT8", "Q_ULLONG", - "Q_ULONG", "Q3Accel", "Q3Action", "Q3ActionGroup", "Q3AsciiBucket", - "Q3AsciiCache", "Q3AsciiCacheIterator", "Q3AsciiDict", - "Q3AsciiDictIterator", "Q3BaseBucket", "Q3BoxLayout", "Q3Button", - "Q3ButtonGroup", "Q3Cache", "Q3CacheIterator", "Q3Canvas", - "Q3CanvasEllipse", "Q3CanvasItem", "Q3CanvasItemList", - "Q3CanvasLine", "Q3CanvasPixmap", "Q3CanvasPixmapArray", - "Q3CanvasPolygon", "Q3CanvasPolygonalItem", "Q3CanvasRectangle", - "Q3CanvasSpline", "Q3CanvasSprite", "Q3CanvasText", "Q3CanvasView", - "Q3CheckListItem", "Q3CheckTableItem", "Q3CleanupHandler", - "Q3ColorDrag", "Q3ComboBox", "Q3ComboTableItem", "Q3CString", - "Q3DataBrowser", "Q3DataTable", "Q3DataView", "Q3DateEdit", - "Q3DateTimeEdit", "Q3DateTimeEditBase", "Q3DeepCopy", "Q3Dict", - "Q3DictIterator", "Q3Dns", "Q3DnsSocket", "Q3DockArea", - "Q3DockAreaLayout", "Q3DockWindow", "Q3DragObject", "Q3DropSite", - "Q3EditorFactory", "Q3FileDialog", "Q3FileIconProvider", - "Q3FilePreview", "Q3Frame", "Q3Ftp", "Q3GArray", "Q3GCache", - "Q3GCacheIterator", "Q3GDict", "Q3GDictIterator", "Q3GList", - "Q3GListIterator", "Q3GListStdIterator", "Q3Grid", "Q3GridLayout", - "Q3GridView", "Q3GroupBox", "Q3GVector", "Q3HBox", "Q3HBoxLayout", - "Q3HButtonGroup", "Q3Header", "Q3HGroupBox", "Q3Http", - "Q3HttpHeader", "Q3HttpRequestHeader", "Q3HttpResponseHeader", - "Q3IconDrag", "Q3IconDragItem", "Q3IconView", "Q3IconViewItem", - "Q3ImageDrag", "Q3IntBucket", "Q3IntCache", "Q3IntCacheIterator", - "Q3IntDict", "Q3IntDictIterator", "Q3ListBox", "Q3ListBoxItem", - "Q3ListBoxPixmap", "Q3ListBoxText", "Q3ListView", "Q3ListViewItem", - "Q3ListViewItemIterator", "Q3LNode", "Q3LocalFs", "Q3MainWindow", - "Q3MemArray", "Q3MimeSourceFactory", "Q3MultiLineEdit", - "Q3NetworkOperation", "Q3NetworkProtocol", "Q3NetworkProtocolDict", - "Q3NetworkProtocolFactory", "Q3NetworkProtocolFactoryBase", - "Q3ObjectDictionary", "Q3PaintDeviceMetrics", "Q3Painter", - "Q3Picture", "Q3PointArray", "Q3PolygonScanner", "Q3PopupMenu", - "Q3Process", "Q3ProgressBar", "Q3ProgressDialog", "Q3PtrBucket", - "Q3PtrCollection", "Q3PtrDict", "Q3PtrDictIterator", "Q3PtrList", - "Q3PtrListIterator", "Q3PtrListStdIterator", "Q3PtrQueue", - "Q3PtrStack", "Q3PtrVector", "Q3RangeControl", "Q3ScrollView", - "Q3Semaphore", "Q3ServerSocket", "Q3Shared", "Q3Signal", - "Q3SimpleRichText", "Q3SingleCleanupHandler", "Q3Socket", - "Q3SocketDevice", "Q3SortedList", "Q3SpinWidget", "Q3SqlCursor", - "Q3SqlEditorFactory", "Q3SqlFieldInfo", "Q3SqlFieldInfoList", - "Q3SqlForm", "Q3SqlPropertyMap", "Q3SqlRecordInfo", - "Q3SqlSelectCursor", "Q3StoredDrag", "Q3StrIList", "Q3StringBucket", - "Q3StrIVec", "Q3StrList", "Q3StrListIterator", "Q3StrVec", - "Q3StyleSheet", "Q3StyleSheetItem", "Q3SyntaxHighlighter", - "Q3TabDialog", "Q3Table", "Q3TableItem", "Q3TableSelection", - "Q3TextBrowser", "Q3TextDrag", "Q3TextEdit", - "Q3TextEditOptimPrivate", "Q3TextStream", "Q3TextView", - "Q3TimeEdit", "Q3ToolBar", "Q3TSFUNC", "Q3UriDrag", "Q3Url", - "Q3UrlOperator", "Q3ValueList", "Q3ValueListConstIterator", - "Q3ValueListIterator", "Q3ValueStack", "Q3ValueVector", "Q3VBox", - "Q3VBoxLayout", "Q3VButtonGroup", "Q3VGroupBox", "Q3WhatsThis", - "Q3WidgetStack", "Q3Wizard", "QAbstractButton", - "QAbstractEventDispatcher", "QAbstractExtensionFactory", - "QAbstractExtensionManager", "QAbstractFileEngine", - "QAbstractFileEngineHandler", "QAbstractFileEngineIterator", - "QAbstractFormBuilder", "QAbstractGraphicsShapeItem", - "QAbstractItemDelegate", "QAbstractItemModel", "QAbstractItemView", - "QAbstractListModel", "QAbstractMessageHandler", - "QAbstractNetworkCache", "QAbstractPageSetupDialog", - "QAbstractPrintDialog", "QAbstractProxyModel", - "QAbstractScrollArea", "QAbstractSlider", "QAbstractSocket", - "QAbstractSpinBox", "QAbstractTableModel", - "QAbstractTextDocumentLayout", "QAbstractUndoItem", - "QAbstractUriResolver", "QAbstractXmlNodeModel", - "QAbstractXmlReceiver", "QAccessible", "QAccessible2Interface", - "QAccessibleApplication", "QAccessibleBridge", - "QAccessibleBridgeFactoryInterface", "QAccessibleBridgePlugin", - "QAccessibleEditableTextInterface", "QAccessibleEvent", - "QAccessibleFactoryInterface", "QAccessibleInterface", - "QAccessibleInterfaceEx", "QAccessibleObject", - "QAccessibleObjectEx", "QAccessiblePlugin", - "QAccessibleSimpleEditableTextInterface", - "QAccessibleTableInterface", "QAccessibleTextInterface", - "QAccessibleValueInterface", "QAccessibleWidget", - "QAccessibleWidgetEx", "QAction", "QActionEvent", "QActionGroup", - "QApplication", "QArgument", "QAssistantClient", "QAtomicInt", - "QAtomicPointer", "QAuthenticator", "QBasicAtomicInt", - "QBasicAtomicPointer", "QBasicTimer", "QBitArray", "QBitmap", - "QBitRef", "QBool", "QBoxLayout", "QBrush", "QBrushData", "QBuffer", - "QButtonGroup", "QByteArray", "QByteArrayMatcher", "QByteRef", - "QCache", "QCalendarWidget", "QCDEStyle", "QChar", "QCharRef", - "QCheckBox", "QChildEvent", "QCleanlooksStyle", "QClipboard", - "QClipboardEvent", "QCloseEvent", "QColor", "QColorDialog", - "QColorGroup", "QColormap", "QColumnView", "QComboBox", - "QCommandLinkButton", "QCommonStyle", "QCompleter", - "QConicalGradient", "QConstString", "QContextMenuEvent", "QCOORD", - "QCoreApplication", "QCryptographicHash", "QCursor", "QCursorShape", - "QCustomEvent", "QDataStream", "QDataWidgetMapper", "QDate", - "QDateEdit", "QDateTime", "QDateTimeEdit", "QDB2Driver", - "QDB2Result", "QDBusAbstractAdaptor", "QDBusAbstractInterface", - "QDBusArgument", "QDBusConnection", "QDBusConnectionInterface", - "QDBusContext", "QDBusError", "QDBusInterface", "QDBusMessage", - "QDBusMetaType", "QDBusObjectPath", "QDBusPendingCall", - "QDBusPendingCallWatcher", "QDBusPendingReply", - "QDBusPendingReplyData", "QDBusReply", "QDBusServer", - "QDBusSignature", "QDBusVariant", "QDebug", - "QDesignerActionEditorInterface", "QDesignerBrushManagerInterface", - "QDesignerComponents", "QDesignerContainerExtension", - "QDesignerCustomWidgetCollectionInterface", - "QDesignerCustomWidgetInterface", "QDesignerDnDItemInterface", - "QDesignerDynamicPropertySheetExtension", "QDesignerExportWidget", - "QDesignerExtraInfoExtension", "QDesignerFormEditorInterface", - "QDesignerFormEditorPluginInterface", "QDesignerFormWindowCursorInterface", - "QDesignerFormWindowInterface", "QDesignerFormWindowManagerInterface", - "QDesignerFormWindowToolInterface", - "QDesignerIconCacheInterface", "QDesignerIntegrationInterface", - "QDesignerLanguageExtension", "QDesignerLayoutDecorationExtension", - "QDesignerMemberSheetExtension", "QDesignerMetaDataBaseInterface", - "QDesignerMetaDataBaseItemInterface", - "QDesignerObjectInspectorInterface", "QDesignerPromotionInterface", - "QDesignerPropertyEditorInterface", - "QDesignerPropertySheetExtension", "QDesignerResourceBrowserInterface", - "QDesignerTaskMenuExtension", "QDesignerWidgetBoxInterface", - "QDesignerWidgetDataBaseInterface", "QDesignerWidgetDataBaseItemInterface", - "QDesignerWidgetFactoryInterface", "QDesktopServices", - "QDesktopWidget", "QDial", "QDialog", "QDialogButtonBox", "QDir", - "QDirIterator", "QDirModel", "QDockWidget", "QDomAttr", - "QDomCDATASection", "QDomCharacterData", "QDomComment", - "QDomDocument", "QDomDocumentFragment", "QDomDocumentType", - "QDomElement", "QDomEntity", "QDomEntityReference", - "QDomImplementation", "QDomNamedNodeMap", "QDomNode", - "QDomNodeList", "QDomNotation", "QDomProcessingInstruction", - "QDomText", "QDoubleSpinBox", "QDoubleValidator", "QDrag", - "QDragEnterEvent", "QDragLeaveEvent", "QDragMoveEvent", - "QDragResponseEvent", "QDropEvent", "QDynamicPropertyChangeEvent", - "QErrorMessage", "QEvent", "QEventLoop", "QEventSizeOfChecker", - "QExplicitlySharedDataPointer", "QExtensionFactory", - "QExtensionManager", "QFactoryInterface", "QFile", "QFileDialog", - "QFileIconProvider", "QFileInfo", "QFileInfoList", - "QFileInfoListIterator", "QFileOpenEvent", "QFileSystemModel", - "QFileSystemWatcher", "QFlag", "QFlags", "QFocusEvent", - "QFocusFrame", "QFont", "QFontComboBox", "QFontDatabase", - "QFontDialog", "QFontInfo", "QFontMetrics", "QFontMetricsF", - "QForeachContainer", "QForeachContainerBase", "QFormBuilder", - "QFormLayout", "QFrame", "QFSFileEngine", "QFtp", "QFuture", - "QFutureInterface", "QFutureInterfaceBase", "QFutureIterator", - "QFutureSynchronizer", "QFutureWatcher", "QFutureWatcherBase", - "QGenericArgument", "QGenericReturnArgument", "QGLColormap", - "QGLContext", "QGLFormat", "QGLFramebufferObject", "QGlobalStatic", - "QGlobalStaticDeleter", "QGLPixelBuffer", "QGLWidget", "QGradient", - "QGradientStop", "QGradientStops", "QGraphicsEllipseItem", - "QGraphicsGridLayout", "QGraphicsItem", "QGraphicsItemAnimation", - "QGraphicsItemGroup", "QGraphicsLayout", "QGraphicsLayoutItem", - "QGraphicsLinearLayout", "QGraphicsLineItem", "QGraphicsPathItem", - "QGraphicsPixmapItem", "QGraphicsPolygonItem", - "QGraphicsProxyWidget", "QGraphicsRectItem", "QGraphicsScene", - "QGraphicsSceneContextMenuEvent", "QGraphicsSceneDragDropEvent", - "QGraphicsSceneEvent", "QGraphicsSceneHelpEvent", - "QGraphicsSceneHoverEvent", "QGraphicsSceneMouseEvent", - "QGraphicsSceneMoveEvent", "QGraphicsSceneResizeEvent", - "QGraphicsSceneWheelEvent", "QGraphicsSimpleTextItem", - "QGraphicsSvgItem", "QGraphicsTextItem", "QGraphicsView", - "QGraphicsWidget", "QGridLayout", "QGroupBox", "QGtkStyle", "QHash", - "QHashData", "QHashDummyNode", "QHashDummyValue", "QHashIterator", - "QHashNode", "QHBoxLayout", "QHeaderView", "QHelpContentItem", - "QHelpContentModel", "QHelpContentWidget", "QHelpEngine", - "QHelpEngineCore", "QHelpEvent", "QHelpGlobal", "QHelpIndexModel", - "QHelpIndexWidget", "QHelpSearchEngine", "QHelpSearchQuery", - "QHelpSearchQueryWidget", "QHelpSearchResultWidget", "QHideEvent", - "QHostAddress", "QHostInfo", "QHoverEvent", "QHttp", "QHttpHeader", - "QHttpRequestHeader", "QHttpResponseHeader", "QIBaseDriver", - "QIBaseResult", "QIcon", "QIconDragEvent", "QIconEngine", - "QIconEngineFactoryInterface", "QIconEngineFactoryInterfaceV2", - "QIconEnginePlugin", "QIconEnginePluginV2", "QIconEngineV2", - "QIconSet", "QImage", "QImageIOHandler", - "QImageIOHandlerFactoryInterface", "QImageIOPlugin", "QImageReader", - "QImageTextKeyLang", "QImageWriter", "QIncompatibleFlag", - "QInputContext", "QInputContextFactory", - "QInputContextFactoryInterface", "QInputContextPlugin", - "QInputDialog", "QInputEvent", "QInputMethodEvent", "Q_INT16", - "Q_INT32", "Q_INT64", "Q_INT8", "QInternal", "QIntForSize", - "QIntForType", "QIntValidator", "QIODevice", "Q_IPV6ADDR", - "QIPv6Address", "QItemDelegate", "QItemEditorCreator", - "QItemEditorCreatorBase", "QItemEditorFactory", "QItemSelection", - "QItemSelectionModel", "QItemSelectionRange", "QKeyEvent", - "QKeySequence", "QLabel", "QLatin1Char", "QLatin1String", "QLayout", - "QLayoutItem", "QLayoutIterator", "QLCDNumber", "QLibrary", - "QLibraryInfo", "QLine", "QLinearGradient", "QLineEdit", "QLineF", - "QLinkedList", "QLinkedListData", "QLinkedListIterator", - "QLinkedListNode", "QList", "QListData", "QListIterator", - "QListView", "QListWidget", "QListWidgetItem", "Q_LLONG", "QLocale", - "QLocalServer", "QLocalSocket", "Q_LONG", "QMacCompatGLenum", - "QMacCompatGLint", "QMacCompatGLuint", "QMacGLCompatTypes", - "QMacMime", "QMacPasteboardMime", "QMainWindow", "QMap", "QMapData", - "QMapIterator", "QMapNode", "QMapPayloadNode", "QMatrix", - "QMdiArea", "QMdiSubWindow", "QMenu", "QMenuBar", - "QMenubarUpdatedEvent", "QMenuItem", "QMessageBox", - "QMetaClassInfo", "QMetaEnum", "QMetaMethod", "QMetaObject", - "QMetaObjectExtraData", "QMetaProperty", "QMetaType", "QMetaTypeId", - "QMetaTypeId2", "QMimeData", "QMimeSource", "QModelIndex", - "QModelIndexList", "QMotifStyle", "QMouseEvent", "QMoveEvent", - "QMovie", "QMultiHash", "QMultiMap", "QMutableFutureIterator", - "QMutableHashIterator", "QMutableLinkedListIterator", - "QMutableListIterator", "QMutableMapIterator", - "QMutableSetIterator", "QMutableStringListIterator", - "QMutableVectorIterator", "QMutex", "QMutexLocker", "QMYSQLDriver", - "QMYSQLResult", "QNetworkAccessManager", "QNetworkAddressEntry", - "QNetworkCacheMetaData", "QNetworkCookie", "QNetworkCookieJar", - "QNetworkDiskCache", "QNetworkInterface", "QNetworkProxy", - "QNetworkProxyFactory", "QNetworkProxyQuery", "QNetworkReply", - "QNetworkRequest", "QNoDebug", "QNoImplicitBoolCast", "QObject", - "QObjectCleanupHandler", "QObjectData", "QObjectList", - "QObjectUserData", "QOCIDriver", "QOCIResult", "QODBCDriver", - "QODBCResult", "QPageSetupDialog", "QPaintDevice", "QPaintEngine", - "QPaintEngineState", "QPainter", "QPainterPath", - "QPainterPathPrivate", "QPainterPathStroker", "QPaintEvent", - "QPair", "QPalette", "QPen", "QPersistentModelIndex", "QPicture", - "QPictureFormatInterface", "QPictureFormatPlugin", "QPictureIO", - "Q_PID", "QPixmap", "QPixmapCache", "QPlainTextDocumentLayout", - "QPlainTextEdit", "QPlastiqueStyle", "QPluginLoader", "QPoint", - "QPointer", "QPointF", "QPolygon", "QPolygonF", "QPrintDialog", - "QPrintEngine", "QPrinter", "QPrinterInfo", "QPrintPreviewDialog", - "QPrintPreviewWidget", "QProcess", "QProgressBar", - "QProgressDialog", "QProxyModel", "QPSQLDriver", "QPSQLResult", - "QPushButton", "QQueue", "QRadialGradient", "QRadioButton", - "QReadLocker", "QReadWriteLock", "QRect", "QRectF", "QRegExp", - "QRegExpValidator", "QRegion", "QResizeEvent", "QResource", - "QReturnArgument", "QRgb", "QRubberBand", "QRunnable", - "QScriptable", "QScriptClass", "QScriptClassPropertyIterator", - "QScriptContext", "QScriptContextInfo", "QScriptContextInfoList", - "QScriptEngine", "QScriptEngineAgent", "QScriptEngineDebugger", - "QScriptExtensionInterface", "QScriptExtensionPlugin", - "QScriptString", "QScriptSyntaxCheckResult", "QScriptValue", - "QScriptValueIterator", "QScriptValueList", "QScrollArea", - "QScrollBar", "QSemaphore", "QSessionManager", "QSet", - "QSetIterator", "QSettings", "QSharedData", "QSharedDataPointer", - "QSharedMemory", "QSharedPointer", "QShortcut", "QShortcutEvent", - "QShowEvent", "QSignalMapper", "QSignalSpy", "QSimpleXmlNodeModel", - "QSize", "QSizeF", "QSizeGrip", "QSizePolicy", "QSlider", - "QSocketNotifier", "QSortFilterProxyModel", "QSound", - "QSourceLocation", "QSpacerItem", "QSpinBox", "QSplashScreen", - "QSplitter", "QSplitterHandle", "QSpontaneKeyEvent", "QSqlDatabase", - "QSqlDriver", "QSqlDriverCreator", "QSqlDriverCreatorBase", - "QSqlDriverFactoryInterface", "QSqlDriverPlugin", "QSqlError", - "QSqlField", "QSqlIndex", "QSQLite2Driver", "QSQLite2Result", - "QSQLiteDriver", "QSQLiteResult", "QSqlQuery", "QSqlQueryModel", - "QSqlRecord", "QSqlRelation", "QSqlRelationalDelegate", - "QSqlRelationalTableModel", "QSqlResult", "QSqlTableModel", "QSsl", - "QSslCertificate", "QSslCipher", "QSslConfiguration", "QSslError", - "QSslKey", "QSslSocket", "QStack", "QStackedLayout", - "QStackedWidget", "QStandardItem", "QStandardItemEditorCreator", - "QStandardItemModel", "QStatusBar", "QStatusTipEvent", - "QStdWString", "QString", "QStringList", "QStringListIterator", - "QStringListModel", "QStringMatcher", "QStringRef", "QStyle", - "QStyledItemDelegate", "QStyleFactory", "QStyleFactoryInterface", - "QStyleHintReturn", "QStyleHintReturnMask", - "QStyleHintReturnVariant", "QStyleOption", "QStyleOptionButton", - "QStyleOptionComboBox", "QStyleOptionComplex", - "QStyleOptionDockWidget", "QStyleOptionDockWidgetV2", - "QStyleOptionFocusRect", "QStyleOptionFrame", "QStyleOptionFrameV2", - "QStyleOptionFrameV3", "QStyleOptionGraphicsItem", - "QStyleOptionGroupBox", "QStyleOptionHeader", - "QStyleOptionMenuItem", "QStyleOptionProgressBar", - "QStyleOptionProgressBarV2", "QStyleOptionQ3DockWindow", - "QStyleOptionQ3ListView", "QStyleOptionQ3ListViewItem", - "QStyleOptionRubberBand", "QStyleOptionSizeGrip", - "QStyleOptionSlider", "QStyleOptionSpinBox", "QStyleOptionTab", - "QStyleOptionTabBarBase", "QStyleOptionTabBarBaseV2", - "QStyleOptionTabV2", "QStyleOptionTabV3", - "QStyleOptionTabWidgetFrame", "QStyleOptionTitleBar", - "QStyleOptionToolBar", "QStyleOptionToolBox", - "QStyleOptionToolBoxV2", "QStyleOptionToolButton", - "QStyleOptionViewItem", "QStyleOptionViewItemV2", - "QStyleOptionViewItemV3", "QStyleOptionViewItemV4", "QStylePainter", - "QStylePlugin", "QSvgGenerator", "QSvgRenderer", "QSvgWidget", - "QSyntaxHighlighter", "QSysInfo", "QSystemLocale", - "QSystemSemaphore", "QSystemTrayIcon", "Qt", "Qt3Support", - "QTabBar", "QTabletEvent", "QTableView", "QTableWidget", - "QTableWidgetItem", "QTableWidgetSelectionRange", "QTabWidget", - "QtAlgorithms", "QtAssistant", "QtCleanUpFunction", - "QtConcurrentFilter", "QtConcurrentMap", "QtConcurrentRun", - "QtContainerFwd", "QtCore", "QTcpServer", "QTcpSocket", "QtDBus", - "QtDebug", "QtDesigner", "QTDSDriver", "QTDSResult", - "QTemporaryFile", "QtEndian", "QTest", "QTestAccessibility", - "QTestAccessibilityEvent", "QTestData", "QTestDelayEvent", - "QTestEvent", "QTestEventList", "QTestEventLoop", - "QTestKeyClicksEvent", "QTestKeyEvent", "QTestMouseEvent", - "QtEvents", "QTextBlock", "QTextBlockFormat", "QTextBlockGroup", - "QTextBlockUserData", "QTextBoundaryFinder", "QTextBrowser", - "QTextCharFormat", "QTextCodec", "QTextCodecFactoryInterface", - "QTextCodecPlugin", "QTextCursor", "QTextDecoder", "QTextDocument", - "QTextDocumentFragment", "QTextDocumentWriter", "QTextEdit", - "QTextEncoder", "QTextFormat", "QTextFragment", "QTextFrame", - "QTextFrameFormat", "QTextFrameLayoutData", "QTextImageFormat", - "QTextInlineObject", "QTextIStream", "QTextItem", "QTextLayout", - "QTextLength", "QTextLine", "QTextList", "QTextListFormat", - "QTextObject", "QTextObjectInterface", "QTextOption", - "QTextOStream", "QTextStream", "QTextStreamFunction", - "QTextStreamManipulator", "QTextTable", "QTextTableCell", - "QTextTableCellFormat", "QTextTableFormat", "QtGlobal", "QtGui", - "QtHelp", "QThread", "QThreadPool", "QThreadStorage", - "QThreadStorageData", "QTime", "QTimeEdit", "QTimeLine", "QTimer", - "QTimerEvent", "QtMsgHandler", "QtNetwork", "QToolBar", - "QToolBarChangeEvent", "QToolBox", "QToolButton", "QToolTip", - "QtOpenGL", "QtPlugin", "QtPluginInstanceFunction", "QTransform", - "QTranslator", "QTreeView", "QTreeWidget", "QTreeWidgetItem", - "QTreeWidgetItemIterator", "QTS", "QtScript", "QtScriptTools", - "QtSql", "QtSvg", "QtTest", "QtUiTools", "QtWebKit", "QtXml", - "QtXmlPatterns", "QTypeInfo", "QUdpSocket", "QUiLoader", - "QUintForSize", "QUintForType", "QUndoCommand", "QUndoGroup", - "QUndoStack", "QUndoView", "QUnixPrintWidget", "QUpdateLaterEvent", - "QUrl", "QUrlInfo", "QUuid", "QValidator", "QVariant", - "QVariantComparisonHelper", "QVariantHash", "QVariantList", - "QVariantMap", "QVarLengthArray", "QVBoxLayout", "QVector", - "QVectorData", "QVectorIterator", "QVectorTypedData", - "QWaitCondition", "QWeakPointer", "QWebDatabase", "QWebFrame", - "QWebHistory", "QWebHistoryInterface", "QWebHistoryItem", - "QWebHitTestResult", "QWebPage", "QWebPluginFactory", - "QWebSecurityOrigin", "QWebSettings", "QWebView", "QWhatsThis", - "QWhatsThisClickedEvent", "QWheelEvent", "QWidget", "QWidgetAction", - "QWidgetData", "QWidgetItem", "QWidgetItemV2", "QWidgetList", - "QWidgetMapper", "QWidgetSet", "QWindowsCEStyle", "QWindowsMime", - "QWindowsMobileStyle", "QWindowsStyle", "QWindowStateChangeEvent", - "QWindowsVistaStyle", "QWindowsXPStyle", "QWizard", "QWizardPage", - "QWMatrix", "QWorkspace", "QWriteLocker", "QX11EmbedContainer", - "QX11EmbedWidget", "QX11Info", "QXmlAttributes", - "QXmlContentHandler", "QXmlDeclHandler", "QXmlDefaultHandler", - "QXmlDTDHandler", "QXmlEntityResolver", "QXmlErrorHandler", - "QXmlFormatter", "QXmlInputSource", "QXmlItem", - "QXmlLexicalHandler", "QXmlLocator", "QXmlName", "QXmlNamePool", - "QXmlNamespaceSupport", "QXmlNodeModelIndex", "QXmlParseException", - "QXmlQuery", "QXmlReader", "QXmlResultItems", "QXmlSerializer", - "QXmlSimpleReader", "QXmlStreamAttribute", "QXmlStreamAttributes", - "QXmlStreamEntityDeclaration", "QXmlStreamEntityDeclarations", - "QXmlStreamEntityResolver", "QXmlStreamNamespaceDeclaration", - "QXmlStreamNamespaceDeclarations", "QXmlStreamNotationDeclaration", - "QXmlStreamNotationDeclarations", "QXmlStreamReader", - "QXmlStreamStringRef", "QXmlStreamWriter" - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':', ',', ';', '|', '<', '>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight:bold;', - 2 => 'color: #0057AE;', - 3 => 'color: #2B74C7;', - 4 => 'color: #0057AE;', - 5 => 'color: #22aadd;' - ), - 'COMMENTS' => array( - 1 => 'color: #888888;', - 2 => 'color: #006E28;', - 'MULTI' => 'color: #888888; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 1 => 'color: #000099; font-weight: bold;', - 2 => 'color: #660099; font-weight: bold;', - 3 => 'color: #660099; font-weight: bold;', - 4 => 'color: #660099; font-weight: bold;', - 5 => 'color: #006699; font-weight: bold;', - 'HARD' => '', - ), - 'BRACKETS' => array( - 0 => 'color: #006E28;' - ), - 'STRINGS' => array( - 0 => 'color: #BF0303;' - ), - 'NUMBERS' => array( - 0 => 'color: #B08000;', - GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;', - GESHI_NUMBER_OCT_PREFIX => 'color: #208080;', - GESHI_NUMBER_HEX_PREFIX => 'color: #208080;', - GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;', - GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI => 'color:#800080;' - ), - 'METHODS' => array( - 1 => 'color: #2B74C7;', - 2 => 'color: #2B74C7;', - 3 => 'color: #2B74C7;' - ), - 'SYMBOLS' => array( - 0 => 'color: #006E28;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => 'http://doc.trolltech.com/latest/{FNAMEL}.html' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::', - 3 => '->', - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?|^])", - 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-])" - ), - 'OOLANG' => array( - 'MATCH_AFTER' => '~?[a-zA-Z][a-zA-Z0-9_]*', - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/cpp.php b/library/Vendors/geshi/geshi/cpp.php deleted file mode 100644 index 30f5a93f..00000000 --- a/library/Vendors/geshi/geshi/cpp.php +++ /dev/null @@ -1,240 +0,0 @@ - 'C++', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Multiline-continued single-line comments - 1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m', - //Multiline-continued preprocessor define - 2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - //Simple Single Char Escapes - 1 => "#\\\\[\\\\abfnrtv\'\"?\n]#i", - //Hexadecimal Char Specs - 2 => "#\\\\x[\da-fA-F]{2}#", - //Hexadecimal Char Specs - 3 => "#\\\\u[\da-fA-F]{4}#", - //Hexadecimal Char Specs - 4 => "#\\\\U[\da-fA-F]{8}#", - //Octal Char Specs - 5 => "#\\\\[0-7]{1,3}#" - ), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B | - GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - 'break', 'case', 'continue', 'default', 'do', 'else', 'for', 'goto', 'if', 'return', - 'switch', 'throw', 'while' - ), - 2 => array( - 'NULL', 'false', 'true', 'enum', 'errno', 'EDOM', - 'ERANGE', 'FLT_RADIX', 'FLT_ROUNDS', 'FLT_DIG', 'DBL_DIG', 'LDBL_DIG', - 'FLT_EPSILON', 'DBL_EPSILON', 'LDBL_EPSILON', 'FLT_MANT_DIG', 'DBL_MANT_DIG', - 'LDBL_MANT_DIG', 'FLT_MAX', 'DBL_MAX', 'LDBL_MAX', 'FLT_MAX_EXP', 'DBL_MAX_EXP', - 'LDBL_MAX_EXP', 'FLT_MIN', 'DBL_MIN', 'LDBL_MIN', 'FLT_MIN_EXP', 'DBL_MIN_EXP', - 'LDBL_MIN_EXP', 'CHAR_BIT', 'CHAR_MAX', 'CHAR_MIN', 'SCHAR_MAX', 'SCHAR_MIN', - 'UCHAR_MAX', 'SHRT_MAX', 'SHRT_MIN', 'USHRT_MAX', 'INT_MAX', 'INT_MIN', - 'UINT_MAX', 'LONG_MAX', 'LONG_MIN', 'ULONG_MAX', 'HUGE_VAL', 'SIGABRT', - 'SIGFPE', 'SIGILL', 'SIGINT', 'SIGSEGV', 'SIGTERM', 'SIG_DFL', 'SIG_ERR', - 'SIG_IGN', 'BUFSIZ', 'EOF', 'FILENAME_MAX', 'FOPEN_MAX', 'L_tmpnam', - 'SEEK_CUR', 'SEEK_END', 'SEEK_SET', 'TMP_MAX', 'stdin', 'stdout', 'stderr', - 'EXIT_FAILURE', 'EXIT_SUCCESS', 'RAND_MAX', 'CLOCKS_PER_SEC', - 'virtual', 'public', 'private', 'protected', 'template', 'using', 'namespace', - 'try', 'catch', 'inline', 'dynamic_cast', 'const_cast', 'reinterpret_cast', - 'static_cast', 'explicit', 'friend', 'typename', 'typeid', 'class' - ), - 3 => array( - 'cin', 'cerr', 'clog', 'cout', 'delete', 'new', 'this', - 'printf', 'fprintf', 'snprintf', 'sprintf', 'assert', - 'isalnum', 'isalpha', 'isdigit', 'iscntrl', 'isgraph', 'islower', 'isprint', - 'ispunct', 'isspace', 'isupper', 'isxdigit', 'tolower', 'toupper', - 'exp', 'log', 'log10', 'pow', 'sqrt', 'ceil', 'floor', 'fabs', 'ldexp', - 'frexp', 'modf', 'fmod', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', 'atan2', - 'sinh', 'cosh', 'tanh', 'setjmp', 'longjmp', - 'va_start', 'va_arg', 'va_end', 'offsetof', 'sizeof', 'fopen', 'freopen', - 'fflush', 'fclose', 'remove', 'rename', 'tmpfile', 'tmpname', 'setvbuf', - 'setbuf', 'vfprintf', 'vprintf', 'vsprintf', 'fscanf', 'scanf', 'sscanf', - 'fgetc', 'fgets', 'fputc', 'fputs', 'getc', 'getchar', 'gets', 'putc', - 'putchar', 'puts', 'ungetc', 'fread', 'fwrite', 'fseek', 'ftell', 'rewind', - 'fgetpos', 'fsetpos', 'clearerr', 'feof', 'ferror', 'perror', 'abs', 'labs', - 'div', 'ldiv', 'atof', 'atoi', 'atol', 'strtod', 'strtol', 'strtoul', 'calloc', - 'malloc', 'realloc', 'free', 'abort', 'exit', 'atexit', 'system', 'getenv', - 'bsearch', 'qsort', 'rand', 'srand', 'strcpy', 'strncpy', 'strcat', 'strncat', - 'strcmp', 'strncmp', 'strcoll', 'strchr', 'strrchr', 'strspn', 'strcspn', - 'strpbrk', 'strstr', 'strlen', 'strerror', 'strtok', 'strxfrm', 'memcpy', - 'memmove', 'memcmp', 'memchr', 'memset', 'clock', 'time', 'difftime', 'mktime', - 'asctime', 'ctime', 'gmtime', 'localtime', 'strftime' - ), - 4 => array( - 'auto', 'bool', 'char', 'const', 'double', 'float', 'int', 'long', 'longint', - 'register', 'short', 'shortint', 'signed', 'static', 'struct', - 'typedef', 'union', 'unsigned', 'void', 'volatile', 'extern', 'jmp_buf', - 'signal', 'raise', 'va_list', 'ptrdiff_t', 'size_t', 'FILE', 'fpos_t', - 'div_t', 'ldiv_t', 'clock_t', 'time_t', 'tm', 'wchar_t', - - 'int8', 'int16', 'int32', 'int64', - 'uint8', 'uint16', 'uint32', 'uint64', - - 'int_fast8_t', 'int_fast16_t', 'int_fast32_t', 'int_fast64_t', - 'uint_fast8_t', 'uint_fast16_t', 'uint_fast32_t', 'uint_fast64_t', - - 'int_least8_t', 'int_least16_t', 'int_least32_t', 'int_least64_t', - 'uint_least8_t', 'uint_least16_t', 'uint_least32_t', 'uint_least64_t', - - 'int8_t', 'int16_t', 'int32_t', 'int64_t', - 'uint8_t', 'uint16_t', 'uint32_t', 'uint64_t', - - 'intmax_t', 'uintmax_t', 'intptr_t', 'uintptr_t' - ), - ), - 'SYMBOLS' => array( - 0 => array('(', ')', '{', '}', '[', ']'), - 1 => array('<', '>','='), - 2 => array('+', '-', '*', '/', '%'), - 3 => array('!', '^', '&', '|'), - 4 => array('?', ':', ';') - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000ff;', - 2 => 'color: #0000ff;', - 3 => 'color: #0000dd;', - 4 => 'color: #0000ff;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666;', - 2 => 'color: #339900;', - 'MULTI' => 'color: #ff0000; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 1 => 'color: #000099; font-weight: bold;', - 2 => 'color: #660099; font-weight: bold;', - 3 => 'color: #660099; font-weight: bold;', - 4 => 'color: #660099; font-weight: bold;', - 5 => 'color: #006699; font-weight: bold;', - 'HARD' => '', - ), - 'BRACKETS' => array( - 0 => 'color: #008000;' - ), - 'STRINGS' => array( - 0 => 'color: #FF0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000dd;', - GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;', - GESHI_NUMBER_OCT_PREFIX => 'color: #208080;', - GESHI_NUMBER_HEX_PREFIX => 'color: #208080;', - GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;', - GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI => 'color:#800080;' - ), - 'METHODS' => array( - 1 => 'color: #007788;', - 2 => 'color: #007788;' - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;', - 1 => 'color: #000080;', - 2 => 'color: #000040;', - 3 => 'color: #000040;', - 4 => 'color: #008080;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(? "(?![a-zA-Z0-9_\|%\\-])" - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/csharp.php b/library/Vendors/geshi/geshi/csharp.php deleted file mode 100644 index 6a9c3c2b..00000000 --- a/library/Vendors/geshi/geshi/csharp.php +++ /dev/null @@ -1,253 +0,0 @@ - 'C#', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Using and Namespace directives (basic support) - //Please note that the alias syntax for using is not supported - 3 => '/(?:(?<=using[\\n\\s])|(?<=namespace[\\n\\s]))[\\n\\s]*([a-zA-Z0-9_]+\\.)*[a-zA-Z0-9_]+[\n\s]*(?=[;=])/i'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'HARDQUOTE' => array('@"', '"'), - 'HARDESCAPE' => array('"'), - 'HARDCHAR' => '"', - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'as', 'auto', 'base', 'break', 'case', 'catch', 'const', 'continue', - 'default', 'do', 'else', 'event', 'explicit', 'extern', 'false', - 'finally', 'fixed', 'for', 'foreach', 'from', 'goto', 'if', - 'implicit', 'in', 'internal', 'lock', 'namespace', 'null', - 'operator', 'out', 'override', 'params', 'partial', 'private', - 'protected', 'public', 'readonly', 'ref', 'return', 'sealed', - 'select', 'stackalloc', 'static', 'switch', 'this', 'throw', 'true', - 'try', 'unsafe', 'using', 'virtual', 'where', 'while', 'yield' - ), - 2 => array( - '#elif', '#endif', '#endregion', '#else', '#error', '#define', '#if', - '#line', '#region', '#undef', '#warning' - ), - 3 => array( - 'checked', 'is', 'new', 'sizeof', 'typeof', 'unchecked' - ), - 4 => array( - 'bool', 'byte', 'char', 'class', 'decimal', 'delegate', 'double', - 'enum', 'float', 'int', 'interface', 'long', 'object', 'sbyte', - 'short', 'string', 'struct', 'uint', 'ulong', 'ushort', 'void' - ), - 5 => array( - 'Microsoft.Win32', - 'System', - 'System.CodeDOM', - 'System.CodeDOM.Compiler', - 'System.Collections', - 'System.Collections.Bases', - 'System.ComponentModel', - 'System.ComponentModel.Design', - 'System.ComponentModel.Design.CodeModel', - 'System.Configuration', - 'System.Configuration.Assemblies', - 'System.Configuration.Core', - 'System.Configuration.Install', - 'System.Configuration.Interceptors', - 'System.Configuration.Schema', - 'System.Configuration.Web', - 'System.Core', - 'System.Data', - 'System.Data.ADO', - 'System.Data.Design', - 'System.Data.Internal', - 'System.Data.SQL', - 'System.Data.SQLTypes', - 'System.Data.XML', - 'System.Data.XML.DOM', - 'System.Data.XML.XPath', - 'System.Data.XML.XSLT', - 'System.Diagnostics', - 'System.Diagnostics.SymbolStore', - 'System.DirectoryServices', - 'System.Drawing', - 'System.Drawing.Design', - 'System.Drawing.Drawing2D', - 'System.Drawing.Imaging', - 'System.Drawing.Printing', - 'System.Drawing.Text', - 'System.Globalization', - 'System.IO', - 'System.IO.IsolatedStorage', - 'System.Messaging', - 'System.Net', - 'System.Net.Sockets', - 'System.NewXml', - 'System.NewXml.XPath', - 'System.NewXml.Xsl', - 'System.Reflection', - 'System.Reflection.Emit', - 'System.Resources', - 'System.Runtime.InteropServices', - 'System.Runtime.InteropServices.Expando', - 'System.Runtime.Remoting', - 'System.Runtime.Serialization', - 'System.Runtime.Serialization.Formatters', - 'System.Runtime.Serialization.Formatters.Binary', - 'System.Security', - 'System.Security.Cryptography', - 'System.Security.Cryptography.X509Certificates', - 'System.Security.Permissions', - 'System.Security.Policy', - 'System.Security.Principal', - 'System.ServiceProcess', - 'System.Text', - 'System.Text.RegularExpressions', - 'System.Threading', - 'System.Timers', - 'System.Web', - 'System.Web.Caching', - 'System.Web.Configuration', - 'System.Web.Security', - 'System.Web.Services', - 'System.Web.Services.Description', - 'System.Web.Services.Discovery', - 'System.Web.Services.Protocols', - 'System.Web.UI', - 'System.Web.UI.Design', - 'System.Web.UI.Design.WebControls', - 'System.Web.UI.Design.WebControls.ListControls', - 'System.Web.UI.HtmlControls', - 'System.Web.UI.WebControls', - 'System.WinForms', - 'System.WinForms.ComponentModel', - 'System.WinForms.Design', - 'System.Xml', - 'System.Xml.Serialization', - 'System.Xml.Serialization.Code', - 'System.Xml.Serialization.Schema' - ), - ), - 'SYMBOLS' => array( - '+', '-', '*', '?', '=', '/', '%', '&', '>', '<', '^', '!', ':', ';', - '(', ')', '{', '}', '[', ']', '|', '.' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0600FF; font-weight: bold;', - 2 => 'color: #FF8000; font-weight: bold;', - 3 => 'color: #008000;', - 4 => 'color: #6666cc; font-weight: bold;', - 5 => 'color: #000000;' - ), - 'COMMENTS' => array( - 1 => 'color: #008080; font-style: italic;', - 2 => 'color: #008080;', - 3 => 'color: #008080;', - 'MULTI' => 'color: #008080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #008080; font-weight: bold;', - 'HARD' => 'color: #008080; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #008000;' - ), - 'STRINGS' => array( - 0 => 'color: #666666;', - 'HARD' => 'color: #666666;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF0000;' - ), - 'METHODS' => array( - 1 => 'color: #0000FF;', - 2 => 'color: #0000FF;' - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.google.com/search?q={FNAMEL}+msdn.microsoft.com', - 4 => '', - 5 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?|^])", - 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_%\\-])" - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/css.php b/library/Vendors/geshi/geshi/css.php deleted file mode 100644 index 51f26148..00000000 --- a/library/Vendors/geshi/geshi/css.php +++ /dev/null @@ -1,212 +0,0 @@ - 'CSS', - 'COMMENT_SINGLE' => array(1 => '@'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - 2 => "/(?<=\\()\\s*(?:(?:[a-z0-9]+?:\\/\\/)?[a-z0-9_\\-\\.\\/:]+?)?[a-z]+?\\.[a-z]+?(\\?[^\)]+?)?\\s*?(?=\\))/i" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', "'"), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'aqua', 'azimuth', 'background-attachment', 'background-color', - 'background-image', 'background-position', 'background-repeat', - 'background', 'black', 'blue', 'border-bottom-color', - 'border-bottom-style', 'border-bottom-width', 'border-left-color', - 'border-left-style', 'border-left-width', 'border-right', - 'border-right-color', 'border-right-style', 'border-right-width', - 'border-top-color', 'border-top-style', - 'border-top-width','border-bottom', 'border-collapse', - 'border-left', 'border-width', 'border-color', 'border-spacing', - 'border-style', 'border-top', 'border', 'caption-side', 'clear', - 'clip', 'color', 'content', 'counter-increment', 'counter-reset', - 'cue-after', 'cue-before', 'cue', 'cursor', 'direction', 'display', - 'elevation', 'empty-cells', 'float', 'font-family', 'font-size', - 'font-size-adjust', 'font-stretch', 'font-style', 'font-variant', - 'font-weight', 'font', 'line-height', 'letter-spacing', - 'list-style', 'list-style-image', 'list-style-position', - 'list-style-type', 'margin-bottom', 'margin-left', 'margin-right', - 'margin-top', 'margin', 'marker-offset', 'marks', 'max-height', - 'max-width', 'min-height', 'min-width', 'orphans', 'outline', - 'outline-color', 'outline-style', 'outline-width', 'overflow', - 'padding-bottom', 'padding-left', 'padding-right', 'padding-top', - 'padding', 'page', 'page-break-after', 'page-break-before', - 'page-break-inside', 'pause-after', 'pause-before', 'pause', - 'pitch', 'pitch-range', 'play-during', 'position', 'quotes', - 'richness', 'right', 'size', 'speak-header', 'speak-numeral', - 'speak-punctuation', 'speak', 'speech-rate', 'stress', - 'table-layout', 'text-align', 'text-decoration', 'text-indent', - 'text-shadow', 'text-transform', 'top', 'unicode-bidi', - 'vertical-align', 'visibility', 'voice-family', 'volume', - 'white-space', 'widows', 'width', 'word-spacing', 'z-index', - 'bottom', 'left', 'height' - ), - 2 => array( - 'above', 'absolute', 'always', 'armenian', 'aural', 'auto', - 'avoid', 'baseline', 'behind', 'below', 'bidi-override', 'blink', - 'block', 'bold', 'bolder', 'both', 'capitalize', 'center-left', - 'center-right', 'center', 'circle', 'cjk-ideographic', - 'close-quote', 'collapse', 'condensed', 'continuous', 'crop', - 'crosshair', 'cross', 'cursive', 'dashed', 'decimal-leading-zero', - 'decimal', 'default', 'digits', 'disc', 'dotted', 'double', - 'e-resize', 'embed', 'extra-condensed', 'extra-expanded', - 'expanded', 'fantasy', 'far-left', 'far-right', 'faster', 'fast', - 'fixed', 'fuchsia', 'georgian', 'gray', 'green', 'groove', - 'hebrew', 'help', 'hidden', 'hide', 'higher', 'high', - 'hiragana-iroha', 'hiragana', 'icon', 'inherit', 'inline-table', - 'inline', 'inset', 'inside', 'invert', 'italic', 'justify', - 'katakana-iroha', 'katakana', 'landscape', 'larger', 'large', - 'left-side', 'leftwards', 'level', 'lighter', 'lime', - 'line-through', 'list-item', 'loud', 'lower-alpha', 'lower-greek', - 'lower-roman', 'lowercase', 'ltr', 'lower', 'low', 'maroon', - 'medium', 'message-box', 'middle', 'mix', 'monospace', 'n-resize', - 'narrower', 'navy', 'ne-resize', 'no-close-quote', - 'no-open-quote', 'no-repeat', 'none', 'normal', 'nowrap', - 'nw-resize', 'oblique', 'olive', 'once', 'open-quote', 'outset', - 'outside', 'overline', 'pointer', 'portrait', 'purple', 'px', - 'red', 'relative', 'repeat-x', 'repeat-y', 'repeat', 'rgb', - 'ridge', 'right-side', 'rightwards', 's-resize', 'sans-serif', - 'scroll', 'se-resize', 'semi-condensed', 'semi-expanded', - 'separate', 'serif', 'show', 'silent', 'silver', 'slow', 'slower', - 'small-caps', 'small-caption', 'smaller', 'soft', 'solid', - 'spell-out', 'square', 'static', 'status-bar', 'super', - 'sw-resize', 'table-caption', 'table-cell', 'table-column', - 'table-column-group', 'table-footer-group', 'table-header-group', - 'table-row', 'table-row-group', 'teal', 'text', 'text-bottom', - 'text-top', 'thick', 'thin', 'transparent', 'ultra-condensed', - 'ultra-expanded', 'underline', 'upper-alpha', 'upper-latin', - 'upper-roman', 'uppercase', 'url', 'visible', 'w-resize', 'wait', - 'white', 'wider', 'x-fast', 'x-high', 'x-large', 'x-loud', - 'x-low', 'x-small', 'x-soft', 'xx-large', 'xx-small', 'yellow', - 'yes' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', ':', ';', - '>', '+', '*', ',', '^', '=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #993333;' - ), - 'COMMENTS' => array( - 1 => 'color: #a1a100;', - 2 => 'color: #ff0000; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #00AA00;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #00AA00;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 0 => 'color: #cc00cc;', - 1 => 'color: #6666ff;', - 2 => 'color: #3333ff;', - 3 => 'color: #933;' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //DOM Node ID - 0 => '\#[a-zA-Z0-9\-_]+(?:\\\\:[a-zA-Z0-9\-_]+)*', - //CSS classname - 1 => '\.(?!\d)[a-zA-Z0-9\-_]+(?:\\\\:[a-zA-Z0-9\-_]+)*\b(?=[\{\.#\s,:].|<\|)', - //CSS Pseudo classes - //note: & is needed for > (i.e. > ) - 2 => '(? '[+\-]?(\d+|(\d*\.\d+))(em|ex|pt|px|cm|in|%)', - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-&\.])' - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/cuesheet.php b/library/Vendors/geshi/geshi/cuesheet.php deleted file mode 100644 index 81c607c1..00000000 --- a/library/Vendors/geshi/geshi/cuesheet.php +++ /dev/null @@ -1,138 +0,0 @@ - 'Cuesheet', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - //Single-Line Comments using REM command - 1 => "/(?<=\bREM\b).*?$/im", - ), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'CATALOG','CDTEXTFILE','FILE','FLAGS','INDEX','ISRC','PERFORMER', - 'POSTGAP','PREGAP','REM','SONGWRITER','TITLE','TRACK' - ), - 2 => array( - 'AIFF', 'BINARY', 'MOTOROLA', 'MP3', 'WAVE' - ), - 3 => array( - '4CH', 'DCP', 'PRE', 'SCMS' - ), - 4 => array( - 'AUDIO', 'CDG', 'MODE1/2048', 'MODE1/2336', 'MODE2/2336', - 'MODE2/2352', 'CDI/2336', 'CDI/2352' - ) - ), - 'SYMBOLS' => array( - ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000066; font-weight: bold;', - 3 => 'color: #000066; font-weight: bold;', - 4 => 'color: #000066; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080;', - ), - 'BRACKETS' => array( - 0 => 'color: #0000ff;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;' - ), - 'NUMBERS' => array( - 0 => 'color: #006600;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000066;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 1 => 'color: #000099;', - 2 => 'color: #009900;', - ) - ), - 'URLS' => array( - 1 => 'http://digitalx.org/cuesheetsyntax.php#{FNAMEL}', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 2 => '\b[A-Za-z0-9]{5}\d{7}\b', - 1 => '(?<=[\s:]|^)\d+(?=[\s:]|$)', - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 2, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => '(? '(?![\w\.])', - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/d.php b/library/Vendors/geshi/geshi/d.php deleted file mode 100644 index 5ef349d5..00000000 --- a/library/Vendors/geshi/geshi/d.php +++ /dev/null @@ -1,272 +0,0 @@ - 'D', - 'COMMENT_SINGLE' => array(2 => '///', 1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - // doxygen comments - 3 => '#/\*\*(?![\*\/]).*\*/#sU', - // raw strings - 4 => '#r"[^"]*"#s', - // Script Style interpreter comment - 5 => "/\A#!(?=\\/).*?$/m" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', "'"), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - //Simple Single Char Escapes - 1 => "#\\\\[abfnrtv\\'\"?\n\\\\]#i", - //Hexadecimal Char Specs - 2 => "#\\\\x[\da-fA-F]{2}#", - //Hexadecimal Char Specs - 3 => "#\\\\u[\da-fA-F]{4}#", - //Hexadecimal Char Specs - 4 => "#\\\\U[\da-fA-F]{8}#", - //Octal Char Specs - 5 => "#\\\\[0-7]{1,3}#", - //Named entity escapes - /*6 => "#\\\\&(?:quot|amp|lt|gt|OElig|oelig|Scaron|scaron|Yuml|circ|tilde|". - "ensp|emsp|thinsp|zwnj|zwj|lrm|rlm|ndash|mdash|lsquo|rsquo|sbquo|". - "ldquo|rdquo|bdquo|dagger|Dagger|permil|lsaquo|rsaquo|euro|nbsp|". - "iexcl|cent|pound|curren|yen|brvbar|sect|uml|copy|ordf|laquo|not|". - "shy|reg|macr|deg|plusmn|sup2|sup3|acute|micro|para|middot|cedil|". - "sup1|ordm|raquo|frac14|frac12|frac34|iquest|Agrave|Aacute|Acirc|". - "Atilde|Auml|Aring|AElig|Ccedil|Egrave|Eacute|Ecirc|Euml|Igrave|". - "Iacute|Icirc|Iuml|ETH|Ntilde|Ograve|Oacute|Ocirc|Otilde|Ouml|". - "times|Oslash|Ugrave|Uacute|Ucirc|Uuml|Yacute|THORN|szlig|agrave|". - "aacute|acirc|atilde|auml|aring|aelig|ccedil|egrave|eacute|ecirc|". - "euml|igrave|iacute|icirc|iuml|eth|ntilde|ograve|oacute|ocirc|". - "otilde|ouml|divide|oslash|ugrave|uacute|ucirc|uuml|yacute|thorn|". - "yuml|fnof|Alpha|Beta|Gamma|Delta|Epsilon|Zeta|Eta|Theta|Iota|". - "Kappa|Lambda|Mu|Nu|Xi|Omicron|Pi|Rho|Sigma|Tau|Upsilon|Phi|Chi|". - "Psi|Omega|alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|". - "kappa|lambda|mu|nu|xi|omicron|pi|rho|sigmaf|sigma|tau|upsilon|". - "phi|chi|psi|omega|thetasym|upsih|piv|bull|hellip|prime|Prime|". - "oline|frasl|weierp|image|real|trade|alefsym|larr|uarr|rarr|darr|". - "harr|crarr|lArr|uArr|rArr|dArr|hArr|forall|part|exist|empty|". - "nabla|isin|notin|ni|prod|sum|minus|lowast|radic|prop|infin|ang|". - "and|or|cap|cup|int|there4|sim|cong|asymp|ne|equiv|le|ge|sub|sup|". - "nsub|sube|supe|oplus|otimes|perp|sdot|lceil|rceil|lfloor|rfloor|". - "lang|rang|loz|spades|clubs|hearts|diams);#",*/ - // optimized: - 6 => "#\\\\&(?:A(?:Elig|acute|circ|grave|lpha|ring|tilde|uml)|Beta|". - "C(?:cedil|hi)|D(?:agger|elta)|E(?:TH|acute|circ|grave|psilon|ta|uml)|". - "Gamma|I(?:acute|circ|grave|ota|uml)|Kappa|Lambda|Mu|N(?:tilde|u)|". - "O(?:Elig|acute|circ|grave|m(?:ega|icron)|slash|tilde|uml)|". - "P(?:hi|i|rime|si)|Rho|S(?:caron|igma)|T(?:HORN|au|heta)|". - "U(?:acute|circ|grave|psilon|uml)|Xi|Y(?:acute|uml)|Zeta|". - "a(?:acute|c(?:irc|ute)|elig|grave|l(?:efsym|pha)|mp|n[dg]|ring|". - "symp|tilde|uml)|b(?:dquo|eta|rvbar|ull)|c(?:ap|cedil|e(?:dil|nt)|". - "hi|irc|lubs|o(?:ng|py)|rarr|u(?:p|rren))|d(?:Arr|a(?:gger|rr)|". - "e(?:g|lta)|i(?:ams|vide))|e(?:acute|circ|grave|m(?:pty|sp)|nsp|". - "psilon|quiv|t[ah]|u(?:ml|ro)|xist)|f(?:nof|orall|ra(?:c(?:1[24]|34)|sl))|". - "g(?:amma|e|t)|h(?:Arr|arr|e(?:arts|llip))|i(?:acute|circ|excl|grave|mage|". - "n(?:fin|t)|ota|quest|sin|uml)|kappa|l(?:Arr|a(?:mbda|ng|quo|rr)|ceil|". - "dquo|e|floor|o(?:wast|z)|rm|s(?:aquo|quo)|t)|m(?:acr|dash|". - "i(?:cro|ddot|nus)|u)|n(?:abla|bsp|dash|e|i|ot(?:in)?|sub|tilde|u)|". - "o(?:acute|circ|elig|grave|line|m(?:ega|icron)|plus|r(?:d[fm])?|". - "slash|ti(?:lde|mes)|uml)|p(?:ar[at]|er(?:mil|p)|hi|iv?|lusmn|ound|". - "r(?:ime|o[dp])|si)|quot|r(?:Arr|a(?:dic|ng|quo|rr)|ceil|dquo|e(?:al|g)|". - "floor|ho|lm|s(?:aquo|quo))|s(?:bquo|caron|dot|ect|hy|i(?:gmaf?|m)|". - "pades|u(?:be?|m|p[123e]?)|zlig)|t(?:au|h(?:e(?:re4|ta(?:sym)?)|insp|". - "orn)|i(?:lde|mes)|rade)|u(?:Arr|a(?:cute|rr)|circ|grave|ml|". - "psi(?:h|lon)|uml)|weierp|xi|y(?:acute|en|uml)|z(?:eta|w(?:j|nj)));#", - ), - 'HARDQUOTE' => array('`', '`'), - 'HARDESCAPE' => array(), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B | - GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - 'break', 'case', 'continue', 'do', 'else', - 'for', 'foreach', 'goto', 'if', 'return', - 'switch', 'while' - ), - 2 => array( - 'alias', 'asm', 'assert', 'body', 'cast', - 'catch', 'default', 'delegate', 'delete', - 'extern', 'false', 'finally', 'function', - 'import', 'in', 'inout', 'interface', - 'invariant', 'is', 'mixin', 'module', 'new', - 'null', 'out', 'pragma', 'ref', 'super', 'this', - 'throw', 'true', 'try', 'typedef', 'typeid', - 'typeof', 'union', 'with' - ), - 3 => array( - 'ArrayBoundsError', 'AssertError', - 'ClassInfo', 'Error', 'Exception', - 'Interface', 'ModuleInfo', 'Object', - 'OutOfMemoryException', 'SwitchError', - 'TypeInfo', '_d_arrayappend', - '_d_arrayappendb', '_d_arrayappendc', - '_d_arrayappendcb', '_d_arraycast', - '_d_arraycast_frombit', '_d_arraycat', - '_d_arraycatb', '_d_arraycatn', - '_d_arraycopy', '_d_arraycopybit', - '_d_arraysetbit', '_d_arraysetbit2', - '_d_arraysetlength', '_d_arraysetlengthb', - '_d_callfinalizer', - '_d_create_exception_object', - '_d_criticalenter', '_d_criticalexit', - '_d_delarray', '_d_delclass', - '_d_delinterface', '_d_delmemory', - '_d_dynamic_cast', '_d_exception', - '_d_exception_filter', '_d_framehandler', - '_d_interface_cast', '_d_interface_vtbl', - '_d_invariant', '_d_isbaseof', - '_d_isbaseof2', '_d_local_unwind', - '_d_monitorenter', '_d_monitorexit', - '_d_monitorrelease', '_d_monitor_epilog', - '_d_monitor_handler', '_d_monitor_prolog', - '_d_new', '_d_newarrayi', '_d_newbitarray', - '_d_newclass', '_d_obj_cmp', '_d_obj_eq', - '_d_OutOfMemory', '_d_switch_dstring', - '_d_switch_string', '_d_switch_ustring', - '_d_throw', - ), - 4 => array( - 'abstract', 'align', 'auto', 'bit', 'bool', - 'byte', 'cdouble', 'cent', 'cfloat', 'char', - 'class', 'const', 'creal', 'dchar', 'debug', - 'deprecated', 'double', 'enum', 'export', - 'final', 'float', 'idouble', 'ifloat', 'int', - 'ireal', 'long', 'override', 'package', - 'private', 'protected', 'ptrdiff_t', - 'public', 'real', 'short', 'size_t', - 'static', 'struct', 'synchronized', - 'template', 'ubyte', 'ucent', 'uint', - 'ulong', 'unittest', 'ushort', 'version', - 'void', 'volatile', 'wchar' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '?', '!', ';', ':', ',', '...', '..', - '+', '-', '*', '/', '%', '&', '|', '^', '<', '>', '=', '~', - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #aaaadd; font-weight: bold;', - 4 => 'color: #993333;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #009933; font-style: italic;', - 3 => 'color: #009933; font-style: italic;', - 4 => 'color: #ff0000;', - 5 => 'color: #0040ff;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 1 => 'color: #000099; font-weight: bold;', - 2 => 'color: #660099; font-weight: bold;', - 3 => 'color: #660099; font-weight: bold;', - 4 => 'color: #660099; font-weight: bold;', - 5 => 'color: #006699; font-weight: bold;', - 6 => 'color: #666699; font-weight: bold; font-style: italic;', - 'HARD' => '', - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;', - 'HARD' => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000dd;', - GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;', - GESHI_NUMBER_OCT_PREFIX => 'color: #208080;', - GESHI_NUMBER_HEX_PREFIX => 'color: #208080;', - GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;', - GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI => 'color:#800080;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/dcs.php b/library/Vendors/geshi/geshi/dcs.php deleted file mode 100644 index 4762ed90..00000000 --- a/library/Vendors/geshi/geshi/dcs.php +++ /dev/null @@ -1,182 +0,0 @@ - 'DCS', - 'COMMENT_SINGLE' => array( - 1 => ';' - ), - 'COMMENT_MULTI' => array( - ), - 'COMMENT_REGEXP' => array( - // Highlight embedded C code in a separate color: - 2 => '/\bINSERT_C_CODE\b.*?\bEND_C_CODE\b/ims' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array( - '"' - ), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => '', - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - 'abs', 'ascii_value', 'bit_value', 'blank_date', 'calc_unit_values', 'cm', - 'complete_months', 'complete_years', 'correct', 'create_input_file', 'cy', - 'date_convert', 'day', 'del_output_separator', - 'delete_existing_output_files', 'div', 'ex', 'exact_years', 'exp', - 'extract_date', 'failed_validation', 'file_number', 'first_record', - 'fract', 'fund_fac_a', 'fund_fac_b', 'fund_fac_c', 'fund_fac_d', - 'fund_fac_e', 'fund_fac_f', 'fund_fac_g', 'fund_fac_h', 'fund_fac_i', - 'fund_fac_j', 'fund_fac_k', 'fund_fac_l', 'fund_fac_m', 'fund_fac_n', - 'fund_fac_o', 'fund_fac_p', 'fund_fac_q', 'fund_fac_r', 'fund_fac_s', - 'fund_fac_t', 'fund_fac_u', 'fund_fac_v', 'fund_fac_w', 'fund_fac_x', - 'fund_fac_y', 'fund_fac_z', 'group', 'group_record', - 'input_file_date_time', 'input_file_extension', 'input_file_location', - 'input_file_name', 'int', 'invalid', 'last_record', 'leap_year', 'len', - 'ln', 'log', 'main_format_name', 'max', 'max_num_subrecords', 'message', - 'min', 'mod', 'month', 'months_add', 'months_sub', 'nearest_months', - 'nearest_years', 'next_record', 'nm', 'no_of_current_records', - 'no_of_records', 'numval', 'ny', 'output', 'output_array_as_constants', - 'output_file_path', 'output_record', 'pmdf_output', 'previous', 'rand', - 're_start', 'read_generic_table', 'read_generic_table_text', - 'read_input_footer', 'read_input_footer_text', 'read_input_header', - 'read_input_header_text', 'record_count', 'record_suppressed', 'round', - 'round_down', 'round_near', 'round_up', 'run_dcs_program', 'run_parameter', - 'run_parameter_text', 'set_main_record', 'set_num_subrecords', - 'sort_array', 'sort_current_records', 'sort_input', 'strval', 'substr', - 'summarise', 'summarise_record', 'summarise_units', - 'summarise_units_record', 'suppress_record', 'table_correct', - 'table_validate', 'terminate', 'time', 'today', 'trim', 'ubound', 'year', - 'years_add', 'years_sub' - ), - 2 => array( - 'and', 'as', 'begin', 'boolean', 'byref', 'byval', 'call', 'case', 'date', - 'default', 'do', 'else', 'elseif', 'end_c_code', 'endfor', 'endfunction', - 'endif', 'endproc', 'endswitch', 'endwhile', 'eq', - 'explicit_declarations', 'false', 'for', 'from', 'function', 'ge', 'gt', - 'if', 'insert_c_code', 'integer', 'le', 'loop', 'lt', 'ne', 'not', - 'number', 'or', 'private', 'proc', 'public', 'quitloop', 'return', - 'short', 'step', 'switch', 'text', 'then', 'to', 'true', 'while' - ), - 3 => array( - // These keywords are not highlighted by the DCS IDE but we may as well - // keep track of them anyway: - 'mp_file', 'odbc_file' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', - '=', '<', '>', - '+', '-', '*', '/', '^', - ':', ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: red;', - 2 => 'color: blue;', - 3 => 'color: black;' - ), - 'COMMENTS' => array( - 1 => 'color: black; background-color: silver;', - // Colors for highlighting embedded C code: - 2 => 'color: maroon; background-color: pink;' - ), - 'ESCAPE_CHAR' => array( - ), - 'BRACKETS' => array( - 0 => 'color: black;' - ), - 'STRINGS' => array( - 0 => 'color: green;' - ), - 'NUMBERS' => array( - 0 => 'color: green;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: black;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ), - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/delphi.php b/library/Vendors/geshi/geshi/delphi.php deleted file mode 100644 index ff54af8f..00000000 --- a/library/Vendors/geshi/geshi/delphi.php +++ /dev/null @@ -1,289 +0,0 @@ - 'Delphi', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('(*' => '*)', '{' => '}'), - //Compiler directives - 'COMMENT_REGEXP' => array(2 => '/\\{\\$.*?}|\\(\\*\\$.*?\\*\\)/U'), - 'CASE_KEYWORDS' => 0, - 'QUOTEMARKS' => array("'"), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'Abstract', 'And', 'Array', 'As', 'Asm', 'At', 'Begin', 'Case', - 'Class', 'Const', 'Constructor', 'Contains', 'Destructor', - 'DispInterface', 'Div', 'Do', 'DownTo', 'Else', 'End', 'Except', - 'Export', 'Exports', 'External', 'File', 'Finalization', 'Finally', - 'For', 'Function', 'Goto', 'If', 'Implementation', 'In', 'Inherited', - 'Initialization', 'Inline', 'Interface', 'Is', 'Label', 'Library', - 'Mod', 'Not', 'Object', 'Of', 'On', 'Or', 'Overload', 'Override', - 'Package', 'Packed', 'Private', 'Procedure', 'Program', 'Property', - 'Protected', 'Public', 'Published', 'Raise', 'Record', 'Register', - 'Repeat', 'Requires', 'Resourcestring', 'Set', 'Shl', 'Shr', 'Then', - 'ThreadVar', 'To', 'Try', 'Type', 'Unit', 'Until', 'Uses', 'Var', - 'Virtual', 'While', 'With', 'Xor', 'assembler', 'far', - 'near', 'pascal', 'cdecl', 'safecall', 'stdcall', 'varargs' - ), - 2 => array( - 'nil', 'false', 'self', 'true', 'var', 'type', 'const' - ), - 3 => array( - 'Abs', 'AcquireExceptionObject', 'Addr', 'AnsiToUtf8', 'Append', 'ArcTan', - 'Assert', 'AssignFile', 'Assigned', 'BeginThread', 'BlockRead', - 'BlockWrite', 'Break', 'ChDir', 'Chr', 'Close', 'CloseFile', - 'CompToCurrency', 'CompToDouble', 'Concat', 'Continue', 'Copy', 'Cos', - 'Dec', 'Delete', 'Dispose', 'DoubleToComp', 'EndThread', 'EnumModules', - 'EnumResourceModules', 'Eof', 'Eoln', 'Erase', 'ExceptAddr', - 'ExceptObject', 'Exclude', 'Exit', 'Exp', 'FilePos', 'FileSize', - 'FillChar', 'Finalize', 'FindClassHInstance', 'FindHInstance', - 'FindResourceHInstance', 'Flush', 'Frac', 'FreeMem', 'Get8087CW', - 'GetDir', 'GetLastError', 'GetMem', 'GetMemoryManager', - 'GetModuleFileName', 'GetVariantManager', 'Halt', 'Hi', 'High', - 'IOResult', 'Inc', 'Include', 'Initialize', 'Insert', 'Int', - 'IsMemoryManagerSet', 'IsVariantManagerSet', 'Length', 'Ln', 'Lo', 'Low', - 'MkDir', 'Move', 'New', 'Odd', 'OleStrToStrVar', 'OleStrToString', 'Ord', - 'PUCS4Chars', 'ParamCount', 'ParamStr', 'Pi', 'Pos', 'Pred', 'Ptr', - 'Random', 'Randomize', 'Read', 'ReadLn', 'ReallocMem', - 'ReleaseExceptionObject', 'Rename', 'Reset', 'Rewrite', 'RmDir', 'Round', - 'RunError', 'Seek', 'SeekEof', 'SeekEoln', 'Set8087CW', 'SetLength', - 'SetLineBreakStyle', 'SetMemoryManager', 'SetString', 'SetTextBuf', - 'SetVariantManager', 'Sin', 'SizeOf', 'Slice', 'Sqr', 'Sqrt', 'Str', - 'StringOfChar', 'StringToOleStr', 'StringToWideChar', 'Succ', 'Swap', - 'Trunc', 'Truncate', 'TypeInfo', 'UCS4StringToWideString', 'UTF8Decode', - 'UTF8Encode', 'UnicodeToUtf8', 'UniqueString', 'UpCase', 'Utf8ToAnsi', - 'Utf8ToUnicode', 'Val', 'VarArrayRedim', 'VarClear', - 'WideCharLenToStrVar', 'WideCharLenToString', 'WideCharToStrVar', - 'WideCharToString', 'WideStringToUCS4String', 'Write', 'WriteLn', - - 'Abort', 'AddExitProc', 'AddTerminateProc', 'AdjustLineBreaks', 'AllocMem', - 'AnsiCompareFileName', 'AnsiCompareStr', 'AnsiCompareText', - 'AnsiDequotedStr', 'AnsiExtractQuotedStr', 'AnsiLastChar', - 'AnsiLowerCase', 'AnsiLowerCaseFileName', 'AnsiPos', 'AnsiQuotedStr', - 'AnsiSameStr', 'AnsiSameText', 'AnsiStrComp', 'AnsiStrIComp', - 'AnsiStrLComp', 'AnsiStrLIComp', 'AnsiStrLastChar', 'AnsiStrLower', - 'AnsiStrPos', 'AnsiStrRScan', 'AnsiStrScan', 'AnsiStrUpper', - 'AnsiUpperCase', 'AnsiUpperCaseFileName', 'AppendStr', 'AssignStr', - 'Beep', 'BoolToStr', 'ByteToCharIndex', 'ByteToCharLen', 'ByteType', - 'CallTerminateProcs', 'ChangeFileExt', 'CharLength', 'CharToByteIndex', - 'CharToByteLen', 'CompareMem', 'CompareStr', 'CompareText', 'CreateDir', - 'CreateGUID', 'CurrToStr', 'CurrToStrF', 'CurrentYear', 'Date', - 'DateTimeToFileDate', 'DateTimeToStr', 'DateTimeToString', - 'DateTimeToSystemTime', 'DateTimeToTimeStamp', 'DateToStr', 'DayOfWeek', - 'DecodeDate', 'DecodeDateFully', 'DecodeTime', 'DeleteFile', - 'DirectoryExists', 'DiskFree', 'DiskSize', 'DisposeStr', 'EncodeDate', - 'EncodeTime', 'ExceptionErrorMessage', 'ExcludeTrailingBackslash', - 'ExcludeTrailingPathDelimiter', 'ExpandFileName', 'ExpandFileNameCase', - 'ExpandUNCFileName', 'ExtractFileDir', 'ExtractFileDrive', - 'ExtractFileExt', 'ExtractFileName', 'ExtractFilePath', - 'ExtractRelativePath', 'ExtractShortPathName', 'FileAge', 'FileClose', - 'FileCreate', 'FileDateToDateTime', 'FileExists', 'FileGetAttr', - 'FileGetDate', 'FileIsReadOnly', 'FileOpen', 'FileRead', 'FileSearch', - 'FileSeek', 'FileSetAttr', 'FileSetDate', 'FileSetReadOnly', 'FileWrite', - 'FinalizePackage', 'FindClose', 'FindCmdLineSwitch', 'FindFirst', - 'FindNext', 'FloatToCurr', 'FloatToDateTime', 'FloatToDecimal', - 'FloatToStr', 'FloatToStrF', 'FloatToText', 'FloatToTextFmt', - 'FmtLoadStr', 'FmtStr', 'ForceDirectories', 'Format', 'FormatBuf', - 'FormatCurr', 'FormatDateTime', 'FormatFloat', 'FreeAndNil', - 'GUIDToString', 'GetCurrentDir', 'GetEnvironmentVariable', - 'GetFileVersion', 'GetFormatSettings', 'GetLocaleFormatSettings', - 'GetModuleName', 'GetPackageDescription', 'GetPackageInfo', 'GetTime', - 'IncAMonth', 'IncMonth', 'IncludeTrailingBackslash', - 'IncludeTrailingPathDelimiter', 'InitializePackage', 'IntToHex', - 'IntToStr', 'InterlockedDecrement', 'InterlockedExchange', - 'InterlockedExchangeAdd', 'InterlockedIncrement', 'IsDelimiter', - 'IsEqualGUID', 'IsLeapYear', 'IsPathDelimiter', 'IsValidIdent', - 'Languages', 'LastDelimiter', 'LoadPackage', 'LoadStr', 'LowerCase', - 'MSecsToTimeStamp', 'NewStr', 'NextCharIndex', 'Now', 'OutOfMemoryError', - 'QuotedStr', 'RaiseLastOSError', 'RaiseLastWin32Error', 'RemoveDir', - 'RenameFile', 'ReplaceDate', 'ReplaceTime', 'SafeLoadLibrary', - 'SameFileName', 'SameText', 'SetCurrentDir', 'ShowException', 'Sleep', - 'StrAlloc', 'StrBufSize', 'StrByteType', 'StrCat', 'StrCharLength', - 'StrComp', 'StrCopy', 'StrDispose', 'StrECopy', 'StrEnd', 'StrFmt', - 'StrIComp', 'StrLCat', 'StrLComp', 'StrLCopy', 'StrLFmt', 'StrLIComp', - 'StrLen', 'StrLower', 'StrMove', 'StrNew', 'StrNextChar', 'StrPCopy', - 'StrPLCopy', 'StrPas', 'StrPos', 'StrRScan', 'StrScan', 'StrToBool', - 'StrToBoolDef', 'StrToCurr', 'StrToCurrDef', 'StrToDate', 'StrToDateDef', - 'StrToDateTime', 'StrToDateTimeDef', 'StrToFloat', 'StrToFloatDef', - 'StrToInt', 'StrToInt64', 'StrToInt64Def', 'StrToIntDef', 'StrToTime', - 'StrToTimeDef', 'StrUpper', 'StringReplace', 'StringToGUID', 'Supports', - 'SysErrorMessage', 'SystemTimeToDateTime', 'TextToFloat', 'Time', - 'TimeStampToDateTime', 'TimeStampToMSecs', 'TimeToStr', 'Trim', - 'TrimLeft', 'TrimRight', 'TryEncodeDate', 'TryEncodeTime', - 'TryFloatToCurr', 'TryFloatToDateTime', 'TryStrToBool', 'TryStrToCurr', - 'TryStrToDate', 'TryStrToDateTime', 'TryStrToFloat', 'TryStrToInt', - 'TryStrToInt64', 'TryStrToTime', 'UnloadPackage', 'UpperCase', - 'WideCompareStr', 'WideCompareText', 'WideFmtStr', 'WideFormat', - 'WideFormatBuf', 'WideLowerCase', 'WideSameStr', 'WideSameText', - 'WideUpperCase', 'Win32Check', 'WrapText', - - 'ActivateClassGroup', 'AllocateHwnd', 'BinToHex', 'CheckSynchronize', - 'CollectionsEqual', 'CountGenerations', 'DeallocateHwnd', 'EqualRect', - 'ExtractStrings', 'FindClass', 'FindGlobalComponent', 'GetClass', - 'GroupDescendantsWith', 'HexToBin', 'IdentToInt', - 'InitInheritedComponent', 'IntToIdent', 'InvalidPoint', - 'IsUniqueGlobalComponentName', 'LineStart', 'ObjectBinaryToText', - 'ObjectResourceToText', 'ObjectTextToBinary', 'ObjectTextToResource', - 'PointsEqual', 'ReadComponentRes', 'ReadComponentResEx', - 'ReadComponentResFile', 'Rect', 'RegisterClass', 'RegisterClassAlias', - 'RegisterClasses', 'RegisterComponents', 'RegisterIntegerConsts', - 'RegisterNoIcon', 'RegisterNonActiveX', 'SmallPoint', 'StartClassGroup', - 'TestStreamFormat', 'UnregisterClass', 'UnregisterClasses', - 'UnregisterIntegerConsts', 'UnregisterModuleClasses', - 'WriteComponentResFile', - - 'ArcCos', 'ArcCosh', 'ArcCot', 'ArcCotH', 'ArcCsc', 'ArcCscH', 'ArcSec', - 'ArcSecH', 'ArcSin', 'ArcSinh', 'ArcTan2', 'ArcTanh', 'Ceil', - 'CompareValue', 'Cosecant', 'Cosh', 'Cot', 'CotH', 'Cotan', 'Csc', 'CscH', - 'CycleToDeg', 'CycleToGrad', 'CycleToRad', 'DegToCycle', 'DegToGrad', - 'DegToRad', 'DivMod', 'DoubleDecliningBalance', 'EnsureRange', 'Floor', - 'Frexp', 'FutureValue', 'GetExceptionMask', 'GetPrecisionMode', - 'GetRoundMode', 'GradToCycle', 'GradToDeg', 'GradToRad', 'Hypot', - 'InRange', 'IntPower', 'InterestPayment', 'InterestRate', - 'InternalRateOfReturn', 'IsInfinite', 'IsNan', 'IsZero', 'Ldexp', 'LnXP1', - 'Log10', 'Log2', 'LogN', 'Max', 'MaxIntValue', 'MaxValue', 'Mean', - 'MeanAndStdDev', 'Min', 'MinIntValue', 'MinValue', 'MomentSkewKurtosis', - 'NetPresentValue', 'Norm', 'NumberOfPeriods', 'Payment', 'PeriodPayment', - 'Poly', 'PopnStdDev', 'PopnVariance', 'Power', 'PresentValue', - 'RadToCycle', 'RadToDeg', 'RadToGrad', 'RandG', 'RandomRange', 'RoundTo', - 'SLNDepreciation', 'SYDDepreciation', 'SameValue', 'Sec', 'SecH', - 'Secant', 'SetExceptionMask', 'SetPrecisionMode', 'SetRoundMode', 'Sign', - 'SimpleRoundTo', 'SinCos', 'Sinh', 'StdDev', 'Sum', 'SumInt', - 'SumOfSquares', 'SumsAndSquares', 'Tan', 'Tanh', 'TotalVariance', - 'Variance' - ), - 4 => array( - 'AnsiChar', 'AnsiString', 'Bool', 'Boolean', 'Byte', 'ByteBool', 'Cardinal', 'Char', - 'Comp', 'Currency', 'DWORD', 'Double', 'Extended', 'Int64', 'Integer', 'IUnknown', - 'LongBool', 'LongInt', 'LongWord', 'PAnsiChar', 'PAnsiString', 'PBool', 'PBoolean', 'PByte', - 'PByteArray', 'PCardinal', 'PChar', 'PComp', 'PCurrency', 'PDWORD', 'PDate', 'PDateTime', - 'PDouble', 'PExtended', 'PInt64', 'PInteger', 'PLongInt', 'PLongWord', 'Pointer', 'PPointer', - 'PShortInt', 'PShortString', 'PSingle', 'PSmallInt', 'PString', 'PHandle', 'PVariant', 'PWord', - 'PWordArray', 'PWordBool', 'PWideChar', 'PWideString', 'Real', 'Real48', 'ShortInt', 'ShortString', - 'Single', 'SmallInt', 'String', 'TClass', 'TDate', 'TDateTime', 'TextFile', 'THandle', - 'TObject', 'TTime', 'Variant', 'WideChar', 'WideString', 'Word', 'WordBool' - ), - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - ), - 'SYMBOLS' => array( - 0 => array('(', ')', '[', ']'), - 1 => array('.', ',', ':', ';'), - 2 => array('@', '^'), - 3 => array('=', '+', '-', '*', '/') - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;', - 4 => 'color: #000066; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #008000; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #ff0000; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000066;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000ff;' - ), - 'METHODS' => array( - 1 => 'color: #006600;' - ), - 'REGEXPS' => array( - 0 => 'color: #9ac;', - 1 => 'color: #ff0000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000066;', - 1 => 'color: #000066;', - 2 => 'color: #000066;', - 3 => 'color: #000066;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - //Hex numbers - 0 => '\$[0-9a-fA-F]+', - //Characters - 1 => '\#(?:\$[0-9a-fA-F]{1,2}|\d{1,3})' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 2 -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/diff.php b/library/Vendors/geshi/geshi/diff.php deleted file mode 100644 index 5570406d..00000000 --- a/library/Vendors/geshi/geshi/diff.php +++ /dev/null @@ -1,196 +0,0 @@ - 'Diff', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => ' ', - 'KEYWORDS' => array( - 1 => array( - '\ No newline at end of file' - ), -// 2 => array( -// '***************' /* This only seems to works in some cases? */ -// ), - ), - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - 1 => false, -// 2 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #aaaaaa; font-style: italic;', -// 2 => 'color: #dd6611;', - ), - 'COMMENTS' => array( - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => '' - ), - 'STRINGS' => array( - 0 => '' - ), - 'NUMBERS' => array( - 0 => '' - ), - 'METHODS' => array( - 0 => '' - ), - 'SYMBOLS' => array( - 0 => '' - ), - 'SCRIPT' => array( - 0 => '' - ), - 'REGEXPS' => array( - 0 => 'color: #440088;', - 1 => 'color: #991111;', - 2 => 'color: #00b000;', - 3 => 'color: #888822;', - 4 => 'color: #888822;', - 5 => 'color: #0011dd;', - 6 => 'color: #440088;', - 7 => 'color: #991111;', - 8 => 'color: #00b000;', - 9 => 'color: #888822;', - ), - ), - 'URLS' => array( - 1 => '', -// 2 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - 0 => "[0-9,]+[acd][0-9,]+", - //Removed lines - 1 => array( - GESHI_SEARCH => '(^|(?<=\A\s))\\<.*$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //Inserted lines - 2 => array( - GESHI_SEARCH => '(^|(?<=\A\s))\\>.*$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //Location line - 3 => array( - GESHI_SEARCH => '(^|(?<=\A\s))-{3}\\s.*$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //Inserted line - 4 => array( - GESHI_SEARCH => '(^|(?<=\A\s))(\\+){3}\\s.*$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //Modified line - 5 => array( - GESHI_SEARCH => '(^|(?<=\A\s))\\!.*$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //File specification - 6 => array( - GESHI_SEARCH => '(^|(?<=\A\s))[\\@]{2}.*$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //Removed line - 7 => array( - GESHI_SEARCH => '(^|(?<=\A\s))\\-.*$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //Inserted line - 8 => array( - GESHI_SEARCH => '(^|(?<=\A\s))\\+.*$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //File specification - 9 => array( - GESHI_SEARCH => '(^|(?<=\A\s))(\\*){3}\\s.*$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/div.php b/library/Vendors/geshi/geshi/div.php deleted file mode 100644 index 276e9e88..00000000 --- a/library/Vendors/geshi/geshi/div.php +++ /dev/null @@ -1,126 +0,0 @@ - 'DIV', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'while','until','to','switch','step','return','repeat','loop','if','from','frame','for','end','elseif', - 'else','default','debug','continue','clone','case','break','begin' - ), - 2 => array( - 'xor','whoami','type','sizeof','pointer','or','offset','not','neg','mod','id','dup','and','_ne','_lt', - '_le','_gt','_ge','_eq' - ), - 3 => array( - 'setup_program','program','process','private','local','import','global','function','const', - 'compiler_options' - ), - 4 => array( - 'word','struct','string','int','byte' - ), - ), - 'SYMBOLS' => array( - '(',')','[',']','=','+','-','*','/','!','%','^','&',':',';',',','<','>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0040b1;', - 2 => 'color: #000000;', - 3 => 'color: #000066; font-weight: bold;', - 4 => 'color: #993333;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => 'color: #44aa44;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 0 => 'color: #202020;', - ), - 'SYMBOLS' => array( - 0 => 'color: #44aa44;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/dos.php b/library/Vendors/geshi/geshi/dos.php deleted file mode 100644 index 9484d376..00000000 --- a/library/Vendors/geshi/geshi/dos.php +++ /dev/null @@ -1,202 +0,0 @@ - 'DOS', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - //DOS comment lines - 'COMMENT_REGEXP' => array( - 1 => "/^\s*@?REM\b.*$/mi", - 2 => "/^\s*::.*$/m" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - /* Flow control keywords */ - 1 => array( - 'if', 'else', 'goto', 'shift', - 'for', 'in', 'do', - 'call', 'exit' - ), - /* IF statement keywords */ - 2 => array( - 'not', 'exist', 'errorlevel', - 'defined', - 'equ', 'neq', 'lss', 'leq', 'gtr', 'geq' - ), - /* Internal commands */ - 3 => array( - 'cd', 'md', 'rd', 'chdir', 'mkdir', 'rmdir', 'dir', - 'del', 'copy', 'move', 'ren', 'rename', - 'echo', - 'setlocal', 'endlocal', 'set', - 'pause', - 'pushd', 'popd', 'title', 'verify' - ), - /* Special files */ - 4 => array( - 'prn', 'nul', 'lpt3', 'lpt2', 'lpt1', 'con', - 'com4', 'com3', 'com2', 'com1', 'aux' - ) - ), - 'SYMBOLS' => array( - '(', ')', '@', '%' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #00b100; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #b1b100; font-weight: bold;', - 4 => 'color: #0000ff; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #b100b1; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #ff0000; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #33cc33;', - 1 => 'color: #33cc33;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 0 => 'color: #b100b1; font-weight: bold;', - 1 => 'color: #448844;', - 2 => 'color: #448888;' - ) - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'URLS' => array( - 1 => 'http://www.ss64.com/nt/{FNAMEL}.html', - 2 => 'http://www.ss64.com/nt/{FNAMEL}.html', - 3 => 'http://www.ss64.com/nt/{FNAMEL}.html', - 4 => 'http://www.ss64.com/nt/{FNAMEL}.html' - ), - 'REGEXPS' => array( - /* Label */ - 0 => array( -/* GESHI_SEARCH => '((?si:[@\s]+GOTO\s+|\s+:)[\s]*)((? '((?si:[@\s]+GOTO\s+|\s+:)[\s]*)((? '\\2', - GESHI_MODIFIERS => 'si', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - /* Variable assignement */ - 1 => array( -/* GESHI_SEARCH => '(SET[\s]+(?si:\/A[\s]+|\/P[\s]+|))([^=\s\n]+)([\s]*=)',*/ - GESHI_SEARCH => '(SET[\s]+(?si:\/A[\s]+|\/P[\s]+|))([^=\n]+)([\s]*=)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'si', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - /* Arguments or variable evaluation */ - 2 => array( -/* GESHI_SEARCH => '(%)([\d*]|[^%\s]*(?=%))((? '(%(?:%(?=[a-z0-9]))?)([\d*]|(?:~[adfnpstxz]*(?:$\w+:)?)?[a-z0-9](?!\w)|[^%\n]*(?=%))((? '\\2', - GESHI_MODIFIERS => 'si', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 4 => array( - 'DISALLOWED_BEFORE' => '(? \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/dot.php b/library/Vendors/geshi/geshi/dot.php deleted file mode 100644 index 04b6792d..00000000 --- a/library/Vendors/geshi/geshi/dot.php +++ /dev/null @@ -1,164 +0,0 @@ - 'dot', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'URL', 'arrowhead', 'arrowsize', 'arrowtail', 'bb', 'bgcolor', 'bottomlabel', - 'center', 'clusterrank', 'color', 'comment', 'constraint', 'decorate', - 'dir', 'distortion', 'fillcolor', 'fixedsize', 'fontcolor', - 'fontname', 'fontsize', 'group', 'headclip', 'headlabel', 'headport', - 'height', 'id', 'label', 'labelangle', 'labeldistance', 'labelfontcolor', - 'labelfontname', 'labelfontsize', 'layer', 'layers', 'margin', 'mclimit', - 'minlen', 'nodesep', 'nslimit', 'ordering', 'orientation', 'page', - 'pagedir', 'peripheries', 'port_label_distance', 'quantum', 'rank', 'rankdir', - 'ranksep', 'ratio', 'regular', 'rotate', 'samehead', 'sametail', 'searchsize', - 'shape', 'shapefile', 'showboxes', 'sides', 'size', 'skew', 'style', - 'tailclip', 'taillabel', 'tailport', 'toplabel', 'weight', 'width' - ), - 2 => array( - 'node', 'graph', 'digraph', 'strict', 'edge', 'subgraph' - ), - 3 => array( - 'Mcircle', 'Mdiamond', 'Mrecord', 'Msquare', 'auto', 'back', 'bold', - 'both', 'box', 'circle', 'compress', 'dashed', 'diamond', 'dot', - 'dotted', 'doublecircle', 'doubleoctagon', 'egg', 'ellipse', 'epsf', - 'false', 'fill', 'filled', 'forward', 'global', 'hexagon', 'house', - 'inv', 'invdot', 'invhouse', 'invis', 'invodot', 'invtrapezium', - 'invtriangle', 'local', 'max', 'min', 'none', 'normal', 'octagon', - 'odot', 'out', 'parallelogram', 'plaintext', 'polygon', 'record', - 'same', 'solid', 'trapezium', 'triangle', 'tripleoctagon', 'true' - ), - 4 => array( - 'aliceblue', 'antiquewhite', 'aquamarine', 'azure', 'beige', 'bisque', 'black', - 'blanchedalmond', 'blue', 'blueviolet', 'brown', 'burlywood', 'cadetblue', - 'chartreuse', 'chocolate', 'coral', 'cornflowerblue', 'cornsilk', 'crimson', - 'cyan', 'darkgoldenrod', 'darkgreen', 'darkkhaki', 'darkolivegreen', - 'darkorange', 'darkorchid', 'darksalmon', 'darkseagreen', 'darkslateblue', - 'darkslategray', 'darkturquoise', 'darkviolet', 'deeppink', 'deepskyblue', - 'dimgray', 'dodgerblue', 'firebrick', 'forestgreen', 'gainsboro', 'ghostwhite', - 'gold', 'goldenrod', 'gray', 'green', 'greenyellow', 'honeydew', 'hotpink', - 'indianred', 'indigo', 'ivory', 'khaki', 'lavender', 'lavenderblush', - 'lawngreen', 'lemonchiffon', 'lightblue', 'lightcyan', 'lightgoldenrod', - 'lightgoldenrodyellow', 'lightgray', 'lightpink', 'lightsalmon', - 'lightseagreen', 'lightskyblue', 'lightslateblue', 'lightslategray', - 'lightyellow', 'limegreen', 'linen', 'magenta', 'maroon', 'mediumaquamarine', - 'mediumblue', 'mediumorchid', 'mediumpurple', 'mediumseagreen', - 'mediumslateblue', 'mediumspringgreen', 'mediumturquoise', 'mediumvioletred', - 'midnightblue', 'mintcream', 'mistyrose', 'moccasin', 'navajowhite', 'navy', - 'navyblue', 'oldlace', 'olivedrab', 'oralwhite', 'orange', 'orangered', - 'orchid', 'palegoldenrod', 'palegreen', 'paleturquoise', 'palevioletred', - 'papayawhip', 'peachpuff', 'peru', 'pink', 'plum', 'powderblue', 'purple', - 'red', 'rosybrown', 'royalblue', 'saddlebrown', 'salmon', 'salmon2', 'sandybrown', - 'seagreen', 'seashell', 'sienna', 'skyblue', 'slateblue', 'slategray', 'snow', - 'springgreen', 'steelblue', 'tan', 'thistle', 'tomato', 'turquoise', 'violet', - 'violetred', 'wheat', 'white', 'whitesmoke', 'yellow', 'yellowgreen' - ) - ), - 'SYMBOLS' => array( - '[', ']', '{', '}', '-', '+', '*', '/', '<', '>', '!', '~', '%', '&', '|', '=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000066;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #993333;', - 4 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #339933;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #af624d; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'METHODS' => array( - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ), - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array(), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true, - 2 => true, - 3 => true - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/ecmascript.php b/library/Vendors/geshi/geshi/ecmascript.php deleted file mode 100644 index 3e61b57c..00000000 --- a/library/Vendors/geshi/geshi/ecmascript.php +++ /dev/null @@ -1,210 +0,0 @@ - 'ECMAScript', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - // Regular Expression Literals - 'COMMENT_REGEXP' => array(2 => "/(?<=[\\s^])s\\/(?:\\\\.|(?!\n)[^\\*\\/\\\\])+\\/(?:\\\\.|(?!\n)[^\\*\\/\\\\])+\\/[gimsu]*(?=[\\s$\\.\\;])|(?<=[\\s^(=])m?\\/(?:\\\\.|(?!\n)[^\\*\\/\\\\])+\\/[gimsu]*(?=[\\s$\\.\\,\\;\\)])/iU"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - //Simple Single Char Escapes - 1 => "#\\\\[\\\\abfnrtv\'\"?\n]#i", - //Hexadecimal Char Specs - 2 => "#\\\\x[\da-fA-F]{2}#", - //Hexadecimal Char Specs - 3 => "#\\\\u[\da-fA-F]{4}#", - //Hexadecimal Char Specs - 4 => "#\\\\U[\da-fA-F]{8}#", - //Octal Char Specs - 5 => "#\\\\[0-7]{1,3}#" - ), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B | - GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( // Reserved literals - 'false', 'true', - 'null' - ), - 2 => array( // Main keywords - 'break', 'case', 'catch', 'continue', 'default', 'delete', 'do', 'else', - 'finally', 'for', 'function', 'if', 'in', 'instanceof', 'new', 'return', - 'switch', 'this', 'throw', 'try', 'typeof', 'var', 'void', 'while', - 'with' - ), - 3 => array( // Extra keywords or keywords reserved for future use - 'abstract', 'as', 'boolean', 'byte', 'char', 'class', 'const', 'debugger', - 'double', 'enum', 'export', 'extends', 'final', 'float', 'goto', 'implements', - 'import', 'int', 'interface', 'is', 'long', 'native', 'namespace', 'package', - 'private', 'protected', 'public', 'short', 'static', 'super', 'synchronized', 'throws', - 'transient', 'use', 'volatile' - ), - 4 => array( // Operators - 'get', 'set' - ), - 5 => array( // Built-in object classes - 'Array', 'Boolean', 'Date', 'EvalError', 'Error', 'Function', 'Math', 'Number', - 'Object', 'RangeError', 'ReferenceError', 'RegExp', 'String', 'SyntaxError', 'TypeError', 'URIError' - ), - 6 => array( // Global properties - 'Infinity', 'NaN', 'undefined' - ), - 7 => array( // Global methods - 'decodeURI', 'decodeURIComponent', 'encodeURI', 'encodeURIComponent', - 'eval', 'isFinite', 'isNaN', 'parseFloat', 'parseInt', - // The escape and unescape functions do not work properly for non-ASCII characters and have been deprecated. - // In JavaScript 1.5 and later, use encodeURI, decodeURI, encodeURIComponent, and decodeURIComponent. - 'escape', 'unescape' - ), - 8 => array( // Function's arguments - 'arguments' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', - '+', '-', '*', '/', '%', - '!', '.', '&', '|', '^', - '<', '>', '=', '~', - ',', ';', '?', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #009999;', - 2 => 'color: #1500C8;', - 3 => 'color: #1500C8;', - 4 => 'color: #1500C8;', - 5 => 'color: #1500C8;', - 6 => 'color: #1500C8;', - 7 => 'color: #1500C8;', - 8 => 'color: #1500C8;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #CC0000;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #3366CC;', - 1 => 'color: #3366CC;', - 2 => 'color: #3366CC;', - 3 => 'color: #3366CC;', - 4 => 'color: #3366CC;', - 5 => 'color: #3366CC;', - 'HARD' => '', - ), - 'BRACKETS' => array( - 0 => 'color: #008800;' - ), - 'STRINGS' => array( - 0 => 'color: #9900FF;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF00FF;', - GESHI_NUMBER_BIN_PREFIX_0B => 'color: #FF00FF;', - GESHI_NUMBER_OCT_PREFIX => 'color: #FF00FF;', - GESHI_NUMBER_HEX_PREFIX => 'color: #FF00FF;', - GESHI_NUMBER_FLT_SCI_SHORT => 'color: #FF00FF;', - GESHI_NUMBER_FLT_SCI_ZERO => 'color: #FF00FF;', - GESHI_NUMBER_FLT_NONSCI_F => 'color: #FF00FF;', - GESHI_NUMBER_FLT_NONSCI => 'color: #FF00FF;' - ), - 'METHODS' => array( - 1 => 'color: #660066;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/eiffel.php b/library/Vendors/geshi/geshi/eiffel.php deleted file mode 100644 index 89cef796..00000000 --- a/library/Vendors/geshi/geshi/eiffel.php +++ /dev/null @@ -1,395 +0,0 @@ - 'Eiffel', - 'COMMENT_SINGLE' => array(1 => '--'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '%', - 'KEYWORDS' => array( - 1 => array( - 'separate', - 'invariant', - 'inherit', - 'indexing', - 'feature', - 'expanded', - 'deferred', - 'class' - ), - 2 => array( - 'xor', - 'when', - 'variant', - 'until', - 'unique', - 'undefine', - 'then', - 'strip', - 'select', - 'retry', - 'rescue', - 'require', - 'rename', - 'reference', - 'redefine', - 'prefix', - 'or', - 'once', - 'old', - 'obsolete', - 'not', - 'loop', - 'local', - 'like', - 'is', - 'inspect', - 'infix', - 'include', - 'implies', - 'if', - 'frozen', - 'from', - 'external', - 'export', - 'ensure', - 'end', - 'elseif', - 'else', - 'do', - 'creation', - 'create', - 'check', - 'as', - 'and', - 'alias', - 'agent' - ), - 3 => array( - 'Void', - 'True', - 'Result', - 'Precursor', - 'False', - 'Current' - ), - 4 => array( - 'UNIX_SIGNALS', - 'UNIX_FILE_INFO', - 'UNBOUNDED', - 'TWO_WAY_TREE_CURSOR', - 'TWO_WAY_TREE', - 'TWO_WAY_SORTED_SET', - 'TWO_WAY_LIST', - 'TWO_WAY_CURSOR_TREE', - 'TWO_WAY_CIRCULAR', - 'TWO_WAY_CHAIN_ITERATOR', - 'TUPLE', - 'TREE', - 'TRAVERSABLE', - 'TO_SPECIAL', - 'THREAD_CONTROL', - 'THREAD_ATTRIBUTES', - 'THREAD', - 'TABLE', - 'SUBSET', - 'STRING_HANDLER', - 'STRING', - 'STREAM', - 'STORABLE', - 'STD_FILES', - 'STACK', - 'SPECIAL', - 'SORTED_TWO_WAY_LIST', - 'SORTED_STRUCT', - 'SORTED_LIST', - 'SINGLE_MATH', - 'SET', - 'SEQUENCE', - 'SEQ_STRING', - 'SEMAPHORE', - 'ROUTINE', - 'RESIZABLE', - 'RECURSIVE_TREE_CURSOR', - 'RECURSIVE_CURSOR_TREE', - 'REAL_REF', - 'REAL', - 'RAW_FILE', - 'RANDOM', - 'QUEUE', - 'PROXY', - 'PROFILING_SETTING', - 'PROCEDURE', - 'PRIORITY_QUEUE', - 'PRIMES', - 'PRECOMP', - 'POINTER_REF', - 'POINTER', - 'PLATFORM', - 'PLAIN_TEXT_FILE', - 'PATH_NAME', - 'PART_SORTED_TWO_WAY_LIST', - 'PART_SORTED_SET', - 'PART_SORTED_LIST', - 'PART_COMPARABLE', - 'OPERATING_ENVIRONMENT', - 'ONCE_CONTROL', - 'OBJECT_OWNER', - 'OBJECT_CONTROL', - 'NUMERIC', - 'NONE', - 'MUTEX', - 'MULTI_ARRAY_LIST', - 'MULTAR_LIST_CURSOR', - 'MEMORY', - 'MEM_INFO', - 'MEM_CONST', - 'MATH_CONST', - 'LIST', - 'LINKED_TREE_CURSOR', - 'LINKED_TREE', - 'LINKED_STACK', - 'LINKED_SET', - 'LINKED_QUEUE', - 'LINKED_PRIORITY_QUEUE', - 'LINKED_LIST_CURSOR', - 'LINKED_LIST', - 'LINKED_CURSOR_TREE', - 'LINKED_CIRCULAR', - 'LINKABLE', - 'LINEAR_ITERATOR', - 'LINEAR', - 'ITERATOR', - 'IO_MEDIUM', - 'INTERNAL', - 'INTEGER_REF', - 'INTEGER_INTERVAL', - 'INTEGER', - 'INFINITE', - 'INDEXABLE', - 'IDENTIFIED_CONTROLLER', - 'IDENTIFIED', - 'HIERARCHICAL', - 'HEAP_PRIORITY_QUEUE', - 'HASHABLE', - 'HASH_TABLE_CURSOR', - 'HASH_TABLE', - 'GENERAL', - 'GC_INFO', - 'FUNCTION', - 'FORMAT_INTEGER', - 'FORMAT_DOUBLE', - 'FIXED_TREE', - 'FIXED_LIST', - 'FIXED', - 'FINITE', - 'FILE_NAME', - 'FILE', - 'FIBONACCI', - 'EXECUTION_ENVIRONMENT', - 'EXCEPTIONS', - 'EXCEP_CONST', - 'DYNAMIC_TREE', - 'DYNAMIC_LIST', - 'DYNAMIC_CIRCULAR', - 'DYNAMIC_CHAIN', - 'DOUBLE_REF', - 'DOUBLE_MATH', - 'DOUBLE', - 'DISPENSER', - 'DIRECTORY_NAME', - 'DIRECTORY', - 'DECLARATOR', - 'DEBUG_OUTPUT', - 'CURSOR_TREE_ITERATOR', - 'CURSOR_TREE', - 'CURSOR_STRUCTURE', - 'CURSOR', - 'COUNTABLE_SEQUENCE', - 'COUNTABLE', - 'CONTAINER', - 'CONSOLE', - 'CONDITION_VARIABLE', - 'COMPARABLE_STRUCT', - 'COMPARABLE_SET', - 'COMPARABLE', - 'COMPACT_TREE_CURSOR', - 'COMPACT_CURSOR_TREE', - 'COLLECTION', - 'CIRCULAR_CURSOR', - 'CIRCULAR', - 'CHARACTER_REF', - 'CHARACTER', - 'CHAIN', - 'CELL', - 'BOX', - 'BOUNDED_STACK', - 'BOUNDED_QUEUE', - 'BOUNDED', - 'BOOLEAN_REF', - 'BOOLEAN', - 'BOOL_STRING', - 'BIT_REF', - 'BINARY_TREE', - 'BINARY_SEARCH_TREE_SET', - 'BINARY_SEARCH_TREE', - 'BILINEAR', - 'BI_LINKABLE', - 'BASIC_ROUTINES', - 'BAG', - 'ASCII', - 'ARRAYED_TREE', - 'ARRAYED_STACK', - 'ARRAYED_QUEUE', - 'ARRAYED_LIST_CURSOR', - 'ARRAYED_LIST', - 'ARRAYED_CIRCULAR', - 'ARRAY2', - 'ARRAY', - 'ARGUMENTS', - 'ANY', - 'ACTIVE' - ), - 5 => array( - 'yes', - 'visible', - 'trace', - 'system', - 'root', - 'profile', - 'override_cluster', - 'object', - 'no', - 'multithreaded', - 'msil_generation_type', - 'line_generation', - 'library', - 'inlining_size', - 'inlining', - 'include_path', - 'il_verifiable', - 'exclude', - 'exception_trace', - 'dynamic_runtime', - 'dotnet_naming_convention', - 'disabled_debug', - 'default', - 'debug', - 'dead_code_removal', - 'console_application', - 'cluster', - 'cls_compliant', - 'check_vape', - 'assertion', - 'array_optimization', - 'all', - 'address_expression' - ), - ), - 'SYMBOLS' => array( - '+', '-', '*', '?', '=', '/', '%', '&', '>', '<', '^', '!', '|', ':', - '(', ')', '{', '}', '[', ']', '#' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => true, - 5 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0600FF; font-weight: bold;', - 2 => 'color: #0600FF; font-weight: bold;', - 3 => 'color: #800080;', - 4 => 'color: #800000', - 5 => 'color: #603000;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000; font-style: italic;', - 'MULTI' => '' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #005070; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #FF0000;' - ), - 'STRINGS' => array( - 0 => 'color: #0080A0;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF0000;' - ), - 'METHODS' => array( - 1 => 'color: #000060;', - 2 => 'color: #000050;' - ), - 'SYMBOLS' => array( - 0 => 'color: #600000;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => 'http://www.google.com/search?q=site%3Ahttp%3A%2F%2Fdocs.eiffel.com%2Feiffelstudio%2Flibraries+{FNAMEL}&btnI=I%27m+Feeling+Lucky', - 5 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/email.php b/library/Vendors/geshi/geshi/email.php deleted file mode 100644 index 91a10484..00000000 --- a/library/Vendors/geshi/geshi/email.php +++ /dev/null @@ -1,210 +0,0 @@ - 'eMail (mbox)', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'HTTP', 'SMTP', 'ASMTP', 'ESMTP' - ), - 2 => array( - 'Authentication-Results','Content-Description','Content-Type', - 'Content-Disposition','Content-Transfer-Encoding','Delivered-To', - 'Dkim-Signature','Domainkey-Signature','In-Reply-To','Message-Id', - 'MIME-Version','OpenPGP','Received','Received-SPF','References', - 'Resend-From','Resend-To','Return-Path','User-Agent' - ), - 3 => array( - 'Date','From','Subject','To', - ), - 4 => array( - 'by', 'for', 'from', 'id', 'with' - ) - ), - 'SYMBOLS' => array( - ':', ';', '<', '>', '[', ']' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => false, - 3 => false, - 4 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000FF; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #800000; font-weight: bold;', - 4 => 'font-weight: bold;', - ), - 'COMMENTS' => array( - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - 0 => 'color: #000040;', - ), - 'REGEXPS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #0000FF;', - 3 => 'color: #008000;', - 4 => 'color: #0000FF; font-weight: bold;', - 5 => 'font-weight: bold;', - 6 => 'color: #400080;' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - // Non-Standard-Header - 1 => array( - GESHI_SEARCH => "(?<=\A\x20|\n)x-[a-z0-9\-]*(?=\s*:|\s*<)", - GESHI_REPLACE => "\\0", - GESHI_MODIFIERS => "smi", - GESHI_BEFORE => "", - GESHI_AFTER => "" - ), - //Email-Adresses or Mail-IDs - 2 => array( - GESHI_SEARCH => "\b[\w\.\-]+@\w+(?:(?:\.\w+)*\.\w{2,4})?", - GESHI_REPLACE => "\\0", - GESHI_MODIFIERS => "mi", - GESHI_BEFORE => "", - GESHI_AFTER => "" - ), - //Date values in RFC format - 3 => array( - GESHI_SEARCH => "\b(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s+\d\d?\s+" . - "(?:Jan|Feb|Mar|apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s+" . - "\d{4}\s+\d\d?:\d\d:\d\d\s+[+\-]\d{4}(?:\s+\(\w+\))?", - GESHI_REPLACE => "\\0", - GESHI_MODIFIERS => "mi", - GESHI_BEFORE => "", - GESHI_AFTER => "" - ), - //IP addresses - 4 => array( - GESHI_SEARCH => "(?<=\s)\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(?=\s)|". - "(?<=\[)\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(?=\])|". - "(?<==)\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(?=<)", - GESHI_REPLACE => "\\0", - GESHI_MODIFIERS => "i", - GESHI_BEFORE => "", - GESHI_AFTER => "" - ), - //Field-Assignments - 5 => array( - GESHI_SEARCH => "(?<=\s)[A-Z0-9\-\.]+(?==(?:$|\s$|[^\s=]))", - GESHI_REPLACE => "\\0", - GESHI_MODIFIERS => "mi", - GESHI_BEFORE => "", - GESHI_AFTER => "" - ), - //MIME type - 6 => array( - GESHI_SEARCH => "(?<=\s)(?:audio|application|image|multipart|text|". - "video|x-[a-z0-9\-]+)\/[a-z0-9][a-z0-9\-]*(?=\s|<|$)", - GESHI_REPLACE => "\\0", - GESHI_MODIFIERS => "m", - GESHI_BEFORE => "", - GESHI_AFTER => "" - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_ALWAYS, - 'SCRIPT_DELIMITERS' => array( - 0 => "/(?P^)[A-Z][a-zA-Z0-9\-]*\s*:\s*(?:.|(?=\n\s)\n)*(?P$)/m" - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 2 => array( - 'DISALLOWED_BEFORE' => '(?<=\A\x20|\n)', - 'DISALLOWED_AFTER' => '(?=\s*:)', - ), - 3 => array( - 'DISALLOWED_BEFORE' => '(?<=\A\x20|\n)', - 'DISALLOWED_AFTER' => '(?=\s*:)', - ), - 4 => array( - 'DISALLOWED_BEFORE' => '(?<=\s)', - 'DISALLOWED_AFTER' => '(?=\s|\b)', - ) - ), - 'ENABLE_FLAGS' => array( - 'BRACKETS' => GESHI_NEVER, - 'COMMENTS' => GESHI_NEVER, - 'NUMBERS' => GESHI_NEVER - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/erlang.php b/library/Vendors/geshi/geshi/erlang.php deleted file mode 100644 index d98de2f3..00000000 --- a/library/Vendors/geshi/geshi/erlang.php +++ /dev/null @@ -1,441 +0,0 @@ -' - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array( - 'LANG_NAME' => 'Erlang', - 'COMMENT_SINGLE' => array(1 => '%'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array("'", "\\"), - 'HARDCHAR' => "\\", - 'ESCAPE_CHAR' => '\\', - 'NUMBERS' => GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - //Control flow keywrods - 1 => array( - 'after', 'andalso', 'begin', 'case', 'catch', 'end', 'fun', 'if', - 'of', 'orelse', 'receive', 'try', 'when', 'query' - ), - //Binary operators - 2 => array( - 'and', 'band', 'bnot', 'bor', 'bsl', 'bsr', 'bxor', 'div', 'not', - 'or', 'rem', 'xor' - ), - 3 => array( - 'abs', 'alive', 'apply', 'atom_to_list', 'binary_to_list', - 'binary_to_term', 'concat_binary', 'date', 'disconnect_node', - 'element', 'erase', 'exit', 'float', 'float_to_list', 'get', - 'get_keys', 'group_leader', 'halt', 'hd', 'integer_to_list', - 'is_alive', 'length', 'link', 'list_to_atom', 'list_to_binary', - 'list_to_float', 'list_to_integer', 'list_to_pid', 'list_to_tuple', - 'load_module', 'make_ref', 'monitor_node', 'node', 'nodes', 'now', - 'open_port', 'pid_to_list', 'process_flag', 'process_info', - 'process', 'put', 'register', 'registered', 'round', 'self', - 'setelement', 'size', 'spawn', 'spawn_link', 'split_binary', - 'statistics', 'term_to_binary', 'throw', 'time', 'tl', 'trunc', - 'tuple_to_list', 'unlink', 'unregister', 'whereis' - ), - // Built-In Functions - 4 => array( - 'atom', 'binary', 'constant', 'function', 'integer', 'is_atom', - 'is_binary', 'is_constant', 'is_function', 'is_integer', 'is_list', - 'is_number', 'is_pid', 'is_reference', 'is_record', 'list', - 'number', 'pid', 'ports', 'port_close', 'port_info', 'reference' - ), - // Erlang/OTP internal modules (scary one) - 5 => array( - 'alarm_handler', 'any', 'app', 'application', 'appmon', 'appup', - 'array', 'asn1ct', 'asn1rt', 'auth', 'base64', 'beam_lib', 'c', - 'calendar', 'code', 'common_test_app', 'compile', 'config', - 'corba', 'corba_object', 'cosEventApp', 'CosEventChannelAdmin', - 'CosEventChannelAdmin_ConsumerAdmin', - 'CosEventChannelAdmin_EventChannel', - 'CosEventChannelAdmin_ProxyPullConsumer', - 'CosEventChannelAdmin_ProxyPullSupplier', - 'CosEventChannelAdmin_ProxyPushConsumer', - 'CosEventChannelAdmin_ProxyPushSupplier', - 'CosEventChannelAdmin_SupplierAdmin', 'CosEventDomainAdmin', - 'CosEventDomainAdmin_EventDomain', - 'CosEventDomainAdmin_EventDomainFactory', - 'cosEventDomainApp', 'CosFileTransfer_Directory', - 'CosFileTransfer_File', 'CosFileTransfer_FileIterator', - 'CosFileTransfer_FileTransferSession', - 'CosFileTransfer_VirtualFileSystem', - 'cosFileTransferApp', 'CosNaming', 'CosNaming_BindingIterator', - 'CosNaming_NamingContext', 'CosNaming_NamingContextExt', - 'CosNotification', 'CosNotification_AdminPropertiesAdmin', - 'CosNotification_QoSAdmin', 'cosNotificationApp', - 'CosNotifyChannelAdmin_ConsumerAdmin', - 'CosNotifyChannelAdmin_EventChannel', - 'CosNotifyChannelAdmin_EventChannelFactory', - 'CosNotifyChannelAdmin_ProxyConsumer', - 'CosNotifyChannelAdmin_ProxyPullConsumer', - 'CosNotifyChannelAdmin_ProxyPullSupplier', - 'CosNotifyChannelAdmin_ProxyPushConsumer', - 'CosNotifyChannelAdmin_ProxyPushSupplier', - 'CosNotifyChannelAdmin_ProxySupplier', - 'CosNotifyChannelAdmin_SequenceProxyPullConsumer', - 'CosNotifyChannelAdmin_SequenceProxyPullSupplier', - 'CosNotifyChannelAdmin_SequenceProxyPushConsumer', - 'CosNotifyChannelAdmin_SequenceProxyPushSupplier', - 'CosNotifyChannelAdmin_StructuredProxyPullConsumer', - 'CosNotifyChannelAdmin_StructuredProxyPullSupplier', - 'CosNotifyChannelAdmin_StructuredProxyPushConsumer', - 'CosNotifyChannelAdmin_StructuredProxyPushSupplier', - 'CosNotifyChannelAdmin_SupplierAdmin', - 'CosNotifyComm_NotifyPublish', 'CosNotifyComm_NotifySubscribe', - 'CosNotifyFilter_Filter', 'CosNotifyFilter_FilterAdmin', - 'CosNotifyFilter_FilterFactory', 'CosNotifyFilter_MappingFilter', - 'cosProperty', 'CosPropertyService_PropertiesIterator', - 'CosPropertyService_PropertyNamesIterator', - 'CosPropertyService_PropertySet', - 'CosPropertyService_PropertySetDef', - 'CosPropertyService_PropertySetDefFactory', - 'CosPropertyService_PropertySetFactory', 'cosTime', - 'CosTime_TimeService', 'CosTime_TIO', 'CosTime_UTO', - 'CosTimerEvent_TimerEventHandler', - 'CosTimerEvent_TimerEventService', 'cosTransactions', - 'CosTransactions_Control', 'CosTransactions_Coordinator', - 'CosTransactions_RecoveryCoordinator', 'CosTransactions_Resource', - 'CosTransactions_SubtransactionAwareResource', - 'CosTransactions_Terminator', 'CosTransactions_TransactionFactory', - 'cover', 'cprof', 'cpu_sup', 'crashdump', 'crypto', 'crypto_app', - 'ct', 'ct_cover', 'ct_ftp', 'ct_master', 'ct_rpc', 'ct_snmp', - 'ct_ssh', 'ct_telnet', 'dbg', 'debugger', 'dets', 'dialyzer', - 'dict', 'digraph', 'digraph_utils', 'disk_log', 'disksup', - 'docb_gen', 'docb_transform', 'docb_xml_check', 'docbuilder_app', - 'driver_entry', 'edoc', 'edoc_doclet', 'edoc_extract', - 'edoc_layout', 'edoc_lib', 'edoc_run', 'egd', 'ei', 'ei_connect', - 'epmd', 'epp', 'epp_dodger', 'eprof', 'erl', 'erl_boot_server', - 'erl_call', 'erl_comment_scan', 'erl_connect', 'erl_ddll', - 'erl_driver', 'erl_error', 'erl_eterm', 'erl_eval', - 'erl_expand_records', 'erl_format', 'erl_global', 'erl_id_trans', - 'erl_internal', 'erl_lint', 'erl_malloc', 'erl_marshal', - 'erl_parse', 'erl_pp', 'erl_prettypr', 'erl_prim_loader', - 'erl_prim_loader_stub', 'erl_recomment', 'erl_scan', - 'erl_set_memory_block', 'erl_syntax', 'erl_syntax_lib', 'erl_tar', - 'erl_tidy', 'erlang', 'erlang_mode', 'erlang_stub', 'erlc', - 'erlsrv', 'error_handler', 'error_logger', 'erts_alloc', - 'erts_alloc_config', 'escript', 'et', 'et_collector', - 'et_selector', 'et_viewer', 'etop', 'ets', 'eunit', 'file', - 'file_sorter', 'filelib', 'filename', 'fixed', 'fprof', 'ftp', - 'gb_sets', 'gb_trees', 'gen_event', 'gen_fsm', 'gen_sctp', - 'gen_server', 'gen_tcp', 'gen_udp', 'gl', 'global', 'global_group', - 'glu', 'gs', 'heart', 'http', 'httpd', 'httpd_conf', - 'httpd_socket', 'httpd_util', 'i', 'ic', 'ic_c_protocol', - 'ic_clib', 'igor', 'inet', 'inets', 'init', 'init_stub', - 'instrument', 'int', 'interceptors', 'inviso', 'inviso_as_lib', - 'inviso_lfm', 'inviso_lfm_tpfreader', 'inviso_rt', - 'inviso_rt_meta', 'io', 'io_lib', 'kernel_app', 'lib', 'lists', - 'lname', 'lname_component', 'log_mf_h', 'make', 'math', 'megaco', - 'megaco_codec_meas', 'megaco_codec_transform', - 'megaco_edist_compress', 'megaco_encoder', 'megaco_flex_scanner', - 'megaco_tcp', 'megaco_transport', 'megaco_udp', 'megaco_user', - 'memsup', 'mnesia', 'mnesia_frag_hash', 'mnesia_registry', - 'mod_alias', 'mod_auth', 'mod_esi', 'mod_security', - 'Module_Interface', 'ms_transform', 'net_adm', 'net_kernel', - 'new_ssl', 'nteventlog', 'observer_app', 'odbc', 'orber', - 'orber_acl', 'orber_diagnostics', 'orber_ifr', 'orber_tc', - 'orddict', 'ordsets', 'os', 'os_mon', 'os_mon_mib', 'os_sup', - 'otp_mib', 'overload', 'packages', 'percept', 'percept_profile', - 'pg', 'pg2', 'pman', 'pool', 'prettypr', 'proc_lib', 'proplists', - 'public_key', 'qlc', 'queue', 'random', 'rb', 're', 'regexp', - 'registry', 'rel', 'release_handler', 'reltool', 'relup', 'rpc', - 'run_erl', 'run_test', 'runtime_tools_app', 'sasl_app', 'script', - 'seq_trace', 'sets', 'shell', 'shell_default', 'slave', 'snmp', - 'snmp_app', 'snmp_community_mib', 'snmp_framework_mib', - 'snmp_generic', 'snmp_index', 'snmp_notification_mib', 'snmp_pdus', - 'snmp_standard_mib', 'snmp_target_mib', 'snmp_user_based_sm_mib', - 'snmp_view_based_acm_mib', 'snmpa', 'snmpa_conf', 'snmpa_error', - 'snmpa_error_io', 'snmpa_error_logger', 'snmpa_error_report', - 'snmpa_local_db', 'snmpa_mpd', 'snmpa_network_interface', - 'snmpa_network_interface_filter', - 'snmpa_notification_delivery_info_receiver', - 'snmpa_notification_filter', 'snmpa_supervisor', 'snmpc', 'snmpm', - 'snmpm_conf', 'snmpm_mpd', 'snmpm_network_interface', 'snmpm_user', - 'sofs', 'ssh', 'ssh_channel', 'ssh_connection', 'ssh_sftp', - 'ssh_sftpd', 'ssl', 'ssl_app', 'ssl_pkix', 'start', 'start_erl', - 'start_webtool', 'stdlib_app', 'string', 'supervisor', - 'supervisor_bridge', 'sys', 'systools', 'tags', 'test_server', - 'test_server_app', 'test_server_ctrl', 'tftp', 'timer', 'toolbar', - 'ttb', 'tv', 'unicode', 'unix_telnet', 'user', 'webtool', 'werl', - 'win32reg', 'wrap_log_reader', 'wx', 'wx_misc', 'wx_object', - 'wxAcceleratorEntry', 'wxAcceleratorTable', 'wxArtProvider', - 'wxAuiDockArt', 'wxAuiManager', 'wxAuiNotebook', 'wxAuiPaneInfo', - 'wxAuiTabArt', 'wxBitmap', 'wxBitmapButton', 'wxBitmapDataObject', - 'wxBoxSizer', 'wxBrush', 'wxBufferedDC', 'wxBufferedPaintDC', - 'wxButton', 'wxCalendarCtrl', 'wxCalendarDateAttr', - 'wxCalendarEvent', 'wxCaret', 'wxCheckBox', 'wxCheckListBox', - 'wxChildFocusEvent', 'wxChoice', 'wxClientDC', 'wxClipboard', - 'wxCloseEvent', 'wxColourData', 'wxColourDialog', - 'wxColourPickerCtrl', 'wxColourPickerEvent', 'wxComboBox', - 'wxCommandEvent', 'wxContextMenuEvent', 'wxControl', - 'wxControlWithItems', 'wxCursor', 'wxDataObject', 'wxDateEvent', - 'wxDatePickerCtrl', 'wxDC', 'wxDialog', 'wxDirDialog', - 'wxDirPickerCtrl', 'wxDisplayChangedEvent', 'wxEraseEvent', - 'wxEvent', 'wxEvtHandler', 'wxFileDataObject', 'wxFileDialog', - 'wxFileDirPickerEvent', 'wxFilePickerCtrl', 'wxFindReplaceData', - 'wxFindReplaceDialog', 'wxFlexGridSizer', 'wxFocusEvent', 'wxFont', - 'wxFontData', 'wxFontDialog', 'wxFontPickerCtrl', - 'wxFontPickerEvent', 'wxFrame', 'wxGauge', 'wxGBSizerItem', - 'wxGenericDirCtrl', 'wxGLCanvas', 'wxGraphicsBrush', - 'wxGraphicsContext', 'wxGraphicsFont', 'wxGraphicsMatrix', - 'wxGraphicsObject', 'wxGraphicsPath', 'wxGraphicsPen', - 'wxGraphicsRenderer', 'wxGrid', 'wxGridBagSizer', 'wxGridCellAttr', - 'wxGridCellEditor', 'wxGridCellRenderer', 'wxGridEvent', - 'wxGridSizer', 'wxHelpEvent', 'wxHtmlEasyPrinting', 'wxIcon', - 'wxIconBundle', 'wxIconizeEvent', 'wxIdleEvent', 'wxImage', - 'wxImageList', 'wxJoystickEvent', 'wxKeyEvent', - 'wxLayoutAlgorithm', 'wxListBox', 'wxListCtrl', 'wxListEvent', - 'wxListItem', 'wxListView', 'wxMask', 'wxMaximizeEvent', - 'wxMDIChildFrame', 'wxMDIClientWindow', 'wxMDIParentFrame', - 'wxMemoryDC', 'wxMenu', 'wxMenuBar', 'wxMenuEvent', 'wxMenuItem', - 'wxMessageDialog', 'wxMiniFrame', 'wxMirrorDC', - 'wxMouseCaptureChangedEvent', 'wxMouseEvent', 'wxMoveEvent', - 'wxMultiChoiceDialog', 'wxNavigationKeyEvent', 'wxNcPaintEvent', - 'wxNotebook', 'wxNotebookEvent', 'wxNotifyEvent', - 'wxPageSetupDialog', 'wxPageSetupDialogData', 'wxPaintDC', - 'wxPaintEvent', 'wxPalette', 'wxPaletteChangedEvent', 'wxPanel', - 'wxPasswordEntryDialog', 'wxPen', 'wxPickerBase', 'wxPostScriptDC', - 'wxPreviewCanvas', 'wxPreviewControlBar', 'wxPreviewFrame', - 'wxPrintData', 'wxPrintDialog', 'wxPrintDialogData', 'wxPrinter', - 'wxPrintout', 'wxPrintPreview', 'wxProgressDialog', - 'wxQueryNewPaletteEvent', 'wxRadioBox', 'wxRadioButton', - 'wxRegion', 'wxSashEvent', 'wxSashLayoutWindow', 'wxSashWindow', - 'wxScreenDC', 'wxScrollBar', 'wxScrolledWindow', 'wxScrollEvent', - 'wxScrollWinEvent', 'wxSetCursorEvent', 'wxShowEvent', - 'wxSingleChoiceDialog', 'wxSizeEvent', 'wxSizer', 'wxSizerFlags', - 'wxSizerItem', 'wxSlider', 'wxSpinButton', 'wxSpinCtrl', - 'wxSpinEvent', 'wxSplashScreen', 'wxSplitterEvent', - 'wxSplitterWindow', 'wxStaticBitmap', 'wxStaticBox', - 'wxStaticBoxSizer', 'wxStaticLine', 'wxStaticText', 'wxStatusBar', - 'wxStdDialogButtonSizer', 'wxStyledTextCtrl', 'wxStyledTextEvent', - 'wxSysColourChangedEvent', 'wxTextAttr', 'wxTextCtrl', - 'wxTextDataObject', 'wxTextEntryDialog', 'wxToggleButton', - 'wxToolBar', 'wxToolTip', 'wxTopLevelWindow', 'wxTreeCtrl', - 'wxTreeEvent', 'wxUpdateUIEvent', 'wxWindow', 'wxWindowCreateEvent', - 'wxWindowDC', 'wxWindowDestroyEvent', 'wxXmlResource', 'xmerl', - 'xmerl_eventp', 'xmerl_scan', 'xmerl_xpath', 'xmerl_xs', - 'xmerl_xsd', 'xref', 'yecc', 'zip', 'zlib', 'zlib_stub' - ), - // Binary modifiers - 6 => array( - 'big', 'binary', 'float', 'integer', 'little', 'signed', 'unit', 'unsigned' - ) - ), - 'SYMBOLS' => array( - 0 => array('(', ')', '[', ']', '{', '}'), - 1 => array('->', ',', ';', '.'), - 2 => array('<<', '>>'), - 3 => array('=', '||', '-', '+', '*', '/', '++', '--', '!', '<', '>', '>=', - '=<', '==', '/=', '=:=', '=/=') - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #186895;', - 2 => 'color: #014ea4;', - 3 => 'color: #fa6fff;', - 4 => 'color: #fa6fff;', - 5 => 'color: #ff4e18;', - 6 => 'color: #9d4f37;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #109ab8;' - ), - 'STRINGS' => array( - 0 => 'color: #ff7800;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff9600;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #004866;', - 1 => 'color: #6bb810;', - 2 => 'color: #ee3800;', - 3 => 'color: #014ea4;' - ), - 'REGEXPS' => array( - 0 => 'color: #6941fd;', - 1 => 'color: #d400ed;', - 2 => 'color: #5400b3;', - 3 => 'color: #ff3c00;', - 4 => 'color: #6941fd;', - 5 => 'color: #45b3e6;', - 6 => 'color: #ff9600;', - 7 => 'color: #d400ed;', - 8 => 'color: #ff9600;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => 'http://erlang.org/doc/man/{FNAME}.html', - 6 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '->', - 2 => ':' - ), - 'REGEXPS' => array( - //Macro definitions - 0 => array( - GESHI_SEARCH => '(-define\s*\()([a-zA-Z0-9_]+)(\(|,)', - GESHI_REPLACE => '\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\1', - GESHI_AFTER => '\3' - ), - // Record definitions - 1 => array( - GESHI_SEARCH => '(-record\s*\()([a-zA-Z0-9_]+)(,)', - GESHI_REPLACE => '\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\1', - GESHI_AFTER => '\3' - ), - // Precompiler directives - 2 => array( - GESHI_SEARCH => '(-)([a-z][a-zA-Z0-9_]*)(\()', - GESHI_REPLACE => '\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\1', - GESHI_AFTER => '\3' - ), - // Functions - 3 => array( - GESHI_SEARCH => '([a-z]\w*|\'\w*\')(\s*\()', - GESHI_REPLACE => '\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '\2' - ), - // Macros - 4 => array( - GESHI_SEARCH => '(\?)([a-zA-Z0-9_]+)', - GESHI_REPLACE => '\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\1', - GESHI_AFTER => '' - ), - // Variables - With hack to avoid interfering wish GeSHi internals - 5 => array( - GESHI_SEARCH => '([([{,<+*-\/=\s!]|<)(?!(?:PIPE|SEMI|DOT|NUM|REG3XP\d*)\W)([A-Z_]\w*)(?!\w)', - GESHI_REPLACE => '\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\1', - GESHI_AFTER => '' - ), - // ASCIIcodes - 6 => '(\$[a-zA-Z0-9_])', - // Records - 7 => array( - GESHI_SEARCH => '(#)([a-z][a-zA-Z0-9_]*)(\.|\{)', - GESHI_REPLACE => '\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\1', - GESHI_AFTER => '\3' - ), - // Numbers with a different radix - 8 => '(?<=>)(#[a-zA-Z0-9]*)' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array(), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 3 => array( - 'DISALLOWED_BEFORE' => '', - 'DISALLOWED_AFTER' => '(?=\s*\()' - ), - 5 => array( - 'DISALLOWED_BEFORE' => '(?<=\'|)', - 'DISALLOWED_AFTER' => '(?=(\'|):)' - ), - 6 => array( - 'DISALLOWED_BEFORE' => '(?<=\/|-)', - 'DISALLOWED_AFTER' => '' - ) - ) - ), -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/fo.php b/library/Vendors/geshi/geshi/fo.php deleted file mode 100644 index 3a1d2402..00000000 --- a/library/Vendors/geshi/geshi/fo.php +++ /dev/null @@ -1,327 +0,0 @@ - 'FO (abas-ERP)', - 'COMMENT_SINGLE' => array(1 => '..'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - //Control Flow - 1 => array( - /* see http://www.abas.de/sub_de/kunden/help/hd/html/9.html */ - - /* fo keywords, part 1: control flow */ - '.weiter', '.continue' - - /* this language works with goto's only*/ - ), - - //FO Keywords - 2 => array( - /* fo keywords, part 2 */ - '.fo', '.formel', '.formula', - '.zuweisen', '.assign', - '.fehler', '.error', - '.ende', '.end' - ), - - //Java Keywords - 3 => array( - /* Java keywords, part 3: primitive data types */ - '.art', '.type', - 'integer', 'real', 'bool', 'text', 'datum', 'woche', 'termin', 'zeit', - 'mehr', 'MEHR' - ), - - //Reserved words in fo literals - 4 => array( - /* other reserved words in fo literals */ - /* should be styled to look similar to numbers and Strings */ - 'false', 'null', 'true', - 'OBJEKT', - 'VORGANG', 'PROCESS', - 'OFFEN', 'OPEN', - 'ABORT', - 'AN', 'ADDEDTO', - 'AUF', 'NEW', - 'BILDSCHIRM', 'TERMINAL', - 'PC', - 'MASKE', 'SCREEN', - 'ZEILE', 'LINE' - ), - - // interpreter settings - 5 => array ( - '..!INTERPRETER', 'DEBUG' - ), - - // database commands - 6 => array ( - '.hole', '.hol', '.select', - '.lade', '.load', - '.aktion', '.action', - '.belegen', '.occupy', - '.bringe', '.rewrite', - '.dazu', '.add', - '.löschen', '.delete', - '.mache', '.make', - '.merke', '.reserve', - '.setze', '.set', - 'SPERREN', 'LOCK', - 'TEIL', 'PART', - 'KEINESPERRE', - 'AMASKE', 'ASCREEN', - 'BETRIEB', 'WORK-ORDER', - 'NUMERISCH', 'NUMERICAL', - 'VORSCHLAG', 'SUGGESTION', - 'OBLIGO', 'OUTSTANDING', - 'LISTE', 'LIST', - 'DRUCK', 'PRINT', - 'ÜBERNAHME', 'TAGEOVER', - 'ABLAGE', 'FILINGSYSTEM', - 'BDE', 'PDC', - 'BINDUNG', 'ALLOCATION', - 'BUCHUNG', 'ENTRY', - 'COLLI', 'SERIAL', - 'DATEI', 'FILE', - 'VERKAUF', 'SALES', - 'EINKAUF', 'PURCHASING', - 'EXEMPLAR', 'EXAMPLE', - 'FERTIGUNG', 'PRODUCTION', - 'FIFO', - 'GRUPPE', 'GROUP', - 'JAHR', 'YEAR', - 'JOURNAL', - 'KOPF', 'HEADER', - 'KOSTEN', - 'LIFO', - 'LMENGE', 'SQUANTITY', - 'LOHNFERTIGUNG', 'SUBCONTRACTING', - 'LPLATZ', 'LOCATION', - 'MBELEGUNG', 'MACHLOADING', - 'MONAT', 'MONTH', 'MZ', - 'NACHRICHT', 'MESSAGE', - 'PLAN', 'TARGET', - 'REGIONEN', 'REGIONS', - 'SERVICEANFRAGE', 'SERVICEREQUEST', - 'VERWENDUNG', 'APPLICATION', - 'WEITER', 'CONTINUE', - 'ABBRUCH', 'CANCEL', - 'ABLAGEKENNZEICHEN', 'FILLINGCODE', - 'ALLEIN', 'SINGLEUSER', - 'AUFZAEHLTYP', 'ENUMERATION-TYPE', - 'AUSGABE', 'OUTPUT', - 'DEZPUNKT', 'DECPOINT' - ), - - // output settings - 7 => array ( - '.absatz', '.para', - '.blocksatz', '.justified', - '.flattersatz', '.unjustified', - '.format', - '.box', - '.drucken', '.print', - '.gedruckt', '.printed', - '.länge', '.length', - '.links', '.left', - '.rechts', '.right', - '.oben', '.up', - '.unten', '.down', - '.seite', '.page', - '.tabellensatz', '.tablerecord', - '.trenner', '.separator', - 'ARCHIV' - ), - - // text commands - 8 => array ( - '.text', - '.atext', - '.println', - '.uebersetzen', '.translate' - ), - - // I/O commands - 9 => array ( - '.aus', '.ausgabe', '.output', - '.ein', '.eingabe', '.input', - '.datei', '.file', - '.lesen', '.read', - '.sortiere', '.sort', - '-ÖFFNEN', '-OPEN', - '-TEST', - '-LESEN', '-READ', - 'VON', 'FROM' - ), - - //system - 10 => array ( - '.browser', - '.kommando', '.command', - '.system', '.dde', - '.editiere', '.edit', - '.hilfe', '.help', - '.kopieren', '.copy', - '.pc.clip', - '.pc.copy', - '.pc.dll', - '.pc.exec', - '.pc.open', - 'DIAGNOSE', 'ERRORREPORT', - 'DOPPELPUNKT', 'COLON', - 'ERSETZUNG', 'REPLACEMENT', - 'WARTEN', 'PARALLEL' - ), - - //fibu/accounting specific commands - 11 => array ( - '.budget', - '.chart', - 'VKZ', - 'KONTO', 'ACCOUNT', - 'AUSZUG', 'STATEMENT', - 'WAEHRUNG', 'CURRENCY', - 'WAEHRUNGSKURS', 'EXCHANGERATE', - 'AUSWAEHR', 'FORCURR', - 'BUCHUNGSKREIS', 'SET OF BOOKS' - ), - - // efop - extended flexible surface - 12 => array ( - '.cursor', - '.farbe', '.colour', - '.fenster', '.window', - '.hinweis', '.note', - '.menue', '.menu', - '.schutz', '.protection', - '.zeigen', '.view', - '.zeile', '.line', - 'VORDERGRUND', 'FOREGROUND', - 'HINTERGRUND', 'BACKGROUND', - 'SOFORT', 'IMMEDIATELY', - 'AKTUALISIEREN', 'UPDATE', - 'FENSTERSCHLIESSEN', 'CLOSEWINDOWS' - ), - ), - 'SYMBOLS' => array( - 0 => array('(', ')', '[', ']', '{', '}', '*', '&', '%', ';', '<', '>'), - 1 => array('?', '!') - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - /* all fo keywords are case sensitive, don't have to but I like this type of coding */ - 1 => true, 2 => true, 3 => true, 4 => true, - 5 => true, 6 => true, 7 => true, 8 => true, 9 => true, - 10 => true, 11 => true, 12 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #006600; font-weight: bold;', - 4 => 'color: #006600; font-weight: bold;', - 5 => 'color: #003399; font-weight: bold;', - 6 => 'color: #003399; font-weight: bold;', - 7 => 'color: #003399; font-weight: bold;', - 8 => 'color: #003399; font-weight: bold;', - 9 => 'color: #003399; font-weight: bold;', - 10 => 'color: #003399; font-weight: bold;', - 11 => 'color: #003399; font-weight: bold;', - 12 => 'color: #003399; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - //2 => 'color: #006699;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006633;', - 2 => 'color: #006633;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;', - 1 => 'color: #000000; font-weight: bold;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '', - 9 => '', - 10 => '', - 11 => '', - 12 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/fortran.php b/library/Vendors/geshi/geshi/fortran.php deleted file mode 100644 index 6eac52ae..00000000 --- a/library/Vendors/geshi/geshi/fortran.php +++ /dev/null @@ -1,160 +0,0 @@ -'Fortran', - 'COMMENT_SINGLE'=> array(1 =>'!',2=>'Cf2py'), - 'COMMENT_MULTI'=> array(), - //Fortran Comments - 'COMMENT_REGEXP' => array(1 => '/^C.*?$/mi'), - 'CASE_KEYWORDS'=> GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS'=> array("'",'"'), - 'ESCAPE_CHAR'=>'\\', - 'KEYWORDS'=> array( - 1 => array( - 'allocate','block','call','case','contains','continue','cycle','deallocate', - 'default','do','else','elseif','elsewhere','end','enddo','endif','endwhere', - 'entry','exit','function','go','goto','if','interface','module','nullify','only', - 'operator','procedure','program','recursive','return','select','stop', - 'subroutine','then','to','where','while', - 'access','action','advance','blank','blocksize','carriagecontrol', - 'delim','direct','eor','err','exist','file','flen','fmt','form','formatted', - 'iostat','name','named','nextrec','nml','number','opened','pad','position', - 'readwrite','recl','sequential','status','unformatted','unit' - ), - 2 => array( - '.AND.','.EQ.','.EQV.','.GE.','.GT.','.LE.','.LT.','.NE.','.NEQV.','.NOT.', - '.OR.','.TRUE.','.FALSE.' - ), - 3 => array( - 'allocatable','character','common','complex','data','dimension','double', - 'equivalence','external','implicit','in','inout','integer','intent','intrinsic', - 'kind','logical','namelist','none','optional','out','parameter','pointer', - 'private','public','real','result','save','sequence','target','type','use' - ), - 4 => array( - 'abs','achar','acos','adjustl','adjustr','aimag','aint','all','allocated', - 'anint','any','asin','atan','atan2','bit_size','break','btest','carg', - 'ceiling','char','cmplx','conjg','cos','cosh','cpu_time','count','cshift', - 'date_and_time','dble','digits','dim','dot_product','dprod dvchk', - 'eoshift','epsilon','error','exp','exponent','floor','flush','fraction', - 'getcl','huge','iachar','iand','ibclr','ibits','ibset','ichar','ieor','index', - 'int','intrup','invalop','ior','iostat_msg','ishft','ishftc','lbound', - 'len','len_trim','lge','lgt','lle','llt','log','log10','matmul','max','maxexponent', - 'maxloc','maxval','merge','min','minexponent','minloc','minval','mod','modulo', - 'mvbits','nbreak','ndperr','ndpexc','nearest','nint','not','offset','ovefl', - 'pack','precfill','precision','present','product','prompt','radix', - 'random_number','random_seed','range','repeat','reshape','rrspacing', - 'scale','scan','segment','selected_int_kind','selected_real_kind', - 'set_exponent','shape','sign','sin','sinh','size','spacing','spread','sqrt', - 'sum system','system_clock','tan','tanh','timer','tiny','transfer','transpose', - 'trim','ubound','undfl','unpack','val','verify' - ), - ), - 'SYMBOLS'=> array( - '(',')','{','}','[',']','=','+','-','*','/','!','%','^','&',':' - ), - 'CASE_SENSITIVE'=> array( - GESHI_COMMENTS => true, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - ), - 'STYLES'=> array( - 'KEYWORDS'=> array( - 1 =>'color: #b1b100;', - 2 =>'color: #000000; font-weight: bold;', - 3 =>'color: #000066;', - 4 =>'color: #993333;' - ), - 'COMMENTS'=> array( - 1 =>'color: #666666; font-style: italic;', - 2 =>'color: #339933;', - 'MULTI'=>'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR'=> array( - 0 =>'color: #000099; font-weight: bold;' - ), - 'BRACKETS'=> array( - 0 =>'color: #009900;' - ), - 'STRINGS'=> array( - 0 =>'color: #ff0000;' - ), - 'NUMBERS'=> array( - 0 =>'color: #cc66cc;' - ), - 'METHODS'=> array( - 1 =>'color: #202020;', - 2 =>'color: #202020;' - ), - 'SYMBOLS'=> array( - 0 =>'color: #339933;' - ), - 'REGEXPS'=> array( - ), - 'SCRIPT'=> array( - ) - ), - 'URLS'=> array( - 1 =>'', - 2 =>'', - 3 =>'', - 4 =>'' - ), - 'OOLANG'=> true, - 'OBJECT_SPLITTERS'=> array( - 1 =>'.', - 2 =>'::' - ), - 'REGEXPS'=> array( - ), - 'STRICT_MODE_APPLIES'=> GESHI_NEVER, - 'SCRIPT_DELIMITERS'=> array( - ), - 'HIGHLIGHT_STRICT_BLOCK'=> array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/freebasic.php b/library/Vendors/geshi/geshi/freebasic.php deleted file mode 100644 index 35fc8ca6..00000000 --- a/library/Vendors/geshi/geshi/freebasic.php +++ /dev/null @@ -1,141 +0,0 @@ - 'FreeBasic', - 'COMMENT_SINGLE' => array(1 => "'", 2 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - "append", "as", "asc", "asin", "asm", "atan2", "atn", "beep", "bin", "binary", "bit", - "bitreset", "bitset", "bload", "bsave", "byref", "byte", "byval", "call", - "callocate", "case", "cbyte", "cdbl", "cdecl", "chain", "chdir", "chr", "cint", - "circle", "clear", "clng", "clngint", "close", "cls", "color", "command", - "common", "cons", "const", "continue", "cos", "cshort", "csign", "csng", - "csrlin", "cubyte", "cuint", "culngint", "cunsg", "curdir", "cushort", "custom", - "cvd", "cvi", "cvl", "cvlongint", "cvs", "cvshort", "data", "date", - "deallocate", "declare", "defbyte", "defdbl", "defined", "defint", "deflng", - "deflngint", "defshort", "defsng", "defstr", "defubyte", "defuint", - "defulngint", "defushort", "dim", "dir", "do", "double", "draw", "dylibload", - "dylibsymbol", "else", "elseif", "end", "enum", "environ", 'environ$', "eof", - "eqv", "erase", "err", "error", "exec", "exepath", "exit", "exp", "export", - "extern", "field", "fix", "flip", "for", "fre", "freefile", "function", "get", - "getjoystick", "getkey", "getmouse", "gosub", "goto", "hex", "hibyte", "hiword", - "if", "iif", "imagecreate", "imagedestroy", "imp", "inkey", "inp", "input", - "instr", "int", "integer", "is", "kill", "lbound", "lcase", "left", "len", - "let", "lib", "line", "lobyte", "loc", "local", "locate", "lock", "lof", "log", - "long", "longint", "loop", "loword", "lset", "ltrim", "mid", "mkd", "mkdir", - "mki", "mkl", "mklongint", "mks", "mkshort", "mod", "multikey", "mutexcreate", - "mutexdestroy", "mutexlock", "mutexunlock", "name", "next", "not", "oct", "on", - "once", "open", "option", "or", "out", "output", "overload", "paint", "palette", - "pascal", "pcopy", "peek", "peeki", "peeks", "pipe", "pmap", "point", "pointer", - "poke", "pokei", "pokes", "pos", "preserve", "preset", "print", "private", - "procptr", "pset", "ptr", "public", "put", "random", "randomize", "read", - "reallocate", "redim", "rem", "reset", "restore", "resume", - "return", "rgb", "rgba", "right", "rmdir", "rnd", "rset", "rtrim", "run", - "sadd", "screen", "screencopy", "screeninfo", "screenlock", "screenptr", - "screenres", "screenset", "screensync", "screenunlock", "seek", "statement", - "selectcase", "setdate", "setenviron", "setmouse", - "settime", "sgn", "shared", "shell", "shl", "short", "shr", "sin", "single", - "sizeof", "sleep", "space", "spc", "sqr", "static", "stdcall", "step", "stop", - "str", "string", "strptr", "sub", "swap", "system", "tab", "tan", - "then", "threadcreate", "threadwait", "time", "timer", "to", "trans", - "trim", "type", "ubound", "ubyte", "ucase", "uinteger", "ulongint", "union", - "unlock", "unsigned", "until", "ushort", "using", "va_arg", "va_first", - "va_next", "val", "val64", "valint", "varptr", "view", "viewprint", "wait", - "wend", "while", "width", "window", "windowtitle", "with", "write", "xor", - "zstring", "explicit", "escape", "true", "false" - ) - ), - 'SYMBOLS' => array( - '(', ')' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080;', - 2 => 'color: #339933;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 0 => 'color: #66cc66;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/fsharp.php b/library/Vendors/geshi/geshi/fsharp.php deleted file mode 100644 index 56146958..00000000 --- a/library/Vendors/geshi/geshi/fsharp.php +++ /dev/null @@ -1,211 +0,0 @@ - 'F#', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('(*' => '*)', '/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'HARDQUOTE' => array('@"', '"'), - 'HARDESCAPE' => array('"'), - 'HARDCHAR' => '"', - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - /* main F# keywords */ - /* section 3.4 */ - 1 => array( - 'abstract', 'and', 'as', 'assert', 'base', 'begin', 'class', 'default', 'delegate', 'do', 'done', - 'downcast', 'downto', 'elif', 'else', 'end', 'exception', 'extern', 'false', 'finally', 'for', - 'fun', 'function', 'if', 'in', 'inherit', 'inline', 'interface', 'internal', 'lazy', 'let', - 'match', 'member', 'module', 'mutable', 'namespace', 'new', 'not', 'null', 'of', 'open', 'or', - 'override', 'private', 'public', 'rec', 'return', 'sig', 'static', 'struct', 'then', 'to', - 'true', 'try', 'type', 'upcast', 'use', 'val', 'void', 'when', 'while', 'with', 'yield', - 'asr', 'land', 'lor', 'lsl', 'lsr', 'lxor', 'mod', - /* identifiers are reserved for future use by F# */ - 'atomic', 'break', 'checked', 'component', 'const', 'constraint', 'constructor', - 'continue', 'eager', 'fixed', 'fori', 'functor', 'global', 'include', 'method', 'mixin', - 'object', 'parallel', 'params', 'process', 'protected', 'pure', 'sealed', 'tailcall', - 'trait', 'virtual', 'volatile', - /* take monads into account */ - 'let!', 'yield!' - ), - /* define names of main libraries in F# Core, so we can link to it - * http://research.microsoft.com/en-us/um/cambridge/projects/fsharp/manual/namespaces.html - */ - 2 => array( - 'Array', 'Array2D', 'Array3D', 'Array4D', 'ComparisonIdentity', 'HashIdentity', 'List', - 'Map', 'Seq', 'SequenceExpressionHelpers', 'Set', 'CommonExtensions', 'Event', - 'ExtraTopLevelOperators', 'LanguagePrimitives', 'NumericLiterals', 'Operators', - 'OptimizedClosures', 'Option', 'String', 'NativePtr', 'Printf' - ), - /* 17.2 & 17.3 */ - 3 => array( - 'abs', 'acos', 'asin', 'atan', 'atan2', 'ceil', 'cos', 'cosh', 'exp', - 'floor', 'log', 'log10', 'pown', 'round', 'sign', 'sin', 'sinh', 'sqrt', - 'tan', 'tanh', - 'ignore', - 'fst', 'snd', - 'stdin', 'stdout', 'stderr', - 'KeyValue', - 'max', 'min' - ), - /* Pervasives Types & Overloaded Conversion Functions */ - 4 => array( - 'bool', 'byref', 'byte', 'char', 'decimal', 'double', 'exn', 'float', 'float32', - 'FuncConvert', 'ilsigptr', 'int', 'int16', 'int32', 'int64', 'int8', - 'nativeint', 'nativeptr', 'obj', 'option', 'ref', 'sbyte', 'single', 'string', 'uint16', - 'uint32', 'uint64', 'uint8', 'unativeint', 'unit', - 'enum', - 'async', 'seq', 'dict' - ), - /* 17.2 Exceptions */ - 5 => array ( - 'failwith', 'invalidArg', 'raise', 'rethrow' - ), - /* 3.3 Conditional compilation & 13.3 Compiler Directives + light / light off */ - 6 => array( - '(*IF-FSHARP', 'ENDIF-FSHARP*)', '(*F#', 'F#*)', '(*IF-OCAML', 'ENDIF-OCAML*)', - '#light', - '#if', '#else', '#endif', '#indent', '#nowarn', '#r', '#reference', - '#I', '#Include', '#load', '#time', '#help', '#q', '#quit', - ), - /* 3.11 Pre-processor Declarations / Identifier Replacements */ - 7 => array( - '__SOURCE_DIRECTORY__', '__SOURCE_FILE__', '__LINE__' - ), - /* 17.2 Object Transformation Operators */ - 8 => array( - 'box', 'hash', 'sizeof', 'typeof', 'typedefof', 'unbox' - ) - ), - /* 17.2 basic operators + the yield and yield! arrows */ - 'SYMBOLS' => array( - 1 => array('+', '-', '/', '*', '**', '%', '~-'), - 2 => array('<', '<=', '>', '<=', '=', '<>'), - 3 => array('<<<', '>>>', '^^^', '&&&', '|||', '~~~'), - 4 => array('|>', '>>', '<|', '<<'), - 5 => array('!', '->', '->>'), - 6 => array('[',']','(',')','{','}', '[|', '|]', '(|', '|)'), - 7 => array(':=', ';', ';;') - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, /* keywords */ - 2 => true, /* modules */ - 3 => true, /* pervasives functions */ - 4 => true, /* types and overloaded conversion operators */ - 5 => true, /* exceptions */ - 6 => true, /* conditional compilation & compiler Directives */ - 7 => true, /* pre-processor declarations / identifier replacements */ - 8 => true /* object transformation operators */ - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #06c; font-weight: bold;', /* nice blue */ - 2 => 'color: #06c; font-weight: bold;', /* nice blue */ - 3 => 'color: #06c; font-weight: bold;', /* nice blue */ - 4 => 'color: #06c; font-weight: bold;', /* nice blue */ - 5 => 'color: #06c; font-weight: bold;', /* nice blue */ - 6 => 'color: #06c; font-weight: bold;', /* nice blue */ - 7 => 'color: #06c; font-weight: bold;', /* nice blue */ - 8 => 'color: #06c; font-weight: bold;' /* nice blue */ - ), - 'COMMENTS' => array( - 'MULTI' => 'color: #5d478b; font-style: italic;', /* light purple */ - 1 => 'color: #5d478b; font-style: italic;', - 2 => 'color: #5d478b; font-style: italic;' /* light purple */ - ), - 'ESCAPE_CHAR' => array( - ), - 'BRACKETS' => array( - 0 => 'color: #6c6;' - ), - 'STRINGS' => array( - 0 => 'color: #3cb371;' /* nice green */ - ), - 'NUMBERS' => array( - 0 => 'color: #c6c;' /* pink */ - ), - 'METHODS' => array( - 1 => 'color: #060;' /* dark green */ - ), - 'REGEXPS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #a52a2a;' /* maroon */ - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - /* some of keywords are Pervasives functions (land, lxor, asr, ...) */ - 1 => '', - 2 => 'http://research.microsoft.com/en-us/um/cambridge/projects/fsharp/manual/namespaces.html', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?|^])", - 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-])" - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/gambas.php b/library/Vendors/geshi/geshi/gambas.php deleted file mode 100644 index 0fc89bb5..00000000 --- a/library/Vendors/geshi/geshi/gambas.php +++ /dev/null @@ -1,214 +0,0 @@ - 'GAMBAS', - 'COMMENT_SINGLE' => array(1 => "'"), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | - GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - //keywords - 1 => array( - 'APPEND', 'AS', 'BREAK', 'BYREF', 'CASE', 'CATCH', 'CLASS', 'CLOSE', 'CONST', 'CONTINUE', 'COPY', - 'CREATE', 'DEBUG', 'DEC', 'DEFAULT', 'DIM', 'DO', 'EACH', 'ELSE', 'END', 'ENDIF', 'ERROR', 'EVENT', 'EXEC', - 'EXPORT', 'EXTERN', 'FALSE', 'FINALLY', 'FLUSH', 'FOR', 'FUNCTION', 'GOTO', 'IF', 'IN', 'INC', 'INHERITS', - 'INPUT', 'FROM', 'IS', 'KILL', 'LAST', 'LIBRARY', 'LIKE', 'LINE INPUT', 'LINK', 'LOCK', 'LOOP', 'ME', - 'MKDIR', 'MOVE', 'NEW', 'NEXT', 'NULL', 'OPEN', 'OPTIONAL', 'OUTPUT', 'PIPE', 'PRINT', 'PRIVATE', - 'PROCEDURE', 'PROPERTY', 'PUBLIC', 'QUIT', 'RAISE', 'RANDOMIZE', 'READ', 'REPEAT', 'RETURN', 'RMDIR', - 'SEEK', 'SELECT', 'SHELL', 'SLEEP', 'STATIC', 'STEP', 'STOP', 'SUB', 'SUPER', 'SWAP', 'THEN', 'TO', - 'TRUE', 'TRY', 'UNLOCK', 'UNTIL', 'WAIT', 'WATCH', 'WEND', 'WHILE', 'WITH', 'WRITE' - ), - //functions - 2 => array( - 'Abs', 'Access', 'Acos', 'Acosh', 'Alloc', 'Ang', 'Asc', 'ASin', 'ASinh', 'Asl', 'Asr', 'Assign', 'Atan', - 'ATan2', 'ATanh', - 'BChg', 'BClr', 'Bin', 'BSet', 'BTst', - 'CBool', 'Cbr', 'CByte', 'CDate', 'CFloat', 'Choose', 'Chr', 'CInt', 'CLong', 'Comp', 'Conv', 'Cos', - 'Cosh', 'CShort', 'CSng', 'CStr', - 'DateAdd', 'DateDiff', 'Day', 'DConv', 'Deg', 'DFree', 'Dir', - 'Eof', 'Eval', 'Exist', 'Exp', 'Exp10', 'Exp2', 'Expm', - 'Fix', 'Format', 'Frac', 'Free', - 'Hex', 'Hour', 'Hyp', - 'Iif', 'InStr', 'Int', 'IsAscii', 'IsBlank', 'IsBoolean', 'IsByte', 'IsDate', 'IsDigit', 'IsDir', - 'IsFloat', 'IsHexa', 'IsInteger', 'IsLCase', 'IsLetter', 'IsLong', 'IsNull', 'IsNumber', 'IsObject', - 'IsPunct', 'IsShort', 'IsSingle', 'IsSpace', 'IsString', 'IsUCase', 'IsVariant', - 'LCase', 'Left', 'Len', 'Lof', 'Log', 'Log10', 'Log2', 'Logp', 'Lsl', 'Lsr', 'LTrim', - 'Mag', 'Max', 'Mid', 'Min', 'Minute', 'Month', 'Now', 'Quote', - 'Rad', 'RDir', 'Realloc', 'Replace', 'Right', 'RInStr', 'Rnd', 'Rol', 'Ror', 'Round', 'RTrim', - 'Scan', 'SConv', 'Second', 'Seek', 'Sgn', 'Shl', 'Shr', 'Sin', 'Sinh', 'Space', 'Split', 'Sqr', - 'Stat', 'Str', 'StrPtr', 'Subst', - 'Tan', 'Tanh', 'Temp$', 'Time', 'Timer', 'Tr', 'Trim', 'TypeOf', - 'UCase', 'Unquote', 'Val', 'VarPtr', 'Week', 'WeekDay', 'Year' - ), - //string functions - 3 => array( - 'Bin$', 'Chr$', 'Conv$', 'DConv$', 'Format$', 'Hex$', 'LCase$', 'Left$', 'LTrim$', 'Mid$', 'Quote$', - 'Replace$', 'Right$', 'SConv$', 'Space$', 'Str$', 'String$', 'Subst$', 'Tr$', 'Trim$', 'UCase$', - 'Unquote$' - ), - //datatypes - 4 => array( - 'Boolean', 'Byte', 'Short', 'Integer', 'Long', 'Single', 'Float', 'Date', 'String', 'Variant', 'Object', - 'Pointer', 'File' - ), - //operators - 5 => array( - 'AND', 'DIV', 'MOD', 'NOT', 'OR', 'XOR' - ), - //objects/classes - 6 => array( - 'Application', 'Array', 'Byte[]', 'Collection', 'Component', 'Enum', 'Observer', 'Param', 'Process', - 'Stream', 'System', 'User', 'Chart', 'Compress', 'Crypt', 'Blob', 'Connection', 'DB', 'Database', - 'DatabaseUser', 'Field', 'Index', 'Result', 'ResultField', 'Table', 'DataBrowser', 'DataCombo', - 'DataControl', 'DataSource', 'DataView', 'Desktop', 'DesktopFile', 'Balloon', 'ColorButton', - 'ColorChooser', 'DateChooser', 'DirChooser', 'DirView', 'Expander', 'FileChooser', 'FileView', - 'FontChooser', 'InputBox', 'ListContainer', 'SidePanel', 'Stock', 'TableView', 'ToolPanel', 'ValueBox', - 'Wizard', 'Dialog', 'ToolBar', 'WorkSpace', 'DnsClient', 'SerialPort', 'ServerSocket', 'Socket', - 'UdpSocket', 'FtpClient', 'HttpClient', 'SmtpClient', 'Regexp', 'Action', 'Button', 'CheckBox', - 'ColumnView', 'ComboBox', 'Draw', 'Container', 'Control', 'Cursor', 'DrawingArea', 'Embedder', - 'Font', 'Form', 'Frame', 'GridView', 'HBox', 'HPanel', 'HSplit', 'IconView', 'Image', 'Key', 'Label', - 'Line', 'ListBox', 'ListView', 'Menu', 'Message', 'Mouse', 'MovieBox', 'Panel', 'Picture', 'PictureBox', - 'ProgressBar', 'RadioButton', 'ScrollBar', 'ScrollView', 'Separator', 'Slider', 'SpinBox', 'TabStrip', - 'TextArea', 'TextBox', 'TextLabel', 'ToggleButton', 'TrayIcon', 'TreeView', 'VBox', 'VPanel', 'VSplit', - 'Watcher', 'Window', 'Dial', 'Editor', 'LCDNumber', 'Printer', 'TextEdit', 'WebBrowser', 'GLarea', - 'Report', 'ReportCloner', 'ReportContainer', 'ReportControl', 'ReportDrawing', 'ReportField', 'ReportHBox', - 'ReportImage', 'ReportLabel', 'ReportSection', 'ReportSpecialField', 'ReportTextLabel', 'ReportVBox', - 'CDRom', 'Channel', 'Music', 'Sound', 'Settings', 'VideoDevice', 'Vb', 'CGI', 'HTML', 'Request', 'Response', - 'Session', 'XmlDocument', 'XmlNode', 'XmlReader', 'XmlReaderNodeType', 'XmlWriter', 'RpcArray', 'RpcClient', - 'RpcFunction', 'RpcServer', 'RpcStruct', 'RpcType', 'XmlRpc', 'Xslt' - ), - //constants - 7 => array( - 'Pi' - ), - ), - 'SYMBOLS' => array( - '&', '&=', '&/', '*', '*=', '+', '+=', '-', '-=', '//', '/', '/=', '=', '==', '\\', '\\=', - '^', '^=', '[', ']', '{', '}', '<', '>', '<>', '<=', '>=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0600FF; font-weight: bold;', // Keywords - 2 => 'color: #8B1433;', // Functions - 3 => 'color: #8B1433;', // String Functions - 4 => 'color: #0600FF;', // Data Types - 5 => 'color: #1E90FF;', // Operators - 6 => 'color: #0600FF;', // Objects/Components - 7 => 'color: #0600FF;' // Constants - ), - 'COMMENTS' => array( - 1 => 'color: #1A5B1A; font-style: italic;', - 'MULTI' => 'color: #1A5B1A; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #008080;' - ), - 'BRACKETS' => array( - 0 => 'color: #612188;' - ), - 'STRINGS' => array( - 0 => 'color: #7E4B05;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF0000;', - GESHI_NUMBER_INT_BASIC => 'color: #FF0000;' - ), - 'METHODS' => array( - 1 => 'color: #0000FF;' - ), - 'SYMBOLS' => array( - 0 => 'color: #6132B2;' - ), - 'REGEXPS' => array( - //3 => 'color: #8B1433;' //fakes '$' colour matched by REGEXP - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://gambasdoc.org/help/lang/{FNAMEL}', - 2 => 'http://gambasdoc.org/help/lang/{FNAMEL}', - 3 => 'http://www.google.com/search?hl=en&q={FNAMEL}+site:http://gambasdoc.org/help/lang/&btnI=I%27m%20Feeling%20Lucky', - 4 => 'http://gambasdoc.org/help/lang/type/{FNAMEL}', - 5 => 'http://gambasdoc.org/help/lang/{FNAMEL}', - 6 => 'http://www.google.com/search?hl=en&q={FNAMEL}+site:http://gambasdoc.org/&btnI=I%27m%20Feeling%20Lucky', - 7 => 'http://gambasdoc.org/help/lang/{FNAMEL}' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 =>'.' - ), - 'REGEXPS' => array( - //3 => "\\$(?!\\w)" //matches '$' at the end of Keyword - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 2 => array( - 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_\|%\\-&;\$])" - ) - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/gdb.php b/library/Vendors/geshi/geshi/gdb.php deleted file mode 100644 index ed7ee2ff..00000000 --- a/library/Vendors/geshi/geshi/gdb.php +++ /dev/null @@ -1,175 +0,0 @@ - 'GDB', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 0 => array( - 'Application', - 'signal', - ), - 1 => array( - 'Segmentation fault', - '[KCrash Handler]', - ), - ), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC, - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - 0 => true, - 1 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 0 => 'font-weight:bold;', - 1 => 'font-weight:bold; color: #ff0000;' - ), - 'COMMENTS' => array( - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => 'font-weight:bold;' - ), - 'STRINGS' => array( - 0 => 'color: #933;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;', - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - ), - 'REGEXPS' => array( - 0 => 'color: #000066; font-weight:bold;', - 1 => 'color: #006600;', - 2 => 'color: #000066;', - 3 => 'color: #0066FF; text-style:italic;', - 4 => 'color: #80B5FF; text-style:italic;', - 5 => 'color: #A3007D;', - 6 => 'color: #FF00BF;', - 7 => 'font-weight: bold;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 0 => '', - 1 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //[Current Thread...], [KCrash Handler] etc. - 0 => array( - GESHI_SEARCH => '^\[.+\]', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //stack number - 1 => array( - GESHI_SEARCH => '^#\d+', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //Thread X (Thread...) - 2 => array( - GESHI_SEARCH => '^Thread \d.+$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //Files with linenumbers - 3 => array( - GESHI_SEARCH => '(at )(.+)(:\d+\s*)$', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - //Libs without linenumbers - 4 => array( - GESHI_SEARCH => '(from )(.+)(\s*)$', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - //Hex mem address - 5 => '0x[a-f0-9]+', - //Line numbers - 6 => array( - GESHI_SEARCH => '(:)(\d+)(\s*)$', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - //Location - 7 => array( - GESHI_SEARCH => '( in )([^ \(\)]+)( \()', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/genero.php b/library/Vendors/geshi/geshi/genero.php deleted file mode 100644 index a7ccf5fe..00000000 --- a/library/Vendors/geshi/geshi/genero.php +++ /dev/null @@ -1,463 +0,0 @@ - 'genero', - 'COMMENT_SINGLE' => array(1 => '--', 2 => '#'), - 'COMMENT_MULTI' => array('{' => '}'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - "ABSOLUTE", - "ACCEPT", - "ACTION", - "ADD", - "AFTER", - "ALL", - "ALTER", - "AND", - "ANY", - "APPEND", - "APPLICATION", - "AS", - "AT", - "ATTRIBUTE", - "ATTRIBUTES", - "AUDIT", - "AVG", - "BEFORE", - "BEGIN", - "BETWEEN", - "BORDER", - "BOTTOM", - "BREAKPOINT", - "BUFFER", - "BUFFERED", - "BY", - "CALL", - "CANCEL", - "CASE", - "CENTURY", - "CHANGE", - "CHECK", - "CLEAR", - "CLIPPED", - "CLOSE", - "CLUSTER", - "COLUMN", - "COLUMNS", - "COMMAND", - "COMMENT", - "COMMIT", - "COMMITTED", - "CONCURRENT ", - "CONNECT", - "CONNECTION", - "CONSTANT", - "CONSTRAINED", - "CONSTRAINT", - "CONSTRUCT", - "CONTINUE", - "CONTROL", - "COUNT", - "CREATE", - "CROSS", - "CURRENT", - "DATABASE", - "DBA", - "DEC", - "DECLARE", - "DEFAULT", - "DEFAULTS", - "DEFER", - "DEFINE", - "DELETE", - "DELIMITER", - "DESCRIBE", - "DESTINATION", - "DIM", - "DIALOG", - "DIMENSION", - "DIRTY", - "DISCONNECT", - "DISPLAY", - "DISTINCT", - "DORMANT", - "DOWN", - "DROP", - "DYNAMIC", - "ELSE", - "END", - "ERROR", - "ESCAPE", - "EVERY", - "EXCLUSIVE", - "EXECUTE", - "EXISTS", - "EXIT", - "EXPLAIN", - "EXTEND", - "EXTENT", - "EXTERNAL", - "FETCH", - "FGL_DRAWBOX", - "FIELD", - "FIELD_TOUCHED", - "FILE", - "FILL", - "FINISH", - "FIRST", - "FLOAT", - "FLUSH", - "FOR", - "FOREACH", - "FORM", - "FORMAT", - "FOUND", - "FRACTION", - "FREE", - "FROM", - "FULL", - "FUNCTION", - "GET_FLDBUF", - "GLOBALS", - "GO", - "GOTO", - "GRANT", - "GROUP", - "HAVING", - "HEADER", - "HELP", - "HIDE", - "HOLD", - "HOUR", - "IDLE", - "IF", - "IMAGE", - "IMMEDIATE", - "IN", - "INDEX", - "INFIELD", - "INITIALIZE", - "INNER", - "INPUT", - "INSERT", - "INTERRUPT", - "INTERVAL", - "INTO", - "INVISIBLE", - "IS", - "ISOLATION", - "JOIN", - "KEEP", - "KEY", - "LABEL", - "LAST", - "LEFT", - "LENGTH", - "LET", - "LIKE", - "LINE", - "LINENO", - "LINES", - "LOAD", - "LOCATE", - "LOCK", - "LOG", - "LSTR", - "MAIN", - "MARGIN", - "MATCHES", - "MAX", - "MAXCOUNT", - "MDY", - "MEMORY", - "MENU", - "MESSAGE", - "MIN", - "MINUTE", - "MOD", - "MODE", - "MODIFY", - "MONEY", - "NAME", - "NEED", - "NEXT", - "NO", - "NORMAL", - "NOT", - "NOTFOUND", - "NULL", - "NUMERIC", - "OF", - "ON", - "OPEN", - "OPTION", - "OPTIONS", - "OR", - "ORDER", - "OTHERWISE", - "OUTER", - "OUTPUT", - "PAGE", - "PAGENO", - "PAUSE", - "PERCENT", - "PICTURE", - "PIPE", - "PRECISION", - "PREPARE", - "PREVIOUS", - "PRINT", - "PRINTER", - "PRINTX", - "PRIOR", - "PRIVILEGES", - "PROCEDURE", - "PROGRAM", - "PROMPT", - "PUBLIC", - "PUT", - "QUIT", - "READ", - "REAL", - "RECORD", - "RECOVER", - "RED ", - "RELATIVE", - "RENAME", - "REOPTIMIZATION", - "REPEATABLE", - "REPORT", - "RESOURCE", - "RETURN", - "RETURNING", - "REVERSE", - "REVOKE", - "RIGHT", - "ROLLBACK", - "ROLLFORWARD", - "ROW", - "ROWS", - "RUN", - "SCHEMA", - "SCREEN", - "SCROLL", - "SECOND", - "SELECT", - "SERIAL", - "SET", - "SFMT", - "SHARE", - "SHIFT", - "SHOW", - "SIGNAL ", - "SIZE", - "SKIP", - "SLEEP", - "SOME", - "SPACE", - "SPACES", - "SQL", - "SQLERRMESSAGE", - "SQLERROR", - "SQLSTATE", - "STABILITY", - "START", - "STATISTICS", - "STEP", - "STOP", - "STYLE", - "SUM", - "SYNONYM", - "TABLE", - "TEMP", - "TERMINATE", - "TEXT", - "THEN", - "THROUGH", - "THRU", - "TO", - "TODAY", - "TOP", - "TRAILER", - "TRANSACTION ", - "UNBUFFERED", - "UNCONSTRAINED", - "UNDERLINE", - "UNION", - "UNIQUE", - "UNITS", - "UNLOAD", - "UNLOCK", - "UP", - "UPDATE", - "USE", - "USER", - "USING", - "VALIDATE", - "VALUE", - "VALUES", - "VARCHAR", - "VIEW", - "WAIT", - "WAITING", - "WARNING", - "WHEN", - "WHENEVER", - "WHERE", - "WHILE", - "WINDOW", - "WITH", - "WITHOUT", - "WORDWRAP", - "WORK", - "WRAP" - ), - 2 => array( - '&IFDEF', '&ENDIF' - ), - 3 => array( - "ARRAY", - "BYTE", - "CHAR", - "CHARACTER", - "CURSOR", - "DATE", - "DATETIME", - "DECIMAL", - "DOUBLE", - "FALSE", - "INT", - "INTEGER", - "SMALLFLOAT", - "SMALLINT", - "STRING", - "TIME", - "TRUE" - ), - 4 => array( - "BLACK", - "BLINK", - "BLUE", - "BOLD", - "ANSI", - "ASC", - "ASCENDING", - "ASCII", - "CYAN", - "DESC", - "DESCENDING", - "GREEN", - "MAGENTA", - "OFF", - "WHITE", - "YELLOW", - "YEAR", - "DAY", - "MONTH", - "WEEKDAY" - ), - ), - 'SYMBOLS' => array( - '+', '-', '*', '?', '=', '/', '%', '>', '<', '^', '!', '|', ':', - '(', ')', '[', ']' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0600FF;', - 2 => 'color: #0000FF; font-weight: bold;', - 3 => 'color: #008000;', - 4 => 'color: #FF0000;', - ), - 'COMMENTS' => array( - 1 => 'color: #008080; font-style: italic;', - 2 => 'color: #008080;', - 'MULTI' => 'color: #008080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #008080; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #808080;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF0000;' - ), - 'METHODS' => array( - 1 => 'color: #0000FF;', - 2 => 'color: #0000FF;' - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/genie.php b/library/Vendors/geshi/geshi/genie.php deleted file mode 100644 index 66bea6dc..00000000 --- a/library/Vendors/geshi/geshi/genie.php +++ /dev/null @@ -1,157 +0,0 @@ - 'Genie', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Using and Namespace directives (basic support) - //Please note that the alias syntax for using is not supported - 3 => '/(?:(?<=using[\\n\\s])|(?<=namespace[\\n\\s]))[\\n\\s]*([a-zA-Z0-9_]+\\.)*[a-zA-Z0-9_]+[\n\s]*(?=[;=])/i'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'HARDQUOTE' => array('@"', '"'), - 'HARDESCAPE' => array('""'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'and', 'as', 'abstract', 'break', 'case', 'cast', 'catch', 'const', - 'construct', 'continue', 'default', 'def', 'delete', 'div', - 'dynamic', 'do', 'downto', 'else', 'ensures', 'except', 'extern', - 'false', 'final', 'finally', 'for', 'foreach', 'get', 'if', 'in', - 'init', 'inline', 'internal', 'implements', 'lock', 'not', 'null', - 'of', 'or', 'otherwise', 'out', 'override', 'pass', 'raise', - 'raises', 'readonly', 'ref', 'requires', 'self', 'set', 'static', - 'super', 'switch', 'to', 'true', 'try', 'unless', 'uses', 'var', 'virtual', - 'volatile', 'void', 'when', 'while' - ), -// 2 => array( -// ), - 3 => array( - 'is', 'isa', 'new', 'owned', 'sizeof', 'typeof', 'unchecked', - 'unowned', 'weak' - ), - 4 => array( - 'bool', 'byte', 'class', 'char', 'date', 'datetime', 'decimal', 'delegate', - 'double', 'enum', 'event', 'exception', 'float', 'int', 'interface', - 'long', 'object', 'prop', 'sbyte', 'short', 'single', 'string', - 'struct', 'ulong', 'ushort' - ), -// 5 => array( -// ), - ), - 'SYMBOLS' => array( - '+', '-', '*', '?', '=', '/', '%', '&', '>', '<', '^', '!', ':', ';', - '(', ')', '{', '}', '[', ']', '|' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, -// 2 => false, - 3 => false, - 4 => false, -// 5 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0600FF;', -// 2 => 'color: #FF8000; font-weight: bold;', - 3 => 'color: #008000;', - 4 => 'color: #FF0000;', -// 5 => 'color: #000000;' - ), - 'COMMENTS' => array( - 1 => 'color: #008080; font-style: italic;', -// 2 => 'color: #008080;', - 3 => 'color: #008080;', - 'MULTI' => 'color: #008080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #008080; font-weight: bold;', - 'HARD' => 'color: #008080; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #666666;', - 'HARD' => 'color: #666666;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF0000;' - ), - 'METHODS' => array( - 1 => 'color: #0000FF;', - 2 => 'color: #0000FF;' - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', -// 2 => '', - 3 => '', - 4 => '', -// 5 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?|^])", - 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-])" - ) - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/gettext.php b/library/Vendors/geshi/geshi/gettext.php deleted file mode 100644 index e1c88e18..00000000 --- a/library/Vendors/geshi/geshi/gettext.php +++ /dev/null @@ -1,97 +0,0 @@ - 'GNU Gettext', - 'COMMENT_SINGLE' => array('#:', '#.', '#,', '#|', '#'), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array('msgctxt', 'msgid_plural', 'msgid', 'msgstr'), - ), - 'SYMBOLS' => array(), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;' - ), - 'COMMENTS' => array( - 0 => 'color: #000099;', - 1 => 'color: #000099;', - 2 => 'color: #000099;', - 3 => 'color: #006666;', - 4 => 'color: #666666; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'REGEXPS' => array(), - 'SYMBOLS' => array(), - 'NUMBERS' => array( - 0 => 'color: #000099;' - ), - 'METHODS' => array(), - 'SCRIPT' => array(), - 'BRACKETS' => array( - 0 => 'color: #000099;' - ), - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array(), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, -); - -?> diff --git a/library/Vendors/geshi/geshi/glsl.php b/library/Vendors/geshi/geshi/glsl.php deleted file mode 100644 index f9a37ed0..00000000 --- a/library/Vendors/geshi/geshi/glsl.php +++ /dev/null @@ -1,205 +0,0 @@ - 'glSlang', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Multiline-continued single-line comments - 1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m', - //Multiline-continued preprocessor define - 2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'if', 'else', 'for', 'while', 'do', 'break', 'continue', 'asm', - 'switch', 'case', 'default', 'return', 'discard', - 'namespace', 'using', 'sizeof', 'cast' - ), - 2 => array( - 'const', 'uniform', 'attribute', 'centroid', 'varying', 'invariant', - 'in', 'out', 'inout', 'input', 'output', 'typedef', 'volatile', - 'public', 'static', 'extern', 'external', 'packed', - 'inline', 'noinline', 'noperspective', 'flat' - ), - 3 => array( - 'void', 'bool', 'int', 'long', 'short', 'float', 'half', 'fixed', - 'unsigned', 'lowp', 'mediump', 'highp', 'precision', - 'vec2', 'vec3', 'vec4', 'bvec2', 'bvec3', 'bvec4', - 'dvec2', 'dvec3', 'dvec4', 'fvec2', 'fvec3', 'fvec4', - 'hvec2', 'hvec3', 'hvec4', 'ivec2', 'ivec3', 'ivec4', - 'mat2', 'mat3', 'mat4', 'mat2x2', 'mat3x2', 'mat4x2', - 'mat2x3', 'mat3x3', 'mat4x3', 'mat2x4', 'mat3x4', 'mat4x4', - 'sampler1D', 'sampler2D', 'sampler3D', 'samplerCube', - 'sampler1DShadow', 'sampler2DShadow', - 'struct', 'class', 'union', 'enum', 'interface', 'template' - ), - 4 => array( - 'this', 'false', 'true' - ), - 5 => array( - 'radians', 'degrees', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', - 'pow', 'exp2', 'log2', 'sqrt', 'inversesqrt', 'abs', 'sign', 'ceil', - 'floor', 'fract', 'mod', 'min', 'max', 'clamp', 'mix', 'step', - 'smoothstep', 'length', 'distance', 'dot', 'cross', 'normalize', - 'ftransform', 'faceforward', 'reflect', 'matrixCompMult', 'equal', - 'lessThan', 'lessThanEqual', 'greaterThan', 'greaterThanEqual', - 'notEqual', 'any', 'all', 'not', 'texture1D', 'texture1DProj', - 'texture1DLod', 'texture1DProjLod', 'texture2D', 'texture2DProj', - 'texture2DLod', 'texture2DProjLod', 'texture3D', 'texture3DProj', - 'texture3DLod', 'texture3DProjLod', 'textureCube', 'textureCubeLod', - 'shadow1D', 'shadow1DProj', 'shadow1DLod', 'shadow1DProjLod', - 'shadow2D', 'shadow2DProj', 'shadow2DLod', 'shadow2DProjLod', - 'noise1', 'noise2', 'noise3', 'noise4' - ), - 6 => array( - 'gl_Position', 'gl_PointSize', 'gl_ClipVertex', 'gl_FragColor', - 'gl_FragData', 'gl_FragDepth', 'gl_FragCoord', 'gl_FrontFacing', - 'gl_Color', 'gl_SecondaryColor', 'gl_Normal', 'gl_Vertex', - 'gl_MultiTexCoord0', 'gl_MultiTexCoord1', 'gl_MultiTexCoord2', - 'gl_MultiTexCoord3', 'gl_MultiTexCoord4', 'gl_MultiTexCoord5', - 'gl_MultiTexCoord6', 'gl_MultiTexCoord7', 'gl_FogCoord', - 'gl_MaxLights', 'gl_MaxClipPlanes', 'gl_MaxTextureUnits', - 'gl_MaxTextureCoords', 'gl_MaxVertexAttribs', 'gl_MaxVaryingFloats', - 'gl_MaxVertexUniformComponents', 'gl_MaxVertexTextureImageUnits', - 'gl_MaxCombinedTextureImageUnits', 'gl_MaxTextureImageUnits', - 'gl_MaxFragmentUniformComponents', 'gl_MaxDrawBuffers', 'gl_Point', - 'gl_ModelViewMatrix', 'gl_ProjectionMatrix', 'gl_FrontMaterial', - 'gl_ModelViewProjectionMatrix', 'gl_TextureMatrix', 'gl_ClipPlane', - 'gl_NormalMatrix', 'gl_ModelViewMatrixInverse', 'gl_BackMaterial', - 'gl_ProjectionMatrixInverse', 'gl_ModelViewProjectionMatrixInverse', - 'gl_TextureMatrixInverse', 'gl_ModelViewMatrixTranspose', 'gl_Fog', - 'gl_ProjectionMatrixTranspose', 'gl_NormalScale', 'gl_DepthRange', - 'gl_odelViewProjectionMatrixTranspose', 'gl_TextureMatrixTranspose', - 'gl_ModelViewMatrixInverseTranspose', 'gl_LightSource', - 'gl_ProjectionMatrixInverseTranspose', 'gl_LightModel', - 'gl_ModelViewProjectionMatrixInverseTranspose', 'gl_TexCoord', - 'gl_TextureMatrixInverseTranspose', 'gl_TextureEnvColor', - 'gl_FrontLightModelProduct', 'gl_BackLightModelProduct', - 'gl_FrontLightProduct', 'gl_BackLightProduct', 'gl_ObjectPlaneS', - 'gl_ObjectPlaneT', 'gl_ObjectPlaneR', 'gl_ObjectPlaneQ', - 'gl_EyePlaneS', 'gl_EyePlaneT', 'gl_EyePlaneR', 'gl_EyePlaneQ', - 'gl_FrontColor', 'gl_BackColor', 'gl_FrontSecondaryColor', - 'gl_BackSecondaryColor', 'gl_FogFragCoord', 'gl_PointCoord' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', - '&', '?', ':', '.', '|', ';', ',', '<', '>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #333399; font-weight: bold;', - 3 => 'color: #000066; font-weight: bold;', - 4 => 'color: #333399; font-weight: bold;', - 5 => 'color: #993333; font-weight: bold;', - 6 => 'color: #551111;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #009900;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000066;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000ff;' - ), - 'METHODS' => array( - 1 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000066;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'OOLANG' => array( - 'MATCH_BEFORE' => '', - 'MATCH_AFTER' => '[a-zA-Z_][a-zA-Z0-9_]*', - 'MATCH_SPACES' => '[\s]*' - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/gml.php b/library/Vendors/geshi/geshi/gml.php deleted file mode 100644 index 3f8a06c4..00000000 --- a/library/Vendors/geshi/geshi/gml.php +++ /dev/null @@ -1,506 +0,0 @@ -5 and KEYWORDS=>6 sections (actually, they were empty). - * I was planning of using those for the GML functions available only in the - * registered version of the program, but not anymore. - * - * 2005/06/26 (1.0.3) - * - First Release. - * - * TODO (updated 2005/11/11) - * ------------------------- - * - Test it for a while and make the appropiate corrections. - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'GML', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'"), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - // language keywords - 1 => array( - 'break', 'continue', 'do', 'until', 'if', 'else', - 'exit', 'for', 'repeat', 'return', 'switch', - 'case', 'default', 'var', 'while', 'with', 'div', 'mod', - // GML Language overview - 'self', 'other', 'all', 'noone', 'global', - ), - // modifiers and built-in variables - 2 => array( - // Game play - 'x','y','xprevious','yprevious','xstart','ystart','hspeed','vspeed','direction','speed', - 'friction','gravity','gravity_direction', - 'path_index','path_position','path_positionprevious','path_speed','path_orientation', - 'path_endaction', - 'object_index','id','mask_index','solid','persistent','instance_count','instance_id', - 'room_speed','fps','current_time','current_year','current_month','current_day','current_weekday', - 'current_hour','current_minute','current_second','alarm','timeline_index','timeline_position', - 'timeline_speed', - 'room','room_first','room_last','room_width','room_height','room_caption','room_persistent', - 'score','lives','health','show_score','show_lives','show_health','caption_score','caption_lives', - 'caption_health', - 'event_type','event_number','event_object','event_action', - 'error_occurred','error_last', - // User interaction - 'keyboard_lastkey','keyboard_key','keyboard_lastchar','keyboard_string', - 'mouse_x','mouse_y','mouse_button','mouse_lastbutton', - // Game Graphics - 'sprite_index','sprite_width','sprite_height','sprite_xoffset','sprite_yoffset', - 'image_number','image_index','image_speed','image_xscale','image_yscale','image_angle', - 'image_alpha','image_blend','bbox_left','bbox_right','bbox_top','bbox_bottom', - 'background_color','background_showcolor','background_visible','background_foreground', - 'background_index','background_x','background_y','background_width','background_height', - 'background_htiled','background_vtiled','background_xscale','background_yscale', - 'background_hspeed','background_vspeed','background_blend','background_alpha', - 'background','left, top, width, height','depth','visible','xscale','yscale','blend','alpha', - 'view_enabled','view_current','view_visible','view_yview','view_wview','view_hview','view_xport', - 'view_yport','view_wport','view_hport','view_angle','view_hborder','view_vborder','view_hspeed', - 'view_vspeed','view_object', - 'transition_kind', - // Files, registry and executing programs - 'game_id','working_directory','temp_directory', - 'secure_mode', - // Creating particles - 'xmin', 'xmax', 'ymin', 'ymax','shape','distribution','particle type','number', - 'force','dist','kind','additive', 'parttype1', 'parttype2' - ), - // functions - 3 => array( - // Computing things - 'random','choose','abs','sign','round','floor','ceil','frac','sqrt','sqr','power','exp','ln', - 'log2','log10','logn','sin','cos','tan','arcsin','arccos','arctan','arctan2','degtorad', - 'radtodeg','min','max','mean','median','point_distance','point_direction','lengthdir_x', - 'lengthdir_y','is_real','is_string', - 'chr','ord','real','string','string_format','string_length','string_pos','string_copy', - 'string_char_at','string_delete','string_insert','string_replace','string_replace_all', - 'string_count','string_lower','string_upper','string_repeat','string_letters','string_digits', - 'string_lettersdigits','clipboard_has_text','clipboard_get_text','clipboard_set_text', - 'date_current_datetime','date_current_date','date_current_time','date_create_datetime', - 'date_create_date','date_create_time','date_valid_datetime','date_valid_date','date_valid_time', - 'date_inc_year','date_inc_month','date_inc_week','date_inc_day','date_inc_hour', - 'date_inc_minute','date_inc_second','date_get_year','date_get_month','date_get_week', - 'date_get_day','date_get_hour', 'date_get_minute','date_get_second','date_get_weekday', - 'date_get_day_of_year','date_get_hour_of_year','date_get_minute_of_year', - 'date_get_second_of_year','date_year_span','date_month_span','date_week_span','date_day_span', - 'date_hour_span','date_minute_span','date_second_span','date_compare_datetime', - 'date_compare_date','date_compare_time','date_date_of','date_time_of','date_datetime_string', - 'date_date_string','date_time_string','date_days_in_month','date_days_in_year','date_leap_year', - 'date_is_today', - // Game play - 'motion_set','motion_add','place_free','place_empty','place_meeting','place_snapped', - 'move_random','move_snap','move_wrap','move_towards_point','move_bounce_solid','move_bounce_all', - 'move_contact_solid','move_contact_all','move_outside_solid','move_outside_all', - 'distance_to_point','distance_to_object','position_empty','position_meeting', - 'path_start','path_end', - 'mp_linear_step','mp_linear_step_object','mp_potential_step','mp_potential_step_object', - 'mp_potential_settings','mp_linear_path','mp_linear_path_object', 'mp_potential_path', - 'mp_potential_path_object','mp_grid_create','mp_grid_destroy','mp_grid_clear_all', - 'mp_grid_clear_cell','mp_grid_clear_rectangle','mp_grid_add_cell','mp_grid_add_rectangle', - 'mp_grid_add_instances','mp_grid_path','mp_grid_draw', - 'collision_point','collision_rectangle','collision_circle','collision_ellipse','collision_line', - 'instance_find','instance_exists','instance_number','instance_position','instance_nearest', - 'instance_furthest','instance_place','instance_create','instance_copy','instance_destroy', - 'instance_change','position_destroy','position_change', - 'instance_deactivate_all','instance_deactivate_object','instance_deactivate_region', - 'instance_activate_all','instance_activate_object','instance_activate_region', - 'sleep', - 'room_goto','room_goto_previous','room_goto_next','room_restart','room_previous','room_next', - 'game_end','game_restart','game_save','game_load', - 'event_perform', 'event_perform_object','event_user','event_inherited', - 'show_debug_message','variable_global_exists','variable_local_exists','variable_global_get', - 'variable_global_array_get','variable_global_array2_get','variable_local_get', - 'variable_local_array_get','variable_local_array2_get','variable_global_set', - 'variable_global_array_set','variable_global_array2_set','variable_local_set', - 'variable_local_array_set','variable_local_array2_set','set_program_priority', - // User interaction - 'keyboard_set_map','keyboard_get_map','keyboard_unset_map','keyboard_check', - 'keyboard_check_pressed','keyboard_check_released','keyboard_check_direct', - 'keyboard_get_numlock','keyboard_set_numlock','keyboard_key_press','keyboard_key_release', - 'keyboard_clear','io_clear','io_handle','keyboard_wait', - 'mouse_check_button','mouse_check_button_pressed','mouse_check_button_released','mouse_clear', - 'mouse_wait', - 'joystick_exists','joystick_name','joystick_axes','joystick_buttons','joystick_has_pov', - 'joystick_direction','joystick_check_button','joystick_xpos','joystick_ypos','joystick_zpos', - 'joystick_rpos','joystick_upos','joystick_vpos','joystick_pov', - // Game Graphics - 'draw_sprite','draw_sprite_stretched','draw_sprite_tiled','draw_sprite_part','draw_background', - 'draw_background_stretched','draw_background_tiled','draw_background_part','draw_sprite_ext', - 'draw_sprite_stretched_ext','draw_sprite_tiled_ext','draw_sprite_part_ext','draw_sprite_general', - 'draw_background_ext','draw_background_stretched_ext','draw_background_tiled_ext', - 'draw_background_part_ext','draw_background_general', - 'draw_clear','draw_clear_alpha','draw_point','draw_line','draw_rectangle','draw_roundrect', - 'draw_triangle','draw_circle','draw_ellipse','draw_arrow','draw_button','draw_path', - 'draw_healthbar','draw_set_color','draw_set_alpha','draw_get_color','draw_get_alpha', - 'make_color_rgb','make_color_hsv','color_get_red','color_get_green','color_get_blue', - 'color_get_hue','color_get_saturation','color_get_value','merge_color','draw_getpixel', - 'screen_save','screen_save_part', - 'draw_set_font','draw_set_halign','draw_set_valign','draw_text','draw_text_ext','string_width', - 'string_height','string_width_ext','string_height_ext','draw_text_transformed', - 'draw_text_ext_transformed','draw_text_color','draw_text_ext_color', - 'draw_text_transformed_color','draw_text_ext_transformed_color', - 'draw_point_color','draw_line_color','draw_rectangle_color','draw_roundrect_color', - 'draw_triangle_color','draw_circle_color','draw_ellipse_color','draw_primitive_begin', - 'draw_vertex','draw_vertex_color','draw_primitive_end','sprite_get_texture', - 'background_get_texture','texture_preload','texture_set_priority', - 'texture_get_width','texture_get_height','draw_primitive_begin_texture','draw_vertex_texture', - 'draw_vertex_texture_color','texture_set_interpolation', - 'texture_set_blending','texture_set_repeat','draw_set_blend_mode','draw_set_blend_mode_ext', - 'surface_create','surface_free','surface_exists','surface_get_width','surface_get_height', - 'surface_get_texture','surface_set_target','surface_reset_target','surface_getpixel', - 'surface_save','surface_save_part','draw_surface','draw_surface_stretched','draw_surface_tiled', - 'draw_surface_part','draw_surface_ext','draw_surface_stretched_ext','draw_surface_tiled_ext', - 'draw_surface_part_ext','draw_surface_general','surface_copy','surface_copy_part', - 'tile_add','tile_delete','tile_exists','tile_get_x','tile_get_y','tile_get_left','tile_get_top', - 'tile_get_width','tile_get_height','tile_get_depth','tile_get_visible','tile_get_xscale', - 'tile_get_yscale','tile_get_background','tile_get_blend','tile_get_alpha','tile_set_position', - 'tile_set_region','tile_set_background','tile_set_visible','tile_set_depth','tile_set_scale', - 'tile_set_blend','tile_set_alpha','tile_layer_hide','tile_layer_show','tile_layer_delete', - 'tile_layer_shift','tile_layer_find','tile_layer_delete_at','tile_layer_depth', - 'display_get_width','display_get_height','display_get_colordepth','display_get_frequency', - 'display_set_size','display_set_colordepth','display_set_frequency','display_set_all', - 'display_test_all','display_reset','display_mouse_get_x','display_mouse_get_y','display_mouse_set', - 'window_set_visible','window_get_visible','window_set_fullscreen','window_get_fullscreen', - 'window_set_showborder','window_get_showborder','window_set_showicons','window_get_showicons', - 'window_set_stayontop','window_get_stayontop','window_set_sizeable','window_get_sizeable', - 'window_set_caption','window_get_caption','window_set_cursor', 'window_get_cursor', - 'window_set_color','window_get_color','window_set_region_scale','window_get_region_scale', - 'window_set_position','window_set_size','window_set_rectangle','window_center','window_default', - 'window_get_x','window_get_y','window_get_width','window_get_height','window_mouse_get_x', - 'window_mouse_get_y','window_mouse_set', - 'window_set_region_size','window_get_region_width','window_get_region_height', - 'window_view_mouse_get_x','window_view_mouse_get_y','window_view_mouse_set', - 'window_views_mouse_get_x','window_views_mouse_get_y','window_views_mouse_set', - 'screen_redraw','screen_refresh','set_automatic_draw','set_synchronization','screen_wait_vsync', - // Sound and music) - 'sound_play','sound_loop','sound_stop','sound_stop_all','sound_isplaying','sound_volume', - 'sound_global_volume','sound_fade','sound_pan','sound_background_tempo','sound_set_search_directory', - 'sound_effect_set','sound_effect_chorus','sound_effect_echo', 'sound_effect_flanger', - 'sound_effect_gargle','sound_effect_reverb','sound_effect_compressor','sound_effect_equalizer', - 'sound_3d_set_sound_position','sound_3d_set_sound_velocity','sound_3d_set_sound_distance', - 'sound_3d_set_sound_cone', - 'cd_init','cd_present','cd_number','cd_playing','cd_paused','cd_track','cd_length', - 'cd_track_length','cd_position','cd_track_position','cd_play','cd_stop','cd_pause','cd_resume', - 'cd_set_position','cd_set_track_position','cd_open_door','cd_close_door','MCI_command', - // Splash screens, highscores, and other pop-ups - 'show_text','show_image','show_video','show_info','load_info', - 'show_message','show_message_ext','show_question','get_integer','get_string', - 'message_background','message_alpha','message_button','message_text_font','message_button_font', - 'message_input_font','message_mouse_color','message_input_color','message_caption', - 'message_position','message_size','show_menu','show_menu_pos','get_color','get_open_filename', - 'get_save_filename','get_directory','get_directory_alt','show_error', - 'highscore_show','highscore_set_background','highscore_set_border','highscore_set_font', - 'highscore_set_colors','highscore_set_strings','highscore_show_ext','highscore_clear', - 'highscore_add','highscore_add_current','highscore_value','highscore_name','draw_highscore', - // Resources - 'sprite_exists','sprite_get_name','sprite_get_number','sprite_get_width','sprite_get_height', - 'sprite_get_transparent','sprite_get_smooth','sprite_get_preload','sprite_get_xoffset', - 'sprite_get_yoffset','sprite_get_bbox_left','sprite_get_bbox_right','sprite_get_bbox_top', - 'sprite_get_bbox_bottom','sprite_get_bbox_mode','sprite_get_precise', - 'sound_exists','sound_get_name','sound_get_kind','sound_get_preload','sound_discard', - 'sound_restore', - 'background_exists','background_get_name','background_get_width','background_get_height', - 'background_get_transparent','background_get_smooth','background_get_preload', - 'font_exists','font_get_name','font_get_fontname','font_get_bold','font_get_italic', - 'font_get_first','font_get_last', - 'path_exists','path_get_name','path_get_length','path_get_kind','path_get_closed', - 'path_get_precision','path_get_number','path_get_point_x','path_get_point_y', - 'path_get_point_speed','path_get_x','path_get_y','path_get_speed', - 'script_exists','script_get_name','script_get_text', - 'timeline_exists','timeline_get_name', - 'object_exists','object_get_name','object_get_sprite','object_get_solid','object_get_visible', - 'object_get_depth','object_get_persistent','object_get_mask','object_get_parent', - 'object_is_ancestor', - 'room_exists','room_get_name', - // Changing resources - 'sprite_set_offset','sprite_set_bbox_mode','sprite_set_bbox','sprite_set_precise', - 'sprite_duplicate','sprite_assign','sprite_merge','sprite_add','sprite_replace', - 'sprite_create_from_screen','sprite_add_from_screen','sprite_create_from_surface', - 'sprite_add_from_surface','sprite_delete','sprite_set_alpha_from_sprite', - 'sound_add','sound_replace','sound_delete', - 'background_duplicate','background_assign','background_add','background_replace', - 'background_create_color','background_create_gradient','background_create_from_screen', - 'background_create_from_surface','background_delete','background_set_alpha_from_background', - 'font_add','font_add_sprite','font_replace_sprite','font_delete', - 'path_set_kind','path_set_closed','path_set_precision','path_add','path_delete','path_duplicate', - 'path_assign','path_append','path_add_point','path_insert_point','path_change_point', - 'path_delete_point','path_clear_points','path_reverse','path_mirror','path_flip','path_rotate', - 'path_scale','path_shift', - 'execute_string','execute_file','script_execute', - 'timeline_add','timeline_delete','timeline_moment_add','timeline_moment_clear', - 'object_set_sprite','object_set_solid','object_set_visible','object_set_depth', - 'object_set_persistent','object_set_mask','object_set_parent','object_add','object_delete', - 'object_event_add','object_event_clear', - 'room_set_width','room_set_height','room_set_caption','room_set_persistent','room_set_code', - 'room_set_background_color','room_set_background','room_set_view','room_set_view_enabled', - 'room_add','room_duplicate','room_assign','room_instance_add','room_instance_clear', - 'room_tile_add','room_tile_add_ext','room_tile_clear', - // Files, registry and executing programs - 'file_text_open_read','file_text_open_write','file_text_open_append','file_text_close', - 'file_text_write_string','file_text_write_real','file_text_writeln','file_text_read_string', - 'file_text_read_real','file_text_readln','file_text_eof','file_exists','file_delete', - 'file_rename','file_copy','directory_exists','directory_create','file_find_first', - 'file_find_next','file_find_close','file_attributes', 'filename_name','filename_path', - 'filename_dir','filename_drive','filename_ext','filename_change_ext','file_bin_open', - 'file_bin_rewrite','file_bin_close','file_bin_size','file_bin_position','file_bin_seek', - 'file_bin_write_byte','file_bin_read_byte','parameter_count','parameter_string', - 'environment_get_variable', - 'registry_write_string','registry_write_real','registry_read_string','registry_read_real', - 'registry_exists','registry_write_string_ext','registry_write_real_ext', - 'registry_read_string_ext','registry_read_real_ext','registry_exists_ext','registry_set_root', - 'ini_open','ini_close','ini_read_string','ini_read_real','ini_write_string','ini_write_real', - 'ini_key_exists','ini_section_exists','ini_key_delete','ini_section_delete', - 'execute_program','execute_shell', - // Data structures - 'ds_stack_create','ds_stack_destroy','ds_stack_clear','ds_stack_size','ds_stack_empty', - 'ds_stack_push','ds_stack_pop','ds_stack_top', - 'ds_queue_create','ds_queue_destroy','ds_queue_clear','ds_queue_size','ds_queue_empty', - 'ds_queue_enqueue','ds_queue_dequeue','ds_queue_head','ds_queue_tail', - 'ds_list_create','ds_list_destroy','ds_list_clear','ds_list_size','ds_list_empty','ds_list_add', - 'ds_list_insert','ds_list_replace','ds_list_delete','ds_list_find_index','ds_list_find_value', - 'ds_list_sort', - 'ds_map_create','ds_map_destroy','ds_map_clear','ds_map_size','ds_map_empty','ds_map_add', - 'ds_map_replace','ds_map_delete','ds_map_exists','ds_map_find_value','ds_map_find_previous', - 'ds_map_find_next','ds_map_find_first','ds_map_find_last', - 'ds_priority_create','ds_priority_destroy','ds_priority_clear','ds_priority_size', - 'ds_priority_empty','ds_priority_add','ds_priority_change_priority','ds_priority_find_priority', - 'ds_priority_delete_value','ds_priority_delete_min','ds_priority_find_min', - 'ds_priority_delete_max','ds_priority_find_max', - 'ds_grid_create','ds_grid_destroy','ds_grid_resize','ds_grid_width','ds_grid_height', - 'ds_grid_clear','ds_grid_set','ds_grid_add','ds_grid_multiply','ds_grid_set_region', - 'ds_grid_add_region','ds_grid_multiply_region','ds_grid_set_disk','ds_grid_add_disk', - 'ds_grid_multiply_disk','ds_grid_get','ds_grid_get_sum','ds_grid_get_max','ds_grid_get_min', - 'ds_grid_get_mean','ds_grid_get_disk_sum','ds_grid_get_disk_min','ds_grid_get_disk_max', - 'ds_grid_get_disk_mean','ds_grid_value_exists','ds_grid_value_x','ds_grid_value_y', - 'ds_grid_value_disk_exists','ds_grid_value_disk_x','ds_grid_value_disk_y', - // Creating particles - 'effect_create_below','effect_create_above','effect_clear', - 'part_type_create','part_type_destroy','part_type_exists','part_type_clear','part_type_shape', - 'part_type_sprite','part_type_size','part_type_scale', - 'part_type_orientation','part_type_color1','part_type_color2','part_type_color3', - 'part_type_color_mix','part_type_color_rgb','part_type_color_hsv', - 'part_type_alpha1','part_type_alpha2','part_type_alpha3','part_type_blend','part_type_life', - 'part_type_step','part_type_death','part_type_speed','part_type_direction','part_type_gravity', - 'part_system_create','part_system_destroy','part_system_exists','part_system_clear', - 'part_system_draw_order','part_system_depth','part_system_position', - 'part_system_automatic_update','part_system_automatic_draw','part_system_update', - 'part_system_drawit','part_particles_create','part_particles_create_color', - 'part_particles_clear','part_particles_count', - 'part_emitter_create','part_emitter_destroy','part_emitter_destroy_all','part_emitter_exists', - 'part_emitter_clear','part_emitter_region','part_emitter_burst','part_emitter_stream', - 'part_attractor_create','part_attractor_destroy','part_attractor_destroy_all', - 'part_attractor_exists','part_attractor_clear','part_attractor_position','part_attractor_force', - 'part_destroyer_create','part_destroyer_destroy','part_destroyer_destroy_all', - 'part_destroyer_exists','part_destroyer_clear','part_destroyer_region', - 'part_deflector_create','part_deflector_destroy','part_deflector_destroy_all', - 'part_deflector_exists','part_deflector_clear','part_deflector_region','part_deflector_kind', - 'part_deflector_friction', - 'part_changer_create','part_changer_destroy','part_changer_destroy_all','part_changer_exists', - 'part_changer_clear','part_changer_region','part_changer_types','part_changer_kind', - // Multiplayer games - 'mplay_init_ipx','mplay_init_tcpip','mplay_init_modem','mplay_init_serial', - 'mplay_connect_status','mplay_end','mplay_ipaddress', - 'mplay_session_create','mplay_session_find','mplay_session_name','mplay_session_join', - 'mplay_session_mode','mplay_session_status','mplay_session_end', - 'mplay_player_find','mplay_player_name','mplay_player_id', - 'mplay_data_write','mplay_data_read','mplay_data_mode', - 'mplay_message_send','mplay_message_send_guaranteed','mplay_message_receive','mplay_message_id', - 'mplay_message_value','mplay_message_player','mplay_message_name','mplay_message_count', - 'mplay_message_clear', - // Using DLL's - 'external_define','external_call','external_free','window_handle', - // 3D Graphics - 'd3d_start','d3d_end','d3d_set_hidden','d3d_set_perspective', - 'd3d_set_depth', - 'd3d_primitive_begin','d3d_vertex','d3d_vertex_color','d3d_primitive_end', - 'd3d_primitive_begin_texture','d3d_vertex_texture','d3d_vertex_texture_color','d3d_set_culling', - 'd3d_draw_block','d3d_draw_cylinder','d3d_draw_cone','d3d_draw_ellipsoid','d3d_draw_wall', - 'd3d_draw_floor', - 'd3d_set_projection','d3d_set_projection_ext','d3d_set_projection_ortho', - 'd3d_set_projection_perspective', - 'd3d_transform_set_identity','d3d_transform_set_translation','d3d_transform_set_scaling', - 'd3d_transform_set_rotation_x','d3d_transform_set_rotation_y','d3d_transform_set_rotation_z', - 'd3d_transform_set_rotation_axis','d3d_transform_add_translation','d3d_transform_add_scaling', - 'd3d_transform_add_rotation_x','d3d_transform_add_rotation_y','d3d_transform_add_rotation_z', - 'd3d_transform_add_rotation_axis','d3d_transform_stack_clear','d3d_transform_stack_empty', - 'd3d_transform_stack_push','d3d_transform_stack_pop','d3d_transform_stack_top', - 'd3d_transform_stack_discard', - 'd3d_set_fog', - 'd3d_set_lighting','d3d_set_shading','d3d_light_define_direction','d3d_light_define_point', - 'd3d_light_enable','d3d_vertex_normal','d3d_vertex_normal_color','d3d_vertex_normal_texture', - 'd3d_vertex_normal_texture_color', - 'd3d_model_create','d3d_model_destroy','d3d_model_clear','d3d_model_save','d3d_model_load', - 'd3d_model_draw','d3d_model_primitive_begin','d3d_model_vertex','d3d_model_vertex_color', - 'd3d_model_vertex_texture','d3d_model_vertex_texture_color','d3d_model_vertex_normal', - 'd3d_model_vertex_normal_color','d3d_model_vertex_normal_texture', - 'd3d_model_vertex_normal_texture_color','d3d_model_primitive_end','d3d_model_block', - 'd3d_model_cylinder','d3d_model_cone','d3d_model_ellipsoid','d3d_model_wall','d3d_model_floor' - ), - // constants - 4 => array( - 'true', 'false', 'pi', - 'ev_destroy','ev_step','ev_alarm','ev_keyboard','ev_mouse','ev_collision','ev_other','ev_draw', - 'ev_keypress','ev_keyrelease','ev_left_button','ev_right_button','ev_middle_button', - 'ev_no_button','ev_left_press','ev_right_press','ev_middle_press','ev_left_release', - 'ev_right_release','ev_middle_release','ev_mouse_enter','ev_mouse_leave','ev_mouse_wheel_up', - 'ev_mouse_wheel_down','ev_global_left_button','ev_global_right_button','ev_global_middle_button', - 'ev_global_left_press','ev_global_right_press','ev_global_middle_press','ev_global_left_release', - 'ev_global_right_release','ev_global_middle_release','ev_joystick1_left','ev_joystick1_right', - 'ev_joystick1_up','ev_joystick1_down','ev_joystick1_button1','ev_joystick1_button2', - 'ev_joystick1_button3','ev_joystick1_button4','ev_joystick1_button5','ev_joystick1_button6', - 'ev_joystick1_button7','ev_joystick1_button8','ev_joystick2_left','ev_joystick2_right', - 'ev_joystick2_up','ev_joystick2_down','ev_joystick2_button1','ev_joystick2_button2', - 'ev_joystick2_button3','ev_joystick2_button4','ev_joystick2_button5','ev_joystick2_button6', - 'ev_joystick2_button7','ev_joystick2_button8', - 'ev_outside','ev_boundary','ev_game_start','ev_game_end','ev_room_start','ev_room_end', - 'ev_no_more_lives','ev_no_more_health','ev_animation_end','ev_end_of_path','ev_user0','ev_user1', - 'ev_user2','ev_user3','ev_user4','ev_user5','ev_user6','ev_user7','ev_user8','ev_user9', - 'ev_user10','ev_user11','ev_user12','ev_user13','ev_user14','ev_user15','ev_step_normal', - 'ev_step_begin','ev_step_end', - 'vk_nokey','vk_anykey','vk_left','vk_right','vk_up','vk_down','vk_enter','vk_escape','vk_space', - 'vk_shift','vk_control','vk_alt','vk_backspace','vk_tab','vk_home','vk_end','vk_delete', - 'vk_insert','vk_pageup','vk_pagedown','vk_pause','vk_printscreen', - 'vk_f1','vk_f2','vk_f3','vk_f4','vk_f5','vk_f6','vk_f7','vk_f8','vk_f9','vk_f10','vk_f11','vk_f12', - 'vk_numpad0','vk_numpad1','vk_numpad2','vk_numpad3','vk_numpad4','vk_numpad5','vk_numpad6', - 'vk_numpad7','vk_numpad8','vk_numpad9', 'vk_multiply','vk_divide','vk_add','vk_subtract', - 'vk_decimal','vk_lshift','vk_lcontrol','vk_lalt','vk_rshift','vk_rcontrol','vk_ralt', - 'c_aqua','c_black','c_blue','c_dkgray','c_fuchsia','c_gray','c_green','c_lime','c_ltgray', - 'c_maroon','c_navy','c_olive','c_purple','c_red','c_silver','c_teal','c_white','c_yellow', - 'fa_left', 'fa_center','fa_right','fa_top','fa_middle','fa_bottom', - 'pr_pointlist','pr_linelist','pr_linestrip','pr_trianglelist','pr_trianglestrip', - 'pr_trianglefan', - 'cr_none','cr_arrow','cr_cross','cr_beam','cr_size_nesw','cr_size_ns','cr_size_nwse', - 'cr_size_we','cr_uparrow','cr_hourglass','cr_drag','cr_nodrop','cr_hsplit','cr_vsplit', - 'cr_multidrag','cr_sqlwait','cr_no','cr_appstart','cr_help','cr_handpoint','cr_size_all', - 'se_chorus','se_echo','se_flanger','se_gargle','se_reverb','se_compressor','se_equalizer', - 'fa_readonly','fa_hidden','fa_sysfile','fa_volumeid','fa_directory','fa_archive', - 'pt_shape_pixel','pt_shape_disk','pt_shape_square','pt_shape_line','pt_shape_star', - 'pt_shape_circle','pt_shape_ring','pt_shape_sphere','pt_shape_flare','pt_shape_spark', - 'pt_shape_explosion','pt_shape_cloud','pt_shape_smoke','pt_shape_snow', - 'ps_shape_rectangle','ps_shape_ellipse ','ps_shape_diamond','ps_shape_line', - 'ps_distr_linear','ps_distr_gaussian','ps_force_constant','ps_force_linear','ps_force_quadratic', - 'ps_deflect_horizontal', 'ps_deflect_vertical', - 'ps_change_motion','ps_change_shape','ps_change_all' - ), - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', - '&&', '||', '^^', '&', '|', '^', - '<', '<=', '==', '!=', '>', '>=', '=', - '<<', '>>', - '+=', '-=', '*=', '/=', - '+', '-', '*', '/', - '!', '~', ',', ';' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'font-weight: bold; color: #000000;', - 2 => 'font-weight: bold; color: #000000;', - 3 => 'color: navy;', - 4 => 'color: #663300;', - ), - 'COMMENTS' => array( - 1 => 'font-style: italic; color: green;', - 'MULTI' => 'font-style: italic; color: green;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' //'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66; font-weight: bold;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/gnuplot.php b/library/Vendors/geshi/geshi/gnuplot.php deleted file mode 100644 index 980561d3..00000000 --- a/library/Vendors/geshi/geshi/gnuplot.php +++ /dev/null @@ -1,296 +0,0 @@ - 'Gnuplot', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('`', '"', "'"), - 'ESCAPE_CHAR' => '\\', - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | - GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_SCI_SHORT | - GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - // copy output of help command, indent properly and use this replace regexp: - // ([a-z0-9_\-]+)(( )+|$) => '\1',\3 - - // commands as found in `help commands` - 1 => array( - 'bind', 'call', 'cd', 'clear', - 'exit', 'fit', 'help', 'history', - 'if', 'load', 'lower', 'pause', - 'plot', 'print', 'pwd', 'quit', - 'raise', 'replot', 'reread', 'reset', - 'save', 'set', 'shell', 'show', - 'splot', 'system', 'test', 'unset', - 'update' - ), - 2 => array( - // set commands as returned by `help set` - 'angles', 'arrow', 'autoscale', 'bars', - 'bmargin', 'border', 'boxwidth', 'cbdata', - 'cbdtics', 'cblabel', 'cbmtics', 'cbrange', - 'cbtics', 'clabel', 'clip', 'cntrparam', - 'colorbox', 'contour', 'datafile', 'date_specifiers', - 'decimalsign', 'dgrid3d', 'dummy', 'encoding', - 'fontpath', 'format', 'grid', - 'hidden3d', 'historysize', 'isosamples', 'key', - 'label', 'lmargin', 'loadpath', 'locale', - 'log', 'logscale', 'macros', 'mapping', - 'margin', 'missing', 'mouse', 'multiplot', - 'mx2tics', 'mxtics', 'my2tics', 'mytics', - 'mztics', 'object', 'offsets', 'origin', - 'output', 'palette', 'parametric', 'pm3d', - 'pointsize', 'polar', 'rmargin', - 'rrange', 'samples', 'size', 'style', - 'surface', 'table', 'term', 'terminal', - 'termoption', 'tics', 'ticscale', 'ticslevel', - 'time_specifiers', 'timefmt', 'timestamp', 'title', - 'trange', 'urange', 'view', - 'vrange', 'x2data', 'x2dtics', 'x2label', - 'x2mtics', 'x2range', 'x2tics', 'x2zeroaxis', - 'xdata', 'xdtics', 'xlabel', 'xmtics', - 'xrange', 'xtics', 'xyplane', 'xzeroaxis', - 'y2data', 'y2dtics', 'y2label', 'y2mtics', - 'y2range', 'y2tics', 'y2zeroaxis', 'ydata', - 'ydtics', 'ylabel', 'ymtics', 'yrange', - 'ytics', 'yzeroaxis', 'zdata', 'zdtics', - 'zero', 'zeroaxis', 'zlabel', 'zmtics', - 'zrange', 'ztics', 'zzeroaxis', - // same but with leading no - 'noangles', 'noarrow', 'noautoscale', 'nobars', - 'nobmargin', 'noborder', 'noboxwidth', 'nocbdata', - 'nocbdtics', 'nocblabel', 'nocbmtics', 'nocbrange', - 'nocbtics', 'noclabel', 'noclip', 'nocntrparam', - 'nocolorbox', 'nocontour', 'nodatafile', 'nodate_specifiers', - 'nodecimalsign', 'nodgrid3d', 'nodummy', 'noencoding', - 'nofit', 'nofontpath', 'noformat', 'nogrid', - 'nohidden3d', 'nohistorysize', 'noisosamples', 'nokey', - 'nolabel', 'nolmargin', 'noloadpath', 'nolocale', - 'nolog', 'nologscale', 'nomacros', 'nomapping', - 'nomargin', 'nomissing', 'nomouse', 'nomultiplot', - 'nomx2tics', 'nomxtics', 'nomy2tics', 'nomytics', - 'nomztics', 'noobject', 'nooffsets', 'noorigin', - 'nooutput', 'nopalette', 'noparametric', 'nopm3d', - 'nopointsize', 'nopolar', 'noprint', 'normargin', - 'norrange', 'nosamples', 'nosize', 'nostyle', - 'nosurface', 'notable', 'noterm', 'noterminal', - 'notermoption', 'notics', 'noticscale', 'noticslevel', - 'notime_specifiers', 'notimefmt', 'notimestamp', 'notitle', - 'notmargin', 'notrange', 'nourange', 'noview', - 'novrange', 'nox2data', 'nox2dtics', 'nox2label', - 'nox2mtics', 'nox2range', 'nox2tics', 'nox2zeroaxis', - 'noxdata', 'noxdtics', 'noxlabel', 'noxmtics', - 'noxrange', 'noxtics', 'noxyplane', 'noxzeroaxis', - 'noy2data', 'noy2dtics', 'noy2label', 'noy2mtics', - 'noy2range', 'noy2tics', 'noy2zeroaxis', 'noydata', - 'noydtics', 'noylabel', 'noymtics', 'noyrange', - 'noytics', 'noyzeroaxis', 'nozdata', 'nozdtics', - 'nozero', 'nozeroaxis', 'nozlabel', 'nozmtics', - 'nozrange', 'noztics', 'nozzeroaxis', - ), - 3 => array( - // predefined variables - 'pi', 'NaN', 'GNUTERM', - 'GPVAL_X_MIN', 'GPVAL_X_MAX', 'GPVAL_Y_MIN', 'GPVAL_Y_MAX', - 'GPVAL_TERM', 'GPVAL_TERMOPTIONS', 'GPVAL_OUTPUT', - 'GPVAL_VERSION', 'GPVAL_PATcHLEVEL', 'GPVAL_COMPILE_OPTIONS', - 'MOUSE_KEY', 'MOUSE_X', 'MOUSE_X2', 'MOUSE_Y', 'MOUSE_Y2', - 'MOUSE_BUTTON', 'MOUSE_SHIFT', 'MOUSE_ALT', 'MOUSE_CTRL' - ), - 4 => array( - // predefined functions `help functions` - 'abs', 'acos', 'acosh', 'arg', - 'asin', 'asinh', 'atan', 'atan2', - 'atanh', 'besj0', 'besj1', 'besy0', - 'besy1', 'ceil', 'column', 'cos', - 'cosh', 'defined', 'erf', 'erfc', - 'exists', 'exp', 'floor', 'gamma', - 'gprintf', 'ibeta', 'igamma', 'imag', - 'int', 'inverf', 'invnorm', 'lambertw', - 'lgamma', 'log10', 'norm', - 'rand', 'random', 'real', 'sgn', - 'sin', 'sinh', 'sprintf', 'sqrt', - 'stringcolumn', 'strlen', 'strstrt', 'substr', - 'tan', 'tanh', 'timecolumn', - 'tm_hour', 'tm_mday', 'tm_min', 'tm_mon', - 'tm_sec', 'tm_wday', 'tm_yday', 'tm_year', - 'valid', 'word', 'words', - ), - 5 => array( - // mixed arguments - // there is no sane way to get these ones easily... - 'autofreq', 'x', 'y', 'z', - 'lt', 'linetype', 'lw', 'linewidth', 'ls', 'linestyle', - 'out', 'rotate by', 'screen', - 'enhanced', 'via', - // `help set key` - 'on', 'off', 'default', 'inside', 'outside', 'tmargin', - 'at', 'left', 'right', 'center', 'top', 'bottom', 'vertical', 'horizontal', 'Left', 'Right', - 'noreverse', 'reverse', 'noinvert', 'invert', 'samplen', 'spacing', 'width', 'height', - 'noautotitle', 'autotitle', 'noenhanced', 'nobox', 'box', - - // help set terminal postscript - 'landscape', 'portrait', 'eps', 'defaultplex', 'simplex', 'duplex', - 'fontfile', 'add', 'delete', 'nofontfiles', 'level1', 'leveldefault', - 'color', 'colour', 'monochrome', 'solid', 'dashed', 'dashlength', 'dl', - 'rounded', 'butt', 'palfuncparam', 'blacktext', 'colortext', 'colourtext', - 'font', - - // help set terminal png - 'notransparent', 'transparent', 'nointerlace', 'interlace', - 'notruecolor', 'truecolor', 'tiny', 'small', 'medium', 'large', 'giant', - 'nocrop', 'crop', - - // `help plot` - 'acsplines', 'bezier', 'binary', 'csplines', - 'every', - 'example', 'frequency', 'index', 'matrix', - 'ranges', 'sbezier', 'smooth', - 'special-filenames', 'thru', - 'unique', 'using', 'with', - - // `help plotting styles` - 'boxerrorbars', 'boxes', 'boxxyerrorbars', 'candlesticks', - 'dots', 'errorbars', 'errorlines', 'filledcurves', - 'financebars', 'fsteps', 'histeps', 'histograms', - 'image', 'impulses', 'labels', 'lines', - 'linespoints', 'points', 'rgbimage', 'steps', - 'vectors', 'xerrorbars', 'xerrorlines', 'xyerrorbars', - 'xyerrorlines', 'yerrorbars', 'yerrorlines', - - - // terminals `help terminals` - 'aed512', 'aed767', 'aifm', 'bitgraph', - 'cgm', 'corel', 'dumb', 'dxf', - 'eepic', 'emf', 'emtex', 'epslatex', - 'epson-180dpi', 'epson-60dpi', 'epson-lx800', 'fig', - 'gif', 'gpic', 'hp2623a', 'hp2648', - 'hp500c', 'hpdj', 'hpgl', 'hpljii', - 'hppj', 'imagen', 'jpeg', 'kc-tek40xx', - 'km-tek40xx', 'latex', 'mf', 'mif', - 'mp', 'nec-cp6', 'okidata', 'pbm', - 'pcl5', 'png', 'pop', 'postscript', - 'pslatex', 'pstex', 'pstricks', 'push', - 'qms', 'regis', 'selanar', 'starc', - 'svg', 'tandy-60dpi', 'tek40xx', 'tek410x', - 'texdraw', 'tgif', 'tkcanvas', 'tpic', - 'vttek', 'x11', 'xlib', - ) - ), - 'REGEXPS' => array( - //Variable assignment - 0 => "(?\w])([a-zA-Z_][a-zA-Z0-9_]*)\s*=", - //Numbers with unit - 1 => "(?<=^|\s)([0-9]*\.?[0-9]+\s*cm)" - ), - 'SYMBOLS' => array( - '-', '+', '~', '!', '$', - '*', '/', '%', '=', '<', '>', '&', - '^', '|', '.', 'eq', 'ne', '?:', ':', '`', ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #990000;', - 3 => 'color: #550000;', - 4 => 'color: #7a0874;', - 5 => 'color: #448888;' - ), - 'COMMENTS' => array( - 1 => 'color: #adadad; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight:bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000099; font-weight:bold;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;', - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000; font-weight: bold;' - ), - 'REGEXPS' => array( - 0 => 'color: #007800;', - 1 => 'color: #cc66cc;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => 'http://www.google.com/search?q=%22set+{FNAME}%22+site%3Ahttp%3A%2F%2Fwww.gnuplot.info%2Fdocs%2F&btnI=lucky', - 3 => '', - 4 => '', - 5 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 4 => array( - 'DISALLOWED_AFTER' => "(?![\.\-a-zA-Z0-9_%])" - ) - ) - ), - 'TAB_WIDTH' => 4 -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/groovy.php b/library/Vendors/geshi/geshi/groovy.php deleted file mode 100644 index f2a2e9ab..00000000 --- a/library/Vendors/geshi/geshi/groovy.php +++ /dev/null @@ -1,1011 +0,0 @@ - 'Groovy', - 'COMMENT_SINGLE' => array(1 => '//', 3 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Import and Package directives (Basic Support only) - 2 => '/(?:(?<=import[\\n\\s])|(?<=package[\\n\\s]))[\\n\\s]*([a-zA-Z0-9_]+\\.)*([a-zA-Z0-9_]+|\*)(?=[\n\s;])/i', - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'''", '"""', "'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'case', 'do', 'else', 'for', 'foreach', 'if', 'in', 'switch', - 'while', - ), - 2 => array( - 'abstract', 'as', 'assert', 'break', 'catch', 'class', 'const', - 'continue', 'def', 'default', 'enum', 'extends', - 'false', 'final', 'finally', 'goto', 'implements', 'import', - 'instanceof', 'interface', 'native', 'new', 'null', - 'package', 'private', 'property', 'protected', - 'public', 'return', 'static', 'strictfp', 'super', - 'synchronized', 'this', 'throw', 'throws', - 'transient', 'true', 'try', 'volatile' - ), - 3 => array( - 'AbstractAction', 'AbstractBorder', 'AbstractButton', - 'AbstractCellEditor', 'AbstractCollection', - 'AbstractColorChooserPanel', 'AbstractDocument', - 'AbstractDocument.AttributeContext', - 'AbstractDocument.Content', - 'AbstractDocument.ElementEdit', - 'AbstractLayoutCache', - 'AbstractLayoutCache.NodeDimensions', 'AbstractList', - 'AbstractListModel', 'AbstractMap', - 'AbstractMethodError', 'AbstractSequentialList', - 'AbstractSet', 'AbstractTableModel', - 'AbstractUndoableEdit', 'AbstractWriter', - 'AccessControlContext', 'AccessControlException', - 'AccessController', 'AccessException', 'Accessible', - 'AccessibleAction', 'AccessibleBundle', - 'AccessibleComponent', 'AccessibleContext', - 'AccessibleHyperlink', 'AccessibleHypertext', - 'AccessibleIcon', 'AccessibleObject', - 'AccessibleRelation', 'AccessibleRelationSet', - 'AccessibleResourceBundle', 'AccessibleRole', - 'AccessibleSelection', 'AccessibleState', - 'AccessibleStateSet', 'AccessibleTable', - 'AccessibleTableModelChange', 'AccessibleText', - 'AccessibleValue', 'Acl', 'AclEntry', - 'AclNotFoundException', 'Action', 'ActionEvent', - 'ActionListener', 'ActionMap', 'ActionMapUIResource', - 'Activatable', 'ActivateFailedException', - 'ActivationDesc', 'ActivationException', - 'ActivationGroup', 'ActivationGroupDesc', - 'ActivationGroupDesc.CommandEnvironment', - 'ActivationGroupID', 'ActivationID', - 'ActivationInstantiator', 'ActivationMonitor', - 'ActivationSystem', 'Activator', 'ActiveEvent', - 'Adjustable', 'AdjustmentEvent', - 'AdjustmentListener', 'Adler32', 'AffineTransform', - 'AffineTransformOp', 'AlgorithmParameterGenerator', - 'AlgorithmParameterGeneratorSpi', - 'AlgorithmParameters', 'AlgorithmParameterSpec', - 'AlgorithmParametersSpi', 'AllPermission', - 'AlphaComposite', 'AlreadyBound', - 'AlreadyBoundException', 'AlreadyBoundHelper', - 'AlreadyBoundHolder', 'AncestorEvent', - 'AncestorListener', 'Annotation', 'Any', 'AnyHolder', - 'AnySeqHelper', 'AnySeqHolder', 'Applet', - 'AppletContext', 'AppletInitializer', 'AppletStub', - 'ApplicationException', 'Arc2D', 'Arc2D.Double', - 'Arc2D.Float', 'Area', 'AreaAveragingScaleFilter', - 'ARG_IN', 'ARG_INOUT', 'ARG_OUT', - 'ArithmeticException', 'Array', - 'ArrayIndexOutOfBoundsException', 'ArrayList', - 'Arrays', 'ArrayStoreException', 'AsyncBoxView', - 'Attribute', 'AttributedCharacterIterator', - 'AttributedCharacterIterator.Attribute', - 'AttributedString', 'AttributeInUseException', - 'AttributeList', 'AttributeModificationException', - 'Attributes', 'Attributes.Name', 'AttributeSet', - 'AttributeSet.CharacterAttribute', - 'AttributeSet.ColorAttribute', - 'AttributeSet.FontAttribute', - 'AttributeSet.ParagraphAttribute', 'AudioClip', - 'AudioFileFormat', 'AudioFileFormat.Type', - 'AudioFileReader', 'AudioFileWriter', 'AudioFormat', - 'AudioFormat.Encoding', 'AudioInputStream', - 'AudioPermission', 'AudioSystem', - 'AuthenticationException', - 'AuthenticationNotSupportedException', - 'Authenticator', 'Autoscroll', 'AWTError', - 'AWTEvent', 'AWTEventListener', - 'AWTEventMulticaster', 'AWTException', - 'AWTPermission', 'BadKind', 'BadLocationException', - 'BAD_CONTEXT', 'BAD_INV_ORDER', 'BAD_OPERATION', - 'BAD_PARAM', 'BAD_POLICY', 'BAD_POLICY_TYPE', - 'BAD_POLICY_VALUE', 'BAD_TYPECODE', 'BandCombineOp', - 'BandedSampleModel', 'BasicArrowButton', - 'BasicAttribute', 'BasicAttributes', 'BasicBorders', - 'BasicBorders.ButtonBorder', - 'BasicBorders.FieldBorder', - 'BasicBorders.MarginBorder', - 'BasicBorders.MenuBarBorder', - 'BasicBorders.RadioButtonBorder', - 'BasicBorders.SplitPaneBorder', - 'BasicBorders.ToggleButtonBorder', - 'BasicButtonListener', 'BasicButtonUI', - 'BasicCheckBoxMenuItemUI', 'BasicCheckBoxUI', - 'BasicColorChooserUI', 'BasicComboBoxEditor', - 'BasicComboBoxEditor.UIResource', - 'BasicComboBoxRenderer', - 'BasicComboBoxRenderer.UIResource', - 'BasicComboBoxUI', 'BasicComboPopup', - 'BasicDesktopIconUI', 'BasicDesktopPaneUI', - 'BasicDirectoryModel', 'BasicEditorPaneUI', - 'BasicFileChooserUI', 'BasicGraphicsUtils', - 'BasicHTML', 'BasicIconFactory', - 'BasicInternalFrameTitlePane', - 'BasicInternalFrameUI', 'BasicLabelUI', - 'BasicListUI', 'BasicLookAndFeel', 'BasicMenuBarUI', - 'BasicMenuItemUI', 'BasicMenuUI', - 'BasicOptionPaneUI', - 'BasicOptionPaneUI.ButtonAreaLayout', 'BasicPanelUI', - 'BasicPasswordFieldUI', 'BasicPermission', - 'BasicPopupMenuSeparatorUI', 'BasicPopupMenuUI', - 'BasicProgressBarUI', 'BasicRadioButtonMenuItemUI', - 'BasicRadioButtonUI', 'BasicRootPaneUI', - 'BasicScrollBarUI', 'BasicScrollPaneUI', - 'BasicSeparatorUI', 'BasicSliderUI', - 'BasicSplitPaneDivider', 'BasicSplitPaneUI', - 'BasicStroke', 'BasicTabbedPaneUI', - 'BasicTableHeaderUI', 'BasicTableUI', - 'BasicTextAreaUI', 'BasicTextFieldUI', - 'BasicTextPaneUI', 'BasicTextUI', - 'BasicTextUI.BasicCaret', - 'BasicTextUI.BasicHighlighter', - 'BasicToggleButtonUI', 'BasicToolBarSeparatorUI', - 'BasicToolBarUI', 'BasicToolTipUI', 'BasicTreeUI', - 'BasicViewportUI', 'BatchUpdateException', - 'BeanContext', 'BeanContextChild', - 'BeanContextChildComponentProxy', - 'BeanContextChildSupport', - 'BeanContextContainerProxy', 'BeanContextEvent', - 'BeanContextMembershipEvent', - 'BeanContextMembershipListener', 'BeanContextProxy', - 'BeanContextServiceAvailableEvent', - 'BeanContextServiceProvider', - 'BeanContextServiceProviderBeanInfo', - 'BeanContextServiceRevokedEvent', - 'BeanContextServiceRevokedListener', - 'BeanContextServices', 'BeanContextServicesListener', - 'BeanContextServicesSupport', - 'BeanContextServicesSupport.BCSSServiceProvider', - 'BeanContextSupport', - 'BeanContextSupport.BCSIterator', 'BeanDescriptor', - 'BeanInfo', 'Beans', 'BevelBorder', 'BigDecimal', - 'BigInteger', 'BinaryRefAddr', 'BindException', - 'Binding', 'BindingHelper', 'BindingHolder', - 'BindingIterator', 'BindingIteratorHelper', - 'BindingIteratorHolder', 'BindingIteratorOperations', - 'BindingListHelper', 'BindingListHolder', - 'BindingType', 'BindingTypeHelper', - 'BindingTypeHolder', 'BitSet', 'Blob', 'BlockView', - 'Book', 'Boolean', 'BooleanControl', - 'BooleanControl.Type', 'BooleanHolder', - 'BooleanSeqHelper', 'BooleanSeqHolder', 'Border', - 'BorderFactory', 'BorderLayout', 'BorderUIResource', - 'BorderUIResource.BevelBorderUIResource', - 'BorderUIResource.CompoundBorderUIResource', - 'BorderUIResource.EmptyBorderUIResource', - 'BorderUIResource.EtchedBorderUIResource', - 'BorderUIResource.LineBorderUIResource', - 'BorderUIResource.MatteBorderUIResource', - 'BorderUIResource.TitledBorderUIResource', - 'BoundedRangeModel', 'Bounds', 'Box', 'Box.Filler', - 'BoxedValueHelper', 'BoxLayout', 'BoxView', - 'BreakIterator', 'BufferedImage', - 'BufferedImageFilter', 'BufferedImageOp', - 'BufferedInputStream', 'BufferedOutputStream', - 'BufferedReader', 'BufferedWriter', 'Button', - 'ButtonGroup', 'ButtonModel', 'ButtonUI', 'Byte', - 'ByteArrayInputStream', 'ByteArrayOutputStream', - 'ByteHolder', 'ByteLookupTable', 'Calendar', - 'CallableStatement', 'CannotProceed', - 'CannotProceedException', 'CannotProceedHelper', - 'CannotProceedHolder', 'CannotRedoException', - 'CannotUndoException', 'Canvas', 'CardLayout', - 'Caret', 'CaretEvent', 'CaretListener', 'CellEditor', - 'CellEditorListener', 'CellRendererPane', - 'Certificate', 'Certificate.CertificateRep', - 'CertificateEncodingException', - 'CertificateException', - 'CertificateExpiredException', 'CertificateFactory', - 'CertificateFactorySpi', - 'CertificateNotYetValidException', - 'CertificateParsingException', - 'ChangedCharSetException', 'ChangeEvent', - 'ChangeListener', 'Character', 'Character.Subset', - 'Character.UnicodeBlock', 'CharacterIterator', - 'CharArrayReader', 'CharArrayWriter', - 'CharConversionException', 'CharHolder', - 'CharSeqHelper', 'CharSeqHolder', 'Checkbox', - 'CheckboxGroup', 'CheckboxMenuItem', - 'CheckedInputStream', 'CheckedOutputStream', - 'Checksum', 'Choice', 'ChoiceFormat', 'Class', - 'ClassCastException', 'ClassCircularityError', - 'ClassDesc', 'ClassFormatError', 'ClassLoader', - 'ClassNotFoundException', 'Clip', 'Clipboard', - 'ClipboardOwner', 'Clob', 'Cloneable', - 'CloneNotSupportedException', 'CMMException', - 'CodeSource', 'CollationElementIterator', - 'CollationKey', 'Collator', 'Collection', - 'Collections', 'Color', - 'ColorChooserComponentFactory', 'ColorChooserUI', - 'ColorConvertOp', 'ColorModel', - 'ColorSelectionModel', 'ColorSpace', - 'ColorUIResource', 'ComboBoxEditor', 'ComboBoxModel', - 'ComboBoxUI', 'ComboPopup', 'CommunicationException', - 'COMM_FAILURE', 'Comparable', 'Comparator', - 'Compiler', 'CompletionStatus', - 'CompletionStatusHelper', 'Component', - 'ComponentAdapter', 'ComponentColorModel', - 'ComponentEvent', 'ComponentInputMap', - 'ComponentInputMapUIResource', 'ComponentListener', - 'ComponentOrientation', 'ComponentSampleModel', - 'ComponentUI', 'ComponentView', 'Composite', - 'CompositeContext', 'CompositeName', 'CompositeView', - 'CompoundBorder', 'CompoundControl', - 'CompoundControl.Type', 'CompoundEdit', - 'CompoundName', 'ConcurrentModificationException', - 'ConfigurationException', 'ConnectException', - 'ConnectIOException', 'Connection', 'Constructor', - 'Container', 'ContainerAdapter', 'ContainerEvent', - 'ContainerListener', 'ContentHandler', - 'ContentHandlerFactory', 'ContentModel', 'Context', - 'ContextList', 'ContextNotEmptyException', - 'ContextualRenderedImageFactory', 'Control', - 'Control.Type', 'ControlFactory', - 'ControllerEventListener', 'ConvolveOp', 'CRC32', - 'CRL', 'CRLException', 'CropImageFilter', 'CSS', - 'CSS.Attribute', 'CTX_RESTRICT_SCOPE', - 'CubicCurve2D', 'CubicCurve2D.Double', - 'CubicCurve2D.Float', 'Current', 'CurrentHelper', - 'CurrentHolder', 'CurrentOperations', 'Cursor', - 'Customizer', 'CustomMarshal', 'CustomValue', - 'DatabaseMetaData', 'DataBuffer', 'DataBufferByte', - 'DataBufferInt', 'DataBufferShort', - 'DataBufferUShort', 'DataFlavor', - 'DataFormatException', 'DatagramPacket', - 'DatagramSocket', 'DatagramSocketImpl', - 'DatagramSocketImplFactory', 'DataInput', - 'DataInputStream', 'DataLine', 'DataLine.Info', - 'DataOutput', 'DataOutputStream', 'DataTruncation', - 'DATA_CONVERSION', 'Date', 'DateFormat', - 'DateFormatSymbols', 'DebugGraphics', - 'DecimalFormat', 'DecimalFormatSymbols', - 'DefaultBoundedRangeModel', 'DefaultButtonModel', - 'DefaultCaret', 'DefaultCellEditor', - 'DefaultColorSelectionModel', 'DefaultComboBoxModel', - 'DefaultDesktopManager', 'DefaultEditorKit', - 'DefaultEditorKit.BeepAction', - 'DefaultEditorKit.CopyAction', - 'DefaultEditorKit.CutAction', - 'DefaultEditorKit.DefaultKeyTypedAction', - 'DefaultEditorKit.InsertBreakAction', - 'DefaultEditorKit.InsertContentAction', - 'DefaultEditorKit.InsertTabAction', - 'DefaultEditorKit.PasteAction,', - 'DefaultFocusManager', 'DefaultHighlighter', - 'DefaultHighlighter.DefaultHighlightPainter', - 'DefaultListCellRenderer', - 'DefaultListCellRenderer.UIResource', - 'DefaultListModel', 'DefaultListSelectionModel', - 'DefaultMenuLayout', 'DefaultMetalTheme', - 'DefaultMutableTreeNode', - 'DefaultSingleSelectionModel', - 'DefaultStyledDocument', - 'DefaultStyledDocument.AttributeUndoableEdit', - 'DefaultStyledDocument.ElementSpec', - 'DefaultTableCellRenderer', - 'DefaultTableCellRenderer.UIResource', - 'DefaultTableColumnModel', 'DefaultTableModel', - 'DefaultTextUI', 'DefaultTreeCellEditor', - 'DefaultTreeCellRenderer', 'DefaultTreeModel', - 'DefaultTreeSelectionModel', 'DefinitionKind', - 'DefinitionKindHelper', 'Deflater', - 'DeflaterOutputStream', 'Delegate', 'DesignMode', - 'DesktopIconUI', 'DesktopManager', 'DesktopPaneUI', - 'DGC', 'Dialog', 'Dictionary', 'DigestException', - 'DigestInputStream', 'DigestOutputStream', - 'Dimension', 'Dimension2D', 'DimensionUIResource', - 'DirContext', 'DirectColorModel', 'DirectoryManager', - 'DirObjectFactory', 'DirStateFactory', - 'DirStateFactory.Result', 'DnDConstants', 'Document', - 'DocumentEvent', 'DocumentEvent.ElementChange', - 'DocumentEvent.EventType', 'DocumentListener', - 'DocumentParser', 'DomainCombiner', 'DomainManager', - 'DomainManagerOperations', 'Double', 'DoubleHolder', - 'DoubleSeqHelper', 'DoubleSeqHolder', - 'DragGestureEvent', 'DragGestureListener', - 'DragGestureRecognizer', 'DragSource', - 'DragSourceContext', 'DragSourceDragEvent', - 'DragSourceDropEvent', 'DragSourceEvent', - 'DragSourceListener', 'Driver', 'DriverManager', - 'DriverPropertyInfo', 'DropTarget', - 'DropTarget.DropTargetAutoScroller', - 'DropTargetContext', 'DropTargetDragEvent', - 'DropTargetDropEvent', 'DropTargetEvent', - 'DropTargetListener', 'DSAKey', - 'DSAKeyPairGenerator', 'DSAParameterSpec', - 'DSAParams', 'DSAPrivateKey', 'DSAPrivateKeySpec', - 'DSAPublicKey', 'DSAPublicKeySpec', 'DTD', - 'DTDConstants', 'DynamicImplementation', 'DynAny', - 'DynArray', 'DynEnum', 'DynFixed', 'DynSequence', - 'DynStruct', 'DynUnion', 'DynValue', 'EditorKit', - 'Element', 'ElementIterator', 'Ellipse2D', - 'Ellipse2D.Double', 'Ellipse2D.Float', 'EmptyBorder', - 'EmptyStackException', 'EncodedKeySpec', 'Entity', - 'EnumControl', 'EnumControl.Type', 'Enumeration', - 'Environment', 'EOFException', 'Error', - 'EtchedBorder', 'Event', 'EventContext', - 'EventDirContext', 'EventListener', - 'EventListenerList', 'EventObject', 'EventQueue', - 'EventSetDescriptor', 'Exception', - 'ExceptionInInitializerError', 'ExceptionList', - 'ExpandVetoException', 'ExportException', - 'ExtendedRequest', 'ExtendedResponse', - 'Externalizable', 'FeatureDescriptor', 'Field', - 'FieldNameHelper', 'FieldPosition', 'FieldView', - 'File', 'FileChooserUI', 'FileDescriptor', - 'FileDialog', 'FileFilter', 'FileInputStream', - 'FilenameFilter', 'FileNameMap', - 'FileNotFoundException', 'FileOutputStream', - 'FilePermission', 'FileReader', 'FileSystemView', - 'FileView', 'FileWriter', 'FilteredImageSource', - 'FilterInputStream', 'FilterOutputStream', - 'FilterReader', 'FilterWriter', - 'FixedHeightLayoutCache', 'FixedHolder', - 'FlatteningPathIterator', 'FlavorMap', 'Float', - 'FloatControl', 'FloatControl.Type', 'FloatHolder', - 'FloatSeqHelper', 'FloatSeqHolder', 'FlowLayout', - 'FlowView', 'FlowView.FlowStrategy', 'FocusAdapter', - 'FocusEvent', 'FocusListener', 'FocusManager', - 'Font', 'FontFormatException', 'FontMetrics', - 'FontRenderContext', 'FontUIResource', 'Format', - 'FormatConversionProvider', 'FormView', 'Frame', - 'FREE_MEM', 'GapContent', 'GeneralPath', - 'GeneralSecurityException', 'GlyphJustificationInfo', - 'GlyphMetrics', 'GlyphVector', 'GlyphView', - 'GlyphView.GlyphPainter', 'GradientPaint', - 'GraphicAttribute', 'Graphics', 'Graphics2D', - 'GraphicsConfigTemplate', 'GraphicsConfiguration', - 'GraphicsDevice', 'GraphicsEnvironment', - 'GrayFilter', 'GregorianCalendar', - 'GridBagConstraints', 'GridBagLayout', 'GridLayout', - 'Group', 'Guard', 'GuardedObject', 'GZIPInputStream', - 'GZIPOutputStream', 'HasControls', 'HashMap', - 'HashSet', 'Hashtable', 'HierarchyBoundsAdapter', - 'HierarchyBoundsListener', 'HierarchyEvent', - 'HierarchyListener', 'Highlighter', - 'Highlighter.Highlight', - 'Highlighter.HighlightPainter', 'HTML', - 'HTML.Attribute', 'HTML.Tag', 'HTML.UnknownTag', - 'HTMLDocument', 'HTMLDocument.Iterator', - 'HTMLEditorKit', 'HTMLEditorKit.HTMLFactory', - 'HTMLEditorKit.HTMLTextAction', - 'HTMLEditorKit.InsertHTMLTextAction', - 'HTMLEditorKit.LinkController', - 'HTMLEditorKit.Parser', - 'HTMLEditorKit.ParserCallback', - 'HTMLFrameHyperlinkEvent', 'HTMLWriter', - 'HttpURLConnection', 'HyperlinkEvent', - 'HyperlinkEvent.EventType', 'HyperlinkListener', - 'ICC_ColorSpace', 'ICC_Profile', 'ICC_ProfileGray', - 'ICC_ProfileRGB', 'Icon', 'IconUIResource', - 'IconView', 'IdentifierHelper', 'Identity', - 'IdentityScope', 'IDLEntity', 'IDLType', - 'IDLTypeHelper', 'IDLTypeOperations', - 'IllegalAccessError', 'IllegalAccessException', - 'IllegalArgumentException', - 'IllegalComponentStateException', - 'IllegalMonitorStateException', - 'IllegalPathStateException', 'IllegalStateException', - 'IllegalThreadStateException', 'Image', - 'ImageConsumer', 'ImageFilter', - 'ImageGraphicAttribute', 'ImageIcon', - 'ImageObserver', 'ImageProducer', - 'ImagingOpException', 'IMP_LIMIT', - 'IncompatibleClassChangeError', - 'InconsistentTypeCode', 'IndexColorModel', - 'IndexedPropertyDescriptor', - 'IndexOutOfBoundsException', 'IndirectionException', - 'InetAddress', 'Inflater', 'InflaterInputStream', - 'InheritableThreadLocal', 'InitialContext', - 'InitialContextFactory', - 'InitialContextFactoryBuilder', 'InitialDirContext', - 'INITIALIZE', 'Initializer', 'InitialLdapContext', - 'InlineView', 'InputContext', 'InputEvent', - 'InputMap', 'InputMapUIResource', 'InputMethod', - 'InputMethodContext', 'InputMethodDescriptor', - 'InputMethodEvent', 'InputMethodHighlight', - 'InputMethodListener', 'InputMethodRequests', - 'InputStream', 'InputStreamReader', 'InputSubset', - 'InputVerifier', 'Insets', 'InsetsUIResource', - 'InstantiationError', 'InstantiationException', - 'Instrument', 'InsufficientResourcesException', - 'Integer', 'INTERNAL', 'InternalError', - 'InternalFrameAdapter', 'InternalFrameEvent', - 'InternalFrameListener', 'InternalFrameUI', - 'InterruptedException', 'InterruptedIOException', - 'InterruptedNamingException', 'INTF_REPOS', - 'IntHolder', 'IntrospectionException', - 'Introspector', 'Invalid', - 'InvalidAlgorithmParameterException', - 'InvalidAttributeIdentifierException', - 'InvalidAttributesException', - 'InvalidAttributeValueException', - 'InvalidClassException', - 'InvalidDnDOperationException', - 'InvalidKeyException', 'InvalidKeySpecException', - 'InvalidMidiDataException', 'InvalidName', - 'InvalidNameException', 'InvalidNameHelper', - 'InvalidNameHolder', 'InvalidObjectException', - 'InvalidParameterException', - 'InvalidParameterSpecException', - 'InvalidSearchControlsException', - 'InvalidSearchFilterException', 'InvalidSeq', - 'InvalidTransactionException', 'InvalidValue', - 'INVALID_TRANSACTION', 'InvocationEvent', - 'InvocationHandler', 'InvocationTargetException', - 'InvokeHandler', 'INV_FLAG', 'INV_IDENT', - 'INV_OBJREF', 'INV_POLICY', 'IOException', - 'IRObject', 'IRObjectOperations', 'IstringHelper', - 'ItemEvent', 'ItemListener', 'ItemSelectable', - 'Iterator', 'JApplet', 'JarEntry', 'JarException', - 'JarFile', 'JarInputStream', 'JarOutputStream', - 'JarURLConnection', 'JButton', 'JCheckBox', - 'JCheckBoxMenuItem', 'JColorChooser', 'JComboBox', - 'JComboBox.KeySelectionManager', 'JComponent', - 'JDesktopPane', 'JDialog', 'JEditorPane', - 'JFileChooser', 'JFrame', 'JInternalFrame', - 'JInternalFrame.JDesktopIcon', 'JLabel', - 'JLayeredPane', 'JList', 'JMenu', 'JMenuBar', - 'JMenuItem', 'JobAttributes', - 'JobAttributes.DefaultSelectionType', - 'JobAttributes.DestinationType', - 'JobAttributes.DialogType', - 'JobAttributes.MultipleDocumentHandlingType', - 'JobAttributes.SidesType', 'JOptionPane', 'JPanel', - 'JPasswordField', 'JPopupMenu', - 'JPopupMenu.Separator', 'JProgressBar', - 'JRadioButton', 'JRadioButtonMenuItem', 'JRootPane', - 'JScrollBar', 'JScrollPane', 'JSeparator', 'JSlider', - 'JSplitPane', 'JTabbedPane', 'JTable', - 'JTableHeader', 'JTextArea', 'JTextComponent', - 'JTextComponent.KeyBinding', 'JTextField', - 'JTextPane', 'JToggleButton', - 'JToggleButton.ToggleButtonModel', 'JToolBar', - 'JToolBar.Separator', 'JToolTip', 'JTree', - 'JTree.DynamicUtilTreeNode', - 'JTree.EmptySelectionModel', 'JViewport', 'JWindow', - 'Kernel', 'Key', 'KeyAdapter', 'KeyEvent', - 'KeyException', 'KeyFactory', 'KeyFactorySpi', - 'KeyListener', 'KeyManagementException', 'Keymap', - 'KeyPair', 'KeyPairGenerator', 'KeyPairGeneratorSpi', - 'KeySpec', 'KeyStore', 'KeyStoreException', - 'KeyStoreSpi', 'KeyStroke', 'Label', 'LabelUI', - 'LabelView', 'LastOwnerException', - 'LayeredHighlighter', - 'LayeredHighlighter.LayerPainter', 'LayoutManager', - 'LayoutManager2', 'LayoutQueue', 'LdapContext', - 'LdapReferralException', 'Lease', - 'LimitExceededException', 'Line', 'Line.Info', - 'Line2D', 'Line2D.Double', 'Line2D.Float', - 'LineBorder', 'LineBreakMeasurer', 'LineEvent', - 'LineEvent.Type', 'LineListener', 'LineMetrics', - 'LineNumberInputStream', 'LineNumberReader', - 'LineUnavailableException', 'LinkageError', - 'LinkedList', 'LinkException', 'LinkLoopException', - 'LinkRef', 'List', 'ListCellRenderer', - 'ListDataEvent', 'ListDataListener', 'ListIterator', - 'ListModel', 'ListResourceBundle', - 'ListSelectionEvent', 'ListSelectionListener', - 'ListSelectionModel', 'ListUI', 'ListView', - 'LoaderHandler', 'Locale', 'LocateRegistry', - 'LogStream', 'Long', 'LongHolder', - 'LongLongSeqHelper', 'LongLongSeqHolder', - 'LongSeqHelper', 'LongSeqHolder', 'LookAndFeel', - 'LookupOp', 'LookupTable', 'MalformedLinkException', - 'MalformedURLException', 'Manifest', 'Map', - 'Map.Entry', 'MARSHAL', 'MarshalException', - 'MarshalledObject', 'Math', 'MatteBorder', - 'MediaTracker', 'Member', 'MemoryImageSource', - 'Menu', 'MenuBar', 'MenuBarUI', 'MenuComponent', - 'MenuContainer', 'MenuDragMouseEvent', - 'MenuDragMouseListener', 'MenuElement', 'MenuEvent', - 'MenuItem', 'MenuItemUI', 'MenuKeyEvent', - 'MenuKeyListener', 'MenuListener', - 'MenuSelectionManager', 'MenuShortcut', - 'MessageDigest', 'MessageDigestSpi', 'MessageFormat', - 'MetaEventListener', 'MetalBorders', - 'MetalBorders.ButtonBorder', - 'MetalBorders.Flush3DBorder', - 'MetalBorders.InternalFrameBorder', - 'MetalBorders.MenuBarBorder', - 'MetalBorders.MenuItemBorder', - 'MetalBorders.OptionDialogBorder', - 'MetalBorders.PaletteBorder', - 'MetalBorders.PopupMenuBorder', - 'MetalBorders.RolloverButtonBorder', - 'MetalBorders.ScrollPaneBorder', - 'MetalBorders.TableHeaderBorder', - 'MetalBorders.TextFieldBorder', - 'MetalBorders.ToggleButtonBorder', - 'MetalBorders.ToolBarBorder', 'MetalButtonUI', - 'MetalCheckBoxIcon', 'MetalCheckBoxUI', - 'MetalComboBoxButton', 'MetalComboBoxEditor', - 'MetalComboBoxEditor.UIResource', - 'MetalComboBoxIcon', 'MetalComboBoxUI', - 'MetalDesktopIconUI', 'MetalFileChooserUI', - 'MetalIconFactory', 'MetalIconFactory.FileIcon16', - 'MetalIconFactory.FolderIcon16', - 'MetalIconFactory.PaletteCloseIcon', - 'MetalIconFactory.TreeControlIcon', - 'MetalIconFactory.TreeFolderIcon', - 'MetalIconFactory.TreeLeafIcon', - 'MetalInternalFrameTitlePane', - 'MetalInternalFrameUI', 'MetalLabelUI', - 'MetalLookAndFeel', 'MetalPopupMenuSeparatorUI', - 'MetalProgressBarUI', 'MetalRadioButtonUI', - 'MetalScrollBarUI', 'MetalScrollButton', - 'MetalScrollPaneUI', 'MetalSeparatorUI', - 'MetalSliderUI', 'MetalSplitPaneUI', - 'MetalTabbedPaneUI', 'MetalTextFieldUI', - 'MetalTheme', 'MetalToggleButtonUI', - 'MetalToolBarUI', 'MetalToolTipUI', 'MetalTreeUI', - 'MetaMessage', 'Method', 'MethodDescriptor', - 'MidiChannel', 'MidiDevice', 'MidiDevice.Info', - 'MidiDeviceProvider', 'MidiEvent', 'MidiFileFormat', - 'MidiFileReader', 'MidiFileWriter', 'MidiMessage', - 'MidiSystem', 'MidiUnavailableException', - 'MimeTypeParseException', 'MinimalHTMLWriter', - 'MissingResourceException', 'Mixer', 'Mixer.Info', - 'MixerProvider', 'ModificationItem', 'Modifier', - 'MouseAdapter', 'MouseDragGestureRecognizer', - 'MouseEvent', 'MouseInputAdapter', - 'MouseInputListener', 'MouseListener', - 'MouseMotionAdapter', 'MouseMotionListener', - 'MultiButtonUI', 'MulticastSocket', - 'MultiColorChooserUI', 'MultiComboBoxUI', - 'MultiDesktopIconUI', 'MultiDesktopPaneUI', - 'MultiFileChooserUI', 'MultiInternalFrameUI', - 'MultiLabelUI', 'MultiListUI', 'MultiLookAndFeel', - 'MultiMenuBarUI', 'MultiMenuItemUI', - 'MultiOptionPaneUI', 'MultiPanelUI', - 'MultiPixelPackedSampleModel', 'MultipleMaster', - 'MultiPopupMenuUI', 'MultiProgressBarUI', - 'MultiScrollBarUI', 'MultiScrollPaneUI', - 'MultiSeparatorUI', 'MultiSliderUI', - 'MultiSplitPaneUI', 'MultiTabbedPaneUI', - 'MultiTableHeaderUI', 'MultiTableUI', 'MultiTextUI', - 'MultiToolBarUI', 'MultiToolTipUI', 'MultiTreeUI', - 'MultiViewportUI', 'MutableAttributeSet', - 'MutableComboBoxModel', 'MutableTreeNode', 'Name', - 'NameAlreadyBoundException', 'NameClassPair', - 'NameComponent', 'NameComponentHelper', - 'NameComponentHolder', 'NamedValue', 'NameHelper', - 'NameHolder', 'NameNotFoundException', 'NameParser', - 'NamespaceChangeListener', 'NameValuePair', - 'NameValuePairHelper', 'Naming', 'NamingContext', - 'NamingContextHelper', 'NamingContextHolder', - 'NamingContextOperations', 'NamingEnumeration', - 'NamingEvent', 'NamingException', - 'NamingExceptionEvent', 'NamingListener', - 'NamingManager', 'NamingSecurityException', - 'NegativeArraySizeException', 'NetPermission', - 'NoClassDefFoundError', 'NoInitialContextException', - 'NoninvertibleTransformException', - 'NoPermissionException', 'NoRouteToHostException', - 'NoSuchAlgorithmException', - 'NoSuchAttributeException', 'NoSuchElementException', - 'NoSuchFieldError', 'NoSuchFieldException', - 'NoSuchMethodError', 'NoSuchMethodException', - 'NoSuchObjectException', 'NoSuchProviderException', - 'NotActiveException', 'NotBoundException', - 'NotContextException', 'NotEmpty', 'NotEmptyHelper', - 'NotEmptyHolder', 'NotFound', 'NotFoundHelper', - 'NotFoundHolder', 'NotFoundReason', - 'NotFoundReasonHelper', 'NotFoundReasonHolder', - 'NotOwnerException', 'NotSerializableException', - 'NO_IMPLEMENT', 'NO_MEMORY', 'NO_PERMISSION', - 'NO_RESOURCES', 'NO_RESPONSE', - 'NullPointerException', 'Number', 'NumberFormat', - 'NumberFormatException', 'NVList', 'Object', - 'ObjectChangeListener', 'ObjectFactory', - 'ObjectFactoryBuilder', 'ObjectHelper', - 'ObjectHolder', 'ObjectImpl', 'ObjectInput', - 'ObjectInputStream', 'ObjectInputStream.GetField', - 'ObjectInputValidation', 'ObjectOutput', - 'ObjectOutputStream', 'ObjectOutputStream.PutField', - 'ObjectStreamClass', 'ObjectStreamConstants', - 'ObjectStreamException', 'ObjectStreamField', - 'ObjectView', 'OBJECT_NOT_EXIST', 'ObjID', - 'OBJ_ADAPTER', 'Observable', 'Observer', - 'OctetSeqHelper', 'OctetSeqHolder', 'OMGVMCID', - 'OpenType', 'Operation', - 'OperationNotSupportedException', 'Option', - 'OptionalDataException', 'OptionPaneUI', 'ORB', - 'OutOfMemoryError', 'OutputStream', - 'OutputStreamWriter', 'OverlayLayout', 'Owner', - 'Package', 'PackedColorModel', 'Pageable', - 'PageAttributes', 'PageAttributes.ColorType', - 'PageAttributes.MediaType', - 'PageAttributes.OrientationRequestedType', - 'PageAttributes.OriginType', - 'PageAttributes.PrintQualityType', 'PageFormat', - 'Paint', 'PaintContext', 'PaintEvent', 'Panel', - 'PanelUI', 'Paper', 'ParagraphView', - 'ParameterBlock', 'ParameterDescriptor', - 'ParseException', 'ParsePosition', 'Parser', - 'ParserDelegator', 'PartialResultException', - 'PasswordAuthentication', 'PasswordView', 'Patch', - 'PathIterator', 'Permission', 'PermissionCollection', - 'Permissions', 'PERSIST_STORE', 'PhantomReference', - 'PipedInputStream', 'PipedOutputStream', - 'PipedReader', 'PipedWriter', 'PixelGrabber', - 'PixelInterleavedSampleModel', 'PKCS8EncodedKeySpec', - 'PlainDocument', 'PlainView', 'Point', 'Point2D', - 'Point2D.Double', 'Point2D.Float', 'Policy', - 'PolicyError', 'PolicyHelper', 'PolicyHolder', - 'PolicyListHelper', 'PolicyListHolder', - 'PolicyOperations', 'PolicyTypeHelper', 'Polygon', - 'PopupMenu', 'PopupMenuEvent', 'PopupMenuListener', - 'PopupMenuUI', 'Port', 'Port.Info', - 'PortableRemoteObject', - 'PortableRemoteObjectDelegate', 'Position', - 'Position.Bias', 'PreparedStatement', 'Principal', - 'PrincipalHolder', 'Printable', - 'PrinterAbortException', 'PrinterException', - 'PrinterGraphics', 'PrinterIOException', - 'PrinterJob', 'PrintGraphics', 'PrintJob', - 'PrintStream', 'PrintWriter', 'PrivateKey', - 'PRIVATE_MEMBER', 'PrivilegedAction', - 'PrivilegedActionException', - 'PrivilegedExceptionAction', 'Process', - 'ProfileDataException', 'ProgressBarUI', - 'ProgressMonitor', 'ProgressMonitorInputStream', - 'Properties', 'PropertyChangeEvent', - 'PropertyChangeListener', 'PropertyChangeSupport', - 'PropertyDescriptor', 'PropertyEditor', - 'PropertyEditorManager', 'PropertyEditorSupport', - 'PropertyPermission', 'PropertyResourceBundle', - 'PropertyVetoException', 'ProtectionDomain', - 'ProtocolException', 'Provider', 'ProviderException', - 'Proxy', 'PublicKey', 'PUBLIC_MEMBER', - 'PushbackInputStream', 'PushbackReader', - 'QuadCurve2D', 'QuadCurve2D.Double', - 'QuadCurve2D.Float', 'Random', 'RandomAccessFile', - 'Raster', 'RasterFormatException', 'RasterOp', - 'Reader', 'Receiver', 'Rectangle', 'Rectangle2D', - 'Rectangle2D.Double', 'Rectangle2D.Float', - 'RectangularShape', 'Ref', 'RefAddr', 'Reference', - 'Referenceable', 'ReferenceQueue', - 'ReferralException', 'ReflectPermission', 'Registry', - 'RegistryHandler', 'RemarshalException', 'Remote', - 'RemoteCall', 'RemoteException', 'RemoteObject', - 'RemoteRef', 'RemoteServer', 'RemoteStub', - 'RenderableImage', 'RenderableImageOp', - 'RenderableImageProducer', 'RenderContext', - 'RenderedImage', 'RenderedImageFactory', 'Renderer', - 'RenderingHints', 'RenderingHints.Key', - 'RepaintManager', 'ReplicateScaleFilter', - 'Repository', 'RepositoryIdHelper', 'Request', - 'RescaleOp', 'Resolver', 'ResolveResult', - 'ResourceBundle', 'ResponseHandler', 'ResultSet', - 'ResultSetMetaData', 'ReverbType', 'RGBImageFilter', - 'RMIClassLoader', 'RMIClientSocketFactory', - 'RMIFailureHandler', 'RMISecurityException', - 'RMISecurityManager', 'RMIServerSocketFactory', - 'RMISocketFactory', 'Robot', 'RootPaneContainer', - 'RootPaneUI', 'RoundRectangle2D', - 'RoundRectangle2D.Double', 'RoundRectangle2D.Float', - 'RowMapper', 'RSAKey', 'RSAKeyGenParameterSpec', - 'RSAPrivateCrtKey', 'RSAPrivateCrtKeySpec', - 'RSAPrivateKey', 'RSAPrivateKeySpec', 'RSAPublicKey', - 'RSAPublicKeySpec', 'RTFEditorKit', - 'RuleBasedCollator', 'Runnable', 'Runtime', - 'RunTime', 'RuntimeException', 'RunTimeOperations', - 'RuntimePermission', 'SampleModel', - 'SchemaViolationException', 'Scrollable', - 'Scrollbar', 'ScrollBarUI', 'ScrollPane', - 'ScrollPaneConstants', 'ScrollPaneLayout', - 'ScrollPaneLayout.UIResource', 'ScrollPaneUI', - 'SearchControls', 'SearchResult', - 'SecureClassLoader', 'SecureRandom', - 'SecureRandomSpi', 'Security', 'SecurityException', - 'SecurityManager', 'SecurityPermission', 'Segment', - 'SeparatorUI', 'Sequence', 'SequenceInputStream', - 'Sequencer', 'Sequencer.SyncMode', 'Serializable', - 'SerializablePermission', 'ServantObject', - 'ServerCloneException', 'ServerError', - 'ServerException', 'ServerNotActiveException', - 'ServerRef', 'ServerRequest', - 'ServerRuntimeException', 'ServerSocket', - 'ServiceDetail', 'ServiceDetailHelper', - 'ServiceInformation', 'ServiceInformationHelper', - 'ServiceInformationHolder', - 'ServiceUnavailableException', 'Set', - 'SetOverrideType', 'SetOverrideTypeHelper', 'Shape', - 'ShapeGraphicAttribute', 'Short', 'ShortHolder', - 'ShortLookupTable', 'ShortMessage', 'ShortSeqHelper', - 'ShortSeqHolder', 'Signature', 'SignatureException', - 'SignatureSpi', 'SignedObject', 'Signer', - 'SimpleAttributeSet', 'SimpleBeanInfo', - 'SimpleDateFormat', 'SimpleTimeZone', - 'SinglePixelPackedSampleModel', - 'SingleSelectionModel', 'SizeLimitExceededException', - 'SizeRequirements', 'SizeSequence', 'Skeleton', - 'SkeletonMismatchException', - 'SkeletonNotFoundException', 'SliderUI', 'Socket', - 'SocketException', 'SocketImpl', 'SocketImplFactory', - 'SocketOptions', 'SocketPermission', - 'SocketSecurityException', 'SoftBevelBorder', - 'SoftReference', 'SortedMap', 'SortedSet', - 'Soundbank', 'SoundbankReader', 'SoundbankResource', - 'SourceDataLine', 'SplitPaneUI', 'SQLData', - 'SQLException', 'SQLInput', 'SQLOutput', - 'SQLPermission', 'SQLWarning', 'Stack', - 'StackOverflowError', 'StateEdit', 'StateEditable', - 'StateFactory', 'Statement', 'Streamable', - 'StreamableValue', 'StreamCorruptedException', - 'StreamTokenizer', 'StrictMath', 'String', - 'StringBuffer', 'StringBufferInputStream', - 'StringCharacterIterator', 'StringContent', - 'StringHolder', 'StringIndexOutOfBoundsException', - 'StringReader', 'StringRefAddr', 'StringSelection', - 'StringTokenizer', 'StringValueHelper', - 'StringWriter', 'Stroke', 'Struct', 'StructMember', - 'StructMemberHelper', 'Stub', 'StubDelegate', - 'StubNotFoundException', 'Style', 'StyleConstants', - 'StyleConstants.CharacterConstants', - 'StyleConstants.ColorConstants', - 'StyleConstants.FontConstants', - 'StyleConstants.ParagraphConstants', 'StyleContext', - 'StyledDocument', 'StyledEditorKit', - 'StyledEditorKit.AlignmentAction', - 'StyledEditorKit.BoldAction', - 'StyledEditorKit.FontFamilyAction', - 'StyledEditorKit.FontSizeAction', - 'StyledEditorKit.ForegroundAction', - 'StyledEditorKit.ItalicAction', - 'StyledEditorKit.StyledTextAction', - 'StyledEditorKit.UnderlineAction', 'StyleSheet', - 'StyleSheet.BoxPainter', 'StyleSheet.ListPainter', - 'SwingConstants', 'SwingPropertyChangeSupport', - 'SwingUtilities', 'SyncFailedException', - 'Synthesizer', 'SysexMessage', 'System', - 'SystemColor', 'SystemException', 'SystemFlavorMap', - 'TabableView', 'TabbedPaneUI', 'TabExpander', - 'TableCellEditor', 'TableCellRenderer', - 'TableColumn', 'TableColumnModel', - 'TableColumnModelEvent', 'TableColumnModelListener', - 'TableHeaderUI', 'TableModel', 'TableModelEvent', - 'TableModelListener', 'TableUI', 'TableView', - 'TabSet', 'TabStop', 'TagElement', 'TargetDataLine', - 'TCKind', 'TextAction', 'TextArea', 'TextAttribute', - 'TextComponent', 'TextEvent', 'TextField', - 'TextHitInfo', 'TextLayout', - 'TextLayout.CaretPolicy', 'TextListener', - 'TextMeasurer', 'TextUI', 'TexturePaint', 'Thread', - 'ThreadDeath', 'ThreadGroup', 'ThreadLocal', - 'Throwable', 'Tie', 'TileObserver', 'Time', - 'TimeLimitExceededException', 'Timer', 'TimerTask', - 'Timestamp', 'TimeZone', 'TitledBorder', 'ToolBarUI', - 'Toolkit', 'ToolTipManager', 'ToolTipUI', - 'TooManyListenersException', 'Track', - 'TransactionRequiredException', - 'TransactionRolledbackException', - 'TRANSACTION_REQUIRED', 'TRANSACTION_ROLLEDBACK', - 'Transferable', 'TransformAttribute', 'TRANSIENT', - 'Transmitter', 'Transparency', 'TreeCellEditor', - 'TreeCellRenderer', 'TreeExpansionEvent', - 'TreeExpansionListener', 'TreeMap', 'TreeModel', - 'TreeModelEvent', 'TreeModelListener', 'TreeNode', - 'TreePath', 'TreeSelectionEvent', - 'TreeSelectionListener', 'TreeSelectionModel', - 'TreeSet', 'TreeUI', 'TreeWillExpandListener', - 'TypeCode', 'TypeCodeHolder', 'TypeMismatch', - 'Types', 'UID', 'UIDefaults', - 'UIDefaults.ActiveValue', 'UIDefaults.LazyInputMap', - 'UIDefaults.LazyValue', 'UIDefaults.ProxyLazyValue', - 'UIManager', 'UIManager.LookAndFeelInfo', - 'UIResource', 'ULongLongSeqHelper', - 'ULongLongSeqHolder', 'ULongSeqHelper', - 'ULongSeqHolder', 'UndeclaredThrowableException', - 'UndoableEdit', 'UndoableEditEvent', - 'UndoableEditListener', 'UndoableEditSupport', - 'UndoManager', 'UnexpectedException', - 'UnicastRemoteObject', 'UnionMember', - 'UnionMemberHelper', 'UNKNOWN', 'UnknownError', - 'UnknownException', 'UnknownGroupException', - 'UnknownHostException', 'UnknownObjectException', - 'UnknownServiceException', 'UnknownUserException', - 'UnmarshalException', 'UnrecoverableKeyException', - 'Unreferenced', 'UnresolvedPermission', - 'UnsatisfiedLinkError', 'UnsolicitedNotification', - 'UnsolicitedNotificationEvent', - 'UnsolicitedNotificationListener', - 'UnsupportedAudioFileException', - 'UnsupportedClassVersionError', - 'UnsupportedEncodingException', - 'UnsupportedFlavorException', - 'UnsupportedLookAndFeelException', - 'UnsupportedOperationException', - 'UNSUPPORTED_POLICY', 'UNSUPPORTED_POLICY_VALUE', - 'URL', 'URLClassLoader', 'URLConnection', - 'URLDecoder', 'URLEncoder', 'URLStreamHandler', - 'URLStreamHandlerFactory', 'UserException', - 'UShortSeqHelper', 'UShortSeqHolder', - 'UTFDataFormatException', 'Util', 'UtilDelegate', - 'Utilities', 'ValueBase', 'ValueBaseHelper', - 'ValueBaseHolder', 'ValueFactory', 'ValueHandler', - 'ValueMember', 'ValueMemberHelper', - 'VariableHeightLayoutCache', 'Vector', 'VerifyError', - 'VersionSpecHelper', 'VetoableChangeListener', - 'VetoableChangeSupport', 'View', 'ViewFactory', - 'ViewportLayout', 'ViewportUI', - 'VirtualMachineError', 'Visibility', - 'VisibilityHelper', 'VMID', 'VM_ABSTRACT', - 'VM_CUSTOM', 'VM_NONE', 'VM_TRUNCATABLE', - 'VoiceStatus', 'Void', 'WCharSeqHelper', - 'WCharSeqHolder', 'WeakHashMap', 'WeakReference', - 'Window', 'WindowAdapter', 'WindowConstants', - 'WindowEvent', 'WindowListener', 'WrappedPlainView', - 'WritableRaster', 'WritableRenderedImage', - 'WriteAbortedException', 'Writer', - 'WrongTransaction', 'WStringValueHelper', - 'X509Certificate', 'X509CRL', 'X509CRLEntry', - 'X509EncodedKeySpec', 'X509Extension', 'ZipEntry', - 'ZipException', 'ZipFile', 'ZipInputStream', - 'ZipOutputStream', 'ZoneView', - '_BindingIteratorImplBase', '_BindingIteratorStub', - '_IDLTypeStub', '_NamingContextImplBase', - '_NamingContextStub', '_PolicyStub', '_Remote_Stub' - ), - 4 => array( - 'boolean', 'byte', 'char', 'double', 'float', 'int', 'long', - 'short', 'void' - ), - 5 => array( - 'allProperties', 'asImmutable', 'asSynchronized', 'collect', - 'count', 'each', 'eachProperty', 'eachPropertyName', - 'eachWithIndex', 'find', 'findAll', 'findIndexOf', - 'flatten', 'get', 'grep', 'inject', 'intersect', - 'join', 'max', 'min', 'pop', 'reverse', - 'reverseEach', 'size', 'sort', 'subMap', 'toList' - ), - 6 => array( - 'center', 'contains', 'eachMatch', 'padLeft', 'padRight', - 'toCharacter', 'tokenize', 'toLong', 'toURL' - ), - 7 => array( - 'append', 'eachByte', 'eachFile', 'eachFileRecurse', 'eachLine', - 'eachLines', 'encodeBase64', 'filterLine', 'getText', - 'splitEachLine', 'transformChar', 'transformLine', - 'withOutputStream', 'withPrintWriter', 'withReader', - 'withStream', 'withStreams', 'withWriter', - 'withWriterAppend', 'write', 'writeLine' - ), - 8 => array( - 'dump', 'getLastMatcher', 'inspect', 'invokeMethod', 'print', - 'println', 'start', 'startDaemon', 'step', 'times', - 'upto', 'use' - ), - 9 => array( - 'call', 'close', 'eachRow', 'execute', 'executeUpdate', 'Sql' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '*', '&', '%', '!', ';', '<', '>', '?', '|', '=', - '=>', '||', '-', '+', '<<', '<<<', '&&' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => true, - 1 => false, - 2 => false, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true, - 9 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #aaaadd; font-weight: bold;', - 4 => 'color: #993333;', - 5 => 'color: #663399;', - 6 => 'color: #CC0099;', - 7 => 'color: #FFCC33;', - 8 => 'color: #993399;', - 9 => 'color: #993399; font-weight: bold;' - ), - 'COMMENTS' => array( - 1=> 'color: #808080; font-style: italic;', - 2=> 'color: #a1a100;', - 3=> 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff;' - ) - ), - 'URLS' => array( - 1 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAMEL}', - 2 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAMEL}', - 3 => 'http://www.google.de/search?as_q={FNAME}&num=100&hl=en&as_occt=url&as_sitesearch=java.sun.com%2Fj2se%2F1%2E5%2E0%2Fdocs%2Fapi%2F', - 4 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAME}', - 5 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAME}', - 6 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAME}', - 7 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAME}', - 8 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAME}', - 9 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAME}' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - //Variables - 0 => '\\$\\{[a-zA-Z_][a-zA-Z0-9_]*\\}' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/gwbasic.php b/library/Vendors/geshi/geshi/gwbasic.php deleted file mode 100644 index 7b2385de..00000000 --- a/library/Vendors/geshi/geshi/gwbasic.php +++ /dev/null @@ -1,153 +0,0 @@ - 'GwBasic', - 'COMMENT_SINGLE' => array(1 => "'", 2=> "REM"), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - /* Statements */ - 1 => array('END','FOR','NEXT','DATA','INPUT','DIM','READ','LET', - 'GOTO','RUN','IF','RESTORE','GOSUB','RETURN','REM', - 'STOP','PRINT','CLEAR','LIST','NEW','ON','WAIT','DEF', - 'POKE','CONT','OUT','LPRINT','LLIST','WIDTH','ELSE', - 'TRON','TROFF','SWAP','ERASE','EDIT','ERROR','RESUME', - 'DELETE','AUTO','RENUM','DEFSTR','DEFINT','DEFSNG', - 'DEFDBL','LINE','WHILE','WEND','CALL','WRITE','OPTION', - 'RANDOMIZE','OPEN','CLOSE','LOAD','MERGE','SAVE', - 'COLOR','CLS','MOTOR','BSAVE','BLOAD','SOUND','BEEP', - 'PSET','PRESET','SCREEN','KEY','LOCATE','TO','THEN', - 'STEP','USR','FN','SPC','NOT','ERL','ERR','STRING', - 'USING','INSTR','VARPTR','CSRLIN','POINT','OFF', - 'FILES','FIELD','SYSTEM','NAME','LSET','RSET','KILL', - 'PUT','GET','RESET','COMMON','CHAIN','PAINT','COM', - 'CIRCLE','DRAW','PLAY','TIMER','IOCTL','CHDIR','MKDIR', - 'RMDIR','SHELL','VIEW','WINDOW','PMAP','PALETTE','LCOPY', - 'CALLS','PCOPY','LOCK','UNLOCK','RANDOM','APPEND', - ), - 2 => array( - /* Functions */ - 'CVI','CVS','CVD','MKI','MKS','MKD','ENVIRON', - 'LEFT','RIGHT','MID','SGN','INT','ABS', - 'SQR','SIN','LOG','EXP','COS','TAN','ATN', - 'FRE','INP','POS','LEN','STR','VAL','ASC', - 'CHR','PEEK','SPACE','OCT','HEX','LPOS', - 'CINT','CSNG','CDBL','FIX','PEN','STICK', - 'STRIG','EOF','LOC','LOF' - ), - 3 => array( - /* alpha Operators */ - 'AND','OR','XOR','EQV','IMP','MOD' - ), - 4 => array( - /* parameterless functions */ - 'INKEY','DATE','TIME','ERDEV','RND' - ) - ), - 'SYMBOLS' => array( - 0 => array( - '>','=','<','+','-','*','/','^','\\' - ), - 1 => array( - '?' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #00a1a1;font-weight: bold', - 2 => 'color: #000066;font-weight: bold', - 3 => 'color: #00a166;font-weight: bold', - 4 => 'color: #0066a1;font-weight: bold' - ), - 'COMMENTS' => array( - 1 => 'color: #808080;', - 2 => 'color: #808080;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - /* Same as KEYWORDS[3] (and, or, not...) */ - 0 => 'color: #00a166;font-weight: bold', - 1 => 'color: #00a1a1;font-weight: bold', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 1 => 'color: #708090' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 1 => '^[0-9]+ ' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/haskell.php b/library/Vendors/geshi/geshi/haskell.php deleted file mode 100644 index 4997a26c..00000000 --- a/library/Vendors/geshi/geshi/haskell.php +++ /dev/null @@ -1,202 +0,0 @@ - 'Haskell', - 'COMMENT_SINGLE' => array( 1 => '--'), - 'COMMENT_MULTI' => array('{-' => '-}'), - 'COMMENT_REGEXP' => array( - 2 => "/-->/", - 3 => "/{-(?:(?R)|.)-}/s", //Nested Comments - ), - 'CASE_KEYWORDS' => 0, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => "\\", - 'KEYWORDS' => array( - /* main haskell keywords */ - 1 => array( - 'as', - 'case', 'of', 'class', 'data', 'default', - 'deriving', 'do', 'forall', 'hiding', 'if', 'then', - 'else', 'import', 'infix', 'infixl', 'infixr', - 'instance', 'let', 'in', 'module', 'newtype', - 'qualified', 'type', 'where' - ), - /* define names of main librarys, so we can link to it */ - 2 => array( - 'Foreign', 'Numeric', 'Prelude' - ), - /* just link to Prelude functions, cause it's the default opened library when starting Haskell */ - 3 => array( - 'not', 'otherwise', 'maybe', - 'either', 'fst', 'snd', 'curry', 'uncurry', - 'compare', - 'max', 'min', 'succ', 'pred', 'toEnum', 'fromEnum', - 'enumFrom', 'enumFromThen', 'enumFromTo', - 'enumFromThenTo', 'minBound', 'maxBound', - 'negate', 'abs', 'signum', - 'fromInteger', 'toRational', 'quot', 'rem', - 'div', 'mod', 'quotRem', 'divMod', 'toInteger', - 'recip', 'fromRational', 'pi', 'exp', - 'log', 'sqrt', 'logBase', 'sin', 'cos', - 'tan', 'asin', 'acos', 'atan', 'sinh', 'cosh', - 'tanh', 'asinh', 'acosh', 'atanh', - 'properFraction', 'truncate', 'round', 'ceiling', - 'floor', 'floatRadix', 'floatDigits', 'floatRange', - 'decodeFloat', 'encodeFloat', 'exponent', - 'significand', 'scaleFloat', 'isNaN', 'isInfinite', - 'isDenomalized', 'isNegativeZero', 'isIEEE', - 'atan2', 'subtract', 'even', 'odd', 'gcd', - 'lcm', 'fromIntegral', 'realToFrac', - 'return', 'fail', 'fmap', - 'mapM', 'mapM_', 'sequence', 'sequence_', - 'id', 'const','flip', - 'until', 'asTypeOf', 'error', 'undefined', - 'seq','map','filter', 'head', - 'last', 'tail', 'init', 'null', 'length', - 'reverse', 'foldl', 'foldl1', 'foldr', - 'foldr1', 'and', 'or', 'any', 'all', 'sum', - 'product', 'concat', 'concatMap', 'maximum', - 'minimum', 'scanl', 'scanl1', 'scanr', 'scanr1', - 'iterate', 'repeat', 'cycle', 'take', 'drop', - 'splitAt', 'teakWhile', 'dropWhile', 'span', - 'break', 'elem', 'notElem', 'lookup', 'zip', - 'zip3', 'zipWith', 'zipWith3', 'unzip', 'unzip3', - 'lines', 'words', 'unlines', - 'unwords', 'showPrec', 'show', 'showList', - 'shows', 'showChar', 'showString', 'showParen', - 'readsPrec', 'readList', 'reads', 'readParen', - 'read', 'lex', 'putChar', 'putStr', 'putStrLn', - 'print', 'getChar', 'getLine', 'getContents', - 'interact', 'readFile', 'writeFile', 'appendFile', - 'readIO', 'readLn', 'ioError', 'userError', 'catch' - ), - /* here Prelude Types */ - 4 => array ( - 'Bool', 'Maybe', 'Either', 'Ord', 'Ordering', - 'Char', 'String', 'Eq', 'Enum', 'Bounded', - 'Int', 'Integer', 'Float', 'Double', 'Rational', - 'Num', 'Real', 'Integral', 'Fractional', - 'Floating', 'RealFrac', 'RealFloat', 'Monad', - 'Functor', 'Show', 'ShowS', 'Read', 'ReadS', - 'IO' - ), - /* finally Prelude Exceptions */ - 5 => array ( - 'IOError', 'IOException' - ) - ), - /* highlighting symbols is really important in Haskell */ - 'SYMBOLS' => array( - '|', '->', '<-', '@', '!', '::', '_', '~', '=', '?', - '&&', '||', '==', '/=', '<', '<=', '>', - '>=','+', '-', '*','/', '%', '**', '^', '^^', - '>>=', '>>', '=<<', '$', '.', ',', '$!', - '++', '!!' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, /* functions name are case seinsitive */ - 3 => true, /* types name too */ - 4 => true, /* finally exceptions too */ - 5 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #06c; font-weight: bold;', /* nice blue */ - 2 => 'color: #06c; font-weight: bold;', /* blue as well */ - 3 => 'font-weight: bold;', /* make the preduled functions bold */ - 4 => 'color: #cccc00; font-weight: bold;', /* give types a different bg */ - 5 => 'color: maroon;' - ), - 'COMMENTS' => array( - 1 => 'color: #5d478b; font-style: italic;', - 2 => 'color: #339933; font-weight: bold;', - 3 => 'color: #5d478b; font-style: italic;', /* light purple */ - 'MULTI' => 'color: #5d478b; font-style: italic;' /* light purple */ - ), - 'ESCAPE_CHAR' => array( - 0 => 'background-color: #3cb371; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: green;' - ), - 'STRINGS' => array( - 0 => 'background-color: #3cb371;' /* nice green */ - ), - 'NUMBERS' => array( - 0 => 'color: red;' /* pink */ - ), - 'METHODS' => array( - 1 => 'color: #060;' /* dark green */ - ), - 'REGEXPS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #339933; font-weight: bold;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - /* some of keywords are Prelude functions */ - 1 => '', - /* link to the wanted library */ - 2 => 'http://haskell.org/ghc/docs/latest/html/libraries/base/{FNAME}.html', - /* link to Prelude functions */ - 3 => 'http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#v:{FNAME}', - /* link to Prelude types */ - 4 => 'http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#t:{FNAME}', - /* link to Prelude exceptions */ - 5 => 'http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#t:{FNAME}', - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/hicest.php b/library/Vendors/geshi/geshi/hicest.php deleted file mode 100644 index 6cb61f87..00000000 --- a/library/Vendors/geshi/geshi/hicest.php +++ /dev/null @@ -1,108 +0,0 @@ - 'HicEst', - 'COMMENT_SINGLE' => array(1 => '!'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', '\''), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - '$cmd_line', 'abs', 'acos', 'alarm', 'alias', 'allocate', 'appendix', 'asin', 'atan', 'axis', 'beep', - 'call', 'ceiling', 'char', 'character', 'com', 'continue', 'cos', 'cosh', 'data', 'diffeq', 'dimension', 'dlg', 'dll', - 'do', 'edit', 'else', 'elseif', 'end', 'enddo', 'endif', 'exp', 'floor', 'function', 'fuz', 'goto', 'iand', 'ichar', - 'ieor', 'if', 'index', 'init', 'int', 'intpol', 'ior', 'key', 'len', 'len_trim', 'line', 'lock', 'log', 'max', 'maxloc', - 'min', 'minloc', 'mod', 'nint', 'not', 'open', 'pop', 'ran', 'read', 'real', 'return', 'rgb', 'roots', 'sign', 'sin', - 'sinh', 'solve', 'sort', 'subroutine', 'sum', 'system', 'tan', 'tanh', 'then', 'time', 'use', 'window', 'write', 'xeq' - ) - ), - 'SYMBOLS' => array( - 1 => array( - '(', ')', '+', '-', '*', '/', '=', '<', '>', '!', '^', ':', ',' - ), - 2 => array( - '$', '$$' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #ff0000;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;', - ), - 'METHODS' => array( - 0 => 'color: #004000;' - ), - 'SYMBOLS' => array( - 1 => 'color: #339933;', - 2 => 'color: #ff0000;' - ), - 'REGEXPS' => array(), - 'SCRIPT' => array() - ), - 'URLS' => array(1 => ''), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array(), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array() -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/hq9plus.php b/library/Vendors/geshi/geshi/hq9plus.php deleted file mode 100644 index 50a0f80c..00000000 --- a/library/Vendors/geshi/geshi/hq9plus.php +++ /dev/null @@ -1,104 +0,0 @@ - 'HQ9+', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - ), - 'SYMBOLS' => array( - 'H', 'Q', '9', '+', 'h', 'q' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - ), - 'COMMENTS' => array( - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #a16000;' - ), - 'ESCAPE_CHAR' => array( - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'KEYWORDS' => GESHI_NEVER, - 'COMMENTS' => GESHI_NEVER, - 'STRINGS' => GESHI_NEVER, - 'REGEXPS' => GESHI_NEVER, - 'NUMBERS' => GESHI_NEVER - ) - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/html4strict.php b/library/Vendors/geshi/geshi/html4strict.php deleted file mode 100644 index 301513e4..00000000 --- a/library/Vendors/geshi/geshi/html4strict.php +++ /dev/null @@ -1,203 +0,0 @@ - 'HTML', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 2 => array( - 'a', 'abbr', 'acronym', 'address', 'applet', - - 'base', 'basefont', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'b', - - 'caption', 'center', 'cite', 'code', 'colgroup', 'col', - - 'dd', 'del', 'dfn', 'dir', 'div', 'dl', 'dt', - - 'em', - - 'fieldset', 'font', 'form', 'frame', 'frameset', - - 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'hr', 'html', - - 'iframe', 'ilayer', 'img', 'input', 'ins', 'isindex', 'i', - - 'kbd', - - 'label', 'legend', 'link', 'li', - - 'map', 'meta', - - 'noframes', 'noscript', - - 'object', 'ol', 'optgroup', 'option', - - 'param', 'pre', 'p', - - 'q', - - 'samp', 'script', 'select', 'small', 'span', 'strike', 'strong', 'style', 'sub', 'sup', 's', - - 'table', 'tbody', 'td', 'textarea', 'text', 'tfoot', 'thead', 'th', 'title', 'tr', 'tt', - - 'ul', 'u', - - 'var', - ), - 3 => array( - 'abbr', 'accept-charset', 'accept', 'accesskey', 'action', 'align', 'alink', 'alt', 'archive', 'axis', - 'background', 'bgcolor', 'border', - 'cellpadding', 'cellspacing', 'char', 'charoff', 'charset', 'checked', 'cite', 'class', 'classid', 'clear', 'code', 'codebase', 'codetype', 'color', 'cols', 'colspan', 'compact', 'content', 'coords', - 'data', 'datetime', 'declare', 'defer', 'dir', 'disabled', - 'enctype', - 'face', 'for', 'frame', 'frameborder', - 'headers', 'height', 'href', 'hreflang', 'hspace', 'http-equiv', - 'id', 'ismap', - 'label', 'lang', 'language', 'link', 'longdesc', - 'marginheight', 'marginwidth', 'maxlength', 'media', 'method', 'multiple', - 'name', 'nohref', 'noresize', 'noshade', 'nowrap', - 'object', 'onblur', 'onchange', 'onclick', 'ondblclick', 'onfocus', 'onkeydown', 'onkeypress', 'onkeyup', 'onload', 'onmousedown', 'onmousemove', 'onmouseout', 'onmouseover', 'onmouseup', 'onreset', 'onselect', 'onsubmit', 'onunload', - 'profile', 'prompt', - 'readonly', 'rel', 'rev', 'rowspan', 'rows', 'rules', - 'scheme', 'scope', 'scrolling', 'selected', 'shape', 'size', 'span', 'src', 'standby', 'start', 'style', 'summary', - 'tabindex', 'target', 'text', 'title', 'type', - 'usemap', - 'valign', 'value', 'valuetype', 'version', 'vlink', 'vspace', - 'width' - ) - ), - 'SYMBOLS' => array( - '/', '=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;' - ), - 'COMMENTS' => array( - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - -1 => 'color: #808080; font-style: italic;', // comments - 0 => 'color: #00bbdd;', - 1 => 'color: #ddbb00;', - 2 => 'color: #009900;' - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 2 => 'http://december.com/html/4/element/{FNAMEL}.html', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_ALWAYS, - 'SCRIPT_DELIMITERS' => array( - -1 => array( - '' - ), - 0 => array( - ' '>' - ), - 1 => array( - '&' => ';' - ), - 2 => array( - '<' => '>' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - -1 => false, - 0 => false, - 1 => false, - 2 => true - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 2 => array( - 'DISALLOWED_BEFORE' => '(?<=<|<\/)', - 'DISALLOWED_AFTER' => '(?=\s|\/|>)', - ) - ) - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/icon.php b/library/Vendors/geshi/geshi/icon.php deleted file mode 100644 index 0712c21c..00000000 --- a/library/Vendors/geshi/geshi/icon.php +++ /dev/null @@ -1,212 +0,0 @@ - 'Icon', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', '\''), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'break', 'case', 'continue', 'create', 'default', 'do', 'else', - 'end', 'every', 'fail', 'for', 'if', 'import', 'initial', - 'initially', 'invocable', 'link', 'next', 'not', 'of', 'package', - 'procedure', 'record', 'repeat', 'return', 'switch', 'suspend', - 'then', 'to', 'until', 'while' - ), - 2 => array( - 'global', 'local', 'static' - ), - 3 => array( - 'allocated', 'ascii', 'clock', 'collections', - 'column', 'cset', 'current', 'date', 'dateline', 'digits', - 'dump', 'e', 'error', 'errornumber', 'errortext', - 'errorvalue', 'errout', 'eventcode', 'eventsource', 'eventvalue', - 'fail', 'features', 'file', 'host', 'input', 'lcase', - 'letters', 'level', 'line', 'main', 'now', 'null', - 'output', 'phi', 'pi', 'pos', 'progname', 'random', - 'regions', 'source', 'storage', 'subject', 'syserr', 'time', - 'trace', 'ucase', 'version', 'col', 'control', 'interval', - 'ldrag', 'lpress', 'lrelease', 'mdrag', 'meta', 'mpress', - 'mrelease', 'rdrag', 'resize', 'row', 'rpress', 'rrelease', - 'shift', 'window', 'x', 'y' - ), - 4 => array( - 'abs', 'acos', 'any', 'args', 'asin', 'atan', 'bal', 'center', 'char', - 'chmod', 'close', 'cofail', 'collect', 'copy', 'cos', 'cset', 'ctime', 'delay', 'delete', - 'detab', 'display', 'dtor', 'entab', 'errorclear', 'event', 'eventmask', 'EvGet', 'exit', - 'exp', 'fetch', 'fieldnames', 'find', 'flock', 'flush', 'function', 'get', 'getch', - 'getche', 'getenv', 'gettimeofday', 'globalnames', 'gtime', 'iand', 'icom', 'image', - 'insert', 'integer', 'ior', 'ishift', 'ixor', 'key', 'left', 'list', 'load', 'loadfunc', - 'localnames', 'log', 'many', 'map', 'match', 'member', 'mkdir', 'move', 'name', 'numeric', - 'open', 'opmask', 'ord', 'paramnames', 'parent', 'pipe', 'pop', 'pos', 'proc', 'pull', - 'push', 'put', 'read', 'reads', 'real', 'receive', 'remove', 'rename', 'repl', 'reverse', - 'right', 'rmdir', 'rtod', 'runerr', 'seek', 'select', 'send', 'seq', 'serial', 'set', - 'setenv', 'sort', 'sortf', 'sql', 'sqrt', 'stat', 'stop', 'string', 'system', 'tab', - 'table', 'tan', 'trap', 'trim', 'truncate', 'type', 'upto', 'utime', 'variable', 'where', - 'write', 'writes' - ), - 5 => array( - 'Active', 'Alert', 'Bg', 'Clip', 'Clone', 'Color', 'ColorValue', - 'CopyArea', 'Couple', 'DrawArc', 'DrawCircle', 'DrawCurve', 'DrawCylinder', 'DrawDisk', - 'DrawImage', 'DrawLine', 'DrawPoint', 'DrawPolygon', 'DrawRectangle', 'DrawSegment', - 'DrawSphere', 'DrawString', 'DrawTorus', 'EraseArea', 'Event', 'Fg', 'FillArc', - 'FillCircle', 'FillPolygon', 'FillRectangle', 'Font', 'FreeColor', 'GotoRC', 'GotoXY', - 'IdentifyMatrix', 'Lower', 'MatrixMode', 'NewColor', 'PaletteChars', 'PaletteColor', - 'PaletteKey', 'Pattern', 'Pending', 'Pixel', 'PopMatrix', 'PushMatrix', 'PushRotate', - 'PushScale', 'PushTranslate', 'QueryPointer', 'Raise', 'ReadImage', 'Refresh', 'Rotate', - 'Scale', 'Texcoord', 'TextWidth', 'Texture', 'Translate', 'Uncouple', 'WAttrib', - 'WDefault', 'WFlush', 'WindowContents', 'WriteImage', 'WSync' - ), - 6 => array( - 'define', 'include', 'ifdef', 'ifndef', 'else', 'endif', 'error', - 'line', 'undef' - ), - 7 => array( - '_V9', '_AMIGA', '_ACORN', '_CMS', '_MACINTOSH', '_MSDOS_386', - '_MS_WINDOWS_NT', '_MSDOS', '_MVS', '_OS2', '_POR', 'T', '_UNIX', '_POSIX', '_DBM', - '_VMS', '_ASCII', '_EBCDIC', '_CO_EXPRESSIONS', '_CONSOLE_WINDOW', '_DYNAMIC_LOADING', - '_EVENT_MONITOR', '_EXTERNAL_FUNCTIONS', '_KEYBOARD_FUNCTIONS', '_LARGE_INTEGERS', - '_MULTITASKING', '_PIPES', '_RECORD_IO', '_SYSTEM_FUNCTION', '_MESSAGING', '_GRAPHICS', - '_X_WINDOW_SYSTEM', '_MS_WINDOWS', '_WIN32', '_PRESENTATION_MGR', '_ARM_FUNCTIONS', - '_DOS_FUNCTIONS' - ), - 8 => array( - 'line' - ) - ), - 'SYMBOLS' => array( - 1 => array( - '(', ')', '{', '}', '[', ']', '+', '-', '*', '/', '\\', '%', '=', '<', '>', '!', '^', - '&', '|', '?', ':', ';', ',', '.', '~', '@' - ), - 2 => array( - '$(', '$)', '$<', '$>', '$' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #b1b100;', - 3 => 'color: #b1b100;', - 4 => 'color: #b1b100;', - 5 => 'color: #b1b100;', - 6 => 'color: #b1b100;', - 7 => 'color: #b1b100;', - 8 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;', - ), - 'METHODS' => array( - 0 => 'color: #004000;' - ), - 'SYMBOLS' => array( - 1 => 'color: #339933;', - 2 => 'color: #b1b100;' - ), - 'REGEXPS' => array(), - 'SCRIPT' => array() - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array(1 => '.'), - 'REGEXPS' => array(), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array(), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 3 => array( - 'DISALLOWED_BEFORE' => '(?<=&)' - ), - 4 => array( - 'DISALLOWED_BEFORE' => "(? "(?![a-zA-Z0-9_\"\'])" - ), - 6 => array( - 'DISALLOWED_BEFORE' => '(?<=\$)' - ), - 8 => array( - 'DISALLOWED_BEFORE' => '(?<=#)' - ) - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/idl.php b/library/Vendors/geshi/geshi/idl.php deleted file mode 100644 index d2d9a92f..00000000 --- a/library/Vendors/geshi/geshi/idl.php +++ /dev/null @@ -1,123 +0,0 @@ - 'Uno Idl', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'published', 'get', 'set', 'service', 'singleton', 'type', 'module', 'interface', 'struct', - 'const', 'constants', 'exception', 'enum', 'raises', 'typedef' - ), - 2 => array( - 'bound', 'maybeambiguous', 'maybedefault', 'maybevoid', 'oneway', 'optional', - 'readonly', 'in', 'out', 'inout', 'attribute', 'transient', 'removable' - ), - 3 => array( - 'True', 'False', 'TRUE', 'FALSE' - ), - 4 => array( - 'string', 'long', 'byte', 'hyper', 'boolean', 'any', 'char', 'double', - 'void', 'sequence', 'unsigned' - ), - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':', ';', '...' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #990078; font-weight: bold', - 2 => 'color: #36dd1c;', - 3 => 'color: #990078; font-weight: bold', - 4 => 'color: #0000ec;' - ), - 'COMMENTS' => array( - 1 => 'color: #3f7f5f;', - 2 => 'color: #808080;', - 'MULTI' => 'color: #4080ff; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #666666; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #808080;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000dd;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - 1 => '::' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/ini.php b/library/Vendors/geshi/geshi/ini.php deleted file mode 100644 index e48cc045..00000000 --- a/library/Vendors/geshi/geshi/ini.php +++ /dev/null @@ -1,128 +0,0 @@ - 'INI', - 'COMMENT_SINGLE' => array(0 => ';'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - ), - 'SYMBOLS' => array( - '[', ']', '=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - ), - 'COMMENTS' => array( - 0 => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => '' - ), - 'STRINGS' => array( - 0 => 'color: #933;' - ), - 'NUMBERS' => array( - 0 => '' - ), - 'METHODS' => array( - 0 => '' - ), - 'SYMBOLS' => array( - 0 => 'color: #000066; font-weight:bold;' - ), - 'REGEXPS' => array( - 0 => 'color: #000066; font-weight:bold;', - 1 => 'color: #000099;', - 2 => 'color: #660066;' - ), - 'SCRIPT' => array( - 0 => '' - ) - ), - 'URLS' => array( - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Section names - 0 => '\[.+\]', - //Entry names - 1 => array( - GESHI_SEARCH => '^(\s*)([a-zA-Z0-9_\-]+)(\s*=)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - //Entry values - 2 => array( - // Evil hackery to get around GeSHi bug: <>" and ; are added so s can be matched - // Explicit match on variable names because if a comment is before the first < of the span - // gets chewed up... - GESHI_SEARCH => '([<>";a-zA-Z0-9_]+\s*)=(.*)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1=', - GESHI_AFTER => '' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/inno.php b/library/Vendors/geshi/geshi/inno.php deleted file mode 100644 index 9ec8cdfd..00000000 --- a/library/Vendors/geshi/geshi/inno.php +++ /dev/null @@ -1,212 +0,0 @@ - 'Inno', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('(*' => '*)'), - 'CASE_KEYWORDS' => 0, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'Setup','Types','Components','Tasks','Dirs','Files','Icons','INI', - 'InstallDelete','Languages','Messages','CustomMessage', - 'LangOptions','Registry','RUN','UninstallDelete','UninstallRun', - 'app','win','sys','syswow64','src','sd','pf','pf32','pf64','cf', - 'cf32','cf64','tmp','fonts','dao','group','localappdata','sendto', - 'userappdata','commonappdata','userdesktop','commondesktop', - 'userdocs','commondocs','userfavorites','commonfavorites', - 'userprograms','commonprograms','userstartmenu','commonstartmenu', - 'userstartup','commonstartup','usertemplates','commontemplates' - ), - 2 => array( - 'nil', 'false', 'true', 'var', 'type', 'const','And', 'Array', 'As', 'Begin', 'Case', 'Class', 'Constructor', 'Destructor', 'Div', 'Do', 'DownTo', 'Else', - 'End', 'Except', 'File', 'Finally', 'For', 'Function', 'Goto', 'If', 'Implementation', 'In', 'Inherited', 'Interface', - 'Is', 'Mod', 'Not', 'Object', 'Of', 'On', 'Or', 'Packed', 'Procedure', 'Property', 'Raise', 'Record', - 'Repeat', 'Set', 'Shl', 'Shr', 'Then', 'ThreadVar', 'To', 'Try', 'Unit', 'Until', 'Uses', 'While', 'With', 'Xor', - - 'HKCC','HKCR','HKCU','HKLM','HKU','alwaysoverwrite','alwaysskipifsameorolder','append', - 'binary','classic','closeonexit','comparetimestamp','confirmoverwrite', - 'createkeyifdoesntexist','createonlyiffileexists','createvalueifdoesntexist', - 'deleteafterinstall','deletekey','deletevalue','dirifempty','dontcloseonexit', - 'dontcopy','dontcreatekey','disablenouninstallwarning','dword','exclusive','expandsz', - 'external','files','filesandordirs','fixed','fontisnttruetype','ignoreversion','iscustom','isreadme', - 'modern','multisz','new','noerror','none','normal','nowait','onlyifdestfileexists', - 'onlyifdoesntexist','onlyifnewer','overwrite','overwritereadonly','postinstall', - 'preservestringtype','promptifolder','regserver','regtypelib','restart','restartreplace', - 'runhidden','runmaximized','runminimized','sharedfile','shellexec','showcheckbox', - 'skipifnotsilent','skipifsilent','silent','skipifdoesntexist', - 'skipifsourcedoesntexist','sortfilesbyextension','unchecked','uninsalwaysuninstall', - 'uninsclearvalue','uninsdeleteentry','uninsdeletekey','uninsdeletekeyifempty', - 'uninsdeletesection','uninsdeletesectionifempty','uninsdeletevalue', - 'uninsneveruninstall','useapppaths','verysilent','waituntilidle' - ), - 3 => array( - 'Abs', 'Addr', 'AnsiCompareStr', 'AnsiCompareText', 'AnsiContainsStr', 'AnsiEndsStr', 'AnsiIndexStr', 'AnsiLeftStr', - 'AnsiLowerCase', 'AnsiMatchStr', 'AnsiMidStr', 'AnsiPos', 'AnsiReplaceStr', 'AnsiReverseString', 'AnsiRightStr', - 'AnsiStartsStr', 'AnsiUpperCase', 'ArcCos', 'ArcSin', 'ArcTan', 'Assigned', 'BeginThread', 'Bounds', 'CelsiusToFahrenheit', - 'ChangeFileExt', 'Chr', 'CompareStr', 'CompareText', 'Concat', 'Convert', 'Copy', 'Cos', 'CreateDir', 'CurrToStr', - 'CurrToStrF', 'Date', 'DateTimeToFileDate', 'DateTimeToStr', 'DateToStr', 'DayOfTheMonth', 'DayOfTheWeek', 'DayOfTheYear', - 'DayOfWeek', 'DaysBetween', 'DaysInAMonth', 'DaysInAYear', 'DaySpan', 'DegToRad', 'DeleteFile', 'DiskFree', 'DiskSize', - 'DupeString', 'EncodeDate', 'EncodeDateTime', 'EncodeTime', 'EndOfADay', 'EndOfAMonth', 'Eof', 'Eoln', 'Exp', 'ExtractFileDir', - 'ExtractFileDrive', 'ExtractFileExt', 'ExtractFileName', 'ExtractFilePath', 'FahrenheitToCelsius', 'FileAge', - 'FileDateToDateTime', 'FileExists', 'FilePos', 'FileSearch', 'FileSetDate', 'FileSize', 'FindClose', 'FindCmdLineSwitch', - 'FindFirst', 'FindNext', 'FloatToStr', 'FloatToStrF', 'Format', 'FormatCurr', 'FormatDateTime', 'FormatFloat', 'Frac', - 'GetCurrentDir', 'GetLastError', 'GetMem', 'High', 'IncDay', 'IncMinute', 'IncMonth', 'IncYear', 'InputBox', - 'InputQuery', 'Int', 'IntToHex', 'IntToStr', 'IOResult', 'IsInfinite', 'IsLeapYear', 'IsMultiThread', 'IsNaN', - 'LastDelimiter', 'Length', 'Ln', 'Lo', 'Log10', 'Low', 'LowerCase', 'Max', 'Mean', 'MessageDlg', 'MessageDlgPos', - 'MonthOfTheYear', 'Now', 'Odd', 'Ord', 'ParamCount', 'ParamStr', 'Pi', 'Point', 'PointsEqual', 'Pos', 'Pred', - 'Printer', 'PromptForFileName', 'PtInRect', 'RadToDeg', 'Random', 'RandomRange', 'RecodeDate', 'RecodeTime', 'Rect', - 'RemoveDir', 'RenameFile', 'Round', 'SeekEof', 'SeekEoln', 'SelectDirectory', 'SetCurrentDir', 'Sin', 'SizeOf', - 'Slice', 'Sqr', 'Sqrt', 'StringOfChar', 'StringReplace', 'StringToWideChar', 'StrToCurr', 'StrToDate', 'StrToDateTime', - 'StrToFloat', 'StrToInt', 'StrToInt64', 'StrToInt64Def', 'StrToIntDef', 'StrToTime', 'StuffString', 'Succ', 'Sum', 'Tan', - 'Time', 'TimeToStr', 'Tomorrow', 'Trunc', 'UpCase', 'UpperCase', 'VarType', 'WideCharToString', 'WrapText', 'Yesterday', - 'Append', 'AppendStr', 'Assign', 'AssignFile', 'AssignPrn', 'Beep', 'BlockRead', 'BlockWrite', 'Break', - 'ChDir', 'Close', 'CloseFile', 'Continue', 'DateTimeToString', 'Dec', 'DecodeDate', 'DecodeDateTime', - 'DecodeTime', 'Delete', 'Dispose', 'EndThread', 'Erase', 'Exclude', 'Exit', 'FillChar', 'Flush', 'FreeAndNil', - 'FreeMem', 'GetDir', 'GetLocaleFormatSettings', 'Halt', 'Inc', 'Include', 'Insert', 'MkDir', 'Move', 'New', - 'ProcessPath', 'Randomize', 'Read', 'ReadLn', 'ReallocMem', 'Rename', 'ReplaceDate', 'ReplaceTime', - 'Reset', 'ReWrite', 'RmDir', 'RunError', 'Seek', 'SetLength', 'SetString', 'ShowMessage', 'ShowMessageFmt', - 'ShowMessagePos', 'Str', 'Truncate', 'Val', 'Write', 'WriteLn', - - 'AdminPrivilegesRequired','AfterInstall','AllowCancelDuringInstall','AllowNoIcons','AllowRootDirectory','AllowUNCPath','AlwaysRestart','AlwaysShowComponentsList','AlwaysShowDirOnReadyPage','AlwaysShowGroupOnReadyPage ','AlwaysUsePersonalGroup','AppComments','AppContact','AppCopyright','AppendDefaultDirName', - 'AppendDefaultGroupName','AppId','AppModifyPath','AppMutex','AppName','AppPublisher', - 'AppPublisherURL','AppReadmeFile','AppSupportURL','AppUpdatesURL','AppVerName','AppVersion', - 'Attribs','BackColor','BackColor2','BackColorDirection','BackSolid','BeforeInstall', - 'ChangesAssociations','ChangesEnvironment','Check','CodeFile','Comment','Compression','CopyMode', - 'CreateAppDir','CreateUninstallRegKey','DefaultDirName','DefaultGroupName', - 'DefaultUserInfoName','DefaultUserInfoOrg','DefaultUserInfoSerial', - 'Description','DestDir','DestName','DirExistsWarning', - 'DisableDirPage','DisableFinishedPage', - 'DisableProgramGroupPage','DisableReadyMemo','DisableReadyPage', - 'DisableStartupPrompt','DiskClusterSize','DiskSliceSize','DiskSpaceMBLabel', - 'DiskSpanning','DontMergeDuplicateFiles','EnableDirDoesntExistWarning','Encryption', - 'Excludes','ExtraDiskSpaceRequired','Filename','Flags','FlatComponentsList','FontInstall', - 'GroupDescription','HotKey','IconFilename','IconIndex','InfoAfterFile','InfoBeforeFile', - 'InternalCompressLevel','Key','LanguageDetectionMethod', - 'LicenseFile','MergeDuplicateFiles','MessagesFile','MinVersion','Name', - 'OnlyBelowVersion','OutputBaseFilename','OutputManifestFile','OutputDir', - 'Parameters','Password','Permissions','PrivilegesRequired','ReserveBytes', - 'RestartIfNeededByRun','Root','RunOnceId','Section','SetupIconFile', - 'ShowComponentSizes','ShowLanguageDialog','ShowTasksTreeLines','SlicesPerDisk', - 'SolidCompression','Source','SourceDir','StatusMsg','Subkey', - 'TimeStampRounding','TimeStampsInUTC','TouchDate','TouchTime','Type', - 'UninstallDisplayIcon','UninstallDisplayName','UninstallFilesDir','UninstallIconFile', - 'UninstallLogMode','UninstallRestartComputer','UninstallStyle','Uninstallable', - 'UpdateUninstallLogAppName','UsePreviousAppDir','UsePreviousGroup', - 'UsePreviousTasks','UsePreviousSetupType','UsePreviousUserInfo', - 'UserInfoPage','UseSetupLdr','ValueData','ValueName','ValueType', - 'VersionInfoVersion','VersionInfoCompany','VersionInfoDescription','VersionInfoTextVersion', - 'WindowResizable','WindowShowCaption','WindowStartMaximized', - 'WindowVisible','WizardImageBackColor','WizardImageFile','WizardImageStretch','WizardSmallImageBackColor','WizardSmallImageFile','WizardStyle','WorkingDir' - ), - 4 => array( - 'AnsiChar', 'AnsiString', 'Boolean', 'Byte', 'Cardinal', 'Char', 'Comp', 'Currency', 'Double', 'Extended', - 'Int64', 'Integer', 'LongInt', 'LongWord', 'PAnsiChar', 'PAnsiString', 'PChar', 'PCurrency', 'PDateTime', - 'PExtended', 'PInt64', 'Pointer', 'PShortString', 'PString', 'PVariant', 'PWideChar', 'PWideString', - 'Real', 'Real48', 'ShortInt', 'ShortString', 'Single', 'SmallInt', 'String', 'TBits', 'TConvType', 'TDateTime', - 'Text', 'TextFile', 'TFloatFormat', 'TFormatSettings', 'TList', 'TObject', 'TOpenDialog', 'TPoint', - 'TPrintDialog', 'TRect', 'TReplaceFlags', 'TSaveDialog', 'TSearchRec', 'TStringList', 'TSysCharSet', - 'TThreadFunc', 'Variant', 'WideChar', 'WideString', 'Word' - ), - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '@', '%', '&', '*', '|', '/', '<', '>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;',/*bold Black*/ - 2 => 'color: #000000;font-style: italic;',/*Black*/ - 3 => 'color: #0000FF;',/*blue*/ - 4 => 'color: #CC0000;'/*red*/ - ), - 'COMMENTS' => array( - 1 => 'color: #33FF00; font-style: italic;', - 'MULTI' => 'color: #33FF00; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;' - ), - 'REGEXPS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000000; font-weight: bold;', - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/intercal.php b/library/Vendors/geshi/geshi/intercal.php deleted file mode 100644 index cd800a8e..00000000 --- a/library/Vendors/geshi/geshi/intercal.php +++ /dev/null @@ -1,122 +0,0 @@ - 'INTERCAL', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - //Politeness - 1 => array( - 'DO', 'DOES', 'DONT', 'DON\'T', 'NOT', 'PLEASE', 'PLEASENT', 'PLEASEN\'T', 'MAYBE' - ), - //Statements - 2 => array( - 'STASH', 'RETRIEVE', 'NEXT', 'RESUME', 'FORGET', 'ABSTAIN', 'ABSTAINING', - 'COME', 'FROM', 'CALCULATING', 'REINSTATE', 'IGNORE', 'REMEMBER', - 'WRITE', 'IN', 'READ', 'OUT', 'GIVE', 'UP' - ) - ), - 'SYMBOLS' => array( - '.', ',', ':', ';', '#', - '~', '$', '&', '?', - '\'', '"', '<-' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000080; font-weight: bold;', - 2 => 'color: #000080; font-weight: bold;' - ), - 'COMMENTS' => array( - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'ESCAPE_CHAR' => array( - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 1 => 'color: #808080; font-style: italic;' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 1 => '^\(\d+\)' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'COMMENTS' => GESHI_NEVER, - 'STRINGS' => GESHI_NEVER, - 'NUMBERS' => GESHI_NEVER - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/io.php b/library/Vendors/geshi/geshi/io.php deleted file mode 100644 index 94c278f0..00000000 --- a/library/Vendors/geshi/geshi/io.php +++ /dev/null @@ -1,138 +0,0 @@ - 'Io', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'and', 'break', 'else', 'elseif', 'exit', 'for', 'foreach', 'if', 'ifFalse', 'ifNil', - 'ifTrue', 'or', 'pass', 'raise', 'return', 'then', 'try', 'wait', 'while', 'yield' - ), - 2 => array( - 'activate', 'activeCoroCount', 'asString', 'block', 'catch', 'clone', 'collectGarbage', - 'compileString', 'continue', 'do', 'doFile', 'doMessage', 'doString', 'forward', - 'getSlot', 'getenv', 'hasSlot', 'isActive', 'isNil', 'isResumable', 'list', 'message', - 'method', 'parent', 'pause', 'perform', 'performWithArgList', 'print', 'proto', - 'raiseResumable', 'removeSlot', 'resend', 'resume', 'schedulerSleepSeconds', 'self', - 'sender', 'setSchedulerSleepSeconds', 'setSlot', 'shallowCopy', 'slotNames', 'super', - 'system', 'thisBlock', 'thisContext', 'thisMessage', 'type', 'uniqueId', 'updateSlot', - 'write' - ), - 3 => array( - 'Array', 'AudioDevice', 'AudioMixer', 'Block', 'Box', 'Buffer', 'CFunction', 'CGI', - 'Color', 'Curses', 'DBM', 'DNSResolver', 'DOConnection', 'DOProxy', 'DOServer', - 'Date', 'Directory', 'Duration', 'DynLib', 'Error', 'Exception', 'FFT', 'File', - 'Fnmatch', 'Font', 'Future', 'GL', 'GLE', 'GLScissor', 'GLU', 'GLUCylinder', - 'GLUQuadric', 'GLUSphere', 'GLUT', 'Host', 'Image', 'Importer', 'LinkList', 'List', - 'Lobby', 'Locals', 'MD5', 'MP3Decoder', 'MP3Encoder', 'Map', 'Message', 'Movie', - 'NULL', 'Nil', 'Nop', 'Notifiction', 'Number', 'Object', 'OpenGL', 'Point', 'Protos', - 'Regex', 'SGMLTag', 'SQLite', 'Server', 'ShowMessage', 'SleepyCat', 'SleepyCatCursor', - 'Socket', 'SocketManager', 'Sound', 'Soup', 'Store', 'String', 'Tree', 'UDPSender', - 'UDPReceiver', 'URL', 'User', 'Warning', 'WeakLink' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '!', '@', '%', '&', '*', '|', '/', '<', '>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - 0 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/j.php b/library/Vendors/geshi/geshi/j.php deleted file mode 100644 index 61154c7e..00000000 --- a/library/Vendors/geshi/geshi/j.php +++ /dev/null @@ -1,227 +0,0 @@ - 'J', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - 1 => '/(? '/(?<=\bNote\b).*?$\s+\)(?:(?!\n)\s)*$/sm', //multiline comments in Note - 3 => "/'[^']*?$/m" //incomplete strings/open quotes - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array("'"), - 'HARDCHAR' => "'", - 'NUMBERS' => array( - //Some instances of infinity are not correctly handled by GeSHi NUMBERS currently - //There are two solutions labelled "infinity Method A" and "infinity Method B" - //infinity Method B - requires following adjustment to line 3349 of geshi.php - // preg_match('#\d#' becomes preg_match('#[\d_]#' - 0 => '\b(?:_?\d+(?:\.\d+)?(?:x|[bejprx]_?[\da-z]+(?:\.[\da-z]+)?)?)(?![\w\.\:])', //infinity Method A - //0 => '\b(?:_?\d+(?:\.\d+)?(?:x|[bejprx]_?[\da-z]+(?:\.[\da-z]+)?)?|__?)(?![\w\.\:])', //infinity Method B - ), - 'KEYWORDS' => array( - //Control words - 1 => array( - 'assert.', 'break.', 'case.', 'catch.', 'catcht.', 'continue.', 'do.', - 'else.', 'elseif.', 'end.', 'fcase.', 'for.', 'goto.', 'if.', 'label.', - 'return.', 'select.', 'throw.', 'trap.', 'try.', 'while.', 'whilst.' - ), - //Arguments - 2 => array( - 'm', 'n', 'u', 'v', 'x', 'y' - ), -/* -Commented out for now due to conflicts with Lang Check - //Primitives beginning with a symbol (except . or :) - 6 => array( - '=', '<', '<.', '<:', //verbs - '_:','>', '>.', '>:', - '+', '+.', '+:', '*', '*.', '*:', '-', '-.', '-:', '%', '%.', '%:', - '^', '^.', '$', '$.', '$:', '~.', '~:', '\|', '|.', '|:', - ',', ',.', ',:', ';', ';:', '#', '#.', '#:', '!', '/:', '\:', - '[', '[:', ']', '{', '{.', '{:', '{::', '}.', '}:', - '".', '":', '?', '?.', - '~', '\/;', '\\', '/.', '\\.', '}', //adverbs - '^:', ';.', '!.', '!:', //conj - '"', '`', '`:', '@', '@.', '@:', - '&', '&.', '&:', '&.:', - '_.', //nouns - '=.', '=:', //other - ), - //Primitives beginning with a letter or number - 7 => array( - 'A.', 'c.', 'C.', 'e.', 'E.', //verbs - 'i.', 'i:', 'I.', 'j.', 'L.', 'o.', - 'p.', 'p..', 'p:', 'q:', 'r.', 's:', 'u:', 'x:', - '_9:', '_8:', '_7:', '_6:', '_5:', '_4:', '_3:', '_2:', '_1:', - '0:', '1:', '2:', '3:', '4:', '5:', '6:', '7:', '8:', '9:', - 'b.', 'f.', 'M.', 't.', 't:', //adverbs - 'd.', 'D.', 'D:', 'H.', 'L:', 'S:', 'T.', //conj - 'a.', 'a:', //nouns - ), - //Primitives beginning with symbol . or : - 8 => array( - '..', '.:', '.', ':.', '::', ':', //conj - ), -*/ - ), - 'SYMBOLS' => array( - //Punctuation - 0 => array( - '(', ')' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, -// 6 => true, -// 7 => true, -// 8 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000ff; font-weight: bold;', - 2 => 'color: #0000cc; font-weight: bold;', -// 6 => 'color: #000000; font-weight: bold;', -// 7 => 'color: #000000; font-weight: bold;', -// 8 => 'color: #000000; font-weight: bold;', - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #666666; font-style: italic; font-weight: bold;', - 3 => 'color: #ff00ff; ', //open quote - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 'HARD' => 'font-weight: bold;', - 0 => '', - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 'HARD' => 'color: #ff0000;', - 0 => 'color: #ff0000;', - ), - 'NUMBERS' => array( - 0 => 'color: #009999; font-weight: bold;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #009900; font-weight: bold;' - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff; font-weight: bold;', //for_xyz. - same as kw1 - 1 => 'color: #009999; font-weight: bold;' //infinity - same as nu0 - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', //'http://www.jsoftware.com/help/dictionary/ctrl.htm', - 2 => '', -// 6 => '', //'http://www.jsoftware.com/jwiki/Vocabulary', -// 7 => '', //'http://www.jsoftware.com/jwiki/Vocabulary', -// 8 => '', //'http://www.jsoftware.com/jwiki/Vocabulary', - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 0 => '\b(for|goto|label)_[a-zA-Z]\w*\.', //for_xyz. - should be kw1 - 1 => '\b__?(?![\w\.\:])' //infinity - should be nu0 - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'BRACKETS' => GESHI_NEVER, - ), - 'KEYWORDS' => array( - //Control words - 2 => array( - 'DISALLOWED_BEFORE' => '(? '(?![\w\.\:])', - ), - //Primtives starting with a symbol (except . or :) - 6 => array( - 'DISALLOWED_BEFORE' => '(?!K)', // effect should be to allow anything - 'DISALLOWED_AFTER' => '(?=.*)', - ), - //Primtives starting with a letter - 7 => array( - 'DISALLOWED_BEFORE' => '(? '(?=.*)', - ), - //Primtives starting with symbol . or : - 8 => array( - 'DISALLOWED_BEFORE' => '(?<=\s)', - 'DISALLOWED_AFTER' => '(?=.*)', - ), - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/java.php b/library/Vendors/geshi/geshi/java.php deleted file mode 100644 index 3269dffe..00000000 --- a/library/Vendors/geshi/geshi/java.php +++ /dev/null @@ -1,983 +0,0 @@ - 'Java', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Import and Package directives (Basic Support only) - 2 => '/(?:(?<=import[\\n\\s])|(?<=package[\\n\\s]))[\\n\\s]*([a-zA-Z0-9_]+\\.)*([a-zA-Z0-9_]+|\*)(?=[\n\s;])/i', - // javadoc comments - 3 => '#/\*\*(?![\*\/]).*\*/#sU' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'for', 'foreach', 'if', 'else', 'while', 'do', - 'switch', 'case', 'return', 'public', - 'private', 'protected', 'extends', 'break', 'class', - 'new', 'try', 'catch', 'throws', 'finally', 'implements', - 'interface', 'throw', 'final', 'native', 'synchronized', 'this', - 'abstract', 'transient', 'instanceof', 'assert', 'continue', - 'default', 'enum', 'package', 'static', 'strictfp', 'super', - 'volatile', 'const', 'goto', 'import' - ), - 2 => array( - 'null', 'false', 'true' - ), - 3 => array( - 'AbstractAction', 'AbstractBorder', 'AbstractButton', - 'AbstractCellEditor', 'AbstractCollection', - 'AbstractColorChooserPanel', 'AbstractDocument', - 'AbstractDocument.AttributeContext', - 'AbstractDocument.Content', - 'AbstractDocument.ElementEdit', - 'AbstractLayoutCache', - 'AbstractLayoutCache.NodeDimensions', 'AbstractList', - 'AbstractListModel', 'AbstractMap', - 'AbstractMethodError', 'AbstractSequentialList', - 'AbstractSet', 'AbstractTableModel', - 'AbstractUndoableEdit', 'AbstractWriter', - 'AccessControlContext', 'AccessControlException', - 'AccessController', 'AccessException', 'Accessible', - 'AccessibleAction', 'AccessibleBundle', - 'AccessibleComponent', 'AccessibleContext', - 'AccessibleHyperlink', 'AccessibleHypertext', - 'AccessibleIcon', 'AccessibleObject', - 'AccessibleRelation', 'AccessibleRelationSet', - 'AccessibleResourceBundle', 'AccessibleRole', - 'AccessibleSelection', 'AccessibleState', - 'AccessibleStateSet', 'AccessibleTable', - 'AccessibleTableModelChange', 'AccessibleText', - 'AccessibleValue', 'Acl', 'AclEntry', - 'AclNotFoundException', 'Action', 'ActionEvent', - 'ActionListener', 'ActionMap', 'ActionMapUIResource', - 'Activatable', 'ActivateFailedException', - 'ActivationDesc', 'ActivationException', - 'ActivationGroup', 'ActivationGroupDesc', - 'ActivationGroupDesc.CommandEnvironment', - 'ActivationGroupID', 'ActivationID', - 'ActivationInstantiator', 'ActivationMonitor', - 'ActivationSystem', 'Activator', 'ActiveEvent', - 'Adjustable', 'AdjustmentEvent', - 'AdjustmentListener', 'Adler32', 'AffineTransform', - 'AffineTransformOp', 'AlgorithmParameterGenerator', - 'AlgorithmParameterGeneratorSpi', - 'AlgorithmParameters', 'AlgorithmParameterSpec', - 'AlgorithmParametersSpi', 'AllPermission', - 'AlphaComposite', 'AlreadyBound', - 'AlreadyBoundException', 'AlreadyBoundHelper', - 'AlreadyBoundHolder', 'AncestorEvent', - 'AncestorListener', 'Annotation', 'Any', 'AnyHolder', - 'AnySeqHelper', 'AnySeqHolder', 'Applet', - 'AppletContext', 'AppletInitializer', 'AppletStub', - 'ApplicationException', 'Arc2D', 'Arc2D.Double', - 'Arc2D.Float', 'Area', 'AreaAveragingScaleFilter', - 'ARG_IN', 'ARG_INOUT', 'ARG_OUT', - 'ArithmeticException', 'Array', - 'ArrayIndexOutOfBoundsException', 'ArrayList', - 'Arrays', 'ArrayStoreException', 'AsyncBoxView', - 'Attribute', 'AttributedCharacterIterator', - 'AttributedCharacterIterator.Attribute', - 'AttributedString', 'AttributeInUseException', - 'AttributeList', 'AttributeModificationException', - 'Attributes', 'Attributes.Name', 'AttributeSet', - 'AttributeSet.CharacterAttribute', - 'AttributeSet.ColorAttribute', - 'AttributeSet.FontAttribute', - 'AttributeSet.ParagraphAttribute', 'AudioClip', - 'AudioFileFormat', 'AudioFileFormat.Type', - 'AudioFileReader', 'AudioFileWriter', 'AudioFormat', - 'AudioFormat.Encoding', 'AudioInputStream', - 'AudioPermission', 'AudioSystem', - 'AuthenticationException', - 'AuthenticationNotSupportedException', - 'Authenticator', 'Autoscroll', 'AWTError', - 'AWTEvent', 'AWTEventListener', - 'AWTEventMulticaster', 'AWTException', - 'AWTPermission', 'BadKind', 'BadLocationException', - 'BAD_CONTEXT', 'BAD_INV_ORDER', 'BAD_OPERATION', - 'BAD_PARAM', 'BAD_POLICY', 'BAD_POLICY_TYPE', - 'BAD_POLICY_VALUE', 'BAD_TYPECODE', 'BandCombineOp', - 'BandedSampleModel', 'BasicArrowButton', - 'BasicAttribute', 'BasicAttributes', 'BasicBorders', - 'BasicBorders.ButtonBorder', - 'BasicBorders.FieldBorder', - 'BasicBorders.MarginBorder', - 'BasicBorders.MenuBarBorder', - 'BasicBorders.RadioButtonBorder', - 'BasicBorders.SplitPaneBorder', - 'BasicBorders.ToggleButtonBorder', - 'BasicButtonListener', 'BasicButtonUI', - 'BasicCheckBoxMenuItemUI', 'BasicCheckBoxUI', - 'BasicColorChooserUI', 'BasicComboBoxEditor', - 'BasicComboBoxEditor.UIResource', - 'BasicComboBoxRenderer', - 'BasicComboBoxRenderer.UIResource', - 'BasicComboBoxUI', 'BasicComboPopup', - 'BasicDesktopIconUI', 'BasicDesktopPaneUI', - 'BasicDirectoryModel', 'BasicEditorPaneUI', - 'BasicFileChooserUI', 'BasicGraphicsUtils', - 'BasicHTML', 'BasicIconFactory', - 'BasicInternalFrameTitlePane', - 'BasicInternalFrameUI', 'BasicLabelUI', - 'BasicListUI', 'BasicLookAndFeel', 'BasicMenuBarUI', - 'BasicMenuItemUI', 'BasicMenuUI', - 'BasicOptionPaneUI', - 'BasicOptionPaneUI.ButtonAreaLayout', 'BasicPanelUI', - 'BasicPasswordFieldUI', 'BasicPermission', - 'BasicPopupMenuSeparatorUI', 'BasicPopupMenuUI', - 'BasicProgressBarUI', 'BasicRadioButtonMenuItemUI', - 'BasicRadioButtonUI', 'BasicRootPaneUI', - 'BasicScrollBarUI', 'BasicScrollPaneUI', - 'BasicSeparatorUI', 'BasicSliderUI', - 'BasicSplitPaneDivider', 'BasicSplitPaneUI', - 'BasicStroke', 'BasicTabbedPaneUI', - 'BasicTableHeaderUI', 'BasicTableUI', - 'BasicTextAreaUI', 'BasicTextFieldUI', - 'BasicTextPaneUI', 'BasicTextUI', - 'BasicTextUI.BasicCaret', - 'BasicTextUI.BasicHighlighter', - 'BasicToggleButtonUI', 'BasicToolBarSeparatorUI', - 'BasicToolBarUI', 'BasicToolTipUI', 'BasicTreeUI', - 'BasicViewportUI', 'BatchUpdateException', - 'BeanContext', 'BeanContextChild', - 'BeanContextChildComponentProxy', - 'BeanContextChildSupport', - 'BeanContextContainerProxy', 'BeanContextEvent', - 'BeanContextMembershipEvent', - 'BeanContextMembershipListener', 'BeanContextProxy', - 'BeanContextServiceAvailableEvent', - 'BeanContextServiceProvider', - 'BeanContextServiceProviderBeanInfo', - 'BeanContextServiceRevokedEvent', - 'BeanContextServiceRevokedListener', - 'BeanContextServices', 'BeanContextServicesListener', - 'BeanContextServicesSupport', - 'BeanContextServicesSupport.BCSSServiceProvider', - 'BeanContextSupport', - 'BeanContextSupport.BCSIterator', 'BeanDescriptor', - 'BeanInfo', 'Beans', 'BevelBorder', 'BigDecimal', - 'BigInteger', 'BinaryRefAddr', 'BindException', - 'Binding', 'BindingHelper', 'BindingHolder', - 'BindingIterator', 'BindingIteratorHelper', - 'BindingIteratorHolder', 'BindingIteratorOperations', - 'BindingListHelper', 'BindingListHolder', - 'BindingType', 'BindingTypeHelper', - 'BindingTypeHolder', 'BitSet', 'Blob', 'BlockView', - 'Book', 'Boolean', 'BooleanControl', - 'BooleanControl.Type', 'BooleanHolder', - 'BooleanSeqHelper', 'BooleanSeqHolder', 'Border', - 'BorderFactory', 'BorderLayout', 'BorderUIResource', - 'BorderUIResource.BevelBorderUIResource', - 'BorderUIResource.CompoundBorderUIResource', - 'BorderUIResource.EmptyBorderUIResource', - 'BorderUIResource.EtchedBorderUIResource', - 'BorderUIResource.LineBorderUIResource', - 'BorderUIResource.MatteBorderUIResource', - 'BorderUIResource.TitledBorderUIResource', - 'BoundedRangeModel', 'Bounds', 'Box', 'Box.Filler', - 'BoxedValueHelper', 'BoxLayout', 'BoxView', - 'BreakIterator', 'BufferedImage', - 'BufferedImageFilter', 'BufferedImageOp', - 'BufferedInputStream', 'BufferedOutputStream', - 'BufferedReader', 'BufferedWriter', 'Button', - 'ButtonGroup', 'ButtonModel', 'ButtonUI', 'Byte', - 'ByteArrayInputStream', 'ByteArrayOutputStream', - 'ByteHolder', 'ByteLookupTable', 'Calendar', - 'CallableStatement', 'CannotProceed', - 'CannotProceedException', 'CannotProceedHelper', - 'CannotProceedHolder', 'CannotRedoException', - 'CannotUndoException', 'Canvas', 'CardLayout', - 'Caret', 'CaretEvent', 'CaretListener', 'CellEditor', - 'CellEditorListener', 'CellRendererPane', - 'Certificate', 'Certificate.CertificateRep', - 'CertificateEncodingException', - 'CertificateException', - 'CertificateExpiredException', 'CertificateFactory', - 'CertificateFactorySpi', - 'CertificateNotYetValidException', - 'CertificateParsingException', - 'ChangedCharSetException', 'ChangeEvent', - 'ChangeListener', 'Character', 'Character.Subset', - 'Character.UnicodeBlock', 'CharacterIterator', - 'CharArrayReader', 'CharArrayWriter', - 'CharConversionException', 'CharHolder', - 'CharSeqHelper', 'CharSeqHolder', 'Checkbox', - 'CheckboxGroup', 'CheckboxMenuItem', - 'CheckedInputStream', 'CheckedOutputStream', - 'Checksum', 'Choice', 'ChoiceFormat', 'Class', - 'ClassCastException', 'ClassCircularityError', - 'ClassDesc', 'ClassFormatError', 'ClassLoader', - 'ClassNotFoundException', 'Clip', 'Clipboard', - 'ClipboardOwner', 'Clob', 'Cloneable', - 'CloneNotSupportedException', 'CMMException', - 'CodeSource', 'CollationElementIterator', - 'CollationKey', 'Collator', 'Collection', - 'Collections', 'Color', - 'ColorChooserComponentFactory', 'ColorChooserUI', - 'ColorConvertOp', 'ColorModel', - 'ColorSelectionModel', 'ColorSpace', - 'ColorUIResource', 'ComboBoxEditor', 'ComboBoxModel', - 'ComboBoxUI', 'ComboPopup', 'CommunicationException', - 'COMM_FAILURE', 'Comparable', 'Comparator', - 'Compiler', 'CompletionStatus', - 'CompletionStatusHelper', 'Component', - 'ComponentAdapter', 'ComponentColorModel', - 'ComponentEvent', 'ComponentInputMap', - 'ComponentInputMapUIResource', 'ComponentListener', - 'ComponentOrientation', 'ComponentSampleModel', - 'ComponentUI', 'ComponentView', 'Composite', - 'CompositeContext', 'CompositeName', 'CompositeView', - 'CompoundBorder', 'CompoundControl', - 'CompoundControl.Type', 'CompoundEdit', - 'CompoundName', 'ConcurrentModificationException', - 'ConfigurationException', 'ConnectException', - 'ConnectIOException', 'Connection', 'Constructor', 'Container', - 'ContainerAdapter', 'ContainerEvent', - 'ContainerListener', 'ContentHandler', - 'ContentHandlerFactory', 'ContentModel', 'Context', - 'ContextList', 'ContextNotEmptyException', - 'ContextualRenderedImageFactory', 'Control', - 'Control.Type', 'ControlFactory', - 'ControllerEventListener', 'ConvolveOp', 'CRC32', - 'CRL', 'CRLException', 'CropImageFilter', 'CSS', - 'CSS.Attribute', 'CTX_RESTRICT_SCOPE', - 'CubicCurve2D', 'CubicCurve2D.Double', - 'CubicCurve2D.Float', 'Current', 'CurrentHelper', - 'CurrentHolder', 'CurrentOperations', 'Cursor', - 'Customizer', 'CustomMarshal', 'CustomValue', - 'DatabaseMetaData', 'DataBuffer', 'DataBufferByte', - 'DataBufferInt', 'DataBufferShort', - 'DataBufferUShort', 'DataFlavor', - 'DataFormatException', 'DatagramPacket', - 'DatagramSocket', 'DatagramSocketImpl', - 'DatagramSocketImplFactory', 'DataInput', - 'DataInputStream', 'DataLine', 'DataLine.Info', - 'DataOutput', 'DataOutputStream', - 'DataTruncation', 'DATA_CONVERSION', 'Date', - 'DateFormat', 'DateFormatSymbols', 'DebugGraphics', - 'DecimalFormat', 'DecimalFormatSymbols', - 'DefaultBoundedRangeModel', 'DefaultButtonModel', - 'DefaultCaret', 'DefaultCellEditor', - 'DefaultColorSelectionModel', 'DefaultComboBoxModel', - 'DefaultDesktopManager', 'DefaultEditorKit', - 'DefaultEditorKit.BeepAction', - 'DefaultEditorKit.CopyAction', - 'DefaultEditorKit.CutAction', - 'DefaultEditorKit.DefaultKeyTypedAction', - 'DefaultEditorKit.InsertBreakAction', - 'DefaultEditorKit.InsertContentAction', - 'DefaultEditorKit.InsertTabAction', - 'DefaultEditorKit.PasteAction,', - 'DefaultFocusManager', 'DefaultHighlighter', - 'DefaultHighlighter.DefaultHighlightPainter', - 'DefaultListCellRenderer', - 'DefaultListCellRenderer.UIResource', - 'DefaultListModel', 'DefaultListSelectionModel', - 'DefaultMenuLayout', 'DefaultMetalTheme', - 'DefaultMutableTreeNode', - 'DefaultSingleSelectionModel', - 'DefaultStyledDocument', - 'DefaultStyledDocument.AttributeUndoableEdit', - 'DefaultStyledDocument.ElementSpec', - 'DefaultTableCellRenderer', - 'DefaultTableCellRenderer.UIResource', - 'DefaultTableColumnModel', 'DefaultTableModel', - 'DefaultTextUI', 'DefaultTreeCellEditor', - 'DefaultTreeCellRenderer', 'DefaultTreeModel', - 'DefaultTreeSelectionModel', 'DefinitionKind', - 'DefinitionKindHelper', 'Deflater', - 'DeflaterOutputStream', 'Delegate', 'DesignMode', - 'DesktopIconUI', 'DesktopManager', 'DesktopPaneUI', - 'DGC', 'Dialog', 'Dictionary', 'DigestException', - 'DigestInputStream', 'DigestOutputStream', - 'Dimension', 'Dimension2D', 'DimensionUIResource', - 'DirContext', 'DirectColorModel', 'DirectoryManager', - 'DirObjectFactory', 'DirStateFactory', - 'DirStateFactory.Result', 'DnDConstants', 'Document', - 'DocumentEvent', 'DocumentEvent.ElementChange', - 'DocumentEvent.EventType', 'DocumentListener', - 'DocumentParser', 'DomainCombiner', 'DomainManager', - 'DomainManagerOperations', 'Double', 'DoubleHolder', - 'DoubleSeqHelper', 'DoubleSeqHolder', - 'DragGestureEvent', 'DragGestureListener', - 'DragGestureRecognizer', 'DragSource', - 'DragSourceContext', 'DragSourceDragEvent', - 'DragSourceDropEvent', 'DragSourceEvent', - 'DragSourceListener', 'Driver', 'DriverManager', - 'DriverPropertyInfo', 'DropTarget', - 'DropTarget.DropTargetAutoScroller', - 'DropTargetContext', 'DropTargetDragEvent', - 'DropTargetDropEvent', 'DropTargetEvent', - 'DropTargetListener', 'DSAKey', - 'DSAKeyPairGenerator', 'DSAParameterSpec', - 'DSAParams', 'DSAPrivateKey', 'DSAPrivateKeySpec', - 'DSAPublicKey', 'DSAPublicKeySpec', 'DTD', - 'DTDConstants', 'DynamicImplementation', 'DynAny', - 'DynArray', 'DynEnum', 'DynFixed', 'DynSequence', - 'DynStruct', 'DynUnion', 'DynValue', 'EditorKit', - 'Element', 'ElementIterator', 'Ellipse2D', - 'Ellipse2D.Double', 'Ellipse2D.Float', 'EmptyBorder', - 'EmptyStackException', 'EncodedKeySpec', 'Entity', - 'EnumControl', 'EnumControl.Type', 'Enumeration', - 'Environment', 'EOFException', 'Error', - 'EtchedBorder', 'Event', 'EventContext', - 'EventDirContext', 'EventListener', - 'EventListenerList', 'EventObject', 'EventQueue', - 'EventSetDescriptor', 'Exception', - 'ExceptionInInitializerError', 'ExceptionList', - 'ExpandVetoException', 'ExportException', - 'ExtendedRequest', 'ExtendedResponse', - 'Externalizable', 'FeatureDescriptor', 'Field', - 'FieldNameHelper', 'FieldPosition', 'FieldView', - 'File', 'FileChooserUI', 'FileDescriptor', - 'FileDialog', 'FileFilter', - 'FileInputStream', 'FilenameFilter', 'FileNameMap', - 'FileNotFoundException', 'FileOutputStream', - 'FilePermission', 'FileReader', 'FileSystemView', - 'FileView', 'FileWriter', 'FilteredImageSource', - 'FilterInputStream', 'FilterOutputStream', - 'FilterReader', 'FilterWriter', - 'FixedHeightLayoutCache', 'FixedHolder', - 'FlatteningPathIterator', 'FlavorMap', 'Float', - 'FloatControl', 'FloatControl.Type', 'FloatHolder', - 'FloatSeqHelper', 'FloatSeqHolder', 'FlowLayout', - 'FlowView', 'FlowView.FlowStrategy', 'FocusAdapter', - 'FocusEvent', 'FocusListener', 'FocusManager', - 'Font', 'FontFormatException', 'FontMetrics', - 'FontRenderContext', 'FontUIResource', 'Format', - 'FormatConversionProvider', 'FormView', 'Frame', - 'FREE_MEM', 'GapContent', 'GeneralPath', - 'GeneralSecurityException', 'GlyphJustificationInfo', - 'GlyphMetrics', 'GlyphVector', 'GlyphView', - 'GlyphView.GlyphPainter', 'GradientPaint', - 'GraphicAttribute', 'Graphics', 'Graphics2D', - 'GraphicsConfigTemplate', 'GraphicsConfiguration', - 'GraphicsDevice', 'GraphicsEnvironment', - 'GrayFilter', 'GregorianCalendar', - 'GridBagConstraints', 'GridBagLayout', 'GridLayout', - 'Group', 'Guard', 'GuardedObject', 'GZIPInputStream', - 'GZIPOutputStream', 'HasControls', 'HashMap', - 'HashSet', 'Hashtable', 'HierarchyBoundsAdapter', - 'HierarchyBoundsListener', 'HierarchyEvent', - 'HierarchyListener', 'Highlighter', - 'Highlighter.Highlight', - 'Highlighter.HighlightPainter', 'HTML', - 'HTML.Attribute', 'HTML.Tag', 'HTML.UnknownTag', - 'HTMLDocument', 'HTMLDocument.Iterator', - 'HTMLEditorKit', 'HTMLEditorKit.HTMLFactory', - 'HTMLEditorKit.HTMLTextAction', - 'HTMLEditorKit.InsertHTMLTextAction', - 'HTMLEditorKit.LinkController', - 'HTMLEditorKit.Parser', - 'HTMLEditorKit.ParserCallback', - 'HTMLFrameHyperlinkEvent', 'HTMLWriter', - 'HttpURLConnection', 'HyperlinkEvent', - 'HyperlinkEvent.EventType', 'HyperlinkListener', - 'ICC_ColorSpace', 'ICC_Profile', 'ICC_ProfileGray', - 'ICC_ProfileRGB', 'Icon', 'IconUIResource', - 'IconView', 'IdentifierHelper', 'Identity', - 'IdentityScope', 'IDLEntity', 'IDLType', - 'IDLTypeHelper', 'IDLTypeOperations', - 'IllegalAccessError', 'IllegalAccessException', - 'IllegalArgumentException', - 'IllegalComponentStateException', - 'IllegalMonitorStateException', - 'IllegalPathStateException', 'IllegalStateException', - 'IllegalThreadStateException', 'Image', - 'ImageConsumer', 'ImageFilter', - 'ImageGraphicAttribute', 'ImageIcon', - 'ImageObserver', 'ImageProducer', - 'ImagingOpException', 'IMP_LIMIT', - 'IncompatibleClassChangeError', - 'InconsistentTypeCode', 'IndexColorModel', - 'IndexedPropertyDescriptor', - 'IndexOutOfBoundsException', 'IndirectionException', - 'InetAddress', 'Inflater', 'InflaterInputStream', - 'InheritableThreadLocal', 'InitialContext', - 'InitialContextFactory', - 'InitialContextFactoryBuilder', 'InitialDirContext', - 'INITIALIZE', 'Initializer', 'InitialLdapContext', - 'InlineView', 'InputContext', 'InputEvent', - 'InputMap', 'InputMapUIResource', 'InputMethod', - 'InputMethodContext', 'InputMethodDescriptor', - 'InputMethodEvent', 'InputMethodHighlight', - 'InputMethodListener', 'InputMethodRequests', - 'InputStream', - 'InputStreamReader', 'InputSubset', 'InputVerifier', - 'Insets', 'InsetsUIResource', 'InstantiationError', - 'InstantiationException', 'Instrument', - 'InsufficientResourcesException', 'Integer', - 'INTERNAL', 'InternalError', 'InternalFrameAdapter', - 'InternalFrameEvent', 'InternalFrameListener', - 'InternalFrameUI', 'InterruptedException', - 'InterruptedIOException', - 'InterruptedNamingException', 'INTF_REPOS', - 'IntHolder', 'IntrospectionException', - 'Introspector', 'Invalid', - 'InvalidAlgorithmParameterException', - 'InvalidAttributeIdentifierException', - 'InvalidAttributesException', - 'InvalidAttributeValueException', - 'InvalidClassException', - 'InvalidDnDOperationException', - 'InvalidKeyException', 'InvalidKeySpecException', - 'InvalidMidiDataException', 'InvalidName', - 'InvalidNameException', - 'InvalidNameHelper', 'InvalidNameHolder', - 'InvalidObjectException', - 'InvalidParameterException', - 'InvalidParameterSpecException', - 'InvalidSearchControlsException', - 'InvalidSearchFilterException', 'InvalidSeq', - 'InvalidTransactionException', 'InvalidValue', - 'INVALID_TRANSACTION', 'InvocationEvent', - 'InvocationHandler', 'InvocationTargetException', - 'InvokeHandler', 'INV_FLAG', 'INV_IDENT', - 'INV_OBJREF', 'INV_POLICY', 'IOException', - 'IRObject', 'IRObjectOperations', 'IstringHelper', - 'ItemEvent', 'ItemListener', 'ItemSelectable', - 'Iterator', 'JApplet', 'JarEntry', 'JarException', - 'JarFile', 'JarInputStream', 'JarOutputStream', - 'JarURLConnection', 'JButton', 'JCheckBox', - 'JCheckBoxMenuItem', 'JColorChooser', 'JComboBox', - 'JComboBox.KeySelectionManager', 'JComponent', - 'JDesktopPane', 'JDialog', 'JEditorPane', - 'JFileChooser', 'JFrame', 'JInternalFrame', - 'JInternalFrame.JDesktopIcon', 'JLabel', - 'JLayeredPane', 'JList', 'JMenu', 'JMenuBar', - 'JMenuItem', 'JobAttributes', - 'JobAttributes.DefaultSelectionType', - 'JobAttributes.DestinationType', - 'JobAttributes.DialogType', - 'JobAttributes.MultipleDocumentHandlingType', - 'JobAttributes.SidesType', 'JOptionPane', 'JPanel', - 'JPasswordField', 'JPopupMenu', - 'JPopupMenu.Separator', 'JProgressBar', - 'JRadioButton', 'JRadioButtonMenuItem', 'JRootPane', - 'JScrollBar', 'JScrollPane', 'JSeparator', 'JSlider', - 'JSplitPane', 'JTabbedPane', 'JTable', - 'JTableHeader', 'JTextArea', 'JTextComponent', - 'JTextComponent.KeyBinding', 'JTextField', - 'JTextPane', 'JToggleButton', - 'JToggleButton.ToggleButtonModel', 'JToolBar', - 'JToolBar.Separator', 'JToolTip', 'JTree', - 'JTree.DynamicUtilTreeNode', - 'JTree.EmptySelectionModel', 'JViewport', 'JWindow', - 'Kernel', 'Key', 'KeyAdapter', 'KeyEvent', - 'KeyException', 'KeyFactory', 'KeyFactorySpi', - 'KeyListener', 'KeyManagementException', 'Keymap', - 'KeyPair', 'KeyPairGenerator', 'KeyPairGeneratorSpi', - 'KeySpec', 'KeyStore', 'KeyStoreException', - 'KeyStoreSpi', 'KeyStroke', 'Label', 'LabelUI', - 'LabelView', 'LastOwnerException', - 'LayeredHighlighter', - 'LayeredHighlighter.LayerPainter', 'LayoutManager', - 'LayoutManager2', 'LayoutQueue', 'LdapContext', - 'LdapReferralException', 'Lease', - 'LimitExceededException', 'Line', 'Line.Info', - 'Line2D', 'Line2D.Double', 'Line2D.Float', - 'LineBorder', 'LineBreakMeasurer', 'LineEvent', - 'LineEvent.Type', 'LineListener', 'LineMetrics', - 'LineNumberInputStream', 'LineNumberReader', - 'LineUnavailableException', 'LinkageError', - 'LinkedList', 'LinkException', 'LinkLoopException', - 'LinkRef', 'List', 'ListCellRenderer', - 'ListDataEvent', 'ListDataListener', 'ListIterator', - 'ListModel', 'ListResourceBundle', - 'ListSelectionEvent', 'ListSelectionListener', - 'ListSelectionModel', 'ListUI', 'ListView', - 'LoaderHandler', 'Locale', 'LocateRegistry', - 'LogStream', 'Long', 'LongHolder', - 'LongLongSeqHelper', 'LongLongSeqHolder', - 'LongSeqHelper', 'LongSeqHolder', 'LookAndFeel', - 'LookupOp', 'LookupTable', 'MalformedLinkException', - 'MalformedURLException', 'Manifest', 'Map', - 'Map.Entry', 'MARSHAL', 'MarshalException', - 'MarshalledObject', 'Math', 'MatteBorder', - 'MediaTracker', 'Member', 'MemoryImageSource', - 'Menu', 'MenuBar', 'MenuBarUI', 'MenuComponent', - 'MenuContainer', 'MenuDragMouseEvent', - 'MenuDragMouseListener', 'MenuElement', 'MenuEvent', - 'MenuItem', 'MenuItemUI', 'MenuKeyEvent', - 'MenuKeyListener', 'MenuListener', - 'MenuSelectionManager', 'MenuShortcut', - 'MessageDigest', 'MessageDigestSpi', 'MessageFormat', - 'MetaEventListener', 'MetalBorders', - 'MetalBorders.ButtonBorder', - 'MetalBorders.Flush3DBorder', - 'MetalBorders.InternalFrameBorder', - 'MetalBorders.MenuBarBorder', - 'MetalBorders.MenuItemBorder', - 'MetalBorders.OptionDialogBorder', - 'MetalBorders.PaletteBorder', - 'MetalBorders.PopupMenuBorder', - 'MetalBorders.RolloverButtonBorder', - 'MetalBorders.ScrollPaneBorder', - 'MetalBorders.TableHeaderBorder', - 'MetalBorders.TextFieldBorder', - 'MetalBorders.ToggleButtonBorder', - 'MetalBorders.ToolBarBorder', 'MetalButtonUI', - 'MetalCheckBoxIcon', 'MetalCheckBoxUI', - 'MetalComboBoxButton', 'MetalComboBoxEditor', - 'MetalComboBoxEditor.UIResource', - 'MetalComboBoxIcon', 'MetalComboBoxUI', - 'MetalDesktopIconUI', 'MetalFileChooserUI', - 'MetalIconFactory', 'MetalIconFactory.FileIcon16', - 'MetalIconFactory.FolderIcon16', - 'MetalIconFactory.PaletteCloseIcon', - 'MetalIconFactory.TreeControlIcon', - 'MetalIconFactory.TreeFolderIcon', - 'MetalIconFactory.TreeLeafIcon', - 'MetalInternalFrameTitlePane', - 'MetalInternalFrameUI', 'MetalLabelUI', - 'MetalLookAndFeel', 'MetalPopupMenuSeparatorUI', - 'MetalProgressBarUI', 'MetalRadioButtonUI', - 'MetalScrollBarUI', 'MetalScrollButton', - 'MetalScrollPaneUI', 'MetalSeparatorUI', - 'MetalSliderUI', 'MetalSplitPaneUI', - 'MetalTabbedPaneUI', 'MetalTextFieldUI', - 'MetalTheme', 'MetalToggleButtonUI', - 'MetalToolBarUI', 'MetalToolTipUI', 'MetalTreeUI', - 'MetaMessage', 'Method', 'MethodDescriptor', - 'MidiChannel', 'MidiDevice', 'MidiDevice.Info', - 'MidiDeviceProvider', 'MidiEvent', 'MidiFileFormat', - 'MidiFileReader', 'MidiFileWriter', 'MidiMessage', - 'MidiSystem', 'MidiUnavailableException', - 'MimeTypeParseException', 'MinimalHTMLWriter', - 'MissingResourceException', 'Mixer', 'Mixer.Info', - 'MixerProvider', 'ModificationItem', 'Modifier', - 'MouseAdapter', 'MouseDragGestureRecognizer', - 'MouseEvent', 'MouseInputAdapter', - 'MouseInputListener', 'MouseListener', - 'MouseMotionAdapter', 'MouseMotionListener', - 'MultiButtonUI', 'MulticastSocket', - 'MultiColorChooserUI', 'MultiComboBoxUI', - 'MultiDesktopIconUI', 'MultiDesktopPaneUI', - 'MultiFileChooserUI', 'MultiInternalFrameUI', - 'MultiLabelUI', 'MultiListUI', 'MultiLookAndFeel', - 'MultiMenuBarUI', 'MultiMenuItemUI', - 'MultiOptionPaneUI', 'MultiPanelUI', - 'MultiPixelPackedSampleModel', 'MultipleMaster', - 'MultiPopupMenuUI', 'MultiProgressBarUI', - 'MultiScrollBarUI', 'MultiScrollPaneUI', - 'MultiSeparatorUI', 'MultiSliderUI', - 'MultiSplitPaneUI', 'MultiTabbedPaneUI', - 'MultiTableHeaderUI', 'MultiTableUI', 'MultiTextUI', - 'MultiToolBarUI', 'MultiToolTipUI', 'MultiTreeUI', - 'MultiViewportUI', 'MutableAttributeSet', - 'MutableComboBoxModel', 'MutableTreeNode', 'Name', - 'NameAlreadyBoundException', 'NameClassPair', - 'NameComponent', 'NameComponentHelper', - 'NameComponentHolder', 'NamedValue', 'NameHelper', - 'NameHolder', 'NameNotFoundException', 'NameParser', - 'NamespaceChangeListener', 'NameValuePair', - 'NameValuePairHelper', 'Naming', 'NamingContext', - 'NamingContextHelper', 'NamingContextHolder', - 'NamingContextOperations', 'NamingEnumeration', - 'NamingEvent', 'NamingException', - 'NamingExceptionEvent', 'NamingListener', - 'NamingManager', 'NamingSecurityException', - 'NegativeArraySizeException', 'NetPermission', - 'NoClassDefFoundError', 'NoInitialContextException', - 'NoninvertibleTransformException', - 'NoPermissionException', 'NoRouteToHostException', - 'NoSuchAlgorithmException', - 'NoSuchAttributeException', 'NoSuchElementException', - 'NoSuchFieldError', 'NoSuchFieldException', - 'NoSuchMethodError', 'NoSuchMethodException', - 'NoSuchObjectException', 'NoSuchProviderException', - 'NotActiveException', 'NotBoundException', - 'NotContextException', 'NotEmpty', 'NotEmptyHelper', - 'NotEmptyHolder', 'NotFound', 'NotFoundHelper', - 'NotFoundHolder', 'NotFoundReason', - 'NotFoundReasonHelper', 'NotFoundReasonHolder', - 'NotOwnerException', 'NotSerializableException', - 'NO_IMPLEMENT', 'NO_MEMORY', 'NO_PERMISSION', - 'NO_RESOURCES', 'NO_RESPONSE', - 'NullPointerException', 'Number', 'NumberFormat', - 'NumberFormatException', 'NVList', 'Object', - 'ObjectChangeListener', 'ObjectFactory', - 'ObjectFactoryBuilder', 'ObjectHelper', - 'ObjectHolder', 'ObjectImpl', - 'ObjectInput', 'ObjectInputStream', - 'ObjectInputStream.GetField', - 'ObjectInputValidation', 'ObjectOutput', - 'ObjectOutputStream', 'ObjectOutputStream.PutField', - 'ObjectStreamClass', 'ObjectStreamConstants', - 'ObjectStreamException', 'ObjectStreamField', - 'ObjectView', 'OBJECT_NOT_EXIST', 'ObjID', - 'OBJ_ADAPTER', 'Observable', 'Observer', - 'OctetSeqHelper', 'OctetSeqHolder', 'OMGVMCID', - 'OpenType', 'Operation', - 'OperationNotSupportedException', 'Option', - 'OptionalDataException', 'OptionPaneUI', 'ORB', - 'OutOfMemoryError', 'OutputStream', - 'OutputStreamWriter', 'OverlayLayout', 'Owner', - 'Package', 'PackedColorModel', 'Pageable', - 'PageAttributes', 'PageAttributes.ColorType', - 'PageAttributes.MediaType', - 'PageAttributes.OrientationRequestedType', - 'PageAttributes.OriginType', - 'PageAttributes.PrintQualityType', 'PageFormat', - 'Paint', 'PaintContext', 'PaintEvent', 'Panel', - 'PanelUI', 'Paper', 'ParagraphView', - 'ParameterBlock', 'ParameterDescriptor', - 'ParseException', 'ParsePosition', 'Parser', - 'ParserDelegator', 'PartialResultException', - 'PasswordAuthentication', 'PasswordView', 'Patch', - 'PathIterator', 'Permission', - 'PermissionCollection', 'Permissions', - 'PERSIST_STORE', 'PhantomReference', - 'PipedInputStream', 'PipedOutputStream', - 'PipedReader', 'PipedWriter', 'PixelGrabber', - 'PixelInterleavedSampleModel', 'PKCS8EncodedKeySpec', - 'PlainDocument', 'PlainView', 'Point', 'Point2D', - 'Point2D.Double', 'Point2D.Float', 'Policy', - 'PolicyError', 'PolicyHelper', - 'PolicyHolder', 'PolicyListHelper', - 'PolicyListHolder', 'PolicyOperations', - 'PolicyTypeHelper', 'Polygon', 'PopupMenu', - 'PopupMenuEvent', 'PopupMenuListener', 'PopupMenuUI', - 'Port', 'Port.Info', 'PortableRemoteObject', - 'PortableRemoteObjectDelegate', 'Position', - 'Position.Bias', 'PreparedStatement', 'Principal', - 'PrincipalHolder', 'Printable', - 'PrinterAbortException', 'PrinterException', - 'PrinterGraphics', 'PrinterIOException', - 'PrinterJob', 'PrintGraphics', 'PrintJob', - 'PrintStream', 'PrintWriter', 'PrivateKey', - 'PRIVATE_MEMBER', 'PrivilegedAction', - 'PrivilegedActionException', - 'PrivilegedExceptionAction', 'Process', - 'ProfileDataException', 'ProgressBarUI', - 'ProgressMonitor', 'ProgressMonitorInputStream', - 'Properties', 'PropertyChangeEvent', - 'PropertyChangeListener', 'PropertyChangeSupport', - 'PropertyDescriptor', 'PropertyEditor', - 'PropertyEditorManager', 'PropertyEditorSupport', - 'PropertyPermission', 'PropertyResourceBundle', - 'PropertyVetoException', 'ProtectionDomain', - 'ProtocolException', 'Provider', 'ProviderException', - 'Proxy', 'PublicKey', 'PUBLIC_MEMBER', - 'PushbackInputStream', 'PushbackReader', - 'QuadCurve2D', 'QuadCurve2D.Double', - 'QuadCurve2D.Float', 'Random', 'RandomAccessFile', - 'Raster', 'RasterFormatException', 'RasterOp', - 'Reader', 'Receiver', 'Rectangle', 'Rectangle2D', - 'Rectangle2D.Double', 'Rectangle2D.Float', - 'RectangularShape', 'Ref', 'RefAddr', 'Reference', - 'Referenceable', 'ReferenceQueue', - 'ReferralException', 'ReflectPermission', 'Registry', - 'RegistryHandler', 'RemarshalException', 'Remote', - 'RemoteCall', 'RemoteException', 'RemoteObject', - 'RemoteRef', 'RemoteServer', 'RemoteStub', - 'RenderableImage', 'RenderableImageOp', - 'RenderableImageProducer', 'RenderContext', - 'RenderedImage', 'RenderedImageFactory', 'Renderer', - 'RenderingHints', 'RenderingHints.Key', - 'RepaintManager', 'ReplicateScaleFilter', - 'Repository', 'RepositoryIdHelper', 'Request', - 'RescaleOp', 'Resolver', 'ResolveResult', - 'ResourceBundle', 'ResponseHandler', 'ResultSet', - 'ResultSetMetaData', 'ReverbType', 'RGBImageFilter', - 'RMIClassLoader', 'RMIClientSocketFactory', - 'RMIFailureHandler', 'RMISecurityException', - 'RMISecurityManager', 'RMIServerSocketFactory', - 'RMISocketFactory', 'Robot', 'RootPaneContainer', - 'RootPaneUI', 'RoundRectangle2D', - 'RoundRectangle2D.Double', 'RoundRectangle2D.Float', - 'RowMapper', 'RSAKey', 'RSAKeyGenParameterSpec', - 'RSAPrivateCrtKey', 'RSAPrivateCrtKeySpec', - 'RSAPrivateKey', 'RSAPrivateKeySpec', 'RSAPublicKey', - 'RSAPublicKeySpec', 'RTFEditorKit', - 'RuleBasedCollator', 'Runnable', 'RunTime', - 'Runtime', 'RuntimeException', 'RunTimeOperations', - 'RuntimePermission', 'SampleModel', - 'SchemaViolationException', 'Scrollable', - 'Scrollbar', 'ScrollBarUI', 'ScrollPane', - 'ScrollPaneConstants', 'ScrollPaneLayout', - 'ScrollPaneLayout.UIResource', 'ScrollPaneUI', - 'SearchControls', 'SearchResult', - 'SecureClassLoader', 'SecureRandom', - 'SecureRandomSpi', 'Security', 'SecurityException', - 'SecurityManager', 'SecurityPermission', 'Segment', - 'SeparatorUI', 'Sequence', 'SequenceInputStream', - 'Sequencer', 'Sequencer.SyncMode', 'Serializable', - 'SerializablePermission', 'ServantObject', - 'ServerCloneException', 'ServerError', - 'ServerException', 'ServerNotActiveException', - 'ServerRef', 'ServerRequest', - 'ServerRuntimeException', 'ServerSocket', - 'ServiceDetail', 'ServiceDetailHelper', - 'ServiceInformation', 'ServiceInformationHelper', - 'ServiceInformationHolder', - 'ServiceUnavailableException', 'Set', - 'SetOverrideType', 'SetOverrideTypeHelper', 'Shape', - 'ShapeGraphicAttribute', 'Short', 'ShortHolder', - 'ShortLookupTable', 'ShortMessage', 'ShortSeqHelper', - 'ShortSeqHolder', 'Signature', 'SignatureException', - 'SignatureSpi', 'SignedObject', 'Signer', - 'SimpleAttributeSet', 'SimpleBeanInfo', - 'SimpleDateFormat', 'SimpleTimeZone', - 'SinglePixelPackedSampleModel', - 'SingleSelectionModel', 'SizeLimitExceededException', - 'SizeRequirements', 'SizeSequence', 'Skeleton', - 'SkeletonMismatchException', - 'SkeletonNotFoundException', 'SliderUI', 'Socket', - 'SocketException', 'SocketImpl', 'SocketImplFactory', - 'SocketOptions', 'SocketPermission', - 'SocketSecurityException', 'SoftBevelBorder', - 'SoftReference', 'SortedMap', 'SortedSet', - 'Soundbank', 'SoundbankReader', 'SoundbankResource', - 'SourceDataLine', 'SplitPaneUI', 'SQLData', - 'SQLException', 'SQLInput', 'SQLOutput', - 'SQLPermission', 'SQLWarning', 'Stack', - 'StackOverflowError', 'StateEdit', 'StateEditable', - 'StateFactory', 'Statement', 'Streamable', - 'StreamableValue', 'StreamCorruptedException', - 'StreamTokenizer', 'StrictMath', 'String', - 'StringBuffer', 'StringBufferInputStream', - 'StringCharacterIterator', 'StringContent', - 'StringHolder', 'StringIndexOutOfBoundsException', - 'StringReader', 'StringRefAddr', 'StringSelection', - 'StringTokenizer', 'StringValueHelper', - 'StringWriter', 'Stroke', 'Struct', 'StructMember', - 'StructMemberHelper', 'Stub', 'StubDelegate', - 'StubNotFoundException', 'Style', 'StyleConstants', - 'StyleConstants.CharacterConstants', - 'StyleConstants.ColorConstants', - 'StyleConstants.FontConstants', - 'StyleConstants.ParagraphConstants', 'StyleContext', - 'StyledDocument', 'StyledEditorKit', - 'StyledEditorKit.AlignmentAction', - 'StyledEditorKit.BoldAction', - 'StyledEditorKit.FontFamilyAction', - 'StyledEditorKit.FontSizeAction', - 'StyledEditorKit.ForegroundAction', - 'StyledEditorKit.ItalicAction', - 'StyledEditorKit.StyledTextAction', - 'StyledEditorKit.UnderlineAction', 'StyleSheet', - 'StyleSheet.BoxPainter', 'StyleSheet.ListPainter', - 'SwingConstants', 'SwingPropertyChangeSupport', - 'SwingUtilities', 'SyncFailedException', - 'Synthesizer', 'SysexMessage', 'System', - 'SystemColor', 'SystemException', 'SystemFlavorMap', - 'TabableView', 'TabbedPaneUI', 'TabExpander', - 'TableCellEditor', 'TableCellRenderer', - 'TableColumn', 'TableColumnModel', - 'TableColumnModelEvent', 'TableColumnModelListener', - 'TableHeaderUI', 'TableModel', 'TableModelEvent', - 'TableModelListener', 'TableUI', 'TableView', - 'TabSet', 'TabStop', 'TagElement', 'TargetDataLine', - 'TCKind', 'TextAction', 'TextArea', 'TextAttribute', - 'TextComponent', 'TextEvent', 'TextField', - 'TextHitInfo', 'TextLayout', - 'TextLayout.CaretPolicy', 'TextListener', - 'TextMeasurer', 'TextUI', 'TexturePaint', 'Thread', - 'ThreadDeath', 'ThreadGroup', 'ThreadLocal', - 'Throwable', 'Tie', 'TileObserver', 'Time', - 'TimeLimitExceededException', 'Timer', - 'TimerTask', 'Timestamp', 'TimeZone', 'TitledBorder', - 'ToolBarUI', 'Toolkit', 'ToolTipManager', - 'ToolTipUI', 'TooManyListenersException', 'Track', - 'TransactionRequiredException', - 'TransactionRolledbackException', - 'TRANSACTION_REQUIRED', 'TRANSACTION_ROLLEDBACK', - 'Transferable', 'TransformAttribute', 'TRANSIENT', - 'Transmitter', 'Transparency', 'TreeCellEditor', - 'TreeCellRenderer', 'TreeExpansionEvent', - 'TreeExpansionListener', 'TreeMap', 'TreeModel', - 'TreeModelEvent', 'TreeModelListener', 'TreeNode', - 'TreePath', 'TreeSelectionEvent', - 'TreeSelectionListener', 'TreeSelectionModel', - 'TreeSet', 'TreeUI', 'TreeWillExpandListener', - 'TypeCode', 'TypeCodeHolder', 'TypeMismatch', - 'Types', 'UID', 'UIDefaults', - 'UIDefaults.ActiveValue', 'UIDefaults.LazyInputMap', - 'UIDefaults.LazyValue', 'UIDefaults.ProxyLazyValue', - 'UIManager', 'UIManager.LookAndFeelInfo', - 'UIResource', 'ULongLongSeqHelper', - 'ULongLongSeqHolder', 'ULongSeqHelper', - 'ULongSeqHolder', 'UndeclaredThrowableException', - 'UndoableEdit', 'UndoableEditEvent', - 'UndoableEditListener', 'UndoableEditSupport', - 'UndoManager', 'UnexpectedException', - 'UnicastRemoteObject', 'UnionMember', - 'UnionMemberHelper', 'UNKNOWN', 'UnknownError', - 'UnknownException', 'UnknownGroupException', - 'UnknownHostException', - 'UnknownObjectException', 'UnknownServiceException', - 'UnknownUserException', 'UnmarshalException', - 'UnrecoverableKeyException', 'Unreferenced', - 'UnresolvedPermission', 'UnsatisfiedLinkError', - 'UnsolicitedNotification', - 'UnsolicitedNotificationEvent', - 'UnsolicitedNotificationListener', - 'UnsupportedAudioFileException', - 'UnsupportedClassVersionError', - 'UnsupportedEncodingException', - 'UnsupportedFlavorException', - 'UnsupportedLookAndFeelException', - 'UnsupportedOperationException', - 'UNSUPPORTED_POLICY', 'UNSUPPORTED_POLICY_VALUE', - 'URL', 'URLClassLoader', 'URLConnection', - 'URLDecoder', 'URLEncoder', 'URLStreamHandler', - 'URLStreamHandlerFactory', 'UserException', - 'UShortSeqHelper', 'UShortSeqHolder', - 'UTFDataFormatException', 'Util', 'UtilDelegate', - 'Utilities', 'ValueBase', 'ValueBaseHelper', - 'ValueBaseHolder', 'ValueFactory', 'ValueHandler', - 'ValueMember', 'ValueMemberHelper', - 'VariableHeightLayoutCache', 'Vector', 'VerifyError', - 'VersionSpecHelper', 'VetoableChangeListener', - 'VetoableChangeSupport', 'View', 'ViewFactory', - 'ViewportLayout', 'ViewportUI', - 'VirtualMachineError', 'Visibility', - 'VisibilityHelper', 'VMID', 'VM_ABSTRACT', - 'VM_CUSTOM', 'VM_NONE', 'VM_TRUNCATABLE', - 'VoiceStatus', 'Void', 'WCharSeqHelper', - 'WCharSeqHolder', 'WeakHashMap', 'WeakReference', - 'Window', 'WindowAdapter', 'WindowConstants', - 'WindowEvent', 'WindowListener', 'WrappedPlainView', - 'WritableRaster', 'WritableRenderedImage', - 'WriteAbortedException', 'Writer', - 'WrongTransaction', 'WStringValueHelper', - 'X509Certificate', 'X509CRL', 'X509CRLEntry', - 'X509EncodedKeySpec', 'X509Extension', 'ZipEntry', - 'ZipException', 'ZipFile', 'ZipInputStream', - 'ZipOutputStream', 'ZoneView', - '_BindingIteratorImplBase', '_BindingIteratorStub', - '_IDLTypeStub', '_NamingContextImplBase', - '_NamingContextStub', '_PolicyStub', '_Remote_Stub' - ), - 4 => array( - 'void', 'double', 'int', 'boolean', 'byte', 'short', 'long', 'char', 'float' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', - '+', '-', '*', '/', '%', - '!', '&', '|', '^', - '<', '>', '=', - '?', ':', ';', - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => true, - 4 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000066; font-weight: bold;', - 3 => 'color: #003399;', - 4 => 'color: #000066; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #006699;', - 3 => 'color: #008000; font-style: italic; font-weight: bold;', - 3 => 'color: #008000; font-style: italic; font-weight: bold;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006633;', - 2 => 'color: #006633;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.google.com/search?hl=en&q=allinurl%3A{FNAMEL}+java.sun.com&btnI=I%27m%20Feeling%20Lucky', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/java5.php b/library/Vendors/geshi/geshi/java5.php deleted file mode 100644 index bc9af739..00000000 --- a/library/Vendors/geshi/geshi/java5.php +++ /dev/null @@ -1,1037 +0,0 @@ - 'Java(TM) 2 Platform Standard Edition 5.0', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Import and Package directives (Basic Support only) - 2 => '/(?:(?<=import[\\n\\s](?!static))|(?<=import[\\n\\s]static[\\n\\s])|(?<=package[\\n\\s]))[\\n\\s]*([a-zA-Z0-9_]+\\.)*([a-zA-Z0-9_]+|\*)(?=[\n\s;])/i', - // javadoc comments - 3 => '#/\*\*(?![\*\/]).*\*/#sU' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - /* see the authoritative list of all 50 Java keywords at */ - /* http://java.sun.com/docs/books/jls/third_edition/html/lexical.html#229308 */ - - /* java keywords, part 1: control flow */ - 'case', 'default', 'do', 'else', 'for', - 'goto', 'if', 'switch', 'while' - - /* IMO 'break', 'continue', 'return' and 'throw' */ - /* should also be added to this group, as they */ - /* also manage the control flow, */ - /* arguably 'try'/'catch'/'finally' as well */ - ), - 2 => array( - /* java keywords, part 2 */ - - 'break', 'continue', 'return', 'throw', - 'try', 'catch', 'finally', - - 'abstract', 'assert', 'class', 'const', 'enum', 'extends', - 'final', 'implements', 'import', 'instanceof', 'interface', - 'native', 'new', 'package', 'private', 'protected', - 'public', 'static', 'strictfp', 'super', 'synchronized', - 'this', 'throws', 'transient', 'volatile' - ), - 3 => array( - /* Java keywords, part 3: primitive data types and 'void' */ - 'boolean', 'byte', 'char', 'double', - 'float', 'int', 'long', 'short', 'void' - ), - 4 => array( - /* other reserved words in Java: literals */ - /* should be styled to look similar to numbers and Strings */ - 'false', 'null', 'true' - ), - 5 => array ( - 'Applet', 'AppletContext', 'AppletStub', 'AudioClip' - ), - 6 => array ( - 'AWTError', 'AWTEvent', 'AWTEventMulticaster', 'AWTException', 'AWTKeyStroke', 'AWTPermission', 'ActiveEvent', 'Adjustable', 'AlphaComposite', 'BasicStroke', 'BorderLayout', 'BufferCapabilities', 'BufferCapabilities.FlipContents', 'Button', 'Canvas', 'CardLayout', 'Checkbox', 'CheckboxGroup', 'CheckboxMenuItem', 'Choice', 'Color', 'Component', 'ComponentOrientation', 'Composite', 'CompositeContext', 'Container', 'ContainerOrderFocusTraversalPolicy', 'Cursor', 'DefaultFocusTraversalPolicy', 'DefaultKeyboardFocusManager', 'Dialog', 'Dimension', 'DisplayMode', 'EventQueue', 'FileDialog', 'FlowLayout', 'FocusTraversalPolicy', 'Font', 'FontFormatException', 'FontMetrics', 'Frame', 'GradientPaint', 'Graphics', 'Graphics2D', 'GraphicsConfigTemplate', 'GraphicsConfiguration', 'GraphicsDevice', 'GraphicsEnvironment', 'GridBagConstraints', 'GridBagLayout', 'GridLayout', 'HeadlessException', 'IllegalComponentStateException', 'Image', 'ImageCapabilities', 'Insets', 'ItemSelectable', 'JobAttributes', - 'JobAttributes.DefaultSelectionType', 'JobAttributes.DestinationType', 'JobAttributes.DialogType', 'JobAttributes.MultipleDocumentHandlingType', 'JobAttributes.SidesType', 'KeyEventDispatcher', 'KeyEventPostProcessor', 'KeyboardFocusManager', 'Label', 'LayoutManager', 'LayoutManager2', 'MediaTracker', 'Menu', 'MenuBar', 'MenuComponent', 'MenuContainer', 'MenuItem', 'MenuShortcut', 'MouseInfo', 'PageAttributes', 'PageAttributes.ColorType', 'PageAttributes.MediaType', 'PageAttributes.OrientationRequestedType', 'PageAttributes.OriginType', 'PageAttributes.PrintQualityType', 'Paint', 'PaintContext', 'Panel', 'Point', 'PointerInfo', 'Polygon', 'PopupMenu', 'PrintGraphics', 'PrintJob', 'Rectangle', 'RenderingHints', 'RenderingHints.Key', 'Robot', 'ScrollPane', 'ScrollPaneAdjustable', 'Scrollbar', 'Shape', 'Stroke', 'SystemColor', 'TextArea', 'TextComponent', 'TextField', 'TexturePaint', 'Toolkit', 'Transparency', 'Window' - ), - 7 => array ( - 'CMMException', 'ColorSpace', 'ICC_ColorSpace', 'ICC_Profile', 'ICC_ProfileGray', 'ICC_ProfileRGB', 'ProfileDataException' - ), - 8 => array ( - 'Clipboard', 'ClipboardOwner', 'DataFlavor', 'FlavorEvent', 'FlavorListener', 'FlavorMap', 'FlavorTable', 'MimeTypeParseException', 'StringSelection', 'SystemFlavorMap', 'Transferable', 'UnsupportedFlavorException' - ), - 9 => array ( - 'Autoscroll', 'DnDConstants', 'DragGestureEvent', 'DragGestureListener', 'DragGestureRecognizer', 'DragSource', 'DragSourceAdapter', 'DragSourceContext', 'DragSourceDragEvent', 'DragSourceDropEvent', 'DragSourceEvent', 'DragSourceListener', 'DragSourceMotionListener', 'DropTarget', 'DropTarget.DropTargetAutoScroller', 'DropTargetAdapter', 'DropTargetContext', 'DropTargetDragEvent', 'DropTargetDropEvent', 'DropTargetEvent', 'DropTargetListener', 'InvalidDnDOperationException', 'MouseDragGestureRecognizer' - ), - 10 => array ( - 'AWTEventListener', 'AWTEventListenerProxy', 'ActionEvent', 'ActionListener', 'AdjustmentEvent', 'AdjustmentListener', 'ComponentAdapter', 'ComponentEvent', 'ComponentListener', 'ContainerAdapter', 'ContainerEvent', 'ContainerListener', 'FocusAdapter', 'FocusEvent', 'FocusListener', 'HierarchyBoundsAdapter', 'HierarchyBoundsListener', 'HierarchyEvent', 'HierarchyListener', 'InputEvent', 'InputMethodEvent', 'InputMethodListener', 'InvocationEvent', 'ItemEvent', 'ItemListener', 'KeyAdapter', 'KeyEvent', 'KeyListener', 'MouseAdapter', 'MouseListener', 'MouseMotionAdapter', 'MouseMotionListener', 'MouseWheelEvent', 'MouseWheelListener', 'PaintEvent', 'TextEvent', 'TextListener', 'WindowAdapter', 'WindowEvent', 'WindowFocusListener', 'WindowListener', 'WindowStateListener' - ), - 11 => array ( - 'FontRenderContext', 'GlyphJustificationInfo', 'GlyphMetrics', 'GlyphVector', 'GraphicAttribute', 'ImageGraphicAttribute', 'LineBreakMeasurer', 'LineMetrics', 'MultipleMaster', 'NumericShaper', 'ShapeGraphicAttribute', 'TextAttribute', 'TextHitInfo', 'TextLayout', 'TextLayout.CaretPolicy', 'TextMeasurer', 'TransformAttribute' - ), - 12 => array ( - 'AffineTransform', 'Arc2D', 'Arc2D.Double', 'Arc2D.Float', 'Area', 'CubicCurve2D', 'CubicCurve2D.Double', 'CubicCurve2D.Float', 'Dimension2D', 'Ellipse2D', 'Ellipse2D.Double', 'Ellipse2D.Float', 'FlatteningPathIterator', 'GeneralPath', 'IllegalPathStateException', 'Line2D', 'Line2D.Double', 'Line2D.Float', 'NoninvertibleTransformException', 'PathIterator', 'Point2D', 'Point2D.Double', 'Point2D.Float', 'QuadCurve2D', 'QuadCurve2D.Double', 'QuadCurve2D.Float', 'Rectangle2D', 'Rectangle2D.Double', 'Rectangle2D.Float', 'RectangularShape', 'RoundRectangle2D', 'RoundRectangle2D.Double', 'RoundRectangle2D.Float' - ), - 13 => array ( - 'InputContext', 'InputMethodHighlight', 'InputMethodRequests', 'InputSubset' - ), - 14 => array ( - 'InputMethod', 'InputMethodContext', 'InputMethodDescriptor' - ), - 15 => array ( - 'AffineTransformOp', 'AreaAveragingScaleFilter', 'BandCombineOp', 'BandedSampleModel', 'BufferStrategy', 'BufferedImage', 'BufferedImageFilter', 'BufferedImageOp', 'ByteLookupTable', 'ColorConvertOp', 'ColorModel', 'ComponentColorModel', 'ComponentSampleModel', 'ConvolveOp', 'CropImageFilter', 'DataBuffer', 'DataBufferByte', 'DataBufferDouble', 'DataBufferFloat', 'DataBufferInt', 'DataBufferShort', 'DataBufferUShort', 'DirectColorModel', 'FilteredImageSource', 'ImageConsumer', 'ImageFilter', 'ImageObserver', 'ImageProducer', 'ImagingOpException', 'IndexColorModel', 'Kernel', 'LookupOp', 'LookupTable', 'MemoryImageSource', 'MultiPixelPackedSampleModel', 'PackedColorModel', 'PixelGrabber', 'PixelInterleavedSampleModel', 'RGBImageFilter', 'Raster', 'RasterFormatException', 'RasterOp', 'RenderedImage', 'ReplicateScaleFilter', 'RescaleOp', 'SampleModel', 'ShortLookupTable', 'SinglePixelPackedSampleModel', 'TileObserver', 'VolatileImage', 'WritableRaster', 'WritableRenderedImage' - ), - 16 => array ( - 'ContextualRenderedImageFactory', 'ParameterBlock', 'RenderContext', 'RenderableImage', 'RenderableImageOp', 'RenderableImageProducer', 'RenderedImageFactory' - ), - 17 => array ( - 'Book', 'PageFormat', 'Pageable', 'Paper', 'Printable', 'PrinterAbortException', 'PrinterException', 'PrinterGraphics', 'PrinterIOException', 'PrinterJob' - ), - 18 => array ( - 'AppletInitializer', 'BeanDescriptor', 'BeanInfo', 'Beans', 'Customizer', 'DefaultPersistenceDelegate', 'DesignMode', 'Encoder', 'EventHandler', 'EventSetDescriptor', 'ExceptionListener', 'Expression', 'FeatureDescriptor', 'IndexedPropertyChangeEvent', 'IndexedPropertyDescriptor', 'Introspector', 'MethodDescriptor', 'ParameterDescriptor', 'PersistenceDelegate', 'PropertyChangeEvent', 'PropertyChangeListener', 'PropertyChangeListenerProxy', 'PropertyChangeSupport', 'PropertyDescriptor', 'PropertyEditor', 'PropertyEditorManager', 'PropertyEditorSupport', 'PropertyVetoException', 'SimpleBeanInfo', 'VetoableChangeListener', 'VetoableChangeListenerProxy', 'VetoableChangeSupport', 'Visibility', 'XMLDecoder', 'XMLEncoder' - ), - 19 => array ( - 'BeanContext', 'BeanContextChild', 'BeanContextChildComponentProxy', 'BeanContextChildSupport', 'BeanContextContainerProxy', 'BeanContextEvent', 'BeanContextMembershipEvent', 'BeanContextMembershipListener', 'BeanContextProxy', 'BeanContextServiceAvailableEvent', 'BeanContextServiceProvider', 'BeanContextServiceProviderBeanInfo', 'BeanContextServiceRevokedEvent', 'BeanContextServiceRevokedListener', 'BeanContextServices', 'BeanContextServicesListener', 'BeanContextServicesSupport', 'BeanContextServicesSupport.BCSSServiceProvider', 'BeanContextSupport', 'BeanContextSupport.BCSIterator' - ), - 20 => array ( - 'BufferedInputStream', 'BufferedOutputStream', 'BufferedReader', 'BufferedWriter', 'ByteArrayInputStream', 'ByteArrayOutputStream', 'CharArrayReader', 'CharArrayWriter', 'CharConversionException', 'Closeable', 'DataInput', 'DataOutput', 'EOFException', 'Externalizable', 'File', 'FileDescriptor', 'FileInputStream', 'FileNotFoundException', 'FileOutputStream', 'FilePermission', 'FileReader', 'FileWriter', 'FilenameFilter', 'FilterInputStream', 'FilterOutputStream', 'FilterReader', 'FilterWriter', 'Flushable', 'IOException', 'InputStreamReader', 'InterruptedIOException', 'InvalidClassException', 'InvalidObjectException', 'LineNumberInputStream', 'LineNumberReader', 'NotActiveException', 'NotSerializableException', 'ObjectInput', 'ObjectInputStream', 'ObjectInputStream.GetField', 'ObjectInputValidation', 'ObjectOutput', 'ObjectOutputStream', 'ObjectOutputStream.PutField', 'ObjectStreamClass', 'ObjectStreamConstants', 'ObjectStreamException', 'ObjectStreamField', 'OptionalDataException', 'OutputStreamWriter', - 'PipedInputStream', 'PipedOutputStream', 'PipedReader', 'PipedWriter', 'PrintStream', 'PrintWriter', 'PushbackInputStream', 'PushbackReader', 'RandomAccessFile', 'Reader', 'SequenceInputStream', 'Serializable', 'SerializablePermission', 'StreamCorruptedException', 'StreamTokenizer', 'StringBufferInputStream', 'StringReader', 'StringWriter', 'SyncFailedException', 'UTFDataFormatException', 'UnsupportedEncodingException', 'WriteAbortedException', 'Writer' - ), - 21 => array ( - 'AbstractMethodError', 'Appendable', 'ArithmeticException', 'ArrayIndexOutOfBoundsException', 'ArrayStoreException', 'AssertionError', 'Boolean', 'Byte', 'CharSequence', 'Character', 'Character.Subset', 'Character.UnicodeBlock', 'Class', 'ClassCastException', 'ClassCircularityError', 'ClassFormatError', 'ClassLoader', 'ClassNotFoundException', 'CloneNotSupportedException', 'Cloneable', 'Comparable', 'Compiler', 'Deprecated', 'Double', 'Enum', 'EnumConstantNotPresentException', 'Error', 'Exception', 'ExceptionInInitializerError', 'Float', 'IllegalAccessError', 'IllegalAccessException', 'IllegalArgumentException', 'IllegalMonitorStateException', 'IllegalStateException', 'IllegalThreadStateException', 'IncompatibleClassChangeError', 'IndexOutOfBoundsException', 'InheritableThreadLocal', 'InstantiationError', 'InstantiationException', 'Integer', 'InternalError', 'InterruptedException', 'Iterable', 'LinkageError', 'Long', 'Math', 'NegativeArraySizeException', 'NoClassDefFoundError', 'NoSuchFieldError', - 'NoSuchFieldException', 'NoSuchMethodError', 'NoSuchMethodException', 'NullPointerException', 'Number', 'NumberFormatException', 'OutOfMemoryError', 'Override', 'Package', 'Process', 'ProcessBuilder', 'Readable', 'Runnable', 'Runtime', 'RuntimeException', 'RuntimePermission', 'SecurityException', 'SecurityManager', 'Short', 'StackOverflowError', 'StackTraceElement', 'StrictMath', 'String', 'StringBuffer', 'StringBuilder', 'StringIndexOutOfBoundsException', 'SuppressWarnings', 'System', 'Thread', 'Thread.State', 'Thread.UncaughtExceptionHandler', 'ThreadDeath', 'ThreadGroup', 'ThreadLocal', 'Throwable', 'TypeNotPresentException', 'UnknownError', 'UnsatisfiedLinkError', 'UnsupportedClassVersionError', 'UnsupportedOperationException', 'VerifyError', 'VirtualMachineError', 'Void' - ), - 22 => array ( - 'AnnotationFormatError', 'AnnotationTypeMismatchException', 'Documented', 'ElementType', 'IncompleteAnnotationException', 'Inherited', 'Retention', 'RetentionPolicy', 'Target' - ), - 23 => array ( - 'ClassDefinition', 'ClassFileTransformer', 'IllegalClassFormatException', 'Instrumentation', 'UnmodifiableClassException' - ), - 24 => array ( - 'ClassLoadingMXBean', 'CompilationMXBean', 'GarbageCollectorMXBean', 'ManagementFactory', 'ManagementPermission', 'MemoryMXBean', 'MemoryManagerMXBean', 'MemoryNotificationInfo', 'MemoryPoolMXBean', 'MemoryType', 'MemoryUsage', 'OperatingSystemMXBean', 'RuntimeMXBean', 'ThreadInfo', 'ThreadMXBean' - ), - 25 => array ( - 'PhantomReference', 'ReferenceQueue', 'SoftReference', 'WeakReference' - ), - 26 => array ( - 'AccessibleObject', 'AnnotatedElement', 'Constructor', 'Field', 'GenericArrayType', 'GenericDeclaration', 'GenericSignatureFormatError', 'InvocationHandler', 'InvocationTargetException', 'MalformedParameterizedTypeException', 'Member', 'Method', 'Modifier', 'ParameterizedType', 'ReflectPermission', 'Type', 'TypeVariable', 'UndeclaredThrowableException', 'WildcardType' - ), - 27 => array ( - 'BigDecimal', 'BigInteger', 'MathContext', 'RoundingMode' - ), - 28 => array ( - 'Authenticator', 'Authenticator.RequestorType', 'BindException', 'CacheRequest', 'CacheResponse', 'ContentHandlerFactory', 'CookieHandler', 'DatagramPacket', 'DatagramSocket', 'DatagramSocketImpl', 'DatagramSocketImplFactory', 'FileNameMap', 'HttpRetryException', 'HttpURLConnection', 'Inet4Address', 'Inet6Address', 'InetAddress', 'InetSocketAddress', 'JarURLConnection', 'MalformedURLException', 'MulticastSocket', 'NetPermission', 'NetworkInterface', 'NoRouteToHostException', 'PasswordAuthentication', 'PortUnreachableException', 'ProtocolException', 'Proxy.Type', 'ProxySelector', 'ResponseCache', 'SecureCacheResponse', 'ServerSocket', 'Socket', 'SocketAddress', 'SocketException', 'SocketImpl', 'SocketImplFactory', 'SocketOptions', 'SocketPermission', 'SocketTimeoutException', 'URI', 'URISyntaxException', 'URL', 'URLClassLoader', 'URLConnection', 'URLDecoder', 'URLEncoder', 'URLStreamHandler', 'URLStreamHandlerFactory', 'UnknownServiceException' - ), - 29 => array ( - 'Buffer', 'BufferOverflowException', 'BufferUnderflowException', 'ByteBuffer', 'ByteOrder', 'CharBuffer', 'DoubleBuffer', 'FloatBuffer', 'IntBuffer', 'InvalidMarkException', 'LongBuffer', 'MappedByteBuffer', 'ReadOnlyBufferException', 'ShortBuffer' - ), - 30 => array ( - 'AlreadyConnectedException', 'AsynchronousCloseException', 'ByteChannel', 'CancelledKeyException', 'Channel', 'Channels', 'ClosedByInterruptException', 'ClosedChannelException', 'ClosedSelectorException', 'ConnectionPendingException', 'DatagramChannel', 'FileChannel', 'FileChannel.MapMode', 'FileLock', 'FileLockInterruptionException', 'GatheringByteChannel', 'IllegalBlockingModeException', 'IllegalSelectorException', 'InterruptibleChannel', 'NoConnectionPendingException', 'NonReadableChannelException', 'NonWritableChannelException', 'NotYetBoundException', 'NotYetConnectedException', 'OverlappingFileLockException', 'Pipe', 'Pipe.SinkChannel', 'Pipe.SourceChannel', 'ReadableByteChannel', 'ScatteringByteChannel', 'SelectableChannel', 'SelectionKey', 'Selector', 'ServerSocketChannel', 'SocketChannel', 'UnresolvedAddressException', 'UnsupportedAddressTypeException', 'WritableByteChannel' - ), - 31 => array ( - 'AbstractInterruptibleChannel', 'AbstractSelectableChannel', 'AbstractSelectionKey', 'AbstractSelector', 'SelectorProvider' - ), - 32 => array ( - 'CharacterCodingException', 'Charset', 'CharsetDecoder', 'CharsetEncoder', 'CoderMalfunctionError', 'CoderResult', 'CodingErrorAction', 'IllegalCharsetNameException', 'MalformedInputException', 'UnmappableCharacterException', 'UnsupportedCharsetException' - ), - 33 => array ( - 'CharsetProvider' - ), - 34 => array ( - 'AccessException', 'AlreadyBoundException', 'ConnectIOException', 'MarshalException', 'MarshalledObject', 'Naming', 'NoSuchObjectException', 'NotBoundException', 'RMISecurityException', 'RMISecurityManager', 'Remote', 'RemoteException', 'ServerError', 'ServerException', 'ServerRuntimeException', 'StubNotFoundException', 'UnexpectedException', 'UnmarshalException' - ), - 35 => array ( - 'Activatable', 'ActivateFailedException', 'ActivationDesc', 'ActivationException', 'ActivationGroup', 'ActivationGroupDesc', 'ActivationGroupDesc.CommandEnvironment', 'ActivationGroupID', 'ActivationGroup_Stub', 'ActivationID', 'ActivationInstantiator', 'ActivationMonitor', 'ActivationSystem', 'Activator', 'UnknownGroupException', 'UnknownObjectException' - ), - 36 => array ( - 'DGC', 'Lease', 'VMID' - ), - 37 => array ( - 'LocateRegistry', 'Registry', 'RegistryHandler' - ), - 38 => array ( - 'ExportException', 'LoaderHandler', 'LogStream', 'ObjID', 'Operation', 'RMIClassLoader', 'RMIClassLoaderSpi', 'RMIClientSocketFactory', 'RMIFailureHandler', 'RMIServerSocketFactory', 'RMISocketFactory', 'RemoteCall', 'RemoteObject', 'RemoteObjectInvocationHandler', 'RemoteRef', 'RemoteServer', 'RemoteStub', 'ServerCloneException', 'ServerNotActiveException', 'ServerRef', 'Skeleton', 'SkeletonMismatchException', 'SkeletonNotFoundException', 'SocketSecurityException', 'UID', 'UnicastRemoteObject', 'Unreferenced' - ), - 39 => array ( - 'AccessControlContext', 'AccessControlException', 'AccessController', 'AlgorithmParameterGenerator', 'AlgorithmParameterGeneratorSpi', 'AlgorithmParameters', 'AlgorithmParametersSpi', 'AllPermission', 'AuthProvider', 'BasicPermission', 'CodeSigner', 'CodeSource', 'DigestException', 'DigestInputStream', 'DigestOutputStream', 'DomainCombiner', 'GeneralSecurityException', 'Guard', 'GuardedObject', 'Identity', 'IdentityScope', 'InvalidAlgorithmParameterException', 'InvalidParameterException', 'Key', 'KeyException', 'KeyFactory', 'KeyFactorySpi', 'KeyManagementException', 'KeyPair', 'KeyPairGenerator', 'KeyPairGeneratorSpi', 'KeyRep', 'KeyRep.Type', 'KeyStore', 'KeyStore.Builder', 'KeyStore.CallbackHandlerProtection', 'KeyStore.Entry', 'KeyStore.LoadStoreParameter', 'KeyStore.PasswordProtection', 'KeyStore.PrivateKeyEntry', 'KeyStore.ProtectionParameter', 'KeyStore.SecretKeyEntry', 'KeyStore.TrustedCertificateEntry', 'KeyStoreException', 'KeyStoreSpi', 'MessageDigest', 'MessageDigestSpi', - 'NoSuchAlgorithmException', 'NoSuchProviderException', 'PermissionCollection', 'Permissions', 'PrivateKey', 'PrivilegedAction', 'PrivilegedActionException', 'PrivilegedExceptionAction', 'ProtectionDomain', 'Provider', 'Provider.Service', 'ProviderException', 'PublicKey', 'SecureClassLoader', 'SecureRandom', 'SecureRandomSpi', 'Security', 'SecurityPermission', 'Signature', 'SignatureException', 'SignatureSpi', 'SignedObject', 'Signer', 'UnrecoverableEntryException', 'UnrecoverableKeyException', 'UnresolvedPermission' - ), - 40 => array ( - 'Acl', 'AclEntry', 'AclNotFoundException', 'Group', 'LastOwnerException', 'NotOwnerException', 'Owner' - ), - 41 => array ( - 'CRL', 'CRLException', 'CRLSelector', 'CertPath', 'CertPath.CertPathRep', 'CertPathBuilder', 'CertPathBuilderException', 'CertPathBuilderResult', 'CertPathBuilderSpi', 'CertPathParameters', 'CertPathValidator', 'CertPathValidatorException', 'CertPathValidatorResult', 'CertPathValidatorSpi', 'CertSelector', 'CertStore', 'CertStoreException', 'CertStoreParameters', 'CertStoreSpi', 'Certificate.CertificateRep', 'CertificateFactory', 'CertificateFactorySpi', 'CollectionCertStoreParameters', 'LDAPCertStoreParameters', 'PKIXBuilderParameters', 'PKIXCertPathBuilderResult', 'PKIXCertPathChecker', 'PKIXCertPathValidatorResult', 'PKIXParameters', 'PolicyNode', 'PolicyQualifierInfo', 'TrustAnchor', 'X509CRL', 'X509CRLEntry', 'X509CRLSelector', 'X509CertSelector', 'X509Extension' - ), - 42 => array ( - 'DSAKey', 'DSAKeyPairGenerator', 'DSAParams', 'DSAPrivateKey', 'DSAPublicKey', 'ECKey', 'ECPrivateKey', 'ECPublicKey', 'RSAKey', 'RSAMultiPrimePrivateCrtKey', 'RSAPrivateCrtKey', 'RSAPrivateKey', 'RSAPublicKey' - ), - 43 => array ( - 'AlgorithmParameterSpec', 'DSAParameterSpec', 'DSAPrivateKeySpec', 'DSAPublicKeySpec', 'ECField', 'ECFieldF2m', 'ECFieldFp', 'ECGenParameterSpec', 'ECParameterSpec', 'ECPoint', 'ECPrivateKeySpec', 'ECPublicKeySpec', 'EllipticCurve', 'EncodedKeySpec', 'InvalidKeySpecException', 'InvalidParameterSpecException', 'KeySpec', 'MGF1ParameterSpec', 'PKCS8EncodedKeySpec', 'PSSParameterSpec', 'RSAKeyGenParameterSpec', 'RSAMultiPrimePrivateCrtKeySpec', 'RSAOtherPrimeInfo', 'RSAPrivateCrtKeySpec', 'RSAPrivateKeySpec', 'RSAPublicKeySpec', 'X509EncodedKeySpec' - ), - 44 => array ( - 'BatchUpdateException', 'Blob', 'CallableStatement', 'Clob', 'Connection', 'DataTruncation', 'DatabaseMetaData', 'Driver', 'DriverManager', 'DriverPropertyInfo', 'ParameterMetaData', 'PreparedStatement', 'Ref', 'ResultSet', 'ResultSetMetaData', 'SQLData', 'SQLException', 'SQLInput', 'SQLOutput', 'SQLPermission', 'SQLWarning', 'Savepoint', 'Struct', 'Time', 'Types' - ), - 45 => array ( - 'AttributedCharacterIterator', 'AttributedCharacterIterator.Attribute', 'AttributedString', 'Bidi', 'BreakIterator', 'CharacterIterator', 'ChoiceFormat', 'CollationElementIterator', 'CollationKey', 'Collator', 'DateFormat', 'DateFormat.Field', 'DateFormatSymbols', 'DecimalFormat', 'DecimalFormatSymbols', 'FieldPosition', 'Format', 'Format.Field', 'MessageFormat', 'MessageFormat.Field', 'NumberFormat', 'NumberFormat.Field', 'ParseException', 'ParsePosition', 'RuleBasedCollator', 'SimpleDateFormat', 'StringCharacterIterator' - ), - 46 => array ( - 'AbstractCollection', 'AbstractList', 'AbstractMap', 'AbstractQueue', 'AbstractSequentialList', 'AbstractSet', 'ArrayList', 'Arrays', 'BitSet', 'Calendar', 'Collection', 'Collections', 'Comparator', 'ConcurrentModificationException', 'Currency', 'Dictionary', 'DuplicateFormatFlagsException', 'EmptyStackException', 'EnumMap', 'EnumSet', 'Enumeration', 'EventListenerProxy', 'EventObject', 'FormatFlagsConversionMismatchException', 'Formattable', 'FormattableFlags', 'Formatter.BigDecimalLayoutForm', 'FormatterClosedException', 'GregorianCalendar', 'HashMap', 'HashSet', 'Hashtable', 'IdentityHashMap', 'IllegalFormatCodePointException', 'IllegalFormatConversionException', 'IllegalFormatException', 'IllegalFormatFlagsException', 'IllegalFormatPrecisionException', 'IllegalFormatWidthException', 'InputMismatchException', 'InvalidPropertiesFormatException', 'Iterator', 'LinkedHashMap', 'LinkedHashSet', 'LinkedList', 'ListIterator', 'ListResourceBundle', 'Locale', 'Map', 'Map.Entry', 'MissingFormatArgumentException', - 'MissingFormatWidthException', 'MissingResourceException', 'NoSuchElementException', 'Observable', 'Observer', 'PriorityQueue', 'Properties', 'PropertyPermission', 'PropertyResourceBundle', 'Queue', 'Random', 'RandomAccess', 'ResourceBundle', 'Scanner', 'Set', 'SimpleTimeZone', 'SortedMap', 'SortedSet', 'Stack', 'StringTokenizer', 'TimeZone', 'TimerTask', 'TooManyListenersException', 'TreeMap', 'TreeSet', 'UUID', 'UnknownFormatConversionException', 'UnknownFormatFlagsException', 'Vector', 'WeakHashMap' - ), - 47 => array ( - 'AbstractExecutorService', 'ArrayBlockingQueue', 'BlockingQueue', 'BrokenBarrierException', 'Callable', 'CancellationException', 'CompletionService', 'ConcurrentHashMap', 'ConcurrentLinkedQueue', 'ConcurrentMap', 'CopyOnWriteArrayList', 'CopyOnWriteArraySet', 'CountDownLatch', 'CyclicBarrier', 'DelayQueue', 'Delayed', 'Exchanger', 'ExecutionException', 'Executor', 'ExecutorCompletionService', 'ExecutorService', 'Executors', 'Future', 'FutureTask', 'LinkedBlockingQueue', 'PriorityBlockingQueue', 'RejectedExecutionException', 'RejectedExecutionHandler', 'ScheduledExecutorService', 'ScheduledFuture', 'ScheduledThreadPoolExecutor', 'Semaphore', 'SynchronousQueue', 'ThreadFactory', 'ThreadPoolExecutor', 'ThreadPoolExecutor.AbortPolicy', 'ThreadPoolExecutor.CallerRunsPolicy', 'ThreadPoolExecutor.DiscardOldestPolicy', 'ThreadPoolExecutor.DiscardPolicy', 'TimeUnit', 'TimeoutException' - ), - 48 => array ( - 'AtomicBoolean', 'AtomicInteger', 'AtomicIntegerArray', 'AtomicIntegerFieldUpdater', 'AtomicLong', 'AtomicLongArray', 'AtomicLongFieldUpdater', 'AtomicMarkableReference', 'AtomicReference', 'AtomicReferenceArray', 'AtomicReferenceFieldUpdater', 'AtomicStampedReference' - ), - 49 => array ( - 'AbstractQueuedSynchronizer', 'Condition', 'Lock', 'LockSupport', 'ReadWriteLock', 'ReentrantLock', 'ReentrantReadWriteLock', 'ReentrantReadWriteLock.ReadLock', 'ReentrantReadWriteLock.WriteLock' - ), - 50 => array ( - 'Attributes.Name', 'JarEntry', 'JarException', 'JarFile', 'JarInputStream', 'JarOutputStream', 'Manifest', 'Pack200', 'Pack200.Packer', 'Pack200.Unpacker' - ), - 51 => array ( - 'ConsoleHandler', 'ErrorManager', 'FileHandler', 'Filter', 'Handler', 'Level', 'LogManager', 'LogRecord', 'Logger', 'LoggingMXBean', 'LoggingPermission', 'MemoryHandler', 'SimpleFormatter', 'SocketHandler', 'StreamHandler', 'XMLFormatter' - ), - 52 => array ( - 'AbstractPreferences', 'BackingStoreException', 'InvalidPreferencesFormatException', 'NodeChangeEvent', 'NodeChangeListener', 'PreferenceChangeEvent', 'PreferenceChangeListener', 'Preferences', 'PreferencesFactory' - ), - 53 => array ( - 'MatchResult', 'Matcher', 'Pattern', 'PatternSyntaxException' - ), - 54 => array ( - 'Adler32', 'CRC32', 'CheckedInputStream', 'CheckedOutputStream', 'Checksum', 'DataFormatException', 'Deflater', 'DeflaterOutputStream', 'GZIPInputStream', 'GZIPOutputStream', 'Inflater', 'InflaterInputStream', 'ZipEntry', 'ZipException', 'ZipFile', 'ZipInputStream', 'ZipOutputStream' - ), - 55 => array ( - 'Accessible', 'AccessibleAction', 'AccessibleAttributeSequence', 'AccessibleBundle', 'AccessibleComponent', 'AccessibleContext', 'AccessibleEditableText', 'AccessibleExtendedComponent', 'AccessibleExtendedTable', 'AccessibleExtendedText', 'AccessibleHyperlink', 'AccessibleHypertext', 'AccessibleIcon', 'AccessibleKeyBinding', 'AccessibleRelation', 'AccessibleRelationSet', 'AccessibleResourceBundle', 'AccessibleRole', 'AccessibleSelection', 'AccessibleState', 'AccessibleStateSet', 'AccessibleStreamable', 'AccessibleTable', 'AccessibleTableModelChange', 'AccessibleText', 'AccessibleTextSequence', 'AccessibleValue' - ), - 56 => array ( - 'ActivityCompletedException', 'ActivityRequiredException', 'InvalidActivityException' - ), - 57 => array ( - 'BadPaddingException', 'Cipher', 'CipherInputStream', 'CipherOutputStream', 'CipherSpi', 'EncryptedPrivateKeyInfo', 'ExemptionMechanism', 'ExemptionMechanismException', 'ExemptionMechanismSpi', 'IllegalBlockSizeException', 'KeyAgreement', 'KeyAgreementSpi', 'KeyGenerator', 'KeyGeneratorSpi', 'Mac', 'MacSpi', 'NoSuchPaddingException', 'NullCipher', 'SealedObject', 'SecretKey', 'SecretKeyFactory', 'SecretKeyFactorySpi', 'ShortBufferException' - ), - 58 => array ( - 'DHKey', 'DHPrivateKey', 'DHPublicKey', 'PBEKey' - ), - 59 => array ( - 'DESKeySpec', 'DESedeKeySpec', 'DHGenParameterSpec', 'DHParameterSpec', 'DHPrivateKeySpec', 'DHPublicKeySpec', 'IvParameterSpec', 'OAEPParameterSpec', 'PBEKeySpec', 'PBEParameterSpec', 'PSource', 'PSource.PSpecified', 'RC2ParameterSpec', 'RC5ParameterSpec', 'SecretKeySpec' - ), - 60 => array ( - 'IIOException', 'IIOImage', 'IIOParam', 'IIOParamController', 'ImageIO', 'ImageReadParam', 'ImageReader', 'ImageTranscoder', 'ImageTypeSpecifier', 'ImageWriteParam', 'ImageWriter' - ), - 61 => array ( - 'IIOReadProgressListener', 'IIOReadUpdateListener', 'IIOReadWarningListener', 'IIOWriteProgressListener', 'IIOWriteWarningListener' - ), - 62 => array ( - 'IIOInvalidTreeException', 'IIOMetadata', 'IIOMetadataController', 'IIOMetadataFormat', 'IIOMetadataFormatImpl', 'IIOMetadataNode' - ), - 63 => array ( - 'BMPImageWriteParam' - ), - 64 => array ( - 'JPEGHuffmanTable', 'JPEGImageReadParam', 'JPEGImageWriteParam', 'JPEGQTable' - ), - 65 => array ( - 'IIORegistry', 'IIOServiceProvider', 'ImageInputStreamSpi', 'ImageOutputStreamSpi', 'ImageReaderSpi', 'ImageReaderWriterSpi', 'ImageTranscoderSpi', 'ImageWriterSpi', 'RegisterableService', 'ServiceRegistry', 'ServiceRegistry.Filter' - ), - 66 => array ( - 'FileCacheImageInputStream', 'FileCacheImageOutputStream', 'FileImageInputStream', 'FileImageOutputStream', 'IIOByteBuffer', 'ImageInputStream', 'ImageInputStreamImpl', 'ImageOutputStream', 'ImageOutputStreamImpl', 'MemoryCacheImageInputStream', 'MemoryCacheImageOutputStream' - ), - 67 => array ( - 'AttributeChangeNotification', 'AttributeChangeNotificationFilter', 'AttributeNotFoundException', 'AttributeValueExp', 'BadAttributeValueExpException', 'BadBinaryOpValueExpException', 'BadStringOperationException', 'Descriptor', 'DescriptorAccess', 'DynamicMBean', 'InstanceAlreadyExistsException', 'InstanceNotFoundException', 'InvalidApplicationException', 'JMException', 'JMRuntimeException', 'ListenerNotFoundException', 'MBeanAttributeInfo', 'MBeanConstructorInfo', 'MBeanException', 'MBeanFeatureInfo', 'MBeanInfo', 'MBeanNotificationInfo', 'MBeanOperationInfo', 'MBeanParameterInfo', 'MBeanPermission', 'MBeanRegistration', 'MBeanRegistrationException', 'MBeanServer', 'MBeanServerBuilder', 'MBeanServerConnection', 'MBeanServerDelegate', 'MBeanServerDelegateMBean', 'MBeanServerFactory', 'MBeanServerInvocationHandler', 'MBeanServerNotification', 'MBeanServerPermission', 'MBeanTrustPermission', 'MalformedObjectNameException', 'NotCompliantMBeanException', 'Notification', 'NotificationBroadcaster', - 'NotificationBroadcasterSupport', 'NotificationEmitter', 'NotificationFilter', 'NotificationFilterSupport', 'NotificationListener', 'ObjectInstance', 'ObjectName', 'OperationsException', 'PersistentMBean', 'Query', 'QueryEval', 'QueryExp', 'ReflectionException', 'RuntimeErrorException', 'RuntimeMBeanException', 'RuntimeOperationsException', 'ServiceNotFoundException', 'StandardMBean', 'StringValueExp', 'ValueExp' - ), - 68 => array ( - 'ClassLoaderRepository', 'MLet', 'MLetMBean', 'PrivateClassLoader', 'PrivateMLet' - ), - 69 => array ( - 'DescriptorSupport', 'InvalidTargetObjectTypeException', 'ModelMBean', 'ModelMBeanAttributeInfo', 'ModelMBeanConstructorInfo', 'ModelMBeanInfo', 'ModelMBeanInfoSupport', 'ModelMBeanNotificationBroadcaster', 'ModelMBeanNotificationInfo', 'ModelMBeanOperationInfo', 'RequiredModelMBean', 'XMLParseException' - ), - 70 => array ( - 'CounterMonitor', 'CounterMonitorMBean', 'GaugeMonitor', 'GaugeMonitorMBean', 'Monitor', 'MonitorMBean', 'MonitorNotification', 'MonitorSettingException', 'StringMonitor', 'StringMonitorMBean' - ), - 71 => array ( - 'ArrayType', 'CompositeData', 'CompositeDataSupport', 'CompositeType', 'InvalidOpenTypeException', 'KeyAlreadyExistsException', 'OpenDataException', 'OpenMBeanAttributeInfo', 'OpenMBeanAttributeInfoSupport', 'OpenMBeanConstructorInfo', 'OpenMBeanConstructorInfoSupport', 'OpenMBeanInfo', 'OpenMBeanInfoSupport', 'OpenMBeanOperationInfo', 'OpenMBeanOperationInfoSupport', 'OpenMBeanParameterInfo', 'OpenMBeanParameterInfoSupport', 'SimpleType', 'TabularData', 'TabularDataSupport', 'TabularType' - ), - 72 => array ( - 'InvalidRelationIdException', 'InvalidRelationServiceException', 'InvalidRelationTypeException', 'InvalidRoleInfoException', 'InvalidRoleValueException', 'MBeanServerNotificationFilter', 'Relation', 'RelationException', 'RelationNotFoundException', 'RelationNotification', 'RelationService', 'RelationServiceMBean', 'RelationServiceNotRegisteredException', 'RelationSupport', 'RelationSupportMBean', 'RelationType', 'RelationTypeNotFoundException', 'RelationTypeSupport', 'Role', 'RoleInfo', 'RoleInfoNotFoundException', 'RoleList', 'RoleNotFoundException', 'RoleResult', 'RoleStatus', 'RoleUnresolved', 'RoleUnresolvedList' - ), - 73 => array ( - 'JMXAuthenticator', 'JMXConnectionNotification', 'JMXConnector', 'JMXConnectorFactory', 'JMXConnectorProvider', 'JMXConnectorServer', 'JMXConnectorServerFactory', 'JMXConnectorServerMBean', 'JMXConnectorServerProvider', 'JMXPrincipal', 'JMXProviderException', 'JMXServerErrorException', 'JMXServiceURL', 'MBeanServerForwarder', 'NotificationResult', 'SubjectDelegationPermission', 'TargetedNotification' - ), - 74 => array ( - 'RMIConnection', 'RMIConnectionImpl', 'RMIConnectionImpl_Stub', 'RMIConnector', 'RMIConnectorServer', 'RMIIIOPServerImpl', 'RMIJRMPServerImpl', 'RMIServer', 'RMIServerImpl', 'RMIServerImpl_Stub' - ), - 75 => array ( - 'TimerAlarmClockNotification', 'TimerMBean', 'TimerNotification' - ), - 76 => array ( - 'AuthenticationNotSupportedException', 'BinaryRefAddr', 'CannotProceedException', 'CommunicationException', 'CompositeName', 'CompoundName', 'ConfigurationException', 'ContextNotEmptyException', 'InitialContext', 'InsufficientResourcesException', 'InterruptedNamingException', 'InvalidNameException', 'LimitExceededException', 'LinkException', 'LinkLoopException', 'LinkRef', 'MalformedLinkException', 'Name', 'NameAlreadyBoundException', 'NameClassPair', 'NameNotFoundException', 'NameParser', 'NamingEnumeration', 'NamingException', 'NamingSecurityException', 'NoInitialContextException', 'NoPermissionException', 'NotContextException', 'OperationNotSupportedException', 'PartialResultException', 'RefAddr', 'Referenceable', 'ReferralException', 'ServiceUnavailableException', 'SizeLimitExceededException', 'StringRefAddr', 'TimeLimitExceededException' - ), - 77 => array ( - 'AttributeInUseException', 'AttributeModificationException', 'BasicAttribute', 'BasicAttributes', 'DirContext', 'InitialDirContext', 'InvalidAttributeIdentifierException', 'InvalidAttributesException', 'InvalidSearchControlsException', 'InvalidSearchFilterException', 'ModificationItem', 'NoSuchAttributeException', 'SchemaViolationException', 'SearchControls', 'SearchResult' - ), - 78 => array ( - 'EventContext', 'EventDirContext', 'NamespaceChangeListener', 'NamingEvent', 'NamingExceptionEvent', 'NamingListener', 'ObjectChangeListener' - ), - 79 => array ( - 'BasicControl', 'ControlFactory', 'ExtendedRequest', 'ExtendedResponse', 'HasControls', 'InitialLdapContext', 'LdapContext', 'LdapName', 'LdapReferralException', 'ManageReferralControl', 'PagedResultsControl', 'PagedResultsResponseControl', 'Rdn', 'SortControl', 'SortKey', 'SortResponseControl', 'StartTlsRequest', 'StartTlsResponse', 'UnsolicitedNotification', 'UnsolicitedNotificationEvent', 'UnsolicitedNotificationListener' - ), - 80 => array ( - 'DirObjectFactory', 'DirStateFactory', 'DirStateFactory.Result', 'DirectoryManager', 'InitialContextFactory', 'InitialContextFactoryBuilder', 'NamingManager', 'ObjectFactory', 'ObjectFactoryBuilder', 'ResolveResult', 'Resolver', 'StateFactory' - ), - 81 => array ( - 'ServerSocketFactory', 'SocketFactory' - ), - 82 => array ( - 'CertPathTrustManagerParameters', 'HandshakeCompletedEvent', 'HandshakeCompletedListener', 'HostnameVerifier', 'HttpsURLConnection', 'KeyManager', 'KeyManagerFactory', 'KeyManagerFactorySpi', 'KeyStoreBuilderParameters', 'ManagerFactoryParameters', 'SSLContext', 'SSLContextSpi', 'SSLEngine', 'SSLEngineResult', 'SSLEngineResult.HandshakeStatus', 'SSLEngineResult.Status', 'SSLException', 'SSLHandshakeException', 'SSLKeyException', 'SSLPeerUnverifiedException', 'SSLPermission', 'SSLProtocolException', 'SSLServerSocket', 'SSLServerSocketFactory', 'SSLSession', 'SSLSessionBindingEvent', 'SSLSessionBindingListener', 'SSLSessionContext', 'SSLSocket', 'SSLSocketFactory', 'TrustManager', 'TrustManagerFactory', 'TrustManagerFactorySpi', 'X509ExtendedKeyManager', 'X509KeyManager', 'X509TrustManager' - ), - 83 => array ( - 'AttributeException', 'CancelablePrintJob', 'Doc', 'DocFlavor', 'DocFlavor.BYTE_ARRAY', 'DocFlavor.CHAR_ARRAY', 'DocFlavor.INPUT_STREAM', 'DocFlavor.READER', 'DocFlavor.SERVICE_FORMATTED', 'DocFlavor.STRING', 'DocFlavor.URL', 'DocPrintJob', 'FlavorException', 'MultiDoc', 'MultiDocPrintJob', 'MultiDocPrintService', 'PrintException', 'PrintService', 'PrintServiceLookup', 'ServiceUI', 'ServiceUIFactory', 'SimpleDoc', 'StreamPrintService', 'StreamPrintServiceFactory', 'URIException' - ), - 84 => array ( - 'AttributeSetUtilities', 'DateTimeSyntax', 'DocAttribute', 'DocAttributeSet', 'EnumSyntax', 'HashAttributeSet', 'HashDocAttributeSet', 'HashPrintJobAttributeSet', 'HashPrintRequestAttributeSet', 'HashPrintServiceAttributeSet', 'IntegerSyntax', 'PrintJobAttribute', 'PrintJobAttributeSet', 'PrintRequestAttribute', 'PrintRequestAttributeSet', 'PrintServiceAttribute', 'PrintServiceAttributeSet', 'ResolutionSyntax', 'SetOfIntegerSyntax', 'Size2DSyntax', 'SupportedValuesAttribute', 'TextSyntax', 'URISyntax', 'UnmodifiableSetException' - ), - 85 => array ( - 'Chromaticity', 'ColorSupported', 'Compression', 'Copies', 'CopiesSupported', 'DateTimeAtCompleted', 'DateTimeAtCreation', 'DateTimeAtProcessing', 'Destination', 'DocumentName', 'Fidelity', 'Finishings', 'JobHoldUntil', 'JobImpressions', 'JobImpressionsCompleted', 'JobImpressionsSupported', 'JobKOctets', 'JobKOctetsProcessed', 'JobKOctetsSupported', 'JobMediaSheets', 'JobMediaSheetsCompleted', 'JobMediaSheetsSupported', 'JobMessageFromOperator', 'JobName', 'JobOriginatingUserName', 'JobPriority', 'JobPrioritySupported', 'JobSheets', 'JobState', 'JobStateReason', 'JobStateReasons', 'Media', 'MediaName', 'MediaPrintableArea', 'MediaSize', 'MediaSize.Engineering', 'MediaSize.ISO', 'MediaSize.JIS', 'MediaSize.NA', 'MediaSize.Other', 'MediaSizeName', 'MediaTray', 'MultipleDocumentHandling', 'NumberOfDocuments', 'NumberOfInterveningJobs', 'NumberUp', 'NumberUpSupported', 'OrientationRequested', 'OutputDeviceAssigned', 'PDLOverrideSupported', 'PageRanges', 'PagesPerMinute', 'PagesPerMinuteColor', - 'PresentationDirection', 'PrintQuality', 'PrinterInfo', 'PrinterIsAcceptingJobs', 'PrinterLocation', 'PrinterMakeAndModel', 'PrinterMessageFromOperator', 'PrinterMoreInfo', 'PrinterMoreInfoManufacturer', 'PrinterName', 'PrinterResolution', 'PrinterState', 'PrinterStateReason', 'PrinterStateReasons', 'PrinterURI', 'QueuedJobCount', 'ReferenceUriSchemesSupported', 'RequestingUserName', 'Severity', 'SheetCollate', 'Sides' - ), - 86 => array ( - 'PrintEvent', 'PrintJobAdapter', 'PrintJobAttributeEvent', 'PrintJobAttributeListener', 'PrintJobEvent', 'PrintJobListener', 'PrintServiceAttributeEvent', 'PrintServiceAttributeListener' - ), - 87 => array ( - 'PortableRemoteObject' - ), - 88 => array ( - 'ClassDesc', 'PortableRemoteObjectDelegate', 'Stub', 'StubDelegate', 'Tie', 'Util', 'UtilDelegate', 'ValueHandler', 'ValueHandlerMultiFormat' - ), - 89 => array ( - 'SslRMIClientSocketFactory', 'SslRMIServerSocketFactory' - ), - 90 => array ( - 'AuthPermission', 'DestroyFailedException', 'Destroyable', 'PrivateCredentialPermission', 'RefreshFailedException', 'Refreshable', 'Subject', 'SubjectDomainCombiner' - ), - 91 => array ( - 'Callback', 'CallbackHandler', 'ChoiceCallback', 'ConfirmationCallback', 'LanguageCallback', 'NameCallback', 'PasswordCallback', 'TextInputCallback', 'TextOutputCallback', 'UnsupportedCallbackException' - ), - 92 => array ( - 'DelegationPermission', 'KerberosKey', 'KerberosPrincipal', 'KerberosTicket', 'ServicePermission' - ), - 93 => array ( - 'AccountException', 'AccountExpiredException', 'AccountLockedException', 'AccountNotFoundException', 'AppConfigurationEntry', 'AppConfigurationEntry.LoginModuleControlFlag', 'Configuration', 'CredentialException', 'CredentialExpiredException', 'CredentialNotFoundException', 'FailedLoginException', 'LoginContext', 'LoginException' - ), - 94 => array ( - 'LoginModule' - ), - 95 => array ( - 'X500Principal', 'X500PrivateCredential' - ), - 96 => array ( - 'AuthorizeCallback', 'RealmCallback', 'RealmChoiceCallback', 'Sasl', 'SaslClient', 'SaslClientFactory', 'SaslException', 'SaslServer', 'SaslServerFactory' - ), - 97 => array ( - 'ControllerEventListener', 'Instrument', 'InvalidMidiDataException', 'MetaEventListener', 'MetaMessage', 'MidiChannel', 'MidiDevice', 'MidiDevice.Info', 'MidiEvent', 'MidiFileFormat', 'MidiMessage', 'MidiSystem', 'MidiUnavailableException', 'Patch', 'Receiver', 'Sequence', 'Sequencer', 'Sequencer.SyncMode', 'ShortMessage', 'Soundbank', 'SoundbankResource', 'Synthesizer', 'SysexMessage', 'Track', 'Transmitter', 'VoiceStatus' - ), - 98 => array ( - 'MidiDeviceProvider', 'MidiFileReader', 'MidiFileWriter', 'SoundbankReader' - ), - 99 => array ( - 'AudioFileFormat', 'AudioFileFormat.Type', 'AudioFormat', 'AudioFormat.Encoding', 'AudioInputStream', 'AudioPermission', 'AudioSystem', 'BooleanControl', 'BooleanControl.Type', 'Clip', 'CompoundControl', 'CompoundControl.Type', 'Control.Type', 'DataLine', 'DataLine.Info', 'EnumControl', 'EnumControl.Type', 'FloatControl', 'FloatControl.Type', 'Line', 'Line.Info', 'LineEvent', 'LineEvent.Type', 'LineListener', 'LineUnavailableException', 'Mixer', 'Mixer.Info', 'Port', 'Port.Info', 'ReverbType', 'SourceDataLine', 'TargetDataLine', 'UnsupportedAudioFileException' - ), - 100 => array ( - 'AudioFileReader', 'AudioFileWriter', 'FormatConversionProvider', 'MixerProvider' - ), - 101 => array ( - 'ConnectionEvent', 'ConnectionEventListener', 'ConnectionPoolDataSource', 'DataSource', 'PooledConnection', 'RowSet', 'RowSetEvent', 'RowSetInternal', 'RowSetListener', 'RowSetMetaData', 'RowSetReader', 'RowSetWriter', 'XAConnection', 'XADataSource' - ), - 102 => array ( - 'BaseRowSet', 'CachedRowSet', 'FilteredRowSet', 'JdbcRowSet', 'JoinRowSet', 'Joinable', 'Predicate', 'RowSetMetaDataImpl', 'RowSetWarning', 'WebRowSet' - ), - 103 => array ( - 'SQLInputImpl', 'SQLOutputImpl', 'SerialArray', 'SerialBlob', 'SerialClob', 'SerialDatalink', 'SerialException', 'SerialJavaObject', 'SerialRef', 'SerialStruct' - ), - 104 => array ( - 'SyncFactory', 'SyncFactoryException', 'SyncProvider', 'SyncProviderException', 'SyncResolver', 'TransactionalWriter', 'XmlReader', 'XmlWriter' - ), - 105 => array ( - 'AbstractAction', 'AbstractButton', 'AbstractCellEditor', 'AbstractListModel', 'AbstractSpinnerModel', 'Action', 'ActionMap', 'BorderFactory', 'BoundedRangeModel', 'Box', 'Box.Filler', 'BoxLayout', 'ButtonGroup', 'ButtonModel', 'CellEditor', 'CellRendererPane', 'ComboBoxEditor', 'ComboBoxModel', 'ComponentInputMap', 'DebugGraphics', 'DefaultBoundedRangeModel', 'DefaultButtonModel', 'DefaultCellEditor', 'DefaultComboBoxModel', 'DefaultDesktopManager', 'DefaultFocusManager', 'DefaultListCellRenderer', 'DefaultListCellRenderer.UIResource', 'DefaultListModel', 'DefaultListSelectionModel', 'DefaultSingleSelectionModel', 'DesktopManager', 'FocusManager', 'GrayFilter', 'Icon', 'ImageIcon', 'InputMap', 'InputVerifier', 'InternalFrameFocusTraversalPolicy', 'JApplet', 'JButton', 'JCheckBox', 'JCheckBoxMenuItem', 'JColorChooser', 'JComboBox', 'JComboBox.KeySelectionManager', 'JComponent', 'JDesktopPane', 'JDialog', 'JEditorPane', 'JFileChooser', 'JFormattedTextField', 'JFormattedTextField.AbstractFormatter', - 'JFormattedTextField.AbstractFormatterFactory', 'JFrame', 'JInternalFrame', 'JInternalFrame.JDesktopIcon', 'JLabel', 'JLayeredPane', 'JList', 'JMenu', 'JMenuBar', 'JMenuItem', 'JOptionPane', 'JPanel', 'JPasswordField', 'JPopupMenu', 'JPopupMenu.Separator', 'JProgressBar', 'JRadioButton', 'JRadioButtonMenuItem', 'JRootPane', 'JScrollBar', 'JScrollPane', 'JSeparator', 'JSlider', 'JSpinner', 'JSpinner.DateEditor', 'JSpinner.DefaultEditor', 'JSpinner.ListEditor', 'JSpinner.NumberEditor', 'JSplitPane', 'JTabbedPane', 'JTable', 'JTable.PrintMode', 'JTextArea', 'JTextField', 'JTextPane', 'JToggleButton', 'JToggleButton.ToggleButtonModel', 'JToolBar', 'JToolBar.Separator', 'JToolTip', 'JTree', 'JTree.DynamicUtilTreeNode', 'JTree.EmptySelectionModel', 'JViewport', 'JWindow', 'KeyStroke', 'LayoutFocusTraversalPolicy', 'ListCellRenderer', 'ListModel', 'ListSelectionModel', 'LookAndFeel', 'MenuElement', 'MenuSelectionManager', 'MutableComboBoxModel', 'OverlayLayout', 'Popup', 'PopupFactory', 'ProgressMonitor', - 'ProgressMonitorInputStream', 'Renderer', 'RepaintManager', 'RootPaneContainer', 'ScrollPaneConstants', 'ScrollPaneLayout', 'ScrollPaneLayout.UIResource', 'Scrollable', 'SingleSelectionModel', 'SizeRequirements', 'SizeSequence', 'SortingFocusTraversalPolicy', 'SpinnerDateModel', 'SpinnerListModel', 'SpinnerModel', 'SpinnerNumberModel', 'Spring', 'SpringLayout', 'SpringLayout.Constraints', 'SwingConstants', 'SwingUtilities', 'ToolTipManager', 'TransferHandler', 'UIDefaults', 'UIDefaults.ActiveValue', 'UIDefaults.LazyInputMap', 'UIDefaults.LazyValue', 'UIDefaults.ProxyLazyValue', 'UIManager', 'UIManager.LookAndFeelInfo', 'UnsupportedLookAndFeelException', 'ViewportLayout', 'WindowConstants' - ), - 106 => array ( - 'AbstractBorder', 'BevelBorder', 'Border', 'CompoundBorder', 'EmptyBorder', 'EtchedBorder', 'LineBorder', 'MatteBorder', 'SoftBevelBorder', 'TitledBorder' - ), - 107 => array ( - 'AbstractColorChooserPanel', 'ColorChooserComponentFactory', 'ColorSelectionModel', 'DefaultColorSelectionModel' - ), - 108 => array ( - 'AncestorEvent', 'AncestorListener', 'CaretEvent', 'CaretListener', 'CellEditorListener', 'ChangeEvent', 'ChangeListener', 'DocumentEvent.ElementChange', 'DocumentEvent.EventType', 'DocumentListener', 'EventListenerList', 'HyperlinkEvent', 'HyperlinkEvent.EventType', 'HyperlinkListener', 'InternalFrameAdapter', 'InternalFrameEvent', 'InternalFrameListener', 'ListDataEvent', 'ListDataListener', 'ListSelectionEvent', 'ListSelectionListener', 'MenuDragMouseEvent', 'MenuDragMouseListener', 'MenuEvent', 'MenuKeyEvent', 'MenuKeyListener', 'MenuListener', 'MouseInputAdapter', 'MouseInputListener', 'PopupMenuEvent', 'PopupMenuListener', 'SwingPropertyChangeSupport', 'TableColumnModelEvent', 'TableColumnModelListener', 'TableModelEvent', 'TableModelListener', 'TreeExpansionEvent', 'TreeExpansionListener', 'TreeModelEvent', 'TreeModelListener', 'TreeSelectionEvent', 'TreeSelectionListener', 'TreeWillExpandListener', 'UndoableEditEvent', 'UndoableEditListener' - ), - 109 => array ( - 'FileSystemView', 'FileView' - ), - 110 => array ( - 'ActionMapUIResource', 'BorderUIResource', 'BorderUIResource.BevelBorderUIResource', 'BorderUIResource.CompoundBorderUIResource', 'BorderUIResource.EmptyBorderUIResource', 'BorderUIResource.EtchedBorderUIResource', 'BorderUIResource.LineBorderUIResource', 'BorderUIResource.MatteBorderUIResource', 'BorderUIResource.TitledBorderUIResource', 'ButtonUI', 'ColorChooserUI', 'ColorUIResource', 'ComboBoxUI', 'ComponentInputMapUIResource', 'ComponentUI', 'DesktopIconUI', 'DesktopPaneUI', 'DimensionUIResource', 'FileChooserUI', 'FontUIResource', 'IconUIResource', 'InputMapUIResource', 'InsetsUIResource', 'InternalFrameUI', 'LabelUI', 'ListUI', 'MenuBarUI', 'MenuItemUI', 'OptionPaneUI', 'PanelUI', 'PopupMenuUI', 'ProgressBarUI', 'RootPaneUI', 'ScrollBarUI', 'ScrollPaneUI', 'SeparatorUI', 'SliderUI', 'SpinnerUI', 'SplitPaneUI', 'TabbedPaneUI', 'TableHeaderUI', 'TableUI', 'TextUI', 'ToolBarUI', 'ToolTipUI', 'TreeUI', 'UIResource', 'ViewportUI' - ), - 111 => array ( - 'BasicArrowButton', 'BasicBorders', 'BasicBorders.ButtonBorder', 'BasicBorders.FieldBorder', 'BasicBorders.MarginBorder', 'BasicBorders.MenuBarBorder', 'BasicBorders.RadioButtonBorder', 'BasicBorders.RolloverButtonBorder', 'BasicBorders.SplitPaneBorder', 'BasicBorders.ToggleButtonBorder', 'BasicButtonListener', 'BasicButtonUI', 'BasicCheckBoxMenuItemUI', 'BasicCheckBoxUI', 'BasicColorChooserUI', 'BasicComboBoxEditor', 'BasicComboBoxEditor.UIResource', 'BasicComboBoxRenderer', 'BasicComboBoxRenderer.UIResource', 'BasicComboBoxUI', 'BasicComboPopup', 'BasicDesktopIconUI', 'BasicDesktopPaneUI', 'BasicDirectoryModel', 'BasicEditorPaneUI', 'BasicFileChooserUI', 'BasicFormattedTextFieldUI', 'BasicGraphicsUtils', 'BasicHTML', 'BasicIconFactory', 'BasicInternalFrameTitlePane', 'BasicInternalFrameUI', 'BasicLabelUI', 'BasicListUI', 'BasicLookAndFeel', 'BasicMenuBarUI', 'BasicMenuItemUI', 'BasicMenuUI', 'BasicOptionPaneUI', 'BasicOptionPaneUI.ButtonAreaLayout', 'BasicPanelUI', 'BasicPasswordFieldUI', - 'BasicPopupMenuSeparatorUI', 'BasicPopupMenuUI', 'BasicProgressBarUI', 'BasicRadioButtonMenuItemUI', 'BasicRadioButtonUI', 'BasicRootPaneUI', 'BasicScrollBarUI', 'BasicScrollPaneUI', 'BasicSeparatorUI', 'BasicSliderUI', 'BasicSpinnerUI', 'BasicSplitPaneDivider', 'BasicSplitPaneUI', 'BasicTabbedPaneUI', 'BasicTableHeaderUI', 'BasicTableUI', 'BasicTextAreaUI', 'BasicTextFieldUI', 'BasicTextPaneUI', 'BasicTextUI', 'BasicTextUI.BasicCaret', 'BasicTextUI.BasicHighlighter', 'BasicToggleButtonUI', 'BasicToolBarSeparatorUI', 'BasicToolBarUI', 'BasicToolTipUI', 'BasicTreeUI', 'BasicViewportUI', 'ComboPopup', 'DefaultMenuLayout' - ), - 112 => array ( - 'DefaultMetalTheme', 'MetalBorders', 'MetalBorders.ButtonBorder', 'MetalBorders.Flush3DBorder', 'MetalBorders.InternalFrameBorder', 'MetalBorders.MenuBarBorder', 'MetalBorders.MenuItemBorder', 'MetalBorders.OptionDialogBorder', 'MetalBorders.PaletteBorder', 'MetalBorders.PopupMenuBorder', 'MetalBorders.RolloverButtonBorder', 'MetalBorders.ScrollPaneBorder', 'MetalBorders.TableHeaderBorder', 'MetalBorders.TextFieldBorder', 'MetalBorders.ToggleButtonBorder', 'MetalBorders.ToolBarBorder', 'MetalButtonUI', 'MetalCheckBoxIcon', 'MetalCheckBoxUI', 'MetalComboBoxButton', 'MetalComboBoxEditor', 'MetalComboBoxEditor.UIResource', 'MetalComboBoxIcon', 'MetalComboBoxUI', 'MetalDesktopIconUI', 'MetalFileChooserUI', 'MetalIconFactory', 'MetalIconFactory.FileIcon16', 'MetalIconFactory.FolderIcon16', 'MetalIconFactory.PaletteCloseIcon', 'MetalIconFactory.TreeControlIcon', 'MetalIconFactory.TreeFolderIcon', 'MetalIconFactory.TreeLeafIcon', 'MetalInternalFrameTitlePane', 'MetalInternalFrameUI', 'MetalLabelUI', - 'MetalLookAndFeel', 'MetalMenuBarUI', 'MetalPopupMenuSeparatorUI', 'MetalProgressBarUI', 'MetalRadioButtonUI', 'MetalRootPaneUI', 'MetalScrollBarUI', 'MetalScrollButton', 'MetalScrollPaneUI', 'MetalSeparatorUI', 'MetalSliderUI', 'MetalSplitPaneUI', 'MetalTabbedPaneUI', 'MetalTextFieldUI', 'MetalTheme', 'MetalToggleButtonUI', 'MetalToolBarUI', 'MetalToolTipUI', 'MetalTreeUI', 'OceanTheme' - ), - 113 => array ( - 'MultiButtonUI', 'MultiColorChooserUI', 'MultiComboBoxUI', 'MultiDesktopIconUI', 'MultiDesktopPaneUI', 'MultiFileChooserUI', 'MultiInternalFrameUI', 'MultiLabelUI', 'MultiListUI', 'MultiLookAndFeel', 'MultiMenuBarUI', 'MultiMenuItemUI', 'MultiOptionPaneUI', 'MultiPanelUI', 'MultiPopupMenuUI', 'MultiProgressBarUI', 'MultiRootPaneUI', 'MultiScrollBarUI', 'MultiScrollPaneUI', 'MultiSeparatorUI', 'MultiSliderUI', 'MultiSpinnerUI', 'MultiSplitPaneUI', 'MultiTabbedPaneUI', 'MultiTableHeaderUI', 'MultiTableUI', 'MultiTextUI', 'MultiToolBarUI', 'MultiToolTipUI', 'MultiTreeUI', 'MultiViewportUI' - ), - 114 => array ( - 'ColorType', 'Region', 'SynthConstants', 'SynthContext', 'SynthGraphicsUtils', 'SynthLookAndFeel', 'SynthPainter', 'SynthStyle', 'SynthStyleFactory' - ), - 115 => array ( - 'AbstractTableModel', 'DefaultTableCellRenderer', 'DefaultTableCellRenderer.UIResource', 'DefaultTableColumnModel', 'DefaultTableModel', 'JTableHeader', 'TableCellEditor', 'TableCellRenderer', 'TableColumn', 'TableColumnModel', 'TableModel' - ), - 116 => array ( - 'AbstractDocument', 'AbstractDocument.AttributeContext', 'AbstractDocument.Content', 'AbstractDocument.ElementEdit', 'AbstractWriter', 'AsyncBoxView', 'AttributeSet.CharacterAttribute', 'AttributeSet.ColorAttribute', 'AttributeSet.FontAttribute', 'AttributeSet.ParagraphAttribute', 'BadLocationException', 'BoxView', 'Caret', 'ChangedCharSetException', 'ComponentView', 'CompositeView', 'DateFormatter', 'DefaultCaret', 'DefaultEditorKit', 'DefaultEditorKit.BeepAction', 'DefaultEditorKit.CopyAction', 'DefaultEditorKit.CutAction', 'DefaultEditorKit.DefaultKeyTypedAction', 'DefaultEditorKit.InsertBreakAction', 'DefaultEditorKit.InsertContentAction', 'DefaultEditorKit.InsertTabAction', 'DefaultEditorKit.PasteAction', 'DefaultFormatter', 'DefaultFormatterFactory', 'DefaultHighlighter', 'DefaultHighlighter.DefaultHighlightPainter', 'DefaultStyledDocument', 'DefaultStyledDocument.AttributeUndoableEdit', 'DefaultStyledDocument.ElementSpec', 'DefaultTextUI', 'DocumentFilter', 'DocumentFilter.FilterBypass', - 'EditorKit', 'ElementIterator', 'FieldView', 'FlowView', 'FlowView.FlowStrategy', 'GapContent', 'GlyphView', 'GlyphView.GlyphPainter', 'Highlighter', 'Highlighter.Highlight', 'Highlighter.HighlightPainter', 'IconView', 'InternationalFormatter', 'JTextComponent', 'JTextComponent.KeyBinding', 'Keymap', 'LabelView', 'LayeredHighlighter', 'LayeredHighlighter.LayerPainter', 'LayoutQueue', 'MaskFormatter', 'MutableAttributeSet', 'NavigationFilter', 'NavigationFilter.FilterBypass', 'NumberFormatter', 'PasswordView', 'PlainDocument', 'PlainView', 'Position', 'Position.Bias', 'Segment', 'SimpleAttributeSet', 'StringContent', 'Style', 'StyleConstants', 'StyleConstants.CharacterConstants', 'StyleConstants.ColorConstants', 'StyleConstants.FontConstants', 'StyleConstants.ParagraphConstants', 'StyleContext', 'StyledDocument', 'StyledEditorKit', 'StyledEditorKit.AlignmentAction', 'StyledEditorKit.BoldAction', 'StyledEditorKit.FontFamilyAction', 'StyledEditorKit.FontSizeAction', 'StyledEditorKit.ForegroundAction', - 'StyledEditorKit.ItalicAction', 'StyledEditorKit.StyledTextAction', 'StyledEditorKit.UnderlineAction', 'TabExpander', 'TabSet', 'TabStop', 'TabableView', 'TableView', 'TextAction', 'Utilities', 'View', 'ViewFactory', 'WrappedPlainView', 'ZoneView' - ), - 117 => array ( - 'BlockView', 'CSS', 'CSS.Attribute', 'FormSubmitEvent', 'FormSubmitEvent.MethodType', 'FormView', 'HTML', 'HTML.Attribute', 'HTML.Tag', 'HTML.UnknownTag', 'HTMLDocument', 'HTMLDocument.Iterator', 'HTMLEditorKit', 'HTMLEditorKit.HTMLFactory', 'HTMLEditorKit.HTMLTextAction', 'HTMLEditorKit.InsertHTMLTextAction', 'HTMLEditorKit.LinkController', 'HTMLEditorKit.Parser', 'HTMLEditorKit.ParserCallback', 'HTMLFrameHyperlinkEvent', 'HTMLWriter', 'ImageView', 'InlineView', 'ListView', 'MinimalHTMLWriter', 'ObjectView', 'Option', 'StyleSheet', 'StyleSheet.BoxPainter', 'StyleSheet.ListPainter' - ), - 118 => array ( - 'ContentModel', 'DTD', 'DTDConstants', 'DocumentParser', 'ParserDelegator', 'TagElement' - ), - 119 => array ( - 'RTFEditorKit' - ), - 120 => array ( - 'AbstractLayoutCache', 'AbstractLayoutCache.NodeDimensions', 'DefaultMutableTreeNode', 'DefaultTreeCellEditor', 'DefaultTreeCellRenderer', 'DefaultTreeModel', 'DefaultTreeSelectionModel', 'ExpandVetoException', 'FixedHeightLayoutCache', 'MutableTreeNode', 'RowMapper', 'TreeCellEditor', 'TreeCellRenderer', 'TreeModel', 'TreeNode', 'TreePath', 'TreeSelectionModel', 'VariableHeightLayoutCache' - ), - 121 => array ( - 'AbstractUndoableEdit', 'CannotRedoException', 'CannotUndoException', 'CompoundEdit', 'StateEdit', 'StateEditable', 'UndoManager', 'UndoableEdit', 'UndoableEditSupport' - ), - 122 => array ( - 'InvalidTransactionException', 'TransactionRequiredException', 'TransactionRolledbackException' - ), - 123 => array ( - 'XAException', 'XAResource', 'Xid' - ), - 124 => array ( - 'XMLConstants' - ), - 125 => array ( - 'DatatypeConfigurationException', 'DatatypeConstants', 'DatatypeConstants.Field', 'DatatypeFactory', 'Duration', 'XMLGregorianCalendar' - ), - 126 => array ( - 'NamespaceContext', 'QName' - ), - 127 => array ( - 'DocumentBuilder', 'DocumentBuilderFactory', 'FactoryConfigurationError', 'ParserConfigurationException', 'SAXParser', 'SAXParserFactory' - ), - 128 => array ( - 'ErrorListener', 'OutputKeys', 'Result', 'Source', 'SourceLocator', 'Templates', 'Transformer', 'TransformerConfigurationException', 'TransformerException', 'TransformerFactory', 'TransformerFactoryConfigurationError', 'URIResolver' - ), - 129 => array ( - 'DOMResult', 'DOMSource' - ), - 130 => array ( - 'SAXResult', 'SAXSource', 'SAXTransformerFactory', 'TemplatesHandler', 'TransformerHandler' - ), - 131 => array ( - 'StreamResult', 'StreamSource' - ), - 132 => array ( - 'Schema', 'SchemaFactory', 'SchemaFactoryLoader', 'TypeInfoProvider', 'Validator', 'ValidatorHandler' - ), - 133 => array ( - 'XPath', 'XPathConstants', 'XPathException', 'XPathExpression', 'XPathExpressionException', 'XPathFactory', 'XPathFactoryConfigurationException', 'XPathFunction', 'XPathFunctionException', 'XPathFunctionResolver', 'XPathVariableResolver' - ), - 134 => array ( - 'ChannelBinding', 'GSSContext', 'GSSCredential', 'GSSException', 'GSSManager', 'GSSName', 'MessageProp', 'Oid' - ), - 135 => array ( - 'ACTIVITY_COMPLETED', 'ACTIVITY_REQUIRED', 'ARG_IN', 'ARG_INOUT', 'ARG_OUT', 'Any', 'AnyHolder', 'AnySeqHolder', 'BAD_CONTEXT', 'BAD_INV_ORDER', 'BAD_OPERATION', 'BAD_PARAM', 'BAD_POLICY', 'BAD_POLICY_TYPE', 'BAD_POLICY_VALUE', 'BAD_QOS', 'BAD_TYPECODE', 'BooleanHolder', 'BooleanSeqHelper', 'BooleanSeqHolder', 'ByteHolder', 'CODESET_INCOMPATIBLE', 'COMM_FAILURE', 'CTX_RESTRICT_SCOPE', 'CharHolder', 'CharSeqHelper', 'CharSeqHolder', 'CompletionStatus', 'CompletionStatusHelper', 'ContextList', 'CurrentHolder', 'CustomMarshal', 'DATA_CONVERSION', 'DefinitionKind', 'DefinitionKindHelper', 'DomainManager', 'DomainManagerOperations', 'DoubleHolder', 'DoubleSeqHelper', 'DoubleSeqHolder', 'Environment', 'ExceptionList', 'FREE_MEM', 'FixedHolder', 'FloatHolder', 'FloatSeqHelper', 'FloatSeqHolder', 'IDLType', 'IDLTypeHelper', 'IDLTypeOperations', 'IMP_LIMIT', 'INITIALIZE', 'INTERNAL', 'INTF_REPOS', 'INVALID_ACTIVITY', 'INVALID_TRANSACTION', 'INV_FLAG', 'INV_IDENT', 'INV_OBJREF', 'INV_POLICY', 'IRObject', - 'IRObjectOperations', 'IdentifierHelper', 'IntHolder', 'LocalObject', 'LongHolder', 'LongLongSeqHelper', 'LongLongSeqHolder', 'LongSeqHelper', 'LongSeqHolder', 'MARSHAL', 'NO_IMPLEMENT', 'NO_MEMORY', 'NO_PERMISSION', 'NO_RESOURCES', 'NO_RESPONSE', 'NVList', 'NamedValue', 'OBJECT_NOT_EXIST', 'OBJ_ADAPTER', 'OMGVMCID', 'ObjectHelper', 'ObjectHolder', 'OctetSeqHelper', 'OctetSeqHolder', 'PERSIST_STORE', 'PRIVATE_MEMBER', 'PUBLIC_MEMBER', 'ParameterMode', 'ParameterModeHelper', 'ParameterModeHolder', 'PolicyError', 'PolicyErrorCodeHelper', 'PolicyErrorHelper', 'PolicyErrorHolder', 'PolicyHelper', 'PolicyHolder', 'PolicyListHelper', 'PolicyListHolder', 'PolicyOperations', 'PolicyTypeHelper', 'PrincipalHolder', 'REBIND', 'RepositoryIdHelper', 'Request', 'ServerRequest', 'ServiceDetail', 'ServiceDetailHelper', 'ServiceInformation', 'ServiceInformationHelper', 'ServiceInformationHolder', 'SetOverrideType', 'SetOverrideTypeHelper', 'ShortHolder', 'ShortSeqHelper', 'ShortSeqHolder', 'StringHolder', - 'StringSeqHelper', 'StringSeqHolder', 'StringValueHelper', 'StructMember', 'StructMemberHelper', 'SystemException', 'TCKind', 'TIMEOUT', 'TRANSACTION_MODE', 'TRANSACTION_REQUIRED', 'TRANSACTION_ROLLEDBACK', 'TRANSACTION_UNAVAILABLE', 'TRANSIENT', 'TypeCode', 'TypeCodeHolder', 'ULongLongSeqHelper', 'ULongLongSeqHolder', 'ULongSeqHelper', 'ULongSeqHolder', 'UNSUPPORTED_POLICY', 'UNSUPPORTED_POLICY_VALUE', 'UShortSeqHelper', 'UShortSeqHolder', 'UnionMember', 'UnionMemberHelper', 'UnknownUserException', 'UnknownUserExceptionHelper', 'UnknownUserExceptionHolder', 'UserException', 'VM_ABSTRACT', 'VM_CUSTOM', 'VM_NONE', 'VM_TRUNCATABLE', 'ValueBaseHelper', 'ValueBaseHolder', 'ValueMember', 'ValueMemberHelper', 'VersionSpecHelper', 'VisibilityHelper', 'WCharSeqHelper', 'WCharSeqHolder', 'WStringSeqHelper', 'WStringSeqHolder', 'WStringValueHelper', 'WrongTransaction', 'WrongTransactionHelper', 'WrongTransactionHolder', '_IDLTypeStub', '_PolicyStub' - ), - 136 => array ( - 'Invalid', 'InvalidSeq' - ), - 137 => array ( - 'BadKind' - ), - 138 => array ( - 'ApplicationException', 'BoxedValueHelper', 'CustomValue', 'IDLEntity', 'IndirectionException', 'InvokeHandler', 'RemarshalException', 'ResponseHandler', 'ServantObject', 'Streamable', 'StreamableValue', 'UnknownException', 'ValueBase', 'ValueFactory', 'ValueInputStream', 'ValueOutputStream' - ), - 139 => array ( - 'BindingHelper', 'BindingHolder', 'BindingIterator', 'BindingIteratorHelper', 'BindingIteratorHolder', 'BindingIteratorOperations', 'BindingIteratorPOA', 'BindingListHelper', 'BindingListHolder', 'BindingType', 'BindingTypeHelper', 'BindingTypeHolder', 'IstringHelper', 'NameComponent', 'NameComponentHelper', 'NameComponentHolder', 'NameHelper', 'NameHolder', 'NamingContext', 'NamingContextExt', 'NamingContextExtHelper', 'NamingContextExtHolder', 'NamingContextExtOperations', 'NamingContextExtPOA', 'NamingContextHelper', 'NamingContextHolder', 'NamingContextOperations', 'NamingContextPOA', '_BindingIteratorImplBase', '_BindingIteratorStub', '_NamingContextExtStub', '_NamingContextImplBase', '_NamingContextStub' - ), - 140 => array ( - 'AddressHelper', 'InvalidAddress', 'InvalidAddressHelper', 'InvalidAddressHolder', 'StringNameHelper', 'URLStringHelper' - ), - 141 => array ( - 'AlreadyBound', 'AlreadyBoundHelper', 'AlreadyBoundHolder', 'CannotProceed', 'CannotProceedHelper', 'CannotProceedHolder', 'InvalidNameHolder', 'NotEmpty', 'NotEmptyHelper', 'NotEmptyHolder', 'NotFound', 'NotFoundHelper', 'NotFoundHolder', 'NotFoundReason', 'NotFoundReasonHelper', 'NotFoundReasonHolder' - ), - 142 => array ( - 'Parameter' - ), - 143 => array ( - 'DynAnyFactory', 'DynAnyFactoryHelper', 'DynAnyFactoryOperations', 'DynAnyHelper', 'DynAnyOperations', 'DynAnySeqHelper', 'DynArrayHelper', 'DynArrayOperations', 'DynEnumHelper', 'DynEnumOperations', 'DynFixedHelper', 'DynFixedOperations', 'DynSequenceHelper', 'DynSequenceOperations', 'DynStructHelper', 'DynStructOperations', 'DynUnionHelper', 'DynUnionOperations', 'DynValueBox', 'DynValueBoxOperations', 'DynValueCommon', 'DynValueCommonOperations', 'DynValueHelper', 'DynValueOperations', 'NameDynAnyPair', 'NameDynAnyPairHelper', 'NameDynAnyPairSeqHelper', 'NameValuePairSeqHelper', '_DynAnyFactoryStub', '_DynAnyStub', '_DynArrayStub', '_DynEnumStub', '_DynFixedStub', '_DynSequenceStub', '_DynStructStub', '_DynUnionStub', '_DynValueStub' - ), - 144 => array ( - 'InconsistentTypeCodeHelper' - ), - 145 => array ( - 'InvalidValueHelper' - ), - 146 => array ( - 'CodeSets', 'Codec', 'CodecFactory', 'CodecFactoryHelper', 'CodecFactoryOperations', 'CodecOperations', 'ComponentIdHelper', 'ENCODING_CDR_ENCAPS', 'Encoding', 'ExceptionDetailMessage', 'IOR', 'IORHelper', 'IORHolder', 'MultipleComponentProfileHelper', 'MultipleComponentProfileHolder', 'ProfileIdHelper', 'RMICustomMaxStreamFormat', 'ServiceContext', 'ServiceContextHelper', 'ServiceContextHolder', 'ServiceContextListHelper', 'ServiceContextListHolder', 'ServiceIdHelper', 'TAG_ALTERNATE_IIOP_ADDRESS', 'TAG_CODE_SETS', 'TAG_INTERNET_IOP', 'TAG_JAVA_CODEBASE', 'TAG_MULTIPLE_COMPONENTS', 'TAG_ORB_TYPE', 'TAG_POLICIES', 'TAG_RMI_CUSTOM_MAX_STREAM_FORMAT', 'TaggedComponent', 'TaggedComponentHelper', 'TaggedComponentHolder', 'TaggedProfile', 'TaggedProfileHelper', 'TaggedProfileHolder', 'TransactionService' - ), - 147 => array ( - 'UnknownEncoding', 'UnknownEncodingHelper' - ), - 148 => array ( - 'FormatMismatch', 'FormatMismatchHelper', 'InvalidTypeForEncoding', 'InvalidTypeForEncodingHelper' - ), - 149 => array ( - 'SYNC_WITH_TRANSPORT', 'SyncScopeHelper' - ), - 150 => array ( - 'ACTIVE', 'AdapterManagerIdHelper', 'AdapterNameHelper', 'AdapterStateHelper', 'ClientRequestInfo', 'ClientRequestInfoOperations', 'ClientRequestInterceptor', 'ClientRequestInterceptorOperations', 'DISCARDING', 'HOLDING', 'INACTIVE', 'IORInfo', 'IORInfoOperations', 'IORInterceptor', 'IORInterceptorOperations', 'IORInterceptor_3_0', 'IORInterceptor_3_0Helper', 'IORInterceptor_3_0Holder', 'IORInterceptor_3_0Operations', 'Interceptor', 'InterceptorOperations', 'InvalidSlot', 'InvalidSlotHelper', 'LOCATION_FORWARD', 'NON_EXISTENT', 'ORBIdHelper', 'ORBInitInfo', 'ORBInitInfoOperations', 'ORBInitializer', 'ORBInitializerOperations', 'ObjectReferenceFactory', 'ObjectReferenceFactoryHelper', 'ObjectReferenceFactoryHolder', 'ObjectReferenceTemplate', 'ObjectReferenceTemplateHelper', 'ObjectReferenceTemplateHolder', 'ObjectReferenceTemplateSeqHelper', 'ObjectReferenceTemplateSeqHolder', 'PolicyFactory', 'PolicyFactoryOperations', 'RequestInfo', 'RequestInfoOperations', 'SUCCESSFUL', 'SYSTEM_EXCEPTION', - 'ServerIdHelper', 'ServerRequestInfo', 'ServerRequestInfoOperations', 'ServerRequestInterceptor', 'ServerRequestInterceptorOperations', 'TRANSPORT_RETRY', 'USER_EXCEPTION' - ), - 151 => array ( - 'DuplicateName', 'DuplicateNameHelper' - ), - 152 => array ( - 'AdapterActivator', 'AdapterActivatorOperations', 'ID_ASSIGNMENT_POLICY_ID', 'ID_UNIQUENESS_POLICY_ID', 'IMPLICIT_ACTIVATION_POLICY_ID', 'IdAssignmentPolicy', 'IdAssignmentPolicyOperations', 'IdAssignmentPolicyValue', 'IdUniquenessPolicy', 'IdUniquenessPolicyOperations', 'IdUniquenessPolicyValue', 'ImplicitActivationPolicy', 'ImplicitActivationPolicyOperations', 'ImplicitActivationPolicyValue', 'LIFESPAN_POLICY_ID', 'LifespanPolicy', 'LifespanPolicyOperations', 'LifespanPolicyValue', 'POA', 'POAHelper', 'POAManager', 'POAManagerOperations', 'POAOperations', 'REQUEST_PROCESSING_POLICY_ID', 'RequestProcessingPolicy', 'RequestProcessingPolicyOperations', 'RequestProcessingPolicyValue', 'SERVANT_RETENTION_POLICY_ID', 'Servant', 'ServantActivator', 'ServantActivatorHelper', 'ServantActivatorOperations', 'ServantActivatorPOA', 'ServantLocator', 'ServantLocatorHelper', 'ServantLocatorOperations', 'ServantLocatorPOA', 'ServantManager', 'ServantManagerOperations', 'ServantRetentionPolicy', - 'ServantRetentionPolicyOperations', 'ServantRetentionPolicyValue', 'THREAD_POLICY_ID', 'ThreadPolicy', 'ThreadPolicyOperations', 'ThreadPolicyValue', '_ServantActivatorStub', '_ServantLocatorStub' - ), - 153 => array ( - 'NoContext', 'NoContextHelper' - ), - 154 => array ( - 'AdapterInactive', 'AdapterInactiveHelper', 'State' - ), - 155 => array ( - 'AdapterAlreadyExists', 'AdapterAlreadyExistsHelper', 'AdapterNonExistent', 'AdapterNonExistentHelper', 'InvalidPolicy', 'InvalidPolicyHelper', 'NoServant', 'NoServantHelper', 'ObjectAlreadyActive', 'ObjectAlreadyActiveHelper', 'ObjectNotActive', 'ObjectNotActiveHelper', 'ServantAlreadyActive', 'ServantAlreadyActiveHelper', 'ServantNotActive', 'ServantNotActiveHelper', 'WrongAdapter', 'WrongAdapterHelper', 'WrongPolicy', 'WrongPolicyHelper' - ), - 156 => array ( - 'CookieHolder' - ), - 157 => array ( - 'RunTime', 'RunTimeOperations' - ), - 158 => array ( - '_Remote_Stub' - ), - 159 => array ( - 'Attr', 'CDATASection', 'CharacterData', 'Comment', 'DOMConfiguration', 'DOMError', 'DOMErrorHandler', 'DOMException', 'DOMImplementation', 'DOMImplementationList', 'DOMImplementationSource', 'DOMStringList', 'DocumentFragment', 'DocumentType', 'EntityReference', 'NameList', 'NamedNodeMap', 'Node', 'NodeList', 'Notation', 'ProcessingInstruction', 'Text', 'TypeInfo', 'UserDataHandler' - ), - 160 => array ( - 'DOMImplementationRegistry' - ), - 161 => array ( - 'EventException', 'EventTarget', 'MutationEvent', 'UIEvent' - ), - 162 => array ( - 'DOMImplementationLS', 'LSException', 'LSInput', 'LSLoadEvent', 'LSOutput', 'LSParser', 'LSParserFilter', 'LSProgressEvent', 'LSResourceResolver', 'LSSerializer', 'LSSerializerFilter' - ), - 163 => array ( - 'DTDHandler', 'DocumentHandler', 'EntityResolver', 'ErrorHandler', 'HandlerBase', 'InputSource', 'Locator', 'SAXException', 'SAXNotRecognizedException', 'SAXNotSupportedException', 'SAXParseException', 'XMLFilter', 'XMLReader' - ), - 164 => array ( - 'Attributes2', 'Attributes2Impl', 'DeclHandler', 'DefaultHandler2', 'EntityResolver2', 'LexicalHandler', 'Locator2', 'Locator2Impl' - ), - 165 => array ( - 'AttributeListImpl', 'AttributesImpl', 'DefaultHandler', 'LocatorImpl', 'NamespaceSupport', 'ParserAdapter', 'ParserFactory', 'XMLFilterImpl', 'XMLReaderAdapter', 'XMLReaderFactory' - ), - /* ambiguous class names (appear in more than one package) */ - 166 => array ( - 'Annotation', 'AnySeqHelper', 'Array', 'Attribute', 'AttributeList', 'AttributeSet', 'Attributes', 'AuthenticationException', 'Binding', 'Bounds', 'Certificate', 'CertificateEncodingException', 'CertificateException', 'CertificateExpiredException', 'CertificateNotYetValidException', 'CertificateParsingException', 'ConnectException', 'ContentHandler', 'Context', 'Control', 'Current', 'CurrentHelper', 'CurrentOperations', 'DOMLocator', 'DataInputStream', 'DataOutputStream', 'Date', 'DefaultLoaderRepository', 'Delegate', 'Document', 'DocumentEvent', 'DynAny', 'DynArray', 'DynEnum', 'DynFixed', 'DynSequence', 'DynStruct', 'DynUnion', 'DynValue', 'DynamicImplementation', 'Element', 'Entity', 'Event', 'EventListener', 'FieldNameHelper', 'FileFilter', 'Formatter', 'ForwardRequest', 'ForwardRequestHelper', 'InconsistentTypeCode', 'InputStream', 'IntrospectionException', 'InvalidAttributeValueException', 'InvalidKeyException', 'InvalidName', 'InvalidNameHelper', 'InvalidValue', 'List', 'MouseEvent', - 'NameValuePair', 'NameValuePairHelper', 'ORB', 'Object', 'ObjectIdHelper', 'ObjectImpl', 'OpenType', 'OutputStream', 'ParagraphView', 'Parser', 'Permission', 'Policy', 'Principal', 'Proxy', 'Reference', 'Statement', 'Timer', 'Timestamp', 'TypeMismatch', 'TypeMismatchHelper', 'UNKNOWN', 'UnknownHostException', 'X509Certificate' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '*', '&', '%', '!', ';', '<', '>', '?' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - /* all Java keywords are case sensitive */ - 1 => true, 2 => true, 3 => true, 4 => true, - 5 => true, 6 => true, 7 => true, 8 => true, 9 => true, - 10 => true, 11 => true, 12 => true, 13 => true, 14 => true, - 15 => true, 16 => true, 17 => true, 18 => true, 19 => true, - 20 => true, 21 => true, 22 => true, 23 => true, 24 => true, - 25 => true, 26 => true, 27 => true, 28 => true, 29 => true, - 30 => true, 31 => true, 32 => true, 33 => true, 34 => true, - 35 => true, 36 => true, 37 => true, 38 => true, 39 => true, - 40 => true, 41 => true, 42 => true, 43 => true, 44 => true, - 45 => true, 46 => true, 47 => true, 48 => true, 49 => true, - 50 => true, 51 => true, 52 => true, 53 => true, 54 => true, - 55 => true, 56 => true, 57 => true, 58 => true, 59 => true, - 60 => true, 61 => true, 62 => true, 63 => true, 64 => true, - 65 => true, 66 => true, 67 => true, 68 => true, 69 => true, - 70 => true, 71 => true, 72 => true, 73 => true, 74 => true, - 75 => true, 76 => true, 77 => true, 78 => true, 79 => true, - 80 => true, 81 => true, 82 => true, 83 => true, 84 => true, - 85 => true, 86 => true, 87 => true, 88 => true, 89 => true, - 90 => true, 91 => true, 92 => true, 93 => true, 94 => true, - 95 => true, 96 => true, 97 => true, 98 => true, 99 => true, - 100 => true, 101 => true, 102 => true, 103 => true, 104 => true, - 105 => true, 106 => true, 107 => true, 108 => true, 109 => true, - 110 => true, 111 => true, 112 => true, 113 => true, 114 => true, - 115 => true, 116 => true, 117 => true, 118 => true, 119 => true, - 120 => true, 121 => true, 122 => true, 123 => true, 124 => true, - 125 => true, 126 => true, 127 => true, 128 => true, 129 => true, - 130 => true, 131 => true, 132 => true, 133 => true, 134 => true, - 135 => true, 136 => true, 137 => true, 138 => true, 139 => true, - 140 => true, 141 => true, 142 => true, 143 => true, 144 => true, - 145 => true, 146 => true, 147 => true, 148 => true, 149 => true, - 150 => true, 151 => true, 152 => true, 153 => true, 154 => true, - 155 => true, 156 => true, 157 => true, 158 => true, 159 => true, - 160 => true, 161 => true, 162 => true, 163 => true, 164 => true, - 165 => true, 166 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #006600; font-weight: bold;', - 4 => 'color: #006600; font-weight: bold;', - 5 => 'color: #003399; font-weight: bold;', - 6 => 'color: #003399; font-weight: bold;', - 7 => 'color: #003399; font-weight: bold;', - 8 => 'color: #003399; font-weight: bold;', - 9 => 'color: #003399; font-weight: bold;', - 10 => 'color: #003399; font-weight: bold;', - 11 => 'color: #003399; font-weight: bold;', - 12 => 'color: #003399; font-weight: bold;', - 13 => 'color: #003399; font-weight: bold;', - 14 => 'color: #003399; font-weight: bold;', - 15 => 'color: #003399; font-weight: bold;', - 16 => 'color: #003399; font-weight: bold;', - 17 => 'color: #003399; font-weight: bold;', - 18 => 'color: #003399; font-weight: bold;', - 19 => 'color: #003399; font-weight: bold;', - 20 => 'color: #003399; font-weight: bold;', - 21 => 'color: #003399; font-weight: bold;', - 22 => 'color: #003399; font-weight: bold;', - 23 => 'color: #003399; font-weight: bold;', - 24 => 'color: #003399; font-weight: bold;', - 25 => 'color: #003399; font-weight: bold;', - 26 => 'color: #003399; font-weight: bold;', - 27 => 'color: #003399; font-weight: bold;', - 28 => 'color: #003399; font-weight: bold;', - 29 => 'color: #003399; font-weight: bold;', - 30 => 'color: #003399; font-weight: bold;', - 31 => 'color: #003399; font-weight: bold;', - 32 => 'color: #003399; font-weight: bold;', - 33 => 'color: #003399; font-weight: bold;', - 34 => 'color: #003399; font-weight: bold;', - 35 => 'color: #003399; font-weight: bold;', - 36 => 'color: #003399; font-weight: bold;', - 37 => 'color: #003399; font-weight: bold;', - 38 => 'color: #003399; font-weight: bold;', - 39 => 'color: #003399; font-weight: bold;', - 40 => 'color: #003399; font-weight: bold;', - 41 => 'color: #003399; font-weight: bold;', - 42 => 'color: #003399; font-weight: bold;', - 43 => 'color: #003399; font-weight: bold;', - 44 => 'color: #003399; font-weight: bold;', - 45 => 'color: #003399; font-weight: bold;', - 46 => 'color: #003399; font-weight: bold;', - 47 => 'color: #003399; font-weight: bold;', - 48 => 'color: #003399; font-weight: bold;', - 49 => 'color: #003399; font-weight: bold;', - 50 => 'color: #003399; font-weight: bold;', - 51 => 'color: #003399; font-weight: bold;', - 52 => 'color: #003399; font-weight: bold;', - 53 => 'color: #003399; font-weight: bold;', - 54 => 'color: #003399; font-weight: bold;', - 55 => 'color: #003399; font-weight: bold;', - 56 => 'color: #003399; font-weight: bold;', - 57 => 'color: #003399; font-weight: bold;', - 58 => 'color: #003399; font-weight: bold;', - 59 => 'color: #003399; font-weight: bold;', - 60 => 'color: #003399; font-weight: bold;', - 61 => 'color: #003399; font-weight: bold;', - 62 => 'color: #003399; font-weight: bold;', - 63 => 'color: #003399; font-weight: bold;', - 64 => 'color: #003399; font-weight: bold;', - 65 => 'color: #003399; font-weight: bold;', - 66 => 'color: #003399; font-weight: bold;', - 67 => 'color: #003399; font-weight: bold;', - 68 => 'color: #003399; font-weight: bold;', - 69 => 'color: #003399; font-weight: bold;', - 70 => 'color: #003399; font-weight: bold;', - 71 => 'color: #003399; font-weight: bold;', - 72 => 'color: #003399; font-weight: bold;', - 73 => 'color: #003399; font-weight: bold;', - 74 => 'color: #003399; font-weight: bold;', - 75 => 'color: #003399; font-weight: bold;', - 76 => 'color: #003399; font-weight: bold;', - 77 => 'color: #003399; font-weight: bold;', - 78 => 'color: #003399; font-weight: bold;', - 79 => 'color: #003399; font-weight: bold;', - 80 => 'color: #003399; font-weight: bold;', - 81 => 'color: #003399; font-weight: bold;', - 82 => 'color: #003399; font-weight: bold;', - 83 => 'color: #003399; font-weight: bold;', - 84 => 'color: #003399; font-weight: bold;', - 85 => 'color: #003399; font-weight: bold;', - 86 => 'color: #003399; font-weight: bold;', - 87 => 'color: #003399; font-weight: bold;', - 88 => 'color: #003399; font-weight: bold;', - 89 => 'color: #003399; font-weight: bold;', - 90 => 'color: #003399; font-weight: bold;', - 91 => 'color: #003399; font-weight: bold;', - 92 => 'color: #003399; font-weight: bold;', - 93 => 'color: #003399; font-weight: bold;', - 94 => 'color: #003399; font-weight: bold;', - 95 => 'color: #003399; font-weight: bold;', - 96 => 'color: #003399; font-weight: bold;', - 97 => 'color: #003399; font-weight: bold;', - 98 => 'color: #003399; font-weight: bold;', - 99 => 'color: #003399; font-weight: bold;', - 100 => 'color: #003399; font-weight: bold;', - 101 => 'color: #003399; font-weight: bold;', - 102 => 'color: #003399; font-weight: bold;', - 103 => 'color: #003399; font-weight: bold;', - 104 => 'color: #003399; font-weight: bold;', - 105 => 'color: #003399; font-weight: bold;', - 106 => 'color: #003399; font-weight: bold;', - 107 => 'color: #003399; font-weight: bold;', - 108 => 'color: #003399; font-weight: bold;', - 109 => 'color: #003399; font-weight: bold;', - 110 => 'color: #003399; font-weight: bold;', - 111 => 'color: #003399; font-weight: bold;', - 112 => 'color: #003399; font-weight: bold;', - 113 => 'color: #003399; font-weight: bold;', - 114 => 'color: #003399; font-weight: bold;', - 115 => 'color: #003399; font-weight: bold;', - 116 => 'color: #003399; font-weight: bold;', - 117 => 'color: #003399; font-weight: bold;', - 118 => 'color: #003399; font-weight: bold;', - 119 => 'color: #003399; font-weight: bold;', - 120 => 'color: #003399; font-weight: bold;', - 121 => 'color: #003399; font-weight: bold;', - 122 => 'color: #003399; font-weight: bold;', - 123 => 'color: #003399; font-weight: bold;', - 124 => 'color: #003399; font-weight: bold;', - 125 => 'color: #003399; font-weight: bold;', - 126 => 'color: #003399; font-weight: bold;', - 127 => 'color: #003399; font-weight: bold;', - 128 => 'color: #003399; font-weight: bold;', - 129 => 'color: #003399; font-weight: bold;', - 130 => 'color: #003399; font-weight: bold;', - 131 => 'color: #003399; font-weight: bold;', - 132 => 'color: #003399; font-weight: bold;', - 133 => 'color: #003399; font-weight: bold;', - 134 => 'color: #003399; font-weight: bold;', - 135 => 'color: #003399; font-weight: bold;', - 136 => 'color: #003399; font-weight: bold;', - 137 => 'color: #003399; font-weight: bold;', - 138 => 'color: #003399; font-weight: bold;', - 139 => 'color: #003399; font-weight: bold;', - 140 => 'color: #003399; font-weight: bold;', - 141 => 'color: #003399; font-weight: bold;', - 142 => 'color: #003399; font-weight: bold;', - 143 => 'color: #003399; font-weight: bold;', - 144 => 'color: #003399; font-weight: bold;', - 145 => 'color: #003399; font-weight: bold;', - 146 => 'color: #003399; font-weight: bold;', - 147 => 'color: #003399; font-weight: bold;', - 148 => 'color: #003399; font-weight: bold;', - 149 => 'color: #003399; font-weight: bold;', - 150 => 'color: #003399; font-weight: bold;', - 151 => 'color: #003399; font-weight: bold;', - 152 => 'color: #003399; font-weight: bold;', - 153 => 'color: #003399; font-weight: bold;', - 154 => 'color: #003399; font-weight: bold;', - 155 => 'color: #003399; font-weight: bold;', - 156 => 'color: #003399; font-weight: bold;', - 157 => 'color: #003399; font-weight: bold;', - 158 => 'color: #003399; font-weight: bold;', - 159 => 'color: #003399; font-weight: bold;', - 160 => 'color: #003399; font-weight: bold;', - 161 => 'color: #003399; font-weight: bold;', - 162 => 'color: #003399; font-weight: bold;', - 163 => 'color: #003399; font-weight: bold;', - 164 => 'color: #003399; font-weight: bold;', - 165 => 'color: #003399; font-weight: bold;', - 166 => 'color: #003399; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #006699;', - 3 => 'color: #008000; font-style: italic; font-weight: bold;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006633;', - 2 => 'color: #006633;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/applet/{FNAME}.html', - 6 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/{FNAME}.html', - 7 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/color/{FNAME}.html', - 8 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/datatransfer/{FNAME}.html', - 9 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/dnd/{FNAME}.html', - 10 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/event/{FNAME}.html', - 11 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/font/{FNAME}.html', - 12 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/geom/{FNAME}.html', - 13 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/im/{FNAME}.html', - 14 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/im/spi/{FNAME}.html', - 15 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/image/{FNAME}.html', - 16 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/image/renderable/{FNAME}.html', - 17 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/print/{FNAME}.html', - 18 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/beans/{FNAME}.html', - 19 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/beans/beancontext/{FNAME}.html', - 20 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/io/{FNAME}.html', - 21 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/{FNAME}.html', - 22 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/annotation/{FNAME}.html', - 23 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/instrument/{FNAME}.html', - 24 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/management/{FNAME}.html', - 25 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/ref/{FNAME}.html', - 26 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/reflect/{FNAME}.html', - 27 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/math/{FNAME}.html', - 28 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/net/{FNAME}.html', - 29 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/nio/{FNAME}.html', - 30 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/nio/channels/{FNAME}.html', - 31 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/nio/channels/spi/{FNAME}.html', - 32 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/nio/charset/{FNAME}.html', - 33 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/nio/charset/spi/{FNAME}.html', - 34 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/rmi/{FNAME}.html', - 35 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/rmi/activation/{FNAME}.html', - 36 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/rmi/dgc/{FNAME}.html', - 37 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/rmi/registry/{FNAME}.html', - 38 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/rmi/server/{FNAME}.html', - 39 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/security/{FNAME}.html', - 40 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/security/acl/{FNAME}.html', - 41 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/security/cert/{FNAME}.html', - 42 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/security/interfaces/{FNAME}.html', - 43 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/security/spec/{FNAME}.html', - 44 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/sql/{FNAME}.html', - 45 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/text/{FNAME}.html', - 46 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/{FNAME}.html', - 47 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/concurrent/{FNAME}.html', - 48 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/concurrent/atomic/{FNAME}.html', - 49 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/concurrent/locks/{FNAME}.html', - 50 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/jar/{FNAME}.html', - 51 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/logging/{FNAME}.html', - 52 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/prefs/{FNAME}.html', - 53 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/regex/{FNAME}.html', - 54 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/zip/{FNAME}.html', - 55 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/accessibility/{FNAME}.html', - 56 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/activity/{FNAME}.html', - 57 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/crypto/{FNAME}.html', - 58 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/crypto/interfaces/{FNAME}.html', - 59 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/crypto/spec/{FNAME}.html', - 60 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/{FNAME}.html', - 61 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/event/{FNAME}.html', - 62 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/metadata/{FNAME}.html', - 63 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/plugins/bmp/{FNAME}.html', - 64 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/plugins/jpeg/{FNAME}.html', - 65 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/spi/{FNAME}.html', - 66 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/stream/{FNAME}.html', - 67 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/{FNAME}.html', - 68 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/loading/{FNAME}.html', - 69 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/modelmbean/{FNAME}.html', - 70 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/monitor/{FNAME}.html', - 71 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/openmbean/{FNAME}.html', - 72 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/relation/{FNAME}.html', - 73 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/remote/{FNAME}.html', - 74 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/remote/rmi/{FNAME}.html', - 75 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/timer/{FNAME}.html', - 76 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/naming/{FNAME}.html', - 77 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/naming/directory/{FNAME}.html', - 78 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/naming/event/{FNAME}.html', - 79 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/naming/ldap/{FNAME}.html', - 80 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/naming/spi/{FNAME}.html', - 81 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/net/{FNAME}.html', - 82 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/net/ssl/{FNAME}.html', - 83 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/print/{FNAME}.html', - 84 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/print/attribute/{FNAME}.html', - 85 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/print/attribute/standard/{FNAME}.html', - 86 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/print/event/{FNAME}.html', - 87 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/rmi/{FNAME}.html', - 88 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/rmi/CORBA/{FNAME}.html', - 89 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/rmi/ssl/{FNAME}.html', - 90 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/auth/{FNAME}.html', - 91 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/auth/callback/{FNAME}.html', - 92 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/auth/kerberos/{FNAME}.html', - 93 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/auth/login/{FNAME}.html', - 94 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/auth/spi/{FNAME}.html', - 95 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/auth/x500/{FNAME}.html', - 96 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/sasl/{FNAME}.html', - 97 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sound/midi/{FNAME}.html', - 98 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sound/midi/spi/{FNAME}.html', - 99 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sound/sampled/{FNAME}.html', - 100 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sound/sampled/spi/{FNAME}.html', - 101 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sql/{FNAME}.html', - 102 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sql/rowset/{FNAME}.html', - 103 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sql/rowset/serial/{FNAME}.html', - 104 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sql/rowset/spi/{FNAME}.html', - 105 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/{FNAME}.html', - 106 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/border/{FNAME}.html', - 107 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/colorchooser/{FNAME}.html', - 108 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/event/{FNAME}.html', - 109 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/filechooser/{FNAME}.html', - 110 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/plaf/{FNAME}.html', - 111 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/plaf/basic/{FNAME}.html', - 112 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/plaf/metal/{FNAME}.html', - 113 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/plaf/multi/{FNAME}.html', - 114 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/plaf/synth/{FNAME}.html', - 115 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/table/{FNAME}.html', - 116 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/text/{FNAME}.html', - 117 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/text/html/{FNAME}.html', - 118 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/text/html/parser/{FNAME}.html', - 119 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/text/rtf/{FNAME}.html', - 120 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/tree/{FNAME}.html', - 121 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/undo/{FNAME}.html', - 122 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/transaction/{FNAME}.html', - 123 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/transaction/xa/{FNAME}.html', - 124 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/{FNAME}.html', - 125 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/datatype/{FNAME}.html', - 126 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/namespace/{FNAME}.html', - 127 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/parsers/{FNAME}.html', - 128 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/transform/{FNAME}.html', - 129 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/transform/dom/{FNAME}.html', - 130 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/transform/sax/{FNAME}.html', - 131 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/transform/stream/{FNAME}.html', - 132 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/validation/{FNAME}.html', - 133 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/xpath/{FNAME}.html', - 134 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/ietf/jgss/{FNAME}.html', - 135 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CORBA/{FNAME}.html', - 136 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CORBA/DynAnyPackage/{FNAME}.html', - 137 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CORBA/TypeCodePackage/{FNAME}.html', - 138 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CORBA/portable/{FNAME}.html', - 139 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CosNaming/{FNAME}.html', - 140 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CosNaming/NamingContextExtPackage/{FNAME}.html', - 141 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CosNaming/NamingContextPackage/{FNAME}.html', - 142 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/Dynamic/{FNAME}.html', - 143 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/DynamicAny/{FNAME}.html', - 144 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/DynamicAny/DynAnyFactoryPackage/{FNAME}.html', - 145 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/DynamicAny/DynAnyPackage/{FNAME}.html', - 146 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/IOP/{FNAME}.html', - 147 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/IOP/CodecFactoryPackage/{FNAME}.html', - 148 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/IOP/CodecPackage/{FNAME}.html', - 149 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/Messaging/{FNAME}.html', - 150 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableInterceptor/{FNAME}.html', - 151 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableInterceptor/ORBInitInfoPackage/{FNAME}.html', - 152 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableServer/{FNAME}.html', - 153 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableServer/CurrentPackage/{FNAME}.html', - 154 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableServer/POAManagerPackage/{FNAME}.html', - 155 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableServer/POAPackage/{FNAME}.html', - 156 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableServer/ServantLocatorPackage/{FNAME}.html', - 157 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/SendingContext/{FNAME}.html', - 158 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/stub/java/rmi/{FNAME}.html', - 159 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/w3c/dom/{FNAME}.html', - 160 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/w3c/dom/bootstrap/{FNAME}.html', - 161 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/w3c/dom/events/{FNAME}.html', - 162 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/w3c/dom/ls/{FNAME}.html', - 163 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/xml/sax/{FNAME}.html', - 164 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/xml/sax/ext/{FNAME}.html', - 165 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/xml/sax/helpers/{FNAME}.html', - /* ambiguous class names (appear in more than one package) */ - 166 => 'http://www.google.com/search?sitesearch=java.sun.com&q=allinurl%3Aj2se%2F1+5+0%2Fdocs%2Fapi+{FNAME}' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - /* Java does not use '::' */ - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => '(?|^&"\'])', - 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-;"\'])' - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/javascript.php b/library/Vendors/geshi/geshi/javascript.php deleted file mode 100644 index 429cdd65..00000000 --- a/library/Vendors/geshi/geshi/javascript.php +++ /dev/null @@ -1,150 +0,0 @@ - 'Javascript', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - //Regular Expressions - 'COMMENT_REGEXP' => array(2 => "/(?<=[\\s^])s\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[gimsu]*(?=[\\s$\\.\\;])|(?<=[\\s^(=])m?\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[gimsu]*(?=[\\s$\\.\\,\\;\\)])/iU"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'as', 'break', 'case', 'catch', 'continue', 'decodeURI', 'delete', 'do', - 'else', 'encodeURI', 'eval', 'finally', 'for', 'if', 'in', 'is', 'item', - 'instanceof', 'return', 'switch', 'this', 'throw', 'try', 'typeof', 'void', - 'while', 'write', 'with' - ), - 2 => array( - 'class', 'const', 'default', 'debugger', 'export', 'extends', 'false', - 'function', 'import', 'namespace', 'new', 'null', 'package', 'private', - 'protected', 'public', 'super', 'true', 'use', 'var' - ), - 3 => array( - // common functions for Window object - 'alert', 'back', 'blur', 'close', 'confirm', 'focus', 'forward', 'home', - 'name', 'navigate', 'onblur', 'onerror', 'onfocus', 'onload', 'onmove', - 'onresize', 'onunload', 'open', 'print', 'prompt', 'scroll', 'status', - 'stop', - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', - '+', '-', '*', '/', '%', - '!', '@', '&', '|', '^', - '<', '>', '=', - ',', ';', '?', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000066; font-weight: bold;', - 2 => 'color: #003366; font-weight: bold;', - 3 => 'color: #000066;' - ), - 'COMMENTS' => array( - 1 => 'color: #006600; font-style: italic;', - 2 => 'color: #009966; font-style: italic;', - 'MULTI' => 'color: #006600; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #3366CC;' - ), - 'NUMBERS' => array( - 0 => 'color: #CC0000;' - ), - 'METHODS' => array( - 1 => 'color: #660066;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - '' - ), - 1 => array( - '' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/jquery.php b/library/Vendors/geshi/geshi/jquery.php deleted file mode 100644 index 54e653ed..00000000 --- a/library/Vendors/geshi/geshi/jquery.php +++ /dev/null @@ -1,238 +0,0 @@ - 'jQuery', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - //Regular Expressions - 'COMMENT_REGEXP' => array(2 => "/(?<=[\\s^])s\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[gimsu]*(?=[\\s$\\.\\;])|(?<=[\\s^(=])m?\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[gimsu]*(?=[\\s$\\.\\,\\;\\)])/iU"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'as', 'break', 'case', 'catch', 'continue', 'decodeURI', 'delete', 'do', - 'else', 'encodeURI', 'eval', 'finally', 'for', 'if', 'in', 'is', 'item', - 'instanceof', 'return', 'switch', 'this', 'throw', 'try', 'typeof', 'void', - 'while', 'write', 'with' - ), - 2 => array( - 'class', 'const', 'default', 'debugger', 'export', 'extends', 'false', - 'function', 'import', 'namespace', 'new', 'null', 'package', 'private', - 'protected', 'public', 'super', 'true', 'use', 'var' - ), - 3 => array( - // common functions for Window object - 'alert', 'back', 'close', 'confirm', 'forward', 'home', - 'name', 'navigate', 'onblur', 'onerror', 'onfocus', 'onload', 'onmove', - 'onresize', 'onunload', 'open', 'print', 'prompt', 'status', - //'blur', 'focus', 'scroll', // Duplicate with kw9 - //'stop', //Duplicate with kw10 - ), - 4 => array( - // jQuery Core Functions - 'jQuery', 'each', 'size', 'length', 'selector', 'context', 'eq', - 'index', 'data', 'removeData', 'queue', 'dequeue', 'noConflict' - //'get', //Duplicate with kw11 - ), - 5 => array( - // jQuery Attribute Functions - 'attr', 'removeAttr', 'addClass', 'hasClass', 'removeClass', 'toggleClass', - 'html', 'text', 'val', - ), - 6 => array( - // jQuery Traversing Functions - 'filter', 'not', 'slice', 'add', 'children', 'closest', - 'contents', 'find', 'next', 'nextAll', 'parent', 'parents', - 'prev', 'prevAll', 'siblings', 'andSelf', 'end', - //'is', //Dup with kw1 - //'offsetParent', //Duplicate with kw8 - //'map', //Duplicate with kw12 - ), - 7 => array( - // jQuery Manipulation Functions - 'append', 'appendTo', 'prepend', 'prependTo', 'after', 'before', 'insertAfter', - 'insertBefore', 'wrap', 'wrapAll', 'wrapInner', 'replaceWith', 'replaceAll', - 'empty', 'remove', 'clone', - ), - 8 => array( - // jQuery CSS Functions - 'css', 'offset', 'offsetParent', 'position', 'scrollTop', 'scrollLeft', - 'height', 'width', 'innerHeight', 'innerWidth', 'outerHeight', 'outerWidth', - ), - 9 => array( - // jQuery Events Functions - 'ready', 'bind', 'one', 'trigger', 'triggerHandler', 'unbind', 'live', - 'die', 'hover', 'blur', 'change', 'click', 'dblclick', 'error', - 'focus', 'keydown', 'keypress', 'keyup', 'mousedown', 'mouseenter', - 'mouseleave', 'mousemove', 'mouseout', 'mouseover', 'mouseup', 'resize', - 'scroll', 'select', 'submit', 'unload', - //'toggle', //Duplicate with kw10 - //'load', //Duplicate with kw11 - ), - 10 => array( - // jQuery Effects Functions - 'show', 'hide', 'toggle', 'slideDown', 'slideUp', 'slideToggle', 'fadeIn', - 'fadeOut', 'fadeTo', 'animate', 'stop', - ), - 11 => array( - // jQuery Ajax Functions - 'ajax', 'load', 'get', 'getJSON', 'getScript', 'post', 'ajaxComplete', - 'ajaxError', 'ajaxSend', 'ajaxStart', 'ajaxStop', 'ajaxSuccess', 'ajaxSetup', - 'serialize', 'serializeArray', - ), - 12 => array( - // jQuery Utility Functions - 'support', 'browser', 'version', 'boxModal', 'extend', 'grep', 'makeArray', - 'map', 'inArray', 'merge', 'unique', 'isArray', 'isFunction', 'trim', - 'param', - ), - ), - 'SYMBOLS' => array( - 0 => array( - '(', ')', '[', ']', '{', '}', - '+', '-', '*', '/', '%', - '!', '@', '&', '|', '^', - '<', '>', '=', - ',', ';', '?', ':' - ), - 1 => array( - '$' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false, - 8 => false, - 9 => false, - 10 => false, - 11 => false, - 12 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000066; font-weight: bold;', - 2 => 'color: #003366; font-weight: bold;', - 3 => 'color: #000066;', - 4 => 'color: #000066;', - 5 => 'color: #000066;', - 6 => 'color: #000066;', - 7 => 'color: #000066;', - 8 => 'color: #000066;', - 9 => 'color: #000066;', - 10 => 'color: #000066;', - 11 => 'color: #000066;', - 12 => 'color: #000066;' - ), - 'COMMENTS' => array( - 1 => 'color: #006600; font-style: italic;', - 2 => 'color: #009966; font-style: italic;', - 'MULTI' => 'color: #006600; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #3366CC;' - ), - 'NUMBERS' => array( - 0 => 'color: #CC0000;' - ), - 'METHODS' => array( - 1 => 'color: #660066;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;', - 1 => 'color: #000066;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => 'http://docs.jquery.com/Core/{FNAME}', - 5 => 'http://docs.jquery.com/Attributes/{FNAME}', - 6 => 'http://docs.jquery.com/Traversing/{FNAME}', - 7 => 'http://docs.jquery.com/Manipulation/{FNAME}', - 8 => 'http://docs.jquery.com/CSS/{FNAME}', - 9 => 'http://docs.jquery.com/Events/{FNAME}', - 10 => 'http://docs.jquery.com/Effects/{FNAME}', - 11 => 'http://docs.jquery.com/Ajax/{FNAME}', - 12 => 'http://docs.jquery.com/Utilities/{FNAME}' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - '' - ), - 1 => array( - '' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/kixtart.php b/library/Vendors/geshi/geshi/kixtart.php deleted file mode 100644 index 62cb5465..00000000 --- a/library/Vendors/geshi/geshi/kixtart.php +++ /dev/null @@ -1,329 +0,0 @@ - 'KiXtart', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'While', 'Loop', - 'Use', - 'Small', - 'Sleep', - 'Shell', - 'SetTime', - 'SetM', - 'SetL', - 'Set', - 'Select', 'Case', - 'Run', - 'Return', - 'Redim', - 'RD', - 'Quit', - 'Play', - 'Move', - 'MD', - 'Include', - 'If', 'Else', 'Endif', - 'GoTo', - 'GoSub', - 'Go', - 'Global', - 'GetS', - 'Get', - 'Function', 'Endfunction', - 'For', 'Next', - 'Each', - 'FlushKb', - 'Exit', - 'Do', 'Until', - 'Display', - 'Dim', - 'Del', - 'Debug', - 'Copy', - 'Cookie1', - 'Color', - 'CLS', - 'CD', - 'Call', - 'Break', - 'Big', - 'Beep', - ), - 2 => array( - '@Address', - '@Build', - '@Color', - '@Comment', - '@CPU', - '@CRLF', - '@CSD', - '@CurDir', - '@Date', - '@Day', - '@Domain', - '@DOS', - '@Error', - '@FullName', - '@HomeDir', - '@HomeDrive', - '@HomeShr', - '@HostName', - '@InWin', - '@IPaddressX', - '@KiX', - '@LanRoot', - '@LDomain', - '@LDrive', - '@LM', - '@LogonMode', - '@LongHomeDir', - '@LServer', - '@MaxPWAge', - '@MDayNo', - '@MHz', - '@MonthNo', - '@Month', - '@MSecs', - '@OnWoW64', - '@PID', - '@PrimaryGroup', - '@Priv', - '@ProductSuite', - '@ProductType', - '@PWAge', - '@RAS', - '@Result', - '@RServer', - '@ScriptDir', - '@ScriptExe', - '@ScriptName', - '@SError', - '@SID', - '@Site', - '@StartDir', - '@SysLang', - '@Ticks', - '@Time', - '@TsSession', - '@UserID', - '@UserLang', - '@WDayNo', - '@Wksta', - '@WUserID', - '@YDayNo', - '@Year', - ), - 3 => array( - 'WriteValue', - 'WriteProfileString', - 'WriteLine', - 'VarTypeName', - 'VarType', - 'Val', - 'UnloadHive', - 'UCase', - 'Ubound', - 'Trim', - 'Substr', - 'SRnd', - 'Split', - 'SidToName', - 'ShutDown', - 'ShowProgramGroup', - 'SetWallpaper', - 'SetTitle', - 'SetSystemState', - 'SetOption', - 'SetFocus', - 'SetFileAttr', - 'SetDefaultPrinter', - 'SetConsole', - 'SetAscii', - 'SendMessage', - 'SendKeys', - 'SaveKey', - 'RTrim', - 'Round', - 'Rnd', - 'Right', - 'RedirectOutput', - 'ReadValue', - 'ReadType', - 'ReadProfileString', - 'ReadLine', - 'Open', - 'MessageBox', - 'MemorySize', - 'LTrim', - 'Logoff', - 'LogEvent', - 'LoadKey', - 'LoadHive', - 'Len', - 'Left', - 'LCase', - 'KeyExist', - 'KbHit', - 'Join', - 'IsDeclared', - 'Int', - 'InStrRev', - 'InStr', - 'InGroup', - 'IIF', - 'GetObject', - 'GetFileVersion', - 'GetFileTime', - 'GetFileSize', - 'GetFileAttr', - 'GetDiskSpace', - 'FreeFileHandle', - 'FormatNumber', - 'Fix', - 'ExpandEnvironmentVars', - 'Exist', - 'Execute', - 'EnumValue', - 'EnumLocalGroup', - 'EnumKey', - 'EnumIpInfo', - 'EnumGroup', - 'Dir', - 'DelValue', - 'DelTree', - 'DelProgramItem', - 'DelProgramGroup', - 'DelPrinterConnection', - 'DelKey', - 'DecToHex', - 'CStr', - 'CreateObject', - 'CompareFileTimes', - 'Close', - 'ClearEventLog', - 'CInt', - 'Chr', - 'CDbl', - 'Box', - 'BackupEventLog', - 'At', - 'AScan', - 'Asc', - 'AddProgramItem', - 'AddProgramGroup', - 'AddPrinterConnection', - 'AddKey', - 'Abs' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '?', ':', '+', '-', '*', '/', '&', '|', '^', '~', '<', '>', '=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://www.kixtart.org/manual/Commands/{FNAMEL}.htm', - 2 => '', - 3 => 'http://www.kixtart.org/manual/Functions/{FNAMEL}.htm' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true, - 2 => true, - 3 => true - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/library/Vendors/geshi/geshi/klonec.php b/library/Vendors/geshi/geshi/klonec.php deleted file mode 100644 index e47e597e..00000000 --- a/library/Vendors/geshi/geshi/klonec.php +++ /dev/null @@ -1,282 +0,0 @@ - 'KLone C', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),//#pour precede les include de C - 'COMMENT_MULTI' => array('/*' => '*/', '' ),//comentaires C et KLone suivi de ceux pour HTML - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array(//mots-cles C - 'if', 'return', 'while', 'case', 'class', 'continue', 'default', - 'do', 'else', 'for', 'switch', 'goto', - 'null', 'break', 'true', 'enum', 'extern', 'inline', 'false' - ), - 2 => array(//mots-cles KLone - 'out', 'request', 'response', - ), - 3 => array(//fonctions C usuelles - 'printf', 'malloc', 'fopen', 'fclose', 'free', 'fputs', 'fgets', 'feof', 'fwrite', - 'perror', 'ferror', 'qsort', 'stats', 'sscanf', 'scanf', - 'strdup', 'strcpy', 'strcmp', 'strncpy', 'strcasecmp', 'cat', 'strcat', 'strstr', - 'strlen', 'strtof', 'strtod', 'strtok', 'towlower', 'towupper', - 'cd', 'system', 'exit', 'exec', 'fork', 'vfork', 'kill', 'signal', 'syslog', - 'usleep', 'utime', 'wait', 'waitpid', 'waitid', - 'ceil', 'eval', 'round', 'floor', - 'atoi', 'atol', 'abs', 'cos', 'sin', 'tan', 'acos', 'asin', 'atan', 'exp', - 'time', 'ctime', 'localtime', 'asctime', 'gmtime', 'difftime', 'date' - ), - 4 => array(//fonctions KLone usuelles - 'request_get_cookies', 'request_get_cookie', 'request_get_args', 'request_get_arg', - 'request_io', 'request_get_uri', 'request_get_filename', 'request_get_query_string', 'request_get_path_info', - 'request_get_if_modified_since', 'request_get_http', 'request_get_client_request', - 'request_get_content_length', 'request_get_uploads', 'request_get_uploaded_file', - 'request_get_method', 'request_get_protocol', 'request_get_resolved_filename', - 'request_get_resolved_path_info', 'request_get_addr', 'request_get_peer_addr', - 'request_get_header', 'request_get_field', 'request_get_field_value', - 'response_set_content_encoding', 'response_disable_caching', 'response_enable_caching', - 'response_set_cookie', 'response_set_method', 'response_get_method', - 'response_print_header', 'response_set_field', 'response_del_field', - 'response_set_content_type', 'response_set_date', 'response_set_last_modified', - 'response_set_content_length', 'response_get_status', 'response_get_header', - 'response_io', 'response_redirect', 'response_set_status', - 'session_get_vars', 'session_get', 'session_set', 'session_age', 'session_clean', 'session_del', - 'io_type', 'io_pipe', 'io_dup', 'io_copy', 'io_seek', 'io_tell', 'io_close', - 'io_free', 'io_read', 'io_printf', 'io_flush', 'io_write', 'io_putc', 'io_getc', - 'io_get_until', 'io_gets', 'io_codec_add_head', 'io_codec_add_tail', - 'io_codecs_remove', 'io_name_set', 'io_name_get' - ), - 5 => array(//types C - 'auto', 'char', 'const', 'double', 'float', 'int', 'long', - 'register', 'short', 'signed', 'sizeof', 'static', 'string', 'struct', - 'typedef', 'union', 'unsigned', 'void', 'volatile', - 'wchar_t', 'time_t', 'FILE' - ), - 6 => array(//mots-cles HTML - 'a', 'abbr', 'acronym', 'address', 'applet', - - 'base', 'basefont', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'b', - - 'caption', 'center', 'cite', 'code', 'colgroup', 'col', - - 'dd', 'del', 'dfn', 'dir', 'div', 'dl', 'dt', - - 'em', - - 'fieldset', 'font', 'form', 'frame', 'frameset', - - 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'hr', 'html', - - 'iframe', 'ilayer', 'img', 'input', 'ins', 'isindex', 'i', - - 'kbd', - - 'label', 'legend', 'link', 'li', - - 'map', 'meta', - - 'noframes', 'noscript', - - 'object', 'ol', 'optgroup', 'option', - - 'param', 'pre', 'p', - - 'q', - - 'samp', 'script', 'select', 'small', 'span', 'strike', 'strong', 'style', 'sub', 'sup', 's', - - 'table', 'tbody', 'td', 'textarea', 'text', 'tfoot', 'thead', 'th', 'title', 'tr', 'tt', - - 'ul', 'u', - - 'var', - ), - 7 => array(//autres mots-cles HTML - 'abbr', 'accept-charset', 'accept', 'accesskey', 'action', 'align', 'alink', 'alt', 'archive', 'axis', - 'background', 'bgcolor', 'border', - 'cellpadding', 'cellspacing', 'char', 'charoff', 'charset', 'checked', 'cite', 'class', 'classid', 'clear', 'code', 'codebase', 'codetype', 'color', 'cols', 'colspan', 'compact', 'content', 'coords', - 'data', 'datetime', 'declare', 'defer', 'dir', 'disabled', - 'enctype', - 'face', 'for', 'frame', 'frameborder', - 'headers', 'height', 'href', 'hreflang', 'hspace', 'http-equiv', - 'id', 'ismap', - 'label', 'lang', 'language', 'link', 'longdesc', - 'marginheight', 'marginwidth', 'maxlength', 'media', 'method', 'multiple', - 'name', 'nohref', 'noresize', 'noshade', 'nowrap', - 'object', 'onblur', 'onchange', 'onclick', 'ondblclick', 'onfocus', 'onkeydown', 'onkeypress', 'onkeyup', 'onload', 'onmousedown', 'onmousemove', 'onmouseout', 'onmouseover', 'onmouseup', 'onreset', 'onselect', 'onsubmit', 'onunload', - 'profile', 'prompt', - 'readonly', 'rel', 'rev', 'rowspan', 'rows', 'rules', - 'scheme', 'scope', 'scrolling', 'selected', 'shape', 'size', 'span', 'src', 'standby', 'start', 'style', 'summary', - 'tabindex', 'target', 'text', 'title', 'type', - 'usemap', - 'valign', 'value', 'valuetype', 'version', 'vlink', 'vspace', - 'width' - ) - ), - 'SYMBOLS' => array( - 1 => array( - '<%=', '<%!', '<%', '%>' - ), - 0 => array( - '(', ')', '[', ']', '{', '}', - '!', '%', '&', '|', '/', - '<', '>', - '=', '-', '+', '*', - '.', ':', ',', ';', '^' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100; font-weight: bold;',//pour les mots-cles C - 2 => 'color: #000000; font-weight: bold;',//pour les mots-cles KLone - 3 => 'color: #6600FF;',//pour les fonctions C - 4 => 'color: #6600FF;',//pour les fonctions Klone - 5 => 'color: #0099FF; font-weight: bold;',//pour les types C - 6 => 'color: #990099; font-weight: bold;',//pour les mots-cles HTML - 7 => 'color: #000066;'//pour les autres mots-cles HTML - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;',//commentaire sur une ligne C et KLone - 2 => 'color: #339933;',//pour les #... en C - 'MULTI' => 'color: #808080; font-style: italic;'//commentaire sur plusieurs lignes C et KLone - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;', - 1 => 'color: #000000; font-weight: bold;' - ), - 'REGEXPS' => array(), - 'SCRIPT' => array( - 0 => 'background-color:#ffccff; font-weight: bold; color:#000000;', - 1 => '', - 2 => '', - 3 => 'color: #00bbdd; font-weight: bold;', - 4 => 'color: #ddbb00;', - 5 => 'color: #009900;' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAMEL}.html', - 4 => 'http://www.koanlogic.com/klone/api/html/globals.html', - 5 => '', - 6 => 'http://december.com/html/4/element/{FNAMEL}.html', - 7 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_ALWAYS, - 'SCRIPT_DELIMITERS' => array( - //delimiteurs pour KLone - 0 => array( - '<%=' => '%>' - ), - 1 => array( - '<%!' => '%>' - ), - 2 => array( - '<%' => '%>' - ), - //delimiteur pour HTML - 3 => array( - ' '>' - ), - 4 => array( - '&' => ';' - ), - 5 => array( - '<' => '>' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => false, - 1 => true, - 2 => true, - 3 => false, - 4 => false, - 5 => true - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 6 => array( - 'DISALLOWED_BEFORE' => '(?<=<|<\/)', - 'DISALLOWED_AFTER' => '(?=\s|\/|>)', - ), - 7 => array( - 'DISALLOWED_AFTER' => '(?=\s*=)', - ) - ) - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/klonecpp.php b/library/Vendors/geshi/geshi/klonecpp.php deleted file mode 100644 index 1a2d2082..00000000 --- a/library/Vendors/geshi/geshi/klonecpp.php +++ /dev/null @@ -1,310 +0,0 @@ - 'KLone C++', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),//#pour precede les include de C - 'COMMENT_MULTI' => array('/*' => '*/', '' ),//comentaires C et KLone suivi de ceux pour HTML - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array(//mots-cles C++ - 'if', 'return', 'while', 'case', 'continue', 'default', - 'do', 'else', 'for', 'switch', 'goto', - 'break', 'true', 'enum', 'extern', 'inline', 'false', - 'errno', 'stdin', 'stdout', 'stderr', - 'virtual', 'public', 'private', 'protected', 'template', 'using', 'namespace', - 'try', 'catch', 'dynamic_cast', 'const_cast', 'reinterpret_cast', - 'static_cast', 'explicit', 'friend', 'typename', 'typeid', 'class', - 'EDOM', 'ERANGE', 'FLT_RADIX', 'FLT_ROUNDS', 'FLT_DIG', 'DBL_DIG', 'LDBL_DIG', - 'FLT_EPSILON', 'DBL_EPSILON', 'LDBL_EPSILON', 'FLT_MANT_DIG', 'DBL_MANT_DIG', - 'LDBL_MANT_DIG', 'FLT_MAX', 'DBL_MAX', 'LDBL_MAX', 'FLT_MAX_EXP', 'DBL_MAX_EXP', - 'LDBL_MAX_EXP', 'FLT_MIN', 'DBL_MIN', 'LDBL_MIN', 'FLT_MIN_EXP', 'DBL_MIN_EXP', - 'LDBL_MIN_EXP', 'CHAR_BIT', 'CHAR_MAX', 'CHAR_MIN', 'SCHAR_MAX', 'SCHAR_MIN', - 'UCHAR_MAX', 'SHRT_MAX', 'SHRT_MIN', 'USHRT_MAX', 'INT_MAX', 'INT_MIN', - 'UINT_MAX', 'LONG_MAX', 'LONG_MIN', 'ULONG_MAX', 'HUGE_VAL', 'SIGABRT', - 'SIGFPE', 'SIGILL', 'SIGINT', 'SIGSEGV', 'SIGTERM', 'SIG_DFL', 'SIG_ERR', - 'SIG_IGN', 'BUFSIZ', 'EOF', 'FILENAME_MAX', 'FOPEN_MAX', 'L_tmpnam', 'NULL', - 'SEEK_CUR', 'SEEK_END', 'SEEK_SET', 'TMP_MAX', - 'EXIT_FAILURE', 'EXIT_SUCCESS', 'RAND_MAX', 'CLOCKS_PER_SEC' - ), - 2 => array(//mots-cles KLone - 'out', 'request', 'response', - ), - 3 => array(//fonctions C++ usuelles - 'cin', 'cerr', 'clog', 'cout', 'delete', 'new', 'this', - 'printf', 'fprintf', 'snprintf', 'sprintf', 'assert', - 'isalnum', 'isalpha', 'isdigit', 'iscntrl', 'isgraph', 'islower', 'isprint', - 'ispunct', 'isspace', 'isupper', 'isxdigit', 'tolower', 'toupper', - 'exp', 'log', 'log10', 'pow', 'sqrt', 'ceil', 'floor', 'fabs', 'ldexp', - 'frexp', 'modf', 'fmod', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', 'atan2', - 'sinh', 'cosh', 'tanh', 'setjmp', 'longjmp', - 'va_start', 'va_arg', 'va_end', 'offsetof', 'sizeof', 'fopen', 'freopen', - 'fflush', 'fclose', 'remove', 'rename', 'tmpfile', 'tmpname', 'setvbuf', - 'setbuf', 'vfprintf', 'vprintf', 'vsprintf', 'fscanf', 'scanf', 'sscanf', - 'fgetc', 'fgets', 'fputc', 'fputs', 'getc', 'getchar', 'gets', 'putc', - 'putchar', 'puts', 'ungetc', 'fread', 'fwrite', 'fseek', 'ftell', 'rewind', - 'fgetpos', 'fsetpos', 'clearerr', 'feof', 'ferror', 'perror', 'abs', 'labs', - 'div', 'ldiv', 'atof', 'atoi', 'atol', 'strtod', 'strtol', 'strtoul', 'calloc', - 'malloc', 'realloc', 'free', 'abort', 'exit', 'atexit', 'system', 'getenv', - 'bsearch', 'qsort', 'rand', 'srand', 'strcpy', 'strncpy', 'strcat', 'strncat', - 'strcmp', 'strncmp', 'strcoll', 'strchr', 'strrchr', 'strspn', 'strcspn', - 'strpbrk', 'strstr', 'strlen', 'strerror', 'strtok', 'strxfrm', 'memcpy', - 'memmove', 'memcmp', 'memchr', 'memset', 'clock', 'time', 'difftime', 'mktime', - 'asctime', 'ctime', 'gmtime', 'localtime', 'strftime' - ), - 4 => array(//fonctions KLone usuelles - 'request_get_cookies', 'request_get_cookie', 'request_get_args', 'request_get_arg', - 'request_io', 'request_get_uri', 'request_get_filename', 'request_get_query_string', 'request_get_path_info', - 'request_get_if_modified_since', 'request_get_http', 'request_get_client_request', - 'request_get_content_length', 'request_get_uploads', 'request_get_uploaded_file', - 'request_get_method', 'request_get_protocol', 'request_get_resolved_filename', - 'request_get_resolved_path_info', 'request_get_addr', 'request_get_peer_addr', - 'request_get_header', 'request_get_field', 'request_get_field_value', - 'response_set_content_encoding', 'response_disable_caching', 'response_enable_caching', - 'response_set_cookie', 'response_set_method', 'response_get_method', - 'response_print_header', 'response_set_field', 'response_del_field', - 'response_set_content_type', 'response_set_date', 'response_set_last_modified', - 'response_set_content_length', 'response_get_status', 'response_get_header', - 'response_io', 'response_redirect', 'response_set_status', - 'session_get_vars', 'session_get', 'session_set', 'session_age', 'session_clean', 'session_del', - 'io_type', 'io_pipe', 'io_dup', 'io_copy', 'io_seek', 'io_tell', 'io_close', - 'io_free', 'io_read', 'io_printf', 'io_flush', 'io_write', 'io_putc', 'io_getc', - 'io_get_until', 'io_gets', 'io_codec_add_head', 'io_codec_add_tail', - 'io_codecs_remove', 'io_name_set', 'io_name_get' - ), - 5 => array(//types C++ - 'auto', 'bool', 'char', 'const', 'double', 'float', 'int', 'long', 'longint', - 'register', 'short', 'shortint', 'signed', 'static', 'struct', - 'typedef', 'union', 'unsigned', 'void', 'volatile', 'jmp_buf', - 'signal', 'raise', 'va_list', 'ptrdiff_t', 'size_t', 'FILE', 'fpos_t', - 'div_t', 'ldiv_t', 'clock_t', 'time_t', 'tm', - 'string', 'wchar_t' - ), - 6 => array(//mots-cles HTML - 'a', 'abbr', 'acronym', 'address', 'applet', - - 'base', 'basefont', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'b', - - 'caption', 'center', 'cite', 'code', 'colgroup', 'col', - - 'dd', 'del', 'dfn', 'dir', 'div', 'dl', 'dt', - - 'em', - - 'fieldset', 'font', 'form', 'frame', 'frameset', - - 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'hr', 'html', - - 'iframe', 'ilayer', 'img', 'input', 'ins', 'isindex', 'i', - - 'kbd', - - 'label', 'legend', 'link', 'li', - - 'map', 'meta', - - 'noframes', 'noscript', - - 'object', 'ol', 'optgroup', 'option', - - 'param', 'pre', 'p', - - 'q', - - 'samp', 'script', 'select', 'small', 'span', 'strike', 'strong', 'style', 'sub', 'sup', 's', - - 'table', 'tbody', 'td', 'textarea', 'text', 'tfoot', 'thead', 'th', 'title', 'tr', 'tt', - - 'ul', 'u', - - 'var', - ), - 7 => array(//autres mots-cles HTML - 'abbr', 'accept-charset', 'accept', 'accesskey', 'action', 'align', 'alink', 'alt', 'archive', 'axis', - 'background', 'bgcolor', 'border', - 'cellpadding', 'cellspacing', 'char', 'charoff', 'charset', 'checked', 'cite', 'class', 'classid', 'clear', 'code', 'codebase', 'codetype', 'color', 'cols', 'colspan', 'compact', 'content', 'coords', - 'data', 'datetime', 'declare', 'defer', 'dir', 'disabled', - 'enctype', - 'face', 'for', 'frame', 'frameborder', - 'headers', 'height', 'href', 'hreflang', 'hspace', 'http-equiv', - 'id', 'ismap', - 'label', 'lang', 'language', 'link', 'longdesc', - 'marginheight', 'marginwidth', 'maxlength', 'media', 'method', 'multiple', - 'name', 'nohref', 'noresize', 'noshade', 'nowrap', - 'object', 'onblur', 'onchange', 'onclick', 'ondblclick', 'onfocus', 'onkeydown', 'onkeypress', 'onkeyup', 'onload', 'onmousedown', 'onmousemove', 'onmouseout', 'onmouseover', 'onmouseup', 'onreset', 'onselect', 'onsubmit', 'onunload', - 'profile', 'prompt', - 'readonly', 'rel', 'rev', 'rowspan', 'rows', 'rules', - 'scheme', 'scope', 'scrolling', 'selected', 'shape', 'size', 'span', 'src', 'standby', 'start', 'style', 'summary', - 'tabindex', 'target', 'text', 'title', 'type', - 'usemap', - 'valign', 'value', 'valuetype', 'version', 'vlink', 'vspace', - 'width' - ) - ), - 'SYMBOLS' => array( - 1 => array( - '<%=', '<%!', '<%', '%>' - ), - 0 => array( - '(', ')', '[', ']', '{', '}', - '!', '%', '&', '|', '/', - '<', '>', - '=', '-', '+', '*', - '.', ':', ',', ';', '^' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100; font-weight: bold;',//pour les mots-cles C++ - 2 => 'color: #000000; font-weight: bold;',//pour les mots-cles KLone - 3 => 'color: #6600FF;',//pour les fonctions C++ - 4 => 'color: #6600FF;',//pour les fonctions Klone - 5 => 'color: #0099FF; font-weight: bold;',//pour les types C++ - 6 => 'color: #990099; font-weight: bold;',//pour les mots-cles HTML - 7 => 'color: #000066;'//pour les autres mots-cles HTML - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;',//commentaire sur une ligne C++ et KLone - 2 => 'color: #339933;',//pour les #... en C++ - 'MULTI' => 'color: #808080; font-style: italic;'//commentaire sur plusieurs lignes C++ et KLone - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;', - 1 => 'color: #000000; font-weight: bold;' - ), - 'REGEXPS' => array(), - 'SCRIPT' => array( - 0 => 'background-color:#ffccff; font-weight: bold; color:#000000;', - 1 => '', - 2 => '', - 3 => 'color: #00bbdd; font-weight: bold;', - 4 => 'color: #ddbb00;', - 5 => 'color: #009900;' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAMEL}.html', - 4 => 'http://www.koanlogic.com/klone/api/html/globals.html', - 5 => '', - 6 => 'http://december.com/html/4/element/{FNAMEL}.html', - 7 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_ALWAYS, - 'SCRIPT_DELIMITERS' => array( - //delimiteurs pour KLone - 0 => array( - '<%=' => '%>' - ), - 1 => array( - '<%!' => '%>' - ), - 2 => array( - '<%' => '%>' - ), - //delimiteur pour HTML - 3 => array( - ' '>' - ), - 4 => array( - '&' => ';' - ), - 5 => array( - '<' => '>' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => false, - 1 => true, - 2 => true, - 3 => false, - 4 => false, - 5 => true - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 6 => array( - 'DISALLOWED_BEFORE' => '(?<=<|<\/)', - 'DISALLOWED_AFTER' => '(?=\s|\/|>)', - ), - 7 => array( - 'DISALLOWED_AFTER' => '(?=\s*=)', - ) - ) - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/latex.php b/library/Vendors/geshi/geshi/latex.php deleted file mode 100644 index 1ba3d409..00000000 --- a/library/Vendors/geshi/geshi/latex.php +++ /dev/null @@ -1,223 +0,0 @@ - 'LaTeX', - 'COMMENT_SINGLE' => array( - 1 => '%' - ), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'addlinespace','and','address','appendix','author','backmatter', - 'bfseries','bibitem','bigskip','blindtext','caption','captionabove', - 'captionbelow','cdot','centering','chapter','cite','color', - 'colorbox','date','dedication','def','definecolor','documentclass', - 'edef','else','email','emph','eqref','extratitle','fbox','fi', - 'flushleft','flushright','footnote','frac','frontmatter', - 'graphicspath','hfill','hline','hspace','huge','ifx','include', - 'includegraphics','infty','input','int','item','itemsep', - 'KOMAoption','KOMAoptions','label','LaTeX','left','let','limits', - 'listfiles','listoffigures','listoftables','lowertitleback', - 'mainmatter','makeatletter','makeatother','makebox','makeindex', - 'maketitle','mbox','mediumskip','newcommand','newenvironment', - 'newpage','nocite','nonumber','pagestyle','par','paragraph', - 'parbox','parident','parskip','partial','publishers','raggedleft', - 'raggedright','raisebox','ref','renewcommand','renewenvironment', - 'right','rule','section','setlength','sffamily','subject', - 'subparagraph','subsection','subsubsection','subtitle','sum', - 'table','tableofcontents','textbf','textcolor','textit', - 'textnormal','textsuperscript','texttt','textwidth','thanks','title', - 'titlehead','today','ttfamily','uppertitleback','urlstyle', - 'usepackage','vspace' - ) - ), - 'SYMBOLS' => array( - "&", "\\", "{", "}", "[", "]" - ), - 'CASE_SENSITIVE' => array( - 1 => true, - GESHI_COMMENTS => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #800000;', - ), - 'COMMENTS' => array( - 1 => 'color: #2C922C; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000000; font-weight: bold;' - ), - 'BRACKETS' => array( - ), - 'STRINGS' => array( - 0 => 'color: #000000;' - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #E02020; ' - ), - 'REGEXPS' => array( - 1 => 'color: #8020E0; font-weight: normal;', // Math inner - 2 => 'color: #C08020; font-weight: normal;', // [Option] - 3 => 'color: #8020E0; font-weight: normal;', // Maths - 4 => 'color: #800000; font-weight: normal;', // Structure: Labels - 5 => 'color: #00008B; font-weight: bold;', // Structure (\section{->x<-}) - 6 => 'color: #800000; font-weight: normal;', // Structure (\section) - 7 => 'color: #0000D0; font-weight: normal;', // Environment \end or \begin{->x<-} (brighter blue) - 8 => 'color: #C00000; font-weight: normal;', // Structure \end or \begin - 9 => 'color: #2020C0; font-weight: normal;', // {...} - 10 => 'color: #800000; font-weight: normal;', // \%, \& etc. - 11 => 'color: #E00000; font-weight: normal;', // \@keyword - 12 => 'color: #800000; font-weight: normal;', // \keyword - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://www.golatex.de/wiki/index.php?title=%5C{FNAME}', - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - // Math inner - 1 => array( - GESHI_SEARCH => "(\\\\begin\\{(equation|displaymath|eqnarray|subeqnarray|math|multline|gather|align|alignat|flalign)\\})(.*)(\\\\end\\{\\2\\})", - GESHI_REPLACE => '\3', - GESHI_MODIFIERS => 'Us', - GESHI_BEFORE => '\1', - GESHI_AFTER => '\4' - ), - // [options] - 2 => array( - GESHI_SEARCH => "(?<=\[).*(?=\])", - GESHI_REPLACE => '\0', - GESHI_MODIFIERS => 'Us', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // Math mode with $ ... $ - 3 => array( - GESHI_SEARCH => "\\$.+\\$", - GESHI_REPLACE => '\0', - GESHI_MODIFIERS => 'Us', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // Structure: Label - 4 => "\\\\(?:label|pageref|ref|cite)(?=[^a-zA-Z])", - // Structure: sections - 5 => array( - GESHI_SEARCH => "(\\\\(?:part|chapter|(?:sub){0,2}section|(?:sub)?paragraph|addpart|addchap|addsec)\*?\\{)(.*)(?=\\})", - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'U', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - // Structure: sections - 6 => "\\\\(?:part|chapter|(?:sub){0,2}section|(?:sub)?paragraph|addpart|addchap|addsec)\*?(?=[^a-zA-Z])", - // environment \begin{} and \end{} (i.e. the things inside the {}) - 7 => array( - GESHI_SEARCH => "(\\\\(?:begin|end)\\{)(.*)(?=\\})", - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'U', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - // Structure \begin and \end - 8 => "\\\\(?:end|begin)(?=[^a-zA-Z])", - // {parameters} - 9 => array( - GESHI_SEARCH => "(?<=\\{)(?!<\|!REG3XP5!>).*(?=\\})", - GESHI_REPLACE => '\0', - GESHI_MODIFIERS => 'Us', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // \%, \& usw. - 10 => "\\\\(?:[_$%]|&)", - // \@keywords - 11 => "(?)\\\\@[a-zA-Z]+\*?", - // \keywords - 12 => "(?)\\\\[a-zA-Z]+\*?", - -// --------------------------------------------- - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'COMMENTS' => array( - 'DISALLOWED_BEFORE' => '\\' - ), - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?<=\\\\)", - 'DISALLOWED_AFTER' => "(?![A-Za-z0-9])" - ), - 'ENABLE_FLAGS' => array( - 'NUMBERS' => GESHI_NEVER, - 'BRACKETS' => GESHI_NEVER - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/lisp.php b/library/Vendors/geshi/geshi/lisp.php deleted file mode 100644 index a8f50691..00000000 --- a/library/Vendors/geshi/geshi/lisp.php +++ /dev/null @@ -1,144 +0,0 @@ - 'Lisp', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(';|' => '|;'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'not','defun','princ','when', - 'eval','apply','funcall','quote','identity','function', - 'complement','backquote','lambda','set','setq','setf', - 'defmacro','gensym','make','symbol','intern', - 'name','value','plist','get', - 'getf','putprop','remprop','hash','array','aref', - 'car','cdr','caar','cadr','cdar','cddr','caaar','caadr','cadar', - 'caddr','cdaar','cdadr','cddar','cdddr','caaaar','caaadr', - 'caadar','caaddr','cadaar','cadadr','caddar','cadddr', - 'cdaaar','cdaadr','cdadar','cdaddr','cddaar','cddadr', - 'cdddar','cddddr','cons','list','append','reverse','last','nth', - 'nthcdr','member','assoc','subst','sublis','nsubst', - 'nsublis','remove','length', - 'mapc','mapcar','mapl','maplist','mapcan','mapcon','rplaca', - 'rplacd','nconc','delete','atom','symbolp','numberp', - 'boundp','null','listp','consp','minusp','zerop','plusp', - 'evenp','oddp','eq','eql','equal','cond','case','and','or', - 'let','l','if','prog','prog1','prog2','progn','go','return', - 'do','dolist','dotimes','catch','throw','error','cerror','break', - 'continue','errset','baktrace','evalhook','truncate','float', - 'rem','min','max','abs','sin','cos','tan','expt','exp','sqrt', - 'random','logand','logior','logxor','lognot','bignums','logeqv', - 'lognand','lognor','logorc2','logtest','logbitp','logcount', - 'integer','nil','parse-integer','make-list','print','write' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', - '!', '%', '^', '&', - ' + ',' - ',' * ',' / ', - '=','<','>', - '.',':',',',';', - '|' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 0 => 'color: #555;', - 1 => 'color: #555;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - '::', ':' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'OOLANG' => array( - 'MATCH_AFTER' => '[a-zA-Z][a-zA-Z0-9_\-]*' - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/locobasic.php b/library/Vendors/geshi/geshi/locobasic.php deleted file mode 100644 index a3e22a7b..00000000 --- a/library/Vendors/geshi/geshi/locobasic.php +++ /dev/null @@ -1,130 +0,0 @@ - 'Locomotive Basic', - 'COMMENT_SINGLE' => array(1 => "'", 2 => 'REM'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - "AFTER", "AND", "AUTO", "BORDER", "BREAK", "CALL", "CAT", "CHAIN", - "CLEAR", "CLG", "CLS", "CLOSEIN", "CLOSEOUT", "CONT", "CURSOR", - "DATA", "DEF", "DEFINT", "DEFREAL", "DEFSTR", "DEG", "DELETE", - "DERR", "DI", "DIM", "DRAW", "DRAWR", "EDIT", "EI", "ELSE", "END", - "ENV", "ENT", "EOF", "ERASE", "ERL", "ERR", "ERROR", "EVERY", - "FILL", "FN", "FOR", "FRAME", "GOSUB", "GOTO", "GRAPHICS", "HIMEM", - "IF", "INK", "INPUT", "KEY", "LET", "LINE", "LIST", "LOAD", - "LOCATE", "MASK", "MEMORY", "MERGE", "MODE", "MOVE", "MOVER", "NEW", - "NEXT", "NOT", "ON", "OPENIN", "OPENOUT", "OR", "ORIGIN", "PAPER", - "PEEK", "PEN", "PLOT", "PLOTR", "POKE", "PRINT", "RAD", "RANDOMIZE", - "READ", "RELEASE", "REMAIN", "RENUM", "RESTORE", "RESUME", "RETURN", - "RUN", "SAVE", "SPEED", "SOUND", "SPC", "SQ", "STEP", "STOP", "SWAP", - "SYMBOL", "TAB", "TAG", "TAGOFF", "TEST", "TESTR", "TIME", "TO", - "THEN", "TRON", "TROFF", "USING", "WAIT", "WEND", "WHILE", "WIDTH", - "WINDOW", "WRITE", "XOR", "ZONE" - ), - 2 => array( - "ABS", "ASC", "ATN", "BIN", "CHR", "CINT", "COPYCHR", "COS", - "CREAL", "DEC", "FIX", "FRE", "EXP", "HEX", "INKEY", "INP", "INSTR", - "INT", "JOY", "LEFT", "LEN", "LOG", "LOG10", "LOWER", "MAX", "MID", - "MIN", "MOD", "OUT", "PI", "POS", "RIGHT", "RND", "ROUND", "SGN", - "SIN", "SPACE", "SQR", "STR", "STRING", "TAN", "UNT", "UPPER", - "VAL", "VPOS", "XPOS", "YPOS" - ) - ), - 'SYMBOLS' => array( - '(', ')' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000088; font-weight: bold;', - 2 => 'color: #AA00AA; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080;', - 2 => 'color: #808080;' - ), - 'BRACKETS' => array( - 0 => 'color: #ff0000;' - ), - 'STRINGS' => array( - 0 => 'color: #008800;' - ), - 'NUMBERS' => array( - 0 => 'color: #0044ff;' - ), - 'METHODS' => array( - 0 => 'color: #66cc66;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/logtalk.php b/library/Vendors/geshi/geshi/logtalk.php deleted file mode 100644 index fb77bd6d..00000000 --- a/library/Vendors/geshi/geshi/logtalk.php +++ /dev/null @@ -1,330 +0,0 @@ - 'Logtalk', - 'COMMENT_SINGLE' => array(1 => '%'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array(2 => "/0'./sim"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'"), - 'HARDQUOTE' => array('"', '"'), - 'HARDESCAPE' => array(), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - //Simple Single Char Escapes - 1 => "#\\\\[\\\\abfnrtv\'\"?\n]#i", - //Hexadecimal Char Specs - 2 => "#\\\\x[\da-fA-F]+\\\\#", - //Octal Char Specs - 3 => "#\\\\[0-7]+\\\\#" - ), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | - GESHI_NUMBER_BIN_PREFIX_0B | - GESHI_NUMBER_OCT_PREFIX_0O | - GESHI_NUMBER_HEX_PREFIX | - GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - // Directives (with arguments) - 1 => array( - // file directives - 'encoding', 'ensure_loaded', - // flag directives - 'set_logtalk_flag', 'set_prolog_flag', - // entity opening directives - 'category', 'object', 'protocol', - // predicate scope directives - 'private', 'protected', 'public', - // conditional compilation directives - 'elif', 'if', - // entity directives - 'calls', 'initialization', 'op', 'uses', - // predicate directives - 'alias', 'discontiguous', 'dynamic', 'mode', 'info', 'meta_predicate', 'multifile', 'synchronized', - // module directives - 'export', 'module', 'reexport', 'use_module' - ), - // Directives (no arguments) - 2 => array( - // entity directives - 'dynamic', - // multi-threading directives - 'synchronized', 'threaded', - // entity closing directives - 'end_category', 'end_object', 'end_protocol', - // conditional compilation directives - 'else', 'endif' - ), - // Entity relations - 3 => array( - 'complements', 'extends', 'imports', 'implements','instantiates', 'specializes' - ), - // Built-in predicates (with arguments) - 4 => array( - // event handlers - 'after', 'before', - // execution-context methods - 'parameter', 'self', 'sender', 'this', - // predicate reflection - 'current_predicate', 'predicate_property', - // DCGs and term expansion - 'expand_goal', 'expand_term', 'goal_expansion', 'phrase', 'term_expansion', - // entity - 'abolish_category', 'abolish_object', 'abolish_protocol', - 'create_category', 'create_object', 'create_protocol', - 'current_category', 'current_object', 'current_protocol', - 'category_property', 'object_property', 'protocol_property', - // entity relations - 'complements_object', - 'extends_category', 'extends_object', 'extends_protocol', - 'implements_protocol', 'imports_category', - 'instantiates_class', 'specializes_class', - // events - 'abolish_events', 'current_event', 'define_events', - // flags - 'current_logtalk_flag', 'set_logtalk_flag', - 'current_prolog_flag', 'set_prolog_flag', - // compiling, loading, and library path - 'logtalk_compile', 'logtalk_library_path', 'logtalk_load', - // database - 'abolish', 'asserta', 'assertz', 'clause', 'retract', 'retractall', - // control - 'call', 'catch', 'once', 'throw', - // all solutions predicates - 'bagof', 'findall', 'forall', 'setof', - // multi-threading meta-predicates - 'threaded', - 'threaded_call', 'threaded_once', 'threaded_ignore', 'threaded_exit', 'threaded_peek', - 'threaded_wait', 'threaded_notify', - // term unification - 'unify_with_occurs_check', - // atomic term processing - 'atom_chars', 'atom_codes', 'atom_concat', 'atom_length', - 'number_chars', 'number_codes', - 'char_code', - // term creation and decomposition - 'arg', 'copy_term', 'functor', - // term testing - 'atom', 'atomic', 'compound', 'float', 'integer', 'nonvar', 'number', 'sub_atom', 'var', - // stream selection and control - 'current_input', 'current_output', 'set_input', 'set_output', - 'open', 'close', 'flush_output', 'stream_property', - 'at_end_of_stream', 'set_stream_position', - // character and byte input/output predicates - 'get_byte', 'get_char', 'get_code', - 'peek_byte', 'peek_char', 'peek_code', - 'put_byte', 'put_char', 'put_code', - 'nl', - // term input/output predicates - 'current_op', 'op', - 'write', 'writeq', 'write_canonical', 'write_term', - 'read', 'read_term', - 'char_conversion', 'current_char_conversion', - // - 'halt' - ), - // Built-in predicates (no arguments) - 5 => array( - // control - 'fail', 'repeat', 'true', - // character and byte input/output predicates - 'nl', - // implementation defined hooks functions - 'halt', - // arithemtic evaluation - 'is', - // stream selection and control - 'at_end_of_stream', 'flush_output' - ), - // Evaluable functors (with arguments) - 6 => array( - 'float_integer_part', 'float_fractional_part', - 'rem', 'mod', 'abs', 'sign', 'floor', 'truncate', 'round', 'ceiling', - 'cos', 'atan', 'exp', 'log', 'sin', 'sqrt' - ), - // Evaluable functors (no arguments) - 7 => array( - 'mod', 'rem' - ), - ), - 'SYMBOLS' => array( - 0 => array( - // external call - '{', '}' - ), - 1 => array( - // arithemtic comparison - '=:=', '=\=', '<', '=<', '>=', '>', - // term comparison - '<<', '>>', '/\\', '\\/', '\\', - // bitwise functors - '==', '\==', '@<', '@=<', '@>=', '@>', - // evaluable functors - '+', '-', '*', '/', '**', - // logic and control - '!', '\\+', ';', - // message sending operators - '::', '^^', ':', - // grammar rule and conditional functors - '-->', '->', - // mode operators - '@', '?', - // term to list predicate - '=..', - // unification - '=', '\\=' - ), - 2 => array( - // clause and directive functors - ':-' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #2e4dc9;', - 2 => 'color: #2e4dc9;', - 3 => 'color: #2e4dc9;', - 4 => 'color: #9d4f37;', - 5 => 'color: #9d4f37;', - 6 => 'color: #9d4f37;', - 7 => 'color: #9d4f37;' - ), - 'NUMBERS' => array( - 0 => 'color: #430000;' - ), - 'COMMENTS' => array( - 1 => 'color: #60a0b0; font-style: italic;', - 2 => 'color: #430000;', - 'MULTI' => 'color: #60a0b0; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #9f0000; font-weight: bold;', - 1 => 'color: #9f0000; font-weight: bold;', - 2 => 'color: #9f0000; font-weight: bold;', - 3 => 'color: #9f0000; font-weight: bold;', - 'HARD' => '', - ), - 'SYMBOLS' => array( - 0 => 'color: #666666;font-weight: bold;', - 1 => 'color: #666666;font-weight: bold;', - 2 => 'color: #000000;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #9f0000;', - 'HARD' => 'color: #9f0000;' - ), - 'METHODS' => array( - ), - 'REGEXPS' => array( - 0 => 'color: #848484;' - ), - 'SCRIPT' => array() - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - 1 => '::' - ), - 'REGEXPS' => array( - // variables - 0 => '\b(?!(?:PIPE|SEMI|REG3XP\d*)[^a-zA-Z0-9_])[A-Z_][a-zA-Z0-9_]*(?![a-zA-Z0-9_])' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array(), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'BRACKETS' => GESHI_NEVER - ), - 'KEYWORDS' => array( - 1 => array( - 'DISALLOWED_BEFORE' => '(?<=:-\s)', - 'DISALLOWED_AFTER' => '(?=\()' - ), - 2 => array( - 'DISALLOWED_BEFORE' => '(?<=:-\s)', - 'DISALLOWED_AFTER' => '(?=\.)' - ), - 3 => array( - 'DISALLOWED_BEFORE' => '(?|^&\'"])', - 'DISALLOWED_AFTER' => '(?=\()' - ), - 4 => array( - 'DISALLOWED_BEFORE' => '(?|^&\'"])', - 'DISALLOWED_AFTER' => '(?=\()' - ), - 5 => array( - 'DISALLOWED_BEFORE' => '(?|^&\'"])', - 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-&\'"])' - ), - 6 => array( - 'DISALLOWED_BEFORE' => '(?|^&\'"])', - 'DISALLOWED_AFTER' => '(?=\()' - ), - 7 => array( - 'DISALLOWED_BEFORE' => '(?|^&\'"])', - 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-&\'"])' - ) - ) - ), -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/lolcode.php b/library/Vendors/geshi/geshi/lolcode.php deleted file mode 100644 index a804913c..00000000 --- a/library/Vendors/geshi/geshi/lolcode.php +++ /dev/null @@ -1,152 +0,0 @@ - 'LOLcode', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - 1 => "/\bBTW\b.*$/im", - 2 => "/(^|\b)(?:OBTW\b.+?\bTLDR|LOL\b.+?\/LOL)(\b|$)/si" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - 1 => '/:[)>o":]/', - 2 => '/:\([\da-f]+\)/i', - 3 => '/:\{\w+\}/i', - 4 => '/:\[\w+\]/i', - ), - 'KEYWORDS' => array( - //Statements - 1 => array( - 'VISIBLE', 'HAI', 'KTHX', 'KTHXBYE', 'SMOOSH', 'GIMMEH', 'PLZ', - 'ON', 'INVISIBLE', 'R', 'ITZ', 'GTFO', 'COMPLAIN', 'GIMME', - - 'OPEN', 'FILE', 'I HAS A', 'AWSUM THX', 'O NOES', 'CAN', 'HAS', 'HAZ', - 'HOW DOES I', 'IF U SAY SO', 'FOUND YR', 'BORROW', 'OWN', 'ALONG', - 'WITH', 'WIT', 'LOOK', 'AT', 'AWSUM', 'THX' - ), - //Conditionals - 2 => array( - 'IZ', 'YARLY', 'NOWAI', 'WTF?', 'MEBBE', 'OMG', 'OMGWTF', - 'ORLY?', 'OF', 'NOPE', 'SO', 'IM', 'MAI', - - 'O RLY?', 'SUM', 'BOTH SAEM', 'DIFFRINT', 'BOTH', 'EITHER', 'WON', - 'DIFF', 'PRODUKT', 'QUOSHUNT', 'MOD', 'MKAY', 'OK', 'THING', - 'BIGNESS' - ), - //Repetition - 3 => array( - 'IN', 'OUTTA', 'LOOP', 'WHILE' - ), - //Operators \Math - 4 => array( - 'AN', 'AND', 'NOT', 'UP', 'YR', 'UPPIN', 'NERF', 'NERFIN', 'NERFZ', - 'SMASHING', 'UR', 'KINDA', 'LIKE', 'SAEM', 'BIG', 'SMALL', - 'BIGGR', 'SMALLR', 'BIGGER', 'SMALLER', 'GOOD', 'CUTE', 'THAN' - ) - ), - 'SYMBOLS' => array( - '.', ',', '?', - '!!' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #008000;', - 2 => 'color: #000080;', - 3 => 'color: #000080;', - 4 => 'color: #800000;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; style: italic;', - 2 => 'color: #666666; style: italic;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'ESCAPE_CHAR' => array( - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'SPACE_AS_WHITESPACE' => true - ) - ), - 'TAB_WIDTH' => 4 -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/lotusformulas.php b/library/Vendors/geshi/geshi/lotusformulas.php deleted file mode 100644 index 862adbc8..00000000 --- a/library/Vendors/geshi/geshi/lotusformulas.php +++ /dev/null @@ -1,318 +0,0 @@ - 'Lotus Notes @Formulas', - 'COMMENT_SINGLE' => array(1 => "'"), - 'COMMENT_MULTI' => array('REM' => ';'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array ( - '[ZoomPreview]', '[WorkspaceStackReplicaIcons]', - '[WorkspaceProperties]', '[WindowWorkspace]', - '[WindowTile]', '[WindowRestore]', '[WindowNext]', - '[WindowMinimizeAll]', '[WindowMinimize]', '[WindowMaximizeAll]', - '[WindowMaximize]', '[WindowCascade]', '[ViewSwitchForm]', - '[ViewShowUnread]', '[ViewShowServerNames]', '[ViewShowSearchBar]', - '[ViewShowRuler]', '[ViewShowPageBreaks]', '[ViewShowOnlyUnread]', - '[ViewShowOnlySelected]', '[ViewShowOnlySearchResults]', - '[ViewShowOnlyCategories]', '[ViewShowObject]', - '[ViewShowFieldHelp]', '[ViewRenamePerson]', '[ViewRefreshUnread]', - '[ViewRefreshFields]', '[ViewNavigatorsNone]', - '[ViewNavigatorsFolders]', '[ViewMoveName]', '[ViewHorizScrollbar]', - '[ViewExpandWithChildren]', '[ViewExpandAll]', '[ViewExpand]', - '[ViewCollapseAll]', '[ViewCollapse]', '[ViewChange]', - '[ViewCertify]', '[ViewBesideFolders]', '[ViewBelowFolders]', - '[ViewArrangeIcons]', '[V3EditPrevField]', '[V3EditNextField]', - '[UserIDSwitch]', '[UserIDSetPassword]', '[UserIDMergeCopy]', - '[UserIDInfo]', '[UserIDEncryptionKeys]', '[UserIDCreateSafeCopy]', - '[UserIDClearPassword]', '[UserIDCertificates]', - '[ToolsUserLogoff]', '[ToolsSpellCheck]', '[ToolsSmartIcons]', - '[ToolsSetupUserSetup]', '[ToolsSetupPorts]', '[ToolsSetupMail]', - '[ToolsSetupLocation]', '[ToolsScanUnreadSelected]', - '[ToolsScanUnreadPreferred]', '[ToolsScanUnreadChoose]', - '[ToolsRunMacro]', '[ToolsRunBackgroundMacros]', '[ToolsReplicate]', - '[ToolsRefreshSelectedDocs]', '[ToolsRefreshAllDocs]', - '[ToolsMarkSelectedUnread]', '[ToolsMarkSelectedRead]', - '[ToolsMarkAllUnread]', '[ToolsMarkAllRead]', '[ToolsHangUp]', - '[ToolsCategorize]', '[ToolsCall]', '[TextUnderline]', - '[TextSpacingSingle]', '[TextSpacingOneAndaHalf]', - '[TextSpacingDouble]', '[TextSetFontSize]', '[TextSetFontFace]', - '[TextSetFontColor]', '[TextReduceFont]', '[TextPermanentPen]', - '[TextParagraphStyles]', '[TextParagraph]', '[TextOutdent]', - '[TextNumbers]', '[TextNormal]', '[TextItalic]', '[TextFont]', - '[TextEnlargeFont]', '[TextCycleSpacing]', '[TextBullet]', - '[TextBold]', '[TextAlignRight]', '[TextAlignNone]', - '[TextAlignLeft]', '[TextAlignFull]', '[TextAlignCenter]', - '[SwitchView]', '[SwitchForm]', '[StyleCycleKey]', - '[SmartIconsNextSet]', '[SmartIconsFloating]', '[ShowProperties]', - '[ShowHidePreviewPane]', '[ShowHideParentPreview]', - '[ShowHideLinkPreview]', '[ShowHideIMContactList]', - '[SetCurrentLocation]', '[SendInstantMessage]', - '[SectionRemoveHeader]', '[SectionProperties]', - '[SectionExpandAll]', '[SectionExpand]', '[SectionDefineEditors]', - '[SectionCollapseAll]', '[SectionCollapse]', '[RunScheduledAgents]', - '[RunAgent]', '[ReplicatorStop]', '[ReplicatorStart]', - '[ReplicatorSendReceiveMail]', '[ReplicatorSendMail]', - '[ReplicatorReplicateWithServer]', '[ReplicatorReplicateSelected]', - '[ReplicatorReplicateNext]', '[ReplicatorReplicateHigh]', - '[Replicator]', '[RenameDatabase]', '[RemoveFromFolder]', - '[RemoteDebugLotusScript]', '[ReloadWindow]', '[RefreshWindow]', - '[RefreshParentNote]', '[RefreshHideFormulas]', '[RefreshFrame]', - '[PublishDatabase]', '[PictureProperties]', '[PasteBitmapAsObject]', - '[PasteBitmapAsBackground]', '[OpenView]', '[OpenPage]', - '[OpenNavigator]', '[OpenInNewWindow]', '[OpenHelpDocument]', - '[OpenFrameset]', '[OpenDocument]', '[OpenCalendar]', - '[ObjectProperties]', '[ObjectOpen]', '[ObjectDisplayAs]', - '[NavPrevUnread]', '[NavPrevSelected]', '[NavPrevMain]', - '[NavPrev]', '[NavNextUnread]', '[NavNextSelected]', - '[NavNextMain]', '[NavNext]', '[NavigatorTest]', - '[NavigatorProperties]', '[NavigateToBacklink]', - '[NavigatePrevUnread]', '[NavigatePrevSelected]', - '[NavigatePrevMain]', '[NavigatePrevHighlight]', '[NavigatePrev]', - '[NavigateNextUnread]', '[NavigateNextSelected]', - '[NavigateNextMain]', '[NavigateNextHighlight]', '[NavigateNext]', - '[MoveToTrash]', '[MailSendPublicKey]', '[MailSendEncryptionKey]', - '[MailSendCertificateRequest]', '[MailSend]', '[MailScanUnread]', - '[MailRequestNewPublicKey]', '[MailRequestNewName]', - '[MailRequestCrossCert]', '[MailOpen]', '[MailForwardAsAttachment]', - '[MailForward]', '[MailComposeMemo]', '[MailAddress]', - '[LayoutProperties]', '[LayoutElementSendToBack]', - '[LayoutElementProperties]', '[LayoutElementBringToFront]', - '[LayoutAddText]', '[LayoutAddGraphic]', '[InsertSubform]', - '[HotspotProperties]', '[HotspotClear]', '[HelpUsingDatabase]', - '[HelpAboutNotes]', '[HelpAboutDatabase]', '[GoUpLevel]', - '[FormTestDocument]', '[FormActions]', '[FolderRename]', - '[FolderProperties]', '[FolderMove]', '[FolderExpandWithChildren]', - '[FolderExpandAll]', '[FolderExpand]', '[FolderDocuments]', - '[FolderCustomize]', '[FolderCollapse]', '[Folder]', - '[FindFreeTimeDialog]', '[FileSaveNewVersion]', '[FileSave]', - '[FilePrintSetup]', '[FilePrint]', '[FilePageSetup]', - '[FileOpenDBRepID]', '[FileOpenDatabase]', '[FileNewReplica]', - '[FileNewDatabase]', '[FileImport]', '[FileFullTextUpdate]', - '[FileFullTextInfo]', '[FileFullTextDelete]', - '[FileFullTextCreate]', '[FileExport]', '[FileExit]', - '[FileDatabaseUseServer]', '[FileDatabaseRemove]', - '[FileDatabaseInfo]', '[FileDatabaseDelete]', '[FileDatabaseCopy]', - '[FileDatabaseCompact]', '[FileDatabaseACL]', '[FileCloseWindow]', - '[ExitNotes]', '[Execute]', '[ExchangeUnreadMarks]', '[EmptyTrash]', - '[EditUp]', '[EditUntruncate]', '[EditUndo]', '[EditTop]', - '[EditTableInsertRowColumn]', '[EditTableFormat]', - '[EditTableDeleteRowColumn]', '[EditShowHideHiddenChars]', - '[EditSelectByDate]', '[EditSelectAll]', '[EditRight]', - '[EditRestoreDocument]', '[EditResizePicture]', - '[EditQuoteSelection]', '[EditProfileDocument]', '[EditProfile]', - '[EditPrevField]', '[EditPhoneNumbers]', '[EditPasteSpecial]', - '[EditPaste]', '[EditOpenLink]', '[EditNextField]', - '[EditMakeDocLink]', '[EditLocations]', '[EditLinks]', '[EditLeft]', - '[EditInsertText]', '[EditInsertTable]', '[EditInsertPopup]', - '[EditInsertPageBreak]', '[EditInsertObject]', - '[EditInsertFileAttachment]', '[EditInsertButton]', - '[EditIndentFirstLine]', '[EditIndent]', '[EditHorizScrollbar]', - '[EditHeaderFooter]', '[EditGotoField]', '[EditFindNext]', - '[EditFindInPreview]', '[EditFind]', '[EditEncryptionKeys]', - '[EditDown]', '[EditDocument]', '[EditDetach]', '[EditDeselectAll]', - '[EditCut]', '[EditCopy]', '[EditClear]', '[EditButton]', - '[EditBottom]', '[DiscoverFolders]', '[Directories]', - '[DialingRules]', '[DesignViewSelectFormula]', '[DesignViews]', - '[DesignViewNewColumn]', '[DesignViewFormFormula]', - '[DesignViewEditActions]', '[DesignViewColumnDef]', - '[DesignViewAttributes]', '[DesignViewAppendColumn]', - '[DesignSynopsis]', '[DesignSharedFields]', '[DesignReplace]', - '[DesignRefresh]', '[DesignMacros]', '[DesignIcon]', - '[DesignHelpUsingDocument]', '[DesignHelpAboutDocument]', - '[DesignFormWindowTitle]', '[DesignFormUseField]', - '[DesignFormShareField]', '[DesignForms]', '[DesignFormNewField]', - '[DesignFormFieldDef]', '[DesignFormAttributes]', - '[DesignDocumentInfo]', '[DebugLotusScript]', - '[DatabaseReplSettings]', '[DatabaseDelete]', '[CreateView]', - '[CreateTextbox]', '[CreateSubForm]', '[CreateSection]', - '[CreateRectangularHotspot]', '[CreateRectangle]', - '[CreatePolyline]', '[CreatePolygon]', '[CreateNavigator]', - '[CreateLayoutRegion]', '[CreateForm]', '[CreateFolder]', - '[CreateEllipse]', '[CreateControlledAccessSection]', - '[CreateAgent]', '[CreateAction]', '[CopySelectedAsTable]', - '[ComposeWithReference]', '[Compose]', '[CloseWindow]', '[Clear]', - '[ChooseFolders]', '[CalendarGoTo]', '[CalendarFormat]', - '[AttachmentView]', '[AttachmentProperties]', '[AttachmentLaunch]', - '[AttachmentDetachAll]', '[AgentTestRun]', '[AgentSetServerName]', - '[AgentRun]', '[AgentLog]', '[AgentEnableDisable]', '[AgentEdit]', - '[AdminTraceConnection]', '[AdminStatisticsConfig]', - '[AdminSendMailTrace]', '[AdminRemoteConsole]', - '[AdminRegisterUser]', '[AdminRegisterServer]', - '[AdminRegisterFromFile]', '[AdminOutgoingMail]', - '[AdminOpenUsersView]', '[AdminOpenStatistics]', - '[AdminOpenServersView]', '[AdminOpenServerLog]', - '[AdminOpenGroupsView]', '[AdminOpenCertLog]', '[AdminOpenCatalog]', - '[AdminOpenAddressBook]', '[AdminNewOrgUnit]', - '[AdminNewOrganization]', '[Administration]', - '[AdminIDFileSetPassword]', '[AdminIDFileExamine]', - '[AdminIDFileClearPassword]', '[AdminDatabaseQuotas]', - '[AdminDatabaseAnalysis]', '[AdminCrossCertifyKey]', - '[AdminCrossCertifyIDFile]', '[AdminCreateGroup]', '[AdminCertify]', - '[AddToIMContactList]', '[AddDatabaseRepID]', '[AddDatabase]', - '[AddBookmark]' - ), - 2 => array( - 'SELECT', 'FIELD', 'ENVIRONMENT', 'DEFAULT', '@Zone ', '@Yesterday', - '@Yes', '@Year', '@Word', '@Wide', '@While', '@Weekday', - '@WebDbName', '@ViewTitle', '@ViewShowThisUnread', '@Version', - '@VerifyPassword', '@ValidateInternetAddress', '@V4UserAccess', - '@V3UserName', '@V2If', '@UserRoles', '@UserPrivileges', - '@UserNamesList', '@UserNameLanguage', '@UserName', '@UserAccess', - '@UrlQueryString', '@URLOpen', '@URLHistory', '@URLGetHeader', - '@URLEncode', '@URLDecode', '@UpperCase', '@UpdateFormulaContext', - '@Unique', '@UndeleteDocument', '@Unavailable', '@True', '@Trim', - '@Transform', '@ToTime', '@ToNumber', '@Tomorrow', '@Today', - '@TimeZoneToText', '@TimeToTextInZone', '@TimeMerge', '@Time', - '@ThisValue', '@ThisName', '@TextToTime', '@TextToNumber', '@Text', - '@TemplateVersion', '@Tan', '@Sum', '@Success', '@Subset', - '@StatusBar', '@Sqrt', '@Soundex', '@Sort', '@Sin', '@Sign', - '@SetViewInfo', '@SetTargetFrame', '@SetProfileField', - '@SetHTTPHeader', '@SetField', '@SetEnvironment', '@SetDocField', - '@Set', '@ServerName', '@ServerAccess', '@Select', '@Second', - '@Round', '@RightBack', '@Right', '@Return', '@Responses', - '@ReplicaID', '@ReplaceSubstring', '@Replace', '@Repeat', - '@RegQueryValue', '@RefreshECL', '@Random', '@ProperCase', - '@Prompt', '@Power', '@PostedCommand', '@PolicyIsFieldLocked', - '@Platform', '@PickList', '@Pi', '@PasswordQuality', '@Password', - '@OrgDir', '@OptimizeMailAddress', '@OpenInNewWindow', '@Now', - '@Nothing', '@NoteID', '@No', '@NewLine', '@Narrow', '@NameLookup', - '@Name', '@Month', '@Modulo', '@Modified', '@Minute', '@Min', - '@MiddleBack', '@Middle', '@Member', '@Max', '@Matches', - '@MailSignPreference', '@MailSend', '@MailSavePreference', - '@MailEncryptSentPreference', '@MailEncryptSavedPreference', - '@MailDbName', '@LowerCase', '@Log', '@Locale', '@Ln', '@Like', - '@Length', '@LeftBack', '@Left', '@LDAPServer', '@LaunchApp', - '@LanguagePreference', '@Keywords', '@IsVirtualizedDirectory', - '@IsValid', '@IsUsingJavaElement', '@IsUnavailable', '@IsTime', - '@IsText', '@IsResponseDoc', '@IsNumber', '@IsNull', '@IsNotMember', - '@IsNewDoc', '@IsModalHelp', '@IsMember', '@IsExpandable', - '@IsError', '@IsEmbeddedInsideWCT', '@IsDocTruncated', - '@IsDocBeingSaved', '@IsDocBeingRecalculated', '@IsDocBeingMailed', - '@IsDocBeingLoaded', '@IsDocBeingEdited', '@IsDB2', '@IsCategory', - '@IsAvailable', '@IsAppInstalled', '@IsAgentEnabled', '@Integer', - '@InheritedDocumentUniqueID', '@Implode', '@IfError', '@If', - '@Hour', '@HashPassword', '@HardDeleteDocument', '@GetViewInfo', - '@GetProfileField', '@GetPortsList', '@GetIMContactListGroupNames', - '@GetHTTPHeader', '@GetFocusTable', '@GetField', '@GetDocField', - '@GetCurrentTimeZone', '@GetAddressBooks', '@FormLanguage', '@For', - '@FontList', '@FloatEq', '@FileDir', '@False', '@Failure', - '@Explode', '@Exp', '@Eval', '@Error', '@Environment', '@Ends', - '@EnableAlarms', '@Elements', '@EditUserECL', '@EditECL', - '@DoWhile', '@Domain', '@DocumentUniqueID', '@DocSiblings', - '@DocParentNumber', '@DocOmmittedLength', '@DocNumber', '@DocMark', - '@DocLock', '@DocLevel', '@DocLength', '@DocFields', - '@DocDescendants', '@DocChildren', '@Do', '@DialogBox', - '@DeleteField', '@DeleteDocument', '@DDETerminate', '@DDEPoke', - '@DDEInitiate', '@DDEExecute', '@DbTitle', '@DbName', '@DbManager', - '@DbLookup', '@DbExists', '@DbCommand', '@DbColumn', '@DB2Schema', - '@Day', '@Date', '@Created', '@Count', '@Cos', '@Contains', - '@ConfigFile', '@Compare', '@Command', '@ClientType', - '@CheckFormulaSyntax', '@CheckAlarms', '@Char', '@Certificate', - '@BusinessDays', '@BrowserInfo', '@Begins', '@Author', - '@Attachments', '@AttachmentNames', '@AttachmentModifiedTimes', - '@AttachmentLengths', '@ATan2', '@ATan', '@ASin', '@Ascii', - '@AllDescendants', '@AllChildren', '@All', '@AdminECLIsLocked', - '@Adjust', '@AddToFolder', '@ACos', '@Accessed', '@AbstractSimple', - '@Abstract', '@Abs' - ) - ), - 'SYMBOLS' => array( - '(', ')' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #800000;', - 2 => 'color: #0000FF;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #FF00FF;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF00FF;' - ), - 'METHODS' => array( - 1 => 'color: #0000AA;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 2 - ); - -?> diff --git a/library/Vendors/geshi/geshi/lotusscript.php b/library/Vendors/geshi/geshi/lotusscript.php deleted file mode 100644 index 1ef2f3ee..00000000 --- a/library/Vendors/geshi/geshi/lotusscript.php +++ /dev/null @@ -1,191 +0,0 @@ - 'LotusScript', - 'COMMENT_SINGLE' => array(1 => "'"), - 'COMMENT_MULTI' => array('%REM' => '%END REM'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"' , "|"), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array ( - 'Yield', 'Year', 'Xor', 'Write', 'With', 'Width', 'While', 'Wend', - 'Weekday', 'VarType', 'Variant', 'Val', 'UString', 'UString$', - 'UseLSX', 'Use', 'Until', 'Unlock', 'Unicode', 'Uni', 'UChr', - 'UChr$', 'UCase', 'UCase$', 'UBound', 'TypeName', 'Type', 'TRUE', - 'Trim', 'Trim$', 'Today', 'To', 'TimeValue', 'TimeSerial', 'Timer', - 'TimeNumber', 'Time', 'Time$', 'Then', 'Text', 'Tan', 'Tab', 'Sub', - 'StrToken', 'StrToken$', 'StrRightBack', 'StrRightBack$', - 'StrRight', 'StrRight$', 'StrLeftBack', 'StrLeftBack$', 'StrLeft', - 'StrLeft$', 'String', 'String$', 'StrConv', 'StrCompare', 'StrComp', - 'Str', 'Str$', 'Stop', 'Step', 'Static', 'Sqr', 'Split', 'Spc', - 'Space', 'Space$', 'Sleep', 'Single', 'Sin', 'Shell', 'Shared', - 'Sgn', 'SetFileAttr', 'SetAttr', 'Set', 'SendKeys', 'Select', - 'Seek', 'Second', 'RTrim', 'RTrim$', 'RSet', 'Round', 'Rnd', - 'RmDir', 'RightC', 'RightC$', 'RightBP', 'RightBP$', 'RightB', - 'RightB$', 'Right', 'Right$', 'Return', 'Resume', 'Reset', - 'Replace', 'Remove', 'Rem', 'ReDim', 'Read', 'Randomize', - 'Random', 'Put', 'Public', 'Property', 'Private', 'Print', - 'Preserve', 'Pitch', 'PI', 'Output', 'Or', 'Option', 'Open', 'On', - 'Oct', 'Oct$', 'NULL', 'Now', 'NOTHING', 'Not', 'NoPitch', 'NoCase', - 'Next', 'New', 'Name', 'MsgBox', 'Month', 'Mod', 'MkDir', 'Minute', - 'MidC', 'MidC$', 'MidBP', 'MidBP$', 'MidB', 'MidB$', 'Mid', 'Mid$', - 'MessageBox', 'Me', 'LTrim', 'LTrim$', 'LSServer', 'LSI_Info', - 'LSet', 'Loop', 'Long', 'Log', 'LOF', 'Lock', 'LOC', 'LMBCS', - 'ListTag', 'List', 'Line', 'Like', 'Lib', 'Let', 'LenC', 'LenBP', - 'LenB', 'Len', 'LeftC', 'LeftC$', 'LeftBP', 'LeftBP$', 'LeftB', - 'LeftB$', 'Left', 'Left$', 'LCase', 'LCase$', 'LBound', 'Kill', - 'Join', 'IsUnknown', 'IsScalar', 'IsObject', 'IsNumeric', 'IsNull', - 'IsList', 'IsEmpty', 'IsElement', 'IsDate', 'IsArray', 'IsA', 'Is', - 'Integer', 'Int', 'InStrC', 'InStrBP', 'InStrB', 'InStr', 'InputBP', - 'InputBP$', 'InputBox', 'InputBox$', 'InputB', 'InputB$', 'Input', - 'Input$', 'In', 'IMSetMode', 'Implode', 'Implode$', 'Imp', - 'IMEStatus', 'If', 'Hour', 'Hex', 'Hex$', 'Goto', 'GoSub', - 'GetThreadInfo', 'GetFileAttr', 'GetAttr', 'Get', 'Function', - 'FullTrim', 'From', 'FreeFile', 'Fraction', 'Format', 'Format$', - 'ForAll', 'For', 'Fix', 'FileLen', 'FileDateTime', 'FileCopy', - 'FileAttr', 'FALSE', 'Explicit', 'Exp', 'Exit', 'Execute', 'Event', - 'Evaluate', 'Error', 'Error$', 'Err', 'Erl', 'Erase', 'Eqv', 'EOF', - 'Environ', 'Environ$', 'End', 'ElseIf', 'Else', 'Double', 'DoEvents', - 'Do', 'Dir', 'Dir$', 'Dim', 'DestroyLock', 'Delete', 'DefVar', - 'DefStr', 'DefSng', 'DefLng', 'DefInt', 'DefDbl', 'DefCur', - 'DefByte', 'DefBool', 'Declare', 'Day', 'DateValue', 'DateSerial', - 'DateNumber', 'Date', 'Date$', 'DataType', 'CVDate', 'CVar', - 'Currency', 'CurDrive', 'CurDrive$', 'CurDir', 'CurDir$', 'CStr', - 'CSng', 'CreateLock', 'Cos', 'Const', 'Compare', 'Command', - 'Command$', 'CodeUnlock', 'CodeLockCheck', 'CodeLock', 'Close', - 'CLng', 'Class', 'CInt', 'Chr', 'Chr$', 'ChDrive', 'ChDir', 'CDbl', - 'CDat', 'CCur', 'CByte', 'CBool', 'Case', 'Call', 'ByVal', 'Byte', - 'Boolean', 'Bind', 'Binary', 'Bin', 'Bin$', 'Beep', 'Base', 'Atn2', - 'Atn', 'ASin', 'Asc', 'As', 'ArrayUnique', 'ArrayReplace', - 'ArrayGetIndex', 'ArrayAppend', 'Append', 'AppActivate', 'Any', - 'And', 'Alias', 'ActivateApp', 'ACos', 'Access', 'Abs', '%Include', - '%If', '%END', '%ElseIf', '%Else' - ), - 2 => array ( - 'NotesXSLTransformer', 'NotesXMLProcessor', 'NotesViewNavigator', - 'NotesViewEntryCollection', 'NotesViewEntry', 'NotesViewColumn', - 'NotesView', 'NotesUIWorkspace', 'NotesUIView', 'NotesUIScheduler', - 'NotesUIDocument', 'NotesUIDatabase', 'NotesTimer', 'NotesStream', - 'NotesSession', 'NotesSAXParser', 'NotesSAXException', - 'NotesSAXAttributeList', 'NotesRichTextTable', 'NotesRichTextTab', - 'NotesRichTextStyle', 'NotesRichTextSection', 'NotesRichTextRange', - 'NotesRichTextParagraphStyle', 'NotesRichTextNavigator', - 'NotesRichTextItem', 'NotesRichTextDocLink', - 'NotesReplicationEntry', 'NotesReplication', 'NotesRegistration', - 'NotesOutlineEntry', 'NotesOutline', 'NotesNoteCollection', - 'NotesNewsLetter', 'NotesName', 'NotesMIMEHeader', - 'NotesMIMEEntity', 'NotesLog', 'NotesItem', 'NotesInternational', - 'NotesForm', 'NotesEmbeddedObject', 'NotesDXLImporter', - 'NotesDXLExporter', 'NotesDOMXMLDeclNode', 'NotesDOMTextNode', - 'NotesDOMProcessingInstructionNode', 'NotesDOMParser', - 'NotesDOMNotationNode', 'NotesDOMNodeList', 'NotesDOMNode', - 'NotesDOMNamedNodeMap', 'NotesDOMEntityReferenceNode', - 'NotesDOMEntityNode', 'NotesDOMElementNode', - 'NotesDOMDocumentTypeNode', 'NotesDOMDocumentNode', - 'NotesDOMDocumentFragmentNode', 'NotesDOMCommentNode', - 'NotesDOMCharacterDataNote', 'NotesDOMCDATASectionNode', - 'NotesDOMAttributeNode', 'NotesDocumentCollection', 'NotesDocument', - 'NotesDbDirectory', 'NotesDateTime', 'NotesDateRange', - 'NotesDatabase', 'NotesColorObject', 'NotesAgent', - 'NotesAdministrationProcess', 'NotesACLEntry', 'NotesACL', - 'Navigator', 'Field', 'Button' - ) - ) , - 'SYMBOLS' => array( - '(', ')' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000FF;', - 2 => 'color: #0000EE;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #000000;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF00FF;' - ), - 'METHODS' => array( - 1 => 'color: #0000AA;' - ), - 'SYMBOLS' => array( - 0 => 'color: #006600;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 2 -); - -?> diff --git a/library/Vendors/geshi/geshi/lscript.php b/library/Vendors/geshi/geshi/lscript.php deleted file mode 100644 index b7e31321..00000000 --- a/library/Vendors/geshi/geshi/lscript.php +++ /dev/null @@ -1,387 +0,0 @@ - 'LScript', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - //Yes, I'm aware these are out of order, - //I had to rearrange and couldn't be bothered changing the numbers... - 7 => array( - '@data', '@define', '@else', '@end', '@fpdepth', '@if', '@include', - '@insert', '@library', '@localipc', '@name', '@save', '@script', - '@sequence', '@version', '@warnings' - ), - 1 => array( - 'break', 'case', 'continue', 'else', 'end', 'false', 'for', - 'foreach', 'if', 'return', 'switch', 'true', 'while', - ), - 3 => array( - 'active', 'alertlevel', 'alpha', 'alphaprefix', 'animfilename', 'autokeycreate', - 'backdroptype', 'blue', 'boxthreshold', 'button', - 'channelsvisible', 'childrenvisible', 'compfg', 'compbg', 'compfgalpha', - 'coneangles', 'cosine', 'count', 'ctl', 'curFilename', 'curFrame', - 'currenttime', 'curTime', 'curType', - 'depth', 'diffshade', 'diffuse', 'dimensions', 'displayopts', 'dynamicupdate', - 'end', 'eta', - 'filename', 'flags', 'fogtype', 'fps', 'frame', 'frameend', 'frameheight', - 'framestart', 'framestep', 'framewidth', - 'generalopts', 'genus', 'geometry', 'gNorm', 'goal', 'green', - 'h', 'hasAlpha', 'height', - 'id', 'innerlimit', 'isColor', - 'keyCount', 'keys', - 'limiteregion', 'locked', 'luminous', - 'maxsamplesperpixel', 'minsamplesperpixel', 'mirror', 'motionx', 'motiony', - 'name', 'newFilename', 'newFrame', 'newTime', 'newType', 'null', 'numthreads', - 'objID', 'oPos', 'outerlimit', 'oXfrm', - 'parent', 'pixel', 'pixelaspect', 'point', 'points', 'pointcount', 'polNum', - 'polycount', 'polygon', 'polygons', 'postBehavior', 'preBehavior', 'previewend', - 'previewstart', 'previewstep', - 'range', 'rawblue', 'rawgreen', 'rawred', 'rayLength', 'raySource', 'red', - 'reflectblue', 'reflectgreen', 'reflectred', 'recursiondepth', 'renderend', - 'renderopts', 'renderstart', 'renderstep', 'rendertype', 'restlength', - 'rgbprefix', 'roughness', - 'selected', 'setColor', 'setPattern', 'shading', 'shadow', 'shadows', - 'shadowtype', 'size', 'source', 'special', 'specshade', 'specular', - 'spotsize', 'start', 'sx', 'sy', 'sz', - 'target', 'totallayers', 'totalpoints', 'totalpolygons', 'trans', 'transparency', - 'type', - 'value', 'view', 'visible', 'visibility', - 'w', 'width', 'wNorm', 'wPos', 'wXfrm', - 'x', 'xoffset', - 'y', 'yoffset', - 'z' - ), - 4 => array( - 'addLayer', 'addParticle', 'alphaspot', 'ambient', 'asAsc', 'asBin', - 'asInt', 'asNum', 'asStr', 'asVec', 'attach', 'axislocks', - 'backdropColor', 'backdropRay', 'backdropSqueeze', 'bone', 'blurLength', - 'close', 'color', 'contains', 'copy', 'createKey', - 'deleteKey', 'detach', 'drawCircle', 'drawLine', 'drawPoint', 'drawText', - 'drawTriangle', - 'edit', 'eof', 'event', - 'firstChannel', 'firstLayer', 'firstSelect', 'focalLength', 'fogColor', - 'fogMaxAmount', 'fogMaxDist', 'fogMinAmount', 'fogMinDist', - 'fovAngles', 'fStop', 'firstChild', 'focalDistance', - 'get', 'getChannelGroup', 'getEnvelope', 'getForward', 'getKeyBias', - 'getKeyContinuity', 'getKeyCurve', 'getKeyHermite', 'getKeyTension', - 'getKeyTime', 'getKeyValue', 'getParticle', 'getPivot', 'getPosition', - 'getRight', 'getRotation', 'getSelect', 'getScaling', 'getTag', 'getTexture', - 'getUp', 'getValue', 'getWorldPosition', 'getWorldForward', 'getWorldRight', - 'getWorldRotation', 'getWorldUp', 'globalBlur', 'globalMask', 'globalResolution', - 'hasCCEnd', 'hasCCStart', - 'illuminate', 'indexOf', 'isAscii', 'isAlnum', 'isAlpha', 'isBone', - 'isCamera', 'isChannel', 'isChannelGroup', 'isCntrl', 'isCurve', 'isDigit', - 'isEnvelope', 'isImage', 'isInt', 'isLight', 'isLower', 'isMapped', 'isMesh', - 'isNil', 'isNum', 'IsOpen', 'isOriginal', 'isPrint', 'isPunct', 'isScene', - 'isSpace', 'isStr', 'isUpper', 'isValid', 'isVMap', 'isVec', 'isXDigit', - 'keyExists', - 'layer', 'layerName', 'layerVisible', 'limits', 'line', 'linecount', 'load', 'luma', - 'next', 'nextLayer', 'nextSelect', 'nextChannel', 'nextChild', 'nl', - 'offset', 'open', - 'pack', 'param', 'parse', 'paste', 'persist', 'polygonCount', 'position', - 'rayCast', 'rayTrace', 'read', 'readByte', 'readInt', 'readNumber', - 'readDouble', 'readShort', 'readString', 'readVector', 'reduce', - 'remParticle', 'renderCamera', 'reopen', 'replace', 'reset', 'restParam', - 'rewind', 'rgb', 'rgbambient', 'rgbcolor', 'rgbspot', - 'save', 'schemaPosition', 'select', 'set', 'setChannelGroup', 'setKeyBias', - 'setKeyContinuity', 'setKeyCurve', - 'setKeyHermite', 'setKeyTension', 'setKeyValue', 'setParticle', 'setPoints', - 'setTag', 'setValue', 'server', 'serverFlags', 'sortA', 'sortD', 'surface', - 'trunc', - 'write', 'writeln', 'writeByte', 'writeData', 'writeNumber', 'writeDouble', - 'writeShort', 'writeString', 'writeVector', - 'vertex', 'vertexCount', - 'zoomFactor' - ), - 2 => array( - 'abs', 'acos', 'angle', 'append', 'ascii', 'asin', 'atan', - 'binary', - 'ceil', 'center', 'chdir', 'clearimage', 'cloned', 'comringattach', - 'comringdecode', 'comringdetach', 'comringencode', 'comringmsg', 'cos', - 'cosh', 'cot', 'cross2d', 'cross3d', 'csc', 'ctlstring', 'ctlinteger', - 'ctlnumber', 'ctlvector', 'ctldistance', 'ctlchoice', 'ctltext', - 'ctlcolor', 'ctlsurface', 'ctlfont', 'ctlpopup', 'ctledit', 'ctlpercent', - 'ctlangle', 'ctlrgb', 'ctlhsv', 'ctlcheckbox', 'ctlstate', 'ctlfilename', - 'ctlbutton', 'ctllistbox', 'ctlslider', 'ctlminislider', 'ctlsep', 'ctlimage', - 'ctltab', 'ctlallitems', 'ctlmeshitems', 'ctlcameraitems', 'ctllightitems', - 'ctlboneitems', 'ctlimageitems', 'ctlchannel', 'ctlviewport', 'Control_Management', - 'ctlpage', 'ctlgroup', 'ctlposition', 'ctlactive', 'ctlvisible', 'ctlalign', - 'ctlrefresh', 'ctlmenu', 'ctlinfo', - 'date', 'debug', 'deg', 'dot2d', 'dot3d', 'drawborder', 'drawbox', 'drawcircle', - 'drawelipse', 'drawerase', 'drawfillcircle', 'drawfillelipse', 'drawline', - 'drawpixel', 'drawtext', 'drawtextwidth', 'drawtextheight', 'dump', - 'error', 'exp', 'expose', 'extent', - 'fac', 'filecrc', 'filedelete', 'fileexists', 'filefind', 'filerename', - 'filestat', 'floor', 'format', 'frac', 'fullpath', - 'gamma', 'getdir', 'getenv', 'getfile', 'getfirstitem', 'getsep', 'getvalue', - 'globalrecall', 'globalstore', - 'hash', 'hex', 'hostBuild', 'hostVersion', 'hypot', - 'info', 'integer', - 'library', 'licenseId', 'lscriptVersion', 'load', 'loadimage', 'log', 'log10', - 'matchdirs', 'matchfiles', 'max', 'min', 'mkdir', 'mod', 'monend', 'moninit', 'monstep', - 'nil', 'normalize', 'number', - 'octal', 'overlayglyph', - 'parse', 'platform', 'pow', - 'rad', 'random', 'randu', 'range', 'read', 'readdouble', 'readInt', 'readNumber', - 'readShort', 'recall', 'regexp', 'reqabort', 'reqbegin', 'reqend', 'reqisopen', - 'reqkeyboard', 'reqopen', 'reqposition', 'reqpost', 'reqredraw', - 'reqsize', 'reqresize', 'requpdate', 'rmdir', 'round', 'runningUnder', - 'save', 'sec', 'select', 'selector', 'setdesc', 'setvalue', 'sin', 'sinh', 'size', - 'sizeof', 'sleep', 'spawn', 'split', 'sqrt', 'step', 'store', 'string', 'strleft', - 'strlower', 'strright', 'strsub', 'strupper', - 'tan', 'tanh', 'targetobject', 'terminate', 'text', 'time', - 'wait', 'warn', 'when', 'write', 'writeDouble', 'writeInt', 'writeNumber', 'writeShort', - 'var', 'vector', 'visitnodes', 'vmag', - ), - 5 => array( - 'addcurve', 'addpoint', 'addpolygon', 'addquad', 'addtriangle', 'alignpols', - 'autoflex', 'axisdrill', - 'bend', 'bevel', 'boolean', 'boundingbox', - 'changepart', 'changesurface', 'close', 'closeall', 'cmdseq', 'copy', 'copysurface', - 'createsurface', 'cut', - 'deformregion', 'delete', - 'editbegin', 'editend', 'exit', 'extrude', - 'fixedflex', 'flip', 'fontclear', 'fontcount', 'fontindex', 'fontload', - 'fontname', 'fracsubdivide', 'freezecurves', - 'getdefaultsurface', - 'jitter', - 'lathe', 'layerName', 'layerVisible', 'lyrbg', 'lyrdata', 'lyrempty', 'lyremptybg', - 'lyremptyfg', 'lyrfg', 'lyrsetbg', 'lyrsetfg', 'lyrswap', - 'magnet', 'make4patch', 'makeball', 'makebox', 'makecone', 'makedisc', - 'maketesball', 'maketext', 'mergepoints', 'mergepols', 'meshedit', 'mirror', - 'morphpols', 'move', - 'new', 'nextsurface', - 'paste', 'pathclone', 'pathextrude', 'pixel', 'pointcount', 'pointinfo', - 'pointmove', 'pole', 'polycount', 'polyinfo', 'polynormal', 'polypointcount', - 'polypoints', 'polysurface', - 'quantize', - 'railclone', 'railextrude', 'redo', 'removepols', 'rempoint', 'rempoly', - 'renamesurface', 'revert', 'rotate', - 'scale', 'selhide', 'selinvert', 'selmode', 'selpoint', 'selpolygon', 'selunhide', - 'selectvmap', 'setlayername', 'setobject', 'setpivot', 'setsurface', 'shapebevel', - 'shear', 'skinpols', 'smooth', 'smoothcurves', 'smoothscale', 'smoothshift', - 'soliddrill', 'splitpols', 'subdivide', 'swaphidden', - 'taper', 'triple', 'toggleCCend', 'toggleCCstart', 'togglepatches', 'twist', - 'undo', 'undogroupend', 'undogroupbegin', 'unifypols', 'unweld', - 'vortex', - 'weldaverage', 'weldpoints' - ), - 6 => array( - 'About', 'AboutOpenGL', 'AdaptiveSampling', 'AdaptiveThreshold', - 'AddAreaLight', 'AddBone', 'AddButton', 'AddCamera', 'AddChildBone', - 'AddDistantLight', 'AddEnvelope', 'AddLinearLight', 'AddNull', - 'AddPartigon', 'AddPlugins', 'AddPointLight', 'AddPosition', - 'AddRotation', 'AddScale', 'AddSpotlight', 'AddToSelection', - 'AdjustRegionTool', 'AffectCaustics', 'AffectDiffuse', 'AffectOpenGL', - 'AffectSpecular', 'AlertLevel', 'AmbientColor', 'AmbientIntensity', - 'Antialiasing', 'ApertureHeight', 'ApplyServer', 'AreaLight', - 'AutoConfirm', 'AutoFrameAdvance', 'AutoKey', - 'BackdropColor', 'BackView', 'BController', 'BLimits', 'BLurLength', 'BoneActive', - 'BoneFalloffType', 'BoneJointComp', 'BoneJointCompAmounts', 'BoneJointCompParent', - 'BoneLimitedRange', 'BoneMaxRange', 'BoneMinRange', 'BoneMuscleFlex', - 'BoneMuscleFlexAmounts', 'BoneMuscleFlexParent', 'BoneNormalization', - 'BoneRestLength', 'BoneRestPosition', 'BoneRestRotation', 'BoneSource', - 'BoneStrength', 'BoneStrengthMultiply', 'BoneWeightMapName', 'BoneWeightMapOnly', - 'BoneWeightShade', 'BoneXRay', 'BottomView', 'BoundingBoxThreshold', - 'BStiffness', - 'CacheCaustics', 'CacheRadiosity', 'CacheShadowMap', - 'CameraMask', 'CameraView', 'CameraZoomTool', 'CastShadow', 'CausticIntensity', - 'CenterItem', 'CenterMouse', 'ChangeTool', 'ClearAllBones', 'ClearAllCameras', - 'ClearAllLights', 'ClearAllObjects', 'ClearAudio', 'ClearScene', 'ClearSelected', - 'Clone', 'CommandHistory', 'CommandInput', 'Compositing', 'ConeAngleTool', - 'ContentDirectory', 'CreateKey', - 'DecreaseGrid', 'DeleteKey', 'DepthBufferAA', 'DepthOfField', 'DisplayOptions', - 'DistantLight', 'DrawAntialiasing', 'DrawBones', 'DrawChildBones', 'DynamicUpdate', - 'EditBones', 'EditCameras', 'EditKeys', 'EditLights', - 'EditMenus', 'EditObjects', 'EditPlugins', 'EditServer', 'EnableCaustics', - 'EnableDeformations', 'EnableIK', 'EnableLensFlares', 'EnableRadiosity', 'EnableServer', - 'EnableShadowMaps', 'EnableVIPER', 'EnableVolumetricLights', 'EnableXH', - 'EnableYP', 'EnableZB', 'EnahancedAA', 'ExcludeLight', 'ExcludeObject', - 'EyeSeparation', - 'FasterBones', 'FirstFrame', 'FirstItem', 'FitAll', 'FitSelected', - 'FlareIntensity', 'FlareOptions', 'FocalDistance', 'FogColor', 'FogMaxAmount', - 'FogMaxDistance', 'FogMinAmount', 'FogMinDistance', 'FogType', 'FractionalFrames', - 'FrameSize', 'FramesPerSecond', 'FrameStep', 'FreePreview', 'FrontView', 'FullTimeIK', - 'GeneralOptions', 'Generics', 'GlobalApertureHeight', 'GlobalBlurLength', - 'GlobalFrameSize', 'GlobalIllumination', 'GlobalMaskPosition', 'GlobalMotionBlur', - 'GlobalParticleBlur', 'GlobalPixelAspect', 'GlobalResolutionMulitplier', 'GoalItem', - 'GoalStrength', 'GoToFrame', 'GradientBackdrop', 'GraphEditor', 'GridSize', 'GroundColor', - 'HController', 'HideToolbar', 'HideWindows', 'HLimits', 'HStiffness', - 'ImageEditor', 'ImageProcessing', 'IncludeLight', 'IncludeObject', 'IncreaseGrid', - 'IndirectBounces', 'Item_SetWindowPos', 'ItemActive', 'ItemColor', 'ItemLock', - 'ItemProperties', 'ItemVisibilty', - 'KeepGoalWithinReach', - 'LastFrame', 'LastItem', 'LastPluginInterface', 'Layout_SetWindowPos', - 'Layout_SetWindowSize', 'LeftView', 'LensFlare', 'LensFStop', 'LightColor', - 'LightConeAngle', 'LightEdgeAngle', 'LightFalloffType', 'LightIntensity', - 'LightIntensityTool', 'LightQuality', 'LightRange', 'LightView', 'LimitB', - 'LimitDynamicRange', 'LimitedRegion', 'LimitH', 'LimitP', 'LinearLight', - 'LoadAudio', 'LoadFromScene', 'LoadMotion', 'LoadObject', 'LoadObjectLayer', - 'LoadPreview', 'LoadScene', 'LocalCoordinateSystem', - 'MakePreview', 'MaskColor', 'MaskPosition', 'MasterPlugins', 'MatchGoalOrientation', - 'MatteColor', 'MatteObject', 'MetaballResolution', 'Model', 'MorphAmount', - 'MorphAmountTool', 'MorphMTSE', 'MorphSurfaces', 'MorphTarget', 'MotionBlur', - 'MotionBlurDOFPreview', 'MotionOptions', 'MovePathTool', 'MovePivotTool', 'MoveTool', - 'NadirColor', 'NetRender', 'NextFrame', 'NextItem', 'NextKey', 'NextSibling', - 'NextViewLayout', 'NoiseReduction', 'Numeric', - 'ObjectDissolve', - 'ParentCoordinateSystem', 'ParentInPlace', 'ParentItem', - 'ParticleBlur', 'PathAlignLookAhead', 'PathAlignMaxLookSteps', 'PathAlignReliableDist', - 'Pause', 'PController', 'PerspectiveView', - 'PivotPosition', 'PivotRotation', 'PixelAspect', 'PlayAudio', 'PlayBackward', - 'PlayForward', 'PlayPreview', 'PLimits', 'PointLight', 'PolygonEdgeColor', - 'PolygonEdgeFlags', 'PolygonEdgeThickness', 'PolygonEdgeZScale', 'PolygonSize', - 'Position', 'Presets', 'PreviewFirstFrame', 'PreviewFrameStep', 'PreviewLastFrame', - 'PreviewOptions', 'PreviousFrame', 'PreviousItem', 'PreviousKey', 'PreviousSibling', - 'PreviousViewLayout', 'PStiffness', - 'Quit', - 'RadiosityIntensity', 'RadiosityTolerance', 'RadiosityType', 'RayRecursionLimit', - 'RayTraceReflection', 'RayTraceShadows', - 'RayTraceTransparency', 'ReceiveShadow', 'RecentContentDirs', 'RecentScenes', - 'ReconstructionFilter', 'RecordMaxAngles', 'RecordMinAngles', 'RecordPivotRotation', - 'RecordRestPosition', 'Redraw', 'RedrawNow', 'Refresh', 'RefreshNow', 'RegionPosition', - 'RemoveEnvelope', 'RemoveFromSelection', 'RemoveServer', 'Rename', 'RenderFrame', - 'RenderOptions', 'RenderScene', 'RenderSelected', 'RenderThreads', - 'ReplaceObjectLayer', 'ReplaceWithNull', 'ReplaceWithObject', 'Reset', - 'ResolutionMultiplier', 'RestLengthTool', 'RightView', 'RotatePivotTool', - 'RotateTool', 'Rotation', - 'SaveAllObjects', 'SaveCommandList', 'SaveCommandMessages', - 'SaveEndomorph', 'SaveLight', 'SaveLWSC1', 'SaveMotion', 'SaveObject', 'SaveObjectCopy', - 'SavePreview', 'SaveScene', 'SaveSceneAs', 'SaveSceneCopy', 'SaveTransformed', - 'SaveViewLayout', 'Scale', 'Scene_SetWindowPos', 'Scene_SetWindowSize', - 'SceneEditor', 'SchematicPosition', 'SchematicView', 'SelectAllBones', - 'SelectAllCameras', 'SelectAllLights', 'SelectAllObjects', 'SelectByName', - 'SelectChild', 'SelectItem', 'SelectParent', 'SelfShadow', 'ShadowColor', - 'ShadowExclusion', 'ShadowMapAngle', 'ShadowMapFitCone', 'ShadowMapFuzziness', - 'ShadowMapSize', 'ShadowType', 'ShowCages', 'ShowFieldChart', 'ShowHandles', - 'ShowIKChains', 'ShowMotionPaths', 'ShowSafeAreas', 'ShowTargetLines', - 'ShrinkEdgesWithDistance', 'SingleView', 'SizeTool', 'SkelegonsToBones', 'SkyColor', - 'Spotlight', 'SquashTool', 'Statistics', 'StatusMsg', 'Stereoscopic', 'StretchTool', - 'SubdivisionOrder', 'SubPatchLevel', 'SurfaceEditor', 'Synchronize', - 'TargetItem', 'TopView', - 'UnaffectedByFog', 'UnaffectedByIK', 'Undo', 'UnseenByAlphaChannel', 'UnseenByCamera', - 'UnseenByRays', 'UseGlobalResolution', 'UseGlobalBlur', 'UseGlobalMask', - 'UseMorphedPositions', - 'ViewLayout', 'VIPER', 'VolumetricLighting', - 'VolumetricLightingOptions', 'VolumetricRadiosity', 'Volumetrics', - 'WorldCoordinateSystem', - 'XYView', 'XZView', - 'ZenithColor', 'ZoomFactor', 'ZoomIn', 'ZoomInX2', 'ZoomOut', 'ZoomOutX2', 'ZYView', - 'Camera', 'Channel', 'ChannelGroup', 'Envelope', 'File', 'Glyph', 'Icon', 'Image', - 'Light', 'Mesh', 'Scene', 'Surface', 'VMap' - ), - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '<', '>', '+', '-', '*', '/', '!', '%', '&', '@' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => true, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #FF6820; font-weight: bold;', //LS_COMMANDS - 3 => 'color: #007F7F; font-weight: bold;', //LS_MEMBERS - 4 => 'color: #800080; font-weight: bold;', //LS_METHODS - 5 => 'color: #51BD95; font-weight: bold;', //LS_MODELER - 6 => 'color: #416F85; font-weight: bold;', //LS_GENERAL - 7 => 'color: #C92929; font-weight: bold;' //LS_COMMANDS (cont) - ), - 'COMMENTS' => array( - 1 => 'color: #7F7F7F;', - 'MULTI' => 'color: #7F7F7F;' - ), - 'BRACKETS' => array( - 0 => 'color: #0040A0;' - ), - 'STRINGS' => array( - 0 => 'color: #00C800;' - ), - 'NUMBERS' => array( - 0 => 'color: #6953AC;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #0040A0;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ), - 'ESCAPE_CHAR' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 3 => array( - 'DISALLOWED_BEFORE' => '(?<=\.)' - ), - 4 => array( - 'DISALLOWED_BEFORE' => '(?<=\.)' - ) - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/lsl2.php b/library/Vendors/geshi/geshi/lsl2.php deleted file mode 100644 index e5f40969..00000000 --- a/library/Vendors/geshi/geshi/lsl2.php +++ /dev/null @@ -1,898 +0,0 @@ - 'LSL2', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( // flow control - 'do', - 'else', - 'for', - 'if', - 'jump', - 'return', - 'state', - 'while', - ), - 2 => array( // manifest constants - 'ACTIVE', - 'AGENT', - 'AGENT_ALWAYS_RUN', - 'AGENT_ATTACHMENTS', - 'AGENT_AWAY', - 'AGENT_BUSY', - 'AGENT_CROUCHING', - 'AGENT_FLYING', - 'AGENT_IN_AIR', - 'AGENT_MOUSELOOK', - 'AGENT_ON_OBJECT', - 'AGENT_SCRIPTED', - 'AGENT_SITTING', - 'AGENT_TYPING', - 'AGENT_WALKING', - 'ALL_SIDES', - 'ANIM_ON', - 'ATTACH_BACK', - 'ATTACH_BELLY', - 'ATTACH_CHEST', - 'ATTACH_CHIN', - 'ATTACH_HEAD', - 'ATTACH_HUD_BOTTOM', - 'ATTACH_HUD_BOTTOM_LEFT', - 'ATTACH_HUD_BOTTOM_RIGHT', - 'ATTACH_HUD_CENTER_1', - 'ATTACH_HUD_CENTER_2', - 'ATTACH_HUD_TOP_CENTER', - 'ATTACH_HUD_TOP_LEFT', - 'ATTACH_HUD_TOP_RIGHT', - 'ATTACH_LEAR', - 'ATTACH_LEYE', - 'ATTACH_LFOOT', - 'ATTACH_LHAND', - 'ATTACH_LHIP', - 'ATTACH_LLARM', - 'ATTACH_LLLEG', - 'ATTACH_LPEC', - 'ATTACH_LSHOULDER', - 'ATTACH_LUARM', - 'ATTACH_LULEG', - 'ATTACH_MOUTH', - 'ATTACH_NOSE', - 'ATTACH_PELVIS', - 'ATTACH_REAR', - 'ATTACH_REYE', - 'ATTACH_RFOOT', - 'ATTACH_RHAND', - 'ATTACH_RHIP', - 'ATTACH_RLARM', - 'ATTACH_RLLEG', - 'ATTACH_RPEC', - 'ATTACH_RSHOULDER', - 'ATTACH_RUARM', - 'ATTACH_RULEG', - 'CAMERA_ACTIVE', - 'CAMERA_BEHINDNESS_ANGLE', - 'CAMERA_BEHINDNESS_LAG', - 'CAMERA_DISTANCE', - 'CAMERA_FOCUS', - 'CAMERA_FOCUS_LAG', - 'CAMERA_FOCUS_LOCKED', - 'CAMERA_FOCUS_OFFSET', - 'CAMERA_FOCUS_THRESHOLD', - 'CAMERA_PITCH', - 'CAMERA_POSITION', - 'CAMERA_POSITION_LAG', - 'CAMERA_POSITION_LOCKED', - 'CAMERA_POSITION_THRESHOLD', - 'CHANGED_ALLOWED_DROP', - 'CHANGED_COLOR', - 'CHANGED_INVENTORY', - 'CHANGED_LINK', - 'CHANGED_OWNER', - 'CHANGED_REGION', - 'CHANGED_SCALE', - 'CHANGED_SHAPE', - 'CHANGED_TELEPORT', - 'CHANGED_TEXTURE', - 'CLICK_ACTION_NONE', - 'CLICK_ACTION_OPEN', - 'CLICK_ACTION_OPEN_MEDIA', - 'CLICK_ACTION_PAY', - 'CLICK_ACTION_SIT', - 'CLICK_ACTION_TOUCH', - 'CONTROL_BACK', - 'CONTROL_DOWN', - 'CONTROL_FWD', - 'CONTROL_LBUTTON', - 'CONTROL_LEFT', - 'CONTROL_ML_LBUTTON', - 'CONTROL_RIGHT', - 'CONTROL_ROT_LEFT', - 'CONTROL_ROT_RIGHT', - 'CONTROL_UP', - 'DATA_BORN', - 'DATA_NAME', - 'DATA_ONLINE', - 'DATA_PAYINFO', - 'DATA_RATING', - 'DATA_SIM_POS', - 'DATA_SIM_RATING', - 'DATA_SIM_STATUS', - 'DEBUG_CHANNEL', - 'DEG_TO_RAD', - 'EOF', - 'FALSE', - 'HTTP_BODY_MAXLENGTH', - 'HTTP_BODY_TRUNCATED', - 'HTTP_METHOD', - 'HTTP_MIMETYPE', - 'HTTP_VERIFY_CERT', - 'INVENTORY_ALL', - 'INVENTORY_ANIMATION', - 'INVENTORY_BODYPART', - 'INVENTORY_CLOTHING', - 'INVENTORY_GESTURE', - 'INVENTORY_LANDMARK', - 'INVENTORY_NONE', - 'INVENTORY_NOTECARD', - 'INVENTORY_OBJECT', - 'INVENTORY_SCRIPT', - 'INVENTORY_SOUND', - 'INVENTORY_TEXTURE', - 'LAND_LEVEL', - 'LAND_LOWER', - 'LAND_NOISE', - 'LAND_RAISE', - 'LAND_REVERT', - 'LAND_SMOOTH', - 'LINK_ALL_CHILDREN', - 'LINK_ALL_OTHERS', - 'LINK_ROOT', - 'LINK_SET', - 'LINK_THIS', - 'LIST_STAT_GEOMETRIC_MEAN', - 'LIST_STAT_MAX', - 'LIST_STAT_MEAN', - 'LIST_STAT_MEDIAN', - 'LIST_STAT_MIN', - 'LIST_STAT_NUM_COUNT', - 'LIST_STAT_RANGE', - 'LIST_STAT_STD_DEV', - 'LIST_STAT_SUM', - 'LIST_STAT_SUM_SQUARES', - 'LOOP', - 'MASK_BASE', - 'MASK_EVERYONE', - 'MASK_GROUP', - 'MASK_NEXT', - 'MASK_OWNER', - 'NULL_KEY', - 'OBJECT_CREATOR', - 'OBJECT_DESC', - 'OBJECT_GROUP', - 'OBJECT_NAME', - 'OBJECT_OWNER', - 'OBJECT_POS', - 'OBJECT_ROT', - 'OBJECT_UNKNOWN_DETAIL', - 'OBJECT_VELOCITY', - 'PARCEL_DETAILS_AREA', - 'PARCEL_DETAILS_DESC', - 'PARCEL_DETAILS_GROUP', - 'PARCEL_DETAILS_NAME', - 'PARCEL_DETAILS_OWNER', - 'PARCEL_FLAG_ALLOW_ALL_OBJECT_ENTRY', - 'PARCEL_FLAG_ALLOW_CREATE_GROUP_OBJECTS', - 'PARCEL_FLAG_ALLOW_CREATE_OBJECTS', - 'PARCEL_FLAG_ALLOW_DAMAGE', - 'PARCEL_FLAG_ALLOW_FLY', - 'PARCEL_FLAG_ALLOW_GROUP_OBJECT_ENTRY', - 'PARCEL_FLAG_ALLOW_GROUP_SCRIPTS', - 'PARCEL_FLAG_ALLOW_LANDMARK', - 'PARCEL_FLAG_ALLOW_SCRIPTS', - 'PARCEL_FLAG_ALLOW_TERRAFORM', - 'PARCEL_FLAG_LOCAL_SOUND_ONLY', - 'PARCEL_FLAG_RESTRICT_PUSHOBJECT', - 'PARCEL_FLAG_USE_ACCESS_GROUP', - 'PARCEL_FLAG_USE_ACCESS_LIST', - 'PARCEL_FLAG_USE_BAN_LIST', - 'PARCEL_FLAG_USE_LAND_PASS_LIST', - 'PARCEL_MEDIA_COMMAND_AGENT', - 'PARCEL_MEDIA_COMMAND_AUTO_ALIGN', - 'PARCEL_MEDIA_COMMAND_DESC', - 'PARCEL_MEDIA_COMMAND_LOOP_SET', - 'PARCEL_MEDIA_COMMAND_PAUSE', - 'PARCEL_MEDIA_COMMAND_PLAY', - 'PARCEL_MEDIA_COMMAND_SIZE', - 'PARCEL_MEDIA_COMMAND_STOP', - 'PARCEL_MEDIA_COMMAND_TEXTURE', - 'PARCEL_MEDIA_COMMAND_TIME', - 'PARCEL_MEDIA_COMMAND_TYPE', - 'PARCEL_MEDIA_COMMAND_URL', - 'PASSIVE', - 'PAYMENT_INFO_ON_FILE', - 'PAYMENT_INFO_USED', - 'PAY_DEFAULT', - 'PAY_HIDE', - 'PERMISSION_ATTACH', - 'PERMISSION_CHANGE_LINKS', - 'PERMISSION_CONTROL_CAMERA', - 'PERMISSION_DEBIT', - 'PERMISSION_TAKE_CONTROLS', - 'PERMISSION_TRACK_CAMERA', - 'PERMISSION_TRIGGER_ANIMATION', - 'PERM_ALL', - 'PERM_COPY', - 'PERM_MODIFY', - 'PERM_MOVE', - 'PERM_TRANSFER', - 'PI', - 'PI_BY_TWO', - 'PRIM_BUMP_BARK', - 'PRIM_BUMP_BLOBS', - 'PRIM_BUMP_BRICKS', - 'PRIM_BUMP_BRIGHT', - 'PRIM_BUMP_CHECKER', - 'PRIM_BUMP_CONCRETE', - 'PRIM_BUMP_DARK', - 'PRIM_BUMP_DISKS', - 'PRIM_BUMP_GRAVEL', - 'PRIM_BUMP_LARGETILE', - 'PRIM_BUMP_NONE', - 'PRIM_BUMP_SHINY', - 'PRIM_BUMP_SIDING', - 'PRIM_BUMP_STONE', - 'PRIM_BUMP_STUCCO', - 'PRIM_BUMP_SUCTION', - 'PRIM_BUMP_TILE', - 'PRIM_BUMP_WEAVE', - 'PRIM_BUMP_WOOD', - 'PRIM_COLOR', - 'PRIM_FULLBRIGHT', - 'PRIM_HOLE_CIRCLE', - 'PRIM_HOLE_DEFAULT', - 'PRIM_HOLE_SQUARE', - 'PRIM_HOLE_TRIANGLE', - 'PRIM_MATERIAL', - 'PRIM_MATERIAL_FLESH', - 'PRIM_MATERIAL_GLASS', - 'PRIM_MATERIAL_LIGHT', - 'PRIM_MATERIAL_METAL', - 'PRIM_MATERIAL_PLASTIC', - 'PRIM_MATERIAL_RUBBER', - 'PRIM_MATERIAL_STONE', - 'PRIM_MATERIAL_WOOD', - 'PRIM_PHANTOM', - 'PRIM_PHYSICS', - 'PRIM_POSITION', - 'PRIM_ROTATION', - 'PRIM_SHINY_HIGH', - 'PRIM_SHINY_LOW', - 'PRIM_SHINY_MEDIUM', - 'PRIM_SHINY_NONE', - 'PRIM_SIZE', - 'PRIM_TEMP_ON_REZ', - 'PRIM_TEXTURE', - 'PRIM_TYPE', - 'PRIM_TYPE_BOX', - 'PRIM_TYPE_CYLINDER', - 'PRIM_TYPE_PRISM', - 'PRIM_TYPE_RING', - 'PRIM_TYPE_SPHERE', - 'PRIM_TYPE_TORUS', - 'PRIM_TYPE_TUBE', - 'PSYS_PART_BOUNCE_MASK', - 'PSYS_PART_EMISSIVE_MASK', - 'PSYS_PART_END_ALPHA', - 'PSYS_PART_END_COLOR', - 'PSYS_PART_END_SCALE', - 'PSYS_PART_FLAGS', - 'PSYS_PART_FOLLOW_SRC_MASK', - 'PSYS_PART_FOLLOW_VELOCITY_MASK', - 'PSYS_PART_INTERP_COLOR_MASK', - 'PSYS_PART_INTERP_SCALE_MASK', - 'PSYS_PART_MAX_AGE', - 'PSYS_PART_START_ALPHA', - 'PSYS_PART_START_COLOR', - 'PSYS_PART_START_SCALE', - 'PSYS_PART_TARGET_LINEAR_MASK', - 'PSYS_PART_TARGET_POS_MASK', - 'PSYS_PART_WIND_MASK', - 'PSYS_SRC_ACCEL', - 'PSYS_SRC_ANGLE_BEGIN', - 'PSYS_SRC_ANGLE_END', - 'PSYS_SRC_BURST_PART_COUNT', - 'PSYS_SRC_BURST_RADIUS', - 'PSYS_SRC_BURST_RATE', - 'PSYS_SRC_BURST_SPEED_MAX', - 'PSYS_SRC_BURST_SPEED_MIN', - 'PSYS_SRC_INNERANGLE', - 'PSYS_SRC_MAX_AGE', - 'PSYS_SRC_OMEGA', - 'PSYS_SRC_OUTERANGLE', - 'PSYS_SRC_PATTERN', - 'PSYS_SRC_PATTERN_ANGLE', - 'PSYS_SRC_PATTERN_ANGLE_CONE', - 'PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY', - 'PSYS_SRC_PATTERN_DROP', - 'PSYS_SRC_PATTERN_EXPLODE', - 'PSYS_SRC_TARGET_KEY', - 'PSYS_SRC_TEXTURE', - 'RAD_TO_DEG', - 'REMOTE_DATA_CHANNEL', - 'REMOTE_DATA_REQUEST', - 'SCRIPTED', - 'SQRT2', - 'STATUS_BLOCK_GRAB', - 'STATUS_DIE_AT_EDGE', - 'STATUS_PHANTOM', - 'STATUS_PHYSICS', - 'STATUS_RETURN_AT_EDGE', - 'STATUS_ROTATE_X', - 'STATUS_ROTATE_Y', - 'STATUS_ROTATE_Z', - 'STATUS_SANDBOX', - 'TRUE', - 'TWO_PI', - 'VEHICLE_ANGULAR_DEFLECTION_EFFICIENCY', - 'VEHICLE_ANGULAR_DEFLECTION_TIMESCALE', - 'VEHICLE_ANGULAR_FRICTION_TIMESCALE', - 'VEHICLE_ANGULAR_MOTOR_DECAY_TIMESCALE', - 'VEHICLE_ANGULAR_MOTOR_DIRECTION', - 'VEHICLE_ANGULAR_MOTOR_TIMESCALE', - 'VEHICLE_BANKING_EFFICIENCY', - 'VEHICLE_BANKING_MIX', - 'VEHICLE_BANKING_TIMESCALE', - 'VEHICLE_BUOYANCY', - 'VEHICLE_FLAG_CAMERA_DECOUPLED', - 'VEHICLE_FLAG_HOVER_GLOBAL_HEIGHT', - 'VEHICLE_FLAG_HOVER_TERRAIN_ONLY', - 'VEHICLE_FLAG_HOVER_UP_ONLY', - 'VEHICLE_FLAG_HOVER_WATER_ONLY', - 'VEHICLE_FLAG_LIMIT_MOTOR_UP', - 'VEHICLE_FLAG_LIMIT_ROLL_ONLY', - 'VEHICLE_FLAG_MOUSELOOK_BANK', - 'VEHICLE_FLAG_MOUSELOOK_STEER', - 'VEHICLE_FLAG_NO_DEFLECTION_UP', - 'VEHICLE_HOVER_EFFICIENCY', - 'VEHICLE_HOVER_HEIGHT', - 'VEHICLE_HOVER_TIMESCALE', - 'VEHICLE_LINEAR_DEFLECTION_EFFICIENCY', - 'VEHICLE_LINEAR_DEFLECTION_TIMESCALE', - 'VEHICLE_LINEAR_FRICTION_TIMESCALE', - 'VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE', - 'VEHICLE_LINEAR_MOTOR_DIRECTION', - 'VEHICLE_LINEAR_MOTOR_OFFSET', - 'VEHICLE_LINEAR_MOTOR_TIMESCALE', - 'VEHICLE_REFERENCE_FRAME', - 'VEHICLE_TYPE_AIRPLANE', - 'VEHICLE_TYPE_BALLOON', - 'VEHICLE_TYPE_BOAT', - 'VEHICLE_TYPE_CAR', - 'VEHICLE_TYPE_NONE', - 'VEHICLE_TYPE_SLED', - 'VEHICLE_VERTICAL_ATTRACTION_EFFICIENCY', - 'VEHICLE_VERTICAL_ATTRACTION_TIMESCALE', - 'ZERO_ROTATION', - 'ZERO_VECTOR', - ), - 3 => array( // handlers - 'at_rot_target', - 'at_target', - 'attached', - 'changed', - 'collision', - 'collision_end', - 'collision_start', - 'control', - 'dataserver', - 'email', - 'http_response', - 'land_collision', - 'land_collision_end', - 'land_collision_start', - 'link_message', - 'listen', - 'money', - 'moving_end', - 'moving_start', - 'no_sensor', - 'not_at_rot_target', - 'not_at_target', - 'object_rez', - 'on_rez', - 'remote_data', - 'run_time_permissions', - 'sensor', - 'state_entry', - 'state_exit', - 'timer', - 'touch', - 'touch_end', - 'touch_start', - ), - 4 => array( // data types - 'float', - 'integer', - 'key', - 'list', - 'rotation', - 'string', - 'vector', - ), - 5 => array( // library - 'default', - 'llAbs', - 'llAcos', - 'llAddToLandBanList', - 'llAddToLandPassList', - 'llAdjustSoundVolume', - 'llAllowInventoryDrop', - 'llAngleBetween', - 'llApplyImpulse', - 'llApplyRotationalImpulse', - 'llAsin', - 'llAtan2', - 'llAttachToAvatar', - 'llAvatarOnSitTarget', - 'llAxes2Rot', - 'llAxisAngle2Rot', - 'llBase64ToInteger', - 'llBase64ToString', - 'llBreakAllLinks', - 'llBreakLink', - 'llCeil', - 'llClearCameraParams', - 'llCloseRemoteDataChannel', - 'llCloud', - 'llCollisionFilter', - 'llCollisionSound', - 'llCollisionSprite', - 'llCos', - 'llCreateLink', - 'llCSV2List', - 'llDeleteSubList', - 'llDeleteSubString', - 'llDetachFromAvatar', - 'llDetectedGrab', - 'llDetectedGroup', - 'llDetectedKey', - 'llDetectedLinkNumber', - 'llDetectedName', - 'llDetectedOwner', - 'llDetectedPos', - 'llDetectedRot', - 'llDetectedTouchBinormal', - 'llDetectedTouchFace', - 'llDetectedTouchNormal', - 'llDetectedTouchPos', - 'llDetectedTouchST', - 'llDetectedTouchUV', - 'llDetectedType', - 'llDetectedVel', - 'llDialog', - 'llDie', - 'llDumpList2String', - 'llEdgeOfWorld', - 'llEjectFromLand', - 'llEmail', - 'llEscapeURL', - 'llEuler2Rot', - 'llFabs', - 'llFloor', - 'llForceMouselook', - 'llFrand', - 'llGetAccel', - 'llGetAgentInfo', - 'llGetAgentLanguage', - 'llGetAgentSize', - 'llGetAlpha', - 'llGetAndResetTime', - 'llGetAnimation', - 'llGetAnimationList', - 'llGetAttached', - 'llGetBoundingBox', - 'llGetCameraPos', - 'llGetCameraRot', - 'llGetCenterOfMass', - 'llGetColor', - 'llGetCreator', - 'llGetDate', - 'llGetEnergy', - 'llGetForce', - 'llGetFreeMemory', - 'llGetGeometricCenter', - 'llGetGMTclock', - 'llGetInventoryCreator', - 'llGetInventoryKey', - 'llGetInventoryName', - 'llGetInventoryNumber', - 'llGetInventoryPermMask', - 'llGetInventoryType', - 'llGetKey', - 'llGetLandOwnerAt', - 'llGetLinkKey', - 'llGetLinkName', - 'llGetLinkNumber', - 'llGetListEntryType', - 'llGetListLength', - 'llGetLocalPos', - 'llGetLocalRot', - 'llGetMass', - 'llGetNextEmail', - 'llGetNotecardLine', - 'llGetNumberOfNotecardLines', - 'llGetNumberOfPrims', - 'llGetNumberOfSides', - 'llGetObjectDesc', - 'llGetObjectDetails', - 'llGetObjectMass', - 'llGetObjectName', - 'llGetObjectPermMask', - 'llGetObjectPrimCount', - 'llGetOmega', - 'llGetOwner', - 'llGetOwnerKey', - 'llGetParcelDetails', - 'llGetParcelFlags', - 'llGetParcelMaxPrims', - 'llGetParcelPrimCount', - 'llGetParcelPrimOwners', - 'llGetPermissions', - 'llGetPermissionsKey', - 'llGetPos', - 'llGetPrimitiveParams', - 'llGetRegionAgentCount', - 'llGetRegionCorner', - 'llGetRegionFlags', - 'llGetRegionFPS', - 'llGetRegionName', - 'llGetRegionTimeDilation', - 'llGetRootPosition', - 'llGetRootRotation', - 'llGetRot', - 'llGetScale', - 'llGetScriptName', - 'llGetScriptState', - 'llGetSimulatorHostname', - 'llGetStartParameter', - 'llGetStatus', - 'llGetSubString', - 'llGetSunDirection', - 'llGetTexture', - 'llGetTextureOffset', - 'llGetTextureRot', - 'llGetTextureScale', - 'llGetTime', - 'llGetTimeOfDay', - 'llGetTimestamp', - 'llGetTorque', - 'llGetUnixTime', - 'llGetVel', - 'llGetWallclock', - 'llGiveInventory', - 'llGiveInventoryList', - 'llGiveMoney', - 'llGround', - 'llGroundContour', - 'llGroundNormal', - 'llGroundRepel', - 'llGroundSlope', - 'llHTTPRequest', - 'llInsertString', - 'llInstantMessage', - 'llIntegerToBase64', - 'llKey2Name', - 'llList2CSV', - 'llList2Float', - 'llList2Integer', - 'llList2Key', - 'llList2List', - 'llList2ListStrided', - 'llList2Rot', - 'llList2String', - 'llList2Vector', - 'llListen', - 'llListenControl', - 'llListenRemove', - 'llListFindList', - 'llListInsertList', - 'llListRandomize', - 'llListReplaceList', - 'llListSort', - 'llListStatistics', - 'llLoadURL', - 'llLog', - 'llLog10', - 'llLookAt', - 'llLoopSound', - 'llLoopSoundMaster', - 'llLoopSoundSlave', - 'llMapDestination', - 'llMD5String', - 'llMessageLinked', - 'llMinEventDelay', - 'llModifyLand', - 'llModPow', - 'llMoveToTarget', - 'llOffsetTexture', - 'llOpenRemoteDataChannel', - 'llOverMyLand', - 'llOwnerSay', - 'llParcelMediaCommandList', - 'llParcelMediaQuery', - 'llParseString2List', - 'llParseStringKeepNulls', - 'llParticleSystem', - 'llPassCollisions', - 'llPassTouches', - 'llPlaySound', - 'llPlaySoundSlave', - 'llPow', - 'llPreloadSound', - 'llPushObject', - 'llRegionSay', - 'llReleaseControls', - 'llRemoteDataReply', - 'llRemoteDataSetRegion', - 'llRemoteLoadScriptPin', - 'llRemoveFromLandBanList', - 'llRemoveFromLandPassList', - 'llRemoveInventory', - 'llRemoveVehicleFlags', - 'llRequestAgentData', - 'llRequestInventoryData', - 'llRequestPermissions', - 'llRequestSimulatorData', - 'llResetLandBanList', - 'llResetLandPassList', - 'llResetOtherScript', - 'llResetScript', - 'llResetTime', - 'llRezAtRoot', - 'llRezObject', - 'llRot2Angle', - 'llRot2Axis', - 'llRot2Euler', - 'llRot2Fwd', - 'llRot2Left', - 'llRot2Up', - 'llRotateTexture', - 'llRotBetween', - 'llRotLookAt', - 'llRotTarget', - 'llRotTargetRemove', - 'llRound', - 'llSameGroup', - 'llSay', - 'llScaleTexture', - 'llScriptDanger', - 'llSendRemoteData', - 'llSensor', - 'llSensorRemove', - 'llSensorRepeat', - 'llSetAlpha', - 'llSetBuoyancy', - 'llSetCameraAtOffset', - 'llSetCameraEyeOffset', - 'llSetCameraParams', - 'llSetClickAction', - 'llSetColor', - 'llSetDamage', - 'llSetForce', - 'llSetForceAndTorque', - 'llSetHoverHeight', - 'llSetLinkAlpha', - 'llSetLinkColor', - 'llSetLinkPrimitiveParams', - 'llSetLinkTexture', - 'llSetLocalRot', - 'llSetObjectDesc', - 'llSetObjectName', - 'llSetParcelMusicURL', - 'llSetPayPrice', - 'llSetPos', - 'llSetPrimitiveParams', - 'llSetRemoteScriptAccessPin', - 'llSetRot', - 'llSetScale', - 'llSetScriptState', - 'llSetSitText', - 'llSetSoundQueueing', - 'llSetSoundRadius', - 'llSetStatus', - 'llSetText', - 'llSetTexture', - 'llSetTextureAnim', - 'llSetTimerEvent', - 'llSetTorque', - 'llSetTouchText', - 'llSetVehicleFlags', - 'llSetVehicleFloatParam', - 'llSetVehicleRotationParam', - 'llSetVehicleType', - 'llSetVehicleVectorParam', - 'llSHA1String', - 'llShout', - 'llSin', - 'llSitTarget', - 'llSleep', - 'llSqrt', - 'llStartAnimation', - 'llStopAnimation', - 'llStopHover', - 'llStopLookAt', - 'llStopMoveToTarget', - 'llStopSound', - 'llStringLength', - 'llStringToBase64', - 'llStringTrim', - 'llSubStringIndex', - 'llTakeControls', - 'llTan', - 'llTarget', - 'llTargetOmega', - 'llTargetRemove', - 'llTeleportAgentHome', - 'llToLower', - 'llToUpper', - 'llTriggerSound', - 'llTriggerSoundLimited', - 'llUnescapeURL', - 'llUnSit', - 'llVecDist', - 'llVecMag', - 'llVecNorm', - 'llVolumeDetect', - 'llWater', - 'llWhisper', - 'llWind', - 'llXorBase64StringsCorrect', - ), - 6 => array( // deprecated - 'llMakeExplosion', - 'llMakeFire', - 'llMakeFountain', - 'llMakeSmoke', - 'llSound', - 'llSoundPreload', - 'llXorBase64Strings', - ), - 7 => array( // unimplemented - 'llPointAt', - 'llRefreshPrimURL', - 'llReleaseCamera', - 'llRemoteLoadScript', - 'llSetPrimURL', - 'llStopPointAt', - 'llTakeCamera', - 'llTextBox', - ), - 8 => array( // God mode - 'llGodLikeRezObject', - 'llSetInventoryPermMask', - 'llSetObjectPermMask', - ), - ), - 'SYMBOLS' => array( - '{', '}', '(', ')', '[', ']', - '=', '+', '-', '*', '/', - '+=', '-=', '*=', '/=', '++', '--', - '!', '%', '&', '|', '&&', '||', - '==', '!=', '<', '>', '<=', '>=', - '~', '<<', '>>', '^', ':', - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => true, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000ff;', - 2 => 'color: #000080;', - 3 => 'color: #008080;', - 4 => 'color: #228b22;', - 5 => 'color: #b22222;', - 6 => 'color: #8b0000; background-color: #ffff00;', - 7 => 'color: #8b0000; background-color: #fa8072;', - 8 => 'color: #000000; background-color: #ba55d3;', - ), - 'COMMENTS' => array( - 1 => 'color: #ff7f50; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #006400;' - ), - 'NUMBERS' => array( - 0 => 'color: #000000;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.lslwiki.net/lslwiki/wakka.php?wakka={FNAME}', // http://wiki.secondlife.com/wiki/{FNAME} - 4 => 'http://www.lslwiki.net/lslwiki/wakka.php?wakka={FNAME}', // http://wiki.secondlife.com/wiki/{FNAME} - 5 => 'http://www.lslwiki.net/lslwiki/wakka.php?wakka={FNAME}', // http://wiki.secondlife.com/wiki/{FNAME} - 6 => 'http://www.lslwiki.net/lslwiki/wakka.php?wakka={FNAME}', // http://wiki.secondlife.com/wiki/{FNAME} - 7 => 'http://www.lslwiki.net/lslwiki/wakka.php?wakka={FNAME}', // http://wiki.secondlife.com/wiki/{FNAME} - 8 => 'http://www.lslwiki.net/lslwiki/wakka.php?wakka={FNAME}', // http://wiki.secondlife.com/wiki/{FNAME} - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/lua.php b/library/Vendors/geshi/geshi/lua.php deleted file mode 100644 index abeaa54e..00000000 --- a/library/Vendors/geshi/geshi/lua.php +++ /dev/null @@ -1,137 +0,0 @@ - 'Lua', - 'COMMENT_SINGLE' => array(1 => "--"), - 'COMMENT_MULTI' => array('--[[' => ']]'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'and','break','do','else','elseif','end','false','for','function','if', - 'in','local','nil','not','or','repeat','return','then','true','until','while', - '_VERSION','assert','collectgarbage','dofile','error','gcinfo','loadfile','loadstring', - 'print','tonumber','tostring','type','unpack', - '_ALERT','_ERRORMESSAGE','_INPUT','_PROMPT','_OUTPUT', - '_STDERR','_STDIN','_STDOUT','call','dostring','foreach','foreachi','getn','globals','newtype', - 'rawget','rawset','require','sort','tinsert','tremove', - 'abs','acos','asin','atan','atan2','ceil','cos','deg','exp', - 'floor','format','frexp','gsub','ldexp','log','log10','max','min','mod','rad','random','randomseed', - 'sin','sqrt','strbyte','strchar','strfind','strlen','strlower','strrep','strsub','strupper','tan', - 'openfile','closefile','readfrom','writeto','appendto', - 'remove','rename','flush','seek','tmpfile','tmpname','read','write', - 'clock','date','difftime','execute','exit','getenv','setlocale','time', - '_G','getfenv','getmetatable','ipairs','loadlib','next','pairs','pcall', - 'rawegal','setfenv','setmetatable','xpcall', - 'string.byte','string.char','string.dump','string.find','string.len', - 'string.lower','string.rep','string.sub','string.upper','string.format','string.gfind','string.gsub', - 'table.concat','table.foreach','table.foreachi','table.getn','table.sort','table.insert','table.remove','table.setn', - 'math.abs','math.acos','math.asin','math.atan','math.atan2','math.ceil','math.cos','math.deg','math.exp', - 'math.floor','math.frexp','math.ldexp','math.log','math.log10','math.max','math.min','math.mod', - 'math.pi','math.rad','math.random','math.randomseed','math.sin','math.sqrt','math.tan', - 'coroutine.create','coroutine.resume','coroutine.status', - 'coroutine.wrap','coroutine.yield', - 'io.close','io.flush','io.input','io.lines','io.open','io.output','io.read','io.tmpfile','io.type','io.write', - 'io.stdin','io.stdout','io.stderr', - 'os.clock','os.date','os.difftime','os.execute','os.exit','os.getenv','os.remove','os.rename', - 'os.setlocale','os.time','os.tmpname', - 'string','table','math','coroutine','io','os','debug' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '!', '@', '%', '&', '*', '|', '/', '<', '>', '=', ';' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 0 => 'color: #b1b100;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/m68k.php b/library/Vendors/geshi/geshi/m68k.php deleted file mode 100644 index 543b73c8..00000000 --- a/library/Vendors/geshi/geshi/m68k.php +++ /dev/null @@ -1,143 +0,0 @@ - 'Motorola 68000 Assembler', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - /*CPU*/ - 1 => array( - 'adc','add','ais','aix','and','asl','asr','bcc','bclr','bcs','beq', - 'bge','bgt','bhcc','bhcs','bhi','bhs','bih','bil','bit','ble','blo', - 'bls','blt','bmc','bmi','bms','bne','bpl','bra','brclr','brn', - 'brset','bset','bsr','cbeq','clc','cli','clr','cmp','com','cphx', - 'cpx','daa','dbnz','dec','div','eor','inc','jmp','jsr','lda','ldhx', - 'ldx','lsl','lsr','mov','mul','neg','nop','nsa','ora','psha','pshh', - 'pshx','pula','pulh','pulx','rol','ror','rsp','rti','rts','sbc', - 'sec','sei','sta','sthx','stop','stx','sub','swi','tap','tax','tpa', - 'tst','tsx','txa','txs','wait' - ), - /*registers*/ - 2 => array( - 'a','h','x', - 'hx','sp' - ), - /*Directive*/ - 3 => array( - '#define','#endif','#else','#ifdef','#ifndef','#include','#undef', - '.db','.dd','.df','.dq','.dt','.dw','.end','.org','equ' - ), - ), - 'SYMBOLS' => array( - ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000ff; font-weight:bold;', - 2 => 'color: #0000ff;', - 3 => 'color: #46aa03; font-weight:bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #adadad; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #0000ff;' - ), - 'STRINGS' => array( - 0 => 'color: #7f007f;' - ), - 'NUMBERS' => array( - 0 => 'color: #dd22dd;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;' - ), - 'REGEXPS' => array( - 0 => 'color: #22bbff;', - 1 => 'color: #22bbff;', - 2 => 'color: #993333;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Hex numbers - 0 => '#?0[0-9a-fA-F]{1,32}[hH]', - //Binary numbers - 1 => '\%[01]{1,64}[bB]', - //Labels - 2 => '^[_a-zA-Z][_a-zA-Z0-9]*?\:' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 8 -); - -?> diff --git a/library/Vendors/geshi/geshi/magiksf.php b/library/Vendors/geshi/geshi/magiksf.php deleted file mode 100644 index f3da7fcf..00000000 --- a/library/Vendors/geshi/geshi/magiksf.php +++ /dev/null @@ -1,193 +0,0 @@ - null, - 'LANG_NAME' => 'MagikSF', - 'COMMENT_SINGLE' => array(1 => '##', 2 => '#%', 3 => '#'), - 'COMMENT_MULTI' => array("_pragma(" => ")"), - //Multiline-continued single-line comments - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - '_block', '_endblock', '_proc', '_endproc', '_loop', '_endloop', - '_method', '_endmethod', - '_protect', '_endprotect', '_protection', '_locking', - '_continue', - ), - 2 => array( - '_self', '_thisthread', '_pragma', '_private', '_abstract', - '_local', '_global', '_dynamic', '_package', '_constant', - '_import', '_iter', '_lock', '_optional', '_recursive', '_super' - ), - 3 => array( - '_if', '_endif', '_then', '_else', '_elif', '_orif', '_andif', '_for', '_over', - '_try', '_endtry', '_when', '_throw', '_catch', '_endcatch', '_handling', - '_finally', '_loopbody', '_return', '_leave', '_with' - ), - 4 => array( - '_false', '_true', '_maybe', '_unset', '_no_way' - ), - 5 => array( - '_mod', '_div', '_or', '_and', '_cf', '_is', '_isnt', '_not', '_gather', '_scatter', - '_allresults', '_clone', '_xor' - ), - 6 => array( - 'def_slotted_exemplar', 'write_string', 'write', 'condition', - 'record_transaction', 'gis_program_manager', 'perform', 'define_shared_constant', - 'property_list', 'rope', 'def_property', 'def_mixin' - ), - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', - '+', '-', '*', '/', '**', - '=', '<', '>', '<<', '>>', - ',', '$', - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #ff3f3f;', - 3 => 'color: #3f7f3f; font-weight: bold;', - 4 => 'color: #cc66cc;', - 5 => 'color: #ff3fff; font-weight: bold;', - 6 => 'font-weight: bold;', - ), - 'COMMENTS' => array( - 1 => 'color: #339933; font-weight: bold;', - 2 => 'color: #993333;', - 3 => 'color: #339933;', - 'MULTI' => 'color: #7f7f7f; font-style: italic', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #ff3f3f;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #202020;', - 2 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #ff3f3f;' - ), - 'REGEXPS' => array( - 1 => 'color: #3f3fff;', - 2 => 'color: #3f3fff;', - 3 => 'color: #cc66cc;', - 4 => 'color: #7f3f7f; font-style: italic;', - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - 1 => array( - GESHI_SEARCH => '\b[a-zA-Z0-9_]+:', // package identifiers - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - 2 => array( - GESHI_SEARCH => ':(?:[a-zA-Z0-9!?_]+|(?:[].*?[]))*', //symbols - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - 3 => array( - GESHI_SEARCH => '%space|%tab|%newline|%.', //characters - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - 4 => array( - GESHI_SEARCH => '@(?:[a-zA-Z0-9!?_]+|(?:[].*?[]))*', //symbols - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/make.php b/library/Vendors/geshi/geshi/make.php deleted file mode 100644 index 68955231..00000000 --- a/library/Vendors/geshi/geshi/make.php +++ /dev/null @@ -1,151 +0,0 @@ - - * Copyright: (c) 2008 Neil Bird - * Release Version: 1.0.8.8 - * Date Started: 2008/08/26 - * - * make language file for GeSHi. - * - * (GNU make specific) - * - * CHANGES - * ------- - * 2008/09/05 (1.0.0) - * - First Release - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'GNU make', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_REGEXP' => array( - //Escaped String Starters - 2 => "/\\\\['\"]/siU" - ), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - // core - 'ifeq', 'else', 'endif', 'ifneq', 'ifdef', 'ifndef', - 'include', 'vpath', 'export', 'unexport', 'override', - 'info', 'warning', 'error' - ), - 2 => array( - // macros, literals - '.SUFFIXES', '.PHONY', '.DEFAULT', '.PRECIOUS', '.IGNORE', '.SILENT', '.EXPORT_ALL_VARIABLES', '.KEEP_STATE', - '.LIBPATTERNS', '.NOTPARALLEL', '.DELETE_ON_ERROR', '.INTERMEDIATE', '.POSIX', '.SECONDARY' - ), - /* - 3 => array( - // funcs - see regex - //'subst', 'addprefix', 'addsuffix', 'basename', 'call', 'dir', 'error', 'eval', 'filter-out', 'filter', - //'findstring', 'firstword', 'foreach', 'if', 'join', 'notdir', 'origin', 'patsubst', 'shell', 'sort', 'strip', - //'suffix', 'warning', 'wildcard', 'word', 'wordlist', 'words' - )*/ - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', - '!', '@', '%', '&', '|', '/', - '<', '>', - '=', '-', '+', '*', - '.', ':', ',', ';', - '$' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - //3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #666622; font-weight: bold;', - 2 => 'color: #990000;', - //3 => 'color: #000000; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #339900; font-style: italic;', - 2 => 'color: #000099; font-weight: bold;', - 'MULTI' => '' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( # keep same as symbols so as to make ${} and $() equiv. - 0 => 'color: #004400;' - ), - 'STRINGS' => array( - 0 => 'color: #CC2200;' - ), - 'NUMBERS' => array( - 0 => 'color: #CC2200;' - ), - 'SYMBOLS' => array( - 0 => 'color: #004400;' - ), - 'REGEXPS' => array( - 0 => 'color: #000088; font-weight: bold;', - 1 => 'color: #0000CC; font-weight: bold;', - 2 => 'color: #000088;' - ), - 'SCRIPT' => array(), - 'METHODS' => array() - ), - 'URLS' => array( - 1 => '', - 2 => '', - //3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - //Simple variables - 0 => "\\$(?:[^{(&]|&(?:amp|lt|gt);)", - //Complex variables/functions [built-ins] - 1 => array( - GESHI_SEARCH => '(\\$[({])(subst|addprefix|addsuffix|basename|call|dir|error|eval|filter-out|filter,|findstring|firstword|foreach|if|join|notdir|origin|patsubst|shell|sort|strip,|suffix|warning|wildcard|word|wordlist|words)([ })])', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - //Complex variables/functions [others] - 2 => array( - GESHI_SEARCH => '(\\$[({])([A-Za-z_][A-Za-z_0-9]*)([ })])', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array(), - 'TAB_WIDTH' => 8 -// vim: set sw=4 sts=4 : -); -?> diff --git a/library/Vendors/geshi/geshi/mapbasic.php b/library/Vendors/geshi/geshi/mapbasic.php deleted file mode 100644 index 0025d4e2..00000000 --- a/library/Vendors/geshi/geshi/mapbasic.php +++ /dev/null @@ -1,908 +0,0 @@ - 'MapBasic', - 'COMMENT_SINGLE' => array(1 => "'"), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( -/* - 1 - Statements + Clauses + Data Types + Logical Operators, Geographical Operators + SQL - 2 - Special Procedures - 3 - Functions - 4 - Constants - 5 - Extended keywords (case sensitive) -*/ - 1 => array( - 'Add', 'Alias', 'All', 'Alter', 'And', 'Any', 'Application', 'Arc', - 'Area', 'As', 'AutoLabel', 'Bar', 'Beep', 'Begin', 'Bind', - 'Browse', 'Brush', 'BrushPicker', 'Button', 'ButtonPad', - 'ButtonPads', 'BY', 'Call', 'CancelButton', 'Cartographic', 'Case', - 'CharSet', 'Check', 'CheckBox', 'Clean', 'Close', 'Collection', - 'Column', 'Combine', 'Command', 'Commit', 'Connection', - 'ConnectionNumber', 'Contains', 'Continue', 'Control', 'CoordSys', - 'Create', 'Cutter', 'Date', 'Datum', 'DDEExecute', 'DDEPoke', - 'DDETerminate', 'DDETerminateAll', 'Declare', 'Default', 'Define', - 'Delete', 'Dialog', 'Digitizer', 'Dim', 'Disaggregate', - 'Disconnect', 'Distance', 'Do', 'Document', 'DocumentWindow', - 'Drag', 'Drop', 'EditText', 'Ellipse', 'Enclose', 'End', 'Entire', - 'Entirely', 'Erase', 'Error', 'Event', 'Exit', 'Export', - 'Farthest', 'Fetch', 'File', 'Find', 'Float', 'FME', 'Font', - 'FontPicker', 'For', 'Format', 'Frame', 'From', 'Function', - 'Geocode', 'Get', 'Global', 'Goto', 'Graph', 'Grid', 'GROUP', - 'GroupBox', 'Handler', 'If', 'Import', 'In', 'Include', 'Index', - 'Info', 'Input', 'Insert', 'Integer', 'Intersect', 'Intersects', - 'INTO', 'Isogram', 'Item', 'Kill', 'Layout', 'Legend', 'Line', - 'Link', 'ListBox', 'Logical', 'Loop', 'Map', 'Map3D', 'MapInfo', - 'MapInfoDialog', 'Menu', 'Merge', 'Metadata', 'Method', 'Mod', - 'Move', 'MultiListBox', 'MultiPoint', 'MWS', 'Nearest', 'Next', - 'NOSELECT', 'Not', 'Note', 'Object', 'Objects', 'Offset', - 'OKButton', 'OnError', 'Open', 'Or', 'ORDER', 'Overlay', 'Pack', - 'Paper', 'Part', 'Partly', 'Pen', 'PenPicker', 'Pline', 'Point', - 'PopupMenu', 'Preserve', 'Print', 'PrintWin', 'PrismMap', - 'Processing', 'Program', 'ProgressBar', 'ProgressBars', 'Put', - 'RadioGroup', 'Randomize', 'Ranges', 'Rect', 'ReDim', - 'Redistricter', 'Refresh', 'Region', 'Register', 'Relief', - 'Reload', 'Remove', 'Rename', 'Report', 'Reproject', 'Resolution', - 'Resume', 'Rollback', 'RoundRect', 'RowID', 'Run', 'Save', 'Seek', - 'Select', 'Selection', 'Server', 'Set', 'Shade', 'SmallInt', - 'Snap', 'Split', 'StaticText', 'StatusBar', 'Stop', 'String', - 'Style', 'Styles', 'Sub', 'Symbol', 'SymbolPicker', 'Symbols', - 'Table', 'Target', 'Terminate', 'Text', 'Then', 'Threshold', - 'Timeout', 'To', 'Transaction', 'Transform', 'Type', 'UnDim', - 'Units', 'Unlink', 'Update', 'Using', 'VALUES', 'Version', - 'Versioning', 'Wend', 'WFS', 'WHERE', 'While', 'Window', 'Within', - 'Workspace', 'Write' - ), - 2 => array( - 'EndHandler', 'ForegroundTaskSwitchHandler', 'Main', - 'RemoteMapGenHandler', 'RemoteMsgHandler', 'SelChangedHandler', - 'ToolHandler', 'WinChangedHandler', 'WinClosedHandler', - 'WinFocusChangedHandler' - ), - 3 => array( - 'Abs', 'Acos', 'ApplicationDirectory$', 'AreaOverlap', 'Asc', - 'Asin', 'Ask', 'Atn', 'Avg', 'Buffer', 'ButtonPadInfo', - 'CartesianArea', 'CartesianBuffer', 'CartesianConnectObjects', - 'CartesianDistance', 'CartesianObjectDistance', - 'CartesianObjectLen', 'CartesianOffset', 'CartesianOffsetXY', - 'CartesianPerimeter', 'Centroid', 'CentroidX', 'CentroidY', - 'ChooseProjection$', 'Chr$', 'ColumnInfo', 'CommandInfo', - 'ConnectObjects', 'ControlPointInfo', 'ConvertToPline', - 'ConvertToRegion', 'ConvexHull', 'CoordSysName$', 'Cos', 'Count', - 'CreateCircle', 'CreateLine', 'CreatePoint', 'CreateText', - 'CurDate', 'CurrentBorderPen', 'CurrentBrush', 'CurrentFont', - 'CurrentLinePen', 'CurrentPen', 'CurrentSymbol', 'DateWindow', - 'Day', 'DDEInitiate', 'DDERequest$', 'DeformatNumber$', 'EOF', - 'EOT', 'EPSGToCoordSysString$', 'Err', 'Error$', 'Exp', - 'ExtractNodes', 'FileAttr', 'FileExists', 'FileOpenDlg', - 'FileSaveAsDlg', 'Fix', 'Format$', 'FormatDate$', 'FormatNumber$', - 'FrontWindow', 'GeocodeInfo', 'GetFolderPath$', 'GetGridCellValue', - 'GetMetadata$', 'GetSeamlessSheet', 'GridTableInfo', - 'HomeDirectory$', 'InStr', 'Int', 'IntersectNodes', - 'IsGridCellNull', 'IsogramInfo', 'IsPenWidthPixels', - 'LabelFindByID', 'LabelFindFirst', 'LabelFindNext', 'LabelInfo', - 'LayerInfo', 'LCase$', 'Left$', 'LegendFrameInfo', 'LegendInfo', - 'LegendStyleInfo', 'Len', 'Like', 'LocateFile$', 'LOF', 'Log', - 'LTrim$', 'MakeBrush', 'MakeCustomSymbol', 'MakeFont', - 'MakeFontSymbol', 'MakePen', 'MakeSymbol', 'Map3DInfo', - 'MapperInfo', 'Max', 'Maximum', 'MBR', 'MenuItemInfoByHandler', - 'MenuItemInfoByID', 'MGRSToPoint', 'MICloseContent', - 'MICloseFtpConnection', 'MICloseFtpFileFind', - 'MICloseHttpConnection', 'MICloseHttpFile', 'MICloseSession', - 'MICreateSession', 'MICreateSessionFull', 'Mid$', 'MidByte$', - 'MIErrorDlg', 'MIFindFtpFile', 'MIFindNextFtpFile', 'MIGetContent', - 'MIGetContentBuffer', 'MIGetContentLen', 'MIGetContentString', - 'MIGetContentToFile', 'MIGetContentType', - 'MIGetCurrentFtpDirectory', 'MIGetErrorCode', 'MIGetErrorMessage', - 'MIGetFileURL', 'MIGetFtpConnection', 'MIGetFtpFile', - 'MIGetFtpFileFind', 'MIGetFtpFileName', 'MIGetHttpConnection', - 'MIIsFtpDirectory', 'MIIsFtpDots', 'Min', 'Minimum', - 'MIOpenRequest', 'MIOpenRequestFull', 'MIParseURL', 'MIPutFtpFile', - 'MIQueryInfo', 'MIQueryInfoStatusCode', 'MISaveContent', - 'MISendRequest', 'MISendSimpleRequest', 'MISetCurrentFtpDirectory', - 'MISetSessionTimeout', 'MIXmlAttributeListDestroy', - 'MIXmlDocumentCreate', 'MIXmlDocumentDestroy', - 'MIXmlDocumentGetNamespaces', 'MIXmlDocumentGetRootNode', - 'MIXmlDocumentLoad', 'MIXmlDocumentLoadXML', - 'MIXmlDocumentLoadXMLString', 'MIXmlDocumentSetProperty', - 'MIXmlGetAttributeList', 'MIXmlGetChildList', - 'MIXmlGetNextAttribute', 'MIXmlGetNextNode', 'MIXmlNodeDestroy', - 'MIXmlNodeGetAttributeValue', 'MIXmlNodeGetFirstChild', - 'MIXmlNodeGetName', 'MIXmlNodeGetParent', 'MIXmlNodeGetText', - 'MIXmlNodeGetValue', 'MIXmlNodeListDestroy', 'MIXmlSCDestroy', - 'MIXmlSCGetLength', 'MIXmlSCGetNamespace', 'MIXmlSelectNodes', - 'MIXmlSelectSingleNode', 'Month', 'NumAllWindows', 'NumberToDate', - 'NumCols', 'NumTables', 'NumWindows', 'ObjectDistance', - 'ObjectGeography', 'ObjectInfo', 'ObjectLen', 'ObjectNodeHasM', - 'ObjectNodeHasZ', 'ObjectNodeM', 'ObjectNodeX', 'ObjectNodeY', - 'ObjectNodeZ', 'OffsetXY', 'Overlap', 'OverlayNodes', - 'PathToDirectory$', 'PathToFileName$', 'PathToTableName$', - 'PenWidthToPoints', 'Perimeter', 'PointsToPenWidth', - 'PointToMGRS$', 'PrismMapInfo', 'ProgramDirectory$', 'Proper$', - 'ProportionOverlap', 'RasterTableInfo', 'ReadControlValue', - 'RegionInfo', 'RemoteQueryHandler', 'RGB', 'Right$', 'Rnd', - 'Rotate', 'RotateAtPoint', 'Round', 'RTrim$', 'SearchInfo', - 'SearchPoint', 'SearchRect', 'SelectionInfo', 'Server_ColumnInfo', - 'Server_Connect', 'Server_ConnectInfo', 'Server_DriverInfo', - 'Server_EOT', 'Server_Execute', 'Server_GetODBCHConn', - 'Server_GetODBCHStmt', 'Server_NumCols', 'Server_NumDrivers', - 'SessionInfo', 'Sgn', 'Sin', 'Space$', 'SphericalArea', - 'SphericalConnectObjects', 'SphericalDistance', - 'SphericalObjectDistance', 'SphericalObjectLen', 'SphericalOffset', - 'SphericalOffsetXY', 'SphericalPerimeter', 'Sqr', 'Str$', - 'String$', 'StringCompare', 'StringCompareIntl', 'StringToDate', - 'StyleAttr', 'Sum', 'SystemInfo', 'TableInfo', 'Tan', - 'TempFileName$', 'TextSize', 'Time', 'Timer', 'TriggerControl', - 'TrueFileName$', 'UBound', 'UCase$', 'UnitAbbr$', 'UnitName$', - 'Val', 'Weekday', 'WindowID', 'WindowInfo', 'WtAvg', 'Year' - ), - 4 => array( - 'BLACK', 'BLUE', 'BRUSH_BACKCOLOR', 'BRUSH_FORECOLOR', - 'BRUSH_PATTERN', 'BTNPAD_INFO_FLOATING', 'BTNPAD_INFO_NBTNS', - 'BTNPAD_INFO_WIDTH', 'BTNPAD_INFO_WINID', 'BTNPAD_INFO_X', - 'BTNPAD_INFO_Y', 'CLS', 'CMD_INFO_CTRL', 'CMD_INFO_CUSTOM_OBJ', - 'CMD_INFO_DLG_DBL', 'CMD_INFO_DLG_OK', 'CMD_INFO_EDIT_ASK', - 'CMD_INFO_EDIT_DISCARD', 'CMD_INFO_EDIT_SAVE', - 'CMD_INFO_EDIT_STATUS', 'CMD_INFO_EDIT_TABLE', 'CMD_INFO_FIND_RC', - 'CMD_INFO_FIND_ROWID', 'CMD_INFO_HL_FILE_NAME', - 'CMD_INFO_HL_LAYER_ID', 'CMD_INFO_HL_ROWID', - 'CMD_INFO_HL_TABLE_NAME', 'CMD_INFO_HL_WINDOW_ID', - 'CMD_INFO_INTERRUPT', 'CMD_INFO_MENUITEM', 'CMD_INFO_MSG', - 'CMD_INFO_ROWID', 'CMD_INFO_SELTYPE', 'CMD_INFO_SHIFT', - 'CMD_INFO_STATUS', 'CMD_INFO_TASK_SWITCH', 'CMD_INFO_TOOLBTN', - 'CMD_INFO_WIN', 'CMD_INFO_X', 'CMD_INFO_X2', 'CMD_INFO_XCMD', - 'CMD_INFO_Y', 'CMD_INFO_Y2', 'COL_INFO_DECPLACES', - 'COL_INFO_EDITABLE', 'COL_INFO_INDEXED', 'COL_INFO_NAME', - 'COL_INFO_NUM', 'COL_INFO_TYPE', 'COL_INFO_WIDTH', 'COL_TYPE_CHAR', - 'COL_TYPE_DATE', 'COL_TYPE_DATETIME', 'COL_TYPE_DECIMAL', - 'COL_TYPE_FLOAT', 'COL_TYPE_GRAPHIC', 'COL_TYPE_INTEGER', - 'COL_TYPE_LOGICAL', 'COL_TYPE_SMALLINT', 'COL_TYPE_TIME', 'CYAN', - 'DATE_WIN_CURPROG', 'DATE_WIN_SESSION', 'DEG_2_RAD', - 'DICTIONARY_ADDRESS_ONLY', 'DICTIONARY_ALL', - 'DICTIONARY_PREFER_ADDRESS', 'DICTIONARY_PREFER_USER', - 'DICTIONARY_USER_ONLY', 'DM_CUSTOM_CIRCLE', 'DM_CUSTOM_ELLIPSE', - 'DM_CUSTOM_LINE', 'DM_CUSTOM_POINT', 'DM_CUSTOM_POLYGON', - 'DM_CUSTOM_POLYLINE', 'DM_CUSTOM_RECT', 'DMPAPER_10X11', - 'DMPAPER_10X14', 'DMPAPER_11X17', 'DMPAPER_12X11', 'DMPAPER_15X11', - 'DMPAPER_9X11', 'DMPAPER_A_PLUS', 'DMPAPER_A2', 'DMPAPER_A3', - 'DMPAPER_A3_EXTRA', 'DMPAPER_A3_EXTRA_TRANSVERSE', - 'DMPAPER_A3_ROTATED', 'DMPAPER_A3_TRANSVERSE', 'DMPAPER_A4', - 'DMPAPER_A4_EXTRA', 'DMPAPER_A4_PLUS', 'DMPAPER_A4_ROTATED', - 'DMPAPER_A4_TRANSVERSE', 'DMPAPER_A4SMALL', 'DMPAPER_A5', - 'DMPAPER_A5_EXTRA', 'DMPAPER_A5_ROTATED', 'DMPAPER_A5_TRANSVERSE', - 'DMPAPER_A6', 'DMPAPER_A6_ROTATED', 'DMPAPER_B_PLUS', 'DMPAPER_B4', - 'DMPAPER_B4_JIS_ROTATED', 'DMPAPER_B5', 'DMPAPER_B5_EXTRA', - 'DMPAPER_B5_JIS_ROTATED', 'DMPAPER_B5_TRANSVERSE', - 'DMPAPER_B6_JIS', 'DMPAPER_B6_JIS_ROTATED', 'DMPAPER_CSHEET', - 'DMPAPER_DBL_JAPANESE_POSTCARD', - 'DMPAPER_DBL_JAPANESE_POSTCARD_ROTATED', 'DMPAPER_DSHEET', - 'DMPAPER_ENV_10', 'DMPAPER_ENV_11', 'DMPAPER_ENV_12', - 'DMPAPER_ENV_14', 'DMPAPER_ENV_9', 'DMPAPER_ENV_B4', - 'DMPAPER_ENV_B5', 'DMPAPER_ENV_B6', 'DMPAPER_ENV_C3', - 'DMPAPER_ENV_C4', 'DMPAPER_ENV_C5', 'DMPAPER_ENV_C6', - 'DMPAPER_ENV_C65', 'DMPAPER_ENV_DL', 'DMPAPER_ENV_INVITE', - 'DMPAPER_ENV_ITALY', 'DMPAPER_ENV_MONARCH', 'DMPAPER_ENV_PERSONAL', - 'DMPAPER_ESHEET', 'DMPAPER_EXECUTIVE', - 'DMPAPER_FANFOLD_LGL_GERMAN', 'DMPAPER_FANFOLD_STD_GERMAN', - 'DMPAPER_FANFOLD_US', 'DMPAPER_FIRST', 'DMPAPER_FOLIO', - 'DMPAPER_ISO_B4', 'DMPAPER_JAPANESE_POSTCARD', - 'DMPAPER_JAPANESE_POSTCARD_ROTATED', 'DMPAPER_JENV_CHOU3', - 'DMPAPER_JENV_CHOU3_ROTATED', 'DMPAPER_JENV_CHOU4', - 'DMPAPER_JENV_CHOU4_ROTATED', 'DMPAPER_JENV_KAKU2', - 'DMPAPER_JENV_KAKU2_ROTATED', 'DMPAPER_JENV_KAKU3', - 'DMPAPER_JENV_KAKU3_ROTATED', 'DMPAPER_JENV_YOU4', - 'DMPAPER_JENV_YOU4_ROTATED', 'DMPAPER_LEDGER', 'DMPAPER_LEGAL', - 'DMPAPER_LEGAL_EXTRA', 'DMPAPER_LETTER', 'DMPAPER_LETTER_EXTRA', - 'DMPAPER_LETTER_EXTRA_TRANSVERSE', 'DMPAPER_LETTER_PLUS', - 'DMPAPER_LETTER_ROTATED', 'DMPAPER_LETTER_TRANSVERSE', - 'DMPAPER_LETTERSMALL', 'DMPAPER_NOTE', 'DMPAPER_P16K', - 'DMPAPER_P16K_ROTATED', 'DMPAPER_P32K', 'DMPAPER_P32K_ROTATED', - 'DMPAPER_P32KBIG', 'DMPAPER_P32KBIG_ROTATED', 'DMPAPER_PENV_1', - 'DMPAPER_PENV_1_ROTATED', 'DMPAPER_PENV_10', - 'DMPAPER_PENV_10_ROTATED', 'DMPAPER_PENV_2', - 'DMPAPER_PENV_2_ROTATED', 'DMPAPER_PENV_3', - 'DMPAPER_PENV_3_ROTATED', 'DMPAPER_PENV_4', - 'DMPAPER_PENV_4_ROTATED', 'DMPAPER_PENV_5', - 'DMPAPER_PENV_5_ROTATED', 'DMPAPER_PENV_6', - 'DMPAPER_PENV_6_ROTATED', 'DMPAPER_PENV_7', - 'DMPAPER_PENV_7_ROTATED', 'DMPAPER_PENV_8', - 'DMPAPER_PENV_8_ROTATED', 'DMPAPER_PENV_9', - 'DMPAPER_PENV_9_ROTATED', 'DMPAPER_QUARTO', 'DMPAPER_RESERVED_48', - 'DMPAPER_RESERVED_49', 'DMPAPER_STATEMENT', 'DMPAPER_TABLOID', - 'DMPAPER_TABLOID_EXTRA', 'DMPAPER_USER', 'ERR_BAD_WINDOW', - 'ERR_BAD_WINDOW_NUM', 'ERR_CANT_ACCESS_FILE', - 'ERR_CANT_INITIATE_LINK', 'ERR_CMD_NOT_SUPPORTED', - 'ERR_FCN_ARG_RANGE', 'ERR_FCN_INVALID_FMT', - 'ERR_FCN_OBJ_FETCH_FAILED', 'ERR_FILEMGR_NOTOPEN', - 'ERR_FP_MATH_LIB_DOMAIN', 'ERR_FP_MATH_LIB_RANGE', - 'ERR_INVALID_CHANNEL', 'ERR_INVALID_READ_CONTROL', - 'ERR_INVALID_TRIG_CONTROL', 'ERR_NO_FIELD', - 'ERR_NO_RESPONSE_FROM_APP', 'ERR_NULL_SELECTION', - 'ERR_PROCESS_FAILED_IN_APP', 'ERR_TABLE_NOT_FOUND', - 'ERR_WANT_MAPPER_WIN', 'FALSE', 'FILE_ATTR_FILESIZE', - 'FILE_ATTR_MODE', 'FILTER_ALL_DIRECTIONS_1', - 'FILTER_ALL_DIRECTIONS_2', 'FILTER_DIAGONALLY', - 'FILTER_HORIZONTALLY', 'FILTER_VERTICALLY', - 'FILTER_VERTICALLY_AND_HORIZONTALLY', 'FOLDER_APPDATA', - 'FOLDER_COMMON_APPDATA', 'FOLDER_COMMON_DOCS', - 'FOLDER_LOCAL_APPDATA', 'FOLDER_MI_APPDATA', - 'FOLDER_MI_COMMON_APPDATA', 'FOLDER_MI_LOCAL_APPDATA', - 'FOLDER_MI_PREFERENCE', 'FOLDER_MYDOCS', 'FOLDER_MYPICS', - 'FONT_BACKCOLOR', 'FONT_FORECOLOR', 'FONT_NAME', 'FONT_POINTSIZE', - 'FONT_STYLE', 'FRAME_INFO_BORDER_PEN', 'FRAME_INFO_COLUMN', - 'FRAME_INFO_HEIGHT', 'FRAME_INFO_LABEL', 'FRAME_INFO_MAP_LAYER_ID', - 'FRAME_INFO_NUM_STYLES', 'FRAME_INFO_POS_X', 'FRAME_INFO_POS_Y', - 'FRAME_INFO_REFRESHABLE', 'FRAME_INFO_SUBTITLE', - 'FRAME_INFO_SUBTITLE_FONT', 'FRAME_INFO_TITLE', - 'FRAME_INFO_TITLE_FONT', 'FRAME_INFO_TYPE', 'FRAME_INFO_VISIBLE', - 'FRAME_INFO_WIDTH', 'FRAME_TYPE_STYLE', 'FRAME_TYPE_THEME', - 'GEO_CONTROL_POINT_X', 'GEO_CONTROL_POINT_Y', 'GEOCODE_BATCH_SIZE', - 'GEOCODE_COUNT_GEOCODED', 'GEOCODE_COUNT_NOTGEOCODED', - 'GEOCODE_COUNTRY_SUBDIVISION', 'GEOCODE_COUNTRY_SUBDIVISION2', - 'GEOCODE_DICTIONARY', 'GEOCODE_FALLBACK_GEOGRAPHIC', - 'GEOCODE_FALLBACK_POSTAL', 'GEOCODE_MAX_BATCH_SIZE', - 'GEOCODE_MIXED_CASE', 'GEOCODE_MUNICIPALITY', - 'GEOCODE_MUNICIPALITY2', 'GEOCODE_OFFSET_CENTER', - 'GEOCODE_OFFSET_CENTER_UNITS', 'GEOCODE_OFFSET_END', - 'GEOCODE_OFFSET_END_UNITS', 'GEOCODE_PASSTHROUGH', - 'GEOCODE_POSTAL_CODE', 'GEOCODE_RESULT_MARK_MULTIPLE', - 'GEOCODE_STREET_NAME', 'GEOCODE_STREET_NUMBER', - 'GEOCODE_UNABLE_TO_CONVERT_DATA', 'GREEN', - 'GRID_TAB_INFO_HAS_HILLSHADE', 'GRID_TAB_INFO_MAX_VALUE', - 'GRID_TAB_INFO_MIN_VALUE', 'HOTLINK_INFO_ENABLED', - 'HOTLINK_INFO_EXPR', 'HOTLINK_INFO_MODE', 'HOTLINK_INFO_RELATIVE', - 'HOTLINK_MODE_BOTH', 'HOTLINK_MODE_LABEL', 'HOTLINK_MODE_OBJ', - 'IMAGE_CLASS_BILEVEL', 'IMAGE_CLASS_GREYSCALE', - 'IMAGE_CLASS_PALETTE', 'IMAGE_CLASS_RGB', 'IMAGE_TYPE_GRID', - 'IMAGE_TYPE_RASTER', 'INCL_ALL', 'INCL_COMMON', 'INCL_CROSSINGS', - 'ISOGRAM_AMBIENT_SPEED_DIST_UNIT', - 'ISOGRAM_AMBIENT_SPEED_TIME_UNIT', 'ISOGRAM_BANDING', - 'ISOGRAM_BATCH_SIZE', 'ISOGRAM_DEFAULT_AMBIENT_SPEED', - 'ISOGRAM_MAJOR_POLYGON_ONLY', 'ISOGRAM_MAJOR_ROADS_ONLY', - 'ISOGRAM_MAX_BANDS', 'ISOGRAM_MAX_BATCH_SIZE', - 'ISOGRAM_MAX_DISTANCE', 'ISOGRAM_MAX_DISTANCE_UNITS', - 'ISOGRAM_MAX_OFFROAD_DIST', 'ISOGRAM_MAX_OFFROAD_DIST_UNITS', - 'ISOGRAM_MAX_TIME', 'ISOGRAM_MAX_TIME_UNITS', - 'ISOGRAM_POINTS_ONLY', 'ISOGRAM_PROPAGATION_FACTOR', - 'ISOGRAM_RECORDS_INSERTED', 'ISOGRAM_RECORDS_NOTINSERTED', - 'ISOGRAM_RETURN_HOLES', 'ISOGRAM_SIMPLIFICATION_FACTOR', - 'LABEL_INFO_ANCHORX', 'LABEL_INFO_ANCHORY', 'LABEL_INFO_DRAWN', - 'LABEL_INFO_EDIT', 'LABEL_INFO_EDIT_ANCHOR', - 'LABEL_INFO_EDIT_ANGLE', 'LABEL_INFO_EDIT_FONT', - 'LABEL_INFO_EDIT_OFFSET', 'LABEL_INFO_EDIT_PEN', - 'LABEL_INFO_EDIT_POSITION', 'LABEL_INFO_EDIT_TEXT', - 'LABEL_INFO_EDIT_TEXTARROW', 'LABEL_INFO_EDIT_TEXTLINE', - 'LABEL_INFO_EDIT_VISIBILITY', 'LABEL_INFO_OBJECT', - 'LABEL_INFO_OFFSET', 'LABEL_INFO_ORIENTATION', - 'LABEL_INFO_POSITION', 'LABEL_INFO_ROWID', 'LABEL_INFO_SELECT', - 'LABEL_INFO_TABLE', 'LAYER_INFO_ARROWS', 'LAYER_INFO_CENTROIDS', - 'LAYER_INFO_COSMETIC', 'LAYER_INFO_DISPLAY', - 'LAYER_INFO_DISPLAY_GLOBAL', 'LAYER_INFO_DISPLAY_GRAPHIC', - 'LAYER_INFO_DISPLAY_OFF', 'LAYER_INFO_DISPLAY_VALUE', - 'LAYER_INFO_EDITABLE', 'LAYER_INFO_HOTLINK_COUNT', - 'LAYER_INFO_HOTLINK_EXPR', 'LAYER_INFO_HOTLINK_MODE', - 'LAYER_INFO_HOTLINK_RELATIVE', 'LAYER_INFO_LABEL_ALPHA', - 'LAYER_INFO_LABEL_ORIENT_CURVED', - 'LAYER_INFO_LABEL_ORIENT_HORIZONTAL', - 'LAYER_INFO_LABEL_ORIENT_PARALLEL', 'LAYER_INFO_LAYER_ALPHA', - 'LAYER_INFO_LAYER_TRANSLUCENCY', 'LAYER_INFO_LBL_AUTODISPLAY', - 'LAYER_INFO_LBL_CURFONT', 'LAYER_INFO_LBL_DUPLICATES', - 'LAYER_INFO_LBL_EXPR', 'LAYER_INFO_LBL_FONT', 'LAYER_INFO_LBL_LT', - 'LAYER_INFO_LBL_LT_ARROW', 'LAYER_INFO_LBL_LT_NONE', - 'LAYER_INFO_LBL_LT_SIMPLE', 'LAYER_INFO_LBL_MAX', - 'LAYER_INFO_LBL_OFFSET', 'LAYER_INFO_LBL_ORIENTATION', - 'LAYER_INFO_LBL_OVERLAP', 'LAYER_INFO_LBL_PARALLEL', - 'LAYER_INFO_LBL_PARTIALSEGS', 'LAYER_INFO_LBL_POS', - 'LAYER_INFO_LBL_POS_BC', 'LAYER_INFO_LBL_POS_BL', - 'LAYER_INFO_LBL_POS_BR', 'LAYER_INFO_LBL_POS_CC', - 'LAYER_INFO_LBL_POS_CL', 'LAYER_INFO_LBL_POS_CR', - 'LAYER_INFO_LBL_POS_TC', 'LAYER_INFO_LBL_POS_TL', - 'LAYER_INFO_LBL_POS_TR', 'LAYER_INFO_LBL_VIS_OFF', - 'LAYER_INFO_LBL_VIS_ON', 'LAYER_INFO_LBL_VIS_ZOOM', - 'LAYER_INFO_LBL_VISIBILITY', 'LAYER_INFO_LBL_ZOOM_MAX', - 'LAYER_INFO_LBL_ZOOM_MIN', 'LAYER_INFO_NAME', 'LAYER_INFO_NODES', - 'LAYER_INFO_OVR_BRUSH', 'LAYER_INFO_OVR_FONT', - 'LAYER_INFO_OVR_LINE', 'LAYER_INFO_OVR_PEN', - 'LAYER_INFO_OVR_SYMBOL', 'LAYER_INFO_PATH', - 'LAYER_INFO_SELECTABLE', 'LAYER_INFO_TYPE', - 'LAYER_INFO_TYPE_COSMETIC', 'LAYER_INFO_TYPE_GRID', - 'LAYER_INFO_TYPE_IMAGE', 'LAYER_INFO_TYPE_NORMAL', - 'LAYER_INFO_TYPE_THEMATIC', 'LAYER_INFO_TYPE_WMS', - 'LAYER_INFO_ZOOM_LAYERED', 'LAYER_INFO_ZOOM_MAX', - 'LAYER_INFO_ZOOM_MIN', 'LEGEND_INFO_MAP_ID', - 'LEGEND_INFO_NUM_FRAMES', 'LEGEND_INFO_ORIENTATION', - 'LEGEND_INFO_STYLE_SAMPLE_SIZE', 'LEGEND_STYLE_INFO_FONT', - 'LEGEND_STYLE_INFO_OBJ', 'LEGEND_STYLE_INFO_TEXT', - 'LOCATE_ABB_FILE', 'LOCATE_CLR_FILE', 'LOCATE_CUSTSYMB_DIR', - 'LOCATE_DEF_WOR', 'LOCATE_FNT_FILE', 'LOCATE_GEOCODE_SERVERLIST', - 'LOCATE_GRAPH_DIR', 'LOCATE_LAYOUT_TEMPLATE_DIR', - 'LOCATE_MNU_FILE', 'LOCATE_PEN_FILE', 'LOCATE_PREF_FILE', - 'LOCATE_PRJ_FILE', 'LOCATE_ROUTING_SERVERLIST', - 'LOCATE_THMTMPLT_DIR', 'LOCATE_WFS_SERVERLIST', - 'LOCATE_WMS_SERVERLIST', 'M_3DMAP_CLONE_VIEW', - 'M_3DMAP_PREVIOUS_VIEW', 'M_3DMAP_PROPERTIES', - 'M_3DMAP_REFRESH_GRID_TEXTURE', 'M_3DMAP_VIEW_ENTIRE_GRID', - 'M_3DMAP_VIEWPOINT_CONTROL', 'M_3DMAP_WIREFRAME', - 'M_ANALYZE_CALC_STATISTICS', 'M_ANALYZE_CUSTOMIZE_LEGEND', - 'M_ANALYZE_FIND', 'M_ANALYZE_FIND_SELECTION', - 'M_ANALYZE_INVERTSELECT', 'M_ANALYZE_SELECT', - 'M_ANALYZE_SELECTALL', 'M_ANALYZE_SHADE', 'M_ANALYZE_SQLQUERY', - 'M_ANALYZE_UNSELECT', 'M_BROWSE_EDIT', 'M_BROWSE_GRID', - 'M_BROWSE_NEW_RECORD', 'M_BROWSE_OPTIONS', 'M_BROWSE_PICK_FIELDS', - 'M_DBMS_OPEN_ODBC', 'M_EDIT_CLEAR', 'M_EDIT_CLEAROBJ', - 'M_EDIT_COPY', 'M_EDIT_CUT', 'M_EDIT_GETINFO', 'M_EDIT_NEW_ROW', - 'M_EDIT_PASTE', 'M_EDIT_PREFERENCES', 'M_EDIT_PREFERENCES_COUNTRY', - 'M_EDIT_PREFERENCES_FILE', 'M_EDIT_PREFERENCES_IMAGE_PROC', - 'M_EDIT_PREFERENCES_LAYOUT', 'M_EDIT_PREFERENCES_LEGEND', - 'M_EDIT_PREFERENCES_MAP', 'M_EDIT_PREFERENCES_OUTPUT', - 'M_EDIT_PREFERENCES_PATH', 'M_EDIT_PREFERENCES_PRINTER', - 'M_EDIT_PREFERENCES_STYLES', 'M_EDIT_PREFERENCES_SYSTEM', - 'M_EDIT_PREFERENCES_WEBSERVICES', 'M_EDIT_RESHAPE', 'M_EDIT_UNDO', - 'M_FILE_ABOUT', 'M_FILE_ADD_WORKSPACE', 'M_FILE_CLOSE', - 'M_FILE_CLOSE_ALL', 'M_FILE_CLOSE_ODBC', 'M_FILE_EXIT', - 'M_FILE_HELP', 'M_FILE_NEW', 'M_FILE_OPEN', 'M_FILE_OPEN_ODBC', - 'M_FILE_OPEN_ODBC_CONN', 'M_FILE_OPEN_UNIVERSAL_DATA', - 'M_FILE_OPEN_WFS', 'M_FILE_OPEN_WMS', 'M_FILE_PAGE_SETUP', - 'M_FILE_PRINT', 'M_FILE_PRINT_SETUP', 'M_FILE_REVERT', - 'M_FILE_RUN', 'M_FILE_SAVE', 'M_FILE_SAVE_COPY_AS', - 'M_FILE_SAVE_QUERY', 'M_FILE_SAVE_WINDOW_AS', - 'M_FILE_SAVE_WORKSPACE', 'M_FORMAT_CUSTOM_COLORS', - 'M_FORMAT_PICK_FILL', 'M_FORMAT_PICK_FONT', 'M_FORMAT_PICK_LINE', - 'M_FORMAT_PICK_SYMBOL', 'M_GRAPH_3D_VIEWING_ANGLE', - 'M_GRAPH_FORMATING', 'M_GRAPH_GENERAL_OPTIONS', - 'M_GRAPH_GRID_SCALES', 'M_GRAPH_LABEL_AXIS', - 'M_GRAPH_SAVE_AS_TEMPLATE', 'M_GRAPH_SERIES', - 'M_GRAPH_SERIES_OPTIONS', 'M_GRAPH_TITLES', 'M_GRAPH_TYPE', - 'M_GRAPH_VALUE_AXIS', 'M_HELP_ABOUT', 'M_HELP_CHECK_FOR_UPDATE', - 'M_HELP_CONNECT_MIFORUM', 'M_HELP_CONTENTS', - 'M_HELP_CONTEXTSENSITIVE', 'M_HELP_HELPMODE', - 'M_HELP_MAPINFO_3DGRAPH_HELP', 'M_HELP_MAPINFO_CONNECT_SERVICES', - 'M_HELP_MAPINFO_WWW', 'M_HELP_MAPINFO_WWW_STORE', - 'M_HELP_MAPINFO_WWW_TUTORIAL', 'M_HELP_SEARCH', - 'M_HELP_TECHSUPPORT', 'M_HELP_USE_HELP', 'M_LAYOUT_ACTUAL', - 'M_LAYOUT_ALIGN', 'M_LAYOUT_AUTOSCROLL_ONOFF', - 'M_LAYOUT_BRING2FRONT', 'M_LAYOUT_CHANGE_VIEW', - 'M_LAYOUT_DISPLAYOPTIONS', 'M_LAYOUT_DROPSHADOWS', - 'M_LAYOUT_ENTIRE', 'M_LAYOUT_LAYOUT_SIZE', 'M_LAYOUT_PREVIOUS', - 'M_LAYOUT_SEND2BACK', 'M_LEGEND_ADD_FRAMES', 'M_LEGEND_DELETE', - 'M_LEGEND_PROPERTIES', 'M_LEGEND_REFRESH', 'M_MAP_AUTOLABEL', - 'M_MAP_AUTOSCROLL_ONOFF', 'M_MAP_CHANGE_VIEW', - 'M_MAP_CLEAR_COSMETIC', 'M_MAP_CLEAR_CUSTOM_LABELS', - 'M_MAP_CLIP_REGION_ONOFF', 'M_MAP_CLONE_MAPPER', - 'M_MAP_CREATE_3DMAP', 'M_MAP_CREATE_LEGEND', - 'M_MAP_CREATE_PRISMMAP', 'M_MAP_ENTIRE_LAYER', - 'M_MAP_LAYER_CONTROL', 'M_MAP_MODIFY_THEMATIC', 'M_MAP_OPTIONS', - 'M_MAP_PREVIOUS', 'M_MAP_PROJECTION', 'M_MAP_SAVE_COSMETIC', - 'M_MAP_SET_CLIP_REGION', 'M_MAP_SETUNITS', 'M_MAP_SETUPDIGITIZER', - 'M_MAP_THEMATIC', 'M_MAPBASIC_CLEAR', 'M_MAPBASIC_SAVECONTENTS', - 'M_OBJECTS_BREAKPOLY', 'M_OBJECTS_BUFFER', - 'M_OBJECTS_CHECK_REGIONS', 'M_OBJECTS_CLEAN', - 'M_OBJECTS_CLEAR_TARGET', 'M_OBJECTS_COMBINE', - 'M_OBJECTS_CONVEX_HULL', 'M_OBJECTS_CVT_PGON', - 'M_OBJECTS_CVT_PLINE', 'M_OBJECTS_DISAGG', - 'M_OBJECTS_DRIVE_REGION', 'M_OBJECTS_ENCLOSE', 'M_OBJECTS_ERASE', - 'M_OBJECTS_ERASE_OUT', 'M_OBJECTS_MERGE', 'M_OBJECTS_OFFSET', - 'M_OBJECTS_OVERLAY', 'M_OBJECTS_POLYLINE_SPLIT', - 'M_OBJECTS_POLYLINE_SPLIT_AT_NODE', 'M_OBJECTS_RESHAPE', - 'M_OBJECTS_ROTATE', 'M_OBJECTS_SET_TARGET', 'M_OBJECTS_SMOOTH', - 'M_OBJECTS_SNAP', 'M_OBJECTS_SPLIT', 'M_OBJECTS_UNSMOOTH', - 'M_OBJECTS_VORONOI', 'M_ORACLE_CREATE_WORKSPACE', - 'M_ORACLE_DELETE_WORKSPACE', 'M_ORACLE_MERGE_PARENT', - 'M_ORACLE_REFRESH_FROM_PARENT', 'M_ORACLE_VERSION_ENABLE_OFF', - 'M_ORACLE_VERSION_ENABLE_ON', 'M_QUERY_CALC_STATISTICS', - 'M_QUERY_FIND', 'M_QUERY_FIND_ADDRESS', 'M_QUERY_FIND_SELECTION', - 'M_QUERY_FIND_SELECTION_CURRENT_MAP', 'M_QUERY_INVERTSELECT', - 'M_QUERY_SELECT', 'M_QUERY_SELECTALL', 'M_QUERY_SQLQUERY', - 'M_QUERY_UNSELECT', 'M_REDISTRICT_ADD', 'M_REDISTRICT_ASSIGN', - 'M_REDISTRICT_DELETE', 'M_REDISTRICT_OPTIONS', - 'M_REDISTRICT_TARGET', 'M_SENDMAIL_CURRENTWINDOW', - 'M_SENDMAIL_WORKSPACE', 'M_TABLE_APPEND', 'M_TABLE_BUFFER', - 'M_TABLE_CHANGESYMBOL', 'M_TABLE_CREATE_POINTS', 'M_TABLE_DELETE', - 'M_TABLE_DRIVE_REGION', 'M_TABLE_EXPORT', 'M_TABLE_GEOCODE', - 'M_TABLE_IMPORT', 'M_TABLE_MAKEMAPPABLE', - 'M_TABLE_MERGE_USING_COLUMN', 'M_TABLE_MODIFY_STRUCTURE', - 'M_TABLE_PACK', 'M_TABLE_RASTER_REG', 'M_TABLE_RASTER_STYLE', - 'M_TABLE_REFRESH', 'M_TABLE_RENAME', - 'M_TABLE_UNIVERSAL_DATA_REFRESH', 'M_TABLE_UNLINK', - 'M_TABLE_UPDATE_COLUMN', 'M_TABLE_VORONOI', 'M_TABLE_WEB_GEOCODE', - 'M_TABLE_WFS_PROPS', 'M_TABLE_WFS_REFRESH', 'M_TABLE_WMS_PROPS', - 'M_TOOLS_ADD_NODE', 'M_TOOLS_ARC', 'M_TOOLS_CRYSTAL_REPORTS_NEW', - 'M_TOOLS_CRYSTAL_REPORTS_OPEN', 'M_TOOLS_DRAGWINDOW', - 'M_TOOLS_ELLIPSE', 'M_TOOLS_EXPAND', 'M_TOOLS_FRAME', - 'M_TOOLS_HOTLINK', 'M_TOOLS_LABELER', 'M_TOOLS_LINE', - 'M_TOOLS_MAPBASIC', 'M_TOOLS_PNT_QUERY', 'M_TOOLS_POINT', - 'M_TOOLS_POLYGON', 'M_TOOLS_POLYLINE', 'M_TOOLS_RASTER_REG', - 'M_TOOLS_RECENTER', 'M_TOOLS_RECTANGLE', 'M_TOOLS_ROUNDEDRECT', - 'M_TOOLS_RULER', 'M_TOOLS_RUN', 'M_TOOLS_SEARCH_BOUNDARY', - 'M_TOOLS_SEARCH_POLYGON', 'M_TOOLS_SEARCH_RADIUS', - 'M_TOOLS_SEARCH_RECT', 'M_TOOLS_SELECTOR', 'M_TOOLS_SHRINK', - 'M_TOOLS_TEXT', 'M_TOOLS_TOOL_MANAGER', 'M_WINDOW_ARRANGEICONS', - 'M_WINDOW_BROWSE', 'M_WINDOW_BUTTONPAD', 'M_WINDOW_CASCADE', - 'M_WINDOW_EXPORT_WINDOW', 'M_WINDOW_FIRST', 'M_WINDOW_GRAPH', - 'M_WINDOW_LAYOUT', 'M_WINDOW_LEGEND', 'M_WINDOW_MAP', - 'M_WINDOW_MAPBASIC', 'M_WINDOW_MORE', 'M_WINDOW_REDISTRICT', - 'M_WINDOW_REDRAW', 'M_WINDOW_STATISTICS', 'M_WINDOW_STATUSBAR', - 'M_WINDOW_TILE', 'M_WINDOW_TOOL_PALETTE', 'MAGENTA', - 'MAP3D_INFO_BACKGROUND', 'MAP3D_INFO_CAMERA_CLIP_FAR', - 'MAP3D_INFO_CAMERA_CLIP_NEAR', 'MAP3D_INFO_CAMERA_FOCAL_X', - 'MAP3D_INFO_CAMERA_FOCAL_Y', 'MAP3D_INFO_CAMERA_FOCAL_Z', - 'MAP3D_INFO_CAMERA_VPN_1', 'MAP3D_INFO_CAMERA_VPN_2', - 'MAP3D_INFO_CAMERA_VPN_3', 'MAP3D_INFO_CAMERA_VU_1', - 'MAP3D_INFO_CAMERA_VU_2', 'MAP3D_INFO_CAMERA_VU_3', - 'MAP3D_INFO_CAMERA_X', 'MAP3D_INFO_CAMERA_Y', - 'MAP3D_INFO_CAMERA_Z', 'MAP3D_INFO_LIGHT_COLOR', - 'MAP3D_INFO_LIGHT_X', 'MAP3D_INFO_LIGHT_Y', 'MAP3D_INFO_LIGHT_Z', - 'MAP3D_INFO_RESOLUTION_X', 'MAP3D_INFO_RESOLUTION_Y', - 'MAP3D_INFO_SCALE', 'MAP3D_INFO_UNITS', 'MAPPER_INFO_AREAUNITS', - 'MAPPER_INFO_CENTERX', 'MAPPER_INFO_CENTERY', - 'MAPPER_INFO_CLIP_DISPLAY_ALL', 'MAPPER_INFO_CLIP_DISPLAY_POLYOBJ', - 'MAPPER_INFO_CLIP_OVERLAY', 'MAPPER_INFO_CLIP_REGION', - 'MAPPER_INFO_CLIP_TYPE', 'MAPPER_INFO_COORDSYS_CLAUSE', - 'MAPPER_INFO_COORDSYS_CLAUSE_WITH_BOUNDS', - 'MAPPER_INFO_COORDSYS_NAME', 'MAPPER_INFO_DISPLAY', - 'MAPPER_INFO_DISPLAY_DECIMAL', 'MAPPER_INFO_DISPLAY_DEGMINSEC', - 'MAPPER_INFO_DISPLAY_DMS', 'MAPPER_INFO_DISPLAY_MGRS', - 'MAPPER_INFO_DISPLAY_POSITION', 'MAPPER_INFO_DISPLAY_SCALE', - 'MAPPER_INFO_DISPLAY_ZOOM', 'MAPPER_INFO_DIST_CALC_TYPE', - 'MAPPER_INFO_DIST_CARTESIAN', 'MAPPER_INFO_DIST_SPHERICAL', - 'MAPPER_INFO_DISTUNITS', 'MAPPER_INFO_EDIT_LAYER', - 'MAPPER_INFO_LAYERS', 'MAPPER_INFO_MAXX', 'MAPPER_INFO_MAXY', - 'MAPPER_INFO_MERGE_MAP', 'MAPPER_INFO_MINX', 'MAPPER_INFO_MINY', - 'MAPPER_INFO_MOVE_DUPLICATE_NODES', 'MAPPER_INFO_NUM_THEMATIC', - 'MAPPER_INFO_REPROJECTION', 'MAPPER_INFO_RESAMPLING', - 'MAPPER_INFO_SCALE', 'MAPPER_INFO_SCROLLBARS', - 'MAPPER_INFO_XYUNITS', 'MAPPER_INFO_ZOOM', 'MAX_STRING_LENGTH', - 'MENUITEM_INFO_ACCELERATOR', 'MENUITEM_INFO_CHECKABLE', - 'MENUITEM_INFO_CHECKED', 'MENUITEM_INFO_ENABLED', - 'MENUITEM_INFO_HANDLER', 'MENUITEM_INFO_HELPMSG', - 'MENUITEM_INFO_ID', 'MENUITEM_INFO_SHOWHIDEABLE', - 'MENUITEM_INFO_TEXT', 'MI_CURSOR_ARROW', 'MI_CURSOR_CHANGE_WIDTH', - 'MI_CURSOR_CROSSHAIR', 'MI_CURSOR_DRAG_OBJ', - 'MI_CURSOR_FINGER_LEFT', 'MI_CURSOR_FINGER_UP', - 'MI_CURSOR_GRABBER', 'MI_CURSOR_IBEAM', 'MI_CURSOR_IBEAM_CROSS', - 'MI_CURSOR_ZOOM_IN', 'MI_CURSOR_ZOOM_OUT', 'MI_ICON_ADD_NODE', - 'MI_ICON_ARC', 'MI_ICON_ARROW', 'MI_ICON_ARROW_1', - 'MI_ICON_ARROW_10', 'MI_ICON_ARROW_11', 'MI_ICON_ARROW_12', - 'MI_ICON_ARROW_13', 'MI_ICON_ARROW_14', 'MI_ICON_ARROW_15', - 'MI_ICON_ARROW_16', 'MI_ICON_ARROW_17', 'MI_ICON_ARROW_18', - 'MI_ICON_ARROW_19', 'MI_ICON_ARROW_2', 'MI_ICON_ARROW_20', - 'MI_ICON_ARROW_21', 'MI_ICON_ARROW_3', 'MI_ICON_ARROW_4', - 'MI_ICON_ARROW_5', 'MI_ICON_ARROW_6', 'MI_ICON_ARROW_7', - 'MI_ICON_ARROW_8', 'MI_ICON_ARROW_9', 'MI_ICON_CLIP_MODE', - 'MI_ICON_CLIP_REGION', 'MI_ICON_CLOSE_ALL', - 'MI_ICON_COMMUNICATION_1', 'MI_ICON_COMMUNICATION_10', - 'MI_ICON_COMMUNICATION_11', 'MI_ICON_COMMUNICATION_12', - 'MI_ICON_COMMUNICATION_2', 'MI_ICON_COMMUNICATION_3', - 'MI_ICON_COMMUNICATION_4', 'MI_ICON_COMMUNICATION_5', - 'MI_ICON_COMMUNICATION_6', 'MI_ICON_COMMUNICATION_7', - 'MI_ICON_COMMUNICATION_8', 'MI_ICON_COMMUNICATION_9', - 'MI_ICON_COMPASS_CIRCLE_TA', 'MI_ICON_COMPASS_CONTRACT', - 'MI_ICON_COMPASS_EXPAND', 'MI_ICON_COMPASS_POLY_TA', - 'MI_ICON_COMPASS_TAG', 'MI_ICON_COMPASS_UNTAG', 'MI_ICON_COPY', - 'MI_ICON_CROSSHAIR', 'MI_ICON_CUT', 'MI_ICON_DISTRICT_MANY', - 'MI_ICON_DISTRICT_SAME', 'MI_ICON_DRAG_HANDLE', 'MI_ICON_ELLIPSE', - 'MI_ICON_EMERGENCY_1', 'MI_ICON_EMERGENCY_10', - 'MI_ICON_EMERGENCY_11', 'MI_ICON_EMERGENCY_12', - 'MI_ICON_EMERGENCY_13', 'MI_ICON_EMERGENCY_14', - 'MI_ICON_EMERGENCY_15', 'MI_ICON_EMERGENCY_16', - 'MI_ICON_EMERGENCY_17', 'MI_ICON_EMERGENCY_18', - 'MI_ICON_EMERGENCY_2', 'MI_ICON_EMERGENCY_3', - 'MI_ICON_EMERGENCY_4', 'MI_ICON_EMERGENCY_5', - 'MI_ICON_EMERGENCY_6', 'MI_ICON_EMERGENCY_7', - 'MI_ICON_EMERGENCY_8', 'MI_ICON_EMERGENCY_9', 'MI_ICON_GRABBER', - 'MI_ICON_GRAPH_SELECT', 'MI_ICON_HELP', 'MI_ICON_HOT_LINK', - 'MI_ICON_INFO', 'MI_ICON_INVERTSELECT', 'MI_ICON_LABEL', - 'MI_ICON_LAYERS', 'MI_ICON_LEGEND', 'MI_ICON_LETTERS_A', - 'MI_ICON_LETTERS_B', 'MI_ICON_LETTERS_C', 'MI_ICON_LETTERS_D', - 'MI_ICON_LETTERS_E', 'MI_ICON_LETTERS_F', 'MI_ICON_LETTERS_G', - 'MI_ICON_LETTERS_H', 'MI_ICON_LETTERS_I', 'MI_ICON_LETTERS_J', - 'MI_ICON_LETTERS_K', 'MI_ICON_LETTERS_L', 'MI_ICON_LETTERS_M', - 'MI_ICON_LETTERS_N', 'MI_ICON_LETTERS_O', 'MI_ICON_LETTERS_P', - 'MI_ICON_LETTERS_Q', 'MI_ICON_LETTERS_R', 'MI_ICON_LETTERS_S', - 'MI_ICON_LETTERS_T', 'MI_ICON_LETTERS_U', 'MI_ICON_LETTERS_V', - 'MI_ICON_LETTERS_W', 'MI_ICON_LETTERS_X', 'MI_ICON_LETTERS_Y', - 'MI_ICON_LETTERS_Z', 'MI_ICON_LINE', 'MI_ICON_LINE_STYLE', - 'MI_ICON_MAPSYMB_1', 'MI_ICON_MAPSYMB_10', 'MI_ICON_MAPSYMB_11', - 'MI_ICON_MAPSYMB_12', 'MI_ICON_MAPSYMB_13', 'MI_ICON_MAPSYMB_14', - 'MI_ICON_MAPSYMB_15', 'MI_ICON_MAPSYMB_16', 'MI_ICON_MAPSYMB_17', - 'MI_ICON_MAPSYMB_18', 'MI_ICON_MAPSYMB_19', 'MI_ICON_MAPSYMB_2', - 'MI_ICON_MAPSYMB_20', 'MI_ICON_MAPSYMB_21', 'MI_ICON_MAPSYMB_22', - 'MI_ICON_MAPSYMB_23', 'MI_ICON_MAPSYMB_24', 'MI_ICON_MAPSYMB_25', - 'MI_ICON_MAPSYMB_26', 'MI_ICON_MAPSYMB_3', 'MI_ICON_MAPSYMB_4', - 'MI_ICON_MAPSYMB_5', 'MI_ICON_MAPSYMB_6', 'MI_ICON_MAPSYMB_7', - 'MI_ICON_MAPSYMB_8', 'MI_ICON_MAPSYMB_9', 'MI_ICON_MARITIME_1', - 'MI_ICON_MARITIME_10', 'MI_ICON_MARITIME_2', 'MI_ICON_MARITIME_3', - 'MI_ICON_MARITIME_4', 'MI_ICON_MARITIME_5', 'MI_ICON_MARITIME_6', - 'MI_ICON_MARITIME_7', 'MI_ICON_MARITIME_8', 'MI_ICON_MARITIME_9', - 'MI_ICON_MB_1', 'MI_ICON_MB_10', 'MI_ICON_MB_11', 'MI_ICON_MB_12', - 'MI_ICON_MB_13', 'MI_ICON_MB_14', 'MI_ICON_MB_2', 'MI_ICON_MB_3', - 'MI_ICON_MB_4', 'MI_ICON_MB_5', 'MI_ICON_MB_6', 'MI_ICON_MB_7', - 'MI_ICON_MB_8', 'MI_ICON_MB_9', 'MI_ICON_MISC_1', - 'MI_ICON_MISC_10', 'MI_ICON_MISC_11', 'MI_ICON_MISC_12', - 'MI_ICON_MISC_13', 'MI_ICON_MISC_14', 'MI_ICON_MISC_15', - 'MI_ICON_MISC_16', 'MI_ICON_MISC_17', 'MI_ICON_MISC_18', - 'MI_ICON_MISC_19', 'MI_ICON_MISC_2', 'MI_ICON_MISC_20', - 'MI_ICON_MISC_21', 'MI_ICON_MISC_22', 'MI_ICON_MISC_23', - 'MI_ICON_MISC_24', 'MI_ICON_MISC_25', 'MI_ICON_MISC_26', - 'MI_ICON_MISC_27', 'MI_ICON_MISC_28', 'MI_ICON_MISC_29', - 'MI_ICON_MISC_3', 'MI_ICON_MISC_30', 'MI_ICON_MISC_31', - 'MI_ICON_MISC_4', 'MI_ICON_MISC_5', 'MI_ICON_MISC_6', - 'MI_ICON_MISC_7', 'MI_ICON_MISC_8', 'MI_ICON_MISC_9', - 'MI_ICON_NEW_DOC', 'MI_ICON_NUMBERS_1', 'MI_ICON_NUMBERS_10', - 'MI_ICON_NUMBERS_11', 'MI_ICON_NUMBERS_12', 'MI_ICON_NUMBERS_13', - 'MI_ICON_NUMBERS_14', 'MI_ICON_NUMBERS_15', 'MI_ICON_NUMBERS_16', - 'MI_ICON_NUMBERS_17', 'MI_ICON_NUMBERS_18', 'MI_ICON_NUMBERS_19', - 'MI_ICON_NUMBERS_2', 'MI_ICON_NUMBERS_20', 'MI_ICON_NUMBERS_21', - 'MI_ICON_NUMBERS_22', 'MI_ICON_NUMBERS_23', 'MI_ICON_NUMBERS_24', - 'MI_ICON_NUMBERS_25', 'MI_ICON_NUMBERS_26', 'MI_ICON_NUMBERS_27', - 'MI_ICON_NUMBERS_28', 'MI_ICON_NUMBERS_29', 'MI_ICON_NUMBERS_3', - 'MI_ICON_NUMBERS_30', 'MI_ICON_NUMBERS_31', 'MI_ICON_NUMBERS_32', - 'MI_ICON_NUMBERS_4', 'MI_ICON_NUMBERS_5', 'MI_ICON_NUMBERS_6', - 'MI_ICON_NUMBERS_7', 'MI_ICON_NUMBERS_8', 'MI_ICON_NUMBERS_9', - 'MI_ICON_ODBC_DISCONNECT', 'MI_ICON_ODBC_MAPPABLE', - 'MI_ICON_ODBC_OPEN', 'MI_ICON_ODBC_REFRESH', 'MI_ICON_ODBC_SYMBOL', - 'MI_ICON_ODBC_UNLINK', 'MI_ICON_OPEN_FILE', 'MI_ICON_OPEN_WOR', - 'MI_ICON_OPENWFS', 'MI_ICON_OPENWMS', 'MI_ICON_PASTE', - 'MI_ICON_POLYGON', 'MI_ICON_POLYLINE', 'MI_ICON_PRINT', - 'MI_ICON_REALESTATE_1', 'MI_ICON_REALESTATE_10', - 'MI_ICON_REALESTATE_11', 'MI_ICON_REALESTATE_12', - 'MI_ICON_REALESTATE_13', 'MI_ICON_REALESTATE_14', - 'MI_ICON_REALESTATE_15', 'MI_ICON_REALESTATE_16', - 'MI_ICON_REALESTATE_17', 'MI_ICON_REALESTATE_18', - 'MI_ICON_REALESTATE_19', 'MI_ICON_REALESTATE_2', - 'MI_ICON_REALESTATE_20', 'MI_ICON_REALESTATE_21', - 'MI_ICON_REALESTATE_22', 'MI_ICON_REALESTATE_23', - 'MI_ICON_REALESTATE_3', 'MI_ICON_REALESTATE_4', - 'MI_ICON_REALESTATE_5', 'MI_ICON_REALESTATE_6', - 'MI_ICON_REALESTATE_7', 'MI_ICON_REALESTATE_8', - 'MI_ICON_REALESTATE_9', 'MI_ICON_RECT', 'MI_ICON_REGION_STYLE', - 'MI_ICON_RESHAPE', 'MI_ICON_ROUND_RECT', 'MI_ICON_RULER', - 'MI_ICON_RUN', 'MI_ICON_SAVE_FILE', 'MI_ICON_SAVE_WIN', - 'MI_ICON_SAVE_WOR', 'MI_ICON_SEARCH_BDY', 'MI_ICON_SEARCH_POLYGON', - 'MI_ICON_SEARCH_RADIUS', 'MI_ICON_SEARCH_RECT', 'MI_ICON_SIGNS_1', - 'MI_ICON_SIGNS_10', 'MI_ICON_SIGNS_11', 'MI_ICON_SIGNS_12', - 'MI_ICON_SIGNS_13', 'MI_ICON_SIGNS_14', 'MI_ICON_SIGNS_15', - 'MI_ICON_SIGNS_16', 'MI_ICON_SIGNS_17', 'MI_ICON_SIGNS_18', - 'MI_ICON_SIGNS_19', 'MI_ICON_SIGNS_2', 'MI_ICON_SIGNS_3', - 'MI_ICON_SIGNS_4', 'MI_ICON_SIGNS_5', 'MI_ICON_SIGNS_6', - 'MI_ICON_SIGNS_7', 'MI_ICON_SIGNS_8', 'MI_ICON_SIGNS_9', - 'MI_ICON_STATISTICS', 'MI_ICON_SYMBOL', 'MI_ICON_SYMBOL_STYLE', - 'MI_ICON_TEXT', 'MI_ICON_TEXT_STYLE', 'MI_ICON_TRANSPORT_1', - 'MI_ICON_TRANSPORT_10', 'MI_ICON_TRANSPORT_11', - 'MI_ICON_TRANSPORT_12', 'MI_ICON_TRANSPORT_13', - 'MI_ICON_TRANSPORT_14', 'MI_ICON_TRANSPORT_15', - 'MI_ICON_TRANSPORT_16', 'MI_ICON_TRANSPORT_17', - 'MI_ICON_TRANSPORT_18', 'MI_ICON_TRANSPORT_19', - 'MI_ICON_TRANSPORT_2', 'MI_ICON_TRANSPORT_20', - 'MI_ICON_TRANSPORT_21', 'MI_ICON_TRANSPORT_22', - 'MI_ICON_TRANSPORT_23', 'MI_ICON_TRANSPORT_24', - 'MI_ICON_TRANSPORT_25', 'MI_ICON_TRANSPORT_26', - 'MI_ICON_TRANSPORT_27', 'MI_ICON_TRANSPORT_3', - 'MI_ICON_TRANSPORT_4', 'MI_ICON_TRANSPORT_5', - 'MI_ICON_TRANSPORT_6', 'MI_ICON_TRANSPORT_7', - 'MI_ICON_TRANSPORT_8', 'MI_ICON_TRANSPORT_9', 'MI_ICON_UNDO', - 'MI_ICON_UNSELECT_ALL', 'MI_ICON_WINDOW_FRAME', 'MI_ICON_WRENCH', - 'MI_ICON_ZOOM_IN', 'MI_ICON_ZOOM_OUT', 'MI_ICON_ZOOM_QUESTION', - 'MI_ICONS_MAPS_1', 'MI_ICONS_MAPS_10', 'MI_ICONS_MAPS_11', - 'MI_ICONS_MAPS_12', 'MI_ICONS_MAPS_13', 'MI_ICONS_MAPS_14', - 'MI_ICONS_MAPS_15', 'MI_ICONS_MAPS_2', 'MI_ICONS_MAPS_3', - 'MI_ICONS_MAPS_4', 'MI_ICONS_MAPS_5', 'MI_ICONS_MAPS_6', - 'MI_ICONS_MAPS_7', 'MI_ICONS_MAPS_8', 'MI_ICONS_MAPS_9', - 'MIPLATFORM_HP', 'MIPLATFORM_MAC68K', 'MIPLATFORM_POWERMAC', - 'MIPLATFORM_SPECIAL', 'MIPLATFORM_SUN', 'MIPLATFORM_WIN16', - 'MIPLATFORM_WIN32', 'MODE_APPEND', 'MODE_BINARY', 'MODE_INPUT', - 'MODE_OUTPUT', 'MODE_RANDOM', 'OBJ_ARC', 'OBJ_ELLIPSE', - 'OBJ_FRAME', 'OBJ_GEO_ARCBEGANGLE', 'OBJ_GEO_ARCENDANGLE', - 'OBJ_GEO_CENTROID', 'OBJ_GEO_LINEBEGX', 'OBJ_GEO_LINEBEGY', - 'OBJ_GEO_LINEENDX', 'OBJ_GEO_LINEENDY', 'OBJ_GEO_MAXX', - 'OBJ_GEO_MAXY', 'OBJ_GEO_MINX', 'OBJ_GEO_MINY', 'OBJ_GEO_POINTM', - 'OBJ_GEO_POINTX', 'OBJ_GEO_POINTY', 'OBJ_GEO_POINTZ', - 'OBJ_GEO_ROUNDRADIUS', 'OBJ_GEO_TEXTANGLE', 'OBJ_GEO_TEXTLINEX', - 'OBJ_GEO_TEXTLINEY', 'OBJ_INFO_BRUSH', 'OBJ_INFO_FILLFRAME', - 'OBJ_INFO_FRAMETITLE', 'OBJ_INFO_FRAMEWIN', 'OBJ_INFO_HAS_M', - 'OBJ_INFO_HAS_Z', 'OBJ_INFO_MPOINT', 'OBJ_INFO_NONEMPTY', - 'OBJ_INFO_NPNTS', 'OBJ_INFO_NPOLYGONS', 'OBJ_INFO_PEN', - 'OBJ_INFO_PLINE', 'OBJ_INFO_REGION', 'OBJ_INFO_SMOOTH', - 'OBJ_INFO_SYMBOL', 'OBJ_INFO_TEXTARROW', 'OBJ_INFO_TEXTFONT', - 'OBJ_INFO_TEXTJUSTIFY', 'OBJ_INFO_TEXTSPACING', - 'OBJ_INFO_TEXTSTRING', 'OBJ_INFO_TYPE', 'OBJ_INFO_Z_UNIT', - 'OBJ_INFO_Z_UNIT_SET', 'OBJ_LINE', 'OBJ_PLINE', 'OBJ_POINT', - 'OBJ_RECT', 'OBJ_REGION', 'OBJ_ROUNDRECT', 'OBJ_TEXT', - 'OBJ_TYPE_ARC', 'OBJ_TYPE_COLLECTION', 'OBJ_TYPE_ELLIPSE', - 'OBJ_TYPE_FRAME', 'OBJ_TYPE_LINE', 'OBJ_TYPE_MPOINT', - 'OBJ_TYPE_PLINE', 'OBJ_TYPE_POINT', 'OBJ_TYPE_RECT', - 'OBJ_TYPE_REGION', 'OBJ_TYPE_ROUNDRECT', 'OBJ_TYPE_TEXT', - 'ORIENTATION_CUSTOM', 'ORIENTATION_LANDSCAPE', - 'ORIENTATION_PORTRAIT', 'PEN_COLOR', 'PEN_INDEX', - 'PEN_INTERLEAVED', 'PEN_PATTERN', 'PEN_WIDTH', 'PLATFORM_MAC', - 'PLATFORM_MOTIF', 'PLATFORM_SPECIAL', 'PLATFORM_WIN', - 'PLATFORM_X11', 'PLATFORM_XOL', 'PRISMMAP_INFO_BACKGROUND', - 'PRISMMAP_INFO_CAMERA_CLIP_FAR', 'PRISMMAP_INFO_CAMERA_CLIP_NEAR', - 'PRISMMAP_INFO_CAMERA_FOCAL_X', 'PRISMMAP_INFO_CAMERA_FOCAL_Y', - 'PRISMMAP_INFO_CAMERA_FOCAL_Z', 'PRISMMAP_INFO_CAMERA_VPN_1', - 'PRISMMAP_INFO_CAMERA_VPN_2', 'PRISMMAP_INFO_CAMERA_VPN_3', - 'PRISMMAP_INFO_CAMERA_VU_1', 'PRISMMAP_INFO_CAMERA_VU_2', - 'PRISMMAP_INFO_CAMERA_VU_3', 'PRISMMAP_INFO_CAMERA_X', - 'PRISMMAP_INFO_CAMERA_Y', 'PRISMMAP_INFO_CAMERA_Z', - 'PRISMMAP_INFO_INFOTIP_EXPR', 'PRISMMAP_INFO_LIGHT_COLOR', - 'PRISMMAP_INFO_LIGHT_X', 'PRISMMAP_INFO_LIGHT_Y', - 'PRISMMAP_INFO_LIGHT_Z', 'PRISMMAP_INFO_SCALE', 'RAD_2_DEG', - 'RASTER_CONTROL_POINT_X', 'RASTER_CONTROL_POINT_Y', - 'RASTER_TAB_INFO_ALPHA', 'RASTER_TAB_INFO_BITS_PER_PIXEL', - 'RASTER_TAB_INFO_BRIGHTNESS', 'RASTER_TAB_INFO_CONTRAST', - 'RASTER_TAB_INFO_DISPLAY_TRANSPARENT', 'RASTER_TAB_INFO_GREYSCALE', - 'RASTER_TAB_INFO_HEIGHT', 'RASTER_TAB_INFO_IMAGE_CLASS', - 'RASTER_TAB_INFO_IMAGE_NAME', 'RASTER_TAB_INFO_IMAGE_TYPE', - 'RASTER_TAB_INFO_NUM_CONTROL_POINTS', - 'RASTER_TAB_INFO_TRANSPARENT_COLOR', 'RASTER_TAB_INFO_WIDTH', - 'RED', 'REGION_INFO_IS_CLOCKWISE', 'SEARCH_INFO_ROW', - 'SEARCH_INFO_TABLE', 'SECONDS_PER_DAY', 'SEL_INFO_NROWS', - 'SEL_INFO_SELNAME', 'SEL_INFO_TABLENAME', - 'SESSION_INFO_AREA_UNITS', 'SESSION_INFO_COORDSYS_CLAUSE', - 'SESSION_INFO_DISTANCE_UNITS', 'SESSION_INFO_PAPER_UNITS', - 'SRV_COL_INFO_ALIAS', 'SRV_COL_INFO_NAME', - 'SRV_COL_INFO_PRECISION', 'SRV_COL_INFO_SCALE', - 'SRV_COL_INFO_STATUS', 'SRV_COL_INFO_TYPE', 'SRV_COL_INFO_VALUE', - 'SRV_COL_INFO_WIDTH', 'SRV_COL_TYPE_BIN_STRING', - 'SRV_COL_TYPE_CHAR', 'SRV_COL_TYPE_DATE', 'SRV_COL_TYPE_DECIMAL', - 'SRV_COL_TYPE_FIXED_LEN_STRING', 'SRV_COL_TYPE_FLOAT', - 'SRV_COL_TYPE_INTEGER', 'SRV_COL_TYPE_LOGICAL', - 'SRV_COL_TYPE_NONE', 'SRV_COL_TYPE_SMALLINT', - 'SRV_CONNECT_INFO_DB_NAME', 'SRV_CONNECT_INFO_DRIVER_NAME', - 'SRV_CONNECT_INFO_DS_NAME', 'SRV_CONNECT_INFO_QUOTE_CHAR', - 'SRV_CONNECT_INFO_SQL_USER_ID', 'SRV_DRV_DATA_SOURCE', - 'SRV_DRV_INFO_NAME', 'SRV_DRV_INFO_NAME_LIST', 'SRV_ERROR', - 'SRV_FETCH_FIRST', 'SRV_FETCH_LAST', 'SRV_FETCH_NEXT', - 'SRV_FETCH_PREV', 'SRV_INVALID_HANDLE', 'SRV_NEED_DATA', - 'SRV_NO_MORE_DATA', 'SRV_NULL_DATA', 'SRV_SUCCESS', - 'SRV_SUCCESS_WITH_INFO', 'SRV_TRUNCATED_DATA', - 'SRV_WM_HIST_NO_OVERWRITE', 'SRV_WM_HIST_NONE', - 'SRV_WM_HIST_OVERWRITE', 'STR_EQ', 'STR_GT', 'STR_LT', - 'STYLE_SAMPLE_SIZE_LARGE', 'STYLE_SAMPLE_SIZE_SMALL', - 'SWITCHING_INTO_MAPINFO', 'SWITCHING_OUT_OF_MAPINFO', - 'SYMBOL_ANGLE', 'SYMBOL_CODE', 'SYMBOL_COLOR', - 'SYMBOL_CUSTOM_NAME', 'SYMBOL_CUSTOM_STYLE', 'SYMBOL_FONT_NAME', - 'SYMBOL_FONT_STYLE', 'SYMBOL_KIND', 'SYMBOL_KIND_CUSTOM', - 'SYMBOL_KIND_FONT', 'SYMBOL_KIND_VECTOR', 'SYMBOL_POINTSIZE', - 'SYS_INFO_APPIDISPATCH', 'SYS_INFO_APPLICATIONWND', - 'SYS_INFO_APPVERSION', 'SYS_INFO_CHARSET', - 'SYS_INFO_COPYPROTECTED', 'SYS_INFO_DATE_FORMAT', - 'SYS_INFO_DDESTATUS', 'SYS_INFO_DIG_INSTALLED', - 'SYS_INFO_DIG_MODE', 'SYS_INFO_MAPINFOWND', - 'SYS_INFO_MDICLIENTWND', 'SYS_INFO_MIBUILD_NUMBER', - 'SYS_INFO_MIPLATFORM', 'SYS_INFO_MIVERSION', - 'SYS_INFO_NUMBER_FORMAT', 'SYS_INFO_PLATFORM', - 'SYS_INFO_PRODUCTLEVEL', 'SYS_INFO_RUNTIME', - 'TAB_GEO_CONTROL_POINT_X', 'TAB_GEO_CONTROL_POINT_Y', - 'TAB_INFO_BROWSER_LIST', 'TAB_INFO_COORDSYS_CLAUSE', - 'TAB_INFO_COORDSYS_CLAUSE_WITHOUT_BOUNDS', - 'TAB_INFO_COORDSYS_MAXX', 'TAB_INFO_COORDSYS_MAXY', - 'TAB_INFO_COORDSYS_MINX', 'TAB_INFO_COORDSYS_MINY', - 'TAB_INFO_COORDSYS_NAME', 'TAB_INFO_EDITED', 'TAB_INFO_FASTEDIT', - 'TAB_INFO_MAPPABLE', 'TAB_INFO_MAPPABLE_TABLE', 'TAB_INFO_MAXX', - 'TAB_INFO_MAXY', 'TAB_INFO_MINX', 'TAB_INFO_MINY', 'TAB_INFO_NAME', - 'TAB_INFO_NCOLS', 'TAB_INFO_NREFS', 'TAB_INFO_NROWS', - 'TAB_INFO_NUM', 'TAB_INFO_READONLY', 'TAB_INFO_SEAMLESS', - 'TAB_INFO_SUPPORT_MZ', 'TAB_INFO_TABFILE', 'TAB_INFO_TEMP', - 'TAB_INFO_THEME_METADATA', 'TAB_INFO_TYPE', 'TAB_INFO_UNDO', - 'TAB_INFO_USERBROWSE', 'TAB_INFO_USERCLOSE', - 'TAB_INFO_USERDISPLAYMAP', 'TAB_INFO_USEREDITABLE', - 'TAB_INFO_USERMAP', 'TAB_INFO_USERREMOVEMAP', 'TAB_INFO_Z_UNIT', - 'TAB_INFO_Z_UNIT_SET', 'TAB_TYPE_BASE', 'TAB_TYPE_FME', - 'TAB_TYPE_IMAGE', 'TAB_TYPE_LINKED', 'TAB_TYPE_RESULT', - 'TAB_TYPE_VIEW', 'TAB_TYPE_WFS', 'TAB_TYPE_WMS', 'TRUE', 'WHITE', - 'WIN_3DMAP', 'WIN_BROWSER', 'WIN_BUTTONPAD', 'WIN_CART_LEGEND', - 'WIN_GRAPH', 'WIN_HELP', 'WIN_INFO', 'WIN_INFO_AUTOSCROLL', - 'WIN_INFO_CLONEWINDOW', 'WIN_INFO_ENHANCED_RENDERING', - 'WIN_INFO_EXPORT_ANTIALIASING', 'WIN_INFO_EXPORT_BORDER', - 'WIN_INFO_EXPORT_DITHER', 'WIN_INFO_EXPORT_FILTER', - 'WIN_INFO_EXPORT_MASKSIZE', 'WIN_INFO_EXPORT_THRESHOLD', - 'WIN_INFO_EXPORT_TRANSPRASTER', 'WIN_INFO_EXPORT_TRANSPVECTOR', - 'WIN_INFO_EXPORT_TRUECOLOR', 'WIN_INFO_HEIGHT', - 'WIN_INFO_LEGENDS_MAP', 'WIN_INFO_NAME', 'WIN_INFO_OPEN', - 'WIN_INFO_PRINTER_BORDER', 'WIN_INFO_PRINTER_BOTTOMMARGIN', - 'WIN_INFO_PRINTER_COPIES', 'WIN_INFO_PRINTER_DITHER', - 'WIN_INFO_PRINTER_LEFTMARGIN', 'WIN_INFO_PRINTER_METHOD', - 'WIN_INFO_PRINTER_NAME', 'WIN_INFO_PRINTER_ORIENT', - 'WIN_INFO_PRINTER_PAPERSIZE', 'WIN_INFO_PRINTER_RIGHTMARGIN', - 'WIN_INFO_PRINTER_SCALE_PATTERNS', 'WIN_INFO_PRINTER_TOPMARGIN', - 'WIN_INFO_PRINTER_TRANSPRASTER', 'WIN_INFO_PRINTER_TRANSPVECTOR', - 'WIN_INFO_PRINTER_TRUECOLOR', 'WIN_INFO_SMARTPAN', - 'WIN_INFO_SMOOTH_IMAGE', 'WIN_INFO_SMOOTH_TEXT', - 'WIN_INFO_SMOOTH_VECTOR', 'WIN_INFO_SNAPMODE', - 'WIN_INFO_SNAPTHRESHOLD', 'WIN_INFO_STATE', - 'WIN_INFO_SYSMENUCLOSE', 'WIN_INFO_TABLE', 'WIN_INFO_TOPMOST', - 'WIN_INFO_TYPE', 'WIN_INFO_WIDTH', 'WIN_INFO_WINDOWID', - 'WIN_INFO_WND', 'WIN_INFO_WORKSPACE', 'WIN_INFO_X', 'WIN_INFO_Y', - 'WIN_LAYOUT', 'WIN_LEGEND', 'WIN_MAPBASIC', 'WIN_MAPINFO', - 'WIN_MAPPER', 'WIN_MESSAGE', 'WIN_PENPICKER', - 'WIN_PRINTER_LANDSCAPE', 'WIN_PRINTER_PORTRAIT', 'WIN_RULER', - 'WIN_STATE_MAXIMIZED', 'WIN_STATE_MINIMIZED', 'WIN_STATE_NORMAL', - 'WIN_STATISTICS', 'WIN_STYLE_CHILD', 'WIN_STYLE_POPUP', - 'WIN_STYLE_POPUP_FULLCAPTION', 'WIN_STYLE_STANDARD', - 'WIN_SYMBOLPICKER', 'WIN_TOOLBAR', 'WIN_TOOLPICKER', 'YELLOW' - ), - 5 => array( - 'Abbrs', 'Above', 'Access', 'Active', 'Address', 'Advanced', - 'Affine', 'Align', 'Alpha', 'alpha_value', 'Always', 'Angle', - 'Animate', 'Antialiasing', 'Append', 'Apply', 'ApplyUpdates', - 'Arrow', 'Ascending', 'ASCII', 'At', 'AttributeData', 'Auto', - 'Autoflip', 'Autokey', 'Automatic', 'Autoscroll', 'Axis', - 'Background', 'Banding', 'Batch', 'Behind', 'Below', 'Bend', - 'Binary', 'Blocks', 'Border', 'BorderPen', 'Bottom', 'Bounds', - 'ByteOrder', 'ByVal', 'Calling', 'Camera', 'Candidates', - 'Cartesian', 'Cell', 'Center', 'Change', 'Char', 'Circle', - 'Clipping', 'CloseMatchesOnly', 'ClosestAddr', 'Color', 'Columns', - 'Contents', 'ControlPoints', 'Copies', 'Copyright', 'Counter', - 'Country', 'CountrySecondarySubdivision', 'CountrySubdivision', - 'Cross', 'CubicConvolution', 'Cull', 'Cursor', 'Custom', 'Data', - 'DBF', 'DDE', 'Decimal', 'DecimalPlaces', 'DefaultAmbientSpeed', - 'DefaultPropagationFactor', 'DeformatNumber', 'Delimiter', - 'Density', 'DenyWrite', 'Descending', 'Destroy', 'Device', - 'Dictionary', 'DInfo', 'Disable', 'DiscardUpdates', 'Display', - 'Dither', 'DrawMode', 'DropKey', 'Droplines', 'Duplicates', - 'Dynamic', 'Earth', 'East', 'EditLayerPopup', 'Elevation', 'Else', - 'ElseIf', 'Emf', 'Enable', 'Envinsa', 'ErrorDiffusion', 'Extents', - 'Fallback', 'FastEdit', 'FillFrame', 'Filter', 'First', 'Fit', - 'Fixed', 'FocalPoint', 'Footnote', 'Force', 'FromMapCatalog', - 'Front', 'Gap', 'Geographic', 'Geography', 'Graduated', 'Graphic', - 'Gutter', 'Half', 'Halftone', 'Handles', 'Height', 'Help', - 'HelpMsg', 'Hide', 'Hierarchical', 'HIGHLOW', 'History', 'Icon', - 'ID', 'Ignore', 'Image', 'Inflect', 'Inset', 'Inside', - 'Interactive', 'Internal', 'Interpolate', 'IntersectingStreet', - 'Justify', 'Key', 'Label', 'Labels', 'Landscape', 'Large', 'Last', - 'Layer', 'Left', 'Lib', 'Light', 'LinePen', 'Lines', 'Linestyle', - 'Longitude', 'LOWHIGH', 'Major', 'MajorPolygonOnly', - 'MajorRoadsOnly', 'MapBounds', 'MapMarker', 'MapString', 'Margins', - 'MarkMultiple', 'MaskSize', 'Match', 'MaxOffRoadDistance', - 'Message', 'MICODE', 'Minor', 'MixedCase', 'Mode', 'ModifierKeys', - 'Modify', 'Multiple', 'MultiPolygonRgns', 'Municipality', - 'MunicipalitySubdivision', 'Name', 'NATIVE', 'NearestNeighbor', - 'NoCollision', 'Node', 'Nodes', 'NoIndex', 'None', 'Nonearth', - 'NoRefresh', 'Normalized', 'North', 'Number', 'ObjectType', 'ODBC', - 'Off', 'OK', 'OLE', 'On', 'Options', 'Orientation', 'OtherBdy', - 'Output', 'Outside', 'Overlapped', 'Overwrite', 'Pagebreaks', - 'Pan', 'Papersize', 'Parent', 'PassThrough', 'Password', - 'Patterns', 'Per', 'Percent', 'Percentage', 'Permanent', - 'PersistentCache', 'Pie', 'Pitch', 'Placename', 'PointsOnly', - 'PolyObj', 'Portrait', 'Position', 'PostalCode', 'Prefer', - 'Preferences', 'Prev', 'Printer', 'Projection', 'PushButton', - 'Quantile', 'Query', 'Random', 'Range', 'Raster', 'Read', - 'ReadOnly', 'Rec', 'Redraw', 'Refine', 'Regionstyle', 'RemoveData', - 'Replace', 'Reprojection', 'Resampling', 'Restore', 'ResultCode', - 'ReturnHoles', 'Right', 'Roll', 'ROP', 'Rotated', 'Row', 'Ruler', - 'Scale', 'ScrollBars', 'Seamless', 'SecondaryPostalCode', - 'SelfInt', 'Separator', 'Series', 'Service', 'SetKey', - 'SetTraverse', 'Shades', 'Show', 'Simple', 'SimplificationFactor', - 'Size', 'Small', 'Smart', 'Smooth', 'South', 'Spacing', - 'SPATIALWARE', 'Spherical', 'Square', 'Stacked', 'Step', 'Store', - 'Street', 'StreetName', 'StreetNumber', 'StyleType', 'Subtitle', - 'SysMenuClose', 'Thin', 'Tick', 'Title', 'TitleAxisY', - 'TitleGroup', 'Titles', 'TitleSeries', 'ToggleButton', 'Tolerance', - 'ToolbarPosition', 'ToolButton', 'Toolkit', 'Top', 'Translucency', - 'translucency_percent', 'Transparency', 'Transparent', 'Traverse', - 'TrueColor', 'Uncheck', 'Undo', 'Union', 'Unit', 'Until', 'URL', - 'Use', 'User', 'UserBrowse', 'UserClose', 'UserDisplayMap', - 'UserEdit', 'UserMap', 'UserRemoveMap', 'Value', 'Variable', - 'Vary', 'Vector', 'Versioned', 'View', 'ViewDisplayPopup', - 'VisibleOnly', 'VMDefault', 'VMGrid', 'VMRaster', 'Voronoi', - 'Warnings', 'Wedge', 'West', 'Width', 'With', 'XY', 'XYINDEX', - 'Yaw', 'Zoom' - ) - ), - 'SYMBOLS' => array( - //Numeric/String Operators + Comparison Operators - '(', ')', '[', ']', '+', '-', '*', '/', '\\', '^', '&', - '=', '<', '>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000ff;', //Statements + Clauses + Data Types + Logical Operators, Geographical Operators + SQL - 2 => 'color: #2391af;', //Special Procedures - 3 => 'color: #2391af;', //Functions - 4 => 'color: #c635cb;', //Constants - 5 => 'color: #0000ff;' //Extended keywords (case sensitive) - ), - 'COMMENTS' => array( - 1 => 'color: #008000;', - 'MULTI' => 'color: #008000;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #a31515;' - ), - 'NUMBERS' => array( - 0 => 'color: #000000;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;' - ), - 'ESCAPE_CHAR' => array( - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 0 => 'color: #12198b;', //Table Attributes - 1 => 'color: #2391af;' //Data Types - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Table Attribute - 0 => "[\\.]{1}[a-zA-Z0-9_]+", - //Data Type - 1 => "(?xi) \\s+ as \\s+ (Alias|Brush|Date|Float|Font|Integer|Logical|Object|Pen|SmallInt|String|Symbol)" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/matlab.php b/library/Vendors/geshi/geshi/matlab.php deleted file mode 100644 index 1f9c12b7..00000000 --- a/library/Vendors/geshi/geshi/matlab.php +++ /dev/null @@ -1,227 +0,0 @@ - 'Matlab M', - 'COMMENT_SINGLE' => array(1 => '%'), - 'COMMENT_MULTI' => array(), - //Matlab Strings - 'COMMENT_REGEXP' => array( - 2 => "/(? GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'break', 'case', 'catch', 'continue', 'elseif', 'else', 'end', 'for', - 'function', 'global', 'if', 'otherwise', 'persistent', 'return', - 'switch', 'try', 'while' - ), - 2 => array( - 'all','any','exist','is','logical','mislocked', - - 'abs','acos','acosh','acot','acoth','acsc','acsch','airy','angle', - 'ans','area','asec','asech','asin','asinh','atan','atan2','atanh', - 'auread','autumn','auwrite','axes','axis','balance','bar','bar3', - 'bar3h','barh','besselh','besseli','besselj','besselk','Bessely', - 'beta','betainc','betaln','bicg','bicgstab','bin2dec','bitand', - 'bitcmp','bitget','bitmax','bitor','bitset','bitshift','bitxor', - 'blkdiag','bone','box','brighten','builtin','bwcontr','calendar', - 'camdolly','camlight','camlookat','camorbit','campan','campos', - 'camproj','camroll','camtarget','camup','camva','camzoom','capture', - 'cart2pol','cart2sph','cat','caxis','cdf2rdf','ceil','cell', - 'cell2struct','celldisp','cellfun','cellplot','cellstr','cgs', - 'char','chol','cholinc','cholupdate','cla','clabel','class','clc', - 'clf','clg','clock','close','colmmd','colorbar','colorcube', - 'colordef','colormap','colperm','comet','comet3','compan','compass', - 'complex','computer','cond','condeig','condest','coneplot','conj', - 'contour','contourc','contourf','contourslice','contrast','conv', - 'conv2','convhull','cool','copper','copyobj','corrcoef','cos', - 'cosh','cot','coth','cov','cplxpair','cputime','cross','csc','csch', - 'cumprod','cumsum','cumtrapz','cylinder','daspect','date','datenum', - 'datestr','datetick','datevec','dbclear','dbcont','dbdown', - 'dblquad','dbmex','dbquit','dbstack','dbstatus','dbstep','dbstop', - 'dbtype','dbup','deblank','dec2bin','dec2hex','deconv','del2', - 'delaunay','det','diag','dialog','diff','diffuse','dlmread', - 'dlmwrite','dmperm','double','dragrect','drawnow','dsearch','eig', - 'eigs','ellipj','ellipke','eomday','eps','erf','erfc','erfcx', - 'erfiny','error','errorbar','errordlg','etime','eval','evalc', - 'evalin','exp','expint','expm','eye','ezcontour','ezcontourf', - 'ezmesh','ezmeshc','ezplot','ezplot3','ezpolar','ezsurf','ezsurfc', - 'factor','factorial','fclose','feather','feof','ferror','feval', - 'fft','fft2','fftshift','fgetl','fgets','fieldnames','figure', - 'fill','fill3','filter','filter2','find','findfigs','findobj', - 'findstr','fix','flag','flipdim','fliplr','flipud','floor','flops', - 'fmin','fmins','fopen','fplot','fprintf','fread','frewind','fscanf', - 'fseek','ftell','full','funm','fwrite','fzero','gallery','gamma', - 'gammainc','gammaln','gca','gcbo','gcd','gcf','gco','get', - 'getfield','ginput','gmres','gradient','gray','graymon','grid', - 'griddata','gsvd','gtext','hadamard','hankel','hdf','helpdlg', - 'hess','hex2dec','hex2num','hidden','hilb','hist','hold','hot', - 'hsv','hsv2rgb','i','ifft','ifft2','ifftn','ifftshift','imag', - 'image','imfinfo','imread','imwrite','ind2sub','Inf','inferiorto', - 'inline','inpolygon','input','inputdlg','inputname','int16', - 'int2str','int32','int8','interp1','interp2','interp3','interpft', - 'interpn','intersect','inv','invhilb','ipermute','isa','ishandle', - 'ismember','isocaps','isonormals','isosurface','j','jet','keyboard', - 'lcm','legend','legendre','light','lighting','lightingangle', - 'lin2mu','line','lines','linspace','listdlg','loadobj','log', - 'log10','log2','loglog','logm','logspace','lower','lscov','lu', - 'luinc','magic','mat2str','material','max','mean','median','menu', - 'menuedit','mesh','meshc','meshgrid','min','mod','msgbox','mu2lin', - 'NaN','nargchk','nargin','nargout','nchoosek','ndgrid','ndims', - 'newplot','nextpow2','nnls','nnz','nonzeros','norm','normest','now', - 'null','num2cell','num2str','nzmax','ode113,','ode15s,','ode23s,', - 'ode23t,','ode23tb','ode45,','odefile','odeget','odeset','ones', - 'orient','orth','pagedlg','pareto','pascal','patch','pause', - 'pbaspect','pcg','pcolor','peaks','perms','permute','pi','pie', - 'pie3','pinv','plot','plot3','plotmatrix','plotyy','pol2cart', - 'polar','poly','polyarea','polyder','polyeig','polyfit','polyval', - 'polyvalm','pow2','primes','print','printdlg','printopt','prism', - 'prod','propedit','qmr','qr','qrdelete','qrinsert','qrupdate', - 'quad','questdlg','quiver','quiver3','qz','rand','randn','randperm', - 'rank','rat','rats','rbbox','rcond','real','realmax','realmin', - 'rectangle','reducepatch','reducevolume','refresh','rem','repmat', - 'reset','reshape','residue','rgb2hsv','rgbplot','ribbon','rmfield', - 'roots','rose','rot90','rotate','rotate3d','round','rref', - 'rrefmovie','rsf2csf','saveobj','scatter','scatter3','schur', - 'script','sec','sech','selectmoveresize','semilogx','semilogy', - 'set','setdiff','setfield','setxor','shading','shg','shiftdim', - 'shrinkfaces','sign','sin','single','sinh','slice','smooth3','sort', - 'sortrows','sound','soundsc','spalloc','sparse','spconvert', - 'spdiags','specular','speye','spfun','sph2cart','sphere','spinmap', - 'spline','spones','spparms','sprand','sprandn','sprandsym','spring', - 'sprintf','sqrt','sqrtm','squeeze','sscanf','stairs','std','stem', - 'stem3','str2double','str2num','strcat','strcmp','strcmpi', - 'stream2','stream3','streamline','strings','strjust','strmatch', - 'strncmp','strrep','strtok','struct','struct2cell','strvcat', - 'sub2ind','subplot','subspace','subvolume','sum','summer', - 'superiorto','surf','surf2patch','surface','surfc','surfl', - 'surfnorm','svd','svds','symmmd','symrcm','symvar','tan','tanh', - 'texlabel','text Create','textread','textwrap','tic','title','toc', - 'toeplitz','trace','trapz','tril','trimesh','trisurf','triu', - 'tsearch','uicontext Create','uicontextmenu','uicontrol', - 'uigetfile','uimenu','uint32','uint8','uiputfile','uiresume', - 'uisetcolor','uisetfont','uiwait Used','union','unique','unwrap', - 'upper','var','varargin','varargout','vectorize','view','viewmtx', - 'voronoi','waitbar','waitforbuttonpress','warndlg','warning', - 'waterfall','wavread','wavwrite','weekday','whitebg','wilkinson', - 'winter','wk1read','wk1write','xlabel','xlim','ylabel','ylim', - 'zeros','zlabel','zlim','zoom', - //'[Keywords 6]', - 'addpath','cd','clear','copyfile','delete','diary','dir','disp', - 'doc','docopt','echo','edit','fileparts','format','fullfile','help', - 'helpdesk','helpwin','home','inmem','lasterr','lastwarn','length', - 'load','lookfor','ls','matlabrc','matlabroot','mkdir','mlock', - 'more','munlock','open','openvar','pack','partialpath','path', - 'pathtool','profile','profreport','pwd','quit','rmpath','save', - 'saveas','size','tempdir','tempname','type','ver','version','web', - 'what','whatsnew','which','who','whos','workspace' - ) - ), - 'SYMBOLS' => array( - '...' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - //3 => false, - //4 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000FF;', - 2 => 'color: #0000FF;' - ), - 'COMMENTS' => array( - 1 => 'color: #228B22;', - 2 => 'color:#A020F0;' - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => 'color: #080;' - ), - 'STRINGS' => array( - //0 => 'color: #A020F0;' - ), - 'NUMBERS' => array( - 0 => 'color: #33f;' - ), - 'METHODS' => array( - 1 => '', - 2 => '' - ), - 'SYMBOLS' => array( - 0 => 'color: #080;' - ), - 'REGEXPS' => array( - 0 => 'color: #33f;' - ), - 'SCRIPT' => array( - 0 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => 'http://www.mathworks.com/access/helpdesk/help/techdoc/ref/{FNAMEL}.html' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - //Complex numbers - 0 => '(?html)' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/mirc.php b/library/Vendors/geshi/geshi/mirc.php deleted file mode 100644 index 1b7df83a..00000000 --- a/library/Vendors/geshi/geshi/mirc.php +++ /dev/null @@ -1,171 +0,0 @@ - 'mIRC Scripting', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'alias', 'menu', 'dialog', - ), - 2 => array( - 'if', 'elseif', 'else', 'while', 'return', 'goto', 'var' - ), - 3 => array( - 'action','ajinvite','amsg','ame','anick','aop','auser', - 'avoice','auto','autojoin','away','background','ban','beep', - 'channel','clear','clearall','clipboard','close','closemsg','color', - 'copy','creq','ctcp','ctcpreply','ctcps','dcc','dde','ddeserver', - 'debug','describe','disable','disconnect','dlevel','dll','dns', - 'dqwindow','ebeeps','echo','editbox','emailaddr','enable','events', - 'exit','filter','findtext','finger','flash','flood','flush', - 'flushini','font','fsend','fserve','fullname','ghide','gload', - 'gmove','gopts','gplay','gpoint','gqreq','groups','gshow','gsize', - 'gstop','gtalk','gunload','guser','help','hop','ignore','invite', - 'join','kick','linesep','links','list','load','loadbuf','localinfo', - 'log','me','mdi','mkdir','mnick','mode','msg','names','nick','noop', - 'notice','notify','omsg','onotice','part','partall','pdcc', - 'perform','ping','play','pop','protect','pvoice','qmsg','qme', - 'query','queryrn','quit','raw','remini','remote','remove','rename', - 'enwin','resetidle','rlevel','rmdir','run','ruser','save','savebuf', - 'saveini','say','server','showmirc','sline','sound','speak','splay', - 'sreq','strip','time', - //'timer[N/name]', //Handled as a regular expression below ... - 'timers','timestamp','titlebar','tnick','tokenize','topic','ulist', - 'unload','updatenl','url','uwho','window','winhelp','write', - 'writeini','who','whois','whowas' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '/' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #994444;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #990000; font-weight: bold;', - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - ), - 'BRACKETS' => array( - 0 => 'color: #FF0000;', - ), - 'STRINGS' => array( - ), - 'NUMBERS' => array( - 0 => '', - ), - 'METHODS' => array( - 0 => 'color: #008000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #FF0000;', - ), - 'REGEXPS' => array( - 0 => 'color: #000099;', - 1 => 'color: #990000;', - 2 => 'color: #000099;', - 3 => 'color: #888800;', - 4 => 'color: #888800;', - 5 => 'color: #000099;', - 6 => 'color: #990000; font-weight: bold;', - 7 => 'color: #990000; font-weight: bold;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.mirc.com/{FNAMEL}' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array('.'), - 'REGEXPS' => array( - //Variable names - 0 => '\$[a-zA-Z0-9]+', - //Variable names - 1 => '(%|&)[\w\x80-\xFE]+', - //Client to Client Protocol handling - 2 => '(on|ctcp) (!|@|&)?(\d|\*):[a-zA-Z]+:', - /*4 => array( - GESHI_SEARCH => '((on|ctcp) (!|@|&)?(\d|\*):(Action|Active|Agent|AppActive|Ban|Chat|Close|Connect|Ctcp|CtcpReply|DccServer|DeHelp|DeOp|DeVoice|Dialog|Dns|Error|Exit|FileRcvd|FileSent|GetFail|Help|Hotlink|Input|Invite|Join|KeyDown|KeyUp|Kick|Load|Logon|MidiEnd|Mode|Mp3End|Nick|NoSound|Notice|Notify|Op|Open|Part|Ping|Pong|PlayEnd|Quit|Raw|RawMode|SendFail|Serv|ServerMode|ServerOp|Signal|Snotice|Start|Text|Topic|UnBan|Unload|Unotify|User|Mode|Voice|Wallops|WaveEnd):)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ),*/ - //Channel names - 3 => '(#|@)[a-zA-Z0-9]+', - 4 => '-[a-z\d]+', - //Raw protocol handling - 5 => 'raw (\d|\*):', - //Timer handling - 6 => '(?|:|\/)\/timer(?!s\b)[0-9a-zA-Z_]+', - // /... - 7 => '(?|:|\/|\w)\/[a-zA-Z][a-zA-Z0-9]*(?!>)' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'NUMBERS' => GESHI_NEVER - ), - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => '(? \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/mmix.php b/library/Vendors/geshi/geshi/mmix.php deleted file mode 100644 index 3e90dce2..00000000 --- a/library/Vendors/geshi/geshi/mmix.php +++ /dev/null @@ -1,173 +0,0 @@ - 'MMIX', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - //Line address prefix suppression - 'COMMENT_REGEXP' => array(2 => "/^\s*[0-9a-f]{12,16}+(?:\s+[0-9a-f]+(?:\.{3}[0-9a-f]{2,})?)?:/mi"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - /*CPU*/ - 1 => array( - '16ADDU','2ADDU','4ADDU','8ADDU','ADD','ADDU','AND','ANDN','ANDNH', - 'ANDNL','ANDNMH','ANDNML','BDIF','BEV','BN','BNN','BNP','BNZ','BOD', - 'BP','BZ','CMP','CMPU','CSEV','CSN','CSNN','CSNP','CSNZ','CSOD', - 'CSP','CSWAP','CSZ','DIV','DIVU','FADD','FCMP','FCMPE','FDIV', - 'FEQL','FEQLE','FINT','FIX','FIXU','FLOT','FLOTU','FMUL','FREM', - 'FSQRT','FSUB','FUN','FUNE','GET','GETA','GO','INCH','INCL','INCMH', - 'INCML','JMP','LDB','LDBU','LDHT','LDO','LDOU','LDSF','LDT','LDTU', - 'LDUNC','LDVTS','LDW','LDWU','MOR','MUL','MULU','MUX','MXOR','NAND', - 'NEG','NEGU','NOR','NXOR','ODIF','OR','ORH','ORL','ORMH','ORML', - 'ORN','PBEV','PBN','PBNN','PBNP','PBNZ','PBOD','PBP','PBZ','POP', - 'PREGO','PRELD','PREST','PUSHGO','PUSHJ','PUT','RESUME','SADD', - 'SAVE','SETH','SETL','SETMH','SETML','SFLOT','SFLOTU','SL','SLU', - 'SR','SRU','STB','STBU','STCO','STHT','STO','STOU','STSF','STT', - 'STTU','STUNC','STW','STWU','SUB','SUBU','SWYM','SYNC','SYNCD', - 'SYNCID','TDIF','TRAP','TRIP','UNSAVE','WDIF','XOR','ZSEV','ZSN', - 'ZSNN','ZSNP','ZSNZ','ZSOD','ZSP','ZSZ' - ), - /*registers*/ - 3 => array( - 'rA','rB','rC','rD','rE','rF','rG','rH','rI','rJ','rK','rL','rM', - 'rN','rO','rP','rQ','rR','rS','rT','rU','rV','rW','rX','rY','rZ', - 'rBB','rTT','rWW','rXX','rYY','rZZ' - ), - /*Directive*/ - 4 => array( - ), - /*Operands*/ - 5 => array( - ) - ), - 'SYMBOLS' => array( - '[', ']', '(', ')', - '+', '-', '*', '/', '%', - '.', ',', ';', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => false, - 3 => true, - 4 => false, - 5 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #00007f; font-weight: bold;', - 2 => 'color: #0000ff; font-weight: bold;', - 3 => 'color: #00007f;', - 4 => 'color: #000000; font-weight: bold;', - 5 => 'color: #000000; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #adadad; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900; font-weight: bold;' - ), - 'STRINGS' => array( - 0 => 'color: #7f007f;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000ff;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( -// 0 => 'color: #0000ff;', -// 1 => 'color: #0000ff;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '' - ), - 'NUMBERS' => - GESHI_NUMBER_BIN_PREFIX_PERCENT | - GESHI_NUMBER_BIN_SUFFIX | - GESHI_NUMBER_HEX_PREFIX | - GESHI_NUMBER_HEX_SUFFIX | - GESHI_NUMBER_OCT_SUFFIX | - GESHI_NUMBER_INT_BASIC | - GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_NONSCI_F | - GESHI_NUMBER_FLT_SCI_ZERO, - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Hex numbers -// 0 => /* */ "(?<=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))(?:[0-9][0-9a-fA-F]{0,31}[hH]|0x[0-9a-fA-F]{1,32})(?=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))", - //Binary numbers -// 1 => "(?<=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))[01]{1,64}[bB](?=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 8, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?|^])", - 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%])" - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/modula2.php b/library/Vendors/geshi/geshi/modula2.php deleted file mode 100644 index 042e7404..00000000 --- a/library/Vendors/geshi/geshi/modula2.php +++ /dev/null @@ -1,136 +0,0 @@ - 'Modula-2', - 'COMMENT_MULTI' => array('(*' => '*)'), - 'COMMENT_SINGLE' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array("''"), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( /* reserved words */ - 'AND', 'ARRAY', 'BEGIN', 'BY', 'CASE', 'CONST', 'DEFINITION', - 'DIV', 'DO', 'ELSE', 'ELSIF', 'END', 'EXIT', 'EXPORT', 'FOR', - 'FROM', 'IF', 'IMPLEMENTATION', 'IMPORT', 'IN', 'LOOP', 'MOD', - 'MODULE', 'NOT', 'OF', 'OR', 'POINTER', 'PROCEDURE', 'QUALIFIED', - 'RECORD', 'REPEAT', 'RETURN', 'SET', 'THEN', 'TO', 'TYPE', - 'UNTIL', 'VAR', 'WHILE', 'WITH' - ), - 2 => array( /* pervasive constants */ - 'NIL', 'FALSE', 'TRUE', - ), - 3 => array( /* pervasive types */ - 'BITSET', 'CAP', 'CHR', 'DEC', 'DISPOSE', 'EXCL', 'FLOAT', - 'HALT', 'HIGH', 'INC', 'INCL', 'MAX', 'MIN', 'NEW', 'ODD', 'ORD', - 'SIZE', 'TRUNC', 'VAL' - ), - 4 => array( /* pervasive functions and macros */ - 'ABS', 'BOOLEAN', 'CARDINAL', 'CHAR', 'INTEGER', - 'LONGCARD', 'LONGINT', 'LONGREAL', 'PROC', 'REAL' - ), - ), - 'SYMBOLS' => array( - ',', ':', '=', '+', '-', '*', '/', '#', '~' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;', - 4 => 'color: #000066; font-weight: bold;' - ), - 'COMMENTS' => array( - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;', - 'HARD' => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #0066ee;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - 1 => '' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/modula3.php b/library/Vendors/geshi/geshi/modula3.php deleted file mode 100644 index ad827a3e..00000000 --- a/library/Vendors/geshi/geshi/modula3.php +++ /dev/null @@ -1,135 +0,0 @@ - 'Modula-3', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array('(*' => '*)'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array("''"), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'AND', 'ANY', 'ARRAY', 'AS', 'BEGIN', 'BITS', 'BRANDED', 'BY', 'CASE', - 'CONST', 'DIV', 'DO', 'ELSE', 'ELSIF', 'END', 'EVAL', 'EXCEPT', 'EXCEPTION', - 'EXIT', 'EXPORTS', 'FINALLY', 'FOR', 'FROM', 'GENERIC', 'IF', 'IMPORT', 'IN', - 'INTERFACE', 'LOCK', 'LOOP', 'METHODS', 'MOD', 'MODULE', 'NOT', 'OBJECT', 'OF', - 'OR', 'OVERRIDE', 'PROCEDURE', 'RAISE', 'RAISES', 'READONLY', 'RECORD', 'REF', - 'REPEAT', 'RETURN', 'REVEAL', 'ROOT', 'SET', 'THEN', 'TO', 'TRY', 'TYPE', 'TYPECASE', - 'UNSAFE', 'UNTIL', 'UNTRACED', 'VALUE', 'VAR', 'WHILE', 'WITH' - ), - 2 => array( - 'NIL', 'NULL', 'FALSE', 'TRUE', - ), - 3 => array( - 'ABS','ADR','ADRSIZE','BITSIZE','BYTESIZE','CEILING','DEC','DISPOSE', - 'EXTENDED','FIRST','FLOAT','FLOOR','INC','ISTYPE','LAST','LOOPHOLE','MAX','MIN', - 'NARROW','NEW','NUMBER','ORD','ROUND','SUBARRAY','TRUNC','TYPECODE', 'VAL' - ), - 4 => array( - 'ADDRESS', 'BOOLEAN', 'CARDINAL', 'CHAR', 'INTEGER', - 'LONGREAL', 'MUTEX', 'REAL', 'REFANY', 'TEXT' - ), - ), - 'SYMBOLS' => array( - ',', ':', '=', '+', '-', '*', '/', '#' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;', - 4 => 'color: #000066; font-weight: bold;' - ), - 'COMMENTS' => array( - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;', - 'HARD' => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #0066ee;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/mpasm.php b/library/Vendors/geshi/geshi/mpasm.php deleted file mode 100644 index 59247ff6..00000000 --- a/library/Vendors/geshi/geshi/mpasm.php +++ /dev/null @@ -1,164 +0,0 @@ - 'Microchip Assembler', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - /*Directive Language*/ - 4 => array( - 'CONSTANT', '#DEFINE', 'END', 'EQU', 'ERROR', 'ERROR-LEVEL', '#INCLUDE', 'LIST', - 'MESSG', 'NOLIST', 'ORG', 'PAGE', 'PROCESSOR', 'RADIX', 'SET', 'SPACE', 'SUBTITLE', - 'TITLE', '#UNDEFINE', 'VARIABLE', 'ELSE', 'ENDIF', 'ENDW', 'IF', 'IFDEF', 'IFNDEF', - 'WHILE', '__BADRAM', 'CBLOCK', '__CONFIG', 'DA', 'DATA', 'DB', 'DE', 'DT', 'DW', - 'ENDC', 'FILL', '__IDLOCS', '__MAXRAM', 'RES', 'ENDM', 'EXITM', 'EXPAND', 'LOCAL', - 'MACRO', 'NOEXPAND', 'BANKISEL', 'BANKSEL', 'CODE', 'EXTERN', 'GLOBAL', 'IDATA', - 'PAGESEL', 'UDATA', 'UDATA_ACS', 'UDATA_OVR', 'UDATA_SHR' - ), - /* 12&14-bit Specific Instruction Set*/ - 1 => array( - 'andlw', 'call', 'clrwdt', 'goto', 'iorlw', 'movlw', 'option', 'retlw', 'sleep', - 'tris', 'xorlw', 'addwf', 'andwf', 'clrf', 'clrw', 'comf', 'decf', 'decfsz', 'incf', - 'incfsz', 'iorwf', 'movf', 'nop', 'rlf', 'rrf', 'subwf', 'swapf', 'xorwf', - 'bcf', 'bsf', 'btfsc', 'btfss', - 'addlw', 'retfie', 'return', 'sublw', 'addcf', 'adddcf', 'b', 'bc', 'bdc', - 'bnc', 'bndc', 'bnz', 'bz', 'clrc', 'clrdc', 'clrz', 'lcall', 'lgoto', 'movfw', - 'negf', 'setc', 'setdc', 'setz', 'skpc', 'skpdc', 'skpnc', 'skpndc', 'skpnz', 'skpz', - 'subcf', 'subdcf', 'tstf' - ), - /* 16-bit Specific Instructiob Set */ - 2 => array ( - 'movfp', 'movlb', 'movlp', 'movpf', 'movwf', 'tablrd', 'tablwt', 'tlrd', 'tlwt', - 'addwfc', 'daw', 'mullw', 'negw', 'rlcf', 'rlncf', 'rrcf', 'rrncf', 'setf', 'subwfb', - 'btg', 'cpfseq', 'cpfsgt', 'cpfslt', 'dcfsnz', 'infsnz', 'tstfsz', 'lfsr', 'bnn', - 'bnov', 'bra', 'pop', 'push', 'rcall', 'reset' - ), - /* Registers */ - 3 => array( - 'INDF', 'TMR0', 'PCL', 'STATUS', 'FSR', 'PORTA', 'PORTB', 'PORTC', 'PORTD', 'PORTE', - 'PCLATH', 'INTCON', 'PIR1', 'PIR2', 'TMR1L', 'TMR1H', 'T1CON', 'TMR2', 'T2CON', 'TMR2L', - 'TMR2H', 'TMR0H', 'TMR0L', 'SSPBUF', 'SSPCON', 'CCPR1L', 'CCPR1H', 'CCP1CON', 'RCSTA', - 'TXREG', 'RCREG', 'CCPR2L', 'CCPR2H', 'CCP2CON', 'OPTION', 'TRISA', 'TRISB', 'TRISC', - 'TRISD', 'TRISE', 'PIE2', 'PIE1', 'PR2', 'SSPADD', 'SSPSTAT', 'TXSTA', 'SPBRG' - ), - /*Operands*/ - 5 => array( - 'high','low' - ) - ), - 'SYMBOLS' => array( - '[', ']', '(', ')' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #00007f;', - 2 => 'color: #0000ff;', - 3 => 'color: #007f00;', - 4 => 'color: #46aa03; font-weight:bold;', - 5 => 'color: #7f0000;' - ), - 'COMMENTS' => array( - 1 => 'color: #adadad; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #7f007f;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff0000;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - 0 => 'color: #ff0000;', - 1 => 'color: #ff0000;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Hex numbers - 0 => '[0-9a-fA-F]{1,32}[hH]', - //Binary numbers - 1 => '[01]{1,64}[bB]' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/mxml.php b/library/Vendors/geshi/geshi/mxml.php deleted file mode 100644 index df4c9d50..00000000 --- a/library/Vendors/geshi/geshi/mxml.php +++ /dev/null @@ -1,145 +0,0 @@ - 'MXML', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(''), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - ), - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - ), - 'COMMENTS' => array( - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - 0 => 'color: #00bbdd;', - 1 => 'color: #ddbb00;', - 2 => 'color: #339933;', - 3 => 'color: #000000;' - ), - 'REGEXPS' => array( - 0 => 'font-weight: bold; color: black;', - 1 => 'color: #7400FF;', - 2 => 'color: #7400FF;' - ) - ), - 'URLS' => array( - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - // xml declaration - 0 => array( - GESHI_SEARCH => '(<[\/?|(\?xml)]?[a-z0-9_\-:]*(\?>))', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // opening tags - 1 => array( - GESHI_SEARCH => '(<\/?[a-z]+:[a-z]+)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // closing tags - 2 => array( - GESHI_SEARCH => '(\/?>)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_ALWAYS, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - ' '>' - ), - 1 => array( - '&' => ';' - ), - 2 => array( - //' ']]>' - '' => '' - ), - 3 => array( - '<' => '>' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => false, - 1 => false, - 2 => false, - 3 => true - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/library/Vendors/geshi/geshi/mysql.php b/library/Vendors/geshi/geshi/mysql.php deleted file mode 100644 index ca171733..00000000 --- a/library/Vendors/geshi/geshi/mysql.php +++ /dev/null @@ -1,475 +0,0 @@ - 'MySQL', - //'COMMENT_SINGLE' => array(1 =>'--', 2 => '#'), // '--' MUST be folowed by whitespace,not necessarily a space - 'COMMENT_SINGLE' => array( - 1 =>'-- ', - 2 => '#' - ), - 'COMMENT_REGEXP' => array( - 1 => "/(?:--\s).*?$/", // double dash followed by any whitespace - ), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, // @@@ would be nice if this could be defined per group! - 'QUOTEMARKS' => array("'", '"', '`'), - 'ESCAPE_CHAR' => '\\', // by default only, can be specified - 'ESCAPE_REGEXP' => array( - 1 => "/[_%]/", // search wildcards - ), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | - GESHI_NUMBER_OCT_PREFIX | - GESHI_NUMBER_HEX_PREFIX | - GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_SCI_SHORT | - GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - // Mix: statement keywords and keywords that don't fit in any other - // category, or have multiple usage/meanings - 'ACTION','ADD','AFTER','ALGORITHM','ALL','ALTER','ANALYZE','ANY', - 'ASC','AS','BDB','BEGIN','BERKELEYDB','BINARY','BTREE','CALL', - 'CASCADED','CASCADE','CHAIN','CHECK','COLUMNS','COLUMN','COMMENT', - 'COMMIT','COMMITTED','CONSTRAINT','CONTAINS SQL','CONSISTENT', - 'CONVERT','CREATE','CROSS','DATA','DATABASES', - 'DECLARE','DEFINER','DELAYED','DELETE','DESCRIBE','DESC', - 'DETERMINISTIC','DISABLE','DISCARD','DISTINCTROW','DISTINCT','DO', - 'DROP','DUMPFILE','DUPLICATE KEY','ENABLE','ENCLOSED BY','ENGINE', - 'ERRORS','ESCAPED BY','EXISTS','EXPLAIN','EXTENDED','FIELDS', - 'FIRST','FOR EACH ROW','FORCE','FOREIGN KEY','FROM','FULL', - 'FUNCTION','GLOBAL','GRANT','GROUP BY','HANDLER','HASH','HAVING', - 'HELP','HIGH_PRIORITY','IF NOT EXISTS','IGNORE','IMPORT','INDEX', - 'INFILE','INNER','INNODB','INOUT','INTO','INVOKER', - 'ISOLATION LEVEL','JOIN','KEYS','KEY','KILL','LANGUAGE SQL','LAST', - 'LIMIT','LINES','LOAD','LOCAL','LOCK','LOW_PRIORITY', - 'MASTER_SERVER_ID','MATCH','MERGE','MIDDLEINT','MODIFIES SQL DATA', - 'MODIFY','MRG_MYISAM','NATURAL','NEXT','NO SQL','NO','ON', - 'OPTIMIZE','OPTIONALLY','OPTION','ORDER BY','OUTER','OUTFILE','OUT', - 'PARTIAL','PREV','PRIMARY KEY','PRIVILEGES','PROCEDURE','PURGE', - 'QUICK','READS SQL DATA','READ','REFERENCES','RELEASE','RENAME', - 'REPEATABLE','REQUIRE','RESTRICT','RETURNS','REVOKE', - 'ROLLBACK','ROUTINE','RTREE','SAVEPOINT','SELECT', - 'SERIALIZABLE','SESSION','SET','SHARE MODE','SHOW','SIMPLE', - 'SNAPSHOT','SOME','SONAME','SQL SECURITY','SQL_BIG_RESULT', - 'SQL_BUFFER_RESULT','SQL_CACHE','SQL_CALC_FOUND_ROWS', - 'SQL_NO_CACHE','SQL_SMALL_RESULT','SSL','START','STARTING BY', - 'STATUS','STRAIGHT_JOIN','STRIPED','TABLESPACE','TABLES','TABLE', - 'TEMPORARY','TEMPTABLE','TERMINATED BY','TO','TRANSACTIONS', - 'TRANSACTION','TRIGGER','TYPES','TYPE','UNCOMMITTED','UNDEFINED', - 'UNION','UNLOCK_TABLES','UPDATE','USAGE','USE','USER_RESOURCES', - 'USING','VALUES','VALUE','VIEW','WARNINGS','WHERE','WITH ROLLUP', - 'WITH','WORK','WRITE', - ), - 2 => array( //No ( must follow - // Mix: statement keywords distinguished from functions by the same name - "CURRENT_USER", "DATABASE", "IN", "INSERT", "DEFAULT", "REPLACE", "SCHEMA", "TRUNCATE" - ), - 3 => array( - // Values (Constants) - 'FALSE','NULL','TRUE', - ), - 4 => array( - // Column Data Types - 'BIGINT','BIT','BLOB','BOOLEAN','BOOL','CHARACTER VARYING', - 'CHAR VARYING','DATETIME','DECIMAL','DEC','DOUBLE PRECISION', - 'DOUBLE','ENUM','FIXED','FLOAT','GEOMETRYCOLLECTION','GEOMETRY', - 'INTEGER','INT','LINESTRING','LONGBLOB','LONGTEXT','MEDIUMBLOB', - 'MEDIUMINT','MEDIUMTEXT','MULTIPOINT','MULTILINESTRING', - 'MULTIPOLYGON','NATIONAL CHARACTER','NATIONAL CHARACTER VARYING', - 'NATIONAL CHAR VARYING','NATIONAL VARCHAR','NCHAR VARCHAR','NCHAR', - 'NUMERIC','POINT','POLYGON','REAL','SERIAL', - 'SMALLINT','TEXT','TIMESTAMP','TINYBLOB','TINYINT', - 'TINYTEXT','VARBINARY','VARCHARACTER','VARCHAR', - ), - 5 => array( //No ( must follow - // Column data types distinguished from functions by the same name - "CHAR", "DATE", "TIME" - ), - 6 => array( - // Table, Column & Index Attributes - 'AUTO_INCREMENT','AVG_ROW_LENGTH','BOTH','CHECKSUM','CONNECTION', - 'DATA DIRECTORY','DEFAULT NULL','DELAY_KEY_WRITE','FULLTEXT', - 'INDEX DIRECTORY','INSERT_METHOD','LEADING','MAX_ROWS','MIN_ROWS', - 'NOT NULL','PACK_KEYS','ROW_FORMAT','SERIAL DEFAULT VALUE','SIGNED', - 'SPATIAL','TRAILING','UNIQUE','UNSIGNED','ZEROFILL' - ), - 7 => array( //No ( must follow - // Column attribute distinguished from function by the same name - "CHARSET" - ), - 8 => array( - // Date and Time Unit Specifiers - 'DAY_HOUR','DAY_MICROSECOND','DAY_MINUTE','DAY_SECOND', - 'HOUR_MICROSECOND','HOUR_MINUTE','HOUR_SECOND', - 'MINUTE_MICROSECOND','MINUTE_SECOND', - 'SECOND_MICROSECOND','YEAR_MONTH' - ), - 9 => array( //No ( must follow - // Date-time unit specifiers distinguished from functions by the same name - "DAY", "HOUR", "MICROSECOND", "MINUTE", "MONTH", "QUARTER", "SECOND", "WEEK", "YEAR" - ), - 10 => array( - // Operators (see also Symbols) - 'AND','BETWEEN','CHARACTER SET','COLLATE','DIV','IS NOT NULL', - 'IS NOT','IS NULL','IS','LIKE','NOT','OFFSET','OR','REGEXP','RLIKE', - 'SOUNDS LIKE','XOR' - ), - 11 => array( //No ( must follow - // Operator distinghuished from function by the same name - "INTERVAL" - ), - 12 => array( - // Control Flow (functions) - 'CASE','ELSE','END','IFNULL','IF','NULLIF','THEN','WHEN', - ), - 13 => array( - // String Functions - 'ASCII','BIN','BIT_LENGTH','CHAR_LENGTH','CHARACTER_LENGTH', - 'CONCAT_WS','CONCAT','ELT','EXPORT_SET','FIELD', - 'FIND_IN_SET','FORMAT','HEX','INSTR','LCASE','LEFT','LENGTH', - 'LOAD_FILE','LOCATE','LOWER','LPAD','LTRIM','MAKE_SET','MID', - 'OCTET_LENGTH','ORD','POSITION','QUOTE','REPEAT','REVERSE', - 'RIGHT','RPAD','RTRIM','SOUNDEX','SPACE','STRCMP','SUBSTRING_INDEX', - 'SUBSTRING','TRIM','UCASE','UNHEX','UPPER', - ), - 14 => array( //A ( must follow - // String functions distinguished from other keywords by the same name - "INSERT", "REPLACE", "CHAR" - ), - 15 => array( - // Numeric Functions - 'ABS','ACOS','ASIN','ATAN2','ATAN','CEILING','CEIL', - 'CONV','COS','COT','CRC32','DEGREES','EXP','FLOOR','LN','LOG10', - 'LOG2','LOG','MOD','OCT','PI','POWER','POW','RADIANS','RAND', - 'ROUND','SIGN','SIN','SQRT','TAN', - ), - 16 => array( //A ( must follow - // Numeric function distinguished from other keyword by the same name - "TRUNCATE" - ), - 17 => array( - // Date and Time Functions - 'ADDDATE','ADDTIME','CONVERT_TZ','CURDATE','CURRENT_DATE', - 'CURRENT_TIME','CURRENT_TIMESTAMP','CURTIME','DATE_ADD', - 'DATE_FORMAT','DATE_SUB','DATEDIFF','DAYNAME','DAYOFMONTH', - 'DAYOFWEEK','DAYOFYEAR','EXTRACT','FROM_DAYS','FROM_UNIXTIME', - 'GET_FORMAT','LAST_DAY','LOCALTIME','LOCALTIMESTAMP','MAKEDATE', - 'MAKETIME','MONTHNAME','NOW','PERIOD_ADD', - 'PERIOD_DIFF','SEC_TO_TIME','STR_TO_DATE','SUBDATE','SUBTIME', - 'SYSDATE','TIME_FORMAT','TIME_TO_SEC', - 'TIMESTAMPADD','TIMESTAMPDIFF','TO_DAYS', - 'UNIX_TIMESTAMP','UTC_DATE','UTC_TIME','UTC_TIMESTAMP','WEEKDAY', - 'WEEKOFYEAR','YEARWEEK', - ), - 18 => array( //A ( must follow - // Date-time functions distinguished from other keywords by the same name - "DATE", "DAY", "HOUR", "MICROSECOND", "MINUTE", "MONTH", "QUARTER", - "SECOND", "TIME", "WEEK", "YEAR" - ), - 19 => array( - // Comparison Functions - 'COALESCE','GREATEST','ISNULL','LEAST', - ), - 20 => array( //A ( must follow - // Comparison functions distinguished from other keywords by the same name - "IN", "INTERVAL" - ), - 21 => array( - // Encryption and Compression Functions - 'AES_DECRYPT','AES_ENCRYPT','COMPRESS','DECODE','DES_DECRYPT', - 'DES_ENCRYPT','ENCODE','ENCRYPT','MD5','OLD_PASSWORD','PASSWORD', - 'SHA1','SHA','UNCOMPRESS','UNCOMPRESSED_LENGTH', - ), - 22 => array( - // GROUP BY (aggregate) Functions - 'AVG','BIT_AND','BIT_OR','BIT_XOR','COUNT','GROUP_CONCAT', - 'MAX','MIN','STDDEV_POP','STDDEV_SAMP','STDDEV','STD','SUM', - 'VAR_POP','VAR_SAMP','VARIANCE', - ), - 23 => array( - // Information Functions - 'BENCHMARK','COERCIBILITY','COLLATION','CONNECTION_ID', - 'FOUND_ROWS','LAST_INSERT_ID','ROW_COUNT', - 'SESSION_USER','SYSTEM_USER','USER','VERSION', - ), - 24 => array( //A ( must follow - // Information functions distinguished from other keywords by the same name - "CURRENT_USER", "DATABASE", "SCHEMA", "CHARSET" - ), - 25 => array( - // Miscellaneous Functions - 'ExtractValue','BIT_COUNT','GET_LOCK','INET_ATON','INET_NTOA', - 'IS_FREE_LOCK','IS_USED_LOCK','MASTER_POS_WAIT','NAME_CONST', - 'RELEASE_LOCK','SLEEP','UpdateXML','UUID', - ), - 26 => array( //A ( must follow - // Miscellaneous function distinguished from other keyword by the same name - "DEFAULT" - ), - 27 => array( - // Geometry Functions - 'Area','AsBinary','AsText','AsWKB','AsWKT','Boundary','Buffer', - 'Centroid','Contains','ConvexHull','Crosses', - 'Difference','Dimension','Disjoint','Distance', - 'EndPoint','Envelope','Equals','ExteriorRing', - 'GLength','GeomCollFromText','GeomCollFromWKB','GeomFromText', - 'GeomFromWKB','GeometryCollectionFromText', - 'GeometryCollectionFromWKB','GeometryFromText','GeometryFromWKB', - 'GeometryN','GeometryType', - 'InteriorRingN','Intersection','Intersects','IsClosed','IsEmpty', - 'IsRing','IsSimple', - 'LineFromText','LineFromWKB','LineStringFromText', - 'LineStringFromWKB', - 'MBRContains','MBRDisjoint','MBREqual','MBRIntersects', - 'MBROverlaps','MBRTouches','MBRWithin','MLineFromText', - 'MLineFromWKB','MPointFromText','MPointFromWKB','MPolyFromText', - 'MPolyFromWKB','MultiLineStringFromText','MultiLineStringFromWKB', - 'MultiPointFromText','MultiPointFromWKB','MultiPolygonFromText', - 'MultiPolygonFromWKB', - 'NumGeometries','NumInteriorRings','NumPoints', - 'Overlaps', - 'PointFromText','PointFromWKB','PointN','PointOnSurface', - 'PolyFromText','PolyFromWKB','PolygonFromText','PolygonFromWKB', - 'Related','SRID','StartPoint','SymDifference', - 'Touches', - 'Union', - 'Within', - 'X', - 'Y', - ), - ), - 'SYMBOLS' => array( - 1 => array( - /* Operators */ - '=', ':=', // assignment operators - '||', '&&', '!', // locical operators - '=', '<=>', '>=', '>', '<=', '<', '<>', '!=', // comparison operators - '|', '&', '^', '~', '<<', '>>', // bitwise operators - '-', '+', '*', '/', '%', // numerical operators - ), - 2 => array( - /* Other syntactical symbols */ - '(', ')', - ',', ';', - ), - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false, - 8 => false, - 9 => false, - 10 => false, - 11 => false, - 12 => false, - 13 => false, - 13 => false, - 14 => false, - 15 => false, - 16 => false, - 17 => false, - 18 => false, - 19 => false, - 20 => false, - 21 => false, - 22 => false, - 23 => false, - 24 => false, - 25 => false, - 26 => false, - 27 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #990099; font-weight: bold;', // mix - 2 => 'color: #990099; font-weight: bold;', // mix - 3 => 'color: #9900FF; font-weight: bold;', // constants - 4 => 'color: #999900; font-weight: bold;', // column data types - 5 => 'color: #999900; font-weight: bold;', // column data types - 6 => 'color: #FF9900; font-weight: bold;', // attributes - 7 => 'color: #FF9900; font-weight: bold;', // attributes - 8 => 'color: #9900FF; font-weight: bold;', // date-time units - 9 => 'color: #9900FF; font-weight: bold;', // date-time units - - 10 => 'color: #CC0099; font-weight: bold;', // operators - 11 => 'color: #CC0099; font-weight: bold;', // operators - - 12 => 'color: #009900;', // control flow (functions) - 13 => 'color: #000099;', // string functions - 14 => 'color: #000099;', // string functions - 15 => 'color: #000099;', // numeric functions - 16 => 'color: #000099;', // numeric functions - 17 => 'color: #000099;', // date-time functions - 18 => 'color: #000099;', // date-time functions - 19 => 'color: #000099;', // comparison functions - 20 => 'color: #000099;', // comparison functions - 21 => 'color: #000099;', // encryption functions - 22 => 'color: #000099;', // aggregate functions - 23 => 'color: #000099;', // information functions - 24 => 'color: #000099;', // information functions - 25 => 'color: #000099;', // miscellaneous functions - 26 => 'color: #000099;', // miscellaneous functions - 27 => 'color: #00CC00;', // geometry functions - ), - 'COMMENTS' => array( - 'MULTI' => 'color: #808000; font-style: italic;', - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #004000; font-weight: bold;', - 1 => 'color: #008080; font-weight: bold;' // search wildcards - ), - 'BRACKETS' => array( - 0 => 'color: #FF00FF;' - ), - 'STRINGS' => array( - 0 => 'color: #008000;' - ), - 'NUMBERS' => array( - 0 => 'color: #008080;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 1 => 'color: #CC0099;', // operators - 2 => 'color: #000033;', // syntax - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => 'http://search.mysql.com/search?site=refman-%35%31&q={FNAME}', - 2 => 'http://search.mysql.com/search?site=refman-%35%31&q={FNAME}', - 3 => 'http://search.mysql.com/search?site=refman-%35%31&q={FNAME}', - 4 => 'http://search.mysql.com/search?site=refman-%35%31&q={FNAME}', - 5 => 'http://search.mysql.com/search?site=refman-%35%31&q={FNAME}', - 6 => 'http://search.mysql.com/search?site=refman-%35%31&q={FNAME}', - 7 => 'http://search.mysql.com/search?site=refman-%35%31&q={FNAME}', - 8 => 'http://search.mysql.com/search?site=refman-%35%31&q={FNAME}', - 9 => 'http://search.mysql.com/search?site=refman-%35%31&q={FNAME}', - - 10 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/non-typed-operators.html', - 11 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/non-typed-operators.html', - - 12 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/control-flow-functions.html', - 13 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/string-functions.html', - 14 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/string-functions.html', - 15 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/numeric-functions.html', - 16 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/numeric-functions.html', - 17 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/date-and-time-functions.html', - 18 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/date-and-time-functions.html', - 19 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/comparison-operators.html', - 20 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/comparison-operators.html', - 21 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/encryption-functions.html', - 22 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/group-by-functions-and-modifiers.html', - 23 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/information-functions.html', - 24 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/information-functions.html', - 25 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/func-op-summary-ref.html', - 26 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/func-op-summary-ref.html', - 27 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/analysing-spatial-information.html', - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 2 => array( - 'DISALLOWED_AFTER' => '(?![\(\w])' - ), - 5 => array( - 'DISALLOWED_AFTER' => '(?![\(\w])' - ), - 7 => array( - 'DISALLOWED_AFTER' => '(?![\(\w])' - ), - 9 => array( - 'DISALLOWED_AFTER' => '(?![\(\w])' - ), - 11 => array( - 'DISALLOWED_AFTER' => '(?![\(\w])' - ), - - 14 => array( - 'DISALLOWED_AFTER' => '(?=\()' - ), - 16 => array( - 'DISALLOWED_AFTER' => '(?=\()' - ), - 18 => array( - 'DISALLOWED_AFTER' => '(?=\()' - ), - 20 => array( - 'DISALLOWED_AFTER' => '(?=\()' - ), - 24 => array( - 'DISALLOWED_AFTER' => '(?=\()' - ), - 26 => array( - 'DISALLOWED_AFTER' => '(?=\()' - ) - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/newlisp.php b/library/Vendors/geshi/geshi/newlisp.php deleted file mode 100644 index 027e8658..00000000 --- a/library/Vendors/geshi/geshi/newlisp.php +++ /dev/null @@ -1,191 +0,0 @@ - 'newlisp', - 'COMMENT_SINGLE' => array(1 => ';', 2 => '#'), - 'COMMENT_MULTI' => array('[text]' => '[/text]', '{' => '}'), // also used for strings - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'NUMBERS' => GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_SCI_ZERO, - 'TAB_WIDTH' => 2, - 'KEYWORDS' => array( - 1 => array( - 'NaN?','abort','abs','acos','acosh','add','address','amb','and', - 'append','append-file','apply','args','array','array-list','array?', - 'asin','asinh','assoc','atan','atan2','atanh','atom?','base64-dec', - 'base64-enc','bayes-query','bayes-train','begin','beta','betai', - 'bind','binomial','bits','callback','case','catch','ceil', - 'change-dir','char','chop','clean','close','command-event','cond', - 'cons','constant','context','context?','copy','copy-file','cos', - 'cosh','count','cpymem','crc32','crit-chi2','crit-z','current-line', - 'curry','date','date-value','debug','dec','def-new','default', - 'define','define-macro','delete','delete-file','delete-url', - 'destroy','det','device','difference','directory','directory?', - 'div','do-until','do-while','doargs','dolist','dostring','dotimes', - 'dotree','dump','dup','empty?','encrypt','ends-with','env','erf', - 'error-event','estack','eval','eval-string','exec','exists','exit', - 'exp','expand','explode','factor','fft','file-info','file?', - 'filter','find','find-all','first','flat','float','float?','floor', - 'flt','for','for-all','fork','format','fv','gammai','gammaln','gcd', - 'get-char','get-float','get-int','get-long','get-string','get-url', - 'global','global?','if','if-not','ifft','import','inc','index', - 'inf?','int','integer','integer?','intersect','invert','irr','join', - 'lambda','lambda?','last','last-error','legal?','length','let', - 'letex','letn','list','list?','load','local','log','lookup', - 'lower-case','macro?','main-args','make-dir','map','mat','match', - 'max','member','min','mod','mul','multiply','name','net-accept', - 'net-close','net-connect','net-error','net-eval','net-interface', - 'net-listen','net-local','net-lookup','net-peek','net-peer', - 'net-ping','net-receive','net-receive-from','net-receive-udp', - 'net-select','net-send','net-send-to','net-send-udp','net-service', - 'net-sessions','new','nil','nil?','normal','not','now','nper','npv', - 'nth','null?','number?','open','or','pack','parse','parse-date', - 'peek','pipe','pmt','pop','pop-assoc','post-url','pow', - 'pretty-print','primitive?','print','println','prob-chi2','prob-z', - 'process','prompt-event','protected?','push','put-url','pv','quote', - 'quote?','rand','random','randomize','read-buffer','read-char', - 'read-expr','read-file','read-key','read-line','read-utf8', - 'real-path','receive','ref','ref-all','regex','regex-comp', - 'remove-dir','rename-file','replace','reset','rest','reverse', - 'rotate','round','save','search','seed','seek','select','semaphore', - 'send','sequence','series','set','set-locale','set-ref', - 'set-ref-all','setf','setq','sgn','share','signal','silent','sin', - 'sinh','sleep','slice','sort','source','spawn','sqrt','starts-with', - 'string','string?','sub','swap','sym','symbol?','symbols','sync', - 'sys-error','sys-info','tan','tanh','throw','throw-error','time', - 'time-of-day','timer','title-case','trace','trace-highlight', - 'transpose','trim','true','true?','unicode','unify','unique', - 'unless','unpack','until','upper-case','utf8','utf8len','uuid', - 'wait-pid','when','while','write-buffer','write-char','write-file', - 'write-line','xfer-event','xml-error','xml-parse','xml-type-tags', - 'zero?' - ) - ), - 'SYMBOLS' => array( - 0 => array( - '(', ')','\'' - ), - 1 => array( - '!','!=','$','%','&','*','+','-','/',':', - '<','<<','<=','=','>','>=','>>','^','|' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000AA;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #00aa00; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #009900;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #009900;' - ), - 'NUMBERS' => array( - 0 => 'color: #777700;' - ), - 'METHODS' => array( - 0 => 'color: #000099;' - ), - 'SYMBOLS' => array( - 0 => 'color: #AA0000;', - 1 => 'color: #0000AA;' - ), - 'REGEXPS' => array( - 0 => 'color: #00aa00;', - 1 => 'color: #00aa00;', - 2 => 'color: #00aa00;', - 3 => 'color: #00aa00;', - 4 => 'color: #00aa00;', - 5 => 'color: #AA0000;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://www.newlisp.org/downloads/newlisp_manual.html#{FNAME}' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array(':'), - 'REGEXPS' => array( - // tags in newlispdoc - 0 => "\s+@\S*?\s+", - // dollar sign symbols - 1 => "[\\$]\w*", - // curly-braced string literals - 2 => "{[^{}]*?}", - // [text] multi-line strings - 3 => "(?s)\[text\].*\[\/text\](?-s)", - // [code] multi-line blocks - 4 => "(?s)\[code\].*\[\/code\](?-s)", - // variable references - 5 => "'[\w\-]+" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'OOLANG' => array( - 'MATCH_AFTER' => '[a-zA-Z][a-zA-Z0-9_\-]*' - ), - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => '(?<=[^\w\-])', - ) - ), - -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/nsis.php b/library/Vendors/geshi/geshi/nsis.php deleted file mode 100644 index 5631a838..00000000 --- a/library/Vendors/geshi/geshi/nsis.php +++ /dev/null @@ -1,351 +0,0 @@ - 'NSIS', - 'COMMENT_SINGLE' => array(1 => ';', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'",'"','`'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - '!appendfile', '!addIncludeDir', '!addplugindir', '!cd', '!define', '!delfile', '!echo', '!else', - '!endif', '!error', '!execute', '!ifdef', '!ifmacrodef', '!ifmacrondef', '!ifndef', '!include', - '!insertmacro', '!macro', '!macroend', '!packhdr', '!tempfile', '!system', '!undef', '!verbose', - '!warning' - ), - 2 => array( - 'AddBrandingImage', 'AllowRootDirInstall', 'AutoCloseWindow', 'BGFont', - 'BGGradient', 'BrandingText', 'Caption', 'ChangeUI', 'CheckBitmap', 'CompletedText', 'ComponentText', - 'CRCCheck', 'DetailsButtonText', 'DirShow', 'DirText', 'DirVar', 'DirVerify', 'FileErrorText', - 'Function', 'FunctionEnd', 'Icon', 'InstallButtonText', 'InstallColors', 'InstallDir', - 'InstallDirRegKey', 'InstProgressFlags', 'InstType', 'LangString', 'LangStringUP', 'LicenseBkColor', - 'LicenseData', 'LicenseForceSelection', 'LicenseLangString', 'LicenseText', 'LoadLanguageFile', - 'MiscButtonText', 'Name', 'OutFile', 'Page', 'PageEx', 'PageExEnd', 'Section', - 'SectionEnd', 'SectionGroup', 'SectionGroupEnd', 'SetCompressor', 'SetFont', 'ShowInstDetails', - 'ShowUninstDetails', 'SilentInstall', 'SilentUnInstall', 'SpaceTexts', 'SubCaption', 'SubSection', - 'SubSectionEnd', 'UninstallButtonText', 'UninstallCaption', 'UninstallIcon', 'UninstallSubCaption', - 'UninstallText', 'UninstPage', 'Var', 'VIAddVersionKey', 'VIProductVersion', 'WindowIcon', 'XPStyle' - ), - 3 => array( - 'AddSize', 'AllowSkipFiles', 'FileBufSize', 'GetInstDirError', 'PageCallbacks', - 'SectionIn', 'SetCompress', 'SetCompressionLevel', 'SetCompressorDictSize', - 'SetDatablockOptimize', 'SetDateSave', 'SetOverwrite', 'SetPluginUnload' - ), - 4 => array( - 'Abort', 'BringToFront', 'Call', 'CallInstDLL', 'ClearErrors', 'CopyFiles','CreateDirectory', - 'CreateFont', 'CreateShortCut', 'Delete', 'DeleteINISec', 'DeleteINIStr', 'DeleteRegKey', - 'DeleteRegValue', 'DetailPrint', 'EnableWindow', 'EnumRegKey', 'EnumRegValue', 'Exch', 'Exec', - 'ExecShell', 'ExecWait', 'ExpandEnvStrings', 'File', 'FileClose', 'FileOpen', 'FileRead', - 'FileReadByte', 'FileSeek', 'FileWrite', 'FileWriteByte', 'FindClose', 'FindFirst', 'FindNext', - 'FindWindow', 'FlushINI', 'GetCurInstType', 'GetCurrentAddress', 'GetDlgItem', 'GetDLLVersion', - 'GetDLLVersionLocal', 'GetErrorLevel', 'GetFileTime', 'GetFileTimeLocal', 'GetFullPathName', - 'GetFunctionAddress', 'GetLabelAddress', 'GetTempFileName', 'GetWindowText', 'Goto', 'HideWindow', - 'IfAbort', 'IfErrors', 'IfFileExists', 'IfRebootFlag', 'IfSilent', 'InitPluginsDir', 'InstTypeGetText', - 'InstTypeSetText', 'IntCmp', 'IntCmpU', 'IntFmt', 'IntOp', 'IsWindow', 'LockWindow', 'LogSet', 'LogText', - 'MessageBox', 'Nop', 'Pop', 'Push', 'Quit', 'ReadEnvStr', 'ReadIniStr', 'ReadRegDWORD', 'ReadRegStr', - 'Reboot', 'RegDLL', 'Rename', 'ReserveFile', 'Return', 'RMDir', 'SearchPath', 'SectionGetFlags', - 'SectionGetInstTypes', 'SectionGetSize', 'SectionGetText', 'SectionSetFlags', 'SectionSetInstTypes', - 'SectionSetSize', 'SectionSetText', 'SendMessage', 'SetAutoClose', 'SetBrandingImage', 'SetCtlColors', - 'SetCurInstType', 'SetDetailsPrint', 'SetDetailsView', 'SetErrorLevel', 'SetErrors', 'SetFileAttributes', - 'SetOutPath', 'SetRebootFlag', 'SetShellVarContext', 'SetSilent', 'ShowWindow', 'Sleep', 'StrCmp', - 'StrCpy', 'StrLen', 'UnRegDLL', 'WriteINIStr', 'WriteRegBin', 'WriteRegDWORD', 'WriteRegExpandStr', - 'WriteRegStr', 'WriteUninstaller' - ), - 5 => array( - 'all', 'alwaysoff', 'ARCHIVE', 'auto', 'both', 'bzip2', 'checkbox', 'components', 'current', - 'custom', 'directory', 'false', 'FILE_ATTRIBUTE_ARCHIVE', 'FILE_ATTRIBUTE_HIDDEN', 'FILE_ATTRIBUTE_NORMAL', - 'FILE_ATTRIBUTE_OFFLINE', 'FILE_ATTRIBUTE_READONLY', 'FILE_ATTRIBUTE_SYSTEM,TEMPORARY', - 'FILE_ATTRIBUTE_TEMPORARY', 'force', 'HIDDEN', 'hide', 'HKCC', 'HKCR', 'HKCU', 'HKDD', 'HKEY_CLASSES_ROOT', - 'HKEY_CURRENT_CONFIG', 'HKEY_CURRENT_USER', 'HKEY_DYN_DATA', 'HKEY_LOCAL_MACHINE', 'HKEY_PERFORMANCE_DATA', - 'HKEY_USERS', 'HKLM', 'HKPD', 'HKU', 'IDABORT', 'IDCANCEL', 'IDIGNORE', 'IDNO', 'IDOK', 'IDRETRY', 'IDYES', - 'ifdiff', 'ifnewer', 'instfiles', 'lastused', 'leave', 'license', 'listonly', 'lzma', 'manual', - 'MB_ABORTRETRYIGNORE', 'MB_DEFBUTTON1', 'MB_DEFBUTTON2', 'MB_DEFBUTTON3', 'MB_DEFBUTTON4', - 'MB_ICONEXCLAMATION', 'MB_ICONINFORMATION', 'MB_ICONQUESTION', 'MB_ICONSTOP', 'MB_OK', 'MB_OKCANCEL', - 'MB_RETRYCANCEL', 'MB_RIGHT', 'MB_SETFOREGROUND', 'MB_TOPMOST', 'MB_YESNO', 'MB_YESNOCANCEL', 'nevershow', - 'none', 'normal', 'off', 'OFFLINE', 'on', 'radiobuttons', 'READONLY', 'RO', 'SHCTX', 'SHELL_CONTEXT', 'show', - 'silent', 'silentlog', 'SW_HIDE', 'SW_SHOWMAXIMIZED', 'SW_SHOWMINIMIZED', 'SW_SHOWNORMAL', 'SYSTEM', - 'textonly', 'true', 'try', 'uninstConfirm', 'zlib' - ), - 6 => array( - '/a', '/components', '/COMPONENTSONLYONCUSTOM', '/CUSTOMSTRING', '/e', '/FILESONLY', '/FINAL', '/gray', '/GLOBAL', - '/ifempty', '/IMGID', '/ITALIC', '/lang', '/NOCUSTOM', '/nonfatal', '/NOUNLOAD', '/oname', '/r', '/REBOOTOK', - '/RESIZETOFIT', '/SOLID', '/SD', '/SHORT', '/silent', '/STRIKE', '/TIMEOUT', '/TRIMCENTER', '/TRIMLEFT', - '/TRIMRIGHT', '/UNDERLINE', '/windows', '/x' - ), - 7 => array( - '.onGUIEnd', '.onGUIInit', '.onInit', '.onInstFailed', '.onInstSuccess', '.onMouseOverSection', - '.onRebootFailed', '.onSelChange', '.onUserAbort', '.onVerifyInstDir', 'un.onGUIEnd', 'un.onGUIInit', - 'un.onInit', 'un.onRebootFailed', 'un.onUninstFailed', 'un.onUninstSuccess', 'un.onUserAbort' - ), - 8 => array( - 'MUI.nsh', '"${NSISDIR}\Contrib\Modern UI\System.nsh"', 'MUI_SYSVERSION', 'MUI_ICON', 'MUI_UNICON', - 'MUI_HEADERIMAGE', 'MUI_HEADERIMAGE_BITMAP', 'MUI_HEADERIMAGE_BITMAP_NOSTRETCH', 'MUI_HEADERIMAGE_BITMAP_RTL', - 'MUI_HEADERIMAGE_BITMAP_RTL_NOSTRETCH', 'MUI_HEADERIMAGE_UNBITMAP', 'MUI_HEADERIMAGE_UNBITMAP_NOSTRETCH', - 'MUI_HEADERIMAGE_UNBITMAP_RTL', 'MUI_HEADERIMAGE_UNBITMAP_RTL_NOSTRETCH', 'MUI_HEADERIMAGE_RIGHT', 'MUI_BGCOLOR', - 'MUI_UI', 'MUI_UI_HEADERIMAGE', 'MUI_UI_HEADERIMAGE_RIGHT', 'MUI_UI_COMPONENTSPAGE_SMALLDESC', - 'MUI_UI_COMPONENTSPAGE_NODESC', 'MUI_WELCOMEFINISHPAGE_BITMAP', 'MUI_WELCOMEFINISHPAGE_BITMAP_NOSTRETCH', - 'MUI_WELCOMEFINISHPAGE_INI', 'MUI_UNWELCOMEFINISHPAGE_BITMAP', 'MUI_UNWELCOMEFINISHPAGE_BITMAP_NOSTRETCH', - 'MUI_UNWELCOMEFINISHPAGE_INI', 'MUI_LICENSEPAGE_BGCOLOR', 'MUI_COMPONENTSPAGE_CHECKBITMAP', - 'MUI_COMPONENTSPAGE_SMALLDESC', 'MUI_COMPONENTSPAGE_NODESC', 'MUI_INSTFILESPAGE_COLORS', - 'MUI_INSTFILESPAGE_PROGRESSBAR', 'MUI_FINISHPAGE_NOAUTOCLOSE', 'MUI_UNFINISHPAGE_NOAUTOCLOSE', - 'MUI_ABORTWARNING', 'MUI_ABORTWARNING_TEXT', 'MUI_UNABORTWARNING', 'MUI_UNABORTWARNING_TEXT', - 'MUI_PAGE_WELCOME', 'MUI_PAGE_LICENSE', 'MUI_PAGE_COMPONENTS', 'MUI_PAGE_DIRECTORY', - 'MUI_PAGE_STARTMENU', 'MUI_PAGE_INSTFILES', 'MUI_PAGE_FINISH', 'MUI_UNPAGE_WELCOME', - 'MUI_UNPAGE_CONFIRM', 'MUI_UNPAGE_LICENSE', 'MUI_UNPAGE_COMPONENTS', 'MUI_UNPAGE_DIRECTORY', - 'MUI_UNPAGE_INSTFILES', 'MUI_UNPAGE_FINISH', 'MUI_PAGE_HEADER_TEXT', 'MUI_PAGE_HEADER_SUBTEXT', - 'MUI_WELCOMEPAGE_TITLE', 'MUI_WELCOMEPAGE_TITLE_3LINES', 'MUI_WELCOMEPAGE_TEXT', - 'MUI_LICENSEPAGE_TEXT_TOP', 'MUI_LICENSEPAGE_TEXT_BOTTOM', 'MUI_LICENSEPAGE_BUTTON', - 'MUI_LICENSEPAGE_CHECKBOX', 'MUI_LICENSEPAGE_CHECKBOX_TEXT', 'MUI_LICENSEPAGE_RADIOBUTTONS', - 'MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_ACCEPT', 'MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_DECLINE', - 'MUI_COMPONENTSPAGE_TEXT_TOP', 'MUI_COMPONENTSPAGE_TEXT_COMPLIST', 'MUI_COMPONENTSPAGE_TEXT_INSTTYPE', - 'MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_TITLE', 'MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_INFO', - 'MUI_DIRECTORYPAGE_TEXT_TOP', 'MUI_DIRECTORYPAGE_TEXT_DESTINATION', 'MUI_DIRECTORYPAGE_VARIABLE', - 'MUI_DIRECTORYPAGE_VERIFYONLEAVE', 'MUI_STARTMENU_WRITE_BEGIN', 'MUI_STARTMENU_WRITE_END', - 'MUI_STARTMENUPAGE_TEXT_TOP', 'MUI_STARTMENUPAGE_TEXT_CHECKBOX', 'MUI_STARTMENUPAGE_DEFAULTFOLDER', - 'MUI_STARTMENUPAGE_NODISABLE', 'MUI_STARTMENUPAGE_REGISTRY_ROOT', 'MUI_STARTMENUPAGE_REGISTRY_KEY', - 'MUI_STARTMENUPAGE_REGISTRY_VALUENAME', 'MUI_INSTFILESPAGE_FINISHHEADER_TEXT', - 'MUI_INSTFILESPAGE_FINISHHEADER_SUBTEXT', 'MUI_INSTFILESPAGE_ABORTHEADER_TEXT', - 'MUI_INSTFILESPAGE_ABORTHEADER_SUBTEXT', 'MUI_FINISHPAGE_TITLE', 'MUI_FINISHPAGE_TITLE_3LINES', - 'MUI_FINISHPAGE_TEXT', 'MUI_FINISHPAGE_TEXT_LARGE', 'MUI_FINISHPAGE_BUTTON', - 'MUI_FINISHPAGE_TEXT_REBOOT', 'MUI_FINISHPAGE_TEXT_REBOOTNOW', 'MUI_FINISHPAGE_TEXT_REBOOTLATER', - 'MUI_FINISHPAGE_RUN', 'MUI_FINISHPAGE_RUN_TEXT', 'MUI_FINISHPAGE_RUN_PARAMETERS', - 'MUI_FINISHPAGE_RUN_NOTCHECKED', 'MUI_FINISHPAGE_RUN_FUNCTION', 'MUI_FINISHPAGE_SHOWREADME', - 'MUI_FINISHPAGE_SHOWREADME_TEXT', 'MUI_FINISHPAGE_SHOWREADME_NOTCHECKED', - 'MUI_FINISHPAGE_SHOWREADME_FUNCTION', 'MUI_FINISHPAGE_LINK', 'MUI_FINISHPAGE_LINK_LOCATION', - 'MUI_FINISHPAGE_LINK_COLOR', 'MUI_FINISHPAGE_NOREBOOTSUPPORT', 'MUI_UNCONFIRMPAGE_TEXT_TOP', - 'MUI_UNCONFIRMPAGE_TEXT_LOCATION', 'MUI_LANGUAGE', 'MUI_LANGDLL_DISPLAY', - 'MUI_LANGDLL_REGISTRY_ROOT', 'MUI_LANGDLL_REGISTRY_KEY', 'MUI_LANGDLL_REGISTRY_VALUENAME', - 'MUI_LANGDLL_WINDOWTITLE', 'MUI_LANGDLL_INFO', 'MUI_LANGDLL_ALWAYSSHOW', - 'MUI_RESERVEFILE_INSTALLOPTIONS', 'MUI_RESERVEFILE_LANGDLL', 'MUI_FUNCTION_DESCRIPTION_BEGIN', - 'MUI_DESCRIPTION_TEXT', 'MUI_FUNCTION_DESCRIPTION_END', 'MUI_INSTALLOPTIONS_EXTRACT', - 'MUI_INSTALLOPTIONS_EXTRACT_AS', 'MUI_HEADER_TEXT', 'MUI_INSTALLOPTIONS_DISPLAY', - 'MUI_INSTALLOPTIONS_INITDIALOG', 'MUI_INSTALLOPTIONS_SHOW', - 'MUI_INSTALLOPTIONS_DISPLAY_RETURN', 'MUI_INSTALLOPTIONS_SHOW_RETURN', - 'MUI_INSTALLOPTIONS_READ', 'MUI_INSTALLOPTIONS_WRITE', - 'MUI_CUSTOMFUNCTION_GUIINIT', 'MUI_CUSTOMFUNCTION_UNGUIINIT', - 'MUI_CUSTOMFUNCTION_ABORT', 'MUI_CUSTOMFUNCTION_UNABORT', - 'MUI_PAGE_CUSTOMFUNCTION_PRE', 'MUI_PAGE_CUSTOMFUNCTION_SHOW', 'MUI_PAGE_CUSTOMFUNCTION_LEAVE', - 'MUI_WELCOMEFINISHPAGE_CUSTOMFUNCTION_INIT' - ), - 9 => array( - 'LogicLib.nsh', '${LOGICLIB}', 'LOGICLIB_STRCMP', 'LOGICLIB_INT64CMP', 'LOGICLIB_SECTIONCMP', '${If}', '${Unless}', - '${ElseIf}', '${ElseUnless}', '${Else}', '${EndIf}', '${EndUnless}', '${AndIf}', '${AndUnless}', - '${OrIf}', '${OrUnless}', '${IfThen}', '${IfCmd}', '${Select}', '${Case2}', '${Case3}', - '${Case4}', '${Case5}', '${CaseElse}', '${Default}', '${EndSelect}', '${Switch}', - '${Case}', '${EndSwitch}', '${Do}', '${DoWhile}', '${UntilWhile}', '${Continue}', '${Break}', - '${Loop}', '${LoopWhile}', '${LoopUntil}', '${While}', '${ExitWhile}', '${EndWhile}', '${For}', - '${ForEach}', '${ExitFor}', '${Next}', '${Abort}', '${Errors}', '${RebootFlag}', '${Silent}', - '${FileExists}', '${Cmd}', '${SectionIsSelected}', '${SectionIsSectionGroup}', - '${SectionIsSectionGroupEnd}', '${SectionIsBold}', '${SectionIsReadOnly}', - '${SectionIsExpanded}', '${SectionIsPartiallySelected}' - ), - 10 => array( - 'StrFunc.nsh', '${STRFUNC}', '${StrCase}', '${StrClb}', '${StrIOToNSIS}', '${StrLoc}', '${StrNSISToIO}', '${StrRep}', - '${StrSort}', '${StrStr}', '${StrStrAdv}', '${StrTok}', '${StrTrimNewLines}' - ), - 11 => array( - 'UpgradeDLL.nsh', 'UPGRADEDLL_INCLUDED', 'UpgradeDLL' - ), - 12 => array( - 'Sections.nsh', 'SECTIONS_INCLUDED', '${SF_SELECTED}', '${SF_SECGRP}', '${SF_SUBSEC}', '${SF_SECGRPEND}', - '${SF_SUBSECEND}', '${SF_BOLD}', '${SF_RO}', '${SF_EXPAND}', '${SF_PSELECTED}', '${SF_TOGGLED}', - '${SF_NAMECHG}', '${SECTION_OFF}', 'SelectSection', 'UnselectSection', 'ReverseSection', - 'StartRadioButtons', 'RadioButton', 'EndRadioButtons', '${INSTTYPE_0}', '${INSTTYPE_1}', '${INSTTYPE_2}', - '${INSTTYPE_3}', '${INSTTYPE_4}', '${INSTTYPE_5}', '${INSTTYPE_6}', '${INSTTYPE_7}', '${INSTTYPE_8}', - '${INSTTYPE_9}', '${INSTTYPE_10}', '${INSTTYPE_11}', '${INSTTYPE_12}', '${INSTTYPE_13}', '${INSTTYPE_14}', - '${INSTTYPE_15}', '${INSTTYPE_16}', '${INSTTYPE_17}', '${INSTTYPE_18}', '${INSTTYPE_19}', '${INSTTYPE_20}', - '${INSTTYPE_21}', '${INSTTYPE_22}', '${INSTTYPE_23}', '${INSTTYPE_24}', '${INSTTYPE_25}', '${INSTTYPE_26}', - '${INSTTYPE_27}', '${INSTTYPE_28}', '${INSTTYPE_29}', '${INSTTYPE_30}', '${INSTTYPE_31}', '${INSTTYPE_32}', - 'SetSectionInInstType', 'ClearSectionInInstType', 'SetSectionFlag', 'ClearSectionFlag', 'SectionFlagIsSet' - ), - 13 => array( - 'Colors.nsh', 'WHITE', 'BLACK', 'YELLOW', 'RED', 'GREEN', 'BLUE', 'MAGENTA', 'CYAN', 'rgb2hex' - ), - 14 => array( - 'FileFunc.nsh', '${Locate}', '${GetSize}', '${DriveSpace}', '${GetDrives}', '${GetTime}', '${GetFileAttributes}', '${GetFileVersion}', '${GetExeName}', '${GetExePath}', '${GetParameters}', '${GetOptions}', '${GetRoot}', '${GetParent}', '${GetFileName}', '${GetBaseName}', '${GetFileExt}', '${BannerTrimPath}', '${DirState}', '${RefreshShellIcons}' - ), - 15 => array( - 'TextFunc.nsh', '${LineFind}', '${LineRead}', '${FileReadFromEnd}', '${LineSum}', '${FileJoin}', '${TextCompare}', '${ConfigRead}', '${ConfigWrite}', '${FileRecode}', '${TrimNewLines}' - ), - 16 => array( - 'WordFunc.nsh', '${WordFind}', '${WordFind2X}', '${WordFind3X}', '${WordReplace}', '${WordAdd}', '${WordInsert}', '${StrFilter}', '${VersionCompare}', '${VersionConvert}' - ) - ), - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false, - 8 => false, - 9 => false, - 10 => false, - 11 => false, - 12 => false, - 13 => false, - 14 => false, - 15 => false, - 16 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000066; font-weight:bold;', - 2 => 'color: #000066;', - 3 => 'color: #003366;', - 4 => 'color: #000099;', - 5 => 'color: #ff6600;', - 6 => 'color: #ff6600;', - 7 => 'color: #006600;', - 8 => 'color: #006600;', - 9 => 'color: #006600;', - 10 => 'color: #006600;', - 11 => 'color: #006600;', - 12 => 'color: #006600;', - 13 => 'color: #006600;', - 14 => 'color: #006600;', - 15 => 'color: #006600;', - 16 => 'color: #006600;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #666666; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #660066; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => '' - ), - 'STRINGS' => array( - 0 => 'color: #660066;' - ), - 'NUMBERS' => array( - 0 => '' - ), - 'METHODS' => array( - 0 => '' - ), - 'SYMBOLS' => array( - 0 => '' - ), - 'REGEXPS' => array( - 0 => 'color: #660000;', - 1 => 'color: #660000;', - 2 => 'color: #660000;', - 3 => 'color: #660000;', - 4 => 'color: #660000;', - 5 => 'color: #660000;', - 6 => 'color: #660000;', - 7 => 'color: #000099;', - 8 => 'color: #003399;' - ), - 'SCRIPT' => array( - 0 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '', - 9 => '', - 10 => '', - 11 => '', - 12 => '', - 13 => '', - 14 => '', - 15 => '', - 16 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 0 => '\$\$', - 1 => '\$\\r', - 2 => '\$\\n', - 3 => '\$\\t', - 4 => '\$[a-zA-Z0-9_]+', - 5 => '\$\{.{1,256}\}', - 6 => '\$\\\(.{1,256}\\\)', - 7 => array( - GESHI_SEARCH => '([^:\/\\\*\?\"\<\>(?:)\s]*?)(::)([^:\/\\\*\?\"\<\>(?:)\s]*?)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '\\2\\3' - ), - 8 => array( - GESHI_SEARCH => '([^:\/\\\*\?\"\<\>(?:)\s]*?)(::)([^:\/\\\*\?\"\<\>(?:)]*?\s)', - GESHI_REPLACE => '\\3', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1\\2', - GESHI_AFTER => '' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/oberon2.php b/library/Vendors/geshi/geshi/oberon2.php deleted file mode 100644 index 8339f3fb..00000000 --- a/library/Vendors/geshi/geshi/oberon2.php +++ /dev/null @@ -1,135 +0,0 @@ - 'Oberon-2', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array('(*' => '*)'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array("''"), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'ARRAY', 'BEGIN', 'BY', 'CASE', - 'CONST', 'DIV', 'DO', 'ELSE', 'ELSIF', 'END', - 'EXIT', 'FOR', 'IF', 'IMPORT', 'IN', 'IS', - 'LOOP', 'MOD', 'MODULE', 'OF', - 'OR', 'POINTER', 'PROCEDURE', 'RECORD', - 'REPEAT', 'RETURN', 'THEN', 'TO', - 'TYPE', 'UNTIL', 'VAR', 'WHILE', 'WITH' - ), - 2 => array( - 'NIL', 'FALSE', 'TRUE', - ), - 3 => array( - 'ABS', 'ASH', 'ASSERT', 'CAP', 'CHR', 'COPY', 'DEC', - 'ENTIER', 'EXCL', 'HALT', 'INC', 'INCL', 'LEN', - 'LONG', 'MAX', 'MIN', 'NEW', 'ODD', 'ORD', 'SHORT', 'SIZE' - ), - 4 => array( - 'BOOLEAN', 'CHAR', 'SHORTINT', 'LONGINT', - 'INTEGER', 'LONGREAL', 'REAL', 'SET', 'PTR' - ), - ), - 'SYMBOLS' => array( - ',', ':', '=', '+', '-', '*', '/', '#', '~' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;', - 4 => 'color: #000066; font-weight: bold;' - ), - 'COMMENTS' => array( - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;', - 'HARD' => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #0066ee;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/objc.php b/library/Vendors/geshi/geshi/objc.php deleted file mode 100644 index 5a5c5940..00000000 --- a/library/Vendors/geshi/geshi/objc.php +++ /dev/null @@ -1,358 +0,0 @@ - 'Objective-C', - 'COMMENT_SINGLE' => array( - //Compiler directives - 1 => '#', - //Single line C-Comments - 2 => '//' - ), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Multiline Continuation for single-line comment - 2 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m', - //Pseudo-Highlighting of the @-sign before strings - 3 => "/@(?=\")/" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', "'"), - 'ESCAPE_CHAR' => '\\', - - 'KEYWORDS' => array( - // Objective-C keywords - 1 => array( - 'while', 'switch', 'return', 'in', 'if', 'goto', 'foreach', 'for', - 'else', 'do', 'default', 'continue', 'case', '@try', '@throw', - '@synthesize', '@synchronized', '@selector', '@public', '@protocol', - '@protected', '@property', '@private', '@interface', - '@implementation', '@finally', '@end', '@encode', '@defs', '@class', - '@catch' - ), - // Macros and constants - 2 => array( - 'YES', 'USHRT_MAX', 'ULONG_MAX', 'UINT_MAX', 'UCHAR_MAX', 'true', - 'TMP_MAX', 'stdout', 'stdin', 'stderr', 'SIGTERM', 'SIGSEGV', - 'SIGINT', 'SIGILL', 'SIG_IGN', 'SIGFPE', 'SIG_ERR', 'SIG_DFL', - 'SIGABRT', 'SHRT_MIN', 'SHRT_MAX', 'SEEK_SET', 'SEEK_END', - 'SEEK_CUR', 'SCHAR_MIN', 'SCHAR_MAX', 'RAND_MAX', 'NULL', - 'NO', 'nil', 'Nil', 'L_tmpnam', 'LONG_MIN', 'LONG_MAX', - 'LDBL_MIN_EXP', 'LDBL_MIN', 'LDBL_MAX_EXP', 'LDBL_MAX', - 'LDBL_MANT_DIG', 'LDBL_EPSILON', 'LDBL_DIG', 'INT_MIN', 'INT_MAX', - 'HUGE_VAL', 'FOPEN_MAX', 'FLT_ROUNDS', 'FLT_RADIX', 'FLT_MIN_EXP', - 'FLT_MIN', 'FLT_MAX_EXP', 'FLT_MAX', 'FLT_MANT_DIG', 'FLT_EPSILON', - 'FLT_DIG', 'FILENAME_MAX', 'false', 'EXIT_SUCCESS', 'EXIT_FAILURE', - 'errno', 'ERANGE', 'EOF', 'enum', 'EDOM', 'DBL_MIN_EXP', 'DBL_MIN', - 'DBL_MAX_EXP', 'DBL_MAX', 'DBL_MANT_DIG', 'DBL_EPSILON', 'DBL_DIG', - 'CLOCKS_PER_SEC', 'CHAR_MIN', 'CHAR_MAX', 'CHAR_BIT', 'BUFSIZ', - 'break' - ), - // C standard library functions - 3 => array( - 'vsprintf', 'vprintf', 'vfprintf', 'va_start', 'va_end', 'va_arg', - 'ungetc', 'toupper', 'tolower', 'tmpname', 'tmpfile', 'time', - 'tanh', 'tan', 'system', 'strxfrm', 'strtoul', 'strtol', 'strtok', - 'strtod', 'strstr', 'strspn', 'strrchr', 'strpbrk', 'strncpy', - 'strncmp', 'strncat', 'strlen', 'strftime', 'strerror', 'strcspn', - 'strcpy', 'strcoll', 'strcmp', 'strchr', 'strcat', 'sscanf', - 'srand', 'sqrt', 'sprintf', 'snprintf', 'sizeof', 'sinh', 'sin', - 'setvbuf', 'setjmp', 'setbuf', 'scanf', 'rewind', 'rename', - 'remove', 'realloc', 'rand', 'qsort', 'puts', 'putchar', 'putc', - 'printf', 'pow', 'perror', 'offsetof', 'modf', 'mktime', 'memset', - 'memmove', 'memcpy', 'memcmp', 'memchr', 'malloc', 'longjmp', - 'log10', 'log', 'localtime', 'ldiv', 'ldexp', 'labs', 'isxdigit', - 'isupper', 'isspace', 'ispunct', 'isprint', 'islower', - 'isgraph', 'isdigit', 'iscntrl', 'isalpha', 'isalnum', 'gmtime', - 'gets', 'getenv', 'getchar', 'getc', 'fwrite', 'ftell', 'fsetpos', - 'fseek', 'fscanf', 'frexp', 'freopen', 'free', 'fread', 'fputs', - 'fputc', 'fprintf', 'fopen', 'fmod', 'floor', 'fgets', 'fgetpos', - 'fgetc', 'fflush', 'ferror', 'feof', 'fclose', 'fabs', 'exp', - 'exit', 'div', 'difftime', 'ctime', 'cosh', 'cos', 'clock', - 'clearerr', 'ceil', 'calloc', 'bsearch', 'atol', 'atoi', 'atof', - 'atexit', 'atan2', 'atan', 'assert', 'asin', 'asctime', 'acos', - 'abs', 'abort' - ), - // Data types (C, Objective-C, Cocoa) - 4 => array( - 'volatile', 'void', 'va_list', 'unsigned', 'union', 'typedef', 'tm', - 'time_t', 'struct', 'string', 'static', 'size_t', - 'signed', 'signal', 'short', 'SEL', 'register', 'raise', - 'ptrdiff_t', 'NSZone', 'NSRect', 'NSRange', 'NSPoint', 'long', - 'ldiv_t', 'jmp_buf', 'int', 'IMP', 'id', 'fpos_t', 'float', 'FILE', - 'extern', 'double', 'div_t', 'const', 'clock_t', 'Class', 'char', - 'BOOL', 'auto' - ), - // Foundation classes - 5 => array( - 'NSXMLParser', 'NSXMLNode', 'NSXMLElement', 'NSXMLDTDNode', - 'NSXMLDTD', 'NSXMLDocument', 'NSWhoseSpecifier', - 'NSValueTransformer', 'NSValue', 'NSUserDefaults', 'NSURLResponse', - 'NSURLRequest', 'NSURLProtocol', 'NSURLProtectionSpace', - 'NSURLHandle', 'NSURLDownload', 'NSURLCredentialStorage', - 'NSURLCredential', 'NSURLConnection', 'NSURLCache', - 'NSURLAuthenticationChallenge', 'NSURL', 'NSUniqueIDSpecifier', - 'NSUndoManager', 'NSUnarchiver', 'NSTimeZone', 'NSTimer', - 'NSThread', 'NSTask', 'NSString', 'NSStream', 'NSSpellServer', - 'NSSpecifierTest', 'NSSortDescriptor', 'NSSocketPortNameServer', - 'NSSocketPort', 'NSSetCommand', 'NSSet', 'NSSerializer', - 'NSScriptWhoseTest', 'NSScriptSuiteRegistry', - 'NSScriptObjectSpecifier', 'NSScriptExecutionContext', - 'NSScriptCommandDescription', 'NSScriptCommand', - 'NSScriptCoercionHandler', 'NSScriptClassDescription', 'NSScanner', - 'NSRunLoop', 'NSRelativeSpecifier', 'NSRecursiveLock', - 'NSRangeSpecifier', 'NSRandomSpecifier', 'NSQuitCommand', 'NSProxy', - 'NSProtocolChecker', 'NSPropertySpecifier', - 'NSPropertyListSerialization', 'NSProcessInfo', 'NSPredicate', - 'NSPositionalSpecifier', 'NSPortNameServer', 'NSPortMessage', - 'NSPortCoder', 'NSPort', 'NSPointerFunctions', 'NSPointerArray', - 'NSPipe', 'NSOutputStream', 'NSOperationQueue', 'NSOperation', - 'NSObject', 'NSNumberFormatter', 'NSNumber', 'NSNull', - 'NSNotificationQueue', 'NSNotificationCenter', 'NSNotification', - 'NSNetServiceBrowser', 'NSNetService', 'NSNameSpecifier', - 'NSMutableURLRequest', 'NSMutableString', 'NSMutableSet', - 'NSMutableIndexSet', 'NSMutableDictionary', 'NSMutableData', - 'NSMutableCharacterSet', 'NSMutableAttributedString', - 'NSMutableArray', 'NSMoveCommand', 'NSMiddleSpecifier', - 'NSMethodSignature', 'NSMetadataQueryResultGroup', - 'NSMetadataQueryAttributeValueTuple', 'NSMetadataQuery', - 'NSMetadataItem', 'NSMessagePortNameServer', 'NSMessagePort', - 'NSMapTable', 'NSMachPort', 'NSMachBootstrapServer', - 'NSLogicalTest', 'NSLock', 'NSLocale', 'NSKeyedUnarchiver', - 'NSKeyedArchiver', 'NSInvocationOperation', 'NSInvocation', - 'NSInputStream', 'NSIndexSpecifier', 'NSIndexSet', 'NSIndexPath', - 'NSHTTPURLResponse', 'NSHTTPCookieStorage', 'NSHTTPCookie', - 'NSHost', 'NSHashTable', 'NSGetCommand', 'NSGarbageCollector', - 'NSFormatter', 'NSFileManager', 'NSFileHandle', 'NSExpression', - 'NSExistsCommand', 'NSException', 'NSError', 'NSEnumerator', - 'NSDistributedNotificationCenter', 'NSDistributedLock', - 'NSDistantObjectRequest', 'NSDistantObject', - 'NSDirectoryEnumerator', 'NSDictionary', 'NSDeserializer', - 'NSDeleteCommand', 'NSDecimalNumberHandler', 'NSDecimalNumber', - 'NSDateFormatter', 'NSDateComponents', 'NSDate', 'NSData', - 'NSCreateCommand', 'NSCountedSet', 'NSCountCommand', 'NSConnection', - 'NSConditionLock', 'NSCondition', 'NSCompoundPredicate', - 'NSComparisonPredicate', 'NSCoder', 'NSCloseCommand', - 'NSCloneCommand', 'NSClassDescription', 'NSCharacterSet', - 'NSCalendarDate', 'NSCalendar', 'NSCachedURLResponse', 'NSBundle', - 'NSAutoreleasePool', 'NSAttributedString', 'NSAssertionHandler', - 'NSArray', 'NSArchiver', 'NSAppleScript', 'NSAppleEventManager', - 'NSAppleEventDescriptor', 'NSAffineTransform' - ), - // Foundation protocols - 6 => array( - 'NSURLProtocolClient', 'NSURLHandleClient', 'NSURLClient', - 'NSURLAuthenticationChallengeSender', 'NSScriptObjectSpecifiers', - 'NSScriptKeyValueCoding', 'NSScriptingComparisonMethods', - 'NSObjCTypeSerializationCallBack', 'NSMutableCopying', - 'NSLocking', 'NSKeyValueObserving', 'NSKeyValueCoding', - 'NSFastEnumeration', 'NSErrorRecoveryAttempting', - 'NSDecimalNumberBehaviors', 'NSCopying', 'NSComparisonMethods', - 'NSCoding' - ), - // AppKit classes - 7 => array( - 'NSWorkspace', 'NSWindowController', 'NSWindow', 'NSViewController', - 'NSViewAnimation', 'NSView', 'NSUserDefaultsController', - 'NSTypesetter', 'NSTreeNode', 'NSTreeController', 'NSTrackingArea', - 'NSToolbarItemGroup', 'NSToolbarItem', 'NSToolbar', - 'NSTokenFieldCell', 'NSTokenField', 'NSTextView', - 'NSTextTableBlock', 'NSTextTable', 'NSTextTab', 'NSTextStorage', - 'NSTextList', 'NSTextFieldCell', 'NSTextField', 'NSTextContainer', - 'NSTextBlock', 'NSTextAttachmentCell', 'NSTextAttachment', 'NSText', - 'NSTabViewItem', 'NSTabView', 'NSTableView', 'NSTableHeaderView', - 'NSTableHeaderCell', 'NSTableColumn', 'NSStepperCell', 'NSStepper', - 'NSStatusItem', 'NSStatusBar', 'NSSplitView', 'NSSpellChecker', - 'NSSpeechSynthesizer', 'NSSpeechRecognizer', 'NSSound', - 'NSSliderCell', 'NSSlider', 'NSSimpleHorizontalTypesetter', - 'NSShadow', 'NSSegmentedControl', 'NSSegmentedCell', - 'NSSecureTextFieldCell', 'NSSecureTextField', 'NSSearchFieldCell', - 'NSSearchField', 'NSScrollView', 'NSScroller', 'NSScreen', - 'NSSavePanel', 'NSRulerView', 'NSRulerMarker', 'NSRuleEditor', - 'NSResponder', 'NSQuickDrawView', 'NSProgressIndicator', - 'NSPrintPanel', 'NSPrintOperation', 'NSPrintInfo', 'NSPrinter', - 'NSPredicateEditorRowTemplate', 'NSPredicateEditor', - 'NSPopUpButtonCell', 'NSPopUpButton', 'NSPICTImageRep', - 'NSPersistentDocument', 'NSPDFImageRep', 'NSPathControl', - 'NSPathComponentCell', 'NSPathCell', 'NSPasteboard', - 'NSParagraphStyle', 'NSPanel', 'NSPageLayout', 'NSOutlineView', - 'NSOpenPanel', 'NSOpenGLView', 'NSOpenGLPixelFormat', - 'NSOpenGLPixelBuffer', 'NSOpenGLContext', 'NSObjectController', - 'NSNibOutletConnector', 'NSNibControlConnector', 'NSNibConnector', - 'NSNib', 'NSMutableParagraphStyle', 'NSMovieView', 'NSMovie', - 'NSMenuView', 'NSMenuItemCell', 'NSMenuItem', 'NSMenu', 'NSMatrix', - 'NSLevelIndicatorCell', 'NSLevelIndicator', 'NSLayoutManager', - 'NSInputServer', 'NSInputManager', 'NSImageView', 'NSImageRep', - 'NSImageCell', 'NSImage', 'NSHelpManager', 'NSGraphicsContext', - 'NSGradient', 'NSGlyphInfo', 'NSGlyphGenerator', 'NSFormCell', - 'NSForm', 'NSFontPanel', 'NSFontManager', 'NSFontDescriptor', - 'NSFont', 'NSFileWrapper', 'NSEvent', 'NSEPSImageRep', 'NSDrawer', - 'NSDocumentController', 'NSDocument', 'NSDockTile', - 'NSDictionaryController', 'NSDatePickerCell', 'NSDatePicker', - 'NSCustomImageRep', 'NSCursor', 'NSController', 'NSControl', - 'NSComboBoxCell', 'NSComboBox', 'NSColorWell', 'NSColorSpace', - 'NSColorPicker', 'NSColorPanel', 'NSColorList', 'NSColor', - 'NSCollectionViewItem', 'NSCollectionView', 'NSClipView', - 'NSCIImageRep', 'NSCell', 'NSCachedImageRep', 'NSButtonCell', - 'NSButton', 'NSBrowserCell', 'NSBrowser', 'NSBox', - 'NSBitmapImageRep', 'NSBezierPath', 'NSATSTypesetter', - 'NSArrayController', 'NSApplication', 'NSAnimationContext', - 'NSAnimation', 'NSAlert', 'NSActionCell' - ), - // AppKit protocols - 8 => array( - 'NSWindowScripting', 'NSValidatedUserInterfaceItem', - 'NSUserInterfaceValidations', 'NSToolTipOwner', - 'NSToolbarItemValidation', 'NSTextInput', - 'NSTableDataSource', 'NSServicesRequests', - 'NSPrintPanelAccessorizing', 'NSPlaceholders', - 'NSPathControlDelegate', 'NSPathCellDelegate', - 'NSOutlineViewDataSource', 'NSNibAwaking', 'NSMenuValidation', - 'NSKeyValueBindingCreation', 'NSInputServiceProvider', - 'NSInputServerMouseTracker', 'NSIgnoreMisspelledWords', - 'NSGlyphStorage', 'NSFontPanelValidation', 'NSEditorRegistration', - 'NSEditor', 'NSDraggingSource', 'NSDraggingInfo', - 'NSDraggingDestination', 'NSDictionaryControllerKeyValuePair', - 'NSComboBoxDataSource', 'NSComboBoxCellDataSource', - 'NSColorPickingDefault', 'NSColorPickingCustom', 'NSChangeSpelling', - 'NSAnimatablePropertyContainer', 'NSAccessibility' - ), - // CoreData classes - 9 => array( - 'NSRelationshipDescription', 'NSPropertyMapping', - 'NSPropertyDescription', 'NSPersistentStoreCoordinator', - 'NSPersistentStore', 'NSMigrationManager', 'NSMappingModel', - 'NSManagedObjectModel', 'NSManagedObjectID', - 'NSManagedObjectContext', 'NSManagedObject', - 'NSFetchRequestExpression', 'NSFetchRequest', - 'NSFetchedPropertyDescription', 'NSEntityMigrationPolicy', - 'NSEntityMapping', 'NSEntityDescription', 'NSAttributeDescription', - 'NSAtomicStoreCacheNode', 'NSAtomicStore' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => true, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true, - 9 => true - ), - // Define the colors for the groups listed above - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #a61390;', // Objective-C keywords - 2 => 'color: #a61390;', // Macros and constants - 3 => 'color: #a61390;', // C standard library functions - 4 => 'color: #a61390;', // data types - 5 => 'color: #400080;', // Foundation classes - 6 => 'color: #2a6f76;', // Foundation protocols - 7 => 'color: #400080;', // AppKit classes - 8 => 'color: #2a6f76;', // AppKit protocols - 9 => 'color: #400080;' // CoreData classes - ), - 'COMMENTS' => array( - 1 => 'color: #6e371a;', // Preprocessor directives - 2 => 'color: #11740a; font-style: italic;', // Normal C single-line comments - 3 => 'color: #bf1d1a;', // Q-sign in front of Strings - 'MULTI' => 'color: #11740a; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #2400d9;' - ), - 'BRACKETS' => array( - 0 => 'color: #002200;' - ), - 'STRINGS' => array( - 0 => 'color: #bf1d1a;' - ), - 'NUMBERS' => array( - 0 => 'color: #2400d9;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #002200;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAME}.html', - 4 => '', - 5 => 'http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/{FNAME}_Class/', - 6 => 'http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Protocols/{FNAME}_Protocol/', - 7 => 'http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/Classes/{FNAME}_Class/', - 8 => 'http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/Protocols/{FNAME}_Protocol/', - 9 => 'http://developer.apple.com/documentation/Cocoa/Reference/CoreDataFramework/Classes/{FNAME}_Class/' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/ocaml-brief.php b/library/Vendors/geshi/geshi/ocaml-brief.php deleted file mode 100644 index 2e2a82fb..00000000 --- a/library/Vendors/geshi/geshi/ocaml-brief.php +++ /dev/null @@ -1,112 +0,0 @@ - 'OCaml (brief)', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array('(*' => '*)'), - 'CASE_KEYWORDS' => 0, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => "", - 'KEYWORDS' => array( - /* main OCaml keywords */ - 1 => array( - 'and', 'as', 'asr', 'begin', 'class', 'closed', 'constraint', 'do', 'done', 'downto', 'else', - 'end', 'exception', 'external', 'failwith', 'false', 'flush', 'for', 'fun', 'function', 'functor', - 'if', 'in', 'include', 'inherit', 'incr', 'land', 'let', 'load', 'los', 'lsl', 'lsr', 'lxor', - 'match', 'method', 'mod', 'module', 'mutable', 'new', 'not', 'of', 'open', 'option', 'or', 'parser', - 'private', 'ref', 'rec', 'raise', 'regexp', 'sig', 'struct', 'stdout', 'stdin', 'stderr', 'then', - 'to', 'true', 'try', 'type', 'val', 'virtual', 'when', 'while', 'with' - ) - ), - /* highlighting symbols is really important in OCaml */ - 'SYMBOLS' => array( - ';', '!', ':', '.', '=', '%', '^', '*', '-', '/', '+', - '>', '<', '(', ')', '[', ']', '&', '|', '#', "'" - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #06c; font-weight: bold;' /* nice blue */ - ), - 'COMMENTS' => array( - 'MULTI' => 'color: #5d478b; font-style: italic;' /* light purple */ - ), - 'ESCAPE_CHAR' => array( - ), - 'BRACKETS' => array( - 0 => 'color: #6c6;' - ), - 'STRINGS' => array( - 0 => 'color: #3cb371;' /* nice green */ - ), - 'NUMBERS' => array( - 0 => 'color: #c6c;' /* pink */ - ), - 'METHODS' => array( - 1 => 'color: #060;' /* dark green */ - ), - 'REGEXPS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #a52a2a;' /* maroon */ - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/ocaml.php b/library/Vendors/geshi/geshi/ocaml.php deleted file mode 100644 index 46e6a22a..00000000 --- a/library/Vendors/geshi/geshi/ocaml.php +++ /dev/null @@ -1,187 +0,0 @@ - 'OCaml', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array('(*' => '*)'), - 'COMMENT_REGEXP' => array(1 => '/\(\*(?:(?R)|.)+?\*\)/s'), - 'CASE_KEYWORDS' => 0, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => "", - 'KEYWORDS' => array( - /* main OCaml keywords */ - 1 => array( - 'and', 'as', 'asr', 'begin', 'class', 'closed', 'constraint', 'do', 'done', 'downto', 'else', - 'end', 'exception', 'external', 'failwith', 'false', 'for', 'fun', 'function', 'functor', - 'if', 'in', 'include', 'inherit', 'incr', 'land', 'let', 'load', 'los', 'lsl', 'lsr', 'lxor', - 'match', 'method', 'mod', 'module', 'mutable', 'new', 'not', 'of', 'open', 'option', 'or', 'parser', - 'private', 'ref', 'rec', 'raise', 'regexp', 'sig', 'struct', 'stdout', 'stdin', 'stderr', 'then', - 'to', 'true', 'try', 'type', 'val', 'virtual', 'when', 'while', 'with' - ), - /* define names of main librarys, so we can link to it */ - 2 => array( - 'Arg', 'Arith_status', 'Array', //'Array1', 'Array2', 'Array3', - 'ArrayLabels', 'Big_int', 'Bigarray', 'Buffer', 'Callback', - 'CamlinternalLazy', 'CamlinternalMod', 'CamlinternalOO', 'Char', - 'Complex', 'Condition', 'Dbm', 'Digest', 'Dynlink', 'Event', - 'Filename', 'Format', 'Gc', 'Genlex', 'Graphics', 'GraphicsX11', - 'Hashtbl', 'Int32', 'Int64', 'Lazy', 'Lexing', 'List', 'ListLabels', - 'Map', 'Marshal', 'MoreLabels', 'Mutex', 'Nativeint', 'Num', 'Obj', - 'Oo', 'Parsing', 'Pervasives', 'Printexc', 'Printf', 'Queue', - 'Random', 'Scanf', 'Set', 'Sort', 'Stack', 'StdLabels', 'Str', - 'Stream', 'String', 'StringLabels', 'Sys', 'Thread', 'ThreadUnix', - 'Tk', 'Unix', 'UnixLabels', 'Weak' - ), - /* just link to the Pervasives functions library, cause it's the default opened library when starting OCaml */ - 3 => array( - 'abs', 'abs_float', 'acos', 'asin', 'at_exit', 'atan', 'atan2', - 'bool_of_string', 'ceil', 'char_of_int', 'classify_float', - 'close_in', 'close_in_noerr', 'close_out', 'close_out_noerr', - 'compare', 'cos', 'cosh', 'decr', 'epsilon_float', 'exit', 'exp', - 'float', 'float_of_int', 'float_of_string', 'floor', 'flush', - 'flush_all', 'format_of_string', 'frexp', 'fst', 'ignore', - 'in_channel_length', 'infinity', 'input', 'input_binary_int', - 'input_byte', 'input_char', 'input_line', 'input_value', - 'int_of_char', 'int_of_float', 'int_of_string', 'invalid_arg', - 'ldexp', 'log', 'log10', 'max', 'max_float', 'max_int', 'min', - 'min_float', 'min_int', 'mod_float', 'modf', 'nan', 'open_in', - 'open_in_bin', 'open_in_gen', 'open_out', 'open_out_bin', - 'open_out_gen', 'out_channel_length', 'output', 'output_binary_int', - 'output_byte', 'output_char', 'output_string', 'output_value', - 'pos_in', 'pos_out', 'pred', 'prerr_char', 'prerr_endline', - 'prerr_float', 'prerr_int', 'prerr_newline', 'prerr_string', - 'print_char', 'print_endline', 'print_float', 'print_int', - 'print_newline', 'print_string', 'read_float', 'read_int', - 'read_line', 'really_input', 'seek_in', 'seek_out', - 'set_binary_mode_in', 'set_binary_mode_out', 'sin', 'sinh', 'snd', - 'sqrt', 'string_of_bool', 'string_of_float', 'string_of_format', - 'string_of_int', 'succ', 'tan', 'tanh', 'truncate' - ), - /* here Pervasives Types */ - 4 => array ( - 'array','bool','char','exn','file_descr','format','fpclass', - 'in_channel','int','int32','int64','list','nativeint','open_flag', - 'out_channel','string','Sys_error','unit' - ), - /* finally Pervasives Exceptions */ - 5 => array ( - 'Exit', 'Invalid_Argument', 'Failure', 'Division_by_zero' - ) - ), - /* highlighting symbols is really important in OCaml */ - 'SYMBOLS' => array( - '+.', '-.', '*.', '/.', '[<', '>]', - ';', '!', ':', '.', '=', '%', '^', '*', '-', '/', '+', - '>', '<', '(', ')', '[', ']', '&', '|', '#', "'", - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => true, /* functions name are case sensitive */ - 3 => true, /* types name too */ - 4 => true, /* pervasives types */ - 5 => true /* pervasives exceptions */ - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #06c; font-weight: bold;', /* nice blue */ - 2 => 'color: #06c; font-weight: bold;', /* nice blue */ - 3 => 'color: #06c; font-weight: bold;', /* nice blue */ - 4 => 'color: #06c; font-weight: bold;', /* nice blue */ - 5 => 'color: #06c; font-weight: bold;' /* nice blue */ - ), - 'COMMENTS' => array( - 'MULTI' => 'color: #5d478b; font-style: italic;', /* light purple */ - 1 => 'color: #5d478b; font-style: italic;' /* light purple */ - ), - 'ESCAPE_CHAR' => array( - ), - 'BRACKETS' => array( - 0 => 'color: #a52a2a;' - ), - 'STRINGS' => array( - 0 => 'color: #3cb371;' /* nice green */ - ), - 'NUMBERS' => array( - 0 => 'color: #c6c;' /* pink */ - ), - 'METHODS' => array( - 1 => 'color: #060;' /* dark green */ - ), - 'REGEXPS' => array( - 1 => 'font-weight:bold; color:#339933;', - 2 => 'font-weight:bold; color:#993399;' - ), - 'SYMBOLS' => array( - 0 => 'color: #a52a2a;' /* maroon */ - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - /* some of keywords are Pervasives functions (land, lxor, asr, ...) */ - 1 => '', - /* link to the wanted library */ - 2 => 'http://caml.inria.fr/pub/docs/manual-ocaml/libref/{FNAME}.html', - /* link to Pervasives functions */ - 3 => 'http://caml.inria.fr/pub/docs/manual-ocaml/libref/Pervasives.html#VAL{FNAME}', - /* link to Pervasives type */ - 4 => 'http://caml.inria.fr/pub/docs/manual-ocaml/libref/Pervasives.html#TYPE{FNAME}', - /* link to Pervasives exceptions */ - 5 => 'http://caml.inria.fr/pub/docs/manual-ocaml/libref/Pervasives.html#EXCEPTION{FNAME}' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - 1 => '~\w+', - 2 => '`(?=(?-i:[a-z]))\w*', - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/oobas.php b/library/Vendors/geshi/geshi/oobas.php deleted file mode 100644 index 6f6e13fc..00000000 --- a/library/Vendors/geshi/geshi/oobas.php +++ /dev/null @@ -1,135 +0,0 @@ - 'OpenOffice.org Basic', - 'COMMENT_SINGLE' => array(1 => "'"), - 'COMMENT_MULTI' => array(), - //Single-Line comments using REM keyword - 'COMMENT_REGEXP' => array(2 => '/\bREM.*?$/i'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'dim','private','public','global','as','if','redim','true','set','byval', - 'false','bool','double','integer','long','object','single','variant', - 'msgbox','print','inputbox','green','blue','red','qbcolor', - 'rgb','open','close','reset','freefile','get','input','line', - 'put','write','loc','seek','eof','lof','chdir','chdrive', - 'curdir','dir','fileattr','filecopy','filedatetime','fileexists', - 'filelen','getattr','kill','mkdir','name','rmdir','setattr', - 'dateserial','datevalue','day','month','weekday','year','cdatetoiso', - 'cdatefromiso','hour','minute','second','timeserial','timevalue', - 'date','now','time','timer','erl','err','error','on','goto','resume', - 'and','eqv','imp','not','or','xor','mod','atn','cos','sin','tan','log', - 'exp','rnd','randomize','sqr','fix','int','abs','sgn','hex','oct', - 'it','then','else','select','case','iif','do','loop','for','next','to', - 'while','wend','gosub','return','call','choose','declare', - 'end','exit','freelibrary','function','rem','stop','sub','switch','with', - 'cbool','cdate','cdbl','cint','clng','const','csng','cstr','defbool', - 'defdate','defdbl','defint','deflng','asc','chr','str','val','cbyte', - 'space','string','format','lcase','left','lset','ltrim','mid','right', - 'rset','rtrim','trim','ucase','split','join','converttourl','convertfromurl', - 'instr','len','strcomp','beep','shell','wait','getsystemticks','environ', - 'getsolarversion','getguitype','twipsperpixelx','twipsperpixely', - 'createunostruct','createunoservice','getprocessservicemanager', - 'createunodialog','createunolistener','createunovalue','thiscomponent', - 'globalscope' - ) - ), - 'SYMBOLS' => array( - '(', ')', '=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080;', - 2 => 'color: #808080;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/oracle11.php b/library/Vendors/geshi/geshi/oracle11.php deleted file mode 100644 index f57c3f04..00000000 --- a/library/Vendors/geshi/geshi/oracle11.php +++ /dev/null @@ -1,614 +0,0 @@ - 'Oracle 11 SQL', - 'COMMENT_SINGLE' => array(1 => '--'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array("'", '"', '`'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( -//Put your package names here - e.g. select distinct ''''|| lower(name) || ''',' from user_source; -// 6 => array( -// ), - -//Put your table names here - e.g. select distinct ''''|| lower(table_name) || ''',' from user_tables; -// 5 => array( -// ), - -//Put your view names here - e.g. select distinct ''''|| lower(view_name) || ''',' from user_views; -// 4 => array( -// ), - -//Put your table field names here - e.g. select distinct ''''|| lower(column_name) || ''',' from user_tab_columns; -// 3 => array( -// ), - - //Put ORACLE reserved keywords here (11i). I like mine uppercase. - 1 => array( - 'ABS', - 'ACCESS', - 'ACOS', - 'ADD', - 'ADD_MONTHS', - 'ALL', - 'ALTER', - 'ANALYZE', - 'AND', - 'ANY', - 'APPENDCHILDXML', - 'ARRAY', - 'AS', - 'ASC', - 'ASCII', - 'ASCIISTR', - 'ASIN', - 'ASSOCIATE', - 'AT', - 'ATAN', - 'ATAN2', - 'AUDIT', - 'AUTHID', - 'AVG', - 'BEGIN', - 'BETWEEN', - 'BFILENAME', - 'BIN_TO_NUM', - 'BINARY_INTEGER', - 'BITAND', - 'BODY', - 'BOOLEAN', - 'BULK', - 'BY', - 'CALL', - 'CARDINALITY', - 'CASCADE', - 'CASE', - 'CAST', - 'CEIL', - 'CHAR', - 'CHAR_BASE', - 'CHARTOROWID', - 'CHECK', - 'CHR', - 'CLOSE', - 'CLUSTER', - 'CLUSTER_ID', - 'CLUSTER_PROBABILITY', - 'CLUSTER_SET', - 'COALESCE', - 'COLLECT', - 'COLUMN', - 'COMMENT', - 'COMMIT', - 'COMPOSE', - 'COMPRESS', - 'CONCAT', - 'CONNECT', - 'CONSTANT', - 'CONSTRAINT', - 'CONSTRAINTS', - 'CONTEXT', - 'CONTROLFILE', - 'CONVERT', - 'CORR', - 'CORR_K', - 'CORR_S', - 'COS', - 'COSH', - 'COST', - 'COUNT', - 'COVAR_POP', - 'COVAR_SAMP', - 'CREATE', - 'CUBE_TABLE', - 'CUME_DIST', - 'CURRENT', - 'CURRENT_DATE', - 'CURRENT_TIMESTAMP', - 'CURRVAL', - 'CURSOR', - 'CV', - 'DATABASE', - 'DATAOBJ_TO_PARTITION', - 'DATE', - 'DAY', - 'DBTIMEZONE', - 'DECIMAL', - 'DECLARE', - 'DECODE', - 'DECOMPOSE', - 'DEFAULT', - 'DELETE', - 'DELETEXML', - 'DENSE_RANK', - 'DEPTH', - 'DEREF', - 'DESC', - 'DIMENSION', - 'DIRECTORY', - 'DISASSOCIATE', - 'DISTINCT', - 'DO', - 'DROP', - 'DUMP', - 'ELSE', - 'ELSIF', - 'EMPTY_BLOB', - 'EMPTY_CLOB', - 'END', - 'EXCEPTION', - 'EXCLUSIVE', - 'EXEC', - 'EXECUTE', - 'EXISTS', - 'EXISTSNODE', - 'EXIT', - 'EXP', - 'EXPLAIN', - 'EXTENDS', - 'EXTRACT', - 'EXTRACTVALUE', - 'FALSE', - 'FEATURE_ID', - 'FEATURE_SET', - 'FEATURE_VALUE', - 'FETCH', - 'FILE', - 'FIRST', - 'FIRST_VALUE', - 'FLOAT', - 'FLOOR', - 'FOR', - 'FORALL', - 'FROM', - 'FROM_TZ', - 'FUNCTION', - 'GOTO', - 'GRANT', - 'GREATEST', - 'GROUP', - 'GROUP_ID', - 'GROUPING', - 'GROUPING_ID', - 'HAVING', - 'HEAP', - 'HEXTORAW', - 'HOUR', - 'IDENTIFIED', - 'IF', - 'IMMEDIATE', - 'IN', - 'INCREMENT', - 'INDEX', - 'INDEXTYPE', - 'INDICATOR', - 'INITCAP', - 'INITIAL', - 'INSERT', - 'INSERTCHILDXML', - 'INSERTXMLBEFORE', - 'INSTR', - 'INSTRB', - 'INTEGER', - 'INTERFACE', - 'INTERSECT', - 'INTERVAL', - 'INTO', - 'IS', - 'ISOLATION', - 'ITERATION_NUMBER', - 'JAVA', - 'KEY', - 'LAG', - 'LAST', - 'LAST_DAY', - 'LAST_VALUE', - 'LEAD', - 'LEAST', - 'LENGTH', - 'LENGTHB', - 'LEVEL', - 'LIBRARY', - 'LIKE', - 'LIMITED', - 'LINK', - 'LN', - 'LNNVL', - 'LOCALTIMESTAMP', - 'LOCK', - 'LOG', - 'LONG', - 'LOOP', - 'LOWER', - 'LPAD', - 'LTRIM', - 'MAKE_REF', - 'MATERIALIZED', - 'MAX', - 'MAXEXTENTS', - 'MEDIAN', - 'MIN', - 'MINUS', - 'MINUTE', - 'MLSLABEL', - 'MOD', - 'MODE', - 'MODIFY', - 'MONTH', - 'MONTHS_BETWEEN', - 'NANVL', - 'NATURAL', - 'NATURALN', - 'NCHR', - 'NEW', - 'NEW_TIME', - 'NEXT_DAY', - 'NEXTVAL', - 'NLS_CHARSET_DECL_LEN', - 'NLS_CHARSET_ID', - 'NLS_CHARSET_NAME', - 'NLS_INITCAP', - 'NLS_LOWER', - 'NLS_UPPER', - 'NLSSORT', - 'NOAUDIT', - 'NOCOMPRESS', - 'NOCOPY', - 'NOT', - 'NOWAIT', - 'NTILE', - 'NULL', - 'NULLIF', - 'NUMBER', - 'NUMBER_BASE', - 'NUMTODSINTERVAL', - 'NUMTOYMINTERVAL', - 'NVL', - 'NVL2', - 'OCIROWID', - 'OF', - 'OFFLINE', - 'ON', - 'ONLINE', - 'OPAQUE', - 'OPEN', - 'OPERATOR', - 'OPTION', - 'OR', - 'ORA_HASH', - 'ORDER', - 'ORGANIZATION', - 'OTHERS', - 'OUT', - 'OUTLINE', - 'PACKAGE', - 'PARTITION', - 'PATH', - 'PCTFREE', - 'PERCENT_RANK', - 'PERCENTILE_CONT', - 'PERCENTILE_DISC', - 'PLAN', - 'PLS_INTEGER', - 'POSITIVE', - 'POSITIVEN', - 'POWER', - 'POWERMULTISET', - 'POWERMULTISET_BY_CARDINALITY', - 'PRAGMA', - 'PREDICTION', - 'PREDICTION_BOUNDS', - 'PREDICTION_COST', - 'PREDICTION_DETAILS', - 'PREDICTION_PROBABILITY', - 'PREDICTION_SET', - 'PRESENTNNV', - 'PRESENTV', - 'PREVIOUS', - 'PRIMARY', - 'PRIOR', - 'PRIVATE', - 'PRIVILEGES', - 'PROCEDURE', - 'PROFILE', - 'PUBLIC', - 'RAISE', - 'RANGE', - 'RANK', - 'RATIO_TO_REPORT', - 'RAW', - 'RAWTOHEX', - 'RAWTONHEX', - 'REAL', - 'RECORD', - 'REF', - 'REFTOHEX', - 'REGEXP_COUNT', - 'REGEXP_INSTR', - 'REGEXP_REPLACE', - 'REGEXP_SUBSTR', - 'REGR_AVGX', - 'REGR_AVGY', - 'REGR_COUNT', - 'REGR_INTERCEPT', - 'REGR_R2', - 'REGR_SLOPE', - 'REGR_SXX', - 'REGR_SXY', - 'REGR_SYY', - 'RELEASE', - 'REMAINDER', - 'RENAME', - 'REPLACE', - 'RESOURCE', - 'RETURN', - 'RETURNING', - 'REVERSE', - 'REVOKE', - 'ROLE', - 'ROLLBACK', - 'ROUND', - 'ROW', - 'ROW_NUMBER', - 'ROWID', - 'ROWIDTOCHAR', - 'ROWIDTONCHAR', - 'ROWNUM', - 'ROWS', - 'ROWTYPE', - 'RPAD', - 'RTRIM', - 'SAVEPOINT', - 'SCHEMA', - 'SCN_TO_TIMESTAMP', - 'SECOND', - 'SEGMENT', - 'SELECT', - 'SEPERATE', - 'SEQUENCE', - 'SESSION', - 'SESSIONTIMEZONE', - 'SET', - 'SHARE', - 'SIGN', - 'SIN', - 'SINH', - 'SIZE', - 'SMALLINT', - 'SOUNDEX', - 'SPACE', - 'SQL', - 'SQLCODE', - 'SQLERRM', - 'SQRT', - 'START', - 'STATISTICS', - 'STATS_BINOMIAL_TEST', - 'STATS_CROSSTAB', - 'STATS_F_TEST', - 'STATS_KS_TEST', - 'STATS_MODE', - 'STATS_MW_TEST', - 'STATS_ONE_WAY_ANOVA', - 'STATS_T_TEST_INDEP', - 'STATS_T_TEST_INDEPU', - 'STATS_T_TEST_ONE', - 'STATS_T_TEST_PAIRED', - 'STATS_WSR_TEST', - 'STDDEV', - 'STDDEV_POP', - 'STDDEV_SAMP', - 'STOP', - 'SUBSTR', - 'SUBSTRB', - 'SUBTYPE', - 'SUCCESSFUL', - 'SUM', - 'SYNONYM', - 'SYS_CONNECT_BY_PATH', - 'SYS_CONTEXT', - 'SYS_DBURIGEN', - 'SYS_EXTRACT_UTC', - 'SYS_GUID', - 'SYS_TYPEID', - 'SYS_XMLAGG', - 'SYS_XMLGEN', - 'SYSDATE', - 'SYSTEM', - 'SYSTIMESTAMP', - 'TABLE', - 'TABLESPACE', - 'TAN', - 'TANH', - 'TEMPORARY', - 'THEN', - 'TIME', - 'TIMESTAMP', - 'TIMESTAMP_TO_SCN', - 'TIMEZONE_ABBR', - 'TIMEZONE_HOUR', - 'TIMEZONE_MINUTE', - 'TIMEZONE_REGION', - 'TIMING', - 'TO', - 'TO_BINARY_DOUBLE', - 'TO_BINARY_FLOAT', - 'TO_CHAR', - 'TO_CLOB', - 'TO_DATE', - 'TO_DSINTERVAL', - 'TO_LOB', - 'TO_MULTI_BYTE', - 'TO_NCHAR', - 'TO_NCLOB', - 'TO_NUMBER', - 'TO_SINGLE_BYTE', - 'TO_TIMESTAMP', - 'TO_TIMESTAMP_TZ', - 'TO_YMINTERVAL', - 'TRANSACTION', - 'TRANSLATE', - 'TREAT', - 'TRIGGER', - 'TRIM', - 'TRUE', - 'TRUNC', - 'TRUNCATE', - 'TYPE', - 'TZ_OFFSET', - 'UI', - 'UID', - 'UNION', - 'UNIQUE', - 'UNISTR', - 'UPDATE', - 'UPDATEXML', - 'UPPER', - 'USE', - 'USER', - 'USERENV', - 'USING', - 'VALIDATE', - 'VALUE', - 'VALUES', - 'VAR_POP', - 'VAR_SAMP', - 'VARCHAR', - 'VARCHAR2', - 'VARIANCE', - 'VIEW', - 'VSIZE', - 'WHEN', - 'WHENEVER', - 'WHERE', - 'WHILE', - 'WIDTH_BUCKET', - 'WITH', - 'WORK', - 'WRITE', - 'XMLAGG', - 'XMLCAST', - 'XMLCDATA', - 'XMLCOLATTVAL', - 'XMLCOMMENT', - 'XMLCONCAT', - 'XMLDIFF', - 'XMLELEMENT', - 'XMLEXISTS', - 'XMLFOREST', - 'XMLPARSE', - 'XMLPATCH', - 'XMLPI', - 'XMLQUERY', - 'XMLROOT', - 'XMLSEQUENCE', - 'XMLSERIALIZE', - 'XMLTABLE', - 'XMLTRANSFORM', - 'YEAR', - 'ZONE' - ) - ), - 'SYMBOLS' => array( - '(', ')', '=', '<', '>', '|', '+', '-', '*', '/', ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, -// 3 => false, -// 4 => false, -// 5 => false, -// 6 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #993333; font-weight: bold; text-transform: uppercase;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #ff0000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', -// 3 => '', -// 4 => '', -// 5 => '', -// 6 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/oracle8.php b/library/Vendors/geshi/geshi/oracle8.php deleted file mode 100644 index e470e0dd..00000000 --- a/library/Vendors/geshi/geshi/oracle8.php +++ /dev/null @@ -1,496 +0,0 @@ - 'Oracle 8 SQL', - 'COMMENT_SINGLE' => array(1 => '--'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array("'", '"', '`'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( -//Put your package names here - e.g. select distinct ''''|| lower(name) || ''',' from user_source; -// 6 => array( -// ), - -//Put your table names here - e.g. select distinct ''''|| lower(table_name) || ''',' from user_tables; -// 5 => array( -// ), - -//Put your view names here - e.g. select distinct ''''|| lower(view_name) || ''',' from user_views; -// 4 => array( -// ), - -//Put your table field names here - e.g. select distinct ''''|| lower(column_name) || ''',' from user_tab_columns; -// 3 => array( -// ), - -//Put ORACLE reserved keywords here (8.1.7). I like mine uppercase. - 1 => array( - 'ABS', - 'ACCESS', - 'ACOS', - 'ADD', - 'ADD_MONTHS', - 'ALL', - 'ALTER', - 'ANALYZE', - 'AND', - 'ANY', - 'ARRAY', - 'AS', - 'ASC', - 'ASCII', - 'ASIN', - 'ASSOCIATE', - 'AT', - 'ATAN', - 'ATAN2', - 'AUDIT', - 'AUTHID', - 'AVG', - 'BEGIN', - 'BETWEEN', - 'BFILENAME', - 'BINARY_INTEGER', - 'BITAND', - 'BODY', - 'BOOLEAN', - 'BULK', - 'BY', - 'CALL', - 'CASCADE', - 'CASE', - 'CEIL', - 'CHAR', - 'CHAR_BASE', - 'CHARTOROWID', - 'CHECK', - 'CHR', - 'CLOSE', - 'CLUSTER', - 'COALESCE', - 'COLLECT', - 'COLUMN', - 'COMMENT', - 'COMMIT', - 'COMPRESS', - 'CONCAT', - 'CONNECT', - 'CONSTANT', - 'CONSTRAINT', - 'CONSTRAINTS', - 'CONTEXT', - 'CONTROLFILE', - 'CONVERT', - 'CORR', - 'COS', - 'COSH', - 'COST', - 'COUNT', - 'COVAR_POP', - 'COVAR_SAMP', - 'CREATE', - 'CUME_DIST', - 'CURRENT', - 'CURRVAL', - 'CURSOR', - 'DATABASE', - 'DATE', - 'DAY', - 'DECIMAL', - 'DECLARE', - 'DECODE', - 'DEFAULT', - 'DELETE', - 'DENSE_RANK', - 'DEREF', - 'DESC', - 'DIMENSION', - 'DIRECTORY', - 'DISASSOCIATE', - 'DISTINCT', - 'DO', - 'DROP', - 'DUMP', - 'ELSE', - 'ELSIF', - 'EMPTY_BLOB', - 'EMPTY_CLOB', - 'END', - 'EXCEPTION', - 'EXCLUSIVE', - 'EXEC', - 'EXECUTE', - 'EXISTS', - 'EXIT', - 'EXP', - 'EXPLAIN', - 'EXTENDS', - 'EXTRACT', - 'FALSE', - 'FETCH', - 'FILE', - 'FIRST_VALUE', - 'FLOAT', - 'FLOOR', - 'FOR', - 'FORALL', - 'FROM', - 'FUNCTION', - 'GOTO', - 'GRANT', - 'GREATEST', - 'GROUP', - 'GROUPING', - 'HAVING', - 'HEAP', - 'HEXTORAW', - 'HOUR', - 'IDENTIFIED', - 'IF', - 'IMMEDIATE', - 'IN', - 'INCREMENT', - 'INDEX', - 'INDEXTYPE', - 'INDICATOR', - 'INITCAP', - 'INITIAL', - 'INSERT', - 'INSTR', - 'INSTRB', - 'INTEGER', - 'INTERFACE', - 'INTERSECT', - 'INTERVAL', - 'INTO', - 'IS', - 'ISOLATION', - 'JAVA', - 'KEY', - 'LAG', - 'LAST_DAY', - 'LAST_VALUE', - 'LEAD', - 'LEAST', - 'LENGTH', - 'LENGTHB', - 'LEVEL', - 'LIBRARY', - 'LIKE', - 'LIMITED', - 'LINK', - 'LN', - 'LOCK', - 'LOG', - 'LONG', - 'LOOP', - 'LOWER', - 'LPAD', - 'LTRIM', - 'MAKE_REF', - 'MATERIALIZED', - 'MAX', - 'MAXEXTENTS', - 'MIN', - 'MINUS', - 'MINUTE', - 'MLSLABEL', - 'MOD', - 'MODE', - 'MODIFY', - 'MONTH', - 'MONTHS_BETWEEN', - 'NATURAL', - 'NATURALN', - 'NEW', - 'NEW_TIME', - 'NEXT_DAY', - 'NEXTVAL', - 'NLS_CHARSET_DECL_LEN', - 'NLS_CHARSET_ID', - 'NLS_CHARSET_NAME', - 'NLS_INITCAP', - 'NLS_LOWER', - 'NLS_UPPER', - 'NLSSORT', - 'NOAUDIT', - 'NOCOMPRESS', - 'NOCOPY', - 'NOT', - 'NOWAIT', - 'NTILE', - 'NULL', - 'NULLIF', - 'NUMBER', - 'NUMBER_BASE', - 'NUMTODSINTERVAL', - 'NUMTOYMINTERVAL', - 'NVL', - 'NVL2', - 'OCIROWID', - 'OF', - 'OFFLINE', - 'ON', - 'ONLINE', - 'OPAQUE', - 'OPEN', - 'OPERATOR', - 'OPTION', - 'OR', - 'ORDER', - 'ORGANIZATION', - 'OTHERS', - 'OUT', - 'OUTLINE', - 'PACKAGE', - 'PARTITION', - 'PCTFREE', - 'PERCENT_RANK', - 'PLAN', - 'PLS_INTEGER', - 'POSITIVE', - 'POSITIVEN', - 'POWER', - 'PRAGMA', - 'PRIMARY', - 'PRIOR', - 'PRIVATE', - 'PRIVILEGES', - 'PROCEDURE', - 'PROFILE', - 'PUBLIC', - 'RAISE', - 'RANGE', - 'RANK', - 'RATIO_TO_REPORT', - 'RAW', - 'RAWTOHEX', - 'REAL', - 'RECORD', - 'REF', - 'REFTOHEX', - 'REGR_AVGX', - 'REGR_AVGY', - 'REGR_COUNT', - 'REGR_INTERCEPT', - 'REGR_R2', - 'REGR_SLOPE', - 'REGR_SXX', - 'REGR_SXY', - 'REGR_SYY', - 'RELEASE', - 'RENAME', - 'REPLACE', - 'RESOURCE', - 'RETURN', - 'RETURNING', - 'REVERSE', - 'REVOKE', - 'ROLE', - 'ROLLBACK', - 'ROUND', - 'ROW', - 'ROW_NUMBER', - 'ROWID', - 'ROWIDTOCHAR', - 'ROWNUM', - 'ROWS', - 'ROWTYPE', - 'RPAD', - 'RTRIM', - 'SAVEPOINT', - 'SCHEMA', - 'SECOND', - 'SEGMENT', - 'SELECT', - 'SEPERATE', - 'SEQUENCE', - 'SESSION', - 'SET', - 'SHARE', - 'SIGN', - 'SIN', - 'SINH', - 'SIZE', - 'SMALLINT', - 'SOUNDEX', - 'SPACE', - 'SQL', - 'SQLCODE', - 'SQLERRM', - 'SQRT', - 'START', - 'STATISTICS', - 'STDDEV', - 'STDDEV_POP', - 'STDDEV_SAMP', - 'STOP', - 'SUBSTR', - 'SUBSTRB', - 'SUBTYPE', - 'SUCCESSFUL', - 'SUM', - 'SYNONYM', - 'SYS_CONTEXT', - 'SYS_GUID', - 'SYSDATE', - 'SYSTEM', - 'TABLE', - 'TABLESPACE', - 'TAN', - 'TANH', - 'TEMPORARY', - 'THEN', - 'TIME', - 'TIMESTAMP', - 'TIMEZONE_ABBR', - 'TIMEZONE_HOUR', - 'TIMEZONE_MINUTE', - 'TIMEZONE_REGION', - 'TIMING', - 'TO', - 'TO_CHAR', - 'TO_DATE', - 'TO_LOB', - 'TO_MULTI_BYTE', - 'TO_NUMBER', - 'TO_SINGLE_BYTE', - 'TRANSACTION', - 'TRANSLATE', - 'TRIGGER', - 'TRIM', - 'TRUE', - 'TRUNC', - 'TRUNCATE', - 'TYPE', - 'UI', - 'UID', - 'UNION', - 'UNIQUE', - 'UPDATE', - 'UPPER', - 'USE', - 'USER', - 'USERENV', - 'USING', - 'VALIDATE', - 'VALUE', - 'VALUES', - 'VAR_POP', - 'VAR_SAMP', - 'VARCHAR', - 'VARCHAR2', - 'VARIANCE', - 'VIEW', - 'VSIZE', - 'WHEN', - 'WHENEVER', - 'WHERE', - 'WHILE', - 'WITH', - 'WORK', - 'WRITE', - 'YEAR', - 'ZONE' - ) - ), - 'SYMBOLS' => array( - '(', ')', '=', '<', '>', '|', '+', '-', '*', '/', ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, -// 3 => false, -// 4 => false, -// 5 => false, -// 6 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #993333; font-weight: bold; text-transform: uppercase;' -//Add the styles for groups 3-6 here when used - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #ff0000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', -// 3 => '', -// 4 => '', -// 5 => '', -// 6 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/oxygene.php b/library/Vendors/geshi/geshi/oxygene.php deleted file mode 100644 index 3af03bfc..00000000 --- a/library/Vendors/geshi/geshi/oxygene.php +++ /dev/null @@ -1,152 +0,0 @@ - 'Oxygene (Delphi Prism)', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('(*' => '*)', '{' => '}'), - //Compiler directives - 'COMMENT_REGEXP' => array(2 => '/{\\$.*?}|\\(\\*\\$.*?\\*\\)/U'), - 'CASE_KEYWORDS' => 0, - 'QUOTEMARKS' => array("'"), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'and', 'begin', 'case', 'const', 'div', 'do', 'downto', 'else', - 'end', 'for', 'function', 'if', 'in', 'mod', 'not', 'of', 'or', - 'procedure', 'repeat', 'record', 'set', 'shl', 'shr', 'then', 'to', - 'type', 'until', 'uses', 'var','while', 'with', 'xor', 'exit', 'break', - 'class', 'constructor', 'inherited', 'private', 'public', 'protected', - 'property', 'As', 'Is', 'Unit', 'Continue', 'Try', 'Except', 'Forward', - 'Interface','Implementation', 'nil', 'out', 'loop', 'namespace', 'true', - 'false', 'new', 'ensure', 'require', 'on', 'event', 'delegate', 'method', - 'raise', 'assembly', 'module', 'using','locking', 'old', 'invariants', 'operator', - 'self', 'async', 'finalizer', 'where', 'yield', 'nullable', 'Future', - 'From', 'Finally', 'dynamic' - ), - 2 => array( - 'override', 'virtual', 'External', 'read', 'add', 'remove','final', 'abstract', - 'empty', 'global', 'locked', 'sealed', 'reintroduce', 'implements', 'each', - 'default', 'partial', 'finalize', 'enum', 'flags', 'result', 'readonly', 'unsafe', - 'pinned', 'matching', 'static', 'has', 'step', 'iterator', 'inline', 'nested', - 'Implies', 'Select', 'Order', 'By', 'Desc', 'Asc', 'Group', 'Join', 'Take', - 'Skip', 'Concat', 'Union', 'Reverse', 'Distinct', 'Into', 'Equals', 'params', - 'sequence', 'index', 'notify', 'Parallel', 'create', 'array', 'Queryable', 'Aspect', - 'volatile' - ), - 3 => array( - 'chr', 'ord', 'inc', 'dec', 'assert', 'iff', 'assigned','futureAssigned', 'length', 'low', 'high', 'typeOf', 'sizeOf', 'disposeAndNil', 'Coalesce', 'unquote' - ), - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, -// 4 => false, - ), - 'SYMBOLS' => array( - 0 => array('(', ')', '[', ']'), - 1 => array('.', ',', ':', ';'), - 2 => array('@', '^'), - 3 => array('=', '+', '-', '*', '/') - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;', -// 4 => 'color: #000066; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #008000; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #ff0000; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000066;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000ff;' - ), - 'METHODS' => array( - 1 => 'color: #000000;' - ), - 'REGEXPS' => array( - 0 => 'color: #9ac;', - 1 => 'color: #ff0000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000066;', - 1 => 'color: #000066;', - 2 => 'color: #000066;', - 3 => 'color: #000066;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', -// 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - //Hex numbers - 0 => '\$[0-9a-fA-F]+', - //Characters - 1 => '\#\$?[0-9]{1,3}' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 2 -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/oz.php b/library/Vendors/geshi/geshi/oz.php deleted file mode 100644 index cd594d4c..00000000 --- a/library/Vendors/geshi/geshi/oz.php +++ /dev/null @@ -1,144 +0,0 @@ - 'OZ', - 'COMMENT_SINGLE' => array(1 => '%'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"','\''), - 'ESCAPE_CHAR' => '\\', - 'NUMBERS' => array(), - 'KEYWORDS' => array( - 1 => array( - 'declare','local','in','end','proc','fun','functor','require','prepare', - 'import','export','define','at','case','then','else','of','elseof', - 'elsecase','if','elseif','class','from','prop','attr','feat','meth', - 'self','true','false','unit','div','mod','andthen','orelse','cond','or', - 'dis','choice','not','thread','try','catch','finally','raise','lock', - 'skip','fail','for','do' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true - ), - 'SYMBOLS' => array( - '@', '!', '|', '<-', ':=', '<', '>', '=<', '>=', '<=', '#', '~', '.', - '*', '-', '+', '/', '<:', '>:', '=:', '=<:', '>=:', '\\=', '\\=:', ',', - '!!', '...', '==', '::', ':::' - ), - 'STYLES' => array( - 'REGEXPS' => array( - 1 => 'color: #0000ff;', - 2 => 'color: #00a030;', - 3 => 'color: #bc8f8f;', - 4 => 'color: #0000ff;', - 5 => 'color: #a020f0;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #bc8f8f;' - ), - 'KEYWORDS' => array( - 1 => 'color: #a020f0;' - ), - 'COMMENTS' => array( - 1 => 'color: #B22222;', - 'MULTI' => 'color: #B22222;' - ), - 'STRINGS' => array( - 0 => 'color: #bc8f8f;' - ), - 'SYMBOLS' => array( - 0 => 'color: #a020f0;' - ), - 'BRACKETS' => array(), - 'NUMBERS' => array(), - 'METHODS' => array(), - 'SCRIPT' => array() - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array(), - 'URLS' => array( - 1 => '' - ), - 'REGEXPS' => array( - // function and procedure definition - 1 => array( - GESHI_SEARCH => "(proc|fun)([^{}\n\)]*)(\\{)([\$A-Z\300-\326\330-\336][A-Z\300-\326\330-\336a-z\337-\366\370-\3770-9_.]*)", - GESHI_REPLACE => '\4', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\1\2\3', - GESHI_AFTER => '' - ), - // class definition - 2 => array( - GESHI_SEARCH => "(class)([^A-Z\$]*)([\$A-Z\300-\326\330-\336][A-Z\300-\326\330-\336a-z\337-\366\370-\3770-9_.]*)", - GESHI_REPLACE => '\3\4', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\1\2', - GESHI_AFTER => '' - ), - // single character - 3 => array( - GESHI_SEARCH => "&.", - GESHI_REPLACE => '\0', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // method definition - 4 => array( - GESHI_SEARCH => "(meth)([^a-zA-Z]+)([a-zA-Z\300-\326\330-\336][A-Z\300-\326\330-\336a-z\337-\366\370-\3770-9]*)", - GESHI_REPLACE => '\3', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\1\2', - GESHI_AFTER => '' - ), - // highlight "[]" - // ([] is actually a keyword, but that causes problems in validation; putting it into symbols doesn't work.) - 5 => array( - GESHI_SEARCH => "\[\]", - GESHI_REPLACE => '\0', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/pascal.php b/library/Vendors/geshi/geshi/pascal.php deleted file mode 100644 index 7ee5729a..00000000 --- a/library/Vendors/geshi/geshi/pascal.php +++ /dev/null @@ -1,152 +0,0 @@ - 'Pascal', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('{' => '}','(*' => '*)'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array("''"), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'absolute','asm','assembler','begin','break','case','catch','cdecl', - 'const','constructor','default','destructor','div','do','downto', - 'else','end','except','export','exports','external','far', - 'finalization','finally','for','forward','function','goto','if', - 'implementation','in','index','inherited','initialization','inline', - 'interface','interrupt','label','library','mod','name','not','of', - 'or','overload','override','private','procedure','program', - 'property','protected','public','published','raise','repeat', - 'resourcestring','shl','shr','stdcall','stored','switch','then', - 'to','try','type','unit','until','uses','var','while','xor' - ), - 2 => array( - 'nil', 'false', 'true', - ), - 3 => array( - 'abs','and','arc','arctan','blockread','blockwrite','chr','dispose', - 'cos','eof','eoln','exp','get','ln','new','odd','ord','ordinal', - 'pred','read','readln','sin','sqrt','succ','write','writeln' - ), - 4 => array( - 'ansistring','array','boolean','byte','bytebool','char','file', - 'integer','longbool','longint','object','packed','pointer','real', - 'record','set','shortint','smallint','string','union','word' - ), - ), - 'SYMBOLS' => array( - ',', ':', '=', '+', '-', '*', '/' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;', - 4 => 'color: #000066; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;', - 'HARD' => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #0066ee;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/library/Vendors/geshi/geshi/pcre.php b/library/Vendors/geshi/geshi/pcre.php deleted file mode 100644 index a67cf285..00000000 --- a/library/Vendors/geshi/geshi/pcre.php +++ /dev/null @@ -1,188 +0,0 @@ - 'PCRE', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array( - ), - 'COMMENT_REGEXP' => array( - // Non-matching groups - 1 => "/(?<=\()\?(?::|(?=\())/", - - // Modifier groups - 2 => "/(?<=\()\?[cdegimopsuxUX\-]+(?::|(?=\)))/", - - // Look-Aheads - 3 => "/(?<=\()\?[!=]/", - - // Look-Behinds - 4 => "/(?<=\()\?<[!=]/", - - // Forward Matching - 5 => "/(?<=\()\?>/", - - // Recursive Matching - 6 => "/(?<=\()\?R(?=\))/", - - // Named Subpattern - 7 => "/(?<=\()\?(?:P?<\w+>|\d+(?=\))|P[=>]\w+(?=\)))/", - - // Back Reference - 8 => "/\\\\(?:[1-9]\d?|g\d+|g\{(?:-?\d+|\w+)\}|k<\w+>|k'\w+'|k\{\w+\})/", - - // Byte sequence: Octal - 9 => "/\\\\[0-7]{2,3}/", - - // Byte sequence: Hex - 10 => "/\\\\x[0-9a-fA-F]{2}/", - - // Byte sequence: Hex - 11 => "/\\\\u[0-9a-fA-F]{4}/", - - // Byte sequence: Hex - 12 => "/\\\\U[0-9a-fA-F]{8}/", - - // Byte sequence: Unicode - 13 => "/\\\\[pP]\{[^}\n]+\}/", - - // One-Char Escapes - 14 => "/\\\\[abdefnrstvwzABCDGSWXZ\\\\\\.\[\]\(\)\{\}\^\\\$\?\+\*]/", - - // Byte sequence: Control-X sequence - 15 => "/\\\\c./", - - // Quantifier - 16 => "/\{(?:\d+,?|\d*,\d+)\}/", - - // Comment Subpattern - 17 => "/(?<=\()\?#[^\)]*/", - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - ), - 'SYMBOLS' => array( - 0 => array('.'), - 1 => array('(', ')'), - 2 => array('[', ']', '|'), - 3 => array('^', '$'), - 4 => array('?', '+', '*'), - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - ), - 'COMMENTS' => array( - 1 => 'color: #993333; font-weight: bold;', - 2 => 'color: #cc3300; font-weight: bold;', - 3 => 'color: #cc0066; font-weight: bold;', - 4 => 'color: #cc0066; font-weight: bold;', - 5 => 'color: #cc6600; font-weight: bold;', - 6 => 'color: #cc00cc; font-weight: bold;', - 7 => 'color: #cc9900; font-weight: bold; font-style: italic;', - 8 => 'color: #cc9900; font-style: italic;', - 9 => 'color: #669933; font-style: italic;', - 10 => 'color: #339933; font-style: italic;', - 11 => 'color: #339966; font-style: italic;', - 12 => 'color: #339999; font-style: italic;', - 13 => 'color: #663399; font-style: italic;', - 14 => 'color: #999933; font-style: italic;', - 15 => 'color: #993399; font-style: italic;', - 16 => 'color: #333399; font-style: italic;', - 17 => 'color: #666666; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;', - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #333399; font-weight: bold;', - 1 => 'color: #993333; font-weight: bold;', - 2 => 'color: #339933; font-weight: bold;', - 3 => 'color: #333399; font-weight: bold;', - 4 => 'color: #333399; font-style: italic;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'BRACKETS' => GESHI_NEVER, - 'NUMBERS' => GESHI_NEVER - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/per.php b/library/Vendors/geshi/geshi/per.php deleted file mode 100644 index b656c105..00000000 --- a/library/Vendors/geshi/geshi/per.php +++ /dev/null @@ -1,302 +0,0 @@ - 'per', - 'COMMENT_SINGLE' => array(1 => '--', 2 => '#'), - 'COMMENT_MULTI' => array('{' => '}'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - "ACCELERATOR", - "ACCELERATOR2", - "ACTION", - "ALT", - "AND", - "AUTO", - "AUTONEXT", - "AUTOSCALE", - "BETWEEN", - "BOTH", - "BUTTON", - "BUTTONEDIT", - "BUTTONTEXTHIDDEN", - "BY", - "BYTE", - "CANVAS", - "CENTER", - "CHECKBOX", - "CLASS", - "COLOR", - "COLUMNS", - "COMBOBOX", - "COMMAND", - "COMMENT", - "COMMENTS", - "COMPACT", - "COMPRESS", - "CONFIG", - "CONTROL", - "CURRENT", - "DATABASE", - "DATEEDIT", - "DEC", - "DEFAULT", - "DEFAULTS", - "DELIMITERS", - "DISPLAY", - "DISPLAYONLY", - "DOWNSHIFT", - "DYNAMIC", - "EDIT", - "FIXED", - "FOLDER", - "FONTPITCH", - "FORMAT", - "FORMONLY", - "GRID", - "GRIDCHILDRENINPARENT", - "GROUP", - "HBOX", - "HEIGHT", - "HIDDEN", - "HORIZONTAL", - "INCLUDE", - "INITIAL", - "INITIALIZER", - "INPUT", - "INSTRUCTIONS", - "INTERVAL", - "INVISIBLE", - "IS", - "ITEM", - "ITEMS", - "JUSTIFY", - "KEY", - "KEYS", - "LABEL", - "LEFT", - "LIKE", - "LINES", - "MATCHES", - "NAME", - "NOENTRY", - "NONCOMPRESS", - "NORMAL", - "NOT", - "NOUPDATE", - "OPTIONS", - "OR", - "ORIENTATION", - "PACKED", - "PAGE", - "PICTURE", - "PIXELHEIGHT", - "PIXELS", - "PIXELWIDTH", - "POINTS", - "PROGRAM", - "PROGRESSBAR", - "QUERYCLEAR", - "QUERYEDITABLE", - "RADIOGROUP", - "RECORD", - "REQUIRED", - "REVERSE", - "RIGHT", - "SAMPLE", - "SCREEN", - "SCROLL", - "SCROLLBARS", - "SCROLLGRID", - "SECOND", - "SEPARATOR", - "SHIFT", - "SIZE", - "SIZEPOLICY", - "SMALLFLOAT", - "SMALLINT", - "SPACING", - "STRETCH", - "STYLE", - "TABINDEX", - "TABLE", - "TAG", - "TEXT", - "TEXTEDIT", - "THROUGH", - "THRU", - "TITLE", - "TO", - "TOOLBAR", - "TOPMENU", - "TYPE", - "UNHIDABLE", - "UNHIDABLECOLUMNS", - "UNMOVABLE", - "UNMOVABLECOLUMNS", - "UNSIZABLE", - "UNSIZABLECOLUMNS", - "UNSORTABLE", - "UNSORTABLECOLUMNS", - "UPSHIFT", - "USER", - "VALIDATE", - "VALUECHECKED", - "VALUEMAX", - "VALUEMIN", - "VALUEUNCHECKED", - "VARCHAR", - "VARIABLE", - "VBOX", - "VERIFY", - "VERSION", - "VERTICAL", - "TIMESTAMP", - "WANTCOLUMNSANCHORED", /* to be removed! */ - "WANTFIXEDPAGESIZE", - "WANTNORETURNS", - "WANTTABS", - "WHERE", - "WIDGET", - "WIDTH", - "WINDOWSTYLE", - "WITHOUT", - "WORDWRAP", - "X", - "Y", - "ZEROFILL", - "SCHEMA", - "ATTRIBUTES", - "TABLES", - "LAYOUT", - "END" - ), - 2 => array( - "YEAR", - "BLACK", - "BLINK", - "BLUE", - "YELLOW", - "WHITE", - "UNDERLINE", - "CENTURY", - "FRACTION", - "CHAR", - "CHARACTER", - "CHARACTERS", - "CYAN", - "DATE", - "DATETIME", - "DAY", - "DECIMAL", - "FALSE", - "FLOAT", - "GREEN", - "HOUR", - "INT", - "INTEGER", - "MAGENTA", - "MINUTE", - "MONEY", - "NONE", - "NULL", - "REAL", - "RED", - "TRUE", - "TODAY", - "MONTH", - "IMAGE" - ), - ), - 'SYMBOLS' => array( - '+', '-', '*', '?', '=', '/', '%', '>', '<', '^', '!', '|', ':', - '(', ')', '[', ']' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0600FF;', - 2 => 'color: #0000FF; font-weight: bold;', - ), - 'COMMENTS' => array( - 1 => 'color: #008080; font-style: italic;', - 2 => 'color: #008080;', - 'MULTI' => 'color: green' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #008080; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #808080;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF0000;' - ), - 'METHODS' => array( - 1 => 'color: #0000FF;', - 2 => 'color: #0000FF;' - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/perl.php b/library/Vendors/geshi/geshi/perl.php deleted file mode 100644 index 5d1c4320..00000000 --- a/library/Vendors/geshi/geshi/perl.php +++ /dev/null @@ -1,213 +0,0 @@ - 'Perl', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array( - '=back' => '=cut', - '=head' => '=cut', - '=item' => '=cut', - '=over' => '=cut', - '=begin' => '=cut', - '=end' => '=cut', - '=for' => '=cut', - '=encoding' => '=cut', - '=pod' => '=cut' - ), - 'COMMENT_REGEXP' => array( - //Regular expressions - 2 => "/(?<=[\\s^])(s|tr|y)\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/(?:\\\\.|(?!\n)[^\\/\\\\])*\\/[msixpogcde]*(?=[\\s$\\.\\;])|(?<=[\\s^(=])(m|q[qrwx]?)?\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[msixpogc]*(?=[\\s$\\.\\,\\;\\)])/iU", - //Regular expression match variables - 3 => '/\$\d+/', - //Heredoc - 4 => '/<<\s*?([\'"]?)([a-zA-Z0-9]+)\1;[^\n]*?\\n.*\\n\\2(?![a-zA-Z0-9])/siU', - //Predefined variables - 5 => '/\$(\^[a-zA-Z]?|[\*\$`\'&_\.,+\-~:;\\\\\/"\|%=\?!@#<>\(\)\[\]])(?!\w)|@[_+\-]|%[!]|\$(?=\{)/', - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"','`'), - 'HARDQUOTE' => array("'", "'"), // An optional 2-element array defining the beginning and end of a hard-quoted string - 'HARDESCAPE' => array('\\\'',), - // Things that must still be escaped inside a hard-quoted string - // If HARDQUOTE is defined, HARDESCAPE must be defined - // This will not work unless the first character of each element is either in the - // QUOTEMARKS array or is the ESCAPE_CHAR - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'case', 'do', 'else', 'elsif', 'for', 'if', 'then', 'until', 'while', 'foreach', 'my', - 'xor', 'or', 'and', 'unless', 'next', 'last', 'redo', 'not', 'our', - 'reset', 'continue', 'cmp', 'ne', 'eq', 'lt', 'gt', 'le', 'ge', - ), - 2 => array( - 'use', 'sub', 'new', '__END__', '__DATA__', '__DIE__', '__WARN__', 'BEGIN', - 'STDIN', 'STDOUT', 'STDERR', 'ARGV', 'ARGVOUT' - ), - 3 => array( - 'abs', 'accept', 'alarm', 'atan2', 'bind', 'binmode', 'bless', - 'caller', 'chdir', 'chmod', 'chomp', 'chop', 'chown', 'chr', - 'chroot', 'close', 'closedir', 'connect', 'cos', - 'crypt', 'dbmclose', 'dbmopen', 'defined', 'delete', 'die', - 'dump', 'each', 'endgrent', 'endhostent', 'endnetent', 'endprotoent', - 'endpwent', 'endservent', 'eof', 'eval', 'exec', 'exists', 'exit', - 'exp', 'fcntl', 'fileno', 'flock', 'fork', 'format', 'formline', - 'getc', 'getgrent', 'getgrgid', 'getgrnam', 'gethostbyaddr', - 'gethostbyname', 'gethostent', 'getlogin', 'getnetbyaddr', 'getnetbyname', - 'getnetent', 'getpeername', 'getpgrp', 'getppid', 'getpriority', - 'getprotobyname', 'getprotobynumber', 'getprotoent', 'getpwent', - 'getpwnam', 'getpwuid', 'getservbyname', 'getservbyport', 'getservent', - 'getsockname', 'getsockopt', 'glob', 'gmtime', 'goto', 'grep', - 'hex', 'import', 'index', 'int', 'ioctl', 'join', 'keys', 'kill', - 'lc', 'lcfirst', 'length', 'link', 'listen', 'local', - 'localtime', 'log', 'lstat', 'm', 'map', 'mkdir', 'msgctl', 'msgget', - 'msgrcv', 'msgsnd', 'no', 'oct', 'open', 'opendir', - 'ord', 'pack', 'package', 'pipe', 'pop', 'pos', 'print', - 'printf', 'prototype', 'push', 'qq', 'qr', 'quotemeta', 'qw', - 'qx', 'q', 'rand', 'read', 'readdir', 'readline', 'readlink', 'readpipe', - 'recv', 'ref', 'rename', 'require', 'return', - 'reverse', 'rewinddir', 'rindex', 'rmdir', 's', 'scalar', 'seek', - 'seekdir', 'select', 'semctl', 'semget', 'semop', 'send', 'setgrent', - 'sethostent', 'setnetent', 'setpgrp', 'setpriority', 'setprotoent', - 'setpwent', 'setservent', 'setsockopt', 'shift', 'shmctl', 'shmget', - 'shmread', 'shmwrite', 'shutdown', 'sin', 'sleep', 'socket', 'socketpair', - 'sort', 'splice', 'split', 'sprintf', 'sqrt', 'srand', 'stat', - 'study', 'substr', 'symlink', 'syscall', 'sysopen', 'sysread', - 'sysseek', 'system', 'syswrite', 'tell', 'telldir', 'tie', 'tied', - 'time', 'times', 'tr', 'truncate', 'uc', 'ucfirst', 'umask', 'undef', - 'unlink', 'unpack', 'unshift', 'untie', 'utime', 'values', - 'vec', 'wait', 'waitpid', 'wantarray', 'warn', 'write', 'y' - ) - ), - 'SYMBOLS' => array( - '<', '>', '=', - '!', '@', '~', '&', '|', '^', - '+','-', '*', '/', '%', - ',', ';', '?', '.', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #009966; font-style: italic;', - 3 => 'color: #0000ff;', - 4 => 'color: #cc0000; font-style: italic;', - 5 => 'color: #0000ff;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;', - 'HARD' => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff;', - 4 => 'color: #009999;', - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://perldoc.perl.org/functions/{FNAMEL}.html' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '->', - 2 => '::' - ), - 'REGEXPS' => array( - //Variable - 0 => '(?:\$[\$#]?|\\\\(?:[@%*]?|\\\\*\$|&)|%[$]?|@[$]?|\*[$]?|&[$]?)[a-zA-Z_][a-zA-Z0-9_]*', - //File Descriptor - 4 => '<[a-zA-Z_][a-zA-Z0-9_]*>', - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'COMMENTS' => array( - 'DISALLOWED_BEFORE' => '$' - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/perl6.php b/library/Vendors/geshi/geshi/perl6.php deleted file mode 100644 index 9ea20fc7..00000000 --- a/library/Vendors/geshi/geshi/perl6.php +++ /dev/null @@ -1,197 +0,0 @@ - 'Perl 6', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array('=begin' => '=end'), - 'COMMENT_REGEXP' => array( - //Regular expressions - 2 => "/(?<=[\\s^])(s|tr|y)\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/(?:\\\\.|(?!\n)[^\\/\\\\])*\\/[msixpogcde]*(?=[\\s$\\.\\;])|(?<=[\\s^(=])(m|q[qrwx]?)?\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[msixpogc]*(?=[\\s$\\.\\,\\;\\)])/iU", - //Regular expression match variables - 3 => '/\$\d+/', - //Heredoc - 4 => '/<<\s*?([\'"]?)([a-zA-Z0-9]+)\1;[^\n]*?\\n.*\\n\\2(?![a-zA-Z0-9])/siU', - //Beastly hack to finish highlighting each POD block - 5 => '((?<==end) .+)' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'HARDQUOTE' => array("'", "'"), // An optional 2-element array defining the beginning and end of a hard-quoted string - 'HARDESCAPE' => array('\\\''), - // Things that must still be escaped inside a hard-quoted string - // If HARDQUOTE is defined, HARDESCAPE must be defined - // This will not work unless the first character of each element is either in the - // QUOTEMARKS array or is the ESCAPE_CHAR - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'do', 'else', 'elsif', 'for', 'if', 'then', 'until', - 'while', 'loop', 'repeat', 'my', 'xor', 'or', 'and', - 'unless', 'next', 'last', 'redo', 'not', 'our', 'let', - 'temp', 'state', 'enum', 'constant', 'continue', 'cmp', - 'ne', 'eq', 'lt', 'gt', 'le', 'ge', 'leg', 'div', 'X', - 'Z', 'x', 'xx', 'given', 'when', 'default', 'has', - 'returns', 'of', 'is', 'does', 'where', 'subset', 'but', - 'True', 'False', 'return', 'die', 'fail' - ), - 2 => array( - 'use', 'sub', 'multi', 'method', 'submethod', 'proto', - 'class', 'role', 'grammar', 'regex', 'token', 'rule', - 'new', 'BEGIN', 'END', 'CHECK', 'INIT', 'START', 'FIRST', - 'ENTER', 'LEAVE', 'KEEP', 'UNDO', 'NEXT', 'LAST', 'PRE', - 'POST', 'CATCH', 'CONTROL', 'BUILD' - ), - 3 => array( - 'all', 'any', 'cat', 'classify', 'defined', 'grep', 'first', - 'keys', 'kv', 'join', 'map', 'max', 'min', 'none', 'one', 'pairs', - 'print', 'printf', 'roundrobin', 'pick', 'reduce', 'reverse', 'say', - 'shape', 'sort', 'srand', 'undefine', 'uri', 'values', 'warn', 'zip', - - # Container - 'rotate', 'comb', 'end', 'elems', 'delete', - 'exists', 'pop', 'push', 'shift', 'splice', - 'unshift', 'invert', 'decode', - - # Numeric - 'succ', 'pred', 'abs', 'exp', 'log', - 'log10', 'rand', 'roots', 'cis', 'unpolar', 'i', 'floor', - 'ceiling', 'round', 'truncate', 'sign', 'sqrt', - 'polar', 're', 'im', 'I', 'atan2', 'nude', - 'denominator', 'numerator', - - # Str - 'p5chop', 'chop', 'p5chomp', 'chomp', 'lc', 'lcfirst', - 'uc', 'ucfirst', 'normalize', 'samecase', 'sameaccent', - 'capitalize', 'length', 'chars', 'graphs', 'codes', - 'bytes', 'encode', 'index', 'pack', 'quotemeta', 'rindex', - 'split', 'words', 'flip', 'sprintf', 'fmt', - 'substr', 'trim', 'unpack', 'match', 'subst', 'trans' - ) - ), - 'SYMBOLS' => array( - '<', '>', '=', - '!', '@', '~', '&', '|', '^', - '+','-', '*', '/', '%', - ',', ';', '?', '.', ':', - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #009966; font-style: italic;', - 3 => 'color: #0000ff;', - 4 => 'color: #cc0000; font-style: italic;', - 5 => 'color: #666666; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;', - 'HARD' => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff;', - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - //Variable - 0 => '(?:[$@%]|&)(?:(?:[\^:*?!~]|<)?[a-zA-Z_][a-zA-Z0-9_]*|(?=\.))' - # We treat the . twigil specially so the name can be highlighted as an - # object field (via OBJECT_SPLITTERS). - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'COMMENTS' => array( - 'DISALLOWED_BEFORE' => '$' - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/pf.php b/library/Vendors/geshi/geshi/pf.php deleted file mode 100644 index d59a609d..00000000 --- a/library/Vendors/geshi/geshi/pf.php +++ /dev/null @@ -1,178 +0,0 @@ - 'OpenBSD Packet Filter', - 'COMMENT_SINGLE' => array('#'), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - 1 => "/\\$\\{[^\\n\\}]*?\\}/i", - 2 => '/<<-?\s*?(\'?)([a-zA-Z0-9]+)\1\\n.*\\n\\2(?![a-zA-Z0-9])/siU', - 3 => "/\\\\['\"]/siU" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array("\'"), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - 1 => "#\\\\[nfrtv\\$\\\"\n]#i", - 2 => "#\\$[a-z_][a-z0-9_]*#i", - 3 => "/\\$\\{[^\\n\\}]*?\\}/i", - 4 => "/\\$\\([^\\n\\)]*?\\)/i", - 5 => "/`[^`]*`/" - ), - 'KEYWORDS' => array( - 1 => array( - 'pass' - ), - 2 => array( - 'block' - ), - 3 => array( - 'quick','keep','state','antispoof','table','persist','file','scrub', - 'set','skip','flags','on' - ), - 4 => array( - 'in','out','proto' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '!', '@', '%', '&', '*', '|', '/', '<', '>', ';;', '`','=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #009900; font-weight: bold;', - 2 => 'color: #990000; font-weight: bold;', - 3 => 'color: #7a0874;', - 4 => 'color: #336699;' - ), - 'COMMENTS' => array( - 0 => 'color: #666666; font-style: italic;', - 1 => 'color: #800000;', - 2 => 'color: #cc0000; font-style: italic;', - 3 => 'color: #000000; font-weight: bold;' - ), - 'ESCAPE_CHAR' => array( - 1 => 'color: #000099; font-weight: bold;', - 2 => 'color: #007800;', - 3 => 'color: #007800;', - 4 => 'color: #007800;', - 5 => 'color: #780078;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #7a0874; font-weight: bold;' - ), - 'STRINGS' => array( - 0 => 'color: #CC0000;', - 'HARD' => 'color: #CC0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff00cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000000; font-weight: bold;' - ), - 'REGEXPS' => array( - 0 => 'color: #007800;', - 1 => 'color: #007800;', - 2 => 'color: #007800;', - 4 => 'color: #007800;', - 5 => 'color: #660033;', - 6 => 'color: #000099; font-weight: bold;', - 7 => 'color: #0000ff;', - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Variables (will be handled by comment_regexps) - 0 => "\\$\\{[a-zA-Z_][a-zA-Z0-9_]*?\\}", - //Variables without braces - 1 => "\\$[a-zA-Z_][a-zA-Z0-9_]*", - //Variable assignment - 2 => "(? "\\$[*#\$\\-\\?!]", - //Parameters of commands - 5 => "(?<=\s)--?[0-9a-zA-Z\-]+(?=[\s=]|$)", - //IPs - 6 => "([0-9]{1,3}\.){3}[0-9]{1,3}", - //Tables - 7 => "(<(.*)>)" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'COMMENTS' => array( - 'DISALLOWED_BEFORE' => '$' - ), - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(? "(?![\.\-a-zA-Z0-9_%\\/])" - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/php-brief.php b/library/Vendors/geshi/geshi/php-brief.php deleted file mode 100644 index c28d985f..00000000 --- a/library/Vendors/geshi/geshi/php-brief.php +++ /dev/null @@ -1,222 +0,0 @@ - 'PHP (brief)', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - //Heredoc and Nowdoc syntax - 'COMMENT_REGEXP' => array(3 => '/<<<\s*?(\'?)([a-zA-Z0-9]+)\1[^\n]*?\\n.*\\n\\2(?![a-zA-Z0-9])/siU'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array("\'"), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | - GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - 'include', 'require', 'include_once', 'require_once', - 'for', 'as', 'foreach', 'if', 'elseif', 'else', 'while', 'do', 'endwhile', 'endif', 'switch', 'case', 'endswitch', - 'return', 'break' - ), - 2 => array( - 'null', '__LINE__', '__FILE__', - 'false', '<?php', - 'true', 'var', 'default', - 'function', 'class', 'new', '&new', 'public', 'private', 'interface', 'extends', - 'const', 'self' - ), - 3 => array( - 'func_num_args', 'func_get_arg', 'func_get_args', 'strlen', 'strcmp', 'strncmp', 'strcasecmp', 'strncasecmp', 'each', 'error_reporting', 'define', 'defined', - 'trigger_error', 'user_error', 'set_error_handler', 'restore_error_handler', 'get_declared_classes', 'get_loaded_extensions', - 'extension_loaded', 'get_extension_funcs', 'debug_backtrace', - 'constant', 'bin2hex', 'sleep', 'usleep', 'time', 'mktime', 'gmmktime', 'strftime', 'gmstrftime', 'strtotime', 'date', 'gmdate', 'getdate', 'localtime', 'checkdate', 'flush', 'wordwrap', 'htmlspecialchars', 'htmlentities', 'html_entity_decode', 'md5', 'md5_file', 'crc32', 'getimagesize', 'image_type_to_mime_type', 'phpinfo', 'phpversion', 'phpcredits', 'strnatcmp', 'strnatcasecmp', 'substr_count', 'strspn', 'strcspn', 'strtok', 'strtoupper', 'strtolower', 'strpos', 'strrpos', 'strrev', 'hebrev', 'hebrevc', 'nl2br', 'basename', 'dirname', 'pathinfo', 'stripslashes', 'stripcslashes', 'strstr', 'stristr', 'strrchr', 'str_shuffle', 'str_word_count', 'strcoll', 'substr', 'substr_replace', 'quotemeta', 'ucfirst', 'ucwords', 'strtr', 'addslashes', 'addcslashes', 'rtrim', 'str_replace', 'str_repeat', 'count_chars', 'chunk_split', 'trim', 'ltrim', 'strip_tags', 'similar_text', 'explode', 'implode', 'setlocale', 'localeconv', - 'parse_str', 'str_pad', 'chop', 'strchr', 'sprintf', 'printf', 'vprintf', 'vsprintf', 'sscanf', 'fscanf', 'parse_url', 'urlencode', 'urldecode', 'rawurlencode', 'rawurldecode', 'readlink', 'linkinfo', 'link', 'unlink', 'exec', 'system', 'escapeshellcmd', 'escapeshellarg', 'passthru', 'shell_exec', 'proc_open', 'proc_close', 'rand', 'srand', 'getrandmax', 'mt_rand', 'mt_srand', 'mt_getrandmax', 'base64_decode', 'base64_encode', 'abs', 'ceil', 'floor', 'round', 'is_finite', 'is_nan', 'is_infinite', 'bindec', 'hexdec', 'octdec', 'decbin', 'decoct', 'dechex', 'base_convert', 'number_format', 'fmod', 'ip2long', 'long2ip', 'getenv', 'putenv', 'getopt', 'microtime', 'gettimeofday', 'getrusage', 'uniqid', 'quoted_printable_decode', 'set_time_limit', 'get_cfg_var', 'magic_quotes_runtime', 'set_magic_quotes_runtime', 'get_magic_quotes_gpc', 'get_magic_quotes_runtime', - 'import_request_variables', 'error_log', 'serialize', 'unserialize', 'memory_get_usage', 'var_dump', 'var_export', 'debug_zval_dump', 'print_r','highlight_file', 'show_source', 'highlight_string', 'ini_get', 'ini_get_all', 'ini_set', 'ini_alter', 'ini_restore', 'get_include_path', 'set_include_path', 'restore_include_path', 'setcookie', 'header', 'headers_sent', 'connection_aborted', 'connection_status', 'ignore_user_abort', 'parse_ini_file', 'is_uploaded_file', 'move_uploaded_file', 'intval', 'floatval', 'doubleval', 'strval', 'gettype', 'settype', 'is_null', 'is_resource', 'is_bool', 'is_long', 'is_float', 'is_int', 'is_integer', 'is_double', 'is_real', 'is_numeric', 'is_string', 'is_array', 'is_object', 'is_scalar', - 'ereg', 'ereg_replace', 'eregi', 'eregi_replace', 'split', 'spliti', 'join', 'sql_regcase', 'dl', 'pclose', 'popen', 'readfile', 'rewind', 'rmdir', 'umask', 'fclose', 'feof', 'fgetc', 'fgets', 'fgetss', 'fread', 'fopen', 'fpassthru', 'ftruncate', 'fstat', 'fseek', 'ftell', 'fflush', 'fwrite', 'fputs', 'mkdir', 'rename', 'copy', 'tempnam', 'tmpfile', 'file', 'file_get_contents', 'stream_select', 'stream_context_create', 'stream_context_set_params', 'stream_context_set_option', 'stream_context_get_options', 'stream_filter_prepend', 'stream_filter_append', 'fgetcsv', 'flock', 'get_meta_tags', 'stream_set_write_buffer', 'set_file_buffer', 'set_socket_blocking', 'stream_set_blocking', 'socket_set_blocking', 'stream_get_meta_data', 'stream_register_wrapper', 'stream_wrapper_register', 'stream_set_timeout', 'socket_set_timeout', 'socket_get_status', 'realpath', 'fnmatch', 'fsockopen', 'pfsockopen', 'pack', 'unpack', 'get_browser', 'crypt', 'opendir', 'closedir', 'chdir', 'getcwd', 'rewinddir', 'readdir', 'dir', 'glob', 'fileatime', 'filectime', 'filegroup', 'fileinode', 'filemtime', 'fileowner', 'fileperms', 'filesize', 'filetype', 'file_exists', 'is_writable', 'is_writeable', 'is_readable', 'is_executable', 'is_file', 'is_dir', 'is_link', 'stat', 'lstat', 'chown', - 'touch', 'clearstatcache', 'mail', 'ob_start', 'ob_flush', 'ob_clean', 'ob_end_flush', 'ob_end_clean', 'ob_get_flush', 'ob_get_clean', 'ob_get_length', 'ob_get_level', 'ob_get_status', 'ob_get_contents', 'ob_implicit_flush', 'ob_list_handlers', 'ksort', 'krsort', 'natsort', 'natcasesort', 'asort', 'arsort', 'sort', 'rsort', 'usort', 'uasort', 'uksort', 'shuffle', 'array_walk', 'count', 'end', 'prev', 'next', 'reset', 'current', 'key', 'min', 'max', 'in_array', 'array_search', 'extract', 'compact', 'array_fill', 'range', 'array_multisort', 'array_push', 'array_pop', 'array_shift', 'array_unshift', 'array_splice', 'array_slice', 'array_merge', 'array_merge_recursive', 'array_keys', 'array_values', 'array_count_values', 'array_reverse', 'array_reduce', 'array_pad', 'array_flip', 'array_change_key_case', 'array_rand', 'array_unique', 'array_intersect', 'array_intersect_assoc', 'array_diff', 'array_diff_assoc', 'array_sum', 'array_filter', 'array_map', 'array_chunk', 'array_key_exists', 'pos', 'sizeof', 'key_exists', 'assert', 'assert_options', 'version_compare', 'ftok', 'str_rot13', 'aggregate', - 'session_name', 'session_module_name', 'session_save_path', 'session_id', 'session_regenerate_id', 'session_decode', 'session_register', 'session_unregister', 'session_is_registered', 'session_encode', - 'session_start', 'session_destroy', 'session_unset', 'session_set_save_handler', 'session_cache_limiter', 'session_cache_expire', 'session_set_cookie_params', 'session_get_cookie_params', 'session_write_close', 'preg_match', 'preg_match_all', 'preg_replace', 'preg_replace_callback', 'preg_split', 'preg_quote', 'preg_grep', 'overload', 'ctype_alnum', 'ctype_alpha', 'ctype_cntrl', 'ctype_digit', 'ctype_lower', 'ctype_graph', 'ctype_print', 'ctype_punct', 'ctype_space', 'ctype_upper', 'ctype_xdigit', 'virtual', 'apache_request_headers', 'apache_note', 'apache_lookup_uri', 'apache_child_terminate', 'apache_setenv', 'apache_response_headers', 'apache_get_version', 'getallheaders', 'mysql_connect', 'mysql_pconnect', 'mysql_close', 'mysql_select_db', 'mysql_create_db', 'mysql_drop_db', 'mysql_query', 'mysql_unbuffered_query', 'mysql_db_query', 'mysql_list_dbs', 'mysql_list_tables', 'mysql_list_fields', 'mysql_list_processes', 'mysql_error', 'mysql_errno', 'mysql_affected_rows', 'mysql_insert_id', 'mysql_result', 'mysql_num_rows', 'mysql_num_fields', 'mysql_fetch_row', 'mysql_fetch_array', 'mysql_fetch_assoc', 'mysql_fetch_object', 'mysql_data_seek', 'mysql_fetch_lengths', 'mysql_fetch_field', 'mysql_field_seek', 'mysql_free_result', 'mysql_field_name', 'mysql_field_table', 'mysql_field_len', 'mysql_field_type', 'mysql_field_flags', 'mysql_escape_string', 'mysql_real_escape_string', 'mysql_stat', - 'mysql_thread_id', 'mysql_client_encoding', 'mysql_get_client_info', 'mysql_get_host_info', 'mysql_get_proto_info', 'mysql_get_server_info', 'mysql_info', 'mysql', 'mysql_fieldname', 'mysql_fieldtable', 'mysql_fieldlen', 'mysql_fieldtype', 'mysql_fieldflags', 'mysql_selectdb', 'mysql_createdb', 'mysql_dropdb', 'mysql_freeresult', 'mysql_numfields', 'mysql_numrows', 'mysql_listdbs', 'mysql_listtables', 'mysql_listfields', 'mysql_db_name', 'mysql_dbname', 'mysql_tablename', 'mysql_table_name', 'pg_connect', 'pg_pconnect', 'pg_close', 'pg_connection_status', 'pg_connection_busy', 'pg_connection_reset', 'pg_host', 'pg_dbname', 'pg_port', 'pg_tty', 'pg_options', 'pg_ping', 'pg_query', 'pg_send_query', 'pg_cancel_query', 'pg_fetch_result', 'pg_fetch_row', 'pg_fetch_assoc', 'pg_fetch_array', 'pg_fetch_object', 'pg_fetch_all', 'pg_affected_rows', 'pg_get_result', 'pg_result_seek', 'pg_result_status', 'pg_free_result', 'pg_last_oid', 'pg_num_rows', 'pg_num_fields', 'pg_field_name', 'pg_field_num', 'pg_field_size', 'pg_field_type', 'pg_field_prtlen', 'pg_field_is_null', 'pg_get_notify', 'pg_get_pid', 'pg_result_error', 'pg_last_error', 'pg_last_notice', 'pg_put_line', 'pg_end_copy', 'pg_copy_to', 'pg_copy_from', - 'pg_trace', 'pg_untrace', 'pg_lo_create', 'pg_lo_unlink', 'pg_lo_open', 'pg_lo_close', 'pg_lo_read', 'pg_lo_write', 'pg_lo_read_all', 'pg_lo_import', 'pg_lo_export', 'pg_lo_seek', 'pg_lo_tell', 'pg_escape_string', 'pg_escape_bytea', 'pg_unescape_bytea', 'pg_client_encoding', 'pg_set_client_encoding', 'pg_meta_data', 'pg_convert', 'pg_insert', 'pg_update', 'pg_delete', 'pg_select', 'pg_exec', 'pg_getlastoid', 'pg_cmdtuples', 'pg_errormessage', 'pg_numrows', 'pg_numfields', 'pg_fieldname', 'pg_fieldsize', 'pg_fieldtype', 'pg_fieldnum', 'pg_fieldprtlen', 'pg_fieldisnull', 'pg_freeresult', 'pg_result', 'pg_loreadall', 'pg_locreate', 'pg_lounlink', 'pg_loopen', 'pg_loclose', 'pg_loread', 'pg_lowrite', 'pg_loimport', 'pg_loexport', - 'echo', 'print', 'global', 'static', 'exit', 'array', 'empty', 'eval', 'isset', 'unset', 'die' - ) - ), - 'SYMBOLS' => array( - 1 => array( - '<%', '<%=', '%>', '' - ), - 0 => array( - '(', ')', '[', ']', '{', '}', - '!', '@', '%', '&', '|', '/', - '<', '>', - '=', '-', '+', '*', - '.', ':', ',', ';' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #990000;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #666666; font-style: italic;', - 3 => 'color: #0000cc; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;', - 'HARD' => 'color: #0000ff;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;', - GESHI_NUMBER_OCT_PREFIX => 'color: #208080;', - GESHI_NUMBER_HEX_PREFIX => 'color: #208080;', - GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;', - ), - 'METHODS' => array( - 1 => 'color: #004000;', - 2 => 'color: #004000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;', - 1 => 'color: #000000; font-weight: bold;' - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff;' - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.php.net/{FNAMEL}' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '->', - 2 => '::' - ), - 'REGEXPS' => array( - //Variables - 0 => "[\\$]{1,2}[a-zA-Z_][a-zA-Z0-9_]*" - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - ' '?>' - ), - 1 => array( - ' '?>' - ), - 2 => array( - '<%' => '%>' - ), - 3 => array( - '' - ), - 4 => "/(?P<\\?(?>php\b)?)(?:". - "(?>[^\"'?\\/<]+)|". - "\\?(?!>)|". - "(?>'(?>[^'\\\\]|\\\\'|\\\\\\\|\\\\)*')|". - "(?>\"(?>[^\"\\\\]|\\\\\"|\\\\\\\\|\\\\)*\")|". - "(?>\\/\\*(?>[^\\*]|(?!\\*\\/)\\*)*\\*\\/)|". - "\\/\\/(?>.*?$)|". - "\\/(?=[^*\\/])|". - "<(?!<<)|". - "<<<(?P\w+)\s.*?\s\k". - ")*(?P\\?>|\Z)/sm", - 5 => "/(?P<%)(?:". - "(?>[^\"'%\\/<]+)|". - "%(?!>)|". - "(?>'(?>[^'\\\\]|\\\\'|\\\\\\\|\\\\)*')|". - "(?>\"(?>[^\\\"\\\\]|\\\\\"|\\\\\\\\|\\\\)*\")|". - "(?>\\/\\*(?>[^\\*]|(?!\\*\\/)\\*)*\\*\\/)|". - "\\/\\/(?>.*?$)|". - "\\/(?=[^*\\/])|". - "<(?!<<)|". - "<<<(?P\w+)\s.*?\s\k". - ")*(?P%>)/sm" - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true - ), - 'TAB_WIDTH' => 4 -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/php.php b/library/Vendors/geshi/geshi/php.php deleted file mode 100644 index ec698113..00000000 --- a/library/Vendors/geshi/geshi/php.php +++ /dev/null @@ -1,1114 +0,0 @@ - 'PHP', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Heredoc and Nowdoc syntax - 3 => '/<<<\s*?(\'?)([a-zA-Z0-9]+?)\1[^\n]*?\\n.*\\n\\2(?![a-zA-Z0-9])/siU', - // phpdoc comments - 4 => '#/\*\*(?![\*\/]).*\*/#sU', - // Advanced # handling - 2 => "/#.*?(?:(?=\?\>)|^)/smi" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - //Simple Single Char Escapes - 1 => "#\\\\[nfrtv\$\"\n\\\\]#i", - //Hexadecimal Char Specs - 2 => "#\\\\x[\da-fA-F]{1,2}#i", - //Octal Char Specs - 3 => "#\\\\[0-7]{1,3}#", - //String Parsing of Variable Names - 4 => "#\\$[a-z0-9_]+(?:\\[[a-z0-9_]+\\]|->[a-z0-9_]+)?|(?:\\{\\$|\\$\\{)[a-z0-9_]+(?:\\[('?)[a-z0-9_]*\\1\\]|->[a-z0-9_]+)*\\}#i", - //Experimental extension supporting cascaded {${$var}} syntax - 5 => "#\$[a-z0-9_]+(?:\[[a-z0-9_]+\]|->[a-z0-9_]+)?|(?:\{\$|\$\{)[a-z0-9_]+(?:\[('?)[a-z0-9_]*\\1\]|->[a-z0-9_]+)*\}|\{\$(?R)\}#i", - //Format String support in ""-Strings - 6 => "#%(?:%|(?:\d+\\\\\\\$)?\\+?(?:\x20|0|'.)?-?(?:\d+|\\*)?(?:\.\d+)?[bcdefFosuxX])#" - ), - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array("'", "\\"), - 'HARDCHAR' => "\\", - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | - GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - 'as','break','case','continue','default','do','else','elseif', - 'endfor','endforeach','endif','endswitch','endwhile','for', - 'foreach','if','include','include_once','require','require_once', - 'return','switch','throw','while', - - 'echo','print' - ), - 2 => array( - '&new','</script>','<?php','<script language', - 'class','const','declare','extends','function','global','interface', - 'namespace','new','private','protected','public','self','use','var' - ), - 3 => array( - 'abs','acos','acosh','addcslashes','addslashes','aggregate', - 'aggregate_methods','aggregate_methods_by_list', - 'aggregate_methods_by_regexp','aggregate_properties', - 'aggregate_properties_by_list','aggregate_properties_by_regexp', - 'aggregation_info','apache_child_terminate','apache_get_modules', - 'apache_get_version','apache_getenv','apache_lookup_uri', - 'apache_note','apache_request_headers','apache_response_headers', - 'apache_setenv','array','array_change_key_case','array_chunk', - 'array_combine','array_count_values','array_diff', - 'array_diff_assoc','array_diff_key','array_diff_uassoc', - 'array_diff_ukey','array_fill','array_fill_keys','array_filter', - 'array_flip','array_intersect','array_intersect_assoc', - 'array_intersect_key','array_intersect_uassoc', - 'array_intersect_ukey','array_key_exists','array_keys','array_map', - 'array_merge','array_merge_recursive','array_multisort','array_pad', - 'array_pop','array_product','array_push','array_rand', - 'array_reduce','array_reverse','array_search','array_shift', - 'array_slice','array_splice','array_sum','array_udiff', - 'array_udiff_assoc','array_udiff_uassoc','array_uintersect', - 'array_uintersect_assoc','array_uintersect_uassoc','array_unique', - 'array_unshift','array_values','array_walk','array_walk_recursive', - 'arsort','asin','asinh','asort','assert','assert_options','atan', - 'atan2','atanh','base_convert','base64_decode','base64_encode', - 'basename','bcadd','bccomp','bcdiv','bcmod','bcmul', - 'bcompiler_load','bcompiler_load_exe','bcompiler_parse_class', - 'bcompiler_read','bcompiler_write_class','bcompiler_write_constant', - 'bcompiler_write_exe_footer','bcompiler_write_file', - 'bcompiler_write_footer','bcompiler_write_function', - 'bcompiler_write_functions_from_file','bcompiler_write_header', - 'bcompiler_write_included_filename','bcpow','bcpowmod','bcscale', - 'bcsqrt','bcsub','bin2hex','bindec','bindtextdomain', - 'bind_textdomain_codeset','bitset_empty','bitset_equal', - 'bitset_excl','bitset_fill','bitset_from_array','bitset_from_hash', - 'bitset_from_string','bitset_in','bitset_incl', - 'bitset_intersection','bitset_invert','bitset_is_empty', - 'bitset_subset','bitset_to_array','bitset_to_hash', - 'bitset_to_string','bitset_union','blenc_encrypt','bzclose', - 'bzcompress','bzdecompress','bzerrno','bzerror','bzerrstr', - 'bzflush','bzopen','bzread','bzwrite','cal_days_in_month', - 'cal_from_jd','cal_info','cal_to_jd','call_user_func', - 'call_user_func_array','call_user_method','call_user_method_array', - 'ceil','chdir','checkdate','checkdnsrr','chgrp','chmod','chop', - 'chown','chr','chunk_split','class_exists','class_implements', - 'class_parents','classkit_aggregate_methods', - 'classkit_doc_comments','classkit_import','classkit_method_add', - 'classkit_method_copy','classkit_method_redefine', - 'classkit_method_remove','classkit_method_rename','clearstatcache', - 'closedir','closelog','com_create_guid','com_event_sink', - 'com_get_active_object','com_load_typelib','com_message_pump', - 'com_print_typeinfo','compact','confirm_phpdoc_compiled', - 'connection_aborted','connection_status','constant', - 'convert_cyr_string','convert_uudecode','convert_uuencode','copy', - 'cos','cosh','count','count_chars','cpdf_add_annotation', - 'cpdf_add_outline','cpdf_arc','cpdf_begin_text','cpdf_circle', - 'cpdf_clip','cpdf_close','cpdf_closepath', - 'cpdf_closepath_fill_stroke','cpdf_closepath_stroke', - 'cpdf_continue_text','cpdf_curveto','cpdf_end_text','cpdf_fill', - 'cpdf_fill_stroke','cpdf_finalize','cpdf_finalize_page', - 'cpdf_global_set_document_limits','cpdf_import_jpeg','cpdf_lineto', - 'cpdf_moveto','cpdf_newpath','cpdf_open','cpdf_output_buffer', - 'cpdf_page_init','cpdf_rect','cpdf_restore','cpdf_rlineto', - 'cpdf_rmoveto','cpdf_rotate','cpdf_rotate_text','cpdf_save', - 'cpdf_save_to_file','cpdf_scale','cpdf_set_action_url', - 'cpdf_set_char_spacing','cpdf_set_creator','cpdf_set_current_page', - 'cpdf_set_font','cpdf_set_font_directories', - 'cpdf_set_font_map_file','cpdf_set_horiz_scaling', - 'cpdf_set_keywords','cpdf_set_leading','cpdf_set_page_animation', - 'cpdf_set_subject','cpdf_set_text_matrix','cpdf_set_text_pos', - 'cpdf_set_text_rendering','cpdf_set_text_rise','cpdf_set_title', - 'cpdf_set_viewer_preferences','cpdf_set_word_spacing', - 'cpdf_setdash','cpdf_setflat','cpdf_setgray','cpdf_setgray_fill', - 'cpdf_setgray_stroke','cpdf_setlinecap','cpdf_setlinejoin', - 'cpdf_setlinewidth','cpdf_setmiterlimit','cpdf_setrgbcolor', - 'cpdf_setrgbcolor_fill','cpdf_setrgbcolor_stroke','cpdf_show', - 'cpdf_show_xy','cpdf_stringwidth','cpdf_stroke','cpdf_text', - 'cpdf_translate','crack_check','crack_closedict', - 'crack_getlastmessage','crack_opendict','crc32','create_function', - 'crypt','ctype_alnum','ctype_alpha','ctype_cntrl','ctype_digit', - 'ctype_graph','ctype_lower','ctype_print','ctype_punct', - 'ctype_space','ctype_upper','ctype_xdigit','curl_close', - 'curl_copy_handle','curl_errno','curl_error','curl_exec', - 'curl_getinfo','curl_init','curl_multi_add_handle', - 'curl_multi_close','curl_multi_exec','curl_multi_getcontent', - 'curl_multi_info_read','curl_multi_init','curl_multi_remove_handle', - 'curl_multi_select','curl_setopt','curl_setopt_array', - 'curl_version','current','cvsclient_connect','cvsclient_log', - 'cvsclient_login','cvsclient_retrieve','date','date_create', - 'date_date_set','date_default_timezone_get', - 'date_default_timezone_set','date_format','date_isodate_set', - 'date_modify','date_offset_get','date_parse','date_sun_info', - 'date_sunrise','date_sunset','date_time_set','date_timezone_get', - 'date_timezone_set','db_id_list','dba_close','dba_delete', - 'dba_exists','dba_fetch','dba_firstkey','dba_handlers','dba_insert', - 'dba_key_split','dba_list','dba_nextkey','dba_open','dba_optimize', - 'dba_popen','dba_replace','dba_sync','dbase_add_record', - 'dbase_close','dbase_create','dbase_delete_record', - 'dbase_get_header_info','dbase_get_record', - 'dbase_get_record_with_names','dbase_numfields','dbase_numrecords', - 'dbase_open','dbase_pack','dbase_replace_record', - 'dbg_get_all_contexts','dbg_get_all_module_names', - 'dbg_get_all_source_lines','dbg_get_context_name', - 'dbg_get_module_name','dbg_get_profiler_results', - 'dbg_get_source_context','dblist','dbmclose','dbmdelete', - 'dbmexists','dbmfetch','dbmfirstkey','dbminsert','dbmnextkey', - 'dbmopen','dbmreplace','dbx_close','dbx_compare','dbx_connect', - 'dbx_error','dbx_escape_string','dbx_fetch_row','dbx_query', - 'dbx_sort','dcgettext','dcngettext','deaggregate','debug_backtrace', - 'debug_zval_dump','debugbreak','decbin','dechex','decoct','define', - 'defined','define_syslog_variables','deg2rad','dgettext','die', - 'dio_close','dio_open','dio_read','dio_seek','dio_stat','dio_write', - 'dir','dirname','disk_free_space','disk_total_space', - 'diskfreespace','dl','dngettext','docblock_token_name', - 'docblock_tokenize','dom_import_simplexml','domxml_add_root', - 'domxml_attributes','domxml_children','domxml_doc_add_root', - 'domxml_doc_document_element','domxml_doc_get_element_by_id', - 'domxml_doc_get_elements_by_tagname','domxml_doc_get_root', - 'domxml_doc_set_root','domxml_doc_validate','domxml_doc_xinclude', - 'domxml_dump_mem','domxml_dump_mem_file','domxml_dump_node', - 'domxml_dumpmem','domxml_elem_get_attribute', - 'domxml_elem_set_attribute','domxml_get_attribute','domxml_getattr', - 'domxml_html_dump_mem','domxml_new_child','domxml_new_doc', - 'domxml_new_xmldoc','domxml_node','domxml_node_add_namespace', - 'domxml_node_attributes','domxml_node_children', - 'domxml_node_get_content','domxml_node_has_attributes', - 'domxml_node_new_child','domxml_node_set_content', - 'domxml_node_set_namespace','domxml_node_unlink_node', - 'domxml_open_file','domxml_open_mem','domxml_parser', - 'domxml_parser_add_chunk','domxml_parser_cdata_section', - 'domxml_parser_characters','domxml_parser_comment', - 'domxml_parser_end','domxml_parser_end_document', - 'domxml_parser_end_element','domxml_parser_entity_reference', - 'domxml_parser_get_document','domxml_parser_namespace_decl', - 'domxml_parser_processing_instruction', - 'domxml_parser_start_document','domxml_parser_start_element', - 'domxml_root','domxml_set_attribute','domxml_setattr', - 'domxml_substitute_entities_default','domxml_unlink_node', - 'domxml_version','domxml_xmltree','doubleval','each','easter_date', - 'easter_days','empty','end','ereg','ereg_replace','eregi', - 'eregi_replace','error_get_last','error_log','error_reporting', - 'escapeshellarg','escapeshellcmd','eval','event_deschedule', - 'event_dispatch','event_free','event_handle_signal', - 'event_have_events','event_init','event_new','event_pending', - 'event_priority_set','event_schedule','event_set','event_timeout', - 'exec','exif_imagetype','exif_read_data','exif_tagname', - 'exif_thumbnail','exit','exp','explode','expm1','extension_loaded', - 'extract','ezmlm_hash','fbird_add_user','fbird_affected_rows', - 'fbird_backup','fbird_blob_add','fbird_blob_cancel', - 'fbird_blob_close','fbird_blob_create','fbird_blob_echo', - 'fbird_blob_get','fbird_blob_import','fbird_blob_info', - 'fbird_blob_open','fbird_close','fbird_commit','fbird_commit_ret', - 'fbird_connect','fbird_db_info','fbird_delete_user','fbird_drop_db', - 'fbird_errcode','fbird_errmsg','fbird_execute','fbird_fetch_assoc', - 'fbird_fetch_object','fbird_fetch_row','fbird_field_info', - 'fbird_free_event_handler','fbird_free_query','fbird_free_result', - 'fbird_gen_id','fbird_maintain_db','fbird_modify_user', - 'fbird_name_result','fbird_num_fields','fbird_num_params', - 'fbird_param_info','fbird_pconnect','fbird_prepare','fbird_query', - 'fbird_restore','fbird_rollback','fbird_rollback_ret', - 'fbird_server_info','fbird_service_attach','fbird_service_detach', - 'fbird_set_event_handler','fbird_trans','fbird_wait_event','fclose', - 'fdf_add_doc_javascript','fdf_add_template','fdf_close', - 'fdf_create','fdf_enum_values','fdf_errno','fdf_error','fdf_get_ap', - 'fdf_get_attachment','fdf_get_encoding','fdf_get_file', - 'fdf_get_flags','fdf_get_opt','fdf_get_status','fdf_get_value', - 'fdf_get_version','fdf_header','fdf_next_field_name','fdf_open', - 'fdf_open_string','fdf_remove_item','fdf_save','fdf_save_string', - 'fdf_set_ap','fdf_set_encoding','fdf_set_file','fdf_set_flags', - 'fdf_set_javascript_action','fdf_set_on_import_javascript', - 'fdf_set_opt','fdf_set_status','fdf_set_submit_form_action', - 'fdf_set_target_frame','fdf_set_value','fdf_set_version','feof', - 'fflush','fgetc','fgetcsv','fgets','fgetss','file','file_exists', - 'file_get_contents','file_put_contents','fileatime','filectime', - 'filegroup','fileinode','filemtime','fileowner','fileperms', - 'filepro','filepro_fieldcount','filepro_fieldname', - 'filepro_fieldtype','filepro_fieldwidth','filepro_retrieve', - 'filepro_rowcount','filesize','filetype','filter_has_var', - 'filter_id','filter_input','filter_input_array','filter_list', - 'filter_var','filter_var_array','finfo_buffer','finfo_close', - 'finfo_file','finfo_open','finfo_set_flags','floatval','flock', - 'floor','flush','fmod','fnmatch','fopen','fpassthru','fprintf', - 'fputcsv','fputs','fread','frenchtojd','fribidi_charset_info', - 'fribidi_get_charsets','fribidi_log2vis','fscanf','fseek', - 'fsockopen','fstat','ftell','ftok','ftp_alloc','ftp_cdup', - 'ftp_chdir','ftp_chmod','ftp_close','ftp_connect','ftp_delete', - 'ftp_exec','ftp_fget','ftp_fput','ftp_get','ftp_get_option', - 'ftp_login','ftp_mdtm','ftp_mkdir','ftp_nb_continue','ftp_nb_fget', - 'ftp_nb_fput','ftp_nb_get','ftp_nb_put','ftp_nlist','ftp_pasv', - 'ftp_put','ftp_pwd','ftp_quit','ftp_raw','ftp_rawlist','ftp_rename', - 'ftp_rmdir','ftp_set_option','ftp_site','ftp_size', - 'ftp_ssl_connect','ftp_systype','ftruncate','function_exists', - 'func_get_arg','func_get_args','func_num_args','fwrite','gd_info', - 'getallheaders','getcwd','getdate','getenv','gethostbyaddr', - 'gethostbyname','gethostbynamel','getimagesize','getlastmod', - 'getmxrr','getmygid','getmyinode','getmypid','getmyuid','getopt', - 'getprotobyname','getprotobynumber','getrandmax','getrusage', - 'getservbyname','getservbyport','gettext','gettimeofday','gettype', - 'get_browser','get_cfg_var','get_class','get_class_methods', - 'get_class_vars','get_current_user','get_declared_classes', - 'get_defined_constants','get_defined_functions','get_defined_vars', - 'get_extension_funcs','get_headers','get_html_translation_table', - 'get_included_files','get_include_path','get_loaded_extensions', - 'get_magic_quotes_gpc','get_magic_quotes_runtime','get_meta_tags', - 'get_object_vars','get_parent_class','get_required_files', - 'get_resource_type','glob','gmdate','gmmktime','gmp_abs','gmp_add', - 'gmp_and','gmp_clrbit','gmp_cmp','gmp_com','gmp_div','gmp_div_q', - 'gmp_div_qr','gmp_div_r','gmp_divexact','gmp_fact','gmp_gcd', - 'gmp_gcdext','gmp_hamdist','gmp_init','gmp_intval','gmp_invert', - 'gmp_jacobi','gmp_legendre','gmp_mod','gmp_mul','gmp_neg', - 'gmp_nextprime','gmp_or','gmp_perfect_square','gmp_popcount', - 'gmp_pow','gmp_powm','gmp_prob_prime','gmp_random','gmp_scan0', - 'gmp_scan1','gmp_setbit','gmp_sign','gmp_sqrt','gmp_sqrtrem', - 'gmp_strval','gmp_sub','gmp_xor','gmstrftime','gopher_parsedir', - 'gregoriantojd','gzclose','gzcompress','gzdeflate','gzencode', - 'gzeof','gzfile','gzgetc','gzgets','gzgetss','gzinflate','gzopen', - 'gzpassthru','gzputs','gzread','gzrewind','gzseek','gztell', - 'gzuncompress','gzwrite','hash','hash_algos','hash_file', - 'hash_final','hash_hmac','hash_hmac_file','hash_init','hash_update', - 'hash_update_file','hash_update_stream','header','headers_list', - 'headers_sent','hebrev','hebrevc','hexdec','highlight_file', - 'highlight_string','html_doc','html_doc_file','html_entity_decode', - 'htmlentities','htmlspecialchars','htmlspecialchars_decode', - 'http_build_cookie','http_build_query','http_build_str', - 'http_build_url','http_cache_etag','http_cache_last_modified', - 'http_chunked_decode','http_date','http_deflate','http_get', - 'http_get_request_body','http_get_request_body_stream', - 'http_get_request_headers','http_head','http_inflate', - 'http_match_etag','http_match_modified','http_match_request_header', - 'http_negotiate_charset','http_negotiate_content_type', - 'http_negotiate_language','http_parse_cookie','http_parse_headers', - 'http_parse_message','http_parse_params', - 'http_persistent_handles_clean','http_persistent_handles_count', - 'http_persistent_handles_ident','http_post_data','http_post_fields', - 'http_put_data','http_put_file','http_put_stream','http_redirect', - 'http_request','http_request_body_encode', - 'http_request_method_exists','http_request_method_name', - 'http_request_method_register','http_request_method_unregister', - 'http_send_content_disposition','http_send_content_type', - 'http_send_data','http_send_file','http_send_last_modified', - 'http_send_status','http_send_stream','http_support', - 'http_throttle','hypot','i18n_convert','i18n_discover_encoding', - 'i18n_http_input','i18n_http_output','i18n_internal_encoding', - 'i18n_ja_jp_hantozen','i18n_mime_header_decode', - 'i18n_mime_header_encode','ibase_add_user','ibase_affected_rows', - 'ibase_backup','ibase_blob_add','ibase_blob_cancel', - 'ibase_blob_close','ibase_blob_create','ibase_blob_echo', - 'ibase_blob_get','ibase_blob_import','ibase_blob_info', - 'ibase_blob_open','ibase_close','ibase_commit','ibase_commit_ret', - 'ibase_connect','ibase_db_info','ibase_delete_user','ibase_drop_db', - 'ibase_errcode','ibase_errmsg','ibase_execute','ibase_fetch_assoc', - 'ibase_fetch_object','ibase_fetch_row','ibase_field_info', - 'ibase_free_event_handler','ibase_free_query','ibase_free_result', - 'ibase_gen_id','ibase_maintain_db','ibase_modify_user', - 'ibase_name_result','ibase_num_fields','ibase_num_params', - 'ibase_param_info','ibase_pconnect','ibase_prepare','ibase_query', - 'ibase_restore','ibase_rollback','ibase_rollback_ret', - 'ibase_server_info','ibase_service_attach','ibase_service_detach', - 'ibase_set_event_handler','ibase_trans','ibase_wait_event','iconv', - 'iconv_get_encoding','iconv_mime_decode', - 'iconv_mime_decode_headers','iconv_mime_encode', - 'iconv_set_encoding','iconv_strlen','iconv_strpos','iconv_strrpos', - 'iconv_substr','id3_get_frame_long_name','id3_get_frame_short_name', - 'id3_get_genre_id','id3_get_genre_list','id3_get_genre_name', - 'id3_get_tag','id3_get_version','id3_remove_tag','id3_set_tag', - 'idate','ignore_user_abort','image_type_to_extension', - 'image_type_to_mime_type','image2wbmp','imagealphablending', - 'imageantialias','imagearc','imagechar','imagecharup', - 'imagecolorallocate','imagecolorallocatealpha','imagecolorat', - 'imagecolorclosest','imagecolorclosestalpha','imagecolordeallocate', - 'imagecolorexact','imagecolorexactalpha','imagecolormatch', - 'imagecolorresolve','imagecolorresolvealpha','imagecolorset', - 'imagecolorsforindex','imagecolorstotal','imagecolortransparent', - 'imageconvolution','imagecopy','imagecopymerge', - 'imagecopymergegray','imagecopyresampled','imagecopyresized', - 'imagecreate','imagecreatefromgd','imagecreatefromgd2', - 'imagecreatefromgd2part','imagecreatefromgif','imagecreatefromjpeg', - 'imagecreatefrompng','imagecreatefromstring','imagecreatefromwbmp', - 'imagecreatefromxbm','imagecreatetruecolor','imagedashedline', - 'imagedestroy','imageellipse','imagefill','imagefilledarc', - 'imagefilledellipse','imagefilledpolygon','imagefilledrectangle', - 'imagefilltoborder','imagefilter','imagefontheight', - 'imagefontwidth','imageftbbox','imagefttext','imagegammacorrect', - 'imagegd','imagegd2','imagegif','imagegrabscreen','imagegrabwindow', - 'imageinterlace','imageistruecolor','imagejpeg','imagelayereffect', - 'imageline','imageloadfont','imagepalettecopy','imagepng', - 'imagepolygon','imagepsbbox','imagepsencodefont', - 'imagepsextendfont','imagepsfreefont','imagepsloadfont', - 'imagepsslantfont','imagepstext','imagerectangle','imagerotate', - 'imagesavealpha','imagesetbrush','imagesetpixel','imagesetstyle', - 'imagesetthickness','imagesettile','imagestring','imagestringup', - 'imagesx','imagesy','imagetruecolortopalette','imagettfbbox', - 'imagettftext','imagetypes','imagewbmp','imagexbm','imap_8bit', - 'imap_alerts','imap_append','imap_base64','imap_binary','imap_body', - 'imap_bodystruct','imap_check','imap_clearflag_full','imap_close', - 'imap_create','imap_createmailbox','imap_delete', - 'imap_deletemailbox','imap_errors','imap_expunge', - 'imap_fetch_overview','imap_fetchbody','imap_fetchheader', - 'imap_fetchstructure','imap_fetchtext','imap_get_quota', - 'imap_get_quotaroot','imap_getacl','imap_getmailboxes', - 'imap_getsubscribed','imap_header','imap_headerinfo','imap_headers', - 'imap_last_error','imap_list','imap_listmailbox', - 'imap_listsubscribed','imap_lsub','imap_mail','imap_mail_compose', - 'imap_mail_copy','imap_mail_move','imap_mailboxmsginfo', - 'imap_mime_header_decode','imap_msgno','imap_num_msg', - 'imap_num_recent','imap_open','imap_ping','imap_qprint', - 'imap_rename','imap_renamemailbox','imap_reopen', - 'imap_rfc822_parse_adrlist','imap_rfc822_parse_headers', - 'imap_rfc822_write_address','imap_savebody','imap_scan', - 'imap_scanmailbox','imap_search','imap_set_quota','imap_setacl', - 'imap_setflag_full','imap_sort','imap_status','imap_subscribe', - 'imap_thread','imap_timeout','imap_uid','imap_undelete', - 'imap_unsubscribe','imap_utf7_decode','imap_utf7_encode', - 'imap_utf8','implode','import_request_variables','in_array', - 'ini_alter','ini_get','ini_get_all','ini_restore','ini_set', - 'intval','ip2long','iptcembed','iptcparse','isset','is_a', - 'is_array','is_bool','is_callable','is_dir','is_double', - 'is_executable','is_file','is_finite','is_float','is_infinite', - 'is_int','is_integer','is_link','is_long','is_nan','is_null', - 'is_numeric','is_object','is_readable','is_real','is_resource', - 'is_scalar','is_soap_fault','is_string','is_subclass_of', - 'is_uploaded_file','is_writable','is_writeable','iterator_apply', - 'iterator_count','iterator_to_array','java_last_exception_clear', - 'java_last_exception_get','jddayofweek','jdmonthname','jdtofrench', - 'jdtogregorian','jdtojewish','jdtojulian','jdtounix','jewishtojd', - 'join','jpeg2wbmp','json_decode','json_encode','juliantojd','key', - 'key_exists','krsort','ksort','lcg_value','ldap_add','ldap_bind', - 'ldap_close','ldap_compare','ldap_connect','ldap_count_entries', - 'ldap_delete','ldap_dn2ufn','ldap_err2str','ldap_errno', - 'ldap_error','ldap_explode_dn','ldap_first_attribute', - 'ldap_first_entry','ldap_first_reference','ldap_free_result', - 'ldap_get_attributes','ldap_get_dn','ldap_get_entries', - 'ldap_get_option','ldap_get_values','ldap_get_values_len', - 'ldap_list','ldap_mod_add','ldap_mod_del','ldap_mod_replace', - 'ldap_modify','ldap_next_attribute','ldap_next_entry', - 'ldap_next_reference','ldap_parse_reference','ldap_parse_result', - 'ldap_read','ldap_rename','ldap_search','ldap_set_option', - 'ldap_sort','ldap_start_tls','ldap_unbind','levenshtein', - 'libxml_clear_errors','libxml_get_errors','libxml_get_last_error', - 'libxml_set_streams_context','libxml_use_internal_errors','link', - 'linkinfo','list','localeconv','localtime','log','log1p','log10', - 'long2ip','lstat','ltrim','lzf_compress','lzf_decompress', - 'lzf_optimized_for','magic_quotes_runtime','mail','max','mbereg', - 'mberegi','mberegi_replace','mbereg_match','mbereg_replace', - 'mbereg_search','mbereg_search_getpos','mbereg_search_getregs', - 'mbereg_search_init','mbereg_search_pos','mbereg_search_regs', - 'mbereg_search_setpos','mbregex_encoding','mbsplit','mbstrcut', - 'mbstrlen','mbstrpos','mbstrrpos','mbsubstr','mb_check_encoding', - 'mb_convert_case','mb_convert_encoding','mb_convert_kana', - 'mb_convert_variables','mb_decode_mimeheader', - 'mb_decode_numericentity','mb_detect_encoding','mb_detect_order', - 'mb_encode_mimeheader','mb_encode_numericentity','mb_ereg', - 'mb_eregi','mb_eregi_replace','mb_ereg_match','mb_ereg_replace', - 'mb_ereg_search','mb_ereg_search_getpos','mb_ereg_search_getregs', - 'mb_ereg_search_init','mb_ereg_search_pos','mb_ereg_search_regs', - 'mb_ereg_search_setpos','mb_get_info','mb_http_input', - 'mb_http_output','mb_internal_encoding','mb_language', - 'mb_list_encodings','mb_output_handler','mb_parse_str', - 'mb_preferred_mime_name','mb_regex_encoding','mb_regex_set_options', - 'mb_send_mail','mb_split','mb_strcut','mb_strimwidth','mb_stripos', - 'mb_stristr','mb_strlen','mb_strpos','mb_strrchr','mb_strrichr', - 'mb_strripos','mb_strrpos','mb_strstr','mb_strtolower', - 'mb_strtoupper','mb_strwidth','mb_substitute_character','mb_substr', - 'mb_substr_count','mcrypt_cbc','mcrypt_cfb','mcrypt_create_iv', - 'mcrypt_decrypt','mcrypt_ecb','mcrypt_enc_get_algorithms_name', - 'mcrypt_enc_get_block_size','mcrypt_enc_get_iv_size', - 'mcrypt_enc_get_key_size','mcrypt_enc_get_modes_name', - 'mcrypt_enc_get_supported_key_sizes', - 'mcrypt_enc_is_block_algorithm', - 'mcrypt_enc_is_block_algorithm_mode','mcrypt_enc_is_block_mode', - 'mcrypt_enc_self_test','mcrypt_encrypt','mcrypt_generic', - 'mcrypt_generic_deinit','mcrypt_generic_end','mcrypt_generic_init', - 'mcrypt_get_block_size','mcrypt_get_cipher_name', - 'mcrypt_get_iv_size','mcrypt_get_key_size','mcrypt_list_algorithms', - 'mcrypt_list_modes','mcrypt_module_close', - 'mcrypt_module_get_algo_block_size', - 'mcrypt_module_get_algo_key_size', - 'mcrypt_module_get_supported_key_sizes', - 'mcrypt_module_is_block_algorithm', - 'mcrypt_module_is_block_algorithm_mode', - 'mcrypt_module_is_block_mode','mcrypt_module_open', - 'mcrypt_module_self_test','mcrypt_ofb','md5','md5_file', - 'mdecrypt_generic','memcache_add','memcache_add_server', - 'memcache_close','memcache_connect','memcache_debug', - 'memcache_decrement','memcache_delete','memcache_flush', - 'memcache_get','memcache_get_extended_stats', - 'memcache_get_server_status','memcache_get_stats', - 'memcache_get_version','memcache_increment','memcache_pconnect', - 'memcache_replace','memcache_set','memcache_set_compress_threshold', - 'memcache_set_server_params','memory_get_peak_usage', - 'memory_get_usage','metaphone','mhash','mhash_count', - 'mhash_get_block_size','mhash_get_hash_name','mhash_keygen_s2k', - 'method_exists','microtime','mime_content_type','min', - 'ming_keypress','ming_setcubicthreshold','ming_setscale', - 'ming_useconstants','ming_useswfversion','mkdir','mktime', - 'money_format','move_uploaded_file','msql','msql_affected_rows', - 'msql_close','msql_connect','msql_create_db','msql_createdb', - 'msql_data_seek','msql_db_query','msql_dbname','msql_drop_db', - 'msql_dropdb','msql_error','msql_fetch_array','msql_fetch_field', - 'msql_fetch_object','msql_fetch_row','msql_field_flags', - 'msql_field_len','msql_field_name','msql_field_seek', - 'msql_field_table','msql_field_type','msql_fieldflags', - 'msql_fieldlen','msql_fieldname','msql_fieldtable','msql_fieldtype', - 'msql_free_result','msql_freeresult','msql_list_dbs', - 'msql_list_fields','msql_list_tables','msql_listdbs', - 'msql_listfields','msql_listtables','msql_num_fields', - 'msql_num_rows','msql_numfields','msql_numrows','msql_pconnect', - 'msql_query','msql_regcase','msql_result','msql_select_db', - 'msql_selectdb','msql_tablename','mssql_bind','mssql_close', - 'mssql_connect','mssql_data_seek','mssql_execute', - 'mssql_fetch_array','mssql_fetch_assoc','mssql_fetch_batch', - 'mssql_fetch_field','mssql_fetch_object','mssql_fetch_row', - 'mssql_field_length','mssql_field_name','mssql_field_seek', - 'mssql_field_type','mssql_free_result','mssql_free_statement', - 'mssql_get_last_message','mssql_guid_string','mssql_init', - 'mssql_min_error_severity','mssql_min_message_severity', - 'mssql_next_result','mssql_num_fields','mssql_num_rows', - 'mssql_pconnect','mssql_query','mssql_result','mssql_rows_affected', - 'mssql_select_db','mt_getrandmax','mt_rand','mt_srand','mysql', - 'mysql_affected_rows','mysql_client_encoding','mysql_close', - 'mysql_connect','mysql_createdb','mysql_create_db', - 'mysql_data_seek','mysql_dbname','mysql_db_name','mysql_db_query', - 'mysql_dropdb','mysql_drop_db','mysql_errno','mysql_error', - 'mysql_escape_string','mysql_fetch_array','mysql_fetch_assoc', - 'mysql_fetch_field','mysql_fetch_lengths','mysql_fetch_object', - 'mysql_fetch_row','mysql_fieldflags','mysql_fieldlen', - 'mysql_fieldname','mysql_fieldtable','mysql_fieldtype', - 'mysql_field_flags','mysql_field_len','mysql_field_name', - 'mysql_field_seek','mysql_field_table','mysql_field_type', - 'mysql_freeresult','mysql_free_result','mysql_get_client_info', - 'mysql_get_host_info','mysql_get_proto_info', - 'mysql_get_server_info','mysql_info','mysql_insert_id', - 'mysql_listdbs','mysql_listfields','mysql_listtables', - 'mysql_list_dbs','mysql_list_fields','mysql_list_processes', - 'mysql_list_tables','mysql_numfields','mysql_numrows', - 'mysql_num_fields','mysql_num_rows','mysql_pconnect','mysql_ping', - 'mysql_query','mysql_real_escape_string','mysql_result', - 'mysql_selectdb','mysql_select_db','mysql_set_charset','mysql_stat', - 'mysql_tablename','mysql_table_name','mysql_thread_id', - 'mysql_unbuffered_query','mysqli_affected_rows','mysqli_autocommit', - 'mysqli_bind_param','mysqli_bind_result','mysqli_change_user', - 'mysqli_character_set_name','mysqli_client_encoding','mysqli_close', - 'mysqli_commit','mysqli_connect','mysqli_connect_errno', - 'mysqli_connect_error','mysqli_data_seek','mysqli_debug', - 'mysqli_disable_reads_from_master','mysqli_disable_rpl_parse', - 'mysqli_dump_debug_info','mysqli_embedded_server_end', - 'mysqli_embedded_server_start','mysqli_enable_reads_from_master', - 'mysqli_enable_rpl_parse','mysqli_errno','mysqli_error', - 'mysqli_escape_string','mysqli_execute','mysqli_fetch', - 'mysqli_fetch_array','mysqli_fetch_assoc','mysqli_fetch_field', - 'mysqli_fetch_field_direct','mysqli_fetch_fields', - 'mysqli_fetch_lengths','mysqli_fetch_object','mysqli_fetch_row', - 'mysqli_field_count','mysqli_field_seek','mysqli_field_tell', - 'mysqli_free_result','mysqli_get_charset','mysqli_get_client_info', - 'mysqli_get_client_version','mysqli_get_host_info', - 'mysqli_get_metadata','mysqli_get_proto_info', - 'mysqli_get_server_info','mysqli_get_server_version', - 'mysqli_get_warnings','mysqli_info','mysqli_init', - 'mysqli_insert_id','mysqli_kill','mysqli_master_query', - 'mysqli_more_results','mysqli_multi_query','mysqli_next_result', - 'mysqli_num_fields','mysqli_num_rows','mysqli_options', - 'mysqli_param_count','mysqli_ping','mysqli_prepare','mysqli_query', - 'mysqli_real_connect','mysqli_real_escape_string', - 'mysqli_real_query','mysqli_report','mysqli_rollback', - 'mysqli_rpl_parse_enabled','mysqli_rpl_probe', - 'mysqli_rpl_query_type','mysqli_select_db','mysqli_send_long_data', - 'mysqli_send_query','mysqli_set_charset', - 'mysqli_set_local_infile_default','mysqli_set_local_infile_handler', - 'mysqli_set_opt','mysqli_slave_query','mysqli_sqlstate', - 'mysqli_ssl_set','mysqli_stat','mysqli_stmt_affected_rows', - 'mysqli_stmt_attr_get','mysqli_stmt_attr_set', - 'mysqli_stmt_bind_param','mysqli_stmt_bind_result', - 'mysqli_stmt_close','mysqli_stmt_data_seek','mysqli_stmt_errno', - 'mysqli_stmt_error','mysqli_stmt_execute','mysqli_stmt_fetch', - 'mysqli_stmt_field_count','mysqli_stmt_free_result', - 'mysqli_stmt_get_warnings','mysqli_stmt_init', - 'mysqli_stmt_insert_id','mysqli_stmt_num_rows', - 'mysqli_stmt_param_count','mysqli_stmt_prepare','mysqli_stmt_reset', - 'mysqli_stmt_result_metadata','mysqli_stmt_send_long_data', - 'mysqli_stmt_sqlstate','mysqli_stmt_store_result', - 'mysqli_store_result','mysqli_thread_id','mysqli_thread_safe', - 'mysqli_use_result','mysqli_warning_count','natcasesort','natsort', - 'new_xmldoc','next','ngettext','nl2br','nl_langinfo', - 'ntuser_getdomaincontroller','ntuser_getusergroups', - 'ntuser_getuserinfo','ntuser_getuserlist','number_format', - 'ob_clean','ob_deflatehandler','ob_end_clean','ob_end_flush', - 'ob_etaghandler','ob_flush','ob_get_clean','ob_get_contents', - 'ob_get_flush','ob_get_length','ob_get_level','ob_get_status', - 'ob_gzhandler','ob_iconv_handler','ob_implicit_flush', - 'ob_inflatehandler','ob_list_handlers','ob_start','ob_tidyhandler', - 'octdec','odbc_autocommit','odbc_binmode','odbc_close', - 'odbc_close_all','odbc_columnprivileges','odbc_columns', - 'odbc_commit','odbc_connect','odbc_cursor','odbc_data_source', - 'odbc_do','odbc_error','odbc_errormsg','odbc_exec','odbc_execute', - 'odbc_fetch_array','odbc_fetch_into','odbc_fetch_object', - 'odbc_fetch_row','odbc_field_len','odbc_field_name', - 'odbc_field_num','odbc_field_precision','odbc_field_scale', - 'odbc_field_type','odbc_foreignkeys','odbc_free_result', - 'odbc_gettypeinfo','odbc_longreadlen','odbc_next_result', - 'odbc_num_fields','odbc_num_rows','odbc_pconnect','odbc_prepare', - 'odbc_primarykeys','odbc_procedurecolumns','odbc_procedures', - 'odbc_result','odbc_result_all','odbc_rollback','odbc_setoption', - 'odbc_specialcolumns','odbc_statistics','odbc_tableprivileges', - 'odbc_tables','opendir','openlog','openssl_csr_export', - 'openssl_csr_export_to_file','openssl_csr_get_public_key', - 'openssl_csr_get_subject','openssl_csr_new','openssl_csr_sign', - 'openssl_error_string','openssl_free_key','openssl_get_privatekey', - 'openssl_get_publickey','openssl_open','openssl_pkcs12_export', - 'openssl_pkcs12_export_to_file','openssl_pkcs12_read', - 'openssl_pkcs7_decrypt','openssl_pkcs7_encrypt', - 'openssl_pkcs7_sign','openssl_pkcs7_verify','openssl_pkey_export', - 'openssl_pkey_export_to_file','openssl_pkey_free', - 'openssl_pkey_get_details','openssl_pkey_get_private', - 'openssl_pkey_get_public','openssl_pkey_new', - 'openssl_private_decrypt','openssl_private_encrypt', - 'openssl_public_decrypt','openssl_public_encrypt','openssl_seal', - 'openssl_sign','openssl_verify','openssl_x509_checkpurpose', - 'openssl_x509_check_private_key','openssl_x509_export', - 'openssl_x509_export_to_file','openssl_x509_free', - 'openssl_x509_parse','openssl_x509_read','ord', - 'output_add_rewrite_var','output_reset_rewrite_vars','overload', - 'outputdebugstring','pack','parse_ini_file','parse_str','parse_url', - 'parsekit_compile_file','parsekit_compile_string', - 'parsekit_func_arginfo','parsekit_opcode_flags', - 'parsekit_opcode_name','passthru','pathinfo','pclose', - 'pdf_add_bookmark','pdf_add_launchlink','pdf_add_locallink', - 'pdf_add_nameddest','pdf_add_note','pdf_add_pdflink', - 'pdf_add_thumbnail','pdf_add_weblink','pdf_arc','pdf_arcn', - 'pdf_attach_file','pdf_begin_font','pdf_begin_glyph', - 'pdf_begin_page','pdf_begin_pattern','pdf_begin_template', - 'pdf_circle','pdf_clip','pdf_close','pdf_close_image', - 'pdf_close_pdi','pdf_close_pdi_page','pdf_closepath', - 'pdf_closepath_fill_stroke','pdf_closepath_stroke','pdf_concat', - 'pdf_continue_text','pdf_create_gstate','pdf_create_pvf', - 'pdf_curveto','pdf_delete','pdf_delete_pvf','pdf_encoding_set_char', - 'pdf_end_font','pdf_end_glyph','pdf_end_page','pdf_end_pattern', - 'pdf_end_template','pdf_endpath','pdf_fill','pdf_fill_imageblock', - 'pdf_fill_pdfblock','pdf_fill_stroke','pdf_fill_textblock', - 'pdf_findfont','pdf_fit_image','pdf_fit_pdi_page', - 'pdf_fit_textline','pdf_get_apiname','pdf_get_buffer', - 'pdf_get_errmsg','pdf_get_errnum','pdf_get_parameter', - 'pdf_get_pdi_parameter','pdf_get_pdi_value','pdf_get_value', - 'pdf_initgraphics','pdf_lineto','pdf_load_font', - 'pdf_load_iccprofile','pdf_load_image','pdf_makespotcolor', - 'pdf_moveto','pdf_new','pdf_open_ccitt','pdf_open_file', - 'pdf_open_image','pdf_open_image_file','pdf_open_pdi', - 'pdf_open_pdi_page','pdf_place_image','pdf_place_pdi_page', - 'pdf_process_pdi','pdf_rect','pdf_restore','pdf_rotate','pdf_save', - 'pdf_scale','pdf_set_border_color','pdf_set_border_dash', - 'pdf_set_border_style','pdf_set_gstate','pdf_set_info', - 'pdf_set_parameter','pdf_set_text_pos','pdf_set_value', - 'pdf_setcolor','pdf_setdash','pdf_setdashpattern','pdf_setflat', - 'pdf_setfont','pdf_setlinecap','pdf_setlinejoin','pdf_setlinewidth', - 'pdf_setmatrix','pdf_setmiterlimit','pdf_setpolydash','pdf_shading', - 'pdf_shading_pattern','pdf_shfill','pdf_show','pdf_show_boxed', - 'pdf_show_xy','pdf_skew','pdf_stringwidth','pdf_stroke', - 'pdf_translate','pdo_drivers','pfsockopen','pg_affected_rows', - 'pg_cancel_query','pg_clientencoding','pg_client_encoding', - 'pg_close','pg_cmdtuples','pg_connect','pg_connection_busy', - 'pg_connection_reset','pg_connection_status','pg_convert', - 'pg_copy_from','pg_copy_to','pg_dbname','pg_delete','pg_end_copy', - 'pg_errormessage','pg_escape_bytea','pg_escape_string','pg_exec', - 'pg_execute','pg_fetch_all','pg_fetch_all_columns','pg_fetch_array', - 'pg_fetch_assoc','pg_fetch_object','pg_fetch_result','pg_fetch_row', - 'pg_fieldisnull','pg_fieldname','pg_fieldnum','pg_fieldprtlen', - 'pg_fieldsize','pg_fieldtype','pg_field_is_null','pg_field_name', - 'pg_field_num','pg_field_prtlen','pg_field_size','pg_field_table', - 'pg_field_type','pg_field_type_oid','pg_free_result', - 'pg_freeresult','pg_get_notify','pg_get_pid','pg_get_result', - 'pg_getlastoid','pg_host','pg_insert','pg_last_error', - 'pg_last_notice','pg_last_oid','pg_loclose','pg_locreate', - 'pg_loexport','pg_loimport','pg_loopen','pg_loread','pg_loreadall', - 'pg_lounlink','pg_lowrite','pg_lo_close','pg_lo_create', - 'pg_lo_export','pg_lo_import','pg_lo_open','pg_lo_read', - 'pg_lo_read_all','pg_lo_seek','pg_lo_tell','pg_lo_unlink', - 'pg_lo_write','pg_meta_data','pg_numfields','pg_numrows', - 'pg_num_fields','pg_num_rows','pg_options','pg_parameter_status', - 'pg_pconnect','pg_ping','pg_port','pg_prepare','pg_put_line', - 'pg_query','pg_query_params','pg_result','pg_result_error', - 'pg_result_error_field','pg_result_seek','pg_result_status', - 'pg_select','pg_send_execute','pg_send_prepare','pg_send_query', - 'pg_send_query_params','pg_set_client_encoding', - 'pg_set_error_verbosity','pg_setclientencoding','pg_trace', - 'pg_transaction_status','pg_tty','pg_unescape_bytea','pg_untrace', - 'pg_update','pg_version','php_egg_logo_guid','php_ini_loaded_file', - 'php_ini_scanned_files','php_logo_guid','php_real_logo_guid', - 'php_sapi_name','php_strip_whitespace','php_uname','phpcredits', - 'phpdoc_xml_from_string','phpinfo','phpversion','pi','png2wbmp', - 'pop3_close','pop3_delete_message','pop3_get_account_size', - 'pop3_get_message','pop3_get_message_count', - 'pop3_get_message_header','pop3_get_message_ids', - 'pop3_get_message_size','pop3_get_message_sizes','pop3_open', - 'pop3_undelete','popen','pos','posix_ctermid','posix_errno', - 'posix_getcwd','posix_getegid','posix_geteuid','posix_getgid', - 'posix_getgrgid','posix_getgrnam','posix_getgroups', - 'posix_getlogin','posix_getpgid','posix_getpgrp','posix_getpid', - 'posix_getppid','posix_getpwnam','posix_getpwuid','posix_getrlimit', - 'posix_getsid','posix_getuid','posix_get_last_error','posix_isatty', - 'posix_kill','posix_mkfifo','posix_setegid','posix_seteuid', - 'posix_setgid','posix_setpgid','posix_setsid','posix_setuid', - 'posix_strerror','posix_times','posix_ttyname','posix_uname','pow', - 'preg_grep','preg_last_error','preg_match','preg_match_all', - 'preg_quote','preg_replace','preg_replace_callback','preg_split', - 'prev','print_r','printf','proc_close','proc_get_status', - 'proc_open','proc_terminate','putenv','quoted_printable_decode', - 'quotemeta','rad2deg','radius_acct_open','radius_add_server', - 'radius_auth_open','radius_close','radius_config', - 'radius_create_request','radius_cvt_addr','radius_cvt_int', - 'radius_cvt_string','radius_demangle','radius_demangle_mppe_key', - 'radius_get_attr','radius_get_vendor_attr','radius_put_addr', - 'radius_put_attr','radius_put_int','radius_put_string', - 'radius_put_vendor_addr','radius_put_vendor_attr', - 'radius_put_vendor_int','radius_put_vendor_string', - 'radius_request_authenticator','radius_send_request', - 'radius_server_secret','radius_strerror','rand','range', - 'rawurldecode','rawurlencode','read_exif_data','readdir','readfile', - 'readgzfile','readlink','realpath','reg_close_key','reg_create_key', - 'reg_enum_key','reg_enum_value','reg_get_value','reg_open_key', - 'reg_set_value','register_shutdown_function', - 'register_tick_function','rename','res_close','res_get','res_list', - 'res_list_type','res_open','res_set','reset', - 'restore_error_handler','restore_include_path','rewind','rewinddir', - 'rmdir','round','rsort','rtrim','runkit_class_adopt', - 'runkit_class_emancipate','runkit_constant_add', - 'runkit_constant_redefine','runkit_constant_remove', - 'runkit_default_property_add','runkit_function_add', - 'runkit_function_copy','runkit_function_redefine', - 'runkit_function_remove','runkit_function_rename','runkit_import', - 'runkit_lint','runkit_lint_file','runkit_method_add', - 'runkit_method_copy','runkit_method_redefine', - 'runkit_method_remove','runkit_method_rename','runkit_object_id', - 'runkit_return_value_used','runkit_sandbox_output_handler', - 'runkit_superglobals','runkit_zval_inspect','scandir','sem_acquire', - 'sem_get','sem_release','sem_remove','serialize', - 'session_cache_expire','session_cache_limiter','session_commit', - 'session_decode','session_destroy','session_encode', - 'session_get_cookie_params','session_id','session_is_registered', - 'session_module_name','session_name','session_regenerate_id', - 'session_register','session_save_path','session_set_cookie_params', - 'session_set_save_handler','session_start','session_unregister', - 'session_unset','session_write_close','set_content', - 'set_error_handler','set_file_buffer','set_include_path', - 'set_magic_quotes_runtime','set_socket_blocking','set_time_limit', - 'setcookie','setlocale','setrawcookie','settype','sha1','sha1_file', - 'shell_exec','shmop_close','shmop_delete','shmop_open','shmop_read', - 'shmop_size','shmop_write','shm_attach','shm_detach','shm_get_var', - 'shm_put_var','shm_remove','shm_remove_var','show_source','shuffle', - 'similar_text','simplexml_import_dom','simplexml_load_file', - 'simplexml_load_string','sin','sinh','sizeof','sleep','smtp_close', - 'smtp_cmd_data','smtp_cmd_mail','smtp_cmd_rcpt','smtp_connect', - 'snmp_get_quick_print','snmp_get_valueretrieval','snmp_read_mib', - 'snmp_set_quick_print','snmp_set_valueretrieval','snmp2_get', - 'snmp2_getnext','snmp2_real_walk','snmp2_set','snmp2_walk', - 'snmp3_get','snmp3_getnext','snmp3_real_walk','snmp3_set', - 'snmp3_walk','snmpget','snmpgetnext','snmprealwalk','snmpset', - 'snmpwalk','snmpwalkoid','socket_accept','socket_bind', - 'socket_clear_error','socket_close','socket_connect', - 'socket_create','socket_create_listen','socket_create_pair', - 'socket_getopt','socket_getpeername','socket_getsockname', - 'socket_get_option','socket_get_status','socket_iovec_add', - 'socket_iovec_alloc','socket_iovec_delete','socket_iovec_fetch', - 'socket_iovec_free','socket_iovec_set','socket_last_error', - 'socket_listen','socket_read','socket_readv','socket_recv', - 'socket_recvfrom','socket_recvmsg','socket_select','socket_send', - 'socket_sendmsg','socket_sendto','socket_setopt','socket_set_block', - 'socket_set_blocking','socket_set_nonblock','socket_set_option', - 'socket_set_timeout','socket_shutdown','socket_strerror', - 'socket_write','socket_writev','sort','soundex','spl_autoload', - 'spl_autoload_call','spl_autoload_extensions', - 'spl_autoload_functions','spl_autoload_register', - 'spl_autoload_unregister','spl_classes','spl_object_hash','split', - 'spliti','sprintf','sql_regcase','sqlite_array_query', - 'sqlite_busy_timeout','sqlite_changes','sqlite_close', - 'sqlite_column','sqlite_create_aggregate','sqlite_create_function', - 'sqlite_current','sqlite_error_string','sqlite_escape_string', - 'sqlite_exec','sqlite_factory','sqlite_fetch_all', - 'sqlite_fetch_array','sqlite_fetch_column_types', - 'sqlite_fetch_object','sqlite_fetch_single','sqlite_fetch_string', - 'sqlite_field_name','sqlite_has_more','sqlite_has_prev', - 'sqlite_last_error','sqlite_last_insert_rowid','sqlite_libencoding', - 'sqlite_libversion','sqlite_next','sqlite_num_fields', - 'sqlite_num_rows','sqlite_open','sqlite_popen','sqlite_prev', - 'sqlite_query','sqlite_rewind','sqlite_seek','sqlite_single_query', - 'sqlite_udf_decode_binary','sqlite_udf_encode_binary', - 'sqlite_unbuffered_query','sqlite_valid','sqrt','srand','sscanf', - 'ssh2_auth_hostbased_file','ssh2_auth_none','ssh2_auth_password', - 'ssh2_auth_pubkey_file','ssh2_connect','ssh2_exec', - 'ssh2_fetch_stream','ssh2_fingerprint','ssh2_forward_accept', - 'ssh2_forward_listen','ssh2_methods_negotiated','ssh2_poll', - 'ssh2_publickey_add','ssh2_publickey_init','ssh2_publickey_list', - 'ssh2_publickey_remove','ssh2_scp_recv','ssh2_scp_send','ssh2_sftp', - 'ssh2_sftp_lstat','ssh2_sftp_mkdir','ssh2_sftp_readlink', - 'ssh2_sftp_realpath','ssh2_sftp_rename','ssh2_sftp_rmdir', - 'ssh2_sftp_stat','ssh2_sftp_symlink','ssh2_sftp_unlink', - 'ssh2_shell','ssh2_tunnel','stat','stats_absolute_deviation', - 'stats_cdf_beta','stats_cdf_binomial','stats_cdf_cauchy', - 'stats_cdf_chisquare','stats_cdf_exponential','stats_cdf_f', - 'stats_cdf_gamma','stats_cdf_laplace','stats_cdf_logistic', - 'stats_cdf_negative_binomial','stats_cdf_noncentral_chisquare', - 'stats_cdf_noncentral_f','stats_cdf_noncentral_t', - 'stats_cdf_normal','stats_cdf_poisson','stats_cdf_t', - 'stats_cdf_uniform','stats_cdf_weibull','stats_covariance', - 'stats_dens_beta','stats_dens_cauchy','stats_dens_chisquare', - 'stats_dens_exponential','stats_dens_f','stats_dens_gamma', - 'stats_dens_laplace','stats_dens_logistic','stats_dens_normal', - 'stats_dens_pmf_binomial','stats_dens_pmf_hypergeometric', - 'stats_dens_pmf_negative_binomial','stats_dens_pmf_poisson', - 'stats_dens_t','stats_dens_uniform','stats_dens_weibull', - 'stats_harmonic_mean','stats_kurtosis','stats_rand_gen_beta', - 'stats_rand_gen_chisquare','stats_rand_gen_exponential', - 'stats_rand_gen_f','stats_rand_gen_funiform','stats_rand_gen_gamma', - 'stats_rand_gen_ipoisson','stats_rand_gen_iuniform', - 'stats_rand_gen_noncenral_f','stats_rand_gen_noncentral_chisquare', - 'stats_rand_gen_noncentral_t','stats_rand_gen_normal', - 'stats_rand_gen_t','stats_rand_getsd','stats_rand_ibinomial', - 'stats_rand_ibinomial_negative','stats_rand_ignlgi', - 'stats_rand_phrase_to_seeds','stats_rand_ranf','stats_rand_setall', - 'stats_skew','stats_standard_deviation','stats_stat_binomial_coef', - 'stats_stat_correlation','stats_stat_factorial', - 'stats_stat_independent_t','stats_stat_innerproduct', - 'stats_stat_paired_t','stats_stat_percentile','stats_stat_powersum', - 'stats_variance','strcasecmp','strchr','strcmp','strcoll','strcspn', - 'stream_bucket_append','stream_bucket_make_writeable', - 'stream_bucket_new','stream_bucket_prepend','stream_context_create', - 'stream_context_get_default','stream_context_get_options', - 'stream_context_set_default','stream_context_set_option', - 'stream_context_set_params','stream_copy_to_stream', - 'stream_encoding','stream_filter_append','stream_filter_prepend', - 'stream_filter_register','stream_filter_remove', - 'stream_get_contents','stream_get_filters','stream_get_line', - 'stream_get_meta_data','stream_get_transports', - 'stream_get_wrappers','stream_is_local', - 'stream_notification_callback','stream_register_wrapper', - 'stream_resolve_include_path','stream_select','stream_set_blocking', - 'stream_set_timeout','stream_set_write_buffer', - 'stream_socket_accept','stream_socket_client', - 'stream_socket_enable_crypto','stream_socket_get_name', - 'stream_socket_pair','stream_socket_recvfrom', - 'stream_socket_sendto','stream_socket_server', - 'stream_socket_shutdown','stream_supports_lock', - 'stream_wrapper_register','stream_wrapper_restore', - 'stream_wrapper_unregister','strftime','stripcslashes','stripos', - 'stripslashes','strip_tags','stristr','strlen','strnatcasecmp', - 'strnatcmp','strpbrk','strncasecmp','strncmp','strpos','strrchr', - 'strrev','strripos','strrpos','strspn','strstr','strtok', - 'strtolower','strtotime','strtoupper','strtr','strval', - 'str_ireplace','str_pad','str_repeat','str_replace','str_rot13', - 'str_split','str_shuffle','str_word_count','substr', - 'substr_compare','substr_count','substr_replace','svn_add', - 'svn_auth_get_parameter','svn_auth_set_parameter','svn_cat', - 'svn_checkout','svn_cleanup','svn_client_version','svn_commit', - 'svn_diff','svn_export','svn_fs_abort_txn','svn_fs_apply_text', - 'svn_fs_begin_txn2','svn_fs_change_node_prop','svn_fs_check_path', - 'svn_fs_contents_changed','svn_fs_copy','svn_fs_delete', - 'svn_fs_dir_entries','svn_fs_file_contents','svn_fs_file_length', - 'svn_fs_is_dir','svn_fs_is_file','svn_fs_make_dir', - 'svn_fs_make_file','svn_fs_node_created_rev','svn_fs_node_prop', - 'svn_fs_props_changed','svn_fs_revision_prop', - 'svn_fs_revision_root','svn_fs_txn_root','svn_fs_youngest_rev', - 'svn_import','svn_info','svn_log','svn_ls','svn_repos_create', - 'svn_repos_fs','svn_repos_fs_begin_txn_for_commit', - 'svn_repos_fs_commit_txn','svn_repos_hotcopy','svn_repos_open', - 'svn_repos_recover','svn_status','svn_update','symlink', - 'sys_get_temp_dir','syslog','system','tan','tanh','tempnam', - 'textdomain','thread_get','thread_include','thread_lock', - 'thread_lock_try','thread_mutex_destroy','thread_mutex_init', - 'thread_set','thread_start','thread_unlock','tidy_access_count', - 'tidy_clean_repair','tidy_config_count','tidy_diagnose', - 'tidy_error_count','tidy_get_body','tidy_get_config', - 'tidy_get_error_buffer','tidy_get_head','tidy_get_html', - 'tidy_get_html_ver','tidy_get_output','tidy_get_release', - 'tidy_get_root','tidy_get_status','tidy_getopt','tidy_is_xhtml', - 'tidy_is_xml','tidy_parse_file','tidy_parse_string', - 'tidy_repair_file','tidy_repair_string','tidy_warning_count','time', - 'timezone_abbreviations_list','timezone_identifiers_list', - 'timezone_name_from_abbr','timezone_name_get','timezone_offset_get', - 'timezone_open','timezone_transitions_get','tmpfile', - 'token_get_all','token_name','touch','trigger_error', - 'transliterate','transliterate_filters_get','trim','uasort', - 'ucfirst','ucwords','uksort','umask','uniqid','unixtojd','unlink', - 'unpack','unregister_tick_function','unserialize','unset', - 'urldecode','urlencode','user_error','use_soap_error_handler', - 'usleep','usort','utf8_decode','utf8_encode','var_dump', - 'var_export','variant_abs','variant_add','variant_and', - 'variant_cast','variant_cat','variant_cmp', - 'variant_date_from_timestamp','variant_date_to_timestamp', - 'variant_div','variant_eqv','variant_fix','variant_get_type', - 'variant_idiv','variant_imp','variant_int','variant_mod', - 'variant_mul','variant_neg','variant_not','variant_or', - 'variant_pow','variant_round','variant_set','variant_set_type', - 'variant_sub','variant_xor','version_compare','virtual','vfprintf', - 'vprintf','vsprintf','wddx_add_vars','wddx_deserialize', - 'wddx_packet_end','wddx_packet_start','wddx_serialize_value', - 'wddx_serialize_vars','win_beep','win_browse_file', - 'win_browse_folder','win_create_link','win_message_box', - 'win_play_wav','win_shell_execute','win32_create_service', - 'win32_delete_service','win32_get_last_control_message', - 'win32_ps_list_procs','win32_ps_stat_mem','win32_ps_stat_proc', - 'win32_query_service_status','win32_scheduler_delete_task', - 'win32_scheduler_enum_tasks','win32_scheduler_get_task_info', - 'win32_scheduler_run','win32_scheduler_set_task_info', - 'win32_set_service_status','win32_start_service', - 'win32_start_service_ctrl_dispatcher','win32_stop_service', - 'wordwrap','xml_error_string','xml_get_current_byte_index', - 'xml_get_current_column_number','xml_get_current_line_number', - 'xml_get_error_code','xml_parse','xml_parser_create', - 'xml_parser_create_ns','xml_parser_free','xml_parser_get_option', - 'xml_parser_set_option','xml_parse_into_struct', - 'xml_set_character_data_handler','xml_set_default_handler', - 'xml_set_element_handler','xml_set_end_namespace_decl_handler', - 'xml_set_external_entity_ref_handler', - 'xml_set_notation_decl_handler','xml_set_object', - 'xml_set_processing_instruction_handler', - 'xml_set_start_namespace_decl_handler', - 'xml_set_unparsed_entity_decl_handler','xmldoc','xmldocfile', - 'xmlrpc_decode','xmlrpc_decode_request','xmlrpc_encode', - 'xmlrpc_encode_request','xmlrpc_get_type','xmlrpc_is_fault', - 'xmlrpc_parse_method_descriptions', - 'xmlrpc_server_add_introspection_data','xmlrpc_server_call_method', - 'xmlrpc_server_create','xmlrpc_server_destroy', - 'xmlrpc_server_register_introspection_callback', - 'xmlrpc_server_register_method','xmlrpc_set_type','xmltree', - 'xmlwriter_end_attribute','xmlwriter_end_cdata', - 'xmlwriter_end_comment','xmlwriter_end_document', - 'xmlwriter_end_dtd','xmlwriter_end_dtd_attlist', - 'xmlwriter_end_dtd_element','xmlwriter_end_dtd_entity', - 'xmlwriter_end_element','xmlwriter_end_pi','xmlwriter_flush', - 'xmlwriter_full_end_element','xmlwriter_open_memory', - 'xmlwriter_open_uri','xmlwriter_output_memory', - 'xmlwriter_set_indent','xmlwriter_set_indent_string', - 'xmlwriter_start_attribute','xmlwriter_start_attribute_ns', - 'xmlwriter_start_cdata','xmlwriter_start_comment', - 'xmlwriter_start_document','xmlwriter_start_dtd', - 'xmlwriter_start_dtd_attlist','xmlwriter_start_dtd_element', - 'xmlwriter_start_dtd_entity','xmlwriter_start_element', - 'xmlwriter_start_element_ns','xmlwriter_start_pi','xmlwriter_text', - 'xmlwriter_write_attribute','xmlwriter_write_attribute_ns', - 'xmlwriter_write_cdata','xmlwriter_write_comment', - 'xmlwriter_write_dtd','xmlwriter_write_dtd_attlist', - 'xmlwriter_write_dtd_element','xmlwriter_write_dtd_entity', - 'xmlwriter_write_element','xmlwriter_write_element_ns', - 'xmlwriter_write_pi','xmlwriter_write_raw','xpath_eval', - 'xpath_eval_expression','xpath_new_context','xpath_register_ns', - 'xpath_register_ns_auto','xptr_eval','xptr_new_context','yp_all', - 'yp_cat','yp_errno','yp_err_string','yp_first', - 'yp_get_default_domain','yp_master','yp_match','yp_next','yp_order', - 'zend_current_obfuscation_level','zend_get_cfg_var','zend_get_id', - 'zend_loader_current_file','zend_loader_enabled', - 'zend_loader_file_encoded','zend_loader_file_licensed', - 'zend_loader_install_license','zend_loader_version', - 'zend_logo_guid','zend_match_hostmasks','zend_obfuscate_class_name', - 'zend_obfuscate_function_name','zend_optimizer_version', - 'zend_runtime_obfuscate','zend_version','zip_close', - 'zip_entry_close','zip_entry_compressedsize', - 'zip_entry_compressionmethod','zip_entry_filesize','zip_entry_name', - 'zip_entry_open','zip_entry_read','zip_open','zip_read', - 'zlib_get_coding_type' - ), - 4 => array( - 'DEFAULT_INCLUDE_PATH', 'DIRECTORY_SEPARATOR', 'E_ALL', - 'E_COMPILE_ERROR', 'E_COMPILE_WARNING', 'E_CORE_ERROR', - 'E_CORE_WARNING', 'E_ERROR', 'E_NOTICE', 'E_PARSE', 'E_STRICT', - 'E_USER_ERROR', 'E_USER_NOTICE', 'E_USER_WARNING', 'E_WARNING', - 'ENT_COMPAT','ENT_QUOTES','ENT_NOQUOTES', - 'false', 'null', 'PEAR_EXTENSION_DIR', 'PEAR_INSTALL_DIR', - 'PHP_BINDIR', 'PHP_CONFIG_FILE_PATH', 'PHP_DATADIR', - 'PHP_EXTENSION_DIR', 'PHP_LIBDIR', - 'PHP_LOCALSTATEDIR', 'PHP_OS', - 'PHP_OUTPUT_HANDLER_CONT', 'PHP_OUTPUT_HANDLER_END', - 'PHP_OUTPUT_HANDLER_START', 'PHP_SYSCONFDIR', - 'PHP_VERSION', 'true', '__CLASS__', '__FILE__', '__FUNCTION__', - '__LINE__', '__METHOD__' - ) - ), - 'SYMBOLS' => array( - 1 => array( - '<'.'%', '<'.'%=', '%'.'>', '<'.'?', '<'.'?=', '?'.'>' - ), - 0 => array( - '(', ')', '[', ']', '{', '}', - '!', '@', '%', '&', '|', '/', - '<', '>', - '=', '-', '+', '*', - '.', ':', ',', ';' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #990000;', - 4 => 'color: #009900; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #666666; font-style: italic;', - 3 => 'color: #0000cc; font-style: italic;', - 4 => 'color: #009933; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 1 => 'color: #000099; font-weight: bold;', - 2 => 'color: #660099; font-weight: bold;', - 3 => 'color: #660099; font-weight: bold;', - 4 => 'color: #006699; font-weight: bold;', - 5 => 'color: #006699; font-weight: bold; font-style: italic;', - 6 => 'color: #009933; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;', - 'HARD' => 'color: #0000ff;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;', - GESHI_NUMBER_OCT_PREFIX => 'color: #208080;', - GESHI_NUMBER_HEX_PREFIX => 'color: #208080;', - GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;', - ), - 'METHODS' => array( - 1 => 'color: #004000;', - 2 => 'color: #004000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;', - 1 => 'color: #000000; font-weight: bold;' - ), - 'REGEXPS' => array( - 0 => 'color: #000088;' - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.php.net/{FNAMEL}', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '->', - 2 => '::' - ), - 'REGEXPS' => array( - //Variables - 0 => "[\\$]{1,2}[a-zA-Z_][a-zA-Z0-9_]*" - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - '<'.'?php' => '?'.'>' - ), - 1 => array( - '<'.'?' => '?'.'>' - ), - 2 => array( - '<'.'%' => '%'.'>' - ), - 3 => array( - '' - ), - 4 => "/(?P<\\?(?>php\b)?)(?:". - "(?>[^\"'?\\/<]+)|". - "\\?(?!>)|". - "(?>'(?>[^'\\\\]|\\\\'|\\\\\\\|\\\\)*')|". - "(?>\"(?>[^\"\\\\]|\\\\\"|\\\\\\\\|\\\\)*\")|". - "(?>\\/\\*(?>[^\\*]|(?!\\*\\/)\\*)*\\*\\/)|". - "\\/\\/(?>.*?$)|". - "\\/(?=[^*\\/])|". - "<(?!<<)|". - "<<<(?P\w+)\s.*?\s\k". - ")*(?P\\?>|\Z)/sm", - 5 => "/(?P<%)(?:". - "(?>[^\"'%\\/<]+)|". - "%(?!>)|". - "(?>'(?>[^'\\\\]|\\\\'|\\\\\\\|\\\\)*')|". - "(?>\"(?>[^\\\"\\\\]|\\\\\"|\\\\\\\\|\\\\)*\")|". - "(?>\\/\\*(?>[^\\*]|(?!\\*\\/)\\*)*\\*\\/)|". - "\\/\\/(?>.*?$)|". - "\\/(?=[^*\\/])|". - "<(?!<<)|". - "<<<(?P\w+)\s.*?\s\k". - ")*(?P%>)/sm", - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true - ), - 'TAB_WIDTH' => 4 -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/pic16.php b/library/Vendors/geshi/geshi/pic16.php deleted file mode 100644 index 626a768b..00000000 --- a/library/Vendors/geshi/geshi/pic16.php +++ /dev/null @@ -1,141 +0,0 @@ - 'PIC16', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - /*Instructions*/ - 1 => array( - 'addcf','adddcf','addlw','addwf','andlw','andwf','bc','bcf','bdc', - 'bnc','bndc','bnz','bsf','btfsc','btfss','bz','call','clrc','clrdc', - 'clrf','clrw','clrwdt','clrz','comf','decf','goto','incf','incfsz', - 'iorlw','iorwf','lcall','lgoto','movf','movfw','movlw','movwf', - 'option','negf','nop','retfie','retlw','return','rlf','rrf','setc', - 'setdc','setz','skpc','skpdc','skpnc','skpndc','skpnz','skpz', - 'sleep','subcf','subdcf','sublw','subwf','swapf','tris','tstf', - 'xorlw','xorwf' - ), - /*Registers*/ - 2 => array( - 'INDF','TMR0','OPTION','PCL','STATUS','FSR','PORTA','PORTB','PORTC', - 'PORTD','PORTE','PORTF','TRISA','TRISB','TRISC','TRISD','TRISE', - 'TRISF','PCLATH','INTCON','PIR1','PIE1','PCON','CMCON','VRCON', - 'F','W' - ), - /*Directives*/ - 3 => array( - '_BADRAM','BANKISEL','BANKSEL','CBLOCK','CODE','_CONFIG','CONSTANT', - 'DA','DATA','DB','DE','#DEFINE','DT','DW','ELSE','END','ENDC', - 'ENDIF','ENDM','ENDW','EQU','ERROR','ERRORLEVEL','EXITM','EXPAND', - 'EXTERN','FILL','GLOBAL','IDATA','_IDLOCS','IF','IFDEF','IFNDEF', - 'INCLUDE','#INCLUDE','LIST','LOCAL','MACRO','_MAXRAM','MESSG', - 'NOEXPAND','NOLIST','ORG','PAGE','PAGESEL','PROCESSOR','RADIX', - 'RES','SET','SPACE','SUBTITLE','TITLE','UDATA','UDATA_ACS', - 'UDATA_OVR','UDATA_SHR','#UNDEFINE','VARIABLE','WHILE', - 'D','H','O','B','A' - ), - ), - 'SYMBOLS' => array('=','.',',',':'), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000a0; font-weight: bold;', - 2 => 'color: #aa3300; font-weight: bold;', - 3 => 'color: #0000ff;', - ), - 'COMMENTS' => array( - 1 => 'color: #00a000;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #ff0000;' - ), - 'BRACKETS' => array( - 0 => 'color: #0000ff;' - ), - 'STRINGS' => array( - 0 => 'color: #ff7700;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff7700;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #7777ff;' - ), - 'REGEXPS' => array(), - 'SCRIPT' => array() - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | - GESHI_NUMBER_BIN_SUFFIX | - GESHI_NUMBER_HEX_PREFIX | - GESHI_NUMBER_HEX_SUFFIX, - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array(), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "a-zA-Z0-9\$_\|\#>|^", - 'DISALLOWED_AFTER' => "a-zA-Z0-9_<\|%" - ) - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/pike.php b/library/Vendors/geshi/geshi/pike.php deleted file mode 100644 index 2b860ccd..00000000 --- a/library/Vendors/geshi/geshi/pike.php +++ /dev/null @@ -1,103 +0,0 @@ - 'Pike', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'goto', 'break', 'continue', 'return', 'case', 'default', 'if', - 'else', 'switch', 'while', 'foreach', 'do', 'for', 'gauge', - 'destruct', 'lambda', 'inherit', 'import', 'typeof', 'catch', - 'inline', 'nomask', 'private', 'protected', 'public', 'static' - ) - ), - 'SYMBOLS' => array( - 1 => array( - '(', ')', '{', '}', '[', ']', '+', '-', '*', '/', '%', '=', '!', '&', '|', '?', ';' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;', - ), - 'METHODS' => array( - 0 => 'color: #004000;' - ), - 'SYMBOLS' => array( - 1 => 'color: #339933;' - ), - 'REGEXPS' => array(), - 'SCRIPT' => array() - ), - 'URLS' => array(1 => ''), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array(1 => '.'), - 'REGEXPS' => array(), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array() -); - -?> diff --git a/library/Vendors/geshi/geshi/pixelbender.php b/library/Vendors/geshi/geshi/pixelbender.php deleted file mode 100644 index 82c64ae5..00000000 --- a/library/Vendors/geshi/geshi/pixelbender.php +++ /dev/null @@ -1,176 +0,0 @@ - 'Pixel Bender 1.0', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'languageVersion', 'kernel' - ), - 2 => array( - 'import', 'parameter', 'dependent', 'const', 'input', 'output', - 'evaluatePixel', 'evaluateDependents', 'needed', 'changed', 'generated' - ), - 3 => array( - 'bool', 'bool2', 'bool3', 'bool4', 'int', 'int2', 'int3', 'int4', - 'float', 'float2', 'float3', 'float4', 'float2x2', 'float3x3', 'float4x4', - 'pixel2', 'pixel3', 'pixel4', 'region', 'image1', 'image2', 'image3', 'image4', - 'imageRef', 'void' - ), - 4 => array( - 'in', 'out', 'inout', 'if', 'else', 'for', 'while', 'do', 'break', - 'continue', 'return' - ), - 5 => array( - 'radians', 'degrees', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', 'pow', - 'exp', 'exp2', 'log', 'log2', 'sqrt', 'inverseSqrt', 'abs', 'sign', 'floor', - 'ceil', 'fract', 'mod', 'min', 'max', 'step', 'clamp', 'mix', 'smoothStep', - 'length', 'distance', 'dot', 'cross', 'normalize', 'matrixCompMult', 'lessThan', - 'lessThanEqual', 'greaterThan', 'greaterThanEqual', 'equal', 'notEqual', 'any', - 'all', 'not', 'nowhere', 'everywhere', 'transform', 'union', 'intersect', - 'outset', 'inset', 'bounds', 'isEmpty', 'sample', 'sampleLinear', 'sampleNearest', - 'outCoord', 'dod', 'pixelSize', 'pixelAspectRatio' - ), - 6 => array( - 'namespace', 'vendor', 'version', 'minValue', 'maxValue', 'defaultValue', 'description' - ), - 7 => array( - '#if', '#endif', '#ifdef', '#elif', 'defined', '#define', - 'AIF_ATI', 'AIF_NVIDIA', 'AIF_FLASH_TARGET' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '!', '%', '&', '|', '+', '-', '*', '/', '=', '<', '>', '?', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0033ff;', - 2 => 'color: #0033ff; font-weight: bold;', - 3 => 'color: #0033ff;', - 4 => 'color: #9900cc; font-weight: bold;', - 5 => 'color: #333333;', - 6 => 'color: #666666;', - 7 => 'color: #990000;', - ), - 'COMMENTS' => array( - 1 => 'color: #009900;', - 'MULTI' => 'color: #3f5fbf;' - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #990000;' - ), - 'NUMBERS' => array( - 0 => 'color: #000000; font-weight:bold;' - ), - 'METHODS' => array( - 0 => 'color: #000000;', - ), - 'SYMBOLS' => array( - 0 => 'color: #000000; font-weight: bold;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array('.'), - 'REGEXPS' => array(), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array() -); - - -?> diff --git a/library/Vendors/geshi/geshi/plsql.php b/library/Vendors/geshi/geshi/plsql.php deleted file mode 100644 index e0145362..00000000 --- a/library/Vendors/geshi/geshi/plsql.php +++ /dev/null @@ -1,256 +0,0 @@ - - * Copyright: (c) 2006 Victor Engmark (http://l0b0.net/) - * Release Version: 1.0.8.8 - * Date Started: 2006/10/26 - * - * Oracle 9.2 PL/SQL language file for GeSHi. - * Formatting is based on the default setup of TOAD 8.6. - * - * CHANGES - * ------- - * 2006/10/27 (1.0.0) - * - First Release - * - * TODO (updated 2006/10/27) - * ------------------------- - * * Add < and > to brackets - * * Remove symbols which are also comment delimiters / quote marks? - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'PL/SQL', - 'COMMENT_SINGLE' => array(1 =>'--'), //http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96624/02_funds.htm#2930 - 'COMMENT_MULTI' => array('/*' => '*/'), //http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96624/02_funds.htm#2950 - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array("'", '"'), //http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96624/02_funds.htm - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - //PL/SQL reserved keywords (http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96624/f_words.htm#LNPLS019) - 1 => array('ZONE', 'YEAR', 'WRITE', 'WORK', 'WITH', 'WHILE', 'WHERE', - 'WHENEVER', 'WHEN', 'VIEW', 'VARCHAR2', 'VARCHAR', 'VALUES', - 'VALIDATE', 'USE', 'UPDATE', 'UNIQUE', 'UNION', 'TYPE', 'TRUE', - 'TRIGGER', 'TO', 'TIMEZONE_REGION', 'TIMEZONE_MINUTE', 'TIMEZONE_HOUR', - 'TIMEZONE_ABBR', 'TIMESTAMP', 'TIME', 'THEN', 'TABLE', 'SYNONYM', - 'SUCCESSFUL', 'SUBTYPE', 'START', 'SQLERRM', 'SQLCODE', 'SQL', 'SPACE', - 'SMALLINT', 'SHARE', 'SET', 'SEPARATE', 'SELECT', 'SECOND', - 'SAVEPOINT', 'ROWTYPE', 'ROWNUM', 'ROWID', 'ROW', 'ROLLBACK', - 'REVERSE', 'RETURN', 'RELEASE', 'RECORD', 'REAL', 'RAW', 'RANGE', - 'RAISE', 'PUBLIC', 'PROCEDURE', 'PRIVATE', 'PRIOR', 'PRAGMA', - 'POSITIVEN', 'POSITIVE', 'PLS_INTEGER', 'PCTFREE', 'PARTITION', - 'PACKAGE', 'OUT', 'OTHERS', 'ORGANIZATION', 'ORDER', 'OR', 'OPTION', - 'OPERATOR', 'OPEN', 'OPAQUE', 'ON', 'OF', 'OCIROWID', 'NUMBER_BASE', - 'NUMBER', 'NULL', 'NOWAIT', 'NOT', 'NOCOPY', 'NEXTVAL', 'NEW', - 'NATURALN', 'NATURAL', 'MONTH', 'MODE', 'MLSLABEL', 'MINUTE', 'MINUS', - 'LOOP', 'LONG', 'LOCK', 'LIMITED', 'LIKE', 'LEVEL', 'JAVA', - 'ISOLATION', 'IS', 'INTO', 'INTERVAL', 'INTERSECT', 'INTERFACE', - 'INTEGER', 'INSERT', 'INDICATOR', 'INDEX', 'IN', 'IMMEDIATE', 'IF', - 'HOUR', 'HEAP', 'HAVING', 'GROUP', 'GOTO', 'FUNCTION', 'FROM', - 'FORALL', 'FOR', 'FLOAT', 'FETCH', 'FALSE', 'EXTENDS', 'EXIT', - 'EXISTS', 'EXECUTE', 'EXCLUSIVE', 'EXCEPTION', 'END', 'ELSIF', 'ELSE', - 'DROP', 'DO', 'DISTINCT', 'DESC', 'DELETE', 'DEFAULT', 'DECLARE', - 'DECIMAL', 'DAY', 'DATE', 'CURSOR', 'CURRVAL', 'CURRENT', 'CREATE', - 'CONSTANT', 'CONNECT', 'COMPRESS', 'COMMIT', 'COMMENT', 'COLLECT', - 'CLUSTER', 'CLOSE', 'CHECK', 'CHAR_BASE', 'CHAR', 'CASE', 'BY', 'BULK', - 'BOOLEAN', 'BODY', 'BINARY_INTEGER', 'BETWEEN', 'BEGIN', 'AUTHID', - 'AT', 'ASC', 'AS', 'ARRAY', 'ANY', 'AND', 'ALTER', 'ALL'), - //SQL functions (http://download-uk.oracle.com/docs/cd/B10501_01/server.920/a96540/toc.htm & http://download-uk.oracle.com/docs/cd/B10501_01/server.920/a96540/functions101a.htm#85925) - 2 => array('XMLTRANSFORM', 'XMLSEQUENCE', 'XMLFOREST', 'XMLELEMENT', - 'XMLCONCAT', 'XMLCOLATTVAL', 'XMLAGG', 'WIDTH_BUCKET', 'VSIZE', - 'VARIANCE', 'VAR_SAMP', 'VAR_POP', 'VALUE', 'USERENV', 'USER', 'UPPER', - 'UPDATEXML', 'UNISTR', 'UID', 'TZ_OFFSET', 'TRUNC', 'TRIM', 'TREAT', - 'TRANSLATE', 'TO_YMINTERVAL', 'TO_TIMESTAMP_TZ', 'TO_TIMESTAMP', - 'TO_SINGLE_BYTE', 'TO_NUMBER', 'TO_NCLOB', 'TO_NCHAR', 'TO_MULTI_BYTE', - 'TO_LOB', 'TO_DSINTERVAL', 'TO_DATE', 'TO_CLOB', 'TO_CHAR', 'TANH', - 'TAN', 'SYSTIMESTAMP', 'SYSDATE', 'SYS_XMLGEN', 'SYS_XMLAGG', - 'SYS_TYPEID', 'SYS_GUID', 'SYS_EXTRACT_UTC', 'SYS_DBURIGEN', - 'SYS_CONTEXT', 'SYS_CONNECT_BY_PATH', 'SUM', 'SUBSTR', 'STDDEV_SAMP', - 'STDDEV_POP', 'STDDEV', 'SQRT', 'SOUNDEX', 'SINH', 'SIN', 'SIGN', - 'SESSIONTIMEZONE', 'RTRIM', 'RPAD', 'ROWIDTONCHAR', 'ROWIDTOCHAR', - 'ROW_NUMBER', 'ROUND', 'REPLACE', 'REGR_SYY', 'REGR_SXY', 'REGR_SXX', - 'REGR_SLOPE', 'REGR_R2', 'REGR_INTERCEPT', 'REGR_COUNT', 'REGR_AVGY', - 'REGR_AVGX', 'REFTOHEX', 'REF', 'RAWTONHEX', 'RAWTOHEX', - 'RATIO_TO_REPORT', 'RANK', 'POWER', 'PERCENTILE_DISC', - 'PERCENTILE_CONT', 'PERCENT_RANK', 'PATH', 'NVL2', 'NVL', - 'NUMTOYMINTERVAL', 'NUMTODSINTERVAL', 'NULLIF', 'NTILE', 'NLSSORT', - 'NLS_UPPER', 'NLS_LOWER', 'NLS_INITCAP', 'NLS_CHARSET_NAME', - 'NLS_CHARSET_ID', 'NLS_CHARSET_DECL_LEN', 'NEXT_DAY', 'NEW_TIME', - 'NCHR', 'MONTHS_BETWEEN', 'MOD', 'MIN', 'MAX', 'MAKE_REF', 'LTRIM', - 'LPAD', 'LOWER', 'LOG', 'LOCALTIMESTAMP', 'LN', 'LENGTH', 'LEAST', - 'LEAD', 'LAST_VALUE', 'LAST_DAY', 'LAST', 'LAG', 'INSTR', 'INITCAP', - 'HEXTORAW', 'GROUPING_ID', 'GROUPING', 'GROUP_ID', 'GREATEST', - 'FROM_TZ', 'FLOOR', 'FIRST_VALUE', 'FIRST', 'EXTRACTVALUE', 'EXTRACT', - 'EXP', 'EXISTSNODE', 'EMPTY_CLOB', 'EMPTY_BLOB', 'DUMP', 'DEREF', - 'DEPTH', 'DENSE_RANK', 'DECOMPOSE', 'DECODE', 'DBTIMEZONE', - 'CURRENT_TIMESTAMP', 'CURRENT_DATE', 'CUME_DIST', 'COVAR_SAMP', - 'COVAR_POP', 'COUNT', 'COSH', 'COS', 'CORR', 'CONVERT', 'CONCAT', - 'COMPOSE', 'COALESCE', 'CHR', 'CHARTOROWID', 'CEIL', 'CAST', 'BITAND', - 'BIN_TO_NUM', 'BFILENAME', 'AVG', 'ATAN2', 'ATAN', 'ASIN', 'ASCIISTR', - 'ASCII', 'ADD_MONTHS', 'ACOS', 'ABS'), - //PL/SQL packages (http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96612/intro2.htm#1025672) - 3 => array('UTL_URL', 'UTL_TCP', 'UTL_SMTP', 'UTL_REF', 'UTL_RAW', - 'UTL_PG', 'UTL_INADDR', 'UTL_HTTP', 'UTL_FILE', 'UTL_ENCODE', - 'UTL_COLL', 'SDO_UTIL', 'SDO_TUNE', 'SDO_MIGRATE', 'SDO_LRS', - 'SDO_GEOM', 'SDO_CS', 'DMBS_XMLQUERY', 'DMBS_FLASHBACK', - 'DMBS_DEFER_SYS', 'DEBUG_EXTPROC', 'DBMS_XSLPROCESSOR', 'DBMS_XPLAN', - 'DBMS_XMLSCHEMA', 'DBMS_XMLSAVE', 'DBMS_XMLPARSER', 'DBMS_XMLGEN', - 'DBMS_XMLDOM', 'DBMS_XDBT', 'DBMS_XDB_VERSION', 'DBMS_XDB', 'DBMS_WM', - 'DBMS_UTILITY', 'DBMS_TYPES', 'DBMS_TTS', 'DBMS_TRANSFORM', - 'DBMS_TRANSACTION', 'DBMS_TRACE', 'DBMS_STRM_A', 'DBMS_STRM', - 'DBMS_STORAGE_MAP', 'DBMS_STATS', 'DBMS_SQL', 'DBMS_SPACE_ADMIN', - 'DBMS_SPACE', 'DBMS_SHARED_POOL', 'DBMS_SESSION', 'DBMS_RULE_ADM', - 'DBMS_RULE', 'DBMS_ROWID', 'DBMS_RLS', 'DBMS_RESUMABLE', - 'DBMS_RESOURCE_MANAGER_PRIVS', 'DBMS_RESOURCE_MANAGER', 'DBMS_REPUTIL', - 'DBMS_REPCAT_RGT', 'DBMS_REPCAT_INSTATIATE', 'DBMS_REPCAT_ADMIN', - 'DBMS_REPCAT', 'DBMS_REPAIR', 'DBMS_REFRESH', 'DBMS_REDEFINITION', - 'DBMS_RECTIFIER_DIFF', 'DBMS_RANDOM', 'DBMS_PROPAGATION_ADM', - 'DBMS_PROFILER', 'DBMS_PIPE', 'DBMS_PCLXUTIL', 'DBMS_OUTPUT', - 'DBMS_OUTLN_EDIT', 'DBMS_OUTLN', 'DBMS_ORACLE_TRACE_USER', - 'DBMS_ORACLE_TRACE_AGENT', 'DBMS_OLAP', 'DBMS_OFFLINE_SNAPSHOT', - 'DBMS_OFFLINE_OG', 'DBMS_ODCI', 'DBMS_OBFUSCATION_TOOLKIT', - 'DBMS_MVIEW', 'DBMS_MGWMSG', 'DBMS_MGWADM', 'DBMS_METADATA', - 'DBMS_LOGSTDBY', 'DBMS_LOGMNR_D', 'DBMS_LOGMNR_CDC_SUBSCRIBE', - 'DBMS_LOGMNR_CDC_PUBLISH', 'DBMS_LOGMNR', 'DBMS_LOCK', 'DBMS_LOB', - 'DBMS_LIBCACHE', 'DBMS_LDAP', 'DBMS_JOB', 'DBMS_IOT', - 'DBMS_HS_PASSTHROUGH', 'DBMS_FGA', 'DBMS_DISTRIBUTED_TRUST_ADMIN', - 'DBMS_DESCRIBE', 'DBMS_DEFER_QUERY', 'DBMS_DEFER', 'DBMS_DEBUG', - 'DBMS_DDL', 'DBMS_CAPTURE_ADM', 'DBMS_AW', 'DBMS_AQELM', 'DBMS_AQADM', - 'DBMS_AQ', 'DBMS_APPLY_ADM', 'DBMS_APPLICATION_INFO', 'DBMS_ALERT', - 'CWM2_OLAP_AW_ACCESS'), - //PL/SQL predefined exceptions (http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96624/07_errs.htm#784) - 4 => array('ZERO_DIVIDE', 'VALUE_ERROR', 'TOO_MANY_ROWS', - 'TIMEOUT_ON_RESOURCE', 'SYS_INVALID_ROWID', 'SUBSCRIPT_OUTSIDE_LIMIT', - 'SUBSCRIPT_BEYOND_COUNT', 'STORAGE_ERROR', 'SELF_IS_NULL', - 'ROWTYPE_MISMATCH', 'PROGRAM_ERROR', 'NOT_LOGGED_ON', 'NO_DATA_FOUND', - 'LOGIN_DENIED', 'INVALID_NUMBER', 'INVALID_CURSOR', 'DUP_VAL_ON_INDEX', - 'CURSOR_ALREADY_OPEN', 'COLLECTION_IS_NULL', 'CASE_NOT_FOUND', - 'ACCESS_INTO_NULL'), - //Static data dictionary views (http://download-uk.oracle.com/docs/cd/B10501_01/server.920/a96536/ch2.htm) - 5 => array('USER_REPSITES', 'USER_REPSCHEMA', - 'USER_REPRESOLUTION_STATISTICS', 'USER_REPRESOLUTION_METHOD', - 'USER_REPRESOLUTION', 'USER_REPRESOL_STATS_CONTROL', 'USER_REPPROP', - 'USER_REPPRIORITY_GROUP', 'USER_REPPRIORITY', - 'USER_REPPARAMETER_COLUMN', 'USER_REPOBJECT', 'USER_REPKEY_COLUMNS', - 'USER_REPGROUPED_COLUMN', 'USER_REPGROUP_PRIVILEGES', 'USER_REPGROUP', - 'USER_REPGENOBJECTS', 'USER_REPGENERATED', 'USER_REPFLAVORS', - 'USER_REPFLAVOR_OBJECTS', 'USER_REPFLAVOR_COLUMNS', 'USER_REPDDL', - 'USER_REPCONFLICT', 'USER_REPCOLUMN_GROUP', 'USER_REPCOLUMN', - 'USER_REPCATLOG', 'USER_REPCAT_USER_PARM_VALUES', - 'USER_REPCAT_USER_AUTHORIZATIONS', 'USER_REPCAT_TEMPLATE_SITES', - 'USER_REPCAT_TEMPLATE_PARMS', 'USER_REPCAT_TEMPLATE_OBJECTS', - 'USER_REPCAT_REFRESH_TEMPLATES', 'USER_REPCAT', 'USER_REPAUDIT_COLUMN', - 'USER_REPAUDIT_ATTRIBUTE', 'DBA_REPSITES_NEW', 'DBA_REPSITES', - 'DBA_REPSCHEMA', 'DBA_REPRESOLUTION_STATISTICS', - 'DBA_REPRESOLUTION_METHOD', 'DBA_REPRESOLUTION', - 'DBA_REPRESOL_STATS_CONTROL', 'DBA_REPPROP', 'DBA_REPPRIORITY_GROUP', - 'DBA_REPPRIORITY', 'DBA_REPPARAMETER_COLUMN', 'DBA_REPOBJECT', - 'DBA_REPKEY_COLUMNS', 'DBA_REPGROUPED_COLUMN', - 'DBA_REPGROUP_PRIVILEGES', 'DBA_REPGROUP', 'DBA_REPGENOBJECTS', - 'DBA_REPGENERATED', 'DBA_REPFLAVORS', 'DBA_REPFLAVOR_OBJECTS', - 'DBA_REPFLAVOR_COLUMNS', 'DBA_REPEXTENSIONS', 'DBA_REPDDL', - 'DBA_REPCONFLICT', 'DBA_REPCOLUMN_GROUP', 'DBA_REPCOLUMN', - 'DBA_REPCATLOG', 'DBA_REPCAT_USER_PARM_VALUES', - 'DBA_REPCAT_USER_AUTHORIZATIONS', 'DBA_REPCAT_TEMPLATE_SITES', - 'DBA_REPCAT_TEMPLATE_PARMS', 'DBA_REPCAT_TEMPLATE_OBJECTS', - 'DBA_REPCAT_REFRESH_TEMPLATES', 'DBA_REPCAT_EXCEPTIONS', 'DBA_REPCAT', - 'DBA_REPAUDIT_COLUMN', 'DBA_REPAUDIT_ATTRIBUTE', 'ALL_REPSITES', - 'ALL_REPSCHEMA', 'ALL_REPRESOLUTION_STATISTICS', - 'ALL_REPRESOLUTION_METHOD', 'ALL_REPRESOLUTION', - 'ALL_REPRESOL_STATS_CONTROL', 'ALL_REPPROP', 'ALL_REPPRIORITY_GROUP', - 'ALL_REPPRIORITY', 'ALL_REPPARAMETER_COLUMN', 'ALL_REPOBJECT', - 'ALL_REPKEY_COLUMNS', 'ALL_REPGROUPED_COLUMN', - 'ALL_REPGROUP_PRIVILEGES', 'ALL_REPGROUP', 'ALL_REPGENOBJECTS', - 'ALL_REPGENERATED', 'ALL_REPFLAVORS', 'ALL_REPFLAVOR_OBJECTS', - 'ALL_REPFLAVOR_COLUMNS', 'ALL_REPDDL', 'ALL_REPCONFLICT', - 'ALL_REPCOLUMN_GROUP', 'ALL_REPCOLUMN', 'ALL_REPCATLOG', - 'ALL_REPCAT_USER_PARM_VALUES', 'ALL_REPCAT_USER_AUTHORIZATIONS', - 'ALL_REPCAT_TEMPLATE_SITES', 'ALL_REPCAT_TEMPLATE_PARMS', - 'ALL_REPCAT_TEMPLATE_OBJECTS', 'ALL_REPCAT_REFRESH_TEMPLATES', - 'ALL_REPCAT', 'ALL_REPAUDIT_COLUMN', 'ALL_REPAUDIT_ATTRIBUTE') - ), - 'SYMBOLS' => array( - //PL/SQL delimiters (http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96624/02_funds.htm#2732) - '+', '%', "'", '.', '/', '(', ')', ':', ',', '*', '"', '=', '<', '>', '@', ';', '-', ':=', '=>', '||', '**', '<<', '>>', '/*', '*/', '..', '<>', '!=', '~=', '^=', '<=', '>=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #00F;', - 2 => 'color: #000;', - 3 => 'color: #00F;', - 4 => 'color: #F00;', - 5 => 'color: #800;' - ), - 'COMMENTS' => array( - 1 => 'color: #080; font-style: italic;', - 'MULTI' => 'color: #080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #00F;' - ), - 'STRINGS' => array( - 0 => 'color: #F00;' - ), - 'NUMBERS' => array( - 0 => 'color: #800;' - ), - 'METHODS' => array( - 0 => 'color: #0F0;' - ), - 'SYMBOLS' => array( - 0 => 'color: #00F;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - 0 => 'color: #0F0;' - ) - ), - 'URLS' => array( - 1 => 'http://www.oracle.com/pls/db92/db92.drilldown?word={FNAMEU}', - 2 => 'http://www.oracle.com/pls/db92/db92.drilldown?word={FNAMEU}', - 3 => 'http://www.oracle.com/pls/db92/db92.drilldown?word={FNAMEU}', - 4 => 'http://www.oracle.com/pls/db92/db92.drilldown?word={FNAMEU}', - 5 => 'http://www.oracle.com/pls/db92/db92.drilldown?word={FNAMEU}' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array(), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array() -); - -?> diff --git a/library/Vendors/geshi/geshi/postgresql.php b/library/Vendors/geshi/geshi/postgresql.php deleted file mode 100644 index 7f89fe2a..00000000 --- a/library/Vendors/geshi/geshi/postgresql.php +++ /dev/null @@ -1,288 +0,0 @@ - 2010-05-03 - * Copyright: (c) 2007 Christophe Chauvet (http://kryskool.org/), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.8 - * Date Started: 2007/07/20 - * - * PostgreSQL language file for GeSHi. - * - * CHANGES - * ------- - * 2007/07/20 (1.0.0) - * - First Release - * - * TODO (updated 2007/07/20) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'PostgreSQL', - 'COMMENT_SINGLE' => array(1 => '--'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"', '`'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - //Put PostgreSQL reserved keywords here. I like mine uppercase. - 1 => array( - 'ABORT','ABSOLUTE','ACCESS','ACTION','ADD','ADMIN','AFTER', - 'AGGREGATE','ALL','ALSO','ALTER','ALWAYS','ANALYSE','ANALYZE','AND', - 'ANY','AS','ASC,','ASSERTION','ASSIGNMENT','ASYMMETRIC','AT', - 'AUTHORIZATION','BACKWARD','BEFORE','BEGIN','BETWEEN','BOTH','BY', - 'CACHE','CALLED','CASCADE','CASCADED','CASE','CAST','CATALOG', - 'CHAIN','CHARACTERISTICS','CHECK','CHECKPOINT','CLASS','CLOSE', - 'CLUSTER','COALESCE','COLLATE','COLUMN','COMMENT','COMMIT', - 'COMMITTED','CONCURRENTLY','CONFIGURATION','CONNECTION', - 'CONSTRAINT','CONSTRAINTS','CONTENT','CONTINUE','CONVERSION','COPY', - 'COST','CREATE','CREATEDB','CREATEROLE','CREATEUSER','CROSS','CSV', - 'CURRENT','CURRENT_CATALOG','CURRENT_DATE','CURRENT_ROLE', - 'CURRENT_SCHEMA','CURRENT_TIME','CURRENT_TIMESTAMP','CURRENT_USER', - 'CURSOR','CYCLE','DATA','DATABASE','DAY','DEALLOCATE','DEC', - 'DECLARE','DEFAULT','DEFAULTS','DEFERRABLE','DEFERRED','DEFINER', - 'DELETE','DELIMITER','DELIMITERS','DESC','DICTIONARY','DISABLE', - 'DISCARD','DISTINCT','DO','DOCUMENT','DOMAIN','DOUBLE','DROP', - 'EACH','ELSE','ENABLE','ENCODING','ENCRYPTED','END','ESCAPE', - 'EXCEPT','EXCLUDING','EXCLUSIVE','EXECUTE','EXISTS','EXPLAIN', - 'EXTERNAL','EXTRACT','FALSE','FAMILY','FETCH','FIRST','FOLLOWING', - 'FOR','FORCE','FOREIGN','FORWARD','FREEZE','FROM','FULL','FUNCTION', - 'GLOBAL','GRANT','GRANTED','GREATEST','GROUP','HANDLER','HAVING', - 'HEADER','HOLD','HOUR','IDENTITY','IF','ILIKE','IMMEDIATE', - 'IMMUTABLE','IMPLICIT','IN','INCLUDING','INCREMENT','INDEX', - 'INDEXES','INHERIT','INHERITS','INITIALLY','INNER','INOUT','INPUT', - 'INSENSITIVE','INSERT','INSTEAD','INTERSECT','INTO','INVOKER','IS', - 'ISNULL','ISOLATION','JOIN','KEY','LANCOMPILER','LANGUAGE','LARGE', - 'LAST','LC_COLLATE','LC_CTYPE','LEADING','LEAST','LEFT','LEVEL', - 'LIKE','LIMIT','LISTEN','LOAD','LOCAL','LOCALTIME','LOCALTIMESTAMP', - 'LOCATION','LOCK','LOGIN','LOOP','MAPPING','MATCH','MAXVALUE', - 'MINUTE','MINVALUE','MODE','MONTH','MOVE','NAME','NAMES','NATIONAL', - 'NATURAL','NEW','NEXT','NO','NOCREATEDB','NOCREATEROLE', - 'NOCREATEUSER','NOINHERIT','NOLOGIN','NONE','NOSUPERUSER','NOT', - 'NOTHING','NOTIFY','NOTNULL','NOWAIT','NULL','NULLIF','NULLS', - 'NUMERIC','OBJECT','OF','OFF','OFFSET','OIDS','OLD','ON','ONLY', - 'OPERATOR','OPTION','OPTIONS','OR','ORDER','OUT','OUTER','OVER', - 'OVERLAPS','OVERLAY','OWNED','OWNER','PARSER','PARTIAL','PARTITION', - 'PASSWORD','PLACING','PLANS','POSITION','PRECEDING','PRECISION', - 'PREPARE','PREPARED','PRESERVE','PRIMARY','PRIOR','PRIVILEGES', - 'PROCEDURAL','PROCEDURE','QUOTE','RANGE','READ','REASSIGN', - 'RECHECK','RECURSIVE','REFERENCES','REINDEX','RELATIVE','RELEASE', - 'RENAME','REPEATABLE','REPLACE','REPLICA','RESET','RESTART', - 'RESTRICT','RETURN','RETURNING','RETURNS','REVOKE','RIGHT','ROLE', - 'ROLLBACK','ROW','ROWS','RULE','SAVEPOINT','SCHEMA','SCROLL', - 'SEARCH','SECOND', - 'SECURITY','SELECT','SEQUENCE','SERIALIZABLE','SERVER','SESSION', - 'SESSION_USER','SET','SETOF','SHARE','SHOW','SIMILAR','SIMPLE', - 'SOME','STABLE','STANDALONE','START','STATEMENT','STATISTICS', - 'STDIN','STDOUT','STORAGE','STRICT','STRIP','SUPERUSER', - 'SYMMETRIC','SYSID','SYSTEM','TABLE','TABLESPACE','TEMP','TEMPLATE', - 'TEMPORARY','THEN','TO','TRAILING','TRANSACTION','TREAT','TRIGGER', - 'TRUE','TRUNCATE','TRUSTED','TYPE','UNBOUNDED','UNCOMMITTED', - 'UNENCRYPTED','UNION','UNIQUE','UNKNOWN','UNLISTEN','UNTIL', - 'UPDATE','USER','USING','VACUUM','VALID','VALIDATOR','VALUE', - 'VALUES','VARIADIC','VERBOSE','VERSION','VIEW','VOLATILE','WHEN', - 'WHERE','WHILE','WHITESPACE','WINDOW','WITH','WITHOUT','WORK','WRAPPER', - 'WRITE','XMLATTRIBUTES','XMLCONCAT','XMLELEMENT','XMLFOREST', - 'XMLPARSE','XMLPI','XMLROOT','XMLSERIALIZE','YEAR','YES','ZONE' - ), - - //Put functions here - 3 => array( - // mathematical functions - 'ABS','CBRT','CEIL','CEILING','DEGREES','DIV','EXP','FLOOR','LN', - 'LOG','MOD','PI','POWER','RADIANS','RANDOM','ROUND','SETSEED', - 'SIGN','SQRT','TRUNC','WIDTH_BUCKET', - // trigonometric functions - 'ACOS','ASIN','ATAN','ATAN2','COS','COT','SIN','TAN', - // string functions - 'BIT_LENGTH','CHAR_LENGTH','CHARACTER_LENGTH','LOWER', - 'OCTET_LENGTH','POSITION','SUBSTRING','TRIM','UPPER', - // other string functions - 'ASCII','BTRIM','CHR','CONVERT','CONVERT_FROM','CONVERT_TO', - 'DECODE','ENCODE','INITCAP','LENGTH','LPAD','LTRIM','MD5', - 'PG_CLIENT_ENCODING','QUOTE_IDENT','QUOTE_LITERAL','QUOTE_NULLABLE', - 'REGEXP_MATCHES','REGEXP_REPLACE','REGEXP_SPLIT_TO_ARRAY', - 'REGEXP_SPLIT_TO_TABLE','REPEAT','RPAD','RTRIM','SPLIT_PART', - 'STRPOS','SUBSTR','TO_ASCII','TO_HEX','TRANSLATE', - // binary string functions - 'GET_BIT','GET_BYTE','SET_BIT','SET_BYTE', - // data type formatting functions - 'TO_CHAR','TO_DATE','TO_NUMBER','TO_TIMESTAMP', - // date/time functions - 'AGE','CLOCK_TIMESTAMP','DATE_PART','DATE_TRUNC','EXTRACT', - 'ISFINITE','JUSTIFY_DAYS','JUSTIFY_HOURS','JUSTIFY_INTERVAL','NOW', - 'STATEMENT_TIMESTAMP','TIMEOFDAY','TRANSACTION_TIMESTAMP', - // enum support functions - 'ENUM_FIRST','ENUM_LAST','ENUM_RANGE', - // geometric functions - 'AREA','CENTER','DIAMETER','HEIGHT','ISCLOSED','ISOPEN','NPOINTS', - 'PCLOSE','POPEN','RADIUS','WIDTH', - 'BOX','CIRCLE','LSEG','PATH','POINT','POLYGON', - // cidr and inet functions - 'ABBREV','BROADCAST','FAMILY','HOST','HOSTMASK','MASKLEN','NETMASK', - 'NETWORK','SET_MASKLEN', - // text search functions - 'TO_TSVECTOR','SETWEIGHT','STRIP','TO_TSQUERY','PLAINTO_TSQUERY', - 'NUMNODE','QUERYTREE','TS_RANK','TS_RANK_CD','TS_HEADLINE', - 'TS_REWRITE','GET_CURRENT_TS_CONFIG','TSVECTOR_UPDATE_TRIGGER', - 'TSVECTOR_UPDATE_TRIGGER_COLUMN', - 'TS_DEBUG','TS_LEXISE','TS_PARSE','TS_TOKEN_TYPE','TS_STAT', - // XML functions - 'XMLCOMMENT','XMLCONCAT','XMLELEMENT','XMLFOREST','XMLPI','XMLROOT', - 'XMLAGG','XPATH','TABLE_TO_XMLSCHEMA','QUERY_TO_XMLSCHEMA', - 'CURSOR_TO_XMLSCHEMA','TABLE_TO_XML_AND_XMLSCHEMA', - 'QUERY_TO_XML_AND_XMLSCHEMA','SCHEMA_TO_XML','SCHEMA_TO_XMLSCHEMA', - 'SCHEMA_TO_XML_AND_XMLSCHEMA','DATABASE_TO_XML', - 'DATABASE_TO_XMLSCHEMA','DATABASE_TO_XML_AND_XMLSCHEMA', - // sequence manipulating functions - 'CURRVAL','LASTVAL','NEXTVAL','SETVAL', - // conditional expressions - 'COALESCE','NULLIF','GREATEST','LEAST', - // array functions - 'ARRAY_APPEND','ARRAY_CAT','ARRAY_NDIMS','ARRAY_DIMS','ARRAY_FILL', - 'ARRAY_LENGTH','ARRAY_LOWER','ARRAY_PREPEND','ARRAY_TO_STRING', - 'ARRAY_UPPER','STRING_TO_ARRAY','UNNEST', - // aggregate functions - 'ARRAY_AGG','AVG','BIT_AND','BIT_OR','BOOL_AND','BOOL_OR','COUNT', - 'EVERY','MAX','MIN','STRING_AGG','SUM', - // statistic aggregate functions - 'CORR','COVAR_POP','COVAR_SAMP','REGR_AVGX','REGR_AVGY', - 'REGR_COUNT','REGR_INTERCEPT','REGR_R2','REGR_SLOPE','REGR_SXX', - 'REGR_SXY','REGR_SYY','STDDEV','STDDEV_POP','STDDEV_SAMP', - 'VARIANCE','VAR_POP','VAR_SAMP', - // window functions - 'ROW_NUMBER','RANK','DENSE_RANK','PERCENT_RANK','CUME_DIST','NTILE', - 'LAG','LEAD','FIRST_VALUE','LAST_VALUE','NTH_VALUE', - // set returning functions - 'GENERATE_SERIES','GENERATE_SUBSCRIPTS' - // system information functions not currently included - ), - - //Put your postgresql var - 4 => array( - 'client_encoding', - 'standard_conforming_strings' - ), - - //Put your data types here - 5 => array( - 'ARRAY','ABSTIME','BIGINT','BIGSERIAL','BINARY','BIT','BIT VARYING', - 'BOOLEAN','BOX','BYTEA','CHAR','CHARACTER','CHARACTER VARYING', - 'CIDR','CIRCLE','DATE','DECIMAL','DOUBLE PRECISION','ENUM','FLOAT', - 'INET','INT','INTEGER','INTERVAL','NCHAR','REAL','SMALLINT','TEXT', - 'TIME','TIMESTAMP','VARCHAR','XML', - ), - - // //Put your package names here - // 6 => array( - // ), - - ), - 'SYMBOLS' => array( - '(', ')', '=', '<', '>', '|' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 3 => false, - 4 => false, - 5 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - // regular keywords - 1 => 'color: #000000; font-weight: bold; text-transform: uppercase;', - // inbuilt functions - 3 => 'color: #333399; font-weight: bold; text-transform: uppercase;', - // postgresql var(?) - 4 => 'color: #993333; font-weight: bold; text-transform: uppercase;', - // data types - 5 => 'color: #993333; font-weight: bold; text-transform: uppercase;', - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #ff0000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 3 => '', - 4 => 'http://paste.postgresql.fr/wiki/desc.php?def={FNAME}', - 5 => '', - ), - - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 1 => array( - 'DISALLOWED_AFTER' => '(?![\(\w])' - ), - - 3 => array( - 'DISALLOWED_AFTER' => '(?=\()' - ), - - 4 => array( - 'DISALLOWED_AFTER' => '(?![\(\w])' - ), - - 5 => array( - 'DISALLOWED_AFTER' => '(?![\(\w])' - ), - ) - ) - -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/povray.php b/library/Vendors/geshi/geshi/povray.php deleted file mode 100644 index c987a013..00000000 --- a/library/Vendors/geshi/geshi/povray.php +++ /dev/null @@ -1,199 +0,0 @@ - 'POVRAY', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'yes', 'wrinkles', 'wood', 'width', 'waves', 'water_level', 'warp', 'vturbulence', - 'vstr', 'vrotate', 'vnormalize', 'vlength', 'vcross', 'vaxis_rotate', 'variance', 'v_steps', - 'uv_mapping', 'utf8', 'use_index', 'use_colour', 'use_color', 'use_alpha', 'up', 'undef', - 'ultra_wide_angle', 'u_steps', 'type', 'turbulence', 'turb_depth', 'ttf', 'true', 'triangle_wave', - 'translate', 'transform', 'trace', 'toroidal', 'tolerance', 'tiles', 'tile2', 'tightness', - 'tiff', 'threshold', 'thickness', 'tga', 'texture_map', 'target', 'sys', 'sum', - 'substr', 'sturm', 'strupr', 'strlwr', 'strength', 'str', 'statistics', 'sqr', - 'spotted', 'spotlight', 'split_union', 'spline', 'spiral2', 'spiral1', 'spherical', 'specular', - 'spacing', 'solid', 'smooth', 'slope', 'slice', 'sky', 'size', 'sine_wave', - 'shadowless', 'scattering', 'scallop_wave', 'scale', 'save_file', 'samples', 'roughness', 'rotate', - 'ripples', 'right', 'rgbt', 'rgbft', 'rgbf', 'rgb', 'repeat', 'render', - 'refraction', 'reflection_exponent', 'recursion_limit', 'reciprocal', 'ratio', 'ramp_wave', 'radius', 'radial', - 'quilted', 'quick_colour', 'quick_color', 'quaternion', 'quadratic_spline', 'pwr', 'projected_through', 'prod', - 'pretrace_start', 'pretrace_end', 'precompute', 'precision', 'ppm', 'pow', 'pot', 'poly_wave', - 'point_at', 'png', 'planar', 'pigment_pattern', 'pi', 'phong_size', 'phong', 'phase', - 'pgm', 'perspective', 'pattern', 'pass_through', 'parallel', 'panoramic', 'orthographic', 'orientation', - 'orient', 'open', 'onion', 'once', 'on', 'omnimax', 'omega', 'offset', - 'off', 'octaves', 'number_of_waves', 'noise_generator', 'no_shadow', 'no_reflection', 'no_image', 'no_bump_scale', - 'no', 'nearest_count', 'natural_spline', 'mortar', 'minimum_reuse', 'min_extent', 'metric', 'method', - 'metallic', 'media_interaction', 'media_attenuation', 'media', 'max_trace_level', 'max_trace', 'max_sample', 'max_iteration', - 'max_intersections', 'max_gradient', 'max_extent', 'matrix', 'material_map', 'marble', 'map_type', 'mandel', - 'major_radius', 'magnet', 'low_error_factor', 'look_at', 'location', 'load_file', 'linear_sweep', 'linear_spline', - 'leopard', 'lambda', 'julia', 'jpeg', 'jitter', 'irid_wavelength', 'ior', 'inverse', - 'intervals', 'interpolate', 'internal', 'inside_vector', 'inside', 'initial_frame', 'initial_clock', 'image_width', - 'image_pattern', 'image_height', 'iff', 'hypercomplex', 'hollow', 'hierarchy', 'hf_gray_16', 'hexagon', - 'gray_threshold', 'granite', 'gradient', 'global_lights', 'gif', 'gather', 'fresnel', 'frequency', - 'frame_number', 'form', 'fog_type', 'fog_offset', 'fog_alt', 'focal_point', 'flip', 'flatness', - 'fisheye', 'final_frame', 'final_clock', 'false', 'falloff_angle', 'falloff', 'fade_power', 'fade_distance', - 'fade_colour', 'fade_color', 'facets', 'extinction', 'exterior', 'exponent', 'expand_thresholds', 'evaluate', - 'error_bound', 'emission', 'eccentricity', 'double_illuminate', 'distance', 'dist_exp', 'dispersion_samples', 'dispersion', - 'direction', 'diffuse', 'df3', 'dents', 'density_map', 'density_file', 'density', 'cylindrical', - 'cutaway_textures', 'cubic_wave', 'cubic_spline', 'cube', 'crand', 'crackle', 'count', 'coords', - 'control1', 'control0', 'conserve_energy', 'conic_sweep', 'confidence', 'concat', 'composite', 'component', - 'colour_map', 'colour', 'color', 'collect', 'clock_on', 'clock_delta', 'clock', 'circular', - 'chr', 'checker', 'charset', 'cells', 'caustics', 'bumps', 'bump_size', 'brilliance', - 'brightness', 'brick_size', 'brick', 'bozo', 'boxed', 'blur_samples', 'black_hole', 'bezier_spline', - 'b_spline', 'average', 'autostop', 'assumed_gamma', 'ascii', 'array', 'area_light', 'arc_angle', - 'append', 'aperture', 'angle', 'ambient_light', 'ambient', 'always_sample', 'altitude', 'alpha', - 'all_intersections', 'all', 'agate_turb', 'agate', 'adc_bailout', 'adaptive', 'accuracy', 'absorption', - 'aa_threshold', 'aa_level', 'reflection' - ), - 2 => array( - 'abs', 'acos', 'acosh', 'asc', 'asin', 'asinh', 'atan', 'atanh', - 'atan2', 'ceil', 'cos', 'cosh', 'defined', 'degrees', 'dimensions', 'dimension_size', - 'div', 'exp', 'file_exists', 'floor', 'int', 'ln', 'log', 'max', - 'min', 'mod', 'pov', 'radians', 'rand', 'seed', 'select', 'sin', - 'sinh', 'sqrt', 'strcmp', 'strlen', 'tan', 'tanh', 'val', 'vdot', - 'vlenght', - ), - 3 => array ( - 'x', 'y', 'z', 't', 'u', 'v', 'red', 'blue', - 'green', 'filter', 'transmit', 'gray', 'e', - ), - 4 => array ( - 'camera', 'background', 'fog', 'sky_sphere', 'rainbow', 'global_settings', 'radiosity', 'photon', - 'object', 'blob', 'sphere', 'cylinder', 'box', 'cone', 'height_field', 'julia_fractal', - 'lathe', 'prism', 'sphere_sweep', 'superellipsoid', 'sor', 'text', 'torus', 'bicubic_patch', - 'disc', 'mesh', 'triangle', 'smooth_triangle', 'mesh2', 'vertex_vectors', 'normal_vectors', 'uv_vectors', - 'texture_list', 'face_indices', 'normal_indices', 'uv_indices', 'texture', 'polygon', 'plane', 'poly', - 'cubic', 'quartic', 'quadric', 'isosurface', 'function', 'contained_by', 'parametric', 'pigment', - 'union', 'intersection', 'difference', 'merge', 'light_source', 'looks_like', 'light_group', 'clipped_by', - 'bounded_by', 'interior', 'material', 'interior_texture', 'normal', 'finish', 'color_map', 'pigment_map', - 'image_map', 'bump_map', 'slope_map', 'normal_map', 'irid', 'photons', - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '!', - '@', '%', '&', '*', '|', '/', '<', - '>', '+', '-', '.', '=', '<=', '>=', - '!=', - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #a63123;', - 2 => 'color: #2312bc;', - 3 => 'color: #cc1122; font-weight: bold;', - 4 => 'color: #116688; font-weight: bold;', - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', -// 2 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66aa;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - 0 => 'color: #6666cc; font-weight: bold;', - 1 => 'color: #66cc66; font-weight: bold;', - 2 => 'color: #66cc66; font-weight: bold;' - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - # normal hash lines - 0 => '\#(?!(include|declare|local|fopen|fclose|read|write|default|version|if|else|end|ifdef|ifndef|switch|case|range|break|while|debug|error|warning|macro) )[[:word:]]*', - # syntax functions hash thingis - 1 => "\#(include|declare|local|fopen|fclose|read|write|default|version|if|else|end|ifdef|ifndef|switch|case|range|break|while|debug|error|warning|macro)", - 2 => array( - GESHI_SEARCH => "([a-zA-Z]+)(\n)(.*)(\n)(\\1;?)", - GESHI_REPLACE => '\3', - GESHI_BEFORE => '\1\2', - GESHI_AFTER => '\4\5', - GESHI_MODIFIERS => 'siU' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true, - 2 => true, - 3 => true - ), - 'TAB_WIDTH' => 4 -); -?> diff --git a/library/Vendors/geshi/geshi/powerbuilder.php b/library/Vendors/geshi/geshi/powerbuilder.php deleted file mode 100644 index ef86c242..00000000 --- a/library/Vendors/geshi/geshi/powerbuilder.php +++ /dev/null @@ -1,418 +0,0 @@ - 'PowerBuilder', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '~', - 'KEYWORDS' => array( - 1 => array( - 'alias', 'and', 'autoinstantiate', 'call', - 'case', 'catch', 'choose', 'close', 'commit', 'connect', - 'constant', 'continue', 'create', 'cursor', 'declare', - 'delete', 'describe', 'descriptor', 'destroy', 'disconnect', - 'do', 'dynamic', 'else', 'elseif', 'end', 'enumerated', - 'event', 'execute', 'exit', 'external', 'false', 'fetch', - 'first', 'for', 'forward', 'from', 'function', 'global', - 'goto', 'halt', 'if', 'immediate', 'indirect', 'insert', - 'into', 'intrinsic', 'is', 'last', 'library', 'loop', 'next', - 'not', 'of', 'on', 'open', 'or', 'parent', 'post', 'prepare', - 'prior', 'private', 'privateread', 'privatewrite', 'procedure', - 'protected', 'protectedread', 'protectedwrite', 'prototypes', - 'public', 'readonly', 'ref', 'return', 'rollback', 'rpcfunc', - 'select', 'selectblob', 'shared', 'static', 'step', 'subroutine', - 'super', 'system', 'systemread', 'systemwrite', 'then', 'this', - 'to', 'trigger', 'true', 'try', 'type', 'until', 'update', 'updateblob', - 'using', 'variables', 'where', 'while', 'with', 'within' - ), - 2 => array ( - 'blob', 'boolean', 'char', 'character', 'date', 'datetime', - 'dec', 'decimal', - 'double', 'int', 'integer', 'long', 'real', 'string', 'time', - 'uint', 'ulong', 'unsignedint', 'unsignedinteger', 'unsignedlong' - ), - 3 => array ( - 'abortretryignore!', 'actbegin!', 'acterror!', 'actesql!', - 'actgarbagecollect!', 'activate!', 'activatemanually!', - 'activateondoubleclick!', - 'activateongetfocus!', 'actline!', 'actobjectcreate!', 'actobjectdestroy!', - 'actprofile!', 'actroutine!', 'acttrace!', 'actual!', - 'actuser!', 'adoresultset!', 'adtdate!', 'adtdatetime!', - 'adtdefault!', 'adtdouble!', 'adttext!', 'adttime!', - 'aix!', 'alignatbottom!', 'alignatleft!', 'alignatright!', - 'alignattop!', 'all!', 'allowpartialchanges!', 'alpha!', - 'ansi!', 'any!', 'anycase!', 'anyfont!', - 'append!', 'application!', 'arabiccharset!', 'area3d!', - 'areagraph!', 'arraybounds!', 'arrow!', 'ascending!', - 'asstatement!', 'atbottom!', 'atleft!', 'atright!', - 'attop!', 'autosize!', 'background!', 'balticcharset!', - 'bar3dgraph!', 'bar3dobjgraph!', 'bargraph!', 'barstack3dobjgraph!', - 'barstackgraph!', 'bdiagonal!', 'beam!', 'begin!', - 'begindrag!', 'beginlabeledit!', 'beginrightdrag!', 'behind!', - 'blob!', 'bold!', 'boolean!', 'bottom!', - 'boundedarray!', 'box!', 'byreferenceargument!', 'byvalueargument!', - 'cancel!', 'cascade!', 'cascaded!', 'category!', - 'center!', 'character!', 'charsetansi!', 'charsetansiarabic!', - 'charsetansihebrew!', 'charsetdbcsjapanese!', 'charsetunicode!', 'checkbox!', - 'child!', 'childtreeitem!', 'chinesebig5!', 'classdefinition!', - 'classdefinitionobject!', 'classorstructuretype!', 'clicked!', 'clip!', - 'clipboard!', 'clipformatbitmap!', 'clipformatdib!', 'clipformatdif!', - 'clipformatenhmetafile!', 'clipformathdrop!', 'clipformatlocale!', - 'clipformatmetafilepict!', - 'clipformatoemtext!', 'clipformatpalette!', 'clipformatpendata!', 'clipformatriff!', - 'clipformatsylk!', 'clipformattext!', 'clipformattiff!', 'clipformatunicodetext!', - 'clipformatwave!', 'clock!', 'close!', 'closequery!', - 'col3dgraph!', 'col3dobjgraph!', 'colgraph!', - 'colstack3dobjgraph!', 'colstackgraph!', 'columnclick!', 'commandbutton!', - 'connection!', 'connectioninfo!', 'connectobject!', 'connectprivilege!', - 'connectwithadminprivilege!', 'constructor!', 'containsany!', 'containsembeddedonly!', - 'containslinkedonly!', 'contextinformation!', 'contextkeyword!', 'continuous!', - 'corbaobject!', 'corbaunion!', 'cplusplus!', 'cross!', - 'csv!', 'cumulative!', 'cumulativepercent!', 'currenttreeitem!', - 'customvisual!', 'dash!', 'dashdot!', 'dashdotdot!', - 'data!', 'datachange!', 'datamodified!', 'datastore!', - 'datawindow!', 'datawindowchild!', 'date!', 'datemask!', - 'datetime!', 'datetimemask!', 'dbase2!', 'dbase3!', - 'dberror!', 'deactivate!', 'decimal!', 'decimalmask!', - 'decorative!', 'default!', 'defaultcharset!', 'delete!', - 'deleteallitems!', 'deleteitem!', 'descending!', 'desktop!', - 'destructor!', 'detail!', 'diamond!', 'dif!', - 'dirall!', 'dirapplication!', 'dirdatawindow!', 'directionall!', - 'directiondown!', 'directionleft!', 'directionright!', 'directionup!', - 'dirfunction!', 'dirmenu!', 'dirpipeline!', 'dirproject!', - 'dirquery!', 'dirstructure!', 'diruserobject!', 'dirwindow!', - 'displayasactivexdocument!', 'displayascontent!', 'displayasicon!', 'dot!', - 'double!', 'doubleclicked!', 'dragdrop!', 'dragenter!', - 'dragleave!', 'dragobject!', 'dragwithin!', 'drawobject!', - 'dropdownlistbox!', 'dropdownpicturelistbox!', 'drophighlighttreeitem!', 'dwobject!', - 'dynamicdescriptionarea!', 'dynamicstagingarea!', 'easteuropecharset!', 'editchanged!', - 'editmask!', 'editmenu!', 'end!', 'endlabeledit!', - 'enterprise!', 'enterpriseonlyfeature!', 'enumeratedtype!', 'enumerationdefinition!', - 'enumerationitemdefinition!', 'environment!', 'error!', 'errorlogging!', - 'eventnotexisterror!', 'eventwrongprototypeerror!', 'excel!', 'excel5!', - 'exceptionfail!', 'exceptionignore!', 'exceptionretry!', - 'exceptionsubstitutereturnvalue!', - 'exclamation!', 'exclude!', 'exportapplication!', 'exportdatawindow!', - 'exportfunction!', 'exportmenu!', 'exportpipeline!', 'exportproject!', - 'exportquery!', 'exportstructure!', 'exportuserobject!', 'exportwindow!', - 'externalvisual!', 'extobject!', 'failonanyconflict!', 'fdiagonal!', - 'featurenotsupportederror!', 'filealreadyopenerror!', 'filecloseerror!', - 'fileexists!', - 'fileinvalidformaterror!', 'filemenu!', 'filenotopenerror!', 'filenotseterror!', - 'filereaderror!', 'filetyperichtext!', 'filetypetext!', 'filewriteerror!', - 'filter!', 'first!', 'firstvisibletreeitem!', 'fixed!', - 'floating!', 'focusrect!', 'footer!', 'foreground!', - 'frombeginning!', 'fromcurrent!', 'fromend!', 'functionobject!', - 'gb231charset!', 'getfocus!', 'graph!', 'graphicobject!', - 'graxis!', 'grdispattr!', 'greekcharset!', 'groupbox!', - 'hand!', 'hangeul!', 'header!', 'hebrewcharset!', - 'helpmenu!', 'hide!', 'horizontal!', 'hotlinkalarm!', - 'hourglass!', 'hppa!', 'hprogressbar!', 'hpux!', - 'hscrollbar!', 'hticksonboth!', 'hticksonbottom!', 'hticksonneither!', - 'hticksontop!', 'htmltable!', 'htrackbar!', 'i286!', - 'i386!', 'i486!', 'icon!', 'icons!', - 'idle!', 'importdatawindow!', 'indent!', 'index!', - 'inet!', 'information!', 'inplace!', 'inputfieldselected!', - 'insertitem!', 'inside!', 'integer!', 'internetresult!', - 'italic!', 'itemchanged!', 'itemchanging!', 'itemcollapsed!', - 'itemcollapsing!', 'itemerror!', 'itemexpanded!', 'itemexpanding!', - 'itemfocuschanged!', 'itempopulate!', 'jaguarorb!', 'johabcharset!', - 'justify!', 'key!', 'key0!', 'key1!', - 'key2!', 'key3!', 'key4!', 'key5!', - 'key6!', 'key7!', 'key8!', 'key9!', - 'keya!', 'keyadd!', 'keyalt!', 'keyapps!', - 'keyb!', 'keyback!', 'keybackquote!', 'keybackslash!', - 'keyc!', 'keycapslock!', 'keycomma!', 'keycontrol!', - 'keyd!', 'keydash!', 'keydecimal!', 'keydelete!', - 'keydivide!', 'keydownarrow!', 'keye!', 'keyend!', - 'keyenter!', 'keyequal!', 'keyescape!', 'keyf!', - 'keyf1!', 'keyf10!', 'keyf11!', 'keyf12!', - 'keyf2!', 'keyf3!', 'keyf4!', 'keyf5!', - 'keyf6!', 'keyf7!', 'keyf8!', 'keyf9!', - 'keyg!', 'keyh!', 'keyhome!', 'keyi!', - 'keyinsert!', 'keyj!', 'keyk!', 'keyl!', - 'keyleftarrow!', 'keyleftbracket!', 'keyleftbutton!', 'keyleftwindows!', - 'keym!', 'keymiddlebutton!', 'keymultiply!', 'keyn!', - 'keynull!', 'keynumlock!', 'keynumpad0!', 'keynumpad1!', - 'keynumpad2!', 'keynumpad3!', 'keynumpad4!', 'keynumpad5!', - 'keynumpad6!', 'keynumpad7!', 'keynumpad8!', 'keynumpad9!', - 'keyo!', 'keyp!', 'keypagedown!', 'keypageup!', - 'keypause!', 'keyperiod!', 'keyprintscreen!', 'keyq!', - 'keyquote!', 'keyr!', 'keyrightarrow!', 'keyrightbracket!', - 'keyrightbutton!', 'keyrightwindows!', 'keys!', 'keyscrolllock!', - 'keysemicolon!', 'keyshift!', 'keyslash!', 'keyspacebar!', - 'keysubtract!', 'keyt!', 'keytab!', 'keyu!', - 'keyuparrow!', 'keyv!', 'keyw!', 'keyword!', - 'keyx!', 'keyy!', 'keyz!', 'languageafrikaans!', - 'languagealbanian!', 'languagearabicalgeria!', 'languagearabicbahrain!', - 'languagearabicegypt!', - 'languagearabiciraq!', 'languagearabicjordan!', 'languagearabickuwait!', - 'languagearabiclebanon!', - 'languagearabiclibya!', 'languagearabicmorocco!', 'languagearabicoman!', - 'languagearabicqatar!', - 'languagearabicsaudiarabia!', 'languagearabicsyria!', 'languagearabictunisia!', - 'languagearabicuae!', - 'languagearabicyemen!', 'languagebasque!', 'languagebulgarian!', 'languagebyelorussian!', - 'languagecatalan!', 'languagechinese!', 'languagechinesehongkong!', 'languagechinesesimplified!', - 'languagechinesesingapore!', 'languagechinesetraditional!', 'languagecroatian!', 'languageczech!', - 'languagedanish!', 'languagedutch!', 'languagedutchbelgian!', 'languagedutchneutral!', - 'languageenglish!', 'languageenglishaustralian!', 'languageenglishcanadian!', - 'languageenglishirish!', - 'languageenglishnewzealand!', 'languageenglishsouthafrica!', 'languageenglishuk!', - 'languageenglishus!', - 'languageestonian!', 'languagefaeroese!', 'languagefarsi!', 'languagefinnish!', - 'languagefrench!', 'languagefrenchbelgian!', 'languagefrenchcanadian!', 'languagefrenchluxembourg!', - 'languagefrenchneutral!', 'languagefrenchswiss!', 'languagegerman!', 'languagegermanaustrian!', - 'languagegermanliechtenstein!', 'languagegermanluxembourg!', 'languagegermanneutral!', - 'languagegermanswiss!', - 'languagegreek!', 'languagehebrew!', 'languagehindi!', 'languagehungarian!', - 'languageicelandic!', 'languageindonesian!', 'languageitalian!', 'languageitalianneutral!', - 'languageitalianswiss!', 'languagejapanese!', 'languagekorean!', 'languagekoreanjohab!', - 'languagelatvian!', 'languagelithuanian!', 'languagemacedonian!', 'languagemaltese!', - 'languageneutral!', 'languagenorwegian!', 'languagenorwegianbokmal!', 'languagenorwegiannynorsk!', - 'languagepolish!', 'languageportuguese!', 'languageportuguese_brazilian!', - 'languageportugueseneutral!', - 'languagerhaetoromanic!', 'languageromanian!', 'languageromanianmoldavia!', 'languagerussian!', - 'languagerussianmoldavia!', 'languagesami!', 'languageserbian!', 'languageslovak!', - 'languageslovenian!', 'languagesorbian!', 'languagesortnative!', 'languagesortunicode!', - 'languagespanish!', 'languagespanishcastilian!', 'languagespanishmexican!', 'languagespanishmodern!', - 'languagesutu!', 'languageswedish!', 'languagesystemdefault!', 'languagethai!', - 'languagetsonga!', 'languagetswana!', 'languageturkish!', 'languageukrainian!', - 'languageurdu!', 'languageuserdefault!', 'languagevenda!', 'languagexhosa!', - 'languagezulu!', 'last!', 'layer!', 'layered!', - 'Left!', 'leftmargin!', 'line!', 'line3d!', - 'linear!', 'linecolor!', 'linedown!', 'linegraph!', - 'lineleft!', 'linemode!', 'lineright!', 'lineup!', - 'linkupdateautomatic!', 'linkupdatemanual!', 'listbox!', 'listview!', - 'listviewitem!', 'listviewlargeicon!', 'listviewlist!', 'listviewreport!', - 'listviewsmallicon!', 'lockread!', 'lockreadwrite!', 'lockwrite!', - 'log10!', 'loge!', 'long!', 'losefocus!', - 'lower!', 'lowered!', 'm68000!', 'm68020!', - 'm68030!', 'm68040!', 'maccharset!', 'macintosh!', - 'mailattach!', 'mailbcc!', 'mailbodyasfile!', 'mailcc!', - 'maildownload!', 'mailentiremessage!', 'mailenvelopeonly!', 'mailfiledescription!', - 'mailmessage!', 'mailnewsession!', 'mailnewsessionwithdownload!', 'mailole!', - 'mailolestatic!', 'mailoriginator!', 'mailrecipient!', 'mailreturnaccessdenied!', - 'mailreturnattachmentnotfound!', 'mailreturnattachmentopenfailure!', - 'mailreturnattachmentwritefailure!', 'mailreturndiskfull!', - 'mailreturnfailure!', 'mailreturninsufficientmemory!', 'mailreturninvalidmessage!', - 'mailreturnloginfailure!', - 'mailreturnmessageinuse!', 'mailreturnnomessages!', 'mailreturnsuccess!', 'mailreturntexttoolarge!', - 'mailreturntoomanyfiles!', 'mailreturntoomanyrecipients!', 'mailreturntoomanysessions!', - 'mailreturnunknownrecipient!', - 'mailreturnuserabort!', 'mailsession!', 'mailsuppressattachments!', 'mailto!', - 'main!', 'maximized!', 'mdi!', 'mdiclient!', - 'mdihelp!', 'menu!', 'menucascade!', 'menuitemtypeabout!', - 'menuitemtypeexit!', 'menuitemtypehelp!', 'menuitemtypenormal!', 'merge!', - 'message!', 'minimized!', 'mips!', 'modelexistserror!', - 'modelnotexistserror!', 'modern!', 'modified!', 'mousedown!', - 'mousemove!', 'mouseup!', 'moved!', 'multiline!', - 'multilineedit!', 'mutexcreateerror!', 'new!', 'newmodified!', - 'next!', 'nexttreeitem!', 'nextvisibletreeitem!', 'noborder!', - 'noconnectprivilege!', 'nolegend!', 'none!', 'nonvisualobject!', - 'normal!', 'nosymbol!', 'notic!', 'notmodified!', - 'notopmost!', 'notype!', 'numericmask!', 'objhandle!', - 'oem!', 'off!', 'offsite!', 'ok!', - 'okcancel!', 'olecontrol!', 'olecustomcontrol!', 'oleobject!', - 'olestorage!', 'olestream!', 'oletxnobject!', 'omcontrol!', - 'omcustomcontrol!', 'omembeddedcontrol!', 'omobject!', 'omstorage!', - 'omstream!', 'open!', 'orb!', 'original!', - 'osf1!', 'other!', 'outside!', 'oval!', - 'pagedown!', 'pageleft!', 'pageright!', 'pageup!', - 'parenttreeitem!', 'pbtocppobject!', 'pentium!', 'percentage!', - 'picture!', 'picturebutton!', 'picturehyperlink!', 'picturelistbox!', - 'pictureselected!', 'pie3d!', 'piegraph!', 'pipeend!', - 'pipeline!', 'pipemeter!', 'pipestart!', 'popup!', - 'powerobject!', 'powerpc!', 'powerrs!', 'ppc601!', - 'ppc603!', 'ppc604!', 'previewdelete!', 'previewfunctionreselectrow!', - 'previewfunctionretrieve!', 'previewfunctionupdate!', 'previewinsert!', 'previewselect!', - 'previewupdate!', 'previoustreeitem!', 'previousvisibletreeitem!', 'primary!', - 'printend!', 'printfooter!', 'printheader!', 'printpage!', - 'printstart!', 'prior!', 'private!', 'process!', - 'profilecall!', 'profileclass!', 'profileline!', 'profileroutine!', - 'profiling!', 'protected!', 'psreport!', 'public!', - 'question!', 'radiobutton!', 'raised!', 'rbuttondown!', - 'rbuttonup!', 'read!', 'readonlyargument!', 'real!', - 'rectangle!', 'regbinary!', 'regexpandstring!', 'reglink!', - 'regmultistring!', 'regstring!', 'regulong!', 'regulongbigendian!', - 'remoteexec!', 'remotehotlinkstart!', 'remotehotlinkstop!', 'remoteobject!', - 'remoterequest!', 'remotesend!', 'rename!', 'replace!', - 'resize!', 'resizeborder!', 'response!', 'resultset!', - 'resultsets!', 'retrieveend!', 'retrieverow!', 'retrievestart!', - 'retrycancel!', 'richtextedit!', 'Right!', 'rightclicked!', - 'rightdoubleclicked!', 'rightmargin!', 'rnddays!', 'rnddefault!', - 'rndhours!', 'rndmicroseconds!', 'rndminutes!', 'rndmonths!', - 'rndnumber!', 'rndseconds!', 'rndyears!', 'roman!', - 'roottreeitem!', 'roundrectangle!', 'routineesql!', 'routineevent!', - 'routinefunction!', 'routinegarbagecollection!', 'routineobjectcreation!', - 'routineobjectdestruction!', - 'routineroot!', 'rowfocuschanged!', 'russiancharset!', 'save!', - 'scalartype!', 'scattergraph!', 'script!', 'scriptdefinition!', - 'scriptevent!', 'scriptfunction!', 'scrollhorizontal!', 'scrollvertical!', - 'selected!', 'selectionchanged!', 'selectionchanging!', 'series!', - 'service!', 'shade!', 'shadowbox!', 'shared!', - 'sharedobjectcreateinstanceerror!', 'sharedobjectcreatepbsessionerror!', - 'sharedobjectexistserror!', 'sharedobjectnotexistserror!', - 'shiftjis!', 'show!', 'simpletype!', 'simpletypedefinition!', - 'singlelineedit!', 'size!', 'sizenesw!', 'sizens!', - 'sizenwse!', 'sizewe!', 'sol2!', 'solid!', - 'sort!', 'sourcepblerror!', 'spacing1!', 'spacing15!', - 'spacing2!', 'sparc!', 'sqlinsert!', 'sqlpreview!', - 'square!', 'sslcallback!', 'sslserviceprovider!', 'statichyperlink!', - 'statictext!', 'stgdenynone!', 'stgdenyread!', 'stgdenywrite!', - 'stgexclusive!', 'stgread!', 'stgreadwrite!', 'stgwrite!', - 'stopsign!', 'straddle!', 'streammode!', 'stretch!', - 'strikeout!', 'string!', 'stringmask!', 'structure!', - 'stylebox!', 'stylelowered!', 'styleraised!', 'styleshadowbox!', - 'subscript!', 'success!', 'superscript!', 'swiss!', - 'sylk!', 'symbol!', 'symbolhollowbox!', 'symbolhollowcircle!', - 'symbolhollowdiamond!', 'symbolhollowdownarrow!', 'symbolhollowuparrow!', 'symbolplus!', - 'symbolsolidbox!', 'symbolsolidcircle!', 'symbolsoliddiamond!', 'symbolsoliddownarrow!', - 'symbolsoliduparrow!', 'symbolstar!', 'symbolx!', 'system!', - 'systemerror!', 'systemfunctions!', 'systemkey!', 'tab!', - 'tabsonbottom!', 'tabsonbottomandtop!', 'tabsonleft!', 'tabsonleftandright!', - 'tabsonright!', 'tabsonrightandleft!', 'tabsontop!', 'tabsontopandbottom!', - 'text!', 'thaicharset!', 'thread!', 'tile!', - 'tilehorizontal!', 'time!', 'timemask!', 'timer!', - 'timernone!', 'timing!', 'tobottom!', 'toolbarmoved!', - 'top!', 'topic!', 'topmost!', 'totop!', - 'traceactivitynode!', 'traceatomic!', 'tracebeginend!', 'traceerror!', - 'traceesql!', 'tracefile!', 'tracegarbagecollect!', 'tracegeneralerror!', - 'tracein!', 'traceline!', 'tracenomorenodes!', 'tracenotstartederror!', - 'traceobject!', 'traceout!', 'traceroutine!', 'tracestartederror!', - 'tracetree!', 'tracetreeerror!', 'tracetreeesql!', 'tracetreegarbagecollect!', - 'tracetreeline!', 'tracetreenode!', 'tracetreeobject!', 'tracetreeroutine!', - 'tracetreeuser!', 'traceuser!', 'transaction!', 'transactionserver!', - 'transparent!', 'transport!', 'treeview!', 'treeviewitem!', - 'turkishcharset!', 'typeboolean!', 'typecategory!', 'typecategoryaxis!', - 'typecategorylabel!', 'typedata!', 'typedate!', 'typedatetime!', - 'typedecimal!', 'typedefinition!', 'typedouble!', 'typegraph!', - 'typeinteger!', 'typelegend!', 'typelong!', 'typereal!', - 'typeseries!', 'typeseriesaxis!', 'typeserieslabel!', 'typestring!', - 'typetime!', 'typetitle!', 'typeuint!', 'typeulong!', - 'typeunknown!', 'typevalueaxis!', 'typevaluelabel!', 'ultrasparc!', - 'unboundedarray!', 'underline!', 'underlined!', 'unsignedinteger!', - 'unsignedlong!', 'unsorted!', 'uparrow!', 'updateend!', - 'updatestart!', 'upper!', 'userdefinedsort!', 'userobject!', - 'variable!', 'variableargument!', 'variablecardinalitydefinition!', 'variabledefinition!', - 'variableglobal!', 'variableinstance!', 'variablelocal!', 'variableshared!', - 'varlistargument!', 'vbxvisual!', 'vcenter!', 'vertical!', - 'vietnamesecharset!', 'viewchange!', 'vprogressbar!', 'vscrollbar!', - 'vticksonboth!', 'vticksonleft!', 'vticksonneither!', 'vticksonright!', - 'vtrackbar!', 'window!', 'windowmenu!', 'windowobject!', - 'windows!', 'windowsnt!', 'wk1!', 'wks!', - 'wmf!', 'write!', 'xpixelstounits!', 'xunitstopixels!', - 'xvalue!', 'yesno!', 'yesnocancel!', 'ypixelstounits!', - 'yunitstopixels!', - 'yvalue!', - 'zoom!' - ) - ), - 'SYMBOLS' => array( - 0 => array('(', ')', '[', ']', '{', '}'), - 1 => array('|'), - 2 => array('+', '-', '*', '/'), - 3 => array('=', '<', '>', '^') - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #008000; font-weight: bold;', - 2 => 'color: #990099; font-weight: bold;', - 3 => 'color: #330099; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #0000ff; font-weight: bold;', - 'MULTI' => 'color: #0000ff; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #800000;' - ), - 'NUMBERS' => array( - 0 => 'color: #330099; font-weight: bold;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;', - 1 => 'color: #ffff00; background-color:#993300; font-weight: bold', - 2 => 'color: #000000;', - 3 => 'color: #000000;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #800000; font-weight: bold;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/powershell.php b/library/Vendors/geshi/geshi/powershell.php deleted file mode 100644 index c9053880..00000000 --- a/library/Vendors/geshi/geshi/powershell.php +++ /dev/null @@ -1,277 +0,0 @@ - 'PowerShell', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array('<#' => '#>'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '`', - 'KEYWORDS' => array( - 1 => array( - // Cmdlets - 'Add-Content', 'Add-History', 'Add-Member', 'Add-PSSnapin', 'Clear-Content', 'Clear-Item', - 'Clear-ItemProperty', 'Clear-Variable', 'Compare-Object', 'ConvertFrom-SecureString', - 'Convert-Path', 'ConvertTo-Html', 'ConvertTo-SecureString', 'Copy-Item', 'Copy-ItemProperty', - 'Export-Alias', 'Export-Clixml', 'Export-Console', 'Export-Csv', 'ForEach-Object', - 'Format-Custom', 'Format-List', 'Format-Table', 'Format-Wide', 'Get-Acl', 'Get-Alias', - 'Get-AuthenticodeSignature', 'Get-ChildItem', 'Get-Command', 'Get-Content', 'Get-Credential', - 'Get-Culture', 'Get-Date', 'Get-EventLog', 'Get-ExecutionPolicy', 'Get-Help', 'Get-History', - 'Get-Host', 'Get-Item', 'Get-ItemProperty', 'Get-Location', 'Get-Member', - 'Get-PfxCertificate', 'Get-Process', 'Get-PSDrive', 'Get-PSProvider', 'Get-PSSnapin', - 'Get-Service', 'Get-TraceSource', 'Get-UICulture', 'Get-Unique', 'Get-Variable', - 'Get-WmiObject', 'Group-Object', 'Import-Alias', 'Import-Clixml', 'Import-Csv', - 'Invoke-Expression', 'Invoke-History', 'Invoke-Item', 'Join-Path', 'Measure-Command', - 'Measure-Object', 'Move-Item', 'Move-ItemProperty', 'New-Alias', 'New-Item', - 'New-ItemProperty', 'New-Object', 'New-PSDrive', 'New-Service', 'New-TimeSpan', - 'New-Variable', 'Out-Default', 'Out-File', 'Out-Host', 'Out-Null', 'Out-Printer', - 'Out-String', 'Pop-Location', 'Push-Location', 'Read-Host', 'Remove-Item', - 'Remove-ItemProperty', 'Remove-PSDrive', 'Remove-PSSnapin', 'Remove-Variable', 'Rename-Item', - 'Rename-ItemProperty', 'Resolve-Path', 'Restart-Service', 'Resume-Service', 'Select-Object', - 'Select-String', 'Set-Acl', 'Set-Alias', 'Set-AuthenticodeSignature', 'Set-Content', - 'Set-Date', 'Set-ExecutionPolicy', 'Set-Item', 'Set-ItemProperty', 'Set-Location', - 'Set-PSDebug', 'Set-Service', 'Set-TraceSource', 'Set-Variable', 'Sort-Object', 'Split-Path', - 'Start-Service', 'Start-Sleep', 'Start-Transcript', 'Stop-Process', 'Stop-Service', - 'Stop-Transcript', 'Suspend-Service', 'Tee-Object', 'Test-Path', 'Trace-Command', - 'Update-FormatData', 'Update-TypeData', 'Where-Object', 'Write-Debug', 'Write-Error', - 'Write-Host', 'Write-Output', 'Write-Progress', 'Write-Verbose', 'Write-Warning' - ), - 2 => array( - // Aliases - 'ac', 'asnp', 'clc', 'cli', 'clp', 'clv', 'cpi', 'cpp', 'cvpa', 'diff', 'epal', 'epcsv', 'fc', - 'fl', 'ft', 'fw', 'gal', 'gc', 'gci', 'gcm', 'gdr', 'ghy', 'gi', 'gl', 'gm', - 'gp', 'gps', 'group', 'gsv', 'gsnp', 'gu', 'gv', 'gwmi', 'iex', 'ihy', 'ii', 'ipal', 'ipcsv', - 'mi', 'mp', 'nal', 'ndr', 'ni', 'nv', 'oh', 'rdr', 'ri', 'rni', 'rnp', 'rp', 'rsnp', 'rv', - 'rvpa', 'sal', 'sasv', 'sc', 'select', 'si', 'sl', 'sleep', 'sort', 'sp', 'spps', 'spsv', 'sv', - 'tee', 'write', 'cat', 'cd', 'clear', 'cp', 'h', 'history', 'kill', 'lp', 'ls', - 'mount', 'mv', 'popd', 'ps', 'pushd', 'pwd', 'r', 'rm', 'rmdir', 'echo', 'cls', 'chdir', - 'copy', 'del', 'dir', 'erase', 'move', 'rd', 'ren', 'set', 'type' - ), - 3 => array( - // Reserved words - 'break', 'continue', 'do', 'for', 'foreach', 'while', 'if', 'switch', 'until', 'where', - 'function', 'filter', 'else', 'elseif', 'in', 'return', 'param', 'throw', 'trap' - ), - 4 => array( - // Operators - '-eq', '-ne', '-gt', '-ge', '-lt', '-le', '-ieq', '-ine', '-igt', '-ige', '-ilt', '-ile', - '-ceq', '-cne', '-cgt', '-cge', '-clt', '-cle', '-like', '-notlike', '-match', '-notmatch', - '-ilike', '-inotlike', '-imatch', '-inotmatch', '-clike', '-cnotlike', '-cmatch', '-cnotmatch', - '-contains', '-notcontains', '-icontains', '-inotcontains', '-ccontains', '-cnotcontains', - '-isnot', '-is', '-as', '-replace', '-ireplace', '-creplace', '-and', '-or', '-band', '-bor', - '-not', '-bnot', '-f', '-casesensitive', '-exact', '-file', '-regex', '-wildcard' - ), - 5 => array( - // Options - '-Year', '-Wrap', '-Word', '-Width', '-WhatIf', '-Wait', '-View', '-Verbose', '-Verb', - '-Variable', '-ValueOnly', '-Value', '-Unique', '-UFormat', '-TypeName', '-Trace', '-TotalCount', - '-Title', '-TimestampServer', '-TargetObject', '-Syntax', '-SyncWindow', '-Sum', '-String', - '-Strict', '-Stream', '-Step', '-Status', '-Static', '-StartupType', '-Start', '-StackName', - '-Stack', '-SourceId', '-SimpleMatch', '-ShowError', '-Separator', '-SecureString', '-SecureKey', - '-SecondValue', '-SecondsRemaining', '-Seconds', '-Second', '-Scope', '-Root', '-Role', - '-Resolve', '-RemoveListener', '-RemoveFileListener', '-Registered', '-ReferenceObject', - '-Recurse', '-RecommendedAction', '-ReadCount', '-Quiet', '-Query', '-Qualifier', '-PSSnapin', - '-PSProvider', '-PSHost', '-PSDrive', '-PropertyType', '-Property', '-Prompt', '-Process', - '-PrependPath', '-PercentComplete', '-Pattern', '-PathType', '-Path', '-PassThru', '-ParentId', - '-Parent', '-Parameter', '-Paging', '-OutVariable', '-OutBuffer', '-Option', '-OnType', '-Off', - '-Object', '-Noun', '-NoTypeInformation', '-NoQualifier', '-NoNewline', '-NoElement', - '-NoClobber', '-NewName', '-Newest', '-Namespace', '-Name', '-Month', '-Minutes', '-Minute', - '-Minimum', '-Milliseconds', '-Message', '-MemberType', '-Maximum', '-LogName', '-LiteralPath', - '-LiteralName', '-ListenerOption', '-List', '-Line', '-Leaf', '-Last', '-Key', '-ItemType', - '-IsValid', '-IsAbsolute', '-InputObject', '-IncludeEqual', '-IncludeChain', '-Include', - '-IgnoreWhiteSpace', '-Id', '-Hours', '-Hour', '-HideTableHeaders', '-Head', '-GroupBy', - '-Functionality', '-Full', '-Format', '-ForegroundColor', '-Force', '-First', '-FilterScript', - '-Filter', '-FilePath', '-Expression', '-ExpandProperty', '-Expand', '-ExecutionPolicy', - '-ExcludeProperty', '-ExcludeDifferent', '-Exclude', '-Exception', '-Examples', '-ErrorVariable', - '-ErrorRecord', '-ErrorId', '-ErrorAction', '-End', '-Encoding', '-DisplayName', '-DisplayHint', - '-DisplayError', '-DifferenceObject', '-Detailed', '-Destination', '-Description', '-Descending', - '-Depth', '-DependsOn', '-Delimiter', '-Debugger', '-Debug', '-Days', '-Day', '-Date', - '-CurrentOperation', '-Culture', '-Credential', '-Count', '-Container', '-Confirm', - '-ComputerName', '-Component', '-Completed', '-ComObject', '-CommandType', '-Command', - '-Column', '-Class', '-ChildPath', '-Character', '-Certificate', '-CategoryTargetType', - '-CategoryTargetName', '-CategoryReason', '-CategoryActivity', '-Category', '-CaseSensitive', - '-Body', '-BinaryPathName', '-Begin', '-BackgroundColor', '-Average', '-AutoSize', '-Audit', - '-AsString', '-AsSecureString', '-AsPlainText', '-As', '-ArgumentList', '-AppendPath', '-Append', - '-Adjust', '-Activity', '-AclObject' - ), - 6 => array( - '_','args','DebugPreference','Error','ErrorActionPreference', - 'foreach','Home','Host','Input','LASTEXITCODE','MaximumAliasCount', - 'MaximumDriveCount','MaximumFunctionCount','MaximumHistoryCount', - 'MaximumVariableCount','OFS','PsHome', - 'ReportErrorShowExceptionClass','ReportErrorShowInnerException', - 'ReportErrorShowSource','ReportErrorShowStackTrace', - 'ShouldProcessPreference','ShouldProcessReturnPreference', - 'StackTrace','VerbosePreference','WarningPreference','PWD' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '=', '<', '>', '@', '|', '&', ',', '?', - '+=', '-=', '*=', '/=', '%=', '*', '/', '%', '!', '+', '-', '++', '--' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #008080; font-weight: bold;', - 2 => 'color: #008080; font-weight: bold;', - 3 => 'color: #0000FF;', - 4 => 'color: #FF0000;', - 5 => 'color: #008080; font-style: italic;', - 6 => 'color: #000080;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000;', - 'MULTI' => 'color: #008000;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #008080; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #800000;' - ), - 'NUMBERS' => array( - 0 => 'color: #804000;' - ), - 'METHODS' => array( - 0 => 'color: pink;' - ), - 'SYMBOLS' => array( - 0 => 'color: pink;' - ), - 'REGEXPS' => array( - 0 => 'color: #800080;', - 3 => 'color: #008080;', - 4 => 'color: #008080;', - 5 => 'color: #800000;', - 6 => 'color: #000080;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => 'about:blank', - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - // special after pipe - 3 => array( - GESHI_SEARCH => '(\[)(int|long|string|char|bool|byte|double|decimal|float|single|regex|array|xml|scriptblock|switch|hashtable|type|ref|psobject|wmi|wmisearcher|wmiclass|object)((\[.*\])?\])', - GESHI_REPLACE => '\2', - GESHI_MODIFIERS => 'si', - GESHI_BEFORE => '\1', - GESHI_AFTER => '\3' - ), - // Classes - 4 => array( - GESHI_SEARCH => '(\[)(System\.Reflection\.Assembly|System\.Net\.CredentialCache|Microsoft\.SharePoint\.SPFileLevel|Microsoft\.SharePoint\.Publishing\.PublishingWeb|Microsoft\.SharePoint\.Publishing|Microsoft\.SharePoint\.SPWeb)(\])', - GESHI_REPLACE => '\2', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '\1', - GESHI_AFTER => '\3' - ), - // Members - // There's about a hundred million of these, add the ones you need as you need them - 5 => array ( - GESHI_SEARCH => '(::)(ReflectionOnlyLoadFrom|ReflectionOnlyLoad|ReferenceEquals|LoadWithPartialName|LoadFrom|LoadFile|Load|GetExecutingAssembly|GetEntryAssembly|GetCallingAssembly|GetAssembly|Equals|DefaultNetworkCredentials|DefaultCredentials|CreateQualifiedName|Checkout|Draft|Published|IsPublishingWeb)', - GESHI_REPLACE => '\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\1', - GESHI_AFTER => '' - ), - // Special variables - 6 => array( - GESHI_SEARCH => '(\$)(\$[_\^]?|\?)(?!\w)', - GESHI_REPLACE => '\1\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // variables - //BenBE: Please note that changes here and in Keyword group 6 have to be synchronized in order to work properly. - //This Regexp must only match, if keyword group 6 doesn't. If this assumption fails - //Highlighting of the keywords will be incomplete or incorrect! - 0 => "(?)[\\\$](\w+)(?=[^|\w])", - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 4 => array( - 'DISALLOWED_AFTER' => '(?![a-zA-Z])', - 'DISALLOWED_BEFORE' => '' - ), - 6 => array( - 'DISALLOWED_BEFORE' => '(?)\$' - ) - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/progress.php b/library/Vendors/geshi/geshi/progress.php deleted file mode 100644 index 90c3bf0f..00000000 --- a/library/Vendors/geshi/geshi/progress.php +++ /dev/null @@ -1,485 +0,0 @@ - 'Progress', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array ( - 1 => array( - 'ACCUMULATE','APPLY','ASSIGN','BELL','QUERY', - 'BUFFER-COMPARE','BUFFER-COPY','CALL','CASE', - 'CHOOSE','CLASS','CLOSE QUERY','each','WHERE', - 'CLOSE STORED-PROCEDURE','COLOR','COMPILE','CONNECT', - 'CONSTRUCTOR','COPY-LOB','CREATE','CREATE ALIAS', - 'CREATE BROWSE','CREATE BUFFER','CREATE CALL','CREATE CLIENT-PRINCIPAL', - 'CREATE DATABASE','CREATE DATASET','CREATE DATA-SOURCE','CREATE QUERY', - 'CREATE SAX-attributeS','CREATE SAX-READER','CREATE SAX-WRITER','CREATE SERVER', - 'CREATE SERVER-SOCKET','CREATE SOAP-HEADER','CREATE SOAP-HEADER-ENTRYREF','CREATE SOCKET', - 'CREATE TEMP-TABLE','CREATE WIDGET','CREATE widget-POOL','CREATE X-DOCUMENT', - 'CREATE X-NODEREF','CURRENT-LANGUAGE','CURRENT-VALUE','DDE ADVISE', - 'DDE EXECUTE','DDE GET','DDE INITIATE','DDE REQUEST', - 'DDE SEND','DDE TERMINATE','DEFINE BROWSE','DEFINE BUFFER','DEFINE', - 'DEFINE BUTTON','DEFINE DATASET','DEFINE DATA-SOURCE','DEFINE FRAME','DEF','VAR', - 'DEFINE IMAGE','DEFINE MENU','DEFINE PARAMETER','DEFINE property','PARAM', - 'DEFINE QUERY','DEFINE RECTANGLE','DEFINE STREAM','DEFINE SUB-MENU', - 'DEFINE TEMP-TABLE','DEFINE WORKFILE','DEFINE WORK-TABLE', - 'DELETE','DELETE ALIAS','DELETE object','DELETE PROCEDURE', - 'DELETE widget','DELETE widget-POOL','DESTRUCTOR','DICTIONARY', - 'DISABLE','DISABLE TRIGGERS','DISCONNECT','DISPLAY', - 'DO','DOS','DOWN','DYNAMIC-CURRENT-VALUE', - 'ELSE','EMPTY TEMP-TABLE','ENABLE','END', - 'ENTRY','FIND','AND', - 'FIX-CODEPAGE','FOR','FORM','FRAME-VALUE', - 'GET','GET-KEY-VALUE','HIDE','IF', - 'IMPORT','INPUT CLEAR','INPUT CLOSE','INPUT FROM','input', - 'INPUT THROUGH','INPUT-OUTPUT CLOSE','INPUT-OUTPUT THROUGH', - 'INTERFACE','LEAVE','BREAK', - 'LOAD-PICTURE','MESSAGE','method','NEXT','prev', - 'NEXT-PROMPT','ON','OPEN QUERY','OS-APPEND', - 'OS-COMMAND','OS-COPY','OS-CREATE-DIR','OS-DELETE', - 'OS-RENAME','OUTPUT CLOSE','OUTPUT THROUGH','OUTPUT TO', - 'OVERLAY','PAGE','PAUSE','PROCEDURE', - 'PROCESS EVENTS','PROMPT-FOR','PROMSGS','PROPATH', - 'PUBLISH','PUT','PUT CURSOR','PUT SCREEN', - 'PUT-BITS','PUT-BYTE','PUT-BYTES','PUT-DOUBLE', - 'PUT-FLOAT','PUT-INT64','PUT-KEY-VALUE','PUT-LONG', - 'PUT-SHORT','PUT-STRING','PUT-UNSIGNED-LONG','PUT-UNSIGNED-SHORT', - 'QUIT','RAW-TRANSFER','READKEY','RELEASE', - 'RELEASE EXTERNAL','RELEASE object','REPEAT','REPOSITION', - 'RUN','RUN STORED-PROCEDURE','RUN SUPER', - 'SAVE CACHE','SCROLL','SEEK','SET', - 'SET-BYTE-ORDER','SET-POINTER-VALUE','SET-SIZE','SHOW-STATS', - 'STATUS','STOP','SUBSCRIBE','SUBSTRING', - 'system-DIALOG COLOR','system-DIALOG FONT','system-DIALOG GET-DIR','system-DIALOG GET-FILE', - 'system-DIALOG PRINTER-SETUP','system-HELP','THEN','THIS-object', - 'TRANSACTION-MODE AUTOMATIC','TRIGGER PROCEDURE','UNDERLINE','UNDO', - 'UNIX','UNLOAD','UNSUBSCRIBE','UP','STRING', - 'UPDATE','USE','USING','substr','SKIP','CLOSE', - 'VIEW','WAIT-FOR','MODULO','NE','AVAIL', - 'NOT','OR','&GLOBAL-DEFINE','&IF','UNFORMATTED','NO-PAUSE', - '&THEN','&ELSEIF','&ELSE','&ENDIF','OPEN','NO-WAIT', - '&MESSAGE','&SCOPED-DEFINE','&UNDEFINE','DEFINED', - 'BROWSE','BUTTON','COMBO-BOX','CONTROL-FRAME', - 'DIALOG-BOX','EDITOR','FIELD-GROUP','FILL-IN', - 'FRAME','IMAGE','LITERAL','MENU', - 'MENU-ITEM','RADIO-SET','RECTANGLE','SELECTION-LIST', - 'SLIDER','SUB-MENU','TEXT','TOGGLE-BOX', - 'WINDOW','WITH','AT','OF','EDITING','ON ENDKEY','output', - 'ON ERROR','ON QUIT','ON STOP','PRESELECT', - 'QUERY-TUNING','SIZE','Trigger','VIEW-AS','ALERT-BOX', - 'Buffer','Data-relation','ProDataSet','SAX-attributes', - 'SAX-reader','SAX-writer','Server socket','SOAP-fault', - 'SOAP-header','SOAP-header-entryref','Socket','Temp-table', - 'X-noderef','Height','Left','Top','TO', - 'Width','ACTIVE-WINDOW','AUDIT-CONTROL','FIRST','LAST', - 'AUDIT-POLICY','CLIPBOARD','CODEBASE-LOCATOR','COLOR-TABLE', - 'COMPILER','COM-SELF','DEBUGGER','DEFAULT-WINDOW', - 'ERROR-STATUS','FILE-INFO','FOCUS','FONT-TABLE', - 'LAST-EVENT','LOG-MANAGER','RCODE-INFO','SECURITY-POLICY', - 'SELF','SESSION','SOURCE-PROCEDURE','TARGET-PROCEDURE','NO-LOCK','NO-error', - 'THIS-PROCEDURE','WEB-CONTEXT','FUNCTION','RETURNS','NO-UNDO' - ), - 2 => array( - 'ACCEPT-CHANGES','ACCEPT-ROW-CHANGES','ADD-BUFFER','ADD-CALC-COLUMN', - 'ADD-COLUMNS-FROM','ADD-EVENTS-PROCEDURE','ADD-FIELDS-FROM','ADD-FIRST', - 'ADD-HEADER-ENTRY','ADD-INDEX-FIELD','ADD-LAST','ADD-LIKE-COLUMN', - 'ADD-LIKE-FIELD','ADD-LIKE-INDEX','ADD-NEW-FIELD','ADD-NEW-INDEX', - 'ADD-RELATION','ADD-SCHEMA-LOCATION','ADD-SOURCE-BUFFER','ADD-SUPER-PROCEDURE', - 'APPEND-CHILD','APPLY-CALLBACK','ATTACH-DATA-SOURCE','AUTHENTICATION-FAILED', - 'BEGIN-EVENT-GROUP','BUFFER-CREATE', - 'BUFFER-DELETE','BUFFER-RELEASE','BUFFER-VALIDATE', - 'CANCEL-BREAK','CANCEL-REQUESTS','CLEAR','CLEAR-APPL-CONTEXT', - 'CLEAR-LOG','CLEAR-SELECTION','CLEAR-SORT-ARROWS','CLONE-NODE', - 'CLOSE-LOG','CONNECTED','CONVERT-TO-OFFSET', - 'COPY-DATASET','COPY-SAX-attributeS','COPY-TEMP-TABLE','CREATE-LIKE', - 'CREATE-NODE','CREATE-NODE-NAMESPACE','CREATE-RESULT-LIST-ENTRY','DEBUG', - 'DECLARE-NAMESPACE','DELETE-CHAR','DELETE-CURRENT-ROW', - 'DELETE-HEADER-ENTRY','DELETE-LINE','DELETE-NODE','DELETE-RESULT-LIST-ENTRY', - 'DELETE-SELECTED-ROW','DELETE-SELECTED-ROWS','DESELECT-FOCUSED-ROW','DESELECT-ROWS', - 'DESELECT-SELECTED-ROW','DETACH-DATA-SOURCE','DISABLE-CONNECTIONS', - 'DISABLE-DUMP-TRIGGERS','DISABLE-LOAD-TRIGGERS','DISPLAY-MESSAGE', - 'DUMP-LOGGING-NOW','EDIT-CLEAR','EDIT-COPY','EDIT-CUT', - 'EDIT-PASTE','EDIT-UNDO','EMPTY-DATASET','EMPTY-TEMP-TABLE', - 'ENABLE-CONNECTIONS','ENABLE-EVENTS','ENCRYPT-AUDIT-MAC-KEY', - 'END-DOCUMENT','END-ELEMENT','END-EVENT-GROUP','END-FILE-DROP', - 'EXPORT','EXPORT-PRINCIPAL','FETCH-SELECTED-ROW', - 'FILL','FIND-BY-ROWID','FIND-CURRENT','FIND-FIRST', - 'FIND-LAST','FIND-UNIQUE','GET-attribute','GET-attribute-NODE', - 'GET-BINARY-DATA','GET-BLUE-VALUE','GET-BROWSE-COLUMN','GET-BUFFER-HANDLE', - 'GET-BYTES-AVAILABLE','GET-CALLBACK-PROC-CONTEXT','GET-CALLBACK-PROC-NAME','GET-CGI-LIST', - 'GET-CGI-LONG-VALUE','GET-CGI-VALUE','GET-CHANGES','GET-CHILD', - 'GET-CHILD-RELATION','GET-CONFIG-VALUE','GET-CURRENT','GET-DATASET-BUFFER', - 'GET-DOCUMENT-ELEMENT','GET-DROPPED-FILE','GET-DYNAMIC','GET-ERROR-COLUMN ', - 'GET-ERROR-ROW ','GET-FILE-NAME ','GET-FILE-OFFSET ','GET-FIRST', - 'GET-GREEN-VALUE','GET-HEADER-ENTRY','GET-INDEX-BY-NAMESPACE-NAME','GET-INDEX-BY-QNAME', - 'GET-ITERATION','GET-LAST','GET-LOCALNAME-BY-INDEX','GET-MESSAGE', - 'GET-NEXT','GET-NODE','GET-NUMBER','GET-PARENT', - 'GET-PREV','GET-PRINTERS','GET-property','GET-QNAME-BY-INDEX', - 'GET-RED-VALUE','GET-RELATION','GET-REPOSITIONED-ROW','GET-RGB-VALUE', - 'GET-SELECTED-widget','GET-SERIALIZED','GET-SIGNATURE','GET-SOCKET-OPTION', - 'GET-SOURCE-BUFFER','GET-TAB-ITEM','GET-TEXT-HEIGHT-CHARS','GET-TEXT-HEIGHT-PIXELS', - 'GET-TEXT-WIDTH-CHARS','GET-TEXT-WIDTH-PIXELS','GET-TOP-BUFFER','GET-TYPE-BY-INDEX', - 'GET-TYPE-BY-NAMESPACE-NAME','GET-TYPE-BY-QNAME','GET-URI-BY-INDEX','GET-VALUE-BY-INDEX', - 'GET-VALUE-BY-NAMESPACE-NAME','GET-VALUE-BY-QNAME','GET-WAIT-STATE','IMPORT-NODE', - 'IMPORT-PRINCIPAL','INCREMENT-EXCLUSIVE-ID','INITIALIZE-DOCUMENT-TYPE', - 'INITIATE','INSERT','INSERT-attribute','INSERT-BACKTAB', - 'INSERT-BEFORE','INSERT-FILE','INSERT-ROW','INSERT-STRING', - 'INSERT-TAB','INVOKE','IS-ROW-SELECTED','IS-SELECTED', - 'LIST-property-NAMES','LOAD','LoadControls','LOAD-DOMAINS', - 'LOAD-ICON','LOAD-IMAGE','LOAD-IMAGE-DOWN','LOAD-IMAGE-INSENSITIVE', - 'LOAD-IMAGE-UP','LOAD-MOUSE-POINTER','LOAD-SMALL-ICON','LOCK-REGISTRATION', - 'LOG-AUDIT-EVENT','LOGOUT','LONGCHAR-TO-NODE-VALUE','LOOKUP', - 'MEMPTR-TO-NODE-VALUE','MERGE-CHANGES','MERGE-ROW-CHANGES','MOVE-AFTER-TAB-ITEM', - 'MOVE-BEFORE-TAB-ITEM','MOVE-COLUMN','MOVE-TO-BOTTOM','MOVE-TO-EOF', - 'MOVE-TO-TOP','NODE-VALUE-TO-LONGCHAR','NODE-VALUE-TO-MEMPTR','NORMALIZE', - 'QUERY-CLOSE','QUERY-OPEN','QUERY-PREPARE', - 'READ','READ-FILE','READ-XML','READ-XMLSCHEMA', - 'REFRESH','REFRESH-AUDIT-POLICY','REGISTER-DOMAIN','REJECT-CHANGES', - 'REJECT-ROW-CHANGES','REMOVE-attribute','REMOVE-CHILD','REMOVE-EVENTS-PROCEDURE', - 'REMOVE-SUPER-PROCEDURE','REPLACE','REPLACE-CHILD','REPLACE-SELECTION-TEXT', - 'REPOSITION-BACKWARD','REPOSITION-FORWARD','REPOSITION-TO-ROW','REPOSITION-TO-ROWID', - 'RESET','SAVE','SAVE-FILE','SAVE-ROW-CHANGES', - 'SAX-PARSE','SAX-PARSE-FIRST','SAX-PARSE-NEXT','SCROLL-TO-CURRENT-ROW', - 'SCROLL-TO-ITEM','SCROLL-TO-SELECTED-ROW','SEAL','SEARCH', - 'SELECT-ALL','SELECT-FOCUSED-ROW','SELECT-NEXT-ROW','SELECT-PREV-ROW', - 'SELECT-ROW','SET-ACTOR','SET-APPL-CONTEXT','SET-attribute', - 'SET-attribute-NODE','SET-BLUE-VALUE','SET-BREAK','SET-BUFFERS', - 'SET-CALLBACK','SET-CALLBACK-PROCEDURE','SET-CLIENT','SET-COMMIT', - 'SET-CONNECT-PROCEDURE','SET-DYNAMIC','SET-GREEN-VALUE','SET-INPUT-SOURCE', - 'SET-MUST-UNDERSTAND','SET-NODE','SET-NUMERIC-FORMAT','SET-OUTPUT-DESTINATION', - 'SET-PARAMETER','SET-property','SET-READ-RESPONSE-PROCEDURE','SET-RED-VALUE', - 'SET-REPOSITIONED-ROW','SET-RGB-VALUE','SET-ROLLBACK','SET-SELECTION', - 'SET-SERIALIZED','SET-SOCKET-OPTION','SET-SORT-ARROW','SET-WAIT-STATE', - 'START-DOCUMENT','START-ELEMENT','STOP-PARSING','SYNCHRONIZE', - 'TEMP-TABLE-PREPARE','UPDATE-attribute','URL-DECODE','URL-ENCODE', - 'VALIDATE','VALIDATE-SEAL','WRITE','WRITE-CDATA','USE-INDEX', - 'WRITE-CHARACTERS','WRITE-COMMENT','WRITE-DATA-ELEMENT','WRITE-EMPTY-ELEMENT', - 'WRITE-ENTITY-REF','WRITE-EXTERNAL-DTD','WRITE-FRAGMENT','WRITE-MESSAGE', - 'WRITE-PROCESSING-INSTRUCTION','WRITE-XML','WRITE-XMLSCHEMA','FALSE','true' - ), - 3 => array( - 'ABSOLUTE','ACCUM','ADD-INTERVAL','ALIAS','mod', - 'AMBIGUOUS','ASC','AUDIT-ENABLED','AVAILABLE', - 'BASE64-DECODE','BASE64-ENCODE','CAN-DO','CAN-FIND', - 'CAN-QUERY','CAN-SET','CAPS','CAST','OS-DIR', - 'CHR','CODEPAGE-CONVERT','COMPARE', - 'COUNT-OF','CURRENT-CHANGED','CURRENT-RESULT-ROW','DATASERVERS', - 'DATA-SOURCE-MODIFIED','DATETIME','DATETIME-TZ', - 'DAY','DBCODEPAGE','DBCOLLATION','DBNAME', - 'DBPARAM','DBRESTRICTIONS','DBTASKID','DBTYPE', - 'DBVERSION','DECIMAL','DECRYPT','DYNAMIC-function', - 'DYNAMIC-NEXT-VALUE','ENCODE','ENCRYPT','ENTERED', - 'ERROR','ETIME','EXP','ENDKEY','END-error', - 'FIRST-OF','FRAME-DB','FRAME-DOWN', - 'FRAME-FIELD','FRAME-FILE','FRAME-INDEX','FRAME-LINE', - 'GATEWAYS','GENERATE-PBE-KEY','GENERATE-PBE-SALT','GENERATE-RANDOM-KEY', - 'GENERATE-UUID','GET-BITS','GET-BYTE','GET-BYTE-ORDER', - 'GET-BYTES','GET-CODEPAGE','GET-CODEPAGES','GET-COLLATION', - 'GET-COLLATIONS','GET-DOUBLE','GET-FLOAT','GET-INT64', - 'GET-LONG','GET-POINTER-VALUE','GET-SHORT','GET-SIZE', - 'GET-STRING','GET-UNSIGNED-LONG','GET-UNSIGNED-SHORT','GO-PENDING', - 'GUID','HEX-DECODE','INDEX', - 'INT64','INTEGER','INTERVAL','IS-ATTR-SPACE', - 'IS-CODEPAGE-FIXED','IS-COLUMN-CODEPAGE','IS-LEAD-BYTE','ISO-DATE', - 'KBLABEL','KEYCODE','KEYFUNCTION','KEYLABEL', - 'KEYWORD','KEYWORD-ALL','LASTKEY', - 'LAST-OF','LC','LDBNAME','LEFT-TRIM', - 'LIBRARY','LINE-COUNTER','LIST-EVENTS','LIST-QUERY-ATTRS', - 'LIST-SET-ATTRS','LIST-widgetS','LOCKED', - 'LOGICAL','MAXIMUM','MD5-DIGEST', - 'MEMBER','MESSAGE-LINES','MINIMUM','MONTH', - 'MTIME','NEW','NEXT-VALUE','SHARED', - 'NOT ENTERED','NOW','NUM-ALIASES','NUM-DBS', - 'NUM-ENTRIES','NUM-RESULTS','OPSYS','OS-DRIVES', - 'OS-ERROR','OS-GETENV','PAGE-NUMBER','PAGE-SIZE', - 'PDBNAME','PROC-HANDLE','PROC-STATUS','PROGRAM-NAME', - 'PROGRESS','PROVERSION','QUERY-OFF-END','QUOTER', - 'RANDOM','RAW','RECID','REJECTED', - 'RETRY','RETURN-VALUE','RGB-VALUE', - 'RIGHT-TRIM','R-INDEX','ROUND','ROWID','LENGTH', - 'SDBNAME','SET-DB-CLIENT','SETUSERID', - 'SHA1-DIGEST','SQRT','SUBSTITUTE','VARIABLE', - 'SUPER','TERMINAL','TIME','TIMEZONE','external', - 'TODAY','TO-ROWID','TRIM','TRUNCATE','return', - 'TYPE-OF','USERID','VALID-EVENT','VALID-HANDLE', - 'VALID-object','WEEKDAY','YEAR','BEGINS','VALUE', - 'EQ','GE','GT','LE','LT','MATCHES','AS','BY','LIKE' - ), - 4 => array( - 'ACCELERATOR','ACTIVE','ACTOR','ADM-DATA', - 'AFTER-BUFFER','AFTER-ROWID','AFTER-TABLE','ALLOW-COLUMN-SEARCHING', - 'ALWAYS-ON-TOP','APPL-ALERT-BOXES','APPL-CONTEXT-ID','APPSERVER-INFO', - 'APPSERVER-PASSWORD','APPSERVER-USERID','ASYNCHRONOUS','ASYNC-REQUEST-COUNT', - 'ASYNC-REQUEST-HANDLE','ATTACHED-PAIRLIST','attribute-NAMES','ATTR-SPACE', - 'AUDIT-EVENT-CONTEXT','AUTO-COMPLETION','AUTO-DELETE','AUTO-DELETE-XML', - 'AUTO-END-KEY','AUTO-GO','AUTO-INDENT','AUTO-RESIZE', - 'AUTO-RETURN','AUTO-SYNCHRONIZE','AUTO-VALIDATE','AUTO-ZAP', - 'AVAILABLE-FORMATS','BACKGROUND','BASE-ADE','BASIC-LOGGING', - 'BATCH-MODE','BATCH-SIZE','BEFORE-BUFFER','BEFORE-ROWID', - 'BEFORE-TABLE','BGCOLOR','BLANK','BLOCK-ITERATION-DISPLAY', - 'BORDER-BOTTOM-CHARS','BORDER-BOTTOM-PIXELS','BORDER-LEFT-CHARS','BORDER-LEFT-PIXELS', - 'BORDER-RIGHT-CHARS','BORDER-RIGHT-PIXELS','BORDER-TOP-CHARS','BORDER-TOP-PIXELS', - 'BOX','BOX-SELECTABLE','BUFFER-CHARS','BUFFER-FIELD', - 'BUFFER-HANDLE','BUFFER-LINES','BUFFER-NAME','BUFFER-VALUE', - 'BYTES-READ','BYTES-WRITTEN','CACHE','CALL-NAME', - 'CALL-TYPE','CANCEL-BUTTON','CANCELLED','CAN-CREATE', - 'CAN-DELETE','CAN-READ','CAN-WRITE','CAREFUL-PAINT', - 'CASE-SENSITIVE','CENTERED','CHARSET','CHECKED', - 'CHILD-BUFFER','CHILD-NUM','CLASS-TYPE','CLIENT-CONNECTION-ID', - 'CLIENT-TTY','CLIENT-TYPE','CLIENT-WORKSTATION','CODE', - 'CODEPAGE','COLUMN','COLUMN-BGCOLOR','COLUMN-DCOLOR', - 'COLUMN-FGCOLOR','COLUMN-FONT','COLUMN-LABEL','COLUMN-MOVABLE', - 'COLUMN-PFCOLOR','COLUMN-READ-ONLY','COLUMN-RESIZABLE','COLUMN-SCROLLING', - 'COM-HANDLE','COMPLETE','CONFIG-NAME','CONTEXT-HELP', - 'CONTEXT-HELP-FILE','CONTEXT-HELP-ID','CONTROL-BOX','CONVERT-3D-COLORS', - 'CPCASE','CPCOLL','CPINTERNAL','CPLOG', - 'CPPRINT','CPRCODEIN','CPRCODEOUT','CPSTREAM', - 'CPTERM','CRC-VALUE','CURRENT-COLUMN','CURRENT-ENVIRONMENT', - 'CURRENT-ITERATION','CURRENT-ROW-MODIFIED','CURRENT-WINDOW','CURSOR-CHAR', - 'CURSOR-LINE','CURSOR-OFFSET','DATA-ENTRY-RETURN','DATASET', - 'DATA-SOURCE','DATA-SOURCE-COMPLETE-MAP','DATA-TYPE','DATE-FORMAT', - 'DB-REFERENCES','DCOLOR','DDE-ERROR','DDE-ID', - 'DDE-ITEM','DDE-NAME','DDE-TOPIC','DEBLANK', - 'DEBUG-ALERT','DECIMALS','DEFAULT','DEFAULT-BUFFER-HANDLE', - 'DEFAULT-BUTTON','DEFAULT-COMMIT','DELIMITER','DISABLE-AUTO-ZAP', - 'DISPLAY-TIMEZONE','DISPLAY-TYPE','DOMAIN-DESCRIPTION','DOMAIN-NAME', - 'DOMAIN-TYPE','DRAG-ENABLED','DROP-TARGET','DYNAMIC', - 'EDGE-CHARS','EDGE-PIXELS','EDIT-CAN-PASTE','EDIT-CAN-UNDO', - 'EMPTY','ENCODING','ENCRYPTION-SALT','END-USER-PROMPT', - 'ENTRY-TYPES-LIST','ERROR-COLUMN','ERROR-object-DETAIL','ERROR-ROW', - 'ERROR-STRING','EVENT-GROUP-ID','EVENT-PROCEDURE','EVENT-PROCEDURE-CONTEXT', - 'EVENT-TYPE','EXCLUSIVE-ID','EXECUTION-LOG','EXPAND', - 'EXPANDABLE','FGCOLOR','FILE-CREATE-DATE','FILE-CREATE-TIME', - 'FILE-MOD-DATE','FILE-MOD-TIME','FILE-NAME','FILE-OFFSET', - 'FILE-SIZE','FILE-TYPE','FILLED','FILL-MODE', - 'FILL-WHERE-STRING','FIRST-ASYNC-REQUEST','FIRST-BUFFER','FIRST-CHILD', - 'FIRST-COLUMN','FIRST-DATASET','FIRST-DATA-SOURCE','FIRST-object', - 'FIRST-PROCEDURE','FIRST-QUERY','FIRST-SERVER','FIRST-SERVER-SOCKET', - 'FIRST-SOCKET','FIRST-TAB-ITEM','FIT-LAST-COLUMN','FLAT-BUTTON', - 'FOCUSED-ROW','FOCUSED-ROW-SELECTED','FONT','FOREGROUND', - 'FORMAT','FORMATTED','FORM-INPUT','FORM-LONG-INPUT', - 'FORWARD-ONLY','FRAGMENT','FRAME-COL','FRAME-NAME', - 'FRAME-ROW','FRAME-SPACING','FRAME-X','FRAME-Y', - 'FREQUENCY','FULL-HEIGHT-CHARS','FULL-HEIGHT-PIXELS','FULL-PATHNAME', - 'FULL-WIDTH-CHARS','FULL-WIDTH-PIXELS','GRAPHIC-EDGE', - 'GRID-FACTOR-HORIZONTAL','GRID-FACTOR-VERTICAL','GRID-SNAP','GRID-UNIT-HEIGHT-CHARS', - 'GRID-UNIT-HEIGHT-PIXELS','GRID-UNIT-WIDTH-CHARS','GRID-UNIT-WIDTH-PIXELS','GRID-VISIBLE', - 'GROUP-BOX','HANDLE','HANDLER','HAS-LOBS', - 'HAS-RECORDS','HEIGHT-CHARS','HEIGHT-PIXELS','HELP', - 'HIDDEN','HORIZONTAL','HTML-CHARSET','HTML-END-OF-LINE', - 'HTML-END-OF-PAGE','HTML-FRAME-BEGIN','HTML-FRAME-END','HTML-HEADER-BEGIN', - 'HTML-HEADER-END','HTML-TITLE-BEGIN','HTML-TITLE-END','HWND', - 'ICFPARAMETER','ICON','IGNORE-CURRENT-MODIFIED','IMAGE-DOWN', - 'IMAGE-INSENSITIVE','IMAGE-UP','IMMEDIATE-DISPLAY','INDEX-INFORMATION', - 'IN-HANDLE','INHERIT-BGCOLOR','INHERIT-FGCOLOR','INITIAL','INIT', - 'INNER-CHARS','INNER-LINES','INPUT-VALUE','INSTANTIATING-PROCEDURE', - 'INTERNAL-ENTRIES','IS-CLASS','IS-OPEN','IS-PARAMETER-SET', - 'IS-XML','ITEMS-PER-ROW','KEEP-CONNECTION-OPEN','KEEP-FRAME-Z-ORDER', - 'KEEP-SECURITY-CACHE','KEY','KEYS','LABEL', - 'LABEL-BGCOLOR','LABEL-DCOLOR','LABEL-FGCOLOR','LABEL-FONT', - 'LABELS','LANGUAGES','LARGE','LARGE-TO-SMALL', - 'LAST-ASYNC-REQUEST','LAST-BATCH','LAST-CHILD','LAST-object', - 'LAST-PROCEDURE','LAST-SERVER','LAST-SERVER-SOCKET','LAST-SOCKET', - 'LAST-TAB-ITEM','LINE','LIST-ITEM-PAIRS','LIST-ITEMS', - 'LITERAL-QUESTION','LOCAL-HOST','LOCAL-NAME','LOCAL-PORT', - 'LOCATOR-COLUMN-NUMBER','LOCATOR-LINE-NUMBER','LOCATOR-PUBLIC-ID','LOCATOR-system-ID', - 'LOCATOR-TYPE','LOG-ENTRY-TYPES','LOGFILE-NAME','LOGGING-LEVEL', - 'LOGIN-EXPIRATION-TIMESTAMP','LOGIN-HOST','LOGIN-STATE','LOG-THRESHOLD', - 'MANDATORY','MANUAL-HIGHLIGHT','MAX-BUTTON','MAX-CHARS', - 'MAX-DATA-GUESS','MAX-HEIGHT-CHARS','MAX-HEIGHT-PIXELS','MAX-VALUE', - 'MAX-WIDTH-CHARS','MAX-WIDTH-PIXELS','MD5-VALUE','MENU-BAR', - 'MENU-KEY','MENU-MOUSE','MERGE-BY-FIELD','MESSAGE-AREA', - 'MESSAGE-AREA-FONT','MIN-BUTTON','MIN-COLUMN-WIDTH-CHARS','MIN-COLUMN-WIDTH-PIXELS', - 'MIN-HEIGHT-CHARS','MIN-HEIGHT-PIXELS','MIN-SCHEMA-MARSHAL','MIN-VALUE', - 'MIN-WIDTH-CHARS','MIN-WIDTH-PIXELS','MODIFIED','MOUSE-POINTER', - 'MOVABLE','MULTI-COMPILE','MULTIPLE','MULTITASKING-INTERVAL', - 'MUST-UNDERSTAND','NAME','NAMESPACE-PREFIX','NAMESPACE-URI', - 'NEEDS-APPSERVER-PROMPT','NEEDS-PROMPT','NESTED','NEW-ROW', - 'NEXT-COLUMN','NEXT-ROWID','NEXT-SIBLING','NEXT-TAB-ITEM', 'NO-BOX', - 'NO-CURRENT-VALUE','NODE-VALUE','NO-EMPTY-SPACE','NO-FOCUS', - 'NONAMESPACE-SCHEMA-LOCATION','NO-SCHEMA-MARSHAL','NO-VALIDATE','NUM-BUFFERS', - 'NUM-BUTTONS','NUM-CHILD-RELATIONS','NUM-CHILDREN','NUM-COLUMNS', - 'NUM-DROPPED-FILES','NUMERIC-DECIMAL-POINT','NUMERIC-FORMAT','NUMERIC-SEPARATOR', - 'NUM-FIELDS','NUM-FORMATS','NUM-HEADER-ENTRIES','NUM-ITEMS', - 'NUM-ITERATIONS','NUM-LINES','NUM-LOCKED-COLUMNS','NUM-LOG-FILES', - 'NUM-MESSAGES','NUM-PARAMETERS','NUM-REFERENCES','NUM-RELATIONS', - 'NUM-REPLACED','NUM-SELECTED-ROWS','NUM-SELECTED-WIDGETS','NUM-SOURCE-BUFFERS', - 'NUM-TABS','NUM-TOP-BUFFERS','NUM-TO-RETAIN','NUM-VISIBLE-COLUMNS', - 'ON-FRAME-BORDER','ORIGIN-HANDLE','ORIGIN-ROWID','OWNER', - 'OWNER-DOCUMENT','PAGE-BOTTOM','PAGE-TOP','PARAMETER', - 'PARENT','PARENT-BUFFER','PARENT-RELATION','PARSE-STATUS', - 'PASSWORD-FIELD','PATHNAME','PBE-HASH-ALGORITHM','PBE-KEY-ROUNDS', - 'PERSISTENT','PERSISTENT-CACHE-DISABLED','PERSISTENT-PROCEDURE','PFCOLOR', - 'PIXELS-PER-COLUMN','PIXELS-PER-ROW','POPUP-MENU','POPUP-ONLY', - 'POSITION','PREFER-DATASET','PREPARED','PREPARE-STRING', - 'PREV-COLUMN','PREV-SIBLING','PREV-TAB-ITEM','PRIMARY', - 'PRINTER-CONTROL-HANDLE','PRINTER-HDC','PRINTER-NAME','PRINTER-PORT', - 'PRIVATE-DATA','PROCEDURE-NAME','PROGRESS-SOURCE','PROXY', - 'PROXY-PASSWORD','PROXY-USERID','PUBLIC-ID','PUBLISHED-EVENTS', - 'RADIO-BUTTONS','READ-ONLY','RECORD-LENGTH', - 'REFRESHABLE','RELATION-FIELDS','RELATIONS-ACTIVE','REMOTE', - 'REMOTE-HOST','REMOTE-PORT','RESIZABLE','RESIZE', - 'RESTART-ROWID','RETAIN-SHAPE','RETURN-INSERTED','RETURN-VALUE-DATA-TYPE', - 'ROLES','ROUNDED','COL','ROW','ROW-HEIGHT-CHARS', - 'ROW-HEIGHT-PIXELS','ROW-MARKERS','ROW-RESIZABLE','ROW-STATE', - 'SAVE-WHERE-STRING','SCHEMA-CHANGE','SCHEMA-LOCATION','SCHEMA-MARSHAL', - 'SCHEMA-PATH','SCREEN-LINES','SCREEN-VALUE','SCROLLABLE', - 'SCROLLBAR-HORIZONTAL','SCROLL-BARS','SCROLLBAR-VERTICAL','SEAL-TIMESTAMP', - 'SELECTABLE','SELECTED','SELECTION-END','SELECTION-START', - 'SELECTION-TEXT','SENSITIVE','SEPARATOR-FGCOLOR','SEPARATORS', - 'SERVER','SERVER-CONNECTION-BOUND','SERVER-CONNECTION-BOUND-REQUEST','SERVER-CONNECTION-CONTEXT', - 'SERVER-CONNECTION-ID','SERVER-OPERATING-MODE','SESSION-END','SESSION-ID', - 'SHOW-IN-TASKBAR','SIDE-LABEL-HANDLE','SIDE-LABELS','SKIP-DELETED-RECORD', - 'SMALL-ICON','SMALL-TITLE','SOAP-FAULT-ACTOR','SOAP-FAULT-CODE', - 'SOAP-FAULT-DETAIL','SOAP-FAULT-STRING','SORT','SORT-ASCENDING', - 'SORT-NUMBER','SSL-SERVER-NAME','STANDALONE','STARTUP-PARAMETERS', - 'STATE-DETAIL','STATUS-AREA','STATUS-AREA-FONT','STOPPED', - 'STREAM','STRETCH-TO-FIT','STRICT','STRING-VALUE', - 'SUBTYPE','SUPER-PROCEDURES','SUPPRESS-NAMESPACE-PROCESSING','SUPPRESS-WARNINGS', - 'SYMMETRIC-ENCRYPTION-ALGORITHM','SYMMETRIC-ENCRYPTION-IV','SYMMETRIC-ENCRYPTION-KEY','SYMMETRIC-SUPPORT', - 'system-ALERT-BOXES','system-ID','TABLE','TABLE-CRC-LIST', - 'TABLE-HANDLE','TABLE-LIST','TABLE-NUMBER','TAB-POSITION', - 'TAB-STOP','TEMP-DIRECTORY','TEXT-SELECTED','THREE-D', - 'TIC-MARKS','TIME-SOURCE','TITLE','TITLE-BGCOLOR','FIELD', - 'TITLE-DCOLOR','TITLE-FGCOLOR','TITLE-FONT','TOOLTIP', - 'TOOLTIPS','TOP-ONLY','TRACKING-CHANGES','TRANSACTION', - 'TRANS-INIT-PROCEDURE','TRANSPARENT','TYPE','UNIQUE-ID', - 'UNIQUE-MATCH','URL','URL-PASSWORD','URL-USERID','EXTENT', - 'USER-ID','V6DISPLAY','VALIDATE-EXPRESSION','VALIDATE-MESSAGE', - 'VALIDATE-XML','VALIDATION-ENABLED','VIEW-FIRST-COLUMN-ON-REOPEN', - 'VIRTUAL-HEIGHT-CHARS','VIRTUAL-HEIGHT-PIXELS','VIRTUAL-WIDTH-CHARS','VIRTUAL-WIDTH-PIXELS', - 'VISIBLE','WARNING','WHERE-STRING','widget-ENTER','DATE', - 'widget-LEAVE','WIDTH-CHARS','WIDTH-PIXELS','WINDOW-STATE', - 'WINDOW-system','WORD-WRAP','WORK-AREA-HEIGHT-PIXELS','WORK-AREA-WIDTH-PIXELS', - 'WORK-AREA-X','WORK-AREA-Y','WRITE-STATUS','X','widget-Handle', - 'X-DOCUMENT','XML-DATA-TYPE','XML-NODE-TYPE','XML-SCHEMA-PATH', - 'XML-SUPPRESS-NAMESPACE-PROCESSING','Y','YEAR-OFFSET','CHARACTER', - 'LONGCHAR','MEMPTR','CHAR','DEC','INT','LOG','DECI','INTE','LOGI','long' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', - '<', '>', '=', - '+', '-', '*', '/', - '!', '@', '%', '|', '$', - ':', '.', ';', ',', - '?', '<=','<>','>=', '\\' - ), - 'CASE_SENSITIVE' => array ( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false - ), - 'STYLES' => array ( - 'KEYWORDS' => array ( - 1 => 'color: #0000ff; font-weight: bold;', - 2 => 'color: #1D16B2;', - 3 => 'color: #993333;', - 4 => 'color: #0000ff;' - ), - 'COMMENTS' => array ( -// 1 => 'color: #808080; font-style: italic;', -// 2 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array ( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array ( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array ( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array ( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array ( - 0 => 'color: #006600;' - ), - 'SYMBOLS' => array ( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array ( - ), - 'SCRIPT' => array ( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 0 => ':' - ), - 'REGEXPS' => array ( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array ( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array ( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(? "(?![\-a-zA-Z0-9_%])", - 1 => array( - 'SPACE_AS_WHITESPACE' => true - ), - 2 => array( - 'SPACE_AS_WHITESPACE' => true - ) - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/prolog.php b/library/Vendors/geshi/geshi/prolog.php deleted file mode 100644 index 4dd01ff7..00000000 --- a/library/Vendors/geshi/geshi/prolog.php +++ /dev/null @@ -1,143 +0,0 @@ - 'Prolog', - 'COMMENT_SINGLE' => array(1 => '%'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array("\'"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - 'abolish','abs','arg','asserta','assertz','at_end_of_stream','atan', - 'atom','atom_chars','atom_codes','atom_concat','atom_length', - 'atomic','bagof','call','catch','ceiling','char_code', - 'char_conversion','clause','close','compound','consult','copy_term', - 'cos','current_char_conversion','current_input','current_op', - 'current_output','current_predicate','current_prolog_flag', - 'discontiguous','dynamic','ensure_loaded','exp','fail','findall', - 'float','float_fractional_part','float_integer_part','floor', - 'flush_output','functor','get_byte','get_char','get_code','halt', - 'include','initialization','integer','is','listing','log','mod', - 'multifile','nl','nonvar','notrace','number','number_chars', - 'number_codes','once','op','open','peek_byte','peek_char', - 'peek_code','put_byte','put_char','put_code','read','read_term', - 'rem','repeat','retract','round','set_input','set_output', - 'set_prolog_flag','set_stream_position','setof','sign','sin','sqrt', - 'stream_property','sub_atom','throw','trace','true','truncate', - 'unify_with_occurs_check','univ','var','write','write_canonical', - 'write_term','writeq' - ) - ), - 'SYMBOLS' => array( - 0 => array('(', ')', '[', ']', '{', '}',), - 1 => array('?-', ':-', '=:='), - 2 => array('\-', '\+', '\*', '\/'), - 3 => array('-', '+', '*', '/'), - 4 => array('.', ':', ',', ';'), - 5 => array('!', '@', '&', '|'), - 6 => array('<', '>', '=') - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #990000;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;', - 'HARD' => 'color: #0000ff;' - ), - 'NUMBERS' => array( - 0 => 'color: #800080;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;', - 1 => 'color: #339933;', - 2 => 'color: #339933;', - 3 => 'color: #339933;', - 4 => 'color: #339933;', - 5 => 'color: #339933;', - 6 => 'color: #339933;' - ), - 'REGEXPS' => array( - 0 => 'color: #008080;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://pauillac.inria.fr/~deransar/prolog/bips.html' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Variables - 0 => "(? GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/properties.php b/library/Vendors/geshi/geshi/properties.php deleted file mode 100644 index 9fc8b8da..00000000 --- a/library/Vendors/geshi/geshi/properties.php +++ /dev/null @@ -1,127 +0,0 @@ - 'PROPERTIES', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - /* Common used variables */ - 1 => array( - '${user.home}' - ), - ), - 'SYMBOLS' => array( - '[', ']', '=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'font-weight: bold;', - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => '' - ), - 'STRINGS' => array( - 0 => 'color: #933;' - ), - 'NUMBERS' => array( - 0 => '' - ), - 'METHODS' => array( - 0 => '' - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;' - ), - 'REGEXPS' => array( - 0 => 'color: #000080; font-weight:bold;', - 1 => 'color: #008000; font-weight:bold;' - ), - 'SCRIPT' => array( - 0 => '' - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Entry names - 0 => array( - GESHI_SEARCH => '^(\s*)([.a-zA-Z0-9_\-]+)(\s*=)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - //Entry values - 1 => array( - // Evil hackery to get around GeSHi bug: <>" and ; are added so s can be matched - // Explicit match on variable names because if a comment is before the first < of the span - // gets chewed up... - GESHI_SEARCH => '([<>";a-zA-Z0-9_]+\s*)=(.*)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1=', - GESHI_AFTER => '' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/providex.php b/library/Vendors/geshi/geshi/providex.php deleted file mode 100644 index 0352ac2a..00000000 --- a/library/Vendors/geshi/geshi/providex.php +++ /dev/null @@ -1,299 +0,0 @@ - 'ProvideX', - 'COMMENT_SINGLE' => array(1 => '!'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - // Single-Line Comments using REM command - 2 => "/\bREM\b.*?$/i" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - // Directives - '*break', '*continue', '*end', '*escape', '*next', '*proceed', - '*retry', '*return', '*same', 'accept', 'add index', 'addr', - 'auto', 'begin', 'break', 'button', 'bye', 'call', 'case', - 'chart', 'check_box', 'class', 'clear', 'clip_board', 'close', - 'continue', 'control', 'create required', 'create table', - 'cwdir', 'data', 'day_format', 'def', 'default', 'defctl', - 'defprt', 'deftty', 'delete required', 'dictionary', 'dim', 'direct', - 'directory', 'disable', 'drop', 'drop_box', 'dump', 'edit', - 'else', 'enable', 'end switch', 'end', 'end_if', 'endtrace', - 'enter', 'erase', 'error_handler', 'escape', 'event', 'execute', - 'exit', 'exitto', 'extract', 'file', 'find', 'floating point', - 'for', 'function', 'get_file_box', 'gosub', 'goto', 'grid', - 'h_scrollbar', 'hide', 'if', 'index', 'indexed', 'input', - 'insert', 'invoke', 'iolist', 'keyed', 'let', 'like', - 'line_switch', 'list', 'list_box', 'load', 'local', 'lock', - 'long_form', 'menu_bar', 'merge', 'message_lib', 'mnemonic', - 'msgbox', 'multi_line', 'multi_media', 'next', 'object', 'obtain', - 'on', 'open', 'password', 'perform', 'pop', 'popup_menu', - 'precision', 'prefix', 'preinput', 'print', 'process', 'program', - 'property', 'purge', 'quit', 'radio_button', 'randomize', - 'read', 'record', 'redim', 'refile', 'release', 'rem', 'remove', - 'rename', 'renumber', 'repeat', 'reset', 'restore', 'retry', - 'return', 'round', 'run', 'save', 'select', 'serial', 'server', - 'set_focus', 'set_nbf', 'set_param', 'setctl', 'setday', 'setdev', - 'setdrive', 'seterr', 'setesc', 'setfid', 'setmouse', 'settime', - 'settrace', 'short_form', 'show', 'sort', 'start', 'static', - 'step', 'stop', 'switch', 'system_help', 'system_jrnl', 'table', - 'then', 'to', 'translate', 'tristate_box', 'unlock', 'until', - 'update', 'user_lex', 'v_scrollbar', 'vardrop_box', 'varlist_box', - 'via', 'video_palette', 'wait', 'wend', 'while', 'winprt_setup', - 'with', 'write' - ), - 2 => array( - // System Functions - '@x', '@y', 'abs', 'acs', 'and', 'arg', 'asc', 'asn', 'ath', - 'atn', 'bin', 'bsz', 'chg', 'chr', 'cmp', 'cos', 'cpl', - 'crc', 'cse', 'ctl', 'cvs', 'dec', 'dir', 'dll', 'dsk', - 'dte', 'env', 'ept', 'err', 'evn', 'evs', 'exp', 'ffn', - 'fib', 'fid', 'fin', 'fpt', 'gap', 'gbl', 'gep', 'hsa', - 'hsh', 'hta', 'hwn', 'i3e', 'ind', 'int', 'iol', 'ior', - 'jul', 'jst', 'kec', 'kef', 'kel', 'ken', 'kep', 'key', - 'kgn', 'lcs', 'len', 'lno', 'log', 'lrc', 'lst', 'max', - 'mem', 'mid', 'min', 'mnm', 'mod', 'msg', 'msk', 'mxc', - 'mxl', 'new', 'not', 'nul', 'num', 'obj', 'opt', 'pad', - 'pck', 'pfx', 'pgm', 'pos', 'prc', 'prm', 'pth', 'pub', - 'rcd', 'rdx', 'rec', 'ref', 'rnd', 'rno', 'sep', 'sgn', - 'sin', 'sqr', 'srt', 'ssz', 'stk', 'stp', 'str', 'sub', - 'swp', 'sys', 'tan', 'tbl', 'tcb', 'tmr', 'trx', 'tsk', - 'txh', 'txw', 'ucp', 'ucs', 'upk', 'vin', 'vis', 'xeq', - 'xfa', 'xor', '_obj' - ), - 3 => array( - // System Variables - // Vars that are duplicates of functions - // 'ctl', 'err', 'pfx', 'prm', 'rnd', 'sep', 'sys', - 'bkg', 'chn', 'day', 'dlm', 'dsz', 'eom', 'ers', 'esc', - 'gfn', 'gid', 'hfn', 'hlp', 'hwd', 'lfa', 'lfo', 'lip', - 'lpg', 'lwd', 'mse', 'msl', 'nar', 'nid', 'pgn', 'psz', - 'quo', 'ret', 'sid', 'ssn', 'tim', 'tme', 'tms', 'tsm', - 'uid', 'unt', 'who' - - ), - 4 => array( - // Nomads Variables - '%Flmaint_Lib$', '%Flmaint_Msg$', '%Nomads_Activation_Ok', - '%Nomads_Auto_Qry', '%Nomads_Disable_Debug', - '%Nomads_Disable_Trace', '%Nomads_Fkey_Handler$', - '%Nomads_Fkey_Tbl$', '%Nomads_Notest', '%Nomads_Onexit$', - '%Nomads_Post_Display', '%Nomads_Pre_Display$', - '%Nomads_Process$', '%Nomads_Trace_File$', - '%Nomad_Actv_Folder_Colors$', '%Nomad_Automation_Enabled', - '%Nomad_Auto_Close', '%Nomad_Center_Wdw', '%Nomad_Concurrent_Wdw', - '%Nomad_Custom_Define', '%Nomad_Custom_Dir$', - '%Nomad_Custom_Genmtc', '%Nomad_Custom_Skip_Definition', - '%Nomad_Def_Sfx$', '%Nomad_Enter_Tab', '%Nomad_Esc_Sel', - '%Nomad_Isjavx', '%Nomad_Iswindx', '%Nomad_Iswindx$', - '%Nomad_Menu$', '%Nomad_Menu_Leftedge_Clr$', - '%Nomad_Menu_Textbackground_Clr$', '%Nomad_Mln_Sep$', - '%Nomad_Msgmnt$', '%Nomad_Noplusw', '%Nomad_No_Customize', - '%Nomad_Object_Persistence', '%Nomad_Object_Resize', - '%Nomad_Open_Load', '%Nomad_Override_Font$', - '%Nomad_Palette_Loaded', '%Nomad_Panel_Info_Force', - '%Nomad_Panel_Info_Prog$', '%Nomad_Pnl_Def_Colour$', - '%Nomad_Pnl_Def_Font$', '%Nomad_Prg_Cache', '%Nomad_Qry_Attr$', - '%Nomad_Qry_Btn$', '%Nomad_Qry_Clear_Start', '%Nomad_Qry_Tip$', - '%Nomad_Qry_Wide', '%Nomad_Query_Clear_Status', '%Nomad_Query_Kno', - '%Nomad_Query_No_Gray', '%Nomad_Query_Odb_Ignore', - '%Nomad_Query_Retkno', '%Nomad_Query_Sbar_Max', - '%Nomad_Relative_Wdw', '%Nomad_Save_Qry_Path', '%Nomad_Script_Fn', - '%Nomad_Script_Log', '%Nomad_Script_Wdw', - '%Nomad_Skip_Change_Logic', '%Nomad_Skip_Onselect_Logic', - '%Nomad_Stk$', '%Nomad_Tab_Dir', '%Nomad_Timeout', - '%Nomad_Turbo_Off', '%Nomad_Visual_Effect', - '%Nomad_Visual_Override', '%Nomad_Win_Ver', '%Nomad_Xchar', - '%Nomad_Xmax', '%Nomad_Ychar', '%Nomad_Ymax', '%Scr_Def_Attr$', - '%Scr_Def_H_Fl$', '%Scr_Def_H_Id$', '%Scr_Lib', '%Scr_Lib$', - '%Z__Usr_Sec$', 'Alternate_Panel$', 'Alternate_Panel_Type$', - 'Arg_1$', 'Arg_10$', 'Arg_11$', 'Arg_12$', 'Arg_13$', 'Arg_14$', - 'Arg_15$', 'Arg_16$', 'Arg_17$', 'Arg_18$', 'Arg_19$', 'Arg_2$', - 'Arg_20$', 'Arg_3$', 'Arg_4$', 'Arg_5$', 'Arg_6$', 'Arg_7$', - 'Arg_8$', 'Arg_9$', 'Change_Flg', 'Cmd_Str$', 'Default_Prog$', - 'Disp_Cmd$', 'Entire_Record$', 'Exit_Cmd$', 'Fldr_Default_Prog$', - 'Folder_Id$', 'Id', 'Id$', 'Ignore_Exit', 'Initialize_Flg', - 'Init_Text$', 'Init_Val$', 'Main_Scrn_K$', 'Mnu_Ln$', - 'Next_Folder', 'Next_Id', 'Next_Id$', 'No_Flush', 'Prime_Key$', - 'Prior_Val', 'Prior_Val$', 'Qry_Val$', 'Refresh_Flg', - 'Replacement_Folder$', 'Replacement_Lib$', 'Replacement_Scrn$', - 'Scrn_Id$', 'Scrn_K$', 'Scrn_Lib$', 'Tab_Table$', '_Eom$' - ), - 5 => array( - // Mnemonics - "'!w'", "'*c'", "'*h'", "'*i'", "'*o'", "'*r'", "'*x'", - "'+b'", "'+d'", "'+e'", "'+f'", "'+i'", "'+n'", - "'+p'", "'+s'", "'+t'", "'+u'", "'+v'", "'+w'", "'+x'", - "'+z'", "'-b'", "'-d'", "'-e'", "'-f'", "'-i'", - "'-n'", "'-p'", "'-s'", "'-t'", "'-u'", "'-v'", "'-w'", - "'-x'", "'-z'", "'2d'", "'3d'", "'4d'", "'@@'", "'ab'", - "'arc'", "'at'", "'backgr'", "'bb'", "'be'", "'beep'", - "'bg'", "'bi'", "'bj'", "'bk'", "'black'", "'blue'", - "'bm'", "'bo'", "'box'", "'br'", "'bs'", "'bt'", "'bu'", - "'bw'", "'bx'", "'caption'", "'ce'", "'cf'", "'ch'", - "'ci'", "'circle'", "'cl'", "'colour'", "'cp'", "'cpi'", - "'cr'", "'cs'", "'cursor'", "'cyan''_cyan'", "'dc'", - "'default'", "'df'", "'dialogue'", "'dn'", "'do'", - "'drop'", "'eb'", "'ee'", "'ef'", "'eg'", "'ei'", "'ej'", - "'el'", "'em'", "'eo'", "'ep'", "'er'", "'es'", "'et'", - "'eu'", "'ew'", "'ff'", "'fill'", "'fl'", "'font'", - "'frame'", "'gd'", "'ge'", "'gf'", "'goto'", "'green'", - "'gs'", "'hide'", "'ic'", "'image'", "'jc'", - "'jd'", "'jl'", "'jn'", "'jr'", "'js'", "'l6'", "'l8'", - "'lc'", "'ld'", "'lf'", "'li'", "'line'", "'lm'", - "'lpi'", "'lt'", "'magenta'", "'maxsize'", "'me'", - "'message'", "'minsize'", "'mn'", "'mode'", - "'move'", "'mp'", "'ms'", "'ni'", "'offset'", "'option'", - "'pe'", "'pen'", "'picture'", "'pie'", "'pm'", "'polygon'", - "'pop'", "'ps'", "'push'", "'rb'", "'rc'", "'rectangle'", - "'red'", "'rl'", "'rm'", "'rp'", "'rs'", "'rt'", "'sb'", - "'scroll'", "'sd'", "'se'", "'sf'", "'show'", "'size'", - "'sl'", "'sn'", "'sp'", "'sr'", "'swap'", "'sx'", "'text'", - "'textwdw'", "'tr'", "'tw'", "'uc'", "'up'", "'vt'", "'wa'", - "'wc'", "'wd'", "'wg'", "'white'", "'window'", "'wm'", - "'wp'", "'wr'", "'wrap'", "'ws'", "'wx'", "'xp'", "'yellow'", - "'zx'", "'_black'", "'_blue'", "'_colour'", "'_green'", - "'_magenta'", "'_red'", "'_white'", "'_yellow'" - ), - ), - 'SYMBOLS' => array( - 0 => array('+', '-', '*', '/', '^', '|'), - 1 => array('++', '--', '+=', '-=', '*=', '/=', '^=', '|='), - 2 => array('<', '>', '='), - 3 => array('(', ')', '[', ']', '{', '}'), - 4 => array(',', '@', ';', '\\') - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: navy;', // Directives - 2 => 'color: blue;', // System Functions - 3 => 'color: blue;', // System Variables - 4 => 'color: #6A5ACD; font-style: italic;', // Nomads Global Variables - 5 => 'color: #BDB76B;', // Mnemonics - ), - 'COMMENTS' => array( - 1 => 'color: #008080; font-style: italic;', - 2 => 'color: #008080;', - 'MULTI' => 'color: #008080; font-style: italic;' - ), - 'BRACKETS' => array( - 0 => 'color: #000066;' - ), - 'STRINGS' => array( - 0 => 'color: green;' - ), - 'NUMBERS' => array( - 0 => 'color: #00008B;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;', - 1 => 'color: #000099;', - 2 => 'color: #000099;', - 3 => 'color: #0000C9;', - 4 => 'color: #000099;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 1 => 'color: #006400; font-weight: bold', - 2 => 'color: #6A5ACD;' - ) - ), - 'URLS' => array( - 1 => 'http://www.allbasic.info./wiki/index.php/PX:Directive_{FNAME}', - 2 => 'http://www.allbasic.info./wiki/index.php/PX:System_function_{FNAME}', - 3 => 'http://www.allbasic.info./wiki/index.php/PX:System_variable_{FNAME}', - 4 => 'http://www.allbasic.info./wiki/index.php/PX:Nomads_{FNAME}', - 5 => 'http://www.allbasic.info./wiki/index.php/PX:Mnemonic_{FNAMEU}' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => "'" - ), - 'REGEXPS' => array( - 1 => array( - // Line Labels - GESHI_SEARCH => '([[:space:]])([a-zA-Z_][a-zA-Z0-9_]+)(:)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - 2 => array( - // Global String Variables - GESHI_SEARCH => '(\%)([a-zA-Z_][a-zA-Z0-9_]+)(\$)', - GESHI_REPLACE => '\\1\\2\\3', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'NUMBERS' => GESHI_NEVER - ) - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/library/Vendors/geshi/geshi/purebasic.php b/library/Vendors/geshi/geshi/purebasic.php deleted file mode 100644 index b24986f5..00000000 --- a/library/Vendors/geshi/geshi/purebasic.php +++ /dev/null @@ -1,303 +0,0 @@ - 'PureBasic', - 'COMMENT_SINGLE' => array( 1 => ";" ), - 'COMMENT_MULTI' => array( ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - // Keywords - 'And', 'As', 'Break', 'CallDebugger', 'Case', 'CompilerCase', 'CompilerDefault', 'CompilerElse', 'CompilerEndIf', 'CompilerEndSelect', - 'CompilerError', 'CompilerIf', 'CompilerSelect', 'Continue', 'Data', 'DataSection', 'EndDataSection', 'Debug', 'DebugLevel', 'Declare', - 'DeclareCDLL', 'DeclareDLL', 'Default', 'Define', 'Dim', 'DisableASM', 'DisableDebugger', 'DisableExplicit', 'Else', 'ElseIf', 'EnableASM', - 'EnableDebugger', 'EnableExplicit', 'End', 'EndEnumeration', 'EndIf', 'EndImport', 'EndInterface', 'EndMacro', 'EndProcedure', - 'EndSelect', 'EndStructure', 'EndStructureUnion', 'EndWith', 'Enumeration', 'Extends', 'FakeReturn', 'For', 'Next', 'ForEach', - 'ForEver', 'Global', 'Gosub', 'Goto', 'If', 'Import', 'ImportC', 'IncludeBinary', 'IncludeFile', 'IncludePath', 'Interface', 'Macro', - 'NewList', 'Not', 'Or', 'Procedure', 'ProcedureC', 'ProcedureCDLL', 'ProcedureDLL', 'ProcedureReturn', 'Protected', 'Prototype', - 'PrototypeC', 'Read', 'ReDim', 'Repeat', 'Until', 'Restore', 'Return', 'Select', 'Shared', 'Static', 'Step', 'Structure', 'StructureUnion', - 'Swap', 'To', 'Wend', 'While', 'With', 'XIncludeFile', 'XOr' - ), - 2 => array( - // All Functions - 'Abs', 'ACos', 'Add3DArchive', 'AddBillboard', 'AddDate', 'AddElement', 'AddGadgetColumn', 'AddGadgetItem', - 'AddKeyboardShortcut', 'AddMaterialLayer', 'AddPackFile', 'AddPackMemory', 'AddStatusBarField', 'AddSysTrayIcon', - 'AllocateMemory', 'AmbientColor', 'AnimateEntity', 'Asc', 'ASin', 'ATan', 'AudioCDLength', 'AudioCDName', 'AudioCDStatus', - 'AudioCDTrackLength', 'AudioCDTracks', 'AudioCDTrackSeconds', 'AvailableProgramOutput', 'AvailableScreenMemory', - 'BackColor', 'Base64Decoder', 'Base64Encoder', 'BillboardGroupLocate', 'BillboardGroupMaterial', 'BillboardGroupX', - 'BillboardGroupY', 'BillboardGroupZ', 'BillboardHeight', 'BillboardLocate', 'BillboardWidth', 'BillboardX', 'BillboardY', 'BillboardZ', - 'Bin', 'BinQ', 'Blue', 'Box', 'ButtonGadget', 'ButtonImageGadget', 'CalendarGadget', 'CallCFunction', 'CallCFunctionFast', - 'CallFunction', 'CallFunctionFast', 'CameraBackColor', 'CameraFOV', 'CameraLocate', 'CameraLookAt', 'CameraProjection', - 'CameraRange', 'CameraRenderMode', 'CameraX', 'CameraY', 'CameraZ', 'CatchImage', 'CatchSound', 'CatchSprite', - 'CatchXML', 'ChangeAlphaIntensity', 'ChangeCurrentElement', 'ChangeGamma', 'ChangeListIconGadgetDisplay', - 'ChangeSysTrayIcon', 'CheckBoxGadget', 'CheckEntityCollision', 'CheckFilename', 'ChildXMLNode', 'Chr', 'Circle', - 'ClearBillboards', 'ClearClipboard', 'ClearConsole', 'ClearError', 'ClearGadgetItemList', 'ClearList', 'ClearScreen', 'ClipSprite', - 'CloseConsole', 'CloseDatabase', 'CloseFile', 'CloseGadgetList', 'CloseHelp', 'CloseLibrary', 'CloseNetworkConnection', - 'CloseNetworkServer', 'ClosePack', 'ClosePreferences', 'CloseProgram', 'CloseScreen', 'CloseSubMenu', 'CloseWindow', - 'ColorRequester', 'ComboBoxGadget', 'CompareMemory', 'CompareMemoryString', 'ConnectionID', 'ConsoleColor', - 'ConsoleCursor', 'ConsoleError', 'ConsoleLocate', 'ConsoleTitle', 'ContainerGadget', 'CopyDirectory', 'CopyEntity', - 'CopyFile', 'CopyImage', 'CopyLight', 'CopyMaterial', 'CopyMemory', 'CopyMemoryString', 'CopyMesh', 'CopySprite', - 'CopyTexture', 'CopyXMLNode', 'Cos', 'CountBillboards', 'CountGadgetItems', 'CountLibraryFunctions', 'CountList', - 'CountMaterialLayers', 'CountProgramParameters', 'CountRenderedTriangles', 'CountString', 'CRC32Fingerprint', - 'CreateBillboardGroup', 'CreateCamera', 'CreateDirectory', 'CreateEntity', 'CreateFile', 'CreateGadgetList', - 'CreateImage', 'CreateLight', 'CreateMaterial', 'CreateMenu', 'CreateMesh', 'CreateMutex', 'CreateNetworkServer', - 'CreatePack', 'CreatePalette', 'CreateParticleEmitter', 'CreatePopupMenu', 'CreatePreferences', 'CreateSprite', - 'CreateSprite3D', 'CreateStatusBar', 'CreateTerrain', 'CreateTexture', 'CreateThread', 'CreateToolBar', 'CreateXML', - 'CreateXMLNode', 'DatabaseColumnName', 'DatabaseColumns', 'DatabaseColumnType', 'DatabaseDriverDescription', - 'DatabaseDriverName', 'DatabaseError', 'DatabaseQuery', 'DatabaseUpdate', 'Date', 'DateGadget', 'Day', 'DayOfWeek', - 'DayOfYear', 'DefaultPrinter', 'Defined', 'Delay', 'DeleteDirectory', 'DeleteElement', 'DeleteFile', 'DeleteXMLNode', - 'DESFingerprint', 'DesktopDepth', 'DesktopFrequency', 'DesktopHeight', 'DesktopMouseX', 'DesktopMouseY', 'DesktopName', - 'DesktopWidth', 'DirectoryEntryAttributes', 'DirectoryEntryDate', 'DirectoryEntryName', 'DirectoryEntrySize', - 'DirectoryEntryType', 'DisableGadget', 'DisableMaterialLighting', 'DisableMenuItem', 'DisableToolBarButton', 'DisableWindow', - 'DisASMCommand', 'DisplayAlphaSprite', 'DisplayPalette', 'DisplayPopupMenu', 'DisplayRGBFilter', 'DisplayShadowSprite', - 'DisplaySolidSprite', 'DisplaySprite', 'DisplaySprite3D', 'DisplayTranslucentSprite', 'DisplayTransparentSprite', 'DragFiles', - 'DragImage', 'DragOSFormats', 'DragPrivate', 'DragText', 'DrawAlphaImage', 'DrawImage', 'DrawingBuffer', - 'DrawingBufferPitch', 'DrawingBufferPixelFormat', 'DrawingFont', 'DrawingMode', 'DrawText', 'EditorGadget', - 'egrid_AddColumn', 'egrid_AddRows', 'egrid_AppendCells', 'egrid_ClearRows', 'egrid_CopyCells', - 'egrid_CreateCellCallback', 'egrid_CreateGrid', 'egrid_DeleteCells', 'egrid_FastDeleteCells', 'egrid_FreeGrid', - 'egrid_GetCellSelection', 'egrid_GetCellText', 'egrid_GetColumnOrderArray', 'egrid_HasSelectedCellChanged', 'egrid_Height', - 'egrid_HideEdit', 'egrid_HideGrid', 'egrid_MakeCellVisible', 'egrid_NumberOfColumns', 'egrid_NumberOfRows', - 'egrid_PasteCells', 'egrid_Register', 'egrid_RemoveCellCallback', 'egrid_RemoveColumn', 'egrid_RemoveRow', 'egrid_Resize', - 'egrid_SelectCell', 'egrid_SelectedColumn', 'egrid_SelectedRow', 'egrid_SetCellSelection', 'egrid_SetCellText', - 'egrid_SetColumnOrderArray', 'egrid_SetHeaderFont', 'egrid_SetHeaderHeight', 'egrid_SetOption', 'egrid_Width', 'egrid_x', - 'egrid_y', 'EjectAudioCD', 'ElapsedMilliseconds', 'Ellipse', 'EnableGadgetDrop', 'EnableGraphicalConsole', - 'EnableWindowDrop', 'EnableWorldCollisions', 'EnableWorldPhysics', 'Engine3DFrameRate', 'EntityAngleX', - 'EntityAnimationLength', 'EntityLocate', 'EntityMaterial', 'EntityMesh', 'EntityPhysicBody', 'EntityRenderMode', - 'EntityX', 'EntityY', 'EntityZ', 'EnvironmentVariableName', 'EnvironmentVariableValue', 'Eof', 'EventClient', - 'EventDropAction', 'EventDropBuffer', 'EventDropFiles', 'EventDropImage', 'EventDropPrivate', 'EventDropSize', - 'EventDropText', 'EventDropType', 'EventDropX', 'EventDropY', 'EventGadget', 'EventlParam', 'EventMenu', 'EventServer', - 'EventType', 'EventWindow', 'EventwParam', 'ExamineDatabaseDrivers', 'ExamineDesktops', 'ExamineDirectory', - 'ExamineEnvironmentVariables', 'ExamineIPAddresses', 'ExamineJoystick', 'ExamineKeyboard', 'ExamineLibraryFunctions', - 'ExamineMouse', 'ExaminePreferenceGroups', 'ExaminePreferenceKeys', 'ExamineScreenModes', 'ExamineWorldCollisions', - 'ExamineXMLAttributes', 'ExplorerComboGadget', 'ExplorerListGadget', 'ExplorerTreeGadget', 'ExportXML', - 'ExportXMLSize', 'FileBuffersSize', 'FileID', 'FileSeek', 'FileSize', 'FillArea', 'FindString', 'FinishDirectory', - 'FirstDatabaseRow', 'FirstElement', 'FirstWorldCollisionEntity', 'FlipBuffers', 'FlushFileBuffers', 'Fog', 'FontID', - 'FontRequester', 'FormatDate', 'FormatXML', 'Frame3DGadget', 'FreeBillboardGroup', 'FreeCamera', 'FreeEntity', - 'FreeFont', 'FreeGadget', 'FreeImage', 'FreeLight', 'FreeMaterial', 'FreeMemory', 'FreeMenu', 'FreeMesh', - 'FreeModule', 'FreeMovie', 'FreeMutex', 'FreePalette', 'FreeParticleEmitter', 'FreeSound', 'FreeSprite', - 'FreeSprite3D', 'FreeStatusBar', 'FreeTexture', 'FreeToolBar', 'FreeXML', 'FrontColor', 'GadgetHeight', 'GadgetID', - 'GadgetItemID', 'GadgetToolTip', 'GadgetType', 'GadgetWidth', 'GadgetX', 'GadgetY', 'GetActiveGadget', - 'GetActiveWindow', 'GetClientIP', 'GetClientPort', 'GetClipboardImage', 'GetClipboardText', 'GetCurrentDirectory', - 'GetCurrentEIP', 'GetDatabaseDouble', 'GetDatabaseFloat', 'GetDatabaseLong', 'GetDatabaseQuad', 'GetDatabaseString', - 'GetDisASMString', 'GetEntityAnimationTime', 'GetEntityFriction', 'GetEntityMass', 'GetEnvironmentVariable', - 'GetErrorAddress', 'GetErrorCounter', 'GetErrorDescription', 'GetErrorDLL', 'GetErrorLineNR', 'GetErrorModuleName', - 'GetErrorNumber', 'GetErrorRegister', 'GetExtensionPart', 'GetFileAttributes', 'GetFileDate', 'GetFilePart', 'GetFunction', - 'GetFunctionEntry', 'GetGadgetAttribute', 'GetGadgetColor', 'GetGadgetData', 'GetGadgetFont', - 'GetGadgetItemAttribute', 'GetGadgetItemColor', 'GetGadgetItemData', 'GetGadgetItemState', 'GetGadgetItemText', - 'GetGadgetState', 'GetGadgetText', 'GetHomeDirectory', 'GetMenuItemState', 'GetMenuItemText', 'GetMenuTitleText', - 'GetModulePosition', 'GetModuleRow', 'GetPaletteColor', 'GetPathPart', 'GetTemporaryDirectory', - 'GetToolBarButtonState', 'GetWindowColor', 'GetWindowState', 'GetWindowTitle', 'GetXMLAttribute', 'GetXMLEncoding', - 'GetXMLNodeName', 'GetXMLNodeOffset', 'GetXMLNodeText', 'GetXMLStandalone', 'GoToEIP', 'GrabImage', 'GrabSprite', - 'Green', 'Hex', 'HexQ', 'HideBillboardGroup', 'HideEntity', 'HideGadget', 'HideLight', 'HideMenu', 'HideParticleEmitter', - 'HideWindow', 'Hostname', 'Hour', 'HyperLinkGadget', 'ImageDepth', 'ImageGadget', 'ImageHeight', 'ImageID', - 'ImageOutput', 'ImageWidth', 'InitAudioCD', 'InitEngine3D', 'InitJoystick', 'InitKeyboard', 'InitMouse', 'InitMovie', - 'InitNetwork', 'InitPalette', 'InitScintilla', 'InitSound', 'InitSprite', 'InitSprite3D', 'Inkey', 'Input', 'InputRequester', - 'InsertElement', 'Int', 'IntQ', 'IPAddressField', 'IPAddressGadget', 'IPString', 'IsBillboardGroup', 'IsCamera', 'IsDatabase', - 'IsDirectory', 'IsEntity', 'IsFile', 'IsFont', 'IsGadget', 'IsImage', 'IsLibrary', 'IsLight', 'IsMaterial', 'IsMenu', 'IsMesh', - 'IsModule', 'IsMovie', 'IsPalette', 'IsParticleEmitter', 'IsProgram', 'IsScreenActive', 'IsSound', 'IsSprite', 'IsSprite3D', - 'IsStatusBar', 'IsSysTrayIcon', 'IsTexture', 'IsThread', 'IsToolBar', 'IsWindow', 'IsXML', 'JoystickAxisX', 'JoystickAxisY', - 'JoystickButton', 'KeyboardInkey', 'KeyboardMode', 'KeyboardPushed', 'KeyboardReleased', 'KillProgram', 'KillThread', - 'LastElement', 'LCase', 'Left', 'Len', 'LibraryFunctionAddress', 'LibraryFunctionName', 'LibraryID', 'LightColor', - 'LightLocate', 'LightSpecularColor', 'Line', 'LineXY', 'ListIconGadget', 'ListIndex', 'ListViewGadget', 'LoadFont', - 'LoadImage', 'LoadMesh', 'LoadModule', 'LoadMovie', 'LoadPalette', 'LoadSound', 'LoadSprite', 'LoadTexture', - 'LoadWorld', 'LoadXML', 'Loc', 'LockMutex', 'Lof', 'Log', 'Log10', 'LSet', 'LTrim', 'MainXMLNode', 'MakeIPAddress', - 'MaterialAmbientColor', 'MaterialBlendingMode', 'MaterialDiffuseColor', 'MaterialFilteringMode', 'MaterialID', - 'MaterialShadingMode', 'MaterialSpecularColor', 'MD5FileFingerprint', 'MD5Fingerprint', 'MDIGadget', 'MemorySize', - 'MemoryStringLength', 'MenuBar', 'MenuHeight', 'MenuID', 'MenuItem', 'MenuTitle', 'MeshID', 'MessageRequester', - 'Mid', 'Minute', 'ModuleVolume', 'Month', 'MouseButton', 'MouseDeltaX', 'MouseDeltaY', 'MouseLocate', 'MouseWheel', - 'MouseX', 'MouseY', 'MoveBillboard', 'MoveBillboardGroup', 'MoveCamera', 'MoveEntity', 'MoveLight', 'MoveMemory', - 'MoveParticleEmitter', 'MoveXMLNode', 'MovieAudio', 'MovieHeight', 'MovieInfo', 'MovieLength', 'MovieSeek', - 'MovieStatus', 'MovieWidth', 'NetworkClientEvent', 'NetworkServerEvent', 'NewPrinterPage', 'NextDatabaseDriver', - 'NextDatabaseRow', 'NextDirectoryEntry', 'NextElement', 'NextEnvironmentVariable', 'NextIPAddress', - 'NextLibraryFunction', 'NextPackFile', 'NextPreferenceGroup', 'NextPreferenceKey', 'NextScreenMode', - 'NextSelectedFileName', 'NextWorldCollision', 'NextXMLAttribute', 'NextXMLNode', 'OffsetOf', 'OnErrorExit', - 'OnErrorGosub', 'OnErrorGoto', 'OnErrorResume', 'OpenComPort', 'OpenConsole', 'OpenDatabase', - 'OpenDatabaseRequester', 'OpenFile', 'OpenFileRequester', 'OpenGadgetList', 'OpenHelp', 'OpenLibrary', - 'OpenNetworkConnection', 'OpenPack', 'OpenPreferences', 'OpenScreen', 'OpenSubMenu', 'OpenWindow', - 'OpenWindowedScreen', 'OptionGadget', 'OSVersion', 'PackerCallback', 'PackFileSize', 'PackMemory', 'PanelGadget', - 'ParentXMLNode', 'Parse3DScripts', 'ParseDate', 'ParticleColorFader', 'ParticleColorRange', 'ParticleEmissionRate', - 'ParticleEmitterDirection', 'ParticleEmitterLocate', 'ParticleEmitterX', 'ParticleEmitterY', 'ParticleEmitterZ', - 'ParticleMaterial', 'ParticleSize', 'ParticleTimeToLive', 'ParticleVelocity', 'PathRequester', 'PauseAudioCD', - 'PauseMovie', 'PauseThread', 'PeekB', 'PeekC', 'PeekD', 'PeekF', 'PeekL', 'PeekQ', 'PeekS', 'PeekW', 'PlayAudioCD', - 'PlayModule', 'PlayMovie', 'PlaySound', 'Plot', 'Point', 'PokeB', 'PokeC', 'PokeD', 'PokeF', 'PokeL', 'PokeQ', 'PokeS', - 'PokeW', 'Pow', 'PreferenceComment', 'PreferenceGroup', 'PreferenceGroupName', 'PreferenceKeyName', - 'PreferenceKeyValue', 'PreviousDatabaseRow', 'PreviousElement', 'PreviousXMLNode', 'Print', 'PrinterOutput', - 'PrinterPageHeight', 'PrinterPageWidth', 'PrintN', 'PrintRequester', 'ProgramExitCode', 'ProgramFilename', - 'ProgramID', 'ProgramParameter', 'ProgramRunning', 'ProgressBarGadget', 'Random', 'RandomSeed', 'RawKey', - 'ReadByte', 'ReadCharacter', 'ReadConsoleData', 'ReadData', 'ReadDouble', 'ReadFile', 'ReadFloat', 'ReadLong', - 'ReadPreferenceDouble', 'ReadPreferenceFloat', 'ReadPreferenceLong', 'ReadPreferenceQuad', - 'ReadPreferenceString', 'ReadProgramData', 'ReadProgramError', 'ReadProgramString', 'ReadQuad', 'ReadString', - 'ReadStringFormat', 'ReadWord', 'ReAllocateMemory', 'ReceiveNetworkData', 'ReceiveNetworkFile', 'Red', - 'Reg_DeleteEmptyKey', 'Reg_DeleteKey', 'Reg_DeleteValue', 'Reg_GetErrorMsg', 'Reg_GetErrorNr', - 'Reg_GetValueTyp', 'Reg_ListSubKey', 'Reg_ListSubValue', 'Reg_ReadBinary', 'Reg_ReadExpandString', - 'Reg_ReadLong', 'Reg_ReadMultiLineString', 'Reg_ReadQuad', 'Reg_ReadString', 'Reg_WriteBinary', - 'Reg_WriteExpandString', 'Reg_WriteLong', 'Reg_WriteMultiLineString', 'Reg_WriteQuad', 'Reg_WriteString', - 'ReleaseMouse', 'RemoveBillboard', 'RemoveEnvironmentVariable', 'RemoveGadgetColumn', 'RemoveGadgetItem', - 'RemoveKeyboardShortcut', 'RemoveMaterialLayer', 'RemovePreferenceGroup', 'RemovePreferenceKey', - 'RemoveString', 'RemoveSysTrayIcon', 'RemoveXMLAttribute', 'RenameFile', 'RenderMovieFrame', 'RenderWorld', - 'ReplaceString', 'ResetList', 'ResizeBillboard', 'ResizeEntity', 'ResizeGadget', 'ResizeImage', 'ResizeMovie', - 'ResizeParticleEmitter', 'ResizeWindow', 'ResolveXMLAttributeName', 'ResolveXMLNodeName', 'ResumeAudioCD', - 'ResumeMovie', 'ResumeThread', 'RGB', 'Right', 'RootXMLNode', 'RotateBillboardGroup', 'RotateCamera', - 'RotateEntity', 'RotateMaterial', 'RotateSprite3D', 'Round', 'RSet', 'RTrim', 'RunProgram', 'SaveFileRequester', - 'SaveImage', 'SaveSprite', 'SaveXML', 'ScaleEntity', 'ScaleMaterial', 'ScintillaGadget', 'ScintillaSendMessage', - 'ScreenID', 'ScreenModeDepth', 'ScreenModeHeight', 'ScreenModeRefreshRate', 'ScreenModeWidth', - 'ScreenOutput', 'ScrollAreaGadget', 'ScrollBarGadget', 'ScrollMaterial', 'Second', 'SecondWorldCollisionEntity', - 'SelectedFilePattern', 'SelectedFontColor', 'SelectedFontName', 'SelectedFontSize', 'SelectedFontStyle', - 'SelectElement', 'SendNetworkData', 'SendNetworkFile', 'SendNetworkString', 'SetActiveGadget', - 'SetActiveWindow', 'SetClipboardImage', 'SetClipboardText', 'SetCurrentDirectory', 'SetDragCallback', - 'SetDropCallback', 'SetEntityAnimationTime', 'SetEntityFriction', 'SetEntityMass', 'SetEnvironmentVariable', - 'SetErrorNumber', 'SetFileAttributes', 'SetFileDate', 'SetFrameRate', 'SetGadgetAttribute', 'SetGadgetColor', - 'SetGadgetData', 'SetGadgetFont', 'SetGadgetItemAttribute', 'SetGadgetItemColor', 'SetGadgetItemData', - 'SetGadgetItemState', 'SetGadgetItemText', 'SetGadgetState', 'SetGadgetText', 'SetMenuItemState', - 'SetMenuItemText', 'SetMenuTitleText', 'SetMeshData', 'SetModulePosition', 'SetPaletteColor', 'SetRefreshRate', - 'SetToolBarButtonState', 'SetWindowCallback', 'SetWindowColor', 'SetWindowState', 'SetWindowTitle', - 'SetXMLAttribute', 'SetXMLEncoding', 'SetXMLNodeName', 'SetXMLNodeOffset', 'SetXMLNodeText', - 'SetXMLStandalone', 'Sin', 'SizeOf', 'SkyBox', 'SkyDome', 'SmartWindowRefresh', 'SortArray', 'SortList', - 'SortStructuredArray', 'SortStructuredList', 'SoundFrequency', 'SoundPan', 'SoundVolume', 'Space', - 'SpinGadget', 'SplitterGadget', 'Sprite3DBlendingMode', 'Sprite3DQuality', 'SpriteCollision', 'SpriteDepth', - 'SpriteHeight', 'SpriteID', 'SpriteOutput', 'SpritePixelCollision', 'SpriteWidth', 'Sqr', 'Start3D', 'StartDrawing', - 'StartPrinting', 'StartSpecialFX', 'StatusBarHeight', 'StatusBarIcon', 'StatusBarID', 'StatusBarText', - 'StickyWindow', 'Stop3D', 'StopAudioCD', 'StopDrawing', 'StopModule', 'StopMovie', 'StopPrinting', - 'StopSound', 'StopSpecialFX', 'Str', 'StrD', 'StrF', 'StringByteLength', 'StringField', 'StringGadget', 'StrQ', - 'StrU', 'Subsystem', 'SwapElements', 'SysTrayIconToolTip', 'Tan', 'TerrainHeight', 'TextGadget', 'TextHeight', - 'TextureHeight', 'TextureID', 'TextureOutput', 'TextureWidth', 'TextWidth', 'ThreadID', 'ThreadPriority', - 'ToolBarHeight', 'ToolBarID', 'ToolBarImageButton', 'ToolBarSeparator', 'ToolBarStandardButton', - 'ToolBarToolTip', 'TrackBarGadget', 'TransformSprite3D', 'TransparentSpriteColor', 'TreeGadget', 'Trim', - 'TruncateFile', 'TryLockMutex', 'UCase', 'UnlockMutex', 'UnpackMemory', 'UseAudioCD', 'UseBuffer', - 'UseGadgetList', 'UseJPEGImageDecoder', 'UseJPEGImageEncoder', 'UseODBCDatabase', 'UseOGGSoundDecoder', - 'UsePNGImageDecoder', 'UsePNGImageEncoder', 'UseTGAImageDecoder', 'UseTIFFImageDecoder', 'Val', 'ValD', - 'ValF', 'ValQ', 'WaitProgram', 'WaitThread', 'WaitWindowEvent', 'WebGadget', 'WebGadgetPath', 'WindowEvent', - 'WindowHeight', 'WindowID', 'WindowMouseX', 'WindowMouseY', 'WindowOutput', 'WindowWidth', 'WindowX', - 'WindowY', 'WorldGravity', 'WorldShadows', 'WriteByte', 'WriteCharacter', 'WriteConsoleData', 'WriteData', - 'WriteDouble', 'WriteFloat', 'WriteLong', 'WritePreferenceDouble', 'WritePreferenceFloat', 'WritePreferenceLong', - 'WritePreferenceQuad', 'WritePreferenceString', 'WriteProgramData', 'WriteProgramString', 'WriteProgramStringN', - 'WriteQuad', 'WriteString', 'WriteStringFormat', 'WriteStringN', 'WriteWord', 'XMLAttributeName', 'XMLAttributeValue', - 'XMLChildCount', 'XMLError', 'XMLErrorLine', 'XMLErrorPosition', 'XMLNodeFromID', 'XMLNodeFromPath', 'XMLNodePath', - 'XMLNodeType', 'XMLStatus', 'Year', 'ZoomSprite3D' - ), - 3 => array( - // some ASM instructions - 'AAA', 'AAD', 'AAM', 'AAS', 'ADC', 'ADD', 'AND', 'ARPL', 'BOUND', 'BSF', 'BSR', 'BSWAP', 'BT', 'BTC', 'BTR', - 'BTS', 'CALL', 'CBW', 'CDQ', 'CLC', 'CLD', 'CLI', 'CLTS', 'CMC', 'CMP', 'CMPS', 'CMPXCHG', 'CWD', 'CWDE', - 'DAA', 'DAS', 'DB', 'DD', 'DEC', 'DIV', 'DW', 'ENTER', 'ESC', 'F2XM1', 'FABS', 'FADD', 'FCHS', 'FCLEX', - 'FCOM', 'FDIV', 'FDIVR', 'FFREE', 'FINCSTP', 'FINIT', 'FLD', 'FLD1', 'FLDCW', 'FMUL', 'FNOP', 'FPATAN', - 'FPREM', 'FRNDINT', 'FSAVE', 'FSCALE', 'FSETPM', 'FSIN', 'FSQRT', 'FST', 'FSTENV', 'FSTSW', 'FSUB', - 'FSUBR', 'FTST', 'FUCOM', 'FWAIT', 'FXAM', 'FXCH', 'FXTRACT', 'FYL2X', 'FYL2XP1', 'HLT', 'IDIV', 'IMUL', - 'IN', 'INC', 'INS', 'INT', 'INTO', 'INVLPG', 'IRET', 'IRETD', 'JA', 'JAE', 'JB', 'JBE', 'JC', 'JCXZ', 'JE', 'JECXZ', - 'JG', 'JGE', 'JL', 'JLE', 'JMP', 'JNA', 'JNAE', 'JNB', 'JNBE', 'JNC', 'JNE', 'JNG', 'JNGE', 'JNL', 'JNLE', 'JNO', 'JNP', - 'JNS', 'JNZ', 'JO', 'JP', 'JPE', 'JPO', 'JS', 'JZ', 'LAHF', 'LAR', 'LDS', 'LEA', 'LEAVE', 'LES', 'LFS', 'LGDT', 'LGS', - 'LIDT', 'LLDT', 'LMSW', 'LOCK', 'LODS', 'LOOP', 'LOOPE', 'LOOPNE', 'LOOPNZ', 'LOOPZ', 'LSL', 'LSS', 'LTR', - 'MOV', 'MOVS', 'MOVSX', 'MOVZX', 'MUL', 'NEG', 'NOP', 'NOT', 'OR', 'OUT', 'OUTS', 'POP', 'POPA', 'POPAD', - 'POPF', 'POPFD', 'PUSH', 'PUSHA', 'PUSHAD', 'PUSHF', 'PUSHFD', 'RCL', 'RCR', 'REP', 'REPE', 'REPNE', - 'REPNZ', 'REPZ', 'RET', 'RETF', 'ROL', 'ROR', 'SAHF', 'SAL', 'SAR', 'SBB', 'SCAS', 'SETAE', 'SETB', 'SETBE', - 'SETC', 'SETE', 'SETG', 'SETGE', 'SETL', 'SETLE', 'SETNA', 'SETNAE', 'SETNB', 'SETNC', 'SETNE', 'SETNG', - 'SETNGE', 'SETNL', 'SETNLE', 'SETNO', 'SETNP', 'SETNS', 'SETNZ', 'SETO', 'SETP', 'SETPE', 'SETPO', - 'SETS', 'SETZ', 'SGDT', 'SHL', 'SHLD', 'SHR', 'SHRD', 'SIDT', 'SLDT', 'SMSW', 'STC', 'STD', 'STI', - 'STOS', 'STR', 'SUB', 'TEST', 'VERR', 'VERW', 'WAIT', 'WBINVD', 'XCHG', 'XLAT', 'XLATB', 'XOR' - ) - ), - 'SYMBOLS' => array( - '(', ')', '+', '-', '*', '/', '\\', '>', '<', '=', '<=', '>=', '&', '|', '!', '~', '<>', '>>', '<<', '%' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000066; font-weight: bold;', - 2 => 'color: #0000ff;', - 3 => 'color: #000fff;' - ), - 'COMMENTS' => array( - 1 => 'color: #ff0000; font-style: italic;', - 'MULTI' => 'color: #ff0000; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000066;' - ), - 'STRINGS' => array( - 0 => 'color: #009900;' - ), - 'NUMBERS' => array( - 0 => 'color: #CC0000;' - ), - 'METHODS' => array( - 1 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000066;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - 1 => '\\' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => false, - 1 => false - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/python.php b/library/Vendors/geshi/geshi/python.php deleted file mode 100644 index 1be7e295..00000000 --- a/library/Vendors/geshi/geshi/python.php +++ /dev/null @@ -1,237 +0,0 @@ - 'Python', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - //Longest quotemarks ALWAYS first - 'QUOTEMARKS' => array('"""', '"', "'"), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - - /* - ** Set 1: reserved words - ** http://python.org/doc/current/ref/keywords.html - */ - 1 => array( - 'and', 'del', 'for', 'is', 'raise', 'assert', 'elif', 'from', 'lambda', 'return', 'break', - 'else', 'global', 'not', 'try', 'class', 'except', 'if', 'or', 'while', 'continue', 'exec', - 'import', 'pass', 'yield', 'def', 'finally', 'in', 'print', 'with', 'as' - ), - - /* - ** Set 2: builtins - ** http://python.org/doc/current/lib/built-in-funcs.html - */ - 2 => array( - '__import__', 'abs', 'basestring', 'bool', 'callable', 'chr', 'classmethod', 'cmp', - 'compile', 'complex', 'delattr', 'dict', 'dir', 'divmod', 'enumerate', 'eval', 'execfile', - 'file', 'filter', 'float', 'frozenset', 'getattr', 'globals', 'hasattr', 'hash', 'help', - 'hex', 'id', 'input', 'int', 'isinstance', 'issubclass', 'iter', 'len', 'list', 'locals', - 'long', 'map', 'max', 'min', 'object', 'oct', 'open', 'ord', 'pow', 'property', 'range', - 'raw_input', 'reduce', 'reload', 'reversed', 'round', 'set', 'setattr', 'slice', - 'sorted', 'staticmethod', 'str', 'sum', 'super', 'tuple', 'type', 'unichr', 'unicode', - 'vars', 'xrange', 'zip', - // Built-in constants: http://python.org/doc/current/lib/node35.html - 'False', 'True', 'None', 'NotImplemented', 'Ellipsis', - // Built-in Exceptions: http://python.org/doc/current/lib/module-exceptions.html - 'Exception', 'StandardError', 'ArithmeticError', 'LookupError', 'EnvironmentError', - 'AssertionError', 'AttributeError', 'EOFError', 'FloatingPointError', 'IOError', - 'ImportError', 'IndexError', 'KeyError', 'KeyboardInterrupt', 'MemoryError', 'NameError', - 'NotImplementedError', 'OSError', 'OverflowError', 'ReferenceError', 'RuntimeError', - 'StopIteration', 'SyntaxError', 'SystemError', 'SystemExit', 'TypeError', - 'UnboundlocalError', 'UnicodeError', 'UnicodeEncodeError', 'UnicodeDecodeError', - 'UnicodeTranslateError', 'ValueError', 'WindowsError', 'ZeroDivisionError', 'Warning', - 'UserWarning', 'DeprecationWarning', 'PendingDeprecationWarning', 'SyntaxWarning', - 'RuntimeWarning', 'FutureWarning', - // self: this is a common python convention (but not a reserved word) - 'self', - // other - 'any', 'all' - ), - - /* - ** Set 3: standard library - ** http://python.org/doc/current/lib/modindex.html - */ - 3 => array( - '__builtin__', '__future__', '__main__', '_winreg', 'aifc', 'AL', 'al', 'anydbm', - 'array', 'asynchat', 'asyncore', 'atexit', 'audioop', 'base64', 'BaseHTTPServer', - 'Bastion', 'binascii', 'binhex', 'bisect', 'bsddb', 'bz2', 'calendar', 'cd', 'cgi', - 'CGIHTTPServer', 'cgitb', 'chunk', 'cmath', 'cmd', 'code', 'codecs', 'codeop', - 'collections', 'colorsys', 'commands', 'compileall', 'compiler', - 'ConfigParser', 'Cookie', 'cookielib', 'copy', 'copy_reg', 'cPickle', 'crypt', - 'cStringIO', 'csv', 'curses', 'datetime', 'dbhash', 'dbm', 'decimal', 'DEVICE', - 'difflib', 'dircache', 'dis', 'distutils', 'dl', 'doctest', 'DocXMLRPCServer', 'dumbdbm', - 'dummy_thread', 'dummy_threading', 'email', 'encodings', 'errno', 'exceptions', 'fcntl', - 'filecmp', 'fileinput', 'FL', 'fl', 'flp', 'fm', 'fnmatch', 'formatter', 'fpectl', - 'fpformat', 'ftplib', 'gc', 'gdbm', 'getopt', 'getpass', 'gettext', 'GL', 'gl', 'glob', - 'gopherlib', 'grp', 'gzip', 'heapq', 'hmac', 'hotshot', 'htmlentitydefs', 'htmllib', - 'HTMLParser', 'httplib', 'imageop', 'imaplib', 'imgfile', 'imghdr', 'imp', 'inspect', - 'itertools', 'jpeg', 'keyword', 'linecache', 'locale', 'logging', 'mailbox', 'mailcap', - 'marshal', 'math', 'md5', 'mhlib', 'mimetools', 'mimetypes', 'MimeWriter', 'mimify', - 'mmap', 'msvcrt', 'multifile', 'mutex', 'netrc', 'new', 'nis', 'nntplib', 'operator', - 'optparse', 'os', 'ossaudiodev', 'parser', 'pdb', 'pickle', 'pickletools', 'pipes', - 'pkgutil', 'platform', 'popen2', 'poplib', 'posix', 'posixfile', 'pprint', 'profile', - 'pstats', 'pty', 'pwd', 'py_compile', 'pyclbr', 'pydoc', 'Queue', 'quopri', 'random', - 're', 'readline', 'repr', 'resource', 'rexec', 'rfc822', 'rgbimg', 'rlcompleter', - 'robotparser', 'sched', 'ScrolledText', 'select', 'sets', 'sgmllib', 'sha', 'shelve', - 'shlex', 'shutil', 'signal', 'SimpleHTTPServer', 'SimpleXMLRPCServer', 'site', 'smtpd', - 'smtplib', 'sndhdr', 'socket', 'SocketServer', 'stat', 'statcache', 'statvfs', 'string', - 'StringIO', 'stringprep', 'struct', 'subprocess', 'sunau', 'SUNAUDIODEV', 'sunaudiodev', - 'symbol', 'sys', 'syslog', 'tabnanny', 'tarfile', 'telnetlib', 'tempfile', 'termios', - 'test', 'textwrap', 'thread', 'threading', 'time', 'timeit', 'Tix', 'Tkinter', 'token', - 'tokenize', 'traceback', 'tty', 'turtle', 'types', 'unicodedata', 'unittest', 'urllib2', - 'urllib', 'urlparse', 'user', 'UserDict', 'UserList', 'UserString', 'uu', 'warnings', - 'wave', 'weakref', 'webbrowser', 'whichdb', 'whrandom', 'winsound', 'xdrlib', 'xml', - 'xmllib', 'xmlrpclib', 'zipfile', 'zipimport', 'zlib', - // Python 3.0 - 'bytes', 'bytearray' - ), - - /* - ** Set 4: special methods - ** http://python.org/doc/current/ref/specialnames.html - */ - 4 => array( - /* - // Iterator types: http://python.org/doc/current/lib/typeiter.html - '__iter__', 'next', - // String types: http://python.org/doc/current/lib/string-methods.html - 'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', - 'find', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', - 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'replace', 'rfind', 'rindex', 'rjust', - 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', - 'translate', 'upper', 'zfill', - */ - // Basic customization: http://python.org/doc/current/ref/customization.html - '__new__', '__init__', '__del__', '__repr__', '__str__', - '__lt__', '__le__', '__eq__', '__ne__', '__gt__', '__ge__', '__cmp__', '__rcmp__', - '__hash__', '__nonzero__', '__unicode__', '__dict__', - // Attribute access: http://python.org/doc/current/ref/attribute-access.html - '__setattr__', '__delattr__', '__getattr__', '__getattribute__', '__get__', '__set__', - '__delete__', '__slots__', - // Class creation, callable objects - '__metaclass__', '__call__', - // Container types: http://python.org/doc/current/ref/sequence-types.html - '__len__', '__getitem__', '__setitem__', '__delitem__', '__iter__', '__contains__', - '__getslice__', '__setslice__', '__delslice__', - // Numeric types: http://python.org/doc/current/ref/numeric-types.html - '__abs__','__add__','__and__','__coerce__','__div__','__divmod__','__float__', - '__hex__','__iadd__','__isub__','__imod__','__idiv__','__ipow__','__iand__', - '__ior__','__ixor__', '__ilshift__','__irshift__','__invert__','__int__', - '__long__','__lshift__', - '__mod__','__mul__','__neg__','__oct__','__or__','__pos__','__pow__', - '__radd__','__rdiv__','__rdivmod__','__rmod__','__rpow__','__rlshift__','__rrshift__', - '__rshift__','__rsub__','__rmul__','__rand__','__rxor__','__ror__', - '__sub__','__xor__' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '*', '&', '%', '!', ';', '<', '>', '?', '`' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #ff7700;font-weight:bold;', // Reserved - 2 => 'color: #008000;', // Built-ins + self - 3 => 'color: #dc143c;', // Standard lib - 4 => 'color: #0000cd;' // Special methods - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: black;' - ), - 'STRINGS' => array( - 0 => 'color: #483d8b;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff4500;' - ), - 'METHODS' => array( - 1 => 'color: black;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/q.php b/library/Vendors/geshi/geshi/q.php deleted file mode 100644 index 9629ded4..00000000 --- a/library/Vendors/geshi/geshi/q.php +++ /dev/null @@ -1,149 +0,0 @@ -) - * ------------------------- - * - Fix the handling of single line comments - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'q/kdb+', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - 2 => '/ \s\/.*/', # This needs to get fixed up, since it won't catch some instances - # Multi line comments (Moved from REGEXPS) - 3 => '/^\/\s*?\n.*?\n\\\s*?\n/smi' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array(), - 'TAB_WIDTH' => 4, - 'KEYWORDS' => array( - 1 => array( - 'abs', 'acos', 'all', 'and', 'any', 'asc', 'asin', 'asof', 'atan', 'attr', 'avg', 'avgs', 'bin', 'ceiling', - 'cols', 'cor', 'cos', 'count', 'cov', 'cross', 'cut', 'deltas', 'desc', 'dev', 'differ', 'distinct', - 'div', 'each', 'enlist', 'eval', 'except', 'exec', 'exit', 'exp', 'fills', 'first', 'flip', 'floor', - 'fkeys', 'get', 'getenv', 'group', 'gtime', 'hclose', 'hcount', 'hdel', 'hopen', 'hsym', 'iasc', 'idesc', - 'in', 'insert', 'inter', 'inv', 'joins', 'key', 'keys', 'last', 'like', 'load', 'log', 'lower', - 'lsq', 'ltime', 'ltrim', 'mavg', 'max', 'maxs', 'mcount', 'md5', 'mdev', 'med', 'meta', 'min', 'mins', - 'mmax', 'mmin', 'mmu', 'mod', 'msum', 'neg', 'next', 'not', 'null', 'or', 'over', 'parse', 'peach', - 'plist', 'prd', 'prds', 'prev', 'rand', 'rank', 'ratios', 'raze', 'read0', 'read1', 'reciprocal', - 'reverse', 'rload', 'rotate', 'rsave', 'rtrim', 'save', 'scan', 'set', 'setenv', 'show', 'signum', - 'sin', 'sqrt', 'ss', 'ssr', 'string', 'sublist', 'sum', 'sums', 'sv', 'system', 'tables', 'tan', 'til', 'trim', - 'txf', 'type', 'ungroup', 'union', 'upper', 'upsert', 'value', 'var', 'view', 'views', 'vs', - 'wavg', 'within', 'wsum', 'xasc', 'xbar', 'xcol', 'xcols', 'xdesc', 'xexp', 'xgroup', 'xkey', - 'xlog', 'xprev', 'xrank' - ), - # kdb database template keywords - 2 => array( - 'aj', 'by', 'delete', 'fby', 'from', 'ij', 'lj', 'pj', 'select', 'uj', 'update', 'where', 'wj', - ), - ), - 'SYMBOLS' => array( - '?', '#', ',', '_', '@', '.', '^', '~', '$', '!', '\\', '\\', '/:', '\:', "'", "':", '::', '+', '-', '%', '*' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000099; font-weight: bold;', - 2 => 'color: #009900; font-weight: bold;', - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #666666; font-style: italic;', - 3 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 1 => 'color: #000099; font-weight: bold;', - 2 => 'color: #660099; font-weight: bold;', - 3 => 'color: #660099; font-weight: bold;', - 4 => 'color: #660099; font-weight: bold;', - 5 => 'color: #006699; font-weight: bold;', - 'HARD' => '', - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #990000;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000dd;', - GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;', - GESHI_NUMBER_OCT_PREFIX => 'color: #208080;', - GESHI_NUMBER_HEX_PREFIX => 'color: #208080;', - GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;', - GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI => 'color:#800080;' - ), - 'METHODS' => array( - 1 => 'color: #202020;', - 2 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - 2 => 'color: #999900;', - ), - 'SCRIPT' => array( - ) - ), - 'REGEXPS' => array( - # Symbols - 2 => '`[^\s"]*', - ), - 'URLS' => array( - 1 => '', - 2 => '', - ), -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/qbasic.php b/library/Vendors/geshi/geshi/qbasic.php deleted file mode 100644 index da437225..00000000 --- a/library/Vendors/geshi/geshi/qbasic.php +++ /dev/null @@ -1,158 +0,0 @@ - 'QBasic/QuickBASIC', - 'COMMENT_SINGLE' => array(1 => "'"), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - //Single-Line Comments using REM command - 2 => "/\bREM.*?$/i", - //Line numbers - 3 => "/^\s*\d+/im" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'DO', 'LOOP', 'WHILE', 'WEND', 'THEN', 'ELSE', 'ELSEIF', 'IF', - 'FOR', 'TO', 'NEXT', 'STEP', 'GOTO', 'GOSUB', 'CALL', 'CALLS', - 'SUB', 'FUNCTION', 'RETURN', 'RESUME', 'SELECT', 'CASE', 'UNTIL' - ), - 3 => array( - 'ABS', 'ABSOLUTE', 'ACCESS', 'ALIAS', 'AND', 'ANY', 'APPEND', 'AS', 'ASC', 'ATN', - 'BASE', 'BEEP', 'BINARY', 'BLOAD', 'BSAVE', 'BYVAL', - 'CDBL', 'CDECL', 'CHAIN', 'CHDIR', 'CHR$', 'CINT', 'CIRCLE', 'CLEAR', - 'CLNG', 'CLOSE', 'CLS', 'COM', 'COMMAND$', 'COMMON', 'CONST', 'COS', 'CSNG', - 'CSRLIN', 'CVD', 'CVDMBF', 'CVI', 'CVL', 'CVS', 'CVSMDF', 'DATA', 'DATE$', - 'DECLARE', 'DEF', 'FN', 'SEG', 'DEFDBL', 'DEFINT', 'DEFLNG', 'DEFSNG', 'DEFSTR', - 'DIM', 'DOUBLE', 'DRAW', 'END', 'ENVIRON', 'ENVIRON$', 'EOF', 'EQV', 'ERASE', - 'ERDEV', 'ERDEV$', 'ERL', 'ERR', 'ERROR', 'EXIT', 'EXP', 'FIELD', 'FILEATTR', - 'FILES', 'FIX', 'FRE', 'FREEFILE', 'GET', 'HEX$', 'IMP', 'INKEY$', - 'INP', 'INPUT', 'INPUT$', 'INSTR', 'INT', 'INTEGER', 'IOCTL', 'IOCTL$', 'IS', - 'KEY', 'KILL', 'LBOUND', 'LCASE$', 'LEFT$', 'LEN', 'LET', 'LINE', 'LIST', 'LOC', - 'LOCAL', 'LOCATE', 'LOCK', 'LOF', 'LOG', 'LONG', 'LPOS', 'LPRINT', - 'LSET', 'LTRIM$', 'MID$', 'MKD$', 'MKDIR', 'MKDMBF$', 'MKI$', 'MKL$', - 'MKS$', 'MKSMBF$', 'MOD', 'NAME', 'NOT', 'OCT$', 'OFF', 'ON', 'PEN', 'PLAY', - 'OPEN', 'OPTION', 'OR', 'OUT', 'OUTPUT', - 'PAINT', 'PALETTE', 'PCOPY', 'PEEK', 'PMAP', 'POINT', 'POKE', 'POS', 'PRESET', - 'PRINT', 'PSET', 'PUT', 'RANDOM', 'RANDOMIZE', 'READ', 'REDIM', 'RESET', - 'RESTORE', 'RIGHT$', 'RMDIR', 'RND', 'RSET', 'RTRIM$', 'RUN', 'SADD', 'SCREEN', - 'SEEK', 'SETMEM', 'SGN', 'SHARED', 'SHELL', 'SIGNAL', 'SIN', 'SINGLE', 'SLEEP', - 'SOUND', 'SPACE$', 'SPC', 'SQR', 'STATIC', 'STICK', 'STOP', 'STR$', 'STRIG', - 'STRING', 'STRING$', 'SWAP', 'SYSTEM', 'TAB', 'TAN', 'TIME$', 'TIMER', - 'TROFF', 'TRON', 'TYPE', 'UBOUND', 'UCASE$', 'UEVENT', 'UNLOCK', 'USING', 'VAL', - 'VARPTR', 'VARPTR$', 'VARSEG', 'VIEW', 'WAIT', 'WIDTH', 'WINDOW', 'WRITE', 'XOR' - ) - ), - 'SYMBOLS' => array( - '(', ')', ',', '+', '-', '*', '/', '=', '<', '>', '^' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 3 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #a1a100;', - 3 => 'color: #000066;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080;', - 2 => 'color: #808080;', - 3 => 'color: #8080C0;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 1 => 'color: #cc66cc;', - 2 => 'color: #339933;' - ) - ), - 'URLS' => array( - 1 => '', - 3 => 'http://www.qbasicnews.com/qboho/qck{FNAMEL}.shtml' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 1 => '&(?:H[0-9a-fA-F]+|O[0-7]+)(?!\w)', - 2 => '#[0-9]+(?!\w)' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 8 -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/rails.php b/library/Vendors/geshi/geshi/rails.php deleted file mode 100644 index 64d83ea1..00000000 --- a/library/Vendors/geshi/geshi/rails.php +++ /dev/null @@ -1,406 +0,0 @@ - 'Rails', - 'COMMENT_SINGLE' => array(1 => "#"), - 'COMMENT_MULTI' => array("=begin" => "=end"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', '`','\''), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'alias', 'and', 'begin', 'break', 'case', 'class', - 'def', 'defined', 'do', 'else', 'elsif', 'end', - 'ensure', 'for', 'if', 'in', 'module', 'while', - 'next', 'not', 'or', 'redo', 'rescue', 'yield', - 'retry', 'super', 'then', 'undef', 'unless', - 'until', 'when', 'BEGIN', 'END', 'include' - ), - 2 => array( - '__FILE__', '__LINE__', 'false', 'nil', 'self', 'true', - 'return' - ), - 3 => array( - 'Array', 'Float', 'Integer', 'String', 'at_exit', - 'autoload', 'binding', 'caller', 'catch', 'chop', 'chop!', - 'chomp', 'chomp!', 'eval', 'exec', 'exit', 'exit!', 'fail', - 'fork', 'format', 'gets', 'global_variables', 'gsub', 'gsub!', - 'iterator?', 'lambda', 'load', 'local_variables', 'loop', - 'open', 'p', 'print', 'printf', 'proc', 'putc', 'puts', - 'raise', 'rand', 'readline', 'readlines', 'require', 'select', - 'sleep', 'split', 'sprintf', 'srand', 'sub', 'sub!', 'syscall', - 'system', 'trace_var', 'trap', 'untrace_var' - ), - 4 => array( - 'Abbrev', 'ArgumentError', 'Base64', 'Benchmark', - 'Benchmark::Tms', 'Bignum', 'Binding', 'CGI', 'CGI::Cookie', - 'CGI::HtmlExtension', 'CGI::QueryExtension', - 'CGI::Session', 'CGI::Session::FileStore', - 'CGI::Session::MemoryStore', 'Class', 'Comparable', 'Complex', - 'ConditionVariable', 'Continuation', 'Data', - 'Date', 'DateTime', 'Delegator', 'Dir', 'EOFError', 'ERB', - 'ERB::Util', 'Enumerable', 'Enumerable::Enumerator', 'Errno', - 'Exception', 'FalseClass', 'File', - 'File::Constants', 'File::Stat', 'FileTest', 'FileUtils', - 'FileUtils::DryRun', 'FileUtils::NoWrite', - 'FileUtils::StreamUtils_', 'FileUtils::Verbose', 'Find', - 'Fixnum', 'FloatDomainError', 'Forwardable', 'GC', 'Generator', - 'Hash', 'IO', 'IOError', 'Iconv', 'Iconv::BrokenLibrary', - 'Iconv::Failure', 'Iconv::IllegalSequence', - 'Iconv::InvalidCharacter', 'Iconv::InvalidEncoding', - 'Iconv::OutOfRange', 'IndexError', 'Interrupt', 'Kernel', - 'LoadError', 'LocalJumpError', 'Logger', 'Logger::Application', - 'Logger::Error', 'Logger::Formatter', 'Logger::LogDevice', - 'Logger::LogDevice::LogDeviceMutex', 'Logger::Severity', - 'Logger::ShiftingError', 'Marshal', 'MatchData', - 'Math', 'Matrix', 'Method', 'Module', 'Mutex', 'NameError', - 'NameError::message', 'NilClass', 'NoMemoryError', - 'NoMethodError', 'NotImplementedError', 'Numeric', 'Object', - 'ObjectSpace', 'Observable', 'PStore', 'PStore::Error', - 'Pathname', 'Precision', 'Proc', 'Process', 'Process::GID', - 'Process::Status', 'Process::Sys', 'Process::UID', 'Queue', - 'Range', 'RangeError', 'Rational', 'Regexp', 'RegexpError', - 'RuntimeError', 'ScriptError', 'SecurityError', 'Set', - 'Shellwords', 'Signal', 'SignalException', 'SimpleDelegator', - 'SingleForwardable', 'Singleton', 'SingletonClassMethods', - 'SizedQueue', 'SortedSet', 'StandardError', 'StringIO', - 'StringScanner', 'StringScanner::Error', 'Struct', 'Symbol', - 'SyncEnumerator', 'SyntaxError', 'SystemCallError', - 'SystemExit', 'SystemStackError', 'Tempfile', - 'Test::Unit::TestCase', 'Test::Unit', 'Test', 'Thread', - 'ThreadError', 'ThreadGroup', - 'ThreadsWait', 'Time', 'TrueClass', 'TypeError', 'URI', - 'URI::BadURIError', 'URI::Error', 'URI::Escape', 'URI::FTP', - 'URI::Generic', 'URI::HTTP', 'URI::HTTPS', - 'URI::InvalidComponentError', 'URI::InvalidURIError', - 'URI::LDAP', 'URI::MailTo', 'URI::REGEXP', - 'URI::REGEXP::PATTERN', 'UnboundMethod', 'Vector', 'YAML', - 'ZeroDivisionError', 'Zlib', - 'Zlib::BufError', 'Zlib::DataError', 'Zlib::Deflate', - 'Zlib::Error', 'Zlib::GzipFile', 'Zlib::GzipFile::CRCError', - 'Zlib::GzipFile::Error', 'Zlib::GzipFile::LengthError', - 'Zlib::GzipFile::NoFooter', 'Zlib::GzipReader', - 'Zlib::GzipWriter', 'Zlib::Inflate', 'Zlib::MemError', - 'Zlib::NeedDict', 'Zlib::StreamEnd', 'Zlib::StreamError', - 'Zlib::VersionError', - 'Zlib::ZStream', - 'ActionController::AbstractRequest', - 'ActionController::Assertions::DomAssertions', - 'ActionController::Assertions::ModelAssertions', - 'ActionController::Assertions::ResponseAssertions', - 'ActionController::Assertions::RoutingAssertions', - 'ActionController::Assertions::SelectorAssertions', - 'ActionController::Assertions::TagAssertions', - 'ActionController::Base', - 'ActionController::Benchmarking::ClassMethods', - 'ActionController::Caching', - 'ActionController::Caching::Actions', - 'ActionController::Caching::Actions::ActionCachePath', - 'ActionController::Caching::Fragments', - 'ActionController::Caching::Pages', - 'ActionController::Caching::Pages::ClassMethods', - 'ActionController::Caching::Sweeping', - 'ActionController::Components', - 'ActionController::Components::ClassMethods', - 'ActionController::Components::InstanceMethods', - 'ActionController::Cookies', - 'ActionController::Filters::ClassMethods', - 'ActionController::Flash', - 'ActionController::Flash::FlashHash', - 'ActionController::Helpers::ClassMethods', - 'ActionController::Integration::Session', - 'ActionController::IntegrationTest', - 'ActionController::Layout::ClassMethods', - 'ActionController::Macros', - 'ActionController::Macros::AutoComplete::ClassMethods', - 'ActionController::Macros::InPlaceEditing::ClassMethods', - 'ActionController::MimeResponds::InstanceMethods', - 'ActionController::Pagination', - 'ActionController::Pagination::ClassMethods', - 'ActionController::Pagination::Paginator', - 'ActionController::Pagination::Paginator::Page', - 'ActionController::Pagination::Paginator::Window', - 'ActionController::Rescue', 'ActionController::Resources', - 'ActionController::Routing', - 'ActionController::Scaffolding::ClassMethods', - 'ActionController::SessionManagement::ClassMethods', - 'ActionController::Streaming', 'ActionController::TestProcess', - 'ActionController::TestUploadedFile', - 'ActionController::UrlWriter', - 'ActionController::Verification::ClassMethods', - 'ActionMailer::Base', 'ActionView::Base', - 'ActionView::Helpers::ActiveRecordHelper', - 'ActionView::Helpers::AssetTagHelper', - 'ActionView::Helpers::BenchmarkHelper', - 'ActionView::Helpers::CacheHelper', - 'ActionView::Helpers::CaptureHelper', - 'ActionView::Helpers::DateHelper', - 'ActionView::Helpers::DebugHelper', - 'ActionView::Helpers::FormHelper', - 'ActionView::Helpers::FormOptionsHelper', - 'ActionView::Helpers::FormTagHelper', - 'ActionView::Helpers::JavaScriptHelper', - 'ActionView::Helpers::JavaScriptMacrosHelper', - 'ActionView::Helpers::NumberHelper', - 'ActionView::Helpers::PaginationHelper', - 'ActionView::Helpers::PrototypeHelper', - 'ActionView::Helpers::PrototypeHelper::JavaScriptGenerator::GeneratorMethods', - 'ActionView::Helpers::ScriptaculousHelper', - 'ActionView::Helpers::TagHelper', - 'ActionView::Helpers::TextHelper', - 'ActionView::Helpers::UrlHelper', 'ActionView::Partials', - 'ActionWebService::API::Method', 'ActionWebService::Base', - 'ActionWebService::Client::Soap', - 'ActionWebService::Client::XmlRpc', - 'ActionWebService::Container::ActionController::ClassMethods', - 'ActionWebService::Container::Delegated::ClassMethods', - 'ActionWebService::Container::Direct::ClassMethods', - 'ActionWebService::Invocation::ClassMethods', - 'ActionWebService::Scaffolding::ClassMethods', - 'ActionWebService::SignatureTypes', 'ActionWebService::Struct', - 'ActiveRecord::Acts::List::ClassMethods', - 'ActiveRecord::Acts::List::InstanceMethods', - 'ActiveRecord::Acts::NestedSet::ClassMethods', - 'ActiveRecord::Acts::NestedSet::InstanceMethods', - 'ActiveRecord::Acts::Tree::ClassMethods', - 'ActiveRecord::Acts::Tree::InstanceMethods', - 'ActiveRecord::Aggregations::ClassMethods', - 'ActiveRecord::Associations::ClassMethods', - 'ActiveRecord::AttributeMethods::ClassMethods', - 'ActiveRecord::Base', - 'ActiveRecord::Calculations::ClassMethods', - 'ActiveRecord::Callbacks', - 'ActiveRecord::ConnectionAdapters::AbstractAdapter', - 'ActiveRecord::ConnectionAdapters::Column', - 'ActiveRecord::ConnectionAdapters::DB2Adapter', - 'ActiveRecord::ConnectionAdapters::DatabaseStatements', - 'ActiveRecord::ConnectionAdapters::FirebirdAdapter', - 'ActiveRecord::ConnectionAdapters::FrontBaseAdapter', - 'ActiveRecord::ConnectionAdapters::MysqlAdapter', - 'ActiveRecord::ConnectionAdapters::OpenBaseAdapter', - 'ActiveRecord::ConnectionAdapters::OracleAdapter', - 'ActiveRecord::ConnectionAdapters::PostgreSQLAdapter', - 'ActiveRecord::ConnectionAdapters::Quoting', - 'ActiveRecord::ConnectionAdapters::SQLServerAdapter', - 'ActiveRecord::ConnectionAdapters::SQLiteAdapter', - 'ActiveRecord::ConnectionAdapters::SchemaStatements', - 'ActiveRecord::ConnectionAdapters::SybaseAdapter::ColumnWithIdentity', - 'ActiveRecord::ConnectionAdapters::SybaseAdapterContext', - 'ActiveRecord::ConnectionAdapters::TableDefinition', - 'ActiveRecord::Errors', 'ActiveRecord::Locking', - 'ActiveRecord::Locking::Optimistic', - 'ActiveRecord::Locking::Optimistic::ClassMethods', - 'ActiveRecord::Locking::Pessimistic', - 'ActiveRecord::Migration', 'ActiveRecord::Observer', - 'ActiveRecord::Observing::ClassMethods', - 'ActiveRecord::Reflection::ClassMethods', - 'ActiveRecord::Reflection::MacroReflection', - 'ActiveRecord::Schema', 'ActiveRecord::Timestamp', - 'ActiveRecord::Transactions::ClassMethods', - 'ActiveRecord::Validations', - 'ActiveRecord::Validations::ClassMethods', - 'ActiveRecord::XmlSerialization', - 'ActiveSupport::CachingTools::HashCaching', - 'ActiveSupport::CoreExtensions::Array::Conversions', - 'ActiveSupport::CoreExtensions::Array::Grouping', - 'ActiveSupport::CoreExtensions::Date::Conversions', - 'ActiveSupport::CoreExtensions::Hash::Conversions', - 'ActiveSupport::CoreExtensions::Hash::Conversions::ClassMethods', - 'ActiveSupport::CoreExtensions::Hash::Diff', - 'ActiveSupport::CoreExtensions::Hash::Keys', - 'ActiveSupport::CoreExtensions::Hash::ReverseMerge', - 'ActiveSupport::CoreExtensions::Integer::EvenOdd', - 'ActiveSupport::CoreExtensions::Integer::Inflections', - 'ActiveSupport::CoreExtensions::Numeric::Bytes', - 'ActiveSupport::CoreExtensions::Numeric::Time', - 'ActiveSupport::CoreExtensions::Pathname::CleanWithin', - 'ActiveSupport::CoreExtensions::Range::Conversions', - 'ActiveSupport::CoreExtensions::String::Access', - 'ActiveSupport::CoreExtensions::String::Conversions', - 'ActiveSupport::CoreExtensions::String::Inflections', - 'ActiveSupport::CoreExtensions::String::Iterators', - 'ActiveSupport::CoreExtensions::String::StartsEndsWith', - 'ActiveSupport::CoreExtensions::String::Unicode', - 'ActiveSupport::CoreExtensions::Time::Calculations', - 'ActiveSupport::CoreExtensions::Time::Calculations::ClassMethods', - 'ActiveSupport::CoreExtensions::Time::Conversions', - 'ActiveSupport::Multibyte::Chars', - 'ActiveSupport::Multibyte::Handlers::UTF8Handler', - 'Breakpoint', 'Builder::BlankSlate', 'Builder::XmlMarkup', - 'Fixtures', - 'HTML::Selector', 'HashWithIndifferentAccess', 'Inflector', - 'Inflector::Inflections', 'Mime', 'Mime::Type', - 'OCI8AutoRecover', 'TimeZone', 'XmlSimple' - ), - 5 => array( - 'image_tag', 'link_to', 'link_to_remote', 'javascript_include_tag', - 'assert_equal', 'assert_not_equal', 'before_filter', - 'after_filter', 'render', 'redirect_to', 'hide_action', - 'render_to_string', 'url_for', 'controller_name', - 'controller_class_name', 'controller_path', 'session', - 'render_component', 'render_component_as_string', 'cookie', - 'layout', 'flash', 'auto_complete_for', 'in_place_editor_for', - 'respond_to', 'paginate', 'current_page', 'each', 'first', - 'first_page', 'last_page', 'last', 'length', 'new', 'page_count', - 'previous', 'scaffold', 'send_data', - 'send_file', 'deliver', 'receive', 'error_messages_for', - 'error_message_on', 'form', 'input', 'stylesheet_link_tag', - 'stylesheet_path', 'content_for', 'select_date', 'ago', - 'month', 'day', 'check_box', 'fields_for', 'file_field', - 'form_for', 'hidden_field', 'text_area', 'password_field', - 'collection_select', 'options_for_select', - 'options_from_collection_for_select', 'file_field_tag', - 'form_for_tag', 'hidden_field_tag', 'text_area_tag', - 'password_field_tag', 'link_to_function', 'javascript_tag', - 'human_size', 'number_to_currency', 'pagination_links', - 'form_remote_tag', 'form_remote_for', - 'submit_to_remote', 'remote_function', 'observe_form', - 'observe_field', 'remote_form_for', 'options_for_ajax', 'alert', - 'call', 'assign', 'show', 'hide', 'insert_html', 'sortable', - 'toggle', 'visual_effect', 'replace', 'replace_html', 'remove', - 'save', 'save!', 'draggable', 'drop_receiving', 'literal', - 'draggable_element', 'drop_receiving_element', 'sortable_element', - 'content_tag', 'tag', 'link_to_image', 'link_to_if', - 'link_to_unless', 'mail_to', 'link_image_to', 'button_to', - 'current_page?', 'act_as_list', 'act_as_nested', 'act_as_tree', - 'has_many', 'has_one', 'belongs_to', 'has_many_and_belogns_to', - 'delete', 'destroy', 'destroy_all', 'clone', 'deep_clone', 'copy', - 'update', 'table_name', 'primary_key', 'sum', 'maximun', 'minimum', - 'count', 'size', 'after_save', 'after_create', 'before_save', - 'before_create', 'add_to_base', 'errors', 'add', 'validate', - 'validates_presence_of', 'validates_numericality_of', - 'validates_uniqueness_of', 'validates_length_of', - 'validates_format_of', 'validates_size_of', 'to_a', 'to_s', - 'to_xml', 'to_i' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '%', '&', '*', '|', '/', '<', '>', - '+', '-', '=>', '<<' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color:#9966CC; font-weight:bold;', - 2 => 'color:#0000FF; font-weight:bold;', - 3 => 'color:#CC0066; font-weight:bold;', - 4 => 'color:#CC00FF; font-weight:bold;', - 5 => 'color:#5A0A0A; font-weight:bold;' - ), - 'COMMENTS' => array( - 1 => 'color:#008000; font-style:italic;', - 'MULTI' => 'color:#000080; font-style:italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color:#000099;' - ), - 'BRACKETS' => array( - 0 => 'color:#006600; font-weight:bold;' - ), - 'STRINGS' => array( - 0 => 'color:#996600;' - ), - 'NUMBERS' => array( - 0 => 'color:#006666;' - ), - 'METHODS' => array( - 1 => 'color:#9900CC;' - ), - 'SYMBOLS' => array( - 0 => 'color:#006600; font-weight:bold;' - ), - 'REGEXPS' => array( - 0 => 'color:#ff6633; font-weight:bold;', - 1 => 'color:#0066ff; font-weight:bold;', - 2 => 'color:#6666ff; font-weight:bold;', - 3 => 'color:#ff3333; font-weight:bold;' - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - 0 => array( - GESHI_SEARCH => "([[:space:]])(\\$[a-zA-Z_][a-zA-Z0-9_]*)", - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 1 => array( - GESHI_SEARCH => "([[:space:]])(@[a-zA-Z_][a-zA-Z0-9_]*)", - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 2 => "([A-Z][a-zA-Z0-9_]*::)+[A-Z][a-zA-Z0-9_]*", //Static OOP References - 3 => array( - GESHI_SEARCH => "([[:space:]]|\[|\()(:[a-zA-Z_][a-zA-Z0-9_]*)", - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - '<%' => '%>' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/rebol.php b/library/Vendors/geshi/geshi/rebol.php deleted file mode 100644 index a3889eec..00000000 --- a/library/Vendors/geshi/geshi/rebol.php +++ /dev/null @@ -1,196 +0,0 @@ - 'REBOL', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array('rebol [' => ']', 'comment [' => ']'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'binary!','block!','char!','date!','decimal!','email!','file!', - 'hash!','integer!','issue!','list!','logic!','money!','none!', - 'object!','paren!','pair!','path!','string!','tag!','time!', - 'tuple!','url!', - ), - 2 => array( - 'all','any','attempt','break','catch','compose','disarm','dispatch', - 'do','do-events','does','either','else','exit','for','forall', - 'foreach','forever','forskip','func','function','halt','has','if', - 'launch','loop','next','quit','reduce','remove-each','repeat', - 'return','secure','switch','throw','try','until','wait','while', - ), - 3 => array( - 'about','abs','absolute','add','alert','alias','alter','and', - 'any-block?','any-function?','any-string?','any-type?','any-word?', - 'append','arccosine','arcsine','arctangent','array','as-pair', - 'ask','at','back','binary?','bind','bitset?','block?','brightness?', - 'browse','build-tag','caret-to-offset','center-face','change', - 'change-dir','char?','charset','checksum','choose','clean-path', - 'clear','clear-fields','close','comment','complement','component?', - 'compress','confirm','connected?','construct','context','copy', - 'cosine','datatype?','date?','debase','decimal?','decode-cgi', - 'decompress','dehex','delete','detab','difference','dir?','dirize', - 'divide','dump-face','dump-obj','echo','email?','empty?','enbase', - 'entab','equal?','error?','even?','event?','exclude','exists?', - 'exp','extract','fifth','file?','find','first','flash','focus', - 'form','found?','fourth','free','function?','get','get-modes', - 'get-word?','greater-or-equal?','greater?','hash?','head','head?', - 'help','hide','hide-popup','image?','import-email','in', - 'in-window?','index?','info?','inform','input','input?','insert', - 'integer?','intersect','issue?','join','last','layout','length?', - 'lesser-or-equal?','lesser?','library?','license','link?', - 'list-dir','list?','lit-path?','lit-word?','load','load-image', - 'log-10','log-2','log-e','logic?','lowercase','make','make-dir', - 'make-face','max','maximum','maximum-of','min','minimum', - 'minimum-of','modified?','mold','money?','multiply','native?', - 'negate','negative?','none?','not','not-equal?','now','number?', - 'object?','odd?','offset-to-caret','offset?','op?','open','or', - 'pair?','paren?','parse','parse-xml','path?','pick','poke','port?', - 'positive?','power','prin','print','probe','protect', - 'protect-system','query','random','read','read-io','recycle', - 'refinement?','reform','rejoin','remainder','remold','remove', - 'rename', - //'repeat', - 'repend','replace','request','request-color','request-date', - 'request-download','request-file','request-list','request-pass', - 'request-text','resend','reverse','routine?','same?','save', - 'script?','second','select','send','series?','set','set-modes', - 'set-net','set-path?','set-word?','show','show-popup','sign?', - 'sine','size-text','size?','skip','sort','source','span?', - 'split-path','square-root','strict-equal?','strict-not-equal?', - 'string?','struct?','stylize','subtract','suffix?','tag?','tail', - 'tail?','tangent','third','time?','to','to-binary','to-bitset', - 'to-block','to-char','to-date','to-decimal','to-email','to-file', - 'to-get-word','to-hash','to-hex','to-idate','to-image','to-integer', - 'to-issue','to-list','to-lit-path','to-lit-word','to-local-file', - 'to-logic','to-money','to-pair','to-paren','to-path', - 'to-rebol-file','to-refinement','to-set-path','to-set-word', - 'to-string','to-tag','to-time','to-tuple','to-url','to-word', - 'trace','trim','tuple?','type?','unfocus','union','unique', - 'unprotect','unset','unset?','unview','update','upgrade', - 'uppercase','url?','usage','use','value?','view','viewed?','what', - 'what-dir','within?','word?','write','write-io','xor','zero?', - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '!', '@', '%', '&', '*', '|', '/', '<', '>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', -// 2 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff;' - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' -// 2 => 'includes/dico_rebol.php?word={FNAME}', -// 3 => 'includes/dico_rebol.php?word={FNAME}' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 0 => "[\\$]{1,2}[a-zA-Z_][a-zA-Z0-9_]*", - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/reg.php b/library/Vendors/geshi/geshi/reg.php deleted file mode 100644 index bb2e845f..00000000 --- a/library/Vendors/geshi/geshi/reg.php +++ /dev/null @@ -1,233 +0,0 @@ - 'Microsoft Registry', - 'COMMENT_SINGLE' => array(1 =>';'), - 'COMMENT_MULTI' => array( ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( -// 1 => array(), -// 2 => array(), - /* Registry Key Constants Not Used */ - 3 => array( - 'HKEY_LOCAL_MACHINE', - 'HKEY_CLASSES_ROOT', - 'HKEY_CURRENT_USER', - 'HKEY_USERS', - 'HKEY_CURRENT_CONFIG', - 'HKEY_DYN_DATA', - 'HKLM', 'HKCR', 'HKCU', 'HKU', 'HKCC', 'HKDD' - ) - ), - 'SYMBOLS' => array( - '=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, -// 1 => false, -// 2 => false, - 3 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( -// 1 => 'color: #00CCFF;', -// 2 => 'color: #0000FF;', - 3 => 'color: #800000;' - ), - 'COMMENTS' => array( - 1 => 'color: #009900;' - ), - 'ESCAPE_CHAR' => array( - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #009900;' - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 0 => 'color: #00CCFF;', - 1 => 'color: #0000FF;', - 2 => '', - 3 => 'color: #0000FF;', - 4 => 'color: #0000FF;', - 5 => '', - 6 => '', - 7 => '', - 8 => 'color: #FF6600;', - ) - ), - 'URLS' => array( -// 1 => '', -// 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - // Highlight Key Delimiters - 0 => array( - GESHI_SEARCH => '((^|\\n)\\s*)(\\\\\\[(.*)\\\\\\])(\\s*(\\n|$))', - GESHI_REPLACE => '\\3', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\5' -// GESHI_CLASS => 'kw1' - ), - // Highlight File Format Header Version 5 - 1 => array( - GESHI_SEARCH => '(^\s*)(Windows Registry Editor Version \d+\.\d+)(\s*$)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3', - GESHI_CLASS => 'geshi_registry_header' - ), - // Highlight File Format Header Version 4 - 2 => array( - GESHI_SEARCH => '(^\\s*)(REGEDIT\s?\d+)(\s*$)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3', - GESHI_CLASS => 'geshi_registry_header' - ), - // Highlight dword: 32 bit integer values - 3 => array( - GESHI_SEARCH => '(=\s*)(dword:[0-9a-fA-F]{8})(\s*$)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' -// GESHI_CLASS => 'kw2' - ), - // Highlight variable names - 4 => array( - GESHI_SEARCH => '(^\s*)(\".*?\")(\s*=)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3', - GESHI_CLASS => 'geshi_variable' - ), - // Highlight String Values - 5 => array( - GESHI_SEARCH => '(=\s*)(\".*?\")(\s*$)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3', - GESHI_CLASS => 'st0' - ), - // Highlight Hexadecimal Values (Single-Line and Multi-Line) - 6 => array( - GESHI_SEARCH => '(=\s*\n?\s*)(hex:[0-9a-fA-F]{2}(,(\\\s*\n\s*)?[0-9a-fA-F]{2})*)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '', - GESHI_CLASS => 'kw2' - ), - // Highlight Default Variable - 7 => array( - GESHI_SEARCH => '(^\s*)(@)(\s*=)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3', - GESHI_CLASS => 'geshi_variable' - ), - // Highlight GUID's found anywhere. - 8 => array( - GESHI_SEARCH => '(\{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\})', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '', - GESHI_AFTER => '', - GESHI_CLASS => 'geshi_guid' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'NUMBERS' => GESHI_NEVER, - ) - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/robots.php b/library/Vendors/geshi/geshi/robots.php deleted file mode 100644 index baf286b7..00000000 --- a/library/Vendors/geshi/geshi/robots.php +++ /dev/null @@ -1,100 +0,0 @@ - 'robots.txt', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array(1 => "/^Comment:.*?/m"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'Allow', 'Crawl-delay', 'Disallow', 'Request-rate', 'Robot-version', - 'Sitemap', 'User-agent', 'Visit-time' - ) - ), - 'SYMBOLS' => array( - ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://www.robotstxt.org/wc/norobots.html' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/rpmspec.php b/library/Vendors/geshi/geshi/rpmspec.php deleted file mode 100644 index 96dc9556..00000000 --- a/library/Vendors/geshi/geshi/rpmspec.php +++ /dev/null @@ -1,133 +0,0 @@ - 'RPM Specification File', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'QUOTEMARKS' => array('"','`'), - 'ESCAPE_CHAR' => '\\', - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - ), - 'KEYWORDS' => array( - ), - 'SYMBOLS' => array( - '<', '>', '=', - '!', '@', '~', '&', '|', '^', - '+','-', '*', '/', '%', - ',', ';', '?', '.', ':' - ), - 'STYLES' => array( - 'KEYWORDS' => array( - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;', - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - 1 => 'color: #0000ff;', - 2 => 'color: #009999;', - 3 => 'color: #000000; font-weight: bold;', - 4 => 'color: #ff6600; font-style: italic;', - ), - 'SCRIPT' => array( - ) - ), - 'REGEXPS' => array( - 1 => array( - // search for generic macros - GESHI_SEARCH => '(%{?[a-zA-Z0-9_]+}?)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '', - ), - 2 => array( - // search for special macros - GESHI_SEARCH => '(%(?:define|patch\d*|mklibname|mkrel|configure\S+|makeinstall\S+|make_session|make|defattr|config|doc|setup))', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '', - GESHI_AFTER => '', - ), - 3 => array ( - // special definitions - GESHI_SEARCH => '((?:summary|license|buildroot|buildrequires|provides|version|release|source\d*|group|buildarch|autoreqprov|provides|obsoletes|vendor|distribution|suggests|autoreq|autoprov|conflicts|name|url|requires|patch\d*):)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '', - GESHI_AFTER => '', - ), - 4 => array ( - // section delimiting words - GESHI_SEARCH => '(%(?:description|package|prep|build|install|clean|postun|preun|post|pre|files|changelog))', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '', - GESHI_AFTER => '', - ), - ), - 'URLS' => array(), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array(), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/rsplus.php b/library/Vendors/geshi/geshi/rsplus.php deleted file mode 100644 index b73f5ea7..00000000 --- a/library/Vendors/geshi/geshi/rsplus.php +++ /dev/null @@ -1,483 +0,0 @@ - 'R / S+', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', "'"), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'else','global','in', 'otherwise','persistent', - ), - 2 => array( // base package - '$.package_version', '$<-', '$<-.data.frame', 'abbreviate', 'abs', 'acos', 'acosh', 'addNA', 'addTaskCallback', - 'agrep', 'alist', 'all', 'all.equal', 'all.equal.character', 'all.equal.default', 'all.equal.factor', - 'all.equal.formula', 'all.equal.language', 'all.equal.list', 'all.equal.numeric', 'all.equal.POSIXct', - 'all.equal.raw', 'all.names', 'all.vars', 'any', 'aperm', 'append', 'apply', 'Arg', 'args', 'array', 'as.array', - 'as.array.default', 'as.call', 'as.character', 'as.character.condition', 'as.character.Date', 'as.character.default', - 'as.character.error', 'as.character.factor', 'as.character.hexmode', 'as.character.numeric_version', 'as.character.octmode', - 'as.character.POSIXt', 'as.character.srcref', 'as.complex', 'as.data.frame', 'as.data.frame.array', 'as.data.frame.AsIs', - 'as.data.frame.character', 'as.data.frame.complex', 'as.data.frame.data.frame', 'as.data.frame.Date', 'as.data.frame.default', - 'as.data.frame.difftime', 'as.data.frame.factor', 'as.data.frame.integer', 'as.data.frame.list', 'as.data.frame.logical', - 'as.data.frame.matrix', 'as.data.frame.model.matrix', 'as.data.frame.numeric', 'as.data.frame.numeric_version', - 'as.data.frame.ordered', 'as.data.frame.POSIXct', 'as.data.frame.POSIXlt', 'as.data.frame.raw', 'as.data.frame.table', - 'as.data.frame.ts', 'as.data.frame.vector', 'as.Date', 'as.Date.character', 'as.Date.date', 'as.Date.dates', - 'as.Date.default', 'as.Date.factor', 'as.Date.numeric', 'as.Date.POSIXct', 'as.Date.POSIXlt', 'as.difftime', 'as.double', - 'as.double.difftime', 'as.double.POSIXlt', 'as.environment', 'as.expression', 'as.expression.default', 'as.factor', - 'as.function', 'as.function.default', 'as.hexmode', 'as.integer', 'as.list', 'as.list.data.frame', 'as.list.default', - 'as.list.environment', 'as.list.factor', 'as.list.function', 'as.list.numeric_version', 'as.logical', 'as.matrix', - 'as.matrix.data.frame', 'as.matrix.default', 'as.matrix.noquote', 'as.matrix.POSIXlt', 'as.name', 'as.null', 'as.null.default', - 'as.numeric', 'as.numeric_version', 'as.octmode', 'as.ordered', 'as.package_version', 'as.pairlist', 'as.POSIXct', - 'as.POSIXct.date', 'as.POSIXct.Date', 'as.POSIXct.dates', 'as.POSIXct.default', 'as.POSIXct.numeric', 'as.POSIXct.POSIXlt', - 'as.POSIXlt', 'as.POSIXlt.character', 'as.POSIXlt.date', 'as.POSIXlt.Date', 'as.POSIXlt.dates', 'as.POSIXlt.default', - 'as.POSIXlt.factor', 'as.POSIXlt.numeric', 'as.POSIXlt.POSIXct', 'as.qr', 'as.raw', 'as.real', 'as.single', - 'as.single.default', 'as.symbol', 'as.table', 'as.table.default', 'as.vector', 'as.vector.factor', 'asin', 'asinh', - 'asNamespace', 'asS4', 'assign', 'atan', 'atan2', 'atanh', 'attach', 'attachNamespace', 'attr', 'attr.all.equal', - 'attr<-', 'attributes', 'attributes<-', 'autoload', 'autoloader', 'backsolve', 'baseenv', 'basename', 'besselI', - 'besselJ', 'besselK', 'besselY', 'beta', 'bindingIsActive', 'bindingIsLocked', 'bindtextdomain', 'body', 'body<-', - 'bquote', 'break', 'browser', 'builtins', 'by', 'by.data.frame', 'by.default', 'bzfile', 'c', 'c.Date', 'c.noquote', - 'c.numeric_version', 'c.POSIXct', 'c.POSIXlt', 'call', 'callCC', 'capabilities', 'casefold', 'cat', 'category', - 'cbind', 'cbind.data.frame', 'ceiling', 'char.expand', 'character', 'charmatch', 'charToRaw', 'chartr', 'check_tzones', - 'chol', 'chol.default', 'chol2inv', 'choose', 'class', 'class<-', 'close', 'close.connection', 'close.srcfile', - 'closeAllConnections', 'codes', 'codes.factor', 'codes.ordered', 'codes<-', 'col', 'colMeans', 'colnames', - 'colnames<-', 'colSums', 'commandArgs', 'comment', 'comment<-', 'complex', 'computeRestarts', 'conditionCall', - 'conditionCall.condition', 'conditionMessage', 'conditionMessage.condition', 'conflicts', 'Conj', 'contributors', - 'cos', 'cosh', 'crossprod', 'Cstack_info', 'cummax', 'cummin', 'cumprod', 'cumsum', 'cut', 'cut.Date', 'cut.default', - 'cut.POSIXt', 'data.class', 'data.frame', 'data.matrix', 'date', 'debug', 'default.stringsAsFactors', 'delay', - 'delayedAssign', 'deparse', 'det', 'detach', 'determinant', 'determinant.matrix', 'dget', 'diag', 'diag<-', 'diff', - 'diff.Date', 'diff.default', 'diff.POSIXt', 'difftime', 'digamma', 'dim', 'dim.data.frame', 'dim<-', 'dimnames', - 'dimnames.data.frame', 'dimnames<-', 'dimnames<-.data.frame', 'dir', 'dir.create', 'dirname', 'do.call', 'double', - 'dput', 'dQuote', 'drop', 'dump', 'duplicated', 'duplicated.array', 'duplicated.data.frame', 'duplicated.default', - 'duplicated.matrix', 'duplicated.numeric_version', 'duplicated.POSIXlt', 'dyn.load', 'dyn.unload', 'eapply', 'eigen', - 'emptyenv', 'encodeString', 'Encoding', 'Encoding<-', 'env.profile', 'environment', 'environment<-', 'environmentIsLocked', - 'environmentName', 'eval', 'eval.parent', 'evalq', 'exists', 'exp', 'expand.grid', 'expm1', 'expression', 'F', 'factor', - 'factorial', 'fifo', 'file', 'file.access', 'file.append', 'file.choose', 'file.copy', 'file.create', 'file.exists', - 'file.info', 'file.path', 'file.remove', 'file.rename', 'file.show', 'file.symlink', 'Filter', 'Find', 'findInterval', - 'findPackageEnv', 'findRestart', 'floor', 'flush', 'flush.connection', 'for', 'force', 'formals', 'formals<-', - 'format', 'format.AsIs', 'format.char', 'format.data.frame', 'format.Date', 'format.default', 'format.difftime', - 'format.factor', 'format.hexmode', 'format.info', 'format.octmode', 'format.POSIXct', 'format.POSIXlt', - 'format.pval', 'formatC', 'formatDL', 'forwardsolve', 'function', 'gamma', 'gammaCody', 'gc', 'gc.time', - 'gcinfo', 'gctorture', 'get', 'getAllConnections', 'getCallingDLL', 'getCallingDLLe', 'getCConverterDescriptions', - 'getCConverterStatus', 'getConnection', 'getDLLRegisteredRoutines', 'getDLLRegisteredRoutines.character', - 'getDLLRegisteredRoutines.DLLInfo', 'getenv', 'geterrmessage', 'getExportedValue', 'getHook', 'getLoadedDLLs', - 'getNamespace', 'getNamespaceExports', 'getNamespaceImports', 'getNamespaceInfo', 'getNamespaceName', - 'getNamespaceUsers', 'getNamespaceVersion', 'getNativeSymbolInfo', 'getNumCConverters', 'getOption', 'getRversion', - 'getSrcLines', 'getTaskCallbackNames', 'gettext', 'gettextf', 'getwd', 'gl', 'globalenv', 'gregexpr', 'grep', - 'grepl', 'gsub', 'gzcon', 'gzfile', 'httpclient', 'I', 'iconv', 'iconvlist', 'icuSetCollate', 'identical', 'identity', - 'if', 'ifelse', 'Im', 'importIntoEnv', 'inherits', 'integer', 'interaction', 'interactive', 'intersect', 'intToBits', - 'intToUtf8', 'inverse.rle', 'invisible', 'invokeRestart', 'invokeRestartInteractively', 'is.array', 'is.atomic', - 'is.call', 'is.character', 'is.complex', 'is.data.frame', 'is.double', 'is.element', 'is.environment', - 'is.expression', 'is.factor', 'is.finite', 'is.function', 'is.infinite', 'is.integer', 'is.language', - 'is.list', 'is.loaded', 'is.logical', 'is.matrix', 'is.na', 'is.na.data.frame', 'is.na.POSIXlt', 'is.na<-', - 'is.na<-.default', 'is.na<-.factor', 'is.name', 'is.nan', 'is.null', 'is.numeric', 'is.numeric_version', - 'is.numeric.Date', 'is.numeric.POSIXt', 'is.object', 'is.ordered', 'is.package_version', 'is.pairlist', 'is.primitive', - 'is.qr', 'is.R', 'is.raw', 'is.real', 'is.recursive', 'is.single', 'is.symbol', 'is.table', 'is.unsorted', 'is.vector', - 'isBaseNamespace', 'isdebugged', 'isIncomplete', 'isNamespace', 'ISOdate', 'ISOdatetime', 'isOpen', 'isRestart', 'isS4', - 'isSeekable', 'isSymmetric', 'isSymmetric.matrix', 'isTRUE', 'jitter', 'julian', 'julian.Date', 'julian.POSIXt', 'kappa', - 'kappa.default', 'kappa.lm', 'kappa.qr', 'kappa.tri', 'kronecker', 'l10n_info', 'La.chol', 'La.chol2inv', 'La.eigen', - 'La.svd', 'labels', 'labels.default', 'lapply', 'lazyLoad', 'lazyLoadDBfetch', 'lbeta', 'lchoose', 'length', 'length<-', - 'length<-.factor', 'letters', 'LETTERS', 'levels', 'levels.default', 'levels<-', 'levels<-.factor', 'lfactorial', 'lgamma', - 'library', 'library.dynam', 'library.dynam.unload', 'licence', 'license', 'list', 'list.files', 'load', 'loadedNamespaces', - 'loadingNamespaceInfo', 'loadNamespace', 'loadURL', 'local', 'lockBinding', 'lockEnvironment', 'log', 'log10', 'log1p', 'log2', - 'logb', 'logical', 'lower.tri', 'ls', 'machine', 'Machine', 'make.names', 'make.unique', 'makeActiveBinding', 'manglePackageName', - 'Map', 'mapply', 'margin.table', 'mat.or.vec', 'match', 'match.arg', 'match.call', 'match.fun', 'Math.data.frame', 'Math.Date', - 'Math.difftime', 'Math.factor', 'Math.POSIXt', 'matrix', 'max', 'max.col', 'mean', 'mean.data.frame', 'mean.Date', 'mean.default', - 'mean.difftime', 'mean.POSIXct', 'mean.POSIXlt', 'mem.limits', 'memory.profile', 'merge', 'merge.data.frame', 'merge.default', - 'message', 'mget', 'min', 'missing', 'Mod', 'mode', 'mode<-', 'month.abb', 'month.name', 'months', 'months.Date', - 'months.POSIXt', 'mostattributes<-', 'names', 'names<-', 'namespaceExport', 'namespaceImport', 'namespaceImportClasses', - 'namespaceImportFrom', 'namespaceImportMethods', 'nargs', 'nchar', 'ncol', 'NCOL', 'Negate', 'new.env', 'next', 'NextMethod', - 'ngettext', 'nlevels', 'noquote', 'nrow', 'NROW', 'numeric', 'numeric_version', 'nzchar', 'objects', 'oldClass', - 'oldClass<-', 'on.exit', 'open', 'open.connection', 'open.srcfile', 'open.srcfilecopy', 'Ops.data.frame', 'Ops.Date', - 'Ops.difftime', 'Ops.factor', 'Ops.numeric_version', 'Ops.ordered', 'Ops.POSIXt', 'options', 'order', 'ordered', - 'outer', 'package_version', 'package.description', 'packageEvent', 'packageHasNamespace', 'packageStartupMessage', - 'packBits', 'pairlist', 'parent.env', 'parent.env<-', 'parent.frame', 'parse', 'parse.dcf', 'parseNamespaceFile', - 'paste', 'path.expand', 'pentagamma', 'pi', 'pipe', 'Platform', 'pmatch', 'pmax', 'pmax.int', 'pmin', 'pmin.int', - 'polyroot', 'pos.to.env', 'Position', 'pretty', 'prettyNum', 'print', 'print.AsIs', 'print.atomic', 'print.by', - 'print.condition', 'print.connection', 'print.data.frame', 'print.Date', 'print.default', 'print.difftime', - 'print.DLLInfo', 'print.DLLInfoList', 'print.DLLRegisteredRoutines', 'print.factor', 'print.hexmode', 'print.libraryIQR', - 'print.listof', 'print.NativeRoutineList', 'print.noquote', 'print.numeric_version', 'print.octmode', 'print.packageInfo', - 'print.POSIXct', 'print.POSIXlt', 'print.proc_time', 'print.restart', 'print.rle', 'print.simple.list', - 'print.srcfile', 'print.srcref', 'print.summary.table', 'print.table', 'print.warnings', 'printNoClass', - 'prmatrix', 'proc.time', 'prod', 'prop.table', 'provide', 'psigamma', 'pushBack', 'pushBackLength', 'q', 'qr', - 'qr.coef', 'qr.default', 'qr.fitted', 'qr.Q', 'qr.qty', 'qr.qy', 'qr.R', 'qr.resid', 'qr.solve', 'qr.X', 'quarters', - 'quarters.Date', 'quarters.POSIXt', 'quit', 'quote', 'R_system_version', 'R.home', 'R.version', 'R.Version', - 'R.version.string', 'range', 'range.default', 'rank', 'rapply', 'raw', 'rawConnection', 'rawConnectionValue', - 'rawShift', 'rawToBits', 'rawToChar', 'rbind', 'rbind.data.frame', 'rcond', 'Re', 'read.dcf', 'read.table.url', - 'readBin', 'readChar', 'readline', 'readLines', 'real', 'Recall', 'Reduce', 'reg.finalizer', 'regexpr', - 'registerS3method', 'registerS3methods', 'remove', 'removeCConverter', 'removeTaskCallback', 'rep', 'rep.Date', - 'rep.factor', 'rep.int', 'rep.numeric_version', 'rep.POSIXct', 'rep.POSIXlt', 'repeat', 'replace', 'replicate', - 'require', 'restart', 'restartDescription', 'restartFormals', 'retracemem', 'return', 'rev', 'rev.default', 'rle', - 'rm', 'RNGkind', 'RNGversion', 'round', 'round.Date', 'round.difftime', 'round.POSIXt', 'row', 'row.names', - 'row.names.data.frame', 'row.names.default', 'row.names<-', 'row.names<-.data.frame', 'row.names<-.default', - 'rowMeans', 'rownames', 'rownames<-', 'rowsum', 'rowsum.data.frame', 'rowsum.default', 'rowSums', 'sample', - 'sample.int', 'sapply', 'save', 'save.image', 'saveNamespaceImage', 'scale', 'scale.default', 'scan', 'scan.url', - 'search', 'searchpaths', 'seek', 'seek.connection', 'seq', 'seq_along', 'seq_len', 'seq.Date', 'seq.default', - 'seq.int', 'seq.POSIXt', 'sequence', 'serialize', 'set.seed', 'setCConverterStatus', 'setdiff', 'setequal', - 'setHook', 'setNamespaceInfo', 'setSessionTimeLimit', 'setTimeLimit', 'setwd', 'showConnections', 'shQuote', - 'sign', 'signalCondition', 'signif', 'simpleCondition', 'simpleError', 'simpleMessage', 'simpleWarning', 'sin', - 'single', 'sinh', 'sink', 'sink.number', 'slice.index', 'socketConnection', 'socketSelect', 'solve', 'solve.default', - 'solve.qr', 'sort', 'sort.default', 'sort.int', 'sort.list', 'sort.POSIXlt', 'source', 'source.url', 'split', - 'split.data.frame', 'split.Date', 'split.default', 'split.POSIXct', 'split<-', 'split<-.data.frame', 'split<-.default', - 'sprintf', 'sqrt', 'sQuote', 'srcfile', 'srcfilecopy', 'srcref', 'standardGeneric', 'stderr', 'stdin', 'stdout', - 'stop', 'stopifnot', 'storage.mode', 'storage.mode<-', 'strftime', 'strptime', 'strsplit', 'strtrim', 'structure', - 'strwrap', 'sub', 'subset', 'subset.data.frame', 'subset.default', 'subset.matrix', 'substitute', 'substr', - 'substr<-', 'substring', 'substring<-', 'sum', 'summary', 'summary.connection', 'summary.data.frame', - 'Summary.data.frame', 'summary.Date', 'Summary.Date', 'summary.default', 'Summary.difftime', - 'summary.factor', 'Summary.factor', 'summary.matrix', 'Summary.numeric_version', 'summary.POSIXct', - 'Summary.POSIXct', 'summary.POSIXlt', 'Summary.POSIXlt', 'summary.table', 'suppressMessages', - 'suppressPackageStartupMessages', 'suppressWarnings', 'svd', 'sweep', 'switch', 'symbol.C', - 'symbol.For', 'sys.call', 'sys.calls', 'Sys.chmod', 'Sys.Date', 'sys.frame', 'sys.frames', - 'sys.function', 'Sys.getenv', 'Sys.getlocale', 'Sys.getpid', 'Sys.glob', 'Sys.info', 'sys.load.image', - 'Sys.localeconv', 'sys.nframe', 'sys.on.exit', 'sys.parent', 'sys.parents', 'Sys.putenv', - 'sys.save.image', 'Sys.setenv', 'Sys.setlocale', 'Sys.sleep', 'sys.source', 'sys.status', - 'Sys.time', 'Sys.timezone', 'Sys.umask', 'Sys.unsetenv', 'Sys.which', 'system', 'system.file', - 'system.time', 't', 'T', 't.data.frame', 't.default', 'table', 'tabulate', 'tan', 'tanh', 'tapply', - 'taskCallbackManager', 'tcrossprod', 'tempdir', 'tempfile', 'testPlatformEquivalence', 'tetragamma', - 'textConnection', 'textConnectionValue', 'tolower', 'topenv', 'toString', 'toString.default', 'toupper', - 'trace', 'traceback', 'tracemem', 'tracingState', 'transform', 'transform.data.frame', 'transform.default', - 'trigamma', 'trunc', 'trunc.Date', 'trunc.POSIXt', 'truncate', 'truncate.connection', 'try', 'tryCatch', - 'typeof', 'unclass', 'undebug', 'union', 'unique', 'unique.array', 'unique.data.frame', 'unique.default', - 'unique.matrix', 'unique.numeric_version', 'unique.POSIXlt', 'units', 'units.difftime', 'units<-', - 'units<-.difftime', 'unix', 'unix.time', 'unlink', 'unlist', 'unloadNamespace', 'unlockBinding', - 'unname', 'unserialize', 'unsplit', 'untrace', 'untracemem', 'unz', 'upper.tri', 'url', 'UseMethod', - 'utf8ToInt', 'vector', 'Vectorize', 'version', 'Version', 'warning', 'warnings', 'weekdays', - 'weekdays.Date', 'weekdays.POSIXt', 'which', 'which.max', 'which.min', 'while', 'with', - 'with.default', 'withCallingHandlers', 'within', 'within.data.frame', 'within.list', 'withRestarts', - 'withVisible', 'write', 'write.dcf', 'write.table0', 'writeBin', 'writeChar', 'writeLines', 'xor', - 'xpdrows.data.frame', 'xtfrm', 'xtfrm.Date', 'xtfrm.default', 'xtfrm.factor', 'xtfrm.numeric_version', - 'xtfrm.POSIXct', 'xtfrm.POSIXlt', 'xtfrm.Surv', 'zapsmall', - ), - 3 => array( // Datasets - 'ability.cov', 'airmiles', 'AirPassengers', 'airquality', - 'anscombe', 'attenu', 'attitude', 'austres', 'beaver1', - 'beaver2', 'BJsales', 'BJsales.lead', 'BOD', 'cars', - 'ChickWeight', 'chickwts', 'co2', 'crimtab', - 'discoveries', 'DNase', 'esoph', 'euro', 'euro.cross', - 'eurodist', 'EuStockMarkets', 'faithful', 'fdeaths', - 'Formaldehyde', 'freeny', 'freeny.x', 'freeny.y', - 'HairEyeColor', 'Harman23.cor', 'Harman74.cor', 'Indometh', - 'infert', 'InsectSprays', 'iris', 'iris3', 'islands', - 'JohnsonJohnson', 'LakeHuron', 'ldeaths', 'lh', 'LifeCycleSavings', - 'Loblolly', 'longley', 'lynx', 'mdeaths', 'morley', 'mtcars', - 'nhtemp', 'Nile', 'nottem', 'occupationalStatus', 'Orange', - 'OrchardSprays', 'PlantGrowth', 'precip', 'presidents', - 'pressure', 'Puromycin', 'quakes', 'randu', 'rivers', 'rock', - 'Seatbelts', 'sleep', 'stack.loss', 'stack.x', 'stackloss', - 'state.abb', 'state.area', 'state.center', 'state.division', - 'state.name', 'state.region', 'state.x77', 'sunspot.month', - 'sunspot.year', 'sunspots', 'swiss', 'Theoph', 'Titanic', 'ToothGrowth', - 'treering', 'trees', 'UCBAdmissions', 'UKDriverDeaths', 'UKgas', - 'USAccDeaths', 'USArrests', 'USJudgeRatings', 'USPersonalExpenditure', - 'uspop', 'VADeaths', 'volcano', 'warpbreaks', 'women', 'WorldPhones', - 'WWWusage', - ), - 4 => array( // graphics package - 'abline', 'arrows', 'assocplot', 'axis', 'Axis', 'axis.Date', 'axis.POSIXct', - 'axTicks', 'barplot', 'barplot.default', 'box', 'boxplot', 'boxplot.default', - 'boxplot.matrix', 'bxp', 'cdplot', 'clip', 'close.screen', 'co.intervals', - 'contour', 'contour.default', 'coplot', 'curve', 'dotchart', 'erase.screen', - 'filled.contour', 'fourfoldplot', 'frame', 'grconvertX', 'grconvertY', 'grid', - 'hist', 'hist.default', 'identify', 'image', 'image.default', 'layout', - 'layout.show', 'lcm', 'legend', 'lines', 'lines.default', 'locator', 'matlines', - 'matplot', 'matpoints', 'mosaicplot', 'mtext', 'pairs', 'pairs.default', - 'panel.smooth', 'par', 'persp', 'pie', 'piechart', 'plot', 'plot.default', - 'plot.design', 'plot.new', 'plot.window', 'plot.xy', 'points', 'points.default', - 'polygon', 'rect', 'rug', 'screen', 'segments', 'smoothScatter', 'spineplot', - 'split.screen', 'stars', 'stem', 'strheight', 'stripchart', 'strwidth', 'sunflowerplot', - 'symbols', 'text', 'text.default', 'title', 'xinch', 'xspline', 'xyinch', 'yinch', - ), - 5 => array( // grDevices pkg - 'as.graphicsAnnot', 'bitmap', 'blues9', 'bmp', 'boxplot.stats', 'cairo_pdf', 'cairo_ps', 'check.options', - 'chull', 'CIDFont', 'cm', 'cm.colors', 'col2rgb', 'colorConverter', 'colorRamp', 'colorRampPalette', - 'colors', 'colorspaces', 'colours', 'contourLines', 'convertColor', 'densCols', 'dev.control', 'dev.copy', - 'dev.copy2eps', 'dev.copy2pdf', 'dev.cur', 'dev.interactive', 'dev.list', 'dev.new', 'dev.next', 'dev.off', - 'dev.prev', 'dev.print', 'dev.set', 'dev.size', 'dev2bitmap', 'devAskNewPage', 'deviceIsInteractive', - 'embedFonts', 'extendrange', 'getGraphicsEvent', 'graphics.off', 'gray', 'gray.colors', 'grey', 'grey.colors', - 'hcl', 'heat.colors', 'Hershey', 'hsv', 'jpeg', 'make.rgb', 'n2mfrow', 'nclass.FD', 'nclass.scott', - 'nclass.Sturges', 'palette', 'pdf', 'pdf.options', 'pdfFonts', 'pictex', 'png', 'postscript', 'postscriptFont', - 'postscriptFonts', 'ps.options', 'quartz', 'quartz.options', 'quartzFont', 'quartzFonts', 'rainbow', - 'recordGraphics', 'recordPlot', 'replayPlot', 'rgb', 'rgb2hsv', 'savePlot', 'setEPS', 'setPS', 'svg', - 'terrain.colors', 'tiff', 'topo.colors', 'trans3d', 'Type1Font', 'x11', 'X11', 'X11.options', 'X11Font', - 'X11Fonts', 'xfig', 'xy.coords', 'xyTable', 'xyz.coords', - ), - 6 => array( // methods package - 'addNextMethod', 'allGenerics', 'allNames', 'Arith', 'as', 'as<-', - 'asMethodDefinition', 'assignClassDef', 'assignMethodsMetaData', 'balanceMethodsList', - 'cacheGenericsMetaData', 'cacheMetaData', 'cacheMethod', 'callGeneric', - 'callNextMethod', 'canCoerce', 'cbind2', 'checkSlotAssignment', 'classesToAM', - 'classMetaName', 'coerce', 'coerce<-', 'Compare', 'completeClassDefinition', - 'completeExtends', 'completeSubclasses', 'Complex', 'conformMethod', 'defaultDumpName', - 'defaultPrototype', 'doPrimitiveMethod', 'dumpMethod', 'dumpMethods', 'el', 'el<-', - 'elNamed', 'elNamed<-', 'empty.dump', 'emptyMethodsList', 'existsFunction', 'existsMethod', - 'extends', 'finalDefaultMethod', 'findClass', 'findFunction', 'findMethod', 'findMethods', - 'findMethodSignatures', 'findUnique', 'fixPre1.8', 'formalArgs', 'functionBody', - 'functionBody<-', 'generic.skeleton', 'getAccess', 'getAllMethods', 'getAllSuperClasses', - 'getClass', 'getClassDef', 'getClasses', 'getClassName', 'getClassPackage', 'getDataPart', - 'getExtends', 'getFunction', 'getGeneric', 'getGenerics', 'getGroup', 'getGroupMembers', - 'getMethod', 'getMethods', 'getMethodsForDispatch', 'getMethodsMetaData', 'getPackageName', - 'getProperties', 'getPrototype', 'getSlots', 'getSubclasses', 'getValidity', 'getVirtual', - 'hasArg', 'hasMethod', 'hasMethods', 'implicitGeneric', 'initialize', 'insertMethod', 'is', - 'isClass', 'isClassDef', 'isClassUnion', 'isGeneric', 'isGrammarSymbol', 'isGroup', - 'isSealedClass', 'isSealedMethod', 'isVirtualClass', 'isXS3Class', 'languageEl', 'languageEl<-', - 'linearizeMlist', 'listFromMethods', 'listFromMlist', 'loadMethod', 'Logic', - 'makeClassRepresentation', 'makeExtends', 'makeGeneric', 'makeMethodsList', - 'makePrototypeFromClassDef', 'makeStandardGeneric', 'matchSignature', 'Math', 'Math2', 'mergeMethods', - 'metaNameUndo', 'method.skeleton', 'MethodAddCoerce', 'methodSignatureMatrix', 'MethodsList', - 'MethodsListSelect', 'methodsPackageMetaName', 'missingArg', 'mlistMetaName', 'new', 'newBasic', - 'newClassRepresentation', 'newEmptyObject', 'Ops', 'packageSlot', 'packageSlot<-', 'possibleExtends', - 'prohibitGeneric', 'promptClass', 'promptMethods', 'prototype', 'Quote', 'rbind2', - 'reconcilePropertiesAndPrototype', 'registerImplicitGenerics', 'rematchDefinition', - 'removeClass', 'removeGeneric', 'removeMethod', 'removeMethods', 'removeMethodsObject', 'representation', - 'requireMethods', 'resetClass', 'resetGeneric', 'S3Class', 'S3Class<-', 'S3Part', 'S3Part<-', 'sealClass', - 'seemsS4Object', 'selectMethod', 'selectSuperClasses', 'sessionData', 'setAs', 'setClass', 'setClassUnion', - 'setDataPart', 'setGeneric', 'setGenericImplicit', 'setGroupGeneric', 'setIs', 'setMethod', 'setOldClass', - 'setPackageName', 'setPrimitiveMethods', 'setReplaceMethod', 'setValidity', 'show', 'showClass', 'showDefault', - 'showExtends', 'showMethods', 'showMlist', 'signature', 'SignatureMethod', 'sigToEnv', 'slot', 'slot<-', - 'slotNames', 'slotsFromS3', 'substituteDirect', 'substituteFunctionArgs', 'Summary', 'superClassDepth', - 'testInheritedMethods', 'testVirtual', 'traceOff', 'traceOn', 'tryNew', 'trySilent', 'unRematchDefinition', - 'validObject', 'validSlotNames', - ), - 7 => array( // stats pkg - 'acf', 'acf2AR', 'add.scope', 'add1', 'addmargins', 'aggregate', - 'aggregate.data.frame', 'aggregate.default', 'aggregate.ts', 'AIC', - 'alias', 'anova', 'anova.glm', 'anova.glmlist', 'anova.lm', 'anova.lmlist', - 'anova.mlm', 'anovalist.lm', 'ansari.test', 'aov', 'approx', 'approxfun', - 'ar', 'ar.burg', 'ar.mle', 'ar.ols', 'ar.yw', 'arima', 'arima.sim', - 'arima0', 'arima0.diag', 'ARMAacf', 'ARMAtoMA', 'as.dendrogram', 'as.dist', - 'as.formula', 'as.hclust', 'as.stepfun', 'as.ts', 'asOneSidedFormula', 'ave', - 'bandwidth.kernel', 'bartlett.test', 'binom.test', 'binomial', 'biplot', - 'Box.test', 'bw.bcv', 'bw.nrd', 'bw.nrd0', 'bw.SJ', 'bw.ucv', 'C', 'cancor', - 'case.names', 'ccf', 'chisq.test', 'clearNames', 'cmdscale', 'coef', 'coefficients', - 'complete.cases', 'confint', 'confint.default', 'constrOptim', 'contr.helmert', - 'contr.poly', 'contr.SAS', 'contr.sum', 'contr.treatment', 'contrasts', 'contrasts<-', - 'convolve', 'cooks.distance', 'cophenetic', 'cor', 'cor.test', 'cov', 'cov.wt', - 'cov2cor', 'covratio', 'cpgram', 'cutree', 'cycle', 'D', 'dbeta', 'dbinom', 'dcauchy', - 'dchisq', 'decompose', 'delete.response', 'deltat', 'dendrapply', 'density', 'density.default', - 'deriv', 'deriv.default', 'deriv.formula', 'deriv3', 'deriv3.default', 'deriv3.formula', - 'deviance', 'dexp', 'df', 'df.kernel', 'df.residual', 'dfbeta', 'dfbetas', 'dffits', - 'dgamma', 'dgeom', 'dhyper', 'diff.ts', 'diffinv', 'dist', 'dlnorm', 'dlogis', - 'dmultinom', 'dnbinom', 'dnorm', 'dpois', 'drop.scope', 'drop.terms', 'drop1', - 'dsignrank', 'dt', 'dummy.coef', 'dunif', 'dweibull', 'dwilcox', 'ecdf', 'eff.aovlist', - 'effects', 'embed', 'end', 'estVar', 'expand.model.frame', 'extractAIC', 'factanal', - 'factor.scope', 'family', 'fft', 'filter', 'fisher.test', 'fitted', 'fitted.values', - 'fivenum', 'fligner.test', 'formula', 'frequency', 'friedman.test', 'ftable', 'Gamma', - 'gaussian', 'get_all_vars', 'getInitial', 'glm', 'glm.control', 'glm.fit', 'glm.fit.null', - 'hasTsp', 'hat', 'hatvalues', 'hatvalues.lm', 'hclust', 'heatmap', 'HoltWinters', 'influence', - 'influence.measures', 'integrate', 'interaction.plot', 'inverse.gaussian', 'IQR', - 'is.empty.model', 'is.leaf', 'is.mts', 'is.stepfun', 'is.ts', 'is.tskernel', 'isoreg', - 'KalmanForecast', 'KalmanLike', 'KalmanRun', 'KalmanSmooth', 'kernapply', 'kernel', 'kmeans', - 'knots', 'kruskal.test', 'ks.test', 'ksmooth', 'lag', 'lag.plot', 'line', 'lines.ts', 'lm', - 'lm.fit', 'lm.fit.null', 'lm.influence', 'lm.wfit', 'lm.wfit.null', 'loadings', 'loess', - 'loess.control', 'loess.smooth', 'logLik', 'loglin', 'lowess', 'ls.diag', 'ls.print', 'lsfit', - 'mad', 'mahalanobis', 'make.link', 'makeARIMA', 'makepredictcall', 'manova', 'mantelhaen.test', - 'mauchley.test', 'mauchly.test', 'mcnemar.test', 'median', 'median.default', 'medpolish', - 'model.extract', 'model.frame', 'model.frame.aovlist', 'model.frame.default', 'model.frame.glm', - 'model.frame.lm', 'model.matrix', 'model.matrix.default', 'model.matrix.lm', 'model.offset', - 'model.response', 'model.tables', 'model.weights', 'monthplot', 'mood.test', 'mvfft', 'na.action', - 'na.contiguous', 'na.exclude', 'na.fail', 'na.omit', 'na.pass', 'napredict', 'naprint', 'naresid', - 'nextn', 'nlm', 'nlminb', 'nls', 'nls.control', 'NLSstAsymptotic', 'NLSstClosestX', 'NLSstLfAsymptote', - 'NLSstRtAsymptote', 'numericDeriv', 'offset', 'oneway.test', 'optim', 'optimise', 'optimize', - 'order.dendrogram', 'p.adjust', 'p.adjust.methods', 'pacf', 'pairwise.prop.test', 'pairwise.t.test', - 'pairwise.table', 'pairwise.wilcox.test', 'pbeta', 'pbinom', 'pbirthday', 'pcauchy', 'pchisq', 'pexp', - 'pf', 'pgamma', 'pgeom', 'phyper', 'plclust', 'plnorm', 'plogis', 'plot.density', 'plot.ecdf', 'plot.lm', - 'plot.mlm', 'plot.spec', 'plot.spec.coherency', 'plot.spec.phase', 'plot.stepfun', 'plot.ts', 'plot.TukeyHSD', - 'pnbinom', 'pnorm', 'poisson', 'poisson.test', 'poly', 'polym', 'power', 'power.anova.test', 'power.prop.test', - 'power.t.test', 'PP.test', 'ppoints', 'ppois', 'ppr', 'prcomp', 'predict', 'predict.glm', 'predict.lm', - 'predict.mlm', 'predict.poly', 'preplot', 'princomp', 'print.anova', 'print.coefmat', 'print.density', - 'print.family', 'print.formula', 'print.ftable', 'print.glm', 'print.infl', 'print.integrate', 'print.lm', - 'print.logLik', 'print.terms', 'print.ts', 'printCoefmat', 'profile', 'proj', 'promax', 'prop.test', - 'prop.trend.test', 'psignrank', 'pt', 'ptukey', 'punif', 'pweibull', 'pwilcox', 'qbeta', 'qbinom', - 'qbirthday', 'qcauchy', 'qchisq', 'qexp', 'qf', 'qgamma', 'qgeom', 'qhyper', 'qlnorm', 'qlogis', - 'qnbinom', 'qnorm', 'qpois', 'qqline', 'qqnorm', 'qqnorm.default', 'qqplot', 'qsignrank', 'qt', - 'qtukey', 'quade.test', 'quantile', 'quantile.default', 'quasi', 'quasibinomial', 'quasipoisson', - 'qunif', 'qweibull', 'qwilcox', 'r2dtable', 'rbeta', 'rbinom', 'rcauchy', 'rchisq', 'read.ftable', - 'rect.hclust', 'reformulate', 'relevel', 'reorder', 'replications', 'reshape', 'reshapeLong', 'reshapeWide', - 'resid', 'residuals', 'residuals.default', 'residuals.glm', 'residuals.lm', 'rexp', 'rf', 'rgamma', 'rgeom', - 'rhyper', 'rlnorm', 'rlogis', 'rmultinom', 'rnbinom', 'rnorm', 'rpois', 'rsignrank', 'rstandard', 'rstandard.glm', - 'rstandard.lm', 'rstudent', 'rstudent.glm', 'rstudent.lm', 'rt', 'runif', 'runmed', 'rweibull', 'rwilcox', - 'scatter.smooth', 'screeplot', 'sd', 'se.contrast', 'selfStart', 'setNames', 'shapiro.test', 'simulate', - 'smooth', 'smooth.spline', 'smoothEnds', 'sortedXyData', 'spec.ar', 'spec.pgram', 'spec.taper', 'spectrum', - 'spline', 'splinefun', 'splinefunH', 'SSasymp', 'SSasympOff', 'SSasympOrig', 'SSbiexp', 'SSD', 'SSfol', - 'SSfpl', 'SSgompertz', 'SSlogis', 'SSmicmen', 'SSweibull', 'start', 'stat.anova', 'step', 'stepfun', 'stl', - 'StructTS', 'summary.aov', 'summary.aovlist', 'summary.glm', 'summary.infl', 'summary.lm', 'summary.manova', - 'summary.mlm', 'summary.stepfun', 'supsmu', 'symnum', 't.test', 'termplot', 'terms', 'terms.aovlist', - 'terms.default', 'terms.formula', 'terms.terms', 'time', 'toeplitz', 'ts', 'ts.intersect', 'ts.plot', - 'ts.union', 'tsdiag', 'tsp', 'tsp<-', 'tsSmooth', 'TukeyHSD', 'TukeyHSD.aov', 'uniroot', 'update', - 'update.default', 'update.formula', 'var', 'var.test', 'variable.names', 'varimax', 'vcov', 'weighted.mean', - 'weighted.residuals', 'weights', 'wilcox.test', 'window', 'window<-', 'write.ftable', 'xtabs', - ), - 8 => array( // utils pkg - 'alarm', 'apropos', 'argsAnywhere', 'as.person', 'as.personList', 'as.relistable', 'as.roman', - 'assignInNamespace', 'available.packages', 'browseEnv', 'browseURL', 'browseVignettes', 'bug.report', - 'capture.output', 'checkCRAN', 'chooseCRANmirror', 'citation', 'citEntry', 'citFooter', 'citHeader', - 'close.socket', 'combn', 'compareVersion', 'contrib.url', 'count.fields', 'CRAN.packages', 'data', - 'data.entry', 'dataentry', 'de', 'de.ncols', 'de.restore', 'de.setup', 'debugger', 'demo', 'download.file', - 'download.packages', 'dump.frames', 'edit', 'emacs', 'example', 'file_test', 'file.edit', 'find', 'fix', - 'fixInNamespace', 'flush.console', 'formatOL', 'formatUL', 'getAnywhere', 'getCRANmirrors', 'getFromNamespace', - 'getS3method', 'getTxtProgressBar', 'glob2rx', 'head', 'head.matrix', 'help', 'help.request', 'help.search', - 'help.start', 'history', 'index.search', 'install.packages', 'installed.packages', 'is.relistable', - 'limitedLabels', 'loadhistory', 'localeToCharset', 'ls.str', 'lsf.str', 'make.packages.html', 'make.socket', - 'makeRweaveLatexCodeRunner', 'memory.limit', 'memory.size', 'menu', 'methods', 'mirror2html', 'modifyList', - 'new.packages', 'normalizePath', 'nsl', 'object.size', 'old.packages', 'package.contents', 'package.skeleton', - 'packageDescription', 'packageStatus', 'page', 'person', 'personList', 'pico', 'prompt', 'promptData', - 'promptPackage', 'rc.getOption', 'rc.options', 'rc.settings', 'rc.status', 'read.csv', 'read.csv2', 'read.delim', - 'read.delim2', 'read.DIF', 'read.fortran', 'read.fwf', 'read.socket', 'read.table', 'readCitationFile', 'recover', - 'relist', 'remove.packages', 'Rprof', 'Rprofmem', 'RShowDoc', 'RSiteSearch', 'rtags', 'Rtangle', 'RtangleSetup', - 'RtangleWritedoc', 'RweaveChunkPrefix', 'RweaveEvalWithOpt', 'RweaveLatex', 'RweaveLatexFinish', 'RweaveLatexOptions', - 'RweaveLatexSetup', 'RweaveLatexWritedoc', 'RweaveTryStop', 'savehistory', 'select.list', 'sessionInfo', - 'setRepositories', 'setTxtProgressBar', 'stack', 'Stangle', 'str', 'strOptions', 'summaryRprof', 'Sweave', - 'SweaveHooks', 'SweaveSyntaxLatex', 'SweaveSyntaxNoweb', 'SweaveSyntConv', 'tail', 'tail.matrix', 'timestamp', - 'toBibtex', 'toLatex', 'txtProgressBar', 'type.convert', 'unstack', 'unzip', 'update.packages', 'update.packageStatus', - 'upgrade', 'url.show', 'URLdecode', 'URLencode', 'vi', 'View', 'vignette', 'write.csv', 'write.csv2', 'write.socket', - 'write.table', 'wsbrowser', 'xedit', 'xemacs', 'zip.file.extract', - ), - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '!', '%', '^', '&', '/','+','-','*','=','<','>',';','|','<-','->', - '^', '-', ':', '::', ':::', '!', '!=', '*', '?', - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => true, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000FF; font-weight: bold;', - 2 => 'color: #0000FF; font-weight: bold;', - 3 => 'color: #CC9900; font-weight: bold;', - 4 => 'color: #0000FF; font-weight: bold;', - 5 => 'color: #0000FF; font-weight: bold;', - 6 => 'color: #0000FF; font-weight: bold;', - 7 => 'color: #0000FF; font-weight: bold;', - 8 => 'color: #0000FF; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #228B22;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - ), - 'BRACKETS' => array( - 0 => 'color: #080;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff0000;' - ), - 'METHODS' => array( - 1 => '', - 2 => '' - ), - 'SYMBOLS' => array( - 0 => 'color: #080;' - ), - 'REGEXPS' => array( - 0 => 'color:#A020F0;' - ), - 'SCRIPT' => array( - 0 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => 'http://astrostatistics.psu.edu/su07/R/html/graphics/html/{FNAME}.html', // http://sekhon.berkeley.edu/library/graphics/html/{FNAME}.html - 3 => 'http://astrostatistics.psu.edu/su07/R/html/stats/html/Normal.html', // http://sekhon.berkeley.edu/library/stats/html/Normal.html - 4 => 'http://astrostatistics.psu.edu/su07/R/html/stats/html/{FNAME}.html', // http://sekhon.berkeley.edu/library/stats/html/{FNAME}.html - 5 => 'http://astrostatistics.psu.edu/su07/R/html/stats/html/summary.lm.html', // http://sekhon.berkeley.edu/library/stats/html/summary.lm.html - 6 => 'http://astrostatistics.psu.edu/su07/R/html/base/html/Log.html', // http://sekhon.berkeley.edu/library/base/html/Log.html - 7 => '', - 8 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - 0 => array( - GESHI_SEARCH => "([^\w])'([^\\n\\r']*)'", - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => "\\1'", - GESHI_AFTER => "'" - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?|^&\\.])(? "(?![a-zA-Z0-9_\|%\\-&;\\.])" - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/ruby.php b/library/Vendors/geshi/geshi/ruby.php deleted file mode 100644 index 47ecbb2e..00000000 --- a/library/Vendors/geshi/geshi/ruby.php +++ /dev/null @@ -1,231 +0,0 @@ - 'Ruby', - 'COMMENT_SINGLE' => array(1 => "#"), - 'COMMENT_MULTI' => array("=begin" => "=end"), - 'COMMENT_REGEXP' => array( - //Heredoc - 4 => '/<<\s*?(\w+)\\n.*?\\n\\1(?![a-zA-Z0-9])/si', - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', '`','\''), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'alias', 'and', 'begin', 'break', 'case', 'class', - 'def', 'defined', 'do', 'else', 'elsif', 'end', - 'ensure', 'for', 'if', 'in', 'module', 'while', - 'next', 'not', 'or', 'redo', 'rescue', 'yield', - 'retry', 'super', 'then', 'undef', 'unless', - 'until', 'when', 'include' - ), - 2 => array( - '__FILE__', '__LINE__', 'false', 'nil', 'self', 'true', - 'return' - ), - 3 => array( - 'Array', 'Float', 'Integer', 'String', 'at_exit', - 'autoload', 'binding', 'caller', 'catch', 'chop', 'chop!', - 'chomp', 'chomp!', 'eval', 'exec', 'exit', 'exit!', 'fail', - 'fork', 'format', 'gets', 'global_variables', 'gsub', 'gsub!', - 'iterator?', 'lambda', 'load', 'local_variables', 'loop', - 'open', 'p', 'print', 'printf', 'proc', 'putc', 'puts', - 'raise', 'rand', 'readline', 'readlines', 'require', 'select', - 'sleep', 'split', 'sprintf', 'srand', 'sub', 'sub!', 'syscall', - 'system', 'trace_var', 'trap', 'untrace_var' - ), - 4 => array( - 'Abbrev', 'ArgumentError', 'Base64', 'Benchmark', - 'Benchmark::Tms', 'Bignum', 'Binding', 'CGI', 'CGI::Cookie', - 'CGI::HtmlExtension', 'CGI::QueryExtension', - 'CGI::Session', 'CGI::Session::FileStore', - 'CGI::Session::MemoryStore', 'Class', 'Comparable', 'Complex', - 'ConditionVariable', 'Continuation', 'Data', - 'Date', 'DateTime', 'Delegator', 'Dir', 'EOFError', 'ERB', - 'ERB::Util', 'Enumerable', 'Enumerable::Enumerator', 'Errno', - 'Exception', 'FalseClass', 'File', - 'File::Constants', 'File::Stat', 'FileTest', 'FileUtils', - 'FileUtils::DryRun', 'FileUtils::NoWrite', - 'FileUtils::StreamUtils_', 'FileUtils::Verbose', 'Find', - 'Fixnum', 'FloatDomainError', 'Forwardable', 'GC', 'Generator', - 'Hash', 'IO', 'IOError', 'Iconv', 'Iconv::BrokenLibrary', - 'Iconv::Failure', 'Iconv::IllegalSequence', - 'Iconv::InvalidCharacter', 'Iconv::InvalidEncoding', - 'Iconv::OutOfRange', 'IndexError', 'Interrupt', 'Kernel', - 'LoadError', 'LocalJumpError', 'Logger', 'Logger::Application', - 'Logger::Error', 'Logger::Formatter', 'Logger::LogDevice', - 'Logger::LogDevice::LogDeviceMutex', 'Logger::Severity', - 'Logger::ShiftingError', 'Marshal', 'MatchData', - 'Math', 'Matrix', 'Method', 'Module', 'Mutex', 'NameError', - 'NameError::message', 'NilClass', 'NoMemoryError', - 'NoMethodError', 'NotImplementedError', 'Numeric', 'Object', - 'ObjectSpace', 'Observable', 'PStore', 'PStore::Error', - 'Pathname', 'Precision', 'Proc', 'Process', 'Process::GID', - 'Process::Status', 'Process::Sys', 'Process::UID', 'Queue', - 'Range', 'RangeError', 'Rational', 'Regexp', 'RegexpError', - 'RuntimeError', 'ScriptError', 'SecurityError', 'Set', - 'Shellwords', 'Signal', 'SignalException', 'SimpleDelegator', - 'SingleForwardable', 'Singleton', 'SingletonClassMethods', - 'SizedQueue', 'SortedSet', 'StandardError', 'StringIO', - 'StringScanner', 'StringScanner::Error', 'Struct', 'Symbol', - 'SyncEnumerator', 'SyntaxError', 'SystemCallError', - 'SystemExit', 'SystemStackError', 'Tempfile', - 'Test::Unit::TestCase', 'Test::Unit', 'Test', 'Thread', - 'ThreadError', 'ThreadGroup', - 'ThreadsWait', 'Time', 'TrueClass', 'TypeError', 'URI', - 'URI::BadURIError', 'URI::Error', 'URI::Escape', 'URI::FTP', - 'URI::Generic', 'URI::HTTP', 'URI::HTTPS', - 'URI::InvalidComponentError', 'URI::InvalidURIError', - 'URI::LDAP', 'URI::MailTo', 'URI::REGEXP', - 'URI::REGEXP::PATTERN', 'UnboundMethod', 'Vector', 'YAML', - 'ZeroDivisionError', 'Zlib', - 'Zlib::BufError', 'Zlib::DataError', 'Zlib::Deflate', - 'Zlib::Error', 'Zlib::GzipFile', 'Zlib::GzipFile::CRCError', - 'Zlib::GzipFile::Error', 'Zlib::GzipFile::LengthError', - 'Zlib::GzipFile::NoFooter', 'Zlib::GzipReader', - 'Zlib::GzipWriter', 'Zlib::Inflate', 'Zlib::MemError', - 'Zlib::NeedDict', 'Zlib::StreamEnd', 'Zlib::StreamError', - 'Zlib::VersionError', - 'Zlib::ZStream', - 'HTML::Selector', 'HashWithIndifferentAccess', 'Inflector', - 'Inflector::Inflections', 'Mime', 'Mime::Type', - 'OCI8AutoRecover', 'TimeZone', 'XmlSimple' - ), - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '%', '&', '*', '|', '/', '<', '>', - '+', '-', '=>', '<<' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color:#9966CC; font-weight:bold;', - 2 => 'color:#0000FF; font-weight:bold;', - 3 => 'color:#CC0066; font-weight:bold;', - 4 => 'color:#CC00FF; font-weight:bold;', - ), - 'COMMENTS' => array( - 1 => 'color:#008000; font-style:italic;', - 4 => 'color: #cc0000; font-style: italic;', - 'MULTI' => 'color:#000080; font-style:italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color:#000099;' - ), - 'BRACKETS' => array( - 0 => 'color:#006600; font-weight:bold;' - ), - 'STRINGS' => array( - 0 => 'color:#996600;' - ), - 'NUMBERS' => array( - 0 => 'color:#006666;' - ), - 'METHODS' => array( - 1 => 'color:#9900CC;' - ), - 'SYMBOLS' => array( - 0 => 'color:#006600; font-weight:bold;' - ), - 'REGEXPS' => array( - 0 => 'color:#ff6633; font-weight:bold;', - 1 => 'color:#0066ff; font-weight:bold;', - 2 => 'color:#6666ff; font-weight:bold;', - 3 => 'color:#ff3333; font-weight:bold;' - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - 0 => array(//Variables - GESHI_SEARCH => "([[:space:]])(\\$[a-zA-Z_][a-zA-Z0-9_]*)", - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 1 => array(//Arrays - GESHI_SEARCH => "([[:space:]])(@[a-zA-Z_][a-zA-Z0-9_]*)", - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 2 => "([A-Z][a-zA-Z0-9_]*::)+[A-Z][a-zA-Z0-9_]*",//Static OOP symbols - 3 => array( - GESHI_SEARCH => "([[:space:]]|\[|\()(:[a-zA-Z_][a-zA-Z0-9_]*)", - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - '<%' => '%>' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - ), - 'TAB_WIDTH' => 2 -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/sas.php b/library/Vendors/geshi/geshi/sas.php deleted file mode 100644 index c4d426fa..00000000 --- a/library/Vendors/geshi/geshi/sas.php +++ /dev/null @@ -1,290 +0,0 @@ - 'SAS', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - '_ALL_','_CHARACTER_','_INFILE_','_N_','_NULL_','_NUMERIC_', - '_WEBOUT_' - ), - 2 => array( - '%BQUOTE','%CMPRES','%COMPSTOR','%DATATYP','%DISPLAY','%DO','%ELSE', - '%END','%EVAL','%GLOBAL','%GOTO','%IF','%INDEX','%INPUT','%KEYDEF', - '%LABEL','%LEFT','%LENGTH','%LET','%LOCAL','%LOWCASE','%MACRO', - '%MEND','%NRBQUOTE','%NRQUOTE','%NRSTR','%PUT','%QCMPRES','%QLEFT', - '%QLOWCASE','%QSCAN','%QSUBSTR','%QSYSFUNC','%QTRIM','%QUOTE', - '%QUPCASE','%SCAN','%STR','%SUBSTR','%SUPERQ','%SYSCALL', - '%SYSEVALF','%SYSEXEC','%SYSFUNC','%SYSGET','%SYSLPUT','%SYSPROD', - '%SYSRC','%SYSRPUT','%THEN','%TO','%TRIM','%UNQUOTE','%UNTIL', - '%UPCASE','%VERIFY','%WHILE','%WINDOW' - ), - 3 => array( - 'ABS','ADDR','AIRY','ARCOS','ARSIN','ATAN','ATTRC','ATTRN','BAND', - 'BETAINV','BLSHIFT','BNOT','BOR','BRSHIFT','BXOR','BYTE','CDF', - 'CEIL','CEXIST','CINV','CLOSE','CNONCT','COLLATE','COMPBL', - 'COMPOUND','COMPRESS','COSH','COS','CSS','CUROBS','CV','DACCDBSL', - 'DACCDB','DACCSL','DACCSYD','DACCTAB','DAIRY','DATETIME','DATEJUL', - 'DATEPART','DATE','DAY','DCLOSE','DEPDBSL','DEPDB','DEPSL','DEPSYD', - 'DEPTAB','DEQUOTE','DHMS','DIF','DIGAMMA','DIM','DINFO','DNUM', - 'DOPEN','DOPTNAME','DOPTNUM','DREAD','DROPNOTE','DSNAME','ERFC', - 'ERF','EXIST','EXP','FAPPEND','FCLOSE','FCOL','FDELETE','FETCHOBS', - 'FETCH','FEXIST','FGET','FILEEXIST','FILENAME','FILEREF','FINFO', - 'FINV','FIPNAMEL','FIPNAME','FIPSTATE','FLOOR','FNONCT','FNOTE', - 'FOPEN','FOPTNAME','FOPTNUM','FPOINT','FPOS','FPUT','FREAD', - 'FREWIND','FRLEN','FSEP','FUZZ','FWRITE','GAMINV','GAMMA', - 'GETOPTION','GETVARC','GETVARN','HBOUND','HMS','HOSTHELP','HOUR', - 'IBESSEL','INDEXW','INDEXC','INDEX','INPUTN','INPUTC','INPUT', - 'INTRR','INTCK','INTNX','INT','IRR','JBESSEL','JULDATE','KURTOSIS', - 'LAG','LBOUND','LEFT','LENGTH','LGAMMA','LIBNAME','LIBREF','LOG10', - 'LOG2','LOGPDF','LOGPMF','LOGSDF','LOG','LOWCASE','MAX','MDY', - 'MEAN','MINUTE','MIN','MOD','MONTH','MOPEN','MORT','NETPV','NMISS', - 'NORMAL','NPV','N','OPEN','ORDINAL','PATHNAME','PDF','PEEKC','PEEK', - 'PMF','POINT','POISSON','POKE','PROBBETA','PROBBNML','PROBCHI', - 'PROBF','PROBGAM','PROBHYPR','PROBIT','PROBNEGB','PROBNORM','PROBT', - 'PUTN','PUTC','PUT','QTR','QUOTE','RANBIN','RANCAU','RANEXP', - 'RANGAM','RANGE','RANK','RANNOR','RANPOI','RANTBL','RANTRI', - 'RANUNI','REPEAT','RESOLVE','REVERSE','REWIND','RIGHT','ROUND', - 'SAVING','SCAN','SDF','SECOND','SIGN','SINH','SIN','SKEWNESS', - 'SOUNDEX','SPEDIS','SQRT','STDERR','STD','STFIPS','STNAME', - 'STNAMEL','SUBSTR','SUM','SYMGET','SYSGET','SYSMSG','SYSPROD', - 'SYSRC','SYSTEM','TANH','TAN','TIMEPART','TIME','TINV','TNONCT', - 'TODAY','TRANSLATE','TRANWRD','TRIGAMMA','TRIMN','TRIM','TRUNC', - 'UNIFORM','UPCASE','USS','VARFMT','VARINFMT','VARLABEL','VARLEN', - 'VARNAME','VARNUM','VARRAYX','VARRAY','VARTYPE','VAR','VERIFY', - 'VFORMATX','VFORMATDX','VFORMATD','VFORMATNX','VFORMATN', - 'VFORMATWX','VFORMATW','VFORMAT','VINARRAYX','VINARRAY', - 'VINFORMATX','VINFORMATDX','VINFORMATD','VINFORMATNX','VINFORMATN', - 'VINFORMATWX','VINFORMATW','VINFORMAT','VLABELX','VLABEL', - 'VLENGTHX','VLENGTH','VNAMEX','VNAME','VTYPEX','VTYPE','WEEKDAY', - 'YEAR','YYQ','ZIPFIPS','ZIPNAME','ZIPNAMEL','ZIPSTATE' - ), - 4 => array( - 'ABORT','ADD','ALTER','AND','ARRAY','AS','ATTRIB','BY','CALL', - 'CARDS4','CASCADE','CATNAME','CHECK','CONTINUE','CREATE', - 'DATALINES4','DELETE','DESCRIBE','DISPLAY','DISTINCT','DM','DROP', - 'ENDSAS','FILE','FOOTNOTE','FOREIGN','FORMAT','FROM', - 'GOTO','GROUP','HAVING','IN','INFILE','INFORMAT', - 'INSERT','INTO','KEEP','KEY','LABEL','LEAVE', - 'LIKE','LINK','LIST','LOSTCARD','MERGE','MESSAGE','MISSING', - 'MODIFY','MSGTYPE','NOT','NULL','ON','OPTIONS','OR','ORDER', - 'OUTPUT','PAGE','PRIMARY','REDIRECT','REFERENCES','REMOVE', - 'RENAME','REPLACE','RESET','RESTRICT','RETAIN','RETURN','SELECT', - 'SET','SKIP','STARTSAS','STOP','SYSTASK','TABLE','TITLE','UNIQUE', - 'UPDATE','VALIDATE','VIEW','WAITSAS','WHERE','WINDOW','X' - ), - 5 => array( - 'DO','ELSE','END','IF','THEN','UNTIL','WHILE' - ), - 6 => array( - 'RUN','QUIT','DATA' - ), - 7 => array( - 'ERROR' - ), - 8 => array( - 'WARNING' - ), - 9 => array( - 'NOTE' - ) - ), - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false, - 8 => false, - 9 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000ff;', - 2 => 'color: #0000ff;', - 3 => 'color: #0000ff;', - 4 => 'color: #0000ff;', - 5 => 'color: #0000ff;', - 6 => 'color: #000080; font-weight: bold;', - 7 => 'color: #ff0000;', - 8 => 'color: #00ff00;', - 9 => 'color: #0000ff;' - ), - 'COMMENTS' => array( -// 1 => 'color: #006400; font-style: italic;', - 'MULTI' => 'color: #006400; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #a020f0;' - ), - 'NUMBERS' => array( - 0 => 'color: #2e8b57; font-weight: bold;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff; font-weight: bold;', - 1 => 'color: #000080; font-weight: bold;', - 2 => 'color: #006400; font-style: italic;', - 3 => 'color: #006400; font-style: italic;', - 4 => 'color: #006400; font-style: italic;', - 5 => 'color: #ff0000; font-weight: bold;', - 6 => 'color: #00ff00; font-style: italic;', - 7 => 'color: #0000ff; font-style: normal;', - 8 => 'color: #b218b2; font-weight: bold;', - 9 => 'color: #b218b2; font-weight: bold;' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '', - 9 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 0 => "&[a-zA-Z_][a-zA-Z0-9_]*", - 1 => array(//Procedures - GESHI_SEARCH => '(^\\s*)(PROC \\w+)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'im', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 2 => array( - GESHI_SEARCH => '(^\\s*)(\\*.*;)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'im', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 3 => array( - GESHI_SEARCH => '(.*;\\s*)(\\*.*;)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'im', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 4 => array( - GESHI_SEARCH => '(^\\s*)(%\\*.*;)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'im', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 5 => array(//Error messages - GESHI_SEARCH => '(^ERROR.*)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'im', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - 6 => array(//Warning messages - GESHI_SEARCH => '(^WARNING.*)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'im', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - 7 => array(//Notice messages - GESHI_SEARCH => '(^NOTE.*)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'im', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - 8 => array( - GESHI_SEARCH => '(^\\s*)(CARDS.*)(^\\s*;\\s*$)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'sim', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - 9 => array( - GESHI_SEARCH => '(^\\s*)(DATALINES.*)(^\\s*;\\s*$)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'sim', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/scala.php b/library/Vendors/geshi/geshi/scala.php deleted file mode 100644 index 202c06c8..00000000 --- a/library/Vendors/geshi/geshi/scala.php +++ /dev/null @@ -1,122 +0,0 @@ - 'Scala', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'abstract', 'case', 'catch', 'class', 'def', - 'do', 'else', 'extends', 'false', 'final', - 'finally', 'for', 'forSome', 'if', 'implicit', - 'import', 'match', 'new', 'null', 'object', - 'override', 'package', 'private', 'protected', 'requires', - 'return', 'sealed', 'super', 'this', 'throw', - 'trait', 'try', 'true', 'type', 'val', - 'var', 'while', 'with', 'yield' - ), - 2 => array( - 'void', 'double', 'int', 'boolean', 'byte', 'short', 'long', 'char', 'float' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '*', '&', '%', '!', ';', '<', '>', '?', - '_', ':', '=', '=>', '<<:', - '<%', '>:', '#', '@' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000ff; font-weight: bold;', - 2 => 'color: #9999cc; font-weight: bold;', - ), - 'COMMENTS' => array( - 1=> 'color: #008000; font-style: italic;', - 'MULTI' => 'color: #00ff00; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #0000ff; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #F78811;' - ), - 'STRINGS' => array( - 0 => 'color: #6666FF;' - ), - 'NUMBERS' => array( - 0 => 'color: #F78811;' - ), - 'METHODS' => array( - 1 => 'color: #000000;', - 2 => 'color: #000000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000080;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => 'http://scala-lang.org', - 2 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/scheme.php b/library/Vendors/geshi/geshi/scheme.php deleted file mode 100644 index 2e2430bf..00000000 --- a/library/Vendors/geshi/geshi/scheme.php +++ /dev/null @@ -1,170 +0,0 @@ - 'Scheme', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array('#|' => '|#'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'abs', 'acos', 'and', 'angle', 'append', 'appply', 'approximate', - 'asin', 'assoc', 'assq', 'assv', 'atan', - - 'begin', 'boolean?', 'bound-identifier=?', - - 'caar', 'caddr', 'cadr', 'call-with-current-continuation', - 'call-with-input-file', 'call-with-output-file', 'call/cc', 'car', - 'case', 'catch', 'cdddar', 'cddddr', 'cdr', 'ceiling', 'char->integer', - 'char-alphabetic?', 'char-ci<=?', 'char-ci=?', - 'char-ci>?', 'char-ci=?', 'char-downcase', 'char-lower-case?', - 'char-numeric', 'char-ready', 'char-ready?', 'char-upcase', - 'char-upper-case?', 'char-whitespace?', 'char<=?', 'char=?', 'char>?', 'char?', 'close-input-port', 'close-output-port', - 'complex?', 'cond', 'cons', 'construct-identifier', 'cos', - 'current-input-port', 'current-output-port', - - 'd', 'define', 'define-syntax', 'delay', 'denominator', 'display', 'do', - - 'e', 'eof-object?', 'eq?', 'equal?', 'eqv?', 'even?', 'exact->inexact', - 'exact?', 'exp', 'expt', 'else', - - 'f', 'floor', 'for-each', 'force', 'free-identifer=?', - - 'gcd', 'gen-counter', 'gen-loser', 'generate-identifier', - - 'identifier->symbol', 'identifier', 'if', 'imag-part', 'inexact->exact', - 'inexact?', 'input-port?', 'integer->char', 'integer?', 'integrate-system', - - 'l', 'lambda', 'last-pair', 'lcm', 'length', 'let', 'let*', 'letrec', - 'list', 'list->string', 'list->vector', 'list-ref', 'list-tail', 'list?', - 'load', 'log', - - 'magnitude', 'make-polar', 'make-promise', 'make-rectangular', - 'make-string', 'make-vector', 'map', 'map-streams', 'max', 'member', - 'memq', 'memv', 'min', 'modulo', - - 'negative', 'newline', 'nil', 'not', 'null?', 'number->string', 'number?', - 'numerator', - - 'odd?', 'open-input-file', 'open-output-file', 'or', 'output-port', - - 'pair?', 'peek-char', 'positive?', 'procedure?', - - 'quasiquote', 'quote', 'quotient', - - 'rational', 'rationalize', 'read', 'read-char', 'real-part', 'real?', - 'remainder', 'return', 'reverse', - - 's', 'sequence', 'set!', 'set-char!', 'set-cdr!', 'sin', 'sqrt', 'string', - 'string->list', 'string->number', 'string->symbol', 'string-append', - 'string-ci<=?', 'string-ci=?', - 'string-ci>?', 'string-copy', 'string-fill!', 'string-length', - 'string-ref', 'string-set!', 'string<=?', 'string=?', 'string>?', 'string?', 'substring', 'symbol->string', - 'symbol?', 'syntax', 'syntax-rules', - - 't', 'tan', 'template', 'transcript-off', 'transcript-on', 'truncate', - - 'unquote', 'unquote-splicing', 'unwrap-syntax', - - 'vector', 'vector->list', 'vector-fill!', 'vector-length', 'vector-ref', - 'vector-set!', 'vector?', - - 'with-input-from-file', 'with-output-to-file', 'write', 'write-char', - - 'zero?' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '!', '%', '^', '&', '/','+','-','*','=','<','>',';','|' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 0 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/scilab.php b/library/Vendors/geshi/geshi/scilab.php deleted file mode 100644 index d1ff6fc1..00000000 --- a/library/Vendors/geshi/geshi/scilab.php +++ /dev/null @@ -1,295 +0,0 @@ - 'SciLab', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - 2 => "/(?<=\)|\]|\w)'/" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array(), - 'KEYWORDS' => array( - 1 => array( - 'if', 'else', 'elseif', 'end', 'select', 'case', 'for', 'while', 'break' - ), - 2 => array( - 'STDIN', 'STDOUT', 'STDERR', - '%i', '%pi', '%e', '%eps', '%nan', '%inf', '%s', '%t', '%f', - 'usual', 'polynomial', 'boolean', 'character', 'function', 'rational', 'state-space', - 'sparse', 'boolean sparse', 'list', 'tlist', 'library', 'endfunction' - ), - 3 => array( - '%asn', '%helps', '%k', '%sn', 'abcd', 'abinv', 'abort', 'about', 'About_M2SCI_tools', - 'abs', 'acos', 'acosh', 'acoshm', 'acosm', 'AdCommunications', 'add_demo', 'add_edge', - 'add_help_chapter', 'add_node', 'add_palette', 'addcolor', 'addf', 'addinter', 'addmenu', - 'adj_lists', 'adj2sp', 'aff2ab', 'alufunctions', 'amell', 'analpf', 'analyze', 'and', - 'ans', 'apropos', 'arc_graph', 'arc_number', 'arc_properties', 'argn', 'arhnk', 'arl2', - 'arma', 'arma2p', 'armac', 'armax', 'armax1', 'arsimul', 'artest', 'articul', 'ascii', - 'asciimat', 'asin', 'asinh', 'asinhm', 'asinm', 'assignation', 'atan', 'atanh', 'atanhm', - 'atanm', 'augment', 'auread', 'auwrite', 'axes_properties', 'axis_properties', 'backslash', - 'balanc', 'balreal', 'bandwr', 'banner','bar', 'barh', 'barhomogenize', 'basename', 'bdiag', - 'beep', 'besselh', 'besseli', 'besselj', 'besselk', 'bessely', 'best_match', 'beta','bezout', - 'bifish', 'bilin', 'binomial', 'black', 'bloc2exp', 'bloc2ss', 'bode', 'bool2s', - 'boucle', 'brackets', 'browsevar', 'bsplin3val', 'bstap', 'buttmag', 'buttondialog', - 'bvode', 'bvodeS', 'c_link', 'cainv', 'calendar', 'calerf', 'calfrq', 'call', 'canon', 'casc', - 'cat', 'catch', 'ccontrg', 'cd', 'cdfbet', 'cdfbin', 'cdfchi', 'cdfchn', 'cdff', 'cdffnc', - 'cdfgam', 'cdfnbn', 'cdfnor', 'cdfpoi', 'cdft', 'ceil', 'cell', 'cell2mat', 'cellstr', 'center', - 'cepstrum', 'chain_struct', 'chaintest', 'champ', 'champ_properties', 'champ1', 'char', 'chart', - 'chartooem', 'chdir', 'cheb1mag', 'cheb2mag', 'check_graph', 'chepol', 'chfact', 'chol', 'chsolve', - 'circuit', 'classmarkov', 'clc', 'clean', 'clear', 'clear_pixmap', 'clearfun', 'clearglobal','clf', - 'clipboard', 'close', 'cls2dls', 'cmb_lin', 'cmndred', 'cmoment', 'code2str', 'coeff', 'coff', 'coffg', - 'colcomp', 'colcompr', 'colinout', 'colon', 'color', 'color_list', 'colorbar', 'colordef', 'colormap', - 'colregul', 'comma', 'comments', 'comp', 'companion', 'comparison', 'Compound_properties', 'con_nodes', - 'cond', 'config', 'configure_msvc', 'conj', 'connex', 'console', 'cont_frm', 'cont_mat', 'Contents', - 'continue', 'contour', 'contour2d', 'contour2di', 'contourf', 'contr', 'contract_edge', 'contrss', - 'convex_hull', 'convol', 'convstr', 'copfac', 'copy', 'corr', 'correl', 'cos', 'cosh', 'coshm', - 'cosm', 'cotg', 'coth', 'cothm', 'covar', 'create_palette', 'cshep2d', 'csim', 'cspect', 'Cste', - 'ctr_gram', 'cumprod', 'cumsum', 'cycle_basis', 'czt', 'dasrt', 'dassl', 'datafit', 'date', 'datenum', - 'datevec', 'dbphi', 'dcf', 'ddp', 'debug', 'dec2hex', 'deff', 'definedfields', 'degree', 'delbpt', - 'delete', 'delete_arcs', 'delete_nodes', 'delip', 'delmenu', 'demoplay', 'denom', 'derivat', 'derivative', - 'des2ss', 'des2tf', 'det', 'determ', 'detr', 'detrend', 'dft', 'dhinf', 'dhnorm', 'diag', 'diary', - 'diff', 'diophant', 'dir', 'dirname', 'disp', 'dispbpt', 'dispfiles', 'dlgamma', 'dnaupd', 'do', 'dot', - 'double', 'dragrect', 'draw', 'drawaxis', 'drawlater', 'drawnow', 'driver', 'dsaupd', 'dscr', - 'dsearch', 'dsimul', 'dt_ility', 'dtsi', 'edge_number', 'edit', 'edit_curv', 'edit_error', - 'edit_graph', 'edit_graph_menus', 'editvar', 'eigenmarkov', 'ell1mag', - 'empty', 'emptystr', 'eqfir', 'eqiir', 'equal', 'Equal', 'equil', 'equil1', - 'ereduc', 'erf', 'erfc', 'erfcx', 'errbar', 'errcatch', 'errclear', 'error', 'error_table', 'etime', - 'eval', 'eval_cshep2d', 'eval3d', 'eval3dp', 'evans', 'evstr', 'excel2sci', 'exec', 'execstr', 'exists', - 'exit', 'exp', 'expm', 'external', 'extraction', 'eye', 'fac3d', 'factorial', 'factors', 'faurre', 'fchamp', - 'fcontour', 'fcontour2d', 'fec', 'fec_properties', 'feedback', 'feval', 'ffilt', 'fft', 'fft2', 'fftshift', - 'fgrayplot', 'figure', 'figure_properties', 'figure_style', 'file', 'fileinfo', 'fileparts', 'filter', 'find', - 'find_freq', 'find_path', 'findABCD', 'findAC', 'findBD', 'findBDK', 'findm', 'findmsvccompiler', 'findobj', - 'findR', 'findx0BD', 'firstnonsingleton', 'fit_dat', 'fix', 'floor', 'flts', 'foo', 'format', - 'formatman', 'fort', 'fourplan', 'fplot2d', 'fplot3d', 'fplot3d1', 'fprintf', 'fprintfMat', 'frep2tf', - 'freq', 'freson', 'frexp', 'frfit', 'frmag', 'fscanf', 'fscanfMat', 'fsfirlin', 'fsolve', 'fspecg', - 'fstabst', 'fstair', 'ftest', 'ftuneq', 'full', 'fullfile', 'fullrf', 'fullrfk', 'fun2string', 'Funcall', - 'funcprot', 'functions', 'funptr', 'fusee', 'G_make', 'g_margin', 'gainplot', 'gamitg', - 'gamma', 'gammaln', 'gca', 'gcare', 'gcd', 'gce', 'gcf', 'gda', 'gdf', 'gen_net', 'genfac3d', 'genlib', - 'genmarkov', 'geom3d', 'geomean', 'get', 'get_contents_infer', 'get_function_path', 'getcolor', 'getcwd', - 'getd', 'getdate', 'getenv', 'getf', 'getfield', 'getfont', 'gethistory', 'getio', 'getlinestyle', - 'getlongpathname', 'getmark', 'getmemory', 'getos', 'getpid', 'getscilabkeywords', 'getshell', - 'getshortpathname', 'getsymbol', 'getvalue', 'getversion', 'gfare', 'gfrancis', 'girth', 'givens', - 'glever', 'glist', 'global', 'GlobalProperty', 'glue', 'gmres', 'gpeche', 'gr_menu', 'graduate', 'grand', - 'graph_2_mat', 'graph_center', 'graph_complement', 'graph_diameter', 'graph_power', 'graph_simp', 'graph_sum', - 'graph_union', 'graphic', 'Graphics', 'graphics_entities', 'graph-list', 'graycolormap', 'grayplot', - 'grayplot_properties', 'graypolarplot', 'great', 'grep', 'group', 'gschur', 'gsort', 'gspec', 'gstacksize', - 'gtild', 'h_cl', 'h_inf', 'h_inf_st', 'h_norm', 'h2norm', 'halt', 'hamilton', 'hank', 'hankelsv', 'harmean', - 'hat', 'havewindow', 'head_comments', 'help', 'help_skeleton', 'hermit', 'hess', 'hex2dec', 'hilb', 'hinf', - 'hist3d', 'histplot', 'horner', 'host', 'hotcolormap', 'householder', 'hrmt', 'hsv2rgb', 'hsvcolormap', - 'htrianr', 'hypermat', 'hypermatrices', 'iconvert', 'ieee', 'ifft', 'iir', 'iirgroup', 'iirlp', - 'ilib_build', 'ilib_compile', 'ilib_for_link', 'ilib_gen_gateway', 'ilib_gen_loader', 'ilib_gen_Make', - 'im_inv', 'imag', 'impl', 'imrep2ss', 'imult', 'ind2sub', 'Infer', 'inistate', 'input', 'insertion', 'int', - 'int16', 'int2d', 'int32', 'int3d', 'int8', 'intc', 'intdec', 'integrate', 'interp', 'interp1', 'interp2d', - 'interp3d', 'interpln', 'intersci', 'intersect', 'intg', 'intl', 'intppty', 'intsplin', 'inttrap', 'inttype', - 'inv', 'inv_coeff', 'invr', 'invsyslin', 'iqr', 'is_connex', 'iscellstr', 'isdef', 'isdir', 'isempty', - 'isequal', 'isequalbitwise', 'iserror', 'isglobal', 'isinf', 'isnan', 'isoview', 'isreal', 'javasci', - 'jetcolormap', 'jmat', 'justify', 'kalm', 'karmarkar', 'kernel', 'keyboard', 'knapsack', 'kpure', 'krac2', - 'kron', 'kroneck', 'label_properties', 'labostat', 'LANGUAGE', 'lasterror', 'lattn', 'lattp', 'lcf', 'lcm', - 'lcmdiag', 'ldiv', 'ldivf', 'leastsq', 'left', 'legend', 'legend_properties', 'legendre', 'legends', 'length', - 'leqr', 'less', 'lev', 'levin', 'lex_sort', 'lft', 'lgfft', 'lib', 'lin', 'lin2mu', 'lindquist', - 'line_graph', 'linear_interpn', 'lines', 'LineSpec', 'linf', 'linfn', 'link', 'linmeq', 'linpro', 'linsolve', - 'linspace', 'listfiles', 'listvarinfile', 'lmisolver', 'lmitool', 'load', 'load_graph', 'loadhistory', - 'loadmatfile', 'loadplots', 'loadwave', 'locate', 'log', 'log10', 'log1p', 'log2', 'logm', 'logspace', - 'lotest', 'lqe', 'lqg', 'lqg_ltr', 'lqg2stan', 'lqr', 'ls', 'lsq', 'lsq_splin', 'lsqrsolve', 'lsslist', - 'lstcat', 'lstsize', 'ltitr', 'lu', 'ludel', 'lufact', 'luget', 'lusolve', 'lyap', 'm_circle', 'm2scideclare', - 'macglov', 'macr2lst', 'macr2tree', 'macro', 'macrovar', 'mad', 'make_graph', 'make_index', 'makecell', 'man', - 'manedit', 'mapsound', 'markp2ss', 'mat_2_graph', 'matfile2sci', 'Matlab-Scilab_character_strings', 'Matplot', - 'Matplot_properties', 'Matplot1', 'matrices', 'matrix', 'max', 'max_cap_path', 'max_clique', 'max_flow', - 'maxi', 'mcisendstring', 'mclearerr', 'mclose', 'mdelete', 'mean', 'meanf', 'median', 'menus', 'meof', - 'merror', 'mese', 'mesh', 'mesh2d', 'meshgrid', 'mfft', 'mfile2sci', 'mfprintf', 'mfscanf', 'mget', 'mgeti', - 'mgetl', 'mgetstr', 'milk_drop', 'min', 'min_lcost_cflow', 'min_lcost_flow1', 'min_lcost_flow2', - 'min_qcost_flow', 'min_weight_tree', 'mine', 'mini', 'minreal', 'minss', 'minus', 'mkdir', 'mlist', 'mode', - 'modulo', 'moment', 'mopen', 'move', 'mprintf', 'mps2linpro', 'mput', 'mputl', 'mputstr', 'mrfit', 'mscanf', - 'msd', 'mseek', 'msprintf', 'msscanf', 'mstr2sci', 'mtell', 'mtlb_0', 'mtlb_a', 'mtlb_all', 'mtlb_any', - 'mtlb_axis', 'mtlb_beta', 'mtlb_box', 'mtlb_close', 'mtlb_colordef', 'mtlb_conv', 'mtlb_cumprod', 'mtlb_cumsum', - 'mtlb_dec2hex', 'mtlb_delete', 'mtlb_diag', 'mtlb_diff', 'mtlb_dir', 'mtlb_double', 'mtlb_e', 'mtlb_echo', - 'mtlb_eig', 'mtlb_eval', 'mtlb_exist', 'mtlb_eye', 'mtlb_false', 'mtlb_fft', 'mtlb_fftshift', 'mtlb_find', - 'mtlb_findstr', 'mtlb_fliplr', 'mtlb_fopen', 'mtlb_format', 'mtlb_fprintf', 'mtlb_fread', 'mtlb_fscanf', - 'mtlb_full', 'mtlb_fwrite', 'mtlb_grid', 'mtlb_hold', 'mtlb_i', 'mtlb_ifft', 'mtlb_imp', 'mtlb_int16', - 'mtlb_int32', 'mtlb_int8', 'mtlb_is', 'mtlb_isa', 'mtlb_isfield', 'mtlb_isletter', 'mtlb_isspace', 'mtlb_l', - 'mtlb_legendre', 'mtlb_linspace', 'mtlb_load', 'mtlb_logic', 'mtlb_logical', 'mtlb_lower', 'mtlb_max', - 'mtlb_min', 'mtlb_mode', 'mtlb_more', 'mtlb_num2str', 'mtlb_ones', 'mtlb_plot', 'mtlb_prod', 'mtlb_rand', - 'mtlb_randn', 'mtlb_rcond', 'mtlb_realmax', 'mtlb_realmin', 'mtlb_repmat', 'mtlb_s', 'mtlb_save', - 'mtlb_setstr', 'mtlb_size', 'mtlb_sort', 'mtlb_sparse', 'mtlb_strcmp', 'mtlb_strcmpi', 'mtlb_strfind', - 'mtlb_strrep', 'mtlb_sum', 'mtlb_t', 'mtlb_toeplitz', 'mtlb_tril', 'mtlb_triu', 'mtlb_true', 'mtlb_uint16', - 'mtlb_uint32', 'mtlb_uint8', 'mtlb_upper', 'mtlb_zeros', 'mu2lin', 'mucomp', 'mulf', 'mvvacov', 'name2rgb', - 'names', 'nancumsum', 'nand2mean', 'nanmax', 'nanmean', 'nanmeanf', 'nanmedian', 'nanmin', 'nanstdev', - 'nansum', 'narsimul', 'NDcost', 'ndgrid', 'ndims', 'nearfloat', 'nehari', 'neighbors', 'netclose', 'netwindow', - 'netwindows', 'new', 'newaxes', 'newest', 'newfun', 'nextpow2', 'nf3d', 'nfreq', 'nlev', 'nnz', 'node_number', - 'nodes_2_path', 'nodes_degrees', 'noisegen', 'norm', 'not', 'null', 'number_properties', 'numdiff', 'numer', - 'nyquist', 'object_editor', 'obs_gram', 'obscont', 'obscont1', 'observer', 'obsv_mat', 'obsvss', 'ode', - 'ode_discrete', 'ode_optional_output', 'ode_root', 'odedc', 'odeoptions', 'oemtochar', 'old_style', - 'oldbesseli', 'oldbesselj', 'oldbesselk', 'oldbessely', 'oldload', 'oldplot', 'oldsave', 'ones', - 'Operation', 'optim', 'or', 'orth', 'overloading', 'p_margin', 'param3d', 'param3d_properties', - 'param3d1', 'paramfplot2d', 'parents', 'parrot', 'part', 'path_2_nodes', 'pathconvert', 'pause', 'pbig', - 'pca', 'pcg', 'pdiv', 'pen2ea', 'pencan', 'penlaur', 'percent', 'perctl', 'perfect_match', 'perl', - 'perms', 'permute', 'pertrans', 'pfss', 'phasemag', 'phc', 'pie', 'pinv', 'pipe_network', 'playsnd', 'plot', - 'plot_graph', 'plot2d', 'plot2d_old_version', 'plot2d1', 'plot2d2', 'plot2d3', 'plot2d4', 'plot3d', - 'plot3d_old_version', 'plot3d1', 'plot3d2', 'plot3d3', 'plotframe', 'plotprofile', 'plus', 'plzr', - 'pmodulo', 'pol2des', 'pol2str', 'pol2tex', 'polar', 'polarplot', 'polfact', 'poly', 'polyline_properties', - 'portr3d', 'portrait', 'power', 'ppol', 'prbs_a', 'predecessors', 'predef', 'print', 'printf', - 'printf_conversion', 'printing', 'printsetupbox', 'prod', 'profile', 'progressionbar', 'proj', 'projsl', - 'projspec', 'psmall', 'pspect', 'pvm', 'pvm_addhosts', 'pvm_barrier', 'pvm_bcast', 'pvm_bufinfo', 'pvm_config', - 'pvm_delhosts', 'pvm_error', 'pvm_exit', 'pvm_f772sci', 'pvm_get_timer', 'pvm_getinst', 'pvm_gettid', - 'pvm_gsize', 'pvm_halt', 'pvm_joingroup', 'pvm_kill', 'pvm_lvgroup', 'pvm_mytid', 'pvm_parent', 'pvm_probe', - 'pvm_recv', 'pvm_reduce', 'pvm_sci2f77', 'pvm_send', 'pvm_set_timer', 'pvm_spawn', 'pvm_spawn_independent', - 'pvm_start', 'pvm_tasks', 'pvm_tidtohost', 'pvmd3', 'pwd', 'qassign', 'qld', 'qmr', 'qr', 'quapro', 'quart', - 'quaskro', 'quit', 'quote', 'rand', 'randpencil', 'range', 'rank', 'rankqr', 'rat', 'rcond', - 'rdivf', 'read', 'read4b', 'readb', 'readc_', 'readmps', 'readxls', 'real', 'realtime', 'realtimeinit', - 'rectangle_properties', 'recur', 'reglin', 'regress', 'remez', 'remezb', 'repfreq', 'replot', 'resethistory', - 'residu', 'resume', 'return', 'rgb2name', 'ric_desc', 'ricc', 'riccati', 'rlist', 'rmdir', 'roots', 'rotate', - 'round', 'routh_t', 'rowcomp', 'rowcompr', 'rowinout', 'rowregul', 'rowshuff', 'rpem', 'rref', 'rtitr', - 'rubberbox', 'salesman', 'sample', 'samplef', 'samwr', 'save', 'save_format', 'save_graph', 'savehistory', - 'savematfile', 'savewave', 'sca', 'scaling', 'scanf', 'scanf_conversion', 'scf', 'schur', 'sci_files', - 'sci2exp', 'sci2for', 'sci2map', 'sciargs', 'SciComplex', 'SciComplexArray', 'SciDouble', 'SciDoubleArray', - 'scilab', 'Scilab', 'ScilabEval', 'scilink', 'scipad', 'SciString', 'SciStringArray', 'sd2sci', 'sda', 'sdf', - 'secto3d', 'segs_properties', 'semi', 'semicolon', 'semidef', 'sensi', 'set', 'set_posfig_dim', - 'setbpt', 'setdiff', 'setenv', 'seteventhandler', 'setfield', 'sethomedirectory', 'setlanguage', 'setmenu', - 'sfact', 'Sfgrayplot', 'Sgrayplot', 'sgrid', 'shortest_path', 'show_arcs', 'show_graph', 'show_nodes', - 'show_pixmap', 'showprofile', 'sident', 'sign', 'Signal', 'signm', 'simp', 'simp_mode', 'sin', 'sinc', - 'sincd', 'sinh', 'sinhm', 'sinm', 'size', 'slash', 'sleep', 'sm2des', 'sm2ss', 'smooth', 'solve', - 'sorder', 'sort', 'sound', 'soundsec', 'sp2adj', 'spaninter', 'spanplus', 'spantwo', 'spchol', - 'spcompack', 'spec', 'specfact', 'speye', 'spget', 'splin', 'splin2d', 'splin3d', 'split_edge', 'spones', - 'sprand', 'sprintf', 'spzeros', 'sqroot', 'sqrt', 'sqrtm', 'square', 'squarewave', 'srfaur', 'srkf', 'ss2des', - 'ss2ss', 'ss2tf', 'sscanf', 'sskf', 'ssprint', 'ssrand', 'st_deviation', 'st_ility', 'stabil', 'stacksize', - 'star', 'startup', 'stdev', 'stdevf', 'str2code', 'strange', 'strcat', 'strindex', 'string', 'stringbox', - 'strings', 'stripblanks', 'strong_con_nodes', 'strong_connex', 'strsplit', 'strsubst', 'struct', 'sub2ind', - 'subf', 'subgraph', 'subplot', 'successors', 'sum', 'supernode', 'surf', 'surface_properties', 'sva', - 'svd', 'svplot', 'sylm', 'sylv', 'symbols', 'sysconv', 'sysdiag', 'sysfact', 'syslin', 'syssize', 'system', - 'systems', 'systmat', 'tabul', 'tan', 'tangent', 'tanh', 'tanhm', 'tanm', 'TCL_CreateSlave', 'TCL_DeleteInterp', - 'TCL_EvalFile', 'TCL_EvalStr', 'TCL_ExistInterp', 'TCL_ExistVar', 'TCL_GetVar', 'TCL_GetVersion', 'TCL_SetVar', - 'TCL_UnsetVar', 'TCL_UpVar', 'tdinit', 'testmatrix', 'texprint', 'text_properties', 'tf2des', 'tf2ss', 'then', - 'thrownan', 'tic', 'tilda', 'time_id', 'timer', 'title', 'titlepage', 'TK_EvalFile', 'TK_EvalStr', 'tk_getdir', - 'tk_getfile', 'TK_GetVar', 'tk_savefile', 'TK_SetVar', 'toc', 'toeplitz', 'tohome', 'tokenpos', - 'tokens', 'toolbar', 'toprint', 'trace', 'trans', 'trans_closure', 'translatepaths', 'tree2code', 'trfmod', - 'trianfml', 'tril', 'trimmean', 'trisolve', 'triu', 'try', 'trzeros', 'twinkle', 'type', 'Type', 'typename', - 'typeof', 'ui_observer', 'uicontrol', 'uimenu', 'uint16', 'uint32', 'uint8', 'ulink', 'unglue', 'union', - 'unique', 'unix', 'unix_g', 'unix_s', 'unix_w', 'unix_x', 'unobs', 'unsetmenu', 'unzoom', 'user', 'varargin', - 'varargout', 'Variable', 'variance', 'variancef', 'varn', 'vectorfind', 'waitbar', 'warning', 'wavread', - 'wavwrite', 'wcenter', 'wfir', 'what', 'where', 'whereami', 'whereis', 'who', 'who_user', 'whos', - 'wiener', 'wigner', 'winclose', 'window', 'winlist', 'winopen', 'winqueryreg', 'winsid', 'with_atlas', - 'with_gtk', 'with_javasci', 'with_pvm', 'with_texmacs', 'with_tk', 'writb', 'write', 'write4b', 'x_choices', - 'x_choose', 'x_dialog', 'x_matrix', 'x_mdialog', 'x_message', 'x_message_modeless', 'xarc', 'xarcs', 'xarrows', - 'xaxis', 'xbasc', 'xbasimp', 'xbasr', 'xchange', 'xclea', 'xclear', 'xclick', 'xclip', 'xdel', 'xend', - 'xfarc', 'xfarcs', 'xfpoly', 'xfpolys', 'xfrect', 'xget', 'xgetech', 'xgetfile', 'xgetmouse', 'xgraduate', - 'xgrid', 'xinfo', 'xinit', 'xlfont', 'xload', 'xls_open', 'xls_read', 'xmltohtml', 'xname', 'xnumb', 'xpause', - 'xpoly', 'xpolys', 'xrect', 'xrects', 'xrpoly', 'xs2bmp', 'xs2emf', 'xs2eps', 'xs2fig', 'xs2gif', 'xs2ppm', - 'xs2ps', 'xsave', 'xsegs', 'xselect', 'xset', 'xsetech', 'xsetm', 'xstring', 'xstringb', 'xstringl', 'xtape', - 'xtitle', 'yulewalk', 'zeropen', 'zeros', 'zgrid', 'zoom_rect', 'zpbutt', 'zpch1', 'zpch2', 'zpell' - ) - ), - 'SYMBOLS' => array( - '<', '>', '=', - '!', '@', '~', '&', '|', - '+','-', '*', '/', '%', - ',', ';', '?', ':', "'" - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => true, - 1 => true, - 2 => true, - 3 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => '', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;', - 'HARD' => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff;', - 4 => 'color: #009999;', - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://www.scilab.org/product/dic-mat-sci/M2SCI_doc.htm', - 2 => 'http://www.scilab.org/product/dic-mat-sci/M2SCI_doc.htm', - 3 => 'http://www.scilab.org/product/dic-mat-sci/M2SCI_doc.htm' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '->', - 2 => '::' - ), - 'REGEXPS' => array( - //Variable - 0 => '[\\$%@]+[a-zA-Z_][a-zA-Z0-9_]*', - //File Descriptor - 4 => '<[a-zA-Z_][a-zA-Z0-9_]*>', - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/sdlbasic.php b/library/Vendors/geshi/geshi/sdlbasic.php deleted file mode 100644 index 876dc09a..00000000 --- a/library/Vendors/geshi/geshi/sdlbasic.php +++ /dev/null @@ -1,165 +0,0 @@ - 'sdlBasic', - 'COMMENT_SINGLE' => array(1 => "'", 2 => "rem", 3 => "!", 4 => "#"), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'const', 'option', 'explicit', 'qbasic', 'include', 'argc', - 'argv', 'command', 'command$', 'run', 'shell', 'os', 'declare', - 'sub', 'function', 'return', 'while', 'wend', 'exit', 'end', - 'continue', 'if', 'then', 'else', 'elseif', - 'select', 'case', 'for', 'each', 'step', - 'next', 'to', 'dim', 'shared', 'common', 'lbound', 'bound', - 'erase', 'asc', 'chr', 'chr$', 'insert', 'insert$', 'instr', 'lcase', - 'lcase$', 'left', 'left$', 'len', 'length', 'ltrim', 'ltrim$', 'mid', - 'mid$', 'replace', 'replace$', 'replacesubstr', 'replacesubstr$', - 'reverse', 'reverse$', 'right', 'right$', 'rinstr', 'rtrim', 'rtrim$', - 'space', 'space$', 'str', 'str$', 'strf', 'strf$', 'string', 'string$', - 'tally', 'trim', 'trim$', 'typeof', 'typeof$', 'ucase', 'ucase$', 'val', - 'abs', 'acos', 'andbit', 'asin', 'atan', 'bitwiseand', 'bitwiseor', - 'bitwisexor', 'cos', 'exp', 'fix', 'floor', 'frac', 'hex', 'hex$', 'int', - 'log', 'min', 'max', 'orbit', 'randomize', 'rnd', 'round', 'sgn', 'sin', - 'sqr', 'tan', 'xorbit', 'open', 'as', 'file', 'input', 'close', 'output', - 'append', 'eof', 'fileexists', 'filecopy', 'filemove', 'filerename', - 'freefile', 'kill', 'loc', 'lof', 'readbyte', 'rename', 'seek', - 'writebyte', 'chdir', 'dir', 'dir$', 'direxists', 'dirfirst', 'dirnext', - 'mkdir', 'rmdir', 'print', 'date', 'date$', 'time', 'time$', 'ticks', - 'data', 'read', 'reservebank', 'freebank', 'copybank', 'loadbank', - 'savebank', 'setbank', 'sizebank', 'poke', 'doke', 'loke', 'peek', 'deek', - 'leek', 'memcopy', 'setdisplay', 'setcaption', 'caption', 'displaywidth', - 'displayheight', 'displaybpp', 'screen', 'directscreen', 'screenopen', - 'screenclose', 'screenclone', 'screencopy', 'screenfade', 'screenfadein', - 'screencrossfade', 'screenalpha', 'screenlock', 'screenunlock', - 'screenrect', 'xscreenrect', 'yscreenrect', 'wscreenrect', 'hscreenrect', - 'flagscreenrect', 'screenwidth', 'screenheight', 'offset', 'xoffset', - 'yoffset', 'cls', 'screenswap', 'autoback', 'setautoback', - 'dualplayfield', 'waitvbl', 'fps', 'rgb', 'enablepalette', 'color', - 'palette', 'colorcycling', 'ink', 'point', 'dot', 'plot', 'line', 'box', - 'bar', 'circle', 'fillcircle', 'ellipse', 'fillellipse', 'paint', - 'loadimage', 'saveimage', 'loadsound', 'savesound', 'loadmusic', - 'hotspot', 'setcolorkey', 'imageexists', 'imagewidth', 'imageheight', - 'deleteimage', 'copyimage', 'setalpha', 'zoomimage', 'rotateimage', - 'rotozoomimage', 'blt', 'pastebob', 'pasteicon', 'grab', 'spriteclip', - 'sprite', 'deletesprite', 'xsprite', 'ysprite', 'spritewidth', - 'spriteheight', 'frsprite', 'livesprite', 'spritehit', 'autoupdatesprite', - 'updatesprite', 'setbob', 'bob', 'deletebob', 'xbob', 'ybob', 'bobwidth', - 'bobheight', 'frbob', 'livebob', 'bobhit', 'autoupdatebob', 'updatebob', - 'text', 'setfont', 'textrender', 'pen', 'paper', 'prints', 'locate', - 'atx', 'aty', 'curson', 'cursoff', 'inputs', 'zoneinputs', - 'isenabledsound', 'soundexists', 'deletesound', 'copysound', - 'musicexists', 'playsound', 'volumesound', 'stopsound', 'pausesound', - 'resumesound', 'vumetersound', 'positionsound', 'soundchannels', - 'playmusic', 'positionmusic', 'stopmusic', 'fademusic', 'pausemusic', - 'resumemusic', 'rewindmusic', 'volumemusic', 'speedmusic', 'numdrivescd', - 'namecd', 'getfreecd', 'opencd', 'indrivecd', 'trackscd', 'curtrackcd', - 'curframecd', 'playcd', 'playtrackscd', - 'pausecd', 'resumecd', 'stopcd', 'ejectcd', 'closecd', 'tracktypecd', - 'tracklengthcd', 'trackoffsetcd', 'key', 'inkey', 'waitkey', 'xmouse', - 'ymouse', 'xmousescreen', 'ymousescreen', 'bmouse', 'changemouse', - 'locatemouse', 'mouseshow', 'mousehide', 'mousezone', 'numjoysticks', - 'namejoystick', 'numaxesjoystick', 'numballsjoystick', 'numhatsjoystick', - 'numbuttonsjoystick', 'getaxisjoystick', 'gethatjoystick', - 'getbuttonjoystick', 'xgetballjoystick', 'ygetballjoystick', 'joy', - 'bjoy', 'wait', 'timer', 'isenabledsock', 'getfreesock', 'opensock', - 'acceptsock', 'isserverready', 'connectsock', 'connectionreadysock', - 'isclientready', 'losesock', 'peeksock', 'readsock', 'readbytesock', - 'readlinesock', 'writesock', 'writebytesock', 'writelinesock', - 'getremoteip', 'getremoteport', 'getlocalip' - ) - ), - 'SYMBOLS' => array( - '(', ')' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080;', - 2 => 'color: #808080;', - 3 => 'color: #808080;', - 4 => 'color: #808080;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 0 => 'color: #66cc66;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/smalltalk.php b/library/Vendors/geshi/geshi/smalltalk.php deleted file mode 100644 index b475ad71..00000000 --- a/library/Vendors/geshi/geshi/smalltalk.php +++ /dev/null @@ -1,154 +0,0 @@ - 'Smalltalk', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array('"' => '"'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'"), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'self','super','true','false','nil' - ) - ), - 'SYMBOLS' => array( - '[', ']', '=' , ':=', '(', ')', '#' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #7f007f;' - ), - 'COMMENTS' => array( - 'MULTI' => 'color: #007f00; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => '' - ), - 'STRINGS' => array( - 0 => 'color: #7f0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #7f0000;' - ), - 'METHODS' => array( - 0 => '' - ), - 'SYMBOLS' => array( - 0 => 'color: #000066; font-weight:bold;' - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff;', - 1 => 'color: #7f0000;', - 2 => 'color: #7f0000;', - 3 => 'color: #00007f;', - 5 => 'color: #00007f;', - 6 => 'color: #00007f;' - ), - 'SCRIPT' => array( - 0 => '' - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 0 => array( - GESHI_SEARCH => '([^a-zA-Z0-9_#<])([A-Z]+[a-zA-Z0-9_]*)(?!>)', //class names - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 1 => array( - GESHI_SEARCH => '(#+)([a-zA-Z0-9_]+)', //symbols - GESHI_REPLACE => '\\1\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - 2 => array( - GESHI_SEARCH => '(#\s*\([^)]*\))', //array symbols - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - 3 => array( - GESHI_SEARCH => '([a-zA-Z0-9_\s]+)', //temporary variables - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '|', - GESHI_AFTER => '|' - ), - 5 => array( - GESHI_SEARCH => '([:(,=[.*\/+-]\s*(?!\d+\/))([a-zA-Z0-9_]+)', //message parameters, message receivers - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 's', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 6 => array( - GESHI_SEARCH => '([a-zA-Z0-9_]+)(\s*:=)', //assignment targets - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '\\2' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/smarty.php b/library/Vendors/geshi/geshi/smarty.php deleted file mode 100644 index 7f448928..00000000 --- a/library/Vendors/geshi/geshi/smarty.php +++ /dev/null @@ -1,192 +0,0 @@ - 'Smarty', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array('{*' => '*}'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - '$smarty', 'now', 'const', 'capture', 'config', 'section', 'foreach', 'template', 'version', 'ldelim', 'rdelim', - 'foreachelse', 'include', 'include_php', 'insert', 'if', 'elseif', 'else', 'php', - 'sectionelse', 'is_cached', - ), - 2 => array( - 'capitalize', 'count_characters', 'cat', 'count_paragraphs', 'count_sentences', 'count_words', 'date_format', - 'default', 'escape', 'indent', 'lower', 'nl2br', 'regex_replace', 'replace', 'spacify', 'string_format', - 'strip', 'strip_tags', 'truncate', 'upper', 'wordwrap', - ), - 3 => array( - 'counter', 'cycle', 'debug', 'eval', 'html_checkboxes', 'html_image', 'html_options', - 'html_radios', 'html_select_date', 'html_select_time', 'html_table', 'math', 'mailto', 'popup_init', - 'popup', 'textformat' - ), - 4 => array( - '$template_dir', '$compile_dir', '$config_dir', '$plugins_dir', '$debugging', '$debug_tpl', - '$debugging_ctrl', '$autoload_filters', '$compile_check', '$force_compile', '$caching', '$cache_dir', - '$cache_lifetime', '$cache_handler_func', '$cache_modified_check', '$config_overwrite', - '$config_booleanize', '$config_read_hidden', '$config_fix_newlines', '$default_template_handler_func', - '$php_handling', '$security', '$secure_dir', '$security_settings', '$trusted_dir', '$left_delimiter', - '$right_delimiter', '$compiler_class', '$request_vars_order', '$request_use_auto_globals', - '$error_reporting', '$compile_id', '$use_sub_dirs', '$default_modifiers', '$default_resource_type' - ), - 5 => array( - 'append', 'append_by_ref', 'assign', 'assign_by_ref', 'clear_all_assign', 'clear_all_cache', - 'clear_assign', 'clear_cache', 'clear_compiled_tpl', 'clear_config', 'config_load', 'display', - 'fetch', 'get_config_vars', 'get_registered_object', 'get_template_vars', - 'load_filter', 'register_block', 'register_compiler_function', 'register_function', - 'register_modifier', 'register_object', 'register_outputfilter', 'register_postfilter', - 'register_prefilter', 'register_resource', 'trigger_error', 'template_exists', 'unregister_block', - 'unregister_compiler_function', 'unregister_function', 'unregister_modifier', 'unregister_object', - 'unregister_outputfilter', 'unregister_postfilter', 'unregister_prefilter', 'unregister_resource' - ), - 6 => array( - 'name', 'file', 'scope', 'global', 'key', 'once', 'script', - 'loop', 'start', 'step', 'max', 'show', 'values', 'value', 'from', 'item' - ), - 7 => array( - 'eq', 'neq', 'ne', 'lte', 'gte', 'ge', 'le', 'not', 'mod' - ), - 8 => array( - // some common php functions - 'isset', 'is_array', 'empty', 'count', 'sizeof' - ) - ), - 'SYMBOLS' => array( - '/', '=', '==', '!=', '>', '<', '>=', '<=', '!', '%' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false, - 8 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0600FF;', //Functions - 2 => 'color: #008000;', //Modifiers - 3 => 'color: #0600FF;', //Custom Functions - 4 => 'color: #804040;', //Variables - 5 => 'color: #008000;', //Methods - 6 => 'color: #6A0A0A;', //Attributes - 7 => 'color: #D36900;', //Text-based symbols - 8 => 'color: #0600FF;' //php functions - ), - 'COMMENTS' => array( - 'MULTI' => 'color: #008080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #D36900;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #D36900;' - ), - 'SCRIPT' => array( - 0 => '', - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #009000;' - ), - 'REGEXPS' => array( - 0 => 'color: #00aaff;' - ) - ), - 'URLS' => array( - 1 => 'http://smarty.php.net/{FNAMEL}', - 2 => 'http://smarty.php.net/{FNAMEL}', - 3 => 'http://smarty.php.net/{FNAMEL}', - 4 => 'http://smarty.php.net/{FNAMEL}', - 5 => 'http://smarty.php.net/{FNAMEL}', - 6 => '', - 7 => 'http://smarty.php.net/{FNAMEL}', - 8 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - // variables - 0 => '\$[a-zA-Z][a-zA-Z0-9_]*' - ), - 'STRICT_MODE_APPLIES' => GESHI_ALWAYS, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - '{' => '}' - ), - 1 => array( - '', - ), - 2 => array( - '<' => '>' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => false, - 2 => false - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?|^])", - 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-&])" - ) - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/sql.php b/library/Vendors/geshi/geshi/sql.php deleted file mode 100644 index 9e45e850..00000000 --- a/library/Vendors/geshi/geshi/sql.php +++ /dev/null @@ -1,140 +0,0 @@ - 'SQL', - 'COMMENT_SINGLE' => array(1 =>'--'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => 1, - 'QUOTEMARKS' => array("'", '"', '`'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'ADD', 'ALL', 'ALTER', 'AND', 'AS', 'ASC', - 'AUTO_INCREMENT', 'BETWEEN', 'BINARY', 'BOOLEAN', - 'BOTH', 'BY', 'CHANGE', 'CHECK', 'COLUMN', 'COLUMNS', - 'CREATE', 'CROSS', 'DATA', 'DATABASE', 'DATABASES', - 'DEFAULT', 'DELAYED', 'DELETE', 'DESC', 'DESCRIBE', - 'DISTINCT', 'DROP', 'ENCLOSED', 'ESCAPED', 'EXISTS', - 'EXPLAIN', 'FIELD', 'FIELDS', 'FLUSH', 'FOR', - 'FOREIGN', 'FROM', 'FULL', 'FUNCTION', 'GRANT', - 'GROUP', 'HAVING', 'IDENTIFIED', 'IF', 'IGNORE', - 'IN', 'INDEX', 'INFILE', 'INNER', 'INSERT', 'INTO', - 'IS', 'JOIN', 'KEY', 'KEYS', 'KILL', 'LANGUAGE', - 'LEADING', 'LEFT', 'LIKE', 'LIMIT', 'LINES', 'LOAD', - 'LOCAL', 'LOCK', 'LOW_PRIORITY', 'MODIFY', 'NATURAL', - 'NEXTVAL', 'NOT', 'NULL', 'ON', 'OPTIMIZE', 'OPTION', - 'OPTIONALLY', 'OR', 'ORDER', 'OUTER', 'OUTFILE', - 'PRIMARY', 'PROCEDURAL', 'PROCEEDURE', 'READ', - 'REFERENCES', 'REGEXP', 'RENAME', 'REPLACE', - 'RETURN', 'REVOKE', 'RIGHT', 'RLIKE', 'SELECT', - 'SET', 'SETVAL', 'SHOW', 'SONAME', 'STATUS', - 'STRAIGHT_JOIN', 'TABLE', 'TABLES', 'TEMINATED', - 'TEMPORARY', 'TO', 'TRAILING', 'TRIGGER', 'TRUNCATE', - 'TRUSTED', 'UNION', 'UNIQUE', 'UNLOCK', 'UNSIGNED', - 'UPDATE', 'USE', 'USING', 'VALUES', 'VARIABLES', - 'VIEW', 'WHERE', 'WITH', 'WRITE', 'XOR', 'ZEROFILL' - ) - ), - 'SYMBOLS' => array( - '(', ')', '=', '<', '>', '|', ',', '.', '+', '-', '*', '/' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #993333; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - //2 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/systemverilog.php b/library/Vendors/geshi/geshi/systemverilog.php deleted file mode 100644 index 19405c09..00000000 --- a/library/Vendors/geshi/geshi/systemverilog.php +++ /dev/null @@ -1,317 +0,0 @@ -. - * - ************************************************************************ - * Title: SystemVerilog Language Keywords File for GeSHi - * Description: This file contains the SV keywords defined in the - * IEEE1800-2009 Draft Standard in the format expected by - * GeSHi. - * - * Original Author: Sean O'Boyle - * Contact: seanoboyle@intelligentdv.com - * Company: Intelligent Design Verification - * Company URL: http://intelligentdv.com - * - * Download the most recent version here: - * http://intelligentdv.com/downloads - * - * File Bugs Here: http://bugs.intelligentdv.com - * Project: SyntaxFiles - * - * File: systemverilog.php - * $LastChangedBy: seanoboyle $ - * $LastChangedDate: 2009-07-22 22:20:25 -0700 (Wed, 22 Jul 2009) $ - * $LastChangedRevision: 17 $ - * - ************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'SystemVerilog', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array(1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - // system tasks - 1 => array( - 'acos','acosh','asin','asinh','assertfailoff','assertfailon', - 'assertkill','assertnonvacuouson','assertoff','asserton', - 'assertpassoff','assertpasson','assertvacuousoff','async$and$array', - 'async$and$plane','async$nand$array','async$nand$plane', - 'async$nor$array','async$nor$plane','async$or$array', - 'async$or$plane','atan','atan2','atanh','bits','bitstoreal', - 'bitstoshortreal','cast','ceil','changed','changed_gclk', - 'changing_gclk','clog2','cos','cosh','countones','coverage_control', - 'coverage_get','coverage_get_max','coverage_merge','coverage_save', - 'dimensions','display','displayb','displayh','displayo', - 'dist_chi_square','dist_erlang','dist_exponential','dist_normal', - 'dist_poisson','dist_t','dist_uniform','dumpall','dumpfile', - 'dumpflush','dumplimit','dumpoff','dumpon','dumpports', - 'dumpportsall','dumpportsflush','dumpportslimit','dumpportsoff', - 'dumpportson','dumpvars','error','exit','exp','falling_gclk', - 'fclose','fdisplay','fdisplayb','fdisplayh','fdisplayo','fell', - 'fell_gclk','feof','ferror','fflush','fgetc','fgets','finish', - 'floor','fmonitor','fmonitorb','fmonitorh','fmonitoro','fopen', - 'fread','fscanf','fseek','fstrobe','fstrobeb','fstrobeh','fstrobeo', - 'ftell','future_gclk','fwrite','fwriteb','fwriteh','fwriteo', - 'get_coverage','high','hypot','increment','info','isunbounded', - 'isunknown','itor','left','ln','load_coverage_db','log10','low', - 'monitor','monitorb','monitorh','monitoro','monitoroff','monitoron', - 'onehot','onehot0','past','past_gclk','pow','printtimescale', - 'q_add','q_exam','q_full','q_initialize','q_remove','random', - 'readmemb','readmemh','realtime','realtobits','rewind','right', - 'rising_gclk','rose','rose_gclk','rtoi','sampled', - 'set_coverage_db_name','sformat','sformatf','shortrealtobits', - 'signed','sin','sinh','size','sqrt','sscanf','stable','stable_gclk', - 'steady_gclk','stime','stop','strobe','strobeb','strobeh','strobeo', - 'swrite','swriteb','swriteh','swriteo','sync$and$array', - 'sync$and$plane','sync$nand$array','sync$nand$plane', - 'sync$nor$array','sync$nor$plane','sync$or$array','sync$or$plane', - 'system','tan','tanh','test$plusargs','time','timeformat', - 'typename','ungetc','unpacked_dimensions','unsigned', - 'value$plusargs','warning','write','writeb','writeh','writememb', - 'writememh','writeo', - ), - // compiler directives - 2 => array( - '`__FILE__', '`__LINE__', '`begin_keywords', '`case', '`celldefine', - '`endcelldefine', '`default_nettype', '`define', '`default', '`else', - '`elsif', '`end_keywords', '`endfor', '`endif', - '`endprotect', '`endswitch', '`endwhile', '`for', '`format', - '`if', '`ifdef', '`ifndef', '`include', '`let', - '`line', '`nounconnected_drive', '`pragma', '`protect', '`resetall', - '`switch', '`timescale', '`unconnected_drive', '`undef', '`undefineall', - '`while' - ), - // keywords - 3 => array( - 'assert', 'assume', 'cover', 'expect', 'disable', - 'iff', 'binsof', 'intersect', 'first_match', 'throughout', - 'within', 'coverpoint', 'cross', 'wildcard', 'bins', - 'ignore_bins', 'illegal_bins', 'genvar', 'if', 'else', - 'unique', 'priority', 'matches', 'default', 'forever', - 'repeat', 'while', 'for', 'do', 'foreach', - 'break', 'continue', 'return', 'pulsestyle_onevent', 'pulsestyle_ondetect', - 'noshowcancelled', 'showcancelled', 'ifnone', 'posedge', 'negedge', - 'edge', 'wait', 'wait_order', 'timeunit', 'timeprecision', - 's', 'ms', 'us', 'ns', - 'ps', 'fs', 'step', 'new', 'extends', - 'this', 'super', 'protected', 'local', 'rand', - 'randc', 'bind', 'constraint', 'solve', 'before', - 'dist', 'inside', 'with', 'virtual', 'extern', - 'pure', 'forkjoin', 'design', 'instance', 'cell', - 'liblist', 'use', 'library', 'incdir', 'include', - 'modport', 'sync_accept_on', 'reject_on', 'accept_on', - 'sync_reject_on', 'restrict', 'let', 'until', 'until_with', - 'unique0', 'eventually', 's_until', 's_always', 's_eventually', - 's_nexttime', 's_until_with', 'global', 'untyped', 'implies', - 'weak', 'strong', 'nexttime' - ), - // block keywords - 4 => array( - 'begin', 'end', 'package', 'endpackage', 'macromodule', - 'module', 'endmodule', 'generate', 'endgenerate', 'program', - 'endprogram', 'class', 'endclass', 'function', 'endfunction', - 'case', 'casex', 'casez', 'randcase', 'endcase', - 'interface', 'endinterface', 'clocking', 'endclocking', 'task', - 'endtask', 'primitive', 'endprimitive', 'fork', 'join', - 'join_any', 'join_none', 'covergroup', 'endgroup', 'checker', - 'endchecker', 'property', 'endproperty', 'randsequence', 'sequence', - 'endsequence', 'specify', 'endspecify', 'config', 'endconfig', - 'table', 'endtable', 'initial', 'final', 'always', - 'always_comb', 'always_ff', 'always_latch', 'alias', 'assign', - 'force', 'release' - ), - - // types - 5 => array( - 'parameter', 'localparam', 'specparam', 'input', 'output', - 'inout', 'ref', 'byte', 'shortint', 'int', - 'integer', 'longint', 'time', 'bit', 'logic', - 'reg', 'supply0', 'supply1', 'tri', 'triand', - 'trior', 'trireg', 'tri0', 'tri1', 'wire', - 'uwire', 'wand', 'wor', 'signed', 'unsigned', - 'shortreal', 'real', 'realtime', 'type', 'void', - 'struct', 'union', 'tagged', 'const', 'var', - 'automatic', 'static', 'packed', 'vectored', 'scalared', - 'typedef', 'enum', 'string', 'chandle', 'event', - 'null', 'pullup', 'pulldown', 'cmos', 'rcmos', - 'nmos', 'pmos', 'rnmos', 'rpmos', 'and', - 'nand', 'or', 'nor', 'xor', 'xnor', - 'not', 'buf', 'tran', 'rtran', 'tranif0', - 'tranif1', 'rtranif0', 'rtranif1', 'bufif0', 'bufif1', - 'notif0', 'notif1', 'strong0', 'strong1', 'pull0', - 'pull1', 'weak0', 'weak1', 'highz0', 'highz1', - 'small', 'medium', 'large' - ), - - // DPI - 6 => array( - 'DPI', 'DPI-C', 'import', 'export', 'context' - ), - - // stdlib - 7 => array( - 'randomize', 'mailbox', 'semaphore', 'put', 'get', - 'try_put', 'try_get', 'peek', 'try_peek', 'process', - 'state', 'self', 'status', 'kill', 'await', - 'suspend', 'resume', 'size', 'delete', 'insert', - 'num', 'first', 'last', 'next', 'prev', - 'pop_front', 'pop_back', 'push_front', 'push_back', 'find', - 'find_index', 'find_first', 'find_last', 'find_last_index', 'min', - 'max', 'unique_index', 'reverse', 'sort', 'rsort', - 'shuffle', 'sum', 'product', 'List', 'List_Iterator', - 'neq', 'eq', 'data', 'empty', 'front', - 'back', 'start', 'finish', 'insert_range', 'erase', - 'erase_range', 'set', 'swap', 'clear', 'purge' - ), - - // key_deprecated - 8 => array( - 'defparam', 'deassign', 'TODO' - ), - - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', - '^', '&', '|', '~', - '?', ':', - '#', '<<', '<<<', - '>', '<', '>=', '<=', - '@', ';', ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #996666; font-weight: bold;', - 2 => 'color: #336600; font-weight: bold;', - 3 => 'color: #996600; font-weight: bold;', - 4 => 'color: #000033; font-weight: bold;', - 5 => 'color: #330033; font-weight: bold;', - 6 => 'color: #996600; font-weight: bold;', - 7 => 'color: #CC9900; font-weight: bold;', - 8 => 'color: #990000; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #00008B; font-style: italic;', - 'MULTI' => 'color: #00008B; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #9F79EE' - ), - 'BRACKETS' => array( - 0 => 'color: #9F79EE;' - ), - 'STRINGS' => array( - 0 => 'color: #FF00FF;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff0055;' - ), - 'METHODS' => array( - 1 => 'color: #202020;', - 2 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #5D478B;' - ), - 'REGEXPS' => array( - 0 => 'color: #ff0055;', - 1 => 'color: #ff0055;', - 2 => 'color: #ff0055;', - 3 => 'color: #ff0055;' - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - 1 => '' - ), - 'REGEXPS' => array( - // integer - 0 => "\d'[bdh][0-9_a-fA-FxXzZ]+", - // realtime - 1 => "\d*\.\d+[munpf]?s", - // time s, ms, us, ns, ps, of fs - 2 => "\d+[munpf]?s", - // real - 3 => "\d*\.\d+" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - 0 => '' - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true - ), - 'TAB_WIDTH' => 3, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 1 => array( - 'DISALLOWED_BEFORE' => '(?<=$)' - ) - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/tcl.php b/library/Vendors/geshi/geshi/tcl.php deleted file mode 100644 index 2a07ccd4..00000000 --- a/library/Vendors/geshi/geshi/tcl.php +++ /dev/null @@ -1,194 +0,0 @@ - 'TCL', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - 1 => '/(? '/{[^}\n]+}/' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', "'"), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - /* - * Set 1: reserved words - * http://python.org/doc/current/ref/keywords.html - */ - 1 => array( - 'proc', 'global', 'upvar', 'if', 'then', 'else', 'elseif', 'for', 'foreach', - 'break', 'continue', 'while', 'set', 'eval', 'case', 'in', 'switch', - 'default', 'exit', 'error', 'return', 'uplevel', 'loop', - 'for_array_keys', 'for_recursive_glob', 'for_file', 'unwind_protect', - 'expr', 'catch', 'namespace', 'rename', 'variable', - // itcl - 'method', 'itcl_class', 'public', 'protected'), - - /* - * Set 2: builtins - * http://asps.activatestate.com/ASPN/docs/ActiveTcl/8.4/tcl/tcl_2_contents.htm - */ - 2 => array( - // string handling - 'append', 'binary', 'format', 're_syntax', 'regexp', 'regsub', - 'scan', 'string', 'subst', - // list handling - 'concat', 'join', 'lappend', 'lindex', 'list', 'llength', 'lrange', - 'lreplace', 'lsearch', 'lset', 'lsort', 'split', - // procedures and output - 'incr', 'close', 'eof', 'fblocked', 'fconfigure', 'fcopy', 'file', - 'fileevent', 'flush', 'gets', 'open', 'puts', 'read', 'seek', - 'socket', 'tell', - // packages and source files - 'load', 'loadTk', 'package', 'pgk::create', 'pgk_mkIndex', 'source', - // interpreter routines - 'bgerror', 'history', 'info', 'interp', 'memory', 'unknown', - // library routines - 'enconding', 'http', 'msgcat', - // system related - 'cd', 'clock', 'exec', 'glob', 'pid', 'pwd', 'time', - // platform specified - 'dde', 'registry', 'resource', - // special variables - '$argc', '$argv', '$errorCode', '$errorInfo', '$argv0', - '$auto_index', '$auto_oldpath', '$auto_path', '$env', - '$tcl_interactive', '$tcl_libpath', '$tcl_library', - '$tcl_pkgPath', '$tcl_platform', '$tcl_precision', '$tcl_traceExec', - ), - - /* - * Set 3: standard library - */ - 3 => array( - 'comment', 'filename', 'library', 'packagens', 'tcltest', 'tclvars', - ), - - /* - * Set 4: special methods - */ -// 4 => array( -// ) - - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '$', '*', '&', '%', '!', ';', '<', '>', '?' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, -// 4 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #ff7700;font-weight:bold;', // Reserved - 2 => 'color: #008000;', // Built-ins + self - 3 => 'color: #dc143c;', // Standard lib -// 4 => 'color: #0000cd;' // Special methods - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', -// 2 => 'color: #483d8b;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: black;' - ), - 'STRINGS' => array( - 0 => 'color: #483d8b;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff4500;' - ), - 'METHODS' => array( - 1 => 'color: black;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - 0 => 'color: #ff3333;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', -// 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '::' - ), - 'REGEXPS' => array( - //Special variables - 0 => '[\\$]+[a-zA-Z_][a-zA-Z0-9_]*', - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'COMMENTS' => array( - 'DISALLOWED_BEFORE' => '\\' - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/teraterm.php b/library/Vendors/geshi/geshi/teraterm.php deleted file mode 100644 index 443bf7b4..00000000 --- a/library/Vendors/geshi/geshi/teraterm.php +++ /dev/null @@ -1,317 +0,0 @@ - 'Tera Term Macro', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - /* Commands */ - 1 => array( - 'Beep', - 'BplusRecv', - 'BplusSend', - 'Break', // (version 4.53 or later) - 'Call', - 'CallMenu', // (version 4.56 or later) - 'ChangeDir', - 'ClearScreen', - 'Clipb2Var', //(version 4.46 or later) - 'ClosesBox', - 'CloseTT', - 'Code2Str', - 'Connect', - 'CRC32', // (version 4.60 or later) - 'CRC32File', // (version 4.60 or later) - 'CygConnect', // (version 4.57 or later) - 'DelPassword', - 'Disconnect', - 'Do', // (version 4.56 or later) - 'Else', - 'EnableKeyb', - 'End', - 'EndIf', - 'EndUntil', // (version 4.56 or later) - 'EndWhile', - 'Exec', - 'ExecCmnd', - 'Exit', - 'FileClose', - 'FileConcat', - 'FileCopy', - 'FileCreate', - 'FileDelete', - 'FileMarkPtr', - 'FilenameBox', //(version 4.54 or later) - 'FileOpen', - 'FileRead', - 'FileReadln', // (version 4.48 or later) - 'FileRename', - 'FileSearch', - 'FileSeek', - 'FileSeekBack', - 'FileStrSeek', - 'FileStrSeek2', - 'FileWrite', - 'FileWriteln', - 'FindOperations', - 'FlushRecv', - 'ForNext', - 'GetDate', - 'GetDir', //(version 4.46 or later) - 'GetEnv', - 'GetPassword', - 'GetTime', - 'GetTitle', - 'GetVer', //(version 4.58 or later) - 'GoTo', - 'If', - 'IfDefined', // (version 4.46 or later) - 'IfThenElseIf', - 'Include', - 'InputBox', - 'Int2Str', - 'KmtFinish', - 'KmtGet', - 'KmtRecv', - 'KmtSend', - 'LoadKeyMap', - 'LogClose', - 'LogOpen', - 'LogPause', - 'LogStart', - 'LogWrite', - 'Loop', // (version 4.56 or later) - 'MakePath', - 'MessageBox', - 'MPause', // (version 4.27 or later) - 'PasswordBox', - 'Pause', - 'QuickvanRecv', - 'QuickvanSend', - 'Random', //(version 4.27 or later) - 'Recvln', - 'RestoreSetup', - 'Return', - 'RotateLeft', //(version 4.54 or later) - 'RotateRight', //(version 4.54 or later) - 'ScpRecv', // (version 4.57 or later) - 'ScpSend', // (version 4.57 or later) - 'Send', - 'SendBreak', - 'SendFile', - 'SendKcode', - 'Sendln', - 'SetBaud', // (version 4.58 or later) - 'SetDate', - 'SetDir', - 'SetDlgPos', - 'SetDTR', // (version 4.59 or later) - 'SetRTS', // (version 4.59 or later) - 'SetEnv', // (version 4.54 or later) - 'SetEcho', - 'SetExitCode', - 'SetSync', - 'SetTime', - 'SetTitle', - 'Show', - 'ShowTT', - 'Sprintf', // (version 4.52 or later) - 'StatusBox', - 'Str2Code', - 'Str2Int', - 'StrCompare', - 'StrConcat', - 'StrCopy', - 'StrLen', - 'StrMatch', // (version 4.59 or later) - 'StrScan', - 'Testlink', - 'Then', - 'ToLower', //(version 4.53 or later) - 'ToUpper', //(version 4.53 or later) - 'Unlink', - 'Until', // (version 4.56 or later) - 'Var2Clipb', //(version 4.46 or later) - 'Wait', - 'WaitEvent', - 'Waitln', - 'WaitRecv', - 'WaitRegex', // (version 4.21 or later) - 'While', - 'XmodemRecv', - 'XmodemSend', - 'YesNoBox', - 'ZmodemRecv', - 'ZmodemSend' - ), - /* System Variables */ - 2 => array( - 'groupmatchstr1', - 'groupmatchstr2', - 'groupmatchstr3', - 'groupmatchstr4', - 'groupmatchstr5', - 'groupmatchstr6', - 'groupmatchstr7', - 'groupmatchstr8', - 'groupmatchstr9', - 'inputstr', - 'matchstr', - 'param2', - 'param3', - 'param4', - 'param5', - 'param6', - 'param7', - 'param8', - 'param9', - 'result', - 'timeout' - ), - /* LogMeTT Key Words */ - 3 => array( - '$[1]', - '$[2]', - '$[3]', - '$[4]', - '$[5]', - '$[6]', - '$[7]', - '$[8]', - '$connection$', - '$email$', - '$logdir$', - '$logfilename$', - '$logit$', - '$mobile$', - '$name$', - '$pager$', - '$parent$', - '$phone$', - '$snippet$', - '$ttdir$', - '$user$', - '$windir$', - ), - /* Keyword Symbols */ - 4 => array( - 'and', - 'not', - 'or', - 'xor' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', - '~', '!', '+', '-', '*', '/', '%', '>>', '<<', '<<<', '>>>', '&', '^', '|', - '<>', '<=', '>=', '=', '==', '<>', '!=', '&&', '||' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000080; font-weight: bold!important;', - 2 => 'color: #808000; font-weight: bold;', // System Variables - 3 => 'color: #ff0000; font-weight: bold;', // LogMeTT Key Words - 4 => 'color: #ff00ff; font-weight: bold;' // Keyword Symbols - ), - 'COMMENTS' => array( - 1 => 'color: #008000; font-style: italic;', - ), - 'ESCAPE_CHAR' => array(), - 'BRACKETS' => array( - 0 => 'color: #ff00ff; font-weight: bold;' - ), - 'STRINGS' => array( - 0 => 'color: #800080;' - ), - 'NUMBERS' => array( - 0 => 'color: #008080;' - ), - 'SCRIPT' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #ff00ff; font-weight: bold;' - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff; font-weight: bold;' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - 0 => array ( - GESHI_SEARCH => '(\:[_a-zA-Z][_a-zA-Z0-9]+)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array(), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/library/Vendors/geshi/geshi/text.php b/library/Vendors/geshi/geshi/text.php deleted file mode 100644 index 66f45929..00000000 --- a/library/Vendors/geshi/geshi/text.php +++ /dev/null @@ -1,84 +0,0 @@ - 'Text', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array(), - 'SYMBOLS' => array(), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false - ), - 'STYLES' => array( - 'KEYWORDS' => array(), - 'COMMENTS' => array(), - 'ESCAPE_CHAR' => array(), - 'BRACKETS' => array(), - 'STRINGS' => array(), - 'NUMBERS' => array(), - 'METHODS' => array(), - 'SYMBOLS' => array(), - 'SCRIPT' => array(), - 'REGEXPS' => array() - ), - 'URLS' => array(), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array(), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array(), - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'ALL' => GESHI_NEVER - ), - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/thinbasic.php b/library/Vendors/geshi/geshi/thinbasic.php deleted file mode 100644 index 693c698d..00000000 --- a/library/Vendors/geshi/geshi/thinbasic.php +++ /dev/null @@ -1,868 +0,0 @@ - 'thinBasic', - 'COMMENT_SINGLE' => array(1 => "'"), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'XOR','XML_TREETOSTRING','XML_PARSEFILE','XML_PARSE','XML_PARENT','XML_NODETYPE','XML_NODETOSTRING','XML_NEXTSIBLING', - 'XML_LASTERROR','XML_GETTAG','XML_FREE','XML_FINDNODE','XML_DECODEPARAM','XML_CHILDDATA','XML_CHILD','XML_ATTRIBVALUE', - 'XML_ATTRIBNAME','XML_ATTRIBCOUNT','WORD','WITH','WIN_SHOW','WIN_SETTITLE','WIN_SETFOREGROUND','WIN_ISZOOMED', - 'WIN_ISVISIBLE','WIN_ISICONIC','WIN_GETTITLE','WIN_GETFOREGROUND','WIN_GETCLASS','WIN_GETACTIVE','WIN_FLASH','WIN_FINDBYTITLE', - 'WIN_FINDBYCLASS','WHILE','WEND','VERIFY','VARPTR','VARIANTVT$','VARIANTVT','VARIANT', - 'VARIABLE_GETINFO','VARIABLE_EXISTS','VARIABLE_EXIST','VALUE','VAL','USING$','USING','USES', - 'USER','UNTIL','UNITS','UNION','UNICODE2ASCII','UDP_SEND','UDP_RECV','UDP_OPENSERVER', - 'UDP_OPEN','UDP_FREEFILE','UDP_CLOSE','UCODE$','UCASE$','UBOUND','TYPE','TRIMFULL$', - 'TRIM$','TOOLTIP','TOKENIZER_MOVETOEOL','TOKENIZER_KEYSETUSERSTRING','TOKENIZER_KEYSETUSERNUMBER','TOKENIZER_KEYGETUSERSTRING','TOKENIZER_KEYGETUSERNUMBER','TOKENIZER_KEYGETSUBTYPE', - 'TOKENIZER_KEYGETNAME','TOKENIZER_KEYGETMAINTYPE','TOKENIZER_KEYFIND','TOKENIZER_KEYADD','TOKENIZER_GETNEXTTOKEN','TOKENIZER_DEFAULT_SET','TOKENIZER_DEFAULT_GET','TOKENIZER_DEFAULT_CODE', - 'TOKENIZER_DEFAULT_CHAR','TO','TIMER','TIME$','THEN','TEXTBOX','TEXT','TCP_SEND', - 'TCP_RECV','TCP_PRINT','TCP_OPEN','TCP_LINEINPUT','TCP_FREEFILE','TCP_CLOSE','TB_IMGCTX_SETIMAGEADJUSTMENT','TB_IMGCTX_LOADIMAGE', - 'TB_IMGCTX_GETIMAGEADJUSTMENT','TBGL_VIEWPORT','TBGL_VERTEX','TBGL_USETEXTUREFLAG','TBGL_USETEXTURE','TBGL_USELINESTIPPLEFLAG','TBGL_USELINESTIPPLE','TBGL_USELIGHTSOURCEFLAG', - 'TBGL_USELIGHTSOURCE','TBGL_USELIGHTINGFLAG','TBGL_USELIGHTING','TBGL_USEFOGFLAG','TBGL_USEFOG','TBGL_USEDEPTHMASK','TBGL_USEDEPTHFLAG','TBGL_USEDEPTH', - 'TBGL_USECLIPPLANEFLAG','TBGL_USECLIPPLANE','TBGL_USEBLENDFLAG','TBGL_USEBLEND','TBGL_USEALPHATEST','TBGL_TRANSLATE','TBGL_TORUS','TBGL_TEXCOORD2D', - 'TBGL_SPHERE','TBGL_SHOWWINDOW','TBGL_SHOWCURSOR','TBGL_SETWINDOWTITLE','TBGL_SETUPLIGHTSOURCE','TBGL_SETUPFOG','TBGL_SETUPCLIPPLANE','TBGL_SETPRIMITIVEQUALITY', - 'TBGL_SETLIGHTPARAMETER','TBGL_SETDRAWDISTANCE','TBGL_SCALE','TBGL_SAVESCREENSHOT','TBGL_ROTATEXYZ','TBGL_ROTATE','TBGL_RESETMATRIX','TBGL_RENDERTOTEXTURE', - 'TBGL_RENDERMATRIX3D','TBGL_RENDERMATRIX2D','TBGL_PUSHMATRIX','TBGL_PRINTFONT','TBGL_PRINTBMP','TBGL_PRINT','TBGL_POS3DTOPOS2D','TBGL_POPMATRIX', - 'TBGL_POLYGONLOOK','TBGL_POINTSIZE','TBGL_POINTINSIDE3D','TBGL_NORMAL','TBGL_NEWLIST','TBGL_MOUSEGETWHEELDELTA','TBGL_MOUSEGETRBUTTON','TBGL_MOUSEGETPOSY', - 'TBGL_MOUSEGETPOSX','TBGL_MOUSEGETMBUTTON','TBGL_MOUSEGETLBUTTON','TBGL_M15SETVERTEXZ','TBGL_M15SETVERTEXY','TBGL_M15SETVERTEXXYZ','TBGL_M15SETVERTEXX','TBGL_M15SETVERTEXTEXY', - 'TBGL_M15SETVERTEXTEXXY','TBGL_M15SETVERTEXTEXX','TBGL_M15SETVERTEXTEXN','TBGL_M15SETVERTEXRGB','TBGL_M15SETVERTEXR','TBGL_M15SETVERTEXPSTOP','TBGL_M15SETVERTEXPARAM','TBGL_M15SETVERTEXLAYER', - 'TBGL_M15SETVERTEXG','TBGL_M15SETVERTEXB','TBGL_M15SETMODELVERTEXCOUNT','TBGL_M15SETBONECHILD','TBGL_M15ROTBONEZ','TBGL_M15ROTBONEY','TBGL_M15ROTBONEX','TBGL_M15ROTBONE', - 'TBGL_M15RESETBONES','TBGL_M15RECALCNORMALS','TBGL_M15LOADMODEL','TBGL_M15INITMODELBUFFERS','TBGL_M15GETVERTEXZ','TBGL_M15GETVERTEXY','TBGL_M15GETVERTEXXYZ','TBGL_M15GETVERTEXX', - 'TBGL_M15GETVERTEXTEXY','TBGL_M15GETVERTEXTEXXY','TBGL_M15GETVERTEXTEXX','TBGL_M15GETVERTEXTEXN','TBGL_M15GETVERTEXRGB','TBGL_M15GETVERTEXR','TBGL_M15GETVERTEXPSTOP','TBGL_M15GETVERTEXPARAM', - 'TBGL_M15GETVERTEXLAYER','TBGL_M15GETVERTEXG','TBGL_M15GETVERTEXB','TBGL_M15GETMODELVERTEXCOUNT','TBGL_M15GETMODELPOLYCOUNT','TBGL_M15ERASECHILDBONES','TBGL_M15DRAWMODEL','TBGL_M15DEFBONERESET', - 'TBGL_M15DEFBONELAYER','TBGL_M15DEFBONEBOX','TBGL_M15DEFBONEANCHOR','TBGL_M15DEFBONEADDVERTEX','TBGL_M15CLEARMODEL','TBGL_M15APPLYBONES','TBGL_M15ADDBONETREEITEM','TBGL_LOADTEXTURE', - 'TBGL_LOADFONT','TBGL_LOADBMPFONT','TBGL_LINEWIDTH','TBGL_LINESTIPPLE','TBGL_KILLFONT','TBGL_ISWINDOW','TBGL_ISPOINTVISIBLE','TBGL_ISPOINTBEHINDVIEW', - 'TBGL_GETWINDOWMULTIKEYSTATE','TBGL_GETWINDOWKEYSTATE','TBGL_GETWINDOWKEYONCE','TBGL_GETWINDOWCLIENT','TBGL_GETTEXTURENAME','TBGL_GETTEXTURELIST','TBGL_GETPIXELINFO','TBGL_GETMULTIASYNCKEYSTATE', - 'TBGL_GETLASTGLERROR','TBGL_GETFRAMERATE','TBGL_GETDESKTOPINFO','TBGL_GETASYNCKEYSTATE','TBGL_ERRORMESSAGES','TBGL_ENDPOLY','TBGL_ENDLIST','TBGL_DRAWFRAME', - 'TBGL_DESTROYWINDOW','TBGL_DELETELIST','TBGL_CYLINDER','TBGL_CREATEWINDOWEX','TBGL_CREATEWINDOW','TBGL_COLORALPHA','TBGL_COLOR','TBGL_CLEARFRAME', - 'TBGL_CAMERA','TBGL_CALLLIST','TBGL_BUILDFONT','TBGL_BOX','TBGL_BLENDFUNC','TBGL_BINDTEXTURE','TBGL_BEGINPOLY','TBGL_BACKCOLOR', - 'TBGL_ALPHAFUNC','TBDI_JOYZ','TBDI_JOYY','TBDI_JOYX','TBDI_JOYSTOPEFFECT','TBDI_JOYSLIDER','TBDI_JOYSETRANGEZ','TBDI_JOYSETRANGEY', - 'TBDI_JOYSETRANGEXYZ','TBDI_JOYSETRANGEX','TBDI_JOYSETDEADZONEZ','TBDI_JOYSETDEADZONEY','TBDI_JOYSETDEADZONEXYZ','TBDI_JOYSETDEADZONEX','TBDI_JOYSETAUTOCENTER','TBDI_JOYRZ', - 'TBDI_JOYRY','TBDI_JOYRX','TBDI_JOYPOV','TBDI_JOYPLAYEFFECT','TBDI_JOYLOADEFFECT','TBDI_JOYHASFF','TBDI_JOYHASEFFECT','TBDI_JOYGETEFFECTNAME', - 'TBDI_JOYGETEFFECTGUID','TBDI_JOYCREATEEFFECT','TBDI_JOYCOUNTPOV','TBDI_JOYCOUNTEFFECTS','TBDI_JOYCOUNTBTN','TBDI_JOYCOUNTAXES','TBDI_JOYBUTTON','TBDI_JOYAVAIL', - 'TBDI_INIT','TBASS_STREAMFREE','TBASS_STREAMCREATEFILE','TBASS_SETVOLUME','TBASS_SETEAXPRESET','TBASS_SETEAXPARAMETERS','TBASS_SETCONFIG','TBASS_SET3DPOSITION', - 'TBASS_SET3DFACTORS','TBASS_SAMPLELOAD','TBASS_SAMPLEGETCHANNEL','TBASS_MUSICLOAD','TBASS_MUSICFREE','TBASS_INIT','TBASS_GETVOLUME','TBASS_GETVERSION', - 'TBASS_GETCONFIG','TBASS_FREE','TBASS_ERRORGETCODE','TBASS_CHANNELSTOP','TBASS_CHANNELSETPOSITION','TBASS_CHANNELSETATTRIBUTES','TBASS_CHANNELSET3DPOSITION','TBASS_CHANNELPLAY', - 'TBASS_CHANNELPAUSE','TBASS_CHANNELISACTIVE','TBASS_CHANNELGETPOSITION','TBASS_CHANNELGETLENGTH','TBASS_CHANNELGETATTRIBUTES','TBASS_APPLY3D','TANH','TANGENT', - 'TAN','TALLY','TABCTRL_ONNOTIFY','TABCTRL_INSERTITEM','TABCTRL_GETCURSEL','SWAP','SUB','STRZIP$', - 'STRUNZIP$','STRREVERSE$','STRPTRLEN','STRPTR','STRINSERT$','STRING$','STRING','STRDELETE$', - 'STR$','STOP','STEP','STDOUT','STDIN','STAT_SUM','STAT_STDERROR','STAT_STDDEVIATION', - 'STAT_RANDOM','STAT_PRODUCT','STAT_MIN','STAT_MEDIAN','STAT_MEANHARMONIC','STAT_MEANGEOMETRIC','STAT_MEANARITHMETIC','STAT_MAX', - 'STAT_INVERSESUM','STAT_HISTOGRAM','STAT_FILLARRAY','STAT_COUNT','STAT_COPYARRAY','STAT_CLONEARRAY','STAT_CHISQUARE','STATIC', - 'STATE','SQR','SPLIT','SORT','SMTP_STATISTICS','SMTP_SETOPTION','SMTP_SETLOGFILE','SMTP_SENDHTML', - 'SMTP_SENDEMAIL','SMTP_GETERROR','SMTP_FINISHED','SMTP_DEBUG','SMTP_CONNECT','SMTP_CLOSE','SLEEP','SIZEOF', - 'SIZE','SINH','SINGLE','SIN','SIGNED','SHOW','SHIFT','SHAPETOBMP', - 'SGN','SETAT','SET','SENDMESSAGE','SENDKEYSBULK','SENDKEYS','SEND','SELECTEXPRESSION', - 'SELECT','SECH','SEC','SCAN','SAPI_SPEAK','SAPI_SETVOLUME','SAPI_SETRATE','SAPI_MODULELOADED', - 'SAPI_GETVOLUME','SAPI_GETRATE','RTRIM$','RTF_SETTEXT','RTF_SETFONTSIZE','RTF_SETFONTNAME','RTF_SETFGCOLOR','RTF_SETEFFECT', - 'RTF_SETBGCOLOR','RTF_SETALIGN','RTF_SAVETOFILE','RTF_LOADFROMFILE','RTF_GETTEXT','RTF_GETFONTSIZE','RTF_GETFONTNAME','RTF_GETEFFECT', - 'RTF_GETCLASS','RTF_APPENDTEXT','RSET$','ROUND','RNDF','RND','RIGHT$','RIGHT', - 'RGB','RESOURCE','RESIZE','RESET','REPLACE$','REPEAT$','REMOVE$','REM', - 'REGISTRY_SETVALUE','REGISTRY_SETTXTNUM','REGISTRY_SETTXTBOOL','REGISTRY_SETDWORD','REGISTRY_GETVALUE','REGISTRY_GETTXTNUM','REGISTRY_GETTXTBOOL','REGISTRY_GETDWORD', - 'REGISTRY_GETALLKEYS','REGISTRY_DELVALUE','REGISTRY_DELKEY','REFERENCE','REF','REDRAW','REDIM','RAS_SETPARAMS', - 'RAS_OPENDIALUPDIALOG','RAS_LOADENTRIES','RAS_HANGUPALL','RAS_HANGUP','RAS_GETENTRY','RAS_BEGINDIAL','RANDOMIZE','RADTODEG', - 'QUERYPERFORMANCEFREQUENCY','QUERYPERFORMANCECOUNTER','QUAD','PTR','PRESERVE','POST','POPUP','POKE$', - 'POKE','PIXELS','PI','PERMUTATIONS','PEEKMESSAGE','PEEK$','PEEK','PC_SYSTEMUPFROM', - 'PC_SUSPENDSTATE','PC_SHUTDOWN','PC_SHOWCARET','PC_SETCARETBLINKTIME','PC_RESTARTDIALOG','PC_PREVENTSHUTDOWN','PC_LOCK','PC_INSERTCD', - 'PC_HIDECARET','PC_GETSTATEONOFF','PC_GETSCROLLLOCKKEYSTATE','PC_GETNUMLOCKKEYSTATE','PC_GETCARETBLINKTIME','PC_GETCAPSLOCKKEYSTATE','PC_EMPTYBIN','PC_EJECTCD', - 'PC_DECODECDERROR','PCT','PARSESET$','PARSECOUNT','PARSE$','PARSE','PARAMETERS','OUTSIDE', - 'OS_WINVERSIONTEXT','OS_WINGETVERSIONTIMELINE','OS_SHELLEXECUTE','OS_SHELLABOUT','OS_SHELL','OS_SETLASTCALLDLLERROR','OS_SERVICESTOP','OS_SERVICESTATUSDESCRIPTION', - 'OS_SERVICESTARTTYPEDESCRIPTION','OS_SERVICESTART','OS_SERVICESETSTARTTYPE','OS_SERVICEQUERY','OS_SERVICEGETSTARTTYPE','OS_SERVICEGETLIST','OS_PROCESSKILLBYNAME','OS_PROCESSKILLBYID', - 'OS_PROCESSISRUNNING','OS_PROCESSGETLIST','OS_PROCESSGETID','OS_PROCESSARERUNNING','OS_MESSAGEBEEP','OS_ISWOW64','OS_ISFEATUREPRESENT','OS_IEVERSION', - 'OS_GETWINDOWSDIR','OS_GETUSERNAME','OS_GETTEMPDIR','OS_GETSYSTEMDIR','OS_GETSPECIALFOLDER','OS_GETLASTCALLDLLSTATUS','OS_GETLASTCALLDLLERROR','OS_GETCURRENTTHREADID', - 'OS_GETCURRENTPROCESSID','OS_GETCOMPUTERNAME','OS_GETCOMMANDS','OS_GETCOMMAND','OS_FLASHWINDOW','OS_FATALAPPEXIT','OS_ENVIRON','OS_CALLDLL', - 'OR','OPTIONAL','OPTION','OPT','ONCE','ON','OFF','NUMBER', - 'NOT','NEXT','NEW','MSGBOX','MOUSEPTR','MODULE','MODELESS','MODAL', - 'MOD','MKWRD$','MKS$','MKQ$','MKL$','MKI$','MKE$','MKDWD$', - 'MKD$','MKCUX$','MKCUR$','MKBYT$','MIN$','MIN','MID$','MENU', - 'MDI_CREATE','MCASE$','MAX$','MAX','MAKWRD','MAKLNG','MAKINT','MAKDWR', - 'LTRIM$','LSET$','LOWRD','LOOP','LONG','LOINT','LOG_WRITE','LOGB', - 'LOG2','LOG10','LOG','LOCAL','LOC','LL_UPDATEBYNAME','LL_UPDATE','LL_TOSTRING', - 'LL_TOFILE','LL_NAME','LL_GETITEM','LL_GETBYNUMBER','LL_FROMFILE','LL_FREE','LL_FINDLAST','LL_FINDBYNAME', - 'LL_FINDBYDATA','LL_DELETELIKE','LL_DELETEBYNAME','LL_DELETE','LL_DATABYNAME','LL_DATA','LL_COUNT','LL_ADD', - 'LISTBOX','LINE','LIBRARY_EXISTS','LIB','LEN','LEFT$','LEFT','LCASE$', - 'LBOUND','LABEL','KILL','JOIN$','ITERATE','ISWINDOW','ISUNICODE','ISTRUE', - 'ISODD','ISLIKE','ISFALSE','ISEVEN','IP_TOSTRING','IP_ADDR','INTERNALINFO','INTEGER', - 'INT','INSTR','INSIDE','INPUTBOX$','INI_SETKEY','INI_GETSECTIONSLIST','INI_GETSECTIONKEYLIST','INI_GETKEY', - 'INET_URLDOWNLOAD','INET_PING','INET_OPENDIALUPDIALOG','INET_GETSTATE','INET_GETREMOTEMACADDRESS','INET_GETIP','INET_GETCONNECTIONMODE','INCR', - 'IN','IMAGE','IIF$','IIF','IF','ICRYPTO_TESTSHA1','ICRYPTO_TESTMD5','ICRYPTO_TESTCRC32', - 'ICRYPTO_TESTCRC16','ICRYPTO_STRING2ASCII','ICRYPTO_SHA1','ICRYPTO_MD5','ICRYPTO_ENCRYPTRIJNDAEL','ICRYPTO_ENCRYPTRC4','ICRYPTO_DECRYPTRIJNDAEL','ICRYPTO_DECRYPTRC4', - 'ICRYPTO_CRC32','ICRYPTO_CRC16','ICRYPTO_BYTEXOR','ICRYPTO_BIN2ASCII','ICRYPTO_ASCII2STRING','ICRYPTO_ASCII2BIN','HOST_ADDR','HOSTNAME_TOIP', - 'HOSTIP_TONAME','HIWRD','HIINT','HEX$','HASH','HANDLE','GUIDTXT$','GUID$', - 'GRAPHIC','GLVOID','GLUSHORT','GLUINT','GLUBYTE','GLSIZEI','GLSHORT','GLOBAL', - 'GLINT','GLFLOAT','GLENUM','GLDOUBLE','GLCLAMPF','GLCLAMPD','GLBYTE','GLBOOLEAN', - 'GLBITFIELD','GETWINDOWMULTIKEYSTATE','GETWINDOWKEYSTATE','GETTICKCOUNT','GETS','GETMULTIASYNCKEYSTATE','GETMESSAGE','GETCURRENTINSTANCE', - 'GETAT','GETASYNCKEYSTATE','GET','FUNCTION_NPARAMS','FUNCTION_EXISTS','FUNCTION_CPARAMS','FUNCTION','FTP_SETSTRING', - 'FTP_SETSERVERDIR','FTP_SETNUMBER','FTP_SETMODE','FTP_SETLOGFILE','FTP_SETLOCALDIR','FTP_QUIT','FTP_PUTFILE','FTP_GETSTRING', - 'FTP_GETSERVERDIR','FTP_GETNUMBER','FTP_GETLOCALDIR','FTP_GETLIST','FTP_GETFILE','FTP_GETERRORSTRING','FTP_GETERRORNUMBER','FTP_FINISHED', - 'FTP_EXTRACT','FTP_DELFILE','FTP_CONNECT','FTP_COMMAND','FRAME','FRAC','FORMAT$','FOR', - 'FONT_LIST','FONT_CREATE','FONT','FOCUS','FLUSH','FIX','FILE_SIZE','FILE_SHELLDELETE', - 'FILE_SHELLCOPY','FILE_SETDATETIME','FILE_SEEK','FILE_SAVE','FILE_RENAME','FILE_PUT','FILE_PATHSPLIT','FILE_OPEN', - 'FILE_LOF','FILE_LOAD','FILE_LINEPRINT','FILE_LINEINPUT','FILE_KILL','FILE_GETVERSIONSTRING','FILE_GETVERSION','FILE_GETTIME', - 'FILE_GETDATETIMESTAMP','FILE_GETDATETIME','FILE_GETDATE','FILE_GET','FILE_EXISTS','FILE_EOF','FILE_COPY','FILE_CLOSE', - 'FILE_CHANGED','FILE_APPEND','FACTORIAL','EXTRACT$','EXT','EXPORT','EXP2','EXP10', - 'EXP','EXIT','EVAL_STRING','EVAL_SETSTRING','EVAL_SETNUMBER','EVAL_MATH','EVAL_LINKEXT','EVAL_GETSTRING', - 'EVAL_GETNUMBER','EVAL_ERRORGETTOKEN','EVAL_ERRORDESCRIPTION','EVAL_ERRORCLEAR','EVAL','ERRCLEAR','ERR','ENGINE_GETCURRENTTOKEN', - 'ENDIF','END','ENABLE','ELSEIF','ELSE','ECHO','DWORD','DT_YEAR', - 'DT_TIMETOSEC','DT_TIMESUBSECONDS','DT_TIMEFORMAT','DT_TIMEADDSECONDS','DT_SETTIMESEPARATOR','DT_SETDATESEPARATOR','DT_SETDATECENTURY','DT_SECTOTIME', - 'DT_SECTODATE','DT_SECOND','DT_MONTH','DT_MINUTE','DT_LASTDAYOFMONTH','DT_ISVALIDDATE','DT_ISLEAPYEAR','DT_HOUR', - 'DT_GETWEEKDAYNAME','DT_GETWEEKDAY','DT_GETTIMESTAMP','DT_GETTIMESEPARATOR','DT_GETMONTHNAME','DT_GETDATESEPARATOR','DT_GETDATECENTURY','DT_DAY', - 'DT_DATETOSEC','DT_DATETIMESUBSECONDS','DT_DATETIMEADDSECONDS','DT_DATESUBDAYS','DT_DATEFORMAT','DT_DATEDIFF','DT_DATEADDDAYS','DT_COOKIEDATE', - 'DRAW','DOUBLE','DOEVENTS','DO','DISABLE','DIR_REMOVE','DIR_MAKEALL','DIR_MAKE', - 'DIR_LISTARRAY','DIR_LIST','DIR_ISEMPTY','DIR_ISDIR','DIR_GETCURRENT','DIR_EXISTS','DIR_CHANGEDRIVE','DIR_CHANGE', - 'DIM','DICTIONARY_MEMINFO','DICTIONARY_LISTKEYS','DICTIONARY_FREE','DICTIONARY_FIND','DICTIONARY_EXISTS','DICTIONARY_CREATE','DICTIONARY_COUNT', - 'DICTIONARY_ADD','DIALOG_STOPEVENTS','DIALOG_SAVEFILE','DIALOG_OPENFILE','DIALOG_GETCONTROL','DIALOG_CHOOSECOLOR','DIALOG_BROWSEFORFOLDER','DIALOG', - 'DESKTOP','DESCENDING','DESCEND','DELETEOBJECT','DELETE','DEGTORAD','DECR','DECLARE', - 'DATE$','CVWRD','CVS','CVQ','CVL','CVI','CVE','CVDWD', - 'CVD','CVCUX','CVCUR','CVBYT','CURRENCY','CUR','CSET$','CSCH', - 'CSC','CRYPTO_GETPROVIDERTYPESCOUNT','CRYPTO_GETPROVIDERSCOUNT','CRYPTO_GETDEFAULTPROVIDER','CRYPTO_GENRANDOMSTRING','CRYPTO_ENUMPROVIDERTYPES','CRYPTO_ENUMPROVIDERS','CRYPTO_ENCRYPT', - 'CRYPTO_DECRYPT','CREATEFONT','COTH','COTAN','COSH','COS','CONTROL_SETTEXT','CONTROL_GETTEXT', - 'CONTROL_GETNUMBER','CONTROL','CONST','CONSOLE_WRITELINE','CONSOLE_WRITE','CONSOLE_WAITKEY','CONSOLE_SHOWWINDOW','CONSOLE_SHOWCURSOR', - 'CONSOLE_SETTITLE','CONSOLE_SETTEXTATTRIBUTE','CONSOLE_SETSTDHANDLE','CONSOLE_SETSCREENBUFFERSIZE','CONSOLE_SETPROGRESSBARCHAR','CONSOLE_SETOUTPUTMODE','CONSOLE_SETOUTPUTCP','CONSOLE_SETINPUTMODE', - 'CONSOLE_SETFILEAPISTOOEM','CONSOLE_SETFILEAPISTOANSI','CONSOLE_SETCURSORSIZE','CONSOLE_SETCURSORPOSITION','CONSOLE_SETCP','CONSOLE_SETACTIVESCREENBUFFER','CONSOLE_SCROLLWINDOW','CONSOLE_SCROLLBUFFERONEROW', - 'CONSOLE_SCROLLBUFFER','CONSOLE_SAVESCREEN','CONSOLE_RESTORESCREEN','CONSOLE_READLINE','CONSOLE_READ','CONSOLE_PROGRESSBAR','CONSOLE_PRINTLINE','CONSOLE_PRINTAT', - 'CONSOLE_PRINT','CONSOLE_NORMALSCREEN','CONSOLE_LINE','CONSOLE_INKEYB','CONSOLE_INKEY','CONSOLE_HIDECURSOR','CONSOLE_GETTITLE','CONSOLE_GETTEXTATTRIBUTE', - 'CONSOLE_GETSTDHANDLE','CONSOLE_GETSIZEY','CONSOLE_GETSIZEX','CONSOLE_GETPROGRESSBARCHAR','CONSOLE_GETOUTPUTMODE','CONSOLE_GETOUTPUTCP','CONSOLE_GETNUMBEROFMOUSEBUTTONS','CONSOLE_GETINPUTMODE', - 'CONSOLE_GETCURSORY','CONSOLE_GETCURSORX','CONSOLE_GETCURSORSIZE','CONSOLE_GETCURRENTFONTINDEX','CONSOLE_GETCP','CONSOLE_GENERATECTRLEVENT','CONSOLE_FULLSCREEN','CONSOLE_FREE', - 'CONSOLE_FOREGROUNDRGB','CONSOLE_ENABLECTRLC','CONSOLE_DISABLECTRLC','CONSOLE_CREATESCREENBUFFER','CONSOLE_COLORAT','CONSOLE_CLS','CONSOLE_BOX','CONSOLE_BACKGROUNDRGB', - 'CONSOLE_ATTACH','CONSOLE_AREFILEAPISANSI','CONSOLE_ALLOC','COM_VARIANTINIT','COM_VARIANTCOPY','COM_VARIANTCLEAR','COM_SUCCEEDED','COM_STRINGFROMCLSID', - 'COM_RELEASE','COM_QUERYINTERFACE','COM_PROGIDFROMCLSID','COM_ISEQUALIID','COM_ISEQUALGUID','COM_ISEQUALCLSID','COM_GETOBJECT','COM_GETENGINEGUID', - 'COM_EXECUTE','COM_DISPLAYERROR','COM_CREATEOBJECT','COM_CLSIDFROMSTRING','COM_CLSIDFROMPROGID','COM_BUILDVARIANT','COMBOBOX','COMBINATIONS', - 'COLOR','CLIPBOARD_SETTEXT','CLIPBOARD_GETTEXT','CLIENT','CLEARMESSAGES','CHR$','CHOOSE$','CHOOSE', - 'CHECKBOX','CHECK3STATE','CHECK','CGI_WRITELOGFILE','CGI_WRITE','CGI_URLDECODESTRING','CGI_UPLOADFILESTIME','CGI_UPLOADFILESNUMBER', - 'CGI_UPLOADFILESIZE','CGI_STARTSESSION','CGI_SETSESSIONVARIABLE','CGI_RESETDEFAULTSETTINGS','CGI_REMOVESPECIALCHARSPREFIX','CGI_REMOVEQUOTE','CGI_READ','CGI_LOADCONFIGFILE', - 'CGI_HEADER','CGI_GETSESSIONVARIABLE','CGI_GETREQUESTMETHOD','CGI_GETQUERYVALUE','CGI_GETCURRENTSESSION','CGI_GETCURRENTGUID','CGI_ENVIRON','CGI_CFGSETOPTION', - 'CGI_CFGGETOPTION','CGI_ADDSPECIALCHARSPREFIX','CGI_ADDQUOTE','CEIL','CASE','CALL','BYVAL','BYTE', - 'BYREF','BYCMD','BUTTON','BUNDLE_SETSCRIPTPARAMETERS','BUNDLE_SETSCRIPTNAME','BUNDLE_SETFLAGOBFUSCATEMAINSCRIPT','BUNDLE_SETFLAGDELETEAFTERRUN','BUNDLE_SETFLAGCOMPRESSALLFILES', - 'BUNDLE_SETFLAGASKBEFOREEXTRACT','BUNDLE_SETEXTRACTIONFOLDER','BUNDLE_SETCREATIONFOLDER','BUNDLE_SETBUNDLENAME','BUNDLE_RESET','BUNDLE_MAKE','BUNDLE_BUILDER','BUNDLE_ADDFOLDER', - 'BUNDLE_ADDFILE','BOUNDCHECK','BIN$','BIFF_WRITETEXT','BIFF_WRITENUMBER','BIFF_WRITEDATE','BIFF_SETROWHEIGHT','BIFF_SETCOLWIDTH', - 'BIFF_SETBUFFER','BIFF_CREATEFILE','BIFF_CLOSEFILE','BETWEEN','BEEP','BAR','ATTACH','ATN', - 'AT','ASSIGN','ASCIZ','ASCIIZ','ASCII2UNICODE','ASCENDING','ASCEND','ASC', - 'AS','ARRAY','ARCTANH','ARCSINH','ARCSIN','ARCSECH','ARCSEC','ARCCSCH', - 'ARCCSC','ARCCOTH','ARCCOT','ARCCOSH','ARCCOS','APP_TIMER','APP_SOURCEPATH','APP_SOURCENAME', - 'APP_SOURCEFULLNAME','APP_PATH','APP_NAME','APP_LISTVARIABLES','APP_LISTKEYWORDS','APP_LISTFUNCTIONS','APP_LISTEQUATES','APP_INCLUDEPATH', - 'APP_GETMODULEFULLPATH','APP_COUNTER','APPEND','ANY','ANIMATE_STOP','ANIMATE_PLAY','ANIMATE_OPEN','AND', - 'ALIAS','ALERT','ADD','ACODE$','ABS','%DEF','#MINVERSION','#IF', - '#ENDIF','#ELSEIF','#ELSE','#DEFAULT','#DEF','SQLWRITEPRIVATEPROFILESTRING','SQLWRITEFILEDSN','SQLWRITEDSNTOINI', - 'SQLVALIDDSN','SQLTRANSACT','SQLTABLES','SQLTABLEPRIVILEGES','SQLSTATISTICS','SQLSPECIALCOLUMNS','SQLSETSTMTOPTION','SQLSETSTMTATTR', - 'SQLSETSCROLLOPTIONS','SQLSETPOS','SQLSETPARAM','SQLSETENVATTR','SQLSETDESCREC','SQLSETDESCFIELD','SQLSETCURSORNAME','SQLSETCONNECTOPTION', - 'SQLSETCONNECTATTR','SQLSETCONFIGMODE','SQLROWCOUNT','SQLREMOVETRANSLATOR','SQLREMOVEDSNFROMINI','SQLREMOVEDRIVERMANAGER','SQLREMOVEDRIVER','SQLREADFILEDSN', - 'SQLPUTDATA','SQLPROCEDURES','SQLPROCEDURECOLUMNS','SQLPRIMARYKEYS','SQLPREPARE','SQLPOSTINSTALLERERROR','SQLPARAMOPTIONS','SQLPARAMDATA', - 'SQLNUMRESULTCOLS','SQLNUMPARAMS','SQLNATIVESQL','SQLMORERESULTS','SQLMANAGEDATASOURCES','SQLINSTALLTRANSLATOREX','SQLINSTALLERERROR','SQLINSTALLDRIVERMANAGER', - 'SQLINSTALLDRIVEREX','SQLGETTYPEINFO','SQLGETTRANSLATOR','SQLGETSTMTOPTION','SQLGETSTMTATTR','SQLGETPRIVATEPROFILESTRING','SQLGETINSTALLEDDRIVERS','SQLGETINFO', - 'SQLGETFUNCTIONS','SQLGETENVATTR','SQLGETDIAGREC','SQLGETDIAGFIELD','SQLGETDESCREC','SQLGETDESCFIELD','SQLGETDATA','SQLGETCURSORNAME', - 'SQLGETCONNECTOPTION','SQLGETCONNECTATTR','SQLGETCONFIGMODE','SQLFREESTMT','SQLFREEHANDLE','SQLFREEENV','SQLFREECONNECT','SQLFOREIGNKEYS', - 'SQLFETCHSCROLL','SQLFETCH','SQLEXTENDEDFETCH','SQLEXECUTE','SQLEXECDIRECT','SQLERROR','SQLENDTRAN','SQLDRIVERS', - 'SQLDRIVERCONNECT','SQLDISCONNECT','SQLDESCRIBEPARAM','SQLDESCRIBECOL','SQLDATASOURCES','SQLCREATEDATASOURCE','SQLCOPYDESC','SQLCONNECT', - 'SQLCONFIGDRIVER','SQLCONFIGDATASOURCE','SQLCOLUMNS','SQLCOLUMNPRIVILEGES','SQLCOLATTRIBUTES','SQLCOLATTRIBUTE','SQLCLOSECURSOR','SQLCANCEL', - 'SQLBULKOPERATIONS','SQLBROWSECONNECT','SQLBINDPARAMETER','SQLBINDPARAM','SQLBINDCOL','SQLALLOCSTMT','SQLALLOCHANDLE','SQLALLOCENV', - 'SQLALLOCCONNECT','ODBCWRONGDRIVER','ODBCWRITEPRIVATEPROFILESTRING','ODBCWRITEFILEDSN','ODBCWRITEDSNTOINI','ODBCVALIDDSN','ODBCUPDATERECORD','ODBCUPDATEBYBOOKMARK', - 'ODBCUNLOCKRECORD','ODBCUNBINDCOLUMNS','ODBCUNBINDCOL','ODBCTABLESCOUNT','ODBCTABLES','ODBCTABLEPRIVILEGESCOUNT','ODBCTABLEPRIVILEGES','ODBCSUPPORTS', - 'ODBCSTATTABLESCHEMANAME','ODBCSTATTABLEPAGES','ODBCSTATTABLECATALOGNAME','ODBCSTATTABLECARDINALITY','ODBCSTATISTICSCOUNT','ODBCSTATISTICS','ODBCSTATINDEXSORTSEQUENCE','ODBCSTATINDEXSCHEMANAME', - 'ODBCSTATINDEXQUALIFIER','ODBCSTATINDEXPAGES','ODBCSTATINDEXFILTERCONDITION','ODBCSTATINDEXCOLUMNORDINALPOSITION','ODBCSTATINDEXCOLUMNNAME','ODBCSTATINDEXCATALOGNAME','ODBCSTATINDEXCARDINALITY','ODBCSTATINDEXALLOWDUPLICATES', - 'ODBCSPECIALCOLUMNSCOUNT','ODBCSPECIALCOLUMNS','ODBCSETTXNISOLATION','ODBCSETTRANSLATELIB','ODBCSETTRACEFILE','ODBCSETTRACE','ODBCSETSTMTUSEBOOKMARKS','ODBCSETSTMTSIMULATECURSOR', - 'ODBCSETSTMTROWSTATUSPTR','ODBCSETSTMTROWSFETCHEDPTR','ODBCSETSTMTROWOPERATIONPTR','ODBCSETSTMTROWBINDTYPE','ODBCSETSTMTROWBINDOFFSETPTR','ODBCSETSTMTROWARRAYSIZE','ODBCSETSTMTRETRIEVEDATA','ODBCSETSTMTQUERYTIMEOUT', - 'ODBCSETSTMTPARAMSTATUSPTR','ODBCSETSTMTPARAMSPROCESSEDPTR','ODBCSETSTMTPARAMSETSIZE','ODBCSETSTMTPARAMOPERATIONPTR','ODBCSETSTMTPARAMBINDTYPE','ODBCSETSTMTPARAMBINDOFFSETPTR','ODBCSETSTMTNOSCAN','ODBCSETSTMTMETADATAID', - 'ODBCSETSTMTMAXROWS','ODBCSETSTMTMAXLENGTH','ODBCSETSTMTKEYSETSIZE','ODBCSETSTMTFETCHBOOKMARKPTR','ODBCSETSTMTENABLEAUTOIPD','ODBCSETSTMTCURSORTYPE','ODBCSETSTMTCURSORSENSITIVITY','ODBCSETSTMTCURSORSCROLLABLE', - 'ODBCSETSTMTCONCURRENCY','ODBCSETSTMTATTR','ODBCSETSTMTASYNCENABLE','ODBCSETSTMTAPPROWDESC','ODBCSETSTMTAPPPARAMDESC','ODBCSETSTATICCURSOR','ODBCSETROWVERCONCURRENCY','ODBCSETRESULT', - 'ODBCSETRELATIVEPOSITION','ODBCSETREADONLYCONCURRENCY','ODBCSETQUIETMODE','ODBCSETPOSITION','ODBCSETPOS','ODBCSETPACKETMODE','ODBCSETOPTIMISTICCONCURRENCY','ODBCSETODBCCURSORS', - 'ODBCSETMULTIUSERKEYSETCURSOR','ODBCSETMETADATAID','ODBCSETLOGINTIMEOUT','ODBCSETLOCKCONCURRENCY','ODBCSETKEYSETDRIVENCURSOR','ODBCSETFORWARDONLYCURSOR','ODBCSETENVOUTPUTNTS','ODBCSETENVODBCVERSION', - 'ODBCSETENVCPMATCH','ODBCSETENVCONNECTIONPOOLING','ODBCSETENVATTR','ODBCSETDYNAMICCURSOR','ODBCSETDESCREC','ODBCSETDESCFIELD','ODBCSETCURSORTYPE','ODBCSETCURSORSENSITIVITY', - 'ODBCSETCURSORSCROLLABILITY','ODBCSETCURSORNAME','ODBCSETCURSORLOCKTYPE','ODBCSETCURSORKEYSETSIZE','ODBCSETCURSORCONCURRENCY','ODBCSETCURRENTCATALOG','ODBCSETCONNECTIONTIMEOUT','ODBCSETCONNECTATTR', - 'ODBCSETCONFIGMODE','ODBCSETCONCURVALUESCONCURRENCY','ODBCSETAUTOCOMMITON','ODBCSETAUTOCOMMITOFF','ODBCSETAUTOCOMMIT','ODBCSETASYNCENABLE','ODBCSETACCESSMODE','ODBCSETABSOLUTEPOSITION', - 'ODBCROWCOUNT','ODBCROLLBACKTRAN','ODBCROLLBACKENVTRAN','ODBCROLLBACKDBCTRAN','ODBCRESULT','ODBCRESETPARAMS','ODBCREMOVETRANSLATOR','ODBCREMOVEDSNFROMINI', - 'ODBCREMOVEDRIVERMANAGER','ODBCREMOVEDRIVER','ODBCREFRESHRECORD','ODBCRECORDCOUNT','ODBCREADFILEDSN','ODBCQUOTEDIDENTIFIERCASE','ODBCPUTDATA','ODBCPROCEDURESCOUNT', - 'ODBCPROCEDURES','ODBCPROCEDURECOLUMNSCOUNT','ODBCPROCEDURECOLUMNS','ODBCPRIMARYKEYSCOUNT','ODBCPRIMARYKEYS','ODBCPREPARE','ODBCPOSTINSTALLERERROR','ODBCPARAMDATA', - 'ODBCOPENSTMT','ODBCOPENCONNECTION','ODBCNUMRESULTCOLS','ODBCNUMPARAMS','ODBCNATIVESQL','ODBCMOVEPREVIOUS','ODBCMOVENEXT','ODBCMOVELAST', - 'ODBCMOVEFIRST','ODBCMOVE','ODBCMORERESULTS','ODBCMANAGEDATASOURCES','ODBCLOCKRECORD','ODBCINSTALLTRANSLATOREX','ODBCINSTALLERERROR','ODBCINSTALLDRIVERMANAGER', - 'ODBCINSTALLDRIVEREX','ODBCGETXOPENCLIYEAR','ODBCGETUSERNAME','ODBCGETUNION','ODBCGETTYPEINFOCOUNT','ODBCGETTYPEINFO','ODBCGETTXNISOLATIONOPTION','ODBCGETTXNISOLATION', - 'ODBCGETTXNCAPABLE','ODBCGETTRANSLATOR','ODBCGETTRANSLATELIB','ODBCGETTRACEFILE','ODBCGETTRACE','ODBCGETTIMEDATEFUNCTIONS','ODBCGETTIMEDATEDIFFINTERVALS','ODBCGETTIMEDATEADDINTERVALS', - 'ODBCGETTABLETERM','ODBCGETSYSTEMFUNCTIONS','ODBCGETSUBQUERIES','ODBCGETSTRINGFUNCTIONS','ODBCGETSTMTUSEBOOKMARKS','ODBCGETSTMTSQLSTATE','ODBCGETSTMTSIMULATECURSOR','ODBCGETSTMTROWSTATUSPTR', - 'ODBCGETSTMTROWSFETCHEDPTR','ODBCGETSTMTROWOPERATIONPTR','ODBCGETSTMTROWNUMBER','ODBCGETSTMTROWBINDTYPE','ODBCGETSTMTROWBINDOFFSETPTR','ODBCGETSTMTROWARRAYSIZE','ODBCGETSTMTRETRIEVEDATA','ODBCGETSTMTQUERYTIMEOUT', - 'ODBCGETSTMTPARAMSTATUSPTR','ODBCGETSTMTPARAMSPROCESSEDPTR','ODBCGETSTMTPARAMSETSIZE','ODBCGETSTMTPARAMOPERATIONPTR','ODBCGETSTMTPARAMBINDTYPE','ODBCGETSTMTPARAMBINDOFFSETPTR','ODBCGETSTMTNOSCAN','ODBCGETSTMTMETADATAID', - 'ODBCGETSTMTMAXROWS','ODBCGETSTMTMAXLENGTH','ODBCGETSTMTKEYSETSIZE','ODBCGETSTMTIMPROWDESC','ODBCGETSTMTIMPPARAMDESC','ODBCGETSTMTFETCHBOOKMARKPTR','ODBCGETSTMTERRORINFO','ODBCGETSTMTENABLEAUTOIPD', - 'ODBCGETSTMTCURSORTYPE','ODBCGETSTMTCURSORSENSITIVITY','ODBCGETSTMTCURSORSCROLLABLE','ODBCGETSTMTCONCURRENCY','ODBCGETSTMTATTR','ODBCGETSTMTASYNCENABLE','ODBCGETSTMTAPPROWDESC','ODBCGETSTMTAPPPARAMDESC', - 'ODBCGETSTATICCURSORATTRIBUTES2','ODBCGETSTATICCURSORATTRIBUTES1','ODBCGETSTATEMENTSQLSTATE','ODBCGETSTATEMENTERRORINFO','ODBCGETSTANDARDCLICONFORMANCE','ODBCGETSQLSTATE','ODBCGETSQLCONFORMANCE','ODBCGETSQL92VALUEEXPRESSIONS', - 'ODBCGETSQL92STRINGFUNCTIONS','ODBCGETSQL92ROWVALUECONSTRUCTOR','ODBCGETSQL92REVOKE','ODBCGETSQL92RELATIONALJOINOPERATORS','ODBCGETSQL92PREDICATES','ODBCGETSQL92NUMERICVALUEFUNCTIONS','ODBCGETSQL92GRANT','ODBCGETSQL92FOREIGNKEYUPDATERULE', - 'ODBCGETSQL92FOREIGNKEYDELETERULE','ODBCGETSQL92DATETIMEFUNCTIONS','ODBCGETSPECIALCHARACTERS','ODBCGETSERVERNAME','ODBCGETSEARCHPATTERNESCAPE','ODBCGETSCROLLOPTIONS','ODBCGETSCHEMAUSAGE','ODBCGETSCHEMATERM', - 'ODBCGETROWUPDATES','ODBCGETQUIETMODE','ODBCGETPROCEDURETERM','ODBCGETPROCEDURESSUPPORT','ODBCGETPRIVATEPROFILESTRING','ODBCGETPOSOPERATIONS','ODBCGETPARAMARRAYSELECTS','ODBCGETPARAMARRAYROWCOUNTS', - 'ODBCGETPACKETMODE','ODBCGETOUTERJOINS','ODBCGETORDERBYCOLUMNSINSELECT','ODBCGETOJCAPABILITIES','ODBCGETODBCVER','ODBCGETODBCINTERFACECONFORMANCE','ODBCGETODBCCURSORS','ODBCGETNUMERICFUNCTIONS', - 'ODBCGETNULLCOLLATION','ODBCGETNONNULLABLECOLUMNS','ODBCGETNEEDLONGDATALEN','ODBCGETMULTRESULTSETS','ODBCGETMULTIPLEACTIVETXN','ODBCGETMETADATAID','ODBCGETMAXUSERNAMELEN','ODBCGETMAXTABLESINSELECT', - 'ODBCGETMAXTABLENAMELEN','ODBCGETMAXSTATEMENTLEN','ODBCGETMAXSCHEMANAMELEN','ODBCGETMAXROWSIZEINCLUDESLONG','ODBCGETMAXROWSIZE','ODBCGETMAXPROCEDURENAMELEN','ODBCGETMAXINDEXSIZE','ODBCGETMAXIDENTIFIERLEN', - 'ODBCGETMAXDRIVERCONNECTIONS','ODBCGETMAXCURSORNAMELEN','ODBCGETMAXCONCURRENTACTIVITIES','ODBCGETMAXCOLUMNSINTABLE','ODBCGETMAXCOLUMNSINSELECT','ODBCGETMAXCOLUMNSINORDERBY','ODBCGETMAXCOLUMNSININDEX','ODBCGETMAXCOLUMNSINGROUPBY', - 'ODBCGETMAXCOLUMNNAMELEN','ODBCGETMAXCHARLITERALLEN','ODBCGETMAXCATALOGNAMELEN','ODBCGETMAXBINARYLITERALLEN','ODBCGETMAXASYNCCONCURRENTSTATEMENTS','ODBCGETLONGVARCHARDATABYCOLNAME','ODBCGETLONGVARCHARDATA','ODBCGETLOGINTIMEOUT', - 'ODBCGETLIKEESCAPECLAUSE','ODBCGETKEYWORDS','ODBCGETKEYSETCURSORATTRIBUTES2','ODBCGETKEYSETCURSORATTRIBUTES1','ODBCGETINTEGRITY','ODBCGETINSTALLERERRORMESSAGE','ODBCGETINSTALLERERRORCODE','ODBCGETINSTALLEDDRIVERS', - 'ODBCGETINSERTSTATEMENT','ODBCGETINFOSTR','ODBCGETINFOSCHEMAVIEWS','ODBCGETINFOLONG','ODBCGETINFOINT','ODBCGETINFO','ODBCGETINDEXKEYWORDS','ODBCGETIMPROWDESCREC', - 'ODBCGETIMPROWDESCFIELDTYPE','ODBCGETIMPROWDESCFIELDSCALE','ODBCGETIMPROWDESCFIELDPRECISION','ODBCGETIMPROWDESCFIELDOCTETLENGTH','ODBCGETIMPROWDESCFIELDNULLABLE','ODBCGETIMPROWDESCFIELDNAME','ODBCGETIMPROWDESCFIELD','ODBCGETIMPPARAMDESCREC', - 'ODBCGETIMPPARAMDESCFIELDTYPE','ODBCGETIMPPARAMDESCFIELDSCALE','ODBCGETIMPPARAMDESCFIELDPRECISION','ODBCGETIMPPARAMDESCFIELDOCTETLENGTH','ODBCGETIMPPARAMDESCFIELDNULLABLE','ODBCGETIMPPARAMDESCFIELDNAME','ODBCGETIMPPARAMDESCFIELD','ODBCGETIDENTIFIERQUOTECHAR', - 'ODBCGETIDENTIFIERCASE','ODBCGETGROUPBY','ODBCGETFUNCTIONS','ODBCGETFORWARDONLYCURSORATTRIBUTES2','ODBCGETFORWARDONLYCURSORATTRIBUTES1','ODBCGETFILEUSAGE','ODBCGETEXPRESSIONSINORDERBY','ODBCGETERRORINFO', - 'ODBCGETENVSQLSTATE','ODBCGETENVOUTPUTNTS','ODBCGETENVODBCVERSION','ODBCGETENVIRONMENTSQLSTATE','ODBCGETENVIRONMENTERRORINFO','ODBCGETENVERRORINFO','ODBCGETENVCPMATCH','ODBCGETENVCONNECTIONPOOLING', - 'ODBCGETENVATTR','ODBCGETDYNAMICCURSORATTRIBUTES2','ODBCGETDYNAMICCURSORATTRIBUTES1','ODBCGETDROPVIEW','ODBCGETDROPTRANSLATION','ODBCGETDROPTABLE','ODBCGETDROPSCHEMA','ODBCGETDROPDOMAIN', - 'ODBCGETDROPCOLLATION','ODBCGETDROPCHARACTERSET','ODBCGETDROPASSERTION','ODBCGETDRIVERVER','ODBCGETDRIVERODBCVER','ODBCGETDRIVERNAME','ODBCGETDRIVERMANAGERINSTALLPATH','ODBCGETDRIVERHLIB', - 'ODBCGETDRIVERHENV','ODBCGETDRIVERHDBC','ODBCGETDMVERMINOR','ODBCGETDMVERMAJOR','ODBCGETDMVER','ODBCGETDIAGREC','ODBCGETDIAGFIELD','ODBCGETDESCSQLSTATE', - 'ODBCGETDESCRIPTORSQLSTATE','ODBCGETDESCRIPTORERRORINFO','ODBCGETDESCRIBEPARAMETER','ODBCGETDESCREC','ODBCGETDESCFIELD','ODBCGETDESCERRORINFO','ODBCGETDEFAULTTXNISOLATION','ODBCGETDDLINDEX', - 'ODBCGETDBMSVER','ODBCGETDBMSNAME','ODBCGETDBCSQLSTATE','ODBCGETDBCERRORINFO','ODBCGETDATETIMELITERALS','ODBCGETDATASTRINGBYCOLNAME','ODBCGETDATASTRING','ODBCGETDATASOURCEREADONLY', - 'ODBCGETDATASOURCENAME','ODBCGETDATAEXTENSIONS','ODBCGETDATABASENAME','ODBCGETDATA','ODBCGETCURSORTYPE','ODBCGETCURSORSENSITIVITYSUPPORT','ODBCGETCURSORSENSITIVITY','ODBCGETCURSORSCROLLABILITY', - 'ODBCGETCURSORROLLBACKBEHAVIOR','ODBCGETCURSORNAME','ODBCGETCURSORLOCKTYPE','ODBCGETCURSORKEYSETSIZE','ODBCGETCURSORCONCURRENCY','ODBCGETCURSORCOMMITBEHAVIOR','ODBCGETCURRENTCATALOG','ODBCGETCREATEVIEW', - 'ODBCGETCREATETRANSLATION','ODBCGETCREATETABLE','ODBCGETCREATESCHEMA','ODBCGETCREATEDOMAIN','ODBCGETCREATECOLLATION','ODBCGETCREATECHARACTERSET','ODBCGETCREATEASSERTION','ODBCGETCORRELATIONNAME', - 'ODBCGETCONVERTVARCHAR','ODBCGETCONVERTVARBINARY','ODBCGETCONVERTTINYINT','ODBCGETCONVERTTIMESTAMP','ODBCGETCONVERTTIME','ODBCGETCONVERTSMALLINT','ODBCGETCONVERTREAL','ODBCGETCONVERTNUMERIC', - 'ODBCGETCONVERTLONGVARCHAR','ODBCGETCONVERTLONGVARBINARY','ODBCGETCONVERTINTERVALYEARMONTH','ODBCGETCONVERTINTERVALDAYTIME','ODBCGETCONVERTINTEGER','ODBCGETCONVERTFUNCTIONS','ODBCGETCONVERTFLOAT','ODBCGETCONVERTDOUBLE', - 'ODBCGETCONVERTDECIMAL','ODBCGETCONVERTDATE','ODBCGETCONVERTCHAR','ODBCGETCONVERTBIT','ODBCGETCONVERTBINARY','ODBCGETCONVERTBIGINT','ODBCGETCONNECTIONTIMEOUT','ODBCGETCONNECTIONSQLSTATE', - 'ODBCGETCONNECTIONERRORINFO','ODBCGETCONNECTIONDEAD','ODBCGETCONNECTATTR','ODBCGETCONFIGMODE','ODBCGETCONCATNULLBEHAVIOR','ODBCGETCOLUMNALIAS','ODBCGETCOLLATIONSEQ','ODBCGETCATALOGUSAGE', - 'ODBCGETCATALOGTERM','ODBCGETCATALOGNAMESEPARATOR','ODBCGETCATALOGNAME','ODBCGETCATALOGLOCATION','ODBCGETBOOKMARKPERSISTENCE','ODBCGETBATCHSUPPORT','ODBCGETBATCHROWCOUNT','ODBCGETAUTOIPD', - 'ODBCGETAUTOCOMMIT','ODBCGETASYNCMODE','ODBCGETASYNCENABLE','ODBCGETALTERTABLE','ODBCGETALTERDOMAIN','ODBCGETAGGREGATEFUNCTIONS','ODBCGETACTIVEENVIRONMENTS','ODBCGETACCESSMODE', - 'ODBCGETACCESSIBLETABLES','ODBCGETACCESSIBLEPROCEDURES','ODBCFREESTMT','ODBCFREEHANDLE','ODBCFREEENV','ODBCFREEDESC','ODBCFREEDBC','ODBCFREECONNECT', - 'ODBCFOREIGNKEYSCOUNT','ODBCFOREIGNKEYS','ODBCFETCHSCROLL','ODBCFETCHBYBOOKMARK','ODBCFETCH','ODBCEXTENDEDFETCH','ODBCEXECUTE','ODBCEXECDIRECT', - 'ODBCERROR','ODBCEOF','ODBCENDTRAN','ODBCDRIVERSCOUNT','ODBCDRIVERS','ODBCDRIVERCONNECT','ODBCDISCONNECT','ODBCDESCRIBEPARAM', - 'ODBCDESCRIBECOL','ODBCDELETERECORD','ODBCDELETEBYBOOKMARK','ODBCDATASOURCES','ODBCCREATEDATASOURCE','ODBCCOPYDESC','ODBCCONNECTIONISDEAD','ODBCCONNECTIONISALIVE', - 'ODBCCONNECT','ODBCCONFIGDRIVER','ODBCCONFIGDATASOURCE','ODBCCOMMITTRAN','ODBCCOMMITENVTRAN','ODBCCOMMITDBCTRAN','ODBCCOLUPDATABLE','ODBCCOLUNSIGNED', - 'ODBCCOLUNNAMED','ODBCCOLUMNSCOUNT','ODBCCOLUMNS','ODBCCOLUMNPRIVILEGESCOUNT','ODBCCOLUMNPRIVILEGES','ODBCCOLUMN','ODBCCOLTYPENAME','ODBCCOLTYPE', - 'ODBCCOLTABLENAME','ODBCCOLSEARCHABLE','ODBCCOLSCHEMANAME','ODBCCOLSCALE','ODBCCOLPRECISION','ODBCCOLOCTETLENGTH','ODBCCOLNUMPRECRADIX','ODBCCOLNULLABLE', - 'ODBCCOLNAME','ODBCCOLLOCALTYPENAME','ODBCCOLLITERALSUFFIX','ODBCCOLLITERALPREFIX','ODBCCOLLENGTH','ODBCCOLLABEL','ODBCCOLISNULL','ODBCCOLFIXEDPRECSCALE', - 'ODBCCOLDISPLAYSIZE','ODBCCOLCOUNT','ODBCCOLCONCISETYPE','ODBCCOLCATALOGNAME','ODBCCOLCASESENSITIVE','ODBCCOLBASETABLENAME','ODBCCOLBASECOLUMNNAME','ODBCCOLAUTOUNIQUEVALUE', - 'ODBCCOLATTRIBUTE','ODBCCLOSESTMTCURSOR','ODBCCLOSESTMT','ODBCCLOSECURSOR','ODBCCLOSECONNECTION','ODBCCLEARRESULT','ODBCCANCEL','ODBCBULKOPERATIONS', - 'ODBCBROWSECONNECT','ODBCBINDPARAMETER','ODBCBINDCOLTOWORD','ODBCBINDCOLTOTIMESTAMP','ODBCBINDCOLTOTIME','ODBCBINDCOLTOSTRING','ODBCBINDCOLTOSINGLE','ODBCBINDCOLTOQUAD', - 'ODBCBINDCOLTONUMERIC','ODBCBINDCOLTOLONG','ODBCBINDCOLTOINTEGER','ODBCBINDCOLTODWORD','ODBCBINDCOLTODOUBLE','ODBCBINDCOLTODECIMAL','ODBCBINDCOLTODATE','ODBCBINDCOLTOCURRENCY', - 'ODBCBINDCOLTOBYTE','ODBCBINDCOLTOBIT','ODBCBINDCOLTOBINARY','ODBCBINDCOL','ODBCALLOCSTMT','ODBCALLOCHANDLE','ODBCALLOCENV','ODBCALLOCDESC', - 'ODBCALLOCDBC','ODBCALLOCCONNECT','ODBCADDRECORD','GLVIEWPORT','GLVERTEXPOINTER','GLVERTEX4SV','GLVERTEX4S','GLVERTEX4IV', - 'GLVERTEX4I','GLVERTEX4FV','GLVERTEX4F','GLVERTEX4DV','GLVERTEX4D','GLVERTEX3SV','GLVERTEX3S','GLVERTEX3IV', - 'GLVERTEX3I','GLVERTEX3FV','GLVERTEX3F','GLVERTEX3DV','GLVERTEX3D','GLVERTEX2SV','GLVERTEX2S','GLVERTEX2IV', - 'GLVERTEX2I','GLVERTEX2FV','GLVERTEX2F','GLVERTEX2DV','GLVERTEX2D','GLUUNPROJECT','GLUTESSVERTEX','GLUTESSPROPERTY', - 'GLUTESSNORMAL','GLUTESSENDPOLYGON','GLUTESSENDCONTOUR','GLUTESSCALLBACK','GLUTESSBEGINPOLYGON','GLUTESSBEGINCONTOUR','GLUSPHERE','GLUSCALEIMAGE', - 'GLUQUADRICTEXTURE','GLUQUADRICORIENTATION','GLUQUADRICNORMALS','GLUQUADRICDRAWSTYLE','GLUQUADRICCALLBACK','GLUPWLCURVE','GLUPROJECT','GLUPICKMATRIX', - 'GLUPERSPECTIVE','GLUPARTIALDISK','GLUORTHO2D','GLUNURBSSURFACE','GLUNURBSPROPERTY','GLUNURBSCURVE','GLUNURBSCALLBACK','GLUNEXTCONTOUR', - 'GLUNEWTESS','GLUNEWQUADRIC','GLUNEWNURBSRENDERER','GLULOOKAT','GLULOADSAMPLINGMATRICES','GLUGETTESSPROPERTY','GLUGETSTRING','GLUGETNURBSPROPERTY', - 'GLUERRORSTRING','GLUENDTRIM','GLUENDSURFACE','GLUENDPOLYGON','GLUENDCURVE','GLUDISK','GLUDELETETESS','GLUDELETEQUADRIC', - 'GLUDELETENURBSRENDERER','GLUCYLINDER','GLUBUILD2DMIPMAPS','GLUBUILD1DMIPMAPS','GLUBEGINTRIM','GLUBEGINSURFACE','GLUBEGINPOLYGON','GLUBEGINCURVE', - 'GLTRANSLATEF','GLTRANSLATED','GLTEXSUBIMAGE2D','GLTEXSUBIMAGE1D','GLTEXPARAMETERIV','GLTEXPARAMETERI','GLTEXPARAMETERFV','GLTEXPARAMETERF', - 'GLTEXIMAGE2D','GLTEXIMAGE1D','GLTEXGENIV','GLTEXGENI','GLTEXGENFV','GLTEXGENF','GLTEXGENDV','GLTEXGEND', - 'GLTEXENVIV','GLTEXENVI','GLTEXENVFV','GLTEXENVF','GLTEXCOORDPOINTER','GLTEXCOORD4SV','GLTEXCOORD4S','GLTEXCOORD4IV', - 'GLTEXCOORD4I','GLTEXCOORD4FV','GLTEXCOORD4F','GLTEXCOORD4DV','GLTEXCOORD4D','GLTEXCOORD3SV','GLTEXCOORD3S','GLTEXCOORD3IV', - 'GLTEXCOORD3I','GLTEXCOORD3FV','GLTEXCOORD3F','GLTEXCOORD3DV','GLTEXCOORD3D','GLTEXCOORD2SV','GLTEXCOORD2S','GLTEXCOORD2IV', - 'GLTEXCOORD2I','GLTEXCOORD2FV','GLTEXCOORD2F','GLTEXCOORD2DV','GLTEXCOORD2D','GLTEXCOORD1SV','GLTEXCOORD1S','GLTEXCOORD1IV', - 'GLTEXCOORD1I','GLTEXCOORD1FV','GLTEXCOORD1F','GLTEXCOORD1DV','GLTEXCOORD1D','GLSTENCILOP','GLSTENCILMASK','GLSTENCILFUNC', - 'GLSHADEMODEL','GLSELECTBUFFER','GLSCISSOR','GLSCALEF','GLSCALED','GLROTATEF','GLROTATED','GLRENDERMODE', - 'GLRECTSV','GLRECTS','GLRECTIV','GLRECTI','GLRECTFV','GLRECTF','GLRECTDV','GLRECTD', - 'GLREADPIXELS','GLREADBUFFER','GLRASTERPOS4SV','GLRASTERPOS4S','GLRASTERPOS4IV','GLRASTERPOS4I','GLRASTERPOS4FV','GLRASTERPOS4F', - 'GLRASTERPOS4DV','GLRASTERPOS4D','GLRASTERPOS3SV','GLRASTERPOS3S','GLRASTERPOS3IV','GLRASTERPOS3I','GLRASTERPOS3FV','GLRASTERPOS3F', - 'GLRASTERPOS3DV','GLRASTERPOS3D','GLRASTERPOS2SV','GLRASTERPOS2S','GLRASTERPOS2IV','GLRASTERPOS2I','GLRASTERPOS2FV','GLRASTERPOS2F', - 'GLRASTERPOS2DV','GLRASTERPOS2D','GLPUSHNAME','GLPUSHMATRIX','GLPUSHCLIENTATTRIB','GLPUSHATTRIB','GLPRIORITIZETEXTURES','GLPOPNAME', - 'GLPOPMATRIX','GLPOPCLIENTATTRIB','GLPOPATTRIB','GLPOLYGONSTIPPLE','GLPOLYGONOFFSET','GLPOLYGONMODE','GLPOINTSIZE','GLPIXELZOOM', - 'GLPIXELTRANSFERI','GLPIXELTRANSFERF','GLPIXELSTOREI','GLPIXELSTOREF','GLPIXELMAPUSV','GLPIXELMAPUIV','GLPIXELMAPFV','GLPASSTHROUGH', - 'GLORTHO','GLNORMALPOINTER','GLNORMAL3SV','GLNORMAL3S','GLNORMAL3IV','GLNORMAL3I','GLNORMAL3FV','GLNORMAL3F', - 'GLNORMAL3DV','GLNORMAL3D','GLNORMAL3BV','GLNORMAL3B','GLNEWLIST','GLMULTMATRIXF','GLMULTMATRIXD','GLMATRIXMODE', - 'GLMATERIALIV','GLMATERIALI','GLMATERIALFV','GLMATERIALF','GLMAPGRID2F','GLMAPGRID2D','GLMAPGRID1F','GLMAPGRID1D', - 'GLMAP2F','GLMAP2D','GLMAP1F','GLMAP1D','GLLOGICOP','GLLOADNAME','GLLOADMATRIXF','GLLOADMATRIXD', - 'GLLOADIDENTITY','GLLISTBASE','GLLINEWIDTH','GLLINESTIPPLE','GLLIGHTMODELIV','GLLIGHTMODELI','GLLIGHTMODELFV','GLLIGHTMODELF', - 'GLLIGHTIV','GLLIGHTI','GLLIGHTFV','GLLIGHTF','GLISTEXTURE','GLISLIST','GLISENABLED','GLINTERLEAVEDARRAYS', - 'GLINITNAMES','GLINDEXUBV','GLINDEXUB','GLINDEXSV','GLINDEXS','GLINDEXPOINTER','GLINDEXMASK','GLINDEXIV', - 'GLINDEXI','GLINDEXFV','GLINDEXF','GLINDEXDV','GLINDEXD','GLHINT','GLGETTEXPARAMETERIV','GLGETTEXPARAMETERFV', - 'GLGETTEXLEVELPARAMETERIV','GLGETTEXLEVELPARAMETERFV','GLGETTEXIMAGE','GLGETTEXGENIV','GLGETTEXGENFV','GLGETTEXGENDV','GLGETTEXENVIV','GLGETTEXENVFV', - 'GLGETSTRING','GLGETPOLYGONSTIPPLE','GLGETPOINTERV','GLGETPIXELMAPUSV','GLGETPIXELMAPUIV','GLGETPIXELMAPFV','GLGETMATERIALIV','GLGETMATERIALFV', - 'GLGETMAPIV','GLGETMAPFV','GLGETMAPDV','GLGETLIGHTIV','GLGETLIGHTFV','GLGETINTEGERV','GLGETFLOATV','GLGETERROR', - 'GLGETDOUBLEV','GLGETCLIPPLANE','GLGETBOOLEANV','GLGENTEXTURES','GLGENLISTS','GLFRUSTUM','GLFRONTFACE','GLFOGIV', - 'GLFOGI','GLFOGFV','GLFOGF','GLFLUSH','GLFINISH','GLFEEDBACKBUFFER','GLEVALPOINT2','GLEVALPOINT1', - 'GLEVALMESH2','GLEVALMESH1','GLEVALCOORD2FV','GLEVALCOORD2F','GLEVALCOORD2DV','GLEVALCOORD2D','GLEVALCOORD1FV','GLEVALCOORD1F', - 'GLEVALCOORD1DV','GLEVALCOORD1D','GLENDLIST','GLEND','GLENABLECLIENTSTATE','GLENABLE','GLEDGEFLAGV','GLEDGEFLAGPOINTER', - 'GLEDGEFLAG','GLDRAWPIXELS','GLDRAWELEMENTS','GLDRAWBUFFER','GLDRAWARRAYS','GLDISABLECLIENTSTATE','GLDISABLE','GLDEPTHRANGE', - 'GLDEPTHMASK','GLDEPTHFUNC','GLDELETETEXTURES','GLDELETELISTS','GLCULLFACE','GLCOPYTEXSUBIMAGE2D','GLCOPYTEXSUBIMAGE1D','GLCOPYTEXIMAGE2D', - 'GLCOPYTEXIMAGE1D','GLCOPYPIXELS','GLCOLORPOINTER','GLCOLORMATERIAL','GLCOLORMASK','GLCOLOR4USV','GLCOLOR4US','GLCOLOR4UIV', - 'GLCOLOR4UI','GLCOLOR4UBV','GLCOLOR4UB','GLCOLOR4SV','GLCOLOR4S','GLCOLOR4IV','GLCOLOR4I','GLCOLOR4FV', - 'GLCOLOR4F','GLCOLOR4DV','GLCOLOR4D','GLCOLOR4BV','GLCOLOR4B','GLCOLOR3USV','GLCOLOR3US','GLCOLOR3UIV', - 'GLCOLOR3UI','GLCOLOR3UBV','GLCOLOR3UB','GLCOLOR3SV','GLCOLOR3S','GLCOLOR3IV','GLCOLOR3I','GLCOLOR3FV', - 'GLCOLOR3F','GLCOLOR3DV','GLCOLOR3D','GLCOLOR3BV','GLCOLOR3B','GLCLIPPLANE','GLCLEARSTENCIL','GLCLEARINDEX', - 'GLCLEARDEPTH','GLCLEARCOLOR','GLCLEARACCUM','GLCLEAR','GLCALLLISTS','GLCALLLIST','GLBLENDFUNC','GLBITMAP', - 'GLBINDTEXTURE','GLBEGIN','GLARRAYELEMENT','GLARETEXTURESRESIDENT','GLALPHAFUNC','GLACCUM'), - 2 => array( - '$BEL','$BS','$CR','$CRLF','$DQ','$DT_DATE_SEPARATOR','$DT_LANGUAGE','$DT_TIME_SEPARATOR', - '$ESC','$FF','$LF','$NUL','$PC_SD_MY_PC','$SPC','$SQL_OPT_TRACE_FILE_DEFAULT','$SQL_SPEC_STRING', - '$TAB','$TRACKBAR_CLASS','$VT','%ACM_OPEN','%ACM_OPENW','%ACM_PLAY','%ACM_STOP','%ACN_START', - '%ACN_STOP','%ACS_AUTOPLAY','%ACS_CENTER','%ACS_TIMER','%ACS_TRANSPARENT','%APP_COUNTER_FUNLOOKUP','%APP_COUNTER_KEYLOOKUP','%APP_COUNTER_LOOKUP', - '%APP_COUNTER_TESTALPHA','%APP_COUNTER_UDTLOOKUP','%APP_COUNTER_VARLOOKUP','%APP_TIMER_EXECTOTAL','%APP_TIMER_INIT','%APP_TIMER_LOAD','%APP_TIMER_PREPROCESSOR','%AW_ACTIVATE', - '%AW_BLEND','%AW_CENTER','%AW_HIDE','%AW_HOR_NEGATIVE','%AW_HOR_POSITIVE','%AW_SLIDE','%AW_VER_NEGATIVE','%AW_VER_POSITIVE', - '%BCM_FIRST','%BLACK','%BLUE','%BM_GETCHECK','%BM_SETCHECK','%BST_CHECKED','%BST_UNCHECKED','%BS_AUTOCHECKBOX', - '%BS_BOTTOM','%BS_CENTER','%BS_DEFAULT','%BS_DEFPUSHBUTTON','%BS_FLAT','%BS_LEFT','%BS_LEFTTEXT','%BS_MULTILINE', - '%BS_NOTIFY','%BS_OWNERDRAW','%BS_PUSHLIKE','%BS_RIGHT','%BS_TOP','%BS_VCENTER','%BUNDLE_BUILDER_CANCELLED','%CBM_FIRST', - '%CBN_CLOSEUP','%CBN_DBLCLK','%CBN_DROPDOWN','%CBN_EDITCHANGE','%CBN_EDITUPDATE','%CBN_ERRSPACE','%CBN_KILLFOCUS','%CBN_SELCANCEL', - '%CBN_SELCHANGE','%CBN_SELENDCANCEL','%CBN_SELENDOK','%CBN_SETFOCUS','%CBS_AUTOHSCROLL','%CBS_DISABLENOSCROLL','%CBS_DROPDOWN','%CBS_DROPDOWNLIST', - '%CBS_HASSTRINGS','%CBS_LOWERCASE','%CBS_NOINTEGRALHEIGHT','%CBS_SIMPLE','%CBS_SORT','%CBS_UPPERCASE','%CB_SELECTSTRING','%CCM_FIRST', - '%CC_ANYCOLOR','%CC_ENABLEHOOK','%CC_ENABLETEMPLATE','%CC_ENABLETEMPLATEHANDLE','%CC_FULLOPEN','%CC_PREVENTFULLOPEN','%CC_RGBINIT','%CC_SHOWHELP', - '%CC_SOLIDCOLOR','%CFE_BOLD','%CFE_ITALIC','%CFE_LINK','%CFE_PROTECTED','%CFE_STRIKEOUT','%CFE_UNDERLINE','%CFM_ANIMATION', - '%CFM_BACKCOLOR','%CFM_BOLD','%CFM_CHARSET','%CFM_COLOR','%CFM_FACE','%CFM_ITALIC','%CFM_KERNING','%CFM_LCID', - '%CFM_LINK','%CFM_OFFSET','%CFM_PROTECTED','%CFM_REVAUTHOR','%CFM_SIZE','%CFM_SPACING','%CFM_STRIKEOUT','%CFM_STYLE', - '%CFM_UNDERLINE','%CFM_UNDERLINETYPE','%CFM_WEIGHT','%CGI_ACCEPT_FILE_UPLOAD','%CGI_AUTO_ADD_SPECIAL_CHARS_PREFIX','%CGI_AUTO_CREATE_VARS','%CGI_BUFFERIZE_OUTPUT','%CGI_DOUBLE_QUOTE', - '%CGI_FILE_UPLOAD_BASEPATH','%CGI_FORCE_SESSION_VALIDATION','%CGI_MAX_BYTE_FROM_STD_IN','%CGI_REQUEST_METHOD_GET','%CGI_REQUEST_METHOD_POST','%CGI_SESSION_FILE_BASEPATH','%CGI_SINGLE_QUOTE','%CGI_SPECIAL_CHARS_PREFIX', - '%CGI_TEMPORARY_UPLOAD_PATH','%CGI_UPLOAD_CAN_OVERWRITE','%CGI_WRITE_LOG_FILE','%CGI_WRITE_VARS_INTO_LOG_FILE','%CONOLE_ATTACH_PARENT_PROCESS','%CONSOLE_BACKGROUND_BLUE','%CONSOLE_BACKGROUND_GREEN','%CONSOLE_BACKGROUND_INTENSITY', - '%CONSOLE_BACKGROUND_RED','%CONSOLE_BOX_FLAG_3DOFF','%CONSOLE_BOX_FLAG_3DON','%CONSOLE_BOX_FLAG_SHADOW','%CONSOLE_COMMON_LVB_GRID_HORIZONTAL','%CONSOLE_COMMON_LVB_GRID_LVERTICAL','%CONSOLE_COMMON_LVB_GRID_RVERTICAL','%CONSOLE_COMMON_LVB_LEADING_BYTE', - '%CONSOLE_COMMON_LVB_REVERSE_VIDEO','%CONSOLE_COMMON_LVB_TRAILING_BYTE','%CONSOLE_COMMON_LVB_UNDERSCORE','%CONSOLE_CTRL_BREAK_EVENT','%CONSOLE_CTRL_C_EVENT','%CONSOLE_DOUBLE_CLICK','%CONSOLE_ENABLE_AUTO_POSITION','%CONSOLE_ENABLE_ECHO_INPUT', - '%CONSOLE_ENABLE_EXTENDED_FLAGS','%CONSOLE_ENABLE_INSERT_MODE','%CONSOLE_ENABLE_LINE_INPUT','%CONSOLE_ENABLE_MOUSE_INPUT','%CONSOLE_ENABLE_PROCESSED_INPUT','%CONSOLE_ENABLE_PROCESSED_OUTPUT','%CONSOLE_ENABLE_QUICK_EDIT_MODE','%CONSOLE_ENABLE_WINDOW_INPUT', - '%CONSOLE_ENABLE_WRAP_AT_EOL_OUTPUT','%CONSOLE_FOREGROUND_BLUE','%CONSOLE_FOREGROUND_GREEN','%CONSOLE_FOREGROUND_INTENSITY','%CONSOLE_FOREGROUND_RED','%CONSOLE_LBUTTON','%CONSOLE_LINE_HORIZONTAL','%CONSOLE_LINE_VERTICAL', - '%CONSOLE_MBUTTON','%CONSOLE_MOUSE_MOVED','%CONSOLE_MOUSE_WHEELED','%CONSOLE_RBUTTON','%CONSOLE_SCROLLBUF_DOWN','%CONSOLE_SCROLLBUF_UP','%CONSOLE_SCROLLWND_ABSOLUTE','%CONSOLE_SCROLLWND_RELATIVE', - '%CONSOLE_STD_ERROR_HANDLE','%CONSOLE_STD_INPUT_HANDLE','%CONSOLE_STD_OUTPUT_HANDLE','%CONSOLE_SW_FORCEMINIMIZE','%CONSOLE_SW_HIDE','%CONSOLE_SW_MAXIMIZE','%CONSOLE_SW_MINIMIZE','%CONSOLE_SW_RESTORE', - '%CONSOLE_SW_SHOW','%CONSOLE_SW_SHOWDEFAULT','%CONSOLE_SW_SHOWMAXIMIZED','%CONSOLE_SW_SHOWMINIMIZED','%CONSOLE_SW_SHOWMINNOACTIVE','%CONSOLE_SW_SHOWNA','%CONSOLE_SW_SHOWNOACTIVATE','%CONSOLE_SW_SHOWNORMAL', - '%CONSOLE_UNAVAILABLE','%CRYPTO_CALG_DES','%CRYPTO_CALG_RC2','%CRYPTO_CALG_RC4','%CRYPTO_PROV_DH_SCHANNEL','%CRYPTO_PROV_DSS','%CRYPTO_PROV_DSS_DH','%CRYPTO_PROV_FORTEZZA', - '%CRYPTO_PROV_MS_EXCHANGE','%CRYPTO_PROV_RSA_FULL','%CRYPTO_PROV_RSA_SCHANNEL','%CRYPTO_PROV_RSA_SIG','%CRYPTO_PROV_SSL','%CSIDL_ADMINTOOLS','%CSIDL_ALTSTARTUP','%CSIDL_APPDATA', - '%CSIDL_BITBUCKET','%CSIDL_CDBURN_AREA','%CSIDL_COMMON_ADMINTOOLS','%CSIDL_COMMON_ALTSTARTUP','%CSIDL_COMMON_APPDATA','%CSIDL_COMMON_DESKTOPDIRECTORY','%CSIDL_COMMON_DOCUMENTS','%CSIDL_COMMON_FAVORITES', - '%CSIDL_COMMON_MUSIC','%CSIDL_COMMON_PICTURES','%CSIDL_COMMON_PROGRAMS','%CSIDL_COMMON_STARTMENU','%CSIDL_COMMON_STARTUP','%CSIDL_COMMON_TEMPLATES','%CSIDL_COMMON_VIDEO','%CSIDL_CONTROLS', - '%CSIDL_COOKIES','%CSIDL_DESKTOP','%CSIDL_DESKTOPDIRECTORY','%CSIDL_DRIVES','%CSIDL_FAVORITES','%CSIDL_FLAG_CREATE','%CSIDL_FONTS','%CSIDL_HISTORY', - '%CSIDL_INTERNET','%CSIDL_INTERNET_CACHE','%CSIDL_LOCAL_APPDATA','%CSIDL_MYDOCUMENTS','%CSIDL_MYMUSIC','%CSIDL_MYPICTURES','%CSIDL_MYVIDEO','%CSIDL_NETHOOD', - '%CSIDL_NETWORK','%CSIDL_PERSONAL','%CSIDL_PRINTERS','%CSIDL_PRINTHOOD','%CSIDL_PROFILE','%CSIDL_PROGRAMS','%CSIDL_PROGRAM_FILES','%CSIDL_PROGRAM_FILES_COMMON', - '%CSIDL_RECENT','%CSIDL_SENDTO','%CSIDL_STARTMENU','%CSIDL_STARTUP','%CSIDL_SYSTEM','%CSIDL_TEMPLATES','%CSIDL_WINDOWS','%CW_USEDEFAULT', - '%CYAN','%DATE_TIME_FILE_CREATION','%DATE_TIME_LAST_FILE_ACCESS','%DATE_TIME_LAST_FILE_WRITE','%DICTIONARY_MEMINFO_DATA','%DICTIONARY_MEMINFO_KEYS','%DICTIONARY_MEMINFO_TOTAL','%DICTIONARY_SORTDESCENDING', - '%DICTIONARY_SORTKEYS','%DSCAPS_CERTIFIED','%DSCAPS_CONTINUOUSRATE','%DSCAPS_EMULDRIVER','%DSCAPS_SECONDARY16BIT','%DSCAPS_SECONDARY8BIT','%DSCAPS_SECONDARYMONO','%DSCAPS_SECONDARYSTEREO', - '%DSCCAPS_CERTIFIED','%DSCCAPS_EMULDRIVER','%DS_3DLOOK','%DS_ABSALIGN','%DS_CENTER','%DS_CENTERMOUSE','%DS_CONTEXTHELP','%DS_CONTROL', - '%DS_MODALFRAME','%DS_NOFAILCREATE','%DS_SETFONT','%DS_SETFOREGROUND','%DS_SYSMODAL','%DTM_FIRST','%DTM_GETMCCOLOR','%DTM_GETMCFONT', - '%DTM_GETMONTHCAL','%DTM_GETRANGE','%DTM_GETSYSTEMTIME','%DTM_SETFORMAT','%DTM_SETFORMATW','%DTM_SETMCCOLOR','%DTM_SETMCFONT','%DTM_SETRANGE', - '%DTM_SETSYSTEMTIME','%DTN_CLOSEUP','%DTN_DATETIMECHANGE','%DTN_DROPDOWN','%DTN_FORMAT','%DTN_FORMATQUERY','%DTN_FORMATQUERYW','%DTN_FORMATW', - '%DTN_USERSTRING','%DTN_USERSTRINGW','%DTN_WMKEYDOWN','%DTN_WMKEYDOWNW','%DTS_APPCANPARSE','%DTS_LONGDATEFORMAT','%DTS_RIGHTALIGN','%DTS_SHORTDATECENTURYFORMAT', - '%DTS_SHORTDATEFORMAT','%DTS_SHOWNONE','%DTS_TIMEFORMAT','%DTS_UPDOWN','%DT_DATE_CENTURY','%DT_DATE_OK','%DT_DAY_IN_YEAR','%DT_DIFF_IN_DAYS', - '%DT_DIFF_IN_HOURS','%DT_DIFF_IN_MINUTES','%DT_DIFF_IN_SECONDS','%DT_HOURS_IN_DAY','%DT_MINUTES_IN_HOUR','%DT_SECONDS_IN_DAY','%DT_SECONDS_IN_HOUR','%DT_SECONDS_IN_MINUTE', - '%DT_SECONDS_IN_YEAR','%DT_USE_LONG_FORM','%DT_USE_SHORT_FORM','%DT_WRONG_DATE','%DT_WRONG_DAY','%DT_WRONG_MONTH','%ECM_FIRST','%ECOOP_AND', - '%ECOOP_OR','%ECOOP_SET','%ECOOP_XOR','%ECO_AUTOHSCROLL','%ECO_AUTOVSCROLL','%ECO_AUTOWORDSELECTION','%ECO_NOHIDESEL','%ECO_READONLY', - '%ECO_SELECTIONBAR','%ECO_WANTRETURN','%EM_AUTOURLDETECT','%EM_CANPASTE','%EM_CANREDO','%EM_CANUNDO','%EM_CHARFROMPOS','%EM_DISPLAYBAND', - '%EM_EMPTYUNDOBUFFER','%EM_EXGETSEL','%EM_EXLIMITTEXT','%EM_EXLINEFROMCHAR','%EM_EXSETSEL','%EM_FINDTEXT','%EM_FINDTEXTEX','%EM_FINDWORDBREAK', - '%EM_FMTLINES','%EM_FORMATRANGE','%EM_GETAUTOURLDETECT','%EM_GETCHARFORMAT','%EM_GETEDITSTYLE','%EM_GETEVENTMASK','%EM_GETFIRSTVISIBLELINE','%EM_GETHANDLE', - '%EM_GETIMESTATUS','%EM_GETLIMITTEXT','%EM_GETLINE','%EM_GETLINECOUNT','%EM_GETMARGINS','%EM_GETMODIFY','%EM_GETOLEINTERFACE','%EM_GETOPTIONS', - '%EM_GETPARAFORMAT','%EM_GETPASSWORDCHAR','%EM_GETRECT','%EM_GETREDONAME','%EM_GETSCROLLPOS','%EM_GETSEL','%EM_GETSELTEXT','%EM_GETTEXTMODE', - '%EM_GETTEXTRANGE','%EM_GETTHUMB','%EM_GETUNDONAME','%EM_GETWORDBREAKPROC','%EM_GETWORDBREAKPROCEX','%EM_HIDESELECTION','%EM_LIMITTEXT','%EM_LINEFROMCHAR', - '%EM_LINEINDEX','%EM_LINELENGTH','%EM_LINESCROLL','%EM_PASTESPECIAL','%EM_POSFROMCHAR','%EM_REDO','%EM_REPLACESEL','%EM_REQUESTRESIZE', - '%EM_SCROLL','%EM_SCROLLCARET','%EM_SELECTIONTYPE','%EM_SETBKGNDCOLOR','%EM_SETCHARFORMAT','%EM_SETEDITSTYLE','%EM_SETEVENTMASK','%EM_SETHANDLE', - '%EM_SETIMESTATUS','%EM_SETLIMITTEXT','%EM_SETMARGINS','%EM_SETMODIFY','%EM_SETOLECALLBACK','%EM_SETOPTIONS','%EM_SETPARAFORMAT','%EM_SETPASSWORDCHAR', - '%EM_SETREADONLY','%EM_SETRECT','%EM_SETRECTNP','%EM_SETSCROLLPOS','%EM_SETSEL','%EM_SETTABSTOPS','%EM_SETTARGETDEVICE','%EM_SETTEXTMODE', - '%EM_SETUNDOLIMIT','%EM_SETWORDBREAKPROC','%EM_SETWORDBREAKPROCEX','%EM_SETWORDWRAPMODE','%EM_SETZOOM','%EM_STOPGROUPTYPING','%EM_STREAMIN','%EM_STREAMOUT', - '%EM_UNDO','%ENM_CHANGE','%ENM_CORRECTTEXT','%ENM_DRAGDROPDONE','%ENM_DROPFILES','%ENM_KEYEVENTS','%ENM_MOUSEEVENTS','%ENM_NONE', - '%ENM_PARAGRAPHEXPANDED','%ENM_PROTECTED','%ENM_REQUESTRESIZE','%ENM_SCROLL','%ENM_SCROLLEVENTS','%ENM_SELCHANGE','%ENM_UPDATE','%EN_CHANGE', - '%EN_MSGFILTER','%EN_SELCHANGE','%EN_UPDATE','%ES_AUTOHSCROLL','%ES_AUTOVSCROLL','%ES_CENTER','%ES_DISABLENOSCROLL','%ES_EX_NOCALLOLEINIT', - '%ES_LEFT','%ES_LOWERCASE','%ES_MULTILINE','%ES_NOHIDESEL','%ES_NOOLEDRAGDROP','%ES_NUMBER','%ES_OEMCONVERT','%ES_PASSWORD', - '%ES_READONLY','%ES_RIGHT','%ES_SAVESEL','%ES_SELECTIONBAR','%ES_SUNKEN','%ES_UPPERCASE','%ES_WANTRETURN','%EVAL_EXEC_STRING', - '%FALSE','%FILE_ADDPATH','%FILE_ARCHIVE','%FILE_BUILDVERSION','%FILE_HIDDEN','%FILE_MAJORVERSION','%FILE_MINORVERSION','%FILE_NORMAL', - '%FILE_READONLY','%FILE_REVISIONVERSION','%FILE_SUBDIR','%FILE_SYSTEM','%FILE_VLABEL','%FTP_GET_CONNECT_STATUS','%FTP_GET_FILE_BYTES_RCVD','%FTP_GET_FILE_BYTES_SENT', - '%FTP_GET_LAST_RESPONSE','%FTP_GET_LOCAL_IP','%FTP_GET_SERVER_IP','%FTP_GET_TOTAL_BYTES_RCVD','%FTP_GET_TOTAL_BYTES_SENT','%FTP_LIST_FULLLIST','%FTP_LIST_FULLLISTDIR','%FTP_LIST_FULLLISTFILE', - '%FTP_SET_ASYNC','%FTP_SET_CONNECT_WAIT','%FTP_SET_MAX_LISTEN_WAIT','%FTP_SET_MAX_RESPONSE_WAIT','%FTP_SET_PASSIVE','%FTP_SET_SYNC','%FW_BLACK','%FW_BOLD', - '%FW_DEMIBOLD','%FW_DONTCARE','%FW_EXTRABOLD','%FW_EXTRALIGHT','%FW_HEAVY','%FW_LIGHT','%FW_MEDIUM','%FW_NORMAL', - '%FW_REGULAR','%FW_SEMIBOLD','%FW_THIN','%FW_ULTRABOLD','%FW_ULTRALIGHT','%GDTR_MAX','%GDTR_MIN','%GLU_AUTO_LOAD_MATRIX', - '%GLU_BEGIN','%GLU_CCW','%GLU_CULLING','%GLU_CW','%GLU_DISPLAY_MODE','%GLU_DOMAIN_DISTANCE','%GLU_EDGE_FLAG','%GLU_END', - '%GLU_ERROR','%GLU_EXTENSIONS','%GLU_EXTERIOR','%GLU_FALSE','%GLU_FILL','%GLU_FLAT','%GLU_INCOMPATIBLE_GL_VERSION','%GLU_INSIDE', - '%GLU_INTERIOR','%GLU_INVALID_ENUM','%GLU_INVALID_VALUE','%GLU_LINE','%GLU_MAP1_TRIM_2','%GLU_MAP1_TRIM_3','%GLU_NONE','%GLU_NURBS_ERROR1', - '%GLU_NURBS_ERROR10','%GLU_NURBS_ERROR11','%GLU_NURBS_ERROR12','%GLU_NURBS_ERROR13','%GLU_NURBS_ERROR14','%GLU_NURBS_ERROR15','%GLU_NURBS_ERROR16','%GLU_NURBS_ERROR17', - '%GLU_NURBS_ERROR18','%GLU_NURBS_ERROR19','%GLU_NURBS_ERROR2','%GLU_NURBS_ERROR20','%GLU_NURBS_ERROR21','%GLU_NURBS_ERROR22','%GLU_NURBS_ERROR23','%GLU_NURBS_ERROR24', - '%GLU_NURBS_ERROR25','%GLU_NURBS_ERROR26','%GLU_NURBS_ERROR27','%GLU_NURBS_ERROR28','%GLU_NURBS_ERROR29','%GLU_NURBS_ERROR3','%GLU_NURBS_ERROR30','%GLU_NURBS_ERROR31', - '%GLU_NURBS_ERROR32','%GLU_NURBS_ERROR33','%GLU_NURBS_ERROR34','%GLU_NURBS_ERROR35','%GLU_NURBS_ERROR36','%GLU_NURBS_ERROR37','%GLU_NURBS_ERROR4','%GLU_NURBS_ERROR5', - '%GLU_NURBS_ERROR6','%GLU_NURBS_ERROR7','%GLU_NURBS_ERROR8','%GLU_NURBS_ERROR9','%GLU_OUTLINE_PATCH','%GLU_OUTLINE_POLYGON','%GLU_OUTSIDE','%GLU_OUT_OF_MEMORY', - '%GLU_PARAMETRIC_ERROR','%GLU_PARAMETRIC_TOLERANCE','%GLU_PATH_LENGTH','%GLU_POINT','%GLU_SAMPLING_METHOD','%GLU_SAMPLING_TOLERANCE','%GLU_SILHOUETTE','%GLU_SMOOTH', - '%GLU_TESS_BEGIN','%GLU_TESS_BEGIN_DATA','%GLU_TESS_BOUNDARY_ONLY','%GLU_TESS_COMBINE','%GLU_TESS_COMBINE_DATA','%GLU_TESS_COORD_TOO_LARGE','%GLU_TESS_EDGE_FLAG','%GLU_TESS_EDGE_FLAG_DATA', - '%GLU_TESS_END','%GLU_TESS_END_DATA','%GLU_TESS_ERROR','%GLU_TESS_ERROR1','%GLU_TESS_ERROR2','%GLU_TESS_ERROR3','%GLU_TESS_ERROR4','%GLU_TESS_ERROR5', - '%GLU_TESS_ERROR6','%GLU_TESS_ERROR7','%GLU_TESS_ERROR8','%GLU_TESS_ERROR_DATA','%GLU_TESS_MISSING_BEGIN_CONTOUR','%GLU_TESS_MISSING_BEGIN_POLYGON','%GLU_TESS_MISSING_END_CONTOUR','%GLU_TESS_MISSING_END_POLYGON', - '%GLU_TESS_NEED_COMBINE_CALLBACK','%GLU_TESS_TOLERANCE','%GLU_TESS_VERTEX','%GLU_TESS_VERTEX_DATA','%GLU_TESS_WINDING_ABS_GEQ_TWO','%GLU_TESS_WINDING_NEGATIVE','%GLU_TESS_WINDING_NONZERO','%GLU_TESS_WINDING_ODD', - '%GLU_TESS_WINDING_POSITIVE','%GLU_TESS_WINDING_RULE','%GLU_TRUE','%GLU_UNKNOWN','%GLU_U_STEP','%GLU_VERSION','%GLU_VERSION_1_1','%GLU_VERSION_1_2', - '%GLU_VERTEX','%GLU_V_STEP','%GL_2D','%GL_2_BYTES','%GL_3D','%GL_3D_COLOR','%GL_3D_COLOR_TEXTURE','%GL_3_BYTES', - '%GL_4D_COLOR_TEXTURE','%GL_4_BYTES','%GL_ABGR_EXT','%GL_ACCUM','%GL_ACCUM_ALPHA_BITS','%GL_ACCUM_BLUE_BITS','%GL_ACCUM_BUFFER_BIT','%GL_ACCUM_CLEAR_VALUE', - '%GL_ACCUM_GREEN_BITS','%GL_ACCUM_RED_BITS','%GL_ADD','%GL_ALL_ATTRIB_BITS','%GL_ALPHA','%GL_ALPHA12','%GL_ALPHA16','%GL_ALPHA4', - '%GL_ALPHA8','%GL_ALPHA_BIAS','%GL_ALPHA_BITS','%GL_ALPHA_SCALE','%GL_ALPHA_TEST','%GL_ALPHA_TEST_FUNC','%GL_ALPHA_TEST_REF','%GL_ALWAYS', - '%GL_AMBIENT','%GL_AMBIENT_AND_DIFFUSE','%GL_AND','%GL_AND_INVERTED','%GL_AND_REVERSE','%GL_ARRAY_ELEMENT_LOCK_COUNT_EXT','%GL_ARRAY_ELEMENT_LOCK_FIRST_EXT','%GL_ATTRIB_STACK_DEPTH', - '%GL_AUTO_NORMAL','%GL_AUX0','%GL_AUX1','%GL_AUX2','%GL_AUX3','%GL_AUX_BUFFERS','%GL_BACK','%GL_BACK_LEFT', - '%GL_BACK_RIGHT','%GL_BGRA_EXT','%GL_BGR_EXT','%GL_BITMAP','%GL_BITMAP_TOKEN','%GL_BLEND','%GL_BLEND_COLOR_EXT','%GL_BLEND_DST', - '%GL_BLEND_EQUATION_EXT','%GL_BLEND_SRC','%GL_BLUE','%GL_BLUE_BIAS','%GL_BLUE_BITS','%GL_BLUE_SCALE','%GL_BYTE','%GL_C3F_V3F', - '%GL_C4F_N3F_V3F','%GL_C4UB_V2F','%GL_C4UB_V3F','%GL_CCW','%GL_CLAMP','%GL_CLEAR','%GL_CLIENT_ALL_ATTRIB_BITS','%GL_CLIENT_ATTRIB_STACK_DEPTH', - '%GL_CLIENT_PIXEL_STORE_BIT','%GL_CLIENT_VERTEX_ARRAY_BIT','%GL_CLIP_PLANE0','%GL_CLIP_PLANE1','%GL_CLIP_PLANE2','%GL_CLIP_PLANE3','%GL_CLIP_PLANE4','%GL_CLIP_PLANE5', - '%GL_CLIP_VOLUME_CLIPPING_HINT_EXT','%GL_COEFF','%GL_COLOR','%GL_COLOR_ARRAY','%GL_COLOR_ARRAY_COUNT_EXT','%GL_COLOR_ARRAY_EXT','%GL_COLOR_ARRAY_POINTER','%GL_COLOR_ARRAY_POINTER_EXT', - '%GL_COLOR_ARRAY_SIZE','%GL_COLOR_ARRAY_SIZE_EXT','%GL_COLOR_ARRAY_STRIDE','%GL_COLOR_ARRAY_STRIDE_EXT','%GL_COLOR_ARRAY_TYPE','%GL_COLOR_ARRAY_TYPE_EXT','%GL_COLOR_BUFFER_BIT','%GL_COLOR_CLEAR_VALUE', - '%GL_COLOR_INDEX','%GL_COLOR_INDEX12_EXT','%GL_COLOR_INDEX16_EXT','%GL_COLOR_INDEX1_EXT','%GL_COLOR_INDEX2_EXT','%GL_COLOR_INDEX4_EXT','%GL_COLOR_INDEX8_EXT','%GL_COLOR_INDEXES', - '%GL_COLOR_LOGIC_OP','%GL_COLOR_MATERIAL','%GL_COLOR_MATERIAL_FACE','%GL_COLOR_MATERIAL_PARAMETER','%GL_COLOR_SUM_EXT','%GL_COLOR_TABLE_ALPHA_SIZE_EXT','%GL_COLOR_TABLE_BIAS_EXT','%GL_COLOR_TABLE_BLUE_SIZE_EXT', - '%GL_COLOR_TABLE_EXT','%GL_COLOR_TABLE_FORMAT_EXT','%GL_COLOR_TABLE_GREEN_SIZE_EXT','%GL_COLOR_TABLE_INTENSITY_SIZE_EXT','%GL_COLOR_TABLE_LUMINANCE_SIZE_EXT','%GL_COLOR_TABLE_RED_SIZE_EXT','%GL_COLOR_TABLE_SCALE_EXT','%GL_COLOR_TABLE_WIDTH_EXT', - '%GL_COLOR_WRITEMASK','%GL_COMPILE','%GL_COMPILE_AND_EXECUTE','%GL_CONSTANT_ALPHA_EXT','%GL_CONSTANT_ATTENUATION','%GL_CONSTANT_COLOR_EXT','%GL_CONVOLUTION_1D_EXT','%GL_CONVOLUTION_2D_EXT', - '%GL_CONVOLUTION_BORDER_MODE_EXT','%GL_CONVOLUTION_FILTER_BIAS_EXT','%GL_CONVOLUTION_FILTER_SCALE_EXT','%GL_CONVOLUTION_FORMAT_EXT','%GL_CONVOLUTION_HEIGHT_EXT','%GL_CONVOLUTION_WIDTH_EXT','%GL_COPY','%GL_COPY_INVERTED', - '%GL_COPY_PIXEL_TOKEN','%GL_CULL_FACE','%GL_CULL_FACE_MODE','%GL_CULL_VERTEX_EXT','%GL_CULL_VERTEX_EYE_POSITION_EXT','%GL_CULL_VERTEX_OBJECT_POSITION_EXT','%GL_CURRENT_BIT','%GL_CURRENT_COLOR', - '%GL_CURRENT_INDEX','%GL_CURRENT_NORMAL','%GL_CURRENT_RASTER_COLOR','%GL_CURRENT_RASTER_DISTANCE','%GL_CURRENT_RASTER_INDEX','%GL_CURRENT_RASTER_POSITION','%GL_CURRENT_RASTER_POSITION_VALID','%GL_CURRENT_RASTER_TEXTURE_COORDS', - '%GL_CURRENT_SECONDARY_COLOR_EXT','%GL_CURRENT_TEXTURE_COORDS','%GL_CW','%GL_DECAL','%GL_DECR','%GL_DEPTH','%GL_DEPTH_BIAS','%GL_DEPTH_BITS', - '%GL_DEPTH_BUFFER_BIT','%GL_DEPTH_CLEAR_VALUE','%GL_DEPTH_COMPONENT','%GL_DEPTH_FUNC','%GL_DEPTH_RANGE','%GL_DEPTH_SCALE','%GL_DEPTH_TEST','%GL_DEPTH_WRITEMASK', - '%GL_DIFFUSE','%GL_DITHER','%GL_DOMAIN','%GL_DONT_CARE','%GL_DOUBLE','%GL_DOUBLEBUFFER','%GL_DOUBLE_EXT','%GL_DRAW_BUFFER', - '%GL_DRAW_PIXEL_TOKEN','%GL_DST_ALPHA','%GL_DST_COLOR','%GL_EDGE_FLAG','%GL_EDGE_FLAG_ARRAY','%GL_EDGE_FLAG_ARRAY_COUNT_EXT','%GL_EDGE_FLAG_ARRAY_EXT','%GL_EDGE_FLAG_ARRAY_POINTER', - '%GL_EDGE_FLAG_ARRAY_POINTER_EXT','%GL_EDGE_FLAG_ARRAY_STRIDE','%GL_EDGE_FLAG_ARRAY_STRIDE_EXT','%GL_EMISSION','%GL_ENABLE_BIT','%GL_EQUAL','%GL_EQUIV','%GL_EVAL_BIT', - '%GL_EXP','%GL_EXP2','%GL_EXTENSIONS','%GL_EXT_ABGR','%GL_EXT_BGRA','%GL_EXT_BLEND_COLOR','%GL_EXT_BLEND_MINMAX','%GL_EXT_BLEND_SUBTRACT', - '%GL_EXT_CLIP_VOLUME_HINT','%GL_EXT_COLOR_TABLE','%GL_EXT_COMPILED_VERTEX_ARRAY','%GL_EXT_CONVOLUTION','%GL_EXT_CULL_VERTEX','%GL_EXT_HISTOGRAM','%GL_EXT_PACKED_PIXELS','%GL_EXT_PALETTED_TEXTURE', - '%GL_EXT_POLYGON_OFFSET','%GL_EXT_SECONDARY_COLOR','%GL_EXT_SEPARATE_SPECULAR_COLOR','%GL_EXT_VERTEX_ARRAY','%GL_EYE_LINEAR','%GL_EYE_PLANE','%GL_FALSE','%GL_FASTEST', - '%GL_FEEDBACK','%GL_FEEDBACK_BUFFER_POINTER','%GL_FEEDBACK_BUFFER_SIZE','%GL_FEEDBACK_BUFFER_TYPE','%GL_FILL','%GL_FLAT','%GL_FLOAT','%GL_FOG', - '%GL_FOG_BIT','%GL_FOG_COLOR','%GL_FOG_DENSITY','%GL_FOG_END','%GL_FOG_HINT','%GL_FOG_INDEX','%GL_FOG_MODE','%GL_FOG_START', - '%GL_FRONT','%GL_FRONT_AND_BACK','%GL_FRONT_FACE','%GL_FRONT_LEFT','%GL_FRONT_RIGHT','%GL_FUNC_ADD_EXT','%GL_FUNC_REVERSE_SUBTRACT_EXT','%GL_FUNC_SUBTRACT_EXT', - '%GL_GEQUAL','%GL_GREATER','%GL_GREEN','%GL_GREEN_BIAS','%GL_GREEN_BITS','%GL_GREEN_SCALE','%GL_HINT_BIT','%GL_HISTOGRAM_ALPHA_SIZE_EXT', - '%GL_HISTOGRAM_BLUE_SIZE_EXT','%GL_HISTOGRAM_EXT','%GL_HISTOGRAM_FORMAT_EXT','%GL_HISTOGRAM_GREEN_SIZE_EXT','%GL_HISTOGRAM_LUMINANCE_SIZE_EXT','%GL_HISTOGRAM_RED_SIZE_EXT','%GL_HISTOGRAM_SINK_EXT','%GL_HISTOGRAM_WIDTH_EXT', - '%GL_INCR','%GL_INDEX_ARRAY','%GL_INDEX_ARRAY_COUNT_EXT','%GL_INDEX_ARRAY_EXT','%GL_INDEX_ARRAY_POINTER','%GL_INDEX_ARRAY_POINTER_EXT','%GL_INDEX_ARRAY_STRIDE','%GL_INDEX_ARRAY_STRIDE_EXT', - '%GL_INDEX_ARRAY_TYPE','%GL_INDEX_ARRAY_TYPE_EXT','%GL_INDEX_BITS','%GL_INDEX_CLEAR_VALUE','%GL_INDEX_LOGIC_OP','%GL_INDEX_MODE','%GL_INDEX_OFFSET','%GL_INDEX_SHIFT', - '%GL_INDEX_WRITEMASK','%GL_INT','%GL_INTENSITY','%GL_INTENSITY12','%GL_INTENSITY16','%GL_INTENSITY4','%GL_INTENSITY8','%GL_INVALID_ENUM', - '%GL_INVALID_OPERATION','%GL_INVALID_VALUE','%GL_INVERT','%GL_KEEP','%GL_LEFT','%GL_LEQUAL','%GL_LESS','%GL_LIGHT0', - '%GL_LIGHT1','%GL_LIGHT2','%GL_LIGHT3','%GL_LIGHT4','%GL_LIGHT5','%GL_LIGHT6','%GL_LIGHT7','%GL_LIGHTING', - '%GL_LIGHTING_BIT','%GL_LIGHT_MODEL_AMBIENT','%GL_LIGHT_MODEL_COLOR_CONTROL_EXT','%GL_LIGHT_MODEL_LOCAL_VIEWER','%GL_LIGHT_MODEL_TWO_SIDE','%GL_LINE','%GL_LINEAR','%GL_LINEAR_ATTENUATION', - '%GL_LINEAR_MIPMAP_LINEAR','%GL_LINEAR_MIPMAP_NEAREST','%GL_LINES','%GL_LINE_BIT','%GL_LINE_LOOP','%GL_LINE_RESET_TOKEN','%GL_LINE_SMOOTH','%GL_LINE_SMOOTH_HINT', - '%GL_LINE_STIPPLE','%GL_LINE_STIPPLE_PATTERN','%GL_LINE_STIPPLE_REPEAT','%GL_LINE_STRIP','%GL_LINE_TOKEN','%GL_LINE_WIDTH','%GL_LINE_WIDTH_GRANULARITY','%GL_LINE_WIDTH_RANGE', - '%GL_LIST_BASE','%GL_LIST_BIT','%GL_LIST_INDEX','%GL_LIST_MODE','%GL_LOAD','%GL_LOGIC_OP','%GL_LOGIC_OP_MODE','%GL_LUMINANCE', - '%GL_LUMINANCE12','%GL_LUMINANCE12_ALPHA12','%GL_LUMINANCE12_ALPHA4','%GL_LUMINANCE16','%GL_LUMINANCE16_ALPHA16','%GL_LUMINANCE4','%GL_LUMINANCE4_ALPHA4','%GL_LUMINANCE6_ALPHA2', - '%GL_LUMINANCE8','%GL_LUMINANCE8_ALPHA8','%GL_LUMINANCE_ALPHA','%GL_MAP1_COLOR_4','%GL_MAP1_GRID_DOMAIN','%GL_MAP1_GRID_SEGMENTS','%GL_MAP1_INDEX','%GL_MAP1_NORMAL', - '%GL_MAP1_TEXTURE_COORD_1','%GL_MAP1_TEXTURE_COORD_2','%GL_MAP1_TEXTURE_COORD_3','%GL_MAP1_TEXTURE_COORD_4','%GL_MAP1_VERTEX_3','%GL_MAP1_VERTEX_4','%GL_MAP2_COLOR_4','%GL_MAP2_GRID_DOMAIN', - '%GL_MAP2_GRID_SEGMENTS','%GL_MAP2_INDEX','%GL_MAP2_NORMAL','%GL_MAP2_TEXTURE_COORD_1','%GL_MAP2_TEXTURE_COORD_2','%GL_MAP2_TEXTURE_COORD_3','%GL_MAP2_TEXTURE_COORD_4','%GL_MAP2_VERTEX_3', - '%GL_MAP2_VERTEX_4','%GL_MAP_COLOR','%GL_MAP_STENCIL','%GL_MATRIX_MODE','%GL_MAX_ATTRIB_STACK_DEPTH','%GL_MAX_CLIENT_ATTRIB_STACK_DEPTH','%GL_MAX_CLIP_PLANES','%GL_MAX_CONVOLUTION_HEIGHT_EXT', - '%GL_MAX_CONVOLUTION_WIDTH_EXT','%GL_MAX_EVAL_ORDER','%GL_MAX_EXT','%GL_MAX_LIGHTS','%GL_MAX_LIST_NESTING','%GL_MAX_MODELVIEW_STACK_DEPTH','%GL_MAX_NAME_STACK_DEPTH','%GL_MAX_PIXEL_MAP_TABLE', - '%GL_MAX_PROJECTION_STACK_DEPTH','%GL_MAX_TEXTURE_SIZE','%GL_MAX_TEXTURE_STACK_DEPTH','%GL_MAX_VIEWPORT_DIMS','%GL_MINMAX_EXT','%GL_MINMAX_FORMAT_EXT','%GL_MINMAX_SINK_EXT','%GL_MIN_EXT', - '%GL_MODELVIEW','%GL_MODELVIEW_MATRIX','%GL_MODELVIEW_STACK_DEPTH','%GL_MODULATE','%GL_MULT','%GL_N3F_V3F','%GL_NAME_STACK_DEPTH','%GL_NAND', - '%GL_NEAREST','%GL_NEAREST_MIPMAP_LINEAR','%GL_NEAREST_MIPMAP_NEAREST','%GL_NEVER','%GL_NICEST','%GL_NONE','%GL_NOOP','%GL_NOR', - '%GL_NORMALIZE','%GL_NORMAL_ARRAY','%GL_NORMAL_ARRAY_COUNT_EXT','%GL_NORMAL_ARRAY_EXT','%GL_NORMAL_ARRAY_POINTER','%GL_NORMAL_ARRAY_POINTER_EXT','%GL_NORMAL_ARRAY_STRIDE','%GL_NORMAL_ARRAY_STRIDE_EXT', - '%GL_NORMAL_ARRAY_TYPE','%GL_NORMAL_ARRAY_TYPE_EXT','%GL_NOTEQUAL','%GL_NO_ERROR','%GL_OBJECT_LINEAR','%GL_OBJECT_PLANE','%GL_ONE','%GL_ONE_MINUS_CONSTANT_ALPHA_EXT', - '%GL_ONE_MINUS_CONSTANT_COLOR_EXT','%GL_ONE_MINUS_DST_ALPHA','%GL_ONE_MINUS_DST_COLOR','%GL_ONE_MINUS_SRC_ALPHA','%GL_ONE_MINUS_SRC_COLOR','%GL_OR','%GL_ORDER','%GL_OR_INVERTED', - '%GL_OR_REVERSE','%GL_OUT_OF_MEMORY','%GL_PACK_ALIGNMENT','%GL_PACK_LSB_FIRST','%GL_PACK_ROW_LENGTH','%GL_PACK_SKIP_PIXELS','%GL_PACK_SKIP_ROWS','%GL_PACK_SWAP_BYTES', - '%GL_PASS_THROUGH_TOKEN','%GL_PERSPECTIVE_CORRECTION_HINT','%GL_PIXEL_MAP_A_TO_A','%GL_PIXEL_MAP_A_TO_A_SIZE','%GL_PIXEL_MAP_B_TO_B','%GL_PIXEL_MAP_B_TO_B_SIZE','%GL_PIXEL_MAP_G_TO_G','%GL_PIXEL_MAP_G_TO_G_SIZE', - '%GL_PIXEL_MAP_I_TO_A','%GL_PIXEL_MAP_I_TO_A_SIZE','%GL_PIXEL_MAP_I_TO_B','%GL_PIXEL_MAP_I_TO_B_SIZE','%GL_PIXEL_MAP_I_TO_G','%GL_PIXEL_MAP_I_TO_G_SIZE','%GL_PIXEL_MAP_I_TO_I','%GL_PIXEL_MAP_I_TO_I_SIZE', - '%GL_PIXEL_MAP_I_TO_R','%GL_PIXEL_MAP_I_TO_R_SIZE','%GL_PIXEL_MAP_R_TO_R','%GL_PIXEL_MAP_R_TO_R_SIZE','%GL_PIXEL_MAP_S_TO_S','%GL_PIXEL_MAP_S_TO_S_SIZE','%GL_PIXEL_MODE_BIT','%GL_POINT', - '%GL_POINTS','%GL_POINT_BIT','%GL_POINT_SIZE','%GL_POINT_SIZE_GRANULARITY','%GL_POINT_SIZE_RANGE','%GL_POINT_SMOOTH','%GL_POINT_SMOOTH_HINT','%GL_POINT_TOKEN', - '%GL_POLYGON','%GL_POLYGON_BIT','%GL_POLYGON_MODE','%GL_POLYGON_OFFSET_BIAS_EXT','%GL_POLYGON_OFFSET_EXT','%GL_POLYGON_OFFSET_FACTOR','%GL_POLYGON_OFFSET_FACTOR_EXT','%GL_POLYGON_OFFSET_FILL', - '%GL_POLYGON_OFFSET_LINE','%GL_POLYGON_OFFSET_POINT','%GL_POLYGON_OFFSET_UNITS','%GL_POLYGON_SMOOTH','%GL_POLYGON_SMOOTH_HINT','%GL_POLYGON_STIPPLE','%GL_POLYGON_STIPPLE_BIT','%GL_POLYGON_TOKEN', - '%GL_POSITION','%GL_POST_COLOR_MATRIX_COLOR_TABLE_EXT','%GL_POST_CONVOLUTION_ALPHA_BIAS_EXT','%GL_POST_CONVOLUTION_ALPHA_SCALE_EXT','%GL_POST_CONVOLUTION_BLUE_BIAS_EXT','%GL_POST_CONVOLUTION_BLUE_SCALE_EXT','%GL_POST_CONVOLUTION_COLOR_TABLE_EXT','%GL_POST_CONVOLUTION_GREEN_BIAS_EXT', - '%GL_POST_CONVOLUTION_GREEN_SCALE_EXT','%GL_POST_CONVOLUTION_RED_BIAS_EXT','%GL_POST_CONVOLUTION_RED_SCALE_EXT','%GL_PROJECTION','%GL_PROJECTION_MATRIX','%GL_PROJECTION_STACK_DEPTH','%GL_PROXY_COLOR_TABLE_EXT','%GL_PROXY_HISTOGRAM_EXT', - '%GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_EXT','%GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_EXT','%GL_PROXY_TEXTURE_1D','%GL_PROXY_TEXTURE_2D','%GL_Q','%GL_QUADRATIC_ATTENUATION','%GL_QUADS','%GL_QUAD_STRIP', - '%GL_R','%GL_R3_G3_B2','%GL_READ_BUFFER','%GL_RED','%GL_REDUCE_EXT','%GL_RED_BIAS','%GL_RED_BITS','%GL_RED_SCALE', - '%GL_RENDER','%GL_RENDERER','%GL_RENDER_MODE','%GL_REPEAT','%GL_REPLACE','%GL_RETURN','%GL_RGB','%GL_RGB10', - '%GL_RGB10_A2','%GL_RGB12','%GL_RGB16','%GL_RGB4','%GL_RGB5','%GL_RGB5_A1','%GL_RGB8','%GL_RGBA', - '%GL_RGBA12','%GL_RGBA16','%GL_RGBA2','%GL_RGBA4','%GL_RGBA8','%GL_RGBA_MODE','%GL_RIGHT','%GL_S', - '%GL_SCISSOR_BIT','%GL_SCISSOR_BOX','%GL_SCISSOR_TEST','%GL_SECONDARY_COLOR_ARRAY_EXT','%GL_SECONDARY_COLOR_ARRAY_POINTER_EXT','%GL_SECONDARY_COLOR_ARRAY_SIZE_EXT','%GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT','%GL_SECONDARY_COLOR_ARRAY_TYPE_EXT', - '%GL_SELECT','%GL_SELECTION_BUFFER_POINTER','%GL_SELECTION_BUFFER_SIZE','%GL_SEPARABLE_2D_EXT','%GL_SEPARATE_SPECULAR_COLOR_EXT','%GL_SET','%GL_SHADE_MODEL','%GL_SHININESS', - '%GL_SHORT','%GL_SINGLE_COLOR_EXT','%GL_SMOOTH','%GL_SPECULAR','%GL_SPHERE_MAP','%GL_SPOT_CUTOFF','%GL_SPOT_DIRECTION','%GL_SPOT_EXPONENT', - '%GL_SRC_ALPHA','%GL_SRC_ALPHA_SATURATE','%GL_SRC_COLOR','%GL_STACK_OVERFLOW','%GL_STACK_UNDERFLOW','%GL_STENCIL','%GL_STENCIL_BITS','%GL_STENCIL_BUFFER_BIT', - '%GL_STENCIL_CLEAR_VALUE','%GL_STENCIL_FAIL','%GL_STENCIL_FUNC','%GL_STENCIL_INDEX','%GL_STENCIL_PASS_DEPTH_FAIL','%GL_STENCIL_PASS_DEPTH_PASS','%GL_STENCIL_REF','%GL_STENCIL_TEST', - '%GL_STENCIL_VALUE_MASK','%GL_STENCIL_WRITEMASK','%GL_STEREO','%GL_SUBPIXEL_BITS','%GL_T','%GL_T2F_C3F_V3F','%GL_T2F_C4F_N3F_V3F','%GL_T2F_C4UB_V3F', - '%GL_T2F_N3F_V3F','%GL_T2F_V3F','%GL_T4F_C4F_N3F_V4F','%GL_T4F_V4F','%GL_TABLE_TOO_LARGE_EXT','%GL_TEXTURE','%GL_TEXTURE_1D','%GL_TEXTURE_2D', - '%GL_TEXTURE_ALPHA_SIZE','%GL_TEXTURE_BINDING_1D','%GL_TEXTURE_BINDING_2D','%GL_TEXTURE_BIT','%GL_TEXTURE_BLUE_SIZE','%GL_TEXTURE_BORDER','%GL_TEXTURE_BORDER_COLOR','%GL_TEXTURE_COMPONENTS', - '%GL_TEXTURE_COORD_ARRAY','%GL_TEXTURE_COORD_ARRAY_COUNT_EXT','%GL_TEXTURE_COORD_ARRAY_EXT','%GL_TEXTURE_COORD_ARRAY_POINTER','%GL_TEXTURE_COORD_ARRAY_POINTER_EXT','%GL_TEXTURE_COORD_ARRAY_SIZE','%GL_TEXTURE_COORD_ARRAY_SIZE_EXT','%GL_TEXTURE_COORD_ARRAY_STRIDE', - '%GL_TEXTURE_COORD_ARRAY_STRIDE_EXT','%GL_TEXTURE_COORD_ARRAY_TYPE','%GL_TEXTURE_COORD_ARRAY_TYPE_EXT','%GL_TEXTURE_ENV','%GL_TEXTURE_ENV_COLOR','%GL_TEXTURE_ENV_MODE','%GL_TEXTURE_GEN_MODE','%GL_TEXTURE_GEN_Q', - '%GL_TEXTURE_GEN_R','%GL_TEXTURE_GEN_S','%GL_TEXTURE_GEN_T','%GL_TEXTURE_GREEN_SIZE','%GL_TEXTURE_HEIGHT','%GL_TEXTURE_INTENSITY_SIZE','%GL_TEXTURE_INTERNAL_FORMAT','%GL_TEXTURE_LUMINANCE_SIZE', - '%GL_TEXTURE_MAG_FILTER','%GL_TEXTURE_MATRIX','%GL_TEXTURE_MIN_FILTER','%GL_TEXTURE_PRIORITY','%GL_TEXTURE_RED_SIZE','%GL_TEXTURE_RESIDENT','%GL_TEXTURE_STACK_DEPTH','%GL_TEXTURE_WIDTH', - '%GL_TEXTURE_WRAP_S','%GL_TEXTURE_WRAP_T','%GL_TRANSFORM_BIT','%GL_TRIANGLES','%GL_TRIANGLE_FAN','%GL_TRIANGLE_STRIP','%GL_TRUE','%GL_UNPACK_ALIGNMENT', - '%GL_UNPACK_LSB_FIRST','%GL_UNPACK_ROW_LENGTH','%GL_UNPACK_SKIP_PIXELS','%GL_UNPACK_SKIP_ROWS','%GL_UNPACK_SWAP_BYTES','%GL_UNSIGNED_BYTE','%GL_UNSIGNED_BYTE_3_3_2_EXT','%GL_UNSIGNED_INT', - '%GL_UNSIGNED_INT_10_10_10_2_EXT','%GL_UNSIGNED_INT_8_8_8_8_EXT','%GL_UNSIGNED_SHORT','%GL_UNSIGNED_SHORT_4_4_4_4_EXT','%GL_UNSIGNED_SHORT_5_5_5_1_EXT','%GL_V2F','%GL_V3F','%GL_VENDOR', - '%GL_VERSION','%GL_VERSION_1_1','%GL_VERTEX_ARRAY','%GL_VERTEX_ARRAY_COUNT_EXT','%GL_VERTEX_ARRAY_EXT','%GL_VERTEX_ARRAY_POINTER','%GL_VERTEX_ARRAY_POINTER_EXT','%GL_VERTEX_ARRAY_SIZE', - '%GL_VERTEX_ARRAY_SIZE_EXT','%GL_VERTEX_ARRAY_STRIDE','%GL_VERTEX_ARRAY_STRIDE_EXT','%GL_VERTEX_ARRAY_TYPE','%GL_VERTEX_ARRAY_TYPE_EXT','%GL_VIEWPORT','%GL_VIEWPORT_BIT','%GL_WIN_SWAP_HINT', - '%GL_XOR','%GL_ZERO','%GL_ZOOM_X','%GL_ZOOM_Y','%GRAY','%GREEN','%GWLP_HINSTANCE','%GWLP_HWNDPARENT', - '%GWLP_ID','%GWLP_USERDATA','%GWLP_WNDPROC','%GWL_EXSTYLE','%GWL_HINSTANCE','%GWL_HWNDPARENT','%GWL_ID','%GWL_STYLE', - '%GWL_USERDATA','%GWL_WNDPROC','%HDM_FIRST','%HTCAPTION','%HWND_BOTTOM','%HWND_DESKTOP','%HWND_MESSAGE','%HWND_NOTOPMOST', - '%HWND_TOP','%HWND_TOPMOST','%ICRYPTO_XOR_DECREASE','%ICRYPTO_XOR_INCREASE','%ICRYPTO_XOR_NORMAL','%IDABORT','%IDCANCEL','%IDCONTINUE', - '%IDIGNORE','%IDNO','%IDOK','%IDRETRY','%IDTIMEOUT','%IDTRYAGAIN','%IDYES','%INTERNET_CONNECTION_CONFIGURED', - '%INTERNET_CONNECTION_LAN','%INTERNET_CONNECTION_MODEM','%INTERNET_CONNECTION_MODEM_BUSY','%INTERNET_CONNECTION_OFFLINE','%INTERNET_CONNECTION_PROXY','%INTERNET_RAS_INSTALLED','%LBN_DBLCLK','%LBN_KILLFOCUS', - '%LBN_SELCANCEL','%LBN_SELCHANGE','%LBN_SETFOCUS','%LBS_DISABLENOSCROLL','%LBS_EXTENDEDSEL','%LBS_MULTICOLUMN','%LBS_MULTIPLESEL','%LBS_NOINTEGRALHEIGHT', - '%LBS_NOSEL','%LBS_NOTIFY','%LBS_SORT','%LBS_STANDARD','%LBS_USETABSTOPS','%LB_ADDFILE','%LB_ADDSTRING','%LB_DELETESTRING', - '%LB_DIR','%LB_FINDSTRING','%LB_FINDSTRINGEXACT','%LB_GETANCHORINDEX','%LB_GETCARETINDEX','%LB_GETCOUNT','%LB_GETCURSEL','%LB_GETHORIZONTALEXTENT', - '%LB_GETITEMDATA','%LB_GETITEMHEIGHT','%LB_GETITEMRECT','%LB_GETLISTBOXINFO','%LB_GETLOCALE','%LB_GETSEL','%LB_GETSELCOUNT','%LB_GETSELITEMS', - '%LB_GETTEXT','%LB_GETTEXTLEN','%LB_GETTOPINDEX','%LB_INITSTORAGE','%LB_INSERTSTRING','%LB_ITEMFROMPOINT','%LB_MULTIPLEADDSTRING','%LB_RESETCONTENT', - '%LB_SELECTSTRING','%LB_SELITEMRANGE','%LB_SELITEMRANGEEX','%LB_SETANCHORINDEX','%LB_SETCARETINDEX','%LB_SETCOLUMNWIDTH','%LB_SETCOUNT','%LB_SETCURSEL', - '%LB_SETHORIZONTALEXTENT','%LB_SETITEMDATA','%LB_SETITEMHEIGHT','%LB_SETLOCALE','%LB_SETSEL','%LB_SETTABSTOPS','%LB_SETTOPINDEX','%LF_FACESIZE', - '%LTGRAY','%LVM_FIRST','%LWA_ALPHA','%LWA_COLORKEY','%MAGENTA','%MAXBYTE','%MAXCHAR','%MAXDWORD', - '%MAXSHORT','%MAXWORD','%MAX_PATH','%MB_ABORTRETRYIGNORE','%MB_APPLMODAL','%MB_CANCELTRYCONTINUE','%MB_DEFBUTTON1','%MB_DEFBUTTON2', - '%MB_DEFBUTTON3','%MB_HELP','%MB_ICONASTERISK','%MB_ICONERROR','%MB_ICONEXCLAMATION','%MB_ICONHAND','%MB_ICONINFORMATION','%MB_ICONQUESTION', - '%MB_ICONSTOP','%MB_ICONWARNING','%MB_OK','%MB_OKCANCEL','%MB_RETRYCANCEL','%MB_SIMPLE','%MB_SYSTEMMODAL','%MB_TOPMOST', - '%MB_YESNO','%MB_YESNOCANCEL','%MF_CHECKED','%MF_DISABLED','%MF_ENABLED','%MF_GRAYED','%MF_SEPARATOR','%MF_UNCHECKED', - '%MINCHAR','%MINLONG','%MINSHORT','%NULL','%ODBC352_INC','%ODBCVER','%ODBC_ADD_DSN','%ODBC_ADD_SYS_DSN', - '%ODBC_BOTH_DSN','%ODBC_CONFIG_DRIVER','%ODBC_CONFIG_DRIVER_MAX','%ODBC_CONFIG_DSN','%ODBC_CONFIG_SYS_DSN','%ODBC_DRIVER_VERSION','%ODBC_ERROR_COMPONENT_NOT_FOUND','%ODBC_ERROR_CREATE_DSN_FAILED', - '%ODBC_ERROR_GENERAL_ERR','%ODBC_ERROR_INVALID_BUFF_LEN','%ODBC_ERROR_INVALID_DSN','%ODBC_ERROR_INVALID_HWND','%ODBC_ERROR_INVALID_INF','%ODBC_ERROR_INVALID_KEYWORD_VALUE','%ODBC_ERROR_INVALID_LOG_FILE','%ODBC_ERROR_INVALID_NAME', - '%ODBC_ERROR_INVALID_PARAM_SEQUENCE','%ODBC_ERROR_INVALID_PATH','%ODBC_ERROR_INVALID_REQUEST_TYPE','%ODBC_ERROR_INVALID_STR','%ODBC_ERROR_LOAD_LIB_FAILED','%ODBC_ERROR_OUTPUT_STRING_TRUNCATED','%ODBC_ERROR_OUT_OF_MEM','%ODBC_ERROR_REMOVE_DSN_FAILED', - '%ODBC_ERROR_REQUEST_FAILED','%ODBC_ERROR_USAGE_UPDATE_FAILED','%ODBC_ERROR_USER_CANCELED','%ODBC_ERROR_WRITING_SYSINFO_FAILED','%ODBC_INSTALL_COMPLETE','%ODBC_INSTALL_DRIVER','%ODBC_INSTALL_INQUIRY','%ODBC_REMOVE_DEFAULT_DSN', - '%ODBC_REMOVE_DRIVER','%ODBC_REMOVE_DSN','%ODBC_REMOVE_SYS_DSN','%ODBC_SYSTEM_DSN','%ODBC_USER_DSN','%OFN_ALLOWMULTISELECT','%OFN_CREATEPROMPT','%OFN_ENABLEHOOK', - '%OFN_ENABLEINCLUDENOTIFY','%OFN_ENABLESIZING','%OFN_ENABLETEMPLATE','%OFN_ENABLETEMPLATEHANDLE','%OFN_EXPLORER','%OFN_EXTENSIONDIFFERENT','%OFN_FILEMUSTEXIST','%OFN_HIDEREADONLY', - '%OFN_LONGNAMES','%OFN_NOCHANGEDIR','%OFN_NODEREFERENCELINKS','%OFN_NOLONGNAMES','%OFN_NONETWORKBUTTON','%OFN_NOREADONLYRETURN','%OFN_NOTESTFILECREATE','%OFN_NOVALIDATE', - '%OFN_OVERWRITEPROMPT','%OFN_PATHMUSTEXIST','%OFN_READONLY','%OFN_SHAREAWARE','%OFN_SHOWHELP','%OS_ERROR_CALLFUNCTION','%OS_ERROR_EMPTYSTRING','%OS_ERROR_LOADLIBRARY', - '%OS_ERROR_SUCCESS','%OS_ERROR_WRONGPARAMETER','%OS_SHELL_ASYNC','%OS_SHELL_SYNC','%OS_WINDOWS_2K','%OS_WINDOWS_95','%OS_WINDOWS_95_OSR2','%OS_WINDOWS_98', - '%OS_WINDOWS_98_SE','%OS_WINDOWS_ME','%OS_WINDOWS_NT','%OS_WINDOWS_SERVER_2003','%OS_WINDOWS_SERVER_LONGHORN','%OS_WINDOWS_SERVER_LONGHORN_DC','%OS_WINDOWS_VISTA','%OS_WINDOWS_XP', - '%OS_WNDSTYLE_HIDE','%OS_WNDSTYLE_MAXIMIZED','%OS_WNDSTYLE_MINIMIZED','%OS_WNDSTYLE_MINIMIZEDNOFOCUS','%OS_WNDSTYLE_NORMAL','%OS_WNDSTYLE_NORMALNOFOCUS','%PATH_EXT','%PATH_FILE', - '%PATH_FILEEXT','%PATH_ROOT','%PATH_ROOTPATH','%PATH_ROOTPATHPROG','%PATH_ROOTPATHPROGEXT','%PBM_DELTAPOS','%PBM_GETPOS','%PBM_GETRANGE', - '%PBM_SETBARCOLOR','%PBM_SETBKCOLOR','%PBM_SETPOS','%PBM_SETRANGE','%PBM_SETRANGE32','%PBM_SETSTEP','%PBM_STEPIT','%PBS_SMOOTH', - '%PBS_VERTICAL','%PC_DISABLEWAKEEVENT_OFF','%PC_DISABLEWAKEEVENT_ON','%PC_EB_NOCONFIRMATION','%PC_EB_NOPROGRESSUI','%PC_EB_NORMAL','%PC_EB_NOSOUND','%PC_FORCECRITICAL_OFF', - '%PC_FORCECRITICAL_ON','%PC_HIBERNATE_OFF','%PC_HIBERNATE_ON','%PC_RD_FORCE','%PC_RD_FORCEIFHUNG','%PC_RD_LOGOFF','%PC_RD_POWEROFF','%PC_RD_REBOOT', - '%PC_RD_SHUTDOWN','%PC_SD_DONOT_FORCE','%PC_SD_DONOT_REBOOT','%PC_SD_FORCE','%PC_SD_REBOOT','%PFA_CENTER','%PFA_LEFT','%PFA_RIGHT', - '%PF_3DNOW_INSTRUCTIONS_AVAILABLE','%PF_CHANNELS_ENABLED','%PF_COMPARE64_EXCHANGE128','%PF_COMPARE_EXCHANGE128','%PF_COMPARE_EXCHANGE_DOUBLE','%PF_FLOATING_POINT_EMULATED','%PF_FLOATING_POINT_PRECISION_ERRATA','%PF_MMX_INSTRUCTIONS_AVAILABLE', - '%PF_NX_ENABLED','%PF_PAE_ENABLED','%PF_RDTSC_INSTRUCTION_AVAILABLE','%PF_SSE3_INSTRUCTIONS_AVAILABLE','%PF_XMMI64_INSTRUCTIONS_AVAILABLE','%PF_XMMI_INSTRUCTIONS_AVAILABLE','%PGM_FIRST','%RED', - '%RTF_UBB','%SAPI_SVSFDEFAULT','%SAPI_SVSFISFILENAME','%SAPI_SVSFISNOTXML','%SAPI_SVSFISXML','%SAPI_SVSFLAGSASYNC','%SAPI_SVSFNLPMASK','%SAPI_SVSFNLPSPEAKPUNC', - '%SAPI_SVSFPERSISTXML','%SAPI_SVSFPURGEBEFORESPEAK','%SAPI_SVSFUNUSEDFLAGS','%SAPI_SVSFVOICEMASK','%SBS_SIZEGRIP','%SB_BOTTOM','%SB_ENDSCROLL','%SB_LEFT', - '%SB_LINEDOWN','%SB_LINELEFT','%SB_LINERIGHT','%SB_LINEUP','%SB_PAGEDOWN','%SB_PAGELEFT','%SB_PAGERIGHT','%SB_PAGEUP', - '%SB_RIGHT','%SB_SETPARTS','%SB_SETTEXT','%SB_THUMBPOSITION','%SB_THUMBTRACK','%SB_TOP','%SCF_ALL','%SCF_ASSOCIATEFONT', - '%SCF_DEFAULT','%SCF_NOKBUPDATE','%SCF_SELECTION','%SCF_USEUIRULES','%SCF_WORD','%SC_CLOSE','%SC_CONTEXTHELP','%SC_HOTKEY', - '%SC_HSCROLL','%SC_KEYMENU','%SC_MAXIMIZE','%SC_MINIMIZE','%SC_MONITORPOWER','%SC_MOUSEMENU','%SC_MOVE','%SC_NEXTWINDOW', - '%SC_PREVWINDOW','%SC_RESTORE','%SC_SCREENSAVE','%SC_SIZE','%SC_TASKLIST','%SC_VSCROLL','%SERVICE_ACTIVE','%SERVICE_AUTO_START', - '%SERVICE_BOOT_START','%SERVICE_CONTINUE_PENDING','%SERVICE_DEMAND_START','%SERVICE_DISABLED','%SERVICE_DRIVER','%SERVICE_INACTIVE','%SERVICE_INFO_DISPLAY_NAME','%SERVICE_INFO_NAME', - '%SERVICE_PAUSED','%SERVICE_PAUSE_PENDING','%SERVICE_RUNNING','%SERVICE_START_PENDING','%SERVICE_STATE_ALL','%SERVICE_STOPPED','%SERVICE_STOP_PENDING','%SERVICE_SYSTEM_START', - '%SERVICE_TYPE_ALL','%SERVICE_WIN32','%SES_ALLOWBEEPS','%SES_BEEPONMAXTEXT','%SES_BIDI','%SES_EMULATE10','%SES_EMULATESYSEDIT','%SES_EXTENDBACKCOLOR', - '%SES_LOWERCASE','%SES_MAPCPS','%SES_NOIME','%SES_NOINPUTSEQUENCECHK','%SES_SCROLLONKILLFOCUS','%SES_UPPERCASE','%SES_USEAIMM','%SES_USECRLF', - '%SES_XLTCRCRLFTOCR','%SF_RTF','%SF_TEXT','%SMTP_SET_ATTACH_CONTENT_TYPE','%SMTP_SET_CONTENT_TYPE_PREFIX','%SQL_AA_FALSE','%SQL_AA_TRUE','%SQL_ACCESSIBLE_PROCEDURES', - '%SQL_ACCESSIBLE_TABLES','%SQL_ACCESS_MODE','%SQL_ACTIVE_CONNECTIONS','%SQL_ACTIVE_ENVIRONMENTS','%SQL_ACTIVE_STATEMENTS','%SQL_ADD','%SQL_AD_ADD_CONSTRAINT_DEFERRABLE','%SQL_AD_ADD_CONSTRAINT_INITIALLY_DEFERRED', - '%SQL_AD_ADD_CONSTRAINT_INITIALLY_IMMEDIATE','%SQL_AD_ADD_CONSTRAINT_NON_DEFERRABLE','%SQL_AD_ADD_DOMAIN_CONSTRAINT','%SQL_AD_ADD_DOMAIN_DEFAULT','%SQL_AD_CONSTRAINT_NAME_DEFINITION','%SQL_AD_DROP_DOMAIN_CONSTRAINT','%SQL_AD_DROP_DOMAIN_DEFAULT','%SQL_AF_ALL', - '%SQL_AF_AVG','%SQL_AF_COUNT','%SQL_AF_DISTINCT','%SQL_AF_MAX','%SQL_AF_MIN','%SQL_AF_SUM','%SQL_AGGREGATE_FUNCTIONS','%SQL_ALL_EXCEPT_LIKE', - '%SQL_ALL_TYPES','%SQL_ALTER_DOMAIN','%SQL_ALTER_TABLE','%SQL_AM_CONNECTION','%SQL_AM_NONE','%SQL_AM_STATEMENT','%SQL_API_ALL_FUNCTIONS','%SQL_API_LOADBYORDINAL', - '%SQL_API_ODBC3_ALL_FUNCTIONS','%SQL_API_ODBC3_ALL_FUNCTIONS_SIZE','%SQL_API_SQLALLOCCONNECT','%SQL_API_SQLALLOCENV','%SQL_API_SQLALLOCHANDLE','%SQL_API_SQLALLOCHANDLESTD','%SQL_API_SQLALLOCSTMT','%SQL_API_SQLBINDCOL', - '%SQL_API_SQLBINDPARAM','%SQL_API_SQLBINDPARAMETER','%SQL_API_SQLBROWSECONNECT','%SQL_API_SQLBULKOPERATIONS','%SQL_API_SQLCANCEL','%SQL_API_SQLCLOSECURSOR','%SQL_API_SQLCOLATTRIBUTE','%SQL_API_SQLCOLATTRIBUTES', - '%SQL_API_SQLCOLUMNPRIVILEGES','%SQL_API_SQLCOLUMNS','%SQL_API_SQLCONNECT','%SQL_API_SQLCOPYDESC','%SQL_API_SQLDATASOURCES','%SQL_API_SQLDESCRIBECOL','%SQL_API_SQLDESCRIBEPARAM','%SQL_API_SQLDISCONNECT', - '%SQL_API_SQLDRIVERCONNECT','%SQL_API_SQLDRIVERS','%SQL_API_SQLENDTRAN','%SQL_API_SQLERROR','%SQL_API_SQLEXECDIRECT','%SQL_API_SQLEXECUTE','%SQL_API_SQLEXTENDEDFETCH','%SQL_API_SQLFETCH', - '%SQL_API_SQLFETCHSCROLL','%SQL_API_SQLFOREIGNKEYS','%SQL_API_SQLFREECONNECT','%SQL_API_SQLFREEENV','%SQL_API_SQLFREEHANDLE','%SQL_API_SQLFREESTMT','%SQL_API_SQLGETCONNECTATTR','%SQL_API_SQLGETCONNECTOPTION', - '%SQL_API_SQLGETCURSORNAME','%SQL_API_SQLGETDATA','%SQL_API_SQLGETDESCFIELD','%SQL_API_SQLGETDESCREC','%SQL_API_SQLGETDIAGFIELD','%SQL_API_SQLGETDIAGREC','%SQL_API_SQLGETENVATTR','%SQL_API_SQLGETFUNCTIONS', - '%SQL_API_SQLGETINFO','%SQL_API_SQLGETSTMTATTR','%SQL_API_SQLGETSTMTOPTION','%SQL_API_SQLGETTYPEINFO','%SQL_API_SQLMORERESULTS','%SQL_API_SQLNATIVESQL','%SQL_API_SQLNUMPARAMS','%SQL_API_SQLNUMRESULTCOLS', - '%SQL_API_SQLPARAMDATA','%SQL_API_SQLPARAMOPTIONS','%SQL_API_SQLPREPARE','%SQL_API_SQLPRIMARYKEYS','%SQL_API_SQLPROCEDURECOLUMNS','%SQL_API_SQLPROCEDURES','%SQL_API_SQLPUTDATA','%SQL_API_SQLROWCOUNT', - '%SQL_API_SQLSETCONNECTATTR','%SQL_API_SQLSETCONNECTOPTION','%SQL_API_SQLSETCURSORNAME','%SQL_API_SQLSETDESCFIELD','%SQL_API_SQLSETDESCREC','%SQL_API_SQLSETENVATTR','%SQL_API_SQLSETPARAM','%SQL_API_SQLSETPOS', - '%SQL_API_SQLSETSCROLLOPTIONS','%SQL_API_SQLSETSTMTATTR','%SQL_API_SQLSETSTMTOPTION','%SQL_API_SQLSPECIALCOLUMNS','%SQL_API_SQLSTATISTICS','%SQL_API_SQLTABLEPRIVILEGES','%SQL_API_SQLTABLES','%SQL_API_SQLTRANSACT', - '%SQL_ARD_TYPE','%SQL_ASYNC_ENABLE','%SQL_ASYNC_ENABLE_DEFAULT','%SQL_ASYNC_ENABLE_OFF','%SQL_ASYNC_ENABLE_ON','%SQL_ASYNC_MODE','%SQL_ATTR_ACCESS_MODE','%SQL_ATTR_ANSI_APP', - '%SQL_ATTR_APP_PARAM_DESC','%SQL_ATTR_APP_ROW_DESC','%SQL_ATTR_ASYNC_ENABLE','%SQL_ATTR_AUTOCOMMIT','%SQL_ATTR_AUTO_IPD','%SQL_ATTR_CONCURRENCY','%SQL_ATTR_CONNECTION_DEAD','%SQL_ATTR_CONNECTION_POOLING', - '%SQL_ATTR_CONNECTION_TIMEOUT','%SQL_ATTR_CP_MATCH','%SQL_ATTR_CURRENT_CATALOG','%SQL_ATTR_CURSOR_SCROLLABLE','%SQL_ATTR_CURSOR_SENSITIVITY','%SQL_ATTR_CURSOR_TYPE','%SQL_ATTR_DISCONNECT_BEHAVIOR','%SQL_ATTR_ENABLE_AUTO_IPD', - '%SQL_ATTR_ENLIST_IN_DTC','%SQL_ATTR_ENLIST_IN_XA','%SQL_ATTR_FETCH_BOOKMARK_PTR','%SQL_ATTR_IMP_PARAM_DESC','%SQL_ATTR_IMP_ROW_DESC','%SQL_ATTR_KEYSET_SIZE','%SQL_ATTR_LOGIN_TIMEOUT','%SQL_ATTR_MAX_LENGTH', - '%SQL_ATTR_MAX_ROWS','%SQL_ATTR_METADATA_ID','%SQL_ATTR_NOSCAN','%SQL_ATTR_ODBC_CURSORS','%SQL_ATTR_ODBC_VERSION','%SQL_ATTR_OUTPUT_NTS','%SQL_ATTR_PACKET_SIZE','%SQL_ATTR_PARAMSET_SIZE', - '%SQL_ATTR_PARAMS_PROCESSED_PTR','%SQL_ATTR_PARAM_BIND_OFFSET_PTR','%SQL_ATTR_PARAM_BIND_TYPE','%SQL_ATTR_PARAM_OPERATION_PTR','%SQL_ATTR_PARAM_STATUS_PTR','%SQL_ATTR_QUERY_TIMEOUT','%SQL_ATTR_QUIET_MODE','%SQL_ATTR_READONLY', - '%SQL_ATTR_READWRITE_UNKNOWN','%SQL_ATTR_RETRIEVE_DATA','%SQL_ATTR_ROWS_FETCHED_PTR','%SQL_ATTR_ROW_ARRAY_SIZE','%SQL_ATTR_ROW_BIND_OFFSET_PTR','%SQL_ATTR_ROW_BIND_TYPE','%SQL_ATTR_ROW_NUMBER','%SQL_ATTR_ROW_OPERATION_PTR', - '%SQL_ATTR_ROW_STATUS_PTR','%SQL_ATTR_SIMULATE_CURSOR','%SQL_ATTR_TRACE','%SQL_ATTR_TRACEFILE','%SQL_ATTR_TRANSLATE_LIB','%SQL_ATTR_TRANSLATE_OPTION','%SQL_ATTR_TXN_ISOLATION','%SQL_ATTR_USE_BOOKMARKS', - '%SQL_ATTR_WRITE','%SQL_AT_ADD_COLUMN','%SQL_AT_ADD_COLUMN_COLLATION','%SQL_AT_ADD_COLUMN_DEFAULT','%SQL_AT_ADD_COLUMN_SINGLE','%SQL_AT_ADD_CONSTRAINT','%SQL_AT_ADD_TABLE_CONSTRAINT','%SQL_AT_CONSTRAINT_DEFERRABLE', - '%SQL_AT_CONSTRAINT_INITIALLY_DEFERRED','%SQL_AT_CONSTRAINT_INITIALLY_IMMEDIATE','%SQL_AT_CONSTRAINT_NAME_DEFINITION','%SQL_AT_CONSTRAINT_NON_DEFERRABLE','%SQL_AT_DROP_COLUMN','%SQL_AT_DROP_COLUMN_CASCADE','%SQL_AT_DROP_COLUMN_DEFAULT','%SQL_AT_DROP_COLUMN_RESTRICT', - '%SQL_AT_DROP_TABLE_CONSTRAINT_CASCADE','%SQL_AT_DROP_TABLE_CONSTRAINT_RESTRICT','%SQL_AT_SET_COLUMN_DEFAULT','%SQL_AUTOCOMMIT','%SQL_AUTOCOMMIT_DEFAULT','%SQL_AUTOCOMMIT_OFF','%SQL_AUTOCOMMIT_ON','%SQL_BATCH_ROW_COUNT', - '%SQL_BATCH_SUPPORT','%SQL_BEST_ROWID','%SQL_BIGINT','%SQL_BINARY','%SQL_BIND_BY_COLUMN','%SQL_BIND_TYPE','%SQL_BIND_TYPE_DEFAULT','%SQL_BIT', - '%SQL_BOOKMARK_PERSISTENCE','%SQL_BP_CLOSE','%SQL_BP_DELETE','%SQL_BP_DROP','%SQL_BP_OTHER_HSTMT','%SQL_BP_SCROLL','%SQL_BP_TRANSACTION','%SQL_BP_UPDATE', - '%SQL_BRC_EXPLICIT','%SQL_BRC_PROCEDURES','%SQL_BRC_ROLLED_UP','%SQL_BS_ROW_COUNT_EXPLICIT','%SQL_BS_ROW_COUNT_PROC','%SQL_BS_SELECT_EXPLICIT','%SQL_BS_SELECT_PROC','%SQL_CA1_ABSOLUTE', - '%SQL_CA1_BOOKMARK','%SQL_CA1_BULK_ADD','%SQL_CA1_BULK_DELETE_BY_BOOKMARK','%SQL_CA1_BULK_FETCH_BY_BOOKMARK','%SQL_CA1_BULK_UPDATE_BY_BOOKMARK','%SQL_CA1_LOCK_EXCLUSIVE','%SQL_CA1_LOCK_NO_CHANGE','%SQL_CA1_LOCK_UNLOCK', - '%SQL_CA1_NEXT','%SQL_CA1_POSITIONED_DELETE','%SQL_CA1_POSITIONED_UPDATE','%SQL_CA1_POS_DELETE','%SQL_CA1_POS_POSITION','%SQL_CA1_POS_REFRESH','%SQL_CA1_POS_UPDATE','%SQL_CA1_RELATIVE', - '%SQL_CA1_SELECT_FOR_UPDATE','%SQL_CA2_CRC_APPROXIMATE','%SQL_CA2_CRC_EXACT','%SQL_CA2_LOCK_CONCURRENCY','%SQL_CA2_MAX_ROWS_AFFECTS_ALL','%SQL_CA2_MAX_ROWS_CATALOG','%SQL_CA2_MAX_ROWS_DELETE','%SQL_CA2_MAX_ROWS_INSERT', - '%SQL_CA2_MAX_ROWS_SELECT','%SQL_CA2_MAX_ROWS_UPDATE','%SQL_CA2_OPT_ROWVER_CONCURRENCY','%SQL_CA2_OPT_VALUES_CONCURRENCY','%SQL_CA2_READ_ONLY_CONCURRENCY','%SQL_CA2_SENSITIVITY_ADDITIONS','%SQL_CA2_SENSITIVITY_DELETIONS','%SQL_CA2_SENSITIVITY_UPDATES', - '%SQL_CA2_SIMULATE_NON_UNIQUE','%SQL_CA2_SIMULATE_TRY_UNIQUE','%SQL_CA2_SIMULATE_UNIQUE','%SQL_CASCADE','%SQL_CATALOG_LOCATION','%SQL_CATALOG_NAME','%SQL_CATALOG_NAME_SEPARATOR','%SQL_CATALOG_TERM', - '%SQL_CATALOG_USAGE','%SQL_CA_CONSTRAINT_DEFERRABLE','%SQL_CA_CONSTRAINT_INITIALLY_DEFERRED','%SQL_CA_CONSTRAINT_INITIALLY_IMMEDIATE','%SQL_CA_CONSTRAINT_NON_DEFERRABLE','%SQL_CA_CREATE_ASSERTION','%SQL_CB_CLOSE','%SQL_CB_DELETE', - '%SQL_CB_NON_NULL','%SQL_CB_NULL','%SQL_CB_PRESERVE','%SQL_CCOL_CREATE_COLLATION','%SQL_CCS_COLLATE_CLAUSE','%SQL_CCS_CREATE_CHARACTER_SET','%SQL_CCS_LIMITED_COLLATION','%SQL_CC_CLOSE', - '%SQL_CC_DELETE','%SQL_CC_PRESERVE','%SQL_CDO_COLLATION','%SQL_CDO_CONSTRAINT','%SQL_CDO_CONSTRAINT_DEFERRABLE','%SQL_CDO_CONSTRAINT_INITIALLY_DEFERRED','%SQL_CDO_CONSTRAINT_INITIALLY_IMMEDIATE','%SQL_CDO_CONSTRAINT_NAME_DEFINITION', - '%SQL_CDO_CONSTRAINT_NON_DEFERRABLE','%SQL_CDO_CREATE_DOMAIN','%SQL_CDO_DEFAULT','%SQL_CD_FALSE','%SQL_CD_TRUE','%SQL_CHAR','%SQL_CLOSE','%SQL_CL_END', - '%SQL_CL_START','%SQL_CN_ANY','%SQL_CN_DIFFERENT','%SQL_CN_NONE','%SQL_CODE_DATE','%SQL_CODE_DAY','%SQL_CODE_DAY_TO_HOUR','%SQL_CODE_DAY_TO_MINUTE', - '%SQL_CODE_DAY_TO_SECOND','%SQL_CODE_HOUR','%SQL_CODE_HOUR_TO_MINUTE','%SQL_CODE_HOUR_TO_SECOND','%SQL_CODE_MINUTE','%SQL_CODE_MINUTE_TO_SECOND','%SQL_CODE_MONTH','%SQL_CODE_SECOND', - '%SQL_CODE_TIME','%SQL_CODE_TIMESTAMP','%SQL_CODE_YEAR','%SQL_CODE_YEAR_TO_MONTH','%SQL_COLATT_OPT_MAX','%SQL_COLATT_OPT_MIN','%SQL_COLLATION_SEQ','%SQL_COLUMN_ALIAS', - '%SQL_COLUMN_AUTO_INCREMENT','%SQL_COLUMN_CASE_SENSITIVE','%SQL_COLUMN_COUNT','%SQL_COLUMN_DISPLAY_SIZE','%SQL_COLUMN_IGNORE','%SQL_COLUMN_LABEL','%SQL_COLUMN_LENGTH','%SQL_COLUMN_MONEY', - '%SQL_COLUMN_NAME','%SQL_COLUMN_NULLABLE','%SQL_COLUMN_NUMBER_UNKNOWN','%SQL_COLUMN_OWNER_NAME','%SQL_COLUMN_PRECISION','%SQL_COLUMN_QUALIFIER_NAME','%SQL_COLUMN_SCALE','%SQL_COLUMN_SEARCHABLE', - '%SQL_COLUMN_TABLE_NAME','%SQL_COLUMN_TYPE','%SQL_COLUMN_TYPE_NAME','%SQL_COLUMN_UNSIGNED','%SQL_COLUMN_UPDATABLE','%SQL_COL_PRED_BASIC','%SQL_COL_PRED_CHAR','%SQL_COMMIT', - '%SQL_CONCAT_NULL_BEHAVIOR','%SQL_CONCURRENCY','%SQL_CONCUR_DEFAULT','%SQL_CONCUR_LOCK','%SQL_CONCUR_READ_ONLY','%SQL_CONCUR_ROWVER','%SQL_CONCUR_TIMESTAMP','%SQL_CONCUR_VALUES', - '%SQL_CONVERT_BIGINT','%SQL_CONVERT_BINARY','%SQL_CONVERT_BIT','%SQL_CONVERT_CHAR','%SQL_CONVERT_DATE','%SQL_CONVERT_DECIMAL','%SQL_CONVERT_DOUBLE','%SQL_CONVERT_FLOAT', - '%SQL_CONVERT_FUNCTIONS','%SQL_CONVERT_GUID','%SQL_CONVERT_INTEGER','%SQL_CONVERT_INTERVAL_DAY_TIME','%SQL_CONVERT_INTERVAL_YEAR_MONTH','%SQL_CONVERT_LONGVARBINARY','%SQL_CONVERT_LONGVARCHAR','%SQL_CONVERT_NUMERIC', - '%SQL_CONVERT_REAL','%SQL_CONVERT_SMALLINT','%SQL_CONVERT_TIME','%SQL_CONVERT_TIMESTAMP','%SQL_CONVERT_TINYINT','%SQL_CONVERT_VARBINARY','%SQL_CONVERT_VARCHAR','%SQL_CONVERT_WCHAR', - '%SQL_CONVERT_WLONGVARCHAR','%SQL_CONVERT_WVARCHAR','%SQL_CORRELATION_NAME','%SQL_CP_DEFAULT','%SQL_CP_MATCH_DEFAULT','%SQL_CP_OFF','%SQL_CP_ONE_PER_DRIVER','%SQL_CP_ONE_PER_HENV', - '%SQL_CP_RELAXED_MATCH','%SQL_CP_STRICT_MATCH','%SQL_CREATE_ASSERTION','%SQL_CREATE_CHARACTER_SET','%SQL_CREATE_COLLATION','%SQL_CREATE_DOMAIN','%SQL_CREATE_SCHEMA','%SQL_CREATE_TABLE', - '%SQL_CREATE_TRANSLATION','%SQL_CREATE_VIEW','%SQL_CR_CLOSE','%SQL_CR_DELETE','%SQL_CR_PRESERVE','%SQL_CS_AUTHORIZATION','%SQL_CS_CREATE_SCHEMA','%SQL_CS_DEFAULT_CHARACTER_SET', - '%SQL_CTR_CREATE_TRANSLATION','%SQL_CT_COLUMN_COLLATION','%SQL_CT_COLUMN_CONSTRAINT','%SQL_CT_COLUMN_DEFAULT','%SQL_CT_COMMIT_DELETE','%SQL_CT_COMMIT_PRESERVE','%SQL_CT_CONSTRAINT_DEFERRABLE','%SQL_CT_CONSTRAINT_INITIALLY_DEFERRED', - '%SQL_CT_CONSTRAINT_INITIALLY_IMMEDIATE','%SQL_CT_CONSTRAINT_NAME_DEFINITION','%SQL_CT_CONSTRAINT_NON_DEFERRABLE','%SQL_CT_CREATE_TABLE','%SQL_CT_GLOBAL_TEMPORARY','%SQL_CT_LOCAL_TEMPORARY','%SQL_CT_TABLE_CONSTRAINT','%SQL_CURRENT_QUALIFIER', - '%SQL_CURSOR_COMMIT_BEHAVIOR','%SQL_CURSOR_DYNAMIC','%SQL_CURSOR_FORWARD_ONLY','%SQL_CURSOR_KEYSET_DRIVEN','%SQL_CURSOR_ROLLBACK_BEHAVIOR','%SQL_CURSOR_SENSITIVITY','%SQL_CURSOR_STATIC','%SQL_CURSOR_TYPE', - '%SQL_CURSOR_TYPE_DEFAULT','%SQL_CUR_DEFAULT','%SQL_CUR_USE_DRIVER','%SQL_CUR_USE_IF_NEEDED','%SQL_CUR_USE_ODBC','%SQL_CU_DML_STATEMENTS','%SQL_CU_INDEX_DEFINITION','%SQL_CU_PRIVILEGE_DEFINITION', - '%SQL_CU_PROCEDURE_INVOCATION','%SQL_CU_TABLE_DEFINITION','%SQL_CVT_BIGINT','%SQL_CVT_BINARY','%SQL_CVT_BIT','%SQL_CVT_CHAR','%SQL_CVT_DATE','%SQL_CVT_DECIMAL', - '%SQL_CVT_DOUBLE','%SQL_CVT_FLOAT','%SQL_CVT_GUID','%SQL_CVT_INTEGER','%SQL_CVT_INTERVAL_DAY_TIME','%SQL_CVT_INTERVAL_YEAR_MONTH','%SQL_CVT_LONGVARBINARY','%SQL_CVT_LONGVARCHAR', - '%SQL_CVT_NUMERIC','%SQL_CVT_REAL','%SQL_CVT_SMALLINT','%SQL_CVT_TIME','%SQL_CVT_TIMESTAMP','%SQL_CVT_TINYINT','%SQL_CVT_VARBINARY','%SQL_CVT_VARCHAR', - '%SQL_CVT_WCHAR','%SQL_CVT_WLONGVARCHAR','%SQL_CVT_WVARCHAR','%SQL_CV_CASCADED','%SQL_CV_CHECK_OPTION','%SQL_CV_CREATE_VIEW','%SQL_CV_LOCAL','%SQL_C_BINARY', - '%SQL_C_BIT','%SQL_C_BOOKMARK','%SQL_C_CHAR','%SQL_C_DATE','%SQL_C_DEFAULT','%SQL_C_DOUBLE','%SQL_C_FLOAT','%SQL_C_GUID', - '%SQL_C_INTERVAL_DAY','%SQL_C_INTERVAL_DAY_TO_HOUR','%SQL_C_INTERVAL_DAY_TO_MINUTE','%SQL_C_INTERVAL_DAY_TO_SECOND','%SQL_C_INTERVAL_HOUR','%SQL_C_INTERVAL_HOUR_TO_MINUTE','%SQL_C_INTERVAL_HOUR_TO_SECOND','%SQL_C_INTERVAL_MINUTE', - '%SQL_C_INTERVAL_MINUTE_TO_SECOND','%SQL_C_INTERVAL_MONTH','%SQL_C_INTERVAL_SECOND','%SQL_C_INTERVAL_YEAR','%SQL_C_INTERVAL_YEAR_TO_MONTH','%SQL_C_LONG','%SQL_C_NUMERIC','%SQL_C_SBIGINT', - '%SQL_C_SHORT','%SQL_C_SLONG','%SQL_C_SSHORT','%SQL_C_STINYINT','%SQL_C_TIME','%SQL_C_TIMESTAMP','%SQL_C_TINYINT','%SQL_C_TYPE_DATE', - '%SQL_C_TYPE_TIME','%SQL_C_TYPE_TIMESTAMP','%SQL_C_UBIGINT','%SQL_C_ULONG','%SQL_C_USHORT','%SQL_C_UTINYINT','%SQL_C_VARBOOKMARK','%SQL_DATABASE_NAME', - '%SQL_DATA_AT_EXEC','%SQL_DATA_SOURCE_NAME','%SQL_DATA_SOURCE_READ_ONLY','%SQL_DATE','%SQL_DATETIME','%SQL_DATETIME_LITERALS','%SQL_DATE_LEN','%SQL_DAY', - '%SQL_DAY_TO_HOUR','%SQL_DAY_TO_MINUTE','%SQL_DAY_TO_SECOND','%SQL_DA_DROP_ASSERTION','%SQL_DBMS_NAME','%SQL_DBMS_VER','%SQL_DB_DEFAULT','%SQL_DB_DISCONNECT', - '%SQL_DB_RETURN_TO_POOL','%SQL_DCS_DROP_CHARACTER_SET','%SQL_DC_DROP_COLLATION','%SQL_DDL_INDEX','%SQL_DD_CASCADE','%SQL_DD_DROP_DOMAIN','%SQL_DD_RESTRICT','%SQL_DECIMAL', - '%SQL_DEFAULT','%SQL_DEFAULT_PARAM','%SQL_DEFAULT_TXN_ISOLATION','%SQL_DELETE','%SQL_DELETE_BY_BOOKMARK','%SQL_DESCRIBE_PARAMETER','%SQL_DESC_ALLOC_AUTO','%SQL_DESC_ALLOC_TYPE', - '%SQL_DESC_ALLOC_USER','%SQL_DESC_ARRAY_SIZE','%SQL_DESC_ARRAY_STATUS_PTR','%SQL_DESC_AUTO_UNIQUE_VALUE','%SQL_DESC_BASE_COLUMN_NAME','%SQL_DESC_BASE_TABLE_NAME','%SQL_DESC_BIND_OFFSET_PTR','%SQL_DESC_BIND_TYPE', - '%SQL_DESC_CASE_SENSITIVE','%SQL_DESC_CATALOG_NAME','%SQL_DESC_CONCISE_TYPE','%SQL_DESC_COUNT','%SQL_DESC_DATA_PTR','%SQL_DESC_DATETIME_INTERVAL_CODE','%SQL_DESC_DATETIME_INTERVAL_PRECISION','%SQL_DESC_DISPLAY_SIZE', - '%SQL_DESC_FIXED_PREC_SCALE','%SQL_DESC_INDICATOR_PTR','%SQL_DESC_LABEL','%SQL_DESC_LENGTH','%SQL_DESC_LITERAL_PREFIX','%SQL_DESC_LITERAL_SUFFIX','%SQL_DESC_LOCAL_TYPE_NAME','%SQL_DESC_MAXIMUM_SCALE', - '%SQL_DESC_MINIMUM_SCALE','%SQL_DESC_NAME','%SQL_DESC_NULLABLE','%SQL_DESC_NUM_PREC_RADIX','%SQL_DESC_OCTET_LENGTH','%SQL_DESC_OCTET_LENGTH_PTR','%SQL_DESC_PARAMETER_TYPE','%SQL_DESC_PRECISION', - '%SQL_DESC_ROWS_PROCESSED_PTR','%SQL_DESC_SCALE','%SQL_DESC_SCHEMA_NAME','%SQL_DESC_SEARCHABLE','%SQL_DESC_TABLE_NAME','%SQL_DESC_TYPE','%SQL_DESC_TYPE_NAME','%SQL_DESC_UNNAMED', - '%SQL_DESC_UNSIGNED','%SQL_DESC_UPDATABLE','%SQL_DIAG_ALTER_TABLE','%SQL_DIAG_CALL','%SQL_DIAG_CLASS_ORIGIN','%SQL_DIAG_COLUMN_NUMBER','%SQL_DIAG_CONNECTION_NAME','%SQL_DIAG_CREATE_INDEX', - '%SQL_DIAG_CREATE_TABLE','%SQL_DIAG_CREATE_VIEW','%SQL_DIAG_CURSOR_ROW_COUNT','%SQL_DIAG_DELETE_WHERE','%SQL_DIAG_DROP_INDEX','%SQL_DIAG_DROP_TABLE','%SQL_DIAG_DROP_VIEW','%SQL_DIAG_DYNAMIC_DELETE_CURSOR', - '%SQL_DIAG_DYNAMIC_FUNCTION','%SQL_DIAG_DYNAMIC_FUNCTION_CODE','%SQL_DIAG_DYNAMIC_UPDATE_CURSOR','%SQL_DIAG_GRANT','%SQL_DIAG_INSERT','%SQL_DIAG_MESSAGE_TEXT','%SQL_DIAG_NATIVE','%SQL_DIAG_NUMBER', - '%SQL_DIAG_RETURNCODE','%SQL_DIAG_REVOKE','%SQL_DIAG_ROW_COUNT','%SQL_DIAG_ROW_NUMBER','%SQL_DIAG_SELECT_CURSOR','%SQL_DIAG_SERVER_NAME','%SQL_DIAG_SQLSTATE','%SQL_DIAG_SUBCLASS_ORIGIN', - '%SQL_DIAG_UNKNOWN_STATEMENT','%SQL_DIAG_UPDATE_WHERE','%SQL_DI_CREATE_INDEX','%SQL_DI_DROP_INDEX','%SQL_DL_SQL92_DATE','%SQL_DL_SQL92_INTERVAL_DAY','%SQL_DL_SQL92_INTERVAL_DAY_TO_HOUR','%SQL_DL_SQL92_INTERVAL_DAY_TO_MINUTE', - '%SQL_DL_SQL92_INTERVAL_DAY_TO_SECOND','%SQL_DL_SQL92_INTERVAL_HOUR','%SQL_DL_SQL92_INTERVAL_HOUR_TO_MINUTE','%SQL_DL_SQL92_INTERVAL_HOUR_TO_SECOND','%SQL_DL_SQL92_INTERVAL_MINUTE','%SQL_DL_SQL92_INTERVAL_MINUTE_TO_SECOND','%SQL_DL_SQL92_INTERVAL_MONTH','%SQL_DL_SQL92_INTERVAL_SECOND', - '%SQL_DL_SQL92_INTERVAL_YEAR','%SQL_DL_SQL92_INTERVAL_YEAR_TO_MONTH','%SQL_DL_SQL92_TIME','%SQL_DL_SQL92_TIMESTAMP','%SQL_DM_VER','%SQL_DOUBLE','%SQL_DRIVER_COMPLETE','%SQL_DRIVER_COMPLETE_REQUIRED', - '%SQL_DRIVER_HDBC','%SQL_DRIVER_HDESC','%SQL_DRIVER_HENV','%SQL_DRIVER_HLIB','%SQL_DRIVER_HSTMT','%SQL_DRIVER_NAME','%SQL_DRIVER_NOPROMPT','%SQL_DRIVER_ODBC_VER', - '%SQL_DRIVER_PROMPT','%SQL_DRIVER_VER','%SQL_DROP','%SQL_DROP_ASSERTION','%SQL_DROP_CHARACTER_SET','%SQL_DROP_COLLATION','%SQL_DROP_DOMAIN','%SQL_DROP_SCHEMA', - '%SQL_DROP_TABLE','%SQL_DROP_TRANSLATION','%SQL_DROP_VIEW','%SQL_DS_CASCADE','%SQL_DS_DROP_SCHEMA','%SQL_DS_RESTRICT','%SQL_DTC_DONE','%SQL_DTC_ENLIST_EXPENSIVE', - '%SQL_DTC_TRANSITION_COST','%SQL_DTC_UNENLIST_EXPENSIVE','%SQL_DTR_DROP_TRANSLATION','%SQL_DT_CASCADE','%SQL_DT_DROP_TABLE','%SQL_DT_RESTRICT','%SQL_DV_CASCADE','%SQL_DV_DROP_VIEW', - '%SQL_DV_RESTRICT','%SQL_DYNAMIC_CURSOR_ATTRIBUTES1','%SQL_DYNAMIC_CURSOR_ATTRIBUTES2','%SQL_ENSURE','%SQL_ENTIRE_ROWSET','%SQL_ERROR','%SQL_EXPRESSIONS_IN_ORDERBY','%SQL_FALSE', - '%SQL_FD_FETCH_ABSOLUTE','%SQL_FD_FETCH_BOOKMARK','%SQL_FD_FETCH_FIRST','%SQL_FD_FETCH_LAST','%SQL_FD_FETCH_NEXT','%SQL_FD_FETCH_PREV','%SQL_FD_FETCH_PRIOR','%SQL_FD_FETCH_RELATIVE', - '%SQL_FETCH_ABSOLUTE','%SQL_FETCH_BOOKMARK','%SQL_FETCH_BY_BOOKMARK','%SQL_FETCH_DIRECTION','%SQL_FETCH_FIRST','%SQL_FETCH_FIRST_SYSTEM','%SQL_FETCH_FIRST_USER','%SQL_FETCH_LAST', - '%SQL_FETCH_NEXT','%SQL_FETCH_PREV','%SQL_FETCH_PRIOR','%SQL_FETCH_RELATIVE','%SQL_FILE_CATALOG','%SQL_FILE_NOT_SUPPORTED','%SQL_FILE_QUALIFIER','%SQL_FILE_TABLE', - '%SQL_FILE_USAGE','%SQL_FLOAT','%SQL_FN_CVT_CAST','%SQL_FN_CVT_CONVERT','%SQL_FN_NUM_ABS','%SQL_FN_NUM_ACOS','%SQL_FN_NUM_ASIN','%SQL_FN_NUM_ATAN', - '%SQL_FN_NUM_ATAN2','%SQL_FN_NUM_CEILING','%SQL_FN_NUM_COS','%SQL_FN_NUM_COT','%SQL_FN_NUM_DEGREES','%SQL_FN_NUM_EXP','%SQL_FN_NUM_FLOOR','%SQL_FN_NUM_LOG', - '%SQL_FN_NUM_LOG10','%SQL_FN_NUM_MOD','%SQL_FN_NUM_PI','%SQL_FN_NUM_POWER','%SQL_FN_NUM_RADIANS','%SQL_FN_NUM_RAND','%SQL_FN_NUM_ROUND','%SQL_FN_NUM_SIGN', - '%SQL_FN_NUM_SIN','%SQL_FN_NUM_SQRT','%SQL_FN_NUM_TAN','%SQL_FN_NUM_TRUNCATE','%SQL_FN_STR_ASCII','%SQL_FN_STR_BIT_LENGTH','%SQL_FN_STR_CHAR','%SQL_FN_STR_CHARACTER_LENGTH', - '%SQL_FN_STR_CHAR_LENGTH','%SQL_FN_STR_CONCAT','%SQL_FN_STR_DIFFERENCE','%SQL_FN_STR_INSERT','%SQL_FN_STR_LCASE','%SQL_FN_STR_LEFT','%SQL_FN_STR_LENGTH','%SQL_FN_STR_LOCATE', - '%SQL_FN_STR_LOCATE_2','%SQL_FN_STR_LTRIM','%SQL_FN_STR_OCTET_LENGTH','%SQL_FN_STR_POSITION','%SQL_FN_STR_REPEAT','%SQL_FN_STR_REPLACE','%SQL_FN_STR_RIGHT','%SQL_FN_STR_RTRIM', - '%SQL_FN_STR_SOUNDEX','%SQL_FN_STR_SPACE','%SQL_FN_STR_SUBSTRING','%SQL_FN_STR_UCASE','%SQL_FN_SYS_DBNAME','%SQL_FN_SYS_IFNULL','%SQL_FN_SYS_USERNAME','%SQL_FN_TD_CURDATE', - '%SQL_FN_TD_CURRENT_DATE','%SQL_FN_TD_CURRENT_TIME','%SQL_FN_TD_CURRENT_TIMESTAMP','%SQL_FN_TD_CURTIME','%SQL_FN_TD_DAYNAME','%SQL_FN_TD_DAYOFMONTH','%SQL_FN_TD_DAYOFWEEK','%SQL_FN_TD_DAYOFYEAR', - '%SQL_FN_TD_EXTRACT','%SQL_FN_TD_HOUR','%SQL_FN_TD_MINUTE','%SQL_FN_TD_MONTH','%SQL_FN_TD_MONTHNAME','%SQL_FN_TD_NOW','%SQL_FN_TD_QUARTER','%SQL_FN_TD_SECOND', - '%SQL_FN_TD_TIMESTAMPADD','%SQL_FN_TD_TIMESTAMPDIFF','%SQL_FN_TD_WEEK','%SQL_FN_TD_YEAR','%SQL_FN_TSI_DAY','%SQL_FN_TSI_FRAC_SECOND','%SQL_FN_TSI_HOUR','%SQL_FN_TSI_MINUTE', - '%SQL_FN_TSI_MONTH','%SQL_FN_TSI_QUARTER','%SQL_FN_TSI_SECOND','%SQL_FN_TSI_WEEK','%SQL_FN_TSI_YEAR','%SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1','%SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2','%SQL_GB_COLLATE', - '%SQL_GB_GROUP_BY_CONTAINS_SELECT','%SQL_GB_GROUP_BY_EQUALS_SELECT','%SQL_GB_NOT_SUPPORTED','%SQL_GB_NO_RELATION','%SQL_GD_ANY_COLUMN','%SQL_GD_ANY_ORDER','%SQL_GD_BLOCK','%SQL_GD_BOUND', - '%SQL_GETDATA_EXTENSIONS','%SQL_GET_BOOKMARK','%SQL_GROUP_BY','%SQL_GUID','%SQL_HANDLE_DBC','%SQL_HANDLE_DESC','%SQL_HANDLE_ENV','%SQL_HANDLE_SENV', - '%SQL_HANDLE_STMT','%SQL_HOUR','%SQL_HOUR_TO_MINUTE','%SQL_HOUR_TO_SECOND','%SQL_IC_LOWER','%SQL_IC_MIXED','%SQL_IC_SENSITIVE','%SQL_IC_UPPER', - '%SQL_IDENTIFIER_CASE','%SQL_IDENTIFIER_QUOTE_CHAR','%SQL_IGNORE','%SQL_IK_ALL','%SQL_IK_ASC','%SQL_IK_DESC','%SQL_IK_NONE','%SQL_INDEX_ALL', - '%SQL_INDEX_CLUSTERED','%SQL_INDEX_HASHED','%SQL_INDEX_KEYWORDS','%SQL_INDEX_OTHER','%SQL_INDEX_UNIQUE','%SQL_INFO_FIRST','%SQL_INFO_SCHEMA_VIEWS','%SQL_INITIALLY_DEFERRED', - '%SQL_INITIALLY_IMMEDIATE','%SQL_INSENSITIVE','%SQL_INSERT_STATEMENT','%SQL_INTEGER','%SQL_INTEGRITY','%SQL_INTERVAL','%SQL_INTERVAL_DAY','%SQL_INTERVAL_DAY_TO_HOUR', - '%SQL_INTERVAL_DAY_TO_MINUTE','%SQL_INTERVAL_DAY_TO_SECOND','%SQL_INTERVAL_HOUR','%SQL_INTERVAL_HOUR_TO_MINUTE','%SQL_INTERVAL_HOUR_TO_SECOND','%SQL_INTERVAL_MINUTE','%SQL_INTERVAL_MINUTE_TO_SECOND','%SQL_INTERVAL_MONTH', - '%SQL_INTERVAL_SECOND','%SQL_INTERVAL_YEAR','%SQL_INTERVAL_YEAR_TO_MONTH','%SQL_INVALID_HANDLE','%SQL_ISV_ASSERTIONS','%SQL_ISV_CHARACTER_SETS','%SQL_ISV_CHECK_CONSTRAINTS','%SQL_ISV_COLLATIONS', - '%SQL_ISV_COLUMNS','%SQL_ISV_COLUMN_DOMAIN_USAGE','%SQL_ISV_COLUMN_PRIVILEGES','%SQL_ISV_CONSTRAINT_COLUMN_USAGE','%SQL_ISV_CONSTRAINT_TABLE_USAGE','%SQL_ISV_DOMAINS','%SQL_ISV_DOMAIN_CONSTRAINTS','%SQL_ISV_KEY_COLUMN_USAGE', - '%SQL_ISV_REFERENTIAL_CONSTRAINTS','%SQL_ISV_SCHEMATA','%SQL_ISV_SQL_LANGUAGES','%SQL_ISV_TABLES','%SQL_ISV_TABLE_CONSTRAINTS','%SQL_ISV_TABLE_PRIVILEGES','%SQL_ISV_TRANSLATIONS','%SQL_ISV_USAGE_PRIVILEGES', - '%SQL_ISV_VIEWS','%SQL_ISV_VIEW_COLUMN_USAGE','%SQL_ISV_VIEW_TABLE_USAGE','%SQL_IS_DAY','%SQL_IS_DAY_TO_HOUR','%SQL_IS_DAY_TO_MINUTE','%SQL_IS_DAY_TO_SECOND','%SQL_IS_HOUR', - '%SQL_IS_HOUR_TO_MINUTE','%SQL_IS_HOUR_TO_SECOND','%SQL_IS_INSERT_LITERALS','%SQL_IS_INSERT_SEARCHED','%SQL_IS_INTEGER','%SQL_IS_MINUTE','%SQL_IS_MINUTE_TO_SECOND','%SQL_IS_MONTH', - '%SQL_IS_POINTER','%SQL_IS_SECOND','%SQL_IS_SELECT_INTO','%SQL_IS_SMALLINT','%SQL_IS_UINTEGER','%SQL_IS_USMALLINT','%SQL_IS_YEAR','%SQL_IS_YEAR_TO_MONTH', - '%SQL_KEYSET_CURSOR_ATTRIBUTES1','%SQL_KEYSET_CURSOR_ATTRIBUTES2','%SQL_KEYSET_SIZE','%SQL_KEYSET_SIZE_DEFAULT','%SQL_KEYWORDS','%SQL_LCK_EXCLUSIVE','%SQL_LCK_NO_CHANGE','%SQL_LCK_UNLOCK', - '%SQL_LEN_BINARY_ATTR_OFFSET','%SQL_LEN_DATA_AT_EXEC_OFFSET','%SQL_LIKE_ESCAPE_CLAUSE','%SQL_LIKE_ONLY','%SQL_LOCK_EXCLUSIVE','%SQL_LOCK_NO_CHANGE','%SQL_LOCK_TYPES','%SQL_LOCK_UNLOCK', - '%SQL_LOGIN_TIMEOUT','%SQL_LOGIN_TIMEOUT_DEFAULT','%SQL_LONGVARBINARY','%SQL_LONGVARCHAR','%SQL_MAXIMUM_CATALOG_NAME_LENGTH','%SQL_MAXIMUM_COLUMNS_IN_GROUP_BY','%SQL_MAXIMUM_COLUMNS_IN_INDEX','%SQL_MAXIMUM_COLUMNS_IN_ORDER_BY', - '%SQL_MAXIMUM_COLUMNS_IN_SELECT','%SQL_MAXIMUM_COLUMN_NAME_LENGTH','%SQL_MAXIMUM_CONCURRENT_ACTIVITIES','%SQL_MAXIMUM_CURSOR_NAME_LENGTH','%SQL_MAXIMUM_DRIVER_CONNECTIONS','%SQL_MAXIMUM_IDENTIFIER_LENGTH','%SQL_MAXIMUM_INDEX_SIZE','%SQL_MAXIMUM_ROW_SIZE', - '%SQL_MAXIMUM_SCHEMA_NAME_LENGTH','%SQL_MAXIMUM_STATEMENT_LENGTH','%SQL_MAXIMUM_TABLES_IN_SELECT','%SQL_MAXIMUM_USER_NAME_LENGTH','%SQL_MAX_ASYNC_CONCURRENT_STATEMENTS','%SQL_MAX_BINARY_LITERAL_LEN','%SQL_MAX_CATALOG_NAME_LEN','%SQL_MAX_CHAR_LITERAL_LEN', - '%SQL_MAX_COLUMNS_IN_GROUP_BY','%SQL_MAX_COLUMNS_IN_INDEX','%SQL_MAX_COLUMNS_IN_ORDER_BY','%SQL_MAX_COLUMNS_IN_SELECT','%SQL_MAX_COLUMNS_IN_TABLE','%SQL_MAX_COLUMN_NAME_LEN','%SQL_MAX_CONCURRENT_ACTIVITIES','%SQL_MAX_CURSOR_NAME_LEN', - '%SQL_MAX_DRIVER_CONNECTIONS','%SQL_MAX_DSN_LENGTH','%SQL_MAX_IDENTIFIER_LEN','%SQL_MAX_INDEX_SIZE','%SQL_MAX_LENGTH','%SQL_MAX_LENGTH_DEFAULT','%SQL_MAX_MESSAGE_LENGTH','%SQL_MAX_NUMERIC_LEN', - '%SQL_MAX_OPTION_STRING_LENGTH','%SQL_MAX_OWNER_NAME_LEN','%SQL_MAX_PROCEDURE_NAME_LEN','%SQL_MAX_QUALIFIER_NAME_LEN','%SQL_MAX_ROWS','%SQL_MAX_ROWS_DEFAULT','%SQL_MAX_ROW_SIZE','%SQL_MAX_ROW_SIZE_INCLUDES_LONG', - '%SQL_MAX_SCHEMA_NAME_LEN','%SQL_MAX_STATEMENT_LEN','%SQL_MAX_TABLES_IN_SELECT','%SQL_MAX_TABLE_NAME_LEN','%SQL_MAX_USER_NAME_LEN','%SQL_MINUTE','%SQL_MINUTE_TO_SECOND','%SQL_MODE_DEFAULT', - '%SQL_MODE_READ_ONLY','%SQL_MODE_READ_WRITE','%SQL_MONTH','%SQL_MULTIPLE_ACTIVE_TXN','%SQL_MULT_RESULT_SETS','%SQL_NAMED','%SQL_NC_END','%SQL_NC_HIGH', - '%SQL_NC_LOW','%SQL_NC_START','%SQL_NEED_DATA','%SQL_NEED_LONG_DATA_LEN','%SQL_NNC_NON_NULL','%SQL_NNC_NULL','%SQL_NONSCROLLABLE','%SQL_NON_NULLABLE_COLUMNS', - '%SQL_NOSCAN','%SQL_NOSCAN_DEFAULT','%SQL_NOSCAN_OFF','%SQL_NOSCAN_ON','%SQL_NOT_DEFERRABLE','%SQL_NO_ACTION','%SQL_NO_COLUMN_NUMBER','%SQL_NO_DATA', - '%SQL_NO_DATA_FOUND','%SQL_NO_NULLS','%SQL_NO_ROW_NUMBER','%SQL_NO_TOTAL','%SQL_NTS','%SQL_NTSL','%SQL_NULLABLE','%SQL_NULLABLE_UNKNOWN', - '%SQL_NULL_COLLATION','%SQL_NULL_DATA','%SQL_NULL_HANDLE','%SQL_NULL_HDBC','%SQL_NULL_HDESC','%SQL_NULL_HENV','%SQL_NULL_HSTMT','%SQL_NUMERIC', - '%SQL_NUMERIC_FUNCTIONS','%SQL_OAC_LEVEL1','%SQL_OAC_LEVEL2','%SQL_OAC_NONE','%SQL_ODBC_API_CONFORMANCE','%SQL_ODBC_CURSORS','%SQL_ODBC_INTERFACE_CONFORMANCE','%SQL_ODBC_SAG_CLI_CONFORMANCE', - '%SQL_ODBC_SQL_CONFORMANCE','%SQL_ODBC_SQL_OPT_IEF','%SQL_ODBC_VER','%SQL_OIC_CORE','%SQL_OIC_LEVEL1','%SQL_OIC_LEVEL2','%SQL_OJ_ALL_COMPARISON_OPS','%SQL_OJ_CAPABILITIES', - '%SQL_OJ_FULL','%SQL_OJ_INNER','%SQL_OJ_LEFT','%SQL_OJ_NESTED','%SQL_OJ_NOT_ORDERED','%SQL_OJ_RIGHT','%SQL_OPT_TRACE','%SQL_OPT_TRACEFILE', - '%SQL_OPT_TRACE_DEFAULT','%SQL_OPT_TRACE_OFF','%SQL_OPT_TRACE_ON','%SQL_ORDER_BY_COLUMNS_IN_SELECT','%SQL_OSCC_COMPLIANT','%SQL_OSCC_NOT_COMPLIANT','%SQL_OSC_CORE','%SQL_OSC_EXTENDED', - '%SQL_OSC_MINIMUM','%SQL_OUTER_JOINS','%SQL_OUTER_JOIN_CAPABILITIES','%SQL_OU_DML_STATEMENTS','%SQL_OU_INDEX_DEFINITION','%SQL_OU_PRIVILEGE_DEFINITION','%SQL_OU_PROCEDURE_INVOCATION','%SQL_OU_TABLE_DEFINITION', - '%SQL_OV_ODBC2','%SQL_OV_ODBC3','%SQL_OWNER_TERM','%SQL_OWNER_USAGE','%SQL_PACKET_SIZE','%SQL_PARAM_ARRAY_ROW_COUNTS','%SQL_PARAM_ARRAY_SELECTS','%SQL_PARAM_BIND_BY_COLUMN', - '%SQL_PARAM_BIND_TYPE_DEFAULT','%SQL_PARAM_DIAG_UNAVAILABLE','%SQL_PARAM_ERROR','%SQL_PARAM_IGNORE','%SQL_PARAM_INPUT','%SQL_PARAM_INPUT_OUTPUT','%SQL_PARAM_OUTPUT','%SQL_PARAM_PROCEED', - '%SQL_PARAM_SUCCESS','%SQL_PARAM_SUCCESS_WITH_INFO','%SQL_PARAM_TYPE_DEFAULT','%SQL_PARAM_TYPE_UNKNOWN','%SQL_PARAM_UNUSED','%SQL_PARC_BATCH','%SQL_PARC_NO_BATCH','%SQL_PAS_BATCH', - '%SQL_PAS_NO_BATCH','%SQL_PAS_NO_SELECT','%SQL_PC_NON_PSEUDO','%SQL_PC_NOT_PSEUDO','%SQL_PC_PSEUDO','%SQL_PC_UNKNOWN','%SQL_POSITION','%SQL_POSITIONED_STATEMENTS', - '%SQL_POS_ADD','%SQL_POS_DELETE','%SQL_POS_OPERATIONS','%SQL_POS_POSITION','%SQL_POS_REFRESH','%SQL_POS_UPDATE','%SQL_PRED_BASIC','%SQL_PRED_CHAR', - '%SQL_PRED_NONE','%SQL_PRED_SEARCHABLE','%SQL_PROCEDURES','%SQL_PROCEDURE_TERM','%SQL_PS_POSITIONED_DELETE','%SQL_PS_POSITIONED_UPDATE','%SQL_PS_SELECT_FOR_UPDATE','%SQL_PT_FUNCTION', - '%SQL_PT_PROCEDURE','%SQL_PT_UNKNOWN','%SQL_QL_END','%SQL_QL_START','%SQL_QUALIFIER_LOCATION','%SQL_QUALIFIER_NAME_SEPARATOR','%SQL_QUALIFIER_TERM','%SQL_QUALIFIER_USAGE', - '%SQL_QUERY_TIMEOUT','%SQL_QUERY_TIMEOUT_DEFAULT','%SQL_QUICK','%SQL_QUIET_MODE','%SQL_QUOTED_IDENTIFIER_CASE','%SQL_QU_DML_STATEMENTS','%SQL_QU_INDEX_DEFINITION','%SQL_QU_PRIVILEGE_DEFINITION', - '%SQL_QU_PROCEDURE_INVOCATION','%SQL_QU_TABLE_DEFINITION','%SQL_RD_DEFAULT','%SQL_RD_OFF','%SQL_RD_ON','%SQL_REAL','%SQL_REFRESH','%SQL_RESET_PARAMS', - '%SQL_RESTRICT','%SQL_RESULT_COL','%SQL_RETRIEVE_DATA','%SQL_RETURN_VALUE','%SQL_ROLLBACK','%SQL_ROWSET_SIZE','%SQL_ROWSET_SIZE_DEFAULT','%SQL_ROWVER', - '%SQL_ROW_ADDED','%SQL_ROW_DELETED','%SQL_ROW_ERROR','%SQL_ROW_IDENTIFIER','%SQL_ROW_IGNORE','%SQL_ROW_NOROW','%SQL_ROW_NUMBER','%SQL_ROW_NUMBER_UNKNOWN', - '%SQL_ROW_PROCEED','%SQL_ROW_SUCCESS','%SQL_ROW_SUCCESS_WITH_INFO','%SQL_ROW_UPDATED','%SQL_ROW_UPDATES','%SQL_SCCO_LOCK','%SQL_SCCO_OPT_ROWVER','%SQL_SCCO_OPT_TIMESTAMP', - '%SQL_SCCO_OPT_VALUES','%SQL_SCCO_READ_ONLY','%SQL_SCC_ISO92_CLI','%SQL_SCC_XOPEN_CLI_VERSION1','%SQL_SCHEMA_TERM','%SQL_SCHEMA_USAGE','%SQL_SCOPE_CURROW','%SQL_SCOPE_SESSION', - '%SQL_SCOPE_TRANSACTION','%SQL_SCROLLABLE','%SQL_SCROLL_CONCURRENCY','%SQL_SCROLL_DYNAMIC','%SQL_SCROLL_FORWARD_ONLY','%SQL_SCROLL_KEYSET_DRIVEN','%SQL_SCROLL_OPTIONS','%SQL_SCROLL_STATIC', - '%SQL_SC_FIPS127_2_TRANSITIONAL','%SQL_SC_NON_UNIQUE','%SQL_SC_SQL92_ENTRY','%SQL_SC_SQL92_FULL','%SQL_SC_SQL92_INTERMEDIATE','%SQL_SC_TRY_UNIQUE','%SQL_SC_UNIQUE','%SQL_SDF_CURRENT_DATE', - '%SQL_SDF_CURRENT_TIME','%SQL_SDF_CURRENT_TIMESTAMP','%SQL_SEARCHABLE','%SQL_SEARCH_PATTERN_ESCAPE','%SQL_SECOND','%SQL_SENSITIVE','%SQL_SERVER_NAME','%SQL_SETPARAM_VALUE_MAX', - '%SQL_SETPOS_MAX_LOCK_VALUE','%SQL_SETPOS_MAX_OPTION_VALUE','%SQL_SET_DEFAULT','%SQL_SET_NULL','%SQL_SFKD_CASCADE','%SQL_SFKD_NO_ACTION','%SQL_SFKD_SET_DEFAULT','%SQL_SFKD_SET_NULL', - '%SQL_SFKU_CASCADE','%SQL_SFKU_NO_ACTION','%SQL_SFKU_SET_DEFAULT','%SQL_SFKU_SET_NULL','%SQL_SG_DELETE_TABLE','%SQL_SG_INSERT_COLUMN','%SQL_SG_INSERT_TABLE','%SQL_SG_REFERENCES_COLUMN', - '%SQL_SG_REFERENCES_TABLE','%SQL_SG_SELECT_TABLE','%SQL_SG_UPDATE_COLUMN','%SQL_SG_UPDATE_TABLE','%SQL_SG_USAGE_ON_CHARACTER_SET','%SQL_SG_USAGE_ON_COLLATION','%SQL_SG_USAGE_ON_DOMAIN','%SQL_SG_USAGE_ON_TRANSLATION', - '%SQL_SG_WITH_GRANT_OPTION','%SQL_SIGNED_OFFSET','%SQL_SIMULATE_CURSOR','%SQL_SMALLINT','%SQL_SNVF_BIT_LENGTH','%SQL_SNVF_CHARACTER_LENGTH','%SQL_SNVF_CHAR_LENGTH','%SQL_SNVF_EXTRACT', - '%SQL_SNVF_OCTET_LENGTH','%SQL_SNVF_POSITION','%SQL_SO_DYNAMIC','%SQL_SO_FORWARD_ONLY','%SQL_SO_KEYSET_DRIVEN','%SQL_SO_MIXED','%SQL_SO_STATIC','%SQL_SPECIAL_CHARACTERS', - '%SQL_SPEC_MAJOR','%SQL_SPEC_MINOR','%SQL_SP_BETWEEN','%SQL_SP_COMPARISON','%SQL_SP_EXISTS','%SQL_SP_IN','%SQL_SP_ISNOTNULL','%SQL_SP_ISNULL', - '%SQL_SP_LIKE','%SQL_SP_MATCH_FULL','%SQL_SP_MATCH_PARTIAL','%SQL_SP_MATCH_UNIQUE_FULL','%SQL_SP_MATCH_UNIQUE_PARTIAL','%SQL_SP_OVERLAPS','%SQL_SP_QUANTIFIED_COMPARISON','%SQL_SP_UNIQUE', - '%SQL_SQL92_DATETIME_FUNCTIONS','%SQL_SQL92_FOREIGN_KEY_DELETE_RULE','%SQL_SQL92_FOREIGN_KEY_UPDATE_RULE','%SQL_SQL92_GRANT','%SQL_SQL92_NUMERIC_VALUE_FUNCTIONS','%SQL_SQL92_PREDICATES','%SQL_SQL92_RELATIONAL_JOIN_OPERATORS','%SQL_SQL92_REVOKE', - '%SQL_SQL92_ROW_VALUE_CONSTRUCTOR','%SQL_SQL92_STRING_FUNCTIONS','%SQL_SQL92_VALUE_EXPRESSIONS','%SQL_SQLSTATE_SIZE','%SQL_SQL_CONFORMANCE','%SQL_SQ_COMPARISON','%SQL_SQ_CORRELATED_SUBQUERIES','%SQL_SQ_EXISTS', - '%SQL_SQ_IN','%SQL_SQ_QUANTIFIED','%SQL_SRJO_CORRESPONDING_CLAUSE','%SQL_SRJO_CROSS_JOIN','%SQL_SRJO_EXCEPT_JOIN','%SQL_SRJO_FULL_OUTER_JOIN','%SQL_SRJO_INNER_JOIN','%SQL_SRJO_INTERSECT_JOIN', - '%SQL_SRJO_LEFT_OUTER_JOIN','%SQL_SRJO_NATURAL_JOIN','%SQL_SRJO_RIGHT_OUTER_JOIN','%SQL_SRJO_UNION_JOIN','%SQL_SRVC_DEFAULT','%SQL_SRVC_NULL','%SQL_SRVC_ROW_SUBQUERY','%SQL_SRVC_VALUE_EXPRESSION', - '%SQL_SR_CASCADE','%SQL_SR_DELETE_TABLE','%SQL_SR_GRANT_OPTION_FOR','%SQL_SR_INSERT_COLUMN','%SQL_SR_INSERT_TABLE','%SQL_SR_REFERENCES_COLUMN','%SQL_SR_REFERENCES_TABLE','%SQL_SR_RESTRICT', - '%SQL_SR_SELECT_TABLE','%SQL_SR_UPDATE_COLUMN','%SQL_SR_UPDATE_TABLE','%SQL_SR_USAGE_ON_CHARACTER_SET','%SQL_SR_USAGE_ON_COLLATION','%SQL_SR_USAGE_ON_DOMAIN','%SQL_SR_USAGE_ON_TRANSLATION','%SQL_SSF_CONVERT', - '%SQL_SSF_LOWER','%SQL_SSF_SUBSTRING','%SQL_SSF_TRANSLATE','%SQL_SSF_TRIM_BOTH','%SQL_SSF_TRIM_LEADING','%SQL_SSF_TRIM_TRAILING','%SQL_SSF_UPPER','%SQL_SS_ADDITIONS', - '%SQL_SS_DELETIONS','%SQL_SS_UPDATES','%SQL_STANDARD_CLI_CONFORMANCE','%SQL_STATIC_CURSOR_ATTRIBUTES1','%SQL_STATIC_CURSOR_ATTRIBUTES2','%SQL_STATIC_SENSITIVITY','%SQL_STILL_EXECUTING','%SQL_STRING_FUNCTIONS', - '%SQL_SUBQUERIES','%SQL_SUCCESS','%SQL_SUCCESS_WITH_INFO','%SQL_SU_DML_STATEMENTS','%SQL_SU_INDEX_DEFINITION','%SQL_SU_PRIVILEGE_DEFINITION','%SQL_SU_PROCEDURE_INVOCATION','%SQL_SU_TABLE_DEFINITION', - '%SQL_SVE_CASE','%SQL_SVE_CAST','%SQL_SVE_COALESCE','%SQL_SVE_NULLIF','%SQL_SYSTEM_FUNCTIONS','%SQL_TABLE_STAT','%SQL_TABLE_TERM','%SQL_TC_ALL', - '%SQL_TC_DDL_COMMIT','%SQL_TC_DDL_IGNORE','%SQL_TC_DML','%SQL_TC_NONE','%SQL_TIME','%SQL_TIMEDATE_ADD_INTERVALS','%SQL_TIMEDATE_DIFF_INTERVALS','%SQL_TIMEDATE_FUNCTIONS', - '%SQL_TIMESTAMP','%SQL_TIMESTAMP_LEN','%SQL_TIME_LEN','%SQL_TINYINT','%SQL_TRANSACTION_CAPABLE','%SQL_TRANSACTION_ISOLATION_OPTION','%SQL_TRANSACTION_READ_COMMITTED','%SQL_TRANSACTION_READ_UNCOMMITTED', - '%SQL_TRANSACTION_REPEATABLE_READ','%SQL_TRANSACTION_SERIALIZABLE','%SQL_TRANSLATE_DLL','%SQL_TRANSLATE_OPTION','%SQL_TRUE','%SQL_TXN_CAPABLE','%SQL_TXN_ISOLATION','%SQL_TXN_ISOLATION_OPTION', - '%SQL_TXN_READ_COMMITTED','%SQL_TXN_READ_UNCOMMITTED','%SQL_TXN_REPEATABLE_READ','%SQL_TXN_SERIALIZABLE','%SQL_TYPE_DATE','%SQL_TYPE_NULL','%SQL_TYPE_TIME','%SQL_TYPE_TIMESTAMP', - '%SQL_UB_DEFAULT','%SQL_UB_FIXED','%SQL_UB_OFF','%SQL_UB_ON','%SQL_UB_VARIABLE','%SQL_UNBIND','%SQL_UNICODE','%SQL_UNICODE_CHAR', - '%SQL_UNICODE_LONGVARCHAR','%SQL_UNICODE_VARCHAR','%SQL_UNION','%SQL_UNION_STATEMENT','%SQL_UNKNOWN_TYPE','%SQL_UNNAMED','%SQL_UNSEARCHABLE','%SQL_UNSIGNED_OFFSET', - '%SQL_UNSPECIFIED','%SQL_UPDATE','%SQL_UPDATE_BY_BOOKMARK','%SQL_USER_NAME','%SQL_USE_BOOKMARKS','%SQL_US_UNION','%SQL_US_UNION_ALL','%SQL_U_UNION', - '%SQL_U_UNION_ALL','%SQL_VARBINARY','%SQL_VARCHAR','%SQL_XOPEN_CLI_YEAR','%SQL_YEAR','%SQL_YEAR_TO_MONTH','%SRCCOPY','%SS_BITMAP', - '%SS_BLACKFRAME','%SS_BLACKRECT','%SS_CENTER','%SS_CENTERIMAGE','%SS_ENDELLIPSIS','%SS_ETCHEDFRAME','%SS_ETCHEDHORZ','%SS_ETCHEDVERT', - '%SS_GRAYFRAME','%SS_GRAYRECT','%SS_LEFT','%SS_NOPREFIX','%SS_NOTIFY','%SS_NOWORDWRAP','%SS_PATHELLIPSIS','%SS_RIGHT', - '%SS_RIGHTJUST','%SS_SIMPLE','%SS_SUNKEN','%SS_WHITEFRAME','%SS_WHITERECT','%SS_WORDELLIPSIS','%STAT_FILL_FROM_MEMORY','%STAT_FILL_NATURAL', - '%STAT_FILL_NATURAL_ERASTONE','%STAT_FILL_NATURAL_EVEN','%STAT_FILL_NATURAL_FIBONACCI','%STAT_FILL_NATURAL_ODD','%STAT_FILL_WITH_NUMBER','%STAT_MINMAX_INDEX','%STAT_MINMAX_VALUE','%STAT_TYPE_BYTE', - '%STAT_TYPE_CURRENCY','%STAT_TYPE_DOUBLE','%STAT_TYPE_DWORD','%STAT_TYPE_EXT','%STAT_TYPE_INTEGER','%STAT_TYPE_LONG','%STAT_TYPE_QUAD','%STAT_TYPE_SINGLE', - '%STAT_TYPE_WORD','%SWP_ASYNCWINDOWPOS','%SWP_DEFERERASE','%SWP_DRAWFRAME','%SWP_FRAMECHANGED','%SWP_HIDEWINDOW','%SWP_NOACTIVATE','%SWP_NOCOPYBITS', - '%SWP_NOMOVE','%SWP_NOOWNERZORDER','%SWP_NOREDRAW','%SWP_NOREPOSITION','%SWP_NOSENDCHANGING','%SWP_NOSIZE','%SWP_NOZORDER','%SWP_SHOWWINDOW', - '%SW_FORCEMINIMIZE','%SW_HIDE','%SW_MAXIMIZE','%SW_MINIMIZE','%SW_NORMAL','%SW_RESTORE','%SW_SHOW','%SW_SHOWDEFAULT', - '%SW_SHOWMAXIMIZED','%SW_SHOWMINIMIZED','%SW_SHOWMINNOACTIVE','%SW_SHOWNA','%SW_SHOWNOACTIVATE','%SW_SHOWNORMAL','%TBASS_3DALG_DEFAULT','%TBASS_3DALG_FULL', - '%TBASS_3DALG_LIGHT','%TBASS_3DALG_OFF','%TBASS_3DMODE_NORMAL','%TBASS_3DMODE_OFF','%TBASS_3DMODE_RELATIVE','%TBASS_ACTIVE_PAUSED','%TBASS_ACTIVE_PLAYING','%TBASS_ACTIVE_STALLED', - '%TBASS_ACTIVE_STOPPED','%TBASS_CONFIG_3DALGORITHM','%TBASS_CONFIG_BUFFER','%TBASS_CONFIG_CURVE_PAN','%TBASS_CONFIG_CURVE_VOL','%TBASS_CONFIG_FLOATDSP','%TBASS_CONFIG_GVOL_MUSIC','%TBASS_CONFIG_GVOL_SAMPLE', - '%TBASS_CONFIG_GVOL_STREAM','%TBASS_CONFIG_MAXVOL','%TBASS_CONFIG_MP3_CODEC','%TBASS_CONFIG_NET_AGENT','%TBASS_CONFIG_NET_BUFFER','%TBASS_CONFIG_NET_PASSIVE','%TBASS_CONFIG_NET_PREBUF','%TBASS_CONFIG_NET_PROXY', - '%TBASS_CONFIG_NET_TIMEOUT','%TBASS_CONFIG_PAUSE_NOPLAY','%TBASS_CONFIG_UPDATEPERIOD','%TBASS_CTYPE_MUSIC_IT','%TBASS_CTYPE_MUSIC_MO3','%TBASS_CTYPE_MUSIC_MOD','%TBASS_CTYPE_MUSIC_MTM','%TBASS_CTYPE_MUSIC_S3M', - '%TBASS_CTYPE_MUSIC_XM','%TBASS_CTYPE_RECORD','%TBASS_CTYPE_SAMPLE','%TBASS_CTYPE_STREAM','%TBASS_CTYPE_STREAM_AIFF','%TBASS_CTYPE_STREAM_MP1','%TBASS_CTYPE_STREAM_MP2','%TBASS_CTYPE_STREAM_MP3', - '%TBASS_CTYPE_STREAM_OGG','%TBASS_CTYPE_STREAM_WAV','%TBASS_CTYPE_STREAM_WAV_FLOAT','%TBASS_CTYPE_STREAM_WAV_PCM','%TBASS_DATA_AVAILABLE','%TBASS_DATA_FFT1024','%TBASS_DATA_FFT2048','%TBASS_DATA_FFT4096', - '%TBASS_DATA_FFT512','%TBASS_DATA_FFT_INDIVIDUAL','%TBASS_DATA_FFT_NOWINDOW','%TBASS_DATA_FLOAT','%TBASS_DEVICE_3D','%TBASS_DEVICE_8BITS','%TBASS_DEVICE_LATENCY','%TBASS_DEVICE_MONO', - '%TBASS_DEVICE_NOSPEAKER','%TBASS_DEVICE_SPEAKERS','%TBASS_EAX_ENVIRONMENT_ALLEY','%TBASS_EAX_ENVIRONMENT_ARENA','%TBASS_EAX_ENVIRONMENT_AUDITORIUM','%TBASS_EAX_ENVIRONMENT_BATHROOM','%TBASS_EAX_ENVIRONMENT_CARPETEDHALLWAY','%TBASS_EAX_ENVIRONMENT_CAVE', - '%TBASS_EAX_ENVIRONMENT_CITY','%TBASS_EAX_ENVIRONMENT_CONCERTHALL','%TBASS_EAX_ENVIRONMENT_COUNT','%TBASS_EAX_ENVIRONMENT_DIZZY','%TBASS_EAX_ENVIRONMENT_DRUGGED','%TBASS_EAX_ENVIRONMENT_FOREST','%TBASS_EAX_ENVIRONMENT_GENERIC','%TBASS_EAX_ENVIRONMENT_HALLWAY', - '%TBASS_EAX_ENVIRONMENT_HANGAR','%TBASS_EAX_ENVIRONMENT_LIVINGROOM','%TBASS_EAX_ENVIRONMENT_MOUNTAINS','%TBASS_EAX_ENVIRONMENT_PADDEDCELL','%TBASS_EAX_ENVIRONMENT_PARKINGLOT','%TBASS_EAX_ENVIRONMENT_PLAIN','%TBASS_EAX_ENVIRONMENT_PSYCHOTIC','%TBASS_EAX_ENVIRONMENT_QUARRY', - '%TBASS_EAX_ENVIRONMENT_ROOM','%TBASS_EAX_ENVIRONMENT_SEWERPIPE','%TBASS_EAX_ENVIRONMENT_STONECORRIDOR','%TBASS_EAX_ENVIRONMENT_STONEROOM','%TBASS_EAX_ENVIRONMENT_UNDERWATER','%TBASS_ERROR_ALREADY','%TBASS_ERROR_BUFLOST','%TBASS_ERROR_CODEC', - '%TBASS_ERROR_CREATE','%TBASS_ERROR_DECODE','%TBASS_ERROR_DEVICE','%TBASS_ERROR_DRIVER','%TBASS_ERROR_DX','%TBASS_ERROR_EMPTY','%TBASS_ERROR_FILEFORM','%TBASS_ERROR_FILEOPEN', - '%TBASS_ERROR_FORMAT','%TBASS_ERROR_FREQ','%TBASS_ERROR_HANDLE','%TBASS_ERROR_ILLPARAM','%TBASS_ERROR_ILLTYPE','%TBASS_ERROR_INIT','%TBASS_ERROR_MEM','%TBASS_ERROR_NO3D', - '%TBASS_ERROR_NOCHAN','%TBASS_ERROR_NOEAX','%TBASS_ERROR_NOFX','%TBASS_ERROR_NOHW','%TBASS_ERROR_NONET','%TBASS_ERROR_NOPAUSE','%TBASS_ERROR_NOPLAY','%TBASS_ERROR_NOTAVAIL', - '%TBASS_ERROR_NOTFILE','%TBASS_ERROR_PLAYING','%TBASS_ERROR_POSITION','%TBASS_ERROR_SPEAKER','%TBASS_ERROR_START','%TBASS_ERROR_TIMEOUT','%TBASS_ERROR_UNKNOWN','%TBASS_ERROR_VERSION', - '%TBASS_FALSE','%TBASS_FILEPOS_CURRENT','%TBASS_FILEPOS_DECODE','%TBASS_FILEPOS_DOWNLOAD','%TBASS_FILEPOS_END','%TBASS_FILEPOS_START','%TBASS_FILE_CLOSE','%TBASS_FILE_LEN', - '%TBASS_FILE_READ','%TBASS_FILE_SEEK','%TBASS_FX_CHORUS','%TBASS_FX_COMPRESSOR','%TBASS_FX_DISTORTION','%TBASS_FX_ECHO','%TBASS_FX_FLANGER','%TBASS_FX_GARGLE', - '%TBASS_FX_I3DL2REVERB','%TBASS_FX_PARAMEQ','%TBASS_FX_PHASE_180','%TBASS_FX_PHASE_90','%TBASS_FX_PHASE_NEG_180','%TBASS_FX_PHASE_NEG_90','%TBASS_FX_PHASE_ZERO','%TBASS_FX_REVERB', - '%TBASS_INPUT_LEVEL','%TBASS_INPUT_OFF','%TBASS_INPUT_ON','%TBASS_INPUT_TYPE_ANALOG','%TBASS_INPUT_TYPE_AUX','%TBASS_INPUT_TYPE_CD','%TBASS_INPUT_TYPE_DIGITAL','%TBASS_INPUT_TYPE_LINE', - '%TBASS_INPUT_TYPE_MASK','%TBASS_INPUT_TYPE_MIC','%TBASS_INPUT_TYPE_PHONE','%TBASS_INPUT_TYPE_SPEAKER','%TBASS_INPUT_TYPE_SYNTH','%TBASS_INPUT_TYPE_UNDEF','%TBASS_INPUT_TYPE_WAVE','%TBASS_MP3_SETPOS', - '%TBASS_MUSIC_3D','%TBASS_MUSIC_ATTRIB_AMPLIFY','%TBASS_MUSIC_ATTRIB_BPM','%TBASS_MUSIC_ATTRIB_PANSEP','%TBASS_MUSIC_ATTRIB_PSCALER','%TBASS_MUSIC_ATTRIB_SPEED','%TBASS_MUSIC_ATTRIB_VOL_CHAN','%TBASS_MUSIC_ATTRIB_VOL_GLOBAL', - '%TBASS_MUSIC_ATTRIB_VOL_INST','%TBASS_MUSIC_AUTOFREE','%TBASS_MUSIC_CALCLEN','%TBASS_MUSIC_DECODE','%TBASS_MUSIC_FLOAT','%TBASS_MUSIC_FT2MOD','%TBASS_MUSIC_FX','%TBASS_MUSIC_LOOP', - '%TBASS_MUSIC_MONO','%TBASS_MUSIC_NONINTER','%TBASS_MUSIC_NOSAMPLE','%TBASS_MUSIC_POSRESET','%TBASS_MUSIC_POSRESETEX','%TBASS_MUSIC_PRESCAN','%TBASS_MUSIC_PT1MOD','%TBASS_MUSIC_RAMP', - '%TBASS_MUSIC_RAMPS','%TBASS_MUSIC_STOPBACK','%TBASS_MUSIC_SURROUND','%TBASS_MUSIC_SURROUND2','%TBASS_OBJECT_DS','%TBASS_OBJECT_DS3DL','%TBASS_OK','%TBASS_RECORD_PAUSE', - '%TBASS_SAMPLE_3D','%TBASS_SAMPLE_8BITS','%TBASS_SAMPLE_FLOAT','%TBASS_SAMPLE_FX','%TBASS_SAMPLE_LOOP','%TBASS_SAMPLE_MONO','%TBASS_SAMPLE_MUTEMAX','%TBASS_SAMPLE_OVER_DIST', - '%TBASS_SAMPLE_OVER_POS','%TBASS_SAMPLE_OVER_VOL','%TBASS_SAMPLE_SOFTWARE','%TBASS_SAMPLE_VAM','%TBASS_SLIDE_FREQ','%TBASS_SLIDE_PAN','%TBASS_SLIDE_VOL','%TBASS_SPEAKER_CENLFE', - '%TBASS_SPEAKER_CENTER','%TBASS_SPEAKER_FRONT','%TBASS_SPEAKER_FRONTLEFT','%TBASS_SPEAKER_FRONTRIGHT','%TBASS_SPEAKER_LEFT','%TBASS_SPEAKER_LFE','%TBASS_SPEAKER_REAR','%TBASS_SPEAKER_REAR2', - '%TBASS_SPEAKER_REAR2LEFT','%TBASS_SPEAKER_REAR2RIGHT','%TBASS_SPEAKER_REARLEFT','%TBASS_SPEAKER_REARRIGHT','%TBASS_SPEAKER_RIGHT','%TBASS_STREAMPROC_END','%TBASS_STREAM_AUTOFREE','%TBASS_STREAM_BLOCK', - '%TBASS_STREAM_DECODE','%TBASS_STREAM_PRESCAN','%TBASS_STREAM_RESTRATE','%TBASS_STREAM_STATUS','%TBASS_SYNC_DOWNLOAD','%TBASS_SYNC_END','%TBASS_SYNC_FREE','%TBASS_SYNC_MESSAGE', - '%TBASS_SYNC_META','%TBASS_SYNC_MIXTIME','%TBASS_SYNC_MUSICFX','%TBASS_SYNC_MUSICINST','%TBASS_SYNC_MUSICPOS','%TBASS_SYNC_ONETIME','%TBASS_SYNC_POS','%TBASS_SYNC_SLIDE', - '%TBASS_SYNC_STALL','%TBASS_TAG_HTTP','%TBASS_TAG_ICY','%TBASS_TAG_ID3','%TBASS_TAG_ID3V2','%TBASS_TAG_META','%TBASS_TAG_MUSIC_INST','%TBASS_TAG_MUSIC_MESSAGE', - '%TBASS_TAG_MUSIC_NAME','%TBASS_TAG_MUSIC_SAMPLE','%TBASS_TAG_OGG','%TBASS_TAG_RIFF_INFO','%TBASS_TAG_VENDOR','%TBASS_TRUE','%TBASS_UNICODE','%TBASS_VAM_HARDWARE', - '%TBASS_VAM_SOFTWARE','%TBASS_VAM_TERM_DIST','%TBASS_VAM_TERM_PRIO','%TBASS_VAM_TERM_TIME','%TBASS_VERSION','%TBCD_CHANNEL','%TBCD_THUMB','%TBCD_TICS', - '%TBGL_ALIGN_CENTER','%TBGL_ALIGN_CENTER_CENTER','%TBGL_ALIGN_CENTER_DOWN','%TBGL_ALIGN_CENTER_UP','%TBGL_ALIGN_LEFT','%TBGL_ALIGN_LEFT_CENTER','%TBGL_ALIGN_LEFT_DOWN','%TBGL_ALIGN_LEFT_UP', - '%TBGL_ALIGN_RIGHT','%TBGL_ALIGN_RIGHT_CENTER','%TBGL_ALIGN_RIGHT_DOWN','%TBGL_ALIGN_RIGHT_UP','%TBGL_ALWAYS','%TBGL_EQUAL','%TBGL_ERROR_FILE','%TBGL_ERROR_MSGBOX', - '%TBGL_ERROR_NONE','%TBGL_GEQUAL','%TBGL_GREATER','%TBGL_LEQUAL','%TBGL_LESS','%TBGL_LIGHT_AMBIENT','%TBGL_LIGHT_CONSTANT_ATTENUATION','%TBGL_LIGHT_DIFFUSE', - '%TBGL_LIGHT_LINEAR_ATTENUATION','%TBGL_LIGHT_POSITION','%TBGL_LIGHT_QUADRATIC_ATTENUATION','%TBGL_LIGHT_SPECULAR','%TBGL_LIGHT_SPOT_CUTOFF','%TBGL_LIGHT_SPOT_DIRECTION','%TBGL_LIGHT_SPOT_EXPONENT','%TBGL_M15B', - '%TBGL_M15G','%TBGL_M15LAYER','%TBGL_M15PSTOP','%TBGL_M15R','%TBGL_M15TEXN','%TBGL_M15TEXX','%TBGL_M15TEXY','%TBGL_M15X', - '%TBGL_M15Y','%TBGL_M15Z','%TBGL_NEVER','%TBGL_NORMAL_NONE','%TBGL_NORMAL_PRECISE','%TBGL_NORMAL_SMOOTH','%TBGL_NOTEQUAL','%TBGL_OBJ_CUBE', - '%TBGL_OBJ_CUBE3','%TBGL_OBJ_CYLINDER','%TBGL_OBJ_SPHERE','%TBGL_PINFO_RGB','%TBGL_PINFO_XYZ','%TBGL_TEX_LINEAR','%TBGL_TEX_MIPMAP','%TBGL_TEX_NEAREST', - '%TBM_CLEARSEL','%TBM_CLEARTICS','%TBM_GETBUDDY','%TBM_GETCHANNELRECT','%TBM_GETLINESIZE','%TBM_GETNUMTICS','%TBM_GETPAGESIZE','%TBM_GETPOS', - '%TBM_GETPTICS','%TBM_GETRANGEMAX','%TBM_GETRANGEMIN','%TBM_GETSELEND','%TBM_GETSELSTART','%TBM_GETTHUMBLENGTH','%TBM_GETTHUMBRECT','%TBM_GETTIC', - '%TBM_GETTICPOS','%TBM_GETTOOLTIPS','%TBM_GETUNICODEFORMAT','%TBM_SETBUDDY','%TBM_SETLINESIZE','%TBM_SETPAGESIZE','%TBM_SETPOS','%TBM_SETRANGE', - '%TBM_SETRANGEMAX','%TBM_SETRANGEMIN','%TBM_SETSEL','%TBM_SETSELEND','%TBM_SETSELSTART','%TBM_SETTHUMBLENGTH','%TBM_SETTIC','%TBM_SETTICFREQ', - '%TBM_SETTIPSIDE','%TBM_SETTOOLTIPS','%TBM_SETUNICODEFORMAT','%TBS_AUTOTICKS','%TBS_BOTH','%TBS_BOTTOM','%TBS_DOWNISLEFT','%TBS_ENABLESELRANGE', - '%TBS_FIXEDLENGTH','%TBS_HORZ','%TBS_LEFT','%TBS_NOTHUMB','%TBS_NOTICKS','%TBS_REVERSED','%TBS_RIGHT','%TBS_TOOLTIPS', - '%TBS_TOP','%TBS_VERT','%TBTS_BOTTOM','%TBTS_LEFT','%TBTS_RIGHT','%TBTS_TOP','%TB_%VT_BSTR','%TB_%VT_CY', - '%TB_%VT_DATE','%TB_%VT_EMPTY','%TB_%VT_I2','%TB_%VT_I4','%TB_%VT_NULL','%TB_%VT_R4','%TB_%VT_R8','%TB_BOTTOM', - '%TB_CLASS_E_NOAGGREGATION','%TB_CO_E_CLASSSTRING','%TB_DISPATCH_METHOD','%TB_DISPATCH_PROPERTYGET','%TB_DISPATCH_PROPERTYPUT','%TB_DISPATCH_PROPERTYPUTREF','%TB_ENDTRACK','%TB_E_INVALIDARG', - '%TB_E_NOINTERFACE','%TB_E_OUTOFMEMORY','%TB_IMGCTX_ACTUALSIZE','%TB_IMGCTX_AUTOSIZE','%TB_IMGCTX_FITTOHEIGHT','%TB_IMGCTX_FITTOWIDTH','%TB_IMGCTX_STRETCH','%TB_LINEDOWN', - '%TB_LINEUP','%TB_MK_E_CONNECTMANUALLY','%TB_MK_E_EXCEEDEDDEADLINE','%TB_MK_E_INTERMEDIATEINTERFACENOTSUPPORTED','%TB_MK_E_NOOBJECT','%TB_MK_E_SYNTAX','%TB_PAGEDOWN','%TB_PAGEUP', - '%TB_REGDB_E_CLASSNOTREG','%TB_REGDB_E_WRITEREGDB','%TB_SIZEOF_TBVARIANT','%TB_S_FALSE','%TB_S_OK','%TB_THUMBPOSITION','%TB_THUMBTRACK','%TB_TOP', - '%TCM_FIRST','%TCM_GETCURSEL','%TCN_FOCUSCHANGE','%TCN_GETOBJECT','%TCN_SELCHANGE','%TCN_SELCHANGING','%TCS_BOTTOM','%TCS_BUTTONS', - '%TCS_EX_FLATSEPARATORS','%TCS_EX_REGISTERDROP','%TCS_FIXEDWIDTH','%TCS_FLATBUTTONS','%TCS_FOCUSNEVER','%TCS_FOCUSONBUTTONDOWN','%TCS_FORCEICONLEFT','%TCS_FORCELABELLEFT', - '%TCS_HOTTRACK','%TCS_MULTILINE','%TCS_MULTISELECT','%TCS_OWNERDRAWFIXED','%TCS_RAGGEDRIGHT','%TCS_RIGHT','%TCS_RIGHTJUSTIFY','%TCS_SCROLLOPPOSITE', - '%TCS_SINGLELINE','%TCS_TABS','%TCS_TOOLTIPS','%TCS_VERTICAL','%TM_PLAINTEXT','%TM_RICHTEXT','%TOKENIZER_DEFAULT_ALPHA','%TOKENIZER_DEFAULT_DELIM', - '%TOKENIZER_DEFAULT_DQUOTE','%TOKENIZER_DEFAULT_NEWLINE','%TOKENIZER_DEFAULT_NUMERIC','%TOKENIZER_DEFAULT_SPACE','%TOKENIZER_DELIMITER','%TOKENIZER_EOL','%TOKENIZER_ERROR','%TOKENIZER_FINISHED', - '%TOKENIZER_NUMBER','%TOKENIZER_QUOTE','%TOKENIZER_STRING','%TOKENIZER_UNDEFTOK','%TRUE','%TV_FIRST','%UDM_GETACCEL','%UDM_GETBASE', - '%UDM_GETBUDDY','%UDM_GETPOS','%UDM_GETPOS32','%UDM_GETRANGE','%UDM_GETRANGE32','%UDM_GETUNICODEFORMAT','%UDM_SETACCEL','%UDM_SETBASE', - '%UDM_SETBUDDY','%UDM_SETPOS','%UDM_SETPOS32','%UDM_SETRANGE','%UDM_SETRANGE32','%UDM_SETUNICODEFORMAT','%UDS_ALIGNLEFT','%UDS_ALIGNRIGHT', - '%UDS_ARROWKEYS','%UDS_AUTOBUDDY','%UDS_HORZ','%UDS_HOTTRACK','%UDS_NOTHOUSANDS','%UDS_SETBUDDYINT','%UDS_WRAP','%UD_MAXVAL', - '%UD_MINVAL','%VK_0','%VK_1','%VK_2','%VK_3','%VK_4','%VK_5','%VK_6', - '%VK_7','%VK_8','%VK_9','%VK_A','%VK_ACCEPT','%VK_ADD','%VK_APPS','%VK_B', - '%VK_BACK','%VK_C','%VK_CANCEL','%VK_CAPITAL','%VK_CLEAR','%VK_CONTROL','%VK_CONVERT','%VK_D', - '%VK_DECIMAL','%VK_DELETE','%VK_DIVIDE','%VK_DOWN','%VK_E','%VK_END','%VK_ESCAPE','%VK_EXECUTE', - '%VK_F','%VK_F1','%VK_F10','%VK_F11','%VK_F12','%VK_F13','%VK_F14','%VK_F15', - '%VK_F16','%VK_F17','%VK_F18','%VK_F19','%VK_F2','%VK_F20','%VK_F21','%VK_F22', - '%VK_F23','%VK_F24','%VK_F3','%VK_F4','%VK_F5','%VK_F6','%VK_F7','%VK_F8', - '%VK_F9','%VK_FINAL','%VK_G','%VK_H','%VK_HANGEUL','%VK_HANGUL','%VK_HANJA','%VK_HELP', - '%VK_HOME','%VK_I','%VK_INSERT','%VK_J','%VK_JUNJA','%VK_K','%VK_KANA','%VK_KANJI', - '%VK_L','%VK_LBUTTON','%VK_LEFT','%VK_LINEFEED','%VK_LWIN','%VK_M','%VK_MBUTTON','%VK_MENU', - '%VK_MODECHANGE','%VK_MULTIPLY','%VK_N','%VK_NEXT','%VK_NONCONVERT','%VK_NUMLOCK','%VK_NUMPAD0','%VK_NUMPAD1', - '%VK_NUMPAD2','%VK_NUMPAD3','%VK_NUMPAD4','%VK_NUMPAD5','%VK_NUMPAD6','%VK_NUMPAD7','%VK_NUMPAD8','%VK_NUMPAD9', - '%VK_O','%VK_P','%VK_PAUSE','%VK_PGDN','%VK_PGUP','%VK_PRINT','%VK_PRIOR','%VK_Q', - '%VK_R','%VK_RBUTTON','%VK_RETURN','%VK_RIGHT','%VK_RWIN','%VK_S','%VK_SCROLL','%VK_SELECT', - '%VK_SEPARATOR','%VK_SHIFT','%VK_SLEEP','%VK_SNAPSHOT','%VK_SPACE','%VK_SUBTRACT','%VK_T','%VK_TAB', - '%VK_U','%VK_UP','%VK_V','%VK_W','%VK_X','%VK_XBUTTON1','%VK_XBUTTON2','%VK_Y', - '%VK_Z','%VT_ARRAY','%VT_BLOB','%VT_BLOB_OBJECT','%VT_BOOL','%VT_BSTR','%VT_BYREF','%VT_CARRAY', - '%VT_CF','%VT_CLSID','%VT_CY','%VT_DATE','%VT_DISPATCH','%VT_EMPTY','%VT_ERROR','%VT_FILETIME', - '%VT_HRESULT','%VT_I1','%VT_I2','%VT_I4','%VT_I8','%VT_INT','%VT_LPSTR','%VT_LPWSTR', - '%VT_NULL','%VT_PTR','%VT_R4','%VT_R8','%VT_RECORD','%VT_RESERVED','%VT_SAFEARRAY','%VT_STORAGE', - '%VT_STORED_OBJECT','%VT_STREAM','%VT_STREAMED_OBJECT','%VT_UI1','%VT_UI2','%VT_UI4','%VT_UI8','%VT_UINT', - '%VT_UNKNOWN','%VT_USERDEFINED','%VT_VARIANT','%VT_VECTOR','%VT_VOID','%WAVE_FORMAT_1M08','%WAVE_FORMAT_1M16','%WAVE_FORMAT_1S08', - '%WAVE_FORMAT_1S16','%WAVE_FORMAT_2M08','%WAVE_FORMAT_2M16','%WAVE_FORMAT_2S08','%WAVE_FORMAT_2S16','%WAVE_FORMAT_4M08','%WAVE_FORMAT_4M16','%WAVE_FORMAT_4S08', - '%WAVE_FORMAT_4S16','%WBF_CUSTOM','%WBF_LEVEL1','%WBF_LEVEL2','%WBF_OVERFLOW','%WBF_WORDBREAK','%WBF_WORDWRAP','%WHITE', - '%WIN_FINDTITLECONTAIN','%WIN_FINDTITLEEND','%WIN_FINDTITLEEQUAL','%WIN_FINDTITLESTART','%WM_ACTIVATE','%WM_ACTIVATEAPP','%WM_CAPTURECHANGED','%WM_CHAR', - '%WM_CLOSE','%WM_COMMAND','%WM_DESTROY','%WM_DROPFILES','%WM_ERASEBKGND','%WM_GETTEXTLENGTH','%WM_HOTKEY','%WM_HSCROLL', - '%WM_IDLE','%WM_INITDIALOG','%WM_KEYDOWN','%WM_KEYUP','%WM_KILLFOCUS','%WM_LBUTTONDBLCLK','%WM_LBUTTONDOWN','%WM_LBUTTONUP', - '%WM_MBUTTONDBLCLK','%WM_MBUTTONDOWN','%WM_MBUTTONUP','%WM_MOUSEFIRST','%WM_MOUSEMOVE','%WM_MOUSEWHEEL','%WM_MOVE','%WM_MOVING', - '%WM_NCLBUTTONDOWN','%WM_NCRBUTTONDOWN','%WM_NEXTDLGCTL','%WM_NOTIFY','%WM_PAINT','%WM_QUIT','%WM_RBUTTONDBLCLK','%WM_RBUTTONDOWN', - '%WM_RBUTTONUP','%WM_SETFOCUS','%WM_SETFONT','%WM_SETTEXT','%WM_SIZE','%WM_SIZING','%WM_SYSCOMMAND','%WM_TIMER', - '%WM_USER','%WM_VSCROLL','%WS_BORDER','%WS_CAPTION','%WS_CHILD','%WS_CLIPCHILDREN','%WS_CLIPSIBLINGS','%WS_DISABLED', - '%WS_DLGFRAME','%WS_EX_ACCEPTFILES','%WS_EX_APPWINDOW','%WS_EX_CLIENTEDGE','%WS_EX_CONTEXTHELP','%WS_EX_CONTROLPARENT','%WS_EX_LAYERED','%WS_EX_LEFT', - '%WS_EX_LEFTSCROLLBAR','%WS_EX_LTRREADING','%WS_EX_MDICHILD','%WS_EX_NOPARENTNOTIFY','%WS_EX_OVERLAPPEDWINDOW','%WS_EX_PALETTEWINDOW','%WS_EX_RIGHT','%WS_EX_RIGHTSCROLLBAR', - '%WS_EX_RTLREADING','%WS_EX_STATICEDGE','%WS_EX_TOOLWINDOW','%WS_EX_TOPMOST','%WS_EX_TRANSPARENT','%WS_EX_WINDOWEDGE','%WS_GROUP','%WS_HSCROLL', - '%WS_ICONIC','%WS_MAXIMIZE','%WS_MAXIMIZEBOX','%WS_MINIMIZE','%WS_MINIMIZEBOX','%WS_OVERLAPPEDWINDOW','%WS_POPUP','%WS_POPUPWINDOW', - '%WS_SYSMENU','%WS_TABSTOP','%WS_THICKFRAME','%WS_VISIBLE','%WS_VSCROLL','%YELLOW','%ZERO','CRLF', - 'FALSE','M_E','M_PI','NULL','TAB','TRUE' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000FF; font-weight: bold;', - 2 => 'color: #993333; font-style: italic; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000;' - ), - 'BRACKETS' => array( - 0 => 'color: #333333;' - ), - 'STRINGS' => array( - 0 => 'color: #800080;' - ), - 'NUMBERS' => array( - 0 => 'color: #CC0000;' - ), - 'METHODS' => array( - 1 => 'color: #66cc66;' - ), - 'SYMBOLS' => array( - 0 => 'color: #333333;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - 1 => '_' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/tsql.php b/library/Vendors/geshi/geshi/tsql.php deleted file mode 100644 index b915b087..00000000 --- a/library/Vendors/geshi/geshi/tsql.php +++ /dev/null @@ -1,375 +0,0 @@ - 'T-SQL', - 'COMMENT_SINGLE' => array(1 => '--'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - // Datatypes - 'bigint', 'tinyint', 'money', - 'smallmoney', 'datetime', 'smalldatetime', - 'text', 'nvarchar', 'ntext', 'varbinary', 'image', - 'sql_variant', 'uniqueidentifier', - - // Keywords - 'ABSOLUTE', 'ACTION', 'ADD', 'ADMIN', 'AFTER', 'AGGREGATE', 'ALIAS', 'ALLOCATE', 'ALTER', 'ARE', 'ARRAY', 'AS', - 'ASC', 'ASSERTION', 'AT', 'AUTHORIZATION', 'BACKUP', 'BEFORE', 'BEGIN', 'BINARY', 'BIT', 'BLOB', 'BOOLEAN', 'BOTH', 'BREADTH', - 'BREAK', 'BROWSE', 'BULK', 'BY', 'CALL', 'CASCADE', 'CASCADED', 'CASE', 'CAST', 'CATALOG', 'CHAR', 'CHARACTER', 'CHECK', 'CHECKPOINT', - 'CLASS', 'CLOB', 'CLOSE', 'CLUSTERED', 'COALESCE', 'COLLATE', 'COLLATION', 'COLUMN', 'COMMIT', 'COMPLETION', 'COMPUTE', 'CONNECT', - 'CONNECTION', 'CONSTRAINT', 'CONSTRAINTS', 'CONSTRUCTOR', 'CONTAINS', 'CONTAINSTABLE', 'CONTINUE', 'CONVERT', 'CORRESPONDING', 'CREATE', - 'CUBE', 'CURRENT', 'CURRENT_DATE', 'CURRENT_PATH', 'CURRENT_ROLE', 'CURRENT_TIME', 'CURRENT_TIMESTAMP', 'CURRENT_USER', - 'CURSOR', 'CYCLE', 'DATA', 'DATABASE', 'DATE', 'DAY', 'DBCC', 'DEALLOCATE', 'DEC', 'DECIMAL', 'DECLARE', 'DEFAULT', 'DEFERRABLE', - 'DEFERRED', 'DELETE', 'DENY', 'DEPTH', 'DEREF', 'DESC', 'DESCRIBE', 'DESCRIPTOR', 'DESTROY', 'DESTRUCTOR', 'DETERMINISTIC', - 'DIAGNOSTICS', 'DICTIONARY', 'DISCONNECT', 'DISK', 'DISTINCT', 'DISTRIBUTED', 'DOMAIN', 'DOUBLE', 'DROP', 'DUMMY', 'DUMP', 'DYNAMIC', - 'EACH', 'ELSE', 'END', 'END-EXEC', 'EQUALS', 'ERRLVL', 'ESCAPE', 'EVERY', 'EXCEPT', 'EXCEPTION', 'EXEC', 'EXECUTE', 'EXIT', - 'EXTERNAL', 'FALSE', 'FETCH', 'FILE', 'FILLFACTOR', 'FIRST', 'FLOAT', 'FOR', 'FOREIGN', 'FOUND', 'FREE', 'FREETEXT', 'FREETEXTTABLE', - 'FROM', 'FULL', 'FUNCTION', 'GENERAL', 'GET', 'GLOBAL', 'GOTO', 'GRANT', 'GROUP', 'GROUPING', 'HAVING', 'HOLDLOCK', 'HOST', 'HOUR', - 'IDENTITY', 'IDENTITY_INSERT', 'IDENTITYCOL', 'IF', 'IGNORE', 'IMMEDIATE', 'INDEX', 'INDICATOR', 'INITIALIZE', 'INITIALLY', - 'INNER', 'INOUT', 'INPUT', 'INSERT', 'INT', 'INTEGER', 'INTERSECT', 'INTERVAL', 'INTO', 'IS', 'ISOLATION', 'ITERATE', 'KEY', - 'KILL', 'LANGUAGE', 'LARGE', 'LAST', 'LATERAL', 'LEADING', 'LEFT', 'LESS', 'LEVEL', 'LIMIT', 'LINENO', 'LOAD', 'LOCAL', - 'LOCALTIME', 'LOCALTIMESTAMP', 'LOCATOR', 'MAP', 'MATCH', 'MINUTE', 'MODIFIES', 'MODIFY', 'MODULE', 'MONTH', 'NAMES', 'NATIONAL', - 'NATURAL', 'NCHAR', 'NCLOB', 'NEW', 'NEXT', 'NO', 'NOCHECK', 'NONCLUSTERED', 'NONE', 'NULLIF', 'NUMERIC', 'OBJECT', 'OF', - 'OFF', 'OFFSETS', 'OLD', 'ON', 'ONLY', 'OPEN', 'OPENDATASOURCE', 'OPENQUERY', 'OPENROWSET', 'OPENXML', 'OPERATION', 'OPTION', - 'ORDER', 'ORDINALITY', 'OUT', 'OUTPUT', 'OVER', 'PAD', 'PARAMETER', 'PARAMETERS', 'PARTIAL', 'PATH', 'PERCENT', 'PLAN', - 'POSTFIX', 'PRECISION', 'PREFIX', 'PREORDER', 'PREPARE', 'PRESERVE', 'PRIMARY', 'PRINT', 'PRIOR', 'PRIVILEGES', 'PROC', 'PROCEDURE', - 'PUBLIC', 'RAISERROR', 'READ', 'READS', 'READTEXT', 'REAL', 'RECONFIGURE', 'RECURSIVE', 'REF', 'REFERENCES', 'REFERENCING', 'RELATIVE', - 'REPLICATION', 'RESTORE', 'RESTRICT', 'RESULT', 'RETURN', 'RETURNS', 'REVOKE', 'RIGHT', 'ROLE', 'ROLLBACK', 'ROLLUP', 'ROUTINE', 'ROW', - 'ROWGUIDCOL', 'ROWS', 'RULE', 'SAVE', 'SAVEPOINT', 'SCHEMA', 'SCOPE', 'SCROLL', 'SEARCH', 'SECOND', 'SECTION', 'SELECT', - 'SEQUENCE', 'SESSION', 'SESSION_USER', 'SET', 'SETS', 'SETUSER', 'SHUTDOWN', 'SIZE', 'SMALLINT', 'SPACE', 'SPECIFIC', - 'SPECIFICTYPE', 'SQL', 'SQLEXCEPTION', 'SQLSTATE', 'SQLWARNING', 'START', 'STATE', 'STATEMENT', 'STATIC', 'STATISTICS', 'STRUCTURE', - 'SYSTEM_USER', 'TABLE', 'TEMPORARY', 'TERMINATE', 'TEXTSIZE', 'THAN', 'THEN', 'TIME', 'TIMESTAMP', 'TIMEZONE_HOUR', 'TIMEZONE_MINUTE', - 'TO', 'TOP', 'TRAILING', 'TRAN', 'TRANSACTION', 'TRANSLATION', 'TREAT', 'TRIGGER', 'TRUE', 'TRUNCATE', 'TSEQUAL', 'UNDER', 'UNION', - 'UNIQUE', 'UNKNOWN', 'UNNEST', 'UPDATE', 'UPDATETEXT', 'USAGE', 'USE', 'USER', 'USING', 'VALUE', 'VALUES', 'VARCHAR', 'VARIABLE', - 'VARYING', 'VIEW', 'WAITFOR', 'WHEN', 'WHENEVER', 'WHERE', 'WHILE', 'WITH', 'WITHOUT', 'WORK', 'WRITE', 'WRITETEXT', 'YEAR', 'ZONE', - 'UNCOMMITTED', 'NOCOUNT', - ), - 2 => array( - /* - Built-in functions - Highlighted in pink. - */ - - //Configuration Functions - '@@DATEFIRST','@@OPTIONS','@@DBTS','@@REMSERVER','@@LANGID','@@SERVERNAME', - '@@LANGUAGE','@@SERVICENAME','@@LOCK_TIMEOUT','@@SPID','@@MAX_CONNECTIONS', - '@@TEXTSIZE','@@MAX_PRECISION','@@VERSION','@@NESTLEVEL', - - //Cursor Functions - '@@CURSOR_ROWS','@@FETCH_STATUS', - - //Date and Time Functions - 'DATEADD','DATEDIFF','DATENAME','DATEPART','GETDATE','GETUTCDATE', - - //Mathematical Functions - 'ABS','DEGREES','RAND','ACOS','EXP','ROUND','ASIN','FLOOR','SIGN', - 'ATAN','LOG','SIN','ATN2','LOG10','SQUARE','CEILING','PI','SQRT','COS', - 'POWER','TAN','COT','RADIANS', - - //Meta Data Functions - 'COL_LENGTH','COL_NAME','FULLTEXTCATALOGPROPERTY', - 'COLUMNPROPERTY','FULLTEXTSERVICEPROPERTY','DATABASEPROPERTY','INDEX_COL', - 'DATABASEPROPERTYEX','INDEXKEY_PROPERTY','DB_ID','INDEXPROPERTY','DB_NAME', - 'OBJECT_ID','FILE_ID','OBJECT_NAME','FILE_NAME','OBJECTPROPERTY','FILEGROUP_ID', - '@@PROCID','FILEGROUP_NAME','SQL_VARIANT_PROPERTY','FILEGROUPPROPERTY', - 'TYPEPROPERTY','FILEPROPERTY', - - //Security Functions - 'IS_SRVROLEMEMBER','SUSER_SID','SUSER_SNAME','USER_ID', - 'HAS_DBACCESS','IS_MEMBER', - - //String Functions - 'ASCII','SOUNDEX','PATINDEX','CHARINDEX','REPLACE','STR', - 'DIFFERENCE','QUOTENAME','STUFF','REPLICATE','SUBSTRING','LEN', - 'REVERSE','UNICODE','LOWER','UPPER','LTRIM','RTRIM', - - //System Functions - 'APP_NAME','COLLATIONPROPERTY','@@ERROR','FORMATMESSAGE', - 'GETANSINULL','HOST_ID','HOST_NAME','IDENT_CURRENT','IDENT_INCR', - 'IDENT_SEED','@@IDENTITY','ISDATE','ISNUMERIC','PARSENAME','PERMISSIONS', - '@@ROWCOUNT','ROWCOUNT_BIG','SCOPE_IDENTITY','SERVERPROPERTY','SESSIONPROPERTY', - 'STATS_DATE','@@TRANCOUNT','USER_NAME', - - //System Statistical Functions - '@@CONNECTIONS','@@PACK_RECEIVED','@@CPU_BUSY','@@PACK_SENT', - '@@TIMETICKS','@@IDLE','@@TOTAL_ERRORS','@@IO_BUSY', - '@@TOTAL_READ','@@PACKET_ERRORS','@@TOTAL_WRITE', - - //Text and Image Functions - 'TEXTPTR','TEXTVALID', - - //Aggregate functions - 'AVG', 'MAX', 'BINARY_CHECKSUM', 'MIN', 'CHECKSUM', 'SUM', 'CHECKSUM_AGG', - 'STDEV', 'COUNT', 'STDEVP', 'COUNT_BIG', 'VAR', 'VARP' - ), - 3 => array( - /* - System stored procedures - Higlighted dark brown - */ - - //Active Directory Procedures - 'sp_ActiveDirectory_Obj', 'sp_ActiveDirectory_SCP', - - //Catalog Procedures - 'sp_column_privileges', 'sp_special_columns', 'sp_columns', 'sp_sproc_columns', - 'sp_databases', 'sp_statistics', 'sp_fkeys', 'sp_stored_procedures', 'sp_pkeys', - 'sp_table_privileges', 'sp_server_info', 'sp_tables', - - //Cursor Procedures - 'sp_cursor_list', 'sp_describe_cursor_columns', 'sp_describe_cursor', 'sp_describe_cursor_tables', - - //Database Maintenance Plan Procedures - 'sp_add_maintenance_plan', 'sp_delete_maintenance_plan_db', 'sp_add_maintenance_plan_db', - 'sp_delete_maintenance_plan_job', 'sp_add_maintenance_plan_job', 'sp_help_maintenance_plan', - 'sp_delete_maintenance_plan', - - //Distributed Queries Procedures - 'sp_addlinkedserver', 'sp_indexes', 'sp_addlinkedsrvlogin', 'sp_linkedservers', 'sp_catalogs', - 'sp_primarykeys', 'sp_column_privileges_ex', 'sp_columns_ex', - 'sp_table_privileges_ex', 'sp_tables_ex', 'sp_foreignkeys', - - //Full-Text Search Procedures - 'sp_fulltext_catalog', 'sp_help_fulltext_catalogs_cursor', 'sp_fulltext_column', - 'sp_help_fulltext_columns', 'sp_fulltext_database', 'sp_help_fulltext_columns_cursor', - 'sp_fulltext_service', 'sp_help_fulltext_tables', 'sp_fulltext_table', - 'sp_help_fulltext_tables_cursor', 'sp_help_fulltext_catalogs', - - //Log Shipping Procedures - 'sp_add_log_shipping_database', 'sp_delete_log_shipping_database', 'sp_add_log_shipping_plan', - 'sp_delete_log_shipping_plan', 'sp_add_log_shipping_plan_database', - 'sp_delete_log_shipping_plan_database', 'sp_add_log_shipping_primary', - 'sp_delete_log_shipping_primary', 'sp_add_log_shipping_secondary', - 'sp_delete_log_shipping_secondary', 'sp_can_tlog_be_applied', 'sp_get_log_shipping_monitor_info', - 'sp_change_monitor_role', 'sp_remove_log_shipping_monitor', 'sp_change_primary_role', - 'sp_resolve_logins', 'sp_change_secondary_role', 'sp_update_log_shipping_monitor_info', - 'sp_create_log_shipping_monitor_account', 'sp_update_log_shipping_plan', - 'sp_define_log_shipping_monitor', 'sp_update_log_shipping_plan_database', - - //OLE Automation Extended Stored Procedures - 'sp_OACreate', 'sp_OAMethod', 'sp_OADestroy', 'sp_OASetProperty', 'sp_OAGetErrorInfo', - 'sp_OAStop', 'sp_OAGetProperty', - - //Replication Procedures - 'sp_add_agent_parameter', 'sp_enableagentoffload', 'sp_add_agent_profile', - 'sp_enumcustomresolvers', 'sp_addarticle', 'sp_enumdsn', 'sp_adddistpublisher', - 'sp_enumfullsubscribers', 'sp_adddistributiondb', 'sp_expired_subscription_cleanup', - 'sp_adddistributor', 'sp_generatefilters', 'sp_addmergealternatepublisher', - 'sp_getagentoffloadinfo', 'sp_addmergearticle', 'sp_getmergedeletetype', 'sp_addmergefilter', - 'sp_get_distributor', 'sp_addmergepublication', 'sp_getqueuedrows', 'sp_addmergepullsubscription', - 'sp_getsubscriptiondtspackagename', 'sp_addmergepullsubscription_agent', 'sp_grant_publication_access', - 'sp_addmergesubscription', 'sp_help_agent_default', 'sp_addpublication', 'sp_help_agent_parameter', - 'sp_addpublication_snapshot', 'sp_help_agent_profile', 'sp_addpublisher70', 'sp_helparticle', - 'sp_addpullsubscription', 'sp_helparticlecolumns', 'sp_addpullsubscription_agent', 'sp_helparticledts', - 'sp_addscriptexec', 'sp_helpdistpublisher', 'sp_addsubscriber', 'sp_helpdistributiondb', - 'sp_addsubscriber_schedule', 'sp_helpdistributor', 'sp_addsubscription', 'sp_helpmergealternatepublisher', - 'sp_addsynctriggers', 'sp_helpmergearticle', 'sp_addtabletocontents', 'sp_helpmergearticlecolumn', - 'sp_adjustpublisheridentityrange', 'sp_helpmergearticleconflicts', 'sp_article_validation', - 'sp_helpmergeconflictrows', 'sp_articlecolumn', 'sp_helpmergedeleteconflictrows', 'sp_articlefilter', - 'sp_helpmergefilter', 'sp_articlesynctranprocs', 'sp_helpmergepublication', 'sp_articleview', - 'sp_helpmergepullsubscription', 'sp_attachsubscription', 'sp_helpmergesubscription', 'sp_browsesnapshotfolder', - 'sp_helppublication', 'sp_browsemergesnapshotfolder', 'sp_help_publication_access', 'sp_browsereplcmds', - 'sp_helppullsubscription', 'sp_change_agent_parameter', 'sp_helpreplfailovermode', 'sp_change_agent_profile', - 'sp_helpreplicationdboption', 'sp_changearticle', 'sp_helpreplicationoption', 'sp_changedistpublisher', - 'sp_helpsubscriberinfo', 'sp_changedistributiondb', 'sp_helpsubscription', 'sp_changedistributor_password', - 'sp_ivindexhasnullcols', 'sp_changedistributor_property', 'sp_helpsubscription_properties', 'sp_changemergearticle', - 'sp_link_publication', 'sp_changemergefilter', 'sp_marksubscriptionvalidation', 'sp_changemergepublication', - 'sp_mergearticlecolumn', 'sp_changemergepullsubscription', 'sp_mergecleanupmetadata', 'sp_changemergesubscription', - 'sp_mergedummyupdate', 'sp_changepublication', 'sp_mergesubscription_cleanup', 'sp_changesubscriber', - 'sp_publication_validation', 'sp_changesubscriber_schedule', 'sp_refreshsubscriptions', 'sp_changesubscriptiondtsinfo', - 'sp_reinitmergepullsubscription', 'sp_changesubstatus', 'sp_reinitmergesubscription', 'sp_change_subscription_properties', - 'sp_reinitpullsubscription', 'sp_check_for_sync_trigger', 'sp_reinitsubscription', 'sp_copymergesnapshot', - 'sp_removedbreplication', 'sp_copysnapshot', 'sp_repladdcolumn', 'sp_copysubscription', 'sp_replcmds', - 'sp_deletemergeconflictrow', 'sp_replcounters', 'sp_disableagentoffload', 'sp_repldone', 'sp_drop_agent_parameter', - 'sp_repldropcolumn', 'sp_drop_agent_profile', 'sp_replflush', 'sp_droparticle', 'sp_replicationdboption', - 'sp_dropanonymouseagent', 'sp_replication_agent_checkup', 'sp_dropdistpublisher', 'sp_replqueuemonitor', - 'sp_dropdistributiondb', 'sp_replsetoriginator', 'sp_dropmergealternatepublisher', 'sp_replshowcmds', - 'sp_dropdistributor', 'sp_repltrans', 'sp_dropmergearticle', 'sp_restoredbreplication', 'sp_dropmergefilter', - 'sp_revoke_publication_access', 'sp_scriptsubconflicttable', 'sp_dropmergepublication', 'sp_script_synctran_commands', - 'sp_dropmergepullsubscription', 'sp_setreplfailovermode', 'sp_showrowreplicainfo', 'sp_dropmergesubscription', - 'sp_subscription_cleanup', 'sp_droppublication', 'sp_table_validation', 'sp_droppullsubscription', - 'sp_update_agent_profile', 'sp_dropsubscriber', 'sp_validatemergepublication', 'sp_dropsubscription', - 'sp_validatemergesubscription', 'sp_dsninfo', 'sp_vupgrade_replication', 'sp_dumpparamcmd', - - //Security Procedures - 'sp_addalias', 'sp_droprolemember', 'sp_addapprole', 'sp_dropserver', 'sp_addgroup', 'sp_dropsrvrolemember', - 'sp_dropuser', 'sp_addlogin', 'sp_grantdbaccess', 'sp_addremotelogin', - 'sp_grantlogin', 'sp_addrole', 'sp_helpdbfixedrole', 'sp_addrolemember', 'sp_helpgroup', - 'sp_addserver', 'sp_helplinkedsrvlogin', 'sp_addsrvrolemember', 'sp_helplogins', 'sp_adduser', - 'sp_helpntgroup', 'sp_approlepassword', 'sp_helpremotelogin', 'sp_changedbowner', 'sp_helprole', - 'sp_changegroup', 'sp_helprolemember', 'sp_changeobjectowner', 'sp_helprotect', 'sp_change_users_login', - 'sp_helpsrvrole', 'sp_dbfixedrolepermission', 'sp_helpsrvrolemember', 'sp_defaultdb', 'sp_helpuser', - 'sp_defaultlanguage', 'sp_MShasdbaccess', 'sp_denylogin', 'sp_password', 'sp_dropalias', 'sp_remoteoption', - 'sp_dropapprole', 'sp_revokedbaccess', 'sp_dropgroup', 'sp_revokelogin', 'sp_droplinkedsrvlogin', - 'sp_setapprole', 'sp_droplogin', 'sp_srvrolepermission', 'sp_dropremotelogin', 'sp_validatelogins', 'sp_droprole', - - //SQL Mail Procedures - 'sp_processmail', 'xp_sendmail', 'xp_deletemail', 'xp_startmail', 'xp_findnextmsg', 'xp_stopmail', 'xp_readmail', - - //SQL Profiler Procedures - 'sp_trace_create', 'sp_trace_setfilter', 'sp_trace_generateevent', 'sp_trace_setstatus', 'sp_trace_setevent', - - //SQL Server Agent Procedures - 'sp_add_alert', 'sp_help_jobhistory', 'sp_add_category', 'sp_help_jobschedule', 'sp_add_job', - 'sp_help_jobserver', 'sp_add_jobschedule', 'sp_help_jobstep', 'sp_add_jobserver', 'sp_help_notification', - 'sp_add_jobstep', 'sp_help_operator', 'sp_add_notification', 'sp_help_targetserver', - 'sp_add_operator', 'sp_help_targetservergroup', 'sp_add_targetservergroup', 'sp_helptask', - 'sp_add_targetsvrgrp_member', 'sp_manage_jobs_by_login', 'sp_addtask', 'sp_msx_defect', - 'sp_apply_job_to_targets', 'sp_msx_enlist', 'sp_delete_alert', 'sp_post_msx_operation', - 'sp_delete_category', 'sp_purgehistory', 'sp_delete_job', 'sp_purge_jobhistory', 'sp_delete_jobschedule', - 'sp_reassigntask', 'sp_delete_jobserver', 'sp_remove_job_from_targets', 'sp_delete_jobstep', - 'sp_resync_targetserver', 'sp_delete_notification', 'sp_start_job', 'sp_delete_operator', - 'sp_stop_job', 'sp_delete_targetserver', 'sp_update_alert', 'sp_delete_targetservergroup', - 'sp_update_category', 'sp_delete_targetsvrgrp_member', 'sp_update_job', 'sp_droptask', - 'sp_update_jobschedule', 'sp_help_alert', 'sp_update_jobstep', 'sp_help_category', - 'sp_update_notification', 'sp_help_downloadlist', 'sp_update_operator', 'sp_helphistory', - 'sp_update_targetservergroup', 'sp_help_job', 'sp_updatetask', 'xp_sqlagent_proxy_account', - - //System Procedures - 'sp_add_data_file_recover_suspect_db', 'sp_helpconstraint', 'sp_addextendedproc', - 'sp_helpdb', 'sp_addextendedproperty', 'sp_helpdevice', 'sp_add_log_file_recover_suspect_db', - 'sp_helpextendedproc', 'sp_addmessage', 'sp_helpfile', 'sp_addtype', 'sp_helpfilegroup', - 'sp_addumpdevice', 'sp_helpindex', 'sp_altermessage', 'sp_helplanguage', 'sp_autostats', - 'sp_helpserver', 'sp_attach_db', 'sp_helpsort', 'sp_attach_single_file_db', 'sp_helpstats', - 'sp_bindefault', 'sp_helptext', 'sp_bindrule', 'sp_helptrigger', 'sp_bindsession', - 'sp_indexoption', 'sp_certify_removable', 'sp_invalidate_textptr', 'sp_configure', - 'sp_lock', 'sp_create_removable', 'sp_monitor', 'sp_createstats', 'sp_procoption', - 'sp_cycle_errorlog', 'sp_recompile', 'sp_datatype_info', 'sp_refreshview', 'sp_dbcmptlevel', - 'sp_releaseapplock', 'sp_dboption', 'sp_rename', 'sp_dbremove', 'sp_renamedb', - 'sp_delete_backuphistory', 'sp_resetstatus', 'sp_depends', 'sp_serveroption', 'sp_detach_db', - 'sp_setnetname', 'sp_dropdevice', 'sp_settriggerorder', 'sp_dropextendedproc', 'sp_spaceused', - 'sp_dropextendedproperty', 'sp_tableoption', 'sp_dropmessage', 'sp_unbindefault', 'sp_droptype', - 'sp_unbindrule', 'sp_executesql', 'sp_updateextendedproperty', 'sp_getapplock', 'sp_updatestats', - 'sp_getbindtoken', 'sp_validname', 'sp_help', 'sp_who', - - //Web Assistant Procedures - 'sp_dropwebtask', 'sp_makewebtask', 'sp_enumcodepages', 'sp_runwebtask', - - //XML Procedures - 'sp_xml_preparedocument', 'sp_xml_removedocument', - - //General Extended Procedures - 'xp_cmdshellxp_logininfo', 'xp_enumgroups', 'xp_msver', 'xp_findnextmsgxp_revokelogin', - 'xp_grantlogin', 'xp_sprintf', 'xp_logevent', 'xp_sqlmaint', 'xp_loginconfig', 'xp_sscanf', - - //API System Stored Procedures - 'sp_cursor', 'sp_cursorclose', 'sp_cursorexecute', 'sp_cursorfetch', 'sp_cursoropen', - 'sp_cursoroption', 'sp_cursorprepare', 'sp_cursorunprepare', 'sp_execute', 'sp_prepare', 'sp_unprepare', - - //Misc - 'sp_createorphan', 'sp_droporphans', 'sp_reset_connection', 'sp_sdidebug' - ), - 4 => array( - //Function/sp's higlighted brown. - 'fn_helpcollations', 'fn_listextendedproperty ', 'fn_servershareddrives', - 'fn_trace_geteventinfo', 'fn_trace_getfilterinfo', 'fn_trace_getinfo', - 'fn_trace_gettable', 'fn_virtualfilestats','fn_listextendedproperty', - ), - ), - 'SYMBOLS' => array( - '!', '!=', '%', '&', '&&', '(', ')', '*', '+', '-', '/', '<', '<<', '<=', - '<=>', '<>', '=', '>', '>=', '>>', '^', 'ALL', 'AND', 'ANY', 'BETWEEN', 'CROSS', - 'EXISTS', 'IN', 'JOIN', 'LIKE', 'NOT', 'NULL', 'OR', 'OUTER', 'SOME', '|', '||', '~' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000FF;', - 2 => 'color: #FF00FF;', - 3 => 'color: #AF0000;', - 4 => 'color: #AF0000;' - ), - 'COMMENTS' => array( - 1 => 'color: #008080;', - 'MULTI' => 'color: #008080;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #808080;' - ), - 'STRINGS' => array( - 0 => 'color: #FF0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #000;' - ), - 'METHODS' => array( - 1 => 'color: #202020;', - 2 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #808080;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/typoscript.php b/library/Vendors/geshi/geshi/typoscript.php deleted file mode 100644 index 52527142..00000000 --- a/library/Vendors/geshi/geshi/typoscript.php +++ /dev/null @@ -1,300 +0,0 @@ - Complete rewrite - * 2005/07/29 (1.0.0) - * - First Release - * - * TODO (updated 2004/07/14) - * ------------------------- - * - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'TypoScript', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array(2 => '/(? GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - // Conditions: http://documentation.typo3.org/documentation/tsref/conditions/ - 1 => array( - 'browser', 'compatVersion', 'dayofmonth', 'dayofweek', 'device', - 'globalString', 'globalVars', 'hostname', 'hour', - 'ip', 'language', 'loginUser', 'loginuser', 'minute', - 'month', 'PIDinRootline', 'PIDupinRootline', - 'system', 'treelevel', 'useragent', 'userFunc', - 'usergroup', 'version' - ), - - // Functions: http://documentation.typo3.org/documentation/tsref/functions/ - 2 => array( - 'addParams', 'encapsLines', 'filelink', 'HTMLparser', - 'HTMLparser_tags', 'if', 'imageLinkWrap', - 'imgResource', 'makelinks', 'numRows', 'parseFunc', - 'select', 'split', 'stdWrap', 'tableStyle', 'tags', - 'textStyle', 'typolink' - ), - - // Toplevel objects: http://documentation.typo3.org/documentation/tsref/tlo-objects/ - 3 => array( - 'CARRAY', 'CONFIG', 'CONSTANTS', 'FE_DATA', 'FE_TABLE', 'FRAME', - 'FRAMESET', 'META', 'PAGE', 'plugin' - ), - - // Content Objects (cObject) : http://documentation.typo3.org/documentation/tsref/cobjects/ - 4 => array( - 'CASE', 'CLEARGIF', 'COA', 'COA_INT', 'COBJ_ARRAY', 'COLUMNS', - 'CONTENT', 'CTABLE', 'EDITPANEL', 'FILE', 'FORM', - 'HMENU', 'HRULER', 'HTML', 'IMAGE', 'IMGTEXT', - 'IMG_RESOURCE', 'LOAD_REGISTER', 'MULTIMEDIA', - 'OTABLE', 'PHP_SCRIPT', 'PHP_SCRIPT_EXT', - 'PHP_SCRIPT_INT', 'RECORDS', 'RESTORE_REGISTER', - 'SEARCHRESULT', 'TEMPLATE', 'TEXT', 'USER', - 'USER_INT' - ), - - // GIFBUILDER toplevel link: http://documentation.typo3.org/documentation/tsref/gifbuilder/ - 5 => array( - 'GIFBUILDER', - ), - - // GIFBUILDER: http://documentation.typo3.org/documentation/tsref/gifbuilder/ - // skipped fields: IMAGE, TEXT - // NOTE! the IMAGE and TEXT field already are linked in group 4, they - // cannot be linked twice . . . . unfortunately - 6 => array( - 'ADJUST', 'BOX', 'CROP', 'EFFECT', 'EMBOSS', - 'IMGMAP', 'OUTLINE', 'SCALE', 'SHADOW', - 'WORKAREA' - ), - - // MENU Objects: http://documentation.typo3.org/documentation/tsref/menu/ - 7 => array( - 'GMENU', 'GMENU_FOLDOUT', 'GMENU_LAYERS', 'IMGMENU', - 'IMGMENUITEM', 'JSMENU', 'JSMENUITEM', 'TMENU', - 'TMENUITEM', 'TMENU_LAYERS' - ), - - // MENU common properties: http://documentation.typo3.org/documentation/tsref/menu/common-properties/ - 8 => array( - 'alternativeSortingField', 'begin', 'debugItemConf', - 'imgNameNotRandom', 'imgNamePrefix', - 'itemArrayProcFunc', 'JSWindow', 'maxItems', - 'minItems', 'overrideId', 'sectionIndex', - 'showAccessRestrictedPages', 'submenuObjSuffixes' - ), - - // MENU item states: http://documentation.typo3.org/documentation/tsref/menu/item-states/ - 9 => array( - 'ACT', 'ACTIFSUB', 'ACTIFSUBRO', 'ACTRO', 'CUR', 'CURIFSUB', - 'CURIFSUBRO', 'CURRO', 'IFSUB', 'IFSUBRO', 'NO', - 'SPC', 'USERDEF1', 'USERDEF1RO', 'USERDEF2', - 'USERDEF2RO', 'USR', 'USRRO' - ), - ), - - // Does not include '-' because of stuff like htmlTag_langKey = en-GB and - // lib.nav-sub - 'SYMBOLS' => array( - 0 => array( - '|', - '+', '*', '/', '%', - '!', '&&', '^', - '<', '>', '=', - '?', ':', - '.' - ), - 1 => array( - '(', ')', '{', '}', '[', ']' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true, - 9 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #ed7d14;', - 2 => 'font-weight: bold;', - 3 => 'color: #990000; font-weight: bold;', - 4 => 'color: #990000; font-weight: bold;', - 5 => 'color: #990000; font-weight: bold;', - 6 => 'color: #990000; font-weight: bold;', - 7 => 'color: #990000; font-weight: bold;', - 8 => 'font-weight: bold;', - 9 => 'color: #990000; font-weight: bold;', - ), - 'COMMENTS' => array( - 1 => 'color: #aaa; font-style: italic;', - 2 => 'color: #aaa; font-style: italic;', - 'MULTI' => 'color: #aaa; font-style: italic;' - ), - 'STRINGS' => array( - 0 => 'color: #ac14aa;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc0000;' - ), - 'METHODS' => array( - 1 => 'color: #0000e0; font-weight: bold;', - 2 => 'color: #0000e0; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933; font-weight: bold;', - // Set this to the same value as brackets above - 1 => 'color: #009900; font-weight: bold;' - ), - 'REGEXPS' => array( - 0 => 'color: #009900;', - 1 => 'color: #009900; font-weight: bold;', - 2 => 'color: #3366CC;', - 3 => 'color: #000066; font-weight: bold;', - 4 => 'color: #ed7d14;', - 5 => 'color: #000066; font-weight: bold;', - 6 => 'color: #009900;', - 7 => 'color: #3366CC;' - ), - 'ESCAPE_CHAR' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://documentation.typo3.org/documentation/tsref/conditions/{FNAME}/', - 2 => 'http://documentation.typo3.org/documentation/tsref/functions/{FNAME}/', - 3 => 'http://documentation.typo3.org/documentation/tsref/tlo-objects/{FNAME}/', - 4 => 'http://documentation.typo3.org/documentation/tsref/cobjects/{FNAME}/', - 5 => 'http://documentation.typo3.org/documentation/tsref/gifbuilder/', - 6 => 'http://documentation.typo3.org/documentation/tsref/gifbuilder/{FNAME}/', - 7 => 'http://documentation.typo3.org/documentation/tsref/menu/{FNAME}/', - 8 => 'http://documentation.typo3.org/documentation/tsref/menu/common-properties/', - 9 => 'http://documentation.typo3.org/documentation/tsref/menu/item-states/' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - // Constant - 0 => array( - GESHI_SEARCH => '(\{)(\$[a-zA-Z_\.]+[a-zA-Z0-9_\.]*)(\})', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - - // Constant dollar sign - 1 => array( - GESHI_SEARCH => '(\$)([a-zA-Z_\.]+[a-zA-Z0-9_\.]*)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '\\2' - ), - - // xhtml tag - 2 => array( - GESHI_SEARCH => '(<[a-zA-Z\!\/].*?>)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 's', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - - // extension keys / tables: (static|user|ttx|tx|tt|fe)_something[_something] - 3 => array( - GESHI_SEARCH => '(plugin\.|[^\.]\b)((?:static|user|ttx|tx|tt|fe)(?:_[0-9A-Za-z_]+?)\b)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - - // conditions and controls - 4 => array( - GESHI_SEARCH => '(\[)(globalVar|global|end)\b', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - - // lowlevel setup and constant objects - 5 => array( - GESHI_SEARCH => '([^\.\$-\{]\b)(cObj|field|config|content|file|frameset|includeLibs|lib|page|plugin|register|resources|sitemap|sitetitle|styles|temp|tt_content|tt_news|types|xmlnews)\b', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - - // markers - 6 => array( - GESHI_SEARCH => '(###[^#]+###)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - - // hex color codes - 7 => array( - GESHI_SEARCH => '(#[a-fA-F0-9]{6}\b|#[a-fA-F0-9]{3}\b)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), -); - -?> diff --git a/library/Vendors/geshi/geshi/unicon.php b/library/Vendors/geshi/geshi/unicon.php deleted file mode 100644 index edad62df..00000000 --- a/library/Vendors/geshi/geshi/unicon.php +++ /dev/null @@ -1,210 +0,0 @@ - 'Unicon (Unified Extended Dialect of Icon)', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', '\''), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'break', 'case', 'class', 'continue', 'create', 'default', 'do', - 'else', 'end', 'every', 'fail', 'for', 'if', 'import', 'initial', 'initially', - 'invocable', 'link', 'method', 'next', 'not', 'of', 'package', 'procedure', 'record', - 'repeat', 'return', 'switch', 'suspend', 'then', 'to', 'until', 'while' - ), - 2 => array( - 'global', 'local', 'static' - ), - 3 => array( - 'allocated', 'ascii', 'clock', 'collections', - 'column', 'cset', 'current', 'date', 'dateline', 'digits', - 'dump', 'e', 'error', 'errornumber', 'errortext', - 'errorvalue', 'errout', 'eventcode', 'eventsource', 'eventvalue', - 'fail', 'features', 'file', 'host', 'input', 'lcase', - 'letters', 'level', 'line', 'main', 'now', 'null', - 'output', 'phi', 'pi', 'pos', 'progname', 'random', - 'regions', 'source', 'storage', 'subject', 'syserr', 'time', - 'trace', 'ucase', 'version', 'col', 'control', 'interval', - 'ldrag', 'lpress', 'lrelease', 'mdrag', 'meta', 'mpress', - 'mrelease', 'rdrag', 'resize', 'row', 'rpress', 'rrelease', - 'shift', 'window', 'x', 'y' - ), - 4 => array( - 'abs', 'acos', 'any', 'args', 'asin', 'atan', 'bal', 'center', 'char', - 'chmod', 'close', 'cofail', 'collect', 'copy', 'cos', 'cset', 'ctime', 'dbcolumns', - 'dbdriver', 'dbkeys', 'dblimits', 'dbproduction', 'dbtables', 'delay', 'delete', 'detab', - 'display', 'dtor', 'entab', 'errorclear', 'event', 'eventmask', 'EvGet', 'exit', 'exp', - 'fetch', 'fieldnames', 'find', 'flock', 'flush', 'function', 'get', 'getch', 'getche', - 'getenv', 'gettimeofday', 'globalnames', 'gtime', 'iand', 'icom', 'image', 'insert', - 'integer', 'ior', 'ishift', 'ixor', 'key', 'left', 'list', 'load', 'loadfunc', - 'localnames', 'log', 'many', 'map', 'match', 'member', 'mkdir', 'move', 'name', 'numeric', - 'open', 'opmask', 'ord', 'paramnames', 'parent', 'pipe', 'pop', 'pos', 'proc', 'pull', - 'push', 'put', 'read', 'reads', 'real', 'receive', 'remove', 'rename', 'repl', 'reverse', - 'right', 'rmdir', 'rtod', 'runerr', 'seek', 'select', 'send', 'seq', 'serial', 'set', - 'setenv', 'sort', 'sortf', 'sql', 'sqrt', 'stat', 'staticnames', 'stop', 'string', 'system', 'tab', - 'table', 'tan', 'trap', 'trim', 'truncate', 'type', 'upto', 'utime', 'variable', 'where', - 'write', 'writes' - ), - 5 => array( - 'Active', 'Alert', 'Bg', 'Clip', 'Clone', 'Color', 'ColorValue', - 'CopyArea', 'Couple', 'DrawArc', 'DrawCircle', 'DrawCurve', 'DrawCylinder', 'DrawDisk', - 'DrawImage', 'DrawLine', 'DrawPoint', 'DrawPolygon', 'DrawRectangle', 'DrawSegment', - 'DrawSphere', 'DrawString', 'DrawTorus', 'EraseArea', 'Event', 'Fg', 'FillArc', - 'FillCircle', 'FillPolygon', 'FillRectangle', 'Font', 'FreeColor', 'GotoRC', 'GotoXY', - 'IdentifyMatrix', 'Lower', 'MatrixMode', 'NewColor', 'PaletteChars', 'PaletteColor', - 'PaletteKey', 'Pattern', 'Pending', 'Pixel', 'PopMatrix', 'PushMatrix', 'PushRotate', - 'PushScale', 'PushTranslate', 'QueryPointer', 'Raise', 'ReadImage', 'Refresh', 'Rotate', - 'Scale', 'Texcoord', 'TextWidth', 'Texture', 'Translate', 'Uncouple', 'WAttrib', - 'WDefault', 'WFlush', 'WindowContents', 'WriteImage', 'WSync' - ), - 6 => array( - 'define', 'include', 'ifdef', 'ifndef', 'else', 'endif', 'error', - 'line', 'undef' - ), - 7 => array( - '_V9', '_AMIGA', '_ACORN', '_CMS', '_MACINTOSH', '_MSDOS_386', - '_MS_WINDOWS_NT', '_MSDOS', '_MVS', '_OS2', '_POR', 'T', '_UNIX', '_POSIX', '_DBM', - '_VMS', '_ASCII', '_EBCDIC', '_CO_EXPRESSIONS', '_CONSOLE_WINDOW', '_DYNAMIC_LOADING', - '_EVENT_MONITOR', '_EXTERNAL_FUNCTIONS', '_KEYBOARD_FUNCTIONS', '_LARGE_INTEGERS', - '_MULTITASKING', '_PIPES', '_RECORD_IO', '_SYSTEM_FUNCTION', '_MESSAGING', '_GRAPHICS', - '_X_WINDOW_SYSTEM', '_MS_WINDOWS', '_WIN32', '_PRESENTATION_MGR', '_ARM_FUNCTIONS', - '_DOS_FUNCTIONS' - ), - 8 => array( - 'line') - ), - 'SYMBOLS' => array( - 1 => array( - '(', ')', '{', '}', '[', ']', '+', '-', '*', '/', '\\', '%', '=', '<', '>', '!', '^', - '&', '|', '?', ':', ';', ',', '.', '~', '@' - ), - 2 => array( - '$(', '$)', '$<', '$>' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #b1b100;', - 3 => 'color: #b1b100;', - 4 => 'color: #b1b100;', - 5 => 'color: #b1b100;', - 6 => 'color: #b1b100;', - 7 => 'color: #b1b100;', - 8 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;', - ), - 'METHODS' => array( - 0 => 'color: #004000;' - ), - 'SYMBOLS' => array( - 1 => 'color: #339933;' - ), - 'REGEXPS' => array(), - 'SCRIPT' => array() - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array(1 => '.'), - 'REGEXPS' => array(), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array(), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 3 => array( - 'DISALLOWED_BEFORE' => '(?<=&)' - ), - 4 => array( - 'DISALLOWED_BEFORE' => "(? "(?![a-zA-Z0-9_\"\'])" - ), - 6 => array( - 'DISALLOWED_BEFORE' => '(?<=\$)' - ), - 8 => array( - 'DISALLOWED_BEFORE' => '(?<=#)' - ) - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/vala.php b/library/Vendors/geshi/geshi/vala.php deleted file mode 100644 index 334398a8..00000000 --- a/library/Vendors/geshi/geshi/vala.php +++ /dev/null @@ -1,151 +0,0 @@ - 'Vala', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Using and Namespace directives (basic support) - //Please note that the alias syntax for using is not supported - 3 => '/(?:(?<=using[\\n\\s])|(?<=namespace[\\n\\s]))[\\n\\s]*([a-zA-Z0-9_]+\\.)*[a-zA-Z0-9_]+[\n\s]*(?=[;=])/i'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'HARDQUOTE' => array('"""'), - 'HARDESCAPE' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'as', 'abstract', 'base', 'break', 'case', 'catch', 'const', - 'construct', 'continue', 'default', 'delete', 'dynamic', 'do', - 'else', 'ensures', 'extern', 'false', 'finally', 'for', 'foreach', - 'get', 'if', 'in', 'inline', 'internal', 'lock', 'namespace', - 'null', 'out', 'override', 'private', 'protected', 'public', 'ref', - 'requires', 'return', 'set', 'static', 'switch', 'this', 'throw', - 'throws', 'true', 'try', 'using', 'value', 'var', 'virtual', - 'volatile', 'void', 'yield', 'yields', 'while' - ), - 2 => array( - '#elif', '#endif', '#else', '#if' - ), - 3 => array( - 'is', 'new', 'owned', 'sizeof', 'typeof', 'unchecked', 'unowned', 'weak' - ), - 4 => array( - 'bool', 'char', 'class', 'delegate', 'double', 'enum', - 'errordomain', 'float', 'int', 'int8', 'int16', 'int32', 'int64', - 'interface', 'long', 'short', 'signal', 'size_t', 'ssize_t', - 'string', 'struct', 'uchar', 'uint', 'uint8', 'uint16', 'uint32', - 'ulong', 'unichar', 'ushort' - ) - ), - 'SYMBOLS' => array( - '+', '-', '*', '?', '=', '/', '%', '&', '>', '<', '^', '!', ':', ';', - '(', ')', '{', '}', '[', ']', '|' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0600FF;', - 2 => 'color: #FF8000; font-weight: bold;', - 3 => 'color: #008000;', - 4 => 'color: #FF0000;' - ), - 'COMMENTS' => array( - 1 => 'color: #008080; font-style: italic;', - 3 => 'color: #008080;', - 'MULTI' => 'color: #008080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #008080; font-weight: bold;', - 'HARD' => 'color: #008080; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #666666;', - 'HARD' => 'color: #666666;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF0000;' - ), - 'METHODS' => array( - 1 => 'color: #0000FF;', - 2 => 'color: #0000FF;' - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?|^])", - 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-])" - ) - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/vb.php b/library/Vendors/geshi/geshi/vb.php deleted file mode 100644 index f24d8650..00000000 --- a/library/Vendors/geshi/geshi/vb.php +++ /dev/null @@ -1,157 +0,0 @@ - 'Visual Basic', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - // Comments (either single or multiline with _ - 1 => '/\'.*(? GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'Binary', 'Boolean', 'Byte', 'Currency', 'Date', 'Decimal', 'Double', - 'String', 'Enum', 'Integer', 'Long', 'Object', 'Single', 'Variant' - ), - 2 => array( - 'CreateObject', 'GetObject', 'New', 'Option', 'Function', - 'Call', 'Private', 'Public', 'Sub', 'Explicit', 'Compare', 'Exit' - ), - 3 => array( - 'And', 'Case', 'Do', 'Each', 'Else', 'ElseIf', 'For', - 'Goto', 'If', 'Is', 'Loop', 'Next', 'Not', 'Or', 'Select', 'Step', - 'Then', 'To', 'Until', 'While', 'With', 'Xor', 'WithEvents', - 'DoEvents', 'Close', 'Like', 'In', 'End' - ), - 4 => array( - 'As', 'Dim', 'Get', 'Set', 'ReDim', 'Error', - 'Resume', 'Declare', 'Let', 'ByRef', 'ByVal', - 'Optional', 'Property', 'Control', 'UBound', 'Mod', - 'GoSub', 'Implements', 'Input', 'LBound', 'Static', 'Stop', - 'Type', 'TypeOf', 'On', 'Open', 'Output', 'ParamArray', - 'Preserve', 'Print', 'RaiseEvent', 'Random', 'Line' - ), - 5 => array( - 'Nothing', 'False', 'True', 'Null', 'Empty' - ), - 6 => array( - 'ErrorHandler','ExitProc', 'PublishReport' - ), - ), - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #F660AB; font-weight: bold;', - 2 => 'color: #E56717; font-weight: bold;', - 3 => 'color: #8D38C9; font-weight: bold;', - 4 => 'color: #151B8D; font-weight: bold;', - 5 => 'color: #00C2FF; font-weight: bold;', - 6 => 'color: #3EA99F; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000;' - ), - 'BRACKETS' => array( - ), - 'STRINGS' => array( - 0 => 'color: #800000;' - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #800000; font-weight: bold;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'BRACKETS' => GESHI_NEVER, - 'SYMBOLS' => GESHI_NEVER, - 'NUMBERS' => GESHI_NEVER - ) - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/vbnet.php b/library/Vendors/geshi/geshi/vbnet.php deleted file mode 100644 index f7477521..00000000 --- a/library/Vendors/geshi/geshi/vbnet.php +++ /dev/null @@ -1,201 +0,0 @@ - 'vb.net', - 'COMMENT_SINGLE' => array(1 => "'"), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - '3DDKSHADOW', '3DHIGHLIGHT', '3DLIGHT', 'ABORT', 'ABORTRETRYIGNORE', 'ACTIVEBORDER', - 'ACTIVETITLEBAR', 'ALIAS', 'APPLICATIONMODAL', 'APPLICATIONWORKSPACE', 'ARCHIVE', - 'BACK', 'BINARYCOMPARE', 'BLACK', 'BLUE', 'BUTTONFACE', 'BUTTONSHADOW', 'BUTTONTEXT', - 'CANCEL', 'CDROM', 'CR', 'CRITICAL', 'CRLF', 'CYAN', 'DEFAULT', 'DEFAULTBUTTON1', - 'DEFAULTBUTTON2', 'DEFAULTBUTTON3', 'DESKTOP', 'DIRECTORY', 'EXCLAMATION', 'FALSE', - 'FIXED', 'FORAPPENDING', 'FORMFEED', 'FORREADING', 'FORWRITING', 'FROMUNICODE', - 'GRAYTEXT', 'GREEN', 'HIDDEN', 'HIDE', 'HIGHLIGHT', 'HIGHLIGHTTEXT', 'HIRAGANA', - 'IGNORE', 'INACTIVEBORDER', 'INACTIVECAPTIONTEXT', 'INACTIVETITLEBAR', 'INFOBACKGROUND', - 'INFORMATION', 'INFOTEXT', 'KATAKANALF', 'LOWERCASE', 'MAGENTA', 'MAXIMIZEDFOCUS', - 'MENUBAR', 'MENUTEXT', 'METHOD', 'MINIMIZEDFOCUS', 'MINIMIZEDNOFOCUS', 'MSGBOXRIGHT', - 'MSGBOXRTLREADING', 'MSGBOXSETFOREGROUND', 'NARROW', 'NEWLINE', 'NO', 'NORMAL', - 'NORMALFOCUS', 'NORMALNOFOCUS', 'NULLSTRING', 'OBJECTERROR', 'OK', 'OKCANCEL', 'OKONLY', - 'PROPERCASE', 'QUESTION', 'RAMDISK', 'READONLY', 'RED', 'REMOTE', 'REMOVABLE', 'RETRY', - 'RETRYCANCEL', 'SCROLLBARS', 'SYSTEMFOLDER', 'SYSTEMMODAL', 'TEMPORARYFOLDER', - 'TEXTCOMPARE', 'TITLEBARTEXT', 'TRUE', 'UNICODE', 'UNKNOWN', 'UPPERCASE', 'VERTICALTAB', - 'VOLUME', 'WHITE', 'WIDE', 'WIN16', 'WIN32', 'WINDOWBACKGROUND', 'WINDOWFRAME', - 'WINDOWSFOLDER', 'WINDOWTEXT', 'YELLOW', 'YES', 'YESNO', 'YESNOCANCEL' - ), - 2 => array( - 'AndAlso', 'As', 'ADDHANDLER', 'ASSEMBLY', 'AUTO', 'Binary', 'ByRef', 'ByVal', 'BEGINEPILOGUE', - 'Else', 'ElseIf', 'Empty', 'Error', 'ENDPROLOGUE', 'EXTERNALSOURCE', 'ENVIRON', 'For', - 'Friend', 'Func', 'GET', 'HANDLES', 'Input', 'Is', 'IsNot', 'Len', 'Lock', 'Me', 'Mid', 'MUSTINHERIT', 'MustOverride', - 'MYBASE', 'MYCLASS', 'New', 'Next', 'Nothing', 'Null', 'NOTINHERITABLE', - 'NOTOVERRIDABLE', 'Of', 'OFF', 'On', 'Option', 'Optional', 'Overloads', 'OVERRIDABLE', 'Overrides', 'ParamArray', 'Predicate', - 'Print', 'Private', 'Property', 'Public', 'Resume', 'Return', 'Seek', 'Static', 'Step', - 'String', 'SHELL', 'SENDKEYS', 'SET', 'Shared', 'Then', 'Time', 'To', 'THROW', 'WithEvents' - ), - 3 => array( - 'COLLECTION', 'DEBUG', 'DICTIONARY', 'DRIVE', 'DRIVES', 'ERR', 'FILE', 'FILES', - 'FILESYSTEMOBJECT', 'FOLDER', 'FOLDERS', 'TEXTSTREAM' - ), - 4 => array( - 'BOOLEAN', 'BYTE', 'DATE', 'DECIMIAL', 'DOUBLE', 'INTEGER', 'LONG', 'OBJECT', - 'SINGLE STRING' - ), - 5 => array( - 'ADDRESSOF', 'AND', 'BITAND', 'BITNOT', 'BITOR', 'BITXOR', - 'GETTYPE', 'LIKE', 'MOD', 'NOT', 'ORXOR' - ), - 6 => array( - 'APPACTIVATE', 'BEEP', 'CALL', 'CHDIR', 'CHDRIVE', 'CLASS', 'CASE', 'CATCH', 'CONST', - 'DECLARE', 'DELEGATE', 'DELETESETTING', 'DIM', 'DO', 'DOEVENTS', 'END', 'ENUM', - 'EVENT', 'EXIT', 'EACH', 'FUNCTION', 'FINALLY', 'IF', 'IMPORTS', 'INHERITS', - 'INTERFACE', 'IMPLEMENTS', 'KILL', 'LOOP', 'NAMESPACE', 'OPEN', 'PUT', - 'RAISEEVENT', 'RANDOMIZE', 'REDIM', 'REM', 'RESET', 'SAVESETTING', 'SELECT', - 'SETATTR', 'STOP', 'SUB', 'SYNCLOCK', 'STRUCTURE', 'SHADOWS', 'SWITCH', - 'TRY', 'WIDTH', 'WITH', 'WRITE', 'WHILE' - ), - 7 => array( - 'ABS', 'ARRAY', 'ASC', 'ASCB', 'ASCW', 'CALLBYNAME', 'CBOOL', 'CBYTE', 'CCHAR', - 'CCHR', 'CDATE', 'CDBL', 'CDEC', 'CHOOSE', 'CHR', 'CHR$', 'CHRB', 'CHRB$', 'CHRW', - 'CINT', 'CLNG', 'CLNG8', 'CLOSE', 'COBJ', 'COMMAND', 'COMMAND$', 'CONVERSION', - 'COS', 'CREATEOBJECT', 'CSHORT', 'CSTR', 'CURDIR', 'CTYPE', 'CVDATE', 'DATEADD', - 'DATEDIFF', 'DATEPART', 'DATESERIAL', 'DATEVALUE', 'DAY', 'DDB', 'DIR', 'DIR$', - 'EOF', 'ERROR$', 'EXP', 'FILEATTR', 'FILECOPY', 'FILEDATATIME', 'FILELEN', 'FILTER', - 'FIX', 'FORMAT', 'FORMAT$', 'FORMATCURRENCY', 'FORMATDATETIME', 'FORMATNUMBER', - 'FORMATPERCENT', 'FREEFILE', 'FV', 'GETALLSETTINGS', 'GETATTRGETOBJECT', 'GETSETTING', - 'HEX', 'HEX$', 'HOUR', 'IIF', 'IMESTATUS', 'INPUT$', 'INPUTB', 'INPUTB$', 'INPUTBOX', - 'INSTR', 'INSTRB', 'INSTRREV', 'INT', 'IPMT', 'IRR', 'ISARRAY', 'ISDATE', 'ISEMPTY', - 'ISERROR', 'ISNULL', 'ISNUMERIC', 'ISOBJECT', 'JOIN', 'LBOUND', 'LCASE', 'LCASE$', - 'LEFT', 'LEFT$', 'LEFTB', 'LEFTB$', 'LENB', 'LINEINPUT', 'LOC', 'LOF', 'LOG', 'LTRIM', - 'LTRIM$', 'MID$', 'MIDB', 'MIDB$', 'MINUTE', 'MIRR', 'MKDIR', 'MONTH', 'MONTHNAME', - 'MSGBOX', 'NOW', 'NPER', 'NPV', 'OCT', 'OCT$', 'PARTITION', 'PMT', 'PPMT', 'PV', - 'RATE', 'REPLACE', 'RIGHT', 'RIGHT$', 'RIGHTB', 'RIGHTB$', 'RMDIR', 'RND', 'RTRIM', - 'RTRIM$', 'SECOND', 'SIN', 'SLN', 'SPACE', 'SPACE$', 'SPC', 'SPLIT', 'SQRT', 'STR', 'STR$', - 'STRCOMP', 'STRCONV', 'STRING$', 'STRREVERSE', 'SYD', 'TAB', 'TAN', 'TIMEOFDAY', - 'TIMER', 'TIMESERIAL', 'TIMEVALUE', 'TODAY', 'TRIM', 'TRIM$', 'TYPENAME', 'UBOUND', - 'UCASE', 'UCASE$', 'VAL', 'WEEKDAY', 'WEEKDAYNAME', 'YEAR' - ), - 8 => array( - 'ANY', 'ATN', 'CALENDAR', 'CIRCLE', 'CURRENCY', 'DEFBOOL', 'DEFBYTE', 'DEFCUR', - 'DEFDATE', 'DEFDBL', 'DEFDEC', 'DEFINT', 'DEFLNG', 'DEFOBJ', 'DEFSNG', 'DEFSTR', - 'DEFVAR', 'EQV', 'GOSUB', 'IMP', 'INITIALIZE', 'ISMISSING', 'LET', 'LINE', 'LSET', - 'RSET', 'SGN', 'SQR', 'TERMINATE', 'VARIANT', 'VARTYPE', 'WEND' - ), - ), - 'SYMBOLS' => array( - '&', '&=', '*', '*=', '+', '+=', '-', '-=', '//', '/', '/=', '=', '\\', '\\=', - '^', '^=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false, - 8 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0600FF;', //Constants - 2 => 'color: #FF8000;', //Keywords - 3 => 'color: #008000;', //Data Types - 4 => 'color: #FF0000;', //Objects - 5 => 'color: #804040;', //Operators - 6 => 'color: #0600FF;', //Statements - 7 => 'color: #0600FF;', //Functions - 8 => 'color: #0600FF;' //Deprecated - ), - 'COMMENTS' => array( - 1 => 'color: #008080; font-style: italic;', - 'MULTI' => 'color: #008080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #008080; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #808080;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF0000;' - ), - 'METHODS' => array( - 1 => 'color: #0000FF;' - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.google.com/search?q={FNAMEU}+site:msdn.microsoft.com', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 =>'.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/verilog.php b/library/Vendors/geshi/geshi/verilog.php deleted file mode 100644 index 14c1d717..00000000 --- a/library/Vendors/geshi/geshi/verilog.php +++ /dev/null @@ -1,173 +0,0 @@ - - * Copyright: (C) 2008 Guenter Dannoritzer - * Release Version: 1.0.8.8 - * Date Started: 2008/05/28 - * - * Verilog language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/29 - * - added regular expression to find numbers of the form 4'b001xz - * - added regular expression to find values for `timescale command - * - extended macro keywords - * - * TODO (updated 2008/05/29) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Verilog', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array(1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - // keywords - 1 => array('always', 'and', 'assign', 'begin', 'buf', 'bufif0', 'bufif1', 'case', - 'casex', 'casez', 'cmos', 'deassign', 'default', 'defparam', - 'disable', 'edge', 'else', 'end', 'endcase', 'endfunction', - 'endmodule', 'endprimitive', 'endspecify', 'endtable', 'endtask', - 'event', 'for', 'force', 'forever', 'function', 'highz0', - 'highz1', 'if', 'ifnone', 'initial', 'inout', 'input', 'integer', - 'join', 'large', 'macromodule', 'medium', 'module', 'nand', - 'negedge', 'nmos', 'nor', 'not', 'notif0', 'notif1', 'or', - 'output', 'parameter', 'pmos', 'posedge', 'primitive', 'pull0', - 'pull1', 'pulldown', 'pullup', 'rcmos', 'real', 'realtime', 'reg', - 'release', 'repeat', 'rnmos', 'rpmos', 'rtran', 'rtranif0', - 'rtranif1', 'scalared', 'small', 'specify', 'specparam', - 'strong0', 'strong1', 'supply0', 'supply1', 'table', 'task', - 'time', 'tran', 'tranif0', 'tranif1', 'tri', 'tri0', 'tri1', - 'triand', 'trior', 'trireg', 'vectored', 'wait', 'wand', 'weak0', - 'weak1', 'while', 'wire', 'wor', 'xnor', 'xor' - ), - // system tasks - 2 => array( - '$display', '$monitor', - '$dumpall', '$dumpfile', '$dumpflush', '$dumplimit', '$dumpoff', - '$dumpon', '$dumpvars', - '$fclose', '$fdisplay', '$fopen', - '$finish', '$fmonitor', '$fstrobe', '$fwrite', - '$fgetc', '$ungetc', '$fgets', '$fscanf', '$fread', '$ftell', - '$fseek', '$frewind', '$ferror', '$fflush', '$feof', - '$random', - '$readmemb', '$readmemh', '$readmemx', - '$signed', '$stime', '$stop', - '$strobe', '$time', '$unsigned', '$write' - ), - // macros - 3 => array( - '`default-net', '`define', - '`celldefine', '`default_nettype', '`else', '`elsif', '`endcelldefine', - '`endif', '`ifdef', '`ifndef', '`include', '`line', '`nounconnected_drive', - '`resetall', '`timescale', '`unconnected_drive', '`undef' - ), - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', - '^', '&', '|', '~', - '?', ':', - '#', '<<', '<<<', - '>', '<', '>=', '<=', - '@', ';', ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #A52A2A; font-weight: bold;', - 2 => 'color: #9932CC;', - 3 => 'color: #008800;' - ), - 'COMMENTS' => array( - 1 => 'color: #00008B; font-style: italic;', - 'MULTI' => 'color: #00008B; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #9F79EE' - ), - 'BRACKETS' => array( - 0 => 'color: #9F79EE;' - ), - 'STRINGS' => array( - 0 => 'color: #FF00FF;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff0055;' - ), - 'METHODS' => array( - 1 => 'color: #202020;', - 2 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #5D478B;' - ), - 'REGEXPS' => array( - 0 => 'color: #ff0055;', - 1 => 'color: #ff0055;', - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - 1 => '' - ), - 'REGEXPS' => array( - // numbers - 0 => "\d'[bdh][0-9_a-fA-FxXzZ]+", - // time -> 1, 10, or 100; s, ms, us, ns, ps, of fs - 1 => "1[0]{0,2}[munpf]?s" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - 1 => '' - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true, - 2 => true, - 3 => true - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/library/Vendors/geshi/geshi/vhdl.php b/library/Vendors/geshi/geshi/vhdl.php deleted file mode 100644 index 6856933c..00000000 --- a/library/Vendors/geshi/geshi/vhdl.php +++ /dev/null @@ -1,144 +0,0 @@ - 'VHDL', - 'COMMENT_SINGLE' => array(1 => '--'), - 'COMMENT_MULTI' => array('%' => '%'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - /*keywords*/ - 1 => array( - 'access','after','alias','all','assert','attribute','architecture','begin', - 'block','body','buffer','bus','case','component','configuration','constant', - 'disconnect','downto','else','elsif','end','entity','exit','file','for', - 'function','generate','generic','group','guarded','if','impure','in', - 'inertial','inout','is','label','library','linkage','literal','loop', - 'map','new','next','null','of','on','open','others','out','package', - 'port','postponed','procedure','process','pure','range','record','register', - 'reject','report','return','select','severity','signal','shared','subtype', - 'then','to','transport','type','unaffected','units','until','use','variable', - 'wait','when','while','with','note','warning','error','failure','and', - 'or','xor','not','nor','used','memory','segments','dff','dffe','help_id', - 'mod','info','latch','rising_edge','falling_edge' - ), - /*types*/ - 2 => array( - 'bit','bit_vector','character','boolean','integer','real','time','string', - 'severity_level','positive','natural','signed','unsigned','line','text', - 'std_logic','std_logic_vector','std_ulogic','std_ulogic_vector','qsim_state', - 'qsim_state_vector','qsim_12state','qsim_12state_vector','qsim_strength', - 'mux_bit','mux_vector','reg_bit','reg_vector','wor_bit','wor_vector', - 'work','ieee','std_logic_signed','std_logic_1164','std_logic_arith', - 'numeric_std' - - ), - /*operators*/ - ), - 'SYMBOLS' => array( - '[', ']', '(', ')', - ';',':', - '<','>','=','<=',':=','=>','==' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000080; font-weight: bold;', - 2 => 'color: #0000ff;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000; font-style: italic;', - 'MULTI' => 'color: #008000; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000066;' - ), - 'STRINGS' => array( - 0 => 'color: #7f007f;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff0000;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000066;' - ), - 'REGEXPS' => array( - 0 => 'color: #ff0000;', - 1 => 'color: #ff0000;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Hex numbers and scientific notation for numbers - 0 => '(\b0x[0-9a-fA-F]+|\b\d[0-9a-fA-F]+[hH])|'. - '(\b\d+?(\.\d+?)?E[+\-]?\d+)|(\bns)|'. - "('[0-9a-zA-Z]+(?!'))", - //Number characters? - 1 => "\b(''\d'')" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/vim.php b/library/Vendors/geshi/geshi/vim.php deleted file mode 100644 index f4f93ad2..00000000 --- a/library/Vendors/geshi/geshi/vim.php +++ /dev/null @@ -1,420 +0,0 @@ - ... ... works event if they aren't surround by space. - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array( - 'LANG_NAME' => 'Vim Script', - 'COMMENT_SINGLE' => array(), - 'COMMENT_REGEXP' => array( - 1 => "/\s*\"[^\"]*?$/m", - //Regular expressions (Ported from perl.php) -// 2 => "/(?<=[\\s^])(s|tr|y)\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/(?:\\\\.|(?!\n)[^\\/\\\\])*\\/[msixpogcde]*(?=[\\s$\\.\\;])|(?<=[\\s^(=])(m|q[qrwx]?)?\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[msixpogc]*(?=[\\s$\\.\\,\\;\\)])/iU", - ), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'au', 'augroup', 'autocmd', 'brea', 'break', 'bufadd', - 'bufcreate', 'bufdelete', 'bufenter', 'buffilepost', - 'buffilepre', 'bufleave', 'bufnew', 'bufnewfile', - 'bufread', 'bufreadcmd', 'bufreadpost', 'bufreadpre', - 'bufunload', 'bufwinenter', 'bufwinleave', 'bufwipeout', - 'bufwrite', 'bufwritecmd', 'bufwritepost', 'bufwritepre', - 'call', 'cat', 'catc', 'catch', 'cmd-event', 'cmdwinenter', - 'cmdwinleave', 'colorscheme', 'con', 'confirm', 'cont', 'conti', - 'contin', 'continu', 'continue', 'cursorhold', 'cursorholdi', - 'cursormoved', 'cursormovedi', 'ec', 'echo', 'echoe', - 'echoer', 'echoerr', 'echoh', 'echohl', 'echom', 'echoms', - 'echomsg', 'echon', 'el', 'els', 'else', 'elsei', 'elseif', - 'en', 'encodingchanged', 'end', 'endfo', 'endfor', 'endi', - 'endif', 'endt', 'endtr', 'endtry', 'endw', 'endwh', 'endwhi', - 'endwhil', 'endwhile', 'exe', 'exec', 'execu', 'execut', - 'execute', 'fileappendcmd', 'fileappendpost', 'fileappendpre', - 'filechangedro', 'filechangedshell', 'filechangedshellpost', - 'filereadcmd', 'filereadpost', 'filereadpre', - 'filetype', 'filewritecmd', 'filewritepost', 'filewritepre', - 'filterreadpost', 'filterreadpre', 'filterwritepost', - 'filterwritepre', 'fina', 'final', 'finall', 'finally', - 'finish', 'focusgained', 'focuslost', 'for', 'fun', 'func', - 'funct', 'functi', 'functio', 'function', 'funcundefined', - 'guienter', 'guifailed', 'hi', 'highlight', 'if', 'in', - 'insertchange', 'insertenter', 'insertleave', 'let', 'lockv', - 'lockva', 'lockvar', 'map', 'match', 'menupopup', 'nnoremap', - 'quickfixcmdpost', 'quickfixcmdpre', 'remotereply', 'retu', - 'retur', 'return', 'sessionloadpost', 'set', 'setlocal', - 'shellcmdpost', 'shellfilterpost', 'sourcecmd', 'sourcepre', - 'spellfilemissing', 'stdinreadpost', 'stdinreadpre', - 'swapexists', 'syntax', 'tabenter', 'tableave', 'termchanged', - 'termresponse', 'th', 'thr', 'thro', 'throw', 'tr', 'try', 'unl', - 'unle', 'unlet', 'unlo', 'unloc', 'unlock', 'unlockv', - 'unlockva', 'unlockvar', 'user', 'usergettingbored', - 'vimenter', 'vimleave', 'vimleavepre', 'vimresized', 'wh', - 'whi', 'whil', 'while', 'winenter', 'winleave' - ), - 2 => array( - '<CR>', '<Esc>', '<F1>', '<F10>', - '<F11>', '<F12>', '<F2>', '<F3>', - '<F4>', '<F5>', '<F6>', '<F7>', - '<F8>', '<F9>', '<cr>', '<silent>', - '-nargs', 'acd', 'ai', 'akm', 'al', 'aleph', - 'allowrevins', 'altkeymap', 'ambiwidth', 'ambw', - 'anti', 'antialias', 'ar', 'arab', 'arabic', - 'arabicshape', 'ari', 'arshape', 'autochdir', - 'autoindent', 'autoread', 'autowrite', 'autowriteall', - 'aw', 'awa', 'background', 'backspace', 'backup', - 'backupcopy', 'backupdir', 'backupext', - 'backupskip', 'balloondelay', 'ballooneval', 'balloonexpr', - 'bdir', 'bdlay', 'beval', 'bex', 'bexpr', 'bg', - 'bh', 'bin', 'binary', 'biosk', 'bioskey', - 'bk', 'bkc', 'bl', 'bomb', 'breakat', 'brk', - 'bs', 'bsdir', 'bsk', 'bt', 'bufhidden', - 'buftype', 'casemap', 'cb', - 'ccv', 'cd', 'cdpath', 'cedit', 'cf', 'cfu', 'ch', - 'charconvert', 'ci', 'cin', 'cink', - 'cinkeys', 'cino', 'cinoptions', 'cinw', 'cinwords', - 'clipboard', 'cmdheight', 'cmdwinheight', - 'cmp', 'cms', 'co', 'columns', 'com', - 'comc', 'comcl', 'comcle', 'comclea', 'comclear', 'comm', - 'comma', 'comman', 'command', 'comments', 'commentstring', - 'compatible', 'completefunc', 'completeopt', - 'consk', 'conskey', 'copyindent', - 'cot', 'cp', 'cpo', 'cpoptions', 'cpt', - 'cscopepathcomp', 'cscopeprg', 'cscopequickfix', 'cscopetag', - 'cscopetagorder', 'cscopeverbose', - 'cspc', 'csprg', 'csqf', 'cst', 'csto', 'csverb', 'cuc', - 'cul', 'cursorcolumn', 'cursorline', 'cwh', 'debug', - 'deco', 'def', 'define', 'delc', 'delco', 'delcom', - 'delcombine', 'delcomm', 'delcomman', 'delcommand', 'dex', - 'dg', 'dict', 'dictionary', 'diff', 'diffexpr', - 'diffopt', 'digraph', 'dip', 'dir', 'directory', 'display', - 'dlcomma', 'dy', 'ea', 'ead', 'eadirection', - 'eb', 'ed', 'edcompatible', 'ef', 'efm', - 'ei', 'ek', 'enc', 'encoding', 'endfun', 'endofline', - 'eol', 'ep', 'equalalways', 'equalprg', 'errorbells', - 'errorfile', 'errorformat', 'esckeys', 'et', - 'eventignore', 'ex', 'expandtab', 'exrc', 'fcl', - 'fcs', 'fdc', 'fde', 'fdi', 'fdl', 'fdls', 'fdm', - 'fdn', 'fdo', 'fdt', 'fen', 'fenc', 'fencs', 'fex', - 'ff', 'ffs', 'fileencoding', 'fileencodings', 'fileformat', - 'fileformats', /*'filetype',*/ 'fillchars', 'fk', - 'fkmap', 'flp', 'fml', 'fmr', 'fo', 'foldclose', - 'foldcolumn', 'foldenable', 'foldexpr', 'foldignore', - 'foldlevelstart', 'foldmarker', 'foldmethod', 'foldminlines', - 'foldnestmax', 'foldopen', 'formatexpr', 'formatlistpat', - 'formatoptions', 'formatprg', 'fp', 'fs', 'fsync', 'ft', - 'gcr', 'gd', 'gdefault', 'gfm', 'gfn', 'gfs', 'gfw', - 'ghr', 'go', 'gp', 'grepformat', 'grepprg', 'gtl', - 'gtt', 'guicursor', 'guifont', 'guifontset', - 'guifontwide', 'guiheadroom', 'guioptions', 'guipty', - 'guitablabel', 'guitabtooltip', 'helpfile', - 'helpheight', 'helplang', 'hf', 'hh', 'hid', 'hidden', - 'history', 'hk', 'hkmap', 'hkmapp', 'hkp', 'hl', - 'hlg', 'hls', 'hlsearch', 'ic', 'icon', 'iconstring', - 'ignorecase', 'im', 'imactivatekey', 'imak', 'imc', - 'imcmdline', 'imd', 'imdisable', 'imi', 'iminsert', 'ims', - 'imsearch', 'inc', 'include', 'includeexpr', - 'incsearch', 'inde', 'indentexpr', 'indentkeys', - 'indk', 'inex', 'inf', 'infercase', 'insertmode', 'is', 'isf', - 'isfname', 'isi', 'isident', 'isk', 'iskeyword', - 'isp', 'isprint', 'joinspaces', 'js', 'key', - 'keymap', 'keymodel', 'keywordprg', 'km', 'kmp', 'kp', - 'langmap', 'langmenu', 'laststatus', 'lazyredraw', 'lbr', - 'lcs', 'linebreak', 'lines', 'linespace', 'lisp', - 'lispwords', 'list', 'listchars', 'lm', 'lmap', - 'loadplugins', 'lpl', 'ls', 'lsp', 'lw', 'lz', 'ma', - 'macatsui', 'magic', 'makeef', 'makeprg', 'mat', - 'matchpairs', 'matchtime', 'maxcombine', 'maxfuncdepth', - 'maxmapdepth', 'maxmem', 'maxmempattern', - 'maxmemtot', 'mco', 'mef', 'menuitems', 'mfd', 'mh', - 'mis', 'mkspellmem', 'ml', 'mls', 'mm', 'mmd', 'mmp', - 'mmt', 'mod', 'modeline', 'modelines', 'modifiable', - 'modified', 'more', 'mouse', 'mousef', 'mousefocus', - 'mousehide', 'mousem', 'mousemodel', 'mouses', - 'mouseshape', 'mouset', 'mousetime', 'mp', 'mps', 'msm', - 'mzq', 'mzquantum', 'nf', 'noacd', 'noai', 'noakm', - 'noallowrevins', 'noaltkeymap', 'noanti', 'noantialias', - 'noar', 'noarab', 'noarabic', 'noarabicshape', 'noari', - 'noarshape', 'noautochdir', 'noautoindent', 'noautoread', - 'noautowrite', 'noautowriteall', 'noaw', 'noawa', 'nobackup', - 'noballooneval', 'nobeval', 'nobin', 'nobinary', 'nobiosk', - 'nobioskey', 'nobk', 'nobl', 'nobomb', 'nobuflisted', 'nocf', - 'noci', 'nocin', 'nocindent', 'nocompatible', 'noconfirm', - 'noconsk', 'noconskey', 'nocopyindent', 'nocp', 'nocscopetag', - 'nocscopeverbose', 'nocst', 'nocsverb', 'nocuc', 'nocul', - 'nocursorcolumn', 'nocursorline', 'nodeco', 'nodelcombine', - 'nodg', 'nodiff', 'nodigraph', 'nodisable', 'noea', 'noeb', - 'noed', 'noedcompatible', 'noek', 'noendofline', 'noeol', - 'noequalalways', 'noerrorbells', 'noesckeys', 'noet', - 'noex', 'noexpandtab', 'noexrc', 'nofen', 'nofk', 'nofkmap', - 'nofoldenable', 'nogd', 'nogdefault', 'noguipty', 'nohid', - 'nohidden', 'nohk', 'nohkmap', 'nohkmapp', 'nohkp', 'nohls', - 'nohlsearch', 'noic', 'noicon', 'noignorecase', 'noim', - 'noimc', 'noimcmdline', 'noimd', 'noincsearch', 'noinf', - 'noinfercase', 'noinsertmode', 'nois', 'nojoinspaces', - 'nojs', 'nolazyredraw', 'nolbr', 'nolinebreak', 'nolisp', - 'nolist', 'noloadplugins', 'nolpl', 'nolz', 'noma', - 'nomacatsui', 'nomagic', 'nomh', 'noml', 'nomod', - 'nomodeline', 'nomodifiable', 'nomodified', 'nomore', - 'nomousef', 'nomousefocus', 'nomousehide', 'nonu', - 'nonumber', 'noodev', 'noopendevice', 'nopaste', 'nopi', - 'nopreserveindent', 'nopreviewwindow', 'noprompt', 'nopvw', - 'noreadonly', 'noremap', 'norestorescreen', 'norevins', - 'nori', 'norightleft', 'norightleftcmd', 'norl', 'norlc', - 'noro', 'nors', 'noru', 'noruler', 'nosb', 'nosc', 'noscb', - 'noscrollbind', 'noscs', 'nosecure', 'nosft', 'noshellslash', - 'noshelltemp', 'noshiftround', 'noshortname', 'noshowcmd', - 'noshowfulltag', 'noshowmatch', 'noshowmode', 'nosi', 'nosm', - 'nosmartcase', 'nosmartindent', 'nosmarttab', 'nosmd', - 'nosn', 'nosol', 'nospell', 'nosplitbelow', 'nosplitright', - 'nospr', 'nosr', 'nossl', 'nosta', 'nostartofline', - 'nostmp', 'noswapfile', 'noswf', 'nota', 'notagbsearch', - 'notagrelative', 'notagstack', 'notbi', 'notbidi', 'notbs', - 'notermbidi', 'noterse', 'notextauto', 'notextmode', - 'notf', 'notgst', 'notildeop', 'notimeout', 'notitle', - 'noto', 'notop', 'notr', 'nottimeout', 'nottybuiltin', - 'nottyfast', 'notx', 'novb', 'novisualbell', 'nowa', - 'nowarn', 'nowb', 'noweirdinvert', 'nowfh', 'nowfw', - 'nowildmenu', 'nowinfixheight', 'nowinfixwidth', 'nowiv', - 'nowmnu', 'nowrap', 'nowrapscan', 'nowrite', 'nowriteany', - 'nowritebackup', 'nows', 'nrformats', 'nu', 'number', - 'numberwidth', 'nuw', 'odev', 'oft', 'ofu', - 'omnifunc', 'opendevice', 'operatorfunc', 'opfunc', - 'osfiletype', 'pa', 'para', 'paragraphs', - 'paste', 'pastetoggle', 'patchexpr', - 'patchmode', 'path', 'pdev', 'penc', 'pex', 'pexpr', - 'pfn', 'ph', 'pheader', 'pi', 'pm', 'pmbcs', - 'pmbfn', 'popt', 'preserveindent', 'previewheight', - 'previewwindow', 'printdevice', 'printencoding', 'printexpr', - 'printfont', 'printheader', 'printmbcharset', - 'printmbfont', 'printoptions', 'prompt', 'pt', 'pumheight', - 'pvh', 'pvw', 'qe', 'quoteescape', 'rdt', - 'readonly', 'redrawtime', 'remap', 'report', - 'restorescreen', 'revins', 'ri', 'rightleft', 'rightleftcmd', - 'rl', 'rlc', 'ro', 'rs', 'rtp', 'ru', - 'ruf', 'ruler', 'rulerformat', 'runtimepath', 'sb', 'sbo', - 'sbr', 'sc', 'scb', 'scr', 'scroll', 'scrollbind', - 'scrolljump', 'scrolloff', 'scrollopt', - 'scs', 'sect', 'sections', 'secure', 'sel', - 'selection', 'selectmode', 'sessionoptions', 'sft', - 'sh', 'shcf', 'shell', 'shellcmdflag', 'shellpipe', - 'shellquote', 'shellredir', 'shellslash', - 'shelltemp', 'shelltype', 'shellxquote', 'shiftround', - 'shiftwidth', 'shm', 'shortmess', 'shortname', - 'showbreak', 'showcmd', 'showfulltag', 'showmatch', - 'showmode', 'showtabline', 'shq', 'si', 'sidescroll', - 'sidescrolloff', 'siso', 'sj', 'slm', 'sm', 'smartcase', - 'smartindent', 'smarttab', 'smc', 'smd', 'sn', - 'so', 'softtabstop', 'sol', 'sp', 'spc', 'spell', - 'spellcapcheck', 'spellfile', 'spelllang', - 'spf', 'spl', 'splitbelow', 'splitright', 'spr', - 'sps', 'sr', 'srr', 'ss', 'ssl', 'ssop', 'st', 'sta', - 'stal', 'startofline', 'statusline', 'stl', 'stmp', - 'sts', 'su', 'sua', 'suffixes', 'suffixesadd', 'sw', - 'swapfile', 'swapsync', 'swb', 'swf', 'switchbuf', - 'sws', 'sxq', 'syn', 'synmaxcol', 'ta', - 'tabline', 'tabpagemax', 'tabstop', 'tag', - 'tagbsearch', 'taglength', 'tagrelative', 'tags', 'tagstack', - 'tal', 'tb', 'tbi', 'tbidi', 'tbis', 'tbs', - 'tenc', 'term', 'termbidi', 'termencoding', 'terse', - 'textauto', 'textmode', 'textwidth', 'tf', 'tgst', - 'thesaurus', 'tildeop', 'timeout', 'timeoutlen', - 'title', 'titlelen', 'titleold', 'titlestring', - 'tl', 'tm', 'to', 'toolbar', 'toolbariconsize', 'top', - 'tpm', 'ts', 'tsl', 'tsr', 'ttimeout', - 'ttimeoutlen', 'ttm', 'tty', 'ttybuiltin', 'ttyfast', 'ttym', - 'ttymouse', 'ttyscroll', 'ttytype', 'tw', 'tx', 'uc', - 'ul', 'undolevels', 'updatecount', 'updatetime', 'ut', - 'vb', 'vbs', 'vdir', 've', 'verbose', 'verbosefile', - 'vfile', 'vi', 'viewdir', 'viewoptions', 'viminfo', - 'virtualedit', 'visualbell', 'vop', 'wa', 'wak', - 'warn', 'wb', 'wc', 'wcm', 'wd', 'weirdinvert', 'wfh', - 'wfw', /*'wh',*/ 'whichwrap', 'wi', 'wig', 'wildchar', - 'wildcharm', 'wildignore', 'wildmenu', - 'wildmode', 'wildoptions', 'wim', 'winaltkeys', 'window', - 'winfixheight', 'winfixwidth', 'winheight', - 'winminheight', 'winminwidth', 'winwidth', 'wiv', - 'wiw', 'wm', 'wmh', 'wmnu', 'wmw', 'wop', 'wrap', - 'wrapmargin', 'wrapscan', 'write', 'writeany', - 'writebackup', 'writedelay', 'ws', 'ww' - ), - 3 => array( - 'BufAdd', 'BufCreate', 'BufDelete', 'BufEnter', 'BufFilePost', - 'BufFilePre', 'BufHidden', 'BufLeave', 'BufNew', 'BufNewFile', - 'BufRead', 'BufReadCmd', 'BufReadPost', 'BufReadPre', - 'BufUnload', 'BufWinEnter', 'BufWinLeave', 'BufWipeout', - 'BufWrite', 'BufWriteCmd', 'BufWritePost', 'BufWritePre', - 'Cmd-event', 'CmdwinEnter', 'CmdwinLeave', 'ColorScheme', - 'CursorHold', 'CursorHoldI', 'CursorMoved', 'CursorMovedI', - 'EncodingChanged', 'FileAppendCmd', 'FileAppendPost', - 'FileAppendPre', 'FileChangedRO', 'FileChangedShell', - 'FileChangedShellPost', 'FileEncoding', 'FileReadCmd', - 'FileReadPost', 'FileReadPre', 'FileType', - 'FileWriteCmd', 'FileWritePost', 'FileWritePre', - 'FilterReadPost', 'FilterReadPre', 'FilterWritePost', - 'FilterWritePre', 'FocusGained', 'FocusLost', 'FuncUndefined', - 'GUIEnter', 'GUIFailed', 'InsertChange', 'InsertEnter', - 'InsertLeave', 'MenuPopup', 'QuickFixCmdPost', - 'QuickFixCmdPre', 'RemoteReply', 'SessionLoadPost', - 'ShellCmdPost', 'ShellFilterPost', 'SourceCmd', - 'SourcePre', 'SpellFileMissing', 'StdinReadPost', - 'StdinReadPre', 'SwapExists', 'Syntax', 'TabEnter', - 'TabLeave', 'TermChanged', 'TermResponse', 'User', - 'UserGettingBored', 'VimEnter', 'VimLeave', 'VimLeavePre', - 'VimResized', 'WinEnter', 'WinLeave', 'abs', 'add', 'append', - 'argc', 'argidx', 'argv', 'atan', 'browse', 'browsedir', - 'bufexists', 'buflisted', 'bufloaded', 'bufname', 'bufnr', - 'bufwinnr', 'byte2line', 'byteidx', 'ceil', 'changenr', - 'char2nr', 'cindent', 'clearmatches', 'col', 'complete', - 'complete_add', 'complete_check', 'copy', - 'cos', 'count', 'cscope_connection', 'cursor', 'deepcopy', - 'delete', 'did_filetype', 'diff_filler', 'diff_hlID', - 'empty', 'escape', 'eval', 'eventhandler', 'executable', - 'exists', 'expand', 'extend', 'feedkeys', 'filereadable', - 'filewritable', 'filter', 'finddir', 'findfile', 'float2nr', - 'floor', 'fnameescape', 'fnamemodify', 'foldclosed', - 'foldclosedend', 'foldlevel', 'foldtext', 'foldtextresult', - 'foreground', 'garbagecollect', 'get', 'getbufline', - 'getbufvar', 'getchar', 'getcharmod', 'getcmdline', - 'getcmdpos', 'getcmdtype', 'getcwd', 'getfontname', - 'getfperm', 'getfsize', 'getftime', 'getftype', 'getline', - 'getloclist', 'getmatches', 'getpid', 'getpos', 'getqflist', - 'getreg', 'getregtype', 'gettabwinvar', 'getwinposx', - 'getwinposy', 'getwinvar', 'glob', 'globpath', 'has', - 'has_key', 'haslocaldir', 'hasmapto', 'histadd', 'histdel', - 'histget', 'histnr', 'hlID', 'hlexists', 'hostname', 'iconv', - 'indent', 'index', 'input', 'inputdialog', 'inputlist', - 'inputrestore', 'inputsave', 'inputsecret', 'insert', - 'isdirectory', 'islocked', 'items', 'join', 'keys', 'len', - 'libcall', 'libcallnr', 'line', 'line2byte', 'lispindent', - 'localtime', 'log10', 'maparg', 'mapcheck', 'matchadd', - 'matcharg', 'matchdelete', 'matchend', 'matchlist', - 'matchstr', 'max', 'min', 'mkdir', 'mode', 'nextnonblank', - 'nr2char', 'off', 'on', 'pathshorten', 'plugin', 'pow', - 'prevnonblank', 'printf', 'pumvisible', 'range', 'readfile', - 'reltime', 'reltimestr', 'remote_expr', 'remote_foreground', - 'remote_peek', 'remote_read', 'remote_send', 'remove', - 'rename', 'repeat', 'resolve', 'reverse', 'round', 'search', - 'searchdecl', 'searchpair', 'searchpairpos', 'searchpos', - 'server2client', 'serverlist', 'setbufvar', 'setcmdpos', - 'setline', 'setloclist', 'setmatches', 'setpos', 'setqflist', - 'setreg', 'settabwinvar', 'setwinvar', 'shellescape', - 'simplify', 'sin', 'sort', 'soundfold', 'spellbadword', - 'spellsuggest', 'split', 'sqrt', 'str2float', 'str2nr', - 'strftime', 'stridx', 'string', 'strlen', 'strpart', - 'strridx', 'strtrans', 'submatch', 'substitute', - 'synID', 'synIDattr', 'synIDtrans', 'synstack', 'system', - 'tabpagebuflist', 'tabpagenr', 'tabpagewinnr', 'tagfiles', - 'taglist', 'tempname', 'tolower', 'toupper', 'trunc', - 'type', 'values', 'virtcol', 'visualmode', 'winbufnr', - 'wincol', 'winline', 'winnr', 'winrestcmd', - 'winrestview', 'winsaveview', 'writefile' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '!', '%', '&', '*', '|', '/', '<', '>', - '^', '-', '+', '~', '?', ':', '$', '@', '.' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true - ), - 'STYLES' => array( - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'COMMENTS' => array( - 1 => 'color: #adadad; font-style: italic;', -// 2 => 'color: #009966; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'KEYWORDS' => array( - 1 => 'color: #804040;', - 2 => 'color: #668080;', - 3 => 'color: #25BB4D;' - ), - 'METHODS' => array( - 0 => 'color: #000000;', - ), - 'NUMBERS' => array( - 0 => 'color: #000000; font-weight:bold;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ), - 'STRINGS' => array( - 0 => 'color: #C5A22D;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, //Save some time as OO identifiers aren't used - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array() -); - -?> diff --git a/library/Vendors/geshi/geshi/visualfoxpro.php b/library/Vendors/geshi/geshi/visualfoxpro.php deleted file mode 100644 index 7d804257..00000000 --- a/library/Vendors/geshi/geshi/visualfoxpro.php +++ /dev/null @@ -1,456 +0,0 @@ - 'Visual Fox Pro', - 'COMMENT_SINGLE' => array(1 => "//", 2 => "\n*"), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'Case', 'Else', '#Else', 'Then', - 'Endcase', 'Enddefine', 'Enddo', 'Endfor', 'Endfunc', 'Endif', 'Endprintjob', - 'Endproc', 'Endscan', 'Endtext', 'Endwith', '#Endif', - '#Elif','#Define','#If','#Include', - '#Itsexpression','#Readclauses','#Region','#Section','#Undef','#Wname', - 'Define','Do', - 'For','Function','Hidden', - 'If','Local','Lparameter','Lparameters','Next','Otherwise', - 'Parameters','Printjob','Procedure','Protected','Public','Scan', - 'Text','While','With','Abs','Accept','Access','Aclass','Acopy', - 'Acos','Adatabases','Adbobjects','Addbs','Addrelationtoenv','Addtabletoenv', - 'Adel','Adir','Aelement','Aerror','Afields','Afont', - 'Agetclass','Agetfileversion','Ains','Ainstance','Alen','Align', - 'Alines','Alltrim','Alter','Amembers','Amouseobj','Anetresources', - 'Ansitooem','Append','Aprinters','Ascan','Aselobj','Asin', - 'Asort','Assert','Asserts','Assist','Asubscript','Asynchronous', - 'At_c','Atan','Atc','Atcc','Atcline','Atline', - 'Atn2','Aused','Autoform','Autoreport','Avcxclasses','Average', - 'BarCount','BarPrompt','BatchMode','BatchUpdateCount','Begin','BellSound', - 'BinToC','Bitand','Bitclear','Bitlshift','Bitnot', - 'Bitor','Bitrshift','Bitset','Bittest','Bitxor','Bof', - 'Browse','BrowseRefresh','Buffering','BuilderLock','COMArray','COMReturnError', - 'CToBin','Calculate','Call','Capslock','Cd','Cdow', - 'Ceiling','Central','Change','Char','Chdir','Chr', - 'Chrsaw','Chrtran','Chrtranc','Close','Cmonth','Cntbar', - 'Cntpad','Col','Comclassinfo','CommandTargetQuery','Compile','Completed', - 'Compobj','Compute','Concat','ConnectBusy','ConnectHandle','ConnectName', - 'ConnectString','ConnectTimeOut','ContainerReleaseType','Continue','Copy','Cos', - 'Cot','Count','Coverage','Cpconvert','Cpcurrent','Cpdbf', - 'Cpnotrans','Create','CreateBinary','Createobject','Createobjectex','Createoffline', - 'CrsBuffering','CrsFetchMemo','CrsFetchSize','CrsMaxRows','CrsMethodUsed','CrsNumBatch', - 'CrsShareConnection','CrsUseMemoSize','CrsWhereClause','Ctod','Ctot', - 'Curdate','Curdir','CurrLeft','CurrSymbol','CursorGetProp','CursorSetProp', - 'Curtime','Curval','DBGetProp','DBSetProp','DB_BufLockRow','DB_BufLockTable', - 'DB_BufOff','DB_BufOptRow','DB_BufOptTable','DB_Complette','DB_DeleteInsert','DB_KeyAndModified', - 'DB_KeyAndTimestamp','DB_KeyAndUpdatable','DB_LocalSQL','DB_NoPrompt','DB_Prompt','DB_RemoteSQL', - 'DB_TransAuto','DB_TransManual','DB_TransNone','DB_Update','Datetime','Day', - 'Dayname','Dayofmonth','Dayofweek','Dayofyear','Dbalias','Dbused', - 'Ddeaborttrans','Ddeadvise','Ddeenabled','Ddeexecute','Ddeinitiate','Ddelasterror', - 'Ddepoke','Dderequest','Ddesetoption','Ddesetservice','Ddesettopic','Ddeterminate', - 'Debugout','Declare','DefOLELCid','DefaultValue','Defaultext','Degrees', - 'DeleteTrigger','Desc','Description','Difference','Dimension','Dir', - 'Directory','Diskspace','DispLogin','DispWarnings','Display','Dll', - 'Dmy','DoDefault','DoEvents','Doc','Dow', - 'Drivetype','Drop','Dropoffline','Dtoc','Dtor','Dtos', - 'Dtot','DynamicInputMask','Each','Edit','Eject','Elif', - 'End','Eof','Erase','Evaluate','Event','Eventtracking', - 'Exclude','Exclusive','Exit','Exp','Export','External', - 'FDate','FTime','Fchsize','Fclose','Fcount','Fcreate', - 'Feof','Ferror','FetchMemo','FetchSize','Fflush','Fgets', - 'Filer','Filetostr','Find','Fklabel','Fkmax','Fldlist', - 'Flock','Floor','Flush','Fontmetric','Fopen','Forceext', - 'Forcepath','FormSetClass','FormSetLib','FormsClass','FormsLib','Found', - 'FoxPro','Foxcode','Foxdoc','Foxgen','Foxgraph','Foxview', - 'Fputs','Fread','French','Fseek','Fsize','Fv', - 'Fwrite','Gather','German','GetPem','Getbar','Getcolor', - 'Getcp','Getdir','Getenv','Getexpr','Getfile','Getfldstate', - 'Getfont','Gethost','Getnextmodified','Getobject','Getpad','Getpict', - 'Getprinter','Go','Gomonth','Goto','Graph','GridHorz', - 'GridShow','GridShowPos','GridSnap','GridVert','Help','HelpOn', - 'HelpTo','HighLightRow','Home','Hour','IMEStatus','IdleTimeOut', - 'Idxcollate','Ifdef','Ifndef','Iif','Import','Include', - 'Indbc','Index','Indexseek','Inkey','Inlist','Input', - 'Insert','InsertTrigger','Insmode','IsBlank','IsFLocked','IsLeadByte', - 'IsMouse','IsNull','IsRLocked','Isalpha','Iscolor','Isdigit', - 'IsExclusive','Ishosted','IsLower','IsReadOnly', - 'IsUpper','Italian','Japan','Join','Justdrive','Justext', - 'Justfname','Justpath','Juststem','KeyField','KeyFieldList','Keyboard' - ), - 2 => array('Keymatch','LastProject','Lastkey','Lcase','Leftc','Len', - 'Lenc','Length','Likec','Lineno','LoadPicture', - 'Locate','Locfile','Log','Log10','Logout','Lookup', - 'Loop','Lower','Ltrim','Lupdate','Mail','MaxRecords', - 'Mcol','Md','Mdown','Mdx','Mdy','Memlines', - 'Menu','Messagebox','Minute','Mkdir','Mline','Modify', - 'Month','Monthname','Mouse','Mrkbar','Mrkpad','Mrow', - 'Mtdll','Mton','Mwindow','Native','Ndx','Network', - 'NoFilter','Nodefault','Normalize','Note','Now','Ntom', - 'NullString','Numlock','Nvl','ODBChdbc','ODBChstmt','OLEDropTextInsertion', - 'OLELCid','Objnum','Objref','Objtoclient','Objvar','Occurs', - 'Oemtoansi','Oldval','OlePublic','Olereturnerror','On','Open', - 'Oracle','Order','Os','Outer','PCount','Pack', - 'PacketSize','Padc','Padl','Padr','Payment','Pcol', - 'PemStatus','Pi','Pivot','Play','Pop','Popup', - 'Power','PrimaryKey','Printstatus','Private','Prmbar','Prmpad', - 'ProjectClick','Proper','Prow','Prtinfo','Push','Putfile', - 'Pv','Qpr','Quater','QueryTimeOut','Quit','Radians', - 'Rand','Rat','Ratc','Ratline','Rd','Rdlevel', - 'Read','Readkey','Recall','Reccount','RecentlyUsedFiles','Recno', - 'Recsize','Regional','Reindex','RelatedChild','RelatedTable','RelatedTag', - 'Remove','Rename','Repeat','Replace','Replicate','Report', - 'ResHeight','ResWidth','ResourceOn','ResourceTo','Resources','Restore', - 'Resume','Retry','Return','Revertoffline','Rgbscheme','Rightc', - 'Rlock','Rmdir','Rollback','Round','Rtod','Rtrim', - 'RuleExpression','RuleText','Run','Runscript','Rview','SQLAsynchronous', - 'SQLBatchMode','SQLCancel','SQLColumns','SQLConnect','SQLConnectTimeOut','SQLDisconnect', - 'SQLDispLogin','SQLDispWarnings','SQLExec','SQLGetProp','SQLIdleTimeOut','SQLMoreResults', - 'SQLPrepare','SQLQueryTimeOut','SQLSetProp','SQLTables','SQLTransactions','SQLWaitTime', - 'Save','SavePicture','ScaleUnits','Scatter','Scols', - 'Scroll','Sec','Second','Seek','Select','SendUpdates', - 'Set','SetDefault','Setfldstate','Setup','ShareConnection','ShowOLEControls', - 'ShowOLEInsertable','ShowVCXs','Sign','Sin','Size','SizeBox', - 'Skpbar','Skppad','Sort','Soundex','SourceName','Sqlcommit', - 'Sqll','Sqlrollback','Sqlstringconnect','Sqrt','Srows','StatusBar', - 'Store','Str','Strconv','Strtofile','Strtran','Stuff', - 'Stuffc','Substr','Substrc','Substring','Sum','Suspend', - 'Sys','Sysmetric','TabOrdering','Table','TableRefresh','Tablerevert', - 'Tableupdate','TagCount','TagNo','Tan','Target','This', - 'Thisform','Thisformset','Timestamp','Timestampdiff','Total','Transactions', - 'Transform','Trim','Truncate','Ttoc','Ttod','Txnlevel', - 'Txtwidth','Type','Ucase','Undefine','Unlock','Unpack', - 'Updatable','UpdatableFieldList','Update','UpdateName','UpdateNameList','UpdateTrigger', - 'UpdateType','Updated','Upper','Upsizing','Usa','Use', - 'UseMemoSize','Used','Val','Validate','Varread','Vartype', - 'Version','VersionLanguage','Wait','WaitTime','Wborder','Wchild', - 'Wcols','Week','Wexist','Wfont','WhereType','Windcmd', - 'Windhelp','Windmemo','Windmenu','Windmodify','Windquery','Windscreen', - 'Windsnip','Windstproc','WizardPrompt','Wlast','Wlcol','Wlrow', - 'Wmaximum','Wminimum','Wontop','Woutput','Wparent','Wread', - 'Wrows','Wtitle','Wvisible','Year','Zap','_Alignment', - '_Asciicols','_Asciirows','_Assist','_Beautify','_Box','_Browser', - '_Builder','_Calcmem','_Calcvalue','_Cliptext','_Converter','_Coverage', - '_Curobj','_Dblclick','_Diarydate','_Dos','_Foxdoc','_Foxgraph', - '_Gallery','_Gengraph','_Genhtml','_Genmenu','_Genpd','_Genscrn', - '_Genxtab','_Getexpr','_Include','_Indent','_Lmargin','_Mac', - '_Mbr_appnd','_Mbr_cpart','_Mbr_delet','_Mbr_font','_Mbr_goto','_Mbr_grid', - '_Mbr_link','_Mbr_mode','_Mbr_mvfld','_Mbr_mvprt','_Mbr_seek','_Mbr_sp100', - '_Mbr_sp200','_Mbr_szfld','_Mbrowse','_Mda_appnd','_Mda_avg','_Mda_brow', - '_Mda_calc','_Mda_copy','_Mda_count','_Mda_label','_Mda_pack','_Mda_reprt', - '_Mda_rindx','_Mda_setup','_Mda_sort','_Mda_sp100','_Mda_sp200','_Mda_sp300', - '_Mda_sum','_Mda_total','_Mdata','_Mdiary','_Med_clear','_Med_copy', - '_Med_cut','_Med_cvtst','_Med_find','_Med_finda','_Med_goto','_Med_insob', - '_Med_link','_Med_obj','_Med_paste','_Med_pref','_Med_pstlk','_Med_redo', - '_Med_repl','_Med_repla','_Med_slcta','_Med_sp100','_Med_sp200','_Med_sp300', - '_Med_sp400','_Med_sp500','_Med_undo','_Medit','_Mfi_clall','_Mfi_close', - '_Mfi_export','_Mfi_import','_Mfi_new','_Mfi_open','_Mfi_pgset','_Mfi_prevu', - '_Mfi_print','_Mfi_quit','_Mfi_revrt','_Mfi_savas','_Mfi_save','_Mfi_send', - '_Mfi_setup','_Mfi_sp100','_Mfi_sp200','_Mfi_sp300','_Mfi_sp400','_Mfile', - '_Mfiler','_Mfirst','_Mlabel','_Mlast','_Mline','_Mmacro', - '_Mmbldr','_Mpr_beaut','_Mpr_cancl','_Mpr_compl','_Mpr_do','_Mpr_docum', - '_Mpr_formwz','_Mpr_gener','_Mpr_graph','_Mpr_resum','_Mpr_sp100','_Mpr_sp200', - '_Mpr_sp300','_Mpr_suspend','_Mprog','_Mproj','_Mrc_appnd','_Mrc_chnge', - '_Mrc_cont','_Mrc_delet','_Mrc_goto','_Mrc_locat','_Mrc_recal','_Mrc_repl', - '_Mrc_seek','_Mrc_sp100','_Mrc_sp200','_Mrecord','_Mreport','_Mrqbe', - '_Mscreen','_Msm_data','_Msm_edit','_Msm_file','_Msm_format','_Msm_prog', - '_Msm_recrd','_Msm_systm','_Msm_text','_Msm_tools','_Msm_view','_Msm_windo', - '_Mst_about','_Mst_ascii','_Mst_calcu','_Mst_captr','_Mst_dbase','_Mst_diary', - '_Mst_filer','_Mst_help','_Mst_hphow','_Mst_hpsch','_Mst_macro','_Mst_office', - '_Mst_puzzl','_Mst_sp100','_Mst_sp200','_Mst_sp300','_Mst_specl','_Msysmenu', - '_Msystem','_Mtable','_Mtb_appnd','_Mtb_cpart','_Mtb_delet','_Mtb_delrc', - '_Mtb_goto','_Mtb_link','_Mtb_mvfld','_Mtb_mvprt','_Mtb_props','_Mtb_recal', - '_Mtb_sp100','_Mtb_sp200','_Mtb_sp300','_Mtb_sp400','_Mtb_szfld','_Mwi_arran', - '_Mwi_clear','_Mwi_cmd','_Mwi_color','_Mwi_debug','_Mwi_hide','_Mwi_hidea', - '_Mwi_min','_Mwi_move','_Mwi_rotat','_Mwi_showa','_Mwi_size','_Mwi_sp100', - '_Mwi_sp200','_Mwi_toolb','_Mwi_trace','_Mwi_view','_Mwi_zoom','_Mwindow', - '_Mwizards','_Mwz_all','_Mwz_form','_Mwz_foxdoc','_Mwz_import','_Mwz_label', - '_Mwz_mail','_Mwz_pivot','_Mwz_query','_Mwz_reprt','_Mwz_setup','_Mwz_table', - '_Mwz_upsizing','_Netware','_Oracle','_Padvance','_Pageno','_Pbpage', - '_Pcolno','_Pcopies','_Pdparms','_Pdriver','_Pdsetup','_Pecode', - '_Peject','_Pepage','_Pform','_Plength','_Plineno','_Ploffset', - '_Ppitch','_Pquality','_Pretext','_Pscode','_Pspacing','_Pwait', - '_Rmargin','_Runactivedoc','_Samples','_Screen','_Shell','_Spellchk', - '_Sqlserver','_Startup','_Tabs','_Tally','_Text','_Throttle', - '_Transport','_Triggerlevel','_Unix','_WebDevOnly','_WebMenu','_WebMsftHomePage', - '_WebVFPHomePage','_WebVfpOnlineSupport','_Windows','_Wizard','_Wrap','_scctext', - '_vfp','Additive','After','Again','Aindent','Alignright', - 'All','Alt','Alternate','And','Ansi','Any', - 'Aplabout','App','Array','As','Asc','Ascending', - 'Ascii','At','Attributes','Automatic','Autosave','Avg', - 'Bar','Before','Bell','Between','Bitmap','Blank', - 'Blink','Blocksize','Border','Bottom','Brstatus','Bucket', - 'Buffers','By','Candidate','Carry','Cascade','Catalog', - 'Cdx','Center','Century','Cga','Character','Check', - 'Classlib','Clock','Cnt','Codepage','Collate','Color', - 'Com1','Com2','Command','Compact','Compatible','Compress', - 'Confirm','Connection','Connections','Connstring','Console','Copies', - 'Cpcompile','Cpdialog','Csv','Currency','Cycle','Databases', - 'Datasource','Date','Db4','Dbc','Dbf','Dbmemo3', - 'Debug','Decimals','Defaultsource','Deletetables','Delimited','Delimiters', - 'Descending','Design','Development','Device','Dif','Disabled', - 'Distinct','Dlls','Dohistory','Dos','Dosmem','Double', - 'Driver','Duplex','Echo','Editwork','Ega25','Ega43', - 'Ems','Ems64','Encrypt','Encryption','Environment','Escape', - 'Events','Exact','Except','Exe','Exists','Expression', - 'Extended','F','Fdow','Fetch','Field','Fields', - 'File','Files','Fill','Fixed','Float','Foldconst', - 'Font','Footer','Force','Foreign','Fox2x','Foxplus', - 'Free','Freeze','From','Fullpath','Fw2','Fweek', - 'Get','Gets','Global','Group','Grow','Halfheight', - 'Having','Heading','Headings','Helpfilter','History','Hmemory', - 'Hours','Id','In','Indexes','Information','Instruct', - 'Int','Integer','Intensity','Intersect','Into','Is', - 'Isometric','Key','Keycolumns','Keycomp','Keyset','Last', - 'Ledit','Level','Library','Like','Linked','Lock', - 'Logerrors','Long','Lpartition','Mac','Macdesktop','Machelp', - 'Mackey','Macros','Mark','Master','Max','Maxmem', - 'Mdi','Memlimit','Memory','Memos','Memowidth','Memvar', - 'Menus','Messages','Middle','Min','Minimize','Minus', - 'Mod','Modal','Module','Mono43','Movers','Multilocks', - 'Mvarsiz','Mvcount','N','Near','Negotiate','Noalias', - 'Noappend','Noclear','Noclose','Noconsole','Nocptrans','Nodata', - 'Nodebug','Nodelete','Nodup','Noedit','Noeject','Noenvironment', - 'Nofloat','Nofollow','Nogrow','Noinit','Nolgrid','Nolink', - 'Nolock','Nomargin','Nomdi','Nomenu','Nominimize','Nomodify' - ), - 3 => array('Nomouse','None','Nooptimize','Nooverwrite','Noprojecthook','Noprompt', - 'Noread','Norefresh','Norequery','Norgrid','Norm','Normal', - 'Nosave','Noshadow','Noshow','Nospace','Not','Notab', - 'Notify','Noupdate','Novalidate','Noverify','Nowait','Nowindow', - 'Nowrap','Nozoom','Npv','Null','Number','Objects', - 'Odometer','Of','Off','Oleobjects','Only','Optimize', - 'Or','Orientation','Output','Outshow','Overlay','Overwrite', - 'Pad','Palette','Paperlength','Papersize','Paperwidth','Password', - 'Path','Pattern','Pause','Pdox','Pdsetup','Pen', - 'Pfs','Pixels','Plain','Popups','Precision','Preference', - 'Preview','Primary','Printer','Printquality','Procedures','Production', - 'Program','Progwork','Project','Prompt','Query','Random', - 'Range','Readborder','Readerror','Record','Recover','Redit', - 'Reference','References','Relative','Remote','Reprocess','Resource', - 'Rest','Restrict','Rgb','Right','Row','Rowset', - 'Rpd','Runtime','Safety','Same','Sample','Say', - 'Scale','Scheme','Scoreboard','Screen','Sdf','Seconds', - 'Selection','Shadows','Shared','Sheet','Shell','Shift', - 'Shutdown','Single','Some','Sortwork','Space','Sql', - 'Standalone','Status','Std','Step','Sticky','String', - 'Structure','Subclass','Summary','Sylk','Sysformats','Sysmenus', - 'System','T','Tab','Tables','Talk','Tedit', - 'Textmerge','Time','Timeout','Titles','Tmpfiles','To', - 'Topic','Transaction','Trap','Trbetween','Trigger','Ttoption', - 'Typeahead','Udfparms','Union','Unique','Userid','Users', - 'Values','Var','Verb','Vga25','Vga50','Views', - 'Volume','Where','Windows','Wk1','Wk3','Wks', - 'Workarea','Wp','Wr1','Wrap','Wrk','Xcmdfile', - 'Xl5','Xl8','Xls','Y','Yresolution','Zoom', - 'Activate','ActivateCell','Add','AddColumn','AddItem','AddListItem', - 'AddObject','AddProperty','AddToSCC','AfterBuild','AfterCloseTables','AfterDock', - 'AfterRowColChange','BeforeBuild','BeforeDock','BeforeOpenTables','BeforeRowColChange','Box', - 'Build','CheckIn','CheckOut','Circle','Clear','ClearData', - 'Cleanup','Click','CloneObject','CloseEditor','CloseTables','Cls', - 'CommandTargetExec','CommandTargetQueryStas','ContainerRelease','DataToClip','DblClick','Deactivate', - 'Delete','DeleteColumn','Deleted','Destroy','DoCmd','Dock', - 'DoScroll','DoVerb','DownClick','Drag','DragDrop','DragOver', - 'DropDown','Draw','EnterFocus','Error','ErrorMessage','Eval', - 'ExitFocus','FormatChange','GetData','GetFormat','GetLatestVersion','GoBack', - 'GotFocus','GoForward','GridHitTest','Hide','HideDoc','IndexToItemId', - 'Init','InteractiveChange','Item','ItemIdToIndex','KeyPress','Line', - 'Load','LostFocus','Message','MiddleClick','MouseDown','MouseMove', - 'MouseUp','MouseWheel','Move','Moved','NavigateTo','Newobject', - 'OLECompleteDrag','OLEDrag','OLEDragDrop','OLEDragOver','OLEGiveFeedback','OLESetData', - 'OLEStartDrag','OpenEditor','OpenTables','Paint','Point','Print', - 'ProgrammaticChange','PSet','QueryAddFile','QueryModifyFile','QueryRemoveFile','QueryRunFile', - 'QueryUnload','RangeHigh','RangeLow','ReadActivate','ReadExpression','ReadDeactivate', - 'ReadMethod','ReadShow','ReadValid','ReadWhen','Refresh','Release', - 'RemoveFromSCC','RemoveItem','RemoveListItem','RemoveObject','Requery','RequestData', - 'Reset','ResetToDefault','Resize','RightClick','SaveAs','SaveAsClass', - 'Scrolled','SetAll','SetData','SetFocus','SetFormat','SetMain', - 'SetVar','SetViewPort','ShowDoc','ShowWhatsThis','TextHeight','TextWidth', - 'Timer','UIEnable','UnDock','UndoCheckOut','Unload','UpClick', - 'Valid','WhatsThisMode','When','WriteExpression','WriteMethod','ZOrder', - 'ATGetColors','ATListColors','Accelerate','ActiveColumn','ActiveControl','ActiveForm', - 'ActiveObjectId','ActivePage','ActiveProject','ActiveRow','AddLineFeeds','Alias', - 'Alignment','AllowAddNew','AllowHeaderSizing','AllowResize','AllowRowSizing','AllowTabs', - 'AlwaysOnTop','Application','AutoActivate','AutoCenter','AutoCloseTables','AutoIncrement', - 'AutoOpenTables','AutoRelease','AutoSize','AutoVerbMenu','AutoYield','AvailNum', - 'BackColor','BackStyle','BaseClass','BorderColor','BorderStyle','BorderWidth', - 'Bound','BoundColumn','BoundTo','BrowseAlignment','BrowseCellMarg','BrowseDestWidth', - 'BufferMode','BufferModeOverride','BuildDateTime','ButtonCount','ButtonIndex','Buttons', - 'CLSID','CanAccelerate','CanGetFocus','CanLoseFocus','Cancel','Caption', - 'ChildAlias','ChildOrder','Class','ClassLibrary','ClipControls','ClipRect', - 'Closable','ColorScheme','ColorSource','ColumnCount','ColumnHeaders','ColumnLines', - 'ColumnOrder','ColumnWidths','Columns','Comment','ContinuousScroll','ControlBox', - 'ControlCount','ControlIndex','ControlSource','Controls','CurrentControl','CurrentX', - 'CurrentY','CursorSource','Curvature','DataSession','DataSessionId','DataSourceObj', - 'DataType','Database','DateFormat','DateMark','DefButton','DefButtonOrig', - 'DefHeight','DefLeft','DefTop','DefWidth','Default','DefaultFilePath', - 'DefineWindows','DeleteMark','Desktop','Dirty','DisabledBackColor','DisabledByEOF', - 'DisabledForeColor','DisabledItemBackColor','DisabledItemForeColor','DisabledPicture','DispPageHeight','DispPageWidth', - 'DisplayCount','DisplayValue','DoCreate','DockPosition','Docked','DocumentFile', - 'DownPicture','DragIcon','DragMode','DragState','DrawMode','DrawStyle', - 'DrawWidth','DynamicAlignment','DynamicBackColor','DynamicCurrentControl','DynamicFontBold','DynamicFontItalic', - 'DynamicFontName','DynamicFontOutline','DynamicFontShadow','DynamicFontSize','DynamicFontStrikethru','DynamicFontUnderline', - 'DynamicForeColor','EditFlags','Enabled','EnabledByReadLock','Encrypted','EnvLevel', - 'ErasePage','FileClass','FileClassLibrary','FillColor','FillStyle','Filter', - 'FirstElement','FontBold','FontItalic','FontName','FontOutline','FontShadow', - 'FontSize','FontStrikethru','FontUnderline','ForceFocus','ForeColor','FormCount', - 'FormIndex','FormPageCount','FormPageIndex','Format','Forms','FoxFont', - 'FullName','GoFirst','GoLast','GridLineColor','GridLineWidth','GridLines' - ), - 4 => array('HPROJ','HWnd','HalfHeightCaption','HasClip','HeaderGap','HeaderHeight', - 'Height','HelpContextID','HideSelection','Highlight','HomeDir','HostName', - 'HotKey','HscrollSmallChange','IMEMode','Icon','IgnoreInsert','InResize', - 'Increment','IncrementalSearch','InitialSelectedAlias','InputMask','Instancing','IntegralHeight', - 'Interval','ItemBackColor','ItemData','ItemForeColor','ItemIDData','ItemTips', - 'JustReadLocked','KeyPreview','KeyboardHighValue','KeyboardLowValue','LastModified','Left', - 'LeftColumn','LineSlant','LinkMaster','List','ListCount','ListIndex', - 'ListItem','ListItemId','LockDataSource','LockScreen','MDIForm','MainClass', - 'MainFile','Margin','MaxButton','MaxHeight','MaxLeft','MaxLength', - 'MaxTop','MaxWidth','MemoWindow','MinButton','MinHeight','MinWidth', - 'MouseIcon','MousePointer','Movable','MoverBars','MultiSelect','Name', - 'NapTime','NewIndex','NewItemId','NoDataOnLoad','NoDefine','NotifyContainer', - 'NullDisplay','NumberOfElements','OLEDragMode','OLEDragPicture','OLEDropEffects','OLEDropHasData', - 'OLEDropMode','OLERequestPendingTimeOut','OLEServerBusyRaiseError','OLEServerBusyTimeOut','OLETypeAllowed','OleClass', - 'OleClassId','OleControlContainer','OleIDispInValue','OleIDispOutValue','OleIDispatchIncoming','OleIDispatchOutgoing', - 'OnResize','OneToMany','OpenViews','OpenWindow','PageCount','PageHeight', - 'PageOrder','PageWidth','Pages','Panel','PanelLink','Parent', - 'ParentAlias','ParentClass','Partition','PasswordChar','Picture','ProcessID', - 'ProgID','ProjectHookClass','ProjectHookLibrary','Projects','ReadColors','ReadCycle', - 'ReadFiller','ReadLock','ReadMouse','ReadOnly','ReadSave','ReadSize', - 'ReadTimeout','RecordMark','RecordSource','RecordSourceType','Rect','RelationalExpr', - 'RelativeColumn','RelativeRow','ReleaseErase','ReleaseType','ReleaseWindows','Resizable', - 'RightToLeft','RowHeight','RowSource','RowSourceType','SCCProvider','SCCStatus', - 'SDIForm','ScaleMode','ScrollBars','SelLength','SelStart','SelText', - 'SelectOnEntry','Selected','SelectedBackColor','SelectedForeColor','SelectedID','SelectedItemBackColor', - 'SelectedItemForeColor','SelfEdit','ServerClass','ServerClassLibrary','ServerHelpFile','ServerName', - 'ServerProject','ShowTips','ShowWindow','Sizable','Size','Size', - 'Size','Skip','SkipForm','Sorted','SourceType','Sparse', - 'SpecialEffect','SpinnerHighValue','SpinnerLowValue','SplitBar','StartMode','StatusBarText', - 'Stretch','StrictDateEntry','Style','SystemRefCount','TabIndex','TabStop', - 'TabStretch','TabStyle','Tabhit','Tabs','Tag','TerminateRead', - 'ThreadID','TitleBar','ToolTipText','Top','TopIndex','TopItemId', - 'TypeLibCLSID','TypeLibDesc','TypeLibName','UnlockDataSource','Value','ValueDirty', - 'VersionComments','VersionCompany','VersionCopyright','VersionDescription','VersionNumber','VersionProduct', - 'VersionTrademarks','View','ViewPortHeight','ViewPortLeft','ViewPortTop','ViewPortWidth', - 'Visible','VscrollSmallChange','WasActive','WasOpen','WhatsThisButton','WhatsThisHelp', - 'WhatsThisHelpID','Width','WindowList','WindowNTIList','WindowState','WindowType', - 'WordWrap','ZOrderSet','ActiveDoc','Checkbox','Column','ComboBox', - 'CommandButton','CommandGroup','Container','Control','Cursor','Custom', - 'DataEnvironment','EditBox','Empty','FontClass','Form','Formset', - 'General','Grid','Header','HyperLink','Image','Label', - 'ListBox','Memo','OleBaseControl','OleBoundControl','OleClassIDispOut','OleControl', - 'OptionButton','OptionGroup','Page','PageFrame','ProjectHook','RectClass', - 'Relation','Session','Shape','Spinner','TextBox' ,'Toolbar' - ), - ), - 'SYMBOLS' => array( - "!", "@", "$", "%", - "(", ")", "{", "}", "[", "]", - "-", "+", "*", "/", - "=", "<", ">", - ":", ";", ",", ".", "&", - "?", "??", "???" - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: blue;', - 2 => 'color: blue;', - 3 => 'color: blue;', - 4 => 'color: blue;' - ), - 'COMMENTS' => array( - 1 => 'color: green; font-style: italic;', - 2 => 'color: green; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: blue;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: blue;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/visualprolog.php b/library/Vendors/geshi/geshi/visualprolog.php deleted file mode 100644 index 5afd7de8..00000000 --- a/library/Vendors/geshi/geshi/visualprolog.php +++ /dev/null @@ -1,129 +0,0 @@ - 'Visual Prolog', - 'COMMENT_SINGLE' => array(1 => '%'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'HARDQUOTE' => array('@"', '"'), - 'HARDESCAPE' => array('""'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'clauses','constants','constructors','delegate','domains','facts', - 'goal','guards','inherits','monitor','namespace','open', - 'predicates','properties','resolve','supports' - ), - 2 => array( - 'align','and','anyflow','as','bitsize','catch','determ','digits', - 'div','do','else','elseif','erroneous','externally','failure', - 'finally','from','language','mod','multi','nondeterm','or', - 'procedure','quot','rem','single','then','to' - ), - 3 => array( - '#bininclude','#else','#elseif','#endif','#error','#export', - '#externally','#if','#import','#include','#message','#options', - '#orrequires','#requires','#then','#warning' - ), - ), - 'SYMBOLS' => array( - '+', '-', '*', '?', '=', '/', '>', '<', '^', '!', ':', '(', ')', '{', '}', '[', ']' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => true, - 1 => true, - 2 => true, - 3 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #808000;', - 2 => 'color: #333399;', - 3 => 'color: #800080;', - ), - 'COMMENTS' => array( - 1 => 'color: #AA77BD', - 'MULTI' => 'color: #AA77BD' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #008080;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #00B7B7;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000FF;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 0 => 'color: #008000;', - 1 => 'color: #808000;', - 2 => 'color: #333399;', - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => ':', - 2 => '::' - ), - 'REGEXPS' => array( - 0 => "(?)[A-Z_]\w*(?!\w)", - 1 => "\\b(end\\s+)?(implement|class|interface)\\b", - 2 => "\\b(end\\s+)?(foreach|if|try)\\b", - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/library/Vendors/geshi/geshi/whitespace.php b/library/Vendors/geshi/geshi/whitespace.php deleted file mode 100644 index c47775d4..00000000 --- a/library/Vendors/geshi/geshi/whitespace.php +++ /dev/null @@ -1,121 +0,0 @@ - 'Whitespace', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - 3 => "/[^\n\x20\x09]+/s" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - ), - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - ), - 'COMMENTS' => array( - 3 => 'color: #666666; font-style: italic;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - ), - 'ESCAPE_CHAR' => array( - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 2 => 'background-color: #FF9999;', - 3 => 'background-color: #9999FF;' - ) - ), - 'URLS' => array( - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 2 => array( - GESHI_SEARCH => "(? " ", - GESHI_MODIFIERS => 's', - GESHI_BEFORE => "", - GESHI_AFTER => "" - ), - 3 => array( - GESHI_SEARCH => "\x09", - GESHI_REPLACE => " ", - GESHI_MODIFIERS => 's', - GESHI_BEFORE => "", - GESHI_AFTER => "" - ), - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'KEYWORDS' => GESHI_NEVER, - 'SYMBOLS' => GESHI_NEVER, - 'STRINGS' => GESHI_NEVER, -// 'REGEXPS' => GESHI_NEVER, - 'NUMBERS' => GESHI_NEVER - ) - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/whois.php b/library/Vendors/geshi/geshi/whois.php deleted file mode 100644 index 9b4b2417..00000000 --- a/library/Vendors/geshi/geshi/whois.php +++ /dev/null @@ -1,181 +0,0 @@ - 'Whois (RPSL format)', - 'COMMENT_SINGLE' => array(1 => '% ', 2 => '%ERROR:'), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - //Description - 3 => '/(?:(?<=^remarks:)|(?<=^descr:))(.|\n\s)*$/mi', - - //Contact Details - 4 => '/(?<=^address:)(.|\n\s)*$/mi', - 5 => '/\+\d+(?:(?:\s\(\d+(\s\d+)*\))?(?:\s\d+)+|-\d+-\d+)/', - 6 => '/\b(?!-|\.)[\w\-\.]+(?!-|\.)@((?!-)[\w\-]+\.)+\w+\b/', - - //IP, Networks and AS information\links - 7 => '/\b(? '/\bAS\d+\b/' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( //Object Types - 'as-block','as-set','aut-num','domain','filter-set','inet-rtr', - 'inet6num','inetnum','irt','key-cert','limerick','mntner', - 'organisation','peering-set','person','poem','role','route-set', - 'route','route6','rtr-set' - ), - 2 => array( //Field Types - 'abuse-mailbox','address','admin-c','aggr-bndry','aggr-mtd','alias', - 'as-block','as-name','as-set','aut-num','auth','author','certif', - 'changed','components','country','default','descr','dom-net', - 'domain','ds-rdata','e-mail','encryption','export','export-comps', - 'fax-no','filter','filter-set','fingerpr','form','holes','ifaddr', - 'import','inet-rtr','inet6num','inetnum','inject','interface','irt', - 'irt-nfy','key-cert','limerick','local-as','mbrs-by-ref', - 'member-of','members','method','mnt-by','mnt-domains','mnt-irt', - 'mnt-lower','mnt-nfy','mnt-ref','mnt-routes','mntner','mp-default', - 'mp-export','mp-filter','mp-import','mp-members','mp-peer', - 'mp-peering','netname','nic-hdl','notify','nserver','org', - 'org-name','org-type','organisation','origin','owner','peer', - 'peering','peering-set','person','phone','poem','ref-nfy','refer', - 'referral-by','remarks','rev-srv','role','route','route-set', - 'route6','rtr-set','signature','source','status','sub-dom','tech-c', - 'text','upd-to','zone-c' - ), - 3 => array( //RPSL reserved - 'accept','action','and','announce','any','as-any','at','atomic', - 'except','from','inbound','into','networks','not','or','outbound', - 'peeras','refine','rs-any','to' - ) - ), - 'SYMBOLS' => array( - ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000FF; font-weight: bold;', - 2 => 'color: #000080; font-weight: bold;', - 3 => 'color: #990000; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #666666; font-style: italic;', - 3 => 'color: #404080;', - 4 => 'color: #408040;', - 5 => 'color: #408040;', - 6 => 'color: #408040;', - 7 => 'color: #804040;', - 8 => 'color: #804040;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => '', - ), - 'NUMBERS' => array( - 0 => 'color: #000080;', - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #0000FF;' - ), - 'REGEXPS' => array( - 0 => 'color: #000088;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.irr.net/docs/rpsl.html' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Variables - 0 => "[\\$]{1,2}[a-zA-Z_][a-zA-Z0-9_]*" - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 1 => array( - 'DISALLOWED_BEFORE' => '(?<=\A |\A \n(?m:^)|\n\n(?m:^))' - ), - 2 => array( - 'DISALLOWED_BEFORE' => '(?m:^)' - ) - ), - 'ENABLE_FLAGS' => array( - 'BRACKETS' => GESHI_NEVER, - 'SYMBOLS' => GESHI_NEVER, - 'BRACKETS' => GESHI_NEVER, - 'STRINGS' => GESHI_NEVER, - 'ESCAPE_CHAR' => GESHI_NEVER, - 'NUMBERS' => GESHI_NEVER, - 'METHODS' => GESHI_NEVER, - 'SCRIPT' => GESHI_NEVER - ) - ), -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/winbatch.php b/library/Vendors/geshi/geshi/winbatch.php deleted file mode 100644 index 949e61c1..00000000 --- a/library/Vendors/geshi/geshi/winbatch.php +++ /dev/null @@ -1,369 +0,0 @@ - 'Winbatch', - 'COMMENT_SINGLE' => array(1 => ';', 2 => ':'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"', '`'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'While', 'To', 'Then', 'Switch', 'Select', 'Return', 'Next', 'IntControl', 'Include', 'In', 'If', - 'Goto', 'GoSub', 'ForEach', 'For', 'Exit', 'Execute', 'ErrorMode', 'EndWhile', 'EndSwitch', '#EndSubRoutine', - 'EndSelect', 'EndIf', '#EEndFunction', 'EndFor', 'End', 'Else', 'DropWild', 'Drop', '#DefineSubRoutine', - '#DefineFunction', 'Debug', 'Continue', 'Case', 'CallExt', 'Call', 'By', 'BreakPoint', 'Break' - ), - 2 => array( - 'ZOOMED', 'YES', 'WORD4', 'WORD2', 'WORD1', 'WHOLESECTION', 'WAIT', 'UNSORTED', 'UNCHECK', 'TRUE', 'TILE', - 'TAB', 'STRING', 'STACK', 'SPC2NET', 'SORTED', 'SOK', 'SNET2PC', 'SINGLE', 'SHIFT', 'SERVER', 'SERRWINSOCK', - 'SERRVOICE', 'SERRSOCKET', 'SERRSERVICE', 'SERRSELECT', 'SERRPARAM', 'SERROUTOFMEM', 'SERRNOTFOUND', 'SERRNOCONN', - 'SERRNOANSWER', 'SERRMUSTWAIT', 'SERRIPADDR', 'SERRHOSTNAME', 'SERRFAILURE', 'SERRBUSY', 'SCROLLLOCK', 'SCANCEL', - 'SAVE', 'SALREADY', 'ROWS', 'REGUSERS', 'REGROOT', 'REGMACHINE', 'REGCURRENT', 'REGCLASSES', 'RDBLCLICK', 'RCLICK', - 'RBUTTON', 'RAD2DEG', 'QSUCCESSINFO', 'QSUCCESS', 'QSTILLEX', 'QROLLBACK', 'QNULL', 'QNODATA', 'QNEXT', 'QNEEDDATA', - 'QFIRST', 'QCOMMIT', 'QBADHANDLE', 'PRINTER', 'PLANCKJOULES', 'PLANCKERGS', 'PI', 'PARSEONLY', 'PARSEC', 'P3ERRREPLY', - 'OPEN', 'ON', 'OFF', 'NUMLOCK', 'NOWAIT', 'NOTIFY', 'NORMAL', 'NORESIZE', 'NONE', 'NO', 'NCSAFORMAT', 'MULTIPLE', - 'MSFORMAT', 'MPLAYRDBLCK', 'MPLAYRCLK', 'MPLAYRBUTTON', 'MPLAYMDBLCK', 'MPLAYMCLK', 'MPLAYMBUTTON', 'MPLAYLDBLCK', - 'MPLAYLCLK', 'MPLAYLBUTTON', 'MINOR', 'MDBLCLICK', 'MCLICK', 'MBYESNO', 'MBUTTON', 'MBOKCANCEL', 'MAJOR', 'MAGFIELD', - 'LOCALGROUP', 'LIGHTMTPS', 'LIGHTMPS', 'LF', 'LDBLCLICK', 'LCLICK', 'LBUTTON', 'LAFFDBERROR', 'ICON', 'HTTPS', 'HTTP', - 'HNOHEADER', 'HMETHODPOST', 'HMETHODGET', 'HIDDEN', 'HHEADERONLY', 'HHEADER', 'GRAVITATION', 'GOPHER', 'GOLDENRATIO', - 'GMTSEC', 'GLOBALGROUP', 'GFTSEC', 'GETPROCID', 'GETEXITCODE', 'FWDSCAN', 'FTPPASSIVE', 'FTP', 'FLOAT8', 'FARADAY', - 'FALSE', 'EXTENDED', 'EULERS', 'ENABLE', 'ELECTRIC', 'DRIVE', 'DISABLE', 'DESCENDING', 'DEG2RAD', 'DEFAULT', 'CTRL', - 'CRLF', 'CR', 'COMMONFORMAT', 'COLUMNS', 'CHECK', 'CAPSLOCK', 'CANCEL', 'BOLTZMANN', 'BACKSCAN', 'AVOGADRO', 'ATTR_X', - 'ATTR_T', 'ATTR_SY', 'ATTR_SH', 'ATTR_RO', 'ATTR_RI', 'ATTR_P', 'ATTR_IC', 'ATTR_H', 'ATTR_DM', 'ATTR_DI', 'ATTR_DC', - 'ATTR_CI', 'ATTR_A', 'ASCENDING', 'ARRANGE', 'AMC', 'ACC_WRITE', 'ACC_READ_NT', 'ACC_READ_95', 'ACC_READ', 'ACC_PRINT_NT', - 'ACC_PMANG_NT', 'ACC_PFULL_NT', 'ACC_LIST', 'ACC_FULL_NT', 'ACC_FULL_95', 'ACC_DELETE', 'ACC_CREATE', 'ACC_CONTROL', - 'ACC_CHNG_NT', 'ACC_ATTRIB', 'ABOVEICONS' - ), - 3 => array( - 'Yields', 'Yield', 'WinZoom', 'WinWaitExist', 'WinWaitClose', 'WinWaitChild', 'WinVersion', 'WinTitle', 'WinSysInfo', - 'WinState', 'WinShow', 'WinResources', 'WinPositionChild', 'WinPosition', 'WinPlaceSet', 'WinPlaceGet', 'WinPlaceChild', - 'WinPlace', 'WinParmSet', 'WinParmGet', 'WinName', 'WinMetrics', 'WinItemProcId', 'WinItemNameId', 'WinItemizeEx', - 'WinItemize', 'WinItemChild', 'WinIsDos', 'WinIdGet', 'WinIconize', 'WinHide', 'WinHelp', 'WinGetactive', 'WinExistchild', - 'WinExist', 'WinExename', 'WinConfig', 'WinClosenot', 'WinClose', 'WinArrange', 'WinActivechild', 'WinActivchild', - 'WinActivate', 'WebVerifyCard', 'WebSetTimeout', 'WebParamSize', 'WebParamNames', 'WebParamFile', 'WebParamData', - 'WebParamBuf', 'WebOutFile', 'WebOutBinary', 'WebOut', 'WebDumpError', 'WebDatData', 'WebCounter', 'WebConSize', 'WebConData', - 'WebConBuf', 'WebCmdData', 'WebBaseConv', 'Wallpaper', 'WaitForKeyEX', 'WaitForKey', 'VersionDLL', 'Version', 'VarType', - 'TimeYmdHms', 'TimeWait', 'TimeSubtract', 'TimeJulToYmd', 'TimeJulianDay', 'TimeDiffSecs', 'TimeDiffDays', 'TimeDiff', 'TimeDelay', - 'TimeDate', 'TimeAdd', 'TextSelect', 'TextBoxSort', 'TextBox', 'Terminate', 'Tanh', 'Tan', 'SysParamInfo', 'SvcWaitForCmd', - 'SvcSetState', 'SvcSetAccept', 'StrUpper', 'StrTrim', 'StrSubWild', 'StrSub', 'StrScan', 'StrReplace', 'StrLower', 'StrLenWild', - 'StrLen', 'StrIndexWild', 'StrIndexNC', 'StrIndex', 'StriCmp', 'StrFixLeft', 'StrFixCharsL', 'StrFixChars', 'StrFix', 'StrFill', - 'StrCnt', 'StrCmp', 'StrClean', 'StrCharCount', 'StrCat', 'StrByteCount', 'Sqrt', 'SoundVolume', 'Sounds', 'Snapshot', 'Sinh', 'Sin', - 'ShortCutMake', 'ShortCutInfo', 'ShortCutExtra', 'ShortCutEdit', 'ShortCutDir', 'ShellExecute', 'SendMenusToEx', 'SendMenusTo', - 'SendKeysTo', 'SendKeysChild', 'SendKey', 'RunZoomWait', 'RunZoom', 'RunWithLogon', 'RunWait', 'RunShell', 'RunIconWait', - 'RunIcon', 'RunHideWait', 'RunHide', 'RunExit', 'RunEnviron', 'Run', 'RtStatus', 'Reload', 'RegUnloadHive', 'RegSetValue', - 'RegSetQword', 'RegSetMulSz', 'RegSetExpSz', 'RegSetEx', 'RegSetDword', 'RegSetBin', 'RegQueryValue', 'RegQueryStr', - 'RegQueryQword', 'RegQueryMulSz', 'RegQueryKeys', 'RegQueryKeyLastWriteTime', 'RegQueryKey', 'RegQueryItem', 'RegQueryExpSz', - 'RegQueryEx', 'RegQueryDword', 'RegQueryBin', 'RegOpenKeyEx', 'RegOpenKey', 'RegOpenFlags', 'RegLoadHive', 'RegExistValue', - 'RegExistKey', 'RegEntryType', 'RegDelValue', 'RegDeleteKey', 'RegCreateKey', 'RegConnect', 'RegCloseKey', 'RegApp', 'Random', - 'PtrPersistent', 'PtrGlobalDefine', 'PtrGlobal', 'Print', 'PlayWaveform', 'PlayMidi', 'PlayMedia', 'PipeServerWrite', 'PipeServerRead', - 'PipeServerCreate', 'PipeServerClose', 'PipeInfo', 'PipeClientSendRecvData', 'PipeClientOpen', 'PipeClientClose', 'Pause', - 'ParseData', 'ObjectTypeGet', 'ObjectType', 'ObjectOpen', 'ObjectGet', 'ObjectEventRemove', 'ObjectEventAdd', - 'ObjectCreate', 'ObjectConstToArray', 'ObjectConstantsGet', 'ObjectCollectionOpen', 'ObjectCollectionNext', - 'ObjectCollectionClose', 'ObjectClose', 'ObjectAccess', 'Num2Char', 'NetInfo', 'MsgTextGet', 'MousePlay', 'MouseMove', 'MouseInfo', - 'MouseDrag', 'MouseCoords', 'MouseClickBtn', 'MouseClick', 'mod', 'Min', 'Message', 'Max', 'Loge', 'LogDisk', 'Log10', 'LastError', - 'KeyToggleSet', 'KeyToggleGet', 'ItemSortNc', 'ItemSort', 'ItemSelect', 'ItemReplace', 'ItemRemove', 'ItemLocate', 'ItemInsert', - 'ItemExtractCSV', 'ItemExtract', 'ItemCountCSV', 'ItemCount', 'IsNumber', 'IsLicensed', 'IsKeyDown', 'IsInt', 'IsFloat', 'IsDefined', - 'Int', 'InstallFile', 'IniWritePvt', 'IniWrite', 'IniReadPvt', 'IniRead', 'IniItemizePvt', 'IniItemize', 'IniDeletePvt', 'IniDelete', - 'IgnoreInput', 'IconReplace', 'IconInfo', 'IconExtract', 'IconArrange', 'GetTickCount', 'GetObject', 'GetExactTime', 'Floor', - 'FindWindow', 'FileYmdHms', 'FileWrite', 'FileVerInfo', 'FileTimeTouch', 'FileTimeSetEx', 'FileTimeSet', 'FileTimeGetEx', - 'FileTimeGet', 'FileTimeCode', 'FileSizeEx', 'FileSize', 'FileRoot', 'FileRename', 'FileRead', 'FilePutW', 'FilePut', 'FilePath', - 'FileOpen', 'FileNameShort', 'FileNameLong', 'FileNameEval2', 'FileNameEval1', 'FileMoveAttr', 'FileMove', 'FileMapName', - 'FileLocate', 'FileItemPath', 'FileItemize', 'FileInfoToArray', 'FileGetW', 'FileGet', 'FileFullname', 'FileExtension', 'FileExist', - 'FileDelete', 'FileCreateTemp', 'FileCopyAttr', 'FileCopy', 'FileCompare', 'FileClose', 'FileBaseName', 'FileAttrSetEx', - 'FileAttrSet', 'FileAttrGetEx', 'FileAttrGet', 'FileAppend', 'Fabs', 'ExtractAttachedFile', 'Exp', 'ExeTypeInfo', 'Exclusive', - 'EnvItemize', 'EnvironSet', 'Environment', 'EndSession', 'DosVersion', 'DllLoad', 'DllLastError', 'DllHwnd', 'DllHinst', - 'DllFree', 'DllCallCDecl', 'DllCall', 'Display', 'DiskVolinfo', 'DiskSize', 'DiskScan', 'DiskInfo', 'DiskFree', 'DiskExist', - 'DirWindows', 'DirSize', 'DirScript', 'DirRename', 'DirRemove', 'DirMake', 'DirItemize', 'DirInfoToArray', 'DirHome', 'DirGet', - 'DirExist', 'DirChange', 'DirAttrSetEx', 'DirAttrSet', 'DirAttrGetEx', 'DirAttrGet', 'DialogProcOptions', 'DialogObject', - 'DialogControlState', 'DialogControlSet', 'DialogControlGet', 'DialogBox', 'Dialog', 'Delay', 'Decimals', 'DebugTrace', - 'DebugData', 'DDETimeout', 'DDETerminate', 'DDERequest', 'DDEPoke', 'DDEInitiate', 'DDEExecute', 'DateTime', 'CurrFilepath', - 'CurrentPath', 'CurrentFile', 'CreateObject', 'Cosh', 'Cos', 'ClipPut', 'ClipHasFormat', 'ClipGetEx', 'ClipGet', 'ClipAppend', - 'ChrUnicodeToString', 'ChrUnicodeToHex', 'ChrStringToUnicode', 'ChrSetCodepage', 'ChrHexToUnicode', 'ChrGetCodepage', - 'Char2Num', 'Ceiling', 'ButtonNames', 'BoxUpdates', 'BoxTitle', 'BoxTextFont', 'BoxTextColor', 'BoxText', 'BoxShut', 'BoxPen', - 'BoxOpen', 'BoxNew', 'BoxMapmode', 'BoxesUp', 'BoxDrawText', 'BoxDrawRect', 'BoxDrawLine', 'BoxDrawCircle', 'BoxDestroy', - 'BoxDataTag', 'BoxDataClear', 'BoxColor', 'BoxCaption', 'BoxButtonWait', 'BoxButtonStat', 'BoxButtonKill', 'BoxButtonDraw', - 'BoxBitMap', 'BinaryXor', 'BinaryXlate', 'BinaryWriteEx', 'BinaryWrite', 'BinaryTagRepl', 'BinaryTagLen', 'BinaryTagInit', - 'BinaryTagIndex', 'BinaryTagFind', 'BinaryTagExtr', 'BinaryStrCnt', 'BinarySort', 'BinaryReplace', 'BinaryReadEx', - 'BinaryRead', 'BinaryPokeStrW', 'BinaryPokeStr', 'BinaryPokeHex', 'BinaryPokeFlt', 'BinaryPoke4', 'BinaryPoke2', 'BinaryPoke', - 'BinaryPeekStrW', 'BinaryPeekStr', 'BinaryPeekHex', 'BinaryPeekFlt', 'BinaryPeek4', 'BinaryPeek2', 'BinaryPeek', 'BinaryOr', - 'BinaryOleType', 'BinaryIndexNc', 'BinaryIndexEx', 'BinaryIndexBin', 'BinaryIndex', 'BinaryIncrFlt', 'BinaryIncr4', - 'BinaryIncr2', 'BinaryIncr', 'BinaryHashRec', 'BinaryFree', 'BinaryEodSet', 'BinaryEodGet', 'BinaryCopy', 'BinaryConvert', - 'BinaryCompare', 'BinaryClipPut', 'BinaryClipGet', 'BinaryChecksum', 'BinaryBufInfo', 'BinaryAnd', 'BinaryAllocArray', - 'BinaryAlloc', 'Beep', 'Average', 'Atan', 'AskYesNo', 'AskTextbox', 'AskPassword', 'AskLine', 'AskItemlist', 'AskFont', - 'AskFiletext', 'AskFilename', 'AskDirectory', 'AskColor', 'Asin', 'ArrInitialize', 'ArrInfo', 'ArrDimension', - 'Arrayize', 'ArrayFilePutCSV', 'ArrayFilePut', 'ArrayFileGetCSV', 'ArrayFileGet', 'AppWaitClose', 'AppExist', 'AddExtender', - 'Acos', 'Abs', 'About' - ), - 4 => array( - 'zZipFiles', 'zVersionInfo', 'zVersion', 'zUnZipFiles', 'zSetPortBit', 'zRPortShift', 'zPortOut', 'zPortIn', 'zNotPortBit', - 'zLPortShift', 'zGetPortBit', 'zClrPortBit', 'xVerifyCCard', 'xSendMessage', 'xMessageBox', 'xMemCompact', 'xHex', 'xGetElapsed', - 'xGetChildHwnd', 'xExtenderInfo', 'xEnumStreams', 'xEjectMedia', 'xDriveReady', 'xDiskLabelGet', 'xCursorSet', 'xBaseConvert', - 'wxPing', 'wxParmSet', 'wxParmGet', 'wxMsgSetHdr', 'wxMsgGetHdr', 'wxMsgGetBody', 'wxHost2Addr', 'wxGetLastErr', 'wxGetInfo', - 'wxGetErrDesc', 'wxAddr2Host', 'wtsWaitSystemEvent', 'wtsVersion', 'wtsTerminateProcess', 'wtsShutdownSystem', 'wtsSendMessage', - 'wtsQuerySessionInfo', 'wtsProcIdToSessId', 'wtsLogoffSession', 'wtsLastErrMsg', 'wtsIsTSEnabled', 'wtsIsCitrixEnabled', - 'wtsGetActiveConsoleSessId', 'wtsEnumSessions', 'wtsEnumProcesses', 'wtsDisconnectSession', 'wnWrkGroups', 'wnVersion', 'wntWtsUserSet', - 'wntWtsUserGet', 'wntVersion', 'wntUserSidChk', 'wntUserSetDat', 'wntUserRename', 'wntUserProps', 'wntUserList', 'wntUserInfo', - 'wntUserGetDat', 'wntUserFiles', 'wntUserExist', 'wntUserDel', 'wntUserAddDat', 'wntUserAdd', 'wntSvcStatus', 'wntSvcStart', - 'wntSvcList', 'wntSvcDelete', 'wntSvcCreate', 'wntSvcControl', 'wntSvcCfgSet', 'wntSvcCfgGet', 'wntShutdown', 'wntShareUsers', - 'wntShareSet', 'wntShareList', 'wntShareInfo', 'wntShareDel', 'wntShareAdd', 'wntServiceInf', 'wntServiceAt', 'wntServerType', - 'wntServerList', 'wntServerInfo', 'wntSecurityGet', 'wntRunAsUser', 'wntResources2', 'wntResources', 'wntRemoteTime', 'wntRasUserSet', - 'wntRasUserGet', 'wntProfileInfo', 'wntProfileDel', 'wntPrivUsers', 'wntPrivList', 'wntPrivGet', 'wntPrivDel', 'wntPrivAdd', - 'wntOwnerSet', 'wntOwnerGet', 'wntMemberSet', 'wntMemberLst2', 'wntMemberList', 'wntMemberGrps', 'wntMemberGet', 'wntMemberDel', - 'wntLsaPolSet', 'wntLsaPolGet', 'wntListGroups', 'wntLastErrMsg', 'wntGroupRen', 'wntGroupInfo', 'wntGroupEdit', 'wntGroupDel', - 'wntGroupAdd', 'wntGetUser', 'wntGetDrive', 'wntGetDc', 'wntGetCon', 'wntFileUsers', 'wntFilesOpen', 'wntFileClose', 'wntEventWrite', - 'wntEventLog', 'wntDomainSync', 'wntDirDialog', 'wntDfsList', 'wntDfsGetInfo', 'wntCurrUsers', 'wntChgPswd', 'wntCancelCon', - 'wntAuditMod', 'wntAuditList', 'wntAuditGet', 'wntAuditDel', 'wntAuditAdd2', 'wntAuditAdd', 'wntAddPrinter', 'wntAddDrive', - 'wntAcctPolSet', 'wntAcctPolGet', 'wntAcctList', 'wntAcctInfo', 'wntAccessMod', 'wntAccessList', 'wntAccessGet', 'wntAccessDel', - 'wntaccessadd2', 'wntAccessAdd', 'wnShares', 'wnSharePath', 'wnShareName', 'wnShareCnt', 'wnServers', 'wnRestore', 'wnNetNames', - 'wnGetUser', 'wnGetCon', 'wnGetCaps', 'wnDlgShare', 'wnDlgNoShare', 'wnDlgDiscon', 'wnDlgCon4', 'wnDlgCon3', 'wnDlgCon2', 'wnDlgCon', - 'wnDlgBrowse', 'wnDialog', 'wnCmptrInfo', 'wnCancelCon', 'wnAddCon', 'WaitSRQ', 'w9xVersion', 'w9xUserSetDat', 'w9xUserRename', - 'w9xUserprops', 'w9xUserList', 'w9xUserinfo', 'w9xUserGetDat', 'w9xUserExist', 'w9xUserDel', 'w9xUserAddDat', 'w9xUserAdd', 'w9xShareSet', - 'w9xShareInfo', 'w9xShareDel', 'w9xShareAdd', 'w9xServiceAt', 'w9xServerList', 'w9xRemoteTime', 'w9xOwnerGet', 'w9xMemberSet', - 'w9xMemberList', 'w9xMemberGrps', 'w9xMemberGet', 'w9xMemberDel', 'w9xListGroups', 'w9xGroupInfo', 'w9xGroupDel', 'w9xGroupAdd', - 'w9xGetDC', 'w9xFileUsers', 'w9xAccessList', 'w9xAccessGet', 'w9xAccessDel', 'w9xAccessAdd', 'w95Version', 'w95ShareUsers', - 'w95ShareSet', 'w95ShareList', 'w95ShareInfo', 'w95ShareDel', 'w95ShareAdd', 'w95ServiceInf', 'w95ServiceAt', 'w95ServerType', - 'w95ServerInfo', 'w95Resources', 'w95GetUser', 'w95GetDrive', 'w95GetCon', 'w95FileUsers', 'w95FileClose', 'w95DirDialog', - 'w95CancelCon', 'w95AddPrinter', 'w95AddDrive', 'w95AccessDel', 'w95AccessAdd', 'w3Version', 'w3PrtBrowse', 'w3NetGetUser', - 'w3NetDialog', 'w3GetCon', 'w3GetCaps', 'w3DirBrowse', 'w3CancelCon', 'w3AddCon', 'urlGetScheme', 'urlEncode', 'urlDecode', - 'tVersion', 'tSetPriority', 'TriggerList', 'Trigger', 'tRemoteConn', 'tOpenProc', 'tListProc', 'tListMod', 'tKillProc', 'tGetProcInfo', - 'tGetPriority', 'tGetModInfo', 'tGetLastError', 'tGetData', 'TestSys', 'TestSRQ', 'tCountProc', 'tCompatible', 'tCloseProc', - 'tBrowseCntrs', 'sSendString', 'sSendNum', 'sSendLine', 'sSendBinary', 'sRecvNum', 'sRecvLine', 'sRecvBinary', 'SrchVersion', - 'SrchNext', 'SrchInit', 'SrchFree', 'sOpen', 'sOK2Send', 'sOK2Recv', 'smtpSendText', 'smtpSendFile', 'sListen', 'SetRWLS', - 'SendSetup', 'SendLLO', 'SendList', 'SendIFC', 'SendDataBytes', 'SendCmds', 'Send', 'sConnect', 'sClose', 'SByteOrder32', - 'sByteOrder16', 'sAccept', 'rRegVersion', 'rRegSearch', 'ResetSys', 'ReceiveSetup', 'Receive', 'ReadStsByte', 'RcvRespMsg', - 'RasVersion', 'RasTypeSize', 'RasRename', 'RasNumCons', 'RasNameValid', 'RasListActCon', 'RasItemize', 'RasHangUp', 'RasGetLastErr', - 'RasGetConStat', 'RasEntrySet', 'RasEntryInfo', 'RasEntryExist', 'RasEntryDel', 'RasEntryAdd', 'RasDialInfo', 'RasDial', - 'RasCopy', 'RasConStatus', 'qVersionInfo', 'qTransact', 'qTables', 'qSpecial', 'qSetConnOpt', 'qNumRsltCol', 'qNativeSql', 'qLastCode', - 'qGetData', 'qFreeStmt', 'qFreeEnv', 'qFreeConnect', 'qFetch', 'qExecDirect', 'qError', 'qDriverList', 'qDriverCon', 'qDisconnect', - 'qDataSources', 'qConnect', 'qConfigError', 'qConfigData', 'qColumns', 'qBindCol', 'qAllocStmt', 'qAllocEnv', 'qAllocConnect', - 'pWaitFor', 'pVersionInfo', 'pTimeout', 'pSetPublish', 'pSetPrtInfo', 'pSetPrtAttrib', 'pSetDefPrtEx', 'pSetDefPrt', 'pSendFile', - 'pRecvFile', 'pPutString', 'pPutLine', 'pPutChar', 'pPutByte', 'pPutBinary', 'PPollUnconfig', 'PPollConfig', 'PPoll', 'pPeekChar', - 'pPeekByte', 'pPaperSizes', 'pPaperBins', 'pModemSReg', 'pModemParams', 'pModemInit', 'pModemHangUp', 'pModemDial', 'pModemControl', - 'pModemConnect', 'pModemCommand', 'pModemAnsRing', 'pModemAnsCall', 'pMediaTypes', 'pGetString', 'pGetPublish', 'pGetPrtList', - 'pGetPrtInfo', 'pGetPrtAttrib', 'pGetLine', 'pGetLastError', 'pGetErrorMsg', 'pGetErrorCode', 'pGetDefPrtInf', 'pGetChar', - 'pGetByte', 'pGetBinary', 'pDelPrtConn', 'pDelPrinter', 'pComOpen', 'pComModify', 'pComInfo', 'pComControl', 'pComClose', - 'pCheckSum', 'pCheckBinary', 'pCaptureOn', 'pCaptureOff', 'pCaptureLog', 'PassControl', 'pAddPrtConn', 'pAddPrinter', 'p3RecvText', - 'p3RecvFile', 'p3Peek', 'p3Open', 'p3GetReply', 'p3Delete', 'p3Count', 'p3Close', 'nwWhoAmI', 'nwVfyPassword', 'nwVersion', - 'nwSrvShutdown', 'nwSrvNLMMgr', 'nwSrvGenGUID', 'nwSrvExecNCF', 'nwSetVolLimit', 'nwSetSrvParam', 'nwSetSrvInfo', 'nwSetPrimServ', - 'nwSetPassword', 'nwSetOptions', 'nwSetFileInfo', 'nwSetDirLimit', 'nwSetDirInfo', 'nwSetContext', 'nwSetBcastMode', 'nwServerList', - 'nwSendBcastMsg', 'nwSearchObjects', 'nwSearchFilter', 'nwRenameObject', 'nwRemoveObject', 'nwReceiveBcastMsg', 'nwNameConvert', - 'nwMutateObject', 'nwMoveObject', 'nwModifyObject', 'nwMapDelete', 'nwMap', 'nwLogout', 'nwLogin', 'nwListUserGroups', - 'nwListObjects', 'nwListGroupMembers', 'nwLastErrMsg', 'nwIsUserInGroup', 'nwGetVolLimit', 'nwGetSrvStats', 'nwGetSrvParam', - 'nwGetSrvInfo', 'nwGetSrvCfg', 'nwGetOptions', 'nwGetObjValue', 'nwGetObjInfo', 'nwGetNLMInfo', 'nwGetMapped', 'nwGetFileInfo', - 'nwGetDirLimit', 'nwGetDirInfo', 'nwGetContext', 'nwGetConnInfo', 'nwGetCapture', 'nwGetBcastMode', 'nwGetAttrInfo', - 'nwDriveStatus', 'nwDrivePath', 'nwDetachFromServer', 'nwDelUserFromGroup', 'nwDelConnNum', 'nwCompareObject', 'nwClientInfo', - 'nwChgPassword', 'nwAttachToServer', 'nwAddUserToGroup', 'nwAddObject', 'netVersion', 'netResources', 'netGetUser', 'netGetCon', - 'netDirDialog', 'netCancelCon', 'netAddPrinter', 'netAddDrive', 'n4Version', 'n4UserGroups', 'n4UserGroupEx', 'n4SetPrimServ', - 'n4SetOptions', 'n4SetContextG', 'n4SetContext', 'n4ServerList', 'n4ServerInfo', 'n4ObjSearch', 'n4ObjRename', 'n4ObjOptions', - 'n4ObjMove', 'n4ObjGetVal', 'n4ObjectProps', 'n4ObjectList', 'n4ObjectInfo', 'n4ObjDelete', 'n4NameConvert', 'n4MsgsEndAll', - 'n4MsgsEnd', 'n4MemberSet', 'n4MemberGet', 'n4MemberDel', 'n4MapRoot', 'n4MapDir', 'n4MapDelete', 'n4Map', 'n4LogoutTree', - 'n4Logout', 'n4Login', 'n4GetUserName', 'n4GetUserId', 'n4GetUser', 'n4GetNetAddr', 'n4GetMapped', 'n4GetContext', - 'n4GetConnNum', 'n4FileUsers', 'n4FileTimeGet', 'n4FileAttrSet', 'n4FileAttrGet', 'n4DriveStatus', 'n4DrivePath', 'n4DirTimeGet', - 'n4DirAttrSet', 'n4DirAttrGet', 'n4Detach', 'n4ChgPassword', 'n4CapturePrt', 'n4CaptureGet', 'n4CaptureEnd', 'n4Attach', - 'n3Version', 'n3UserGroups', 'n3ServerList', 'n3ServerInfo', 'n3MsgsEndAll', 'n3MsgsEnd', 'n3MemberSet', 'n3MemberGet', - 'n3MemberDel', 'n3Maproot', 'n3Mapdir', 'n3Mapdelete', 'n3Map', 'n3Logout', 'n3GetUserId', 'n3GetUser', 'n3GetNetAddr', - 'n3GetMapped', 'n3GetConnNum', 'n3FileTimeGet', 'n3FileAttrSet', 'n3FileAttrGet', 'n3DriveStatus', 'n3DrivePath', - 'n3DirTimeGet', 'n3DirAttrSet', 'n3DirAttrGet', 'n3Detach', 'n3ChgPassword', 'n3CapturePrt', 'n3CaptureGet', - 'n3CaptureEnd', 'n3Attach', 'mVersion', 'mSyncMail', 'mSendMailEx', 'mSendMail', 'mrecvmail', 'mReadNextMsg', 'mLogOn', - 'mLogOff', 'mFindNext', 'mError', 'mCompatible', 'kVerInfo', 'kStatusInfo', 'kSendText', 'kSendFile', 'kManageImap4', - 'kInit', 'kGetMail', 'kExtra', 'kDest', 'kDeletePop3', 'iWriteDataBuf', 'iWriteData', 'iVersion', 'IUrlOpen', 'iUrlEncode', - 'iUrlDecode', 'iReadDataBuf', 'iReadData', 'ipVersion', 'ipPing', 'iPing', 'ipHost2Addr', 'ipGetLastErr', 'ipGetAddress', - 'iParseURL', 'ipAddr2Host', 'iOptionSet', 'iOptionGet', 'ImgWave', 'ImgVersion', 'ImgUnsharpMask', 'ImgThreshold', 'ImgSwirl', - 'ImgSpread', 'ImgSolarize', 'ImgShear', 'ImgSharpen', 'ImgShade', 'ImgScale', 'ImgSample', 'ImgRotate', 'ImgResize', - 'ImgReduceNoise', 'ImgRaise', 'ImgOilPaint', 'ImgNormalize', 'ImgNegate', 'ImgMotionBlur', 'ImgModulate', 'ImgMinify', - 'ImgMedianFilter', 'ImgMagnify', 'ImgLevel', 'ImgIsValid', 'ImgIsPalette', 'ImgIsMono', 'ImgIsGray', 'ImgInfo', 'ImgImplode', - 'ImgGetImageType', 'ImgGetColorCount', 'ImgGaussianBlur', 'ImgGamma', 'ImgFrame', 'ImgFlop', 'ImgFlip', 'ImgEqualize', - 'ImgEnhance', 'ImgEmboss', 'ImgCrop', 'ImgConvert', 'ImgContrast', 'ImgCompare', 'ImgColorize', 'ImgChop', 'ImgCharcoal', - 'ImgBorder', 'ImgBlur', 'ImgAddNoise', 'iLocFindNext', 'iLocFindInit', 'iHttpOpen', 'iHttpInit', 'iHttpHeaders', 'iHttpAccept', - 'iHostConnect', 'iHost2Addr', 'iGetResponse', 'iGetLastError', 'iGetIEVer', 'iGetConStatEx', 'iGetConState', 'iFtpRename', - 'iFtpPut', 'iFtpOpen', 'iFtpGet', 'iFtpFindNext', 'iFtpFindInit', 'iFtpDirRemove', 'iFtpDirMake', 'iFtpDirGet', 'iFtpDirChange', - 'iFtpDialog', 'iFtpDelete', 'iFtpCmd', 'iErrorDialog', 'iDialItemize', 'iDialHangUp', 'iDial', 'iCookieSet', 'iCookieGet', - 'iContentURL', 'iContentFile', 'iContentData', 'iClose', 'ibWrtf', 'ibWrt', 'ibWait', 'ibVersion', 'ibUnlock', 'ibTrg', - 'ibTmo', 'ibStop', 'ibStatus', 'ibSta', 'ibSre', 'ibSic', 'ibSad', 'ibRsv', 'ibRsp', 'ibRsc', 'ibRpp', 'ibRdf', 'ibRd', - 'ibPpc', 'ibPoke', 'ibPct', 'ibPad', 'ibOnl', 'ibMakeAddr', 'ibLock', 'ibLoc', 'ibLn', 'ibLines', 'ibIst', 'ibInit', - 'ibGts', 'ibGetSad', 'ibGetPad', 'ibFind', 'ibEvent', 'ibErr', 'ibEot', 'ibEos', 'iBegin', 'ibDma', 'ibDev', 'ibConfig', - 'ibCntl', 'ibCnt', 'ibCmda', 'ibCmd', 'ibClr', 'ibCac', 'ibBna', 'ibAsk', 'iAddr2Host', 'huge_Thousands', 'huge_Subtract', - 'huge_SetOptions', 'huge_Multiply', 'huge_GetLastError', 'huge_ExtenderInfo', 'huge_Divide', 'huge_Decimal', 'huge_Add', - 'httpStripHTML', 'httpRecvTextF', 'httpRecvText', 'httpRecvQuery', 'httpRecvQryF', 'httpRecvFile', 'httpGetServer', - 'httpGetQuery', 'httpGetPath', 'httpGetFile', 'httpGetDir', 'httpGetAnchor', 'httpFullPath', 'httpFirewall', 'httpAuth', - 'ftpRename', 'ftpQuote', 'ftpPut', 'ftpOpen', 'ftpList', 'ftpGet', 'ftpFirewall', 'ftpDelete', 'ftpClose', 'ftpChDir', - 'FindRQS', 'FindLstn', 'EnvSetVar', 'EnvPathDel', 'EnvPathChk', 'EnvPathAdd', 'EnvListVars', 'EnvGetVar', 'EnvGetInfo', - 'EnableRemote', 'EnableLocal', 'ehllapiWait', 'ehllapiVersion', 'ehllapiUninit', 'ehllapiStopKeyIntercept', 'ehllapiStopHostNotify', - 'ehllapiStopCloseIntercept', 'ehllapiStartKeyIntercept', 'ehllapiStartHostNotify', 'ehllapiStartCloseIntercept', - 'ehllapiSetWindowStatus', 'ehllapiSetSessionParams', 'ehllapiSetPSWindowName', 'ehllapiSetCursorLoc', 'ehllapiSendKey', - 'ehllapiSendFile', 'ehllapiSearchPS', 'ehllapiSearchField', 'ehllapiRunProfile', 'ehllapiResetSystem', 'ehllapiReserve', - 'ehllapiRelease', 'ehllapiReceiveFile', 'ehllapiQuerySystem', 'ehllapiQueryPSStatus', 'ehllapiQueryHostNotify', - 'ehllapiQueryFieldAttr', 'ehllapiQueryCursorLoc', 'ehllapiQueryCloseIntercept', 'ehllapiPostInterceptStatus', - 'ehllapiPause', 'ehllapiLastErrMsg', 'ehllapiInit', 'ehllapiGetWindowStatus', 'ehllapiGetPSHWND', 'ehllapiGetKey', - 'ehllapiFindFieldPos', 'ehllapiFindFieldLen', 'ehllapiDisconnectPS', 'ehllapiCvtRCToPos', 'ehllapiCvtPosToRC', - 'ehllapiCopyTextToPS', 'ehllapiCopyTextToField', 'ehllapiCopyTextFromPS', 'ehllapiCopyTextFromField', 'ehllapiCopyOIA', - 'ehllapiConnectPS', 'dunItemize', 'dunDisconnect', 'dunConnectEx', 'dunConnect', 'dsTestParam', 'dsSIDtoHexStr', 'dsSetSecProp', - 'dsSetProperty', 'dsSetPassword', 'dsSetObj', 'dsSetCredentX', 'dsSetCredent', 'dsRemFromGrp', 'dsRelSecObj', 'dsMoveObj', - 'dsIsObject', 'dsIsMemberGrp', 'dsIsContainer', 'dsGetUsersGrps', 'dsGetSecProp', 'dsGetPropName', 'dsGetProperty', - 'dsGetPrntPath', 'dsGetPrimGrp', 'dsGetMemGrp', 'dsGetInfo', 'dsGetClass', 'dsGetChldPath', 'dsFindPath', 'dsDeleteObj', - 'dsCreatSecObj', 'dsCreateObj', 'dsCopySecObj', 'dsAddToGrp', 'dsAclRemAce', 'dsAclOrderAce', 'dsAclGetAces', 'dsAclAddAce', - 'DevClearList', 'DevClear', 'dbTest', 'dbSwapColumns', 'dbSort', 'dbSetRecordField', 'dbSetOptions', 'dbSetErrorReporting', - 'dbSetEntireRecord', 'dbSetDelimiter', 'dbSave', 'dbOpen', 'dbNameColumn', 'dbMakeNewItem', 'dbInsertColumn', 'dbGetVersion', - 'dbGetSaveStatus', 'dbGetRecordField', 'dbGetRecordCount', 'dbGetNextItem', 'dbGetLastError', 'dbGetEntireRecord', - 'dbGetColumnType', 'dbGetColumnNumber', 'dbGetColumnName', 'dbGetColumnCount', 'dbFindRecord', 'dbExist', 'dbEasterEgg', - 'dbDeleteRecord', 'dbDeleteColumn', 'dbDebug', 'dbCookDatabases', 'dbClose', 'dbCloneRecord', 'dbBindCol', 'cWndState', - 'cWndinfo', 'cWndGetWndSpecName', 'cWndGetWndSpec', 'cWndexist', 'cWndByWndSpecName', 'cWndByWndSpec', 'cWndbyseq', - 'cWndbyname', 'cWndbyid', 'cWndbyclass', 'cWinIDConvert', 'cVersionInfo', 'cVendorId', 'cSetWndText', 'cSetUpDownPos', - 'cSetTvItem', 'cSetTrackPos', 'cSetTabItem', 'cSetLvItem', 'cSetLbItemEx', 'cSetLbItem', 'cSetIpAddr', 'cSetFocus', - 'cSetEditText', 'cSetDtpDate', 'cSetCbItem', 'cSetCalDate', 'cSendMessage', 'cRadioButton', 'cPostMessage', 'cPostButton', - 'cMemStat', 'cGetWndCursor', 'cGetUpDownPos', 'cGetUpDownMin', 'cGetUpDownMax', 'cGetTVItem', 'cGetTrackPos', 'cGetTrackMin', - 'cGetTrackMax', 'cGetTbText', 'cGetSbText', 'cGetLvText', 'cGetLvSelText', 'cGetLvFocText', 'cGetLvDdtText', 'cGetLvColText', - 'cGetLbText', 'cGetLbSelText', 'cGetLbCount', 'cGetIpAddr', 'cGetInfo', 'cGetHrText', 'cGetFocus', 'cGetEditText', 'cGetDtpDate', - 'cGetControlImageCRC', 'cGetCBText', 'cGetCbCount', 'cGetCalDate', 'cFindByName', 'cFindByClass', 'cEnablestate', 'cDblClickItem', - 'cCpuSupt', 'cCpuSpeed', 'cCpuIdExt', 'cCpuId', 'cCpuFeat', 'cCpuBenchmark', 'cCloneCheck', 'cClickToolbar', 'cClickButton', - 'cClearTvItem', 'cClearLvItem', 'cClearLbAll', 'cCheckbox', 'aVersion', 'aStatusbar', 'aShellFolder', 'aMsgTimeout', 'AllSPoll', - 'aGetLastError', 'aFileRename', 'aFileMove', 'aFileDelete', 'aFileCopy' - ), - 5 => array( - 'wWordRight', 'wWordLeft', 'wWinTile', 'wWinRestore', 'wWinNext', 'wWinMinimize', 'wWinMaximize', 'wWinCloseAll', 'wWinClose', - 'wWinCascade', 'wWinArricons', 'wViewOutput', 'wViewOptions', 'wViewHtml', 'wUpperCase', 'wUpline', 'wUndo', 'wTopOfFile', 'wToggleIns', - 'wTab', 'wStatusMsg', 'wStartSel', 'wSpellcheck', 'wSetProject', 'wSetPrefs', 'wSetColblk', 'wSetBookmark', 'wSelWordRight', - 'wSelWordLeft', 'wSelUp', 'wSelTop', 'wSelRight', 'wSelPgUp', 'wSelPgDn', 'wSelLeft', 'wSelInfo', 'wSelHome', 'wSelEnd', 'wSelectAll', - 'wSelDown', 'wSelBottom', 'wRunRebuild', 'wRunMake', 'wRunExecute', 'wRunDebug', 'wRunConfig', 'wRunCompile', 'wRunCommand', 'wRight', - 'wRepeat', 'wRedo', 'wRecord', 'wProperties', 'wPrintDirect', 'wPrinSetup', 'wPrevError', 'wPaste', 'wPageUp', 'wPageDown', 'wNextError', - 'wNewLine', 'wLowerCase', 'wLineCount', 'wLeft', 'wInvertCase', 'wInsString', 'wInsLine', 'wHome', 'wHelpKeyword', 'wHelpKeybrd', - 'wHelpIndex', 'wHelpHelp', 'wHelpCmds', 'wHelpAbout', 'wGotoLine', 'wGotoCol', 'wGetWrap', 'wGetWord', 'wGetUndo', 'wGetSelstate', - 'wGetRedo', 'wGetOutput', 'wGetModified', 'wGetLineNo', 'wGetIns', 'wGetFilename', 'wGetColNo', 'wGetChar', 'wFtpOpen', 'wFindNext', - 'wFindInFiles', 'wFind', 'wFileSaveAs', 'wFileSave', 'wFileRevert', 'wFilePrint', 'wFilePgSetup', 'wFileOpen', 'wFileNew', 'wFileMerge', - 'wFileList', 'wFileExit', 'wEndSel', 'wEndOfFile', 'wEnd', 'wEdWrap', 'wEdWordRight', 'wEdWordLeft', 'wEdUpLine', 'wEdUndo', 'wEdTopOfFile', - 'wEdToggleIns', 'wEdTab', 'wEdStartSel', 'wEdSetColBlk', 'wEdSelectAll', 'wEdRight', 'wEdRedo', 'wEdPaste', 'wEdPageUp', 'wEdPageDown', - 'wEdNewLine', 'wEdLeft', 'wEdInsString', 'wEdHome', 'wEdGoToLine', 'wEdGoToCol', 'wEdGetWord', 'wEdEndSel', 'wEdEndOfFile', 'wEdEnd', - 'wEdDownLine', 'wEdDelete', 'wEdCutLine', 'wEdCut', 'wEdCopyLine', 'wEdCopy', 'wEdClearSel', 'wEdBackTab', 'wEdBackspace', 'wDownLine', - 'wDelete', 'wDelButton', 'wCutMarked', 'wCutLine', 'wCutAppend', 'wCut', 'wCopyMarked', 'wCopyLine', 'wCopyAppend', 'wCopy', 'wCompile', - 'wClearSel', 'wChange', 'wCallMacro', 'wBackTab', 'wBackspace', 'wAutoIndent', 'wAddButton', 'edWindowTile', 'edWindowRestore', - 'edWindowNext', 'edWindowMinimize', 'edWindowMaximize', 'edWindowCloseall', 'edWindowClose', 'edWindowCascade', 'edWindowArrangeIcons', - 'edStatusMsg', 'edSearchViewOutput', 'edSearchRepeat', 'edSearchPrevError', 'edSearchNextError', 'edSearchFind', 'edSearchChange', - 'edRunRebuild', 'edRunMake', 'edRunExecute', 'edRunDebug', 'edRunConfigure', 'edRunCompile', 'edRunCommand', 'edRecord', 'edHelpProcedures', - 'edHelpKeyword', 'edHelpKeyboard', 'edHelpIndex', 'edHelpHelp', 'edHelpCommands', 'edHelpAbout', 'edGetWordWrapState', 'edGetWindowName', - 'edGetUndoState', 'edGetSelectionState', 'edGetRedoState', 'edGetModifiedStatus', 'edGetLineNumber', 'edGetInsertState', 'edGetColumnNumber', - 'edGetChar', 'edFileSetPreferences', 'edFileSaveAs', 'edFileSave', 'edFilePrinterSetup', 'edFilePrint', 'edFilePageSetup', 'edFileOpen', - 'edFileNew', 'edFileMerge', 'edFileList', 'edFileExit', 'edEditWrap', 'edEditWordRight', 'edEditWordLeft', 'edEditUpLine', 'edEditUndo', - 'edEditToggleIns', 'edEditTab', 'edEditStartSelection', 'edEditSetColumnBlock', 'edEditSetBookmark', 'edEditSelectAll', 'edEditRight', - 'edEditRedo', 'edEditPaste', 'edEditPageUp', 'edEditPageDown', 'edEditLeft', 'edEditInsertString', 'edEditGoToLine', 'edEditGoToColumn', - 'edEditGoToBookmark', 'edEditGetCurrentWord', 'edEditEndSelection', 'edEditEndOfLine', 'edEditEndOfFile', 'edEditDownline', 'edEditDelete', - 'edEditCutline', 'edEditCut', 'edEditCopyline', 'edEditCopy', 'edEditClearSelection', 'edEditBeginningOfLine', 'edEditBeginningOfFile', - 'edEditBackTab', 'edEditBackspace', 'edDeleteButton', 'edAddButton' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '!', '+', '-', '~', '$', '^', '?', '@', '%', '#', '&', '*', '|', '/', '<', '>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #800080;', - 2 => 'color: #0080FF; font-weight: bold;', - 3 => 'color: #0000FF;', - 4 => 'color: #FF00FF;', - 5 => 'color: #008000;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000; font-style: italic;', - 2 => 'color: #FF1010; font-weight: bold;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 0 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array(//Variable names - 0 => "[\\$]{1,2}[a-zA-Z_][a-zA-Z0-9_]*" - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/xbasic.php b/library/Vendors/geshi/geshi/xbasic.php deleted file mode 100644 index a2d85a6d..00000000 --- a/library/Vendors/geshi/geshi/xbasic.php +++ /dev/null @@ -1,144 +0,0 @@ - 'XBasic', - 'COMMENT_SINGLE' => array(1 => "'"), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'WHILE', 'UNTIL', 'TRUE', 'TO', 'THEN', 'SUB', 'STOP', 'STEP', - 'SELECT', 'RETURN', 'PROGRAM', 'NEXT', 'LOOP', 'IFZ', - 'IFT', 'IFF', 'IF', 'GOTO', 'GOSUB', 'FOR', 'FALSE', 'EXIT', - 'ENDIF', 'END', 'ELSE', 'DO', 'CASE', 'ALL' - ), - 2 => array( - 'XMAKE', 'XLONGAT', 'XLONG', 'WRITE', 'VOID', 'VERSION$', 'VERSION', - 'USHORTAT', 'USHORT', 'UNION', 'ULONGAT', 'ULONG', 'UCASE$', - 'UBYTEAT', 'UBYTE', 'UBOUND', 'TYPE','TRIM$', 'TAB', 'SWAP', - 'SUBADDRESS', 'SUBADDR', 'STUFF$', 'STRING', 'STRING$', 'STR$', - 'STATIC', 'SSHORTAT', 'SSHORT', 'SPACE$', 'SMAKE', 'SLONGAT', 'SLONG', - 'SIZE', 'SINGLEAT', 'SINGLE', 'SIGNED$', 'SIGN', 'SHELL', 'SHARED', - 'SGN', 'SFUNCTION', 'SET', 'SEEK', 'SCOMPLEX', 'SBYTEAT', 'SBYTE', - 'RTRIM$', 'ROTATER', 'ROTATEL', 'RJUST$', 'RINSTRI', 'RINSTR', - 'RINCHRI', 'RINCHR', 'RIGHT$', 'REDIM', 'READ', 'RCLIP$', 'QUIT', - 'PROGRAM$', 'PRINT', 'POF', 'OPEN', 'OCTO$', 'OCT$', 'NULL$', 'MIN', - 'MID$', 'MAX', 'MAKE', 'LTRIM$', 'LOF', 'LJUST$', 'LIBRARY', 'LEN', - 'LEFT$', 'LCLIP$', 'LCASE$', 'INTERNAL', 'INT', 'INSTRI', 'INSTR', - 'INLINE$', 'INFILE$', 'INCHRI', 'INCHR', 'INC', 'IMPORT', 'HIGH1', - 'HIGH0', 'HEXX$', 'HEX$', 'GOADDRESS', 'GOADDR', 'GMAKE', 'GLOW', - 'GIANTAT', 'GIANT', 'GHIGH', 'FUNCTION', 'FUNCADDRESS', 'FUNCADDR', - 'FORMAT$', 'FIX', 'EXTU', 'EXTS', 'EXTERNAL', 'ERROR', 'ERROR$', - 'EOF', 'DOUBLEAT', 'DOUBLE', 'DMAKE', 'DLOW', 'DIM', 'DHIGH', - 'DECLARE', 'DEC', 'DCOMPLEX', 'CSTRING$', 'CSIZE', 'CSIZE$', 'CLR', - 'CLOSE', 'CLEAR', 'CJUST$', 'CHR$', 'CFUNCTION', 'BITFIELD', 'BINB$', - 'BIN$', 'AUTOX', 'AUTOS', 'AUTO', 'ATTACH', 'ASC', 'ABS' - ), - 3 => array( - 'XOR', 'OR', 'NOT', 'MOD', 'AND' - ), - 4 => array( - 'TANH', 'TAN', 'SQRT', 'SINH', 'SIN', 'SECH', 'SEC', 'POWER', - 'LOG10', 'LOG', 'EXP10', 'EXP', 'CSCH', 'CSC', 'COTH', 'COT', 'COSH', - 'COS', 'ATANH', 'ATAN', 'ASINH', 'ASIN', 'ASECH', 'ASEC', 'ACSCH', - 'ACSC', 'ACOSH', 'ACOS' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '!', '@', '%', '&', '*', '|', '/', '<', '>', - '=','+','-' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #00a1a1;font-weight: bold', - 2 => 'color: #000066;font-weight: bold', - 3 => 'color: #00a166;font-weight: bold', - 4 => 'color: #0066a1;font-weight: bold' - ), - 'COMMENTS' => array( - 1 => 'color: #808080;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.xbasic.org', - 4 => 'http://www.xbasic.org' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> \ No newline at end of file diff --git a/library/Vendors/geshi/geshi/xml.php b/library/Vendors/geshi/geshi/xml.php deleted file mode 100644 index efd3e6c3..00000000 --- a/library/Vendors/geshi/geshi/xml.php +++ /dev/null @@ -1,157 +0,0 @@ - 'XML', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - ), - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - ), - 'COMMENTS' => array( - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - -1 => 'color: #808080; font-style: italic;', // comments - 0 => 'color: #00bbdd;', - 1 => 'color: #ddbb00;', - 2 => 'color: #339933;', - 3 => 'color: #009900;' - ), - 'REGEXPS' => array( - 0 => 'color: #000066;', - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;' - ) - ), - 'URLS' => array( - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 0 => array(//attribute names - GESHI_SEARCH => '([a-z_:][\w\-\.:]*)(=)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '', - GESHI_AFTER => '\\2' - ), - 1 => array(//Initial header line - GESHI_SEARCH => '(<[\/?|(\?xml)]?[a-z_:][\w\-\.:]*(\??>)?)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - 2 => array(//Tag end markers - GESHI_SEARCH => '(([\/|\?])?>)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - ), - 'STRICT_MODE_APPLIES' => GESHI_ALWAYS, - 'SCRIPT_DELIMITERS' => array( - -1 => array( - '' - ), - 0 => array( - ' '>' - ), - 1 => array( - '&' => ';' - ), - 2 => array( - ' ']]>' - ), - 3 => array( - '<' => '>' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - -1 => false, - 0 => false, - 1 => false, - 2 => false, - 3 => true - ), - 'TAB_WIDTH' => 2, - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'NUMBERS' => GESHI_NEVER - ) - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/xorg_conf.php b/library/Vendors/geshi/geshi/xorg_conf.php deleted file mode 100644 index 5cde8e17..00000000 --- a/library/Vendors/geshi/geshi/xorg_conf.php +++ /dev/null @@ -1,124 +0,0 @@ - 'Xorg configuration', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - // sections - 1 => array( - 'Section', 'EndSection', 'SubSection', 'EndSubSection' - ), - 2 => array( - // see http://www.x.org/archive/X11R6.9.0/doc/html/xorg.conf.5.html - 'BiosBase', 'Black', 'Boardname', 'BusID', 'ChipID', 'ChipRev', - 'Chipset', 'ClockChip', 'Clocks', 'DacSpeed', - 'DefaultDepth', 'DefaultFbBpp', 'Depth', 'Device', - 'DisplaySize', 'Driver', 'FbBpp', 'Gamma', - 'HorizSync', 'IOBase', 'Identifier', 'InputDevice', - 'Load', 'MemBase', 'Mode', 'Modeline', 'Modelname', - 'Modes', 'Monitor', 'Option', 'Ramdac', 'RgbPath', - 'Screen', 'TextClockFreq', 'UseModes', 'VendorName', - 'VertRefresh', 'VideoAdaptor', 'VideoRam', - 'ViewPort', 'Virtual', 'Visual', 'Weight', 'White' - ), - 3 => array( - // some sub-keywords - // screen position - 'Above', 'Absolute', 'Below', 'LeftOf', 'Relative', 'RightOf', - // modes - 'DotClock', 'Flags', 'HSkew', 'HTimings', 'VScan', 'VTimings' - ), - ), - 'REGEXPS' => array( - ), - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #990000;', - 3 => 'color: #550000;' - ), - 'COMMENTS' => array( - 1 => 'color: #adadad; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - ), - 'BRACKETS' => array( - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;', - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/library/Vendors/geshi/geshi/xpp.php b/library/Vendors/geshi/geshi/xpp.php deleted file mode 100644 index 216c46ea..00000000 --- a/library/Vendors/geshi/geshi/xpp.php +++ /dev/null @@ -1,436 +0,0 @@ - - * - * CHANGES - * ------- - * 2007/02/28 (1.0.0) - * - First Release - * - * TODO (updated 2007/02/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'X++', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( // Primitive types - 'void', - 'str', - 'real', - 'int64', - 'int', - 'date', - 'container', - 'boolean', - 'anytype' - ), - 2 => array( // Keywords - 'window', - 'while', - 'try', - 'true', - 'throw', - 'switch', - 'super', - 'static', - 'server', - 'right', - 'return', - 'retry', - 'public', - 'protected', - 'private', - 'print', - 'pause', - 'null', - 'new', - 'mod', - 'left', - 'interface', - 'implements', - 'if', - 'for', - 'final', - 'false', - 'extends', - 'else', - 'edit', - 'do', - 'div', - 'display', - 'default', - 'continue', - 'client', - 'class', - 'changeCompany', - 'case', - 'breakpoint', - 'break', - 'at', - 'abstract' - ), - 3 => array( // Functions within the Axapta kernel - 'year', - 'wkofyr', - 'webwebpartstr', - 'webstaticfilestr', - 'websitetempstr', - 'websitedefstr', - 'webreportstr', - 'webpagedefstr', - 'weboutputcontentitemstr', - 'webmenustr', - 'webletitemstr', - 'webformstr', - 'webdisplaycontentitemstr', - 'webactionitemstr', - 'varstr', - 'utilmoyr', - 'uint2str', - 'typeof', - 'typeid', - 'trunc', - 'today', - 'timenow', - 'time2str', - 'term', - 'tanh', - 'tan', - 'tablestr', - 'tablestaticmethodstr', - 'tablepname', - 'tablenum', - 'tablename2id', - 'tablemethodstr', - 'tableid2pname', - 'tableid2name', - 'tablefieldgroupstr', - 'tablecollectionstr', - 'systemdateset', - 'systemdateget', - 'syd', - 'substr', - 'strupr', - 'strscan', - 'strrtrim', - 'strrep', - 'strrem', - 'strprompt', - 'strpoke', - 'strnfind', - 'strlwr', - 'strltrim', - 'strline', - 'strlen', - 'strkeep', - 'strins', - 'strfmt', - 'strfind', - 'strdel', - 'strcolseq', - 'strcmp', - 'stralpha', - 'str2time', - 'str2num', - 'str2int64', - 'str2int', - 'str2guid', - 'str2enum', - 'str2date', - 'staticmethodstr', - 'sln', - 'sleep', - 'sinh', - 'sin', - 'setprefix', - 'sessionid', - 'securitykeystr', - 'securitykeynum', - 'runbuf', - 'runas', - 'round', - 'resourcestr', - 'reportstr', - 'refprintall', - 'rate', - 'querystr', - 'pv', - 'pt', - 'prmisdefault', - 'primoyr', - 'prevyr', - 'prevqtr', - 'prevmth', - 'power', - 'pmt', - 'num2str', - 'num2date', - 'num2char', - 'nextyr', - 'nextqtr', - 'nextmth', - 'newguid', - 'mthofyr', - 'mthname', - 'mkdate', - 'minint', - 'min', - 'methodstr', - 'menustr', - 'menuitemoutputstr', - 'menuitemdisplaystr', - 'menuitemactionstr', - 'maxint', - 'maxdate', - 'max', - 'match', - 'logn', - 'log10', - 'literalstr', - 'licensecodestr', - 'licensecodenum', - 'intvnorm', - 'intvno', - 'intvname', - 'intvmax', - 'int64str', - 'indexstr', - 'indexnum', - 'indexname2id', - 'indexid2name', - 'idg', - 'identifierstr', - 'helpfilestr', - 'helpdevstr', - 'helpapplstr', - 'guid2str', - 'getprefix', - 'getCurrentUTCTime', - 'fv', - 'funcname', - 'frac', - 'formstr', - 'fieldstr', - 'fieldpname', - 'fieldnum', - 'fieldname2id', - 'fieldid2pname', - 'fieldid2name', - 'extendedTypeStr', - 'extendedTypeNum', - 'exp10', - 'exp', - 'evalbuf', - 'enumstr', - 'enumnum', - 'enumcnt', - 'enum2str', - 'endmth', - 'dimof', - 'dg', - 'decround', - 'ddb', - 'dayofyr', - 'dayofwk', - 'dayofmth', - 'dayname', - 'date2str', - 'date2num', - 'curuserid', - 'curext', - 'cterm', - 'cosh', - 'cos', - 'corrflagset', - 'corrflagget', - 'convertUTCTimeToLocalTime', - 'convertUTCDateToLocalDate', - 'conpoke', - 'conpeek', - 'connull', - 'conlen', - 'conins', - 'confind', - 'configurationkeystr', - 'configurationkeynum', - 'condel', - 'classstr', - 'classnum', - 'classidget', - 'char2num', - 'beep', - 'atan', - 'asin', - 'ascii2ansi', - 'any2str', - 'any2real', - 'any2int64', - 'any2int', - 'any2guid', - 'any2enum', - 'any2date', - 'ansi2ascii', - 'acos', - 'abs' - ), - 4 => array( // X++ SQL stuff - 'where', - 'update_recordset', - 'ttsCommit', - 'ttsBegin', - 'ttsAbort', - 'sum', - 'setting', - 'select', - 'reverse', - 'pessimisticLock', - 'outer', - 'order by', - 'optimisticLock', - 'notExists', - 'noFetch', - 'next', - 'minof', - 'maxof', - 'like', - 'join', - 'insert_recordset', - 'index hint', - 'index', - 'group by', - 'from', - 'forUpdate', - 'forceSelectOrder', - 'forcePlaceholders', - 'forceNestedLoop', - 'forceLiterals', - 'flush', - 'firstOnly', - 'firstFast', - 'exists', - 'desc', - 'delete_from', - 'count', - 'avg', - 'asc' - ) - ), - 'SYMBOLS' => array( // X++ symbols - '!', - '&', - '(', - ')', - '*', - '^', - '|', - '~', - '+', - ',', - '-', - '/', - ':', - '<', - '=', - '>', - '?', - '[', - ']', - '{', - '}' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000ff;', - 2 => 'color: #0000ff;', - 3 => 'color: #0000ff;', - 4 => 'color: #0000ff;' - ), - 'COMMENTS' => array( - 1 => 'color: #007f00;', - 'MULTI' => 'color: #007f00; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000000;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #000000;' - ), - 'METHODS' => array( - 1 => 'color: #000000;', - 2 => 'color: #000000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #00007f;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/library/Vendors/geshi/geshi/z80.php b/library/Vendors/geshi/geshi/z80.php deleted file mode 100644 index f28593cd..00000000 --- a/library/Vendors/geshi/geshi/z80.php +++ /dev/null @@ -1,144 +0,0 @@ - 'ZiLOG Z80 Assembler', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - /*CPU*/ - 1 => array( - 'adc','add','and','bit','call','ccf','cp','cpd','cpdr','cpir','cpi', - 'cpl','daa','dec','di','djnz','ei','ex','exx','halt','im','in', - 'in0','inc','ind','indr','inir','ini','jp','jr','ld','ldd','lddr', - 'ldir','ldi','mlt','neg','nop','or','otdm','otdmr','otdr','otim', - 'otimr','otir','out','out0','outd','outi','pop','push','res','ret', - 'reti','retn','rl','rla','rlc','rlca','rld','rr','rra','rrc','rrca', - 'rrd','rst','sbc','scf','set','sla','sl1','sll','slp','sra','srl', - 'sub','tst','tstio','xor' - ), - /*registers*/ - 2 => array( - 'a','b','c','d','e','h','l', - 'af','bc','de','hl','ix','iy','sp', - 'af\'','ixh','ixl','iyh','iyl' - ), - /*Directive*/ - 3 => array( - '#define','#endif','#else','#ifdef','#ifndef','#include','#undef', - '.db','.dd','.df','.dq','.dt','.dw','.end','.org','equ' - ), - ), - 'SYMBOLS' => array( - '[', ']', '(', ')', '?', '+', '-', '*', '/', '%', '$' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000ff; font-weight:bold;', - 2 => 'color: #0000ff;', - 3 => 'color: #46aa03; font-weight:bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #adadad; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #0000ff;' - ), - 'STRINGS' => array( - 0 => 'color: #7f007f;' - ), - 'NUMBERS' => array( - 0 => 'color: #dd22dd;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;' - ), - 'REGEXPS' => array( - 0 => 'color: #22bbff;', - 1 => 'color: #22bbff;', - 2 => 'color: #993333;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Hex numbers - 0 => '0[0-9a-fA-F]{1,32}[hH]', - //Binary numbers - 1 => '\%[01]{1,64}|[01]{1,64}[bB]?(?![^<]*>)', - //Labels - 2 => '^[_a-zA-Z][_a-zA-Z0-9]?\:' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 8 -); - -?> \ No newline at end of file diff --git a/library/Web/demo/getIdentite.php b/library/Web/demo/getIdentite.php deleted file mode 100644 index 201206e2..00000000 --- a/library/Web/demo/getIdentite.php +++ /dev/null @@ -1,24 +0,0 @@ -setName('soapform'); - $this->setAction('/demo/requete'); - $this->setMethod('post'); - $this->addElement('text', 'siret', array( - 'filters' => array('StringTrim'), - 'validators' => array( - array('stringLength',false,array(9,14)), - array('NotEmpty', true), - ), - 'label' => 'Siret : ', - 'required' => 'true', - ) - ); - $this->addElement('submit', 'submit', array( - 'label' => 'Envoyez', - )); - - } -} \ No newline at end of file diff --git a/library/WsDebug/Controller/Plugin/Debug.php b/library/WsDebug/Controller/Plugin/Debug.php deleted file mode 100644 index 0e1bf184..00000000 --- a/library/WsDebug/Controller/Plugin/Debug.php +++ /dev/null @@ -1,234 +0,0 @@ - array( - 'Exception' => null, - ), - ); - - /** - * Standard plugins - * - * @var array - */ - public static $standardPlugins = array( - 'Exception', - ); - - /** - * Creates a new instance of the Debug Bar - * - * @param array|Zend_Config $options - * @throws Zend_Controller_Exception - * @return void - */ - - protected $_closingBracket = null; - - public function __construct($options = null) - { - if (isset($options)) { - if ($options instanceof Zend_Config) { - $options = $options->toArray(); - } - - /* - * Verify that adapter parameters are in an array. - */ - if (!is_array($options)) { - throw new Zend_Exception('Parameters must be in an array or a Zend_Config object'); - } - - $this->setOptions($options); - } - - /** - * Creating the log tab - */ - $logger = new WsDebug_Controller_Plugin_Debug_Plugin_Log(); - $this->registerPlugin($logger); - $logger->mark('Startup - WsDebug construct()', true); - - /** - * Loading already defined plugins - */ - $this->_loadPlugins(); - } - - /** - * Get the ZFDebug logger - * - * @return Zend_Log - */ - public function getLogger() - { - return $this->getPlugin('Log')->logger(); - } - - /** - * Sets options of the Debug Bar - * - * @param array $options - * @return ZFDebug_Controller_Plugin_Debug - */ - public function setOptions(array $options = array()) - { - if (isset($options['plugins'])) { - $this->_options['plugins'] = $options['plugins']; - } - return $this; - } - - /** - * Register a new plugin in the Debug Bar - * - * @param WsDebug_Controller_Plugin_Debug_Plugin_Interface - * @return WsDebug_Controller_Plugin_Debug - */ - public function registerPlugin(WsDebug_Controller_Plugin_Debug_Plugin_Interface $plugin) - { - $this->_plugins[$plugin->getIdentifier()] = $plugin; - return $this; - } - - /** - * Unregister a plugin in the Debug Bar - * - * @param string $plugin - * @return WsDebug_Controller_Plugin_Debug - */ - public function unregisterPlugin($plugin) - { - if (false !== strpos($plugin, '_')) { - foreach ($this->_plugins as $key => $_plugin) { - if ($plugin == get_class($_plugin)) { - unset($this->_plugins[$key]); - } - } - } else { - $plugin = strtolower($plugin); - if (isset($this->_plugins[$plugin])) { - unset($this->_plugins[$plugin]); - } - } - return $this; - } - - /** - * Get a registered plugin in the Debug Bar - * - * @param string $identifier - * @return WsDebug_Controller_Plugin_Debug_Plugin_Interface - */ - public function getPlugin($identifier) - { - $identifier = strtolower($identifier); - if (isset($this->_plugins[$identifier])) { - return $this->_plugins[$identifier]; - } - return false; - } - - /** - * Defined by Zend_Controller_Plugin_Abstract - */ - public function dispatchLoopShutdown() - { - $txt = ''; - - /** - * Creating content for all registered plugins - */ - foreach ($this->_plugins as $plugin) { - $data = $plugin->getData(); - if ($data == '') { - continue; - } - $txt .= 'Debug - ' . ucfirst($plugin->getIdentifier())." : \n"; - $txt .= $data; - } - - $this->_output($txt); - } - - ### INTERNAL METHODS BELOW ### - - /** - * Load plugins set in config option - * - * @return void; - */ - protected function _loadPlugins() - { - foreach ($this->_options['plugins'] as $plugin => $options) { - if (is_numeric($plugin)) { - # Plugin passed as array value instead of key - $plugin = $options; - $options = array(); - } - - // Register an instance - if (is_object($plugin) && in_array('WsDebug_Controller_Plugin_Debug_Plugin_Interface', class_implements($plugin))) { - $this->registerPlugin($plugin); - continue; - } - - if (!is_string($plugin)) { - throw new Exception("Invalid plugin name", 1); - } - $plugin = ucfirst($plugin); - - // Register a classname - if (in_array($plugin, WsDebug_Controller_Plugin_Debug::$standardPlugins)) { - // standard plugin - $pluginClass = 'WsDebug_Controller_Plugin_Debug_Plugin_' . $plugin; - } else { - // we use a custom plugin - if (!preg_match('~^[\w]+$~D', $plugin)) { - throw new Zend_Exception("WsDebug: Invalid plugin name [$plugin]"); - } - $pluginClass = $plugin; - } - - require_once str_replace('_', DIRECTORY_SEPARATOR, $pluginClass) . '.php'; - $object = new $pluginClass($options); - $this->registerPlugin($object); - } - } - - /** - * Output text for logging - * - * @param string $txt - * @return void - */ - protected function _output($txt) - { - //file_put_contents(APPLICATION_PATH . '/../test.log', $txt, FILE_APPEND); - //Is txt should be send by mail - //Is txt should be write to file - - } - -} \ No newline at end of file diff --git a/library/WsDebug/Controller/Plugin/Debug/Plugin.php b/library/WsDebug/Controller/Plugin/Debug/Plugin.php deleted file mode 100644 index e4d55a9f..00000000 --- a/library/WsDebug/Controller/Plugin/Debug/Plugin.php +++ /dev/null @@ -1,47 +0,0 @@ -getLinebreak(); - - if (is_array($values)) { - ksort($values); - } - $retVal = $linebreak; - foreach ($values as $key => $value) - { - $key = htmlspecialchars($key); - if (is_numeric($value)) { - $retVal .= $key.' => '.$value.$linebreak; - } - else if (is_string($value)) { - $retVal .= $key.' => \''.htmlspecialchars($value).'\''.$linebreak; - } - else if (is_array($value)) - { - $retVal .= $key.' => '.self::_cleanData($value); - } - else if (is_object($value)) - { - $retVal .= $key.' => '.get_class($value).' Object()'.$linebreak; - } - else if (is_null($value)) - { - $retVal .= $key.' => NULL'.$linebreak; - } - } - return $retVal.$linebreak; - } -} \ No newline at end of file diff --git a/library/WsDebug/Controller/Plugin/Debug/Plugin/Exception.php b/library/WsDebug/Controller/Plugin/Debug/Plugin/Exception.php deleted file mode 100644 index 1b7ed333..00000000 --- a/library/WsDebug/Controller/Plugin/Debug/Plugin/Exception.php +++ /dev/null @@ -1,148 +0,0 @@ -getPlugin('WsDebug_Controller_Plugin_Debug')) { - self::$_logger = $zfdebug->getPlugin('Log')->getLog(); - } else { - return false; - } - } - return self::$_logger; - } - - /** - * Gets identifier for this plugin - * - * @return string - */ - public function getIdentifier() - { - return $this->_identifier; - } - - /** - * Creates Error Plugin ans sets the Error Handler - * - * @return void - */ - public function __construct() - { - set_error_handler(array($this , 'errorHandler')); - } - - /** - * Gets menu tab for the Debugbar - * - * @return string - */ - public function getData() - { - $response = Zend_Controller_Front::getInstance()->getResponse(); - $exception = ''; - foreach ($response->getException() as $e) { - $exception = get_class($e) . ': ' . $e->getMessage() - . ' thrown in ' . str_replace($_SERVER['DOCUMENT_ROOT'], '', $e->getFile()) - . ' on line ' . $e->getLine(); - $exception .= "\n"; - foreach ($e->getTrace() as $t) { - $func = $t['function'] . '()'; - if (isset($t['class'])) - $func = $t['class'] . $t['type'] . $func; - if (! isset($t['file'])) - $t['file'] = 'unknown'; - if (! isset($t['line'])) - $t['line'] = 'n/a'; - $exception .= ' - ' . $func . ' in ' - . str_replace($_SERVER['DOCUMENT_ROOT'], '', $t['file']) - . ' on line ' . $t['line'] . "\n"; - } - $exception .= "\n"; - if ($logger = self::getLogger()) - $logger->crit($exception); - } - return $exception; - } - - /** - * php error handler - * - * @param string $level - * @param string $message - * @param string $file - * @param string $line - * @return bool - */ - public static function errorHandler($level, $message, $file, $line) - { - if (! ($level & error_reporting())) - return false; - switch ($level) { - case E_NOTICE: - case E_USER_NOTICE: - $method = 'notice'; - $type = 'Notice'; - break; - case E_WARNING: - case E_USER_WARNING: - $method = 'warn'; - $type = 'Warning'; - break; - case E_ERROR: - case E_USER_ERROR: - $method = 'crit'; - $type = 'Fatal Error'; - break; - default: - $method = 'err'; - $type = 'Unknown, ' . $level; - break; - } - self::$errors[] = array( - 'type' => $type , - 'message' => $message , - 'file' => $file , - 'line' => $line, - 'trace' => debug_backtrace() - ); - - $message = sprintf( - "%s in %s on line %d", - $message, - str_replace($_SERVER['DOCUMENT_ROOT'], '', $file), - $line - ); - // if (ini_get('log_errors')) - // error_log(sprintf("%s: %s", $type, $message)); - - if (($logger = self::getLogger())) { - $logger->$method($message); - } - return false; - } -} \ No newline at end of file diff --git a/library/WsDebug/Controller/Plugin/Debug/Plugin/Interface.php b/library/WsDebug/Controller/Plugin/Debug/Plugin/Interface.php deleted file mode 100644 index 5c863c63..00000000 --- a/library/WsDebug/Controller/Plugin/Debug/Plugin/Interface.php +++ /dev/null @@ -1,17 +0,0 @@ -registerPlugin($this); - $this->_writer = new WsDebug_Controller_Plugin_Debug_Plugin_Log_Writer(); - $this->_logger = new Zend_Log($this->_writer); - $this->_logger->addPriority('ZFLOG', self::ZFLOG); - } - - public function __call($method, $params) - { - $this->_logger->$method(array_shift($params)); - } - - public function getLog() - { - return $this->_logger; - } - - public function getWriter() - { - return $this->_writer; - } - - /** - * Has to return html code for the content panel - * - * @return string - */ - public function getData() - { - $request = Zend_Controller_Front::getInstance()->getRequest(); - $module = $request->getModuleName(); - if ('default' !== $module) { - $module = " ($module module)"; - } else { - $module = ''; - } - $controller = $request->getControllerName(); - $action = $request->getActionName(); - - $panel = ''; - //$panel = "Event log for {$controller}Controller->{$action}Action() {$module}\n"; - $panel .= implode("\n", $this->_writer->getMessages()); - return $panel; - } - - /** - * Has to return a unique identifier for the specific plugin - * - * @return string - */ - public function getIdentifier() - { - return 'log'; - } - - /** - * Sets a time mark identified with $name - * - * @param string $name - */ - public function mark($name, $logFirst = false) { - if (isset($this->_marks[$name])) { - $this->_marks[$name]['time'] = round((microtime(true)-$_SERVER['REQUEST_TIME'])*1000-$this->_marks[$name]['time']).'ms'; - if (function_exists('memory_get_usage')) { - $this->_marks[$name]['memory'] = round((memory_get_usage()-$this->_marks[$name]['memory'])/1024) . 'K'; - } else { - $this->_marks[$name]['memory'] = 'N/A'; - } - $this->_logger->zflog( - array('time' => $this->_marks[$name]['time'], - 'memory' => $this->_marks[$name]['memory'], - 'message' => $name - ) - ); - } else { - $this->_marks[$name]['time'] = (microtime(true)-$_SERVER['REQUEST_TIME'])*1000; - if (function_exists('memory_get_usage')) { - $this->_marks[$name]['memory'] = memory_get_usage(); - } else { - $this->_marks[$name]['memory'] = 'N/A'; - } - if ($logFirst) { - $this->_logger->zflog( - array('time' => round($this->_marks[$name]['time']).'ms', - 'memory' => round($this->_marks[$name]['memory']/1024).'K', - 'message' => $name - ) - ); - } - } - } - - /** - * Defined by Zend_Controller_Plugin_Abstract - * - * @param Zend_Controller_Request_Abstract - * @return void - */ - public function routeStartup(Zend_Controller_Request_Abstract $request) - { - $this->mark('Route'); - } - - /** - * Defined by Zend_Controller_Plugin_Abstract - * - * @param Zend_Controller_Request_Abstract - * @return void - */ - public function routeShutdown(Zend_Controller_Request_Abstract $request) - { - $this->mark('Route'); - } - - /** - * Defined by Zend_Controller_Plugin_Abstract - * - * @param Zend_Controller_Request_Abstract - * @return void - */ - public function preDispatch(Zend_Controller_Request_Abstract $request) - { - $this->mark( - $request->getControllerName() . 'Controller::'. - $request->getActionName() .'Action' - ); - } - - /** - * Defined by Zend_Controller_Plugin_Abstract - * - * @param Zend_Controller_Request_Abstract - * @return void - */ - public function postDispatch(Zend_Controller_Request_Abstract $request) - { - $this->mark( - $request->getControllerName() . 'Controller::'. - $request->getActionName() .'Action' - ); - } - - /** - * Defined by Zend_Controller_Plugin_Abstract - * - * @param Zend_Controller_Request_Abstract - * @return void - */ - public function dispatchLoopStartup(Zend_Controller_Request_Abstract $request) - { - $this->mark('Dispatch'); - } - - /** - * Defined by Zend_Controller_Plugin_Abstract - * - * @param Zend_Controller_Request_Abstract - * @return void - */ - public function dispatchLoopShutdown() - { - $this->mark('Dispatch'); - } -} \ No newline at end of file diff --git a/library/WsDebug/Controller/Plugin/Debug/Plugin/Log/Writer.php b/library/WsDebug/Controller/Plugin/Debug/Plugin/Log/Writer.php deleted file mode 100644 index c9410bdd..00000000 --- a/library/WsDebug/Controller/Plugin/Debug/Plugin/Log/Writer.php +++ /dev/null @@ -1,73 +0,0 @@ -_messages; - } - - public function getErrorCount() - { - return $this->_errors; - } - - /** - * Write a message to the log. - * - * @param array $event event data - * @return void - */ - protected function _write($event) - { - /* - $output = ''; - $output .= '%priorityName%'; - $output .= '%memory%'; - $output .= '%message%'; // (%priority%) - $event['color'] = '#C9C9C9'; - // Count errors - if ($event['priority'] < 7) { - $event['color'] = 'green'; - } - if ($event['priority'] < 6) { - $event['color'] = '#fd9600'; - } - if ($event['priority'] < 5) { - $event['color'] = 'red'; - $this->_errors++; - } - - if ($event['priority'] == WsDebug_Controller_Plugin_Debug_Plugin_Log::ZFLOG) { - $event['priorityName'] = $event['message']['time']; - $event['memory'] = $event['message']['memory']; - $event['message'] = $event['message']['message']; - } else { - // self::$_lastEvent = null; - $event['message'] = $event['priorityName'] .': '. $event['message']; - $event['priorityName'] = ' '; - $event['memory'] = ' '; - } - foreach ($event as $name => $value) { - if ('message' == $name) { - $measure = ' '; - if ((is_object($value) && !method_exists($value,'__toString'))) { - $value = gettype($value); - } elseif (is_array($value)) { - $measure = $value[0]; - $value = $value[1]; - } - } - $output = str_replace("%$name%", $value, $output); - } - $this->_messages[] = $output; - */ - } -} \ No newline at end of file diff --git a/library/WsScore/Catalog/v0.1/Catalog.php b/library/WsScore/Catalog/v0.1/Catalog.php deleted file mode 100644 index e3be8bb1..00000000 --- a/library/WsScore/Catalog/v0.1/Catalog.php +++ /dev/null @@ -1,365 +0,0 @@ -authenticate(); - - $columnsList = array( - 'codNaf5', - 'libNaf5', - 'libNaf5en', - 'codNaf4', - 'codNaf3', - 'codNaf2', - 'codNaf1', - ); - - if (empty($columns) || count($columns)==0) { - $columnsDisplay = array('codNaf5', 'libNaf5', 'codNaf4', 'codNaf3', 'codNaf2', 'codNaf1'); - } - // Check authorize column - else { - foreach ( $columns as $column ) { - if ( in_array($column, $columnsList) ) { - $columnsDisplay[] = $column; - } - } - } - - try { - $model = new Application_Model_JoTabNaf5(); - $sql = $model->select()->from($model, $columnsDisplay); - if ( $id!==null ) { - $sql->where('codNaf5=?', $id); - } - $result = $model->fetchAll($sql); - } catch (Zend_Db_Adapter_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } catch (Zend_Exception $e) { - throw new SoapFault('ERR', $e->getMessage()); - } - - $tab = array(); - if ( $result->count()>0 ) { - foreach ( $result as $item ) { - $tab[$item->codNaf5] = $item->toArray(); - } - } - - return json_encode($tab); - - } - - /** - * Legal Form - * @param string $id - * @param array $columns - * @throws SoapFault - * @return string - */ - public function getLegalForm($id=null, $columns = array()) - { - $this->authenticate(); - - $columnsList = array( - 'code', - 'libelle', - 'libelleEn', - ); - - if (empty($columns) || count($columns)==0) { - $columnsDisplay = array('code', 'libelle'); - } - // Check authorize column - else { - foreach ( $columns as $column ) { - if ( in_array($column, $columnsList) ) { - $columnsDisplay[] = $column; - } - } - } - - try { - $model = new Application_Model_JoTabFJur(); - $sql = $model->select()->from($model, $columnsDisplay); - if ( $id!==null ) { - $sql->where('code=?', $id); - } - $result = $model->fetchAll($sql); - } catch (Zend_Db_Adapter_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } catch (Zend_Exception $e) { - throw new SoapFault('ERR', $e->getMessage()); - } - - $tab = array(); - if ( $result->count()>0 ) { - foreach ( $result as $item ) { - $tab[$item->code] = $item->toArray(); - } - } - - return json_encode($tab); - } - - /** - * Event - * @param string $id - * @param array $columns - * @throws SoapFault - * @return string - */ - public function getEvent($id=null, $columns = array()) - { - $this->authenticate(); - - $columnsList = array( - 'codEven', - 'libEven', - 'libEvenEn', - 'Bodacc_Code', - 'Rubrique', - ); - - if (empty($columns) || count($columns)==0) { - $columnsDisplay = array('codEven', 'libEven','Bodacc_Code', 'Rubrique'); - } - // Check authorize column - else { - foreach ( $columns as $column ) { - if ( in_array($column, $columnsList) ) { - $columnsDisplay[] = $column; - } - } - } - - try { - $model = new Application_Model_JoTabEvenements(); - $sql = $model->select()->from($model, $columnsDisplay); - if ( $id!==null ) { - $sql->where('codeEven=?', $id); - } - $result = $model->fetchAll($sql); - } catch (Zend_Db_Adapter_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } catch (Zend_Exception $e) { - throw new SoapFault('ERR', $e->getMessage()); - } - - $tab = array(); - if ( $result->count()>0 ) { - foreach ( $result as $item ) { - $tab[$item->codEven] = $item->toArray(); - } - } - - return json_encode($tab); - } - - /** - * Countries List - * @param string $id Code Pays 3 - * @param array $columns Column list to be return - * @throws SoapFault - * @return string - */ - public function getCountry($id = null, $columns = array()) - { - $this->authenticate(); - - $columnsList = array( - 'codPays', - 'numPays', - 'codPays3', - 'codePaysInpi', - 'codePaysInsee', - 'codeFips', - 'codeTld', - 'codeIoc', - 'codeITU', - 'codeDS', - 'codeWMO', - 'codeGAUL', - 'codeMARC', - 'dependance', - 'libPaysEN', - 'libPays', - 'libPaysMajAuto', - 'zone', - 'drapeau', - 'devise', - 'indTel', - 'remarques', - ); - - if (empty($columns) || count($columns)==0) { - $columnsDisplay = array('codPays3', 'libPays'); - } - // Check authorize column - else { - foreach ( $columns as $column ) { - if ( in_array($column, $columnsList) ) { - $columnsDisplay[] = $column; - } - } - } - - try { - $countryM = new Application_Model_JoTabPays(); - $sql = $countryM->select()->from($countryM, $columnsDisplay); - if ( $id!==null ) { - $sql->where('codPays3=?', $id); - } else { - $sql->where('codPays3 IS NOT NULL'); - } - $result = $countryM->fetchAll($sql); - } catch (Zend_Db_Adapter_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } catch (Zend_Exception $e) { - throw new SoapFault('ERR', "Application error"); - } - - $tabPays = array(); - if ( $result->count()>0 ) { - foreach ( $result as $item ) { - $tabPays[$item->codPays3] = $item->toArray(); - } - } - - return json_encode($tabPays); - } - - /** - * Currencies - * @param string $id - * @throws SoapFault - * @return string - */ - public function getCurrency($id = null) - { - $this->authenticate(); - - $columnsDisplay = array('devIso', 'devNom'); - try { - $currencyM = new Application_Model_JoTabDevises(); - $sql = $currencyM->select()->from($currencyM, $columnsDisplay); - if ( $id!==null ) { - $sql->where('devIso=?', $id); - } else { - $sql->where("devIso!=''"); - } - $result = $currencyM->fetchAll($sql); - } catch (Zend_Db_Adapter_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } catch (Zend_Exception $e) { - throw new SoapFault('ERR', $e->getMessage()); - } - - $tab = array(); - if ( $result->count()>0 ) { - foreach ( $result as $item ) { - $tab[$item->devIso] = $item->toArray(); - } - } - - return json_encode($tab); - } - - /** - * Bodacc Fonctions - * @param string $id - * @param array $columns - * @throws SoapFault - * @return string - */ - public function getDirFonction($id = null, $columns = array()) - { - $this->authenticate(); - - $columnsList = array( - 'codeFct', - 'libelle', - 'libelleEn', - ); - - if (empty($columns) || count($columns)==0) { - $columnsDisplay = array('codeFct', 'libelle'); - } - // Check authorize column - else { - foreach ( $columns as $column ) { - if ( in_array($column, $columnsList) ) { - $columnsDisplay[] = $column; - } - } - } - - try { - $model = new Application_Model_JoBodaccFonctions(); - $sql = $model->select()->from($model, $columnsDisplay); - if ( $id!==null ) { - $sql->where('codeFct=?', $id); - } - $result = $model->fetchAll($sql); - } catch (Zend_Db_Adapter_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } catch (Zend_Exception $e) { - throw new SoapFault('ERR', $e->getMessage()); - } - - $tab = array(); - if ( $result->count()>0 ) { - foreach ( $result as $item ) { - $tab[$item->codeFct] = $item->toArray(); - } - } - - return json_encode($tab); - } - - protected function getHelp($app, $category, $name) - { - - } - - protected function setHelp($app, $category, $name, $label, $content) - { - - } - -} \ No newline at end of file diff --git a/library/WsScore/Catalog/v0.1/Config.php b/library/WsScore/Catalog/v0.1/Config.php deleted file mode 100644 index dad330e6..00000000 --- a/library/WsScore/Catalog/v0.1/Config.php +++ /dev/null @@ -1,2 +0,0 @@ - 'EntrepElement', - 'ErrorElement' => 'ErrorElement', - 'EntrepResult' => 'EntrepResult', -); \ No newline at end of file diff --git a/library/WsScore/Clients/Afnic/v2.2/Entreprise.php b/library/WsScore/Clients/Afnic/v2.2/Entreprise.php deleted file mode 100644 index 81cfaf77..00000000 --- a/library/WsScore/Clients/Afnic/v2.2/Entreprise.php +++ /dev/null @@ -1,272 +0,0 @@ -serviceClient = true; - $this->serviceClientName = 'Afnic'; - $this->serviceName = 'Entreprise'; - } - - /** - * Retourne une fiche identite entreprise - * @param string $siret Siren de l'entreprise ou siret de l'établissement - * @param int $id Identifiant interne - * @param int $dept - * @param string $waldec Identifiant Registre National des Associations ou Waldec - * @return EntrepResult - */ - public function getIdentite($siret, $id, $dept, $waldec) - { - - - $forceVerif=false; - debugLog('W',"Recherche par identifiant Siren=$siret, Dept=$dep, Id=$id, Waldec=$waldec",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $iInsee = new MInsee(); - $result = new EntrepResult(); - - - if ($waldec<>'' && substr($waldec,0,1)=='W' && $siret*1==0) { - debugLog('I',"AFNIC Recherche par identifiant Waldec $waldec (Siren=$siret, Dept=$dep, Id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $rep=$iInsee->getEtablissementsParId('AUTRE', $waldec, 0, 20, 20); - - $etabs=$rep['reponses']; - if ($rep['nbReponses']>0) { - foreach ($etabs as $nb=>$etab) { - $siret=$etab['Siret']; - $id=$etab['id']; - break; - } - } else { - debugLog('W', "Waldec $waldec non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $error = new ErrorElement(); - $error->errnum = 108; - $error->errmsg = 'Waldec inconnu'; - $result->error = $error; - return $result; - - } - } - - $tabRet=array(); - $siret=trim($siret); - $len=strlen($siret); - $id=trim($id)*1; - if ($len==14) $nic=substr(''.$siret,9,5)*1; - elseif ($len== 9) $nic=''; - elseif ($len== 0) { - $siren=0; $nic=''; - } - else { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error = new ErrorElement(); - $error->errnum = 102; - $error->errmsg = 'Siren Siret inexistant'; - $result->error = $error; - $result->result = $tabRet; - return $result; - } - $siren=substr(''.$siret,0,9)*1; - if ($siren==0 && $id==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error = new ErrorElement(); - $error->errnum = 102; - $error->errmsg = 'Siren inexistant'; - $result->error = $error; - $result->result = $tabRet; - return $result; - } - - if ($id==0 && !$iInsee->valideSiren($siren, $nic)) { - debugLog('W', "Siren $siren/$nic invalide (105)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error = new ErrorElement(); - $error->errnum = 105; - $error->errmsg = 'Siren invalide'; - $result->error = $error; - $result->result = $tabRet; - return $result; - } - - $tabTmp=$this->searchSiren($siret); //@todo : méthode inconnu - if ($tabTmp['results']['nbReponses']==0 && $id==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error = new ErrorElement(); - $error->errnum = 106; - $error->errmsg = 'Siren inconnu'; - $result->error = $error; - $result->result = $tabRet; - return $result; - } - - if ($dep==974) { - debugLog('I',"AFNIC Recherche par Siren/Dept (Waldec=$waldec, Siren=$siret, Dept=$dep, Id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $rep=$iInsee->getEtablissements($siren, $nic, 0, 20, 20, $dep); - $etabs=$rep['reponses']; - if ($rep['nbReponses']>0) { - foreach ($etabs as $nb=>$etab) { - $siren=$etab['siren']; - $nic=$etab['nic']; - $id=$etab['id']; - break; - } - } else { - debugLog('W', "Siren $siren/Waldec $waldec non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error = new ErrorElement(); - $error->errnum = 107; - $error->errmsg = 'Entreprise ou Association non présente dans le département demandé'; - $result->error = $error; - $result->result = $tabRet; - return $result; - } - } - - debugLog('I',"AFNIC Identités demandée pour siret ".strtr(print_r($siret, true),array("\r"=>'',"\n"=>'')). " (id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - debugLog('I', "Avant getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $entrep=$iInsee->getIdentiteEntreprise($siren, $nic, $id, $forceVerif); - debugLog('I', "Après getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - if (empty($entrep)) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error = new ErrorElement(); - $error->errnum = 102; - $error->errmsg = 'Siren inexistant'; - $result->error = $error; - $result->result = $tabRet; - return $result; - } - - $codePaysIso2='FR'; - if ($entrep['Dept']>98) { - $codePaysInsee=$entrep['codeCommune']; - $iDb=new WDB('jo'); - $tabTmp=$iDb->select( - 'jo.tabPays j, insee.insee_tabPays i', - 'j.codPays, j.numPays, j.codPays3, j.codePaysInpi, j.libPays, i.LIBCOG, i.ACTUAL', - "j.codePaysInsee=$codePaysInsee AND j.codePaysInsee=substring( i.COG, 3, 3 ) AND i.ACTUAL IN (1,4) AND j.numPays is NOT NULL", true, MYSQL_ASSOC); - if (count($tabTmp)==1) { - $codePaysIso2=$tabTmp[0]['codPays']; - } else { - $codePaysIso2=''; - foreach ($tabTmp as $tabTmp2) { - if (trim(strtoupper(strtr($tabTmp2['libPays'], - 'àáâãäåæçèéêëìíîïðñòóôõöùúûüýÿÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖÙÚÛÜÝ', - "aaaaaaaceeeeiiiionooooouuuuyyAAAAAAACEEEEIIIIONOOOOOUUUUY")))==trim(strtoupper($tabTmp2['LIBCOG']))) { - $codePaysIso2=$tabTmp2['codPays']; - break; - } - } - if ($codePaysIso2=='') { - sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Afnic $siret/$waldec ($dep) Plusieurs Codes Pays", "Siret $siret - Waldec $waldec - Département $dep - Id=$id".EOL. - print_r($entrep, true).EOL. - print_r($tabTmp, true)); - } - } - } - - $autreId=$entrep['AutreId']; - if ($params->siret>0 && $waldec<>'') - $autreId=$waldec; - - // Source RNCS prioritaire pour les infos entreprises - $nom=$entrep['nomLong']; - if ($nom=='') $nom=$entrep['Nom']; - $sigle=$entrep['sigleLong']; - if ($sigle=='') $sigle=$entrep['Sigle']; - - // Actif RNCS - if ($entrep['EntActiveRCS']) $actif=1; - // Inactif RNCS - elseif (isset($entrep['EntActiveRCS']) && $entrep['EntActiveRCS']==0) $actif=0; - // Actif Insee et périmètre Insee - elseif ($entrep['Actif'] || $entrep['NbEtab']) $actif=1; - else $actif=0; - - // Source INSEE prioritaire sur l'établissement - $enseigne=$entrep['Enseigne']; - if ($enseigne=='') $enseigne=$entrep['enseigneLong']; - $tabCarInvalides=array('/'=>' ','*'=>' ', '&'=>' ET ', '&'=>' ET ', '&'=>' ET ', - '"'=>' ', "'"=>' '); - - $entrep = new EntrepElement(); - $entrep->id = $entrep['id']; - $entrep->Siret = $entrep['Siret']; - $entrep->SiretSiege = $entrep['SiretSiege']; - $entrep->Siege = $entrep['Siege']; - $entrep->Actif = $actif; - $entrep->AutreId = $autreId; - $entrep->idSd = $entrep['Source'].'-'.$entrep['SourceId']; - $entrep->Nom = trim(prepareString(preg_replace('/ +/',' ', strtr($nom,$tabCarInvalides)))); - $entrep->Nom2 = trim(prepareString(preg_replace('/ +/',' ', strtr($entrep['Nom2'],$tabCarInvalides)))); - $entrep->NomCommercial = trim(prepareString(preg_replace('/ +/',' ', strtr($entrep['NomCommercial'],$tabCarInvalides)))); - $entrep->Sigle = trim(prepareString(preg_replace('/ +/',' ', strtr($sigle,$tabCarInvalides)))); - $entrep->Enseigne = trim(prepareString(preg_replace('/ +/',' ', strtr($enseigne,$tabCarInvalides)))); - $entrep->Adresse = prepareString($entrep['Adresse']); - $entrep->Adresse2 = prepareString($entrep['Adresse2']); - $entrep->AdresseNum = prepareString($entrep['AdresseNum']); - $entrep->AdresseBtq = prepareString($entrep['AdresseBtq']); - $entrep->AdresseVoie = prepareString($entrep['AdresseVoie']); - $entrep->AdresseRue = prepareString($entrep['AdresseRue']); - $entrep->CP = $entrep['CP']; - $entrep->Ville = prepareString($entrep['Ville']); - $entrep->Pays = prepareString($entrep['Pays']); // Ajouté le 18 02 2008 - $entrep->PaysIso2 = $codePaysIso2; - $entrep->Civilite = $entrep['Civilite']; - $entrep->NbEtab = $entrep['NbEtab']; - $entrep->Tel = prepareString($entrep['Tel']); - $entrep->Fax = prepareString($entrep['Fax']); - $entrep->Web = prepareString($entrep['Web']); - $entrep->Mail = prepareString($entrep['Mail']); - $entrep->FJ = $entrep['FJ']; - $entrep->FJ_lib = trim(prepareString(preg_replace('/ +/',' ', strtr($entrep['FJ_lib'],$tabCarInvalides)))); - $entrep->Siren = $entrep['Siren']; - $entrep->Nic = $entrep['Nic']; - $entrep->NafEnt = $entrep['NafEnt']; - $entrep->NafEntLib = trim(prepareString(preg_replace('/ +/',' ', strtr($entrep['NafEntLib'],$tabCarInvalides)))); - $entrep->Capital = $entrep['Capital']; - $entrep->CapitalDev = $entrep['CapitalDev']; - $entrep->CapitalLib = prepareString($entrep['CapitalLib']); // Ajouté le 18 02 2008 - $entrep->DateCreaEt = $entrep['DateCreaEt']; - $entrep->DateCreaEn = $entrep['DateCreaEn']; - $entrep->DateClotEn = $entrep['DateClotEn']; - $entrep->EffEnTr = prepareString($entrep['EffEnTr']); - $entrep->EffEnTrLib = prepareString($entrep['EffEnTrLib']); - $entrep->Effectif = prepareString($entrep['Effectif']); - $entrep->Dept = $entrep['Dept']; - $entrep->codeCommune = prepareString($entrep['codeCommune']); - $entrep->TrancheCA = prepareString($entrep['TrancheCA']); - $entrep->TrancheCALib = prepareString($entrep['TrancheCALib']); - $entrep->dir1Titre = prepareString($entrep['dir1Titre']);//utf8 - $entrep->dir1NomPrenom = prepareString($entrep['dir1NomPrenom']); - $entrep->dir1DateFct = prepareString($entrep['dir1DateFct']); - $entrep->SituationJuridique = strtoupper(substr($entrep['SituationJuridique'],0,1)); - - if (preg_match('/NAF4/i', $this->tabInfoUser['pref'])) { - $entrep2 = $iInsee->getNaf4($siren, $nic, $id); - $entrep->Naf4Ent = $entrep2['apen4']; - $entrep->Naf4Etab = $entrep2['apet4']; - $entrep->Naf4EntLib = prepareString($entrep2['apen4_lib']); - $entrep->Naf4EtabLib = prepareString($entrep2['apet4_lib']); - } - debugLog('I', 'Etablissement retourné = '. $entrep['Nom'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - wsLog('identite',$siret,$id); - - $error = new ErrorElement(); - $error->errmsg = ''; - $error->errnum = 0; - $result->result = $entrep; - return $result; - } - -} diff --git a/library/WsScore/Clients/Afnic/v2.2/Types.php b/library/WsScore/Clients/Afnic/v2.2/Types.php deleted file mode 100644 index e9d4472e..00000000 --- a/library/WsScore/Clients/Afnic/v2.2/Types.php +++ /dev/null @@ -1,349 +0,0 @@ - array( - 'actif' => true, - 'versions' => array( - '2.2' => array( 'actif' => true, 'defaut' => true ), - ), - 'idClient' => array(1,39), - ), - 'veolia' => array( - 'actif' => true, - 'versions' => array( - '0.2' => array( 'actif' => true, 'defaut' => true ), - '0.1' => array( 'actif' => true, 'defaut' => false ), - ), - 'idClient' => array(1,59), - ), - 'vwbank' => array( - 'actif' => true, - 'versions' => array( - '0.2' => array( 'actif' => true, 'defaut' => false ), - '0.1' => array( 'actif' => true, 'defaut' => true ), - ), - 'idClient' => array(1,32), - ), - 'sfr' => array( - 'actif' => true, - 'versions' => array( - '0.1' => array( 'actif' => true, 'defaut' => true ), - ), - 'idClient' => array(1,157), - ), -); \ No newline at end of file diff --git a/library/WsScore/Clients/Sfr/v0.1/Config.php b/library/WsScore/Clients/Sfr/v0.1/Config.php deleted file mode 100644 index 584ad759..00000000 --- a/library/WsScore/Clients/Sfr/v0.1/Config.php +++ /dev/null @@ -1,4 +0,0 @@ - 'Evaluation', -); \ No newline at end of file diff --git a/library/WsScore/Clients/Sfr/v0.1/Entreprise.php b/library/WsScore/Clients/Sfr/v0.1/Entreprise.php deleted file mode 100644 index d4b114a4..00000000 --- a/library/WsScore/Clients/Sfr/v0.1/Entreprise.php +++ /dev/null @@ -1,60 +0,0 @@ -serviceClient = true; - $this->serviceClientName = 'Sfr'; - $this->serviceName = 'Entreprise'; - } - - /** - * Evaluation - * @param string $siren - * Identifiant de l'entreprise (9 chiffres) - * @return Evaluation - */ - public function getEvaluate($siren) - { - $this->authenticate(); - - if ( strlen($siren) != 9 ) { - $this->sendError('1010'); - } - - require_once 'Metier/insee/classMInsee.php'; - $classInsee = new MInsee(); - - //Vérifier SIREN valide - if( !$classInsee->valideSiren($siren) ) { - $this->sendError('1010'); - } - - //Vérifier SIREN existe - if ( !$classInsee->sirenExiste($siren) ) { - $this->sendError('1020'); - } - - require_once 'Metier/Sfr/Sfr.php'; - $sfrM = new Metier_Sfr(); - $sfrM->forceIdentite = true; - $sfrM->evaluate($siren); - - //Calculate - $eval = new Evaluation(); - $eval->indicateur = $sfrM->getIndicateur($value); - $eval->po = $sfrM->getPo(); - $eval->comment = $sfrM->getComment(); - $eval->dateScore = $sfrM->getDateCalculIndiscore(); - - $this->wsLog('indiscore', $siren); - - return $eval; - } - - -} \ No newline at end of file diff --git a/library/WsScore/Clients/Sfr/v0.1/Types.php b/library/WsScore/Clients/Sfr/v0.1/Types.php deleted file mode 100644 index 54280fca..00000000 --- a/library/WsScore/Clients/Sfr/v0.1/Types.php +++ /dev/null @@ -1,27 +0,0 @@ - 'Identite', - 'IdentiteBilan' => 'IdentiteBilan', - 'AdresseNorme' => 'AdresseNorme', - 'SearchEntrepriseReturn' => 'SearchEntrepriseReturn', - 'EntrepriseItem' => 'EntrepriseItem', - 'EntrepriseCriteres' => 'EntrepriseCriteres', - 'SearchReturn' => 'SearchReturn', -); \ No newline at end of file diff --git a/library/WsScore/Clients/Veolia/v0.1/Entreprise.php b/library/WsScore/Clients/Veolia/v0.1/Entreprise.php deleted file mode 100644 index c43c2936..00000000 --- a/library/WsScore/Clients/Veolia/v0.1/Entreprise.php +++ /dev/null @@ -1,697 +0,0 @@ -serviceClient = true; - $this->serviceClientName = 'Veolia'; - $this->serviceName = 'Entreprise'; - } - - /** - * Retourne les informations identitaires de l'entreprise ou de l'établissement demandé - * @param string $siret Siren de l'entreprise ou siret de l'établissement - * @param int $id Identifiant interne - * @return Identite - */ - public function getIdentite($siret, $id = 0) - { - $this->authenticate(); - - //Initialisation - if (empty($id)) { - $id = 0; - } - $forceVerif = false; - - debugLog('I',"Identités demandée pour siret $siret (id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if ($siren*1==0 && $id==0) { - $this->sendError('1010'); - } elseif ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren, $nic, $id, $forceVerif, false); - debugLog('I', "Après getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($entrep) || empty($entrep['id']) ) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - // Adresse Normalisé - $adresse = $iInsee->getAdresse($siren, $nic); - $adresseNorme = new AdresseNorme(); - $adresseNorme->L1 = $adresse['L1_NOM']; - $adresseNorme->L2 = $adresse['L2_NOM2']; - $adresseNorme->L3 = $adresse['L3_ADRCOMP']; - $adresseNorme->L4 = $adresse['L4_VOIE']; - $adresseNorme->L5 = $adresse['L5_DISTSP']; - $adresseNorme->L6 = $adresse['L6_POST']; - $adresseNorme->L7 = $adresse['L7_PAYS']; - - //Formattage du retour - $identite = new Identite(); - $identite->id = $entrep['id']; - $identite->Siret = $entrep['Siret']; - $identite->SiretSiege = $entrep['SiretSiege']; - $identite->Siege = $entrep['Siege']; - $identite->NumRC = $entrep['numRC']; // Ajouté le 4 08 2009 - $identite->Actif = $entrep['Actif']; - $identite->ActifEco = $entrep['ActifEco']; // Etab éco actif, ajout le 28/04/2011 - $identite->ActifEcoDate = $entrep['ActifEcoDate']; // Date si éco inactif et jur actif - $identite->ActifEcoType = $entrep['ActifEcoType']; // vide ou NPAI ou PFER ou ECOF - $identite->EntActiveRCS = $entrep['EntActiveRCS']; - $identite->AutreId = $entrep['AutreId']; - $identite->Nom = prepareString(strtr($entrep['Nom'],'/*',' ')); - $identite->Nom2 = prepareString($entrep['Nom2']); - $identite->NomLong = prepareString($entrep['nomLong']); // Ajouté le 4 08 2009 - $identite->NomCommercial = prepareString($entrep['NomCommercial']); // Ajouté le 16 11 2010 - $identite->Siret = $entrep['Siret']; - $identite->Sigle = prepareString($entrep['Sigle']); - $identite->SigleLong = prepareString($entrep['sigleLong']); // Ajouté le 4 08 2009 - $identite->Enseigne = prepareString($entrep['Enseigne']); - $identite->EnseigneLong = prepareString($entrep['enseigneLong']); // Ajouté le 16 11 2010 - $identite->Adresse = prepareString($entrep['Adresse']); - $identite->Adresse2 = prepareString($entrep['Adresse2']); - $identite->AdresseNum = prepareString($entrep['AdresseNum']); - $identite->AdresseBtq = prepareString($entrep['AdresseBtq']); - $identite->AdresseVoie = prepareString($entrep['AdresseVoie']); - $identite->AdresseRue = prepareString($entrep['AdresseRue']); - $identite->CP = $entrep['CP']; - $identite->Ville = prepareString($entrep['Ville']); - $identite->Pays = prepareString($entrep['Pays']); // Ajouté le 18 02 2008 - $identite->PaysIso2 = $entrep['PaysIso2']; - $identite->AdresseNorme = $adresseNorme; - $identite->Civilite = $entrep['Civilite']; - $identite->NbEtab = $entrep['NbEtab']; - $identite->Tel = prepareString($entrep['Tel']); - $identite->Fax = prepareString($entrep['Fax']); - $identite->Web = prepareString($entrep['Web']); - $identite->Mail = prepareString($entrep['Mail']); - $identite->GeoLat = $entrep['GeoLat']; - $identite->GeoLon = $entrep['GeoLon']; - $identite->GeoPrecis = $entrep['GeoPrecis']; - $identite->TvaNumero = $entrep['TvaNumero']; - $identite->TvaAttribue = $entrep['TvaAttribue']; - $identite->FJ = $entrep['FJ']; - $identite->FJ_Lib = $entrep['FJ_lib']; - $identite->FJ2 = $entrep['FJ2']; // Ajouté le 4 08 2009 - $identite->FJ2_Lib = $entrep['FJ2_Lib']; // Ajouté le 4 08 2009 - $identite->Siren = $entrep['Siren']; - $identite->Nic = $entrep['Nic']; - $identite->NafEnt = $entrep['NafEnt']; - $identite->NafEntLib = $entrep['NafEntLib']; - $identite->NafEtab = $entrep['NafEtab']; - $identite->NafEtabLib = $entrep['NafEtabLib']; - $identite->NumRM = $entrep['NumRM']; - $identite->Activite = $entrep['Activite']; - $identite->Capital = $entrep['Capital']; - $identite->CapitalDev = $entrep['CapitalDev']; - $identite->CapitalLib = $entrep['CapitalLib']; // Ajouté le 18 02 2008 - $identite->CapitalType = prepareString($entrep['CapitalType']); // Ajouté le 4 08 2009 - $identite->DateCreaEt = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEt']); - $identite->DateCreaEn = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEn']); - $identite->DateClotEt = $entrep['DateClotEt']; //@todo : date - $identite->DateImmat = $entrep['dateImmat']; // Ajouté le 4 08 2009 - $identite->DateRadiation = $entrep['dateRad']; // Ajouté le 4 08 2009 - $identite->EffEnTr = $entrep['EffEnTr']; - $identite->EffEnTrLib = $entrep['EffEnTrLib']; - $identite->Effectif = $entrep['Effectif']; - $identite->EffEtTr = $entrep['EffEtTr']; // Ajout le 11 08 2010 - $identite->EffEtTrLib = $entrep['EffEtTrLib']; // Ajout le 11 08 2010 - $identite->EffectifEtab = $entrep['EffectifEtab']; // Ajout le 11 08 2010 - $identite->Dept = $entrep['Dept']; - $identite->codeCommune = prepareString($entrep['codeCommune']); - $identite->AnneeEffEn = $entrep['AnneeEffEn']; - $identite->AnneeEffEt = $entrep['AnneeEffEt']; - $identite->AnneeTCA = $entrep['AnneeTCA']; - $identite->TrancheCA = $entrep['TrancheCA']; - $identite->TrancheCALib = $entrep['TrancheCALib']; - $identite->TrancheCAType = $entrep['TrancheCAType']; - $identite->dir1Code = $entrep['dir1Code']; - $identite->dir1Titre = prepareString($entrep['dir1Titre']); - $identite->dir1NomPrenom = prepareString($entrep['dir1NomPrenom']); - $identite->dir1DateFct = prepareString($entrep['dir1DateFct']); //@todo : date - $identite->dir1DateNaiss = $entrep['dir1DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir1LieuNaiss = prepareString($entrep['dir1LieuNaiss']); // Ajouté le 4 08 2009 - $identite->dir2Code = $entrep['dir2Code']; - $identite->dir2Titre = prepareString($entrep['dir2Titre']); - $identite->dir2NomPrenom = prepareString($entrep['dir2NomPrenom']); - $identite->dir2DateFct = $entrep['dir2DateFct']; //@todo : date - $identite->dir2DateNaiss = prepareString($entrep['dir2DateNaiss']); //@todo : date // Ajouté le 4 08 2009 - $identite->dir2LieuNaiss = prepareString($entrep['dir2LieuNaiss']); // Ajouté le 4 08 2009 - $identite->NatureActivite = $entrep['NatureActivite']; // Nature de l'activité - $identite->OrigineCreation = $entrep['OrigineCreation']; // Origine de la création - $identite->TypeExploitation = $entrep['TypeExploitation']; - $identite->Auxiliaire = $entrep['Auxiliaire']; // 1=Auxiliaire / 0=Non auxiliaire - $identite->SituationJuridique = $entrep['SituationJuridique']; - $identite->Bilan->Millesime = $entrep['bilanAnnee']; - $identite->Bilan->Cloture = $entrep['bilanDate']; //@todo : date - $identite->Bilan->Duree = $entrep['bilanMois']; - $identite->Bilan->Devise = $entrep['bilanDevise']; - $identite->Bilan->Capital = $entrep['bilanDA']; - $identite->Bilan->CA = $entrep['bilanFL']; - $identite->Bilan->CAestime = $entrep['bilanFLestime']; - $identite->Bilan->Resultat = prepareString($entrep['bilanHN']); - $identite->Bilan->Effectif = $entrep['bilanYP']; - $identite->DateMajINSEE = $entrep['DateMajINSEE']; //@todo : date - $identite->DateMajRCS = $entrep['DateMajRCS']; //@todo : date - $identite->DateMajBILAN = $entrep['bilanDateMaj']; //@todo : date - $identite->DateMajANN = $entrep['dateMajANN']; //@todo : date - $identite->DateMajID = $entrep['dateMajIdentite']; //@todo : date - - debugLog('I', 'Etablissement retourné = '. $entrep['Nom'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('identite',$siret,$id); - - return $identite; - } - - /** - * Recherche - * @param EntrepriseCriteres $criteres - * @param integer $position Position de parcours des résultats retournées (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées lors d'une requête (20 par défaut) - * @param integer $maxRep Nombre de réponses maximum pouvant être retournées lors d'une requête (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (false par défaut) - * @param boolean $avecSiren Seulement les entités sirénées (false par défaut) - * @return SearchEntrepriseReturn - */ - public function searchEntreprise($criteres, $position = 0, $nbRep = 20, $maxRep = 200, $pertinence = false, $avecSiren = false) - { - $this->authenticate(); - - if (empty($position)) { $position = 0;} - if (empty($nbRep)) { $nbRep = 20; } - if (empty($maxRep)) { $maxRep = 200; } - - require_once 'i18n/cleanchar.php'; - - $entCriteres = new EntrepriseCriteres(); - $entCriteres = $criteres; - $identifiant = $entCriteres->identifiant; - $typeId = ''; - - //Detection autour de l'identifiant - if ($identifiant!='') { - $len = strlen($identifiant); - //Numéro WALDEC - if (strtoupper(substr($identifiant,0,1))=='W') { - $typeId = 'W'; - //Code ISIN - } elseif ($len==12){ - $typeId = 'I'; - //TVA Intracommunautaire - } elseif (in_array(substr($identifiant,0,2), - array('AT','BE','BG','CY','CZ','DE','DK','EE','EL','ES', - 'FI','GB','HU','IE','IT','LT','LU','LV','MT','NL','PL', - 'PT','RO','SE','SI','SK'))){ - //"La recherche par numéro de TVA n'est pas encore possible sur ce pays !"; - //Pour la france - } elseif (substr($identifiant,0,2)=='FR') { - $typeId = 'S'; - if ($len==13) $identifiant = substr($identifiant,4,9); - else $identifiant = ''; - //Numéro RC - } elseif (preg_match('/A|B|C|D/i', $identifiant)) { - $typeId = 'R'; - //Siren normal on enleve tout ce qui n'est pas un chiffre - } else { - $typeId = 'S'; - } - } - - $adresse = trim($entCriteres->adresse); - - //Détection Tel/Fax uniquement - if ( empty($typeId) - && empty($entCriteres->raisonSociale) - && empty($adresse) - && empty($entCriteres->codePostal) - && empty($entCriteres->ville) - && empty($entCriteres->naf) ){ - $typeId = 'TEL'; - } - - if (in_array($typeId, array('R', 'W', 'I'))){ - - $O = $this->searchAutreId( - $typeId, - $identifiant, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - $entCriteres->codePostal - ); - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } elseif ($typeId == 'S'){ - - $O = $this->searchSiren( - $identifiant, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - $entCriteres->codePostal - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - $output->info = $O->info; - return $output; - - } elseif ($typeId == 'TEL'){ - - $O = $this->searchTelFax( - $entCriteres->telFax, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } else { - - $O = $this->searchNomAdr( - cleanstring($entCriteres->raisonSociale), - cleanstring($entCriteres->adresse), - $entCriteres->codePostal, - cleanstring($entCriteres->ville), - empty($entCriteres->siege) ? false : $entCriteres->siege, - empty($entCriteres->actif) ? false : $entCriteres->actif, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - empty($pertinence) ? false : $pertinence, - empty($avecSiren) ? false : $avecSiren, - $entCriteres->naf - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - } - } - -/** - * Recherche entreprise par nom et adresse - * @param string $raisonSociale Raison Sociale ou Enseigne ou Sigle - * @param string $adresse Adresse de l'entreprise, du type : 3 rue des Plantes - * @param string $codePostal Code postal (ex: 75014) - * @param string $ville Ville - * @param boolean $siege Limitation de la recherche au sièges (si true) - * @param boolean $actif Limitation aux établissements actifs (si true) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (si true) - * @param boolean $avecSiren Ne proposer que les entités sirénées - * @param string $ape_etab - * @return SearchReturn - */ - public function searchNomAdr($raisonSociale, $adresse='', $codePostal='', $ville='', $siege=false, $actif=false, $deb=0, $nbRep=20, $maxRep=200, $pertinence=false, $avecSiren=false, $ape_etab='') - { - $this->authenticate(); - - debugLog('I',"Recherche Entreprise de $raisonSociale, $adresse, $codePostal $ville (Siège=$siege / Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($adresse)) $adresse = ''; - if (empty($codePostal)) $codePostal = ''; - if (empty($ville)) $ville = ''; - if (empty($siege)) $siege = false; - - if ( $actif ) { - $actif = 1; - } else { - $actif = 2; - } - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($pertinence)) $pertinence = false; - if (empty($avecSiren)) $avecSiren = false; - if (empty($ape_etab)) $ape_etab = ''; - - $iInsee = new MInsee(); - $etabs = $iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren, $ape_etab); - - $result = new SearchReturn(); - $tabRet = array(); - if (count($etabs['reponses'])) { - foreach ($etabs['reponses'] as $etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = strtr($etab['Nom'],'/*',' '); - $reponse->Nom2 = $etab['Nom2']; - $reponse->Sigle = $etab['Sigle']; - $reponse->Enseigne = $etab['Enseigne']; - $reponse->Adresse = $etab['Adresse']; - $reponse->Adresse2 = $etab['Adresse2']; - $reponse->CP = $etab['CP']; - $reponse->Ville = $etab['Ville']; - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = $iInsee->getLibelleFJ($etab['FJ']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = $iInsee->getLibelleNaf($etab['NafEtab']); // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = $iInsee->getLibelleNaf($etab['NafEnt']); - - $tabRet[] = $reponse; - } - } - - $fp=@fopen(LOG_PATH.'/recherches.log','a'); - - $siretTrouve = 0; - if ($etabs['nbReponses']==0) { - - $str="NbRep=0, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - @fwrite($fp, $str.EOL); - @fclose($fp); - debugLog('I', "rechercheEtab : AUCUN RESULTAT, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = count($tabRet); - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - - return $result; - - } - - if ($etabs['nbReponses']==1) $siretTrouve=$etabs['reponses'][0]['Siret']; - $str="NbRep=".$etabs['nbReponses'].", S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - @fwrite($fp, $str.EOL); - @fclose($fp); - debugLog('I', "rechercheEtab : ".$etabs['nbReponses']." RESULTATS, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = $etabs['nbReponses']; - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - return $result; - } - - /** - * Recherche d'entreprise ou d'établissement par leur identifiant SIREN ou SIRET - * @param string $siret Siren ou Siret de l'entreprise ou de l'établissement sur 9 ou 14 chiffres significatifs - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param integer $dep Département - * @return SearchReturn - */ - public function searchSiren($siret, $deb=0, $nbRep=20, $maxRep=200, $dep=0) - { - $this->authenticate(); - - debugLog('I',"Recherche par Siret de $siret (dep=$dep) avec un maximum de $maxRep réponses pour la tranche $deb à $nbRep",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ( strlen($siret)!=14 && strlen($siret)!=9 ){ - debugLog('W', "Siren/Siret $siret incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($dep)) $dep = 0; - - $nbReponsesTotal = $nbReponses = 0; - - $siren = substr($siret,0,9); - if (strlen($siret)==14) $nic = substr($siret,9,5); - elseif (strlen($siret)== 9) $nic = ''; - - $iInsee = new MInsee(); - - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep, $dep); - if (count($rep['reponses'])==0 && $dep>0) { - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep); - } - $etabs = $rep['reponses']; - $tabRet = array(); - if (count($etabs)>0){ - foreach ($etabs as $nb=>$etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = prepareString($etab['FJLib']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = $etab['NafEtabLib']; // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = $etab['NafEntLib']; - $tabRet[] = $reponse; - } - } - $nbReponsesTotal = $rep['nbReponsesTotal']; - $nbReponses = $rep['nbReponses']; - - /** Si le siren est valide, on part chez Infogreffe **/ - if (count($tabRet)==0 && $iInsee->valideSiren($siren)) { - $iGeffes = new MGreffes(); - $etab = $iGeffes->getIdentite($siren); - if ($etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString($etab['Nom']); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = utf8_encode(prepareString(utf8_decode($etab['FJLib']))); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; - $reponse->NafEtabLib = $etab['NafEtabLib']; - $reponse->NafEnt = $etab['NafEnt']; - $reponse->NafEntLib = $etab['NafEntLib']; - - $tabRet[] = $reponse; - $nbReponses = 1; - $nbReponsesTotal = 1; - - } else { - $iDb = new WDB(); - $iDb->insert('siren_inexistants', - array( 'siren'=>$siren, - 'nic'=>$nic, - 'dep'=>$dep, - 'login'=>$this->tabInfoUser['login'], - 'client'=>$this->tabInfoUser['idClient'], - 'dateInsert'=>date('YmdHis'))); - $nbReponses = 0; - $nbReponsesTotal = 0; - } - } - - $output = new SearchReturn(); - $output->nbReponses = $nbReponses; - $output->nbReponsesTotal = $nbReponsesTotal; - $output->result = $tabRet; - $output->info = $rep['info']; - return $output; - } - - /** - * Recherche d'entreprise ou d'établissement par un autre Identifiant - * - * @param string $typeId I=Code Isin, W=N°Waldec (Associations) ou R=N°RC (Registre Greffe) - * @param string $identifiant Identifiant recherché - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchAutreId($typeId, $identifiant, $deb=0, $nbRep=20, $maxRep=200, $dep=0) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - if (empty($dep)) $dep = 0; - - $typeId = substr(trim(strtoupper($typeId)),0,1); - - if ($typeId!='I' && $typeId!='W' && $typeId!='R') { - debugLog('I',"Type d'identifiant $typeId inexistant",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1021'); - } - $tabRet = array(); - debugLog('I',"Recherche par identifiant $typeId de $identifiantavec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if ($typeId=='W' || $typeId=='R') - { - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('AUTRE', $identifiant, $deb, $nbRep, $maxRep, $dep); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } else { - $iBourse = new MBourse($siren); - $siren = $iBourse->getCodeSiren($identifiant); - return $this->searchSiren($siren, $deb, $nbRep, $maxRep); - } - } - - - /** - * Recherche d'entreprise ou d'établissement par leur TEL FAX - * - * @param string $telFax Téléphone ou fax de l'établissement (ex: 0175438010) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchTelFax($telFax, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - - $tabRet = array(); - debugLog('I',"Recherche par Tel/Fax de $telFax avec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - //$assocs=$this->iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $nbRep, $pertinence); - /** @todo A FAIRE **/ - if (strlen($telFax)<10 || strlen($telFax)>14) { - debugLog('W', "Tel/Fax $telFax incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1011'); - } - - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('TEL', $telFax, $deb, $nbRep, $maxRep); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } - -} \ No newline at end of file diff --git a/library/WsScore/Clients/Veolia/v0.1/Types.php b/library/WsScore/Clients/Veolia/v0.1/Types.php deleted file mode 100644 index dc2409bd..00000000 --- a/library/WsScore/Clients/Veolia/v0.1/Types.php +++ /dev/null @@ -1,906 +0,0 @@ - 'Identite', - 'IdentiteBilan' => 'IdentiteBilan', - 'AdresseNorme' => 'AdresseNorme', - 'SearchEntrepriseReturn' => 'SearchEntrepriseReturn', - 'EntrepriseItem' => 'EntrepriseItem', - 'EntrepriseCriteres' => 'EntrepriseCriteres', - 'SearchReturn' => 'SearchReturn', - 'ListeEtablissementsReturn' => 'ListeEtablissementsReturn', - 'Etablissement' => 'Etablissement', -); \ No newline at end of file diff --git a/library/WsScore/Clients/Veolia/v0.2/Entreprise.php b/library/WsScore/Clients/Veolia/v0.2/Entreprise.php deleted file mode 100644 index 510809b4..00000000 --- a/library/WsScore/Clients/Veolia/v0.2/Entreprise.php +++ /dev/null @@ -1,780 +0,0 @@ -serviceClient = true; - $this->serviceClientName = 'Veolia'; - $this->serviceName = 'Entreprise'; - } - - /** - * Retourne les informations identitaires de l'entreprise ou de l'établissement demandé - * @param string $siret Siren de l'entreprise ou siret de l'établissement - * @param int $id Identifiant interne - * @return Identite - */ - public function getIdentite($siret, $id = 0) - { - $this->authenticate(); - - //Initialisation - if (empty($id)) { - $id = 0; - } - $forceVerif = false; - - debugLog('I',"Identités demandée pour siret $siret (id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if ($siren*1==0 && $id==0) { - $this->sendError('1010'); - } elseif ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren, $nic, $id, $forceVerif, false); - debugLog('I', "Après getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($entrep) || empty($entrep['id']) ) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - // Adresse Normalisé - $adresse = $iInsee->getAdresse($siren, $nic); - $adresseNorme = new AdresseNorme(); - $adresseNorme->L1 = $adresse['L1_NOM']; - $adresseNorme->L2 = $adresse['L2_NOM2']; - $adresseNorme->L3 = $adresse['L3_ADRCOMP']; - $adresseNorme->L4 = $adresse['L4_VOIE']; - $adresseNorme->L5 = $adresse['L5_DISTSP']; - $adresseNorme->L6 = $adresse['L6_POST']; - $adresseNorme->L7 = $adresse['L7_PAYS']; - - //Formattage du retour - $identite = new Identite(); - $identite->id = $entrep['id']; - $identite->Siret = $entrep['Siret']; - $identite->SiretSiege = $entrep['SiretSiege']; - $identite->Siege = $entrep['Siege']; - $identite->NumRC = $entrep['numRC']; // Ajouté le 4 08 2009 - $identite->Actif = $entrep['Actif']; - $identite->ActifEco = $entrep['ActifEco']; // Etab éco actif, ajout le 28/04/2011 - $identite->ActifEcoDate = $entrep['ActifEcoDate']; // Date si éco inactif et jur actif - $identite->ActifEcoType = $entrep['ActifEcoType']; // vide ou NPAI ou PFER ou ECOF - $identite->EntActiveRCS = $entrep['EntActiveRCS']; - $identite->AutreId = $entrep['AutreId']; - $identite->Nom = prepareString(strtr($entrep['Nom'],'/*',' ')); - $identite->Nom2 = prepareString($entrep['Nom2']); - $identite->NomLong = prepareString($entrep['nomLong']); // Ajouté le 4 08 2009 - $identite->NomCommercial = prepareString($entrep['NomCommercial']); // Ajouté le 16 11 2010 - $identite->Siret = $entrep['Siret']; - $identite->Sigle = prepareString($entrep['Sigle']); - $identite->SigleLong = prepareString($entrep['sigleLong']); // Ajouté le 4 08 2009 - $identite->Enseigne = prepareString($entrep['Enseigne']); - $identite->EnseigneLong = prepareString($entrep['enseigneLong']); // Ajouté le 16 11 2010 - $identite->Adresse = prepareString($entrep['Adresse']); - $identite->Adresse2 = prepareString($entrep['Adresse2']); - $identite->AdresseNum = prepareString($entrep['AdresseNum']); - $identite->AdresseBtq = prepareString($entrep['AdresseBtq']); - $identite->AdresseVoie = prepareString($entrep['AdresseVoie']); - $identite->AdresseRue = prepareString($entrep['AdresseRue']); - $identite->CP = $entrep['CP']; - $identite->Ville = prepareString($entrep['Ville']); - $identite->Pays = prepareString($entrep['Pays']); // Ajouté le 18 02 2008 - $identite->PaysIso2 = $entrep['PaysIso2']; - $identite->AdresseNorme = $adresseNorme; - $identite->Civilite = $entrep['Civilite']; - $identite->NbEtab = $entrep['NbEtab']; - $identite->Tel = prepareString($entrep['Tel']); - $identite->Fax = prepareString($entrep['Fax']); - $identite->Web = prepareString($entrep['Web']); - $identite->Mail = prepareString($entrep['Mail']); - $identite->GeoLat = $entrep['GeoLat']; - $identite->GeoLon = $entrep['GeoLon']; - $identite->GeoPrecis = $entrep['GeoPrecis']; - $identite->TvaNumero = $entrep['TvaNumero']; - $identite->TvaAttribue = $entrep['TvaAttribue']; - $identite->FJ = $entrep['FJ']; - $identite->FJ_Lib = $entrep['FJ_lib']; - $identite->FJ2 = $entrep['FJ2']; // Ajouté le 4 08 2009 - $identite->FJ2_Lib = $entrep['FJ2_Lib']; // Ajouté le 4 08 2009 - $identite->Siren = $entrep['Siren']; - $identite->Nic = $entrep['Nic']; - $identite->NafEnt = $entrep['NafEnt']; - $identite->NafEntLib = $entrep['NafEntLib']; - $identite->NafEtab = $entrep['NafEtab']; - $identite->NafEtabLib = $entrep['NafEtabLib']; - $identite->NumRM = $entrep['NumRM']; - $identite->Activite = $entrep['Activite']; - $identite->Capital = $entrep['Capital']; - $identite->CapitalDev = $entrep['CapitalDev']; - $identite->CapitalLib = $entrep['CapitalLib']; // Ajouté le 18 02 2008 - $identite->CapitalType = prepareString($entrep['CapitalType']); // Ajouté le 4 08 2009 - $identite->DateCreaEt = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEt']); - $identite->DateCreaEn = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEn']); - $identite->DateClotEt = $entrep['DateClotEt']; //@todo : date - $identite->DateImmat = $entrep['dateImmat']; // Ajouté le 4 08 2009 - $identite->DateRadiation = $entrep['dateRad']; // Ajouté le 4 08 2009 - $identite->EffEnTr = $entrep['EffEnTr']; - $identite->EffEnTrLib = $entrep['EffEnTrLib']; - $identite->Effectif = $entrep['Effectif']; - $identite->EffEtTr = $entrep['EffEtTr']; // Ajout le 11 08 2010 - $identite->EffEtTrLib = $entrep['EffEtTrLib']; // Ajout le 11 08 2010 - $identite->EffectifEtab = $entrep['EffectifEtab']; // Ajout le 11 08 2010 - $identite->Dept = $entrep['Dept']; - $identite->codeCommune = prepareString($entrep['codeCommune']); - $identite->AnneeEffEn = $entrep['AnneeEffEn']; - $identite->AnneeEffEt = $entrep['AnneeEffEt']; - $identite->AnneeTCA = $entrep['AnneeTCA']; - $identite->TrancheCA = $entrep['TrancheCA']; - $identite->TrancheCALib = $entrep['TrancheCALib']; - $identite->TrancheCAType = $entrep['TrancheCAType']; - $identite->dir1Code = $entrep['dir1Code']; - $identite->dir1Titre = prepareString($entrep['dir1Titre']); - $identite->dir1NomPrenom = prepareString($entrep['dir1NomPrenom']); - $identite->dir1DateFct = prepareString($entrep['dir1DateFct']); //@todo : date - $identite->dir1DateNaiss = $entrep['dir1DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir1LieuNaiss = prepareString($entrep['dir1LieuNaiss']); // Ajouté le 4 08 2009 - $identite->dir2Code = $entrep['dir2Code']; - $identite->dir2Titre = prepareString($entrep['dir2Titre']); - $identite->dir2NomPrenom = prepareString($entrep['dir2NomPrenom']); - $identite->dir2DateFct = $entrep['dir2DateFct']; //@todo : date - $identite->dir2DateNaiss = prepareString($entrep['dir2DateNaiss']); //@todo : date // Ajouté le 4 08 2009 - $identite->dir2LieuNaiss = prepareString($entrep['dir2LieuNaiss']); // Ajouté le 4 08 2009 - $identite->NatureActivite = $entrep['NatureActivite']; // Nature de l'activité - $identite->OrigineCreation = $entrep['OrigineCreation']; // Origine de la création - $identite->TypeExploitation = $entrep['TypeExploitation']; - $identite->Auxiliaire = $entrep['Auxiliaire']; // 1=Auxiliaire / 0=Non auxiliaire - $identite->SituationJuridique = $entrep['SituationJuridique']; - $identite->Bilan->Millesime = $entrep['bilanAnnee']; - $identite->Bilan->Cloture = $entrep['bilanDate']; //@todo : date - $identite->Bilan->Duree = $entrep['bilanMois']; - $identite->Bilan->Devise = $entrep['bilanDevise']; - $identite->Bilan->Capital = $entrep['bilanDA']; - $identite->Bilan->CA = $entrep['bilanFL']; - $identite->Bilan->CAestime = $entrep['bilanFLestime']; - $identite->Bilan->Resultat = prepareString($entrep['bilanHN']); - $identite->Bilan->Effectif = $entrep['bilanYP']; - $identite->DateMajINSEE = $entrep['DateMajINSEE']; //@todo : date - $identite->DateMajRCS = $entrep['DateMajRCS']; //@todo : date - $identite->DateMajBILAN = $entrep['bilanDateMaj']; //@todo : date - $identite->DateMajANN = $entrep['dateMajANN']; //@todo : date - $identite->DateMajID = $entrep['dateMajIdentite']; //@todo : date - - debugLog('I', 'Etablissement retourné = '. $entrep['Nom'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('identite',$siret,$id); - - return $identite; - } - - /** - * Recherche - * @param EntrepriseCriteres $criteres - * @param integer $position Position de parcours des résultats retournées (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées lors d'une requête (20 par défaut) - * @param integer $maxRep Nombre de réponses maximum pouvant être retournées lors d'une requête (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (false par défaut) - * @param boolean $avecSiren Seulement les entités sirénées (false par défaut) - * @return SearchEntrepriseReturn - */ - public function searchEntreprise($criteres, $position = 0, $nbRep = 20, $maxRep = 200, $pertinence = false, $avecSiren = false) - { - $this->authenticate(); - - if (empty($position)) { $position = 0;} - if (empty($nbRep)) { $nbRep = 20; } - if (empty($maxRep)) { $maxRep = 200; } - - require_once 'i18n/cleanchar.php'; - - $entCriteres = new EntrepriseCriteres(); - $entCriteres = $criteres; - $identifiant = $entCriteres->identifiant; - $typeId = ''; - - //Detection autour de l'identifiant - if ($identifiant!='') { - $len = strlen($identifiant); - //Numéro WALDEC - if (strtoupper(substr($identifiant,0,1))=='W') { - $typeId = 'W'; - //Code ISIN - } elseif ($len==12){ - $typeId = 'I'; - //TVA Intracommunautaire - } elseif (in_array(substr($identifiant,0,2), - array('AT','BE','BG','CY','CZ','DE','DK','EE','EL','ES', - 'FI','GB','HU','IE','IT','LT','LU','LV','MT','NL','PL', - 'PT','RO','SE','SI','SK'))){ - //"La recherche par numéro de TVA n'est pas encore possible sur ce pays !"; - //Pour la france - } elseif (substr($identifiant,0,2)=='FR') { - $typeId = 'S'; - if ($len==13) $identifiant = substr($identifiant,4,9); - else $identifiant = ''; - //Numéro RC - } elseif (preg_match('/A|B|C|D/i', $identifiant)) { - $typeId = 'R'; - //Siren normal on enleve tout ce qui n'est pas un chiffre - } else { - $typeId = 'S'; - } - } - - $adresse = trim($entCriteres->adresse); - - //Détection Tel/Fax uniquement - if ( empty($typeId) - && empty($entCriteres->raisonSociale) - && empty($adresse) - && empty($entCriteres->codePostal) - && empty($entCriteres->ville) - && empty($entCriteres->naf) ){ - $typeId = 'TEL'; - } - - if (in_array($typeId, array('R', 'W', 'I'))){ - - $O = $this->searchAutreId( - $typeId, - $identifiant, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - $entCriteres->codePostal - ); - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } elseif ($typeId == 'S'){ - - $O = $this->searchSiren( - $identifiant, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - $entCriteres->codePostal - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - $output->info = $O->info; - return $output; - - } elseif ($typeId == 'TEL'){ - - $O = $this->searchTelFax( - $entCriteres->telFax, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } else { - - $O = $this->searchNomAdr( - cleanstring($entCriteres->raisonSociale), - cleanstring($entCriteres->adresse), - $entCriteres->codePostal, - cleanstring($entCriteres->ville), - empty($entCriteres->siege) ? false : $entCriteres->siege, - empty($entCriteres->actif) ? false : $entCriteres->actif, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - empty($pertinence) ? false : $pertinence, - empty($avecSiren) ? false : $avecSiren, - $entCriteres->naf - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - } - } - -/** - * Recherche entreprise par nom et adresse - * @param string $raisonSociale Raison Sociale ou Enseigne ou Sigle - * @param string $adresse Adresse de l'entreprise, du type : 3 rue des Plantes - * @param string $codePostal Code postal (ex: 75014) - * @param string $ville Ville - * @param boolean $siege Limitation de la recherche au sièges (si true) - * @param boolean $actif Limitation aux établissements actifs (si true) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (si true) - * @param boolean $avecSiren Ne proposer que les entités sirénées - * @param string $ape_etab - * @return SearchReturn - */ - public function searchNomAdr($raisonSociale, $adresse='', $codePostal='', $ville='', $siege=false, $actif=false, $deb=0, $nbRep=20, $maxRep=200, $pertinence=false, $avecSiren=false, $ape_etab='') - { - $this->authenticate(); - - debugLog('I',"Recherche Entreprise de $raisonSociale, $adresse, $codePostal $ville (Siège=$siege / Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($adresse)) $adresse = ''; - if (empty($codePostal)) $codePostal = ''; - if (empty($ville)) $ville = ''; - if (empty($siege)) $siege = false; - - if ( $actif ) { - $actif = 1; - } else { - $actif = 2; - } - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($pertinence)) $pertinence = false; - if (empty($avecSiren)) $avecSiren = false; - if (empty($ape_etab)) $ape_etab = ''; - - $iInsee = new MInsee(); - $etabs = $iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren, $ape_etab); - - $result = new SearchReturn(); - $tabRet = array(); - if (count($etabs['reponses'])) { - foreach ($etabs['reponses'] as $etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = strtr($etab['Nom'],'/*',' '); - $reponse->Nom2 = $etab['Nom2']; - $reponse->Sigle = $etab['Sigle']; - $reponse->Enseigne = $etab['Enseigne']; - $reponse->Adresse = $etab['Adresse']; - $reponse->Adresse2 = $etab['Adresse2']; - $reponse->CP = $etab['CP']; - $reponse->Ville = $etab['Ville']; - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = $iInsee->getLibelleFJ($etab['FJ']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = $iInsee->getLibelleNaf($etab['NafEtab']); // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = $iInsee->getLibelleNaf($etab['NafEnt']); - - $tabRet[] = $reponse; - } - } - - $fp=@fopen(LOG_PATH.'/recherches.log','a'); - - $siretTrouve = 0; - if ($etabs['nbReponses']==0) { - - $str="NbRep=0, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - @fwrite($fp, $str.EOL); - @fclose($fp); - debugLog('I', "rechercheEtab : AUCUN RESULTAT, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = count($tabRet); - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - - return $result; - - } - - if ($etabs['nbReponses']==1) $siretTrouve=$etabs['reponses'][0]['Siret']; - $str="NbRep=".$etabs['nbReponses'].", S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - @fwrite($fp, $str.EOL); - @fclose($fp); - debugLog('I', "rechercheEtab : ".$etabs['nbReponses']." RESULTATS, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = $etabs['nbReponses']; - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - return $result; - } - - /** - * Recherche d'entreprise ou d'établissement par leur identifiant SIREN ou SIRET - * @param string $siret Siren ou Siret de l'entreprise ou de l'établissement sur 9 ou 14 chiffres significatifs - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param integer $dep Département - * @return SearchReturn - */ - public function searchSiren($siret, $deb=0, $nbRep=20, $maxRep=200, $dep=0) - { - $this->authenticate(); - - debugLog('I',"Recherche par Siret de $siret (dep=$dep) avec un maximum de $maxRep réponses pour la tranche $deb à $nbRep",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ( strlen($siret)!=14 && strlen($siret)!=9 ){ - debugLog('W', "Siren/Siret $siret incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($dep)) $dep = 0; - - $nbReponsesTotal = $nbReponses = 0; - - $siren = substr($siret,0,9); - if (strlen($siret)==14) $nic = substr($siret,9,5); - elseif (strlen($siret)== 9) $nic = ''; - - $iInsee = new MInsee(); - - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep, $dep); - if (count($rep['reponses'])==0 && $dep>0) { - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep); - } - $etabs = $rep['reponses']; - $tabRet = array(); - if (count($etabs)>0){ - foreach ($etabs as $nb=>$etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = prepareString($etab['FJLib']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = $etab['NafEtabLib']; // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = $etab['NafEntLib']; - $tabRet[] = $reponse; - } - } - $nbReponsesTotal = $rep['nbReponsesTotal']; - $nbReponses = $rep['nbReponses']; - - /** Si le siren est valide, on part chez Infogreffe **/ - if (count($tabRet)==0 && $iInsee->valideSiren($siren)) { - $iGeffes = new MGreffes(); - $etab = $iGeffes->getIdentite($siren); - if ($etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString($etab['Nom']); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = utf8_encode(prepareString(utf8_decode($etab['FJLib']))); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; - $reponse->NafEtabLib = $etab['NafEtabLib']; - $reponse->NafEnt = $etab['NafEnt']; - $reponse->NafEntLib = $etab['NafEntLib']; - - $tabRet[] = $reponse; - $nbReponses = 1; - $nbReponsesTotal = 1; - - } else { - $iDb = new WDB(); - $iDb->insert('siren_inexistants', - array( 'siren'=>$siren, - 'nic'=>$nic, - 'dep'=>$dep, - 'login'=>$this->tabInfoUser['login'], - 'client'=>$this->tabInfoUser['idClient'], - 'dateInsert'=>date('YmdHis'))); - $nbReponses = 0; - $nbReponsesTotal = 0; - } - } - - $output = new SearchReturn(); - $output->nbReponses = $nbReponses; - $output->nbReponsesTotal = $nbReponsesTotal; - $output->result = $tabRet; - $output->info = $rep['info']; - return $output; - } - - /** - * Recherche d'entreprise ou d'établissement par un autre Identifiant - * - * @param string $typeId I=Code Isin, W=N°Waldec (Associations) ou R=N°RC (Registre Greffe) - * @param string $identifiant Identifiant recherché - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchAutreId($typeId, $identifiant, $deb=0, $nbRep=20, $maxRep=200, $dep=0) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - if (empty($dep)) $dep = 0; - - $typeId = substr(trim(strtoupper($typeId)),0,1); - - if ($typeId!='I' && $typeId!='W' && $typeId!='R') { - debugLog('I',"Type d'identifiant $typeId inexistant",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1021'); - } - $tabRet = array(); - debugLog('I',"Recherche par identifiant $typeId de $identifiantavec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if ($typeId=='W' || $typeId=='R') - { - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('AUTRE', $identifiant, $deb, $nbRep, $maxRep, $dep); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } else { - $iBourse = new MBourse($siren); - $siren = $iBourse->getCodeSiren($identifiant); - return $this->searchSiren($siren, $deb, $nbRep, $maxRep); - } - } - - - /** - * Recherche d'entreprise ou d'établissement par leur TEL FAX - * - * @param string $telFax Téléphone ou fax de l'établissement (ex: 0175438010) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchTelFax($telFax, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - - $tabRet = array(); - debugLog('I',"Recherche par Tel/Fax de $telFax avec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - //$assocs=$this->iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $nbRep, $pertinence); - /** @todo A FAIRE **/ - if (strlen($telFax)<10 || strlen($telFax)>14) { - debugLog('W', "Tel/Fax $telFax incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1011'); - } - - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('TEL', $telFax, $deb, $nbRep, $maxRep); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } - - /** - * Liste des établissements d'une entreprise - * @param string $siren Siren de l'entreprise - * @param integer $departement Limiter aux établissements du departement - * @param integer $actif Otpionnel 1=Uniquements les actifs, 0=inactifs, -1=Tous - * @param integer $position - * @param integer $nbRep - * @return ListeEtablissementsReturn - */ - public function getListeEtablissements($siren, $dep = 0, $actif = -1, $position = 0, $nbRep = 20) - { - $this->authenticate(); - - //Initialisation - if (empty($dep)) { $dep = 0; } - if (empty($actif)) { $actif = -1; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 20; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - $departement = $dep; - - debugLog('I',"Liste des établissements demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissements($siren, '', $position, $nbRep, 200, $departement, $actif); - $etabs = $rep['reponses']; - $nbReponses = $rep['nbReponsesTotal']; - $result = array(); - if (count($etabs)>0) - { - foreach ($etabs as $nb => $etab) - { - $etablissement = new Etablissement(); - $etablissement->id = $etab['id']; - $etablissement->Siege = $etab['Siege']; - $etablissement->Enseigne = $etab['Enseigne']; - $etablissement->Adresse = $etab['Adresse']; - $etablissement->Adresse2 = $etab['Adresse2']; - $etablissement->CP = $etab['CP']; - $etablissement->Ville = $etab['Ville']; - $etablissement->Tel = $etab['Tel']; - $etablissement->Fax = $etab['Fax']; - $etablissement->Nic = $etab['Nic']; - $etablissement->Actif = $etab['Actif']; - $etablissement->NafEtab = $etab['NafEtab']; - $etablissement->NafEtabLib = $etab['NafEtabLib']; - $etablissement->EffEtTr = $etab['EffEtTr']; - $etablissement->EffEtTrLib = $etab['EffEtTrLib']; - - // Adresse Normalisé - $adresse = $iInsee->getAdresse($siren, $etab['Nic']); - $adresseNorme = new AdresseNorme(); - $adresseNorme->L1 = $adresse['L1_NOM']; - $adresseNorme->L2 = $adresse['L2_NOM2']; - $adresseNorme->L3 = $adresse['L3_ADRCOMP']; - $adresseNorme->L4 = $adresse['L4_VOIE']; - $adresseNorme->L5 = $adresse['L5_DISTSP']; - $adresseNorme->L6 = $adresse['L6_POST']; - $adresseNorme->L7 = $adresse['L7_PAYS']; - - $etablissement->AdresseNorme = $adresseNorme; - - $result[] = $etablissement; - } - } - debugLog('I', "Nb Etablissements retournés ($departement, $actif) = ". count($result), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('etablissements',$siren); - $output = new ListeEtablissementsReturn(); - $output->nbReponses = $nbReponses; - $output->result = $result; - return $output; - } - - -} \ No newline at end of file diff --git a/library/WsScore/Clients/Veolia/v0.2/Types.php b/library/WsScore/Clients/Veolia/v0.2/Types.php deleted file mode 100644 index d1744e2c..00000000 --- a/library/WsScore/Clients/Veolia/v0.2/Types.php +++ /dev/null @@ -1,992 +0,0 @@ - 'Identite', - 'SearchEntrepriseReturn' => 'SearchEntrepriseReturn', - 'EntrepriseItem' => 'EntrepriseItem', - 'EntrepriseCriteres' => 'EntrepriseCriteres', - 'SearchReturn' => 'SearchReturn', -); \ No newline at end of file diff --git a/library/WsScore/Clients/Vwbank/v0.1/Entreprise.php b/library/WsScore/Clients/Vwbank/v0.1/Entreprise.php deleted file mode 100644 index 5fb9ace1..00000000 --- a/library/WsScore/Clients/Vwbank/v0.1/Entreprise.php +++ /dev/null @@ -1,610 +0,0 @@ -serviceClient = true; - $this->serviceClientName = 'Vwbank'; - $this->serviceName = 'Entreprise'; - } - /** - * Retourne les informations identitaires de l'entreprise ou de l'établissement demandé - * @param string $siret Siren de l'entreprise ou siret de l'établissement - * @param int $id Identifiant interne - * @return Identite - */ - public function getIdentite($siret, $id = 0) - { - $this->authenticate(); - - //Initialisation - if (empty($id)) { - $id = 0; - } - $forceVerif = false; - - $tdeb = microtime(1); - debugLog('I',"Identités demandée pour siret $siret (id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if ($siren*1==0 && $id==0) { - $this->sendError('1010'); - } elseif ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren, $nic, $id, $forceVerif); - debugLog('I', "Après getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($entrep) || empty($entrep['id']) ) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - $identite = new Identite(); - $identite->id = $entrep['id']; - $identite->Siret = $entrep['Siret']; - $identite->Nom = prepareString(strtr($entrep['Nom'],'/*',' ')); - $identite->Nom2 = prepareString($entrep['Nom2']); - $identite->NomLong = prepareString($entrep['nomLong']); // Ajouté le 4 08 2009 - $identite->NomCommercial = prepareString($entrep['NomCommercial']); // Ajouté le 16 11 2010 - $identite->Siret = $entrep['Siret']; - $identite->Sigle = prepareString($entrep['Sigle']); - $identite->SigleLong = prepareString($entrep['sigleLong']); // Ajouté le 4 08 2009 - $identite->Enseigne = prepareString($entrep['Enseigne']); - $identite->EnseigneLong = prepareString($entrep['enseigneLong']); // Ajouté le 16 11 2010 - $identite->Adresse = prepareString($entrep['Adresse']); - $identite->Adresse2 = prepareString($entrep['Adresse2']); - $identite->AdresseNum = prepareString($entrep['AdresseNum']); - $identite->AdresseBtq = prepareString($entrep['AdresseBtq']); - $identite->AdresseVoie = prepareString($entrep['AdresseVoie']); - $identite->AdresseRue = prepareString($entrep['AdresseRue']); - $identite->CP = $entrep['CP']; - $identite->Ville = prepareString($entrep['Ville']); - $identite->Pays = prepareString($entrep['Pays']); // Ajouté le 18 02 2008 - $identite->PaysIso2 = $entrep['PaysIso2']; - $identite->AdresseDom = $entrep['AdresseDom']; - $identite->NbEtab = $entrep['NbEtab']; - $identite->TvaNumero = $entrep['TvaNumero']; - $identite->TvaAttribue = $entrep['TvaAttribue']; - $identite->FJ = $entrep['FJ']; - $identite->FJ_Lib = $entrep['FJ_lib']; - $identite->NafEtab = $entrep['NafEtab']; - $identite->NafEtabLib = $entrep['NafEtabLib']; - $identite->Effectif = $entrep['Effectif']; - $identite->DateMajINSEE = $entrep['DateMajINSEE']; //@todo : date - $identite->DateMajRCS = $entrep['DateMajRCS']; //@todo : date - $identite->DateMajID = $entrep['dateMajIdentite']; //@todo : date - - debugLog('I', 'Etablissement retourné = '. $entrep['Nom'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $this->wsLog('identite',$siret,$id); - return $identite; - } - - /** - * Recherche - * @param EntrepriseCriteres $criteres - * @param integer $position Position de parcours des résultats retournées (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées lors d'une requête (20 par défaut) - * @param integer $maxRep Nombre de réponses maximum pouvant être retournées lors d'une requête (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (false par défaut) - * @param boolean $avecSiren Seulement les entités sirénées (false par défaut) - * @return SearchEntrepriseReturn - */ - public function searchEntreprise($criteres, $position = 0, $nbRep = 20, $maxRep = 200, $pertinence = false, $avecSiren = false) - { - $this->authenticate(); - - if (empty($position)) { $position = 0;} - if (empty($nbRep)) { $nbRep = 20; } - if (empty($maxRep)) { $maxRep = 200; } - - require_once 'i18n/cleanchar.php'; - - $entCriteres = new EntrepriseCriteres(); - $entCriteres = $criteres; - $identifiant = $entCriteres->identifiant; - $typeId = ''; - - //Detection autour de l'identifiant - if ($identifiant!='') { - $len = strlen($identifiant); - //Numéro WALDEC - if (strtoupper(substr($identifiant,0,1))=='W') { - $typeId = 'W'; - //Code ISIN - } elseif ($len==12){ - $typeId = 'I'; - //TVA Intracommunautaire - } elseif (in_array(substr($identifiant,0,2), - array('AT','BE','BG','CY','CZ','DE','DK','EE','EL','ES', - 'FI','GB','HU','IE','IT','LT','LU','LV','MT','NL','PL', - 'PT','RO','SE','SI','SK'))){ - //"La recherche par numéro de TVA n'est pas encore possible sur ce pays !"; - //Pour la france - } elseif (substr($identifiant,0,2)=='FR') { - $typeId = 'S'; - if ($len==13) $identifiant = substr($identifiant,4,9); - else $identifiant = ''; - //Numéro RC - } elseif (preg_match('/A|B|C|D/i', $identifiant)) { - $typeId = 'R'; - //Siren normal on enleve tout ce qui n'est pas un chiffre - } else { - $typeId = 'S'; - } - } - - $adresse = trim($entCriteres->adresse); - - //Détection Tel/Fax uniquement - if ( empty($typeId) - && empty($entCriteres->raisonSociale) - && empty($adresse) - && empty($entCriteres->codePostal) - && empty($entCriteres->ville) - && empty($entCriteres->naf) ){ - $typeId = 'TEL'; - } - - if (in_array($typeId, array('R', 'W', 'I'))){ - - $O = $this->searchAutreId( - $typeId, - $identifiant, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - $entCriteres->codePostal - ); - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } elseif ($typeId == 'S'){ - - $O = $this->searchSiren( - $identifiant, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - $entCriteres->codePostal - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - $output->info = $O->info; - return $output; - - } elseif ($typeId == 'TEL'){ - - $O = $this->searchTelFax( - $entCriteres->telFax, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } else { - - $O = $this->searchNomAdr( - cleanstring($entCriteres->raisonSociale), - cleanstring($entCriteres->adresse), - $entCriteres->codePostal, - cleanstring($entCriteres->ville), - empty($entCriteres->siege) ? false : $entCriteres->siege, - empty($entCriteres->actif) ? false : $entCriteres->actif, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - empty($pertinence) ? false : $pertinence, - empty($avecSiren) ? false : $avecSiren, - $entCriteres->naf - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - } - } - -/** - * Recherche entreprise par nom et adresse - * @param string $raisonSociale Raison Sociale ou Enseigne ou Sigle - * @param string $adresse Adresse de l'entreprise, du type : 3 rue des Plantes - * @param string $codePostal Code postal (ex: 75014) - * @param string $ville Ville - * @param boolean $siege Limitation de la recherche au sièges (si true) - * @param boolean $actif Limitation aux établissements actifs (si true) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (si true) - * @param boolean $avecSiren Ne proposer que les entités sirénées - * @param string $ape_etab - * @return SearchReturn - */ - public function searchNomAdr($raisonSociale, $adresse='', $codePostal='', $ville='', $siege=false, $actif=false, $deb=0, $nbRep=20, $maxRep=200, $pertinence=false, $avecSiren=false, $ape_etab='') - { - $this->authenticate(); - - debugLog('I',"Recherche Entreprise de $raisonSociale, $adresse, $codePostal $ville (Siège=$siege / Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($adresse)) $adresse = ''; - if (empty($codePostal)) $codePostal = ''; - if (empty($ville)) $ville = ''; - if (empty($siege)) $siege = false; - - if ( $actif ) { - $actif = 1; - } else { - $actif = 2; - } - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($pertinence)) $pertinence = false; - if (empty($avecSiren)) $avecSiren = false; - if (empty($ape_etab)) $ape_etab = ''; - - $iInsee = new MInsee(); - $etabs = $iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren, $ape_etab); - - $result = new SearchReturn(); - $tabRet = array(); - if (count($etabs['reponses'])) { - foreach ($etabs['reponses'] as $etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = strtr($etab['Nom'],'/*',' '); - $reponse->Nom2 = $etab['Nom2']; - $reponse->Sigle = $etab['Sigle']; - $reponse->Enseigne = $etab['Enseigne']; - $reponse->Adresse = $etab['Adresse']; - $reponse->Adresse2 = $etab['Adresse2']; - $reponse->CP = $etab['CP']; - $reponse->Ville = $etab['Ville']; - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = $iInsee->getLibelleFJ($etab['FJ']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = $iInsee->getLibelleNaf($etab['NafEtab']); // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = $iInsee->getLibelleNaf($etab['NafEnt']); - - $tabRet[] = $reponse; - } - } - - $fp=@fopen(LOG_PATH.'/recherches.log','a'); - - $siretTrouve = 0; - if ($etabs['nbReponses']==0) { - - $str="NbRep=0, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - @fwrite($fp, $str.EOL); - @fclose($fp); - debugLog('I', "rechercheEtab : AUCUN RESULTAT, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = count($tabRet); - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - - return $result; - - } - - if ($etabs['nbReponses']==1) $siretTrouve=$etabs['reponses'][0]['Siret']; - $str="NbRep=".$etabs['nbReponses'].", S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - @fwrite($fp, $str.EOL); - @fclose($fp); - debugLog('I', "rechercheEtab : ".$etabs['nbReponses']." RESULTATS, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = $etabs['nbReponses']; - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - return $result; - } - - /** - * Recherche d'entreprise ou d'établissement par leur identifiant SIREN ou SIRET - * @param string $siret Siren ou Siret de l'entreprise ou de l'établissement sur 9 ou 14 chiffres significatifs - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param integer $dep Département - * @return SearchReturn - */ - public function searchSiren($siret, $deb=0, $nbRep=20, $maxRep=200, $dep=0) - { - $this->authenticate(); - - debugLog('I',"Recherche par Siret de $siret (dep=$dep) avec un maximum de $maxRep réponses pour la tranche $deb à $nbRep",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ( strlen($siret)!=14 && strlen($siret)!=9 ){ - debugLog('W', "Siren/Siret $siret incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($dep)) $dep = 0; - - $nbReponsesTotal = $nbReponses = 0; - - $siren = substr($siret,0,9); - if (strlen($siret)==14) $nic = substr($siret,9,5); - elseif (strlen($siret)== 9) $nic = ''; - - $iInsee = new MInsee(); - - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep, $dep); - if (count($rep['reponses'])==0 && $dep>0) { - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep); - } - $etabs = $rep['reponses']; - $tabRet = array(); - if (count($etabs)>0){ - foreach ($etabs as $nb=>$etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = prepareString($etab['FJLib']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = $etab['NafEtabLib']; // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = $etab['NafEntLib']; - $tabRet[] = $reponse; - } - } - $nbReponsesTotal = $rep['nbReponsesTotal']; - $nbReponses = $rep['nbReponses']; - - /** Si le siren est valide, on part chez Infogreffe **/ - if (count($tabRet)==0 && $iInsee->valideSiren($siren)) { - $iGeffes = new MGreffes(); - $etab = $iGeffes->getIdentite($siren); - if ($etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString($etab['Nom']); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = utf8_encode(prepareString(utf8_decode($etab['FJLib']))); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; - $reponse->NafEtabLib = $etab['NafEtabLib']; - $reponse->NafEnt = $etab['NafEnt']; - $reponse->NafEntLib = $etab['NafEntLib']; - - $tabRet[] = $reponse; - $nbReponses = 1; - $nbReponsesTotal = 1; - - } else { - $iDb = new WDB(); - $iDb->insert('siren_inexistants', - array( 'siren'=>$siren, - 'nic'=>$nic, - 'dep'=>$dep, - 'login'=>$this->tabInfoUser['login'], - 'client'=>$this->tabInfoUser['idClient'], - 'dateInsert'=>date('YmdHis'))); - $nbReponses = 0; - $nbReponsesTotal = 0; - } - } - - $output = new SearchReturn(); - $output->nbReponses = $nbReponses; - $output->nbReponsesTotal = $nbReponsesTotal; - $output->result = $tabRet; - $output->info = $rep['info']; - return $output; - } - - /** - * Recherche d'entreprise ou d'établissement par un autre Identifiant - * - * @param string $typeId I=Code Isin, W=N°Waldec (Associations) ou R=N°RC (Registre Greffe) - * @param string $identifiant Identifiant recherché - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - protected function searchAutreId($typeId, $identifiant, $deb=0, $nbRep=20, $maxRep=200, $dep=0) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - if (empty($dep)) $dep = 0; - - $typeId = substr(trim(strtoupper($typeId)),0,1); - - if ($typeId!='I' && $typeId!='W' && $typeId!='R') { - debugLog('I',"Type d'identifiant $typeId inexistant",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1021'); - } - $tabRet = array(); - debugLog('I',"Recherche par identifiant $typeId de $identifiantavec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if ($typeId=='W' || $typeId=='R') - { - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('AUTRE', $identifiant, $deb, $nbRep, $maxRep, $dep); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } else { - $iBourse = new MBourse($siren); - $siren = $iBourse->getCodeSiren($identifiant); - return $this->searchSiren($siren, $deb, $nbRep, $maxRep); - } - } - - - /** - * Recherche d'entreprise ou d'établissement par leur TEL FAX - * - * @param string $telFax Téléphone ou fax de l'établissement (ex: 0175438010) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchTelFax($telFax, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - - $tabRet = array(); - debugLog('I',"Recherche par Tel/Fax de $telFax avec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - //$assocs=$this->iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $nbRep, $pertinence); - /** @todo A FAIRE **/ - if (strlen($telFax)<10 || strlen($telFax)>14) { - debugLog('W', "Tel/Fax $telFax incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1011'); - } - - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('TEL', $telFax, $deb, $nbRep, $maxRep); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } - -} \ No newline at end of file diff --git a/library/WsScore/Clients/Vwbank/v0.1/Types.php b/library/WsScore/Clients/Vwbank/v0.1/Types.php deleted file mode 100644 index 58097f42..00000000 --- a/library/WsScore/Clients/Vwbank/v0.1/Types.php +++ /dev/null @@ -1,397 +0,0 @@ - 'Identite', - 'SearchEntrepriseReturn' => 'SearchEntrepriseReturn', - 'EntrepriseItem' => 'EntrepriseItem', - 'EntrepriseCriteres' => 'EntrepriseCriteres', - 'SearchReturn' => 'SearchReturn', - 'Actionnaire' => 'Actionnaire', - 'ActionnaireIdentite' => 'ActionnaireIdentite', - 'DirigeantsReturn' => 'DirigeantsReturn', - 'Dirigeant' => 'Dirigeant', -); \ No newline at end of file diff --git a/library/WsScore/Clients/Vwbank/v0.2/Entreprise.php b/library/WsScore/Clients/Vwbank/v0.2/Entreprise.php deleted file mode 100644 index 15ba233c..00000000 --- a/library/WsScore/Clients/Vwbank/v0.2/Entreprise.php +++ /dev/null @@ -1,791 +0,0 @@ -serviceClient = true; - $this->serviceClientName = 'Vwbank'; - $this->serviceName = 'Entreprise'; - } - - /** - * Retourne les informations identitaires de l'entreprise ou de l'établissement demandé - * @param string $siret Siren de l'entreprise ou siret de l'établissement - * @param int $id Identifiant interne - * @return Identite - */ - public function getIdentite($siret, $id = 0) - { - $this->authenticate(); - - //Initialisation - if (empty($id)) { - $id = 0; - } - $forceVerif = false; - - $tdeb = microtime(1); - debugLog('I',"Identités demandée pour siret $siret (id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if ($siren*1==0 && $id==0) { - $this->sendError('1010'); - } elseif ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren, $nic, $id, $forceVerif, false); - debugLog('I', "Après getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($entrep) || empty($entrep['id']) ) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - $identite = new Identite(); - $identite->id = $entrep['id']; - $identite->Siret = $entrep['Siret']; - $identite->Nom = prepareString(strtr($entrep['Nom'],'/*',' ')); - $identite->Nom2 = prepareString($entrep['Nom2']); - $identite->NomLong = prepareString($entrep['nomLong']); // Ajouté le 4 08 2009 - $identite->NomCommercial = prepareString($entrep['NomCommercial']); // Ajouté le 16 11 2010 - $identite->Siret = $entrep['Siret']; - $identite->Sigle = prepareString($entrep['Sigle']); - $identite->SigleLong = prepareString($entrep['sigleLong']); // Ajouté le 4 08 2009 - $identite->Enseigne = prepareString($entrep['Enseigne']); - $identite->EnseigneLong = prepareString($entrep['enseigneLong']); // Ajouté le 16 11 2010 - $identite->Adresse = prepareString($entrep['Adresse']); - $identite->Adresse2 = prepareString($entrep['Adresse2']); - $identite->AdresseNum = prepareString($entrep['AdresseNum']); - $identite->AdresseBtq = prepareString($entrep['AdresseBtq']); - $identite->AdresseVoie = prepareString($entrep['AdresseVoie']); - $identite->AdresseRue = prepareString($entrep['AdresseRue']); - $identite->CP = $entrep['CP']; - $identite->Ville = prepareString($entrep['Ville']); - $identite->Pays = prepareString($entrep['Pays']); // Ajouté le 18 02 2008 - $identite->PaysIso2 = $entrep['PaysIso2']; - $identite->AdresseDom = $entrep['AdresseDom']; - $identite->NbEtab = $entrep['NbEtab']; - $identite->TvaNumero = $entrep['TvaNumero']; - $identite->TvaAttribue = $entrep['TvaAttribue']; - $identite->FJ = $entrep['FJ']; - $identite->FJ_Lib = $entrep['FJ_lib']; - $identite->NafEtab = $entrep['NafEtab']; - $identite->NafEtabLib = $entrep['NafEtabLib']; - $identite->Effectif = $entrep['Effectif']; - $identite->DateMajINSEE = $entrep['DateMajINSEE']; //@todo : date - $identite->DateMajRCS = $entrep['DateMajRCS']; //@todo : date - $identite->DateMajID = $entrep['dateMajIdentite']; //@todo : date - $identite->SituationJuridique = $entrep['SituationJuridique']; - - //Présence de privilèges - $identite->Privileges = false; - $nbPrivileges = 0; - $iPriv = new MPrivileges(); - $ret = $iPriv->getPrivilegesDetail($siren); - $nbPrivileges = count($ret); - if ($nbPrivileges>0) { - $identite->Privileges = true; - } else { - $iDb = new WDB('sdv1'); - $sql = "SELECT count(*) AS nbPriv FROM ge_cs2 WHERE cs = 'P' AND dateFin >= NOW() AND dateSuppr=0 AND siren=$siren;"; - $ret = $iDb->query($sql); - if ($ret['nbPriv']>0) { - $identite->Privileges = true; - } - } - debugLog('I', 'Etablissement retourné = '. $entrep['Nom'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $this->wsLog('identite',$siret,$id); - return $identite; - } - - /** - * Retourne l'ensemble des informations identitaires des dirigeants de l'entreprise - * - * @param string $siren Siren de l'entreprise - * @param bool $histo Afficher l'historique des dirigeants - * @return DirigeantsReturn Liste des dirigeants actifs de l'entreprise - */ - public function getDirigeants( $siren , $histo = false) - { - $this->authenticate(); - $this->permission('dirigeants'); - - //Initialisation - if (empty($histo)) { $histo = false; } - - //Zend_Registry::get('WsLogger')->info('HISTO : '.$histo); - - debugLog('I',"Dirigeants demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $dirs = $iInsee->getDirigeants($siren, $histo); - //debugLog('W', print_r($dirs, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $liste = array(); - foreach ($dirs as $nb => $dir) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $dirigeant = new Dirigeant(); - $dirigeant->Code = $dir['Fonction']; - $dirigeant->Titre = $dir['Titre']; - $dirigeant->Societe = $dir['Societe']; - $dirigeant->Siren = (array_key_exists('Siren', $dir) && intval($dir['Siren'])!=0) ? $dir['Siren'] : '' ; - $dirigeant->Civilite = $dir['Civilite']; - $dirigeant->Nom = $dir['Nom']; - $dirigeant->Prenom = $dir['Prenom']; - $dirigeant->NomUsage = $dir['NomUsage']; - $dirigeant->NaissDate = $dir['NaissDate']; //@todo : date - $dirigeant->NaissVille = $dir['NaissVille']; - $dirigeant->NaissDepPays = $dir['NaissDepPays']; - $dirigeant->Ancien = $dir['Ancien']; - $dirigeant->DateFct = $dir['DateFct']; //@todo : date - $liste[] = $dirigeant; - } - $this->wsLog('dirigeants',$siren,$option); - debugLog('I', 'Nb Dirigeants retournés = '. count($dirs), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $output = new DirigeantsReturn(); - $output->result = $liste; - return $output; - } - - /** - * Recherche - * @param EntrepriseCriteres $criteres - * @param integer $position Position de parcours des résultats retournées (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées lors d'une requête (20 par défaut) - * @param integer $maxRep Nombre de réponses maximum pouvant être retournées lors d'une requête (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (false par défaut) - * @param boolean $avecSiren Seulement les entités sirénées (false par défaut) - * @return SearchEntrepriseReturn - */ - public function searchEntreprise($criteres, $position = 0, $nbRep = 20, $maxRep = 200, $pertinence = false, $avecSiren = false) - { - $this->authenticate(); - - if (empty($position)) { $position = 0;} - if (empty($nbRep)) { $nbRep = 20; } - if (empty($maxRep)) { $maxRep = 200; } - - require_once 'i18n/cleanchar.php'; - - $entCriteres = new EntrepriseCriteres(); - $entCriteres = $criteres; - $identifiant = $entCriteres->identifiant; - $typeId = ''; - - //Detection autour de l'identifiant - if ($identifiant!='') { - $len = strlen($identifiant); - //Numéro WALDEC - if (strtoupper(substr($identifiant,0,1))=='W') { - $typeId = 'W'; - //Code ISIN - } elseif ($len==12){ - $typeId = 'I'; - //TVA Intracommunautaire - } elseif (in_array(substr($identifiant,0,2), - array('AT','BE','BG','CY','CZ','DE','DK','EE','EL','ES', - 'FI','GB','HU','IE','IT','LT','LU','LV','MT','NL','PL', - 'PT','RO','SE','SI','SK'))){ - //"La recherche par numéro de TVA n'est pas encore possible sur ce pays !"; - //Pour la france - } elseif (substr($identifiant,0,2)=='FR') { - $typeId = 'S'; - if ($len==13) $identifiant = substr($identifiant,4,9); - else $identifiant = ''; - //Numéro RC - } elseif (preg_match('/A|B|C|D/i', $identifiant)) { - $typeId = 'R'; - //Siren normal on enleve tout ce qui n'est pas un chiffre - } else { - $typeId = 'S'; - } - } - - $adresse = trim($entCriteres->adresse); - - //Détection Tel/Fax uniquement - if ( empty($typeId) - && empty($entCriteres->raisonSociale) - && empty($adresse) - && empty($entCriteres->codePostal) - && empty($entCriteres->ville) - && empty($entCriteres->naf) ){ - $typeId = 'TEL'; - } - - if (in_array($typeId, array('R', 'W', 'I'))){ - - $O = $this->searchAutreId( - $typeId, - $identifiant, - $entCriteres->codePostal, - ($entCriteres->actif==false) ? 2 : 1, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep - ); - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } elseif ($typeId == 'S'){ - - $O = $this->searchSiren( - $identifiant, - $entCriteres->codePostal, - ($entCriteres->actif==false) ? 2 : 1, - $entCriteres->siege, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - $output->info = $O->info; - return $output; - - } elseif ($typeId == 'TEL'){ - - $O = $this->searchTelFax( - $entCriteres->telFax, - ($entCriteres->actif==false) ? 2 : 1, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } else { - - $O = $this->searchNomAdr( - cleanstring($entCriteres->raisonSociale), - cleanstring($entCriteres->adresse), - $entCriteres->codePostal, - cleanstring($entCriteres->ville), - empty($entCriteres->siege) ? false : $entCriteres->siege, - ($entCriteres->actif==false) ? 2 : 1, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - empty($pertinence) ? false : $pertinence, - empty($avecSiren) ? false : $avecSiren, - $entCriteres->naf - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - } - } - - /** - * Recherche d'entreprise ou d'établissement par un autre Identifiant - * - * @param string $typeId I=Code Isin, W=N°Waldec (Associations) ou R=N°RC (Registre Greffe) - * @param string $identifiant Identifiant recherché - * @param integer $dep Département - * @param integer $actif 0 : Filtre sur les inactfis, 1: Filtre sur les actifs, 2 : Tous (defaut) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchAutreId($typeId, $identifiant, $dep=0, $actif=2, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - if (empty($dep)) $dep = 0; - if (!in_array($actif, array(0,1,2))) $actif = 2; - - $typeId = substr(trim(strtoupper($typeId)),0,1); - - if ($typeId!='I' && $typeId!='W' && $typeId!='R') { - debugLog('I',"Type d'identifiant $typeId inexistant",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1021'); - } - $tabRet = array(); - debugLog('I',"Recherche par identifiant $typeId de $identifiant avec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if ($typeId=='W' || $typeId=='R') - { - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('AUTRE', $identifiant, $deb, $nbRep, $maxRep, $dep, $actif); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } else { - $iBourse = new MBourse($siren); - $siren = $iBourse->getCodeSiren($identifiant); - return $this->searchSiren($siren, $dep, $actif, $deb, $nbRep, $maxRep); - } - } - - - /** - * Recherche d'entreprise ou d'établissement par leur TEL FAX - * - * @param string $telFax Téléphone ou fax de l'établissement (ex: 0175438010) - * @param integer $actif 0 : Filtre sur les inactfis, 1: Filtre sur les actifs, 2 : Tous (defaut) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - protected function searchTelFax($telFax, $actif=2, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - if (!in_array($actif, array(0,1,2))) $actif = 2; - - $tabRet = array(); - debugLog('I',"Recherche par Tel/Fax de $telFax avec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - //$assocs=$this->iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $nbRep, $pertinence); - /** @todo A FAIRE **/ - if (strlen($telFax)<10 || strlen($telFax)>14) { - debugLog('W', "Tel/Fax $telFax incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1011'); - } - - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('TEL', $telFax, $deb, $nbRep, $maxRep, 0, $actif); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } - - - /** - * Recherche entreprise par nom et adresse - * @param string $raisonSociale Raison Sociale ou Enseigne ou Sigle - * @param string $adresse Adresse de l'entreprise, du type : 3 rue des Plantes - * @param string $codePostal Code postal (ex: 75014) - * @param string $ville Ville - * @param boolean $siege Limitation de la recherche aux sièges (si true) - * @param integer $actif 0 : Filtre sur les inactfis, 1: Filtre sur les actifs, 2 : Tous (defaut) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (si true) - * @param boolean $avecSiren Ne proposer que les entités sirénées - * @param string $ape_etab - * @return SearchReturn - */ - public function searchNomAdr($raisonSociale, $adresse='', $codePostal='', $ville='', $siege=false, $actif=2, $deb=0, $nbRep=20, $maxRep=200, $pertinence=false, $avecSiren=false, $ape_etab='') - { - $this->authenticate(); - - debugLog('I',"Recherche Entreprise de $raisonSociale, $adresse, $codePostal $ville (Siège=$siege / Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($adresse)) $adresse = ''; - if (empty($codePostal)) $codePostal = ''; - if (empty($ville)) $ville = ''; - if (empty($siege)) $siege = false; - if (!in_array($actif, array(0,1,2))) $actif = 2; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($pertinence)) $pertinence = false; - if (empty($avecSiren)) $avecSiren = false; - if (empty($ape_etab)) $ape_etab = ''; - - $iInsee = new MInsee(); - $etabs = $iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren, $ape_etab); - - $result = new SearchReturn(); - $tabRet = array(); - if (count($etabs['reponses'])) { - foreach ($etabs['reponses'] as $etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = strtr($etab['Nom'],'/*',' '); - $reponse->Nom2 = $etab['Nom2']; - $reponse->Sigle = $etab['Sigle']; - $reponse->Enseigne = $etab['Enseigne']; - $reponse->Adresse = $etab['Adresse']; - $reponse->Adresse2 = $etab['Adresse2']; - $reponse->CP = $etab['CP']; - $reponse->Ville = $etab['Ville']; - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = $iInsee->getLibelleFJ($etab['FJ']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = $iInsee->getLibelleNaf($etab['NafEtab']); // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = $iInsee->getLibelleNaf($etab['NafEnt']); - - $tabRet[] = $reponse; - } - } - - $fp=fopen(LOG_PATH.'/recherches.log','a'); - - $siretTrouve = 0; - if ($etabs['nbReponses']==0) { - - $str="NbRep=0, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - fwrite($fp, $str.EOL); - fclose($fp); - debugLog('I', "rechercheEtab : AUCUN RESULTAT, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = count($tabRet); - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - - return $result; - - } - - if ($etabs['nbReponses']==1) $siretTrouve=$etabs['reponses'][0]['Siret']; - $str="NbRep=".$etabs['nbReponses'].", S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - fwrite($fp, $str.EOL); - fclose($fp); - debugLog('I', "rechercheEtab : ".$etabs['nbReponses']." RESULTATS, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = $etabs['nbReponses']; - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - return $result; - } - - /** - * Recherche d'entreprise ou d'établissement par leur identifiant SIREN ou SIRET - * @param string $siret Siren ou Siret de l'entreprise ou de l'établissement sur 9 ou 14 chiffres significatifs - * @param integer $dep Département - * @param integer $actif 0 : Filtre sur les inactfis, 1: Filtre sur les actifs, 2 : Tous (defaut) - * @param integer $siege 1 : Filtre au siege, 0 : Filtre aux établissements - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchSiren($siret, $dep=0, $actif=2, $siege=null, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - debugLog('I',"Recherche par Siret de $siret (dep=$dep) avec un maximum de $maxRep réponses pour la tranche $deb à $nbRep",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ( strlen($siret)!=14 && strlen($siret)!=9 ){ - debugLog('W', "Siren/Siret $siret incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($dep)) $dep = 0; - - if (!in_array($actif, array(0,1,2))) $actif = 2; - if ( $actif==2 ) $actif = -1; - - $nbReponsesTotal = $nbReponses = 0; - - $siren = substr($siret,0,9); - if (strlen($siret)==14) $nic = substr($siret,9,5); - elseif (strlen($siret)== 9) $nic = ''; - - $iInsee = new MInsee(); - - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep, $dep, $actif, $siege); - if ( count($rep['reponses'])==0 && $dep>0 ) { - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep, 0, $actif, $siege); - } - $etabs = $rep['reponses']; - $tabRet = array(); - if (count($etabs)>0){ - foreach ($etabs as $nb=>$etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = prepareString($etab['FJLib']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = $etab['NafEtabLib']; // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = $etab['NafEntLib']; - $tabRet[] = $reponse; - } - } - $nbReponsesTotal = $rep['nbReponsesTotal']; - $nbReponses = $rep['nbReponses']; - - if (count($tabRet)==0) - { - if ($siege===null || $actif==2) - { - /** Si le siren est valide, on part chez Infogreffe **/ - if ($iInsee->valideSiren($siren)) { - $iGeffes = new MGreffes(); - $etab = $iGeffes->getIdentite($siren); - if ($etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString($etab['Nom']); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = prepareString($etab['FJLib']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; - $reponse->NafEtabLib = $etab['NafEtabLib']; - $reponse->NafEnt = $etab['NafEnt']; - $reponse->NafEntLib = $etab['NafEntLib']; - - $tabRet[] = $reponse; - $nbReponses = 1; - $nbReponsesTotal = 1; - - } else { - $iDb = new WDB(); - $iDb->insert('siren_inexistants', array( - 'siren'=>$siren, - 'nic'=>$nic, - 'dep'=>$dep, - 'login'=>$this->tabInfoUser['login'], - 'client'=>$this->tabInfoUser['idClient'], - 'dateInsert'=>date('YmdHis'))); - $nbReponses = 0; - $nbReponsesTotal = 0; - $rep['info'] = 'Siren inexistant'; - } - } - } else { - if ($iInsee->sirenExiste($siren) ) { - $info = 'Aucun '; - if ( $siege == 1 ) $info.= 'siege'; - else $info.= 'etablissement'; - - if ( $actif == 0 ) $info.= ' inactif'; - elseif ( $actif == 1) $info.= ' actif'; - - $rep['info'] = $info; - - } else { - $rep['info'] = 'Siren inexistant'; - } - } - } - - $output = new SearchReturn(); - $output->nbReponses = $nbReponses; - $output->nbReponsesTotal = $nbReponsesTotal; - $output->result = $tabRet; - $output->info = $rep['info']; - return $output; - } - - /** - * Retourne les liens financiers pour une entreprise. - * @param string $siren Siren de l'entreprise - * @return Actionnaire[] - */ - public function getLiens($siren) - { - $this->authenticate(); - - //Initialisation - $actifsUniquement = true; - - $tabAct = $tabPar = array(); - - debugLog('I',"Liens entreprises demandés pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - //Actionnaires - require_once 'Metier/partenaires/classMLiens2.php'; - $mLiens = new MLiens2($siren, 'siren'); - $tabA = $mLiens->getActionnaires(null, $actifsUniquement); - $nbA = count($tabA); - $tabAct = array(); - if ($nbA > 0) { - foreach ($tabA as $i => $lien) { - $sirenLien = str_pad($lien->siren, 9, "0", STR_PAD_LEFT); - - $actionnaire = new Actionnaire(); - $actionnaire->Pmin = $lien->PDetention; - $actionnaire->MajMin = $lien->MajMin; - $actionnaire->RaisonSociale = $lien->RS; - if ($lien->PpPm=='PP') { - $actionnaire->RaisonSociale = $lien->civilite.' '.$lien->nom.' '.$lien->prenom; - } - - $actionnaire->TypeEntrep = $lien->PpPm; - $actionnaire->Pays = $lien->adresse_pays; - $actionnaire->Siren = $sirenLien; - $actionnaire->Actif = 1; - $actionnaire->DateLien = $lien->dateEffetLien; - - if ($item->dateUpdate=='0000-00-00 00:00:00'){ - $actionnaire->DateMaj = substr($lien->dateInsert,0,10); - } else { - $actionnaire->DateMaj = substr($lien->dateUpdate,0,10); - } - - $actionnaire->Identite = new ActionnaireIdentite(); - if ( intval($sirenLien)>1000 ) { - $iInsee = new MInsee(); - $identite = $iInsee->getIdentiteLight($sirenLien); - $actionnaire->Identite->Adresse = $identite['Adresse']; - $actionnaire->Identite->Adresse2 = $identite['Adresse2']; - $actionnaire->Identite->AdresseNum = $identite['AdresseNum']; - $actionnaire->Identite->AdresseBtq = $identite['AdresseBtq']; - $actionnaire->Identite->AdresseVoie = $identite['AdresseVoie']; - $actionnaire->Identite->CP = $identite['CP']; - $actionnaire->Identite->Ville = $identite['Ville']; - $actionnaire->Identite->DateCreaEn = $identite['DateCreaEn']; - $actionnaire->Identite->DateImmat = $identite['DateImmat']; - $actionnaire->Identite->FJ = $identite['FJ']; - $actionnaire->Identite->FJ_Lib = $identite['FJ_Lib']; - } - $tabAct[] = $actionnaire; - } - } - - $this->wsLog('liens',$siren); - return $tabAct; - } -} \ No newline at end of file diff --git a/library/WsScore/Clients/Vwbank/v0.2/Types.php b/library/WsScore/Clients/Vwbank/v0.2/Types.php deleted file mode 100644 index 1a002693..00000000 --- a/library/WsScore/Clients/Vwbank/v0.2/Types.php +++ /dev/null @@ -1,729 +0,0 @@ -readConfig(); - $this->_defineDb(); - $this->_definePath(); - $this->_defineSphinx(); - $this->_defineMail(); - } - - /** - * Read config application.ini - */ - protected function readConfig() - { - if ( Zend_Registry::isRegistered('config') ) { - $c = Zend_Registry::get('config'); - $this->profil = $c->profil; - } else { - $c = new Zend_Config_Ini(APPLICATION_PATH . '/configs/application.ini', 'production'); - $this->profil = $c->profil; - } - } - - protected function _defineDb() - { - if ( $this->profil->db->metier ) { - define('MYSQL_HOST', $this->profil->db->metier->params->host); - define('MYSQL_USER', $this->profil->db->metier->params->username); - define('MYSQL_PASS', $this->profil->db->metier->params->password); - define('MYSQL_DEFAULT_DB', 'jo'); - define('MYSQL_SQL_LOG', 'NONE'); - } - } - - - protected function _definePath() - { - //Use of realpath - - define('BODACC_LOCAL_DIR' , '/home/data/bodacc/'); - define('JAL_LOCAL_DIR' , '/home/data/jal/'); - define('HUGIN_LOCAL_DIR' , '/home/data/infosreg/hugin/'); - define('ACTUSNEWS_LOCAL_DIR' , '/home/data/infosreg/actusnews/'); - define('DIRELEASE_LOCAL_DIR' , '/home/data/infosreg/direlease/'); - define('LESECHOS_LOCAL_DIR' , '/home/data/infosreg/lesechos/'); - define('BUSINESSWIRE_LOCAL_DIR_INCOMING' , '/home/data/ftp/businesswire/'); - define('BUSINESSWIRE_LOCAL_DIR' , '/home/data/infosreg/businesswire/'); - - define('SECURE_STORAGE' , $this->profil->path->secure.'/'); - define('DOC_WEB_LOCAL' , $this->profil->path->files.'/'); - define('DOC_WEB_URL' , '/fichier/'); - define('LOG_PATH' , $this->profil->path->data.'/log'); - } - - protected function _defineSphinx() - { - // Entreprise - define('SPHINX_ENT_HOST', $this->profil->sphinx->ent->host); - define('SPHINX_ENT_PORT', intval($this->profil->sphinx->ent->port)); - define('SPHINX_ENT_VERSION', $this->profil->sphinx->ent->version); - - // Dirigeants - define('SPHINX_DIR_HOST', $this->profil->sphinx->dir->host); - define('SPHINX_DIR_PORT', intval($this->profil->sphinx->dir->port)); - define('SPHINX_DIR_VERSION', $this->profil->sphinx->dir->version); - - // Historique - define('SPHINX_HISTO_HOST', $this->profil->sphinx->histo->host); - define('SPHINX_HISTO_PORT', intval($this->profil->sphinx->histo->port)); - define('SPHINX_HISTO_VERSION', $this->profil->sphinx->histo->version); - - // Actionnaire - define('SPHINX_ACT_HOST', $this->profil->sphinx->act->host); - define('SPHINX_ACT_PORT', intval($this->profil->sphinx->act->port)); - define('SPHINX_ACT_VERSION', $this->profil->sphinx->act->version); - - //Old - define('SPHINX_HOST', $this->profil->sphinx->ent->host); - define('SPHINX_PORT', intval($this->profil->sphinx->ent->port)); - } - - protected function _defineMail() - { - //Messagerie - define('SMTP_HOST', $this->profil->mail->smtp_host); - define('SMTP_PORT', $this->profil->mail->smtp_port); - define('SMTP_USER', ''); - define('SMTP_PASS', ''); - } - -} \ No newline at end of file diff --git a/library/WsScore/Entreprise/v0.2/Config.php b/library/WsScore/Entreprise/v0.2/Config.php deleted file mode 100644 index 5ab0ccef..00000000 --- a/library/WsScore/Entreprise/v0.2/Config.php +++ /dev/null @@ -1,67 +0,0 @@ - 'ErrorType', - 'StatusReturn' => 'StatusReturn', - 'Identite' => 'Identite', - 'GeoInfos' => 'GeoInfos', - 'IdentiteBilan' => 'IdentiteBilan', - 'IdentiteBourse' => 'IdentiteBourse', - 'AutreSiren' => 'AutreSiren', - 'RechercheEntrepriseCriteres' => 'RechercheEntrepriseCriteres', - 'CriteresEntreprise' => 'CriteresEntreprise', - 'CriteresDirigeant' => 'CriteresDirigeant', - 'RechercheEntrepriseReturn' => 'RechercheEntrepriseReturn', - 'RechercheEntrepriseResult' => 'RechercheEntrepriseResult', - 'RechercheEntrepriseReponses' => 'RechercheEntrepriseReponses', - 'ListeEtablissementsReturn' => 'ListeEtablissementsReturn', - 'Etablissement' => 'Etablissement', - 'DirigeantsReturn' => 'DirigeantsReturn', - 'Dirigeant' => 'Dirigeant', - 'AnnoncesReturn' => 'AnnoncesReturn', - 'Annonce' => 'Annonce', - 'AnnonceEvenement' => 'AnnonceEvenement', - 'LiensReturn' => 'LiensReturn', - 'Actionnaire' => 'Actionnaire', - 'Participation' => 'Participation', - 'InseeReturn' => 'InseeReturn', - 'InseeEven' => 'InseeEven', - 'TvaReturn' => 'TvaReturn', - 'InfosRegReturn' => 'InfosRegReturn', - 'InfosReg' => 'InfosReg', - 'InfosBourse' => 'InfosBourse', - 'ListeBilansReturn' => 'ListeBilansReturn', - 'ListeBilans' => 'ListeBilans', - 'SetSurveillanceReturn' => 'SetSurveillanceReturn', - 'SurveillancesReturn' => 'SurveillancesReturn', - 'SurveillancesFiltre' => 'SurveillancesFiltre', - 'Surveillance' => 'Surveillance', - 'Bilan' => 'Bilan', - 'BilanPoste' => 'BilanPoste', - 'RechercheAnnonceReturn' => 'RechercheAnnonceReturn', - 'RechercheAnnonceResult' => 'RechercheAnnonceResult', - 'RechercheAnnonceCriteres' => 'RechercheAnnonceCriteres', - 'RechercheAnnonce' => 'RechercheAnnonce', - 'RatiosReturn' => 'RatiosReturn', - 'RatiosBilansInfos' => 'RatiosBilansInfos', - 'RatiosInfos' => 'RatiosInfos', - 'RatiosSecteur' => 'RatiosSecteur', - 'Ratios' => 'Ratios', - 'Rapport' => 'Rapport', - 'Indiscore' => 'Indiscore', - 'Scores' => 'Scores', - 'IndiscoreVariables' => 'IndiscoreVariables', - 'CA_Y' => 'CA_Y', - 'IndiscoreImportExport' => 'IndiscoreImportExport', - 'IndiscoreInfosNotations' => 'IndiscoreInfosNotations', - 'IndiscorePaiement' => 'IndiscorePaiement', - 'IndiscorePaiementDetail' => 'IndiscorePaiementDetail', - 'IndiscoreNotesStructure' => 'IndiscoreNotesStructure', - 'AdresseDomEnt' => 'AdresseDomEnt', - 'InfosIris' => 'InfosIris', - 'BanquesReturn' => 'BanquesReturn', - 'Banque' => 'Banque', - 'ListeCompetencesReturn' => 'ListeCompetencesReturn', - 'Competence' => 'Competence', - 'IdentiteProcol' => 'IdentiteProcol', - 'Organe' => 'Organe', -); \ No newline at end of file diff --git a/library/WsScore/Entreprise/v0.2/Entreprise.php b/library/WsScore/Entreprise/v0.2/Entreprise.php deleted file mode 100644 index 438f20b9..00000000 --- a/library/WsScore/Entreprise/v0.2/Entreprise.php +++ /dev/null @@ -1,2885 +0,0 @@ -webservice->scores; - $wsdl = !empty($webservicesConfig->wsdl) ? $webservicesConfig->wsdl : null ; - $options = array(); - foreach ($webservicesConfig->options as $optionName => $optionValue){ - $options[$optionName] = $optionValue; - } - $options['login'] = $_SERVER['PHP_AUTH_USER']; - $options['password'] = $_SERVER['PHP_AUTH_PW']; - $this->wsdl = $wsdl; - $this->wsdlOptions = $options; - } - - /** - * Retourne les informations identitaires de l'entreprise ou de l'établissement demandé - * @param string $siret Siren de l'entreprise ou siret de l'établissement - * @param int $id Identifiant interne - * @return Identite - */ - public function getIdentite($siret, $id = 0) - { - $this->authenticate(); - - //Initialisation - if (empty($id)) { $id = 0; } - $forceVerif = false; - - $tdeb = microtime(1); - $ligne = date('YmdHis').";$siret;Ws->getIdentite Avant ..."; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - debugLog('I',"Identités demandée pour siret $siret (id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if ($siren*1==0 && $id==0) { - $this->sendError('1010'); - } elseif ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren, $nic, $id, $forceVerif); - debugLog('I', "Après getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $duree = round(microtime(1)-$tdeb,3); - $ligne = date('YmdHis').";$siret;Ws->getIdentite juste apres iInsee->... ($duree s)"; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - if (empty($entrep)) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - - $identite = new Identite(); - $identite->id = $entrep['id']; - $identite->Siret = $entrep['Siret']; - $identite->SiretSiege = $entrep['SiretSiege']; - $identite->Siege = $entrep['Siege']; - $identite->TribunalCode = $entrep['Tribunal']; - $identite->TribunalLib = $entrep['TribunalLib']; - //'NumGreffe' = $entrep['numGreffe'], // Ajouté le 4 08 2009 - $identite->NumRC = $entrep['numRC']; // Ajouté le 4 08 2009 - $identite->Actif = $entrep['Actif']; - $identite->EntActiveRCS = $entrep['EntActiveRCS']; - $identite->AutreId = $entrep['AutreId']; - $identite->Source = $entrep['Source']; - $identite->SourceId = $entrep['SourceId']; - $identite->Isin = $entrep['Isin']; - $identite->Nom = strtr($entrep['Nom'],'/*',' '); - $identite->Nom2 = $entrep['Nom2']; - $identite->NomLong = $entrep['nomLong']; // Ajouté le 4 08 2009 - $identite->NomCommercial = $entrep['NomCommercial']; // Ajouté le 16 11 2010 - $identite->Siret = $entrep['Siret']; - $identite->Sigle = $entrep['Sigle']; - $identite->SigleLong = $entrep['sigleLong']; // Ajouté le 4 08 2009 - $identite->Enseigne = $entrep['Enseigne']; - $identite->EnseigneLong = $entrep['enseigneLong']; // Ajouté le 16 11 2010 - $identite->Adresse = $entrep['Adresse']; - $identite->Adresse2 = $entrep['Adresse2']; - $identite->AdresseNum = $entrep['AdresseNum']; - $identite->AdresseBtq = $entrep['AdresseBtq']; - $identite->AdresseVoie = $entrep['AdresseVoie']; - $identite->AdresseRue = $entrep['AdresseRue']; - $identite->CP = $entrep['CP']; - $identite->Ville = $entrep['Ville']; - $identite->Pays = $entrep['Pays']; // Ajouté le 18 02 2008 - $identite->PaysIso2 = $entrep['PaysIso2']; - $identite->AdresseDom = $entrep['AdresseDom']; - - $tabAdresseDomEnt = array(); - if (isset($entrep['AdresseDomEnt']) && count($entrep['AdresseDomEnt'])>0){ - foreach ($entrep['AdresseDomEnt'] as $element){ - $adresseDomEnt = new AdresseDomEnt(); - $adresseDomEnt->siren = $element['siren']; - $adresseDomEnt->nom = $element['nom']; - $tabAdresseDomEnt[] = $adresseDomEnt; - } - } - $identite->AdresseDomEnt = $tabAdresseDomEnt; - - $identite->AdresseDomNb = $entrep['AdresseDomNb']; - $identite->Civilite = $entrep['Civilite']; - $identite->NbEtab = $entrep['NbEtab']; - $identite->Tel = $entrep['Tel']; - $identite->Fax = $entrep['Fax']; - $identite->Web = $entrep['Web']; - $identite->Mail = $entrep['Mail']; - $identite->GeoLat = $entrep['GeoLat']; - $identite->GeoLon = $entrep['GeoLon']; - $identite->GeoPrecis = $entrep['GeoPrecis']; - $identite->GeoInfos = $entrep['GeoInfos']; - $identite->TvaNumero = $entrep['TvaNumero']; - $identite->TvaAttribue = $entrep['TvaAttribue']; - $identite->FJ = $entrep['FJ']; - $identite->FJ_Lib = $entrep['FJ_lib']; - $identite->FJ2 = $entrep['FJ2']; // Ajouté le 4 08 2009 - $identite->FJ2_Lib = $entrep['FJ2_Lib']; // Ajouté le 4 08 2009 - $identite->Siren = $entrep['Siren']; - $identite->Nic = $entrep['Nic']; - $identite->NafEnt = $entrep['NafEnt']; - $identite->NafEntLib = $entrep['NafEntLib']; - $identite->NafEtab = $entrep['NafEtab']; - $identite->NafEtabLib = $entrep['NafEtabLib']; - $identite->NaceEtab = $entrep['NaceEtab']; - $identite->NaceEnt = $entrep['NaceEnt']; - $identite->Nafa = $entrep['APRM']; - $identite->NafaLib = $entrep['APRM_Lib']; - $identite->NumRM = $entrep['NumRM']; - $identite->Activite = $entrep['Activite']; - $identite->Capital = $entrep['Capital']; - $identite->CapitalDev = $entrep['CapitalDev']; - $identite->CapitalLib = $entrep['CapitalLib']; // Ajouté le 18 02 2008 - $identite->CapitalType = $entrep['CapitalType']; // Ajouté le 4 08 2009 - $identite->DateCreaEt = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEt']); - $identite->DateCreaEn = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEn']); - $identite->DateClotEt = $entrep['DateClotEt']; //@todo : date - $identite->DateImmat = $entrep['dateImmat']; // Ajouté le 4 08 2009 - $identite->DateRadiation = $entrep['dateRad']; // Ajouté le 4 08 2009 - //'DateMajRCS' = $entrep['DateMajRCS'], // Ajouté le 4 08 2009 - $identite->EffEnTr = $entrep['EffEnTr']; - $identite->EffEnTrLib = $entrep['EffEnTrLib']; - $identite->Effectif = $entrep['Effectif']; - $identite->EffEtTr = $entrep['EffEtTr']; // Ajout le 11 08 2010 - $identite->EffEtTrLib = $entrep['EffEtTrLib']; // Ajout le 11 08 2010 - $identite->EffectifEtab = $entrep['EffectifEtab']; // Ajout le 11 08 2010 - $identite->Dept = $entrep['Dept']; - $identite->codeCommune = $entrep['codeCommune']; - $identite->AnneeEffEn = $entrep['AnneeEffEn']; - $identite->AnneeEffEt = $entrep['AnneeEffEt']; - $identite->AnneeTCA = $entrep['AnneeTCA']; - $identite->TrancheCA = $entrep['TrancheCA']; - $identite->TrancheCALib = $entrep['TrancheCALib']; - $identite->dir1Code = $entrep['dir1Code']; - $identite->dir1Titre = $entrep['dir1Titre']; - $identite->dir1NomPrenom = $entrep['dir1NomPrenom']; - $identite->dir1DateFct = $entrep['dir1DateFct']; //@todo : date - $identite->dir1DateNaiss = $entrep['dir1DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir1LieuNaiss = $entrep['dir1LieuNaiss']; // Ajouté le 4 08 2009 - $identite->dir2Code = $entrep['dir2Code']; - $identite->dir2Titre = $entrep['dir2Titre']; - $identite->dir2NomPrenom = $entrep['dir2NomPrenom']; - $identite->dir2DateFct = $entrep['dir2DateFct']; //@todo : date - $identite->dir2DateNaiss = $entrep['dir2DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir2LieuNaiss = $entrep['dir2LieuNaiss']; // Ajouté le 4 08 2009 - $identite->Rivoli = $entrep['Rivoli']; - - $identite->InfosIris->codIris = $entrep['InfosIris']['codIris']; - $identite->InfosIris->codComIris = $entrep['InfosIris']['codComIris']; - $identite->InfosIris->libIris = $entrep['InfosIris']['libIris']; - $identite->InfosIris->typIris = $entrep['InfosIris']['typIris']; - $identite->InfosIris->evoIris = $entrep['InfosIris']['evoIris']; - $identite->InfosIris->trIris = $entrep['InfosIris']['trIris']; - $identite->InfosIris->grdQuartier = $entrep['InfosIris']['grdQuartier']; - $identite->NatureActivite = $entrep['NatureActivite']; // Nature de l'activité - $identite->OrigineCreation = $entrep['OrigineCreation']; // Origine de la création - $identite->TypeExploitation = $entrep['TypeExploitation']; - $identite->Auxiliaire = $entrep['Auxiliaire']; // 1=Auxiliaire / 0=Non auxiliaire - $identite->Saisonnalite = $entrep['Saisonnalite']; // P=Activité permanente / S=Activité saisonnière - $identite->SituationJuridique = $entrep['SituationJuridique']; - $identite->Bilan->Cloture = $entrep['bilanDate']; //@todo : date - $identite->Bilan->Duree = $entrep['bilanMois']; - $identite->Bilan->Devise = $entrep['bilanDevise']; - $identite->Bilan->Capital = $entrep['bilanDA']; - $identite->Bilan->CA = $entrep['bilanFL']; - $identite->Bilan->Resultat = $entrep['bilanHN']; - $identite->Bilan->Effectif = $entrep['bilanYP']; - $identite->Bourse->placeCotation = $bourse['placeCotation']; - $identite->Bourse->nombreTitres = $bourse['nombreTitres']; - $identite->Bourse->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $identite->Bourse->derCoursDate = $bourse['date']; //@todo : date - $identite->Bourse->derCoursCloture = $bourse['close']; //@todo : date - - $tabAutreSiren = array(); - if (isset($entrep['AutreSiren'])) { - $autreSiren = new AutreSiren(); - $autreSiren->siren = $entrep['AutreSiren']['listeSiren']['siren']; - $autreSiren->type = $entrep['AutreSiren']['listeSiren']['type']; - $tabAutreSiren[] = $autreSiren; - } - $identite->AutreSiren = $tabAutreSiren; - - $identite->DateMajINSEE = $entrep['DateMajINSEE']; //@todo : date - $identite->DateMajRCS = $entrep['DateMajRCS']; //@todo : date - $identite->DateMajBILAN = $entrep['bilanDateMaj']; //@todo : date - $identite->DateMajANN = $entrep['dateMajANN']; //@todo : date - $identite->DateMajID = $entrep['dateMajIdentite']; //@todo : date - //'importExport' = $entrep['importExport'], - - if (preg_match('/NAF4/i', $this->tabInfoUser['pref'])) - { - $entrep2 = $iInsee->getNaf4($siren, $nic, $id); - $identite->Naf4Ent = $entrep2['apen4']; - $identite->Naf4Etab = $entrep2['apet4']; - $identite->Naf4EntLib = $entrep2['apen4_lib']; - $identite->Naf4EtabLib = $entrep2['apet4_lib']; - } - - debugLog('I', 'Etablissement retourné = '. $entrep['Nom'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('identite',$siret,$id); - $duree=round(microtime(1)-$tdeb,3); - $ligne=date('YmdHis').";$siret;Ws->getIdentite APRES ($duree s) !!!"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - - return $identite; - } - - /** - * Retourne les informations identitaires de l'entreprise ou de l'établissement demandé - * @param string $siret Siren de l'entreprise ou siret de l'établissement - * @param integer $id Identifiant S&D de l'établissement - * @return IdentiteProcol Fiche d'identité de l'établissement - */ - public function getIdentiteProcol($siret, $id=0, $forceVerif=false) - { - debugLog('I',"Identité AGS demandée pour siret $siret (id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if (intval($siren)==0 && $id==0) { - $this->sendError('1010'); - } elseif ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren, $nic, $id, $forceVerif); - debugLog('I', "Après getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $duree = round(microtime(1)-$tdeb,3); - $ligne = date('YmdHis').";$siret;Ws->getIdentite juste apres iInsee->... ($duree s)"; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - if (empty($entrep)) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - - $identiteProcol = new IdentiteProcol(); - - //Element identite - $identite = new Identite(); - $identite->id = $entrep['id']; - $identite->Siret = $entrep['Siret']; - $identite->SiretSiege = $entrep['SiretSiege']; - $identite->Siege = $entrep['Siege']; - $identite->TribunalCode = $entrep['Tribunal']; - $identite->TribunalLib = $entrep['TribunalLib']; - $identite->NumRC = $entrep['numRC']; // Ajouté le 4 08 2009 - $identite->Actif = $entrep['Actif']; - $identite->EntActiveRCS = $entrep['EntActiveRCS']; - $identite->AutreId = $entrep['AutreId']; - $identite->Source = $entrep['Source']; - $identite->SourceId = $entrep['SourceId']; - $identite->Isin = $entrep['Isin']; - $identite->Nom = strtr($entrep['Nom'],'/*',' '); - $identite->Nom2 = $entrep['Nom2']; - $identite->NomLong = $entrep['nomLong']; // Ajouté le 4 08 2009 - $identite->NomCommercial = $entrep['NomCommercial']; // Ajouté le 16 11 2010 - $identite->Siret = $entrep['Siret']; - $identite->Sigle = $entrep['Sigle']; - $identite->SigleLong = $entrep['sigleLong']; // Ajouté le 4 08 2009 - $identite->Enseigne = $entrep['Enseigne']; - $identite->EnseigneLong = $entrep['enseigneLong']; // Ajouté le 16 11 2010 - $identite->Adresse = $entrep['Adresse']; - $identite->Adresse2 = $entrep['Adresse2']; - $identite->AdresseNum = $entrep['AdresseNum']; - $identite->AdresseBtq = $entrep['AdresseBtq']; - $identite->AdresseVoie = $entrep['AdresseVoie']; - $identite->AdresseRue = $entrep['AdresseRue']; - $identite->CP = $entrep['CP']; - $identite->Ville = $entrep['Ville']; - $identite->Pays = $entrep['Pays']; // Ajouté le 18 02 2008 - $identite->PaysIso2 = $entrep['PaysIso2']; - $identite->AdresseDom = $entrep['AdresseDom']; - - $tabAdresseDomEnt = array(); - if (isset($entrep['AdresseDomEnt']) && count($entrep['AdresseDomEnt'])>0){ - foreach ($entrep['AdresseDomEnt'] as $element){ - $adresseDomEnt = new AdresseDomEnt(); - $adresseDomEnt->siren = $element['siren']; - $adresseDomEnt->nom = $element['nom']; - $tabAdresseDomEnt[] = $adresseDomEnt; - } - } - $identite->AdresseDomEnt = $tabAdresseDomEnt; - - $identite->AdresseDomNb = $entrep['AdresseDomNb']; - $identite->Civilite = $entrep['Civilite']; - $identite->NbEtab = $entrep['NbEtab']; - $identite->Tel = $entrep['Tel']; - $identite->Fax = $entrep['Fax']; - $identite->Web = $entrep['Web']; - $identite->Mail = $entrep['Mail']; - $identite->GeoLat = $entrep['GeoLat']; - $identite->GeoLon = $entrep['GeoLon']; - $identite->GeoPrecis = $entrep['GeoPrecis']; - $identite->GeoInfos = $entrep['GeoInfos']; - $identite->TvaNumero = $entrep['TvaNumero']; - $identite->TvaAttribue = $entrep['TvaAttribue']; - $identite->FJ = $entrep['FJ']; - $identite->FJ_Lib = $entrep['FJ_lib']; - $identite->FJ2 = $entrep['FJ2']; // Ajouté le 4 08 2009 - $identite->FJ2_Lib = $entrep['FJ2_Lib']; // Ajouté le 4 08 2009 - $identite->Siren = $entrep['Siren']; - $identite->Nic = $entrep['Nic']; - $identite->NafEnt = $entrep['NafEnt']; - $identite->NafEntLib = $entrep['NafEntLib']; - $identite->NafEtab = $entrep['NafEtab']; - $identite->NafEtabLib = $entrep['NafEtabLib']; - $identite->NaceEtab = $entrep['NaceEtab']; - $identite->NaceEnt = $entrep['NaceEnt']; - $identite->Nafa = $entrep['APRM']; - $identite->NafaLib = $entrep['APRM_Lib']; - $identite->NumRM = $entrep['NumRM']; - $identite->Activite = $entrep['Activite']; - $identite->Capital = $entrep['Capital']; - $identite->CapitalDev = $entrep['CapitalDev']; - $identite->CapitalLib = $entrep['CapitalLib']; // Ajouté le 18 02 2008 - $identite->CapitalType = $entrep['CapitalType']; // Ajouté le 4 08 2009 - $identite->DateCreaEt = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEt']); - $identite->DateCreaEn = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEn']); - $identite->DateClotEt = $entrep['DateClotEt']; //@todo : date - $identite->DateImmat = $entrep['dateImmat']; // Ajouté le 4 08 2009 - $identite->DateRadiation = $entrep['dateRad']; // Ajouté le 4 08 2009 - $identite->EffEnTr = $entrep['EffEnTr']; - $identite->EffEnTrLib = $entrep['EffEnTrLib']; - $identite->Effectif = $entrep['Effectif']; - $identite->EffEtTr = $entrep['EffEtTr']; // Ajout le 11 08 2010 - $identite->EffEtTrLib = $entrep['EffEtTrLib']; // Ajout le 11 08 2010 - $identite->EffectifEtab = $entrep['EffectifEtab']; // Ajout le 11 08 2010 - $identite->Dept = $entrep['Dept']; - $identite->codeCommune = $entrep['codeCommune']; - $identite->AnneeEffEn = $entrep['AnneeEffEn']; - $identite->AnneeEffEt = $entrep['AnneeEffEt']; - $identite->AnneeTCA = $entrep['AnneeTCA']; - $identite->TrancheCA = $entrep['TrancheCA']; - $identite->TrancheCALib = $entrep['TrancheCALib']; - $identite->dir1Code = $entrep['dir1Code']; - $identite->dir1Titre = $entrep['dir1Titre']; - $identite->dir1NomPrenom = $entrep['dir1NomPrenom']; - $identite->dir1DateFct = $entrep['dir1DateFct']; //@todo : date - $identite->dir1DateNaiss = $entrep['dir1DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir1LieuNaiss = $entrep['dir1LieuNaiss']; // Ajouté le 4 08 2009 - $identite->dir2Code = $entrep['dir2Code']; - $identite->dir2Titre = $entrep['dir2Titre']; - $identite->dir2NomPrenom = $entrep['dir2NomPrenom']; - $identite->dir2DateFct = $entrep['dir2DateFct']; //@todo : date - $identite->dir2DateNaiss = $entrep['dir2DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir2LieuNaiss = $entrep['dir2LieuNaiss']; // Ajouté le 4 08 2009 - $identite->Rivoli = $entrep['Rivoli']; - $identite->InfosIris->codIris = $entrep['InfosIris']['codIris']; - $identite->InfosIris->codComIris = $entrep['InfosIris']['codComIris']; - $identite->InfosIris->libIris = $entrep['InfosIris']['libIris']; - $identite->InfosIris->typIris = $entrep['InfosIris']['typIris']; - $identite->InfosIris->evoIris = $entrep['InfosIris']['evoIris']; - $identite->InfosIris->trIris = $entrep['InfosIris']['trIris']; - $identite->InfosIris->grdQuartier = $entrep['InfosIris']['grdQuartier']; - $identite->NatureActivite = $entrep['NatureActivite']; // Nature de l'activité - $identite->OrigineCreation = $entrep['OrigineCreation']; // Origine de la création - $identite->TypeExploitation = $entrep['TypeExploitation']; - $identite->Auxiliaire = $entrep['Auxiliaire']; // 1=Auxiliaire / 0=Non auxiliaire - $identite->Saisonnalite = $entrep['Saisonnalite']; // P=Activité permanente / S=Activité saisonnière - $identite->SituationJuridique = $entrep['SituationJuridique']; - $identite->Bilan->Cloture = $entrep['bilanDate']; //@todo : date - $identite->Bilan->Duree = $entrep['bilanMois']; - $identite->Bilan->Devise = $entrep['bilanDevise']; - $identite->Bilan->Capital = $entrep['bilanDA']; - $identite->Bilan->CA = $entrep['bilanFL']; - $identite->Bilan->Resultat = $entrep['bilanHN']; - $identite->Bilan->Effectif = $entrep['bilanYP']; - $identite->Bourse->placeCotation = $bourse['placeCotation']; - $identite->Bourse->nombreTitres = $bourse['nombreTitres']; - $identite->Bourse->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $identite->Bourse->derCoursDate = $bourse['date']; //@todo : date - $identite->Bourse->derCoursCloture = $bourse['close']; //@todo : date - - $tabAutreSiren = array(); - if (isset($entrep['AutreSiren'])) { - $autreSiren = new AutreSiren(); - $autreSiren->siren = $entrep['AutreSiren']['listeSiren']['siren']; - $autreSiren->type = $entrep['AutreSiren']['listeSiren']['type']; - $tabAutreSiren[] = $autreSiren; - } - $identite->AutreSiren = $tabAutreSiren; - - $identite->DateMajINSEE = $entrep['DateMajINSEE']; //@todo : date - $identite->DateMajRCS = $entrep['DateMajRCS']; //@todo : date - $identite->DateMajBILAN = $entrep['bilanDateMaj']; //@todo : date - $identite->DateMajANN = $entrep['dateMajANN']; //@todo : date - $identite->DateMajID = $entrep['dateMajIdentite']; //@todo : date - - if (preg_match('/NAF4/i', $this->tabInfoUser['pref'])) - { - $entrep2 = $iInsee->getNaf4($siren, $nic, $id); - $identite->Naf4Ent = $entrep2['apen4']; - $identite->Naf4Etab = $entrep2['apet4']; - $identite->Naf4EntLib = $entrep2['apen4_lib']; - $identite->Naf4EtabLib = $entrep2['apet4_lib']; - } - - $identiteProcol->Identite = $identite; - - //Eléments annonces légales - $anns = $this->getAnnonces($siren, 1); - $tabRetAnn = $tabLastEven = array(); - $anns = $anns->result; - $tribunalProcol = false; - foreach ($anns as $nb=>$ann) { - $tabRetEven = array(); - foreach ($ann->evenements as $tabEven) { - // On ignore les éléments suivants - if ($tabEven->CodeEven>=7000) continue; - if ($tabEven->CodeEven>=4000 && $tabEven->CodeEven<=4999) continue; - - // Par défaut, on force le tribunal à celui présent dans la dernière annonce de Procol - if ($tribunalProcol==false && $tabEven->CodeEven>=1000 && $tabEven->CodeEven<2000 && $ann->BodaccCode=='BODA') { - $identiteProcol->TribunalCode = $ann->TribunalCode; - $identiteProcol->TribunalLib = prepareString($ann->Tribunal); - $tribunalProcol=true; - } - - // On ne prend que le dernier élément de chaque type - if (in_array($tabEven->CodeEven, $tabLastEven)) continue; - - $tabLastEven[] = $tabEven->CodeEven; - $tabRetEven[] = $tabEven; - } - - if (count($tabRetEven)>0) { - $annonce = new Annonce(); - $annonce->id = $ann->id; - $annonce->BodaccCode = $ann->BodaccCode; - $annonce->BodaccNum = $ann->BodaccNum; - $annonce->NumAnnonce = $ann->NumAnnonce; - $annonce->DateParution = $ann->DateParution; //@todo : date - $annonce->Departement = $ann->Departement; - $annonce->Tribunal = $ann->Tribunal; - $annonce->TribunalCode = $ann->TribunalCode; - $annonce->TribunalSiret = $ann->TribunalSiret; - $annonce->Rubrique = $ann->Rubrique; - $annonce->typeAnnonce = $ann->typeAnnonce; - $annonce->texteRectificatif = $ann->texteRectificatif; - $annonce->texteAnnonce = utf8_encode($ann->texteAnnonce); - $annonce->dateEffet = $ann->dateEffet; //@todo : date - $annonce->dateJugement = $ann->dateJugement; //@todo : date - $annonce->dateInsertionSD = $ann->dateInsertionSD; //@todo : date - $annonce->evenements = $tabRetEven; - $annonce->Lien_Annonce_Pdf = $ann->Lien_Annonce_Pdf; - $tabRetAnn[] = $annonce; - } - } - $identiteProcol->Annonces = $tabRetAnn; - - $iRncs = new MRncs(); - if ($entrep['Siege']==1 || $entrep['Siege']==11) { - $identiteProcol->LibTypeEtab = 'Etablissement Siege'; - } else { - $tabEtabRncs = $iRncs->getIdentiteEtab($siren, $entrep['Nic']); - if ($tabEtabRncs['Siege']==2) $identiteProcol->LibTypeEtab = 'Etablissement Principal'; - elseif ($tabEtabRncs['Siege']==1) $identiteProcol->LibTypeEtab = 'Etablissement Complementaire'; - elseif ($tabEtabRncs['Siege']==0) $identiteProcol->LibTypeEtab = 'Etablissement Secondaire'; - } - - //@todo - $tabJuge = $iRncs->getIntervenants($siren); - $tabDepots=array(); - foreach ($tabJuge as $iDepot=>$depot) { - $organe = new Organe(); - $organe->codEven = $depot['codEven']; - $organe->libEven = prepareString($depot['libEven']); - $organe->dateEffet = $depot['dateEffet']; - $organe->admcode = $depot['admcode']; - $organe->admfonction = prepareString($depot['admfonction']); - $organe->admnom = prepareString($depot['admnom']); - $organe->admadrNum = $depot['admadrNum']; - $organe->admadrInd = $depot['admadrInd']; - $organe->admadrVoie = $depot['admadrVoie']; // @todo : adm1adr1, adm1adr2, adm1adr3, - $organe->admadrCP = $depot['admadrCP']; - $organe->admadrVille = $depot['admadrVille']; - $tabDepots[] = $organe; - } - $identiteProcol->Organes = $tabDepots; - - - $mLiens = new MLiens($siren); - $tabA = $mLiens->getActionnaires($siren, 1); - $nbA = count($tabA); - $tabAct = array(); - foreach ($tabA as $i=>$lien) { - $liens = new Actionnaire(); - $liens->Pmin = $lien['Pmin']; - $liens->MajMin = $lien['MajMin']; - $liens->RaisonSociale = $lien['RaisonSociale']; - $liens->Pays = $lien['Pays']; - $liens->Siren = $lien['Siren']; - $liens->Actif = $lien['Actif']; - $tabAct[] = $liens; - } - $identiteProcol->Actionnaires = $tabAct; - - $iGreffes = new MGreffes(); - $tabActes = $iGreffes->getListeActes($siren); - - $identiteProcol->StatutsModifDepot = $identiteProcol->StatutsModif = '0000-00-00'; - foreach ($tabActes as $i=>$acte) { - if ('_'.$acte['acte_type']=='_04') { // STATUTS CONSTITUTIFS - $identiteProcol->StatutsConstDepot = $acte['depot_date']; // => 1997-12-18 - $identiteProcol->StatutsConst = $acte['acte_date']; // => 1997-11-13 - break; - } elseif (in_array('_'.$acte['acte_type'], array( - //'_04', // STATUTS CONSTITUTIFS - '_06', // STATUTS A JOUR 9 0000-00-00 2009-09-02 17:05:55 - '_07', // STATUTS A JOUR 9 0000-00-00 2009-09-02 17:05:55 - '_08', // STATUTS A JOUR ET DECLARATION DE CONFORMITE 9 0000-00-00 2009-09-02 17:05:55 - '_09', // STATUTS APRES TRANSFERT DE SIEGE 9 0000-00-00 2009-09-02 17:05:55 - '_A1', // STATUTS 9 0000-00-00 2009-09-02 17:05:55 - '_AH', // AVENANT AUX STATUTS - ))) { - // On ne prend que la dernière modif - if ($identiteProcol->StatutsModifDepot=='0000-00-00' && $identiteProcol->StatutsModif=='0000-00-00') { - $identiteProcol->StatutsModifDepot = $acte['depot_date'];// => 1997-12-18 - $identiteProcol->StatutsModif = $acte['acte_date']; // => 1997-11-13 - } - } - } - - /** Y a t il eu des informations relatives à une cession ? **/ - $tabCes = $iGreffes->getInfosCessions($siren); - if ($tabCes) { - $identiteProcol->CessionJugeLib = $tabCes['cessJuge']; - $identiteProcol->CessionJugeDate = $tabCes['cessDateJuge']; - $identiteProcol->CessionAvisBodac = $tabCes['cessDateBod']; - $identiteProcol->CessionInvenDate = $tabCes['cessDateInv']; - $identiteProcol->CessionCAdeclare = $tabCes['cessCAdec']; - $identiteProcol->CessionEffectif = $tabCes['cessEffectif']; - $identiteProcol->CessionDesc = $tabCes['cessDesc']; - $identiteProcol->CessionDescDate = $tabCes['cessDateDesc']; - $identiteProcol->CessionOffreDate = $tabCes['cessDateLim']; - $identiteProcol->CessionMandataire = $tabCes['cessMand']; - } - - //sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Debug $siren", print_r($tabRet,true)) ; - debugLog('I', 'Etablissement retourné = '. $entrep['Nom'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('identite',$siret,$id); - - Zend_Registry::get('WsLogger')->info("getIdentiteProcol : ".print_r($identiteProcol,1)); - - return $identiteProcol; - } - - /** - * Retourne les liens financiers pour une entreprise. - * - * @param integer $siren Siren de l'entreprise - * @param boolean $actifsUniquement Uniquement les liens Actifs - * @return LiensReturn - */ - public function getLiens($siren, $actifsUniquement = true) - { - $this->authenticate(); - //Initialisation - if (empty($actifsUniquement)) { $actifsUniquement = true; } - $tabAct = $tabPar = array(); - - debugLog('I',"Liens entreprises demandés pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $mLiens = new MLiens($siren); - $tabA = $mLiens->getActionnaires($siren, $actifsUniquement); - $nbA = count($tabA); - $tabAct = array(); - if ($nbA > 0) { - foreach ($tabA as $i => $lien) { - $actionnaire = new Actionnaire(); - $actionnaire->Pmin = $lien['Pmin']; - $actionnaire->MajMin = $lien['MajMin']; - $actionnaire->RaisonSociale = $lien['RaisonSociale']; - $actionnaire->TypeEntrep = $lien['TypeEntrep']; - $actionnaire->Pays = $lien['Pays']; - $actionnaire->Siren = $lien['Siren']; - $actionnaire->Actif = $lien['Actif']; - $actionnaire->Source = $lien['Source']; - $actionnaire->DateLien = $lien['DateLien']; //@todo : date - $actionnaire->DateMaj = $lien['DateMaj']; //@todo : date - $tabAct[] = $actionnaire; - } - } - debugLog('W', "$nbA actionnaires pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $tabP = $mLiens->getParticipations($siren, $actifsUniquement); - $nbP = count($tabP); - $tabPar = array(); - if ($nbP > 0) { - foreach ($tabP as $i => $lien) { - $participation = new Participation(); - $participation->Pmin = $lien['Pmin']; - $participation->MajMin = $lien['MajMin']; - $participation->RaisonSociale = $lien['RaisonSociale']; - $participation->TypeEntrep = $lien['TypeEntrep']; - $participation->Pays = $lien['Pays']; - $participation->Siren = $lien['Siren']; - $participation->Actif = $lien['Actif']; - $participation->Source = $lien['Source']; - $participation->DateLien = $lien['DateLien']; //@todo : date - $participation->DateMaj = $lien['DateMaj']; //@todo : date - $tabPar[] = $participation; - } - } - debugLog('W', "$nbP participations pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('liens',$siren); - - $output = new LiensReturn(); - $output->actionnaires = $tabAct; - $output->participations = $tabPar; - return $output; - } - - - /** - * Liste des établissements d'une entreprise - * @param string $siren Siren de l'entreprise - * @param integer $departement Limiter aux établissements du departement - * @param integer $actif Otpionnel 1=Uniquements les actifs, 0=inactifs, Néant=Tous - * @param integer $position - * @param integer $nbRep - * - * @return ListeEtablissementsReturn - */ - public function getListeEtablissements($siren, $dep = 0, $actif = -1, $position = 0, $nbRep = 20) - { - $this->authenticate(); - - //Initialisation - if (empty($dep)) { $dep = 0; } - if (!in_array($actif, array(0,1))) { $actif = -1; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 20; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - $departement = $dep; - - debugLog('I',"Liste des établissements demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissements($siren, '', $position, $nbRep, 200, $departement, $actif); - $etabs = $rep['reponses']; - $nbReponses = $rep['nbReponsesTotal']; - $result = array(); - if (count($etabs)>0) - { - foreach ($etabs as $nb => $etab) - { - $etablissement = new Etablissement(); - $etablissement->id = $etab['id']; - $etablissement->Siege = $etab['Siege']; - $etablissement->Enseigne = $etab['Enseigne']; - $etablissement->Adresse = $etab['Adresse']; - $etablissement->Adresse2 = $etab['Adresse2']; - $etablissement->CP = $etab['CP']; - $etablissement->Ville = $etab['Ville']; - $etablissement->Tel = $etab['Tel']; - $etablissement->Fax = $etab['Fax']; - $etablissement->Nic = $etab['Nic']; - $etablissement->Actif = $etab['Actif']; - $etablissement->NafEtab = $etab['NafEtab']; - $etablissement->NafEtabLib = $etab['NafEtabLib']; - $etablissement->EffEtTr = $etab['EffEtTr']; - $etablissement->EffEtTrLib = $etab['EffEtTrLib']; - - $result[] = $etablissement; - } - } - debugLog('I', "Nb Etablissements retournés ($departement, $actif) = ". count($result), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('etablissements',$siren); - $output = new ListeEtablissementsReturn(); - $output->nbReponses = $nbReponses; - $output->result = $result; - return $output; - } - - /** - * Retourne l'ensemble des informations identitaires des dirigeants de l'entreprise - * - * @param string $siren Siren de l'entreprise - * @param bool $histo Afficher l'historique des dirigeants - * @return DirigeantsReturn Liste des dirigeants actifs de l'entreprise - */ - public function getDirigeants( $siren , $histo = false) - { - $this->authenticate(); - - //Initialisation - if (empty($histo)) { $histo = false; } - - debugLog('I',"Dirigeants demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - if ($histo) $option = 'histo'; - else $option = ''; - $iInsee = new MInsee(); - $dirs = $iInsee->getDirigeants($siren, $histo); - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $liste = array(); - foreach ($dirs as $nb => $dir) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $dirigeant = new Dirigeant(); - $dirigeant->Code = $dir['Fonction']; - $dirigeant->Titre = $dir['Titre']; - $dirigeant->Societe = $dir['Societe']; - $dirigeant->Civilite = $dir['Civilite']; - $dirigeant->Nom = $dir['Nom']; - $dirigeant->Prenom = $dir['Prenom']; - $dirigeant->NaissDate = $dir['NaissDate']; //@todo : date - $dirigeant->NaissVille = $dir['NaissVille']; - $dirigeant->NaissDepPays = $dir['NaissDepPays']; - $dirigeant->Ancien = $dir['Ancien']; - $dirigeant->DateFct = $dir['DateFct']; //@todo : date - $liste[] = $dirigeant; - } - $this->wsLog('dirigeants',$siren,$option); - debugLog('I', 'Nb Dirigeants retournés = '. count($dirs), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $output = new DirigeantsReturn(); - $output->result = $liste; - return $output; - } - - /** - * Retourne la liste des annonces légales relative à une entreprise - * - * @todo Revoir cette fonction pour la faire marcher avec les associations - * - * @param string $siren Siren de l'entreprise - * @param integer $filtre 0=Pas de Filtre, 1=BODACC, 2=B.A.L.O, 3=JO Association, 4=Boamp - * @param string $idAnn Identifiant de l'annonce - * @param integer $position - * @param integer $nbRep - * @return AnnoncesReturn - */ - public function getAnnonces($siren, $filtre = 0, $idAnn = '', $position = 0, $nbRep = 100) - { - $this->authenticate(); - - //Initialisation - if (empty($filtre)) { $filtre = 0; } - if (empty($idAnn)) { $idAnn = ''; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 100; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - - debugLog('I',"Annonces demandées pour $siren ($filtre, $idAnn)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $liste = array(); - - if (strlen($siren)<>9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0 && $idAnn=='') { - debugLog('W', "Siren $siren ou annonce $idAnn inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - /* - if ($siren>100 && $filtre==3) $asso=true; - else { - $asso=false; - $tabIdentite=$this->iInsee->getIdentiteLight($siren); - if ($tabIdentite['FJ']>90 && $tabIdentite['FJ']<94 || - $tabIdentite['FJ']>9000 && $tabIdentite['FJ']<9400) $asso=true; - }*/ - if ($idAnn=='') { - $anns=$iInsee->getAnnoncesLegales($siren); - $annsB=$iInsee->getAnnoncesBalo($siren); - $annsA=$iInsee->getAnnoncesAsso($siren); - $annsM=$iInsee->getAnnoncesBoamp($siren, $idAnn); - } elseif ($filtre==1) - $anns=$iInsee->getAnnoncesLegales($siren, $idAnn); - elseif ($filtre==2) - $annsB=$iInsee->getAnnoncesBalo($siren, $idAnn); - elseif ($filtre==3) - $annsA=$iInsee->getAnnoncesAsso($siren, $idAnn); - elseif ($filtre==4) - $annsM=$iInsee->getAnnoncesBoamp($siren, $idAnn); - - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($anns) && empty($annsB) && empty($annsA) && empty($annsM)) - { - debugLog('W', "Aucune annonce pour le siren $siren (source=$filtre, id=$idAnn)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren inexistant B '.$siren.' '.$idAnn; - } - else - { - foreach ($anns as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - $annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = $ann['texteRectificatif']; - $annonce->texteAnnonce = $ann['texteAnnonce']; - $annonce->libFJ = $ann['libFJ']; - $annonce->codFJ = $ann['codFJ']; - $annonce->capital = $ann['capital']; - $annonce->capitalDev = $ann['capitalDev']; - - $annonce->raisonSociale = $ann['raisonSociale']; - $annonce->nomCommercial = $ann['nomCommercial']; - $annonce->sigle = $ann['sigle']; - $annonce->adresse = $ann['adresse']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - - if (is_array($annsB)) - { - foreach ($annsB as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = $ann['texteRectificatif']; - $annonce->texteAnnonce = $ann['texteAnnonce']; - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - - if (is_array($annsA)) - { - foreach ($annsA as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = $ann['texteRectificatif']; - $annonce->texteAnnonce = $ann['texteAnnonce']; - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - //@todo : date - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - - if (is_array($annsM)) - { - foreach ($annsM as $nb=>$ann) - { - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = $ann['texteRectificatif']; - $annonce->texteAnnonce = $ann['texteAnnonce']; - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - } - - $nbReponses = count($liste); - if ($nbReponses>0){ - $liste = array_slice($liste, $position, $nbRep); - } - debugLog('I', "Nb Annonces $filtre retournées pour $siren (source=$filtre, id=$idAnn) = ". count($liste), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('annonces',$siren,$filtre.'/'.$idAnn); - file_put_contents(LOG_PATH.'/annonces.log', print_r($liste,1)); - - $output = new AnnoncesReturn(); - $output->nbReponses = $nbReponses; - $output->result = $liste; - return $output; - } - - /** - * Evaluation indiScore d'une entreprise - * - * @param string $siren Siren de l'entreprise - * @param string $nic - * @param int $niveau - * @return Indiscore - */ - public function getIndiScore($siren, $nic=0, $niveau=2, $plus=false) - { - $this->authenticate(); - $perm = false; - switch($niveau){ - case 1: - if ( !$this->checkPerm('indiscore') || !$this->checkPerm('indiscorep') ){ - $this->permission('indiscore'); - } - break; - case 2: - if (!$this->checkPerm('indiscore2') || !$this->checkPerm('indiscore2p') ){ - $this->permission('indiscore2'); - } - break; - case 3: - if (!$this->checkPerm('indiscore3') || !$this->checkPerm('indiscore3p') ){ - $this->permission('indiscore3'); - } - break; - } - - //Initialisation - $accesDist = true; - if (empty($nic)) { $nic = 0; } - if (empty($niveau)) { $niveau = 2; } - if (empty($plus)) { $plus = false; } - if ( !in_array($niveau, array(0,1,2,3,4,5)) ) { $niveau = 2; } - $tabRet = array(); - debugLog('I',"IndiScore demandée pour $siren en niveau $niveau",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)>9 || (substr($siren,0,9)*1)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $tDeb = microtime(true); - require_once 'Metier/scores/classMScores.php'; - $tabRet = calculIndiScore($siren, $nic, $accesDist, $niveau); - $duree = round(microtime(true)-$tDeb,3); - debugLog('W', "indiscore DUREE = $duree s", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - /* - if ($plus) { - $this->setSurveillance($siren, $this->tabInfoUser['email'], 'Indiscore+', 'privileges', false, 0); - $this->setSurveillance($siren, $this->tabInfoUser['email'], 'Indiscore+', 'score'); - if ($this->tabInfoUser['idClient']==89) - $this->setSurveillance($siren, $this->tabInfoUser['email'], 'Indiscore+', 'annonces'); - }*/ - - Zend_Registry::get('WsLogger')->info("INDISCORE : ".print_r($tabRet,1)); - $output = new Indiscore(); - foreach($tabRet as $key => $value){ - if ($key=='paiements'){ - $parMont = $value['parMont']; - $parTrim = $value['parTrim']; - $tabMont = array(); - foreach($parMont as $parMontK => $parMontV){ - $paiementMont = new IndiscorePaiementDetail(); - $paiementMont->id = $parMontK; - $paiementMont->nb = $parMontV['nb']; - if (array_key_exists('d=180', $parMontV)){ - $paiementMont->d180 = $parMontV['d=180']; - } - if (array_key_exists('d=150', $parMontV)){ - $paiementMont->d150 = $parMontV['d=150']; - } - if (array_key_exists('d=120', $parMontV)){ - $paiementMont->d120 = $parMontV['d=120']; - } - if (array_key_exists('d=90', $parMontV)){ - $paiementMont->d90 = $parMontV['d=90']; - } - if (array_key_exists('d=60', $parMontV)){ - $paiementMont->d60 = $parMontV['d=60']; - } - if (array_key_exists('d=30', $parMontV)){ - $paiementMont->d30 = $parMontV['d=30']; - } - $tabMont[] = $paiementMont; - } - $tabTrim = array(); - foreach($parTrim as $parTrimK => $parTrimV){ - $paiementTrim = new IndiscorePaiementDetail(); - $paiementTrim->id = $parTrimK; - $paiementTrim->nb = $parTrimV['nb']; - if (array_key_exists('d=180', $parTrimV)){ - $paiementTrim->d180 = $parTrimV['d=180']; - } - if (array_key_exists('d=150', $parTrimV)){ - $paiementTrim->d150 = $parTrimV['d=150']; - } - if (array_key_exists('d=120', $parTrimV)){ - $paiementTrim->d120 = $parTrimV['d=120']; - } - if (array_key_exists('d=90', $parTrimV)){ - $paiementTrim->d90 = $parTrimV['d=90']; - } - if (array_key_exists('d=60', $parTrimV)){ - $paiementTrim->d60 = $parTrimV['d=60']; - } - if (array_key_exists('d=30', $parTrimV)){ - $paiementTrim->d30 = $parTrimV['d=30']; - } - $tabTrim[] = $paiementTrim; - } - $paiement = new IndiscorePaiement(); - $paiement->parMont = $tabMont; - $paiement->parTrim = $tabTrim; - $output->paiements = $paiement; - - } elseif ($key=='Notes_Structure') { - - $notesStructure = new IndiscoreNotesStructure(); - $notesStructure->activite = $value['activite']; - $notesStructure->naf4 = $value['naf4']; - $notesStructure->age = $value['age']; - $notesStructure->capital = $value['capital']; - $notesStructure->effectif = $value['effectif']; - $notesStructure->fj = $value['fj']; - $notesStructure->localite = $value['localite']; - $notesStructure->singulier = $value['singulier']; - $output->Notes_Structure = $notesStructure; - - } elseif ($key=='tabBilans') { - - $tabRet = array(); - foreach($value as $bilan) - { - $element = new ListeBilans(); - $element->dateProvPartenaire = $bilan['dateProvPartenaire']; //@todo : date - $element->dateInsert = $bilan['dateInsert']; //@todo : date - $element->typeBilan = $bilan['typeBilan']; - $element->dureeExercice = $bilan['dureeExercice']; - $element->dateExercice = $bilan['dateExercice']; //@todo : date - $element->millesime = $bilan['millesime']; - $element->dateExercicePre = $bilan['dateExercicePre']; //@todo : date - $element->dureeExercicePre = $bilan['dureeExercicePre']; - $element->monnaie = $bilan['monnaie']; - $element->source = $bilan['source']; - $tabRet[] = $element; - } - $output->tabBilans = $tabRet; - - } elseif ($key=='tabBilan') { - - $tabRet = array(); - foreach($value as $bilan){ - $resultBilan = new Bilan(); - $tabPoste = array(); - foreach($bilan as $bilan_key => $bilan_value){ - if(!in_array($bilan_key, array('SIREN', 'DATE_FRAICHE_BILAN', - 'DATE_CLOTURE', 'DATE_CLOTURE_PRE', 'DUREE_MOIS', - 'DUREE_MOIS_PRE', 'MONNAIE', 'CONSOLIDE', 'MONNAIE_ORI', - 'MONNAIE_LIV_UNITE', 'SOURCE', 'devise'))){ - $resultPoste = new BilanPoste(); - $resultPoste->id = $bilan_key; - $resultPoste->val = $bilan_value; - $tabPoste[] = $resultPoste; - } else { - $resultBilan->$bilan_key = $bilan_value; - } - } - $resultBilan->POSTES = $tabPoste; - $tabRet[] = $resultBilan; - } - $output->tabBilan = $tabRet; - - } elseif ($key=='tabInfosNotations') { - - $infosNotation = new IndiscoreInfosNotations(); - $infosNotation->SituationFinanciere = $value['SituationFinanciere']; - $infosNotation->Notation = $value['Notation']; - $infosNotation->ProbabiliteDefaut = $value['ProbabiliteDefaut']; - $output->tabInfosNotations = $infosNotation; - - } elseif ($key=='tabImportExport') { - - $tabRet = array(); - foreach($value as $element){ - $importExport = new IndiscoreImportExport(); - $importExport->importExport = $element['importExport']; - $importExport->annee = $element['annee']; - $importExport->rangNational = $element['rangNational']; - $importExport->deptSiege = $element['deptSiege']; - $tabRet[] = $importExport; - } - $output->tabImportExport = $tabRet; - - } elseif ($key=='tabCommentaires') { - - $tab = array(); - foreach($value as $comment) { - $tab[] = $comment; - } - $output->tabCommentaires = $tab; - - } elseif ($key=='tabVariables') { - - $tab = $value['CA_Y']; - $tabVar = array(); - foreach($tab as $varName => $varVal){ - $var = new CA_Y(); - $var->id = $varName; - $var->val = $varVal; - $tabVar[] = $var; - } - $variables = new IndiscoreVariables(); - $variables->CA_Y = $tabVar; - $output->tabVariables = $variables; - - } else { - $output->$key = $value; - } - } - $this->wsLog('indiscore',$siren); - return $output; - } - - /** - * Liste de tous les évènements enregistrés à l'INSEE pour une entreprise - * @param string $siren Siren de l'entreprise - * @param string $nic - * @param integer $position - * @param integer $nbRep - * @return InseeReturn - **/ - public function getListeEvenements($siren, $nic=0, $position=0, $nbRep=1000) - { - $this->authenticate(); - $this->permission('eveninsee'); - - //Initialisation - if (empty($nic)) { $nic = 0; } - if (empty($position)) { $position = 0; } - if (empty($nbRep) || $nbRep>1000) { $nbRep = 1000; } - - debugLog('I',"Liste des évènements pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $evens = $iInsee->getEvenements($siren, $nic, $position, $nbRep); - $tabRet = array(); - if (count($evens)>0) { - foreach ($evens as $nb=>$even) { - $iEven = new InseeEven(); - $iEven->Nic = $even['nic']; - $iEven->Siege = $even['siege']; - $iEven->SiretAss = $even['siretAssocie']; - $iEven->TypeSiretAss = $even['typeSiretAss']; - $iEven->EvenCode = $even['codeEven']; - $iEven->EvenLib = $even['libEven']; - $iEven->EvenLibDet = $even['libEvenDet']; - $iEven->EvenDate = $even['dateEven']; //@todo : date - $iEven->DateInfo = $even['dateMAJ']; //@todo : date - $tabRet[] = $iEven; - } - } - - debugLog('I', 'Nb évènements retournés = '. count($tabRet), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('evenements',$siren); - $output = new InseeReturn(); - $output->nbReponses = count($tabRet); // @todo : retrouver le nombre total d'évenements - $output->result = $tabRet; - return $output; - } - - - /** - * Recherche - * @param string $type Type de la recherche (recherche entreprise : 'ent', recherche dirigeant : 'dir') - * @param RechercheEntrepriseCriteres $criteres - * @param int $position Position de parcours des résultats retournées (0 par défaut) - * @param int $nbRep Nombre de réponses retournées lors d'une requête (20 par défaut) - * @param int $maxRep Nombre de réponses maximum pouvant être retournées lors d'une requête (200 par défaut) - * @param bool $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (false par défaut) - * @param bool $avecSiren Seulement les entités sirénées (false par défaut) - * @return RechercheEntrepriseReturn - */ - public function rechercheEntreprise($type, $criteres, $position = 0, $nbRep = 20, $maxRep = 200, $pertinence = false, $avecSiren = false) - { - //Enregistrement des accès à la requête getIdentite - Zend_Registry::get('WsLogger')->info("rechercheEntreprise - ip : ". - $_SERVER['REMOTE_ADDR'].", login:".$_SERVER['PHP_AUTH_USER']); - - require_once 'i18n/cleanchar.php'; - switch ($type) - { - case 'ent': - $entCriteres = new CriteresEntreprise(); - $entCriteres = $criteres->elementEntreprise; - $client = new SoapClient($this->wsdl, $this->wsdlOptions); - $identifiant = $entCriteres->identifiant; - $typeId = ''; - if ($identifiant!='') { - $len = strlen($identifiant); - //Numéro WALDEC - if (strtoupper(substr($identifiant,0,1))=='W') { - $typeId = 'W'; - //Code ISIN - } elseif ($len==12){ - $typeId = 'I'; - //TVA Intracommunautaire - } elseif (in_array(substr($identifiant,0,2), - array('AT','BE','BG','CY','CZ','DE','DK','EE','EL','ES', - 'FI','GB','HU','IE','IT','LT','LU','LV','MT','NL','PL', - 'PT','RO','SE','SI','SK'))){ - //"La recherche par numéro de TVA n'est pas encore possible sur ce pays !"; - //Pour la france - } elseif (substr($identifiant,0,2)=='FR') { - $typeId = 'S'; - if ($len==13) $identifiant = substr($identifiant,4,9); - else $identifiant = ''; - //Numéro RC - } elseif (preg_match('/A|B|C|D/i', $identifiant)) { - $typeId='R'; - //Siren normal on enleve tout ce qui n'est pas un chiffre - } else { - $typeId = 'S'; - } - } - - if (in_array($typeId, array('R', 'W', 'I'))){ - try { - $O = $client->searchAutreId( - $typeId, - $identifiant, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - $entCriteres->codePostal - ); - } catch (SoapFault $fault) { - Zend_Registry::get('WsLogger')->info("rechercheEntreprise - ".serialize($criteres)); - throw new SoapFault($fault->faultcode, $fault->faultstring); - exit; - } - } elseif ($typeId == 'S'){ - try { - $O = $client->searchSiren( - $identifiant, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - $entCriteres->codePostal - ); - } catch (SoapFault $fault) { - Zend_Registry::get('WsLogger')->info("rechercheEntreprise - ".serialize($criteres)); - throw new SoapFault($fault->faultcode, $fault->faultstring); - exit; - } - } else { - - try { - $O = $client->searchNomAdr( - cleanstring($entCriteres->raisonSociale), - cleanstring($entCriteres->adresse), - $entCriteres->codePostal, - cleanstring($entCriteres->ville), - empty($entCriteres->siege) ? false : $entCriteres->siege, - empty($entCriteres->actif) ? false : $entCriteres->actif, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - empty($pertinence) ? false : $pertinence, - empty($avecSiren) ? false : $avecSiren, - $entCriteres->naf - ); - } catch (SoapFault $fault) { - Zend_Registry::get('WsLogger')->info("rechercheEntreprise - ".serialize($criteres)); - throw new SoapFault($fault->faultcode, $fault->faultstring); - exit; - } - } - - break; - case 'dir': - $dirCriteres = new CriteresDirigeant(); - $dirCriteres = $criteres->elementDirigeant; - $client = new SoapClient($this->wsdl, $this->wsdlOptions); - try { - $O = $client->searchDir( - cleanstring($dirCriteres->nom), - cleanstring($dirCriteres->prenom), - $dirCriteres->dateNaiss, - cleanstring($dirCriteres->lieuNaiss), - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - empty($pertinence) ? false : $pertinence - ); - } catch (SoapFault $fault) { - Zend_Registry::get('WsLogger')->info("rechercheEntreprise - ".serialize($criteres)); - throw new SoapFault($fault->faultcode, $fault->faultstring); - exit; - } - break; - } - - $error = new ErrorType(); - $error = arrayToClass($O['error'], 'ErrorType'); - - $results = new RechercheEntrepriseResult(); - switch($type){ - case 'ent': - $results->criteres = $entCriteres; - break; - case 'dir': - $results->criteres = $dirCriteres; - break; - } - $results->info = $O['results']['info']; - $results->nbReponses = $O['results']['nbReponses']; - $results->nbReponsesTotal = $O['results']['nbReponsesTotal']; - $results->duree = $O['results']['duree']; - $results->erreur = $O['results']['erreur']; - $results->pass = $O['results']['pass']; - $reponse = array(); - if ( count($O['results']['reponses'])>0 ){ - foreach ($O['results']['reponses'] as $item) { - $reponse[] = arrayToClass($item, 'RechercheEntrepriseReponses'); - } - } - $results->reponses = $reponse; - - $outputParams = new RechercheEntrepriseReturn(); - $outputParams->error = $error; - $outputParams->results = $results; - return $outputParams; - } - - /** - * Recherche entreprise par nom et adresse - * @param unknown_type $raisonSociale - * @param unknown_type $adresse - * @param unknown_type $codePostal - * @param unknown_type $ville - * @param unknown_type $siege - * @param unknown_type $actif - * @param integer $deb - * @param integer $nbRep - * @param integer $maxRep - * @param boolean $pertinence - * @param boolean $avecSiren - * @param string $ape_etab - */ - protected function searchNomAdr($raisonSociale, $adresse='', $codePostal='', $ville='', $siege='', $actif='', $deb=0, $nbRep=20, $maxRep=200, $pertinence=false, $avecSiren=false, $ape_etab='') - { - debugLog('I',"Recherche Entreprise de $raisonSociale, $adresse, $codePostal $ville (Siège=$siege / Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $etabs = $iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren, $ape_etab); - - $recherche = new RechercheEntrepriseResult(); - - $tabRet = array(); - foreach ($etabs['reponses'] as $etab) { - $reponse = new RechercheEntrepriseReponses(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = strtr($etab['Nom'],'/*',' '); - $reponse->Nom2 = $etab['Nom2']; - $reponse->Sigle = $etab['Sigle']; - $reponse->Enseigne = $etab['Enseigne']; - $reponse->Adresse = $etab['Adresse']; - $reponse->Adresse2 = $etab['Adresse2']; - $reponse->CP = $etab['CP']; - $reponse->Ville = $etab['Ville']; - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = $this->iInsee->getLibelleFJ($etab['FJ']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = $iInsee->getLibelleNaf($etab['NafEtab']); // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = $iInsee->getLibelleNaf($etab['NafEnt']); - - $tabRet[] = $reponse; - } - - - $fp=@fopen(LOG_PATH.'/recherches.log','a'); - - $siretTrouve = 0; - if ($etabs['nbReponses']==0) { - - $str="NbRep=0, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - @fwrite($fp, $str.EOL); - @fclose($fp); - debugLog('I', "rechercheEtab : AUCUN RESULTAT, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - return array('error'=>array('errnum'=>100, 'errmsg'=>'Pas de reponse'), 'results'=>$tabRet); - - } - else - { - - if ($etabs['nbReponses']==1) $siretTrouve=$etabs['reponses'][0]['Siret']; - $str="NbRep=".$etabs['nbReponses'].", S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - @fwrite($fp, $str.EOL); - @fclose($fp); - debugLog('I', "rechercheEtab : ".$tabRet['nbReponses']." RESULTATS, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - return array('error'=>array('errnum'=>0, 'errmsg'=>''), 'results'=>$tabRet); - - } - - - $results = new RechercheEntrepriseResult(); - $error = new ErrorType(); - - $searchNomAdr = new RechercheEntrepriseReturn(); - $searchNomAdr->error = $error; - $searchNomAdr->results = $results; - - } - - protected function searchSiren(){} - - - - - protected function searchDir(){} - - protected function searchTelFax(){} - - - /** - * Retourne la fiche d'identité simplifié d'une entreprise avec son numéro de TVA. - * - * @param string $siren Identifiant Siren de l'entreprise - * @return TvaReturn - */ - public function getTVA($siren) - { - $this->authenticate(); - - //Initialisation - $siren = trim($siren); - debugLog('I',"TVA demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren); - debugLog('I', "Après getIdentiteEntreprise($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($entrep)) - { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - debugLog('I', "Avant MTva($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iTva = new MTva($siren); - if ($iTva->vatDefined) $tva=$iTva->vatNumber; - else $tva='N/A'; - debugLog('I', "Après MTva($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $output = new TvaReturn(); - $output->id = $entrep['id']; - $output->AutreId = $entrep['AutreId']; - $output->Nom = $entrep['Nom']; - $output->Sigle = $entrep['Sigle']; - $output->Enseigne = $entrep['Enseigne']; - $output->Adresse = $entrep['Adresse']; - $output->Adresse2 = $entrep['Adresse2']; - $output->CP = $entrep['CP']; - $output->Ville = $entrep['Ville']; - $output->Siren = $entrep['Siren']; - $output->Tva = $tva; - - debugLog('I', "TVA retournée = $tva (".$entrep['Nom'].')', __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('tva',$siren); - - return $output; - } - - /** - * Retourne tout ou patie des informations règlementées sur l'entreprise - * - * @param string $siren SIREN de l'entreprise - * @param mixed $id Id du communiqué - * @return InfosRegReturn - */ - public function getInfosReg( $siren, $id = false ) - { - $this->authenticate(); - - //Initialisation - if (empty($id)) $id = false; - $tabRet = array(); - $siren = substr($siren,0,9); - - debugLog('I',"Infos règlementées demandées pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - $iBourse = new MBourse($siren); - $anns = $iBourse->getInfosReg($siren, $id); - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if ( empty($anns) ){ - debugLog('W', "Aucune info règlementée pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1030'); - } - - foreach ($anns as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if ($id == false) { - $infos = new InfosReg(); - $infos->id = $ann['id']; - $infos->source = $ann['source']; - $infos->DateParution = $ann['DateParution']; //@todo : date - $infos->raisonSociale = $ann['raisonSociale']; - $infos->titre = $ann['titre']; - $infos->pj = $ann['pj']; - $infos->url = $ann['url']; - $infos->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $tabRet[] = $infos; - } else { - $infos = new InfosReg(); - $infos->id = $ann['id']; - $infos->source = $ann['source']; - $infos->DateParution = $ann['DateParution']; //@todo : date - $infos->raisonSociale = $ann['raisonSociale']; - $infos->titre = $ann['titre']; - $infos->communique = $ann['communique']; - $infos->communiqueHtml = $ann['communiqueHtml']; - $infos->pj = $ann['pj']; - $infos->url = $ann['url']; - $infos->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $tabRet[] = $infos; - } - } - debugLog('I', 'Nb infos retournés = '. count($anns), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('infosreg',$siren,$id); - $output = new InfosRegReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne les informations boursières de l'entreprise - * @param string $siren SIREN de l'entreprise - * @return InfosBourse - */ - public function getInfosBourse($siren) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - debugLog('I',"Infos bourse demandées pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $siren = substr($siren,0,9); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($bourse)) { - debugLog('W', "Aucune info bourse pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $result = new InfosBourse(); - $result->Siren = $bourse['siren']; - $result->RaisonSociale = $bourse['raisonSociale']; - $result->Adresse = $bourse['adresse']; - $result->Effectif = $bourse['effectif']; - $result->CodeSicovam = $bourse['code_sicovam']; - $result->CodeMnemo = $bourse['code_mnemo']; - $result->CodeBloomberg = $bourse['code_bloomberg']; - $result->CodeDatastream = $bourse['code_datastream']; - $result->Isin = $bourse['code_isin']; - $result->CodeRic = $bourse['code_ric']; - $result->DateIntroduction = $bourse['dateIntroduction']; //@todo : date - $result->DateDerAG = $bourse['dateDerAG']; //@todo : date - $result->DateRadiation = $bourse['dateRadiation']; //@todo : date - $result->AutreIsin = $bourse['autre_isin']; - $result->EligibleSRD = $bourse['eligibleSRD']; - $result->EligiblePEA = $bourse['eligiblePEA']; - $result->Tel = $bourse['tel1']; - $result->Tel2 = $bourse['tel2']; - $result->Fax = $bourse['fax1']; - $result->Fax2 = $bourse['fax2']; - $result->Web = $bourse['web']; - $result->Mail = $bourse['mail']; - - $result->Marche = $bourse['marche']; - $result->Description = $bourse['description']; - $result->Secteur = $bourse['secteur']; - $result->Activite = $bourse['activite']; - $result->ActiviteDet = $bourse['activiteDet']; - - $result->placeCotation = $bourse['placeCotation']; - $result->nombreTitres = $bourse['nombreTitres']; - $result->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $result->derCoursDate = $bourse['date']; //@todo : date - $result->derCoursCloture = $bourse['close']; - $result->derCoursOuverture = $bourse['open']; - $result->derCoursPlusHaut = $bourse['high']; - $result->derCoursPlusBas = $bourse['low']; - - $result->derCoursVolume = $bourse['volume']; - $result->coursMin = $bourse['coursMin']; - $result->coursMoy = $bourse['coursMoy']; - $result->coursMax = $bourse['coursMax']; - - $this->wsLog('bourse',$siren,$id); - return $result; - } - - /** - * Ajout d'une surveillance - * - * @param string $siret Siret/Siren - * @param string $email Adresse email du client - * @param string $ref Référence de la surveillance - * @param string $source Type de source en surveillance (insee, annonces, bilans, actes, privileges, score, dirigeants) - * @param boolean $delete Suppression de la ligne - * @param integer $encoursClient Encours demandé par le client - * @return SetSurveillanceReturn - */ - public function setSurveillance($siret, $email, $ref='', $source='annonces', $delete=false, $encoursClient=0) - { - $this->authenticate(); - $source = strtolower($source); - switch ($source) { - case 'insee': - $this->permission('survinsee'); - break; - case 'bilans': - $this->permission('survbilan'); - break; - case 'actes': - $this->permission('survactes'); - break; - case 'privileges': - $this->permission('survpriv'); - break; - case 'dirigeants': - $this->permission('survdirigeants'); - break; - case 'score': - $this->permission('survscore'); - break; - case 'annonces': - default: - $this->permission('survannonce'); - break; - } - - //Initialisation - if (empty($ref)) $ref = ''; - if (empty($delete)) $delete = false; - if (empty($encoursClient)) $encoursClient = false; - $tabRet = array(); - $siren = substr($siret,0,9); - $nic = substr($siret,9,5); - - debugLog('I',"setSurveillances(siret=$siret, email=$email, ref=$ref, source=$source, delete=$delete)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren, $nic); - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - switch ($source) { - case 'insee': - case 'annonces': - case 'bilans': - case 'actes': - case 'privileges': - case 'dirigeants': $encoursClient=0; break; - case 'score': $encoursClient=$encoursClient*1; break; - default: $source='annonces'; break; - } - $tabUpdate = array( - 'source' => $source, - 'login' => $login, - 'email' => $email, - 'siren' => $siren, - 'nic' => $nic, - 'ref' => $ref, - 'encoursClient' => $encoursClient, - 'rs' => $tabIdentite['Nom'], - 'cp' => $tabIdentite['CP'], - 'ville' => $tabIdentite['Ville'], - ); - if ($delete) { - $tabUpdate = array_merge( - $tabUpdate, - array('dateSuppr'=>date('Y-m-d')) - ); - } else { - $tabUpdate = array_merge( - $tabUpdate, - array('dateAjout'=>date('Y-m-d'), 'dateSuppr'=>0) - ); - } - if ( $delete || !$iDb->insert('surveillances_site', $tabUpdate)) { - /*@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "debugSurv pour $login", - "source='$source' AND login='$login' AND email='$email' AND siren=$siren AND nic=$nic AND ref='$ref'".EOL. - print_r($tabUpdate,true).EOL - );*/ - if (!$iDb->update('surveillances_site', $tabUpdate, "source='$source' AND login='$login' AND email='$email' AND siren=$siren AND nic=$nic AND ref='$ref'")) - { - $this->sendError('1030'); - } - } - $output = new SetSurveillanceReturn(); - $output->result = true; - return $output; - } - - /** - * getSurveillances - * @param SurveillancesFiltre $filtre - * @param integer $deb - * @param integer $nbRep - * @return SurveillancesReturn - */ - public function getSurveillances($filtre, $position=0, $nbRep=100) - { - $this->authenticate(); - - //Initialisation - if (empty($position)) $position = 0; - if (empty($nbRep)) $nbRep = 100; - - $error = new ErrorType(); - $tabRet = array(); - $siren = substr($filtre->siret,0,9); - $nic = substr($filtre->siret,9,5); - - $tri = strtolower(trim($filtre->tri)); - switch ($tri){ - case 'ref': $orderBy='ORDER BY ref'; break; - case 'dateAjout': $orderBy='ORDER BY dateAjout'; break; - case 'dateDerEnvoi':$orderBy='ORDER BY dateDerEnvoi'; break; - case 'rs': $orderBy='ORDER BY rs'; break; - case 'cp': $orderBy='ORDER BY cp'; break; - case 'ville': $orderBy='ORDER BY ville'; break; - default: $orderBy='ORDER BY siren'; break; // siren ou vide ou autre - } - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - - if ($filtre->detail) { - $strSelect = 'source, email, siren, nic, ref, dateAjout, encoursClient, rs, cp, ville, dateDerEnvoi'; - } else { - $strSelect = 'source, email, siren, nic, ref, dateAjout, dateDerEnvoi'; - } - if ($filtre->source!='') $strSource = " AND source='$filtre->source' "; - else $strSource = ''; - - if ($siren>0) $strSiren = " AND siren=$siren "; - else $strSiren = ''; - - // Il faut compter le nombre de siren au total - $tabTmp = $iDb->select('surveillances_site', 'count(*) as nb', "login='$login' AND dateSuppr=0 $strSiren $strSource", false, MYSQL_ASSOC); - $nbRepTot = $tabTmp[0]['nb']; - - $tabTmp = $iDb->select('surveillances_site', $strSelect, "login='$login' AND dateSuppr=0 $strSiren $strSource $orderBy LIMIT $position,$nbRep", false, MYSQL_ASSOC); - foreach ($tabTmp as $i=>$tabSurv){ - if (!$filtre->detail){ - $liste = new Surveillance(); - $liste->source = $tabSurv['source']; - $liste->email = $tabSurv['email']; - $liste->siren = $tabSurv['siren']; - $liste->nic = $tabSurv['nic']; - $liste->ref = $tabSurv['ref']; - $liste->dateAjout = $tabSurv['dateAjout']; //@todo : date - $liste->dateDerEnvoi = $tabSurv['dateDerEnvoi']; //@todo : date - $tabRet[] = $liste; - } else { - if (trim($tabSurv['rs'])<>'') { - $rs = $tabSurv['rs']; - $cp = $tabSurv['cp']; - $ville = $tabSurv['ville']; - } else { - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($tabSurv['siren'], $tabSurv['nic']); - $rs = $tabIdentite['Nom']; - $cp = $tabIdentite['CP']; - $ville = $tabIdentite['Ville']; - $iDb->update('surveillances_site', array( - 'rs' => $rs, - 'cp' => $cp, - 'ville' => $ville), - "login='$login' AND dateSuppr=0 AND siren=".$tabSurv['siren']." AND nic=".$tabSurv['nic']." $strSource", - false - ); - } - $liste = new Surveillance(); - $liste->source = $tabSurv['source']; - $liste->email = $tabSurv['email']; - $liste->siren = $tabSurv['siren']; - $liste->nic = $tabSurv['nic']; - $liste->ref = $tabSurv['ref']; - $liste->dateAjout = $tabSurv['dateAjout']; //@todo : date - $liste->encoursClient = $tabSurv['encoursClient']; - $liste->rs = $rs; - $liste->cp = $cp; - $liste->ville = $ville; - $liste->dateDerEnvoi = $tabSurv['dateDerEnvoi']; //@todo : date - $tabRet[] = $liste; - } - } - $output = new SurveillancesReturn(); - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbRepTot; - $output->result = $tabRet; - return $output; - } - - /** - * Retourne le bilan correspondant au siren, à l'exercice et au formalisme demandé - * - * @param string $siren Siren de l'entreprise - * @param string $millesime Date du bilan au format AAAAMMJJ - * @param string $typeBilan N:Réel Normal, S:Réel Simplifié, C:Consolidé - * @param string $ref Référence S&D obligatoire - * @return Bilan - */ - public function getBilan($siren, $millesime, $typeBilan='N', $ref='') - { - $this->authenticate(); - - //Initialisation - if (empty($typeBilan)) { $typeBilan = 'N'; } - if (empty($ref)) { $ref = ''; } - - debugLog('I',"Bilan $millesime $typeBilan demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $millesime = WDate::dateT('Ymd','d/m/Y',$millesime); - $mBil = new MBilans($siren); - $tabBilan = $mBil->getBilan($millesime, $typeBilan, $ref, true); - - $resultBilan = new Bilan(); - $tabPoste = array(); - foreach($tabBilan as $key => $value){ - if(!in_array($key, array('SIREN', 'DATE_FRAICHE_BILAN', - 'DATE_CLOTURE', 'DATE_CLOTURE_PRE', 'DUREE_MOIS', - 'DUREE_MOIS_PRE', 'MONNAIE', 'CONSOLIDE', 'MONNAIE_ORI', - 'MONNAIE_LIV_UNITE', 'SOURCE', 'devise'))){ - $resultPoste = new BilanPoste(); - $resultPoste->id = $key; - $resultPoste->val = $value; - $tabPoste[] = $resultPoste; - } else { - $resultBilan->$key = $value; - } - } - $this->wsLog('bilan',$siren, $millesime.':'.$typeBilan.':'.$ref); - $resultBilan->POSTES = $tabPoste; - return $resultBilan; - } - - /** - * Retourne la liste des bilans disponible pour une entreprise - * - * @param string $siren Siren de l'entreprise - * @return ListeBilansReturn - */ - public function getListeBilans($siren) - { - $this->authenticate(); - //Initialisation - $tabRet = array(); - debugLog('I',"Liste des Bilans demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $mBil = new MBilans($siren); - $tabBilans = $mBil->listeBilans(false); - foreach($tabBilans as $bilan) - { - $element = new ListeBilans(); - $element->dateProvPartenaire = $bilan['dateProvPartenaire']; //@todo : date - $element->dateInsert = $bilan['dateInsert']; //@todo : date - $element->typeBilan = $bilan['typeBilan']; - $element->dureeExercice = $bilan['dureeExercice']; - $element->dateExercice = $bilan['dateExercice']; //@todo : date - $element->millesime = $bilan['millesime']; - $element->dateExercicePre = $bilan['dateExercicePre']; //@todo : date - $element->dureeExercicePre = $bilan['dureeExercicePre']; - $element->monnaie = $bilan['monnaie']; - $element->source = $bilan['source']; - $tabRet[] = $element; - } - - debugLog('I', 'Nb Bilans retournés = '. count($tabBilans), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('listebilans', $siren); - $output = new ListeBilansReturn(); - $output->nbReponses = count($tabRet); - $output->result = $tabRet; - return $output; - } - - /** - * Vérifie si un siren existe en base Scores & Décisions - * @param string $siren Siren de l'entité - * @return boolean - */ - public function isSirenExistant($siren) - { - $this->authenticate(); - - //Initialisation - $tabRet = array(); - $siren = trim(substr($siren,0,9)); - $result = false; - debugLog('I',"Siren existant demandée pour siren $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $entrep = $iInsee->sirenExiste($siren); - if (empty($entrep)) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $result = false; - } else { - debugLog('I', "Siren $siren présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $result = true; - } - $this->wsLog('sirenExiste',$siren); - return $result; - } - - /** - * Retourne une annonce en fonction de sa référence - * - * @param string $siren Siren de l'entreprise - * @param string $dateAnnee - * @param integer $numParution - * @param integer $numAnnonce - * @return RechercheAnnonceReturn - */ - public function rechercheAnnonce($source, $dateAnnee, $numParution, $numAnnonce) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - $tabRet = array(); - - debugLog('I',"Annonce précise demandée pour $source, $dateAnnee, $numParution, $numAnnonce",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($dateAnnee)==4) $annee = $dateAnnee; - else $annee = substr($dateAnnee,0,4); - - $iDb = new WDB('jo'); - - switch (strtoupper($source)) - { - case 'BODA': - case 'BODB': - case 'BODC': - $lettre = substr(strtoupper($source),3,1); - if ($annee<2005) { - if ($lettre=='A'){ $numJAL=1; } - elseif ($lettre=='B'){ $numJAL=200; } - else{ break; } - $anneeDeb = $annee.'0101'; - $anneeFin = $annee.'1231'; - $res = $iDb->select('historiques.entrep e, texte t', - "$annee AS Annee_Parution, e.NOBOD AS Num_Parution, e.NOANN AS Num_Annonce, e.NOPAGE AS Num_Page, e.`DATE` AS Date_Parution, e.DEPT AS Departement, e.CODTRI AS Tribunal_Code, 'I' AS typeAnnonce, CONCAT(e.NOANN,' - ',t.annonceTxt) AS annonce", - "e.JAL=$numJAL AND e.NOBOD=$numParution AND e.`DATE` BETWEEN $anneeDeb AND $anneeFin AND e.NOANN=$numAnnonce AND e.ANBASE=t.annonceNum", false, MYSQL_ASSOC); - } else { - $res = $iDb->select('bodacc', - 'Bodacc_Annee_Parution AS Annee_Parution, Bodacc_Num AS Num_Parution, Num_Annonce, Bodacc_Page AS Num_Page, Bodacc_Date_Parution AS Date_Parution, Tribunal_Dept AS Departement, Tribunal_Code, typeAnnonce, annonce', - "Bodacc_Code='$lettre' AND Bodacc_Annee_Parution=$annee AND Bodacc_Num=$numParution AND Num_Annonce=$numAnnonce", false, MYSQL_ASSOC); - } - break; - case 'ASSO': - $res = $iDb->select('asso', - 'YEAR(Date_Parution) AS Annee_Parution, Num_Parution, Num_Annonce, pageDeb AS Num_Page, Date_Parution, Departement, codTribunal AS Tribunal_Code, typeAnnonce, Annonce_Html AS annonce', "Date_Parution BETWEEN '$annee-01-01' AND '$annee-12-31' AND Num_Parution=$annee".sprintf('%04d', $numParution)." AND Num_Annonce=$numAnnonce", - false, MYSQL_ASSOC); - break; - case 'BALO': - $res = $iDb->select('balo', - "YEAR(Date_Parution) AS Annee_Parution, Num_Parution, Num_Affaire AS Num_Annonce, '' AS Num_Page, Date_Parution, '' AS Departement, '' AS Tribunal_Code, 'Insertion' AS typeAnnonce, Annonce_Html AS annonce", "Date_Parution BETWEEN '$annee-01-01' AND '$annee-12-31' AND Num_Parution=$numParution AND Num_Affaire=$numAnnonce", - false, MYSQL_ASSOC); - break; - } - - if (count($res)>0) - { - $iBodacc = new MBodacc(); - foreach ($res as $i => $etab) - { - $annonces = new RechercheAnnonce(); - $annonces->Annee_Parution = $etab['Annee_Parution']; - $annonces->Num_Parution = $etab['Num_Parution']; - $annonces->Num_Annonce = $etab['Num_Annonce']; - $annonces->Num_Page = $etab['Num_Page']; - $annonces->Date_Parution = $etab['Date_Parution']; //@todo : date - $annonces->Departement = $etab['Departement']; - $annonces->Tribunal_Code = $etab['Tribunal_Code']; - $annonces->Tribunal = $iBodacc->getTribunalNom($etab['Tribunal_Code']); - $annonces->Type_Annonce = $etab['typeAnnonce']; - $annonces->Annonce = strip_tags(strtr( - html_entity_decode($etab['annonce']), - array('>'=>'>','&'=>'&','<'=>'<','’'=>"'") - )); - - $tabRet[] = $annonces; - } - } - $nbTot = count($tabRet); - $result = new RechercheAnnonceResult(); - $result->criteres = $criteres; - $result->nbReponses = $nbTot; - $result->nbReponsesTotal = $nbTot; - $result->liste = $tabRet; - $output = new RechercheAnnonceReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * getRatios - * @param string $siren - * @param string $page - * @return RatiosReturn - */ - public function getRatios($siren, $page='ratios') - { - global $tva, $mBil, $tabBilan, $efftr, $tabInfla; - $tabFormules = include APPLICATION_PATH . '/../library/Metier/scores/Variables/CacheTabFormules.php'; - require_once 'Metier/scores/Variables/configMRatios.php'; - $this->authenticate(); - //Initialisation - if (empty($page)) $page = 'ratios'; - $tabRatiosInfos = $tabRatiosSecteurs = $tabBilansR = array(); - $tabRatios2 = $tabRatiosEvol = array(); - $tabRet = array(); - debugLog('I',"Liste des Ratios demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - debugLog('I',"Liste des Ratios demandée pour $siren avant getIdentiteEntreprise",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteEntreprise($siren,0,0,false,false); - debugLog('I',"Liste des Ratios demandée pour $siren après getIdentiteEntreprise",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $naf = $tabIdentite['NafEnt']; - $nafLib = $tabIdentite['NafEntLib']; - $efftr = $tabIdentite['Effectif']*1; - $fj = $tabIdentite['FJ']; - - $mBil = new MBilans($siren); - $tabBilans = $mBil->listeBilans(true); - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getRatios sur $siren", print_r($tabBilans, true)); - $nbBilans = count($tabBilans); - $tabBilan = $tabBil = array(); - if ($nbBilans>0){ - $tabRatios = calculRatios($tabBilans, $tabIdentite, true); - } - $nbRatios = count($tabRatios); - debugLog('I',"Liste des Ratios demandée pour $siren après calculRatios ($nbRatios)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - /** Tableau d'infos sur les formules **/ - $tabBorneMin = $tabBorneMax = array(); - foreach ($tabFormules as $formule) { - $id = $formule['id']*1; - $libelle = $formule['libelle']; - $unite = $formule['unite']; - $commentaires = $formule['commentaires']; - $tabFormulesInfos[$id] = $formule; //Pour la gestion des unités des ratios secteur - $ratiosInfos = new RatiosInfos(); - $ratiosInfos->id = 'r'.$id; - $ratiosInfos->libelle = $formule['libelle']; - $ratiosInfos->unite = $formule['unite']; - $ratiosInfos->commentaires = $formule['commentaires']; - $tabRatiosInfos[] = $ratiosInfos; - $tabBorneMin[$id] = $formule['borneMin']; - $tabBorneMax[$id] = $formule['borneMax']; - } - - $tabAnnees = array(); - foreach ($tabRatios as $i=>$R) { - - //Informations sur le bilan - $bilansInfos = new RatiosBilansInfos(); - $bilansInfos->dateCloture = $tabBilan[$i]['DATE_CLOTURE']; //@todo : date - $bilansInfos->duree = $tabBilan[$i]['DUREE_MOIS']; - $bilansInfos->devise = $tabBilan[$i]['MONNAIE']; - $bilansInfos->typeBilan = $tabBilan[$i]['CONSOLIDE']; - $bilansInfos->unite = 'U'; - if ( substr($tabBilan[$i]['DATE_CLOTURE'],0,4)>1900 ){ - $tabAnnees[$i]=substr($tabBilan[$i]['DATE_CLOTURE'],0,4); - } - - $tabRatiosEntrep = array(); - $tabRatiosEntrepEvol = array(); - foreach ( $R as $Ridx=>$Rmont ){ - - if ($Rmont<>'NS') { - if ( $tabBorneMin[$Ridx]<>'' && $Rmont<$tabBorneMin[$Ridx] ){ - $Rmont='<'.$tabBorneMin[$Ridx]; - } elseif ( $tabBorneMax[$Ridx]<>'' && $Rmont>$tabBorneMax[$Ridx] ){ - $Rmont='>'.$tabBorneMax[$Ridx]; - } - } - - // RatiosEntrep - $ratiosEntrep = new Ratios(); - if (substr($Rmont,0,1)=='N' || substr($Rmont,0,1)=='<' || substr($Rmont,0,1)=='>'){ - $ratiosEntrep->id = 'r'.$Ridx; - $ratiosEntrep->val = $Rmont; - } else { - $ratiosEntrep->id = 'r'.$Ridx; - $ratiosEntrep->val = round($Rmont,2); - } - $tabRatiosEntrep[] = $ratiosEntrep; - - if (($tabBilan[$i]['CONSOLIDE']=='S' && isset($tabRatios[$i+1])&&($tabBilan[$i+1]['CONSOLIDE']=='S'||($tabBilan[$i+1]['CONSOLIDE']=='N'&&$tabBilan[$i+1]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) || - ($tabBilan[$i]['CONSOLIDE']=='N'&&isset($tabRatios[$i+1])&&($tabBilan[$i+1]['CONSOLIDE']=='N'||($tabBilan[$i+1]['CONSOLIDE']=='S'&&$tabBilan[$i+1]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) - ) - $Rmont=(($R[$Ridx]-$tabRatios[$i+1][$Ridx])*100)/abs($tabRatios[$i+1][$Ridx]); - elseif ( ($tabBilan[$i]['CONSOLIDE']=='S'&&isset($tabRatios[$i+1])&&($tabBilan[$i+2]['CONSOLIDE']=='S'||($tabBilan[$i+2]['CONSOLIDE']=='N'&&$tabBilan[$i+2]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) - || ($tabBilan[$i]['CONSOLIDE']=='N'&&isset($tabRatios[$i+1])&&($tabBilan[$i+2]['CONSOLIDE']=='N'||($tabBilan[$i+2]['CONSOLIDE']=='S'&&$tabBilan[$i+2]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) - ) - $Rmont=(($R[$Ridx]-$tabRatios[$i+2][$Ridx])*100)/abs($tabRatios[$i+2][$Ridx]); - else - $Rmont='NS'; - - // RatiosEntrepEvol - $ratiosEntrepEvol = new Ratios(); - if ($Rmont=='NS' || $Rmont<-800 || $Rmont>800){ - $ratiosEntrepEvol->id = 'r'.$Ridx; - $ratiosEntrepEvol->val = 'NS'; - } else { - $ratiosEntrepEvol->id = 'r'.$Ridx; - $ratiosEntrepEvol->val = number_format($Rmont,2,',',' '); - } - $tabRatiosEntrepEvol[] = $ratiosEntrepEvol; - } - $bilansInfos->RatiosEntrep = $tabRatiosEntrep; - $bilansInfos->RatiosEntrepEvol = $tabRatiosEntrepEvol; - $tabBilansR[] = $bilansInfos; - } - - debugLog('I',"Liste des Ratios demandée pour $siren après EVOLUTION",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - // Tableau des ratios secteurs - $tabRatiosSecteurs = array(); - if (strlen($naf)>4) $strNaf = " AND naf5='$naf' "; - else $strNaf = " AND naf4='$naf' "; - $strAnnees = implode(',', $tabAnnees); - if ( count($tabAnnees)>0 ){ - $iDb = new WDB('jo'); - $tabTmp = $iDb->select('ratios_secteurs', - 'annee, naf5, naf4, id, (montant/nombre) AS ratio, nombre', - "1 $strNaf AND annee IN ($strAnnees) ORDER BY annee DESC, id ASC", - false, MYSQL_ASSOC); - $ratiosSecteur = new RatiosSecteur(); - $ratiosSecteur->annee = $tabTmp[0]['annee']; - $nbRatiosSec = 0; - $anneePre = $tabTmp[0]['annee']; - foreach ($tabTmp as $tabTmp2) { - if ($anneePre<>$tabTmp2['annee']) { - $tabRatiosSecteurs[] = $ratiosSecteur; - //On réinitialise tout - $ratiosSecteur = new RatiosSecteur(); - $ratiosSecteur->annee = $tabTmp2['annee']; - } - $Ridx = $tabTmp2['id']; - if ($tabTmp2['nombre']>$nbRatiosSec){ - $nbRatiosSec = $tabTmp2['nombre']; - } - - $unite = $tabFormulesInfos[$Ridx]['unite']; - if ($unite=='EUR'){ - $montant = round($tabTmp2['ratio']*1000); - } else { - $montant = round($tabTmp2['ratio']); - } - if ($tabBorneMin[$Ridx]<>'' && $montant<$tabBorneMin[$Ridx]){ - $montant='<'.$tabBorneMin[$Ridx]; - } elseif ($tabBorneMax[$Ridx]<>'' && $montant>$tabBorneMax[$Ridx]){ - $montant='>'.$tabBorneMax[$Ridx]; - } - - $ratiosSecteurListe = new Ratios(); - if (substr($montant,0,1)=='N' || substr($montant,0,1)=='<' || substr($montant,0,1)=='>'){ - $ratiosSecteurListe->id = 'r'.$Ridx; - $ratiosSecteurListe->val = $montant; - } else { - $ratiosSecteurListe->id = 'r'.$Ridx; - $ratiosSecteurListe->val = round($montant,2); - } - $ratiosSecteur->liste[] = $ratiosSecteurListe; - $anneePre = $tabTmp2['annee']; - } - } - //$tabRatiosSecteurs=array(count($tabTmp), "1 $strNaf AND annee IN ($strAnnees) ORDER BY annee DESC, id ASC"); - - $output = new RatiosReturn(); - $output->Nom = $tabIdentite['Nom']; - $output->NafEnt = $tabIdentite['NafEnt']; - $output->NafEntLib = $tabIdentite['NafEntLib']; - $output->FJ = $fj; - $output->FJ_lib = $tabIdentite['FJ_lib']; - $output->Siren = $siren; - $output->NbEntNaf = $nbRatiosSec; - $output->BilansInfos = $tabBilansR; - $output->RatiosInfos = $tabRatiosInfos; - $output->RatiosSecteur = $tabRatiosSecteurs; - - //Zend_Registry::get('WsLogger')->info(__FUNCTION__." : ".print_r($result,1)); - - debugLog('I',"Liste des Ratios demandée pour $siren RETURN",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->wsLog($page, $siren); - return $output; - - } - - /** - * getRapport - * @param string $siren - * @param integer $niveau - * @param integer $id - * @return Rapport - */ - public function getRapport($siren, $niveau=3, $id=0) - { - $this->authenticate(); - if (empty($niveau)) $niveau = 3; - if (empty($id)) $id = 0; - $result = new Rapport(); - $filtre = 0; - $idAnn = 0; - if ($niveau==1){ - $result->Indiscore = $this->getIndiScore($siren, 0); - } elseif ($niveau==2) { - $result->Identite = $this->getIdentite($siren, $id=0); - $result->Indiscore = $this->getIndiScore($siren, 0); - $result->Dirigeants = $this->getDirigeants($siren, false); - $result->Liens = $this->getLiens($siren, true); - $result->Ratios = $this->getRatios($siren, $page="rapport$niveau"); - } elseif ($niveau==3) { - $result->Identite = $this->getIdentite($siren, $id=0); - $result->Indiscore = $this->getIndiScore($siren, 0); - $result->Dirigeants = $this->getDirigeants($siren, false); - $result->Liens = $this->getLiens($siren, true); - $result->Ratios = $this->getRatios($siren, $page="rapport$niveau"); - $result->Annonces = $this->getAnnonces($siren, $filtre, $idAnn); - } - return $result; - } - - /** - * Retourne la liste des banques connues pour une entreprise - * @param string $siren Siren de l'entreprise - * @return BanquesReturn - **/ - public function getBanques($siren) - { - $this->authenticate(); - - //Initialisation - $iDb = new WDB('sdv1'); - $tabRet = array(); - debugLog('I',"Liste des banques demandée pour siren $siren", - __LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (intval($siren)<=1000) { - $this->sendError('1010'); - } - - $res=$iDb->select('banques', 'codeBanque, codeGuichet, libBanqueGuichet, precis, dateSource*1 AS dateSource', "siren=$siren", false, MYSQL_ASSOC); - $tmp=$iDb->select('fedRib', "codeBanque, codeGuichet, CONCAT(libBanque,' ',libGuichet) AS libBanqueGuichet, 0 AS precis, IF (dateInfo='0000-00-00', dateDispo*1, dateInfo*1) AS dateSource", "siren=$siren", false, MYSQL_ASSOC); - $res=array_merge($res, $tmp); - foreach ($res as $tabBanque){ - $dateSource=$tabBanque['dateSource']; - $codBanque=$tabBanque['codeBanque']; - $codGuichet=$tabBanque['codeGuichet']; - $libBanque=trim($tabBanque['libBanqueGuichet']); - $found=false; - $adrBanque1=$adrBanque2=$adrBanqueCP=$adrBanqueVille=''; - - if ($codBanque>0 && $codGuichet>0 && - $dateSource>(date('Y')-4)*10000+101 && - $dateSourceselect('insee.BDF_Etabs b, insee.BDF_Guichets g', - 'g.bdfFibCodeEtab AS banque, g.bdfFibCodeGuichet AS guichet, b.bdfFibDenom40 AS nomBanque, b.bdfFibDenom10 AS sigleBanque, g.bdfFibDenom20 AS nomGuichet, g.bdfFibAdresse1 AS adresse1, g.bdfFibAdresse2 AS adresse2, g.bdfFibAdresse3 AS adresse3, g.CP, g.Ville', "g.bdfFibCodeEtab=$codBanque AND g.bdfFibCodeGuichet=$codGuichet AND b.bdfFibCodeEtab=g.bdfFibCodeEtab", - false, MYSQL_ASSOC); - if (isset($tmp[0])){ - $libBanque=trim($tmp[0]['nomBanque'].' '.$tmp[0]['nomGuichet']); - $adrBanque1=$tmp[0]['adresse1']; - $adrBanque2=trim($tmp[0]['adresse2'].' '.$tmp[0]['adresse3']); - $adrBanqueCP=$tmp[0]['CP']; - $adrBanqueVille=$tmp[0]['Ville']; - $found=true; - }; - } - if (!$found && $codBanque>0 && - $dateSource>(date('Y')-4)*10000+101 && - $dateSourceselect('insee.BDF_Etabs', "bdfFibCodeEtab AS banque, '' AS guichet, bdfFibDenom40 AS nomBanque, '' AS nomGuichet, '' AS adresse1, '' AS adresse2, '' AS adresse3, '' AS CP, '' AS Ville", "bdfFibCodeEtab=$codBanque", false, MYSQL_ASSOC); - if (isset($tmp[0])){ - $libBanque=trim($tmp[0]['nomBanque'].' '.$tmp[0]['nomGuichet']); - $adrBanque1=$tmp[0]['adresse1']; - $adrBanque2=trim($tmp[0]['adresse2'].' '.$tmp[0]['adresse3']); - $adrBanqueCP=$tmp[0]['CP']; - $adrBanqueVille=$tmp[0]['Ville']; - } else continue; - } else continue; - - $banque = new Banque(); - $banque->codeBanque = $codBanque; - $banque->codeGuichet = $codGuichet; - $banque->libBanque = $libBanque; - $banque->adresse1 = $adrBanque1; - $banque->adresse2 = $adrBanque2; - $banque->cp = $adrBanqueCP; - $banque->ville = $adrBanqueVille; - $tabRet[] = $banque; - } - debugLog('I',"Liste des banques pour siren $siren : ".count($tabRet).' banques',__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $this->wsLog('banque', $siren); - $output = new BanquesReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des compétences territoriales pour un établissement à une adresse donnée. - * @param string $siret Siret de l'établissement - * @param string $type Type de compétence (pre:prefectures et s/prefectures, jal;journaux d'annonces légales, tri:tribunaux, adm:administrateurs et mandataires judiciaires, hui:huissiers, cfe:centres de formalités des entreprises) - * @param string $codeInsee Code Insee de la commune de l'établissement - * @return ListeCompetencesReturn - */ - public function getListeCompetences($siret, $type, $codeInsee) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - $type = strtolower($type); - - debugLog('I',"Liste des compétences $type demandée pour la commune $codeInsee",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - $iBodacc = new MBodacc(); - $cp=$codeInsee*1; - $dep=false; - if (substr($codeInsee,0,2)=='2A' || substr($codeInsee,0,2)=='2B') - { - $dep=20; $cp=20000+(substr($codeInsee,2,3))*1; - } - elseif ($cp>0 && $cp<100) $dep=$cp; - elseif ($cp>970 && $cp<977) $dep=$cp; - elseif ($cp>999 && $cp<10000) $dep='0'.substr($cp,0,1); - elseif ($cp>=10000 && $cp<96000) $dep=substr($cp,0,2); - elseif ($cp>=99000) $dep=substr($cp,0,2); - elseif ($cp>=98000) $dep=substr($cp,0,3); - elseif ($cp>=97100 && $cp<97700) $dep=substr($cp,0,3); - - require_once 'i18n/cleanchar.php'; - - if ($type=='pre'){ - - $iDb = new WDB('jo'); - $tabTmp2 = $iDb->select('villes', 'DEP, COM, AR, CT', 'codeInsee='.$codeInsee, false, MYSQL_ASSOC); - $arrond = $tabTmp2[0]['AR']; - unset($iDb); - $iDb = new WDB('insee'); - $tabTmp2 = $iDb->select('insee_tabArrond', 'CHEFLIEU, ARTMAJ, NCC', "DEP='$dep' AND AR='$arrond'", false, MYSQL_ASSOC); - $nomSousPref = trim(strtr($tabTmp2[0]['ARTMAJ'],array('('=>'',')'=>'',' '=>'', "'"=>'')).' '.$tabTmp2[0]['NCC']); - unset($iDb); - $tabTmp = $iBodacc->getTribunauxParDep($dep); - foreach ($tabTmp as $i=>$tribunal) - { - if ($tribunal['triType']=='A' || $tribunal['triType']=='B') - { - $pref = levenshtein($tribunal['triNom'], 'PREFECTURE DE '.$nomSousPref); - $spref = levenshtein($tribunal['triNom'], 'SOUS PREFECTURE DE '.$nomSousPref); - - if ($tribunal['triType']=='B' && ($pref>7 || $spref>5)) continue; - - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType'].$typeP; - $competence->Nom = strtoupper($tribunal['triNom']); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper( - preg_replace('/ +/',' ',$tribunal['triAdrNum'].' '. - $tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '. - $tribunal['triAdrVoie'])); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $tribunal['triCommentaire']; - $tabRet[] = $competence; - - } - } - - } elseif ($type=='jal') { - - $tabTmp = $iBodacc->getJALparDep($dep); - foreach ($tabTmp as $i=>$comp) - { - $infos=''; - if (trim($comp['parution'])<>'') $infos.='Parution '.$comp['parution'].'. '; - if (trim($comp['aboAnnuel'])>0) $infos.='Abonnement Annuel : '.$comp['aboAnnuel'].' euros. '; - if (trim($comp['infos'])<>'') $infos.=$comp['infos']; - - $competence = new Competence(); - $competence->Id = 9000+$comp['id']*1; - $competence->IdSup = 0; - $competence->Code = ''; - $competence->Type = ''; - $competence->Nom = strtoupper($comp['nomJal']); - $competence->Siret = ''; - $competence->Adr = strtoupper($comp['adresse']); - $competence->AdrComp = ''; - $competence->CP = $comp['cp']; - $competence->Ville = strtoupper($comp['ville']); - $competence->CodeInsee = ''; - $competence->Tel = $comp['tel']; - $competence->Fax = $comp['fax']; - $competence->Web = $comp['siteWeb']; - $competence->Mail = $comp['email']; - $competence->Statut = 'Actif'; - $competence->DateCessation = ''; - $competence->Remarque = trim($infos); - $tabRet[] = $competence; - } - - } elseif ($type=='tri' || $type=='adm' || $type=='hui') { - - $tabTmp = $iBodacc->getTribunauxParCommune($codeInsee); - foreach ($tabTmp as $i=>$tribunal) - { - if (//$tribunal['triType']=='C' || - $tribunal['triType']=='G'// || - /*$tribunal['triType']=='I'*/) { - $idCA = $tribunal['triIdSup']; - $codeTGI = $tribunal['triCode']; - $code = strtoupper(substr($tribunal['triCode'],0,3)); - } - debugLog('D',"Liste des compétences $type demandée pour la commune $codeInsee ($dep) : ". - "Type=".$tribunal['triType'].', '. - "Code=".$tribunal[$codeTGI],__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($tribunal['triType']<>'E' && $tribunal['triType']<>'O' && - $tribunal['triType']<>'T' && $tribunal['triType']<>'R' && - $tribunal['triType']<>'N' && $tribunal['triType']<>'U' && - $tribunal['triType']<>'Z') - { - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType']; - $competence->Nom = strtoupper(cleanstring($tribunal['triNom'])); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper(cleanstring(preg_replace('/ +/',' ', - $tribunal['triAdrNum'].' '. - $tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '. - $tribunal['triAdrVoie']))); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $tribunal['triCommentaire']; - if ($tribunal['triNumGreffe']*1>0) - { - $competence->IdentifiantGreffe = $tribunal['triNumGreffe']; - } - $tabRet[] = $competence; - } - } - } - - if ($type=='adm') - { - $iInsee = new MInsee(); - $tabTmp = $iInsee->getMandataires(array($idCA), false); - $tabRet = array(); - $nbAff=0; - foreach ($tabTmp as $i=>$tribunal) - { /** @todo A revoir Debut **/ - if (stripos($tribunal['tribunal'], $code)!==false || - stripos($tribunal['tribunal'], 'SAINT')!==false) - { - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($tribunal['adresse']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $tribunal['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation'], - $competence->Remarque = $tribunal['contact']; - //,,,,Prenom,,,Statut,,,cp,ville,tel,fax,email,web,contact - $tabRet[] = $competence; - $nbAff++; - } - } - if ($nbAff==0) - { - foreach ($tabTmp as $i=>$tribunal) - { - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($tribunal['adresse']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $tribunal['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation'], - $competence->Remarque = $tribunal['contact']; - //,,,,Prenom,,,Statut,,,cp,ville,tel,fax,email,web,contact - $tabRet[] = $competence; - } - }/** @todo A revoir Fin : Lier correctement les mandataires à un TI principal **/ - } - elseif ($type=='hui') - { - $iInsee = new MInsee(); - $tabTmp = $iInsee->getHuissiers(array($codeTGI), false); - - $tabRet = array(); - $nbAff = 0; - foreach ($tabTmp as $i=>$tribunal) - { - $adr = $iInsee->structureVoie($tribunal['adresse']); - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($adr['num'].' '.$adr['adr_btq'].' '. - $adr['typeVoie'].' '.$adr['libVoie']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $adr['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation']; - $competence->Remarque = strtr($tribunal['contact'], - array( '
        '=>', ', '
        '=>', ', - '
        '=>', ', - )); - $tabRet[] = $competence; - } - $nbComp = count($tabTmp); - debugLog('I',"$nbComp compétences $type trouvées pour le tribunal $codeTGI",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } - elseif ($type=='cfe') - { - $tabTmp = $iBodacc->getTribunauxParCommune($codeInsee); - foreach ($tabTmp as $i=>$tribunal) - { - if ($tribunal['triType']=='C' || $tribunal['triType']=='O' || - $tribunal['triType']=='T' || $tribunal['triType']=='R' || - $tribunal['triType']=='N' || $tribunal['triType']=='U' || - $tribunal['triType']=='Z') - { - if (strlen($tribunal['triCommentaire'])==32 && - strpos($tribunal['triCommentaire'], ' ')===false) - $remarque=''; - else $remarque=$tribunal['triCommentaire']; - - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType']; - $competence->Nom = strtoupper($tribunal['triNom']); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper(preg_replace('/ +/',' ',$tribunal['triAdrNum'].' '.$tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '.$tribunal['triAdrVoie'])); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $remarque; - $tabRet[] = $competence; - } - } - } - $this->wsLog('competences',$siret,$type.'/'.$codeInsee); - $output = new ListeCompetencesReturn(); - $output->result = $tabRet; - $output->nbReponses = count($tabRet); - return $output; - } - - /** - * Retourne le statut du webservice - * @return StatusReturn - */ - public function status() - { - /* @todo tester les différents éléments qui peuvent conduire - * à un problème dans les services tel que la connexion à la - * base de données, l'accès FTP, l'accès HTTP, l'accès système de fichier - */ - - //Enregistrement des accès à la requête getIdentite - Zend_Registry::get('WsLogger')->info("status - ip:". - $_SERVER['REMOTE_ADDR'].", login:".$_SERVER['PHP_AUTH_USER']. - ", hash:".$_SERVER['PHP_AUTH_PW']); - - $error = new StatusReturn(); - //Test connexion à la base de données - $db = new WDB('jo'); - if (!$db) { - $error->statusCode = 9000; - $error->statusMsg = $this->listError['9000']; - } else { - $error->statusCode = 3000; - $error->statusMsg = $this->listError['3000']; - } - return $error; - } - -} - -?> \ No newline at end of file diff --git a/library/WsScore/Entreprise/v0.2/Types.php b/library/WsScore/Entreprise/v0.2/Types.php deleted file mode 100644 index cbef89f2..00000000 --- a/library/WsScore/Entreprise/v0.2/Types.php +++ /dev/null @@ -1,3131 +0,0 @@ - 'ErrorType', - 'StatusReturn' => 'StatusReturn', - 'SearchReturn' => 'SearchReturn', - 'SearchEntrepriseReturn' => 'SearchEntrepriseReturn', - 'SearchDirReturn' => 'SearchDirReturn', - 'DirigeantsReturn' => 'DirigeantsReturn', - 'AnnoncesReturn' => 'AnnoncesReturn', - 'InseeReturn' => 'InseeReturn', - 'TvaReturn' => 'TvaReturn', - 'LiensReturn' => 'LiensReturn', - 'InfosRegReturn' => 'InfosRegReturn', - 'ListeBilansReturn' => 'ListeBilansReturn', - 'SetSurveillanceReturn' => 'SetSurveillanceReturn', - 'SurveillancesReturn' => 'SurveillancesReturn', - 'ListeEtablissementsReturn' => 'ListeEtablissementsReturn', - 'RatiosReturn' => 'RatiosReturn', - 'RechercheAnnonceReturn' => 'RechercheAnnonceReturn', - 'Identite' => 'Identite', - 'GeoInfos' => 'GeoInfos', - 'IdentiteBilan' => 'IdentiteBilan', - 'IdentiteBourse' => 'IdentiteBourse', - 'AutreSiren' => 'AutreSiren', - 'EntrepriseCriteres' => 'EntrepriseCriteres', - 'DirigeantCriteres' => 'DirigeantCriteres', - 'EntrepriseItem' => 'EntrepriseItem', - 'EntrepriseDirItem' => 'EntrepriseDirItem', - 'Etablissement' => 'Etablissement', - 'Dirigeant' => 'Dirigeant', - 'AnnonceFilter' => 'AnnonceFilter', - 'Annonce' => 'Annonce', - 'AnnonceEvenement' => 'AnnonceEvenement', - 'AnnonceNum' => 'AnnonceNum', - 'Actionnaire' => 'Actionnaire', - 'Participation' => 'Participation', - 'InseeEven' => 'InseeEven', - 'InfosReg' => 'InfosReg', - 'InfosBourse' => 'InfosBourse', - 'ListeBilans' => 'ListeBilans', - 'SurveillancesFiltre' => 'SurveillancesFiltre', - 'Surveillance' => 'Surveillance', - 'Bilan' => 'Bilan', - 'BilanPoste' => 'BilanPoste', - 'RechercheAnnonceCriteres' => 'RechercheAnnonceCriteres', - 'AnnonceItem' => 'AnnonceItem', - 'RatiosBilansInfos' => 'RatiosBilansInfos', - 'RatiosInfos' => 'RatiosInfos', - 'RatiosSecteur' => 'RatiosSecteur', - 'Ratios' => 'Ratios', - 'Rapport' => 'Rapport', - 'Indiscore' => 'Indiscore', - 'Scores' => 'Scores', - 'IndiscoreVariables' => 'IndiscoreVariables', - 'CA_Y' => 'CA_Y', - 'IndiscoreImportExport' => 'IndiscoreImportExport', - 'IndiscoreInfosNotations' => 'IndiscoreInfosNotations', - 'IndiscorePaiement' => 'IndiscorePaiement', - 'IndiscorePaiementDetail' => 'IndiscorePaiementDetail', - 'IndiscoreNotesStructure' => 'IndiscoreNotesStructure', - 'IndiscoreBilans' => 'IndiscoreBilans', - 'AdresseDomEnt' => 'AdresseDomEnt', - 'InfosIris' => 'InfosIris', - 'BanquesReturn' => 'BanquesReturn', - 'Banque' => 'Banque', - 'ListeCompetencesReturn' => 'ListeCompetencesReturn', - 'Competence' => 'Competence', - 'IdentiteProcol' => 'IdentiteProcol', - 'Organe' => 'Organe', - 'AutreSiret' => 'AutreSiret', -); \ No newline at end of file diff --git a/library/WsScore/Entreprise/v0.3/Entreprise.php b/library/WsScore/Entreprise/v0.3/Entreprise.php deleted file mode 100644 index 849d5dbe..00000000 --- a/library/WsScore/Entreprise/v0.3/Entreprise.php +++ /dev/null @@ -1,3275 +0,0 @@ -authenticate(); - - //Initialisation - if (empty($id)) { $id = 0; } - $forceVerif = false; - - $tdeb = microtime(1); - $ligne = date('YmdHis').";$siret;Ws->getIdentite Avant ..."; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - debugLog('I',"Identités demandée pour siret $siret (id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if ($siren*1==0 && $id==0) { - $this->sendError('1010'); - } elseif ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren, $nic, $id, $forceVerif); - debugLog('I', "Après getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $duree = round(microtime(1)-$tdeb,3); - $ligne = date('YmdHis').";$siret;Ws->getIdentite juste apres iInsee->... ($duree s)"; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - if (empty($entrep)) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - - $identite = new Identite(); - $identite->id = $entrep['id']; - $identite->Siret = $entrep['Siret']; - $identite->SiretSiege = $entrep['SiretSiege']; - $identite->Siege = $entrep['Siege']; - $identite->AncienSiege = $entrep['AncienSiege']; - $identite->AncienSiegeDateFin = $entrep['AncienSiegeDateFin']; - $identite->TribunalCode = prepareString($entrep['Tribunal']); - $identite->TribunalLib = prepareString($entrep['TribunalLib']); - //'NumGreffe' = $entrep['numGreffe'], // Ajouté le 4 08 2009 - $identite->NumRC = $entrep['numRC']; // Ajouté le 4 08 2009 - $identite->Actif = $entrep['Actif']; - $identite->ActifEco = $entrep['ActifEco']; // Etab éco actif, ajout le 28/04/2011 - $identite->ActifEcoDate = $entrep['ActifEcoDate']; // Date si éco inactif et jur actif - $identite->ActifEcoType = $entrep['ActifEcoType']; // vide ou NPAI ou PFER ou ECOF - $identite->EntActiveRCS = $entrep['EntActiveRCS']; - $identite->AutreId = $entrep['AutreId']; - $identite->Source = $entrep['Source']; - $identite->SourceId = $entrep['SourceId']; - $identite->Isin = $entrep['Isin']; - $identite->Nom = prepareString(strtr($entrep['Nom'],'/*',' ')); - $identite->Nom2 = prepareString($entrep['Nom2']); - $identite->NomLong = prepareString($entrep['nomLong']); // Ajouté le 4 08 2009 - $identite->NomCommercial = prepareString($entrep['NomCommercial']); // Ajouté le 16 11 2010 - $identite->Siret = $entrep['Siret']; - $identite->Sigle = prepareString($entrep['Sigle']); - $identite->SigleLong = prepareString($entrep['sigleLong']); // Ajouté le 4 08 2009 - $identite->Enseigne = prepareString($entrep['Enseigne']); - $identite->EnseigneLong = prepareString($entrep['enseigneLong']); // Ajouté le 16 11 2010 - $identite->Adresse = prepareString($entrep['Adresse']); - $identite->Adresse2 = prepareString($entrep['Adresse2']); - $identite->AdresseNum = prepareString($entrep['AdresseNum']); - $identite->AdresseBtq = prepareString($entrep['AdresseBtq']); - $identite->AdresseVoie = prepareString($entrep['AdresseVoie']); - $identite->AdresseRue = prepareString($entrep['AdresseRue']); - $identite->CP = $entrep['CP']; - $identite->Ville = prepareString($entrep['Ville']); - $identite->Pays = prepareString($entrep['Pays']); // Ajouté le 18 02 2008 - $identite->PaysIso2 = $entrep['PaysIso2']; - $identite->AdresseDom = $entrep['AdresseDom']; - - $tabAdresseDomEnt = array(); - if (isset($entrep['AdresseDomEnt']) && count($entrep['AdresseDomEnt'])>0){ - foreach ($entrep['AdresseDomEnt'] as $element){ - $adresseDomEnt = new AdresseDomEnt(); - $adresseDomEnt->siren = $element['siren']; - $adresseDomEnt->nom = $element['nom']; - $tabAdresseDomEnt[] = $adresseDomEnt; - } - } - $identite->AdresseDomEnt = $tabAdresseDomEnt; - - $identite->AdresseDomNb = $entrep['AdresseDomNb']; - $identite->Civilite = $entrep['Civilite']; - $identite->NbEtab = $entrep['NbEtab']; - $identite->Tel = prepareString($entrep['Tel']); - $identite->Fax = prepareString($entrep['Fax']); - $identite->Web = prepareString($entrep['Web']); - $identite->Mail = prepareString($entrep['Mail']); - $identite->GeoLat = $entrep['GeoLat']; - $identite->GeoLon = $entrep['GeoLon']; - $identite->GeoPrecis = $entrep['GeoPrecis']; - - $geoInfos = new GeoInfos(); - $geoInfos->CUCS = $entrep['GeoInfos']['CUCS']; - $geoInfos->NCUCS = $entrep['GeoInfos']['NCUCS']; - $geoInfos->ZRU = $entrep['GeoInfos']['ZRU']; - $geoInfos->NZRU = $entrep['GeoInfos']['NZRU']; - $geoInfos->ZFU = $entrep['GeoInfos']['ZFU']; - $geoInfos->NZFU = $entrep['GeoInfos']['NZFU']; - $geoInfos->ZUS = $entrep['GeoInfos']['ZUS']; - $geoInfos->NZUS = $entrep['GeoInfos']['NZUS']; - $geoInfos->AFR = $entrep['GeoInfos']['AFR']; - $geoInfos->NAFR = $entrep['GeoInfos']['NAFR']; - $geoInfos->ZRR = $entrep['GeoInfos']['ZRR']; - $geoInfos->NZRR = $entrep['GeoInfos']['NZRR']; - $identite->GeoInfos = $geoInfos; - - $identite->TvaNumero = $entrep['TvaNumero']; - $identite->TvaAttribue = $entrep['TvaAttribue']; - $identite->FJ = $entrep['FJ']; - $identite->FJ_Lib = $entrep['FJ_lib']; - $identite->FJ2 = $entrep['FJ2']; // Ajouté le 4 08 2009 - $identite->FJ2_Lib = $entrep['FJ2_Lib']; // Ajouté le 4 08 2009 - $identite->Siren = $entrep['Siren']; - $identite->Nic = $entrep['Nic']; - $identite->NafEnt = $entrep['NafEnt']; - $identite->NafEntLib = prepareString($entrep['NafEntLib']); - $identite->NafEtab = $entrep['NafEtab']; - $identite->NafEtabLib = prepareString($entrep['NafEtabLib']); - $identite->NaceEtab = $entrep['NaceEtab']; - $identite->NaceEnt = $entrep['NaceEnt']; - $identite->Nafa = $entrep['APRM']; - $identite->NafaLib = prepareString($entrep['APRM_Lib']); - $identite->NumRM = $entrep['NumRM']; - $identite->Activite = $entrep['Activite']; - $identite->Capital = $entrep['Capital']; - $identite->CapitalDev = $entrep['CapitalDev']; - $identite->CapitalLib = $entrep['CapitalLib']; // Ajouté le 18 02 2008 - $identite->CapitalType = prepareString($entrep['CapitalType']); // Ajouté le 4 08 2009 - $identite->DateCreaEt = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEt']); - $identite->DateCreaEn = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEn']); - $identite->DateClotEt = $entrep['DateClotEt']; //@todo : date - $identite->DateImmat = $entrep['dateImmat']; // Ajouté le 4 08 2009 - $identite->DateRadiation = $entrep['dateRad']; // Ajouté le 4 08 2009 - //'DateMajRCS' = $entrep['DateMajRCS'], // Ajouté le 4 08 2009 - $identite->EffEnTr = $entrep['EffEnTr']; - $identite->EffEnTrLib = $entrep['EffEnTrLib']; - $identite->Effectif = $entrep['Effectif']; - $identite->EffEtTr = $entrep['EffEtTr']; // Ajout le 11 08 2010 - $identite->EffEtTrLib = $entrep['EffEtTrLib']; // Ajout le 11 08 2010 - $identite->EffectifEtab = $entrep['EffectifEtab']; // Ajout le 11 08 2010 - $identite->Dept = $entrep['Dept']; - $identite->codeCommune = prepareString($entrep['codeCommune']); - $identite->AnneeEffEn = $entrep['AnneeEffEn']; - $identite->AnneeEffEt = $entrep['AnneeEffEt']; - $identite->AnneeTCA = $entrep['AnneeTCA']; - $identite->TrancheCA = $entrep['TrancheCA']; - $identite->TrancheCALib = $entrep['TrancheCALib']; - $identite->dir1Code = $entrep['dir1Code']; - $identite->dir1Titre = prepareString($entrep['dir1Titre']); - $identite->dir1NomPrenom = prepareString($entrep['dir1NomPrenom']); - $identite->dir1DateFct = prepareString($entrep['dir1DateFct']); //@todo : date - $identite->dir1DateNaiss = $entrep['dir1DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir1LieuNaiss = prepareString($entrep['dir1LieuNaiss']); // Ajouté le 4 08 2009 - $identite->dir2Code = $entrep['dir2Code']; - $identite->dir2Titre = prepareString($entrep['dir2Titre']); - $identite->dir2NomPrenom = prepareString($entrep['dir2NomPrenom']); - $identite->dir2DateFct = $entrep['dir2DateFct']; //@todo : date - $identite->dir2DateNaiss = prepareString($entrep['dir2DateNaiss']); //@todo : date // Ajouté le 4 08 2009 - $identite->dir2LieuNaiss = prepareString($entrep['dir2LieuNaiss']); // Ajouté le 4 08 2009 - $identite->Rivoli = $entrep['Rivoli']; - - $identite->InfosIris->codIris = $entrep['InfosIris']['codIris']; - $identite->InfosIris->codComIris = $entrep['InfosIris']['codComIris']; - $identite->InfosIris->libIris = prepareString($entrep['InfosIris']['libIris']); - $identite->InfosIris->typIris = prepareString($entrep['InfosIris']['typIris']); - $identite->InfosIris->evoIris = $entrep['InfosIris']['evoIris']; - $identite->InfosIris->trIris = $entrep['InfosIris']['trIris']; - $identite->InfosIris->grdQuartier = $entrep['InfosIris']['grdQuartier']; - $identite->NatureActivite = $entrep['NatureActivite']; // Nature de l'activité - $identite->OrigineCreation = $entrep['OrigineCreation']; // Origine de la création - $identite->TypeExploitation = $entrep['TypeExploitation']; - $identite->Auxiliaire = $entrep['Auxiliaire']; // 1=Auxiliaire / 0=Non auxiliaire - $identite->Saisonnalite = $entrep['Saisonnalite']; // P=Activité permanente / S=Activité saisonnière - $identite->SurfaceMagasin = $entrep['ACTISURF']*1; // 0=N/D, 1=inf. à 300m2,2=300 à 400m2, 3=400 à 2500m2, 4=sup. à 2500m2 - $identite->SituationJuridique = $entrep['SituationJuridique']; - $identite->Bilan->Cloture = $entrep['bilanDate']; //@todo : date - $identite->Bilan->Duree = $entrep['bilanMois']; - $identite->Bilan->Devise = $entrep['bilanDevise']; - $identite->Bilan->Capital = $entrep['bilanDA']; - $identite->Bilan->CA = $entrep['bilanFL']; - $identite->Bilan->Resultat = prepareString($entrep['bilanHN']); - $identite->Bilan->Effectif = $entrep['bilanYP']; - $identite->Bourse->placeCotation = $bourse['placeCotation']; - $identite->Bourse->nombreTitres = $bourse['nombreTitres']; - $identite->Bourse->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $identite->Bourse->derCoursDate = $bourse['date']; //@todo : date - $identite->Bourse->derCoursCloture = $bourse['close']; //@todo : date - - $tabAutreSiren = array(); - if (isset($entrep['AutreSiren'])) { - $autreSiren = new AutreSiren(); - $autreSiren->siren = $entrep['AutreSiren']['listeSiren']['siren']; - $autreSiren->type = $entrep['AutreSiren']['listeSiren']['type']; - $tabAutreSiren[] = $autreSiren; - } - $identite->AutreSiren = $tabAutreSiren; - - $tabAutreSiret = array(); - if (count($entrep['AutreSiret'])) { - foreach($entrep['AutreSiret'] as $type => $item) { - $autreSiret = new AutreSiret(); - $autreSiret->type = $type; - $autreSiret->siren = $item['siren']; - $autreSiret->nic = $item['nic']; - $autreSiret->apeEtab = $item['apeEtab']; - $autreSiret->codeEve = $item['codeEve']; - $autreSiret->dateEve = $item['dateEve']; - $autreSiret->adrL1 = $item['adrL1']; - $autreSiret->adrL2 = $item['adrL2']; - $autreSiret->adrL3 = $item['adrL3']; - $autreSiret->adrL4 = $item['adrL4']; - $autreSiret->adrL5 = $item['adrL5']; - $autreSiret->adrL6 = $item['adrL6']; - $autreSiret->adrL7 = $item['adrL7']; - $autreSiret->depCom = $item['depCom']; - $autreSiret->rivoli = $item['rivoli']; - $autreSiret->siege = $item['siege']; - $autreSiret->destinat = $item['destinat']; - $autreSiret->typEtab = $item['typeEtab']; - $autreSiret->origine = $item['origine']; - $tabAutreSiret[] = $autreSiret; - } - } - $identite->AutreSiret = $tabAutreSiret; - - $identite->DateMajINSEE = $entrep['DateMajINSEE']; //@todo : date - $identite->DateMajRCS = $entrep['DateMajRCS']; //@todo : date - $identite->DateMajBILAN = $entrep['bilanDateMaj']; //@todo : date - $identite->DateMajANN = $entrep['dateMajANN']; //@todo : date - $identite->DateMajID = $entrep['dateMajIdentite']; //@todo : date - //'importExport' = $entrep['importExport'], - - if (preg_match('/NAF4/i', $this->tabInfoUser['pref'])) - { - $entrep2 = $iInsee->getNaf4($siren, $nic, $id); - $identite->Naf4Ent = $entrep2['apen4']; - $identite->Naf4Etab = $entrep2['apet4']; - $identite->Naf4EntLib = prepareString($entrep2['apen4_lib']); - $identite->Naf4EtabLib = prepareString($entrep2['apet4_lib']); - } - - debugLog('I', 'Etablissement retourné = '. $entrep['Nom'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('identite',$siret,$id); - $duree=round(microtime(1)-$tdeb,3); - $ligne=date('YmdHis').";$siret;Ws->getIdentite APRES ($duree s) !!!"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - - return $identite; - } - - /** - * Retourne les informations identitaires de l'entreprise ou de l'établissement demandé - * @param string $siret Siren de l'entreprise ou siret de l'établissement - * @param integer $id Identifiant S&D de l'établissement - * @return IdentiteProcol Fiche d'identité de l'établissement - */ - public function getIdentiteProcol($siret, $id=0, $forceVerif=false) - { - $this->authenticate(); - - debugLog('I',"Identité AGS demandée pour siret $siret (id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if (intval($siren)==0 && $id==0) { - $this->sendError('1010'); - } elseif ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren, $nic, $id, $forceVerif); - debugLog('I', "Après getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $duree = round(microtime(1)-$tdeb,3); - $ligne = date('YmdHis').";$siret;Ws->getIdentite juste apres iInsee->... ($duree s)"; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - if (empty($entrep)) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - - $identiteProcol = new IdentiteProcol(); - - //Element identite - $identite = new Identite(); - $identite->id = $entrep['id']; - $identite->Siret = $entrep['Siret']; - $identite->SiretSiege = $entrep['SiretSiege']; - $identite->Siege = $entrep['Siege']; - $identite->TribunalCode = $entrep['Tribunal']; - $identite->TribunalLib = $entrep['TribunalLib']; - $identite->NumRC = $entrep['numRC']; // Ajouté le 4 08 2009 - $identite->Actif = $entrep['Actif']; - $identite->EntActiveRCS = $entrep['EntActiveRCS']; - $identite->AutreId = $entrep['AutreId']; - $identite->Source = $entrep['Source']; - $identite->SourceId = $entrep['SourceId']; - $identite->Isin = $entrep['Isin']; - $identite->Nom = strtr($entrep['Nom'],'/*',' '); - $identite->Nom2 = $entrep['Nom2']; - $identite->NomLong = $entrep['nomLong']; // Ajouté le 4 08 2009 - $identite->NomCommercial = $entrep['NomCommercial']; // Ajouté le 16 11 2010 - $identite->Siret = $entrep['Siret']; - $identite->Sigle = $entrep['Sigle']; - $identite->SigleLong = $entrep['sigleLong']; // Ajouté le 4 08 2009 - $identite->Enseigne = $entrep['Enseigne']; - $identite->EnseigneLong = $entrep['enseigneLong']; // Ajouté le 16 11 2010 - $identite->Adresse = $entrep['Adresse']; - $identite->Adresse2 = $entrep['Adresse2']; - $identite->AdresseNum = $entrep['AdresseNum']; - $identite->AdresseBtq = $entrep['AdresseBtq']; - $identite->AdresseVoie = $entrep['AdresseVoie']; - $identite->AdresseRue = $entrep['AdresseRue']; - $identite->CP = $entrep['CP']; - $identite->Ville = $entrep['Ville']; - $identite->Pays = $entrep['Pays']; // Ajouté le 18 02 2008 - $identite->PaysIso2 = $entrep['PaysIso2']; - $identite->AdresseDom = $entrep['AdresseDom']; - - $tabAdresseDomEnt = array(); - if (isset($entrep['AdresseDomEnt']) && count($entrep['AdresseDomEnt'])>0){ - foreach ($entrep['AdresseDomEnt'] as $element){ - $adresseDomEnt = new AdresseDomEnt(); - $adresseDomEnt->siren = $element['siren']; - $adresseDomEnt->nom = $element['nom']; - $tabAdresseDomEnt[] = $adresseDomEnt; - } - } - $identite->AdresseDomEnt = $tabAdresseDomEnt; - - $identite->AdresseDomNb = $entrep['AdresseDomNb']; - $identite->Civilite = $entrep['Civilite']; - $identite->NbEtab = $entrep['NbEtab']; - $identite->Tel = $entrep['Tel']; - $identite->Fax = $entrep['Fax']; - $identite->Web = $entrep['Web']; - $identite->Mail = $entrep['Mail']; - $identite->GeoLat = $entrep['GeoLat']; - $identite->GeoLon = $entrep['GeoLon']; - $identite->GeoPrecis = $entrep['GeoPrecis']; - $identite->GeoInfos = $entrep['GeoInfos']; - $identite->TvaNumero = $entrep['TvaNumero']; - $identite->TvaAttribue = $entrep['TvaAttribue']; - $identite->FJ = $entrep['FJ']; - $identite->FJ_Lib = $entrep['FJ_lib']; - $identite->FJ2 = $entrep['FJ2']; // Ajouté le 4 08 2009 - $identite->FJ2_Lib = $entrep['FJ2_Lib']; // Ajouté le 4 08 2009 - $identite->Siren = $entrep['Siren']; - $identite->Nic = $entrep['Nic']; - $identite->NafEnt = $entrep['NafEnt']; - $identite->NafEntLib = $entrep['NafEntLib']; - $identite->NafEtab = $entrep['NafEtab']; - $identite->NafEtabLib = $entrep['NafEtabLib']; - $identite->NaceEtab = $entrep['NaceEtab']; - $identite->NaceEnt = $entrep['NaceEnt']; - $identite->Nafa = $entrep['APRM']; - $identite->NafaLib = $entrep['APRM_Lib']; - $identite->NumRM = $entrep['NumRM']; - $identite->Activite = $entrep['Activite']; - $identite->Capital = $entrep['Capital']; - $identite->CapitalDev = $entrep['CapitalDev']; - $identite->CapitalLib = $entrep['CapitalLib']; // Ajouté le 18 02 2008 - $identite->CapitalType = $entrep['CapitalType']; // Ajouté le 4 08 2009 - $identite->DateCreaEt = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEt']); - $identite->DateCreaEn = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEn']); - $identite->DateClotEt = $entrep['DateClotEt']; //@todo : date - $identite->DateImmat = $entrep['dateImmat']; // Ajouté le 4 08 2009 - $identite->DateRadiation = $entrep['dateRad']; // Ajouté le 4 08 2009 - $identite->EffEnTr = $entrep['EffEnTr']; - $identite->EffEnTrLib = $entrep['EffEnTrLib']; - $identite->Effectif = $entrep['Effectif']; - $identite->EffEtTr = $entrep['EffEtTr']; // Ajout le 11 08 2010 - $identite->EffEtTrLib = $entrep['EffEtTrLib']; // Ajout le 11 08 2010 - $identite->EffectifEtab = $entrep['EffectifEtab']; // Ajout le 11 08 2010 - $identite->Dept = $entrep['Dept']; - $identite->codeCommune = $entrep['codeCommune']; - $identite->AnneeEffEn = $entrep['AnneeEffEn']; - $identite->AnneeEffEt = $entrep['AnneeEffEt']; - $identite->AnneeTCA = $entrep['AnneeTCA']; - $identite->TrancheCA = $entrep['TrancheCA']; - $identite->TrancheCALib = $entrep['TrancheCALib']; - $identite->dir1Code = $entrep['dir1Code']; - $identite->dir1Titre = $entrep['dir1Titre']; - $identite->dir1NomPrenom = $entrep['dir1NomPrenom']; - $identite->dir1DateFct = $entrep['dir1DateFct']; //@todo : date - $identite->dir1DateNaiss = $entrep['dir1DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir1LieuNaiss = $entrep['dir1LieuNaiss']; // Ajouté le 4 08 2009 - $identite->dir2Code = $entrep['dir2Code']; - $identite->dir2Titre = $entrep['dir2Titre']; - $identite->dir2NomPrenom = $entrep['dir2NomPrenom']; - $identite->dir2DateFct = $entrep['dir2DateFct']; //@todo : date - $identite->dir2DateNaiss = $entrep['dir2DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir2LieuNaiss = $entrep['dir2LieuNaiss']; // Ajouté le 4 08 2009 - $identite->Rivoli = $entrep['Rivoli']; - $identite->InfosIris->codIris = $entrep['InfosIris']['codIris']; - $identite->InfosIris->codComIris = $entrep['InfosIris']['codComIris']; - $identite->InfosIris->libIris = $entrep['InfosIris']['libIris']; - $identite->InfosIris->typIris = $entrep['InfosIris']['typIris']; - $identite->InfosIris->evoIris = $entrep['InfosIris']['evoIris']; - $identite->InfosIris->trIris = $entrep['InfosIris']['trIris']; - $identite->InfosIris->grdQuartier = $entrep['InfosIris']['grdQuartier']; - $identite->NatureActivite = $entrep['NatureActivite']; // Nature de l'activité - $identite->OrigineCreation = $entrep['OrigineCreation']; // Origine de la création - $identite->TypeExploitation = $entrep['TypeExploitation']; - $identite->Auxiliaire = $entrep['Auxiliaire']; // 1=Auxiliaire / 0=Non auxiliaire - $identite->Saisonnalite = $entrep['Saisonnalite']; // P=Activité permanente / S=Activité saisonnière - $identite->SituationJuridique = $entrep['SituationJuridique']; - $identite->Bilan->Cloture = $entrep['bilanDate']; //@todo : date - $identite->Bilan->Duree = $entrep['bilanMois']; - $identite->Bilan->Devise = $entrep['bilanDevise']; - $identite->Bilan->Capital = $entrep['bilanDA']; - $identite->Bilan->CA = $entrep['bilanFL']; - $identite->Bilan->Resultat = $entrep['bilanHN']; - $identite->Bilan->Effectif = $entrep['bilanYP']; - $identite->Bourse->placeCotation = $bourse['placeCotation']; - $identite->Bourse->nombreTitres = $bourse['nombreTitres']; - $identite->Bourse->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $identite->Bourse->derCoursDate = $bourse['date']; //@todo : date - $identite->Bourse->derCoursCloture = $bourse['close']; //@todo : date - - $tabAutreSiren = array(); - if (isset($entrep['AutreSiren'])) { - $autreSiren = new AutreSiren(); - $autreSiren->siren = $entrep['AutreSiren']['listeSiren']['siren']; - $autreSiren->type = $entrep['AutreSiren']['listeSiren']['type']; - $tabAutreSiren[] = $autreSiren; - } - $identite->AutreSiren = $tabAutreSiren; - - $identite->DateMajINSEE = $entrep['DateMajINSEE']; //@todo : date - $identite->DateMajRCS = $entrep['DateMajRCS']; //@todo : date - $identite->DateMajBILAN = $entrep['bilanDateMaj']; //@todo : date - $identite->DateMajANN = $entrep['dateMajANN']; //@todo : date - $identite->DateMajID = $entrep['dateMajIdentite']; //@todo : date - - if (preg_match('/NAF4/i', $this->tabInfoUser['pref'])) - { - $entrep2 = $iInsee->getNaf4($siren, $nic, $id); - $identite->Naf4Ent = $entrep2['apen4']; - $identite->Naf4Etab = $entrep2['apet4']; - $identite->Naf4EntLib = $entrep2['apen4_lib']; - $identite->Naf4EtabLib = $entrep2['apet4_lib']; - } - - $identiteProcol->Identite = $identite; - - //Eléments annonces légales - $anns = $this->getAnnonces($siren, 1); - $tabRetAnn = $tabLastEven = array(); - $anns = $anns->result; - $tribunalProcol = false; - foreach ($anns as $nb=>$ann) { - $tabRetEven = array(); - foreach ($ann->evenements as $tabEven) { - // On ignore les éléments suivants - if ($tabEven->CodeEven>=7000) continue; - if ($tabEven->CodeEven>=4000 && $tabEven->CodeEven<=4999) continue; - - // Par défaut, on force le tribunal à celui présent dans la dernière annonce de Procol - if ($tribunalProcol==false && $tabEven->CodeEven>=1000 && $tabEven->CodeEven<2000 && $ann->BodaccCode=='BODA') { - $identiteProcol->TribunalCode = $ann->TribunalCode; - $identiteProcol->TribunalLib = prepareString($ann->Tribunal); - $tribunalProcol=true; - } - - // On ne prend que le dernier élément de chaque type - if (in_array($tabEven->CodeEven, $tabLastEven)) continue; - - $tabLastEven[] = $tabEven->CodeEven; - $tabRetEven[] = $tabEven; - } - - if (count($tabRetEven)>0) { - $annonce = new Annonce(); - $annonce->id = $ann->id; - $annonce->BodaccCode = $ann->BodaccCode; - $annonce->BodaccNum = $ann->BodaccNum; - $annonce->NumAnnonce = $ann->NumAnnonce; - $annonce->DateParution = $ann->DateParution; //@todo : date - $annonce->Departement = $ann->Departement; - $annonce->Tribunal = $ann->Tribunal; - $annonce->TribunalCode = $ann->TribunalCode; - $annonce->TribunalSiret = $ann->TribunalSiret; - $annonce->Rubrique = $ann->Rubrique; - $annonce->typeAnnonce = $ann->typeAnnonce; - $annonce->texteRectificatif = $ann->texteRectificatif; - $annonce->texteAnnonce = utf8_encode($ann->texteAnnonce); - $annonce->dateEffet = $ann->dateEffet; //@todo : date - $annonce->dateJugement = $ann->dateJugement; //@todo : date - $annonce->dateInsertionSD = $ann->dateInsertionSD; //@todo : date - $annonce->evenements = $tabRetEven; - $annonce->Lien_Annonce_Pdf = $ann->Lien_Annonce_Pdf; - $tabRetAnn[] = $annonce; - } - } - $identiteProcol->Annonces = $tabRetAnn; - - $iRncs = new MRncs(); - if ($entrep['Siege']==1 || $entrep['Siege']==11) { - $identiteProcol->LibTypeEtab = 'Etablissement Siege'; - } else { - $tabEtabRncs = $iRncs->getIdentiteEtab($siren, $entrep['Nic']); - if ($tabEtabRncs['Siege']==2) $identiteProcol->LibTypeEtab = 'Etablissement Principal'; - elseif ($tabEtabRncs['Siege']==1) $identiteProcol->LibTypeEtab = 'Etablissement Complementaire'; - elseif ($tabEtabRncs['Siege']==0) $identiteProcol->LibTypeEtab = 'Etablissement Secondaire'; - } - - //@todo - $tabJuge = $iRncs->getIntervenants($siren); - $tabDepots=array(); - foreach ($tabJuge as $iDepot=>$depot) { - $organe = new Organe(); - $organe->codEven = $depot['codEven']; - $organe->libEven = prepareString($depot['libEven']); - $organe->dateEffet = $depot['dateEffet']; - $organe->admcode = $depot['admcode']; - $organe->admfonction = prepareString($depot['admfonction']); - $organe->admnom = prepareString($depot['admnom']); - $organe->admadrNum = $depot['admadrNum']; - $organe->admadrInd = $depot['admadrInd']; - $organe->admadrVoie = $depot['admadrVoie']; // @todo : adm1adr1, adm1adr2, adm1adr3, - $organe->admadrCP = $depot['admadrCP']; - $organe->admadrVille = $depot['admadrVille']; - $tabDepots[] = $organe; - } - $identiteProcol->Organes = $tabDepots; - - - $mLiens = new MLiens($siren); - $tabA = $mLiens->getActionnaires($siren, 1); - $nbA = count($tabA); - $tabAct = array(); - foreach ($tabA as $i=>$lien) { - $liens = new Actionnaire(); - $liens->Pmin = $lien['Pmin']; - $liens->MajMin = $lien['MajMin']; - $liens->RaisonSociale = $lien['RaisonSociale']; - $liens->Pays = $lien['Pays']; - $liens->Siren = $lien['Siren']; - $liens->Actif = $lien['Actif']; - $tabAct[] = $liens; - } - $identiteProcol->Actionnaires = $tabAct; - - $iGreffes = new MGreffes(); - $tabActes = $iGreffes->getListeActes($siren); - - $identiteProcol->StatutsModifDepot = $identiteProcol->StatutsModif = '0000-00-00'; - foreach ($tabActes as $i=>$acte) { - if ('_'.$acte['acte_type']=='_04') { // STATUTS CONSTITUTIFS - $identiteProcol->StatutsConstDepot = $acte['depot_date']; // => 1997-12-18 - $identiteProcol->StatutsConst = $acte['acte_date']; // => 1997-11-13 - break; - } elseif (in_array('_'.$acte['acte_type'], array( - //'_04', // STATUTS CONSTITUTIFS - '_06', // STATUTS A JOUR 9 0000-00-00 2009-09-02 17:05:55 - '_07', // STATUTS A JOUR 9 0000-00-00 2009-09-02 17:05:55 - '_08', // STATUTS A JOUR ET DECLARATION DE CONFORMITE 9 0000-00-00 2009-09-02 17:05:55 - '_09', // STATUTS APRES TRANSFERT DE SIEGE 9 0000-00-00 2009-09-02 17:05:55 - '_A1', // STATUTS 9 0000-00-00 2009-09-02 17:05:55 - '_AH', // AVENANT AUX STATUTS - ))) { - // On ne prend que la dernière modif - if ($identiteProcol->StatutsModifDepot=='0000-00-00' && $identiteProcol->StatutsModif=='0000-00-00') { - $identiteProcol->StatutsModifDepot = $acte['depot_date'];// => 1997-12-18 - $identiteProcol->StatutsModif = $acte['acte_date']; // => 1997-11-13 - } - } - } - - /** Y a t il eu des informations relatives à une cession ? **/ - $tabCes = $iGreffes->getInfosCessions($siren); - if ($tabCes) { - $identiteProcol->CessionJugeLib = $tabCes['cessJuge']; - $identiteProcol->CessionJugeDate = $tabCes['cessDateJuge']; - $identiteProcol->CessionAvisBodac = $tabCes['cessDateBod']; - $identiteProcol->CessionInvenDate = $tabCes['cessDateInv']; - $identiteProcol->CessionCAdeclare = $tabCes['cessCAdec']; - $identiteProcol->CessionEffectif = $tabCes['cessEffectif']; - $identiteProcol->CessionDesc = $tabCes['cessDesc']; - $identiteProcol->CessionDescDate = $tabCes['cessDateDesc']; - $identiteProcol->CessionOffreDate = $tabCes['cessDateLim']; - $identiteProcol->CessionMandataire = $tabCes['cessMand']; - } - - //sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Debug $siren", print_r($tabRet,true)) ; - debugLog('I', 'Etablissement retourné = '. $entrep['Nom'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('identite',$siret,$id); - - return $identiteProcol; - } - - /** - * Retourne les liens financiers pour une entreprise. - * - * @param integer $siren Siren de l'entreprise - * @param boolean $actifsUniquement Uniquement les liens Actifs - * @return LiensReturn - */ - public function getLiens($siren, $actifsUniquement = true) - { - $this->authenticate(); - - //Initialisation - if (empty($actifsUniquement)) { $actifsUniquement = true; } - $tabAct = $tabPar = array(); - - debugLog('I',"Liens entreprises demandés pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $mLiens = new MLiens($siren); - $tabA = $mLiens->getActionnaires($siren, $actifsUniquement); - $nbA = count($tabA); - $tabAct = array(); - if ($nbA > 0) { - foreach ($tabA as $i => $lien) { - $actionnaire = new Actionnaire(); - $actionnaire->Pmin = $lien['Pmin']; - $actionnaire->MajMin = $lien['MajMin']; - $actionnaire->RaisonSociale = $lien['RaisonSociale']; - $actionnaire->TypeEntrep = $lien['TypeEntrep']; - $actionnaire->Pays = $lien['Pays']; - $actionnaire->Siren = $lien['Siren']; - $actionnaire->Actif = $lien['Actif']; - $actionnaire->Source = $lien['Source']; - $actionnaire->DateLien = $lien['DateLien']; //@todo : date - $actionnaire->DateMaj = $lien['DateMaj']; //@todo : date - $tabAct[] = $actionnaire; - } - } - debugLog('W', "$nbA actionnaires pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $tabP = $mLiens->getParticipations($siren, $actifsUniquement); - $nbP = count($tabP); - $tabPar = array(); - if ($nbP > 0) { - foreach ($tabP as $i => $lien) { - $participation = new Participation(); - $participation->Pmin = $lien['Pmin']; - $participation->MajMin = $lien['MajMin']; - $participation->RaisonSociale = $lien['RaisonSociale']; - $participation->TypeEntrep = $lien['TypeEntrep']; - $participation->Pays = $lien['Pays']; - $participation->Siren = $lien['Siren']; - $participation->Actif = $lien['Actif']; - $participation->Source = $lien['Source']; - $participation->DateLien = $lien['DateLien']; //@todo : date - $participation->DateMaj = $lien['DateMaj']; //@todo : date - $tabPar[] = $participation; - } - } - debugLog('W', "$nbP participations pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('liens',$siren); - - $output = new LiensReturn(); - $output->actionnaires = $tabAct; - $output->participations = $tabPar; - return $output; - } - - - /** - * Liste des établissements d'une entreprise - * @param string $siren Siren de l'entreprise - * @param integer $departement Limiter aux établissements du departement - * @param integer $actif Otpionnel 1=Uniquements les actifs, 0=inactifs, Néant=Tous - * @param integer $position - * @param integer $nbRep - * - * @return ListeEtablissementsReturn - */ - public function getListeEtablissements($siren, $dep = 0, $actif = -1, $position = 0, $nbRep = 20) - { - $this->authenticate(); - - //Initialisation - if (empty($dep)) { $dep = 0; } - if (!in_array($actif, array(0,1))) { $actif = -1; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 20; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - $departement = $dep; - - debugLog('I',"Liste des établissements demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissements($siren, '', $position, $nbRep, 200, $departement, $actif); - $etabs = $rep['reponses']; - $nbReponses = $rep['nbReponsesTotal']; - $result = array(); - if (count($etabs)>0) - { - foreach ($etabs as $nb => $etab) - { - $etablissement = new Etablissement(); - $etablissement->id = $etab['id']; - $etablissement->Siege = $etab['Siege']; - $etablissement->Enseigne = $etab['Enseigne']; - $etablissement->Adresse = $etab['Adresse']; - $etablissement->Adresse2 = $etab['Adresse2']; - $etablissement->CP = $etab['CP']; - $etablissement->Ville = $etab['Ville']; - $etablissement->Tel = $etab['Tel']; - $etablissement->Fax = $etab['Fax']; - $etablissement->Nic = $etab['Nic']; - $etablissement->Actif = $etab['Actif']; - $etablissement->NafEtab = $etab['NafEtab']; - $etablissement->NafEtabLib = $etab['NafEtabLib']; - $etablissement->EffEtTr = $etab['EffEtTr']; - $etablissement->EffEtTrLib = $etab['EffEtTrLib']; - - $result[] = $etablissement; - } - } - debugLog('I', "Nb Etablissements retournés ($departement, $actif) = ". count($result), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('etablissements',$siren); - $output = new ListeEtablissementsReturn(); - $output->nbReponses = $nbReponses; - $output->result = $result; - return $output; - } - - /** - * Retourne l'ensemble des informations identitaires des dirigeants de l'entreprise - * - * @param string $siren Siren de l'entreprise - * @param bool $histo Afficher l'historique des dirigeants - * @return DirigeantsReturn Liste des dirigeants actifs de l'entreprise - */ - public function getDirigeants( $siren , $histo = false) - { - $this->authenticate(); - - //Initialisation - if (empty($histo)) { $histo = false; } - - //Zend_Registry::get('WsLogger')->info('HISTO : '.$histo); - - debugLog('I',"Dirigeants demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $dirs = $iInsee->getDirigeants($siren, $histo); - //debugLog('W', print_r($dirs, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $liste = array(); - foreach ($dirs as $nb => $dir) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $dirigeant = new Dirigeant(); - $dirigeant->Code = $dir['Fonction']; - $dirigeant->Titre = $dir['Titre']; - $dirigeant->Societe = $dir['Societe']; - $dirigeant->Civilite = $dir['Civilite']; - $dirigeant->Nom = $dir['Nom']; - $dirigeant->Prenom = $dir['Prenom']; - //$dirigeant->NomUsage = $dir['NomUsage']; //@todo : modifier la structure - $dirigeant->NaissDate = $dir['NaissDate']; //@todo : date - $dirigeant->NaissVille = $dir['NaissVille']; - $dirigeant->NaissDepPays = $dir['NaissDepPays']; - $dirigeant->Ancien = $dir['Ancien']; - $dirigeant->DateFct = $dir['DateFct']; //@todo : date - $liste[] = $dirigeant; - } - $this->wsLog('dirigeants',$siren,$option); - debugLog('I', 'Nb Dirigeants retournés = '. count($dirs), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $output = new DirigeantsReturn(); - $output->result = $liste; - return $output; - } - - /** - * Retourne la liste des annonces légales relative à une entreprise - * - * @todo Revoir cette fonction pour la faire marcher avec les associations - * - * @param string $siren Siren de l'entreprise - * @param integer $filtre 0=Pas de Filtre, 1=BODACC, 2=B.A.L.O, 3=JO Association, 4=Boamp - * @param string $idAnn Identifiant de l'annonce - * @param integer $position - * @param integer $nbRep - * @return AnnoncesReturn - */ - public function getAnnonces($siren, $filtre = 0, $idAnn = '', $position = 0, $nbRep = 100) - { - $this->authenticate(); - - //Initialisation - if (empty($filtre)) { $filtre = 0; } - if (empty($idAnn)) { $idAnn = ''; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 100; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - - debugLog('I',"Annonces demandées pour $siren ($filtre, $idAnn)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $liste = array(); - - if (strlen($siren)<>9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0 && $idAnn=='') { - debugLog('W', "Siren $siren ou annonce $idAnn inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - /* - if ($siren>100 && $filtre==3) $asso=true; - else { - $asso=false; - $tabIdentite=$this->iInsee->getIdentiteLight($siren); - if ($tabIdentite['FJ']>90 && $tabIdentite['FJ']<94 || - $tabIdentite['FJ']>9000 && $tabIdentite['FJ']<9400) $asso=true; - }*/ - if ($idAnn=='') { - $anns=$iInsee->getAnnoncesLegales($siren); - $annsB=$iInsee->getAnnoncesBalo($siren); - $annsA=$iInsee->getAnnoncesAsso($siren); - $annsM=$iInsee->getAnnoncesBoamp($siren, $idAnn); - } elseif ($filtre==1) - $anns=$iInsee->getAnnoncesLegales($siren, $idAnn); - elseif ($filtre==2) - $annsB=$iInsee->getAnnoncesBalo($siren, $idAnn); - elseif ($filtre==3) - $annsA=$iInsee->getAnnoncesAsso($siren, $idAnn); - elseif ($filtre==4) - $annsM=$iInsee->getAnnoncesBoamp($siren, $idAnn); - - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($anns) && empty($annsB) && empty($annsA) && empty($annsM)) - { - debugLog('W', "Aucune annonce pour le siren $siren (source=$filtre, id=$idAnn)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren inexistant B '.$siren.' '.$idAnn; - } - else - { - foreach ($anns as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - $annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = prepareString($ann['texteAnnonce']); - $annonce->libFJ = $ann['libFJ']; - $annonce->codFJ = $ann['codFJ']; - $annonce->capital = $ann['capital']; - $annonce->capitalDev = $ann['capitalDev']; - - $annonce->raisonSociale = $ann['raisonSociale']; - $annonce->nomCommercial = $ann['nomCommercial']; - $annonce->sigle = $ann['sigle']; - $annonce->adresse = $ann['adresse']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - - if (is_array($annsB)) - { - foreach ($annsB as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - - if (is_array($annsA)) - { - foreach ($annsA as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - //@todo : date - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - - if (is_array($annsM)) - { - foreach ($annsM as $nb=>$ann) - { - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - } - - $nbReponses = count($liste); - if ($nbReponses>0){ - //$liste = array_slice($liste, $position, $nbRep); - } - debugLog('I', "Nb Annonces $filtre retournées pour $siren (source=$filtre, id=$idAnn) = ". count($liste), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('annonces',$siren,$filtre.'/'.$idAnn); - - $output = new AnnoncesReturn(); - $output->nbReponses = $nbReponses; - $output->result = $liste; - return $output; - } - - /** - * Evaluation indiScore d'une entreprise - * - * @param string $siren Siren de l'entreprise - * @param string $nic - * @param int $niveau - * @return Indiscore - */ - public function getIndiScore($siren, $nic=0, $niveau=2, $plus=false) - { - $this->authenticate(); - - $perm = false; - switch($niveau){ - case 1: - if ( !$this->checkPerm('indiscore') || !$this->checkPerm('indiscorep') ){ - $this->permission('indiscore'); - } - break; - case 2: - if (!$this->checkPerm('indiscore2') || !$this->checkPerm('indiscore2p') ){ - $this->permission('indiscore2'); - } - break; - case 3: - if (!$this->checkPerm('indiscore3') || !$this->checkPerm('indiscore3p') ){ - $this->permission('indiscore3'); - } - break; - } - - //Initialisation - $accesDist = true; - if (empty($nic)) { $nic = 0; } - if (empty($niveau)) { $niveau = 2; } - if (empty($plus)) { $plus = false; } - if ( !in_array($niveau, array(0,1,2,3,4,5)) ) { $niveau = 2; } - $tabRet = array(); - debugLog('I',"IndiScore demandée pour $siren en niveau $niveau",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)>9 || (substr($siren,0,9)*1)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $tDeb = microtime(true); - require_once 'Metier/scores/classMScores.php'; - $tabRet = calculIndiScore($siren, $nic, $accesDist, $niveau); - $duree = round(microtime(true)-$tDeb,3); - debugLog('W', "indiscore DUREE = $duree s", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - /* - if ($plus) { - $this->setSurveillance($siren, $this->tabInfoUser['email'], 'Indiscore+', 'privileges', false, 0); - $this->setSurveillance($siren, $this->tabInfoUser['email'], 'Indiscore+', 'score'); - if ($this->tabInfoUser['idClient']==89) - $this->setSurveillance($siren, $this->tabInfoUser['email'], 'Indiscore+', 'annonces'); - }*/ - $output = new Indiscore(); - foreach($tabRet as $key => $value){ - if ($key=='paiements'){ - $parMont = $value['parMont']; - $parTrim = $value['parTrim']; - $tabMont = array(); - foreach($parMont as $parMontK => $parMontV){ - $paiementMont = new IndiscorePaiementDetail(); - $paiementMont->id = $parMontK; - $paiementMont->nb = $parMontV['nb']; - if (array_key_exists('d=180', $parMontV)){ - $paiementMont->d180 = $parMontV['d=180']; - } - if (array_key_exists('d=150', $parMontV)){ - $paiementMont->d150 = $parMontV['d=150']; - } - if (array_key_exists('d=120', $parMontV)){ - $paiementMont->d120 = $parMontV['d=120']; - } - if (array_key_exists('d=90', $parMontV)){ - $paiementMont->d90 = $parMontV['d=90']; - } - if (array_key_exists('d=60', $parMontV)){ - $paiementMont->d60 = $parMontV['d=60']; - } - if (array_key_exists('d=30', $parMontV)){ - $paiementMont->d30 = $parMontV['d=30']; - } - $tabMont[] = $paiementMont; - } - $tabTrim = array(); - foreach($parTrim as $parTrimK => $parTrimV){ - $paiementTrim = new IndiscorePaiementDetail(); - $paiementTrim->id = $parTrimK; - $paiementTrim->nb = $parTrimV['nb']; - if (array_key_exists('d=180', $parTrimV)){ - $paiementTrim->d180 = $parTrimV['d=180']; - } - if (array_key_exists('d=150', $parTrimV)){ - $paiementTrim->d150 = $parTrimV['d=150']; - } - if (array_key_exists('d=120', $parTrimV)){ - $paiementTrim->d120 = $parTrimV['d=120']; - } - if (array_key_exists('d=90', $parTrimV)){ - $paiementTrim->d90 = $parTrimV['d=90']; - } - if (array_key_exists('d=60', $parTrimV)){ - $paiementTrim->d60 = $parTrimV['d=60']; - } - if (array_key_exists('d=30', $parTrimV)){ - $paiementTrim->d30 = $parTrimV['d=30']; - } - $tabTrim[] = $paiementTrim; - } - $paiement = new IndiscorePaiement(); - $paiement->parMont = $tabMont; - $paiement->parTrim = $tabTrim; - $output->paiements = $paiement; - - } elseif ($key=='Notes_Structure') { - - $notesStructure = new IndiscoreNotesStructure(); - $notesStructure->activite = $value['activite']; - $notesStructure->naf4 = $value['naf4']; - $notesStructure->age = $value['age']; - $notesStructure->capital = $value['capital']; - $notesStructure->effectif = $value['effectif']; - $notesStructure->fj = $value['fj']; - $notesStructure->localite = $value['localite']; - $notesStructure->singulier = $value['singulier']; - $output->Notes_Structure = $notesStructure; - - } elseif ($key=='tabBilans') { - - $tabRet = array(); - foreach($value as $bilan) - { - $element = new ListeBilans(); - $element->dateProvPartenaire = $bilan['dateProvPartenaire']; //@todo : date - $element->dateInsert = $bilan['dateInsert']; //@todo : date - $element->typeBilan = $bilan['typeBilan']; - $element->dureeExercice = $bilan['dureeExercice']; - $element->dateExercice = $bilan['dateExercice']; //@todo : date - $element->millesime = $bilan['millesime']; - $element->dateExercicePre = $bilan['dateExercicePre']; //@todo : date - $element->dureeExercicePre = $bilan['dureeExercicePre']; - $element->monnaie = $bilan['monnaie']; - $element->source = $bilan['source']; - $tabRet[] = $element; - } - $output->tabBilans = $tabRet; - - } elseif ($key=='tabBilan') { - - $tabRet = array(); - foreach($value as $bilan){ - $resultBilan = new Bilan(); - $tabPoste = array(); - foreach($bilan as $bilan_key => $bilan_value){ - if(!in_array($bilan_key, array('SIREN', 'DATE_FRAICHE_BILAN', - 'DATE_CLOTURE', 'DATE_CLOTURE_PRE', 'DUREE_MOIS', - 'DUREE_MOIS_PRE', 'MONNAIE', 'CONSOLIDE', 'MONNAIE_ORI', - 'MONNAIE_LIV_UNITE', 'SOURCE', 'devise'))){ - $resultPoste = new BilanPoste(); - $resultPoste->id = $bilan_key; - $resultPoste->val = $bilan_value; - $tabPoste[] = $resultPoste; - } else { - $resultBilan->$bilan_key = $bilan_value; - } - } - $resultBilan->POSTES = $tabPoste; - $tabRet[] = $resultBilan; - } - $output->tabBilan = $tabRet; - - } elseif ($key=='tabInfosNotations') { - - $infosNotation = new IndiscoreInfosNotations(); - $infosNotation->SituationFinanciere = $value['SituationFinanciere']; - $infosNotation->Notation = $value['Notation']; - $infosNotation->ProbabiliteDefaut = $value['ProbabiliteDefaut']; - $output->tabInfosNotations = $infosNotation; - - } elseif ($key=='tabImportExport') { - - $tabRet = array(); - foreach($value as $element){ - $importExport = new IndiscoreImportExport(); - $importExport->importExport = $element['importExport']; - $importExport->annee = $element['annee']; - $importExport->rangNational = $element['rangNational']; - $importExport->deptSiege = $element['deptSiege']; - $tabRet[] = $importExport; - } - $output->tabImportExport = $tabRet; - - } elseif ($key=='tabCommentaires') { - - $tab = array(); - foreach($value as $comment) { - require_once 'i18n/cleanchar.php'; - $tab[] = fixEncoding($comment); - } - $output->tabCommentaires = $tab; - - } elseif ($key=='tabVariables') { - - $tab = $value['CA_Y']; - $tabVar = array(); - foreach($tab as $varName => $varVal){ - $var = new CA_Y(); - $var->id = $varName; - $var->val = $varVal; - $tabVar[] = $var; - } - $variables = new IndiscoreVariables(); - $variables->CA_Y = $tabVar; - $output->tabVariables = $variables; - - } elseif ($key=='Bilans') { - - $tab = array(); - foreach($value as $item) - { - $objet = new IndiscoreBilans(); - $objet->Millesime = $item['Millesime']; - $objet->FraisPerso = $item['FraisPerso']; - $objet->CA = $item['CA']; - $objet->EBE = $item['EBE']; - $objet->TxInvest = $item['TxInvest']; - $objet->TxEndett = $item['TxEndett']; - $objet->DettesCT = $item['DettesCT']; - $objet->FraisFi = $item['FraisFi']; - $objet->BFR = $item['BFR']; - $objet->FR = $item['FR']; - $objet->FondsPr = $item['FondsPr']; - $objet->DelaiCli = $item['DelaiCli']; - $objet->DelaiFour = $item['DelaiFour']; - $tab[] = $objet; - } - $output->$key = $tab; - } else { - $output->$key = $value; - } - } - $this->wsLog('indiscore',$siren); - return $output; - } - - /** - * Liste de tous les évènements enregistrés à l'INSEE pour une entreprise - * @param string $siren Siren de l'entreprise - * @param string $nic - * @param integer $position - * @param integer $nbRep - * @return InseeReturn - **/ - public function getListeEvenements($siren, $nic=0, $position=0, $nbRep=1000) - { - $this->authenticate(); - $this->permission('eveninsee'); - - //Initialisation - if (empty($nic)) { $nic = 0; } - if (empty($position)) { $position = 0; } - if (empty($nbRep) || $nbRep>1000) { $nbRep = 1000; } - - debugLog('I',"Liste des évènements pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $evens = $iInsee->getEvenements($siren, $nic, $position, $nbRep); - $tabRet = array(); - if (count($evens)>0) { - foreach ($evens as $nb=>$even) { - $iEven = new InseeEven(); - $iEven->Nic = $even['nic']; - $iEven->Siege = $even['siege']; - $iEven->SiretAss = $even['siretAssocie']; - $iEven->TypeSiretAss = $even['typeSiretAss']; - $iEven->EvenCode = $even['codeEven']; - $iEven->EvenLib = $even['libEven']; - $iEven->EvenLibDet = $even['libEvenDet']; - $iEven->EvenDate = $even['dateEven']; //@todo : date - $iEven->DateInfo = $even['dateMAJ']; //@todo : date - $tabRet[] = $iEven; - } - } - - debugLog('I', 'Nb évènements retournés = '. count($tabRet), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('evenements',$siren); - $output = new InseeReturn(); - $output->nbReponses = count($tabRet); // @todo : retrouver le nombre total d'évenements - $output->result = $tabRet; - return $output; - } - - - /** - * Recherche - * @param EntrepriseCriteres $criteres - * @param integer $position Position de parcours des résultats retournées (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées lors d'une requête (20 par défaut) - * @param integer $maxRep Nombre de réponses maximum pouvant être retournées lors d'une requête (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (false par défaut) - * @param boolean $avecSiren Seulement les entités sirénées (false par défaut) - * @return SearchEntrepriseReturn - */ - public function searchEntreprise($criteres, $position = 0, $nbRep = 20, $maxRep = 200, $pertinence = false, $avecSiren = false) - { - $this->authenticate(); - - if (empty($position)) { $position = 0;} - if (empty($nbRep)) { $nbRep = 20; } - if (empty($maxRep)) { $maxRep = 200; } - - //Enregistrement des accès à la requête getIdentite - Zend_Registry::get('WsLogger')->info(__FUNCTION__."- ip : ". - $_SERVER['REMOTE_ADDR'].", login:".$_SERVER['PHP_AUTH_USER']); - - require_once 'i18n/cleanchar.php'; - - $entCriteres = new EntrepriseCriteres(); - $entCriteres = $criteres; - $identifiant = $entCriteres->identifiant; - $typeId = ''; - - //Detection autour de l'identifiant - if ($identifiant!='') { - $len = strlen($identifiant); - //Numéro WALDEC - if (strtoupper(substr($identifiant,0,1))=='W') { - $typeId = 'W'; - //Code ISIN - } elseif ($len==12){ - $typeId = 'I'; - //TVA Intracommunautaire - } elseif (in_array(substr($identifiant,0,2), - array('AT','BE','BG','CY','CZ','DE','DK','EE','EL','ES', - 'FI','GB','HU','IE','IT','LT','LU','LV','MT','NL','PL', - 'PT','RO','SE','SI','SK'))){ - //"La recherche par numéro de TVA n'est pas encore possible sur ce pays !"; - //Pour la france - } elseif (substr($identifiant,0,2)=='FR') { - $typeId = 'S'; - if ($len==13) $identifiant = substr($identifiant,4,9); - else $identifiant = ''; - //Numéro RC - } elseif (preg_match('/A|B|C|D/i', $identifiant)) { - $typeId = 'R'; - //Siren normal on enleve tout ce qui n'est pas un chiffre - } else { - $typeId = 'S'; - } - } - - $adresse = trim($entCriteres->adresse); - - //Détection Tel/Fax uniquement - if ( empty($typeId) - && empty($entCriteres->raisonSociale) - && empty($adresse) - && empty($entCriteres->codePostal) - && empty($entCriteres->ville) ){ - $typeId = 'TEL'; - } - - if (in_array($typeId, array('R', 'W', 'I'))){ - - $O = $this->searchAutreId( - $typeId, - $identifiant, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - $entCriteres->codePostal - ); - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } elseif ($typeId == 'S'){ - - $O = $this->searchSiren( - $identifiant, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - $entCriteres->codePostal - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } elseif ($typeId == 'TEL'){ - - $O = $this->searchTelFax( - $entCriteres->telFax, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } else { - - $O = $this->searchNomAdr( - cleanstring($entCriteres->raisonSociale), - cleanstring($entCriteres->adresse), - $entCriteres->codePostal, - cleanstring($entCriteres->ville), - empty($entCriteres->siege) ? false : $entCriteres->siege, - empty($entCriteres->actif) ? false : $entCriteres->actif, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - empty($pertinence) ? false : $pertinence, - empty($avecSiren) ? false : $avecSiren, - $entCriteres->naf - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - } - } - - /** - * Recherche d'entreprise par dirigeants - * @param DirigeantCriteres $criteres - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchDirReturn - */ - public function searchDir($criteres, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - $nom = $criteres->nom; - $prenom = $criteres->prenom; - $dateNaiss = $criteres->dateNaiss; - $lieuNaiss = $criteres->lieuNaiss; - $pertinence = $criteres->pertinence; - - debugLog('I',"Recherche Dirigeant de $nom, $prenom, $dateNaiss, $lieuNaiss (Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($prenom)) $prenom = ''; - if (empty($dateNaiss)) $dateNaiss = ''; - if (empty($lieuNaiss)) $lieuNaiss = ''; - if (empty($pertinence)) $pertinence = false; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - - $iInsee = new MInsee(); - $etabs = $iInsee->rechercheDir($nom, $prenom, '', $dateNaiss, $lieuNaiss, $deb, $nbRep, $maxRep, $pertinence); - - $tabRet = array(); - foreach ($etabs['reponses'] as $etab) { - $item = new EntrepriseDirItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = $iInsee->getLibelleFJ($etab['FJ']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($iInsee->getLibelleNaf($etab['NafEtab'])); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($iInsee->getLibelleNaf($etab['NafEnt'])); - - // Dirigeant - $item->DirRs = prepareString($etab['DirRs']); - $item->DirNom = prepareString($etab['DirNom']); - $item->DirPrenom = prepareString($etab['DirPrenom']); - $item->DirNomUsage = prepareString($etab['DirNomUsage']); - $item->DirDateEffet = $etab['DirDateEffet']; - $item->DirFonction = prepareString($etab['DirFonction']); - $item->DirDepart = $etab['DirDepart']; - $tabRet[] = $item; - } - - if ($etabs['nbReponses']==0){ - debugLog('W', "Aucun résultat pour cette recherche !", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - } - - $search = new SearchDirReturn(); - $search->nbReponses = $etabs['nbReponses']; - $search->nbReponsesTotal = $etabs['nbReponsesTotal']; - $search->result = $tabRet; - return $search; - } - - /** - * Recherche d'entreprise ou d'établissement par un autre Identifiant - * - * @param string $typeId I=Code Isin, W=N°Waldec (Associations) ou R=N°RC (Registre Greffe) - * @param string $identifiant Identifiant recherché - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchAutreId($typeId, $identifiant, $deb=0, $nbRep=20, $maxRep=200, $dep=0) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - if (empty($dep)) $dep = 0; - - $typeId = substr(trim(strtoupper($typeId)),0,1); - - if ($typeId!='I' && $typeId!='W' && $typeId!='R') { - debugLog('I',"Type d'identifiant $typeId inexistant",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1021'); - } - $tabRet = array(); - debugLog('I',"Recherche par identifiant $typeId de $identifiantavec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if ($typeId=='W' || $typeId=='R') - { - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('AUTRE', $identifiant, $deb, $nbRep, $maxRep, $dep); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } else { - $iBourse = new MBourse($siren); - $siren = $iBourse->getCodeSiren($identifiant); - return $this->searchSiren($siren, $deb, $nbRep, $maxRep); - } - } - - - /** - * Recherche d'entreprise ou d'établissement par leur TEL FAX - * - * @param string $telFax Téléphone ou fax de l'établissement (ex: 0175438010) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchTelFax($telFax, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - - $tabRet = array(); - debugLog('I',"Recherche par Tel/Fax de $telFax avec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - //$assocs=$this->iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $nbRep, $pertinence); - /** @todo A FAIRE **/ - if (strlen($telFax)<10 || strlen($telFax)>14) { - debugLog('W', "Tel/Fax $telFax incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1011'); - } - - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('TEL', $telFax, $deb, $nbRep, $maxRep); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } - - - /** - * Recherche entreprise par nom et adresse - * @param string $raisonSociale Raison Sociale ou Enseigne ou Sigle - * @param string $adresse Adresse de l'entreprise, du type : 3 rue des Plantes - * @param string $codePostal Code postal (ex: 75014) - * @param string $ville Ville - * @param boolean $siege Limitation de la recherche au sièges (si true) - * @param boolean $actif Limitation aux établissements actifs (si true) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (si true) - * @param boolean $avecSiren Ne proposer que les entités sirénées - * @param string $ape_etab - * @return SearchReturn - */ - public function searchNomAdr($raisonSociale, $adresse='', $codePostal='', $ville='', $siege=false, $actif=false, $deb=0, $nbRep=20, $maxRep=200, $pertinence=false, $avecSiren=false, $ape_etab='') - { - $this->authenticate(); - - debugLog('I',"Recherche Entreprise de $raisonSociale, $adresse, $codePostal $ville (Siège=$siege / Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($adresse)) $adresse = ''; - if (empty($codePostal)) $codePostal = ''; - if (empty($ville)) $ville = ''; - if (empty($siege)) $siege = false; - if (empty($actif)) $actif = false; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($pertinence)) $pertinence = false; - if (empty($avecSiren)) $avecSiren = false; - if (empty($ape_etab)) $ape_etab = ''; - - $iInsee = new MInsee(); - $etabs = $iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren, $ape_etab); - - $result = new SearchReturn(); - $tabRet = array(); - foreach ($etabs['reponses'] as $etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = strtr($etab['Nom'],'/*',' '); - $reponse->Nom2 = $etab['Nom2']; - $reponse->Sigle = $etab['Sigle']; - $reponse->Enseigne = $etab['Enseigne']; - $reponse->Adresse = $etab['Adresse']; - $reponse->Adresse2 = $etab['Adresse2']; - $reponse->CP = $etab['CP']; - $reponse->Ville = $etab['Ville']; - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = $iInsee->getLibelleFJ($etab['FJ']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = $iInsee->getLibelleNaf($etab['NafEtab']); // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = $iInsee->getLibelleNaf($etab['NafEnt']); - - $tabRet[] = $reponse; - } - - $fp=@fopen(LOG_PATH.'/recherches.log','a'); - - $siretTrouve = 0; - if ($etabs['nbReponses']==0) { - - $str="NbRep=0, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - @fwrite($fp, $str.EOL); - @fclose($fp); - debugLog('I', "rechercheEtab : AUCUN RESULTAT, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = count($tabRet); - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - - return $result; - - } - - if ($etabs['nbReponses']==1) $siretTrouve=$etabs['reponses'][0]['Siret']; - $str="NbRep=".$etabs['nbReponses'].", S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - @fwrite($fp, $str.EOL); - @fclose($fp); - debugLog('I', "rechercheEtab : ".$etabs['nbReponses']." RESULTATS, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = $etabs['nbReponses']; - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - return $result; - } - - /** - * Recherche d'entreprise ou d'établissement par leur identifiant SIREN ou SIRET - * @param string $siret Siren ou Siret de l'entreprise ou de l'établissement sur 9 ou 14 chiffres significatifs - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param integer $dep Département - * @return SearchReturn - */ - public function searchSiren($siret, $deb=0, $nbRep=20, $maxRep=200, $dep=0) - { - $this->authenticate(); - - debugLog('I',"Recherche par Siret de $siret (dep=$dep) avec un maximum de $maxRep réponses pour la tranche $deb à $nbRep",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ( strlen($siret)!=14 && strlen($siret)!=9 ){ - debugLog('W', "Siren/Siret $siret incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($dep)) $dep = 0; - - $nbReponsesTotal = $nbReponses = 0; - - $siren = substr($siret,0,9); - if (strlen($siret)==14) $nic = substr($siret,9,5); - elseif (strlen($siret)== 9) $nic = ''; - - $iInsee = new MInsee(); - - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep, $dep); - if (count($rep['reponses'])==0 && $dep>0) { - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep); - } - $etabs = $rep['reponses']; - $tabRet = array(); - foreach ($etabs as $nb=>$etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = prepareString($etab['FJLib']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $reponse; - } - $nbReponsesTotal = $rep['nbReponsesTotal']; - $nbReponses = $rep['nbReponses']; - - /** Si le siren est valide, on part chez Infogreffe **/ - if (count($tabRet)==0 && $iInsee->valideSiren($siren)) { - $iGeffes = new MGreffes(); - $etab = $iGeffes->getIdentite($siren); - if ($etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString($etab['Nom']); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = utf8_encode(prepareString(utf8_decode($etab['FJLib']))); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; - $reponse->NafEtabLib = prepareString($etab['NafEtabLib']); - $reponse->NafEnt = $etab['NafEnt']; - $reponse->NafEntLib = prepareString($etab['NafEntLib']); - - $tabRet[] = $reponse; - $nbReponses = 1; - $nbReponsesTotal = 1; - - } else { - $iDb = new WDB(); - $iDb->insert('siren_inexistants', - array( 'siren'=>$siren, - 'nic'=>$nic, - 'dep'=>$dep, - 'login'=>$this->tabInfoUser['login'], - 'client'=>$this->tabInfoUser['idClient'], - 'dateInsert'=>date('YmdHis'))); - $nbReponses = 0; - $nbReponsesTotal = 0; - } - } - - $output = new SearchReturn(); - $output->nbReponses = $nbReponses; - $output->nbReponsesTotal = $nbReponsesTotal; - $output->result = $tabRet; - - return $output; - } - - - - - /** - * Retourne la fiche d'identité simplifié d'une entreprise avec son numéro de TVA. - * - * @param string $siren Identifiant Siren de l'entreprise - * @return TvaReturn - */ - public function getTVA($siren) - { - $this->authenticate(); - - //Initialisation - $siren = trim($siren); - debugLog('I',"TVA demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren); - debugLog('I', "Après getIdentiteEntreprise($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($entrep)) - { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - debugLog('I', "Avant MTva($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iTva = new MTva($siren); - if ($iTva->vatDefined) $tva=$iTva->vatNumber; - else $tva='N/A'; - debugLog('I', "Après MTva($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $output = new TvaReturn(); - $output->id = $entrep['id']; - $output->AutreId = $entrep['AutreId']; - $output->Nom = $entrep['Nom']; - $output->Sigle = $entrep['Sigle']; - $output->Enseigne = $entrep['Enseigne']; - $output->Adresse = $entrep['Adresse']; - $output->Adresse2 = $entrep['Adresse2']; - $output->CP = $entrep['CP']; - $output->Ville = $entrep['Ville']; - $output->Siren = $entrep['Siren']; - $output->Tva = $tva; - - debugLog('I', "TVA retournée = $tva (".$entrep['Nom'].')', __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('tva',$siren); - - return $output; - } - - /** - * Retourne tout ou patie des informations règlementées sur l'entreprise - * - * @param string $siren SIREN de l'entreprise - * @param mixed $id Id du communiqué - * @return InfosRegReturn - */ - public function getInfosReg( $siren, $id = false ) - { - $this->authenticate(); - - //Initialisation - if (empty($id)) $id = false; - $tabRet = array(); - $siren = substr($siren,0,9); - - debugLog('I',"Infos règlementées demandées pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - $iBourse = new MBourse($siren); - $anns = $iBourse->getInfosReg($siren, $id); - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if ( empty($anns) ){ - debugLog('W', "Aucune info règlementée pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1030'); - } - - foreach ($anns as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if ($id == false) { - $infos = new InfosReg(); - $infos->id = $ann['id']; - $infos->source = $ann['source']; - $infos->DateParution = $ann['DateParution']; //@todo : date - $infos->raisonSociale = $ann['raisonSociale']; - $infos->titre = $ann['titre']; - $infos->pj = $ann['pj']; - $infos->url = $ann['url']; - $infos->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $tabRet[] = $infos; - } else { - $infos = new InfosReg(); - $infos->id = $ann['id']; - $infos->source = $ann['source']; - $infos->DateParution = $ann['DateParution']; //@todo : date - $infos->raisonSociale = $ann['raisonSociale']; - $infos->titre = $ann['titre']; - $infos->communique = $ann['communique']; - $infos->communiqueHtml = $ann['communiqueHtml']; - $infos->pj = $ann['pj']; - $infos->url = $ann['url']; - $infos->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $tabRet[] = $infos; - } - } - debugLog('I', 'Nb infos retournés = '. count($anns), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('infosreg',$siren,$id); - $output = new InfosRegReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne les informations boursières de l'entreprise - * @param string $siren SIREN de l'entreprise - * @return InfosBourse - */ - public function getInfosBourse($siren) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - debugLog('I',"Infos bourse demandées pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $siren = substr($siren,0,9); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($bourse)) { - debugLog('W', "Aucune info bourse pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1030'); - } - - $result = new InfosBourse(); - $result->Siren = $bourse['siren']; - $result->RaisonSociale = $bourse['raisonSociale']; - $result->Adresse = $bourse['adresse']; - $result->Effectif = $bourse['effectif']; - $result->CodeSicovam = $bourse['code_sicovam']; - $result->CodeMnemo = $bourse['code_mnemo']; - $result->CodeBloomberg = $bourse['code_bloomberg']; - $result->CodeDatastream = $bourse['code_datastream']; - $result->Isin = $bourse['code_isin']; - $result->CodeRic = $bourse['code_ric']; - $result->DateIntroduction = $bourse['dateIntroduction']; //@todo : date - $result->DateDerAG = $bourse['dateDerAG']; //@todo : date - $result->DateRadiation = $bourse['dateRadiation']; //@todo : date - $result->AutreIsin = $bourse['autre_isin']; - $result->EligibleSRD = $bourse['eligibleSRD']; - $result->EligiblePEA = $bourse['eligiblePEA']; - $result->Tel = $bourse['tel1']; - $result->Tel2 = $bourse['tel2']; - $result->Fax = $bourse['fax1']; - $result->Fax2 = $bourse['fax2']; - $result->Web = $bourse['web']; - $result->Mail = $bourse['mail']; - - $result->Marche = $bourse['marche']; - $result->Description = $bourse['description']; - $result->Secteur = $bourse['secteur']; - $result->Activite = $bourse['activite']; - $result->ActiviteDet = $bourse['activiteDet']; - - $result->placeCotation = $bourse['placeCotation']; - $result->nombreTitres = $bourse['nombreTitres']; - $result->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $result->derCoursDate = $bourse['date']; //@todo : date - $result->derCoursCloture = $bourse['close']; - $result->derCoursOuverture = $bourse['open']; - $result->derCoursPlusHaut = $bourse['high']; - $result->derCoursPlusBas = $bourse['low']; - - $result->derCoursVolume = $bourse['volume']; - $result->coursMin = $bourse['coursMin']; - $result->coursMoy = $bourse['coursMoy']; - $result->coursMax = $bourse['coursMax']; - - $this->wsLog('bourse',$siren,$id); - return $result; - } - - /** - * Ajout d'une surveillance - * - * @param string $siret Siret/Siren - * @param string $email Adresse email du client - * @param string $ref Référence de la surveillance - * @param string $source Type de source en surveillance (insee, annonces, bilans, actes, privileges, score, dirigeants) - * @param boolean $delete Suppression de la ligne - * @param integer $encoursClient Encours demandé par le client - * @return SetSurveillanceReturn - */ - public function setSurveillance($siret, $email, $ref='', $source='annonces', $delete=false, $encoursClient=0) - { - $this->authenticate(); - $source = strtolower($source); - switch ($source) { - case 'insee': - $this->permission('survinsee'); - break; - case 'bilans': - $this->permission('survbilan'); - break; - case 'actes': - $this->permission('survactes'); - break; - case 'privileges': - $this->permission('survpriv'); - break; - case 'dirigeants': - $this->permission('survdirigeants'); - break; - case 'score': - $this->permission('survscore'); - break; - case 'annonces': - default: - $this->permission('survannonce'); - break; - } - - //Initialisation - if (empty($ref)) $ref = ''; - if (empty($delete)) $delete = false; - if (empty($encoursClient)) $encoursClient = false; - $tabRet = array(); - $siren = substr($siret,0,9); - $nic = substr($siret,9,5); - - debugLog('I',"setSurveillances(siret=$siret, email=$email, ref=$ref, source=$source, delete=$delete)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren, $nic); - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - switch ($source) { - case 'insee': - case 'annonces': - case 'bilans': - case 'actes': - case 'privileges': - case 'dirigeants': $encoursClient=0; break; - case 'score': $encoursClient=$encoursClient*1; break; - default: $source='annonces'; break; - } - $tabUpdate = array( - 'source' => $source, - 'login' => $login, - 'email' => $email, - 'siren' => $siren, - 'nic' => $nic, - 'ref' => $ref, - 'encoursClient' => $encoursClient, - 'rs' => $tabIdentite['Nom'], - 'cp' => $tabIdentite['CP'], - 'ville' => $tabIdentite['Ville'], - ); - if ($delete) { - $tabUpdate = array_merge( - $tabUpdate, - array('dateSuppr'=>date('Y-m-d')) - ); - } else { - $tabUpdate = array_merge( - $tabUpdate, - array('dateAjout'=>date('Y-m-d'), 'dateSuppr'=>0) - ); - } - if ( $delete || !$iDb->insert('surveillances_site', $tabUpdate)) { - /*@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "debugSurv pour $login", - "source='$source' AND login='$login' AND email='$email' AND siren=$siren AND nic=$nic AND ref='$ref'".EOL. - print_r($tabUpdate,true).EOL - );*/ - if (!$iDb->update('surveillances_site', $tabUpdate, "source='$source' AND login='$login' AND email='$email' AND siren=$siren AND nic=$nic AND ref='$ref'")) - { - $this->sendError('1030'); - } - } - $output = new SetSurveillanceReturn(); - $output->result = true; - return $output; - } - - /** - * getSurveillances - * @param SurveillancesFiltre $filtre - * @param integer $deb - * @param integer $nbRep - * @return SurveillancesReturn - */ - public function getSurveillances($filtre, $position=0, $nbRep=100) - { - $this->authenticate(); - - //Initialisation - if (empty($position)) $position = 0; - if (empty($nbRep)) $nbRep = 100; - - $error = new ErrorType(); - $tabRet = array(); - $siren = substr($filtre->siret,0,9); - $nic = substr($filtre->siret,9,5); - - $tri = strtolower(trim($filtre->tri)); - switch ($tri){ - case 'ref': $orderBy='ORDER BY ref'; break; - case 'dateAjout': $orderBy='ORDER BY dateAjout'; break; - case 'dateDerEnvoi':$orderBy='ORDER BY dateDerEnvoi'; break; - case 'rs': $orderBy='ORDER BY rs'; break; - case 'cp': $orderBy='ORDER BY cp'; break; - case 'ville': $orderBy='ORDER BY ville'; break; - default: $orderBy='ORDER BY siren'; break; // siren ou vide ou autre - } - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - - if ($filtre->detail) { - $strSelect = 'source, email, siren, nic, ref, dateAjout, encoursClient, rs, cp, ville, dateDerEnvoi'; - } else { - $strSelect = 'source, email, siren, nic, ref, dateAjout, dateDerEnvoi'; - } - if ($filtre->source!='') $strSource = " AND source='$filtre->source' "; - else $strSource = ''; - - if ($siren>0) $strSiren = " AND siren=$siren "; - else $strSiren = ''; - - // Il faut compter le nombre de siren au total - $tabTmp = $iDb->select('surveillances_site', 'count(*) as nb', "login='$login' AND dateSuppr=0 $strSiren $strSource", false, MYSQL_ASSOC); - $nbRepTot = $tabTmp[0]['nb']; - - $tabTmp = $iDb->select('surveillances_site', $strSelect, "login='$login' AND dateSuppr=0 $strSiren $strSource $orderBy LIMIT $position,$nbRep", false, MYSQL_ASSOC); - foreach ($tabTmp as $i=>$tabSurv){ - if (!$filtre->detail){ - $liste = new Surveillance(); - $liste->source = $tabSurv['source']; - $liste->email = $tabSurv['email']; - $liste->siren = $tabSurv['siren']; - $liste->nic = $tabSurv['nic']; - $liste->ref = utf8_decode($tabSurv['ref']); - $liste->dateAjout = $tabSurv['dateAjout']; //@todo : date - $liste->dateDerEnvoi = $tabSurv['dateDerEnvoi']; //@todo : date - $tabRet[] = $liste; - } else { - if (trim($tabSurv['rs'])<>'') { - $rs = $tabSurv['rs']; - $cp = $tabSurv['cp']; - $ville = $tabSurv['ville']; - } else { - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($tabSurv['siren'], $tabSurv['nic']); - $rs = $tabIdentite['Nom']; - $cp = $tabIdentite['CP']; - $ville = $tabIdentite['Ville']; - $iDb->update('surveillances_site', array( - 'rs' => $rs, - 'cp' => $cp, - 'ville' => $ville), - "login='$login' AND dateSuppr=0 AND siren=".$tabSurv['siren']." AND nic=".$tabSurv['nic']." $strSource", - false - ); - } - $liste = new Surveillance(); - $liste->source = $tabSurv['source']; - $liste->email = $tabSurv['email']; - $liste->siren = $tabSurv['siren']; - $liste->nic = $tabSurv['nic']; - $liste->ref = utf8_decode($tabSurv['ref']); - $liste->dateAjout = $tabSurv['dateAjout']; //@todo : date - $liste->encoursClient = $tabSurv['encoursClient']; - $liste->rs = $rs; - $liste->cp = $cp; - $liste->ville = $ville; - $liste->dateDerEnvoi = $tabSurv['dateDerEnvoi']; //@todo : date - $tabRet[] = $liste; - } - } - $output = new SurveillancesReturn(); - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbRepTot; - $output->result = $tabRet; - return $output; - } - - /** - * Retourne le bilan correspondant au siren, à l'exercice et au formalisme demandé - * - * @param string $siren Siren de l'entreprise - * @param string $millesime Date du bilan au format AAAAMMJJ - * @param string $typeBilan N:Réel Normal, S:Réel Simplifié, C:Consolidé - * @param string $ref Référence S&D obligatoire - * @return Bilan - */ - public function getBilan($siren, $millesime, $typeBilan='N', $ref='') - { - $this->authenticate(); - - //Initialisation - if (empty($typeBilan)) { $typeBilan = 'N'; } - if (empty($ref)) { $ref = ''; } - - debugLog('I',"Bilan $millesime $typeBilan demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $millesime = WDate::dateT('Ymd','d/m/Y',$millesime); - $mBil = new MBilans($siren); - $tabBilan = $mBil->getBilan($millesime, $typeBilan, $ref, true); - - $resultBilan = new Bilan(); - $tabPoste = array(); - foreach($tabBilan as $key => $value){ - if(!in_array($key, array('SIREN', 'DATE_FRAICHE_BILAN', - 'DATE_CLOTURE', 'DATE_CLOTURE_PRE', 'DUREE_MOIS', - 'DUREE_MOIS_PRE', 'MONNAIE', 'CONSOLIDE', 'MONNAIE_ORI', - 'MONNAIE_LIV_UNITE', 'SOURCE', 'devise'))){ - $resultPoste = new BilanPoste(); - $resultPoste->id = $key; - $resultPoste->val = $value; - $tabPoste[] = $resultPoste; - } else { - $resultBilan->$key = $value; - } - } - $this->wsLog('bilan',$siren, $millesime.':'.$typeBilan.':'.$ref); - $resultBilan->POSTES = $tabPoste; - return $resultBilan; - } - - /** - * Retourne la liste des bilans disponible pour une entreprise - * - * @param string $siren Siren de l'entreprise - * @return ListeBilansReturn - */ - public function getListeBilans($siren) - { - $this->authenticate(); - //Initialisation - $tabRet = array(); - debugLog('I',"Liste des Bilans demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $mBil = new MBilans($siren); - $tabBilans = $mBil->listeBilans(true); - foreach($tabBilans as $bilan) - { - $element = new ListeBilans(); - $element->dateProvPartenaire = $bilan['dateProvPartenaire']; //@todo : date - $element->dateInsert = $bilan['dateInsert']; //@todo : date - $element->typeBilan = $bilan['typeBilan']; - $element->dureeExercice = $bilan['dureeExercice']; - $element->dateExercice = $bilan['dateExercice']; //@todo : date - $element->millesime = $bilan['millesime']; - $element->dateExercicePre = $bilan['dateExercicePre']; //@todo : date - $element->dureeExercicePre = $bilan['dureeExercicePre']; - $element->monnaie = $bilan['monnaie']; - $element->source = $bilan['source']; - $tabRet[] = $element; - } - - debugLog('I', 'Nb Bilans retournés = '. count($tabBilans), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('listebilans', $siren); - $output = new ListeBilansReturn(); - $output->nbReponses = count($tabRet); - $output->result = $tabRet; - return $output; - } - - /** - * Vérifie si un siren existe en base Scores & Décisions - * @param string $siren Siren de l'entité - * @return boolean - */ - public function isSirenExistant($siren) - { - $this->authenticate(); - - //Initialisation - $tabRet = array(); - $siren = trim(substr($siren,0,9)); - $result = false; - debugLog('I',"Siren existant demandée pour siren $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $entrep = $iInsee->sirenExiste($siren); - if (empty($entrep)) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $result = false; - } else { - debugLog('I', "Siren $siren présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $result = true; - } - $this->wsLog('sirenExiste',$siren); - return $result; - } - - /** - * Retourne une annonce en fonction de sa référence - * - * @param string $siren Siren de l'entreprise - * @param string $dateAnnee - * @param integer $numParution - * @param integer $numAnnonce - * @return RechercheAnnonceReturn - */ - public function rechercheAnnonce($source, $dateAnnee, $numParution, $numAnnonce) - { - $this->authenticate(); - - //Initialisation - $tabRet = array(); - - debugLog('I',"Annonce précise demandée pour $source, $dateAnnee, $numParution, $numAnnonce",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($dateAnnee)==4) $annee = $dateAnnee; - else $annee = substr($dateAnnee,0,4); - - $iDb = new WDB('jo'); - - switch (strtoupper($source)) - { - case 'BODA': - case 'BODB': - case 'BODC': - $lettre = substr(strtoupper($source),3,1); - if ($annee<2005) { - if ($lettre=='A'){ $numJAL=1; } - elseif ($lettre=='B'){ $numJAL=200; } - else{ break; } - $anneeDeb = $annee.'0101'; - $anneeFin = $annee.'1231'; - $res = $iDb->select('historiques.entrep e, texte t', - "$annee AS Annee_Parution, e.NOBOD AS Num_Parution, e.NOANN AS Num_Annonce, e.NOPAGE AS Num_Page, e.`DATE` AS Date_Parution, e.DEPT AS Departement, e.CODTRI AS Tribunal_Code, 'I' AS typeAnnonce, CONCAT(e.NOANN,' - ',t.annonceTxt) AS annonce", - "e.JAL=$numJAL AND e.NOBOD=$numParution AND e.`DATE` BETWEEN $anneeDeb AND $anneeFin AND e.NOANN=$numAnnonce AND e.ANBASE=t.annonceNum", false, MYSQL_ASSOC); - } else { - $res = $iDb->select('bodacc', - 'Bodacc_Annee_Parution AS Annee_Parution, Bodacc_Num AS Num_Parution, Num_Annonce, Bodacc_Page AS Num_Page, Bodacc_Date_Parution AS Date_Parution, Tribunal_Dept AS Departement, Tribunal_Code, typeAnnonce, annonce', - "Bodacc_Code='$lettre' AND Bodacc_Annee_Parution=$annee AND Bodacc_Num=$numParution AND Num_Annonce=$numAnnonce", false, MYSQL_ASSOC); - } - break; - case 'ASSO': - $res = $iDb->select('asso', - 'YEAR(Date_Parution) AS Annee_Parution, Num_Parution, Num_Annonce, pageDeb AS Num_Page, Date_Parution, Departement, codTribunal AS Tribunal_Code, typeAnnonce, Annonce_Html AS annonce', "Date_Parution BETWEEN '$annee-01-01' AND '$annee-12-31' AND Num_Parution=$annee".sprintf('%04d', $numParution)." AND Num_Annonce=$numAnnonce", - false, MYSQL_ASSOC); - break; - case 'BALO': - $res = $iDb->select('balo', - "YEAR(Date_Parution) AS Annee_Parution, Num_Parution, Num_Affaire AS Num_Annonce, '' AS Num_Page, Date_Parution, '' AS Departement, '' AS Tribunal_Code, 'Insertion' AS typeAnnonce, Annonce_Html AS annonce", "Date_Parution BETWEEN '$annee-01-01' AND '$annee-12-31' AND Num_Parution=$numParution AND Num_Affaire=$numAnnonce", - false, MYSQL_ASSOC); - break; - } - - if (count($res)>0) - { - $iBodacc = new MBodacc(); - foreach ($res as $i => $etab) - { - $annonces = new AnnonceItem(); - $annonces->Annee_Parution = $etab['Annee_Parution']; - $annonces->Num_Parution = $etab['Num_Parution']; - $annonces->Num_Annonce = $etab['Num_Annonce']; - $annonces->Num_Page = $etab['Num_Page']; - $annonces->Date_Parution = $etab['Date_Parution']; //@todo : date - $annonces->Departement = $etab['Departement']; - $annonces->Tribunal_Code = $etab['Tribunal_Code']; - $annonces->Tribunal = $iBodacc->getTribunalNom($etab['Tribunal_Code']); - $annonces->Type_Annonce = $etab['typeAnnonce']; - $annonces->Annonce = strip_tags(strtr( - html_entity_decode($etab['annonce']), - array('>'=>'>','&'=>'&','<'=>'<','’'=>"'") - )); - - $tabRet[] = $annonces; - } - } - $nbTot = count($tabRet); - $output = new RechercheAnnonceReturn(); - $output->criteres = $criteres; - $output->nbReponses = $nbTot; - $output->nbReponsesTotal = $nbTot; - $output->result = $tabRet; - return $output; - } - - /** - * getRatios - * @param string $siren - * @param string $page - * @return RatiosReturn - */ - public function getRatios($siren, $page='ratios') - { - global $tva, $mBil, $tabBilan, $efftr, $tabInfla; - $tabFormules = include APPLICATION_PATH . '/../library/Metier/scores/Variables/CacheTabFormules.php'; - require_once 'Metier/scores/Variables/configMRatios.php'; - $this->authenticate(); - //Initialisation - if (empty($page)) $page = 'ratios'; - $tabRatiosInfos = $tabRatiosSecteurs = $tabBilansR = array(); - $tabRatios2 = $tabRatiosEvol = array(); - $tabRet = array(); - debugLog('I',"Liste des Ratios demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - debugLog('I',"Liste des Ratios demandée pour $siren avant getIdentiteEntreprise",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteEntreprise($siren,0,0,false,false); - debugLog('I',"Liste des Ratios demandée pour $siren après getIdentiteEntreprise",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $naf = $tabIdentite['NafEnt']; - $nafLib = $tabIdentite['NafEntLib']; - $efftr = $tabIdentite['Effectif']*1; - $fj = $tabIdentite['FJ']; - - $mBil = new MBilans($siren); - $tabBilans = $mBil->listeBilans(true); - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getRatios sur $siren", print_r($tabBilans, true)); - $nbBilans = count($tabBilans); - $tabBilan = $tabBil = array(); - if ($nbBilans>0){ - $tabRatios = calculRatios($tabBilans, $tabIdentite, true); - } - $nbRatios = count($tabRatios); - debugLog('I',"Liste des Ratios demandée pour $siren après calculRatios ($nbRatios)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - /** Tableau d'infos sur les formules **/ - $tabBorneMin = $tabBorneMax = array(); - foreach ($tabFormules as $formule) { - $id = $formule['id']*1; - $libelle = $formule['libelle']; - $unite = $formule['unite']; - $commentaires = $formule['commentaires']; - $tabFormulesInfos[$id] = $formule; //Pour la gestion des unités des ratios secteur - $ratiosInfos = new RatiosInfos(); - $ratiosInfos->id = 'r'.$id; - $ratiosInfos->libelle = $formule['libelle']; - $ratiosInfos->unite = $formule['unite']; - $ratiosInfos->commentaires = $formule['commentaires']; - $tabRatiosInfos[] = $ratiosInfos; - $tabBorneMin[$id] = $formule['borneMin']; - $tabBorneMax[$id] = $formule['borneMax']; - } - - $tabAnnees = array(); - foreach ($tabRatios as $i=>$R) { - - //Informations sur le bilan - $bilansInfos = new RatiosBilansInfos(); - $bilansInfos->dateCloture = $tabBilan[$i]['DATE_CLOTURE']; //@todo : date - $bilansInfos->duree = $tabBilan[$i]['DUREE_MOIS']; - $bilansInfos->devise = $tabBilan[$i]['MONNAIE']; - $bilansInfos->typeBilan = $tabBilan[$i]['CONSOLIDE']; - $bilansInfos->unite = 'U'; - if ( substr($tabBilan[$i]['DATE_CLOTURE'],0,4)>1900 ){ - $tabAnnees[$i]=substr($tabBilan[$i]['DATE_CLOTURE'],0,4); - } - - $tabRatiosEntrep = array(); - $tabRatiosEntrepEvol = array(); - foreach ( $R as $Ridx=>$Rmont ){ - - if ($Rmont<>'NS') { - if ( $tabBorneMin[$Ridx]<>'' && $Rmont<$tabBorneMin[$Ridx] ){ - $Rmont='<'.$tabBorneMin[$Ridx]; - } elseif ( $tabBorneMax[$Ridx]<>'' && $Rmont>$tabBorneMax[$Ridx] ){ - $Rmont='>'.$tabBorneMax[$Ridx]; - } - } - - // RatiosEntrep - $ratiosEntrep = new Ratios(); - if (substr($Rmont,0,1)=='N' || substr($Rmont,0,1)=='<' || substr($Rmont,0,1)=='>'){ - $ratiosEntrep->id = 'r'.$Ridx; - $ratiosEntrep->val = $Rmont; - } else { - $ratiosEntrep->id = 'r'.$Ridx; - $ratiosEntrep->val = round($Rmont,2); - } - $tabRatiosEntrep[] = $ratiosEntrep; - - if (($tabBilan[$i]['CONSOLIDE']=='S' && isset($tabRatios[$i+1])&&($tabBilan[$i+1]['CONSOLIDE']=='S'||($tabBilan[$i+1]['CONSOLIDE']=='N'&&$tabBilan[$i+1]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) || - ($tabBilan[$i]['CONSOLIDE']=='N'&&isset($tabRatios[$i+1])&&($tabBilan[$i+1]['CONSOLIDE']=='N'||($tabBilan[$i+1]['CONSOLIDE']=='S'&&$tabBilan[$i+1]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) - ) - $Rmont=(($R[$Ridx]-$tabRatios[$i+1][$Ridx])*100)/abs($tabRatios[$i+1][$Ridx]); - elseif ( ($tabBilan[$i]['CONSOLIDE']=='S'&&isset($tabRatios[$i+1])&&($tabBilan[$i+2]['CONSOLIDE']=='S'||($tabBilan[$i+2]['CONSOLIDE']=='N'&&$tabBilan[$i+2]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) - || ($tabBilan[$i]['CONSOLIDE']=='N'&&isset($tabRatios[$i+1])&&($tabBilan[$i+2]['CONSOLIDE']=='N'||($tabBilan[$i+2]['CONSOLIDE']=='S'&&$tabBilan[$i+2]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) - ) - $Rmont=(($R[$Ridx]-$tabRatios[$i+2][$Ridx])*100)/abs($tabRatios[$i+2][$Ridx]); - else - $Rmont='NS'; - - // RatiosEntrepEvol - $ratiosEntrepEvol = new Ratios(); - if ($Rmont=='NS' || $Rmont<-800 || $Rmont>800){ - $ratiosEntrepEvol->id = 'r'.$Ridx; - $ratiosEntrepEvol->val = 'NS'; - } else { - $ratiosEntrepEvol->id = 'r'.$Ridx; - $ratiosEntrepEvol->val = number_format($Rmont,2,',',' '); - } - $tabRatiosEntrepEvol[] = $ratiosEntrepEvol; - } - $bilansInfos->RatiosEntrep = $tabRatiosEntrep; - $bilansInfos->RatiosEntrepEvol = $tabRatiosEntrepEvol; - $tabBilansR[] = $bilansInfos; - } - - debugLog('I',"Liste des Ratios demandée pour $siren après EVOLUTION",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - // Tableau des ratios secteurs - - if (strlen($naf)>4) $strNaf = " AND naf5='$naf' "; - else $strNaf = " AND naf4='$naf' "; - $strAnnees = implode(',', $tabAnnees); - - $tabRatiosSecteurs = array(); - - $tabAnnees = array_unique($tabAnnees); - - if ( count($tabAnnees)>0 ) - { - $iDb = new WDB('jo'); - $tabTmp = $iDb->select('ratios_secteurs', - 'annee, naf5, naf4, id, (montant/nombre) AS ratio, nombre', - "1 $strNaf AND annee IN ($strAnnees) ORDER BY annee DESC, id ASC", - false, MYSQL_ASSOC); - - $nbRatiosSec = 0; - foreach($tabAnnees as $annee) - { - $ratiosSecteur = new RatiosSecteur(); - $ratiosSecteur->annee = $annee; - foreach ($tabTmp as $tmp) - { - if ($tmp['annee']== $annee) - { - $Ridx = $tmp['id']; - if ($tmp['nombre']>$nbRatiosSec){ - $nbRatiosSec = $tmp['nombre']; - } - - $unite = $tabFormulesInfos[$Ridx]['unite']; - if ($unite=='EUR'){ - $montant = round($tmp['ratio']*1000); - } else { - $montant = round($tmp['ratio']); - } - if ($tabBorneMin[$Ridx]<>'' && $montant<$tabBorneMin[$Ridx]){ - $montant='<'.$tabBorneMin[$Ridx]; - } elseif ($tabBorneMax[$Ridx]<>'' && $montant>$tabBorneMax[$Ridx]){ - $montant='>'.$tabBorneMax[$Ridx]; - } - - $ratiosSecteurListe = new Ratios(); - if (substr($montant,0,1)=='N' || substr($montant,0,1)=='<' || substr($montant,0,1)=='>'){ - $ratiosSecteurListe->id = 'r'.$Ridx; - $ratiosSecteurListe->val = $montant; - } else { - $ratiosSecteurListe->id = 'r'.$Ridx; - $ratiosSecteurListe->val = round($montant,2); - } - $ratiosSecteur->liste[] = $ratiosSecteurListe; - } - } - $tabRatiosSecteurs[] = $ratiosSecteur; - } - } - - //$tabRatiosSecteurs=array(count($tabTmp), "1 $strNaf AND annee IN ($strAnnees) ORDER BY annee DESC, id ASC"); - - $output = new RatiosReturn(); - $output->Nom = $tabIdentite['Nom']; - $output->NafEnt = $tabIdentite['NafEnt']; - $output->NafEntLib = $tabIdentite['NafEntLib']; - $output->FJ = $fj; - $output->FJ_lib = $tabIdentite['FJ_lib']; - $output->Siren = $siren; - $output->NbEntNaf = $nbRatiosSec; - $output->BilansInfos = $tabBilansR; - $output->RatiosInfos = $tabRatiosInfos; - $output->RatiosSecteur = $tabRatiosSecteurs; - - debugLog('I',"Liste des Ratios demandée pour $siren RETURN",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->wsLog($page, $siren); - return $output; - - } - - /** - * getRapport - * @param string $siren Siren de l'entreprise - * @param integer $niveau Niveau du rapport 1, 2 ou 3 - * @param integer $id Identifiant interne S&D de l'entreprise - * @param boolean $plus Si true, mise en surveillance privilèges - * @return Rapport - */ - public function getRapport($siren, $niveau=3, $id=0, $plus=false) - { - $this->authenticate(); - if (empty($niveau)) $niveau = 3; - if (empty($id)) $id = 0; - $result = new Rapport(); - $filtre = 0; - $idAnn = 0; - - $accesDist=true; - $nivComment=2; - if ($niveau==1){ - $result->Indiscore = $this->getIndiScore($siren, 0, $accessDist, $nivComment, $plus); - } elseif ($niveau==2) { - $result->Identite = $this->getIdentite($siren, $id=0); - $result->Indiscore = $this->getIndiScore($siren, 0, $accessDist, $nivComment, $plus); - $result->Dirigeants = $this->getDirigeants($siren, false); - $result->Liens = $this->getLiens($siren, true); - $result->Ratios = $this->getRatios($siren, $page="rapport$niveau"); - } elseif ($niveau==3) { - $result->Identite = $this->getIdentite($siren, $id=0); - $result->Indiscore = $this->getIndiScore($siren, 0, $accessDist, $nivComment, $plus); - $result->Dirigeants = $this->getDirigeants($siren, false); - $result->Liens = $this->getLiens($siren, true); - $result->Ratios = $this->getRatios($siren, $page="rapport$niveau"); - $result->Annonces = $this->getAnnonces($siren, $filtre, $idAnn); - } - return $result; - } - - /** - * Retourne la liste des banques connues pour une entreprise - * @param string $siren Siren de l'entreprise - * @return BanquesReturn - **/ - public function getBanques($siren) - { - $this->authenticate(); - - //Initialisation - $iDb = new WDB('sdv1'); - $tabRet = array(); - debugLog('I',"Liste des banques demandée pour siren $siren", - __LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (intval($siren)<=1000) { - $this->sendError('1010'); - } - - $res=$iDb->select('banques', 'codeBanque, codeGuichet, libBanqueGuichet, precis, dateSource*1 AS dateSource', "siren=$siren", false, MYSQL_ASSOC); - $tmp=$iDb->select('fedRib', "codeBanque, codeGuichet, CONCAT(libBanque,' ',libGuichet) AS libBanqueGuichet, 0 AS precis, IF (dateInfo='0000-00-00', dateDispo*1, dateInfo*1) AS dateSource", "siren=$siren", false, MYSQL_ASSOC); - $res=array_merge($res, $tmp); - foreach ($res as $tabBanque){ - $dateSource=$tabBanque['dateSource']; - $codBanque=$tabBanque['codeBanque']; - $codGuichet=$tabBanque['codeGuichet']; - $libBanque=trim($tabBanque['libBanqueGuichet']); - $found=false; - $adrBanque1=$adrBanque2=$adrBanqueCP=$adrBanqueVille=''; - - if ($codBanque>0 && $codGuichet>0 && - $dateSource>(date('Y')-4)*10000+101 && - $dateSourceselect('insee.BDF_Etabs b, insee.BDF_Guichets g', - 'g.bdfFibCodeEtab AS banque, g.bdfFibCodeGuichet AS guichet, b.bdfFibDenom40 AS nomBanque, b.bdfFibDenom10 AS sigleBanque, g.bdfFibDenom20 AS nomGuichet, g.bdfFibAdresse1 AS adresse1, g.bdfFibAdresse2 AS adresse2, g.bdfFibAdresse3 AS adresse3, g.CP, g.Ville', "g.bdfFibCodeEtab=$codBanque AND g.bdfFibCodeGuichet=$codGuichet AND b.bdfFibCodeEtab=g.bdfFibCodeEtab", - false, MYSQL_ASSOC); - if (isset($tmp[0])){ - $libBanque=trim($tmp[0]['nomBanque'].' '.$tmp[0]['nomGuichet']); - $adrBanque1=$tmp[0]['adresse1']; - $adrBanque2=trim($tmp[0]['adresse2'].' '.$tmp[0]['adresse3']); - $adrBanqueCP=$tmp[0]['CP']; - $adrBanqueVille=$tmp[0]['Ville']; - $found=true; - }; - } - if (!$found && $codBanque>0 && - $dateSource>(date('Y')-4)*10000+101 && - $dateSourceselect('insee.BDF_Etabs', "bdfFibCodeEtab AS banque, '' AS guichet, bdfFibDenom40 AS nomBanque, '' AS nomGuichet, '' AS adresse1, '' AS adresse2, '' AS adresse3, '' AS CP, '' AS Ville", "bdfFibCodeEtab=$codBanque", false, MYSQL_ASSOC); - if (isset($tmp[0])){ - $libBanque=trim($tmp[0]['nomBanque'].' '.$tmp[0]['nomGuichet']); - $adrBanque1=$tmp[0]['adresse1']; - $adrBanque2=trim($tmp[0]['adresse2'].' '.$tmp[0]['adresse3']); - $adrBanqueCP=$tmp[0]['CP']; - $adrBanqueVille=$tmp[0]['Ville']; - } else continue; - } else continue; - - $banque = new Banque(); - $banque->codeBanque = $codBanque; - $banque->codeGuichet = $codGuichet; - $banque->libBanque = $libBanque; - $banque->adresse1 = $adrBanque1; - $banque->adresse2 = $adrBanque2; - $banque->cp = $adrBanqueCP; - $banque->ville = $adrBanqueVille; - $tabRet[] = $banque; - } - debugLog('I',"Liste des banques pour siren $siren : ".count($tabRet).' banques',__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $this->wsLog('banque', $siren); - $output = new BanquesReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des compétences territoriales pour un établissement à une adresse donnée. - * @param string $siret Siret de l'établissement - * @param string $type Type de compétence (pre:prefectures et s/prefectures, jal;journaux d'annonces légales, tri:tribunaux, adm:administrateurs et mandataires judiciaires, hui:huissiers, cfe:centres de formalités des entreprises) - * @param string $codeInsee Code Insee de la commune de l'établissement - * @return ListeCompetencesReturn - */ - public function getListeCompetences($siret, $type, $codeInsee) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - $type = strtolower($type); - - debugLog('I',"Liste des compétences $type demandée pour la commune $codeInsee",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - $iBodacc = new MBodacc(); - $cp=$codeInsee*1; - $dep=false; - if (substr($codeInsee,0,2)=='2A' || substr($codeInsee,0,2)=='2B') - { - $dep=20; $cp=20000+(substr($codeInsee,2,3))*1; - } - elseif ($cp>0 && $cp<100) $dep=$cp; - elseif ($cp>970 && $cp<977) $dep=$cp; - elseif ($cp>999 && $cp<10000) $dep='0'.substr($cp,0,1); - elseif ($cp>=10000 && $cp<96000) $dep=substr($cp,0,2); - elseif ($cp>=99000) $dep=substr($cp,0,2); - elseif ($cp>=98000) $dep=substr($cp,0,3); - elseif ($cp>=97100 && $cp<97700) $dep=substr($cp,0,3); - - require_once 'i18n/cleanchar.php'; - - if ($type=='pre'){ - - $iDb = new WDB('jo'); - $tabTmp2 = $iDb->select('villes', 'DEP, COM, AR, CT', 'codeInsee='.$codeInsee, false, MYSQL_ASSOC); - $arrond = $tabTmp2[0]['AR']; - unset($iDb); - $iDb = new WDB('insee'); - $tabTmp2 = $iDb->select('insee_tabArrond', 'CHEFLIEU, ARTMAJ, NCC', "DEP='$dep' AND AR='$arrond'", false, MYSQL_ASSOC); - $nomSousPref = trim(strtr($tabTmp2[0]['ARTMAJ'],array('('=>'',')'=>'',' '=>'', "'"=>'')).' '.$tabTmp2[0]['NCC']); - unset($iDb); - $tabTmp = $iBodacc->getTribunauxParDep($dep); - foreach ($tabTmp as $i=>$tribunal) - { - if ($tribunal['triType']=='A' || $tribunal['triType']=='B') - { - $pref = levenshtein($tribunal['triNom'], 'PREFECTURE DE '.$nomSousPref); - $spref = levenshtein($tribunal['triNom'], 'SOUS PREFECTURE DE '.$nomSousPref); - - if ($tribunal['triType']=='B' && ($pref>7 || $spref>5)) continue; - - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType'].$typeP; - $competence->Nom = strtoupper($tribunal['triNom']); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper( - preg_replace('/ +/',' ',$tribunal['triAdrNum'].' '. - $tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '. - $tribunal['triAdrVoie'])); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $tribunal['triCommentaire']; - $tabRet[] = $competence; - - } - } - - } elseif ($type=='jal') { - - $tabTmp = $iBodacc->getJALparDep($dep); - foreach ($tabTmp as $i=>$comp) - { - $infos=''; - if (trim($comp['parution'])<>'') $infos.='Parution '.$comp['parution'].'. '; - if (trim($comp['aboAnnuel'])>0) $infos.='Abonnement Annuel : '.$comp['aboAnnuel'].' euros. '; - if (trim($comp['infos'])<>'') $infos.=$comp['infos']; - - $competence = new Competence(); - $competence->Id = 9000+$comp['id']*1; - $competence->IdSup = 0; - $competence->Code = ''; - $competence->Type = ''; - $competence->Nom = strtoupper($comp['nomJal']); - $competence->Siret = ''; - $competence->Adr = strtoupper($comp['adresse']); - $competence->AdrComp = ''; - $competence->CP = $comp['cp']; - $competence->Ville = strtoupper($comp['ville']); - $competence->CodeInsee = ''; - $competence->Tel = $comp['tel']; - $competence->Fax = $comp['fax']; - $competence->Web = $comp['siteWeb']; - $competence->Mail = $comp['email']; - $competence->Statut = 'Actif'; - $competence->DateCessation = ''; - $competence->Remarque = trim($infos); - $tabRet[] = $competence; - } - - } elseif ($type=='tri' || $type=='adm' || $type=='hui') { - - $tabTmp = $iBodacc->getTribunauxParCommune($codeInsee); - foreach ($tabTmp as $i=>$tribunal) - { - if (//$tribunal['triType']=='C' || - $tribunal['triType']=='G'// || - /*$tribunal['triType']=='I'*/) { - $idCA = $tribunal['triIdSup']; - $codeTGI = $tribunal['triCode']; - $code = strtoupper(substr($tribunal['triCode'],0,3)); - } - debugLog('D',"Liste des compétences $type demandée pour la commune $codeInsee ($dep) : ". - "Type=".$tribunal['triType'].', '. - "Code=".$tribunal[$codeTGI],__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($tribunal['triType']<>'E' && $tribunal['triType']<>'O' && - $tribunal['triType']<>'T' && $tribunal['triType']<>'R' && - $tribunal['triType']<>'N' && $tribunal['triType']<>'U' && - $tribunal['triType']<>'Z') - { - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType']; - $competence->Nom = strtoupper(cleanstring($tribunal['triNom'])); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper(cleanstring(preg_replace('/ +/',' ', - $tribunal['triAdrNum'].' '. - $tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '. - $tribunal['triAdrVoie']))); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $tribunal['triCommentaire']; - if ($tribunal['triNumGreffe']*1>0) - { - $competence->IdentifiantGreffe = $tribunal['triNumGreffe']; - } - $tabRet[] = $competence; - } - } - } - - if ($type=='adm') - { - $iInsee = new MInsee(); - $tabTmp = $iInsee->getMandataires(array($idCA), false); - $tabRet = array(); - $nbAff=0; - foreach ($tabTmp as $i=>$tribunal) - { /** @todo A revoir Debut **/ - if (stripos($tribunal['tribunal'], $code)!==false || - stripos($tribunal['tribunal'], 'SAINT')!==false) - { - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($tribunal['adresse']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $tribunal['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation'], - $competence->Remarque = $tribunal['contact']; - //,,,,Prenom,,,Statut,,,cp,ville,tel,fax,email,web,contact - $tabRet[] = $competence; - $nbAff++; - } - } - if ($nbAff==0) - { - foreach ($tabTmp as $i=>$tribunal) - { - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($tribunal['adresse']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $tribunal['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation'], - $competence->Remarque = $tribunal['contact']; - //,,,,Prenom,,,Statut,,,cp,ville,tel,fax,email,web,contact - $tabRet[] = $competence; - } - }/** @todo A revoir Fin : Lier correctement les mandataires à un TI principal **/ - } - elseif ($type=='hui') - { - $iInsee = new MInsee(); - $tabTmp = $iInsee->getHuissiers(array($codeTGI), false); - - $tabRet = array(); - $nbAff = 0; - foreach ($tabTmp as $i=>$tribunal) - { - $adr = $iInsee->structureVoie($tribunal['adresse']); - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($adr['num'].' '.$adr['adr_btq'].' '. - $adr['typeVoie'].' '.$adr['libVoie']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $adr['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation']; - $competence->Remarque = strtr($tribunal['contact'], - array( '
        '=>', ', '
        '=>', ', - '
        '=>', ', - )); - $tabRet[] = $competence; - } - $nbComp = count($tabTmp); - debugLog('I',"$nbComp compétences $type trouvées pour le tribunal $codeTGI",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } - elseif ($type=='cfe') - { - $tabTmp = $iBodacc->getTribunauxParCommune($codeInsee); - foreach ($tabTmp as $i=>$tribunal) - { - if ($tribunal['triType']=='C' || $tribunal['triType']=='O' || - $tribunal['triType']=='T' || $tribunal['triType']=='R' || - $tribunal['triType']=='N' || $tribunal['triType']=='U' || - $tribunal['triType']=='Z') - { - if (strlen($tribunal['triCommentaire'])==32 && - strpos($tribunal['triCommentaire'], ' ')===false) - $remarque=''; - else $remarque=$tribunal['triCommentaire']; - - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType']; - $competence->Nom = strtoupper($tribunal['triNom']); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper(preg_replace('/ +/',' ',$tribunal['triAdrNum'].' '.$tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '.$tribunal['triAdrVoie'])); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $remarque; - $tabRet[] = $competence; - } - } - } - $this->wsLog('competences',$siret,$type.'/'.$codeInsee); - $output = new ListeCompetencesReturn(); - $output->result = $tabRet; - $output->nbReponses = count($tabRet); - return $output; - } - - /** - * Retourne le statut du webservice - * @return StatusReturn - */ - public function status() - { - /* @todo tester les différents éléments qui peuvent conduire - * à un problème dans les services tel que la connexion à la - * base de données, l'accès FTP, l'accès HTTP, l'accès système de fichier - */ - - //Enregistrement des accès à la requête getIdentite - Zend_Registry::get('WsLogger')->info("status - ip:". - $_SERVER['REMOTE_ADDR'].", login:".$_SERVER['PHP_AUTH_USER']. - ", hash:".$_SERVER['PHP_AUTH_PW']); - - $error = new StatusReturn(); - //Test connexion à la base de données - $db = new WDB('jo'); - if (!$db) { - $error->statusCode = 9000; - $error->statusMsg = $this->listError['9000']; - } else { - $error->statusCode = 3000; - $error->statusMsg = $this->listError['3000']; - } - return $error; - } - -} - -?> \ No newline at end of file diff --git a/library/WsScore/Entreprise/v0.3/Types.php b/library/WsScore/Entreprise/v0.3/Types.php deleted file mode 100644 index f52d573e..00000000 --- a/library/WsScore/Entreprise/v0.3/Types.php +++ /dev/null @@ -1,3561 +0,0 @@ - 'ErrorType', - 'StatusReturn' => 'StatusReturn', - 'SearchReturn' => 'SearchReturn', - 'SearchEntrepriseReturn' => 'SearchEntrepriseReturn', - 'SearchDirReturn' => 'SearchDirReturn', - 'DirigeantsReturn' => 'DirigeantsReturn', - 'AnnoncesReturn' => 'AnnoncesReturn', - 'InseeReturn' => 'InseeReturn', - 'TvaReturn' => 'TvaReturn', - 'LiensReturn' => 'LiensReturn', - 'InfosRegReturn' => 'InfosRegReturn', - 'ListeBilansReturn' => 'ListeBilansReturn', - 'SetSurveillanceReturn' => 'SetSurveillanceReturn', - 'SurveillancesReturn' => 'SurveillancesReturn', - 'ListeEtablissementsReturn' => 'ListeEtablissementsReturn', - 'RatiosReturn' => 'RatiosReturn', - 'RechercheAnnonceReturn' => 'RechercheAnnonceReturn', - 'Identite' => 'Identite', - 'GeoInfos' => 'GeoInfos', - 'IdentiteBilan' => 'IdentiteBilan', - 'IdentiteBourse' => 'IdentiteBourse', - 'AutreSiren' => 'AutreSiren', - 'EntrepriseCriteres' => 'EntrepriseCriteres', - 'DirigeantCriteres' => 'DirigeantCriteres', - 'EntrepriseItem' => 'EntrepriseItem', - 'EntrepriseDirItem' => 'EntrepriseDirItem', - 'Etablissement' => 'Etablissement', - 'Dirigeant' => 'Dirigeant', - 'AnnonceFilter' => 'AnnonceFilter', - 'Annonce' => 'Annonce', - 'AnnonceEvenement' => 'AnnonceEvenement', - 'AnnonceNum' => 'AnnonceNum', - 'Actionnaire' => 'Actionnaire', - 'Participation' => 'Participation', - 'InseeEven' => 'InseeEven', - 'InfosReg' => 'InfosReg', - 'InfosBourse' => 'InfosBourse', - 'ListeBilans' => 'ListeBilans', - 'SurveillancesFiltre' => 'SurveillancesFiltre', - 'Surveillance' => 'Surveillance', - 'Bilan' => 'Bilan', - 'BilanPoste' => 'BilanPoste', - 'RechercheAnnonceCriteres' => 'RechercheAnnonceCriteres', - 'AnnonceItem' => 'AnnonceItem', - 'RatiosBilansInfos' => 'RatiosBilansInfos', - 'RatiosInfos' => 'RatiosInfos', - 'RatiosSecteur' => 'RatiosSecteur', - 'Ratios' => 'Ratios', - 'Rapport' => 'Rapport', - 'Indiscore' => 'Indiscore', - 'Scores' => 'Scores', - 'IndiscoreVariables' => 'IndiscoreVariables', - 'CA_Y' => 'CA_Y', - 'IndiscoreImportExport' => 'IndiscoreImportExport', - 'IndiscoreInfosNotations' => 'IndiscoreInfosNotations', - 'IndiscorePaiement' => 'IndiscorePaiement', - 'IndiscorePaiementDetail' => 'IndiscorePaiementDetail', - 'IndiscoreNotesStructure' => 'IndiscoreNotesStructure', - 'IndiscoreBilans' => 'IndiscoreBilans', - 'AdresseDomEnt' => 'AdresseDomEnt', - 'InfosIris' => 'InfosIris', - 'BanquesReturn' => 'BanquesReturn', - 'Banque' => 'Banque', - 'ListeCompetencesReturn' => 'ListeCompetencesReturn', - 'Competence' => 'Competence', - 'IdentiteProcol' => 'IdentiteProcol', - 'Organe' => 'Organe', - 'AutreSiret' => 'AutreSiret', -); \ No newline at end of file diff --git a/library/WsScore/Entreprise/v0.4/Entreprise.php b/library/WsScore/Entreprise/v0.4/Entreprise.php deleted file mode 100644 index b834fea1..00000000 --- a/library/WsScore/Entreprise/v0.4/Entreprise.php +++ /dev/null @@ -1,3313 +0,0 @@ -authenticate(); - $this->permission('identite'); - - //Initialisation - if (empty($id)) { $id = 0; } - $forceVerif = false; - - $tdeb = microtime(1); - $ligne = date('YmdHis').";$siret;Ws->getIdentite Avant ..."; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - debugLog('I',"Identités demandée pour siret $siret (id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if ($siren*1==0 && $id==0) { - $this->sendError('1010'); - } elseif ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren, $nic, $id, $forceVerif); - debugLog('I', "Après getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $duree = round(microtime(1)-$tdeb,3); - $ligne = date('YmdHis').";$siret;Ws->getIdentite juste apres iInsee->... ($duree s)"; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - if (empty($entrep)) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - - $identite = new Identite(); - $identite->id = $entrep['id']; - $identite->Siret = $entrep['Siret']; - $identite->SiretSiege = $entrep['SiretSiege']; - $identite->Siege = $entrep['Siege']; - $identite->AncienSiege = $entrep['AncienSiege']; - $identite->AncienSiegeDateFin = $entrep['AncienSiegeDateFin']; - $identite->TribunalCode = prepareString($entrep['Tribunal']); - $identite->TribunalLib = prepareString($entrep['TribunalLib']); - //'NumGreffe' = $entrep['numGreffe'], // Ajouté le 4 08 2009 - $identite->NumRC = $entrep['numRC']; // Ajouté le 4 08 2009 - $identite->Actif = $entrep['Actif']; - $identite->ActifEco = $entrep['ActifEco']; // Etab éco actif, ajout le 28/04/2011 - $identite->ActifEcoDate = $entrep['ActifEcoDate']; // Date si éco inactif et jur actif - $identite->ActifEcoType = $entrep['ActifEcoType']; // vide ou NPAI ou PFER ou ECOF - $identite->EntActiveRCS = $entrep['EntActiveRCS']; - $identite->AutreId = $entrep['AutreId']; - $identite->Source = $entrep['Source']; - $identite->SourceId = $entrep['SourceId']; - $identite->Isin = $entrep['Isin']; - $identite->Nom = prepareString(strtr($entrep['Nom'],'/*',' ')); - $identite->Nom2 = prepareString($entrep['Nom2']); - $identite->NomLong = prepareString($entrep['nomLong']); // Ajouté le 4 08 2009 - $identite->NomCommercial = prepareString($entrep['NomCommercial']); // Ajouté le 16 11 2010 - $identite->Siret = $entrep['Siret']; - $identite->Sigle = prepareString($entrep['Sigle']); - $identite->SigleLong = prepareString($entrep['sigleLong']); // Ajouté le 4 08 2009 - $identite->Enseigne = prepareString($entrep['Enseigne']); - $identite->EnseigneLong = prepareString($entrep['enseigneLong']); // Ajouté le 16 11 2010 - $identite->Adresse = prepareString($entrep['Adresse']); - $identite->Adresse2 = prepareString($entrep['Adresse2']); - $identite->AdresseNum = prepareString($entrep['AdresseNum']); - $identite->AdresseBtq = prepareString($entrep['AdresseBtq']); - $identite->AdresseVoie = prepareString($entrep['AdresseVoie']); - $identite->AdresseRue = prepareString($entrep['AdresseRue']); - $identite->CP = $entrep['CP']; - $identite->Ville = prepareString($entrep['Ville']); - $identite->Pays = prepareString($entrep['Pays']); // Ajouté le 18 02 2008 - $identite->PaysIso2 = $entrep['PaysIso2']; - $identite->AdresseDom = $entrep['AdresseDom']; - - $tabAdresseDomEnt = array(); - if (isset($entrep['AdresseDomEnt']) && count($entrep['AdresseDomEnt'])>0){ - foreach ($entrep['AdresseDomEnt'] as $element){ - $adresseDomEnt = new AdresseDomEnt(); - $adresseDomEnt->siren = $element['siren']; - $adresseDomEnt->nom = $element['nom']; - $tabAdresseDomEnt[] = $adresseDomEnt; - } - } - $identite->AdresseDomEnt = $tabAdresseDomEnt; - - $identite->AdresseDomNb = $entrep['AdresseDomNb']; - $identite->Civilite = $entrep['Civilite']; - $identite->NbEtab = $entrep['NbEtab']; - $identite->Tel = prepareString($entrep['Tel']); - $identite->Fax = prepareString($entrep['Fax']); - $identite->Web = prepareString($entrep['Web']); - $identite->Mail = prepareString($entrep['Mail']); - $identite->GeoLat = $entrep['GeoLat']; - $identite->GeoLon = $entrep['GeoLon']; - $identite->GeoPrecis = $entrep['GeoPrecis']; - - $geoInfos = new GeoInfos(); - $geoInfos->CUCS = $entrep['GeoInfos']['CUCS']; - $geoInfos->NCUCS = $entrep['GeoInfos']['NCUCS']; - $geoInfos->ZRU = $entrep['GeoInfos']['ZRU']; - $geoInfos->NZRU = $entrep['GeoInfos']['NZRU']; - $geoInfos->ZFU = $entrep['GeoInfos']['ZFU']; - $geoInfos->NZFU = $entrep['GeoInfos']['NZFU']; - $geoInfos->ZUS = $entrep['GeoInfos']['ZUS']; - $geoInfos->NZUS = $entrep['GeoInfos']['NZUS']; - $geoInfos->AFR = $entrep['GeoInfos']['AFR']; - $geoInfos->NAFR = $entrep['GeoInfos']['NAFR']; - $geoInfos->ZRR = $entrep['GeoInfos']['ZRR']; - $geoInfos->NZRR = $entrep['GeoInfos']['NZRR']; - $identite->GeoInfos = $geoInfos; - - $identite->TvaNumero = $entrep['TvaNumero']; - $identite->TvaAttribue = $entrep['TvaAttribue']; - $identite->FJ = $entrep['FJ']; - $identite->FJ_Lib = $entrep['FJ_lib']; - $identite->FJ2 = $entrep['FJ2']; // Ajouté le 4 08 2009 - $identite->FJ2_Lib = $entrep['FJ2_Lib']; // Ajouté le 4 08 2009 - $identite->Siren = $entrep['Siren']; - $identite->Nic = $entrep['Nic']; - $identite->NafEnt = $entrep['NafEnt']; - $identite->NafEntLib = $entrep['NafEntLib']; - $identite->NafEtab = $entrep['NafEtab']; - $identite->NafEtabLib = $entrep['NafEtabLib']; - $identite->NaceEtab = $entrep['NaceEtab']; - $identite->NaceEnt = $entrep['NaceEnt']; - $identite->Nafa = $entrep['APRM']; - $identite->NafaLib = prepareString($entrep['APRM_Lib']); - $identite->NumRM = $entrep['NumRM']; - $identite->Activite = $entrep['Activite']; - $identite->Capital = $entrep['Capital']; - $identite->CapitalDev = $entrep['CapitalDev']; - $identite->CapitalLib = $entrep['CapitalLib']; // Ajouté le 18 02 2008 - $identite->CapitalType = prepareString($entrep['CapitalType']); // Ajouté le 4 08 2009 - $identite->DateCreaEt = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEt']); - $identite->DateCreaEn = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEn']); - $identite->DateClotEt = $entrep['DateClotEt']; //@todo : date - $identite->DateImmat = $entrep['dateImmat']; // Ajouté le 4 08 2009 - $identite->DateRadiation = $entrep['dateRad']; // Ajouté le 4 08 2009 - //'DateMajRCS' = $entrep['DateMajRCS'], // Ajouté le 4 08 2009 - $identite->EffEnTr = $entrep['EffEnTr']; - $identite->EffEnTrLib = $entrep['EffEnTrLib']; - $identite->Effectif = $entrep['Effectif']; - $identite->EffEtTr = $entrep['EffEtTr']; // Ajout le 11 08 2010 - $identite->EffEtTrLib = $entrep['EffEtTrLib']; // Ajout le 11 08 2010 - $identite->EffectifEtab = $entrep['EffectifEtab']; // Ajout le 11 08 2010 - $identite->Dept = $entrep['Dept']; - $identite->codeCommune = prepareString($entrep['codeCommune']); - $identite->AnneeEffEn = $entrep['AnneeEffEn']; - $identite->AnneeEffEt = $entrep['AnneeEffEt']; - $identite->AnneeTCA = $entrep['AnneeTCA']; - $identite->TrancheCA = $entrep['TrancheCA']; - $identite->TrancheCALib = $entrep['TrancheCALib']; - $identite->TrancheCAType = $entrep['TrancheCAType']; - $identite->dir1Code = $entrep['dir1Code']; - $identite->dir1Titre = prepareString($entrep['dir1Titre']); - $identite->dir1NomPrenom = prepareString($entrep['dir1NomPrenom']); - $identite->dir1DateFct = prepareString($entrep['dir1DateFct']); //@todo : date - $identite->dir1DateNaiss = $entrep['dir1DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir1LieuNaiss = prepareString($entrep['dir1LieuNaiss']); // Ajouté le 4 08 2009 - $identite->dir2Code = $entrep['dir2Code']; - $identite->dir2Titre = prepareString($entrep['dir2Titre']); - $identite->dir2NomPrenom = prepareString($entrep['dir2NomPrenom']); - $identite->dir2DateFct = $entrep['dir2DateFct']; //@todo : date - $identite->dir2DateNaiss = prepareString($entrep['dir2DateNaiss']); //@todo : date // Ajouté le 4 08 2009 - $identite->dir2LieuNaiss = prepareString($entrep['dir2LieuNaiss']); // Ajouté le 4 08 2009 - $identite->Rivoli = $entrep['Rivoli']; - - $identite->InfosIris->codIris = $entrep['InfosIris']['codIris']; - $identite->InfosIris->codComIris = $entrep['InfosIris']['codComIris']; - $identite->InfosIris->libIris = prepareString($entrep['InfosIris']['libIris']); - $identite->InfosIris->typIris = prepareString($entrep['InfosIris']['typIris']); - $identite->InfosIris->evoIris = $entrep['InfosIris']['evoIris']; - $identite->InfosIris->trIris = $entrep['InfosIris']['trIris']; - $identite->InfosIris->grdQuartier = $entrep['InfosIris']['grdQuartier']; - $identite->NatureActivite = $entrep['NatureActivite']; // Nature de l'activité - $identite->OrigineCreation = $entrep['OrigineCreation']; // Origine de la création - $identite->TypeExploitation = $entrep['TypeExploitation']; - $identite->Auxiliaire = $entrep['Auxiliaire']; // 1=Auxiliaire / 0=Non auxiliaire - $identite->Saisonnalite = $entrep['Saisonnalite']; // P=Activité permanente / S=Activité saisonnière - $identite->SurfaceMagasin = $entrep['ACTISURF']*1; // 0=N/D, 1=inf. à 300m2,2=300 à 400m2, 3=400 à 2500m2, 4=sup. à 2500m2 - $identite->SituationJuridique = $entrep['SituationJuridique']; - $identite->Bilan->Millesime = $entrep['bilanAnnee']; - $identite->Bilan->Cloture = $entrep['bilanDate']; //@todo : date - $identite->Bilan->Duree = $entrep['bilanMois']; - $identite->Bilan->Devise = $entrep['bilanDevise']; - $identite->Bilan->Capital = $entrep['bilanDA']; - $identite->Bilan->CA = $entrep['bilanFL']; - $identite->Bilan->CAestime = $entrep['bilanFLestime']; - $identite->Bilan->Resultat = prepareString($entrep['bilanHN']); - $identite->Bilan->Effectif = $entrep['bilanYP']; - $identite->Bourse->placeCotation = $bourse['placeCotation']; - $identite->Bourse->nombreTitres = $bourse['nombreTitres']; - $identite->Bourse->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $identite->Bourse->derCoursDate = $bourse['date']; //@todo : date - $identite->Bourse->derCoursCloture = $bourse['close']; //@todo : date - - $tabAutreSiren = array(); - if (isset($entrep['AutreSiren'])) { - $autreSiren = new AutreSiren(); - $autreSiren->siren = $entrep['AutreSiren']['listeSiren']['siren']; - $autreSiren->type = $entrep['AutreSiren']['listeSiren']['type']; - $tabAutreSiren[] = $autreSiren; - } - $identite->AutreSiren = $tabAutreSiren; - - $tabAutreSiret = array(); - if (count($entrep['AutreSiret'])) { - foreach($entrep['AutreSiret'] as $type => $item) { - $autreSiret = new AutreSiret(); - $autreSiret->type = $type; - $autreSiret->siren = $item['siren']; - $autreSiret->nic = $item['nic']; - $autreSiret->apeEtab = $item['apeEtab']; - $autreSiret->codeEve = $item['codeEve']; - $autreSiret->dateEve = $item['dateEve']; - $autreSiret->adrL1 = $item['adrL1']; - $autreSiret->adrL2 = $item['adrL2']; - $autreSiret->adrL3 = $item['adrL3']; - $autreSiret->adrL4 = $item['adrL4']; - $autreSiret->adrL5 = $item['adrL5']; - $autreSiret->adrL6 = $item['adrL6']; - $autreSiret->adrL7 = $item['adrL7']; - $autreSiret->depCom = $item['depCom']; - $autreSiret->rivoli = $item['rivoli']; - $autreSiret->siege = $item['siege']; - $autreSiret->destinat = $item['destinat']; - $autreSiret->typEtab = $item['typeEtab']; - $autreSiret->origine = $item['origine']; - $tabAutreSiret[] = $autreSiret; - } - } - $identite->AutreSiret = $tabAutreSiret; - - $identite->DateMajINSEE = $entrep['DateMajINSEE']; //@todo : date - $identite->DateMajRCS = $entrep['DateMajRCS']; //@todo : date - $identite->DateMajBILAN = $entrep['bilanDateMaj']; //@todo : date - $identite->DateMajANN = $entrep['dateMajANN']; //@todo : date - $identite->DateMajID = $entrep['dateMajIdentite']; //@todo : date - //'importExport' = $entrep['importExport'], - - if (preg_match('/NAF4/i', $this->tabInfoUser['pref'])) - { - $entrep2 = $iInsee->getNaf4($siren, $nic, $id); - $identite->Naf4Ent = $entrep2['apen4']; - $identite->Naf4Etab = $entrep2['apet4']; - $identite->Naf4EntLib = prepareString($entrep2['apen4_lib']); - $identite->Naf4EtabLib = prepareString($entrep2['apet4_lib']); - } - - debugLog('I', 'Etablissement retourné = '. $entrep['Nom'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('identite',$siret,$id); - $duree=round(microtime(1)-$tdeb,3); - $ligne=date('YmdHis').";$siret;Ws->getIdentite APRES ($duree s) !!!"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - - return $identite; - } - - /** - * Retourne les informations identitaires de l'entreprise ou de l'établissement demandé - * @param string $siret Siren de l'entreprise ou siret de l'établissement - * @param integer $id Identifiant S&D de l'établissement - * @return IdentiteProcol Fiche d'identité de l'établissement - */ - public function getIdentiteProcol($siret, $id=0, $forceVerif=false) - { - $this->authenticate(); - $this->permission('idprocol'); - - debugLog('I',"Identité AGS demandée pour siret $siret (id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if (intval($siren)==0 && $id==0) { - $this->sendError('1010'); - } elseif ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren, $nic, $id, $forceVerif); - debugLog('I', "Après getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $duree = round(microtime(1)-$tdeb,3); - $ligne = date('YmdHis').";$siret;Ws->getIdentite juste apres iInsee->... ($duree s)"; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - if (empty($entrep)) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - - $identiteProcol = new IdentiteProcol(); - - //Element identite - $identite = new Identite(); - $identite->id = $entrep['id']; - $identite->Siret = $entrep['Siret']; - $identite->SiretSiege = $entrep['SiretSiege']; - $identite->Siege = $entrep['Siege']; - $identite->TribunalCode = $entrep['Tribunal']; - $identite->TribunalLib = $entrep['TribunalLib']; - $identite->NumRC = $entrep['numRC']; // Ajouté le 4 08 2009 - $identite->Actif = $entrep['Actif']; - $identite->EntActiveRCS = $entrep['EntActiveRCS']; - $identite->AutreId = $entrep['AutreId']; - $identite->Source = $entrep['Source']; - $identite->SourceId = $entrep['SourceId']; - $identite->Isin = $entrep['Isin']; - $identite->Nom = strtr($entrep['Nom'],'/*',' '); - $identite->Nom2 = $entrep['Nom2']; - $identite->NomLong = $entrep['nomLong']; // Ajouté le 4 08 2009 - $identite->NomCommercial = $entrep['NomCommercial']; // Ajouté le 16 11 2010 - $identite->Siret = $entrep['Siret']; - $identite->Sigle = $entrep['Sigle']; - $identite->SigleLong = $entrep['sigleLong']; // Ajouté le 4 08 2009 - $identite->Enseigne = $entrep['Enseigne']; - $identite->EnseigneLong = $entrep['enseigneLong']; // Ajouté le 16 11 2010 - $identite->Adresse = $entrep['Adresse']; - $identite->Adresse2 = $entrep['Adresse2']; - $identite->AdresseNum = $entrep['AdresseNum']; - $identite->AdresseBtq = $entrep['AdresseBtq']; - $identite->AdresseVoie = $entrep['AdresseVoie']; - $identite->AdresseRue = $entrep['AdresseRue']; - $identite->CP = $entrep['CP']; - $identite->Ville = $entrep['Ville']; - $identite->Pays = $entrep['Pays']; // Ajouté le 18 02 2008 - $identite->PaysIso2 = $entrep['PaysIso2']; - $identite->AdresseDom = $entrep['AdresseDom']; - - $tabAdresseDomEnt = array(); - if (isset($entrep['AdresseDomEnt']) && count($entrep['AdresseDomEnt'])>0){ - foreach ($entrep['AdresseDomEnt'] as $element){ - $adresseDomEnt = new AdresseDomEnt(); - $adresseDomEnt->siren = $element['siren']; - $adresseDomEnt->nom = $element['nom']; - $tabAdresseDomEnt[] = $adresseDomEnt; - } - } - $identite->AdresseDomEnt = $tabAdresseDomEnt; - - $identite->AdresseDomNb = $entrep['AdresseDomNb']; - $identite->Civilite = $entrep['Civilite']; - $identite->NbEtab = $entrep['NbEtab']; - $identite->Tel = $entrep['Tel']; - $identite->Fax = $entrep['Fax']; - $identite->Web = $entrep['Web']; - $identite->Mail = $entrep['Mail']; - $identite->GeoLat = $entrep['GeoLat']; - $identite->GeoLon = $entrep['GeoLon']; - $identite->GeoPrecis = $entrep['GeoPrecis']; - $identite->GeoInfos = $entrep['GeoInfos']; - $identite->TvaNumero = $entrep['TvaNumero']; - $identite->TvaAttribue = $entrep['TvaAttribue']; - $identite->FJ = $entrep['FJ']; - $identite->FJ_Lib = $entrep['FJ_lib']; - $identite->FJ2 = $entrep['FJ2']; // Ajouté le 4 08 2009 - $identite->FJ2_Lib = $entrep['FJ2_Lib']; // Ajouté le 4 08 2009 - $identite->Siren = $entrep['Siren']; - $identite->Nic = $entrep['Nic']; - $identite->NafEnt = $entrep['NafEnt']; - $identite->NafEntLib = $entrep['NafEntLib']; - $identite->NafEtab = $entrep['NafEtab']; - $identite->NafEtabLib = $entrep['NafEtabLib']; - $identite->NaceEtab = $entrep['NaceEtab']; - $identite->NaceEnt = $entrep['NaceEnt']; - $identite->Nafa = $entrep['APRM']; - $identite->NafaLib = $entrep['APRM_Lib']; - $identite->NumRM = $entrep['NumRM']; - $identite->Activite = $entrep['Activite']; - $identite->Capital = $entrep['Capital']; - $identite->CapitalDev = $entrep['CapitalDev']; - $identite->CapitalLib = $entrep['CapitalLib']; // Ajouté le 18 02 2008 - $identite->CapitalType = $entrep['CapitalType']; // Ajouté le 4 08 2009 - $identite->DateCreaEt = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEt']); - $identite->DateCreaEn = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEn']); - $identite->DateClotEt = $entrep['DateClotEt']; //@todo : date - $identite->DateImmat = $entrep['dateImmat']; // Ajouté le 4 08 2009 - $identite->DateRadiation = $entrep['dateRad']; // Ajouté le 4 08 2009 - $identite->EffEnTr = $entrep['EffEnTr']; - $identite->EffEnTrLib = $entrep['EffEnTrLib']; - $identite->Effectif = $entrep['Effectif']; - $identite->EffEtTr = $entrep['EffEtTr']; // Ajout le 11 08 2010 - $identite->EffEtTrLib = $entrep['EffEtTrLib']; // Ajout le 11 08 2010 - $identite->EffectifEtab = $entrep['EffectifEtab']; // Ajout le 11 08 2010 - $identite->Dept = $entrep['Dept']; - $identite->codeCommune = $entrep['codeCommune']; - $identite->AnneeEffEn = $entrep['AnneeEffEn']; - $identite->AnneeEffEt = $entrep['AnneeEffEt']; - $identite->AnneeTCA = $entrep['AnneeTCA']; - $identite->TrancheCA = $entrep['TrancheCA']; - $identite->TrancheCALib = $entrep['TrancheCALib']; - $identite->dir1Code = $entrep['dir1Code']; - $identite->dir1Titre = $entrep['dir1Titre']; - $identite->dir1NomPrenom = $entrep['dir1NomPrenom']; - $identite->dir1DateFct = $entrep['dir1DateFct']; //@todo : date - $identite->dir1DateNaiss = $entrep['dir1DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir1LieuNaiss = $entrep['dir1LieuNaiss']; // Ajouté le 4 08 2009 - $identite->dir2Code = $entrep['dir2Code']; - $identite->dir2Titre = $entrep['dir2Titre']; - $identite->dir2NomPrenom = $entrep['dir2NomPrenom']; - $identite->dir2DateFct = $entrep['dir2DateFct']; //@todo : date - $identite->dir2DateNaiss = $entrep['dir2DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir2LieuNaiss = $entrep['dir2LieuNaiss']; // Ajouté le 4 08 2009 - $identite->Rivoli = $entrep['Rivoli']; - $identite->InfosIris->codIris = $entrep['InfosIris']['codIris']; - $identite->InfosIris->codComIris = $entrep['InfosIris']['codComIris']; - $identite->InfosIris->libIris = $entrep['InfosIris']['libIris']; - $identite->InfosIris->typIris = $entrep['InfosIris']['typIris']; - $identite->InfosIris->evoIris = $entrep['InfosIris']['evoIris']; - $identite->InfosIris->trIris = $entrep['InfosIris']['trIris']; - $identite->InfosIris->grdQuartier = $entrep['InfosIris']['grdQuartier']; - $identite->NatureActivite = $entrep['NatureActivite']; // Nature de l'activité - $identite->OrigineCreation = $entrep['OrigineCreation']; // Origine de la création - $identite->TypeExploitation = $entrep['TypeExploitation']; - $identite->Auxiliaire = $entrep['Auxiliaire']; // 1=Auxiliaire / 0=Non auxiliaire - $identite->Saisonnalite = $entrep['Saisonnalite']; // P=Activité permanente / S=Activité saisonnière - $identite->SituationJuridique = $entrep['SituationJuridique']; - $identite->Bilan->Cloture = $entrep['bilanDate']; //@todo : date - $identite->Bilan->Duree = $entrep['bilanMois']; - $identite->Bilan->Devise = $entrep['bilanDevise']; - $identite->Bilan->Capital = $entrep['bilanDA']; - $identite->Bilan->CA = $entrep['bilanFL']; - $identite->Bilan->Resultat = $entrep['bilanHN']; - $identite->Bilan->Effectif = $entrep['bilanYP']; - $identite->Bourse->placeCotation = $bourse['placeCotation']; - $identite->Bourse->nombreTitres = $bourse['nombreTitres']; - $identite->Bourse->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $identite->Bourse->derCoursDate = $bourse['date']; //@todo : date - $identite->Bourse->derCoursCloture = $bourse['close']; //@todo : date - - $tabAutreSiren = array(); - if (isset($entrep['AutreSiren'])) { - $autreSiren = new AutreSiren(); - $autreSiren->siren = $entrep['AutreSiren']['listeSiren']['siren']; - $autreSiren->type = $entrep['AutreSiren']['listeSiren']['type']; - $tabAutreSiren[] = $autreSiren; - } - $identite->AutreSiren = $tabAutreSiren; - - $identite->DateMajINSEE = $entrep['DateMajINSEE']; //@todo : date - $identite->DateMajRCS = $entrep['DateMajRCS']; //@todo : date - $identite->DateMajBILAN = $entrep['bilanDateMaj']; //@todo : date - $identite->DateMajANN = $entrep['dateMajANN']; //@todo : date - $identite->DateMajID = $entrep['dateMajIdentite']; //@todo : date - - if (preg_match('/NAF4/i', $this->tabInfoUser['pref'])) - { - $entrep2 = $iInsee->getNaf4($siren, $nic, $id); - $identite->Naf4Ent = $entrep2['apen4']; - $identite->Naf4Etab = $entrep2['apet4']; - $identite->Naf4EntLib = $entrep2['apen4_lib']; - $identite->Naf4EtabLib = $entrep2['apet4_lib']; - } - - $identiteProcol->Identite = $identite; - - //Eléments annonces légales - $anns = $this->getAnnonces($siren, 1); - $tabRetAnn = $tabLastEven = array(); - $anns = $anns->result; - $tribunalProcol = false; - foreach ($anns as $nb=>$ann) { - $tabRetEven = array(); - foreach ($ann->evenements as $tabEven) { - // On ignore les éléments suivants - if ($tabEven->CodeEven>=7000) continue; - if ($tabEven->CodeEven>=4000 && $tabEven->CodeEven<=4999) continue; - - // Par défaut, on force le tribunal à celui présent dans la dernière annonce de Procol - if ($tribunalProcol==false && $tabEven->CodeEven>=1000 && $tabEven->CodeEven<2000 && $ann->BodaccCode=='BODA') { - $identiteProcol->TribunalCode = $ann->TribunalCode; - $identiteProcol->TribunalLib = prepareString($ann->Tribunal); - $tribunalProcol=true; - } - - // On ne prend que le dernier élément de chaque type - if (in_array($tabEven->CodeEven, $tabLastEven)) continue; - - $tabLastEven[] = $tabEven->CodeEven; - $tabRetEven[] = $tabEven; - } - - if (count($tabRetEven)>0) { - $annonce = new Annonce(); - $annonce->id = $ann->id; - $annonce->BodaccCode = $ann->BodaccCode; - $annonce->BodaccNum = $ann->BodaccNum; - $annonce->NumAnnonce = $ann->NumAnnonce; - $annonce->DateParution = $ann->DateParution; //@todo : date - $annonce->Departement = $ann->Departement; - $annonce->Tribunal = $ann->Tribunal; - $annonce->TribunalCode = $ann->TribunalCode; - $annonce->TribunalSiret = $ann->TribunalSiret; - $annonce->Rubrique = $ann->Rubrique; - $annonce->typeAnnonce = $ann->typeAnnonce; - $annonce->texteRectificatif = $ann->texteRectificatif; - $annonce->texteAnnonce = utf8_encode($ann->texteAnnonce); - $annonce->dateEffet = $ann->dateEffet; //@todo : date - $annonce->dateJugement = $ann->dateJugement; //@todo : date - $annonce->dateInsertionSD = $ann->dateInsertionSD; //@todo : date - $annonce->evenements = $tabRetEven; - $annonce->Lien_Annonce_Pdf = $ann->Lien_Annonce_Pdf; - $tabRetAnn[] = $annonce; - } - } - $identiteProcol->Annonces = $tabRetAnn; - - $iRncs = new MRncs(); - if ($entrep['Siege']==1 || $entrep['Siege']==11) { - $identiteProcol->LibTypeEtab = 'Etablissement Siege'; - } else { - $tabEtabRncs = $iRncs->getIdentiteEtab($siren, $entrep['Nic']); - if ($tabEtabRncs['Siege']==2) $identiteProcol->LibTypeEtab = 'Etablissement Principal'; - elseif ($tabEtabRncs['Siege']==1) $identiteProcol->LibTypeEtab = 'Etablissement Complementaire'; - elseif ($tabEtabRncs['Siege']==0) $identiteProcol->LibTypeEtab = 'Etablissement Secondaire'; - } - - //@todo - $tabJuge = $iRncs->getIntervenants($siren); - $tabDepots=array(); - foreach ($tabJuge as $iDepot=>$depot) { - $organe = new Organe(); - $organe->codEven = $depot['codEven']; - $organe->libEven = prepareString($depot['libEven']); - $organe->dateEffet = $depot['dateEffet']; - $organe->admcode = $depot['admcode']; - $organe->admfonction = prepareString($depot['admfonction']); - $organe->admnom = prepareString($depot['admnom']); - $organe->admadrNum = $depot['admadrNum']; - $organe->admadrInd = $depot['admadrInd']; - $organe->admadrVoie = $depot['admadrVoie']; // @todo : adm1adr1, adm1adr2, adm1adr3, - $organe->admadrCP = $depot['admadrCP']; - $organe->admadrVille = $depot['admadrVille']; - $tabDepots[] = $organe; - } - $identiteProcol->Organes = $tabDepots; - - - $mLiens = new MLiens($siren); - $tabA = $mLiens->getActionnaires($siren, 1); - $nbA = count($tabA); - $tabAct = array(); - foreach ($tabA as $i=>$lien) { - $liens = new Actionnaire(); - $liens->Pmin = $lien['Pmin']; - $liens->MajMin = $lien['MajMin']; - $liens->RaisonSociale = $lien['RaisonSociale']; - $liens->Pays = $lien['Pays']; - $liens->Siren = $lien['Siren']; - $liens->Actif = $lien['Actif']; - $tabAct[] = $liens; - } - $identiteProcol->Actionnaires = $tabAct; - - $iGreffes = new MGreffes(); - $tabActes = $iGreffes->getListeActes($siren); - - $identiteProcol->StatutsModifDepot = $identiteProcol->StatutsModif = '0000-00-00'; - foreach ($tabActes as $i=>$acte) { - if ('_'.$acte['acte_type']=='_04') { // STATUTS CONSTITUTIFS - $identiteProcol->StatutsConstDepot = $acte['depot_date']; // => 1997-12-18 - $identiteProcol->StatutsConst = $acte['acte_date']; // => 1997-11-13 - break; - } elseif (in_array('_'.$acte['acte_type'], array( - //'_04', // STATUTS CONSTITUTIFS - '_06', // STATUTS A JOUR 9 0000-00-00 2009-09-02 17:05:55 - '_07', // STATUTS A JOUR 9 0000-00-00 2009-09-02 17:05:55 - '_08', // STATUTS A JOUR ET DECLARATION DE CONFORMITE 9 0000-00-00 2009-09-02 17:05:55 - '_09', // STATUTS APRES TRANSFERT DE SIEGE 9 0000-00-00 2009-09-02 17:05:55 - '_A1', // STATUTS 9 0000-00-00 2009-09-02 17:05:55 - '_AH', // AVENANT AUX STATUTS - ))) { - // On ne prend que la dernière modif - if ($identiteProcol->StatutsModifDepot=='0000-00-00' && $identiteProcol->StatutsModif=='0000-00-00') { - $identiteProcol->StatutsModifDepot = $acte['depot_date'];// => 1997-12-18 - $identiteProcol->StatutsModif = $acte['acte_date']; // => 1997-11-13 - } - } - } - - /** Y a t il eu des informations relatives à une cession ? **/ - $tabCes = $iGreffes->getInfosCessions($siren); - if ($tabCes) { - $identiteProcol->CessionJugeLib = $tabCes['cessJuge']; - $identiteProcol->CessionJugeDate = $tabCes['cessDateJuge']; - $identiteProcol->CessionAvisBodac = $tabCes['cessDateBod']; - $identiteProcol->CessionInvenDate = $tabCes['cessDateInv']; - $identiteProcol->CessionCAdeclare = $tabCes['cessCAdec']; - $identiteProcol->CessionEffectif = $tabCes['cessEffectif']; - $identiteProcol->CessionDesc = $tabCes['cessDesc']; - $identiteProcol->CessionDescDate = $tabCes['cessDateDesc']; - $identiteProcol->CessionOffreDate = $tabCes['cessDateLim']; - $identiteProcol->CessionMandataire = $tabCes['cessMand']; - } - - //sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Debug $siren", print_r($tabRet,true)) ; - debugLog('I', 'Etablissement retourné = '. $entrep['Nom'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('identite',$siret,$id); - - return $identiteProcol; - } - - /** - * Retourne les liens financiers pour une entreprise. - * - * @param string $siren Siren de l'entreprise - * @param boolean $actifsUniquement Uniquement les liens Actifs - * @return LiensReturn - */ - public function getLiens($siren, $actifsUniquement = true) - { - $this->authenticate(); - $this->permission('liens'); - - //Initialisation - if (empty($actifsUniquement)) { $actifsUniquement = true; } - $tabAct = $tabPar = array(); - - debugLog('I',"Liens entreprises demandés pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $mLiens = new MLiens($siren); - $tabA = $mLiens->getActionnaires($siren, $actifsUniquement); - $nbA = count($tabA); - $tabAct = array(); - if ($nbA > 0) { - foreach ($tabA as $i => $lien) { - $actionnaire = new Actionnaire(); - $actionnaire->Pmin = $lien['Pmin']; - $actionnaire->MajMin = $lien['MajMin']; - $actionnaire->RaisonSociale = $lien['RaisonSociale']; - $actionnaire->TypeEntrep = $lien['TypeEntrep']; - $actionnaire->Pays = $lien['Pays']; - $actionnaire->Siren = $lien['Siren']; - $actionnaire->Actif = $lien['Actif']; - $actionnaire->Source = $lien['Source']; - $actionnaire->DateLien = $lien['DateLien']; //@todo : date - $actionnaire->DateMaj = $lien['DateMaj']; //@todo : date - $tabAct[] = $actionnaire; - } - } - debugLog('W', "$nbA actionnaires pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $tabP = $mLiens->getParticipations($siren, $actifsUniquement); - $nbP = count($tabP); - $tabPar = array(); - if ($nbP > 0) { - foreach ($tabP as $i => $lien) { - $participation = new Participation(); - $participation->Pmin = $lien['Pmin']; - $participation->MajMin = $lien['MajMin']; - $participation->RaisonSociale = $lien['RaisonSociale']; - $participation->TypeEntrep = $lien['TypeEntrep']; - $participation->Pays = $lien['Pays']; - $participation->Siren = $lien['Siren']; - $participation->Actif = $lien['Actif']; - $participation->Source = $lien['Source']; - $participation->DateLien = $lien['DateLien']; //@todo : date - $participation->DateMaj = $lien['DateMaj']; //@todo : date - $tabPar[] = $participation; - } - } - debugLog('W', "$nbP participations pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('liens',$siren); - - $output = new LiensReturn(); - $output->actionnaires = $tabAct; - $output->participations = $tabPar; - return $output; - } - - - /** - * Liste des établissements d'une entreprise - * @param string $siren Siren de l'entreprise - * @param integer $departement Limiter aux établissements du departement - * @param integer $actif Otpionnel 1=Uniquements les actifs, 0=inactifs, Néant=Tous - * @param integer $position - * @param integer $nbRep - * - * @return ListeEtablissementsReturn - */ - public function getListeEtablissements($siren, $dep = 0, $actif = -1, $position = 0, $nbRep = 20) - { - $this->authenticate(); - $this->permission('etablissements'); - - //Initialisation - if (empty($dep)) { $dep = 0; } - if (!in_array($actif, array(0,1))) { $actif = -1; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 20; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - $departement = $dep; - - debugLog('I',"Liste des établissements demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissements($siren, '', $position, $nbRep, 200, $departement, $actif); - $etabs = $rep['reponses']; - $nbReponses = $rep['nbReponsesTotal']; - $result = array(); - if (count($etabs)>0) - { - foreach ($etabs as $nb => $etab) - { - $etablissement = new Etablissement(); - $etablissement->id = $etab['id']; - $etablissement->Siege = $etab['Siege']; - $etablissement->Enseigne = $etab['Enseigne']; - $etablissement->Adresse = $etab['Adresse']; - $etablissement->Adresse2 = $etab['Adresse2']; - $etablissement->CP = $etab['CP']; - $etablissement->Ville = $etab['Ville']; - $etablissement->Tel = $etab['Tel']; - $etablissement->Fax = $etab['Fax']; - $etablissement->Nic = $etab['Nic']; - $etablissement->Actif = $etab['Actif']; - $etablissement->NafEtab = $etab['NafEtab']; - $etablissement->NafEtabLib = $etab['NafEtabLib']; - $etablissement->EffEtTr = $etab['EffEtTr']; - $etablissement->EffEtTrLib = $etab['EffEtTrLib']; - - $result[] = $etablissement; - } - } - debugLog('I', "Nb Etablissements retournés ($departement, $actif) = ". count($result), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('etablissements',$siren); - $output = new ListeEtablissementsReturn(); - $output->nbReponses = $nbReponses; - $output->result = $result; - return $output; - } - - /** - * Retourne l'ensemble des informations identitaires des dirigeants de l'entreprise - * - * @param string $siren Siren de l'entreprise - * @param bool $histo Afficher l'historique des dirigeants - * @return DirigeantsReturn Liste des dirigeants actifs de l'entreprise - */ - public function getDirigeants( $siren , $histo = false) - { - $this->authenticate(); - $this->permission('dirigeants'); - - //Initialisation - if (empty($histo)) { $histo = false; } - - //Zend_Registry::get('WsLogger')->info('HISTO : '.$histo); - - debugLog('I',"Dirigeants demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $dirs = $iInsee->getDirigeants($siren, $histo); - //debugLog('W', print_r($dirs, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $liste = array(); - foreach ($dirs as $nb => $dir) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $dirigeant = new Dirigeant(); - $dirigeant->Code = $dir['Fonction']; - $dirigeant->Titre = $dir['Titre']; - $dirigeant->Societe = $dir['Societe']; - $dirigeant->Civilite = $dir['Civilite']; - $dirigeant->Nom = $dir['Nom']; - $dirigeant->Prenom = $dir['Prenom']; - $dirigeant->NomUsage = $dir['NomUsage']; - $dirigeant->NaissDate = $dir['NaissDate']; //@todo : date - $dirigeant->NaissVille = $dir['NaissVille']; - $dirigeant->NaissDepPays = $dir['NaissDepPays']; - $dirigeant->Ancien = $dir['Ancien']; - $dirigeant->DateFct = $dir['DateFct']; //@todo : date - $liste[] = $dirigeant; - } - $this->wsLog('dirigeants',$siren,$option); - debugLog('I', 'Nb Dirigeants retournés = '. count($dirs), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $output = new DirigeantsReturn(); - $output->result = $liste; - return $output; - } - - /** - * Retourne la liste des annonces légales relative à une entreprise - * - * @todo Revoir cette fonction pour la faire marcher avec les associations - * - * @param string $siren Siren de l'entreprise - * @param integer $filtre 0=Pas de Filtre, 1=BODACC, 2=B.A.L.O, 3=JO Association, 4=Boamp - * @param string $idAnn Identifiant de l'annonce - * @param integer $position - * @param integer $nbRep - * @return AnnoncesReturn - */ - public function getAnnonces($siren, $filtre = 0, $idAnn = '', $position = 0, $nbRep = 100) - { - $this->authenticate(); - $this->permission('annonces'); - - //Initialisation - if (empty($filtre)) { $filtre = 0; } - if (empty($idAnn)) { $idAnn = ''; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 100; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - - debugLog('I',"Annonces demandées pour $siren ($filtre, $idAnn)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $liste = array(); - - if (strlen($siren)<>9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0 && $idAnn=='') { - debugLog('W', "Siren $siren ou annonce $idAnn inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - /* - if ($siren>100 && $filtre==3) $asso=true; - else { - $asso=false; - $tabIdentite=$this->iInsee->getIdentiteLight($siren); - if ($tabIdentite['FJ']>90 && $tabIdentite['FJ']<94 || - $tabIdentite['FJ']>9000 && $tabIdentite['FJ']<9400) $asso=true; - }*/ - if ($idAnn=='') { - $anns=$iInsee->getAnnoncesLegales($siren); - $annsB=$iInsee->getAnnoncesBalo($siren); - $annsA=$iInsee->getAnnoncesAsso($siren); - $annsM=$iInsee->getAnnoncesBoamp($siren, $idAnn); - } elseif ($filtre==1) - $anns=$iInsee->getAnnoncesLegales($siren, $idAnn); - elseif ($filtre==2) - $annsB=$iInsee->getAnnoncesBalo($siren, $idAnn); - elseif ($filtre==3) - $annsA=$iInsee->getAnnoncesAsso($siren, $idAnn); - elseif ($filtre==4) - $annsM=$iInsee->getAnnoncesBoamp($siren, $idAnn); - - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($anns) && empty($annsB) && empty($annsA) && empty($annsM)) - { - debugLog('W', "Aucune annonce pour le siren $siren (source=$filtre, id=$idAnn)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren inexistant B '.$siren.' '.$idAnn; - } - else - { - foreach ($anns as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - $annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = prepareString($ann['texteAnnonce']); - $annonce->libFJ = $ann['libFJ']; - $annonce->codFJ = $ann['codFJ']; - $annonce->capital = $ann['capital']; - $annonce->capitalDev = $ann['capitalDev']; - - $annonce->raisonSociale = $ann['raisonSociale']; - $annonce->nomCommercial = $ann['nomCommercial']; - $annonce->sigle = $ann['sigle']; - $annonce->adresse = $ann['adresse']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - - if (is_array($annsB)) - { - foreach ($annsB as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - - if (is_array($annsA)) - { - foreach ($annsA as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - //@todo : date - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - - if (is_array($annsM)) - { - foreach ($annsM as $nb=>$ann) - { - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - } - - $nbReponses = count($liste); - if ($nbReponses>0){ - //$liste = array_slice($liste, $position, $nbRep); - } - debugLog('I', "Nb Annonces $filtre retournées pour $siren (source=$filtre, id=$idAnn) = ". count($liste), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('annonces',$siren,$filtre.'/'.$idAnn); - - $output = new AnnoncesReturn(); - $output->nbReponses = $nbReponses; - $output->result = $liste; - return $output; - } - - /** - * Evaluation indiScore d'une entreprise - * @param string $siren Siren de l'entreprise - * @param string $nic Nic de l'établissement - * @param integer $niveau Niveau des commentaires - * @param bool $plus Si true, mise en surveillance privilèges - * @param string $ref Si $plus=true, référence de la mise en Surveillance - * @param integer $encours Si $plus=true, encours client demandé lors de la mise en Surveillance - * @param string $email Si $plus=true, email client pour la mise en surveillance - * @return Indiscore - */ - public function getIndiScore($siren, $nic=0, $niveau=2, $plus=false, $ref='', $encours=0, $email='') - { - $this->authenticate(); - - //Initialisation - $accesDist = true; - if (empty($nic)) { $nic = 0; } - if (empty($niveau)) { $niveau = 2; } - if (empty($plus)) { $plus = false; } - if ( !in_array($niveau, array(0,1,2,3,4,5)) ) { $niveau = 2; } - - $perm = false; - switch($niveau) { - case 1: $perms = array('indiscore', 'indiscorep'); break; - case 2: $perms = array('indiscore2', 'indiscore2p'); break; - case 3: $perms = array('indiscore3', 'indiscore3p'); break; - } - foreach($perms as $item){ - if ( $this->checkPerm($item) ){ - $perm = true; - break; - } - } - if ($perm === false) { - $this->sendError('0902'); - } - - $tabRet = array(); - debugLog('I',"IndiScore demandée pour $siren en niveau $niveau",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)>9 || (substr($siren,0,9)*1)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $tDeb = microtime(true); - require_once 'Metier/scores/classMScores.php'; - $tabRet = calculIndiScore($siren, $nic, $accesDist, $niveau); - $duree = round(microtime(true)-$tDeb,3); - debugLog('W', "indiscore DUREE = $duree s", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $output = new Indiscore(); - foreach($tabRet as $key => $value){ - if ($key=='paiements'){ - $parMont = $value['parMont']; - $parTrim = $value['parTrim']; - $tabMont = array(); - foreach($parMont as $parMontK => $parMontV){ - $paiementMont = new IndiscorePaiementDetail(); - $paiementMont->id = $parMontK; - $paiementMont->nb = $parMontV['nb']; - if (array_key_exists('d=180', $parMontV)){ - $paiementMont->d180 = $parMontV['d=180']; - } - if (array_key_exists('d=150', $parMontV)){ - $paiementMont->d150 = $parMontV['d=150']; - } - if (array_key_exists('d=120', $parMontV)){ - $paiementMont->d120 = $parMontV['d=120']; - } - if (array_key_exists('d=90', $parMontV)){ - $paiementMont->d90 = $parMontV['d=90']; - } - if (array_key_exists('d=60', $parMontV)){ - $paiementMont->d60 = $parMontV['d=60']; - } - if (array_key_exists('d=30', $parMontV)){ - $paiementMont->d30 = $parMontV['d=30']; - } - $tabMont[] = $paiementMont; - } - $tabTrim = array(); - foreach($parTrim as $parTrimK => $parTrimV){ - $paiementTrim = new IndiscorePaiementDetail(); - $paiementTrim->id = $parTrimK; - $paiementTrim->nb = $parTrimV['nb']; - if (array_key_exists('d=180', $parTrimV)){ - $paiementTrim->d180 = $parTrimV['d=180']; - } - if (array_key_exists('d=150', $parTrimV)){ - $paiementTrim->d150 = $parTrimV['d=150']; - } - if (array_key_exists('d=120', $parTrimV)){ - $paiementTrim->d120 = $parTrimV['d=120']; - } - if (array_key_exists('d=90', $parTrimV)){ - $paiementTrim->d90 = $parTrimV['d=90']; - } - if (array_key_exists('d=60', $parTrimV)){ - $paiementTrim->d60 = $parTrimV['d=60']; - } - if (array_key_exists('d=30', $parTrimV)){ - $paiementTrim->d30 = $parTrimV['d=30']; - } - $tabTrim[] = $paiementTrim; - } - $paiement = new IndiscorePaiement(); - $paiement->parMont = $tabMont; - $paiement->parTrim = $tabTrim; - $output->paiements = $paiement; - - } elseif ($key=='Notes_Structure') { - - $notesStructure = new IndiscoreNotesStructure(); - $notesStructure->activite = $value['activite']; - $notesStructure->naf4 = $value['naf4']; - $notesStructure->age = $value['age']; - $notesStructure->capital = $value['capital']; - $notesStructure->effectif = $value['effectif']; - $notesStructure->fj = $value['fj']; - $notesStructure->localite = $value['localite']; - $notesStructure->singulier = $value['singulier']; - $output->Notes_Structure = $notesStructure; - - } elseif ($key=='tabBilans') { - - $tabRet = array(); - foreach($value as $bilan) - { - $element = new ListeBilans(); - $element->dateProvPartenaire = $bilan['dateProvPartenaire']; //@todo : date - $element->dateInsert = $bilan['dateInsert']; //@todo : date - $element->typeBilan = $bilan['typeBilan']; - $element->dureeExercice = $bilan['dureeExercice']; - $element->dateExercice = $bilan['dateExercice']; //@todo : date - $element->millesime = $bilan['millesime']; - $element->dateExercicePre = $bilan['dateExercicePre']; //@todo : date - $element->dureeExercicePre = $bilan['dureeExercicePre']; - $element->monnaie = $bilan['monnaie']; - $element->source = $bilan['source']; - $tabRet[] = $element; - } - $output->tabBilans = $tabRet; - - } elseif ($key=='tabBilan') { - - $tabRet = array(); - foreach($value as $bilan){ - $resultBilan = new Bilan(); - $tabPoste = array(); - foreach($bilan as $bilan_key => $bilan_value){ - if(!in_array($bilan_key, array('SIREN', 'DATE_FRAICHE_BILAN', - 'DATE_CLOTURE', 'DATE_CLOTURE_PRE', 'DUREE_MOIS', - 'DUREE_MOIS_PRE', 'MONNAIE', 'CONSOLIDE', 'MONNAIE_ORI', - 'MONNAIE_LIV_UNITE', 'SOURCE', 'devise'))){ - $resultPoste = new BilanPoste(); - $resultPoste->id = $bilan_key; - $resultPoste->val = $bilan_value; - $tabPoste[] = $resultPoste; - } else { - $resultBilan->$bilan_key = $bilan_value; - } - } - $resultBilan->POSTES = $tabPoste; - $tabRet[] = $resultBilan; - } - $output->tabBilan = $tabRet; - - } elseif ($key=='tabInfosNotations') { - - $infosNotation = new IndiscoreInfosNotations(); - $infosNotation->SituationFinanciere = $value['SituationFinanciere']; - $infosNotation->Notation = $value['Notation']; - $infosNotation->ProbabiliteDefaut = $value['ProbabiliteDefaut']; - $output->tabInfosNotations = $infosNotation; - - } elseif ($key=='tabImportExport') { - - $tabRet = array(); - foreach($value as $element){ - $importExport = new IndiscoreImportExport(); - $importExport->importExport = $element['importExport']; - $importExport->annee = $element['annee']; - $importExport->rangNational = $element['rangNational']; - $importExport->deptSiege = $element['deptSiege']; - $tabRet[] = $importExport; - } - $output->tabImportExport = $tabRet; - - } elseif ($key=='tabCommentaires') { - - $tab = array(); - foreach($value as $comment) { - require_once 'i18n/cleanchar.php'; - $tab[] = fixEncoding($comment); - } - $output->tabCommentaires = $tab; - - } elseif ($key=='tabVariables') { - - $tab = $value['CA_Y']; - $tabVar = array(); - foreach($tab as $varName => $varVal){ - $var = new CA_Y(); - $var->id = $varName; - $var->val = $varVal; - $tabVar[] = $var; - } - $variables = new IndiscoreVariables(); - $variables->CA_Y = $tabVar; - $output->tabVariables = $variables; - - } elseif ($key=='Bilans') { - - $tab = array(); - foreach($value as $item) - { - $objet = new IndiscoreBilans(); - $objet->Millesime = $item['Millesime']; - $objet->FraisPerso = $item['FraisPerso']; - $objet->CA = $item['CA']; - $objet->EBE = $item['EBE']; - $objet->TxInvest = $item['TxInvest']; - $objet->TxEndett = $item['TxEndett']; - $objet->DettesCT = $item['DettesCT']; - $objet->FraisFi = $item['FraisFi']; - $objet->BFR = $item['BFR']; - $objet->FR = $item['FR']; - $objet->FondsPr = $item['FondsPr']; - $objet->DelaiCli = $item['DelaiCli']; - $objet->DelaiFour = $item['DelaiFour']; - $tab[] = $objet; - } - $output->$key = $tab; - } else { - $output->$key = $value; - } - } - - if ($plus) { - if (empty($ref)) $ref='Indiscore+'; - if (empty($email)) $email=$this->tabInfoUser['email']; - $this->setSurveillance($siren, $email, $ref, 'privileges'); - $this->setSurveillance($siren, $email, $ref, 'score', false, $encours); - if ($this->tabInfoUser['idClient']==89) - $this->setSurveillance($siren, $email, $ref, 'annonces'); - $this->wsLog('indiscore+',$siren); - } else - $this->wsLog('indiscore',$siren); - return $output; - } - - /** - * Liste de tous les évènements enregistrés à l'INSEE pour une entreprise - * @param string $siren Siren de l'entreprise - * @param string $nic - * @param integer $position - * @param integer $nbRep - * @return InseeReturn - **/ - public function getListeEvenements($siren, $nic=0, $position=0, $nbRep=1000) - { - $this->authenticate(); - $this->permission('eveninsee'); - - //Initialisation - if (empty($nic)) { $nic = 0; } - if (empty($position)) { $position = 0; } - if (empty($nbRep) || $nbRep>1000) { $nbRep = 1000; } - - debugLog('I',"Liste des évènements pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $evens = $iInsee->getEvenements($siren, $nic, $position, $nbRep); - $tabRet = array(); - if (count($evens)>0) { - foreach ($evens as $key => $row) { - $date[$key] = $row['dateMAJ']; - } - array_multisort($date, SORT_DESC, $evens); - foreach ($evens as $nb=>$even) { - $iEven = new InseeEven(); - $iEven->Nic = $even['nic']; - $iEven->Siege = $even['siege']; - $iEven->SiretAss = $even['siretAssocie']; - $iEven->TypeSiretAss = $even['typeSiretAss']; - $iEven->EvenCode = $even['codeEven']; - $iEven->EvenLib = $even['libEven']; - $iEven->EvenLibDet = $even['libEvenDet']; - $iEven->EvenDate = $even['dateEven']; //@todo : date - $iEven->DateInfo = $even['dateMAJ']; //@todo : date - $tabRet[] = $iEven; - } - } - - debugLog('I', 'Nb évènements retournés = '. count($tabRet), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('evenements',$siren); - $output = new InseeReturn(); - $output->nbReponses = count($tabRet); // @todo : retrouver le nombre total d'évenements - $output->result = $tabRet; - return $output; - } - - - /** - * Recherche - * @param EntrepriseCriteres $criteres - * @param integer $position Position de parcours des résultats retournées (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées lors d'une requête (20 par défaut) - * @param integer $maxRep Nombre de réponses maximum pouvant être retournées lors d'une requête (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (false par défaut) - * @param boolean $avecSiren Seulement les entités sirénées (false par défaut) - * @return SearchEntrepriseReturn - */ - public function searchEntreprise($criteres, $position = 0, $nbRep = 20, $maxRep = 200, $pertinence = false, $avecSiren = false) - { - $this->authenticate(); - - if (empty($position)) { $position = 0;} - if (empty($nbRep)) { $nbRep = 20; } - if (empty($maxRep)) { $maxRep = 200; } - - require_once 'i18n/cleanchar.php'; - - $entCriteres = new EntrepriseCriteres(); - $entCriteres = $criteres; - $identifiant = $entCriteres->identifiant; - $typeId = ''; - - //Detection autour de l'identifiant - if ($identifiant!='') { - $len = strlen($identifiant); - //Numéro WALDEC - if (strtoupper(substr($identifiant,0,1))=='W') { - $typeId = 'W'; - //Code ISIN - } elseif ($len==12){ - $typeId = 'I'; - //TVA Intracommunautaire - } elseif (in_array(substr($identifiant,0,2), - array('AT','BE','BG','CY','CZ','DE','DK','EE','EL','ES', - 'FI','GB','HU','IE','IT','LT','LU','LV','MT','NL','PL', - 'PT','RO','SE','SI','SK'))){ - //"La recherche par numéro de TVA n'est pas encore possible sur ce pays !"; - //Pour la france - } elseif (substr($identifiant,0,2)=='FR') { - $typeId = 'S'; - if ($len==13) $identifiant = substr($identifiant,4,9); - else $identifiant = ''; - //Numéro RC - } elseif (preg_match('/A|B|C|D/i', $identifiant)) { - $typeId = 'R'; - //Siren normal on enleve tout ce qui n'est pas un chiffre - } else { - $typeId = 'S'; - } - } - - $adresse = trim($entCriteres->adresse); - - //Détection Tel/Fax uniquement - if ( empty($typeId) - && empty($entCriteres->raisonSociale) - && empty($adresse) - && empty($entCriteres->codePostal) - && empty($entCriteres->ville) - && empty($entCriteres->naf) ){ - $typeId = 'TEL'; - } - - if (in_array($typeId, array('R', 'W', 'I'))){ - - $O = $this->searchAutreId( - $typeId, - $identifiant, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - $entCriteres->codePostal - ); - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } elseif ($typeId == 'S'){ - - $O = $this->searchSiren( - $identifiant, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - $entCriteres->codePostal - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - $output->info = $O->info; - return $output; - - } elseif ($typeId == 'TEL'){ - - $O = $this->searchTelFax( - $entCriteres->telFax, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } else { - - $O = $this->searchNomAdr( - cleanstring($entCriteres->raisonSociale), - cleanstring($entCriteres->adresse), - $entCriteres->codePostal, - cleanstring($entCriteres->ville), - empty($entCriteres->siege) ? false : $entCriteres->siege, - empty($entCriteres->actif) ? false : $entCriteres->actif, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - empty($pertinence) ? false : $pertinence, - empty($avecSiren) ? false : $avecSiren, - $entCriteres->naf - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - } - } - - /** - * Recherche d'entreprise par dirigeants - * @param DirigeantCriteres $criteres - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchDirReturn - */ - public function searchDir($criteres, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - $nom = $criteres->nom; - $prenom = $criteres->prenom; - $dateNaiss = $criteres->dateNaiss; - $lieuNaiss = $criteres->lieuNaiss; - $pertinence = $criteres->pertinence; - - debugLog('I',"Recherche Dirigeant de $nom, $prenom, $dateNaiss, $lieuNaiss (Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($prenom)) $prenom = ''; - if (empty($dateNaiss)) $dateNaiss = ''; - if (empty($lieuNaiss)) $lieuNaiss = ''; - if (empty($pertinence)) $pertinence = false; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - - $iInsee = new MInsee(); - $etabs = $iInsee->rechercheDir($nom, $prenom, '', $dateNaiss, $lieuNaiss, $deb, $nbRep, $maxRep, $pertinence); - - $tabRet = array(); - foreach ($etabs['reponses'] as $etab) { - $item = new EntrepriseDirItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = $iInsee->getLibelleFJ($etab['FJ']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($iInsee->getLibelleNaf($etab['NafEtab'])); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($iInsee->getLibelleNaf($etab['NafEnt'])); - - // Dirigeant - $item->DirRs = prepareString($etab['DirRs']); - $item->DirNom = prepareString($etab['DirNom']); - $item->DirPrenom = prepareString($etab['DirPrenom']); - $item->DirNomUsage = prepareString($etab['DirNomUsage']); - $item->DirDateEffet = $etab['DirDateEffet']; - $item->DirFonction = prepareString($etab['DirFonction']); - $item->DirDepart = $etab['DirDepart']; - $tabRet[] = $item; - } - - if ($etabs['nbReponses']==0){ - debugLog('W', "Aucun résultat pour cette recherche !", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - } - - $search = new SearchDirReturn(); - $search->nbReponses = $etabs['nbReponses']; - $search->nbReponsesTotal = $etabs['nbReponsesTotal']; - $search->result = $tabRet; - return $search; - } - - /** - * Recherche d'entreprise ou d'établissement par un autre Identifiant - * - * @param string $typeId I=Code Isin, W=N°Waldec (Associations) ou R=N°RC (Registre Greffe) - * @param string $identifiant Identifiant recherché - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchAutreId($typeId, $identifiant, $deb=0, $nbRep=20, $maxRep=200, $dep=0) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - if (empty($dep)) $dep = 0; - - $typeId = substr(trim(strtoupper($typeId)),0,1); - - if ($typeId!='I' && $typeId!='W' && $typeId!='R') { - debugLog('I',"Type d'identifiant $typeId inexistant",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1021'); - } - $tabRet = array(); - debugLog('I',"Recherche par identifiant $typeId de $identifiantavec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if ($typeId=='W' || $typeId=='R') - { - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('AUTRE', $identifiant, $deb, $nbRep, $maxRep, $dep); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } else { - $iBourse = new MBourse($siren); - $siren = $iBourse->getCodeSiren($identifiant); - return $this->searchSiren($siren, $deb, $nbRep, $maxRep); - } - } - - - /** - * Recherche d'entreprise ou d'établissement par leur TEL FAX - * - * @param string $telFax Téléphone ou fax de l'établissement (ex: 0175438010) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchTelFax($telFax, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - - $tabRet = array(); - debugLog('I',"Recherche par Tel/Fax de $telFax avec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - //$assocs=$this->iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $nbRep, $pertinence); - /** @todo A FAIRE **/ - if (strlen($telFax)<10 || strlen($telFax)>14) { - debugLog('W', "Tel/Fax $telFax incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1011'); - } - - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('TEL', $telFax, $deb, $nbRep, $maxRep); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } - - - /** - * Recherche entreprise par nom et adresse - * @param string $raisonSociale Raison Sociale ou Enseigne ou Sigle - * @param string $adresse Adresse de l'entreprise, du type : 3 rue des Plantes - * @param string $codePostal Code postal (ex: 75014) - * @param string $ville Ville - * @param boolean $siege Limitation de la recherche au sièges (si true) - * @param boolean $actif Limitation aux établissements actifs (si true) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (si true) - * @param boolean $avecSiren Ne proposer que les entités sirénées - * @param string $ape_etab - * @return SearchReturn - */ - public function searchNomAdr($raisonSociale, $adresse='', $codePostal='', $ville='', $siege=false, $actif=false, $deb=0, $nbRep=20, $maxRep=200, $pertinence=false, $avecSiren=false, $ape_etab='') - { - $this->authenticate(); - - debugLog('I',"Recherche Entreprise de $raisonSociale, $adresse, $codePostal $ville (Siège=$siege / Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($adresse)) $adresse = ''; - if (empty($codePostal)) $codePostal = ''; - if (empty($ville)) $ville = ''; - if (empty($siege)) $siege = false; - if ( $actif ) { - $actif = 1; - } else { - $actif = 2; - } - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($pertinence)) $pertinence = false; - if (empty($avecSiren)) $avecSiren = false; - if (empty($ape_etab)) $ape_etab = ''; - - $iInsee = new MInsee(); - $etabs = $iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren, $ape_etab); - - $result = new SearchReturn(); - $tabRet = array(); - if (count($etabs['reponses'])) { - foreach ($etabs['reponses'] as $etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = strtr($etab['Nom'],'/*',' '); - $reponse->Nom2 = $etab['Nom2']; - $reponse->Sigle = $etab['Sigle']; - $reponse->Enseigne = $etab['Enseigne']; - $reponse->Adresse = $etab['Adresse']; - $reponse->Adresse2 = $etab['Adresse2']; - $reponse->CP = $etab['CP']; - $reponse->Ville = $etab['Ville']; - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = $iInsee->getLibelleFJ($etab['FJ']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = $iInsee->getLibelleNaf($etab['NafEtab']); // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = $iInsee->getLibelleNaf($etab['NafEnt']); - - $tabRet[] = $reponse; - } - } - - $fp=@fopen(LOG_PATH.'/recherches.log','a'); - - $siretTrouve = 0; - if ($etabs['nbReponses']==0) { - - $str="NbRep=0, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - @fwrite($fp, $str.EOL); - @fclose($fp); - debugLog('I', "rechercheEtab : AUCUN RESULTAT, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = count($tabRet); - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - - return $result; - - } - - if ($etabs['nbReponses']==1) $siretTrouve=$etabs['reponses'][0]['Siret']; - $str="NbRep=".$etabs['nbReponses'].", S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - @fwrite($fp, $str.EOL); - @fclose($fp); - debugLog('I', "rechercheEtab : ".$etabs['nbReponses']." RESULTATS, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = $etabs['nbReponses']; - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - return $result; - } - - /** - * Recherche d'entreprise ou d'établissement par leur identifiant SIREN ou SIRET - * @param string $siret Siren ou Siret de l'entreprise ou de l'établissement sur 9 ou 14 chiffres significatifs - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param integer $dep Département - * @return SearchReturn - */ - public function searchSiren($siret, $deb=0, $nbRep=20, $maxRep=200, $dep=0) - { - $this->authenticate(); - - debugLog('I',"Recherche par Siret de $siret (dep=$dep) avec un maximum de $maxRep réponses pour la tranche $deb à $nbRep",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ( strlen($siret)!=14 && strlen($siret)!=9 ){ - debugLog('W', "Siren/Siret $siret incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($dep)) $dep = 0; - - $nbReponsesTotal = $nbReponses = 0; - - $siren = substr($siret,0,9); - if (strlen($siret)==14) $nic = substr($siret,9,5); - elseif (strlen($siret)== 9) $nic = ''; - - $iInsee = new MInsee(); - - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep, $dep); - if (count($rep['reponses'])==0 && $dep>0) { - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep); - } - $etabs = $rep['reponses']; - $tabRet = array(); - if (count($etabs)>0){ - foreach ($etabs as $nb=>$etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = prepareString($etab['FJLib']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = $etab['NafEtabLib']; // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = $etab['NafEntLib']; - $tabRet[] = $reponse; - } - } - $nbReponsesTotal = $rep['nbReponsesTotal']; - $nbReponses = $rep['nbReponses']; - - /** Si le siren est valide, on part chez Infogreffe **/ - if (count($tabRet)==0 && $iInsee->valideSiren($siren)) { - $iGeffes = new MGreffes(); - $etab = $iGeffes->getIdentite($siren); - if ($etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString($etab['Nom']); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = utf8_encode(prepareString(utf8_decode($etab['FJLib']))); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; - $reponse->NafEtabLib = $etab['NafEtabLib']; - $reponse->NafEnt = $etab['NafEnt']; - $reponse->NafEntLib = $etab['NafEntLib']; - - $tabRet[] = $reponse; - $nbReponses = 1; - $nbReponsesTotal = 1; - - } else { - $iDb = new WDB(); - $iDb->insert('siren_inexistants', - array( 'siren'=>$siren, - 'nic'=>$nic, - 'dep'=>$dep, - 'login'=>$this->tabInfoUser['login'], - 'client'=>$this->tabInfoUser['idClient'], - 'dateInsert'=>date('YmdHis'))); - $nbReponses = 0; - $nbReponsesTotal = 0; - } - } - - $output = new SearchReturn(); - $output->nbReponses = $nbReponses; - $output->nbReponsesTotal = $nbReponsesTotal; - $output->result = $tabRet; - $output->info = $rep['info']; - return $output; - } - - - - - /** - * Retourne la fiche d'identité simplifié d'une entreprise avec son numéro de TVA. - * - * @param string $siren Identifiant Siren de l'entreprise - * @return TvaReturn - */ - public function getTVA($siren) - { - $this->authenticate(); - - //Initialisation - $siren = trim($siren); - debugLog('I',"TVA demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren); - debugLog('I', "Après getIdentiteEntreprise($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($entrep)) - { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - debugLog('I', "Avant MTva($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iTva = new MTva($siren); - if ($iTva->vatDefined) $tva=$iTva->vatNumber; - else $tva='N/A'; - debugLog('I', "Après MTva($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $output = new TvaReturn(); - $output->id = $entrep['id']; - $output->AutreId = $entrep['AutreId']; - $output->Nom = $entrep['Nom']; - $output->Sigle = $entrep['Sigle']; - $output->Enseigne = $entrep['Enseigne']; - $output->Adresse = $entrep['Adresse']; - $output->Adresse2 = $entrep['Adresse2']; - $output->CP = $entrep['CP']; - $output->Ville = $entrep['Ville']; - $output->Siren = $entrep['Siren']; - $output->Tva = $tva; - - debugLog('I', "TVA retournée = $tva (".$entrep['Nom'].')', __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('tva',$siren); - - return $output; - } - - /** - * Retourne tout ou patie des informations règlementées sur l'entreprise - * - * @param string $siren SIREN de l'entreprise - * @param mixed $id Id du communiqué - * @return InfosRegReturn - */ - public function getInfosReg( $siren, $id = false ) - { - $this->authenticate(); - $this->permission('infosreg'); - - //Initialisation - if (empty($id)) $id = false; - $tabRet = array(); - $siren = substr($siren,0,9); - - debugLog('I',"Infos règlementées demandées pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - $iBourse = new MBourse($siren); - $anns = $iBourse->getInfosReg($siren, $id); - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if ( empty($anns) ){ - debugLog('W', "Aucune info règlementée pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1030'); - } - - foreach ($anns as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if ($id == false) { - $infos = new InfosReg(); - $infos->id = $ann['id']; - $infos->source = $ann['source']; - $infos->DateParution = $ann['DateParution']; //@todo : date - $infos->raisonSociale = $ann['raisonSociale']; - $infos->titre = $ann['titre']; - $infos->pj = $ann['pj']; - $infos->url = $ann['url']; - $infos->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $tabRet[] = $infos; - } else { - $infos = new InfosReg(); - $infos->id = $ann['id']; - $infos->source = $ann['source']; - $infos->DateParution = $ann['DateParution']; //@todo : date - $infos->raisonSociale = $ann['raisonSociale']; - $infos->titre = $ann['titre']; - $infos->communique = $ann['communique']; - $infos->communiqueHtml = $ann['communiqueHtml']; - $infos->pj = $ann['pj']; - $infos->url = $ann['url']; - $infos->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $tabRet[] = $infos; - } - } - debugLog('I', 'Nb infos retournés = '. count($anns), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('infosreg',$siren,$id); - $output = new InfosRegReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne les informations boursières de l'entreprise - * @param string $siren SIREN de l'entreprise - * @return InfosBourse - */ - public function getInfosBourse($siren) - { - $this->authenticate(); - $this->permission('bourse'); - - //Initialisation - $error = new ErrorType(); - debugLog('I',"Infos bourse demandées pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $siren = substr($siren,0,9); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($bourse)) { - debugLog('W', "Aucune info bourse pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1030'); - } - - $result = new InfosBourse(); - $result->Siren = $bourse['siren']; - $result->RaisonSociale = $bourse['raisonSociale']; - $result->Adresse = $bourse['adresse']; - $result->Effectif = $bourse['effectif']; - $result->CodeSicovam = $bourse['code_sicovam']; - $result->CodeMnemo = $bourse['code_mnemo']; - $result->CodeBloomberg = $bourse['code_bloomberg']; - $result->CodeDatastream = $bourse['code_datastream']; - $result->Isin = $bourse['code_isin']; - $result->CodeRic = $bourse['code_ric']; - $result->DateIntroduction = $bourse['dateIntroduction']; //@todo : date - $result->DateDerAG = $bourse['dateDerAG']; //@todo : date - $result->DateRadiation = $bourse['dateRadiation']; //@todo : date - $result->AutreIsin = $bourse['autre_isin']; - $result->EligibleSRD = $bourse['eligibleSRD']; - $result->EligiblePEA = $bourse['eligiblePEA']; - $result->Tel = $bourse['tel1']; - $result->Tel2 = $bourse['tel2']; - $result->Fax = $bourse['fax1']; - $result->Fax2 = $bourse['fax2']; - $result->Web = $bourse['web']; - $result->Mail = $bourse['mail']; - - $result->Marche = $bourse['marche']; - $result->Description = $bourse['description']; - $result->Secteur = $bourse['secteur']; - $result->Activite = $bourse['activite']; - $result->ActiviteDet = $bourse['activiteDet']; - - $result->placeCotation = $bourse['placeCotation']; - $result->nombreTitres = $bourse['nombreTitres']; - $result->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $result->derCoursDate = $bourse['date']; //@todo : date - $result->derCoursCloture = $bourse['close']; - $result->derCoursOuverture = $bourse['open']; - $result->derCoursPlusHaut = $bourse['high']; - $result->derCoursPlusBas = $bourse['low']; - - $result->derCoursVolume = $bourse['volume']; - $result->coursMin = $bourse['coursMin']; - $result->coursMoy = $bourse['coursMoy']; - $result->coursMax = $bourse['coursMax']; - - $this->wsLog('bourse',$siren,$id); - return $result; - } - - /** - * Ajout d'une surveillance - * - * @param string $siret Siret/Siren - * @param string $email Adresse email du client - * @param string $ref Référence de la surveillance - * @param string $source Type de source en surveillance (insee, annonces, bilans, actes, privileges, score, dirigeants) - * @param boolean $delete Suppression de la ligne - * @param integer $encoursClient Encours demandé par le client - * @return SetSurveillanceReturn - */ - public function setSurveillance($siret, $email, $ref='', $source='annonces', $delete=false, $encoursClient=0) - { - $this->authenticate(); - $source = strtolower($source); - switch ($source) { - case 'insee': - $this->permission('survinsee'); - break; - case 'bilans': - $this->permission('survbilan'); - break; - case 'actes': - $this->permission('survactes'); - break; - case 'privileges': - $this->permission('survpriv'); - break; - case 'dirigeants': - $this->permission('survdirigeants'); - break; - case 'score': - $this->permission('survscore'); - break; - case 'annonces': - default: - $this->permission('survannonce'); - break; - } - - //Initialisation - if (empty($ref)) $ref = ''; - if (empty($delete)) $delete = false; - if (empty($encoursClient)) $encoursClient = false; - $result = false; - $siren = substr($siret,0,9); - $nic = substr($siret,9,5); - - debugLog('I',"setSurveillances(siret=$siret, email=$email, ref=$ref, source=$source, delete=$delete)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren, $nic); - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - switch ($source) { - case 'insee': - case 'annonces': - case 'bilans': - case 'actes': - case 'privileges': - case 'dirigeants': $encoursClient=0; break; - case 'score': $encoursClient=$encoursClient*1; break; - default: $source='annonces'; break; - } - - if ($delete) { - - $tabUpdate = array('dateSuppr'=>date('Y-m-d')); - $result = $iDb->update('surveillances_site', - $tabUpdate, - "source='$source' AND login='$login' AND email='$email' AND siren=$siren AND nic=$nic AND ref='$ref'" - ); - - } else { - - $tabUpdate = array( - 'source' => $source, - 'login' => $login, - 'email' => $email, - 'siren' => $siren, - 'nic' => $nic, - 'ref' => $ref, - 'encoursClient' => $encoursClient, - 'rs' => $tabIdentite['Nom'], - 'cp' => $tabIdentite['CP'], - 'ville' => $tabIdentite['Ville'], - 'dateAjout'=>date('Y-m-d'), - 'dateSuppr'=>0, - ); - $result = $iDb->insert('surveillances_site', $tabUpdate); - //Si l'insertion echoue, alors c'est une mise à jour - if ( !$result ) { - $result = $iDb->update('surveillances_site', - $tabUpdate, - "source='$source' AND login='$login' AND email='$email' AND siren=$siren AND nic=$nic AND ref='$ref'" - ); - } - } - $output = new SetSurveillanceReturn(); - $output->result = $result; - return $output; - } - - /** - * getSurveillances - * @param SurveillancesFiltre $filtre - * @param integer $deb - * @param integer $nbRep - * @return SurveillancesReturn - */ - public function getSurveillances($filtre, $position=0, $nbRep=100) - { - $this->authenticate(); - $this->permission('survliste'); - - //Initialisation - if (empty($position)) $position = 0; - if (empty($nbRep)) $nbRep = 100; - - $error = new ErrorType(); - $tabRet = array(); - $siren = substr($filtre->siret,0,9); - $nic = substr($filtre->siret,9,5); - - $tri = strtolower(trim($filtre->tri)); - switch ($tri){ - case 'ref': $orderBy='ORDER BY ref'; break; - case 'dateAjout': $orderBy='ORDER BY dateAjout'; break; - case 'dateDerEnvoi':$orderBy='ORDER BY dateDerEnvoi'; break; - case 'rs': $orderBy='ORDER BY rs'; break; - case 'cp': $orderBy='ORDER BY cp'; break; - case 'ville': $orderBy='ORDER BY ville'; break; - default: $orderBy='ORDER BY siren'; break; // siren ou vide ou autre - } - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - - if ($filtre->detail) { - $strSelect = 'source, email, siren, nic, ref, dateAjout, encoursClient, rs, cp, ville, dateDerEnvoi'; - } else { - $strSelect = 'source, email, siren, nic, ref, dateAjout, dateDerEnvoi'; - } - if ($filtre->source!='') $strSource = " AND source='$filtre->source' "; - else $strSource = ''; - - if ($siren>0) $strSiren = " AND siren=$siren "; - else $strSiren = ''; - - // Il faut compter le nombre de siren au total - $tabTmp = $iDb->select('surveillances_site', 'count(*) as nb', "login='$login' AND dateSuppr=0 $strSiren $strSource", false, MYSQL_ASSOC); - $nbRepTot = $tabTmp[0]['nb']; - - $tabTmp = $iDb->select('surveillances_site', $strSelect, "login='$login' AND dateSuppr=0 $strSiren $strSource $orderBy LIMIT $position,$nbRep", false, MYSQL_ASSOC); - foreach ($tabTmp as $i=>$tabSurv){ - if (!$filtre->detail){ - $liste = new Surveillance(); - $liste->source = $tabSurv['source']; - $liste->email = $tabSurv['email']; - $liste->siren = $tabSurv['siren']; - $liste->nic = $tabSurv['nic']; - $liste->ref = utf8_decode($tabSurv['ref']); - $liste->dateAjout = $tabSurv['dateAjout']; //@todo : date - $liste->dateDerEnvoi = $tabSurv['dateDerEnvoi']; //@todo : date - $tabRet[] = $liste; - } else { - if (trim($tabSurv['rs'])<>'') { - $rs = $tabSurv['rs']; - $cp = $tabSurv['cp']; - $ville = $tabSurv['ville']; - } else { - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($tabSurv['siren'], $tabSurv['nic']); - $rs = $tabIdentite['Nom']; - $cp = $tabIdentite['CP']; - $ville = $tabIdentite['Ville']; - $iDb->update('surveillances_site', array( - 'rs' => $rs, - 'cp' => $cp, - 'ville' => $ville), - "login='$login' AND dateSuppr=0 AND siren=".$tabSurv['siren']." AND nic=".$tabSurv['nic']." $strSource", - false - ); - } - $liste = new Surveillance(); - $liste->source = $tabSurv['source']; - $liste->email = $tabSurv['email']; - $liste->siren = $tabSurv['siren']; - $liste->nic = $tabSurv['nic']; - $liste->ref = utf8_decode($tabSurv['ref']); - $liste->dateAjout = $tabSurv['dateAjout']; //@todo : date - $liste->encoursClient = $tabSurv['encoursClient']; - $liste->rs = $rs; - $liste->cp = $cp; - $liste->ville = $ville; - $liste->dateDerEnvoi = $tabSurv['dateDerEnvoi']; //@todo : date - $tabRet[] = $liste; - } - } - $output = new SurveillancesReturn(); - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbRepTot; - $output->result = $tabRet; - return $output; - } - - /** - * Retourne le bilan correspondant au siren, à l'exercice et au formalisme demandé - * - * @param string $siren Siren de l'entreprise - * @param string $millesime Date du bilan au format AAAAMMJJ - * @param string $typeBilan N:Réel Normal, S:Réel Simplifié, C:Consolidé - * @param string $ref Référence S&D obligatoire - * @return Bilan - */ - public function getBilan($siren, $millesime, $typeBilan='N', $ref='') - { - $this->authenticate(); - $this->permission('liasse'); - - //Initialisation - if (empty($typeBilan)) { $typeBilan = 'N'; } - if (empty($ref)) { $ref = ''; } - - debugLog('I',"Bilan $millesime $typeBilan demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $millesime = WDate::dateT('Ymd','d/m/Y',$millesime); - $mBil = new MBilans($siren); - $tabBilan = $mBil->getBilan($millesime, $typeBilan, $ref, true); - - $resultBilan = new Bilan(); - $tabPoste = array(); - foreach($tabBilan as $key => $value){ - if(!in_array($key, array('SIREN', 'DATE_FRAICHE_BILAN', - 'DATE_CLOTURE', 'DATE_CLOTURE_PRE', 'DUREE_MOIS', - 'DUREE_MOIS_PRE', 'MONNAIE', 'CONSOLIDE', 'MONNAIE_ORI', - 'MONNAIE_LIV_UNITE', 'SOURCE', 'devise'))){ - $resultPoste = new BilanPoste(); - $resultPoste->id = $key; - $resultPoste->val = $value; - $tabPoste[] = $resultPoste; - } else { - $resultBilan->$key = $value; - } - } - $this->wsLog('bilan',$siren, $millesime.':'.$typeBilan.':'.$ref); - $resultBilan->POSTES = $tabPoste; - return $resultBilan; - } - - /** - * Retourne la liste des bilans disponible pour une entreprise - * - * @param string $siren Siren de l'entreprise - * @return ListeBilansReturn - */ - public function getListeBilans($siren) - { - $this->authenticate(); - $this->permission('liasse'); - - //Initialisation - $tabRet = array(); - debugLog('I',"Liste des Bilans demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $mBil = new MBilans($siren); - $tabBilans = $mBil->listeBilans(true); - foreach($tabBilans as $bilan) - { - $element = new ListeBilans(); - $element->dateProvPartenaire = $bilan['dateProvPartenaire']; //@todo : date - $element->dateInsert = $bilan['dateInsert']; //@todo : date - $element->typeBilan = $bilan['typeBilan']; - $element->dureeExercice = $bilan['dureeExercice']; - $element->dateExercice = $bilan['dateExercice']; //@todo : date - $element->millesime = $bilan['millesime']; - $element->dateExercicePre = $bilan['dateExercicePre']; //@todo : date - $element->dureeExercicePre = $bilan['dureeExercicePre']; - $element->monnaie = $bilan['monnaie']; - $element->source = $bilan['source']; - $tabRet[] = $element; - } - - debugLog('I', 'Nb Bilans retournés = '. count($tabBilans), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('listebilans', $siren); - $output = new ListeBilansReturn(); - $output->nbReponses = count($tabRet); - $output->result = $tabRet; - return $output; - } - - /** - * Vérifie si un siren existe en base Scores & Décisions - * @param string $siren Siren de l'entité - * @return boolean - */ - public function isSirenExistant($siren) - { - $this->authenticate(); - - //Initialisation - $tabRet = array(); - $siren = trim(substr($siren,0,9)); - $result = false; - debugLog('I',"Siren existant demandée pour siren $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $entrep = $iInsee->sirenExiste($siren); - if (empty($entrep)) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $result = false; - } else { - debugLog('I', "Siren $siren présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $result = true; - } - $this->wsLog('sirenExiste',$siren); - return $result; - } - - /** - * Retourne une annonce en fonction de sa référence - * - * @param string $siren Siren de l'entreprise - * @param string $dateAnnee - * @param integer $numParution - * @param integer $numAnnonce - * @return RechercheAnnonceReturn - */ - public function rechercheAnnonce($source, $dateAnnee, $numParution, $numAnnonce) - { - $this->authenticate(); - $this->permission('histobodacc'); - - //Initialisation - $tabRet = array(); - - debugLog('I',"Annonce précise demandée pour $source, $dateAnnee, $numParution, $numAnnonce",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($dateAnnee)==4) $annee = $dateAnnee; - else $annee = substr($dateAnnee,0,4); - - $iDb = new WDB('jo'); - - switch (strtoupper($source)) - { - case 'BODA': - case 'BODB': - case 'BODC': - $lettre = substr(strtoupper($source),3,1); - if ($annee<2005) { - if ($lettre=='A'){ $numJAL=1; } - elseif ($lettre=='B'){ $numJAL=200; } - else{ break; } - $anneeDeb = $annee.'0101'; - $anneeFin = $annee.'1231'; - $res = $iDb->select('historiques.entrep e, texte t', - "$annee AS Annee_Parution, e.NOBOD AS Num_Parution, e.NOANN AS Num_Annonce, e.NOPAGE AS Num_Page, e.`DATE` AS Date_Parution, e.DEPT AS Departement, e.CODTRI AS Tribunal_Code, 'I' AS typeAnnonce, CONCAT(e.NOANN,' - ',t.annonceTxt) AS annonce", - "e.JAL=$numJAL AND e.NOBOD=$numParution AND e.`DATE` BETWEEN $anneeDeb AND $anneeFin AND e.NOANN=$numAnnonce AND e.ANBASE=t.annonceNum", false, MYSQL_ASSOC); - } else { - $res = $iDb->select('bodacc', - 'Bodacc_Annee_Parution AS Annee_Parution, Bodacc_Num AS Num_Parution, Num_Annonce, Bodacc_Page AS Num_Page, Bodacc_Date_Parution AS Date_Parution, Tribunal_Dept AS Departement, Tribunal_Code, typeAnnonce, annonce', - "Bodacc_Code='$lettre' AND Bodacc_Annee_Parution=$annee AND Bodacc_Num=$numParution AND Num_Annonce=$numAnnonce", false, MYSQL_ASSOC); - } - break; - case 'ASSO': - $res = $iDb->select('asso', - 'YEAR(Date_Parution) AS Annee_Parution, Num_Parution, Num_Annonce, pageDeb AS Num_Page, Date_Parution, Departement, codTribunal AS Tribunal_Code, typeAnnonce, Annonce_Html AS annonce', "Date_Parution BETWEEN '$annee-01-01' AND '$annee-12-31' AND Num_Parution=$annee".sprintf('%04d', $numParution)." AND Num_Annonce=$numAnnonce", - false, MYSQL_ASSOC); - break; - case 'BALO': - $res = $iDb->select('balo', - "YEAR(Date_Parution) AS Annee_Parution, Num_Parution, Num_Affaire AS Num_Annonce, '' AS Num_Page, Date_Parution, '' AS Departement, '' AS Tribunal_Code, 'Insertion' AS typeAnnonce, Annonce_Html AS annonce", "Date_Parution BETWEEN '$annee-01-01' AND '$annee-12-31' AND Num_Parution=$numParution AND Num_Affaire=$numAnnonce", - false, MYSQL_ASSOC); - break; - } - - if (count($res)>0) - { - $iBodacc = new MBodacc(); - foreach ($res as $i => $etab) - { - $annonces = new AnnonceItem(); - $annonces->Annee_Parution = $etab['Annee_Parution']; - $annonces->Num_Parution = $etab['Num_Parution']; - $annonces->Num_Annonce = $etab['Num_Annonce']; - $annonces->Num_Page = $etab['Num_Page']; - $annonces->Date_Parution = $etab['Date_Parution']; //@todo : date - $annonces->Departement = $etab['Departement']; - $annonces->Tribunal_Code = $etab['Tribunal_Code']; - $annonces->Tribunal = $iBodacc->getTribunalNom($etab['Tribunal_Code']); - $annonces->Type_Annonce = $etab['typeAnnonce']; - $annonces->Annonce = strip_tags(strtr( - html_entity_decode($etab['annonce']), - array('>'=>'>','&'=>'&','<'=>'<','’'=>"'") - )); - - $tabRet[] = $annonces; - } - } - $nbTot = count($tabRet); - $output = new RechercheAnnonceReturn(); - $output->criteres = $criteres; - $output->nbReponses = $nbTot; - $output->nbReponsesTotal = $nbTot; - $output->result = $tabRet; - return $output; - } - - /** - * getRatios - * @param string $siren - * @param string $page - * @return RatiosReturn - */ - public function getRatios($siren, $page='ratios') - { - $this->authenticate(); - $this->permission('ratios'); - - global $tva, $mBil, $tabBilan, $efftr, $tabInfla; - $tabFormules = include APPLICATION_PATH . '/../library/Metier/scores/Variables/CacheTabFormules.php'; - require_once 'Metier/scores/Variables/configMRatios.php'; - - //Initialisation - if (empty($page)) $page = 'ratios'; - $tabRatiosInfos = $tabRatiosSecteurs = $tabBilansR = array(); - $tabRatios2 = $tabRatiosEvol = array(); - $tabRet = array(); - debugLog('I',"Liste des Ratios demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - debugLog('I',"Liste des Ratios demandée pour $siren avant getIdentiteEntreprise",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteEntreprise($siren,0,0,false,false); - debugLog('I',"Liste des Ratios demandée pour $siren après getIdentiteEntreprise",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $naf = $tabIdentite['NafEnt']; - $nafLib = $tabIdentite['NafEntLib']; - $efftr = $tabIdentite['Effectif']*1; - $fj = $tabIdentite['FJ']; - - $mBil = new MBilans($siren); - $tabBilans = $mBil->listeBilans(true); - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getRatios sur $siren", print_r($tabBilans, true)); - $nbBilans = count($tabBilans); - $tabBilan = $tabBil = array(); - if ($nbBilans>0){ - $tabRatios = calculRatios($tabBilans, $tabIdentite, true); - } - $nbRatios = count($tabRatios); - debugLog('I',"Liste des Ratios demandée pour $siren après calculRatios ($nbRatios)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - /** Tableau d'infos sur les formules **/ - $tabBorneMin = $tabBorneMax = array(); - foreach ($tabFormules as $formule) { - $id = $formule['id']*1; - $libelle = $formule['libelle']; - $unite = $formule['unite']; - $commentaires = $formule['commentaires']; - $tabFormulesInfos[$id] = $formule; //Pour la gestion des unités des ratios secteur - $ratiosInfos = new RatiosInfos(); - $ratiosInfos->id = 'r'.$id; - $ratiosInfos->libelle = $formule['libelle']; - $ratiosInfos->unite = $formule['unite']; - $ratiosInfos->commentaires = $formule['commentaires']; - $tabRatiosInfos[] = $ratiosInfos; - $tabBorneMin[$id] = $formule['borneMin']; - $tabBorneMax[$id] = $formule['borneMax']; - } - - $tabAnnees = array(); - foreach ($tabRatios as $i=>$R) { - - //Informations sur le bilan - $bilansInfos = new RatiosBilansInfos(); - $bilansInfos->dateCloture = $tabBilan[$i]['DATE_CLOTURE']; //@todo : date - $bilansInfos->duree = $tabBilan[$i]['DUREE_MOIS']; - $bilansInfos->devise = $tabBilan[$i]['MONNAIE']; - $bilansInfos->typeBilan = $tabBilan[$i]['CONSOLIDE']; - $bilansInfos->unite = 'U'; - if ( substr($tabBilan[$i]['DATE_CLOTURE'],0,4)>1900 ){ - $tabAnnees[$i]=substr($tabBilan[$i]['DATE_CLOTURE'],0,4); - } - - $tabRatiosEntrep = array(); - $tabRatiosEntrepEvol = array(); - foreach ( $R as $Ridx=>$Rmont ){ - - if ($Rmont<>'NS') { - if ( $tabBorneMin[$Ridx]<>'' && $Rmont<$tabBorneMin[$Ridx] ){ - $Rmont='<'.$tabBorneMin[$Ridx]; - } elseif ( $tabBorneMax[$Ridx]<>'' && $Rmont>$tabBorneMax[$Ridx] ){ - $Rmont='>'.$tabBorneMax[$Ridx]; - } - } - - // RatiosEntrep - $ratiosEntrep = new Ratios(); - if (substr($Rmont,0,1)=='N' || substr($Rmont,0,1)=='<' || substr($Rmont,0,1)=='>'){ - $ratiosEntrep->id = 'r'.$Ridx; - $ratiosEntrep->val = $Rmont; - } else { - $ratiosEntrep->id = 'r'.$Ridx; - $ratiosEntrep->val = round($Rmont,2); - } - $tabRatiosEntrep[] = $ratiosEntrep; - - if (($tabBilan[$i]['CONSOLIDE']=='S' && isset($tabRatios[$i+1])&&($tabBilan[$i+1]['CONSOLIDE']=='S'||($tabBilan[$i+1]['CONSOLIDE']=='N'&&$tabBilan[$i+1]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) || - ($tabBilan[$i]['CONSOLIDE']=='N'&&isset($tabRatios[$i+1])&&($tabBilan[$i+1]['CONSOLIDE']=='N'||($tabBilan[$i+1]['CONSOLIDE']=='S'&&$tabBilan[$i+1]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) - ) - $Rmont=(($R[$Ridx]-$tabRatios[$i+1][$Ridx])*100)/abs($tabRatios[$i+1][$Ridx]); - elseif ( ($tabBilan[$i]['CONSOLIDE']=='S'&&isset($tabRatios[$i+1])&&($tabBilan[$i+2]['CONSOLIDE']=='S'||($tabBilan[$i+2]['CONSOLIDE']=='N'&&$tabBilan[$i+2]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) - || ($tabBilan[$i]['CONSOLIDE']=='N'&&isset($tabRatios[$i+1])&&($tabBilan[$i+2]['CONSOLIDE']=='N'||($tabBilan[$i+2]['CONSOLIDE']=='S'&&$tabBilan[$i+2]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) - ) - $Rmont=(($R[$Ridx]-$tabRatios[$i+2][$Ridx])*100)/abs($tabRatios[$i+2][$Ridx]); - else - $Rmont='NS'; - - // RatiosEntrepEvol - $ratiosEntrepEvol = new Ratios(); - if ($Rmont=='NS' || $Rmont<-800 || $Rmont>800){ - $ratiosEntrepEvol->id = 'r'.$Ridx; - $ratiosEntrepEvol->val = 'NS'; - } else { - $ratiosEntrepEvol->id = 'r'.$Ridx; - $ratiosEntrepEvol->val = number_format($Rmont,2,',',' '); - } - $tabRatiosEntrepEvol[] = $ratiosEntrepEvol; - } - $bilansInfos->RatiosEntrep = $tabRatiosEntrep; - $bilansInfos->RatiosEntrepEvol = $tabRatiosEntrepEvol; - $tabBilansR[] = $bilansInfos; - } - - debugLog('I',"Liste des Ratios demandée pour $siren après EVOLUTION",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - // Tableau des ratios secteurs - - if (strlen($naf)>4) $strNaf = " AND naf5='$naf' "; - else $strNaf = " AND naf4='$naf' "; - $strAnnees = implode(',', $tabAnnees); - - $tabRatiosSecteurs = array(); - - $tabAnnees = array_unique($tabAnnees); - - if ( count($tabAnnees)>0 ) - { - $iDb = new WDB('jo'); - $tabTmp = $iDb->select('ratios_secteurs', - 'annee, naf5, naf4, id, (montant/nombre) AS ratio, nombre', - "1 $strNaf AND annee IN ($strAnnees) ORDER BY annee DESC, id ASC", - false, MYSQL_ASSOC); - - $nbRatiosSec = 0; - foreach($tabAnnees as $annee) - { - $ratiosSecteur = new RatiosSecteur(); - $ratiosSecteur->annee = $annee; - foreach ($tabTmp as $tmp) - { - if ($tmp['annee']== $annee) - { - $Ridx = $tmp['id']; - if ($tmp['nombre']>$nbRatiosSec){ - $nbRatiosSec = $tmp['nombre']; - } - - $unite = $tabFormulesInfos[$Ridx]['unite']; - if ($unite=='EUR'){ - $montant = round($tmp['ratio']*1000); - } else { - $montant = round($tmp['ratio']); - } - if ($tabBorneMin[$Ridx]<>'' && $montant<$tabBorneMin[$Ridx]){ - $montant='<'.$tabBorneMin[$Ridx]; - } elseif ($tabBorneMax[$Ridx]<>'' && $montant>$tabBorneMax[$Ridx]){ - $montant='>'.$tabBorneMax[$Ridx]; - } - - $ratiosSecteurListe = new Ratios(); - if (substr($montant,0,1)=='N' || substr($montant,0,1)=='<' || substr($montant,0,1)=='>'){ - $ratiosSecteurListe->id = 'r'.$Ridx; - $ratiosSecteurListe->val = $montant; - } else { - $ratiosSecteurListe->id = 'r'.$Ridx; - $ratiosSecteurListe->val = round($montant,2); - } - $ratiosSecteur->liste[] = $ratiosSecteurListe; - } - } - $tabRatiosSecteurs[] = $ratiosSecteur; - } - } - - //$tabRatiosSecteurs=array(count($tabTmp), "1 $strNaf AND annee IN ($strAnnees) ORDER BY annee DESC, id ASC"); - - $output = new RatiosReturn(); - $output->Nom = $tabIdentite['Nom']; - $output->NafEnt = $tabIdentite['NafEnt']; - $output->NafEntLib = $tabIdentite['NafEntLib']; - $output->FJ = $fj; - $output->FJ_lib = $tabIdentite['FJ_lib']; - $output->Siren = $siren; - $output->NbEntNaf = $nbRatiosSec; - $output->BilansInfos = $tabBilansR; - $output->RatiosInfos = $tabRatiosInfos; - $output->RatiosSecteur = $tabRatiosSecteurs; - - debugLog('I',"Liste des Ratios demandée pour $siren RETURN",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->wsLog($page, $siren); - return $output; - - } - - /** - * getRapport - * @param string $siren Siren de l'entreprise - * @param integer $niveau Niveau du rapport 1, 2 ou 3 - * @param integer $id Identifiant interne S&D de l'entreprise - * @param boolean $plus Si true, mise en surveillance privilèges - * @param string $ref Si $plus=true, référence facultative de la mise en Surveillance - * @param integer $encours Si $plus=true, encours facultatif Demandé par le client lors de la mise en Surveillance - * @param string $email Si $plus=true, email facultatif pour le suivi - * @return Rapport - */ - public function getRapport($siren, $niveau=3, $id=0, $plus=false, $ref='', $encours=0, $email='') - { - $this->authenticate(); - if (empty($niveau)) $niveau = 3; - if (empty($id)) $id = 0; - $result = new Rapport(); - $filtre = 0; - $idAnn = 0; - - $accesDist=true; - $nivComment=2; - if ($niveau==1){ - $result->Indiscore = $this->getIndiScore($siren, 0, $nivComment, $plus, $ref, $encours, $email); - } elseif ($niveau==2) { - $result->Identite = $this->getIdentite($siren, $id=0); - $result->Indiscore = $this->getIndiScore($siren, 0, $nivComment, $plus, $ref, $encours, $email); - $result->Dirigeants = $this->getDirigeants($siren, false); - $result->Liens = $this->getLiens($siren, true); - $result->Ratios = $this->getRatios($siren, $page="rapport$niveau"); - } elseif ($niveau==3) { - $result->Identite = $this->getIdentite($siren, $id=0); - $result->Indiscore = $this->getIndiScore($siren, 0, $nivComment, $plus, $ref, $encours, $email); - $result->Dirigeants = $this->getDirigeants($siren, false); - $result->Liens = $this->getLiens($siren, true); - $result->Ratios = $this->getRatios($siren, $page="rapport$niveau"); - $result->Annonces = $this->getAnnonces($siren, $filtre, $idAnn); - } - return $result; - } - - /** - * Retourne la liste des banques connues pour une entreprise - * @param string $siren Siren de l'entreprise - * @return BanquesReturn - **/ - public function getBanques($siren) - { - $this->authenticate(); - $this->permission('banque'); - - //Initialisation - $iDb = new WDB('sdv1'); - $tabRet = array(); - debugLog('I',"Liste des banques demandée pour siren $siren", - __LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (intval($siren)<=1000) { - $this->sendError('1010'); - } - - $res=$iDb->select('banques', 'codeBanque, codeGuichet, libBanqueGuichet, precis, dateSource*1 AS dateSource', "siren=$siren", false, MYSQL_ASSOC); - $tmp=$iDb->select('fedRib', "codeBanque, codeGuichet, CONCAT(libBanque,' ',libGuichet) AS libBanqueGuichet, 0 AS precis, IF (dateInfo='0000-00-00', dateDispo*1, dateInfo*1) AS dateSource", "siren=$siren", false, MYSQL_ASSOC); - $res=array_merge($res, $tmp); - foreach ($res as $tabBanque){ - $dateSource=$tabBanque['dateSource']; - $codBanque=$tabBanque['codeBanque']; - $codGuichet=$tabBanque['codeGuichet']; - $libBanque=trim($tabBanque['libBanqueGuichet']); - $found=false; - $adrBanque1=$adrBanque2=$adrBanqueCP=$adrBanqueVille=''; - - if ($codBanque>0 && $codGuichet>0 && - $dateSource>(date('Y')-4)*10000+101 && - $dateSourceselect('insee.BDF_Etabs b, insee.BDF_Guichets g', - 'g.bdfFibCodeEtab AS banque, g.bdfFibCodeGuichet AS guichet, b.bdfFibDenom40 AS nomBanque, b.bdfFibDenom10 AS sigleBanque, g.bdfFibDenom20 AS nomGuichet, g.bdfFibAdresse1 AS adresse1, g.bdfFibAdresse2 AS adresse2, g.bdfFibAdresse3 AS adresse3, g.CP, g.Ville', "g.bdfFibCodeEtab=$codBanque AND g.bdfFibCodeGuichet=$codGuichet AND b.bdfFibCodeEtab=g.bdfFibCodeEtab", - false, MYSQL_ASSOC); - if (isset($tmp[0])){ - $libBanque=trim($tmp[0]['nomBanque'].' '.$tmp[0]['nomGuichet']); - $adrBanque1=$tmp[0]['adresse1']; - $adrBanque2=trim($tmp[0]['adresse2'].' '.$tmp[0]['adresse3']); - $adrBanqueCP=$tmp[0]['CP']; - $adrBanqueVille=$tmp[0]['Ville']; - $found=true; - }; - } - if (!$found && $codBanque>0 && - $dateSource>(date('Y')-4)*10000+101 && - $dateSourceselect('insee.BDF_Etabs', "bdfFibCodeEtab AS banque, '' AS guichet, bdfFibDenom40 AS nomBanque, '' AS nomGuichet, '' AS adresse1, '' AS adresse2, '' AS adresse3, '' AS CP, '' AS Ville", "bdfFibCodeEtab=$codBanque", false, MYSQL_ASSOC); - if (isset($tmp[0])){ - $libBanque=trim($tmp[0]['nomBanque'].' '.$tmp[0]['nomGuichet']); - $adrBanque1=$tmp[0]['adresse1']; - $adrBanque2=trim($tmp[0]['adresse2'].' '.$tmp[0]['adresse3']); - $adrBanqueCP=$tmp[0]['CP']; - $adrBanqueVille=$tmp[0]['Ville']; - } else continue; - } else continue; - - $banque = new Banque(); - $banque->codeBanque = $codBanque; - $banque->codeGuichet = $codGuichet; - $banque->libBanque = $libBanque; - $banque->adresse1 = $adrBanque1; - $banque->adresse2 = $adrBanque2; - $banque->cp = $adrBanqueCP; - $banque->ville = $adrBanqueVille; - $tabRet[] = $banque; - } - debugLog('I',"Liste des banques pour siren $siren : ".count($tabRet).' banques',__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $this->wsLog('banque', $siren); - $output = new BanquesReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des compétences territoriales pour un établissement à une adresse donnée. - * @param string $siret Siret de l'établissement - * @param string $type Type de compétence (pre:prefectures et s/prefectures, jal;journaux d'annonces légales, tri:tribunaux, adm:administrateurs et mandataires judiciaires, hui:huissiers, cfe:centres de formalités des entreprises) - * @param string $codeInsee Code Insee de la commune de l'établissement - * @return ListeCompetencesReturn - */ - public function getListeCompetences($siret, $type, $codeInsee) - { - $this->authenticate(); - $this->permission('competences'); - - //Initialisation - $error = new ErrorType(); - $type = strtolower($type); - - debugLog('I',"Liste des compétences $type demandée pour la commune $codeInsee",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - $iBodacc = new MBodacc(); - $cp=$codeInsee*1; - $dep=false; - if (substr($codeInsee,0,2)=='2A' || substr($codeInsee,0,2)=='2B') - { - $dep=20; $cp=20000+(substr($codeInsee,2,3))*1; - } - elseif ($cp>0 && $cp<100) $dep=$cp; - elseif ($cp>970 && $cp<977) $dep=$cp; - elseif ($cp>999 && $cp<10000) $dep='0'.substr($cp,0,1); - elseif ($cp>=10000 && $cp<96000) $dep=substr($cp,0,2); - elseif ($cp>=99000) $dep=substr($cp,0,2); - elseif ($cp>=98000) $dep=substr($cp,0,3); - elseif ($cp>=97100 && $cp<97700) $dep=substr($cp,0,3); - - require_once 'i18n/cleanchar.php'; - - if ($type=='pre'){ - - $iDb = new WDB('jo'); - $tabTmp2 = $iDb->select('villes', 'DEP, COM, AR, CT', 'codeInsee='.$codeInsee, false, MYSQL_ASSOC); - $arrond = $tabTmp2[0]['AR']; - unset($iDb); - $iDb = new WDB('insee'); - $tabTmp2 = $iDb->select('insee_tabArrond', 'CHEFLIEU, ARTMAJ, NCC', "DEP='$dep' AND AR='$arrond'", false, MYSQL_ASSOC); - $nomSousPref = trim(strtr($tabTmp2[0]['ARTMAJ'],array('('=>'',')'=>'',' '=>'', "'"=>'')).' '.$tabTmp2[0]['NCC']); - unset($iDb); - $tabTmp = $iBodacc->getTribunauxParDep($dep); - foreach ($tabTmp as $i=>$tribunal) - { - if ($tribunal['triType']=='A' || $tribunal['triType']=='B') - { - $pref = levenshtein($tribunal['triNom'], 'PREFECTURE DE '.$nomSousPref); - $spref = levenshtein($tribunal['triNom'], 'SOUS PREFECTURE DE '.$nomSousPref); - - if ($tribunal['triType']=='B' && ($pref>7 || $spref>5)) continue; - - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType'].$typeP; - $competence->Nom = strtoupper($tribunal['triNom']); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper( - preg_replace('/ +/',' ',$tribunal['triAdrNum'].' '. - $tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '. - $tribunal['triAdrVoie'])); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $tribunal['triCommentaire']; - $tabRet[] = $competence; - - } - } - - } elseif ($type=='jal') { - - $tabTmp = $iBodacc->getJALparDep($dep); - foreach ($tabTmp as $i=>$comp) - { - $infos=''; - if (trim($comp['parution'])<>'') $infos.='Parution '.$comp['parution'].'. '; - if (trim($comp['aboAnnuel'])>0) $infos.='Abonnement Annuel : '.$comp['aboAnnuel'].' euros. '; - if (trim($comp['infos'])<>'') $infos.=$comp['infos']; - - $competence = new Competence(); - $competence->Id = 9000+$comp['id']*1; - $competence->IdSup = 0; - $competence->Code = ''; - $competence->Type = ''; - $competence->Nom = strtoupper($comp['nomJal']); - $competence->Siret = ''; - $competence->Adr = strtoupper($comp['adresse']); - $competence->AdrComp = ''; - $competence->CP = $comp['cp']; - $competence->Ville = strtoupper($comp['ville']); - $competence->CodeInsee = ''; - $competence->Tel = $comp['tel']; - $competence->Fax = $comp['fax']; - $competence->Web = $comp['siteWeb']; - $competence->Mail = $comp['email']; - $competence->Statut = 'Actif'; - $competence->DateCessation = ''; - $competence->Remarque = trim($infos); - $tabRet[] = $competence; - } - - } elseif ($type=='tri' || $type=='adm' || $type=='hui') { - - $tabTmp = $iBodacc->getTribunauxParCommune($codeInsee); - foreach ($tabTmp as $i=>$tribunal) - { - if (//$tribunal['triType']=='C' || - $tribunal['triType']=='G'// || - /*$tribunal['triType']=='I'*/) { - $idCA = $tribunal['triIdSup']; - $codeTGI = $tribunal['triCode']; - $code = strtoupper(substr($tribunal['triCode'],0,3)); - } - debugLog('D',"Liste des compétences $type demandée pour la commune $codeInsee ($dep) : ". - "Type=".$tribunal['triType'].', '. - "Code=".$tribunal[$codeTGI],__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($tribunal['triType']<>'E' && $tribunal['triType']<>'O' && - $tribunal['triType']<>'T' && $tribunal['triType']<>'R' && - $tribunal['triType']<>'N' && $tribunal['triType']<>'U' && - $tribunal['triType']<>'Z') - { - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType']; - $competence->Nom = strtoupper(cleanstring($tribunal['triNom'])); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper(cleanstring(preg_replace('/ +/',' ', - $tribunal['triAdrNum'].' '. - $tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '. - $tribunal['triAdrVoie']))); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $tribunal['triCommentaire']; - if ($tribunal['triNumGreffe']*1>0) - { - $competence->IdentifiantGreffe = $tribunal['triNumGreffe']; - } - $tabRet[] = $competence; - } - } - } - - if ($type=='adm') - { - $iInsee = new MInsee(); - $tabTmp = $iInsee->getMandataires(array($idCA), false); - $tabRet = array(); - $nbAff=0; - foreach ($tabTmp as $i=>$tribunal) - { /** @todo A revoir Debut **/ - if (stripos($tribunal['tribunal'], $code)!==false || - stripos($tribunal['tribunal'], 'SAINT')!==false) - { - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($tribunal['adresse']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $tribunal['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation'], - $competence->Remarque = $tribunal['contact']; - //,,,,Prenom,,,Statut,,,cp,ville,tel,fax,email,web,contact - $tabRet[] = $competence; - $nbAff++; - } - } - if ($nbAff==0) - { - foreach ($tabTmp as $i=>$tribunal) - { - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($tribunal['adresse']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $tribunal['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation'], - $competence->Remarque = $tribunal['contact']; - //,,,,Prenom,,,Statut,,,cp,ville,tel,fax,email,web,contact - $tabRet[] = $competence; - } - }/** @todo A revoir Fin : Lier correctement les mandataires à un TI principal **/ - } - elseif ($type=='hui') - { - $iInsee = new MInsee(); - $tabTmp = $iInsee->getHuissiers(array($codeTGI), false); - - $tabRet = array(); - $nbAff = 0; - foreach ($tabTmp as $i=>$tribunal) - { - $adr = $iInsee->structureVoie($tribunal['adresse']); - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($adr['num'].' '.$adr['adr_btq'].' '. - $adr['typeVoie'].' '.$adr['libVoie']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $adr['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation']; - $competence->Remarque = strtr($tribunal['contact'], - array( '
        '=>', ', '
        '=>', ', - '
        '=>', ', - )); - $tabRet[] = $competence; - } - $nbComp = count($tabTmp); - debugLog('I',"$nbComp compétences $type trouvées pour le tribunal $codeTGI",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } - elseif ($type=='cfe') - { - $tabTmp = $iBodacc->getTribunauxParCommune($codeInsee); - foreach ($tabTmp as $i=>$tribunal) - { - if ($tribunal['triType']=='C' || $tribunal['triType']=='O' || - $tribunal['triType']=='T' || $tribunal['triType']=='R' || - $tribunal['triType']=='N' || $tribunal['triType']=='U' || - $tribunal['triType']=='Z') - { - if (strlen($tribunal['triCommentaire'])==32 && - strpos($tribunal['triCommentaire'], ' ')===false) - $remarque=''; - else $remarque=$tribunal['triCommentaire']; - - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType']; - $competence->Nom = strtoupper($tribunal['triNom']); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper(preg_replace('/ +/',' ',$tribunal['triAdrNum'].' '.$tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '.$tribunal['triAdrVoie'])); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $remarque; - $tabRet[] = $competence; - } - } - } - $this->wsLog('competences',$siret,$type.'/'.$codeInsee); - $output = new ListeCompetencesReturn(); - $output->result = $tabRet; - $output->nbReponses = count($tabRet); - return $output; - } - - /** - * Retourne le statut du webservice - * @return StatusReturn - */ - public function status() - { - /* @todo tester les différents éléments qui peuvent conduire - * à un problème dans les services tel que la connexion à la - * base de données, l'accès FTP, l'accès HTTP, l'accès système de fichier - */ - - //Enregistrement des accès à la requête getIdentite - Zend_Registry::get('WsLogger')->info("status - ip:". - $_SERVER['REMOTE_ADDR'].", login:".$_SERVER['PHP_AUTH_USER']. - ", hash:".$_SERVER['PHP_AUTH_PW']); - - $error = new StatusReturn(); - //Test connexion à la base de données - $db = new WDB('jo'); - if (!$db) { - $error->statusCode = 9000; - $error->statusMsg = $this->listError['9000']; - } else { - $error->statusCode = 3000; - $error->statusMsg = $this->listError['3000']; - } - return $error; - } - -} - -?> \ No newline at end of file diff --git a/library/WsScore/Entreprise/v0.4/Types.php b/library/WsScore/Entreprise/v0.4/Types.php deleted file mode 100644 index 15b67962..00000000 --- a/library/WsScore/Entreprise/v0.4/Types.php +++ /dev/null @@ -1,3585 +0,0 @@ - 'ErrorType', - 'StatusReturn' => 'StatusReturn', - 'SearchReturn' => 'SearchReturn', - 'SearchEntrepriseReturn' => 'SearchEntrepriseReturn', - 'SearchDirReturn' => 'SearchDirReturn', - 'DirigeantsReturn' => 'DirigeantsReturn', - 'AnnoncesReturn' => 'AnnoncesReturn', - 'InseeReturn' => 'InseeReturn', - 'TvaReturn' => 'TvaReturn', - 'LiensReturn' => 'LiensReturn', - 'InfosRegReturn' => 'InfosRegReturn', - 'ListeBilansReturn' => 'ListeBilansReturn', - 'SetSurveillanceReturn' => 'SetSurveillanceReturn', - 'SurveillancesReturn' => 'SurveillancesReturn', - 'ListeEtablissementsReturn' => 'ListeEtablissementsReturn', - 'RatiosReturn' => 'RatiosReturn', - 'RechercheAnnonceReturn' => 'RechercheAnnonceReturn', - 'Identite' => 'Identite', - 'GeoInfos' => 'GeoInfos', - 'IdentiteBilan' => 'IdentiteBilan', - 'IdentiteBourse' => 'IdentiteBourse', - 'AutreSiren' => 'AutreSiren', - 'EntrepriseCriteres' => 'EntrepriseCriteres', - 'DirigeantCriteres' => 'DirigeantCriteres', - 'EntrepriseItem' => 'EntrepriseItem', - 'EntrepriseDirItem' => 'EntrepriseDirItem', - 'Etablissement' => 'Etablissement', - 'Dirigeant' => 'Dirigeant', - 'AnnonceFilter' => 'AnnonceFilter', - 'Annonce' => 'Annonce', - 'AnnonceEvenement' => 'AnnonceEvenement', - 'AnnonceNum' => 'AnnonceNum', - 'Actionnaire' => 'Actionnaire', - 'Participation' => 'Participation', - 'InseeEven' => 'InseeEven', - 'InfosReg' => 'InfosReg', - 'InfosBourse' => 'InfosBourse', - 'ListeBilans' => 'ListeBilans', - 'SurveillancesFiltre' => 'SurveillancesFiltre', - 'Surveillance' => 'Surveillance', - 'Bilan' => 'Bilan', - 'BilanPoste' => 'BilanPoste', - 'RechercheAnnonceCriteres' => 'RechercheAnnonceCriteres', - 'AnnonceItem' => 'AnnonceItem', - 'RatiosBilansInfos' => 'RatiosBilansInfos', - 'RatiosInfos' => 'RatiosInfos', - 'RatiosSecteur' => 'RatiosSecteur', - 'Ratios' => 'Ratios', - 'Rapport' => 'Rapport', - 'Indiscore' => 'Indiscore', - 'Scores' => 'Scores', - 'IndiscoreVariables' => 'IndiscoreVariables', - 'CA_Y' => 'CA_Y', - 'IndiscoreImportExport' => 'IndiscoreImportExport', - 'IndiscoreInfosNotations' => 'IndiscoreInfosNotations', - 'IndiscorePaiement' => 'IndiscorePaiement', - 'IndiscorePaiementDetail' => 'IndiscorePaiementDetail', - 'IndiscoreNotesStructure' => 'IndiscoreNotesStructure', - 'IndiscoreBilans' => 'IndiscoreBilans', - 'AdresseDomEnt' => 'AdresseDomEnt', - 'InfosIris' => 'InfosIris', - 'BanquesReturn' => 'BanquesReturn', - 'Banque' => 'Banque', - 'ListeCompetencesReturn' => 'ListeCompetencesReturn', - 'Competence' => 'Competence', - 'IdentiteProcol' => 'IdentiteProcol', - 'Organe' => 'Organe', - 'AutreSiret' => 'AutreSiret', - 'SearchRefClientReturn' => 'SearchRefClientReturn', - 'SearchRefClient' => 'SearchRefClient', - 'SearchRefClientInfo' => 'SearchRefClientInfo', -); \ No newline at end of file diff --git a/library/WsScore/Entreprise/v0.5/Entreprise.php b/library/WsScore/Entreprise/v0.5/Entreprise.php deleted file mode 100644 index db3ab288..00000000 --- a/library/WsScore/Entreprise/v0.5/Entreprise.php +++ /dev/null @@ -1,3429 +0,0 @@ -authenticate(); - $this->permission('identite'); - - //Initialisation - if (empty($id)) { $id = 0; } - $forceVerif = false; - - $tdeb = microtime(1); - $ligne = date('YmdHis').";$siret;Ws->getIdentite Avant ..."; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - debugLog('I',"Identités demandée pour siret $siret (id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if ($siren*1==0 && $id==0) { - $this->sendError('1010'); - } - if ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren, $nic, $id, $forceVerif); - debugLog('I', "Après getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $duree = round(microtime(1)-$tdeb,3); - $ligne = date('YmdHis').";$siret;Ws->getIdentite juste apres iInsee->... ($duree s)"; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - if (empty($entrep) || empty($entrep['id']) ) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - - $identite = new Identite(); - $identite->id = $entrep['id']; - $identite->Siret = $entrep['Siret']; - $identite->SiretSiege = $entrep['SiretSiege']; - $identite->Siege = $entrep['Siege']; - $identite->AncienSiege = $entrep['AncienSiege']; - $identite->AncienSiegeDateFin = $entrep['AncienSiegeDateFin']; - $identite->TribunalCode = prepareString($entrep['Tribunal']); - $identite->TribunalLib = prepareString($entrep['TribunalLib']); - //'NumGreffe' = $entrep['numGreffe'], // Ajouté le 4 08 2009 - $identite->NumRC = $entrep['numRC']; // Ajouté le 4 08 2009 - $identite->Actif = $entrep['Actif']; - $identite->ActifEco = $entrep['ActifEco']; // Etab éco actif, ajout le 28/04/2011 - $identite->ActifEcoDate = $entrep['ActifEcoDate']; // Date si éco inactif et jur actif - $identite->ActifEcoType = $entrep['ActifEcoType']; // vide ou NPAI ou PFER ou ECOF - $identite->EntActiveRCS = $entrep['EntActiveRCS']; - $identite->AutreId = $entrep['AutreId']; - $identite->Source = $entrep['Source']; - $identite->SourceId = $entrep['SourceId']; - $identite->Isin = $entrep['Isin']; - $identite->Nom = prepareString(strtr($entrep['Nom'],'/*',' ')); - $identite->Nom2 = prepareString($entrep['Nom2']); - $identite->NomLong = prepareString($entrep['nomLong']); // Ajouté le 4 08 2009 - $identite->NomCommercial = prepareString($entrep['NomCommercial']); // Ajouté le 16 11 2010 - $identite->Siret = $entrep['Siret']; - $identite->Sigle = prepareString($entrep['Sigle']); - $identite->SigleLong = prepareString($entrep['sigleLong']); // Ajouté le 4 08 2009 - $identite->Enseigne = prepareString($entrep['Enseigne']); - $identite->EnseigneLong = prepareString($entrep['enseigneLong']); // Ajouté le 16 11 2010 - $identite->Adresse = prepareString($entrep['Adresse']); - $identite->Adresse2 = prepareString($entrep['Adresse2']); - $identite->AdresseNum = prepareString($entrep['AdresseNum']); - $identite->AdresseBtq = prepareString($entrep['AdresseBtq']); - $identite->AdresseVoie = prepareString($entrep['AdresseVoie']); - $identite->AdresseRue = prepareString($entrep['AdresseRue']); - $identite->CP = $entrep['CP']; - $identite->Ville = prepareString($entrep['Ville']); - $identite->Pays = prepareString($entrep['Pays']); // Ajouté le 18 02 2008 - $identite->PaysIso2 = $entrep['PaysIso2']; - $identite->AdresseDom = $entrep['AdresseDom']; - - $tabAdresseDomEnt = array(); - if (isset($entrep['AdresseDomEnt']) && count($entrep['AdresseDomEnt'])>0){ - foreach ($entrep['AdresseDomEnt'] as $element){ - $adresseDomEnt = new AdresseDomEnt(); - $adresseDomEnt->siren = $element['siren']; - $adresseDomEnt->nom = $element['nom']; - $tabAdresseDomEnt[] = $adresseDomEnt; - } - } - $identite->AdresseDomEnt = $tabAdresseDomEnt; - - $identite->AdresseDomNb = $entrep['AdresseDomNb']; - $identite->Civilite = $entrep['Civilite']; - $identite->NbEtab = $entrep['NbEtab']; - $identite->Tel = prepareString($entrep['Tel']); - $identite->Fax = prepareString($entrep['Fax']); - $identite->Web = prepareString($entrep['Web']); - $identite->Mail = prepareString($entrep['Mail']); - $identite->GeoLat = $entrep['GeoLat']; - $identite->GeoLon = $entrep['GeoLon']; - $identite->GeoPrecis = $entrep['GeoPrecis']; - - $geoInfos = new GeoInfos(); - $geoInfos->CUCS = $entrep['GeoInfos']['CUCS']; - $geoInfos->NCUCS = $entrep['GeoInfos']['NCUCS']; - $geoInfos->ZRU = $entrep['GeoInfos']['ZRU']; - $geoInfos->NZRU = $entrep['GeoInfos']['NZRU']; - $geoInfos->ZFU = $entrep['GeoInfos']['ZFU']; - $geoInfos->NZFU = $entrep['GeoInfos']['NZFU']; - $geoInfos->ZUS = $entrep['GeoInfos']['ZUS']; - $geoInfos->NZUS = $entrep['GeoInfos']['NZUS']; - $geoInfos->AFR = $entrep['GeoInfos']['AFR']; - $geoInfos->NAFR = $entrep['GeoInfos']['NAFR']; - $geoInfos->ZRR = $entrep['GeoInfos']['ZRR']; - $geoInfos->NZRR = $entrep['GeoInfos']['NZRR']; - $identite->GeoInfos = $geoInfos; - - $identite->TvaNumero = $entrep['TvaNumero']; - $identite->TvaAttribue = $entrep['TvaAttribue']; - $identite->FJ = $entrep['FJ']; - $identite->FJ_Lib = $entrep['FJ_lib']; - $identite->FJ2 = $entrep['FJ2']; // Ajouté le 4 08 2009 - $identite->FJ2_Lib = $entrep['FJ2_Lib']; // Ajouté le 4 08 2009 - $identite->Siren = $entrep['Siren']; - $identite->Nic = $entrep['Nic']; - $identite->NafEnt = $entrep['NafEnt']; - $identite->NafEntLib = $entrep['NafEntLib']; - $identite->NafEtab = $entrep['NafEtab']; - $identite->NafEtabLib = $entrep['NafEtabLib']; - $identite->NaceEtab = $entrep['NaceEtab']; - $identite->NaceEnt = $entrep['NaceEnt']; - $identite->Nafa = $entrep['APRM']; - $identite->NafaLib = prepareString($entrep['APRM_Lib']); - $identite->NumRM = $entrep['NumRM']; - $identite->Activite = $entrep['Activite']; - $identite->Capital = $entrep['Capital']; - $identite->CapitalDev = $entrep['CapitalDev']; - $identite->CapitalLib = $entrep['CapitalLib']; // Ajouté le 18 02 2008 - $identite->CapitalType = prepareString($entrep['CapitalType']); // Ajouté le 4 08 2009 - $identite->DateCreaEt = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEt']); - $identite->DateCreaEn = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEn']); - $identite->DateClotEt = $entrep['DateClotEt']; //@todo : date - $identite->DateImmat = $entrep['dateImmat']; // Ajouté le 4 08 2009 - $identite->DateRadiation = $entrep['dateRad']; // Ajouté le 4 08 2009 - //'DateMajRCS' = $entrep['DateMajRCS'], // Ajouté le 4 08 2009 - $identite->EffEnTr = $entrep['EffEnTr']; - $identite->EffEnTrLib = $entrep['EffEnTrLib']; - $identite->Effectif = $entrep['Effectif']; - $identite->EffEtTr = $entrep['EffEtTr']; // Ajout le 11 08 2010 - $identite->EffEtTrLib = $entrep['EffEtTrLib']; // Ajout le 11 08 2010 - $identite->EffectifEtab = $entrep['EffectifEtab']; // Ajout le 11 08 2010 - $identite->Dept = $entrep['Dept']; - $identite->codeCommune = prepareString($entrep['codeCommune']); - $identite->AnneeEffEn = $entrep['AnneeEffEn']; - $identite->AnneeEffEt = $entrep['AnneeEffEt']; - $identite->AnneeTCA = $entrep['AnneeTCA']; - $identite->TrancheCA = $entrep['TrancheCA']; - $identite->TrancheCALib = $entrep['TrancheCALib']; - $identite->TrancheCAType = $entrep['TrancheCAType']; - $identite->dir1Code = $entrep['dir1Code']; - $identite->dir1Titre = prepareString($entrep['dir1Titre']); - $identite->dir1NomPrenom = prepareString($entrep['dir1NomPrenom']); - $identite->dir1DateFct = prepareString($entrep['dir1DateFct']); //@todo : date - $identite->dir1DateNaiss = $entrep['dir1DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir1LieuNaiss = prepareString($entrep['dir1LieuNaiss']); // Ajouté le 4 08 2009 - $identite->dir2Code = $entrep['dir2Code']; - $identite->dir2Titre = prepareString($entrep['dir2Titre']); - $identite->dir2NomPrenom = prepareString($entrep['dir2NomPrenom']); - $identite->dir2DateFct = $entrep['dir2DateFct']; //@todo : date - $identite->dir2DateNaiss = prepareString($entrep['dir2DateNaiss']); //@todo : date // Ajouté le 4 08 2009 - $identite->dir2LieuNaiss = prepareString($entrep['dir2LieuNaiss']); // Ajouté le 4 08 2009 - $identite->Rivoli = $entrep['Rivoli']; - - $identite->InfosIris->codIris = $entrep['InfosIris']['codIris']; - $identite->InfosIris->codComIris = $entrep['InfosIris']['codComIris']; - $identite->InfosIris->libIris = prepareString($entrep['InfosIris']['libIris']); - $identite->InfosIris->typIris = prepareString($entrep['InfosIris']['typIris']); - $identite->InfosIris->evoIris = $entrep['InfosIris']['evoIris']; - $identite->InfosIris->trIris = $entrep['InfosIris']['trIris']; - $identite->InfosIris->grdQuartier = $entrep['InfosIris']['grdQuartier']; - $identite->NatureActivite = $entrep['NatureActivite']; // Nature de l'activité - $identite->OrigineCreation = $entrep['OrigineCreation']; // Origine de la création - $identite->TypeExploitation = $entrep['TypeExploitation']; - $identite->Auxiliaire = $entrep['Auxiliaire']; // 1=Auxiliaire / 0=Non auxiliaire - $identite->Saisonnalite = $entrep['Saisonnalite']; // P=Activité permanente / S=Activité saisonnière - $identite->SurfaceMagasin = $entrep['ACTISURF']*1; // 0=N/D, 1=inf. à 300m2,2=300 à 400m2, 3=400 à 2500m2, 4=sup. à 2500m2 - $identite->SituationJuridique = $entrep['SituationJuridique']; - $identite->Bilan->Millesime = $entrep['bilanAnnee']; - $identite->Bilan->Cloture = $entrep['bilanDate']; //@todo : date - $identite->Bilan->Duree = $entrep['bilanMois']; - $identite->Bilan->Devise = $entrep['bilanDevise']; - $identite->Bilan->Capital = $entrep['bilanDA']; - $identite->Bilan->CA = $entrep['bilanFL']; - $identite->Bilan->CAestime = $entrep['bilanFLestime']; - $identite->Bilan->Resultat = prepareString($entrep['bilanHN']); - $identite->Bilan->Effectif = $entrep['bilanYP']; - $identite->Bourse->placeCotation = $bourse['placeCotation']; - $identite->Bourse->nombreTitres = $bourse['nombreTitres']; - $identite->Bourse->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $identite->Bourse->derCoursDate = $bourse['date']; //@todo : date - $identite->Bourse->derCoursCloture = $bourse['close']; //@todo : date - - $tabAutreSiren = array(); - if (isset($entrep['AutreSiren'])) { - $autreSiren = new AutreSiren(); - $autreSiren->siren = $entrep['AutreSiren']['listeSiren']['siren']; - $autreSiren->type = $entrep['AutreSiren']['listeSiren']['type']; - $tabAutreSiren[] = $autreSiren; - } - $identite->AutreSiren = $tabAutreSiren; - - $tabAutreSiret = array(); - if (count($entrep['AutreSiret'])) { - foreach($entrep['AutreSiret'] as $type => $item) { - $autreSiret = new AutreSiret(); - $autreSiret->type = $type; - $autreSiret->siren = $item['siren']; - $autreSiret->nic = $item['nic']; - $autreSiret->apeEtab = $item['apeEtab']; - $autreSiret->codeEve = $item['codeEve']; - $autreSiret->dateEve = $item['dateEve']; - $autreSiret->adrL1 = $item['adrL1']; - $autreSiret->adrL2 = $item['adrL2']; - $autreSiret->adrL3 = $item['adrL3']; - $autreSiret->adrL4 = $item['adrL4']; - $autreSiret->adrL5 = $item['adrL5']; - $autreSiret->adrL6 = $item['adrL6']; - $autreSiret->adrL7 = $item['adrL7']; - $autreSiret->depCom = $item['depCom']; - $autreSiret->rivoli = $item['rivoli']; - $autreSiret->siege = $item['siege']; - $autreSiret->destinat = $item['destinat']; - $autreSiret->typEtab = $item['typeEtab']; - $autreSiret->origine = $item['origine']; - $tabAutreSiret[] = $autreSiret; - } - } - $identite->AutreSiret = $tabAutreSiret; - - $identite->DateMajINSEE = $entrep['DateMajINSEE']; //@todo : date - $identite->DateMajRCS = $entrep['DateMajRCS']; //@todo : date - $identite->DateMajBILAN = $entrep['bilanDateMaj']; //@todo : date - $identite->DateMajANN = $entrep['dateMajANN']; //@todo : date - $identite->DateMajID = $entrep['dateMajIdentite']; //@todo : date - //'importExport' = $entrep['importExport'], - - if (preg_match('/NAF4/i', $this->tabInfoUser['pref'])) - { - $entrep2 = $iInsee->getNaf4($siren, $nic, $id); - $identite->Naf4Ent = $entrep2['apen4']; - $identite->Naf4Etab = $entrep2['apet4']; - $identite->Naf4EntLib = prepareString($entrep2['apen4_lib']); - $identite->Naf4EtabLib = prepareString($entrep2['apet4_lib']); - } - - debugLog('I', 'Etablissement retourné = '. $entrep['Nom'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('identite',$siret,$id); - $duree=round(microtime(1)-$tdeb,3); - $ligne=date('YmdHis').";$siret;Ws->getIdentite APRES ($duree s) !!!"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - - return $identite; - } - - /** - * Retourne les informations identitaires de l'entreprise ou de l'établissement demandé - * @param string $siret Siren de l'entreprise ou siret de l'établissement - * @param integer $id Identifiant S&D de l'établissement - * @return IdentiteProcol Fiche d'identité de l'établissement - */ - public function getIdentiteProcol($siret, $id=0, $forceVerif=false) - { - $this->authenticate(); - $this->permission('idprocol'); - - debugLog('I',"Identité AGS demandée pour siret $siret (id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - if (intval($siren)==0 && $id==0) { - $this->sendError('1010'); - } - if ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren, $nic, $id, $forceVerif); - debugLog('I', "Après getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $duree = round(microtime(1)-$tdeb,3); - $ligne = date('YmdHis').";$siret;Ws->getIdentite juste apres iInsee->... ($duree s)"; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - if (empty($entrep)) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - - $identiteProcol = new IdentiteProcol(); - - //Element identite - $identite = new Identite(); - $identite->id = $entrep['id']; - $identite->Siret = $entrep['Siret']; - $identite->SiretSiege = $entrep['SiretSiege']; - $identite->Siege = $entrep['Siege']; - $identite->TribunalCode = $entrep['Tribunal']; - $identite->TribunalLib = $entrep['TribunalLib']; - $identite->NumRC = $entrep['numRC']; // Ajouté le 4 08 2009 - $identite->Actif = $entrep['Actif']; - $identite->EntActiveRCS = $entrep['EntActiveRCS']; - $identite->AutreId = $entrep['AutreId']; - $identite->Source = $entrep['Source']; - $identite->SourceId = $entrep['SourceId']; - $identite->Isin = $entrep['Isin']; - $identite->Nom = strtr($entrep['Nom'],'/*',' '); - $identite->Nom2 = $entrep['Nom2']; - $identite->NomLong = $entrep['nomLong']; // Ajouté le 4 08 2009 - $identite->NomCommercial = $entrep['NomCommercial']; // Ajouté le 16 11 2010 - $identite->Siret = $entrep['Siret']; - $identite->Sigle = $entrep['Sigle']; - $identite->SigleLong = $entrep['sigleLong']; // Ajouté le 4 08 2009 - $identite->Enseigne = $entrep['Enseigne']; - $identite->EnseigneLong = $entrep['enseigneLong']; // Ajouté le 16 11 2010 - $identite->Adresse = $entrep['Adresse']; - $identite->Adresse2 = $entrep['Adresse2']; - $identite->AdresseNum = $entrep['AdresseNum']; - $identite->AdresseBtq = $entrep['AdresseBtq']; - $identite->AdresseVoie = $entrep['AdresseVoie']; - $identite->AdresseRue = $entrep['AdresseRue']; - $identite->CP = $entrep['CP']; - $identite->Ville = $entrep['Ville']; - $identite->Pays = $entrep['Pays']; // Ajouté le 18 02 2008 - $identite->PaysIso2 = $entrep['PaysIso2']; - $identite->AdresseDom = $entrep['AdresseDom']; - - $tabAdresseDomEnt = array(); - if (isset($entrep['AdresseDomEnt']) && count($entrep['AdresseDomEnt'])>0){ - foreach ($entrep['AdresseDomEnt'] as $element){ - $adresseDomEnt = new AdresseDomEnt(); - $adresseDomEnt->siren = $element['siren']; - $adresseDomEnt->nom = $element['nom']; - $tabAdresseDomEnt[] = $adresseDomEnt; - } - } - $identite->AdresseDomEnt = $tabAdresseDomEnt; - - $identite->AdresseDomNb = $entrep['AdresseDomNb']; - $identite->Civilite = $entrep['Civilite']; - $identite->NbEtab = $entrep['NbEtab']; - $identite->Tel = $entrep['Tel']; - $identite->Fax = $entrep['Fax']; - $identite->Web = $entrep['Web']; - $identite->Mail = $entrep['Mail']; - $identite->GeoLat = $entrep['GeoLat']; - $identite->GeoLon = $entrep['GeoLon']; - $identite->GeoPrecis = $entrep['GeoPrecis']; - $identite->GeoInfos = $entrep['GeoInfos']; - $identite->TvaNumero = $entrep['TvaNumero']; - $identite->TvaAttribue = $entrep['TvaAttribue']; - $identite->FJ = $entrep['FJ']; - $identite->FJ_Lib = $entrep['FJ_lib']; - $identite->FJ2 = $entrep['FJ2']; // Ajouté le 4 08 2009 - $identite->FJ2_Lib = $entrep['FJ2_Lib']; // Ajouté le 4 08 2009 - $identite->Siren = $entrep['Siren']; - $identite->Nic = $entrep['Nic']; - $identite->NafEnt = $entrep['NafEnt']; - $identite->NafEntLib = $entrep['NafEntLib']; - $identite->NafEtab = $entrep['NafEtab']; - $identite->NafEtabLib = $entrep['NafEtabLib']; - $identite->NaceEtab = $entrep['NaceEtab']; - $identite->NaceEnt = $entrep['NaceEnt']; - $identite->Nafa = $entrep['APRM']; - $identite->NafaLib = $entrep['APRM_Lib']; - $identite->NumRM = $entrep['NumRM']; - $identite->Activite = $entrep['Activite']; - $identite->Capital = $entrep['Capital']; - $identite->CapitalDev = $entrep['CapitalDev']; - $identite->CapitalLib = $entrep['CapitalLib']; // Ajouté le 18 02 2008 - $identite->CapitalType = $entrep['CapitalType']; // Ajouté le 4 08 2009 - $identite->DateCreaEt = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEt']); - $identite->DateCreaEn = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEn']); - $identite->DateClotEt = $entrep['DateClotEt']; //@todo : date - $identite->DateImmat = $entrep['dateImmat']; // Ajouté le 4 08 2009 - $identite->DateRadiation = $entrep['dateRad']; // Ajouté le 4 08 2009 - $identite->EffEnTr = $entrep['EffEnTr']; - $identite->EffEnTrLib = $entrep['EffEnTrLib']; - $identite->Effectif = $entrep['Effectif']; - $identite->EffEtTr = $entrep['EffEtTr']; // Ajout le 11 08 2010 - $identite->EffEtTrLib = $entrep['EffEtTrLib']; // Ajout le 11 08 2010 - $identite->EffectifEtab = $entrep['EffectifEtab']; // Ajout le 11 08 2010 - $identite->Dept = $entrep['Dept']; - $identite->codeCommune = $entrep['codeCommune']; - $identite->AnneeEffEn = $entrep['AnneeEffEn']; - $identite->AnneeEffEt = $entrep['AnneeEffEt']; - $identite->AnneeTCA = $entrep['AnneeTCA']; - $identite->TrancheCA = $entrep['TrancheCA']; - $identite->TrancheCALib = $entrep['TrancheCALib']; - $identite->dir1Code = $entrep['dir1Code']; - $identite->dir1Titre = $entrep['dir1Titre']; - $identite->dir1NomPrenom = $entrep['dir1NomPrenom']; - $identite->dir1DateFct = $entrep['dir1DateFct']; //@todo : date - $identite->dir1DateNaiss = $entrep['dir1DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir1LieuNaiss = $entrep['dir1LieuNaiss']; // Ajouté le 4 08 2009 - $identite->dir2Code = $entrep['dir2Code']; - $identite->dir2Titre = $entrep['dir2Titre']; - $identite->dir2NomPrenom = $entrep['dir2NomPrenom']; - $identite->dir2DateFct = $entrep['dir2DateFct']; //@todo : date - $identite->dir2DateNaiss = $entrep['dir2DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir2LieuNaiss = $entrep['dir2LieuNaiss']; // Ajouté le 4 08 2009 - $identite->Rivoli = $entrep['Rivoli']; - $identite->InfosIris->codIris = $entrep['InfosIris']['codIris']; - $identite->InfosIris->codComIris = $entrep['InfosIris']['codComIris']; - $identite->InfosIris->libIris = $entrep['InfosIris']['libIris']; - $identite->InfosIris->typIris = $entrep['InfosIris']['typIris']; - $identite->InfosIris->evoIris = $entrep['InfosIris']['evoIris']; - $identite->InfosIris->trIris = $entrep['InfosIris']['trIris']; - $identite->InfosIris->grdQuartier = $entrep['InfosIris']['grdQuartier']; - $identite->NatureActivite = $entrep['NatureActivite']; // Nature de l'activité - $identite->OrigineCreation = $entrep['OrigineCreation']; // Origine de la création - $identite->TypeExploitation = $entrep['TypeExploitation']; - $identite->Auxiliaire = $entrep['Auxiliaire']; // 1=Auxiliaire / 0=Non auxiliaire - $identite->Saisonnalite = $entrep['Saisonnalite']; // P=Activité permanente / S=Activité saisonnière - $identite->SituationJuridique = $entrep['SituationJuridique']; - $identite->Bilan->Cloture = $entrep['bilanDate']; //@todo : date - $identite->Bilan->Duree = $entrep['bilanMois']; - $identite->Bilan->Devise = $entrep['bilanDevise']; - $identite->Bilan->Capital = $entrep['bilanDA']; - $identite->Bilan->CA = $entrep['bilanFL']; - $identite->Bilan->Resultat = $entrep['bilanHN']; - $identite->Bilan->Effectif = $entrep['bilanYP']; - $identite->Bourse->placeCotation = $bourse['placeCotation']; - $identite->Bourse->nombreTitres = $bourse['nombreTitres']; - $identite->Bourse->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $identite->Bourse->derCoursDate = $bourse['date']; //@todo : date - $identite->Bourse->derCoursCloture = $bourse['close']; //@todo : date - - $tabAutreSiren = array(); - if (isset($entrep['AutreSiren'])) { - $autreSiren = new AutreSiren(); - $autreSiren->siren = $entrep['AutreSiren']['listeSiren']['siren']; - $autreSiren->type = $entrep['AutreSiren']['listeSiren']['type']; - $tabAutreSiren[] = $autreSiren; - } - $identite->AutreSiren = $tabAutreSiren; - - $identite->DateMajINSEE = $entrep['DateMajINSEE']; //@todo : date - $identite->DateMajRCS = $entrep['DateMajRCS']; //@todo : date - $identite->DateMajBILAN = $entrep['bilanDateMaj']; //@todo : date - $identite->DateMajANN = $entrep['dateMajANN']; //@todo : date - $identite->DateMajID = $entrep['dateMajIdentite']; //@todo : date - - if (preg_match('/NAF4/i', $this->tabInfoUser['pref'])) - { - $entrep2 = $iInsee->getNaf4($siren, $nic, $id); - $identite->Naf4Ent = $entrep2['apen4']; - $identite->Naf4Etab = $entrep2['apet4']; - $identite->Naf4EntLib = $entrep2['apen4_lib']; - $identite->Naf4EtabLib = $entrep2['apet4_lib']; - } - - $identiteProcol->Identite = $identite; - - //Eléments annonces légales - $tabRetAnn = $tabLastEven = array(); - if (intval($siren)!=0) { - $anns = $this->getAnnonces($siren, 1); - $anns = $anns->result; - $tribunalProcol = false; - foreach ($anns as $nb=>$ann) - { - $tabRetEven = array(); - foreach ($ann->evenements as $tabEven) { - // On ignore les éléments suivants - if ($tabEven->CodeEven>=7000) continue; - if ($tabEven->CodeEven>=4000 && $tabEven->CodeEven<=4999) continue; - - // Par défaut, on force le tribunal à celui présent dans la dernière annonce de Procol - if ($tribunalProcol==false && $tabEven->CodeEven>=1000 && $tabEven->CodeEven<2000 && $ann->BodaccCode=='BODA') { - $identiteProcol->TribunalCode = $ann->TribunalCode; - $identiteProcol->TribunalLib = prepareString($ann->Tribunal); - $tribunalProcol=true; - } - - // On ne prend que le dernier élément de chaque type - if (in_array($tabEven->CodeEven, $tabLastEven)) continue; - - $tabLastEven[] = $tabEven->CodeEven; - $tabRetEven[] = $tabEven; - } - - if (count($tabRetEven)>0) { - $annonce = new Annonce(); - $annonce->id = $ann->id; - $annonce->BodaccCode = $ann->BodaccCode; - $annonce->BodaccNum = $ann->BodaccNum; - $annonce->NumAnnonce = $ann->NumAnnonce; - $annonce->DateParution = $ann->DateParution; //@todo : date - $annonce->Departement = $ann->Departement; - $annonce->Tribunal = $ann->Tribunal; - $annonce->TribunalCode = $ann->TribunalCode; - $annonce->TribunalSiret = $ann->TribunalSiret; - $annonce->Rubrique = $ann->Rubrique; - $annonce->typeAnnonce = $ann->typeAnnonce; - $annonce->texteRectificatif = $ann->texteRectificatif; - $annonce->texteAnnonce = utf8_encode($ann->texteAnnonce); - $annonce->dateEffet = $ann->dateEffet; //@todo : date - $annonce->dateJugement = $ann->dateJugement; //@todo : date - $annonce->dateInsertionSD = $ann->dateInsertionSD; //@todo : date - $annonce->evenements = $tabRetEven; - $annonce->Lien_Annonce_Pdf = $ann->Lien_Annonce_Pdf; - $tabRetAnn[] = $annonce; - } - } - - $identiteProcol->Annonces = $tabRetAnn; - - $iRncs = new MRncs(); - if ($entrep['Siege']==1 || $entrep['Siege']==11) { - $identiteProcol->LibTypeEtab = 'Etablissement Siege'; - } else { - $tabEtabRncs = $iRncs->getIdentiteEtab($siren, $entrep['Nic']); - if ($tabEtabRncs['Siege']==2) $identiteProcol->LibTypeEtab = 'Etablissement Principal'; - elseif ($tabEtabRncs['Siege']==1) $identiteProcol->LibTypeEtab = 'Etablissement Complementaire'; - elseif ($tabEtabRncs['Siege']==0) $identiteProcol->LibTypeEtab = 'Etablissement Secondaire'; - } - - //@todo - $tabJuge = $iRncs->getIntervenants($siren); - $tabDepots=array(); - foreach ($tabJuge as $iDepot=>$depot) { - $organe = new Organe(); - $organe->codEven = $depot['codEven']; - $organe->libEven = prepareString($depot['libEven']); - $organe->dateEffet = $depot['dateEffet']; - $organe->admcode = $depot['admcode']; - $organe->admfonction = prepareString($depot['admfonction']); - $organe->admnom = prepareString($depot['admnom']); - $organe->admadrNum = $depot['admadrNum']; - $organe->admadrInd = $depot['admadrInd']; - $organe->admadrVoie = $depot['admadrVoie']; // @todo : adm1adr1, adm1adr2, adm1adr3, - $organe->admadrCP = $depot['admadrCP']; - $organe->admadrVille = $depot['admadrVille']; - $tabDepots[] = $organe; - } - $identiteProcol->Organes = $tabDepots; - - - $mLiens = new MLiens($siren); - $tabA = $mLiens->getActionnaires($siren, 1); - $nbA = count($tabA); - $tabAct = array(); - foreach ($tabA as $i=>$lien) { - $liens = new Actionnaire(); - $liens->Pmin = $lien['Pmin']; - $liens->MajMin = $lien['MajMin']; - $liens->RaisonSociale = $lien['RaisonSociale']; - $liens->Pays = $lien['Pays']; - $liens->Siren = $lien['Siren']; - $liens->Actif = $lien['Actif']; - $tabAct[] = $liens; - } - $identiteProcol->Actionnaires = $tabAct; - - $iGreffes = new MGreffes(); - $tabActes = $iGreffes->getListeActes($siren); - - $identiteProcol->StatutsModifDepot = $identiteProcol->StatutsModif = '0000-00-00'; - foreach ($tabActes as $i=>$acte) { - if ('_'.$acte['acte_type']=='_04') { // STATUTS CONSTITUTIFS - $identiteProcol->StatutsConstDepot = $acte['depot_date']; // => 1997-12-18 - $identiteProcol->StatutsConst = $acte['acte_date']; // => 1997-11-13 - break; - } elseif (in_array('_'.$acte['acte_type'], array( - //'_04', // STATUTS CONSTITUTIFS - '_06', // STATUTS A JOUR 9 0000-00-00 2009-09-02 17:05:55 - '_07', // STATUTS A JOUR 9 0000-00-00 2009-09-02 17:05:55 - '_08', // STATUTS A JOUR ET DECLARATION DE CONFORMITE 9 0000-00-00 2009-09-02 17:05:55 - '_09', // STATUTS APRES TRANSFERT DE SIEGE 9 0000-00-00 2009-09-02 17:05:55 - '_A1', // STATUTS 9 0000-00-00 2009-09-02 17:05:55 - '_AH', // AVENANT AUX STATUTS - ))) { - // On ne prend que la dernière modif - if ($identiteProcol->StatutsModifDepot=='0000-00-00' && $identiteProcol->StatutsModif=='0000-00-00') { - $identiteProcol->StatutsModifDepot = $acte['depot_date'];// => 1997-12-18 - $identiteProcol->StatutsModif = $acte['acte_date']; // => 1997-11-13 - } - } - } - - /** Y a t il eu des informations relatives à une cession ? **/ - $tabCes = $iGreffes->getInfosCessions($siren); - if ($tabCes) { - $identiteProcol->CessionJugeLib = $tabCes['cessJuge']; - $identiteProcol->CessionJugeDate = $tabCes['cessDateJuge']; - $identiteProcol->CessionAvisBodac = $tabCes['cessDateBod']; - $identiteProcol->CessionInvenDate = $tabCes['cessDateInv']; - $identiteProcol->CessionCAdeclare = $tabCes['cessCAdec']; - $identiteProcol->CessionEffectif = $tabCes['cessEffectif']; - $identiteProcol->CessionDesc = $tabCes['cessDesc']; - $identiteProcol->CessionDescDate = $tabCes['cessDateDesc']; - $identiteProcol->CessionOffreDate = $tabCes['cessDateLim']; - $identiteProcol->CessionMandataire = $tabCes['cessMand']; - } - } - //sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Debug $siren", print_r($tabRet,true)) ; - debugLog('I', 'Etablissement retourné = '. $entrep['Nom'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('identite',$siret,$id); - - return $identiteProcol; - } - - /** - * Retourne les liens financiers pour une entreprise. - * - * @param string $siren Siren de l'entreprise - * @param boolean $actifsUniquement Uniquement les liens Actifs - * @return LiensReturn - */ - public function getLiens($siren, $actifsUniquement = true) - { - $this->authenticate(); - $this->permission('liens'); - - //Initialisation - if (empty($actifsUniquement)) { $actifsUniquement = true; } - $tabAct = $tabPar = array(); - - debugLog('I',"Liens entreprises demandés pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $mLiens = new MLiens($siren); - $tabA = $mLiens->getActionnaires($siren, $actifsUniquement); - $nbA = count($tabA); - $tabAct = array(); - if ($nbA > 0) { - foreach ($tabA as $i => $lien) { - $actionnaire = new Actionnaire(); - $actionnaire->Pmin = $lien['Pmin']; - $actionnaire->MajMin = $lien['MajMin']; - $actionnaire->RaisonSociale = $lien['RaisonSociale']; - $actionnaire->TypeEntrep = $lien['TypeEntrep']; - $actionnaire->Pays = $lien['Pays']; - $actionnaire->Siren = $lien['Siren']; - $actionnaire->Actif = $lien['Actif']; - $actionnaire->Source = $lien['Source']; - $actionnaire->DateLien = $lien['DateLien']; //@todo : date - $actionnaire->DateMaj = $lien['DateMaj']; //@todo : date - $tabAct[] = $actionnaire; - } - } - debugLog('W', "$nbA actionnaires pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $tabP = $mLiens->getParticipations($siren, $actifsUniquement); - $nbP = count($tabP); - $tabPar = array(); - if ($nbP > 0) { - foreach ($tabP as $i => $lien) { - $participation = new Participation(); - $participation->Pmin = $lien['Pmin']; - $participation->MajMin = $lien['MajMin']; - $participation->RaisonSociale = $lien['RaisonSociale']; - $participation->TypeEntrep = $lien['TypeEntrep']; - $participation->Pays = $lien['Pays']; - $participation->Siren = $lien['Siren']; - $participation->Actif = $lien['Actif']; - $participation->Source = $lien['Source']; - $participation->DateLien = $lien['DateLien']; //@todo : date - $participation->DateMaj = $lien['DateMaj']; //@todo : date - $tabPar[] = $participation; - } - } - debugLog('W', "$nbP participations pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('liens',$siren); - - $output = new LiensReturn(); - $output->actionnaires = $tabAct; - $output->participations = $tabPar; - return $output; - } - - - /** - * Liste des établissements d'une entreprise - * @param string $siren Siren de l'entreprise - * @param integer $departement Limiter aux établissements du departement - * @param integer $actif Otpionnel 1=Uniquements les actifs, 0=inactifs, Néant=Tous - * @param integer $position - * @param integer $nbRep - * - * @return ListeEtablissementsReturn - */ - public function getListeEtablissements($siren, $dep = 0, $actif = -1, $position = 0, $nbRep = 20) - { - $this->authenticate(); - $this->permission('etablissements'); - - //Initialisation - if (empty($dep)) { $dep = 0; } - if (!in_array($actif, array(0,1))) { $actif = -1; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 20; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - $departement = $dep; - - debugLog('I',"Liste des établissements demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissements($siren, '', $position, $nbRep, 200, $departement, $actif); - $etabs = $rep['reponses']; - $nbReponses = $rep['nbReponsesTotal']; - $result = array(); - if (count($etabs)>0) - { - foreach ($etabs as $nb => $etab) - { - $etablissement = new Etablissement(); - $etablissement->id = $etab['id']; - $etablissement->Siege = $etab['Siege']; - $etablissement->Enseigne = $etab['Enseigne']; - $etablissement->Adresse = $etab['Adresse']; - $etablissement->Adresse2 = $etab['Adresse2']; - $etablissement->CP = $etab['CP']; - $etablissement->Ville = $etab['Ville']; - $etablissement->Tel = $etab['Tel']; - $etablissement->Fax = $etab['Fax']; - $etablissement->Nic = $etab['Nic']; - $etablissement->Actif = $etab['Actif']; - $etablissement->NafEtab = $etab['NafEtab']; - $etablissement->NafEtabLib = $etab['NafEtabLib']; - $etablissement->EffEtTr = $etab['EffEtTr']; - $etablissement->EffEtTrLib = $etab['EffEtTrLib']; - - $result[] = $etablissement; - } - } - debugLog('I', "Nb Etablissements retournés ($departement, $actif) = ". count($result), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('etablissements',$siren); - $output = new ListeEtablissementsReturn(); - $output->nbReponses = $nbReponses; - $output->result = $result; - return $output; - } - - /** - * Retourne l'ensemble des informations identitaires des dirigeants de l'entreprise - * - * @param string $siren Siren de l'entreprise - * @param bool $histo Afficher l'historique des dirigeants - * @return DirigeantsReturn Liste des dirigeants actifs de l'entreprise - */ - public function getDirigeants( $siren , $histo = false) - { - $this->authenticate(); - $this->permission('dirigeants'); - - //Initialisation - if (empty($histo)) { $histo = false; } - - //Zend_Registry::get('WsLogger')->info('HISTO : '.$histo); - - debugLog('I',"Dirigeants demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $dirs = $iInsee->getDirigeants($siren, $histo); - //debugLog('W', print_r($dirs, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $liste = array(); - foreach ($dirs as $nb => $dir) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $dirigeant = new Dirigeant(); - $dirigeant->Code = $dir['Fonction']; - $dirigeant->Titre = $dir['Titre']; - $dirigeant->Societe = $dir['Societe']; - $dirigeant->Civilite = $dir['Civilite']; - $dirigeant->Nom = $dir['Nom']; - $dirigeant->Prenom = $dir['Prenom']; - $dirigeant->NomUsage = $dir['NomUsage']; - $dirigeant->NaissDate = $dir['NaissDate']; //@todo : date - $dirigeant->NaissVille = $dir['NaissVille']; - $dirigeant->NaissDepPays = $dir['NaissDepPays']; - $dirigeant->Ancien = $dir['Ancien']; - $dirigeant->DateFct = $dir['DateFct']; //@todo : date - $liste[] = $dirigeant; - } - $this->wsLog('dirigeants',$siren,$option); - debugLog('I', 'Nb Dirigeants retournés = '. count($dirs), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $output = new DirigeantsReturn(); - $output->result = $liste; - return $output; - } - - /** - * Retourne la liste des annonces légales relative à une entreprise - * - * @todo Revoir cette fonction pour la faire marcher avec les associations - * - * @param string $siren Siren de l'entreprise - * @param integer $filtre 0=Pas de Filtre, 1=BODACC, 2=B.A.L.O, 3=JO Association, 4=Boamp - * @param string $idAnn Identifiant de l'annonce - * @param integer $position - * @param integer $nbRep - * @return AnnoncesReturn - */ - public function getAnnonces($siren, $filtre = 0, $idAnn = '', $position = 0, $nbRep = 100) - { - $this->authenticate(); - $this->permission('annonces'); - - //Initialisation - if (empty($filtre)) { $filtre = 0; } - if (empty($idAnn)) { $idAnn = ''; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 100; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - - debugLog('I',"Annonces demandées pour $siren ($filtre, $idAnn)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $liste = array(); - - if (strlen($siren)<>9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0 && $idAnn=='') { - debugLog('W', "Siren $siren ou annonce $idAnn inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - /* - if ($siren>100 && $filtre==3) $asso=true; - else { - $asso=false; - $tabIdentite=$this->iInsee->getIdentiteLight($siren); - if ($tabIdentite['FJ']>90 && $tabIdentite['FJ']<94 || - $tabIdentite['FJ']>9000 && $tabIdentite['FJ']<9400) $asso=true; - }*/ - if ($idAnn=='') { - $anns=$iInsee->getAnnoncesLegales($siren); - $annsB=$iInsee->getAnnoncesBalo($siren); - $annsA=$iInsee->getAnnoncesAsso($siren); - $annsM=$iInsee->getAnnoncesBoamp($siren, $idAnn); - } elseif ($filtre==1) - $anns=$iInsee->getAnnoncesLegales($siren, $idAnn); - elseif ($filtre==2) - $annsB=$iInsee->getAnnoncesBalo($siren, $idAnn); - elseif ($filtre==3) - $annsA=$iInsee->getAnnoncesAsso($siren, $idAnn); - elseif ($filtre==4) - $annsM=$iInsee->getAnnoncesBoamp($siren, $idAnn); - - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($anns) && empty($annsB) && empty($annsA) && empty($annsM)) - { - debugLog('W', "Aucune annonce pour le siren $siren (source=$filtre, id=$idAnn)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren inexistant B '.$siren.' '.$idAnn; - } - else - { - foreach ($anns as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - $annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = prepareString($ann['texteAnnonce']); - $annonce->libFJ = $ann['libFJ']; - $annonce->codFJ = $ann['codFJ']; - $annonce->capital = $ann['capital']; - $annonce->capitalDev = $ann['capitalDev']; - - $annonce->raisonSociale = $ann['raisonSociale']; - $annonce->nomCommercial = $ann['nomCommercial']; - $annonce->sigle = $ann['sigle']; - $annonce->adresse = $ann['adresse']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - - if (is_array($annsB)) - { - foreach ($annsB as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - - if (is_array($annsA)) - { - foreach ($annsA as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - //@todo : date - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - - if (is_array($annsM)) - { - foreach ($annsM as $nb=>$ann) - { - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - } - - $nbReponses = count($liste); - if ($nbReponses>0){ - //$liste = array_slice($liste, $position, $nbRep); - } - debugLog('I', "Nb Annonces $filtre retournées pour $siren (source=$filtre, id=$idAnn) = ". count($liste), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('annonces',$siren,$filtre.'/'.$idAnn); - - $output = new AnnoncesReturn(); - $output->nbReponses = $nbReponses; - $output->result = $liste; - return $output; - } - - /** - * Evaluation indiScore d'une entreprise - * @param string $siren Siren de l'entreprise - * @param string $nic Nic de l'établissement - * @param integer $niveau Niveau des commentaires - * @param bool $plus Si true, mise en surveillance privilèges - * @param string $ref Si $plus=true, référence de la mise en Surveillance - * @param integer $encours Si $plus=true, encours client demandé lors de la mise en Surveillance - * @param string $email Si $plus=true, email client pour la mise en surveillance - * @return Indiscore - */ - public function getIndiScore($siren, $nic=0, $niveau=2, $plus=false, $ref='', $encours=0, $email='') - { - $this->authenticate(); - - //Initialisation - $accesDist = true; - if (empty($nic)) { $nic = 0; } - if (empty($niveau)) { $niveau = 2; } - if (empty($plus)) { $plus = false; } - if ( !in_array($niveau, array(0,1,2,3,4,5)) ) { $niveau = 2; } - - $perm = false; - //@todo : Gestion des droits - /*switch($niveau){ - case 1: $perms = array('indiscore', 'indiscorep'); break; - case 2: $perms = array('indiscore2', 'indiscore2p'); break; - case 3: $perms = array('indiscore3', 'indiscore3p'); break; - } - foreach($perms as $item){ - if ( $this->checkPerm($item) ){ - $perm = true; - break; - } - } - if ($perm === false) { - $this->sendError('0902'); - }*/ - - $tabRet = array(); - debugLog('I',"IndiScore demandée pour $siren en niveau $niveau",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)>9 || (substr($siren,0,9)*1)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $tDeb = microtime(true); - require_once 'Metier/scores/classMScores.php'; - $tabRet = calculIndiScore($siren, $nic, $accesDist, $niveau); - $duree = round(microtime(true)-$tDeb,3); - debugLog('W', "indiscore DUREE = $duree s", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $output = new Indiscore(); - foreach($tabRet as $key => $value){ - if ($key=='paiements'){ - $parMont = $value['parMont']; - $parTrim = $value['parTrim']; - $tabMont = array(); - foreach($parMont as $parMontK => $parMontV){ - $paiementMont = new IndiscorePaiementDetail(); - $paiementMont->id = $parMontK; - $paiementMont->nb = $parMontV['nb']; - if (array_key_exists('d=180', $parMontV)){ - $paiementMont->d180 = $parMontV['d=180']; - } - if (array_key_exists('d=150', $parMontV)){ - $paiementMont->d150 = $parMontV['d=150']; - } - if (array_key_exists('d=120', $parMontV)){ - $paiementMont->d120 = $parMontV['d=120']; - } - if (array_key_exists('d=90', $parMontV)){ - $paiementMont->d90 = $parMontV['d=90']; - } - if (array_key_exists('d=60', $parMontV)){ - $paiementMont->d60 = $parMontV['d=60']; - } - if (array_key_exists('d=30', $parMontV)){ - $paiementMont->d30 = $parMontV['d=30']; - } - $tabMont[] = $paiementMont; - } - $tabTrim = array(); - foreach($parTrim as $parTrimK => $parTrimV){ - $paiementTrim = new IndiscorePaiementDetail(); - $paiementTrim->id = $parTrimK; - $paiementTrim->nb = $parTrimV['nb']; - if (array_key_exists('d=180', $parTrimV)){ - $paiementTrim->d180 = $parTrimV['d=180']; - } - if (array_key_exists('d=150', $parTrimV)){ - $paiementTrim->d150 = $parTrimV['d=150']; - } - if (array_key_exists('d=120', $parTrimV)){ - $paiementTrim->d120 = $parTrimV['d=120']; - } - if (array_key_exists('d=90', $parTrimV)){ - $paiementTrim->d90 = $parTrimV['d=90']; - } - if (array_key_exists('d=60', $parTrimV)){ - $paiementTrim->d60 = $parTrimV['d=60']; - } - if (array_key_exists('d=30', $parTrimV)){ - $paiementTrim->d30 = $parTrimV['d=30']; - } - $tabTrim[] = $paiementTrim; - } - $paiement = new IndiscorePaiement(); - $paiement->parMont = $tabMont; - $paiement->parTrim = $tabTrim; - $output->paiements = $paiement; - - } elseif ($key=='Notes_Structure') { - - $notesStructure = new IndiscoreNotesStructure(); - $notesStructure->activite = $value['activite']; - $notesStructure->naf4 = $value['naf4']; - $notesStructure->age = $value['age']; - $notesStructure->capital = $value['capital']; - $notesStructure->effectif = $value['effectif']; - $notesStructure->fj = $value['fj']; - $notesStructure->localite = $value['localite']; - $notesStructure->singulier = $value['singulier']; - $output->Notes_Structure = $notesStructure; - - } elseif ($key=='tabBilans') { - - $tabRet = array(); - foreach($value as $bilan) - { - $element = new ListeBilans(); - $element->dateProvPartenaire = $bilan['dateProvPartenaire']; //@todo : date - $element->dateInsert = $bilan['dateInsert']; //@todo : date - $element->typeBilan = $bilan['typeBilan']; - $element->dureeExercice = $bilan['dureeExercice']; - $element->dateExercice = $bilan['dateExercice']; //@todo : date - $element->millesime = $bilan['millesime']; - $element->dateExercicePre = $bilan['dateExercicePre']; //@todo : date - $element->dureeExercicePre = $bilan['dureeExercicePre']; - $element->monnaie = $bilan['monnaie']; - $element->source = $bilan['source']; - $tabRet[] = $element; - } - $output->tabBilans = $tabRet; - - } elseif ($key=='tabBilan') { - - $tabRet = array(); - foreach($value as $bilan){ - $resultBilan = new Bilan(); - $tabPoste = array(); - foreach($bilan as $bilan_key => $bilan_value){ - if(!in_array($bilan_key, array('SIREN', 'DATE_FRAICHE_BILAN', - 'DATE_CLOTURE', 'DATE_CLOTURE_PRE', 'DUREE_MOIS', - 'DUREE_MOIS_PRE', 'MONNAIE', 'CONSOLIDE', 'MONNAIE_ORI', - 'MONNAIE_LIV_UNITE', 'SOURCE', 'devise'))){ - $resultPoste = new BilanPoste(); - $resultPoste->id = $bilan_key; - $resultPoste->val = $bilan_value; - $tabPoste[] = $resultPoste; - } else { - $resultBilan->$bilan_key = $bilan_value; - } - } - $resultBilan->POSTES = $tabPoste; - $tabRet[] = $resultBilan; - } - $output->tabBilan = $tabRet; - - } elseif ($key=='tabInfosNotations') { - - $infosNotation = new IndiscoreInfosNotations(); - $infosNotation->SituationFinanciere = $value['SituationFinanciere']; - $infosNotation->Notation = $value['Notation']; - $infosNotation->ProbabiliteDefaut = $value['ProbabiliteDefaut']; - $output->tabInfosNotations = $infosNotation; - - } elseif ($key=='tabImportExport') { - - $tabRet = array(); - foreach($value as $element){ - $importExport = new IndiscoreImportExport(); - $importExport->importExport = $element['importExport']; - $importExport->annee = $element['annee']; - $importExport->rangNational = $element['rangNational']; - $importExport->deptSiege = $element['deptSiege']; - $tabRet[] = $importExport; - } - $output->tabImportExport = $tabRet; - - } elseif ($key=='tabCommentaires') { - - $tab = array(); - foreach($value as $comment) { - require_once 'i18n/cleanchar.php'; - $tab[] = fixEncoding($comment); - } - $output->tabCommentaires = $tab; - - } elseif ($key=='tabVariables') { - - $tab = $value['CA_Y']; - $tabVar = array(); - foreach($tab as $varName => $varVal){ - $var = new CA_Y(); - $var->id = $varName; - $var->val = $varVal; - $tabVar[] = $var; - } - $variables = new IndiscoreVariables(); - $variables->CA_Y = $tabVar; - $output->tabVariables = $variables; - - } elseif ($key=='Bilans') { - - $tab = array(); - foreach($value as $item) - { - $objet = new IndiscoreBilans(); - $objet->Millesime = $item['Millesime']; - $objet->FraisPerso = $item['FraisPerso']; - $objet->CA = $item['CA']; - $objet->EBE = $item['EBE']; - $objet->TxInvest = $item['TxInvest']; - $objet->TxEndett = $item['TxEndett']; - $objet->DettesCT = $item['DettesCT']; - $objet->FraisFi = $item['FraisFi']; - $objet->BFR = $item['BFR']; - $objet->FR = $item['FR']; - $objet->FondsPr = $item['FondsPr']; - $objet->DelaiCli = $item['DelaiCli']; - $objet->DelaiFour = $item['DelaiFour']; - $tab[] = $objet; - } - $output->$key = $tab; - } else { - $output->$key = $value; - } - } - - if ($plus) { - if (empty($ref)) $ref='Indiscore+'; - if (empty($email)) $email=$this->tabInfoUser['email']; - $this->setSurveillance($siren, $email, $ref, 'privileges'); - $this->setSurveillance($siren, $email, $ref, 'score', false, $encours); - if ($this->tabInfoUser['idClient']==89) - $this->setSurveillance($siren, $email, $ref, 'annonces'); - $this->wsLog('indiscore+',$siren); - } else - $this->wsLog('indiscore',$siren); - return $output; - } - - /** - * Liste de tous les évènements enregistrés à l'INSEE pour une entreprise - * @param string $siren Siren de l'entreprise - * @param string $nic - * @param integer $position - * @param integer $nbRep - * @return InseeReturn - **/ - public function getListeEvenements($siren, $nic=0, $position=0, $nbRep=1000) - { - $this->authenticate(); - $this->permission('eveninsee'); - - //Initialisation - if (empty($nic)) { $nic = 0; } - if (empty($position)) { $position = 0; } - if (empty($nbRep) || $nbRep>1000) { $nbRep = 1000; } - - debugLog('I',"Liste des évènements pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $evens = $iInsee->getEvenements($siren, $nic, $position, $nbRep); - $tabRet = array(); - if (count($evens)>0) { - foreach ($evens as $key => $row) { - $date[$key] = $row['dateMAJ']; - } - array_multisort($date, SORT_DESC, $evens); - foreach ($evens as $nb=>$even) { - $iEven = new InseeEven(); - $iEven->Nic = $even['nic']; - $iEven->Siege = $even['siege']; - $iEven->SiretAss = $even['siretAssocie']; - $iEven->TypeSiretAss = $even['typeSiretAss']; - $iEven->EvenCode = $even['codeEven']; - $iEven->EvenLib = $even['libEven']; - $iEven->EvenLibDet = $even['libEvenDet']; - $iEven->EvenDate = $even['dateEven']; //@todo : date - $iEven->DateInfo = $even['dateMAJ']; //@todo : date - $tabRet[] = $iEven; - } - } - - debugLog('I', 'Nb évènements retournés = '. count($tabRet), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('evenements',$siren); - $output = new InseeReturn(); - $output->nbReponses = count($tabRet); // @todo : retrouver le nombre total d'évenements - $output->result = $tabRet; - return $output; - } - - - /** - * Recherche - * @param EntrepriseCriteres $criteres - * @param integer $position Position de parcours des résultats retournées (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées lors d'une requête (20 par défaut) - * @param integer $maxRep Nombre de réponses maximum pouvant être retournées lors d'une requête (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (false par défaut) - * @param boolean $avecSiren Seulement les entités sirénées (false par défaut) - * @return SearchEntrepriseReturn - */ - public function searchEntreprise($criteres, $position = 0, $nbRep = 20, $maxRep = 200, $pertinence = false, $avecSiren = false) - { - $this->authenticate(); - - if (empty($position)) { $position = 0;} - if (empty($nbRep)) { $nbRep = 20; } - if (empty($maxRep)) { $maxRep = 200; } - - require_once 'i18n/cleanchar.php'; - - $entCriteres = new EntrepriseCriteres(); - $entCriteres = $criteres; - $identifiant = $entCriteres->identifiant; - $typeId = ''; - - //Detection autour de l'identifiant - if ($identifiant!='') { - $len = strlen($identifiant); - //Numéro WALDEC - if (strtoupper(substr($identifiant,0,1))=='W') { - $typeId = 'W'; - //Code ISIN - } elseif ($len==12){ - $typeId = 'I'; - //TVA Intracommunautaire - } elseif (in_array(substr($identifiant,0,2), - array('AT','BE','BG','CY','CZ','DE','DK','EE','EL','ES', - 'FI','GB','HU','IE','IT','LT','LU','LV','MT','NL','PL', - 'PT','RO','SE','SI','SK'))){ - //"La recherche par numéro de TVA n'est pas encore possible sur ce pays !"; - //Pour la france - } elseif (substr($identifiant,0,2)=='FR') { - $typeId = 'S'; - if ($len==13) $identifiant = substr($identifiant,4,9); - else $identifiant = ''; - //Numéro RC - } elseif (preg_match('/A|B|C|D/i', $identifiant)) { - $typeId = 'R'; - //Siren normal on enleve tout ce qui n'est pas un chiffre - } else { - $typeId = 'S'; - } - } - - $adresse = trim($entCriteres->adresse); - - //Détection Tel/Fax uniquement - if ( empty($typeId) - && empty($entCriteres->raisonSociale) - && empty($adresse) - && empty($entCriteres->codePostal) - && empty($entCriteres->ville) - && empty($entCriteres->naf) ){ - $typeId = 'TEL'; - } - - if (in_array($typeId, array('R', 'W', 'I'))){ - - $O = $this->searchAutreId( - $typeId, - $identifiant, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - $entCriteres->codePostal - ); - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } elseif ($typeId == 'S'){ - - $O = $this->searchSiren( - $identifiant, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - $entCriteres->codePostal - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - $output->info = $O->info; - return $output; - - } elseif ($typeId == 'TEL'){ - - $O = $this->searchTelFax( - $entCriteres->telFax, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } else { - - $O = $this->searchNomAdr( - cleanstring($entCriteres->raisonSociale), - cleanstring($entCriteres->adresse), - $entCriteres->codePostal, - cleanstring($entCriteres->ville), - empty($entCriteres->siege) ? false : $entCriteres->siege, - empty($entCriteres->actif) ? false : $entCriteres->actif, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - empty($pertinence) ? false : $pertinence, - empty($avecSiren) ? false : $avecSiren, - $entCriteres->naf - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - } - } - - /** - * Recherche d'entreprise par dirigeants - * @param DirigeantCriteres $criteres - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchDirReturn - */ - public function searchDir($criteres, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - $nom = $criteres->nom; - $prenom = $criteres->prenom; - $dateNaiss = $criteres->dateNaiss; - $lieuNaiss = $criteres->lieuNaiss; - $pertinence = $criteres->pertinence; - - debugLog('I',"Recherche Dirigeant de $nom, $prenom, $dateNaiss, $lieuNaiss (Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($prenom)) $prenom = ''; - if (empty($dateNaiss)) $dateNaiss = ''; - if (empty($lieuNaiss)) $lieuNaiss = ''; - if (empty($pertinence)) $pertinence = false; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - - $iInsee = new MInsee(); - $etabs = $iInsee->rechercheDir($nom, $prenom, '', $dateNaiss, $lieuNaiss, $deb, $nbRep, $maxRep, $pertinence); - - $tabRet = array(); - foreach ($etabs['reponses'] as $etab) { - $item = new EntrepriseDirItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = $iInsee->getLibelleFJ($etab['FJ']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($iInsee->getLibelleNaf($etab['NafEtab'])); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($iInsee->getLibelleNaf($etab['NafEnt'])); - - // Dirigeant - $item->DirRs = prepareString($etab['DirRs']); - $item->DirNom = prepareString($etab['DirNom']); - $item->DirPrenom = prepareString($etab['DirPrenom']); - $item->DirNomUsage = prepareString($etab['DirNomUsage']); - $item->DirDateEffet = $etab['DirDateEffet']; - $item->DirFonction = prepareString($etab['DirFonction']); - $item->DirDepart = $etab['DirDepart']; - $tabRet[] = $item; - } - - if ($etabs['nbReponses']==0){ - debugLog('W', "Aucun résultat pour cette recherche !", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - } - - $search = new SearchDirReturn(); - $search->nbReponses = $etabs['nbReponses']; - $search->nbReponsesTotal = $etabs['nbReponsesTotal']; - $search->result = $tabRet; - return $search; - } - - /** - * Recherche d'entreprise ou d'établissement par un autre Identifiant - * - * @param string $typeId I=Code Isin, W=N°Waldec (Associations) ou R=N°RC (Registre Greffe) - * @param string $identifiant Identifiant recherché - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchAutreId($typeId, $identifiant, $deb=0, $nbRep=20, $maxRep=200, $dep=0) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - if (empty($dep)) $dep = 0; - - $typeId = substr(trim(strtoupper($typeId)),0,1); - - if ($typeId!='I' && $typeId!='W' && $typeId!='R') { - debugLog('I',"Type d'identifiant $typeId inexistant",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1021'); - } - $tabRet = array(); - debugLog('I',"Recherche par identifiant $typeId de $identifiantavec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if ($typeId=='W' || $typeId=='R') - { - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('AUTRE', $identifiant, $deb, $nbRep, $maxRep, $dep); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } else { - $iBourse = new MBourse($siren); - $siren = $iBourse->getCodeSiren($identifiant); - return $this->searchSiren($siren, $deb, $nbRep, $maxRep); - } - } - - - /** - * Recherche d'entreprise ou d'établissement par leur TEL FAX - * - * @param string $telFax Téléphone ou fax de l'établissement (ex: 0175438010) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchTelFax($telFax, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - - $tabRet = array(); - debugLog('I',"Recherche par Tel/Fax de $telFax avec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - //$assocs=$this->iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $nbRep, $pertinence); - /** @todo A FAIRE **/ - if (strlen($telFax)<10 || strlen($telFax)>14) { - debugLog('W', "Tel/Fax $telFax incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1011'); - } - - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('TEL', $telFax, $deb, $nbRep, $maxRep); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } - - - /** - * Recherche entreprise par nom et adresse - * @param string $raisonSociale Raison Sociale ou Enseigne ou Sigle - * @param string $adresse Adresse de l'entreprise, du type : 3 rue des Plantes - * @param string $codePostal Code postal (ex: 75014) - * @param string $ville Ville - * @param boolean $siege Limitation de la recherche au sièges (si true) - * @param boolean $actif Limitation aux établissements actifs (si true) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (si true) - * @param boolean $avecSiren Ne proposer que les entités sirénées - * @param string $ape_etab - * @return SearchReturn - */ - public function searchNomAdr($raisonSociale, $adresse='', $codePostal='', $ville='', $siege=false, $actif=false, $deb=0, $nbRep=20, $maxRep=200, $pertinence=false, $avecSiren=false, $ape_etab='') - { - $this->authenticate(); - - debugLog('I',"Recherche Entreprise de $raisonSociale, $adresse, $codePostal $ville (Siège=$siege / Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($adresse)) $adresse = ''; - if (empty($codePostal)) $codePostal = ''; - if (empty($ville)) $ville = ''; - if (empty($siege)) $siege = false; - - if ( $actif ) { - $actif = 1; - } else { - $actif = 2; - } - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($pertinence)) $pertinence = false; - if (empty($avecSiren)) $avecSiren = false; - if (empty($ape_etab)) $ape_etab = ''; - - $iInsee = new MInsee(); - $etabs = $iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren, $ape_etab); - - $result = new SearchReturn(); - $tabRet = array(); - if (count($etabs['reponses'])) { - foreach ($etabs['reponses'] as $etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = strtr($etab['Nom'],'/*',' '); - $reponse->Nom2 = $etab['Nom2']; - $reponse->Sigle = $etab['Sigle']; - $reponse->Enseigne = $etab['Enseigne']; - $reponse->Adresse = $etab['Adresse']; - $reponse->Adresse2 = $etab['Adresse2']; - $reponse->CP = $etab['CP']; - $reponse->Ville = $etab['Ville']; - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = $iInsee->getLibelleFJ($etab['FJ']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = $iInsee->getLibelleNaf($etab['NafEtab']); // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = $iInsee->getLibelleNaf($etab['NafEnt']); - - $tabRet[] = $reponse; - } - } - - $fp=@fopen(LOG_PATH.'/recherches.log','a'); - - $siretTrouve = 0; - if ($etabs['nbReponses']==0) { - - $str="NbRep=0, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - @fwrite($fp, $str.EOL); - @fclose($fp); - debugLog('I', "rechercheEtab : AUCUN RESULTAT, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = count($tabRet); - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - - return $result; - - } - - if ($etabs['nbReponses']==1) $siretTrouve=$etabs['reponses'][0]['Siret']; - $str="NbRep=".$etabs['nbReponses'].", S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - @fwrite($fp, $str.EOL); - @fclose($fp); - debugLog('I', "rechercheEtab : ".$etabs['nbReponses']." RESULTATS, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = $etabs['nbReponses']; - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - return $result; - } - - /** - * Recherche d'entreprise ou d'établissement par leur identifiant SIREN ou SIRET - * @param string $siret Siren ou Siret de l'entreprise ou de l'établissement sur 9 ou 14 chiffres significatifs - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param integer $dep Département - * @return SearchReturn - */ - public function searchSiren($siret, $deb=0, $nbRep=20, $maxRep=200, $dep=0) - { - $this->authenticate(); - - debugLog('I',"Recherche par Siret de $siret (dep=$dep) avec un maximum de $maxRep réponses pour la tranche $deb à $nbRep",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ( strlen($siret)!=14 && strlen($siret)!=9 ){ - debugLog('W', "Siren/Siret $siret incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($dep)) $dep = 0; - - $nbReponsesTotal = $nbReponses = 0; - - $siren = substr($siret,0,9); - if (strlen($siret)==14) $nic = substr($siret,9,5); - elseif (strlen($siret)== 9) $nic = ''; - - $iInsee = new MInsee(); - - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep, $dep); - if (count($rep['reponses'])==0 && $dep>0) { - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep); - } - $etabs = $rep['reponses']; - $tabRet = array(); - if (count($etabs)>0){ - foreach ($etabs as $nb=>$etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = prepareString($etab['FJLib']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = $etab['NafEtabLib']; // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = $etab['NafEntLib']; - $tabRet[] = $reponse; - } - } - $nbReponsesTotal = $rep['nbReponsesTotal']; - $nbReponses = $rep['nbReponses']; - - /** Si le siren est valide, on part chez Infogreffe **/ - if (count($tabRet)==0 && $iInsee->valideSiren($siren)) { - $iGeffes = new MGreffes(); - $etab = $iGeffes->getIdentite($siren); - if ($etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString($etab['Nom']); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = utf8_encode(prepareString(utf8_decode($etab['FJLib']))); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; - $reponse->NafEtabLib = $etab['NafEtabLib']; - $reponse->NafEnt = $etab['NafEnt']; - $reponse->NafEntLib = $etab['NafEntLib']; - - $tabRet[] = $reponse; - $nbReponses = 1; - $nbReponsesTotal = 1; - - } else { - $iDb = new WDB(); - $iDb->insert('siren_inexistants', - array( 'siren'=>$siren, - 'nic'=>$nic, - 'dep'=>$dep, - 'login'=>$this->tabInfoUser['login'], - 'client'=>$this->tabInfoUser['idClient'], - 'dateInsert'=>date('YmdHis'))); - $nbReponses = 0; - $nbReponsesTotal = 0; - } - } - - $output = new SearchReturn(); - $output->nbReponses = $nbReponses; - $output->nbReponsesTotal = $nbReponsesTotal; - $output->result = $tabRet; - $output->info = $rep['info']; - return $output; - } - - - - - /** - * Retourne la fiche d'identité simplifié d'une entreprise avec son numéro de TVA. - * - * @param string $siren Identifiant Siren de l'entreprise - * @return TvaReturn - */ - public function getTVA($siren) - { - $this->authenticate(); - - //Initialisation - $siren = trim($siren); - debugLog('I',"TVA demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren); - debugLog('I', "Après getIdentiteEntreprise($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($entrep)) - { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - debugLog('I', "Avant MTva($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iTva = new MTva($siren); - if ($iTva->vatDefined) $tva=$iTva->vatNumber; - else $tva='N/A'; - debugLog('I', "Après MTva($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $output = new TvaReturn(); - $output->id = $entrep['id']; - $output->AutreId = $entrep['AutreId']; - $output->Nom = $entrep['Nom']; - $output->Sigle = $entrep['Sigle']; - $output->Enseigne = $entrep['Enseigne']; - $output->Adresse = $entrep['Adresse']; - $output->Adresse2 = $entrep['Adresse2']; - $output->CP = $entrep['CP']; - $output->Ville = $entrep['Ville']; - $output->Siren = $entrep['Siren']; - $output->Tva = $tva; - - debugLog('I', "TVA retournée = $tva (".$entrep['Nom'].')', __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('tva',$siren); - - return $output; - } - - /** - * Retourne tout ou patie des informations règlementées sur l'entreprise - * - * @param string $siren SIREN de l'entreprise - * @param mixed $id Id du communiqué - * @return InfosRegReturn - */ - public function getInfosReg( $siren, $id = false ) - { - $this->authenticate(); - $this->permission('infosreg'); - - //Initialisation - if (empty($id)) $id = false; - $tabRet = array(); - $siren = substr($siren,0,9); - - debugLog('I',"Infos règlementées demandées pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - $iBourse = new MBourse($siren); - $anns = $iBourse->getInfosReg($siren, $id); - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if ( empty($anns) ){ - debugLog('W', "Aucune info règlementée pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1030'); - } - - foreach ($anns as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if ($id == false) { - $infos = new InfosReg(); - $infos->id = $ann['id']; - $infos->source = $ann['source']; - $infos->DateParution = $ann['DateParution']; //@todo : date - $infos->raisonSociale = $ann['raisonSociale']; - $infos->titre = $ann['titre']; - $infos->pj = $ann['pj']; - $infos->url = $ann['url']; - $infos->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $tabRet[] = $infos; - } else { - $infos = new InfosReg(); - $infos->id = $ann['id']; - $infos->source = $ann['source']; - $infos->DateParution = $ann['DateParution']; //@todo : date - $infos->raisonSociale = $ann['raisonSociale']; - $infos->titre = $ann['titre']; - $infos->communique = $ann['communique']; - $infos->communiqueHtml = $ann['communiqueHtml']; - $infos->pj = $ann['pj']; - $infos->url = $ann['url']; - $infos->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $tabRet[] = $infos; - } - } - debugLog('I', 'Nb infos retournés = '. count($anns), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('infosreg',$siren,$id); - $output = new InfosRegReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne les informations boursières de l'entreprise - * @param string $siren SIREN de l'entreprise - * @return InfosBourse - */ - public function getInfosBourse($siren) - { - $this->authenticate(); - $this->permission('bourse'); - - //Initialisation - $error = new ErrorType(); - debugLog('I',"Infos bourse demandées pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $siren = substr($siren,0,9); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($bourse)) { - debugLog('W', "Aucune info bourse pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1030'); - } - - $result = new InfosBourse(); - $result->Siren = $bourse['siren']; - $result->RaisonSociale = $bourse['raisonSociale']; - $result->Adresse = $bourse['adresse']; - $result->Effectif = $bourse['effectif']; - $result->CodeSicovam = $bourse['code_sicovam']; - $result->CodeMnemo = $bourse['code_mnemo']; - $result->CodeBloomberg = $bourse['code_bloomberg']; - $result->CodeDatastream = $bourse['code_datastream']; - $result->Isin = $bourse['code_isin']; - $result->CodeRic = $bourse['code_ric']; - $result->DateIntroduction = $bourse['dateIntroduction']; //@todo : date - $result->DateDerAG = $bourse['dateDerAG']; //@todo : date - $result->DateRadiation = $bourse['dateRadiation']; //@todo : date - $result->AutreIsin = $bourse['autre_isin']; - $result->EligibleSRD = $bourse['eligibleSRD']; - $result->EligiblePEA = $bourse['eligiblePEA']; - $result->Tel = $bourse['tel1']; - $result->Tel2 = $bourse['tel2']; - $result->Fax = $bourse['fax1']; - $result->Fax2 = $bourse['fax2']; - $result->Web = $bourse['web']; - $result->Mail = $bourse['mail']; - - $result->Marche = $bourse['marche']; - $result->Description = $bourse['description']; - $result->Secteur = $bourse['secteur']; - $result->Activite = $bourse['activite']; - $result->ActiviteDet = $bourse['activiteDet']; - - $result->placeCotation = $bourse['placeCotation']; - $result->nombreTitres = $bourse['nombreTitres']; - $result->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $result->derCoursDate = $bourse['date']; //@todo : date - $result->derCoursCloture = $bourse['close']; - $result->derCoursOuverture = $bourse['open']; - $result->derCoursPlusHaut = $bourse['high']; - $result->derCoursPlusBas = $bourse['low']; - - $result->derCoursVolume = $bourse['volume']; - $result->coursMin = $bourse['coursMin']; - $result->coursMoy = $bourse['coursMoy']; - $result->coursMax = $bourse['coursMax']; - - $this->wsLog('bourse',$siren,$id); - return $result; - } - - /** - * Ajout d'une surveillance - * - * @param string $siret Siret/Siren - * @param string $email Adresse email du client - * @param string $ref Référence de la surveillance - * @param string $source Type de source en surveillance (insee, annonces, bilans, actes, privileges, score, dirigeants) - * @param boolean $delete Suppression de la ligne - * @param integer $encoursClient Encours demandé par le client - * @return SetSurveillanceReturn - */ - public function setSurveillance($siret, $email, $ref='', $source='annonces', $delete=false, $encoursClient=0) - { - $this->authenticate(); - $source = strtolower($source); - switch ($source) { - case 'insee': - $this->permission('survinsee'); - break; - case 'bilans': - $this->permission('survbilan'); - break; - case 'actes': - $this->permission('survactes'); - break; - case 'privileges': - $this->permission('survpriv'); - break; - case 'dirigeants': - $this->permission('survdirigeants'); - break; - case 'score': - $this->permission('survscore'); - break; - case 'annonces': - default: - $this->permission('survannonce'); - break; - } - - //Initialisation - if (empty($ref)) $ref = ''; - if (empty($delete)) $delete = false; - if (empty($encoursClient)) $encoursClient = false; - $result = false; - $siren = substr($siret,0,9); - $nic = substr($siret,9,5); - - debugLog('I',"setSurveillances(siret=$siret, email=$email, ref=$ref, source=$source, delete=$delete)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren, $nic); - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - switch ($source) { - case 'insee': - case 'annonces': - case 'bilans': - case 'actes': - case 'privileges': - case 'dirigeants': $encoursClient=0; break; - case 'score': $encoursClient=$encoursClient*1; break; - default: $source='annonces'; break; - } - - if ($delete) { - - $tabUpdate = array('dateSuppr'=>date('Y-m-d')); - $result = $iDb->update('surveillances_site', - $tabUpdate, - "source='$source' AND login='$login' AND email='$email' AND siren=$siren AND nic=$nic AND ref='$ref'" - ); - - } else { - - $tabUpdate = array( - 'source' => $source, - 'login' => $login, - 'email' => $email, - 'siren' => $siren, - 'nic' => $nic, - 'ref' => $ref, - 'encoursClient' => $encoursClient, - 'rs' => $tabIdentite['Nom'], - 'cp' => $tabIdentite['CP'], - 'ville' => $tabIdentite['Ville'], - 'dateAjout'=>date('Y-m-d'), - 'dateSuppr'=>0, - ); - $result = $iDb->insert('surveillances_site', $tabUpdate); - //Si l'insertion echoue, alors c'est une mise à jour - if ( !$result ) { - $result = $iDb->update('surveillances_site', - $tabUpdate, - "source='$source' AND login='$login' AND email='$email' AND siren=$siren AND nic=$nic AND ref='$ref'" - ); - } - } - $output = new SetSurveillanceReturn(); - $output->result = $result; - return $output; - } - - /** - * getSurveillances - * @param SurveillancesFiltre $filtre - * @param integer $deb - * @param integer $nbRep - * @return SurveillancesReturn - */ - public function getSurveillances($filtre, $position=0, $nbRep=100) - { - $this->authenticate(); - $this->permission('survliste'); - - //Initialisation - if (empty($position)) $position = 0; - if (empty($nbRep)) $nbRep = 100; - - $error = new ErrorType(); - $tabRet = array(); - $siren = substr($filtre->siret,0,9); - $nic = substr($filtre->siret,9,5); - - $tri = strtolower(trim($filtre->tri)); - switch ($tri){ - case 'ref': $orderBy='ORDER BY ref'; break; - case 'dateAjout': $orderBy='ORDER BY dateAjout'; break; - case 'dateDerEnvoi':$orderBy='ORDER BY dateDerEnvoi'; break; - case 'rs': $orderBy='ORDER BY rs'; break; - case 'cp': $orderBy='ORDER BY cp'; break; - case 'ville': $orderBy='ORDER BY ville'; break; - default: $orderBy='ORDER BY siren'; break; // siren ou vide ou autre - } - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - - if ($filtre->detail) { - $strSelect = 'source, email, siren, nic, ref, dateAjout, encoursClient, rs, cp, ville, dateDerEnvoi'; - } else { - $strSelect = 'source, email, siren, nic, ref, dateAjout, dateDerEnvoi'; - } - if ($filtre->source!='') $strSource = " AND source='$filtre->source' "; - else $strSource = ''; - - if ($siren>0) $strSiren = " AND siren=$siren "; - else $strSiren = ''; - - // Il faut compter le nombre de siren au total - $tabTmp = $iDb->select('surveillances_site', 'count(*) as nb', "login='$login' AND dateSuppr=0 $strSiren $strSource", false, MYSQL_ASSOC); - $nbRepTot = $tabTmp[0]['nb']; - - $tabTmp = $iDb->select('surveillances_site', $strSelect, "login='$login' AND dateSuppr=0 $strSiren $strSource $orderBy LIMIT $position,$nbRep", false, MYSQL_ASSOC); - foreach ($tabTmp as $i=>$tabSurv){ - if (!$filtre->detail){ - $liste = new Surveillance(); - $liste->source = $tabSurv['source']; - $liste->email = $tabSurv['email']; - $liste->siren = $tabSurv['siren']; - $liste->nic = $tabSurv['nic']; - $liste->ref = $tabSurv['ref']; - $liste->dateAjout = $tabSurv['dateAjout']; //@todo : date - $liste->dateDerEnvoi = $tabSurv['dateDerEnvoi']; //@todo : date - $tabRet[] = $liste; - } else { - if (trim($tabSurv['rs'])<>'') { - $rs = $tabSurv['rs']; - $cp = $tabSurv['cp']; - $ville = $tabSurv['ville']; - } else { - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($tabSurv['siren'], $tabSurv['nic']); - $rs = $tabIdentite['Nom']; - $cp = $tabIdentite['CP']; - $ville = $tabIdentite['Ville']; - $iDb->update('surveillances_site', array( - 'rs' => $rs, - 'cp' => $cp, - 'ville' => $ville), - "login='$login' AND dateSuppr=0 AND siren=".$tabSurv['siren']." AND nic=".$tabSurv['nic']." $strSource", - false - ); - } - $liste = new Surveillance(); - $liste->source = $tabSurv['source']; - $liste->email = $tabSurv['email']; - $liste->siren = $tabSurv['siren']; - $liste->nic = $tabSurv['nic']; - $liste->ref = $tabSurv['ref']; - $liste->dateAjout = $tabSurv['dateAjout']; //@todo : date - $liste->encoursClient = $tabSurv['encoursClient']; - $liste->rs = $rs; - $liste->cp = $cp; - $liste->ville = $ville; - $liste->dateDerEnvoi = $tabSurv['dateDerEnvoi']; //@todo : date - $tabRet[] = $liste; - } - } - $output = new SurveillancesReturn(); - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbRepTot; - $output->result = $tabRet; - return $output; - } - - /** - * Recherche par référence client - * @param string $search - * @param integer $position - * @param integer $nbRep - * @return SearchRefClientReturn - */ - public function searchRefClient($search, $position=0, $nbRep=20) - { - $this->authenticate(); - - //Initialisation - if (empty($position)) $position = 0; - if (empty($nbRep)) $nbRep = 20; - - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - $orderBy = " ORDER BY dateAjout ASC"; - - if ($this->tabInfoUser['rechRefType']=='CLI'){ - //On cherche les logins actifs pour le client - $idClient = $this->tabInfoUser['idClient']; - - $where = "u.idClient='$idClient' AND u.actif=1 AND s.dateSuppr=0 AND ( s.siren='$search' OR s.ref='$search' OR s.rs='$search' )"; - // Il faut compter le nombre au total - $tabTmp = $iDb->select('surveillances_site s, utilisateurs u', 'count(*) as nb', $where.$orderBy, false, MYSQL_ASSOC); - $nbRepTot = $tabTmp[0]['nb']; - - // Execution de la requete - $tabTmp = $iDb->select('surveillances_site s, utilisateurs u', - "siren, nic, ref, source, DATE_FORMAT(dateAjout, '%Y-%m-%d') as dateAjout, DATE_FORMAT(dateDerEnvoi, '%Y-%m-%d') as dateEnvoi", - $where.$orderBy." LIMIT $position,$nbRep", false, MYSQL_ASSOC); - } else { - $where = "login='$login' AND dateSuppr=0 AND ( siren='$search' OR ref='$search' OR rs='$search' )"; - // Il faut compter le nombre au total - $tabTmp = $iDb->select('surveillances_site', 'count(*) as nb', $where.$orderBy, false, MYSQL_ASSOC); - $nbRepTot = $tabTmp[0]['nb']; - - // Execution de la requete - $tabTmp = $iDb->select('surveillances_site', - "siren, nic, ref, source, DATE_FORMAT(dateAjout, '%Y-%m-%d') as dateAjout, DATE_FORMAT(dateDerEnvoi, '%Y-%m-%d') as dateEnvoi", - $where.$orderBy." LIMIT $position,$nbRep", false, MYSQL_ASSOC); - } - - $tabRet = array(); - if (count($tabTmp)>0) - { - foreach ($tabTmp as $i => $item) - { - $info = new SearchRefClientInfo(); - $info->ref = $item['ref']; - $info->source = $item['source']; - $info->dateAjout = $item['dateAjout']; - $info->dateEnvoi = $item['dateEnvoi']; - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($item['siren'], $item['nic']); - - $reponse = new SearchRefClient(); - $reponse->id = $tabIdentite['id']; - $reponse->Siret = $tabIdentite['Siret']; - $reponse->Siege = $tabIdentite['Siege']; - $reponse->Nom = prepareString(strtr($tabIdentite['Nom'],'/*',' ')); - $reponse->Nom2 = prepareString($tabIdentite['Nom2']); - $reponse->Sigle = prepareString($tabIdentite['Sigle']); - $reponse->Enseigne = prepareString($tabIdentite['Enseigne']); - $reponse->Adresse = prepareString($tabIdentite['Adresse']); - $reponse->Adresse2 = prepareString($tabIdentite['Adresse2']); - $reponse->CP = $tabIdentite['CP']; - $reponse->Ville = prepareString($tabIdentite['Ville']); - $reponse->Tel = $tabIdentite['Tel']; - $reponse->Fax = $tabIdentite['Fax']; - $reponse->FJ = $tabIdentite['FJ']; - $reponse->FJLib = prepareString($tabIdentite['FJ_lib']); - $reponse->Siren = $tabIdentite['Siren']; - $reponse->Nic = $tabIdentite['Nic']; - $reponse->Actif = $tabIdentite['Actif']; - $reponse->NafEtab = $tabIdentite['NafEtab']; - $reponse->NafEtabLib = $tabIdentite['NafEtabLib']; - $reponse->NafEnt = $tabIdentite['NafEnt']; - $reponse->NafEntLib = $tabIdentite['NafEntLib']; - $reponse->Infos = $info; - $tabRet[] = $reponse; - } - } - $output = new SearchRefClientReturn(); - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbRepTot; - $output->result = $tabRet; - return $output; - } - - /** - * Retourne le bilan correspondant au siren, à l'exercice et au formalisme demandé - * - * @param string $siren Siren de l'entreprise - * @param string $millesime Date du bilan au format AAAAMMJJ - * @param string $typeBilan N:Réel Normal, S:Réel Simplifié, C:Consolidé - * @param string $ref Référence S&D obligatoire - * @return Bilan - */ - public function getBilan($siren, $millesime, $typeBilan='N', $ref='') - { - $this->authenticate(); - $this->permission('liasse'); - - //Initialisation - if (empty($typeBilan)) { $typeBilan = 'N'; } - if (empty($ref)) { $ref = ''; } - - debugLog('I',"Bilan $millesime $typeBilan demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $millesime = WDate::dateT('Ymd','d/m/Y',$millesime); - $mBil = new MBilans($siren); - $tabBilan = $mBil->getBilan($millesime, $typeBilan, $ref, true); - - $resultBilan = new Bilan(); - $tabPoste = array(); - foreach($tabBilan as $key => $value){ - if(!in_array($key, array('SIREN', 'DATE_FRAICHE_BILAN', - 'DATE_CLOTURE', 'DATE_CLOTURE_PRE', 'DUREE_MOIS', - 'DUREE_MOIS_PRE', 'MONNAIE', 'CONSOLIDE', 'MONNAIE_ORI', - 'MONNAIE_LIV_UNITE', 'SOURCE', 'devise'))){ - $resultPoste = new BilanPoste(); - $resultPoste->id = $key; - $resultPoste->val = $value; - $tabPoste[] = $resultPoste; - } else { - $resultBilan->$key = $value; - } - } - $this->wsLog('bilan',$siren, $millesime.':'.$typeBilan.':'.$ref); - $resultBilan->POSTES = $tabPoste; - return $resultBilan; - } - - /** - * Retourne la liste des bilans disponible pour une entreprise - * - * @param string $siren Siren de l'entreprise - * @return ListeBilansReturn - */ - public function getListeBilans($siren) - { - $this->authenticate(); - $this->permission('liasse'); - - //Initialisation - $tabRet = array(); - debugLog('I',"Liste des Bilans demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $mBil = new MBilans($siren); - $tabBilans = $mBil->listeBilans(true); - foreach($tabBilans as $bilan) - { - $element = new ListeBilans(); - $element->dateProvPartenaire = $bilan['dateProvPartenaire']; //@todo : date - $element->dateInsert = $bilan['dateInsert']; //@todo : date - $element->typeBilan = $bilan['typeBilan']; - $element->dureeExercice = $bilan['dureeExercice']; - $element->dateExercice = $bilan['dateExercice']; //@todo : date - $element->millesime = $bilan['millesime']; - $element->dateExercicePre = $bilan['dateExercicePre']; //@todo : date - $element->dureeExercicePre = $bilan['dureeExercicePre']; - $element->monnaie = $bilan['monnaie']; - $element->source = $bilan['source']; - $tabRet[] = $element; - } - - debugLog('I', 'Nb Bilans retournés = '. count($tabBilans), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('listebilans', $siren); - $output = new ListeBilansReturn(); - $output->nbReponses = count($tabRet); - $output->result = $tabRet; - return $output; - } - - /** - * Vérifie si un siren existe en base Scores & Décisions - * @param string $siren Siren de l'entité - * @return boolean - */ - public function isSirenExistant($siren) - { - $this->authenticate(); - - //Initialisation - $tabRet = array(); - $siren = trim(substr($siren,0,9)); - $result = false; - debugLog('I',"Siren existant demandée pour siren $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $entrep = $iInsee->sirenExiste($siren); - if (empty($entrep)) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $result = false; - } else { - debugLog('I', "Siren $siren présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $result = true; - } - $this->wsLog('sirenExiste',$siren); - return $result; - } - - /** - * Retourne une annonce en fonction de sa référence - * - * @param string $siren Siren de l'entreprise - * @param string $dateAnnee - * @param integer $numParution - * @param integer $numAnnonce - * @return RechercheAnnonceReturn - */ - public function rechercheAnnonce($source, $dateAnnee, $numParution, $numAnnonce) - { - $this->authenticate(); - $this->permission('histobodacc'); - - //Initialisation - $tabRet = array(); - - debugLog('I',"Annonce précise demandée pour $source, $dateAnnee, $numParution, $numAnnonce",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($dateAnnee)==4) $annee = $dateAnnee; - else $annee = substr($dateAnnee,0,4); - - $iDb = new WDB('jo'); - - switch (strtoupper($source)) - { - case 'BODA': - case 'BODB': - case 'BODC': - $lettre = substr(strtoupper($source),3,1); - if ($annee<2005) { - if ($lettre=='A'){ $numJAL=1; } - elseif ($lettre=='B'){ $numJAL=200; } - else{ break; } - $anneeDeb = $annee.'0101'; - $anneeFin = $annee.'1231'; - $res = $iDb->select('historiques.entrep e, texte t', - "$annee AS Annee_Parution, e.NOBOD AS Num_Parution, e.NOANN AS Num_Annonce, e.NOPAGE AS Num_Page, e.`DATE` AS Date_Parution, e.DEPT AS Departement, e.CODTRI AS Tribunal_Code, 'I' AS typeAnnonce, CONCAT(e.NOANN,' - ',t.annonceTxt) AS annonce", - "e.JAL=$numJAL AND e.NOBOD=$numParution AND e.`DATE` BETWEEN $anneeDeb AND $anneeFin AND e.NOANN=$numAnnonce AND e.ANBASE=t.annonceNum", false, MYSQL_ASSOC); - } else { - $res = $iDb->select('bodacc', - 'Bodacc_Annee_Parution AS Annee_Parution, Bodacc_Num AS Num_Parution, Num_Annonce, Bodacc_Page AS Num_Page, Bodacc_Date_Parution AS Date_Parution, Tribunal_Dept AS Departement, Tribunal_Code, typeAnnonce, annonce', - "Bodacc_Code='$lettre' AND Bodacc_Annee_Parution=$annee AND Bodacc_Num=$numParution AND Num_Annonce=$numAnnonce", false, MYSQL_ASSOC); - } - break; - case 'ASSO': - $res = $iDb->select('asso', - 'YEAR(Date_Parution) AS Annee_Parution, Num_Parution, Num_Annonce, pageDeb AS Num_Page, Date_Parution, Departement, codTribunal AS Tribunal_Code, typeAnnonce, Annonce_Html AS annonce', "Date_Parution BETWEEN '$annee-01-01' AND '$annee-12-31' AND Num_Parution=$annee".sprintf('%04d', $numParution)." AND Num_Annonce=$numAnnonce", - false, MYSQL_ASSOC); - break; - case 'BALO': - $res = $iDb->select('balo', - "YEAR(Date_Parution) AS Annee_Parution, Num_Parution, Num_Affaire AS Num_Annonce, '' AS Num_Page, Date_Parution, '' AS Departement, '' AS Tribunal_Code, 'Insertion' AS typeAnnonce, Annonce_Html AS annonce", "Date_Parution BETWEEN '$annee-01-01' AND '$annee-12-31' AND Num_Parution=$numParution AND Num_Affaire=$numAnnonce", - false, MYSQL_ASSOC); - break; - } - - if (count($res)>0) - { - $iBodacc = new MBodacc(); - foreach ($res as $i => $etab) - { - $annonces = new AnnonceItem(); - $annonces->Annee_Parution = $etab['Annee_Parution']; - $annonces->Num_Parution = $etab['Num_Parution']; - $annonces->Num_Annonce = $etab['Num_Annonce']; - $annonces->Num_Page = $etab['Num_Page']; - $annonces->Date_Parution = $etab['Date_Parution']; //@todo : date - $annonces->Departement = $etab['Departement']; - $annonces->Tribunal_Code = $etab['Tribunal_Code']; - $annonces->Tribunal = $iBodacc->getTribunalNom($etab['Tribunal_Code']); - $annonces->Type_Annonce = $etab['typeAnnonce']; - $annonces->Annonce = strip_tags(strtr( - html_entity_decode($etab['annonce']), - array('>'=>'>','&'=>'&','<'=>'<','’'=>"'") - )); - - $tabRet[] = $annonces; - } - } - $nbTot = count($tabRet); - $output = new RechercheAnnonceReturn(); - $output->criteres = $criteres; - $output->nbReponses = $nbTot; - $output->nbReponsesTotal = $nbTot; - $output->result = $tabRet; - return $output; - } - - /** - * getRatios - * @param string $siren - * @param string $page - * @return RatiosReturn - */ - public function getRatios($siren, $page='ratios') - { - $this->authenticate(); - $this->permission('ratios'); - - global $tva, $mBil, $tabBilan, $efftr, $tabInfla; - $tabFormules = include APPLICATION_PATH . '/../library/Metier/scores/Variables/CacheTabFormules.php'; - require_once 'Metier/scores/Variables/configMRatios.php'; - - //Initialisation - if (empty($page)) $page = 'ratios'; - $tabRatiosInfos = $tabRatiosSecteurs = $tabBilansR = array(); - $tabRatios2 = $tabRatiosEvol = array(); - $tabRet = array(); - debugLog('I',"Liste des Ratios demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - debugLog('I',"Liste des Ratios demandée pour $siren avant getIdentiteEntreprise",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteEntreprise($siren,0,0,false,false); - debugLog('I',"Liste des Ratios demandée pour $siren après getIdentiteEntreprise",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $naf = $tabIdentite['NafEnt']; - $nafLib = $tabIdentite['NafEntLib']; - $efftr = $tabIdentite['Effectif']*1; - $fj = $tabIdentite['FJ']; - - $mBil = new MBilans($siren); - $tabBilans = $mBil->listeBilans(true); - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getRatios sur $siren", print_r($tabBilans, true)); - $nbBilans = count($tabBilans); - $tabBilan = $tabBil = array(); - if ($nbBilans>0){ - $tabRatios = calculRatios($tabBilans, $tabIdentite, true); - } - $nbRatios = count($tabRatios); - debugLog('I',"Liste des Ratios demandée pour $siren après calculRatios ($nbRatios)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - /** Tableau d'infos sur les formules **/ - $tabBorneMin = $tabBorneMax = array(); - foreach ($tabFormules as $formule) { - $id = $formule['id']*1; - $libelle = $formule['libelle']; - $unite = $formule['unite']; - $commentaires = $formule['commentaires']; - $tabFormulesInfos[$id] = $formule; //Pour la gestion des unités des ratios secteur - $ratiosInfos = new RatiosInfos(); - $ratiosInfos->id = 'r'.$id; - $ratiosInfos->libelle = $formule['libelle']; - $ratiosInfos->unite = $formule['unite']; - $ratiosInfos->commentaires = $formule['commentaires']; - $tabRatiosInfos[] = $ratiosInfos; - $tabBorneMin[$id] = $formule['borneMin']; - $tabBorneMax[$id] = $formule['borneMax']; - } - - $tabAnnees = array(); - foreach ($tabRatios as $i=>$R) { - - //Informations sur le bilan - $bilansInfos = new RatiosBilansInfos(); - $bilansInfos->dateCloture = $tabBilan[$i]['DATE_CLOTURE']; //@todo : date - $bilansInfos->duree = $tabBilan[$i]['DUREE_MOIS']; - $bilansInfos->devise = $tabBilan[$i]['MONNAIE']; - $bilansInfos->typeBilan = $tabBilan[$i]['CONSOLIDE']; - $bilansInfos->unite = 'U'; - if ( substr($tabBilan[$i]['DATE_CLOTURE'],0,4)>1900 ){ - $tabAnnees[$i]=substr($tabBilan[$i]['DATE_CLOTURE'],0,4); - } - - $tabRatiosEntrep = array(); - $tabRatiosEntrepEvol = array(); - foreach ( $R as $Ridx=>$Rmont ){ - - if ($Rmont<>'NS') { - if ( $tabBorneMin[$Ridx]<>'' && $Rmont<$tabBorneMin[$Ridx] ){ - $Rmont='<'.$tabBorneMin[$Ridx]; - } elseif ( $tabBorneMax[$Ridx]<>'' && $Rmont>$tabBorneMax[$Ridx] ){ - $Rmont='>'.$tabBorneMax[$Ridx]; - } - } - - // RatiosEntrep - $ratiosEntrep = new Ratios(); - if (substr($Rmont,0,1)=='N' || substr($Rmont,0,1)=='<' || substr($Rmont,0,1)=='>'){ - $ratiosEntrep->id = 'r'.$Ridx; - $ratiosEntrep->val = $Rmont; - } else { - $ratiosEntrep->id = 'r'.$Ridx; - $ratiosEntrep->val = round($Rmont,2); - } - $tabRatiosEntrep[] = $ratiosEntrep; - - if (($tabBilan[$i]['CONSOLIDE']=='S' && isset($tabRatios[$i+1])&&($tabBilan[$i+1]['CONSOLIDE']=='S'||($tabBilan[$i+1]['CONSOLIDE']=='N'&&$tabBilan[$i+1]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) || - ($tabBilan[$i]['CONSOLIDE']=='N'&&isset($tabRatios[$i+1])&&($tabBilan[$i+1]['CONSOLIDE']=='N'||($tabBilan[$i+1]['CONSOLIDE']=='S'&&$tabBilan[$i+1]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) - ) - $Rmont=(($R[$Ridx]-$tabRatios[$i+1][$Ridx])*100)/abs($tabRatios[$i+1][$Ridx]); - elseif ( ($tabBilan[$i]['CONSOLIDE']=='S'&&isset($tabRatios[$i+1])&&($tabBilan[$i+2]['CONSOLIDE']=='S'||($tabBilan[$i+2]['CONSOLIDE']=='N'&&$tabBilan[$i+2]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) - || ($tabBilan[$i]['CONSOLIDE']=='N'&&isset($tabRatios[$i+1])&&($tabBilan[$i+2]['CONSOLIDE']=='N'||($tabBilan[$i+2]['CONSOLIDE']=='S'&&$tabBilan[$i+2]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) - ) - $Rmont=(($R[$Ridx]-$tabRatios[$i+2][$Ridx])*100)/abs($tabRatios[$i+2][$Ridx]); - else - $Rmont='NS'; - - // RatiosEntrepEvol - $ratiosEntrepEvol = new Ratios(); - if ($Rmont=='NS' || $Rmont<-800 || $Rmont>800){ - $ratiosEntrepEvol->id = 'r'.$Ridx; - $ratiosEntrepEvol->val = 'NS'; - } else { - $ratiosEntrepEvol->id = 'r'.$Ridx; - $ratiosEntrepEvol->val = number_format($Rmont,2,',',' '); - } - $tabRatiosEntrepEvol[] = $ratiosEntrepEvol; - } - $bilansInfos->RatiosEntrep = $tabRatiosEntrep; - $bilansInfos->RatiosEntrepEvol = $tabRatiosEntrepEvol; - $tabBilansR[] = $bilansInfos; - } - - debugLog('I',"Liste des Ratios demandée pour $siren après EVOLUTION",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - // Tableau des ratios secteurs - - if (strlen($naf)>4) $strNaf = " AND naf5='$naf' "; - else $strNaf = " AND naf4='$naf' "; - $strAnnees = implode(',', $tabAnnees); - - $tabRatiosSecteurs = array(); - - $tabAnnees = array_unique($tabAnnees); - - if ( count($tabAnnees)>0 ) - { - $iDb = new WDB('jo'); - $tabTmp = $iDb->select('ratios_secteurs', - 'annee, naf5, naf4, id, (montant/nombre) AS ratio, nombre', - "1 $strNaf AND annee IN ($strAnnees) ORDER BY annee DESC, id ASC", - false, MYSQL_ASSOC); - - $nbRatiosSec = 0; - foreach($tabAnnees as $annee) - { - $ratiosSecteur = new RatiosSecteur(); - $ratiosSecteur->annee = $annee; - foreach ($tabTmp as $tmp) - { - if ($tmp['annee']== $annee) - { - $Ridx = $tmp['id']; - if ($tmp['nombre']>$nbRatiosSec){ - $nbRatiosSec = $tmp['nombre']; - } - - $unite = $tabFormulesInfos[$Ridx]['unite']; - if ($unite=='EUR'){ - $montant = round($tmp['ratio']*1000); - } else { - $montant = round($tmp['ratio']); - } - if ($tabBorneMin[$Ridx]<>'' && $montant<$tabBorneMin[$Ridx]){ - $montant='<'.$tabBorneMin[$Ridx]; - } elseif ($tabBorneMax[$Ridx]<>'' && $montant>$tabBorneMax[$Ridx]){ - $montant='>'.$tabBorneMax[$Ridx]; - } - - $ratiosSecteurListe = new Ratios(); - if (substr($montant,0,1)=='N' || substr($montant,0,1)=='<' || substr($montant,0,1)=='>'){ - $ratiosSecteurListe->id = 'r'.$Ridx; - $ratiosSecteurListe->val = $montant; - } else { - $ratiosSecteurListe->id = 'r'.$Ridx; - $ratiosSecteurListe->val = round($montant,2); - } - $ratiosSecteur->liste[] = $ratiosSecteurListe; - } - } - $tabRatiosSecteurs[] = $ratiosSecteur; - } - } - - //$tabRatiosSecteurs=array(count($tabTmp), "1 $strNaf AND annee IN ($strAnnees) ORDER BY annee DESC, id ASC"); - - $output = new RatiosReturn(); - $output->Nom = $tabIdentite['Nom']; - $output->NafEnt = $tabIdentite['NafEnt']; - $output->NafEntLib = $tabIdentite['NafEntLib']; - $output->FJ = $fj; - $output->FJ_lib = $tabIdentite['FJ_lib']; - $output->Siren = $siren; - $output->NbEntNaf = $nbRatiosSec; - $output->BilansInfos = $tabBilansR; - $output->RatiosInfos = $tabRatiosInfos; - $output->RatiosSecteur = $tabRatiosSecteurs; - - debugLog('I',"Liste des Ratios demandée pour $siren RETURN",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->wsLog($page, $siren); - return $output; - - } - - /** - * getRapport - * @param string $siren Siren de l'entreprise - * @param integer $niveau Niveau du rapport 1, 2 ou 3 - * @param integer $id Identifiant interne S&D de l'entreprise - * @param boolean $plus Si true, mise en surveillance privilèges - * @param string $ref Si $plus=true, référence facultative de la mise en Surveillance - * @param integer $encours Si $plus=true, encours facultatif Demandé par le client lors de la mise en Surveillance - * @param string $email Si $plus=true, email facultatif pour le suivi - * @return Rapport - */ - public function getRapport($siren, $niveau=3, $id=0, $plus=false, $ref='', $encours=0, $email='') - { - $this->authenticate(); - if (empty($niveau)) $niveau = 3; - if (empty($id)) $id = 0; - $result = new Rapport(); - $filtre = 0; - $idAnn = 0; - - //@todo : Gestion des droits - $perm = false; - switch($niveau){ - case 1: $perms = array('indiscore', 'indiscorep'); break; - case 2: $perms = array('indiscore2', 'indiscore2p'); break; - case 3: $perms = array('indiscore3', 'indiscore3p'); break; - } - foreach($perms as $item){ - if ( $this->checkPerm($item) ){ - $perm = true; - break; - } - } - if ($perm === false) { - $this->sendError('0902'); - } - - $accesDist=true; - $nivComment=2; - if ($niveau==1){ - $result->Indiscore = $this->getIndiScore($siren, 0, $nivComment, $plus, $ref, $encours, $email); - } elseif ($niveau==2) { - $result->Identite = $this->getIdentite($siren, $id=0); - $result->Indiscore = $this->getIndiScore($siren, 0, $nivComment, $plus, $ref, $encours, $email); - $result->Dirigeants = $this->getDirigeants($siren, false); - $result->Liens = $this->getLiens($siren, true); - $result->Ratios = $this->getRatios($siren, $page="rapport$niveau"); - } elseif ($niveau==3) { - $result->Identite = $this->getIdentite($siren, $id=0); - $result->Indiscore = $this->getIndiScore($siren, 0, $nivComment, $plus, $ref, $encours, $email); - $result->Dirigeants = $this->getDirigeants($siren, false); - $result->Liens = $this->getLiens($siren, true); - $result->Ratios = $this->getRatios($siren, $page="rapport$niveau"); - $result->Annonces = $this->getAnnonces($siren, $filtre, $idAnn); - } - return $result; - } - - /** - * Retourne la liste des banques connues pour une entreprise - * @param string $siren Siren de l'entreprise - * @return BanquesReturn - **/ - public function getBanques($siren) - { - $this->authenticate(); - $this->permission('banque'); - - //Initialisation - $iDb = new WDB('sdv1'); - $tabRet = array(); - debugLog('I',"Liste des banques demandée pour siren $siren", - __LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (intval($siren)<=1000) { - $this->sendError('1010'); - } - - $res=$iDb->select('banques', 'codeBanque, codeGuichet, libBanqueGuichet, precis, dateSource*1 AS dateSource', "siren=$siren", false, MYSQL_ASSOC); - $tmp=$iDb->select('fedRib', "codeBanque, codeGuichet, CONCAT(libBanque,' ',libGuichet) AS libBanqueGuichet, 0 AS precis, IF (dateInfo='0000-00-00', dateDispo*1, dateInfo*1) AS dateSource", "siren=$siren", false, MYSQL_ASSOC); - $res=array_merge($res, $tmp); - foreach ($res as $tabBanque){ - $dateSource=$tabBanque['dateSource']; - $codBanque=$tabBanque['codeBanque']; - $codGuichet=$tabBanque['codeGuichet']; - $libBanque=trim($tabBanque['libBanqueGuichet']); - $found=false; - $adrBanque1=$adrBanque2=$adrBanqueCP=$adrBanqueVille=''; - - if ($codBanque>0 && $codGuichet>0 && - $dateSource>(date('Y')-4)*10000+101 && - $dateSourceselect('insee.BDF_Etabs b, insee.BDF_Guichets g', - 'g.bdfFibCodeEtab AS banque, g.bdfFibCodeGuichet AS guichet, b.bdfFibDenom40 AS nomBanque, b.bdfFibDenom10 AS sigleBanque, g.bdfFibDenom20 AS nomGuichet, g.bdfFibAdresse1 AS adresse1, g.bdfFibAdresse2 AS adresse2, g.bdfFibAdresse3 AS adresse3, g.CP, g.Ville', "g.bdfFibCodeEtab=$codBanque AND g.bdfFibCodeGuichet=$codGuichet AND b.bdfFibCodeEtab=g.bdfFibCodeEtab", - false, MYSQL_ASSOC); - if (isset($tmp[0])){ - $libBanque=trim($tmp[0]['nomBanque'].' '.$tmp[0]['nomGuichet']); - $adrBanque1=$tmp[0]['adresse1']; - $adrBanque2=trim($tmp[0]['adresse2'].' '.$tmp[0]['adresse3']); - $adrBanqueCP=$tmp[0]['CP']; - $adrBanqueVille=$tmp[0]['Ville']; - $found=true; - }; - } - if (!$found && $codBanque>0 && - $dateSource>(date('Y')-4)*10000+101 && - $dateSourceselect('insee.BDF_Etabs', "bdfFibCodeEtab AS banque, '' AS guichet, bdfFibDenom40 AS nomBanque, '' AS nomGuichet, '' AS adresse1, '' AS adresse2, '' AS adresse3, '' AS CP, '' AS Ville", "bdfFibCodeEtab=$codBanque", false, MYSQL_ASSOC); - if (isset($tmp[0])){ - $libBanque=trim($tmp[0]['nomBanque'].' '.$tmp[0]['nomGuichet']); - $adrBanque1=$tmp[0]['adresse1']; - $adrBanque2=trim($tmp[0]['adresse2'].' '.$tmp[0]['adresse3']); - $adrBanqueCP=$tmp[0]['CP']; - $adrBanqueVille=$tmp[0]['Ville']; - } else continue; - } else continue; - - $banque = new Banque(); - $banque->codeBanque = $codBanque; - $banque->codeGuichet = $codGuichet; - $banque->libBanque = $libBanque; - $banque->adresse1 = $adrBanque1; - $banque->adresse2 = $adrBanque2; - $banque->cp = $adrBanqueCP; - $banque->ville = $adrBanqueVille; - $tabRet[] = $banque; - } - debugLog('I',"Liste des banques pour siren $siren : ".count($tabRet).' banques',__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $this->wsLog('banque', $siren); - $output = new BanquesReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des compétences territoriales pour un établissement à une adresse donnée. - * @param string $siret Siret de l'établissement - * @param string $type Type de compétence (pre:prefectures et s/prefectures, jal;journaux d'annonces légales, tri:tribunaux, adm:administrateurs et mandataires judiciaires, hui:huissiers, cfe:centres de formalités des entreprises) - * @param string $codeInsee Code Insee de la commune de l'établissement - * @return ListeCompetencesReturn - */ - public function getListeCompetences($siret, $type, $codeInsee) - { - $this->authenticate(); - $this->permission('competences'); - - //Initialisation - $error = new ErrorType(); - $type = strtolower($type); - - debugLog('I',"Liste des compétences $type demandée pour la commune $codeInsee",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - $iBodacc = new MBodacc(); - $cp=$codeInsee*1; - $dep=false; - if (substr($codeInsee,0,2)=='2A' || substr($codeInsee,0,2)=='2B') - { - $dep=20; $cp=20000+(substr($codeInsee,2,3))*1; - } - elseif ($cp>0 && $cp<100) $dep=$cp; - elseif ($cp>970 && $cp<977) $dep=$cp; - elseif ($cp>999 && $cp<10000) $dep='0'.substr($cp,0,1); - elseif ($cp>=10000 && $cp<96000) $dep=substr($cp,0,2); - elseif ($cp>=99000) $dep=substr($cp,0,2); - elseif ($cp>=98000) $dep=substr($cp,0,3); - elseif ($cp>=97100 && $cp<97700) $dep=substr($cp,0,3); - - require_once 'i18n/cleanchar.php'; - - if ($type=='pre'){ - - $iDb = new WDB('jo'); - $tabTmp2 = $iDb->select('villes', 'DEP, COM, AR, CT', 'codeInsee='.$codeInsee, false, MYSQL_ASSOC); - $arrond = $tabTmp2[0]['AR']; - unset($iDb); - $iDb = new WDB('insee'); - $tabTmp2 = $iDb->select('insee_tabArrond', 'CHEFLIEU, ARTMAJ, NCC', "DEP='$dep' AND AR='$arrond'", false, MYSQL_ASSOC); - $nomSousPref = trim(strtr($tabTmp2[0]['ARTMAJ'],array('('=>'',')'=>'',' '=>'', "'"=>'')).' '.$tabTmp2[0]['NCC']); - unset($iDb); - $tabTmp = $iBodacc->getTribunauxParDep($dep); - foreach ($tabTmp as $i=>$tribunal) - { - if ($tribunal['triType']=='A' || $tribunal['triType']=='B') - { - $pref = levenshtein($tribunal['triNom'], 'PREFECTURE DE '.$nomSousPref); - $spref = levenshtein($tribunal['triNom'], 'SOUS PREFECTURE DE '.$nomSousPref); - - if ($tribunal['triType']=='B' && ($pref>7 || $spref>5)) continue; - - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType'].$typeP; - $competence->Nom = strtoupper($tribunal['triNom']); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper( - preg_replace('/ +/',' ',$tribunal['triAdrNum'].' '. - $tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '. - $tribunal['triAdrVoie'])); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $tribunal['triCommentaire']; - $tabRet[] = $competence; - - } - } - - } elseif ($type=='jal') { - - $tabTmp = $iBodacc->getJALparDep($dep); - foreach ($tabTmp as $i=>$comp) - { - $infos=''; - if (trim($comp['parution'])<>'') $infos.='Parution '.$comp['parution'].'. '; - if (trim($comp['aboAnnuel'])>0) $infos.='Abonnement Annuel : '.$comp['aboAnnuel'].' euros. '; - if (trim($comp['infos'])<>'') $infos.=$comp['infos']; - - $competence = new Competence(); - $competence->Id = 9000+$comp['id']*1; - $competence->IdSup = 0; - $competence->Code = ''; - $competence->Type = ''; - $competence->Nom = strtoupper($comp['nomJal']); - $competence->Siret = ''; - $competence->Adr = strtoupper($comp['adresse']); - $competence->AdrComp = ''; - $competence->CP = $comp['cp']; - $competence->Ville = strtoupper($comp['ville']); - $competence->CodeInsee = ''; - $competence->Tel = $comp['tel']; - $competence->Fax = $comp['fax']; - $competence->Web = $comp['siteWeb']; - $competence->Mail = $comp['email']; - $competence->Statut = 'Actif'; - $competence->DateCessation = ''; - $competence->Remarque = trim($infos); - $tabRet[] = $competence; - } - - } elseif ($type=='tri' || $type=='adm' || $type=='hui') { - - $tabTmp = $iBodacc->getTribunauxParCommune($codeInsee); - foreach ($tabTmp as $i=>$tribunal) - { - if (//$tribunal['triType']=='C' || - $tribunal['triType']=='G'// || - /*$tribunal['triType']=='I'*/) { - $idCA = $tribunal['triIdSup']; - $codeTGI = $tribunal['triCode']; - $code = strtoupper(substr($tribunal['triCode'],0,3)); - } - debugLog('D',"Liste des compétences $type demandée pour la commune $codeInsee ($dep) : ". - "Type=".$tribunal['triType'].', '. - "Code=".$tribunal[$codeTGI],__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($tribunal['triType']<>'E' && $tribunal['triType']<>'O' && - $tribunal['triType']<>'T' && $tribunal['triType']<>'R' && - $tribunal['triType']<>'N' && $tribunal['triType']<>'U' && - $tribunal['triType']<>'Z') - { - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType']; - $competence->Nom = strtoupper(cleanstring($tribunal['triNom'])); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper(cleanstring(preg_replace('/ +/',' ', - $tribunal['triAdrNum'].' '. - $tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '. - $tribunal['triAdrVoie']))); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $tribunal['triCommentaire']; - if ($tribunal['triNumGreffe']*1>0) - { - $competence->IdentifiantGreffe = $tribunal['triNumGreffe']; - } - $tabRet[] = $competence; - } - } - } - - if ($type=='adm') - { - $iInsee = new MInsee(); - $tabTmp = $iInsee->getMandataires(array($idCA), false); - $tabRet = array(); - $nbAff=0; - foreach ($tabTmp as $i=>$tribunal) - { /** @todo A revoir Debut **/ - if (stripos($tribunal['tribunal'], $code)!==false || - stripos($tribunal['tribunal'], 'SAINT')!==false) - { - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($tribunal['adresse']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $tribunal['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation'], - $competence->Remarque = $tribunal['contact']; - //,,,,Prenom,,,Statut,,,cp,ville,tel,fax,email,web,contact - $tabRet[] = $competence; - $nbAff++; - } - } - if ($nbAff==0) - { - foreach ($tabTmp as $i=>$tribunal) - { - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($tribunal['adresse']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $tribunal['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation'], - $competence->Remarque = $tribunal['contact']; - //,,,,Prenom,,,Statut,,,cp,ville,tel,fax,email,web,contact - $tabRet[] = $competence; - } - }/** @todo A revoir Fin : Lier correctement les mandataires à un TI principal **/ - } - elseif ($type=='hui') - { - $iInsee = new MInsee(); - $tabTmp = $iInsee->getHuissiers(array($codeTGI), false); - - $tabRet = array(); - $nbAff = 0; - foreach ($tabTmp as $i=>$tribunal) - { - $adr = $iInsee->structureVoie($tribunal['adresse']); - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($adr['num'].' '.$adr['adr_btq'].' '. - $adr['typeVoie'].' '.$adr['libVoie']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $adr['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation']; - $competence->Remarque = strtr($tribunal['contact'], - array( '
        '=>', ', '
        '=>', ', - '
        '=>', ', - )); - $tabRet[] = $competence; - } - $nbComp = count($tabTmp); - debugLog('I',"$nbComp compétences $type trouvées pour le tribunal $codeTGI",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } - elseif ($type=='cfe') - { - $tabTmp = $iBodacc->getTribunauxParCommune($codeInsee); - foreach ($tabTmp as $i=>$tribunal) - { - if ($tribunal['triType']=='C' || $tribunal['triType']=='O' || - $tribunal['triType']=='T' || $tribunal['triType']=='R' || - $tribunal['triType']=='N' || $tribunal['triType']=='U' || - $tribunal['triType']=='Z') - { - if (strlen($tribunal['triCommentaire'])==32 && - strpos($tribunal['triCommentaire'], ' ')===false) - $remarque=''; - else $remarque=$tribunal['triCommentaire']; - - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType']; - $competence->Nom = strtoupper($tribunal['triNom']); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper(preg_replace('/ +/',' ',$tribunal['triAdrNum'].' '.$tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '.$tribunal['triAdrVoie'])); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $remarque; - $tabRet[] = $competence; - } - } - } - $this->wsLog('competences',$siret,$type.'/'.$codeInsee); - $output = new ListeCompetencesReturn(); - $output->result = $tabRet; - $output->nbReponses = count($tabRet); - return $output; - } - - /** - * Retourne le statut du webservice - * @return StatusReturn - */ - public function status() - { - /* @todo tester les différents éléments qui peuvent conduire - * à un problème dans les services tel que la connexion à la - * base de données, l'accès FTP, l'accès HTTP, l'accès système de fichier - */ - - //Enregistrement des accès à la requête getIdentite - Zend_Registry::get('WsLogger')->info("status - ip:". - $_SERVER['REMOTE_ADDR'].", login:".$_SERVER['PHP_AUTH_USER']. - ", hash:".$_SERVER['PHP_AUTH_PW']); - - $error = new StatusReturn(); - //Test connexion à la base de données - $db = new WDB('jo'); - if (!$db) { - $error->statusCode = 9000; - $error->statusMsg = $this->listError['9000']; - } else { - $error->statusCode = 3000; - $error->statusMsg = $this->listError['3000']; - } - return $error; - } - -} - -?> \ No newline at end of file diff --git a/library/WsScore/Entreprise/v0.5/Types.php b/library/WsScore/Entreprise/v0.5/Types.php deleted file mode 100644 index 7825e910..00000000 --- a/library/WsScore/Entreprise/v0.5/Types.php +++ /dev/null @@ -1,3724 +0,0 @@ - 'ErrorType', - 'StatusReturn' => 'StatusReturn', - 'SearchReturn' => 'SearchReturn', - 'SearchEntrepriseReturn' => 'SearchEntrepriseReturn', - 'SearchDirReturn' => 'SearchDirReturn', - 'DirigeantsReturn' => 'DirigeantsReturn', - 'AnnoncesReturn' => 'AnnoncesReturn', - 'InseeReturn' => 'InseeReturn', - 'TvaReturn' => 'TvaReturn', - 'LiensReturn' => 'LiensReturn', - 'InfosRegReturn' => 'InfosRegReturn', - 'ListeBilansReturn' => 'ListeBilansReturn', - 'SetSurveillanceReturn' => 'SetSurveillanceReturn', - 'SurveillancesReturn' => 'SurveillancesReturn', - 'ListeEtablissementsReturn' => 'ListeEtablissementsReturn', - 'RatiosReturn' => 'RatiosReturn', - 'RechercheAnnonceReturn' => 'RechercheAnnonceReturn', - 'Identite' => 'Identite', - 'GeoInfos' => 'GeoInfos', - 'IdentiteBilan' => 'IdentiteBilan', - 'IdentiteBourse' => 'IdentiteBourse', - 'AutreSiren' => 'AutreSiren', - 'EntrepriseCriteres' => 'EntrepriseCriteres', - 'DirigeantCriteres' => 'DirigeantCriteres', - 'EntrepriseItem' => 'EntrepriseItem', - 'EntrepriseDirItem' => 'EntrepriseDirItem', - 'Etablissement' => 'Etablissement', - 'Dirigeant' => 'Dirigeant', - 'AnnonceFilter' => 'AnnonceFilter', - 'Annonce' => 'Annonce', - 'AnnonceEvenement' => 'AnnonceEvenement', - 'AnnonceNum' => 'AnnonceNum', - 'Actionnaire' => 'Actionnaire', - 'Participation' => 'Participation', - 'InseeEven' => 'InseeEven', - 'InfosReg' => 'InfosReg', - 'InfosBourse' => 'InfosBourse', - 'ListeBilans' => 'ListeBilans', - 'SurveillancesFiltre' => 'SurveillancesFiltre', - 'Surveillance' => 'Surveillance', - 'SurveillanceSource' => 'SurveillanceSource', - 'Bilan' => 'Bilan', - 'BilanPoste' => 'BilanPoste', - 'RechercheAnnonceCriteres' => 'RechercheAnnonceCriteres', - 'AnnonceItem' => 'AnnonceItem', - 'RatiosBilansInfos' => 'RatiosBilansInfos', - 'RatiosInfos' => 'RatiosInfos', - 'RatiosSecteur' => 'RatiosSecteur', - 'Ratios' => 'Ratios', - 'Rapport' => 'Rapport', - 'Indiscore' => 'Indiscore', - 'Scores' => 'Scores', - 'IndiscoreVariables' => 'IndiscoreVariables', - 'CA_Y' => 'CA_Y', - 'IndiscoreImportExport' => 'IndiscoreImportExport', - 'IndiscoreInfosNotations' => 'IndiscoreInfosNotations', - 'IndiscorePaiement' => 'IndiscorePaiement', - 'IndiscorePaiementDetail' => 'IndiscorePaiementDetail', - 'IndiscoreNotesStructure' => 'IndiscoreNotesStructure', - 'IndiscoreBilans' => 'IndiscoreBilans', - 'AdresseDomEnt' => 'AdresseDomEnt', - 'InfosIris' => 'InfosIris', - 'BanquesReturn' => 'BanquesReturn', - 'Banque' => 'Banque', - 'ListeCompetencesReturn' => 'ListeCompetencesReturn', - 'Competence' => 'Competence', - 'IdentiteProcol' => 'IdentiteProcol', - 'Organe' => 'Organe', - 'AutreSiret' => 'AutreSiret', - 'SearchRefClientReturn' => 'SearchRefClientReturn', - 'SearchRefClient' => 'SearchRefClient', - 'SearchRefClientInfo' => 'SearchRefClientInfo', -); \ No newline at end of file diff --git a/library/WsScore/Entreprise/v0.6/Entreprise.php b/library/WsScore/Entreprise/v0.6/Entreprise.php deleted file mode 100644 index 18a1f5c1..00000000 --- a/library/WsScore/Entreprise/v0.6/Entreprise.php +++ /dev/null @@ -1,3509 +0,0 @@ -authenticate(); - $this->permission('identite'); - - //Initialisation - if (empty($id)) { $id = 0; } - $forceVerif = false; - - $tdeb = microtime(1); - $ligne = date('YmdHis').";$siret;Ws->getIdentite Avant ..."; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - debugLog('I',"Identités demandée pour siret $siret (id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if ($siren*1==0 && $id==0) { - $this->sendError('1010'); - } elseif ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren, $nic, $id, $forceVerif); - debugLog('I', "Après getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $duree = round(microtime(1)-$tdeb,3); - $ligne = date('YmdHis').";$siret;Ws->getIdentite juste apres iInsee->... ($duree s)"; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - if (empty($entrep) || empty($entrep['id']) ) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - - $identite = new Identite(); - $identite->id = $entrep['id']; - $identite->Siret = $entrep['Siret']; - $identite->SiretSiege = $entrep['SiretSiege']; - $identite->Siege = $entrep['Siege']; - $identite->AncienSiege = $entrep['AncienSiege']; - $identite->AncienSiegeDateFin = $entrep['AncienSiegeDateFin']; - $identite->TribunalCode = prepareString($entrep['Tribunal']); - $identite->TribunalLib = prepareString($entrep['TribunalLib']); - //'NumGreffe' = $entrep['numGreffe'], // Ajouté le 4 08 2009 - $identite->NumRC = $entrep['numRC']; // Ajouté le 4 08 2009 - $identite->Actif = $entrep['Actif']; - $identite->ActifEco = $entrep['ActifEco']; // Etab éco actif, ajout le 28/04/2011 - $identite->ActifEcoDate = $entrep['ActifEcoDate']; // Date si éco inactif et jur actif - $identite->ActifEcoType = $entrep['ActifEcoType']; // vide ou NPAI ou PFER ou ECOF - $identite->EntActiveRCS = $entrep['EntActiveRCS']; - $identite->AutreId = $entrep['AutreId']; - $identite->Source = $entrep['Source']; - $identite->SourceId = $entrep['SourceId']; - $identite->Isin = $entrep['Isin']; - $identite->Nom = prepareString(strtr($entrep['Nom'],'/*',' ')); - $identite->Nom2 = prepareString($entrep['Nom2']); - $identite->NomLong = prepareString($entrep['nomLong']); // Ajouté le 4 08 2009 - $identite->NomCommercial = prepareString($entrep['NomCommercial']); // Ajouté le 16 11 2010 - $identite->Siret = $entrep['Siret']; - $identite->Sigle = prepareString($entrep['Sigle']); - $identite->SigleLong = prepareString($entrep['sigleLong']); // Ajouté le 4 08 2009 - $identite->Enseigne = prepareString($entrep['Enseigne']); - $identite->EnseigneLong = prepareString($entrep['enseigneLong']); // Ajouté le 16 11 2010 - $identite->Adresse = prepareString($entrep['Adresse']); - $identite->Adresse2 = prepareString($entrep['Adresse2']); - $identite->AdresseNum = prepareString($entrep['AdresseNum']); - $identite->AdresseBtq = prepareString($entrep['AdresseBtq']); - $identite->AdresseVoie = prepareString($entrep['AdresseVoie']); - $identite->AdresseRue = prepareString($entrep['AdresseRue']); - $identite->CP = $entrep['CP']; - $identite->Ville = prepareString($entrep['Ville']); - $identite->Pays = prepareString($entrep['Pays']); // Ajouté le 18 02 2008 - $identite->PaysIso2 = $entrep['PaysIso2']; - $identite->AdresseDom = $entrep['AdresseDom']; - - $tabAdresseDomEnt = array(); - if (isset($entrep['AdresseDomEnt']) && count($entrep['AdresseDomEnt'])>0){ - foreach ($entrep['AdresseDomEnt'] as $element){ - $adresseDomEnt = new AdresseDomEnt(); - $adresseDomEnt->siren = $element['siren']; - $adresseDomEnt->nom = $element['nom']; - $tabAdresseDomEnt[] = $adresseDomEnt; - } - } - $identite->AdresseDomEnt = $tabAdresseDomEnt; - - $identite->AdresseDomNb = $entrep['AdresseDomNb']; - $identite->Civilite = $entrep['Civilite']; - $identite->NbEtab = $entrep['NbEtab']; - $identite->Tel = prepareString($entrep['Tel']); - $identite->Fax = prepareString($entrep['Fax']); - $identite->Web = prepareString($entrep['Web']); - $identite->Mail = prepareString($entrep['Mail']); - $identite->GeoLat = $entrep['GeoLat']; - $identite->GeoLon = $entrep['GeoLon']; - $identite->GeoPrecis = $entrep['GeoPrecis']; - - $geoInfos = new GeoInfos(); - $geoInfos->CUCS = $entrep['GeoInfos']['CUCS']; - $geoInfos->NCUCS = $entrep['GeoInfos']['NCUCS']; - $geoInfos->ZRU = $entrep['GeoInfos']['ZRU']; - $geoInfos->NZRU = $entrep['GeoInfos']['NZRU']; - $geoInfos->ZFU = $entrep['GeoInfos']['ZFU']; - $geoInfos->NZFU = $entrep['GeoInfos']['NZFU']; - $geoInfos->ZUS = $entrep['GeoInfos']['ZUS']; - $geoInfos->NZUS = $entrep['GeoInfos']['NZUS']; - $geoInfos->AFR = $entrep['GeoInfos']['AFR']; - $geoInfos->NAFR = $entrep['GeoInfos']['NAFR']; - $geoInfos->ZRR = $entrep['GeoInfos']['ZRR']; - $geoInfos->NZRR = $entrep['GeoInfos']['NZRR']; - $identite->GeoInfos = $geoInfos; - - $identite->TvaNumero = $entrep['TvaNumero']; - $identite->TvaAttribue = $entrep['TvaAttribue']; - $identite->FJ = $entrep['FJ']; - $identite->FJ_Lib = $entrep['FJ_lib']; - $identite->FJ2 = $entrep['FJ2']; // Ajouté le 4 08 2009 - $identite->FJ2_Lib = $entrep['FJ2_Lib']; // Ajouté le 4 08 2009 - $identite->Siren = $entrep['Siren']; - $identite->Nic = $entrep['Nic']; - $identite->NafEnt = $entrep['NafEnt']; - $identite->NafEntLib = $entrep['NafEntLib']; - $identite->NafEtab = $entrep['NafEtab']; - $identite->NafEtabLib = $entrep['NafEtabLib']; - $identite->NaceEtab = $entrep['NaceEtab']; - $identite->NaceEnt = $entrep['NaceEnt']; - $identite->Nafa = $entrep['APRM']; - $identite->NafaLib = prepareString($entrep['APRM_Lib']); - $identite->NumRM = $entrep['NumRM']; - $identite->Activite = $entrep['Activite']; - $identite->Capital = $entrep['Capital']; - $identite->CapitalDev = $entrep['CapitalDev']; - $identite->CapitalLib = $entrep['CapitalLib']; // Ajouté le 18 02 2008 - $identite->CapitalType = prepareString($entrep['CapitalType']); // Ajouté le 4 08 2009 - $identite->DateCreaEt = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEt']); - $identite->DateCreaEn = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEn']); - $identite->DateClotEt = $entrep['DateClotEt']; //@todo : date - $identite->DateImmat = $entrep['dateImmat']; // Ajouté le 4 08 2009 - $identite->DateRadiation = $entrep['dateRad']; // Ajouté le 4 08 2009 - //'DateMajRCS' = $entrep['DateMajRCS'], // Ajouté le 4 08 2009 - $identite->EffEnTr = $entrep['EffEnTr']; - $identite->EffEnTrLib = $entrep['EffEnTrLib']; - $identite->Effectif = $entrep['Effectif']; - $identite->EffEtTr = $entrep['EffEtTr']; // Ajout le 11 08 2010 - $identite->EffEtTrLib = $entrep['EffEtTrLib']; // Ajout le 11 08 2010 - $identite->EffectifEtab = $entrep['EffectifEtab']; // Ajout le 11 08 2010 - $identite->Dept = $entrep['Dept']; - $identite->codeCommune = prepareString($entrep['codeCommune']); - $identite->AnneeEffEn = $entrep['AnneeEffEn']; - $identite->AnneeEffEt = $entrep['AnneeEffEt']; - $identite->AnneeTCA = $entrep['AnneeTCA']; - $identite->TrancheCA = $entrep['TrancheCA']; - $identite->TrancheCALib = $entrep['TrancheCALib']; - $identite->TrancheCAType = $entrep['TrancheCAType']; - $identite->dir1Code = $entrep['dir1Code']; - $identite->dir1Titre = prepareString($entrep['dir1Titre']); - $identite->dir1NomPrenom = prepareString($entrep['dir1NomPrenom']); - $identite->dir1DateFct = prepareString($entrep['dir1DateFct']); //@todo : date - $identite->dir1DateNaiss = $entrep['dir1DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir1LieuNaiss = prepareString($entrep['dir1LieuNaiss']); // Ajouté le 4 08 2009 - $identite->dir2Code = $entrep['dir2Code']; - $identite->dir2Titre = prepareString($entrep['dir2Titre']); - $identite->dir2NomPrenom = prepareString($entrep['dir2NomPrenom']); - $identite->dir2DateFct = $entrep['dir2DateFct']; //@todo : date - $identite->dir2DateNaiss = prepareString($entrep['dir2DateNaiss']); //@todo : date // Ajouté le 4 08 2009 - $identite->dir2LieuNaiss = prepareString($entrep['dir2LieuNaiss']); // Ajouté le 4 08 2009 - $identite->Rivoli = $entrep['Rivoli']; - - $identite->InfosIris->codIris = $entrep['InfosIris']['codIris']; - $identite->InfosIris->codComIris = $entrep['InfosIris']['codComIris']; - $identite->InfosIris->libIris = prepareString($entrep['InfosIris']['libIris']); - $identite->InfosIris->typIris = prepareString($entrep['InfosIris']['typIris']); - $identite->InfosIris->evoIris = $entrep['InfosIris']['evoIris']; - $identite->InfosIris->trIris = $entrep['InfosIris']['trIris']; - $identite->InfosIris->grdQuartier = $entrep['InfosIris']['grdQuartier']; - $identite->NatureActivite = $entrep['NatureActivite']; // Nature de l'activité - $identite->OrigineCreation = $entrep['OrigineCreation']; // Origine de la création - $identite->TypeExploitation = $entrep['TypeExploitation']; - $identite->Auxiliaire = $entrep['Auxiliaire']; // 1=Auxiliaire / 0=Non auxiliaire - $identite->Saisonnalite = $entrep['Saisonnalite']; // P=Activité permanente / S=Activité saisonnière - $identite->SurfaceMagasin = $entrep['ACTISURF']*1; // 0=N/D, 1=inf. à 300m2,2=300 à 400m2, 3=400 à 2500m2, 4=sup. à 2500m2 - $identite->SituationJuridique = $entrep['SituationJuridique']; - $identite->Bilan->Millesime = $entrep['bilanAnnee']; - $identite->Bilan->Cloture = $entrep['bilanDate']; //@todo : date - $identite->Bilan->Duree = $entrep['bilanMois']; - $identite->Bilan->Devise = $entrep['bilanDevise']; - $identite->Bilan->Capital = $entrep['bilanDA']; - $identite->Bilan->CA = $entrep['bilanFL']; - $identite->Bilan->CAestime = $entrep['bilanFLestime']; - $identite->Bilan->Resultat = prepareString($entrep['bilanHN']); - $identite->Bilan->Effectif = $entrep['bilanYP']; - $identite->Bourse->placeCotation = $bourse['placeCotation']; - $identite->Bourse->nombreTitres = $bourse['nombreTitres']; - $identite->Bourse->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $identite->Bourse->derCoursDate = $bourse['date']; //@todo : date - $identite->Bourse->derCoursCloture = $bourse['close']; //@todo : date - - $tabAutreSiren = array(); - if (isset($entrep['AutreSiren'])) { - $autreSiren = new AutreSiren(); - $autreSiren->siren = $entrep['AutreSiren']['listeSiren']['siren']; - $autreSiren->type = $entrep['AutreSiren']['listeSiren']['type']; - $tabAutreSiren[] = $autreSiren; - } - $identite->AutreSiren = $tabAutreSiren; - - $tabAutreSiret = array(); - if (count($entrep['AutreSiret'])) { - foreach($entrep['AutreSiret'] as $type => $item) { - $autreSiret = new AutreSiret(); - $autreSiret->type = $type; - $autreSiret->siren = $item['siren']; - $autreSiret->nic = $item['nic']; - $autreSiret->apeEtab = $item['apeEtab']; - $autreSiret->codeEve = $item['codeEve']; - $autreSiret->dateEve = $item['dateEve']; - $autreSiret->adrL1 = $item['adrL1']; - $autreSiret->adrL2 = $item['adrL2']; - $autreSiret->adrL3 = $item['adrL3']; - $autreSiret->adrL4 = $item['adrL4']; - $autreSiret->adrL5 = $item['adrL5']; - $autreSiret->adrL6 = $item['adrL6']; - $autreSiret->adrL7 = $item['adrL7']; - $autreSiret->depCom = $item['depCom']; - $autreSiret->rivoli = $item['rivoli']; - $autreSiret->siege = $item['siege']; - $autreSiret->destinat = $item['destinat']; - $autreSiret->typEtab = $item['typeEtab']; - $autreSiret->origine = $item['origine']; - $tabAutreSiret[] = $autreSiret; - } - } - $identite->AutreSiret = $tabAutreSiret; - - $identite->DateMajINSEE = $entrep['DateMajINSEE']; //@todo : date - $identite->DateMajRCS = $entrep['DateMajRCS']; //@todo : date - $identite->DateMajBILAN = $entrep['bilanDateMaj']; //@todo : date - $identite->DateMajANN = $entrep['dateMajANN']; //@todo : date - $identite->DateMajID = $entrep['dateMajIdentite']; //@todo : date - //'importExport' = $entrep['importExport'], - - if (preg_match('/NAF4/i', $this->tabInfoUser['pref'])) - { - $entrep2 = $iInsee->getNaf4($siren, $nic, $id); - $identite->Naf4Ent = $entrep2['apen4']; - $identite->Naf4Etab = $entrep2['apet4']; - $identite->Naf4EntLib = prepareString($entrep2['apen4_lib']); - $identite->Naf4EtabLib = prepareString($entrep2['apet4_lib']); - } - - debugLog('I', 'Etablissement retourné = '. $entrep['Nom'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('identite',$siret,$id); - $duree=round(microtime(1)-$tdeb,3); - $ligne=date('YmdHis').";$siret;Ws->getIdentite APRES ($duree s) !!!"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - - return $identite; - } - - /** - * Retourne les informations identitaires de l'entreprise ou de l'établissement demandé - * @param string $siret Siren de l'entreprise ou siret de l'établissement - * @param integer $id Identifiant S&D de l'établissement - * @return IdentiteProcol Fiche d'identité de l'établissement - */ - public function getIdentiteProcol($siret, $id=0, $forceVerif=false) - { - $this->authenticate(); - $this->permission('idprocol'); - - debugLog('I',"Identité AGS demandée pour siret $siret (id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if (intval($siren)==0 && $id==0) { - $this->sendError('1010'); - } elseif ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren, $nic, $id, $forceVerif); - debugLog('I', "Après getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $duree = round(microtime(1)-$tdeb,3); - $ligne = date('YmdHis').";$siret;Ws->getIdentite juste apres iInsee->... ($duree s)"; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - if (empty($entrep)) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - - $identiteProcol = new IdentiteProcol(); - - //Element identite - $identite = new Identite(); - $identite->id = $entrep['id']; - $identite->Siret = $entrep['Siret']; - $identite->SiretSiege = $entrep['SiretSiege']; - $identite->Siege = $entrep['Siege']; - $identite->TribunalCode = $entrep['Tribunal']; - $identite->TribunalLib = $entrep['TribunalLib']; - $identite->NumRC = $entrep['numRC']; // Ajouté le 4 08 2009 - $identite->Actif = $entrep['Actif']; - $identite->EntActiveRCS = $entrep['EntActiveRCS']; - $identite->AutreId = $entrep['AutreId']; - $identite->Source = $entrep['Source']; - $identite->SourceId = $entrep['SourceId']; - $identite->Isin = $entrep['Isin']; - $identite->Nom = strtr($entrep['Nom'],'/*',' '); - $identite->Nom2 = $entrep['Nom2']; - $identite->NomLong = $entrep['nomLong']; // Ajouté le 4 08 2009 - $identite->NomCommercial = $entrep['NomCommercial']; // Ajouté le 16 11 2010 - $identite->Siret = $entrep['Siret']; - $identite->Sigle = $entrep['Sigle']; - $identite->SigleLong = $entrep['sigleLong']; // Ajouté le 4 08 2009 - $identite->Enseigne = $entrep['Enseigne']; - $identite->EnseigneLong = $entrep['enseigneLong']; // Ajouté le 16 11 2010 - $identite->Adresse = $entrep['Adresse']; - $identite->Adresse2 = $entrep['Adresse2']; - $identite->AdresseNum = $entrep['AdresseNum']; - $identite->AdresseBtq = $entrep['AdresseBtq']; - $identite->AdresseVoie = $entrep['AdresseVoie']; - $identite->AdresseRue = $entrep['AdresseRue']; - $identite->CP = $entrep['CP']; - $identite->Ville = $entrep['Ville']; - $identite->Pays = $entrep['Pays']; // Ajouté le 18 02 2008 - $identite->PaysIso2 = $entrep['PaysIso2']; - $identite->AdresseDom = $entrep['AdresseDom']; - - $tabAdresseDomEnt = array(); - if (isset($entrep['AdresseDomEnt']) && count($entrep['AdresseDomEnt'])>0){ - foreach ($entrep['AdresseDomEnt'] as $element){ - $adresseDomEnt = new AdresseDomEnt(); - $adresseDomEnt->siren = $element['siren']; - $adresseDomEnt->nom = $element['nom']; - $tabAdresseDomEnt[] = $adresseDomEnt; - } - } - $identite->AdresseDomEnt = $tabAdresseDomEnt; - - $identite->AdresseDomNb = $entrep['AdresseDomNb']; - $identite->Civilite = $entrep['Civilite']; - $identite->NbEtab = $entrep['NbEtab']; - $identite->Tel = $entrep['Tel']; - $identite->Fax = $entrep['Fax']; - $identite->Web = $entrep['Web']; - $identite->Mail = $entrep['Mail']; - $identite->GeoLat = $entrep['GeoLat']; - $identite->GeoLon = $entrep['GeoLon']; - $identite->GeoPrecis = $entrep['GeoPrecis']; - $identite->GeoInfos = $entrep['GeoInfos']; - $identite->TvaNumero = $entrep['TvaNumero']; - $identite->TvaAttribue = $entrep['TvaAttribue']; - $identite->FJ = $entrep['FJ']; - $identite->FJ_Lib = $entrep['FJ_lib']; - $identite->FJ2 = $entrep['FJ2']; // Ajouté le 4 08 2009 - $identite->FJ2_Lib = $entrep['FJ2_Lib']; // Ajouté le 4 08 2009 - $identite->Siren = $entrep['Siren']; - $identite->Nic = $entrep['Nic']; - $identite->NafEnt = $entrep['NafEnt']; - $identite->NafEntLib = $entrep['NafEntLib']; - $identite->NafEtab = $entrep['NafEtab']; - $identite->NafEtabLib = $entrep['NafEtabLib']; - $identite->NaceEtab = $entrep['NaceEtab']; - $identite->NaceEnt = $entrep['NaceEnt']; - $identite->Nafa = $entrep['APRM']; - $identite->NafaLib = $entrep['APRM_Lib']; - $identite->NumRM = $entrep['NumRM']; - $identite->Activite = $entrep['Activite']; - $identite->Capital = $entrep['Capital']; - $identite->CapitalDev = $entrep['CapitalDev']; - $identite->CapitalLib = $entrep['CapitalLib']; // Ajouté le 18 02 2008 - $identite->CapitalType = $entrep['CapitalType']; // Ajouté le 4 08 2009 - $identite->DateCreaEt = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEt']); - $identite->DateCreaEn = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEn']); - $identite->DateClotEt = $entrep['DateClotEt']; //@todo : date - $identite->DateImmat = $entrep['dateImmat']; // Ajouté le 4 08 2009 - $identite->DateRadiation = $entrep['dateRad']; // Ajouté le 4 08 2009 - $identite->EffEnTr = $entrep['EffEnTr']; - $identite->EffEnTrLib = $entrep['EffEnTrLib']; - $identite->Effectif = $entrep['Effectif']; - $identite->EffEtTr = $entrep['EffEtTr']; // Ajout le 11 08 2010 - $identite->EffEtTrLib = $entrep['EffEtTrLib']; // Ajout le 11 08 2010 - $identite->EffectifEtab = $entrep['EffectifEtab']; // Ajout le 11 08 2010 - $identite->Dept = $entrep['Dept']; - $identite->codeCommune = $entrep['codeCommune']; - $identite->AnneeEffEn = $entrep['AnneeEffEn']; - $identite->AnneeEffEt = $entrep['AnneeEffEt']; - $identite->AnneeTCA = $entrep['AnneeTCA']; - $identite->TrancheCA = $entrep['TrancheCA']; - $identite->TrancheCALib = $entrep['TrancheCALib']; - $identite->dir1Code = $entrep['dir1Code']; - $identite->dir1Titre = $entrep['dir1Titre']; - $identite->dir1NomPrenom = $entrep['dir1NomPrenom']; - $identite->dir1DateFct = $entrep['dir1DateFct']; //@todo : date - $identite->dir1DateNaiss = $entrep['dir1DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir1LieuNaiss = $entrep['dir1LieuNaiss']; // Ajouté le 4 08 2009 - $identite->dir2Code = $entrep['dir2Code']; - $identite->dir2Titre = $entrep['dir2Titre']; - $identite->dir2NomPrenom = $entrep['dir2NomPrenom']; - $identite->dir2DateFct = $entrep['dir2DateFct']; //@todo : date - $identite->dir2DateNaiss = $entrep['dir2DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir2LieuNaiss = $entrep['dir2LieuNaiss']; // Ajouté le 4 08 2009 - $identite->Rivoli = $entrep['Rivoli']; - $identite->InfosIris->codIris = $entrep['InfosIris']['codIris']; - $identite->InfosIris->codComIris = $entrep['InfosIris']['codComIris']; - $identite->InfosIris->libIris = $entrep['InfosIris']['libIris']; - $identite->InfosIris->typIris = $entrep['InfosIris']['typIris']; - $identite->InfosIris->evoIris = $entrep['InfosIris']['evoIris']; - $identite->InfosIris->trIris = $entrep['InfosIris']['trIris']; - $identite->InfosIris->grdQuartier = $entrep['InfosIris']['grdQuartier']; - $identite->NatureActivite = $entrep['NatureActivite']; // Nature de l'activité - $identite->OrigineCreation = $entrep['OrigineCreation']; // Origine de la création - $identite->TypeExploitation = $entrep['TypeExploitation']; - $identite->Auxiliaire = $entrep['Auxiliaire']; // 1=Auxiliaire / 0=Non auxiliaire - $identite->Saisonnalite = $entrep['Saisonnalite']; // P=Activité permanente / S=Activité saisonnière - $identite->SituationJuridique = $entrep['SituationJuridique']; - $identite->Bilan->Cloture = $entrep['bilanDate']; //@todo : date - $identite->Bilan->Duree = $entrep['bilanMois']; - $identite->Bilan->Devise = $entrep['bilanDevise']; - $identite->Bilan->Capital = $entrep['bilanDA']; - $identite->Bilan->CA = $entrep['bilanFL']; - $identite->Bilan->Resultat = $entrep['bilanHN']; - $identite->Bilan->Effectif = $entrep['bilanYP']; - $identite->Bourse->placeCotation = $bourse['placeCotation']; - $identite->Bourse->nombreTitres = $bourse['nombreTitres']; - $identite->Bourse->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $identite->Bourse->derCoursDate = $bourse['date']; //@todo : date - $identite->Bourse->derCoursCloture = $bourse['close']; //@todo : date - - $tabAutreSiren = array(); - if (isset($entrep['AutreSiren'])) { - $autreSiren = new AutreSiren(); - $autreSiren->siren = $entrep['AutreSiren']['listeSiren']['siren']; - $autreSiren->type = $entrep['AutreSiren']['listeSiren']['type']; - $tabAutreSiren[] = $autreSiren; - } - $identite->AutreSiren = $tabAutreSiren; - - $identite->DateMajINSEE = $entrep['DateMajINSEE']; //@todo : date - $identite->DateMajRCS = $entrep['DateMajRCS']; //@todo : date - $identite->DateMajBILAN = $entrep['bilanDateMaj']; //@todo : date - $identite->DateMajANN = $entrep['dateMajANN']; //@todo : date - $identite->DateMajID = $entrep['dateMajIdentite']; //@todo : date - - if (preg_match('/NAF4/i', $this->tabInfoUser['pref'])) - { - $entrep2 = $iInsee->getNaf4($siren, $nic, $id); - $identite->Naf4Ent = $entrep2['apen4']; - $identite->Naf4Etab = $entrep2['apet4']; - $identite->Naf4EntLib = $entrep2['apen4_lib']; - $identite->Naf4EtabLib = $entrep2['apet4_lib']; - } - - $identiteProcol->Identite = $identite; - - //Eléments annonces légales - $tabRetAnn = $tabLastEven = array(); - if (intval($siren)!=0) { - $anns = $this->getAnnonces($siren, 1); - $anns = $anns->result; - $tribunalProcol = false; - foreach ($anns as $nb=>$ann) - { - $tabRetEven = array(); - foreach ($ann->evenements as $tabEven) { - // On ignore les éléments suivants - if ($tabEven->CodeEven>=7000) continue; - if ($tabEven->CodeEven>=4000 && $tabEven->CodeEven<=4999) continue; - - // Par défaut, on force le tribunal à celui présent dans la dernière annonce de Procol - if ($tribunalProcol==false && $tabEven->CodeEven>=1000 && $tabEven->CodeEven<2000 && $ann->BodaccCode=='BODA') { - $identiteProcol->TribunalCode = $ann->TribunalCode; - $identiteProcol->TribunalLib = prepareString($ann->Tribunal); - $tribunalProcol=true; - } - - // On ne prend que le dernier élément de chaque type - if (in_array($tabEven->CodeEven, $tabLastEven)) continue; - - $tabLastEven[] = $tabEven->CodeEven; - $tabRetEven[] = $tabEven; - } - - if (count($tabRetEven)>0) { - $annonce = new Annonce(); - $annonce->id = $ann->id; - $annonce->BodaccCode = $ann->BodaccCode; - $annonce->BodaccNum = $ann->BodaccNum; - $annonce->NumAnnonce = $ann->NumAnnonce; - $annonce->DateParution = $ann->DateParution; //@todo : date - $annonce->Departement = $ann->Departement; - $annonce->Tribunal = $ann->Tribunal; - $annonce->TribunalCode = $ann->TribunalCode; - $annonce->TribunalSiret = $ann->TribunalSiret; - $annonce->Rubrique = $ann->Rubrique; - $annonce->typeAnnonce = $ann->typeAnnonce; - $annonce->texteRectificatif = $ann->texteRectificatif; - $annonce->texteAnnonce = utf8_encode($ann->texteAnnonce); - $annonce->dateEffet = $ann->dateEffet; //@todo : date - $annonce->dateJugement = $ann->dateJugement; //@todo : date - $annonce->dateInsertionSD = $ann->dateInsertionSD; //@todo : date - $annonce->evenements = $tabRetEven; - $annonce->Lien_Annonce_Pdf = $ann->Lien_Annonce_Pdf; - $tabRetAnn[] = $annonce; - } - } - $identiteProcol->Annonces = $tabRetAnn; - - $iRncs = new MRncs(); - if ($entrep['Siege']==1 || $entrep['Siege']==11) { - $identiteProcol->LibTypeEtab = 'Etablissement Siege'; - } else { - $tabEtabRncs = $iRncs->getIdentiteEtab($siren, $entrep['Nic']); - if ($tabEtabRncs['Siege']==2) $identiteProcol->LibTypeEtab = 'Etablissement Principal'; - elseif ($tabEtabRncs['Siege']==1) $identiteProcol->LibTypeEtab = 'Etablissement Complementaire'; - elseif ($tabEtabRncs['Siege']==0) $identiteProcol->LibTypeEtab = 'Etablissement Secondaire'; - } - - //@todo - $tabJuge = $iRncs->getIntervenants($siren); - $tabDepots=array(); - foreach ($tabJuge as $iDepot=>$depot) { - $organe = new Organe(); - $organe->codEven = $depot['codEven']; - $organe->libEven = prepareString($depot['libEven']); - $organe->dateEffet = $depot['dateEffet']; - $organe->admcode = $depot['admcode']; - $organe->admfonction = prepareString($depot['admfonction']); - $organe->admnom = prepareString($depot['admnom']); - $organe->admadrNum = $depot['admadrNum']; - $organe->admadrInd = $depot['admadrInd']; - $organe->admadrVoie = $depot['admadrVoie']; // @todo : adm1adr1, adm1adr2, adm1adr3, - $organe->admadrCP = $depot['admadrCP']; - $organe->admadrVille = $depot['admadrVille']; - $tabDepots[] = $organe; - } - $identiteProcol->Organes = $tabDepots; - - - $mLiens = new MLiens($siren); - $tabA = $mLiens->getActionnaires($siren, 1); - $nbA = count($tabA); - $tabAct = array(); - foreach ($tabA as $i=>$lien) { - $liens = new Actionnaire(); - $liens->Pmin = $lien['Pmin']; - $liens->MajMin = $lien['MajMin']; - $liens->RaisonSociale = $lien['RaisonSociale']; - $liens->Pays = $lien['Pays']; - $liens->Siren = $lien['Siren']; - $liens->Actif = $lien['Actif']; - $tabAct[] = $liens; - } - $identiteProcol->Actionnaires = $tabAct; - - $iGreffes = new MGreffes(); - $tabActes = $iGreffes->getListeActes($siren); - - $identiteProcol->StatutsModifDepot = $identiteProcol->StatutsModif = '0000-00-00'; - foreach ($tabActes as $i=>$acte) { - if ('_'.$acte['acte_type']=='_04') { // STATUTS CONSTITUTIFS - $identiteProcol->StatutsConstDepot = $acte['depot_date']; // => 1997-12-18 - $identiteProcol->StatutsConst = $acte['acte_date']; // => 1997-11-13 - break; - } elseif (in_array('_'.$acte['acte_type'], array( - //'_04', // STATUTS CONSTITUTIFS - '_06', // STATUTS A JOUR 9 0000-00-00 2009-09-02 17:05:55 - '_07', // STATUTS A JOUR 9 0000-00-00 2009-09-02 17:05:55 - '_08', // STATUTS A JOUR ET DECLARATION DE CONFORMITE 9 0000-00-00 2009-09-02 17:05:55 - '_09', // STATUTS APRES TRANSFERT DE SIEGE 9 0000-00-00 2009-09-02 17:05:55 - '_A1', // STATUTS 9 0000-00-00 2009-09-02 17:05:55 - '_AH', // AVENANT AUX STATUTS - ))) { - // On ne prend que la dernière modif - if ($identiteProcol->StatutsModifDepot=='0000-00-00' && $identiteProcol->StatutsModif=='0000-00-00') { - $identiteProcol->StatutsModifDepot = $acte['depot_date'];// => 1997-12-18 - $identiteProcol->StatutsModif = $acte['acte_date']; // => 1997-11-13 - } - } - } - - /** Y a t il eu des informations relatives à une cession ? **/ - $tabCes = $iGreffes->getInfosCessions($siren); - if ($tabCes) { - $identiteProcol->CessionJugeLib = $tabCes['cessJuge']; - $identiteProcol->CessionJugeDate = $tabCes['cessDateJuge']; - $identiteProcol->CessionAvisBodac = $tabCes['cessDateBod']; - $identiteProcol->CessionInvenDate = $tabCes['cessDateInv']; - $identiteProcol->CessionCAdeclare = $tabCes['cessCAdec']; - $identiteProcol->CessionEffectif = $tabCes['cessEffectif']; - $identiteProcol->CessionDesc = $tabCes['cessDesc']; - $identiteProcol->CessionDescDate = $tabCes['cessDateDesc']; - $identiteProcol->CessionOffreDate = $tabCes['cessDateLim']; - $identiteProcol->CessionMandataire = $tabCes['cessMand']; - } - } - //sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Debug $siren", print_r($tabRet,true)) ; - debugLog('I', 'Etablissement retourné = '. $entrep['Nom'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('identite',$siret,$id); - - return $identiteProcol; - } - - /** - * Retourne les liens financiers pour une entreprise. - * @param string $siren Siren de l'entreprise - * @param boolean $actifsUniquement Uniquement les liens Actifs - * @return LiensReturn - */ - public function getLiens($siren, $actifsUniquement = true) - { - $this->authenticate(); - $this->permission('liens'); - - //Initialisation - if (empty($actifsUniquement)) { $actifsUniquement = true; } - $tabAct = $tabPar = array(); - - debugLog('I',"Liens entreprises demandés pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $mLiens = new MLiens($siren); - $tabA = $mLiens->getActionnaires($siren, $actifsUniquement); - $nbA = count($tabA); - $tabAct = array(); - if ($nbA > 0) { - foreach ($tabA as $i => $lien) { - $actionnaire = new Actionnaire(); - $actionnaire->Pmin = $lien['Pmin']; - $actionnaire->MajMin = $lien['MajMin']; - $actionnaire->RaisonSociale = $lien['RaisonSociale']; - $actionnaire->TypeEntrep = $lien['TypeEntrep']; - $actionnaire->Pays = $lien['Pays']; - $actionnaire->Siren = $lien['Siren']; - $actionnaire->Actif = $lien['Actif']; - $actionnaire->Source = $lien['Source']; - $actionnaire->DateLien = $lien['DateLien']; //@todo : date - $actionnaire->DateMaj = $lien['DateMaj']; //@todo : date - $tabAct[] = $actionnaire; - } - } - debugLog('W', "$nbA actionnaires pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $tabP = $mLiens->getParticipations($siren, $actifsUniquement); - $nbP = count($tabP); - $tabPar = array(); - if ($nbP > 0) { - foreach ($tabP as $i => $lien) { - $participation = new Participation(); - $participation->Pmin = $lien['Pmin']; - $participation->MajMin = $lien['MajMin']; - $participation->RaisonSociale = $lien['RaisonSociale']; - $participation->TypeEntrep = $lien['TypeEntrep']; - $participation->Pays = $lien['Pays']; - $participation->Siren = $lien['Siren']; - $participation->Actif = $lien['Actif']; - $participation->Source = $lien['Source']; - $participation->DateLien = $lien['DateLien']; //@todo : date - $participation->DateMaj = $lien['DateMaj']; //@todo : date - $tabPar[] = $participation; - } - } - debugLog('W', "$nbP participations pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('liens',$siren); - - $output = new LiensReturn(); - $output->actionnaires = $tabAct; - $output->participations = $tabPar; - return $output; - } - - - /** - * Liste des établissements d'une entreprise - * @param string $siren Siren de l'entreprise - * @param integer $departement Limiter aux établissements du departement - * @param integer $actif Otpionnel 1=Uniquements les actifs, 0=inactifs, Néant=Tous - * @param integer $position - * @param integer $nbRep - * @return ListeEtablissementsReturn - */ - public function getListeEtablissements($siren, $dep = 0, $actif = -1, $position = 0, $nbRep = 20) - { - $this->authenticate(); - $this->permission('etablissements'); - - //Initialisation - if (empty($dep)) { $dep = 0; } - if (!in_array($actif, array(0,1))) { $actif = -1; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 20; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - $departement = $dep; - - debugLog('I',"Liste des établissements demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissements($siren, '', $position, $nbRep, 200, $departement, $actif); - $etabs = $rep['reponses']; - $nbReponses = $rep['nbReponsesTotal']; - $result = array(); - if (count($etabs)>0) - { - foreach ($etabs as $nb => $etab) - { - $etablissement = new Etablissement(); - $etablissement->id = $etab['id']; - $etablissement->Siege = $etab['Siege']; - $etablissement->Enseigne = $etab['Enseigne']; - $etablissement->Adresse = $etab['Adresse']; - $etablissement->Adresse2 = $etab['Adresse2']; - $etablissement->CP = $etab['CP']; - $etablissement->Ville = $etab['Ville']; - $etablissement->Tel = $etab['Tel']; - $etablissement->Fax = $etab['Fax']; - $etablissement->Nic = $etab['Nic']; - $etablissement->Actif = $etab['Actif']; - $etablissement->NafEtab = $etab['NafEtab']; - $etablissement->NafEtabLib = $etab['NafEtabLib']; - $etablissement->EffEtTr = $etab['EffEtTr']; - $etablissement->EffEtTrLib = $etab['EffEtTrLib']; - - $result[] = $etablissement; - } - } - debugLog('I', "Nb Etablissements retournés ($departement, $actif) = ". count($result), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('etablissements',$siren); - $output = new ListeEtablissementsReturn(); - $output->nbReponses = $nbReponses; - $output->result = $result; - return $output; - } - - /** - * Retourne l'ensemble des informations identitaires des dirigeants de l'entreprise - * @param string $siren Siren de l'entreprise - * @param bool $histo Afficher l'historique des dirigeants - * @return DirigeantsReturn Liste des dirigeants actifs de l'entreprise - */ - public function getDirigeants( $siren , $histo = false) - { - $this->authenticate(); - $this->permission('dirigeants'); - - //Initialisation - if (empty($histo)) { $histo = false; } - - //Zend_Registry::get('WsLogger')->info('HISTO : '.$histo); - - debugLog('I',"Dirigeants demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $dirs = $iInsee->getDirigeants($siren, $histo); - //debugLog('W', print_r($dirs, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $liste = array(); - foreach ($dirs as $nb => $dir) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $dirigeant = new Dirigeant(); - $dirigeant->Code = $dir['Fonction']; - $dirigeant->Titre = $dir['Titre']; - $dirigeant->Societe = $dir['Societe']; - $dirigeant->Civilite = $dir['Civilite']; - $dirigeant->Nom = $dir['Nom']; - $dirigeant->Prenom = $dir['Prenom']; - $dirigeant->NomUsage = $dir['NomUsage']; - $dirigeant->NaissDate = $dir['NaissDate']; //@todo : date - $dirigeant->NaissVille = $dir['NaissVille']; - $dirigeant->NaissDepPays = $dir['NaissDepPays']; - $dirigeant->Ancien = $dir['Ancien']; - $dirigeant->DateFct = $dir['DateFct']; //@todo : date - $liste[] = $dirigeant; - } - $this->wsLog('dirigeants',$siren,$option); - debugLog('I', 'Nb Dirigeants retournés = '. count($dirs), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $output = new DirigeantsReturn(); - $output->result = $liste; - return $output; - } - - /** - * Retourne la liste des annonces légales relative à une entreprise - * - * @todo Revoir cette fonction pour la faire marcher avec les associations - * - * @param string $siren Siren de l'entreprise - * @param integer $filtre 0=Pas de Filtre, 1=BODACC, 2=B.A.L.O, 3=JO Association, 4=Boamp - * @param string $idAnn Identifiant de l'annonce - * @param integer $position - * @param integer $nbRep - * @return AnnoncesReturn - */ - public function getAnnonces($siren, $filtre = 0, $idAnn = '', $position = 0, $nbRep = 100) - { - $this->authenticate(); - $this->permission('annonces'); - - //Initialisation - if (empty($filtre)) { $filtre = 0; } - if (empty($idAnn)) { $idAnn = ''; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 100; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - - debugLog('I',"Annonces demandées pour $siren ($filtre, $idAnn)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $liste = array(); - - if (strlen($siren)<>9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0 && $idAnn=='') { - debugLog('W', "Siren $siren ou annonce $idAnn inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - /* - if ($siren>100 && $filtre==3) $asso=true; - else { - $asso=false; - $tabIdentite=$this->iInsee->getIdentiteLight($siren); - if ($tabIdentite['FJ']>90 && $tabIdentite['FJ']<94 || - $tabIdentite['FJ']>9000 && $tabIdentite['FJ']<9400) $asso=true; - }*/ - if ($idAnn=='') { - $anns=$iInsee->getAnnoncesLegales($siren); - $annsB=$iInsee->getAnnoncesBalo($siren); - $annsA=$iInsee->getAnnoncesAsso($siren); - $annsM=$iInsee->getAnnoncesBoamp($siren, $idAnn); - } elseif ($filtre==1) - $anns=$iInsee->getAnnoncesLegales($siren, $idAnn); - elseif ($filtre==2) - $annsB=$iInsee->getAnnoncesBalo($siren, $idAnn); - elseif ($filtre==3) - $annsA=$iInsee->getAnnoncesAsso($siren, $idAnn); - elseif ($filtre==4) - $annsM=$iInsee->getAnnoncesBoamp($siren, $idAnn); - - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($anns) && empty($annsB) && empty($annsA) && empty($annsM)) - { - debugLog('W', "Aucune annonce pour le siren $siren (source=$filtre, id=$idAnn)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren inexistant B '.$siren.' '.$idAnn; - } - else - { - foreach ($anns as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - $annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = prepareString($ann['texteAnnonce']); - $annonce->libFJ = $ann['libFJ']; - $annonce->codFJ = $ann['codFJ']; - $annonce->capital = $ann['capital']; - $annonce->capitalDev = $ann['capitalDev']; - - $annonce->raisonSociale = $ann['raisonSociale']; - $annonce->nomCommercial = $ann['nomCommercial']; - $annonce->sigle = $ann['sigle']; - $annonce->adresse = $ann['adresse']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - - if (is_array($annsB)) - { - foreach ($annsB as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - - if (is_array($annsA)) - { - foreach ($annsA as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - //@todo : date - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - - if (is_array($annsM)) - { - foreach ($annsM as $nb=>$ann) - { - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - } - - $nbReponses = count($liste); - if ($nbReponses>0){ - //$liste = array_slice($liste, $position, $nbRep); - } - debugLog('I', "Nb Annonces $filtre retournées pour $siren (source=$filtre, id=$idAnn) = ". count($liste), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('annonces',$siren,$filtre.'/'.$idAnn); - - $output = new AnnoncesReturn(); - $output->nbReponses = $nbReponses; - $output->result = $liste; - return $output; - } - - /** - * Evaluation indiScore d'une entreprise - * @param string $siren Siren de l'entreprise - * @param string $nic Nic de l'établissement - * @param integer $niveau Niveau des commentaires - * @param bool $plus Si true, mise en surveillance privilèges - * @param string $ref Si $plus=true, référence de la mise en Surveillance - * @param integer $encours Si $plus=true, encours client demandé lors de la mise en Surveillance - * @param string $email Si $plus=true, email client pour la mise en surveillance - * @return Indiscore - */ - public function getIndiScore($siren, $nic=0, $niveau=2, $plus=false, $ref='', $encours=0, $email='') - { - $this->authenticate(); - - //Initialisation - $accesDist = true; - if (empty($nic)) { $nic = 0; } - if (empty($niveau)) { $niveau = 2; } - if (empty($plus)) { $plus = false; } - if ( !in_array($niveau, array(0,1,2,3,4,5)) ) { $niveau = 2; } - $perm = false; - //@todo : Gestion des droits - switch($niveau){ - case 3: $perms = array('indiscore3', 'indiscore3p'); break; - case 2: $perms = array('indiscore2', 'indiscore2p', 'indiscore3', 'indiscore3p'); break; - case 1: $perms = array('indiscore', 'indiscorep'); break; - } - foreach($perms as $item){ - if ( $this->checkPerm($item) ){ - $perm = true; - break; - } - } - if ($perm === false) { - $this->sendError('0902'); - } - - $tabRet = array(); - debugLog('I',"IndiScore demandée pour $siren en niveau $niveau",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)>9 || (substr($siren,0,9)*1)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $tDeb = microtime(true); - require_once 'Metier/scores/classMScores.php'; - $tabRet = calculIndiScore($siren, $nic, $accesDist, $niveau); - $duree = round(microtime(true)-$tDeb,3); - debugLog('W', "indiscore DUREE = $duree s", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $output = new Indiscore(); - foreach($tabRet as $key => $value){ - if ($key=='paiements'){ - $parMont = $value['parMont']; - $parTrim = $value['parTrim']; - $tabMont = array(); - foreach($parMont as $parMontK => $parMontV){ - $paiementMont = new IndiscorePaiementDetail(); - $paiementMont->id = $parMontK; - $paiementMont->nb = $parMontV['nb']; - if (array_key_exists('d=180', $parMontV)){ - $paiementMont->d180 = $parMontV['d=180']; - } - if (array_key_exists('d=150', $parMontV)){ - $paiementMont->d150 = $parMontV['d=150']; - } - if (array_key_exists('d=120', $parMontV)){ - $paiementMont->d120 = $parMontV['d=120']; - } - if (array_key_exists('d=90', $parMontV)){ - $paiementMont->d90 = $parMontV['d=90']; - } - if (array_key_exists('d=60', $parMontV)){ - $paiementMont->d60 = $parMontV['d=60']; - } - if (array_key_exists('d=30', $parMontV)){ - $paiementMont->d30 = $parMontV['d=30']; - } - $tabMont[] = $paiementMont; - } - $tabTrim = array(); - foreach($parTrim as $parTrimK => $parTrimV){ - $paiementTrim = new IndiscorePaiementDetail(); - $paiementTrim->id = $parTrimK; - $paiementTrim->nb = $parTrimV['nb']; - if (array_key_exists('d=180', $parTrimV)){ - $paiementTrim->d180 = $parTrimV['d=180']; - } - if (array_key_exists('d=150', $parTrimV)){ - $paiementTrim->d150 = $parTrimV['d=150']; - } - if (array_key_exists('d=120', $parTrimV)){ - $paiementTrim->d120 = $parTrimV['d=120']; - } - if (array_key_exists('d=90', $parTrimV)){ - $paiementTrim->d90 = $parTrimV['d=90']; - } - if (array_key_exists('d=60', $parTrimV)){ - $paiementTrim->d60 = $parTrimV['d=60']; - } - if (array_key_exists('d=30', $parTrimV)){ - $paiementTrim->d30 = $parTrimV['d=30']; - } - $tabTrim[] = $paiementTrim; - } - $paiement = new IndiscorePaiement(); - $paiement->parMont = $tabMont; - $paiement->parTrim = $tabTrim; - $output->paiements = $paiement; - - } elseif ($key=='Notes_Structure') { - - $notesStructure = new IndiscoreNotesStructure(); - $notesStructure->activite = $value['activite']; - $notesStructure->naf4 = $value['naf4']; - $notesStructure->age = $value['age']; - $notesStructure->capital = $value['capital']; - $notesStructure->effectif = $value['effectif']; - $notesStructure->fj = $value['fj']; - $notesStructure->localite = $value['localite']; - $notesStructure->singulier = $value['singulier']; - $output->Notes_Structure = $notesStructure; - - } elseif ($key=='tabBilans') { - - $tabRet = array(); - foreach($value as $bilan) - { - $element = new ListeBilans(); - $element->dateProvPartenaire = $bilan['dateProvPartenaire']; //@todo : date - $element->dateInsert = $bilan['dateInsert']; //@todo : date - $element->typeBilan = $bilan['typeBilan']; - $element->dureeExercice = $bilan['dureeExercice']; - $element->dateExercice = $bilan['dateExercice']; //@todo : date - $element->millesime = $bilan['millesime']; - $element->dateExercicePre = $bilan['dateExercicePre']; //@todo : date - $element->dureeExercicePre = $bilan['dureeExercicePre']; - $element->monnaie = $bilan['monnaie']; - $element->source = $bilan['source']; - $tabRet[] = $element; - } - $output->tabBilans = $tabRet; - - } elseif ($key=='tabBilan') { - - $tabRet = array(); - foreach($value as $bilan){ - $resultBilan = new Bilan(); - $tabPoste = array(); - foreach($bilan as $bilan_key => $bilan_value){ - if(!in_array($bilan_key, array('SIREN', 'DATE_FRAICHE_BILAN', - 'DATE_CLOTURE', 'DATE_CLOTURE_PRE', 'DUREE_MOIS', - 'DUREE_MOIS_PRE', 'MONNAIE', 'CONSOLIDE', 'MONNAIE_ORI', - 'MONNAIE_LIV_UNITE', 'SOURCE', 'devise'))){ - $resultPoste = new BilanPoste(); - $resultPoste->id = $bilan_key; - $resultPoste->val = $bilan_value; - $tabPoste[] = $resultPoste; - } else { - $resultBilan->$bilan_key = $bilan_value; - } - } - $resultBilan->POSTES = $tabPoste; - $tabRet[] = $resultBilan; - } - $output->tabBilan = $tabRet; - - } elseif ($key=='tabInfosNotations') { - - $infosNotation = new IndiscoreInfosNotations(); - $infosNotation->SituationFinanciere = $value['SituationFinanciere']; - $infosNotation->Notation = $value['Notation']; - $infosNotation->ProbabiliteDefaut = $value['ProbabiliteDefaut']; - $output->tabInfosNotations = $infosNotation; - - } elseif ($key=='tabImportExport') { - - $tabRet = array(); - foreach($value as $element){ - $importExport = new IndiscoreImportExport(); - $importExport->importExport = $element['importExport']; - $importExport->annee = $element['annee']; - $importExport->rangNational = $element['rangNational']; - $importExport->deptSiege = $element['deptSiege']; - $tabRet[] = $importExport; - } - $output->tabImportExport = $tabRet; - - } elseif ($key=='tabCommentaires') { - - $tab = array(); - foreach($value as $comment) { - require_once 'i18n/cleanchar.php'; - $tab[] = fixEncoding($comment); - } - $output->tabCommentaires = $tab; - - } elseif ($key=='tabVariables') { - - $tab = $value['CA_Y']; - $tabVar = array(); - if (count($tab)>0) { - foreach($tab as $varName => $varVal){ - $var = new CA_Y(); - $var->id = $varName; - $var->val = $varVal; - $tabVar[] = $var; - } - } - $variables = new IndiscoreVariables(); - $variables->CA_Y = $tabVar; - $output->tabVariables = $variables; - - } elseif ($key=='Bilans') { - - $tab = array(); - foreach($value as $item) - { - $objet = new IndiscoreBilans(); - $objet->Millesime = $item['Millesime']; - $objet->FraisPerso = $item['FraisPerso']; - $objet->CA = $item['CA']; - $objet->EBE = $item['EBE']; - $objet->TxInvest = $item['TxInvest']; - $objet->TxEndett = $item['TxEndett']; - $objet->DettesCT = $item['DettesCT']; - $objet->FraisFi = $item['FraisFi']; - $objet->BFR = $item['BFR']; - $objet->FR = $item['FR']; - $objet->FondsPr = $item['FondsPr']; - $objet->DelaiCli = $item['DelaiCli']; - $objet->DelaiFour = $item['DelaiFour']; - $tab[] = $objet; - } - $output->$key = $tab; - } else { - $output->$key = $value; - } - } - - if ($plus) { - if (empty($ref)) $ref='Indiscore+'; - if (empty($email)) $email=$this->tabInfoUser['email']; - $this->setSurveillance($siren, $email, $ref, 'privileges'); - $this->setSurveillance($siren, $email, $ref, 'score', false, $encours); - if ($this->tabInfoUser['idClient']==89) - $this->setSurveillance($siren, $email, $ref, 'annonces'); - $this->wsLog('indiscore+',$siren); - } else - $this->wsLog('indiscore',$siren); - return $output; - } - - /** - * Liste de tous les évènements enregistrés à l'INSEE pour une entreprise - * @param string $siren Siren de l'entreprise - * @param string $nic - * @param integer $position - * @param integer $nbRep - * @return InseeReturn - **/ - public function getListeEvenements($siren, $nic=0, $position=0, $nbRep=1000) - { - $this->authenticate(); - $this->permission('eveninsee'); - - //Initialisation - if (empty($nic)) { $nic = 0; } - if (empty($position)) { $position = 0; } - if (empty($nbRep) || $nbRep>1000) { $nbRep = 1000; } - - debugLog('I',"Liste des évènements pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $evens = $iInsee->getEvenements($siren, $nic, $position, $nbRep); - $tabRet = array(); - if (count($evens)>0) { - foreach ($evens as $key => $row) { - $date[$key] = $row['dateMAJ']; - } - array_multisort($date, SORT_DESC, $evens); - foreach ($evens as $nb=>$even) { - $iEven = new InseeEven(); - $iEven->Nic = $even['nic']; - $iEven->Siege = $even['siege']; - $iEven->SiretAss = $even['siretAssocie']; - $iEven->TypeSiretAss = $even['typeSiretAss']; - $iEven->EvenCode = $even['codeEven']; - $iEven->EvenLib = $even['libEven']; - $iEven->EvenLibDet = $even['libEvenDet']; - $iEven->EvenDate = $even['dateEven']; //@todo : date - $iEven->DateInfo = $even['dateMAJ']; //@todo : date - $tabRet[] = $iEven; - } - } - - debugLog('I', 'Nb évènements retournés = '. count($tabRet), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('evenements',$siren); - $output = new InseeReturn(); - $output->nbReponses = count($tabRet); // @todo : retrouver le nombre total d'évenements - $output->result = $tabRet; - return $output; - } - - - /** - * Recherche - * @param EntrepriseCriteres $criteres - * @param integer $position Position de parcours des résultats retournées (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées lors d'une requête (20 par défaut) - * @param integer $maxRep Nombre de réponses maximum pouvant être retournées lors d'une requête (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (false par défaut) - * @param boolean $avecSiren Seulement les entités sirénées (false par défaut) - * @return SearchEntrepriseReturn - */ - public function searchEntreprise($criteres, $position = 0, $nbRep = 20, $maxRep = 200, $pertinence = false, $avecSiren = false) - { - $this->authenticate(); - - if (empty($position)) { $position = 0;} - if (empty($nbRep)) { $nbRep = 20; } - if (empty($maxRep)) { $maxRep = 200; } - - require_once 'i18n/cleanchar.php'; - - $entCriteres = new EntrepriseCriteres(); - $entCriteres = $criteres; - $identifiant = $entCriteres->identifiant; - $typeId = ''; - - //Detection autour de l'identifiant - if ($identifiant!='') { - $len = strlen($identifiant); - //Numéro WALDEC - if (strtoupper(substr($identifiant,0,1))=='W') { - $typeId = 'W'; - //Code ISIN - } elseif ($len==12){ - $typeId = 'I'; - //TVA Intracommunautaire - } elseif (in_array(substr($identifiant,0,2), - array('AT','BE','BG','CY','CZ','DE','DK','EE','EL','ES', - 'FI','GB','HU','IE','IT','LT','LU','LV','MT','NL','PL', - 'PT','RO','SE','SI','SK'))){ - //"La recherche par numéro de TVA n'est pas encore possible sur ce pays !"; - //Pour la france - } elseif (substr($identifiant,0,2)=='FR') { - $typeId = 'S'; - if ($len==13) $identifiant = substr($identifiant,4,9); - else $identifiant = ''; - //Numéro RC - } elseif (preg_match('/A|B|C|D/i', $identifiant)) { - $typeId = 'R'; - //Siren normal on enleve tout ce qui n'est pas un chiffre - } else { - $typeId = 'S'; - } - } - - $adresse = trim($entCriteres->adresse); - - //Détection Tel/Fax uniquement - if ( empty($typeId) - && empty($entCriteres->raisonSociale) - && empty($adresse) - && empty($entCriteres->codePostal) - && empty($entCriteres->ville) - && empty($entCriteres->naf) ){ - $typeId = 'TEL'; - } - - if (in_array($typeId, array('R', 'W', 'I'))){ - - $O = $this->searchAutreId( - $typeId, - $identifiant, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - $entCriteres->codePostal - ); - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } elseif ($typeId == 'S'){ - - $O = $this->searchSiren( - $identifiant, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - $entCriteres->codePostal - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - $output->info = $O->info; - return $output; - - } elseif ($typeId == 'TEL'){ - - $O = $this->searchTelFax( - $entCriteres->telFax, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } else { - - $O = $this->searchNomAdr( - cleanstring($entCriteres->raisonSociale), - cleanstring($entCriteres->adresse), - $entCriteres->codePostal, - cleanstring($entCriteres->ville), - empty($entCriteres->siege) ? false : $entCriteres->siege, - empty($entCriteres->actif) ? false : $entCriteres->actif, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - empty($pertinence) ? false : $pertinence, - empty($avecSiren) ? false : $avecSiren, - $entCriteres->naf - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - } - } - - /** - * Recherche d'entreprise par dirigeants - * @param DirigeantCriteres $criteres - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchDirReturn - */ - public function searchDir($criteres, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - $nom = $criteres->nom; - $prenom = $criteres->prenom; - $dateNaiss = $criteres->dateNaiss; - $lieuNaiss = $criteres->lieuNaiss; - $pertinence = $criteres->pertinence; - - debugLog('I',"Recherche Dirigeant de $nom, $prenom, $dateNaiss, $lieuNaiss (Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($prenom)) $prenom = ''; - if (empty($dateNaiss)) $dateNaiss = ''; - if (empty($lieuNaiss)) $lieuNaiss = ''; - if (empty($pertinence)) $pertinence = false; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - - $iInsee = new MInsee(); - $etabs = $iInsee->rechercheDir($nom, $prenom, '', $dateNaiss, $lieuNaiss, $deb, $nbRep, $maxRep, $pertinence); - - $tabRet = array(); - foreach ($etabs['reponses'] as $etab) { - $item = new EntrepriseDirItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = $iInsee->getLibelleFJ($etab['FJ']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($iInsee->getLibelleNaf($etab['NafEtab'])); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($iInsee->getLibelleNaf($etab['NafEnt'])); - - // Dirigeant - $item->DirRs = prepareString($etab['DirRs']); - $item->DirNom = prepareString($etab['DirNom']); - $item->DirPrenom = prepareString($etab['DirPrenom']); - $item->DirNomUsage = prepareString($etab['DirNomUsage']); - $item->DirDateEffet = $etab['DirDateEffet']; - $item->DirFonction = prepareString($etab['DirFonction']); - $item->DirDepart = $etab['DirDepart']; - $tabRet[] = $item; - } - - if ($etabs['nbReponses']==0){ - debugLog('W', "Aucun résultat pour cette recherche !", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - } - - $search = new SearchDirReturn(); - $search->nbReponses = $etabs['nbReponses']; - $search->nbReponsesTotal = $etabs['nbReponsesTotal']; - $search->result = $tabRet; - return $search; - } - - /** - * Recherche d'entreprise ou d'établissement par un autre Identifiant - * - * @param string $typeId I=Code Isin, W=N°Waldec (Associations) ou R=N°RC (Registre Greffe) - * @param string $identifiant Identifiant recherché - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchAutreId($typeId, $identifiant, $deb=0, $nbRep=20, $maxRep=200, $dep=0) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - if (empty($dep)) $dep = 0; - - $typeId = substr(trim(strtoupper($typeId)),0,1); - - if ($typeId!='I' && $typeId!='W' && $typeId!='R') { - debugLog('I',"Type d'identifiant $typeId inexistant",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1021'); - } - $tabRet = array(); - debugLog('I',"Recherche par identifiant $typeId de $identifiantavec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if ($typeId=='W' || $typeId=='R') - { - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('AUTRE', $identifiant, $deb, $nbRep, $maxRep, $dep); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } else { - $iBourse = new MBourse($siren); - $siren = $iBourse->getCodeSiren($identifiant); - return $this->searchSiren($siren, $deb, $nbRep, $maxRep); - } - } - - - /** - * Recherche d'entreprise ou d'établissement par leur TEL FAX - * - * @param string $telFax Téléphone ou fax de l'établissement (ex: 0175438010) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchTelFax($telFax, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - - $tabRet = array(); - debugLog('I',"Recherche par Tel/Fax de $telFax avec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - //$assocs=$this->iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $nbRep, $pertinence); - /** @todo A FAIRE **/ - if (strlen($telFax)<10 || strlen($telFax)>14) { - debugLog('W', "Tel/Fax $telFax incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1011'); - } - - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('TEL', $telFax, $deb, $nbRep, $maxRep); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } - - - /** - * Recherche entreprise par nom et adresse - * @param string $raisonSociale Raison Sociale ou Enseigne ou Sigle - * @param string $adresse Adresse de l'entreprise, du type : 3 rue des Plantes - * @param string $codePostal Code postal (ex: 75014) - * @param string $ville Ville - * @param boolean $siege Limitation de la recherche au sièges (si true) - * @param boolean $actif Limitation aux établissements actifs (si true) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (si true) - * @param boolean $avecSiren Ne proposer que les entités sirénées - * @param string $ape_etab - * @return SearchReturn - */ - public function searchNomAdr($raisonSociale, $adresse='', $codePostal='', $ville='', $siege=false, $actif=false, $deb=0, $nbRep=20, $maxRep=200, $pertinence=false, $avecSiren=false, $ape_etab='') - { - $this->authenticate(); - - debugLog('I',"Recherche Entreprise de $raisonSociale, $adresse, $codePostal $ville (Siège=$siege / Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($adresse)) $adresse = ''; - if (empty($codePostal)) $codePostal = ''; - if (empty($ville)) $ville = ''; - if (empty($siege)) $siege = false; - - if ( $actif ) { - $actif = 1; - } else { - $actif = 2; - } - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($pertinence)) $pertinence = false; - if (empty($avecSiren)) $avecSiren = false; - if (empty($ape_etab)) $ape_etab = ''; - - $iInsee = new MInsee(); - $etabs = $iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren, $ape_etab); - - $result = new SearchReturn(); - $tabRet = array(); - if (count($etabs['reponses'])) { - foreach ($etabs['reponses'] as $etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = strtr($etab['Nom'],'/*',' '); - $reponse->Nom2 = $etab['Nom2']; - $reponse->Sigle = $etab['Sigle']; - $reponse->Enseigne = $etab['Enseigne']; - $reponse->Adresse = $etab['Adresse']; - $reponse->Adresse2 = $etab['Adresse2']; - $reponse->CP = $etab['CP']; - $reponse->Ville = $etab['Ville']; - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = $iInsee->getLibelleFJ($etab['FJ']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = $iInsee->getLibelleNaf($etab['NafEtab']); // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = $iInsee->getLibelleNaf($etab['NafEnt']); - - $tabRet[] = $reponse; - } - } - - $fp=fopen(LOG_PATH.'/recherches.log','a'); - - $siretTrouve = 0; - if ($etabs['nbReponses']==0) { - - $str="NbRep=0, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - fwrite($fp, $str.EOL); - fclose($fp); - debugLog('I', "rechercheEtab : AUCUN RESULTAT, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = count($tabRet); - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - - return $result; - - } - - if ($etabs['nbReponses']==1) $siretTrouve=$etabs['reponses'][0]['Siret']; - $str="NbRep=".$etabs['nbReponses'].", S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - fwrite($fp, $str.EOL); - fclose($fp); - debugLog('I', "rechercheEtab : ".$etabs['nbReponses']." RESULTATS, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = $etabs['nbReponses']; - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - return $result; - } - - /** - * Recherche d'entreprise ou d'établissement par leur identifiant SIREN ou SIRET - * @param string $siret Siren ou Siret de l'entreprise ou de l'établissement sur 9 ou 14 chiffres significatifs - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param integer $dep Département - * @return SearchReturn - */ - public function searchSiren($siret, $deb=0, $nbRep=20, $maxRep=200, $dep=0) - { - $this->authenticate(); - - debugLog('I',"Recherche par Siret de $siret (dep=$dep) avec un maximum de $maxRep réponses pour la tranche $deb à $nbRep",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ( strlen($siret)!=14 && strlen($siret)!=9 ){ - debugLog('W', "Siren/Siret $siret incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($dep)) $dep = 0; - - $nbReponsesTotal = $nbReponses = 0; - - $siren = substr($siret,0,9); - if (strlen($siret)==14) $nic = substr($siret,9,5); - elseif (strlen($siret)== 9) $nic = ''; - - $iInsee = new MInsee(); - - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep, $dep); - if (count($rep['reponses'])==0 && $dep>0) { - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep); - } - $etabs = $rep['reponses']; - $tabRet = array(); - if (count($etabs)>0){ - foreach ($etabs as $nb=>$etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = prepareString($etab['FJLib']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = $etab['NafEtabLib']; // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = $etab['NafEntLib']; - $tabRet[] = $reponse; - } - } - $nbReponsesTotal = $rep['nbReponsesTotal']; - $nbReponses = $rep['nbReponses']; - - /** Si le siren est valide, on part chez Infogreffe **/ - if (count($tabRet)==0 && $iInsee->valideSiren($siren)) { - $iGeffes = new MGreffes(); - $etab = $iGeffes->getIdentite($siren); - if ($etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString($etab['Nom']); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = utf8_encode(prepareString(utf8_decode($etab['FJLib']))); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; - $reponse->NafEtabLib = $etab['NafEtabLib']; - $reponse->NafEnt = $etab['NafEnt']; - $reponse->NafEntLib = $etab['NafEntLib']; - - $tabRet[] = $reponse; - $nbReponses = 1; - $nbReponsesTotal = 1; - - } else { - $iDb = new WDB(); - $iDb->insert('siren_inexistants', - array( 'siren'=>$siren, - 'nic'=>$nic, - 'dep'=>$dep, - 'login'=>$this->tabInfoUser['login'], - 'client'=>$this->tabInfoUser['idClient'], - 'dateInsert'=>date('YmdHis'))); - $nbReponses = 0; - $nbReponsesTotal = 0; - } - } - - $output = new SearchReturn(); - $output->nbReponses = $nbReponses; - $output->nbReponsesTotal = $nbReponsesTotal; - $output->result = $tabRet; - $output->info = $rep['info']; - return $output; - } - - - - - /** - * Retourne la fiche d'identité simplifié d'une entreprise avec son numéro de TVA. - * @param string $siren Identifiant Siren de l'entreprise - * @return TvaReturn - */ - public function getTVA($siren) - { - $this->authenticate(); - - //Initialisation - $siren = trim($siren); - debugLog('I',"TVA demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren); - debugLog('I', "Après getIdentiteEntreprise($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($entrep)) - { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - debugLog('I', "Avant MTva($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iTva = new MTva($siren); - if ($iTva->vatDefined) $tva=$iTva->vatNumber; - else $tva='N/A'; - debugLog('I', "Après MTva($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $output = new TvaReturn(); - $output->id = $entrep['id']; - $output->AutreId = $entrep['AutreId']; - $output->Nom = $entrep['Nom']; - $output->Sigle = $entrep['Sigle']; - $output->Enseigne = $entrep['Enseigne']; - $output->Adresse = $entrep['Adresse']; - $output->Adresse2 = $entrep['Adresse2']; - $output->CP = $entrep['CP']; - $output->Ville = $entrep['Ville']; - $output->Siren = $entrep['Siren']; - $output->Tva = $tva; - - debugLog('I', "TVA retournée = $tva (".$entrep['Nom'].')', __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('tva',$siren); - - return $output; - } - - /** - * Retourne tout ou patie des informations règlementées sur l'entreprise - * @param string $siren SIREN de l'entreprise - * @param mixed $id Id du communiqué - * @return InfosRegReturn - */ - public function getInfosReg( $siren, $id = false ) - { - $this->authenticate(); - $this->permission('infosreg'); - - //Initialisation - if (empty($id)) $id = false; - $tabRet = array(); - $siren = substr($siren,0,9); - - debugLog('I',"Infos règlementées demandées pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - $iBourse = new MBourse($siren); - $anns = $iBourse->getInfosReg($siren, $id); - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if ( empty($anns) ){ - debugLog('W', "Aucune info règlementée pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1030'); - } - - foreach ($anns as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if ($id == false) { - $infos = new InfosReg(); - $infos->id = $ann['id']; - $infos->source = $ann['source']; - $infos->DateParution = $ann['DateParution']; //@todo : date - $infos->raisonSociale = $ann['raisonSociale']; - $infos->titre = $ann['titre']; - $infos->pj = $ann['pj']; - $infos->url = $ann['url']; - $infos->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $tabRet[] = $infos; - } else { - $infos = new InfosReg(); - $infos->id = $ann['id']; - $infos->source = $ann['source']; - $infos->DateParution = $ann['DateParution']; //@todo : date - $infos->raisonSociale = $ann['raisonSociale']; - $infos->titre = $ann['titre']; - $infos->communique = $ann['communique']; - $infos->communiqueHtml = $ann['communiqueHtml']; - $infos->pj = $ann['pj']; - $infos->url = $ann['url']; - $infos->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $tabRet[] = $infos; - } - } - debugLog('I', 'Nb infos retournés = '. count($anns), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('infosreg',$siren,$id); - $output = new InfosRegReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne les informations boursières de l'entreprise - * @param string $siren SIREN de l'entreprise - * @return InfosBourse - */ - public function getInfosBourse($siren) - { - $this->authenticate(); - $this->permission('bourse'); - - //Initialisation - $error = new ErrorType(); - debugLog('I',"Infos bourse demandées pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $siren = substr($siren,0,9); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($bourse)) { - debugLog('W', "Aucune info bourse pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1030'); - } - - $result = new InfosBourse(); - $result->Siren = $bourse['siren']; - $result->RaisonSociale = $bourse['raisonSociale']; - $result->Adresse = $bourse['adresse']; - $result->Effectif = $bourse['effectif']; - $result->CodeSicovam = $bourse['code_sicovam']; - $result->CodeMnemo = $bourse['code_mnemo']; - $result->CodeBloomberg = $bourse['code_bloomberg']; - $result->CodeDatastream = $bourse['code_datastream']; - $result->Isin = $bourse['code_isin']; - $result->CodeRic = $bourse['code_ric']; - $result->DateIntroduction = $bourse['dateIntroduction']; //@todo : date - $result->DateDerAG = $bourse['dateDerAG']; //@todo : date - $result->DateRadiation = $bourse['dateRadiation']; //@todo : date - $result->AutreIsin = $bourse['autre_isin']; - $result->EligibleSRD = $bourse['eligibleSRD']; - $result->EligiblePEA = $bourse['eligiblePEA']; - $result->Tel = $bourse['tel1']; - $result->Tel2 = $bourse['tel2']; - $result->Fax = $bourse['fax1']; - $result->Fax2 = $bourse['fax2']; - $result->Web = $bourse['web']; - $result->Mail = $bourse['mail']; - - $result->Marche = $bourse['marche']; - $result->Description = $bourse['description']; - $result->Secteur = $bourse['secteur']; - $result->Activite = $bourse['activite']; - $result->ActiviteDet = $bourse['activiteDet']; - - $result->placeCotation = $bourse['placeCotation']; - $result->nombreTitres = $bourse['nombreTitres']; - $result->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $result->derCoursDate = $bourse['date']; //@todo : date - $result->derCoursCloture = $bourse['close']; - $result->derCoursOuverture = $bourse['open']; - $result->derCoursPlusHaut = $bourse['high']; - $result->derCoursPlusBas = $bourse['low']; - - $result->derCoursVolume = $bourse['volume']; - $result->coursMin = $bourse['coursMin']; - $result->coursMoy = $bourse['coursMoy']; - $result->coursMax = $bourse['coursMax']; - - $this->wsLog('bourse',$siren,$id); - return $result; - } - - /** - * Ajout d'une surveillance - * @param string $siret Siret/Siren - * @param string $email Adresse email du client - * @param string $ref Référence de la surveillance - * @param string $source Type de source en surveillance (insee, annonces, bilans, actes, privileges, score, dirigeants, paiements, liens) - * @param boolean $delete Suppression de la ligne - * @param integer $encoursClient Encours demandé par le client - * @return SetSurveillanceReturn - */ - public function setSurveillance($siret, $email, $ref='', $source='annonces', $delete=false, $encoursClient=0) - { - $this->authenticate(); - $source = strtolower($source); - switch ($source) { - case 'insee': - $this->permission('survinsee'); - break; - case 'bilans': - $this->permission('survbilan'); - break; - case 'actes': - $this->permission('survactes'); - break; - case 'privileges': - $this->permission('survpriv'); - break; - case 'dirigeants': - $this->permission('survdirigeants'); - break; - case 'score': - $this->permission('survscore'); - break; - case 'paiements': - $this->permission('survpaiements'); - break; - case 'liens': - $this->permission('survliens'); - break; - case 'annonces': - default: - $this->permission('survannonce'); - break; - } - - //Initialisation - if (empty($ref)) $ref = ''; - if (empty($delete)) $delete = false; - if (empty($encoursClient)) $encoursClient = false; - $result = false; - $siren = substr($siret,0,9); - $nic = substr($siret,9,5); - - debugLog('I',"setSurveillances(siret=$siret, email=$email, ref=$ref, source=$source, delete=$delete)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - switch ($source) { - case 'insee': - case 'annonces': - case 'bilans': - case 'actes': - case 'privileges': - case 'paiements': - case 'liens': - case 'dirigeants': $encoursClient=0; break; - case 'score': $encoursClient=$encoursClient*1; break; - default: $source='annonces'; break; - } - - if ($delete) { - - $tabUpdate = array('dateSuppr'=>date('Y-m-d')); - $result = $iDb->update('surveillances_site', - $tabUpdate, - "source='$source' AND login='$login' AND email='$email' AND siren=$siren AND nic=$nic AND ref='$ref'" - ); - - } else { - - $where = "source='$source' AND login='$login' AND email='$email' AND siren=$siren AND nic=$nic AND ref='$ref'"; - - //Si la donnée existe déjà alors il faut mettre à jour l'encours client - $detect = $iDb->select('surveillances_site', 'siren', $where, false, MYSQL_ASSOC); - if ( count($detect)>0 ) { - - $data = array( - 'encoursClient' => $encoursClient, - ); - $result = $iDb->update('surveillances_site', $data, $where); - - } else { - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren, $nic); - - $data = array( - 'source' => $source, - 'login' => $login, - 'email' => $email, - 'siren' => $siren, - 'nic' => $nic, - 'ref' => $ref, - 'encoursClient' => $encoursClient, - 'rs' => $tabIdentite['Nom'], - 'cp' => $tabIdentite['CP'], - 'ville' => $tabIdentite['Ville'], - 'dateAjout'=>date('Y-m-d'), - 'dateSuppr'=>0, - ); - $result = $iDb->insert('surveillances_site', $data); - } - } - $output = new SetSurveillanceReturn(); - $output->result = $result; - return $output; - } - - /** - * getSurveillances - * @param SurveillancesFiltre $filtre - * @param integer $deb - * @param integer $nbRep - * @return SurveillancesReturn - */ - public function getSurveillances($filtre, $position=0, $nbRep=100) - { - $this->authenticate(); - $this->permission('survliste'); - - //Initialisation - if (empty($position)) $position = 0; - if (empty($nbRep)) $nbRep = 100; - - $error = new ErrorType(); - $tabRet = array(); - $siren = 0; - $login = $this->tabInfoUser['login']; - - $strSiren = ""; - if (!empty($filtre->item) && $filtre->itemMode == 'siren'){ - $siren = substr($filtre->item,0,9); - $nic = substr($filtre->item,9,5); - $strSiren = " AND siren='$siren'"; - } elseif (!empty($filtre->item) && $filtre->itemMode == 'search') { - $strSiren = " AND ( siren='$filtre->item' OR ref='$filtre->item' OR rs='$filtre->item' )"; - } - - //Ordre pour le tri - $triMode = strtoupper(trim($filtre->triMode)); - if ($triMode == 'DESC') { - $triMode = 'DESC'; - } else { - $triMode = 'ASC'; - } - - //Option de tri - $tri = strtolower(trim($filtre->tri)); - switch ($tri) { - case 'ref': $orderBy='ORDER BY ref'; break; - case 'dateAjout': $orderBy='ORDER BY dateAjout'; break; - case 'dateDerEnvoi': $orderBy='ORDER BY dateDerEnvoi'; break; - case 'rs': $orderBy='ORDER BY rs'; break; - case 'cp': $orderBy='ORDER BY cp'; break; - case 'ville': $orderBy='ORDER BY ville'; break; - default: $orderBy='ORDER BY siren'; break; // siren ou vide ou autre - } - $orderBy = $orderBy.' '.$triMode; - - if ($filtre->detail) { - $strSelect = 'source, email, siren, nic, ref, dateAjout, encoursClient, rs, cp, ville, dateDerEnvoi'; - } else { - $strSelect = 'source, email, siren, nic, ref, dateAjout, dateDerEnvoi'; - } - if ($filtre->source!='') $strSource = " AND source='$filtre->source' "; - else $strSource = ''; - - $iDb = new WDB(); - - if ($filtre->source!='') { - - // Il faut compter le nombre de siren au total - $tabTmp = $iDb->select( - 'surveillances_site', - 'count(*) as nb', "login='$login' AND dateSuppr=0 $strSiren $strSource", - false, MYSQL_ASSOC - ); - $nbRepTot = $tabTmp[0]['nb']; - - // Récupération des résultats - $tabTmp = $iDb->select( - 'surveillances_site', $strSelect, - "login='$login' AND dateSuppr=0 $strSiren $strSource $orderBy LIMIT $position,$nbRep", - false, MYSQL_ASSOC - ); - - } else { - - // Il faut compter le nombre de siren au total - $tabTmp = $iDb->select( - 'surveillances_site', - 'siren', "login='$login' AND dateSuppr=0 $strSiren GROUP BY siren", - false, MYSQL_ASSOC - ); - $nbRepTot = count($tabTmp); - - // Récupération des résultats - if ($nbRepTot>0){ - $tabTmp = $iDb->select( - 'surveillances_site', - 'siren', "login='$login' AND dateSuppr=0 $strSiren GROUP BY siren ORDER BY siren LIMIT $position,$nbRep", - false, MYSQL_ASSOC - ); - $listeSiren = array(); - foreach($tabTmp as $i => $v) { - $listeSiren[] = $v['siren']; - } - $tabTmp = $iDb->select( - 'surveillances_site', $strSelect, - "login='$login' AND dateSuppr=0 AND siren IN (".join(',',$listeSiren).") $strSiren ORDER BY siren", - false, MYSQL_ASSOC - ); - } - } - - if (count($tabTmp)>0) - { - //Tri pour avoir le nombre de réponse correct suivant la structure - $listeRetour = array(); - foreach ($tabTmp as $i => $tabSurv) - { - $rs = ''; - $cp = ''; - $ville = ''; - if ($filtre->detail) { - if (trim($tabSurv['rs'])<>'') { - $rs = $tabSurv['rs']; - $cp = $tabSurv['cp']; - $ville = $tabSurv['ville']; - } else { - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($tabSurv['siren'], $tabSurv['nic']); - $rs = $tabIdentite['Nom']; - $cp = $tabIdentite['CP']; - $ville = $tabIdentite['Ville']; - $iDb->update('surveillances_site', array( - 'rs' => $rs, - 'cp' => $cp, - 'ville' => $ville), - "login='$login' AND dateSuppr=0 AND siren=".$tabSurv['siren']." AND nic=".$tabSurv['nic']." $strSource", - false - ); - } - } - - $listeRetour[$tabSurv['siren']][] = array( - 'rs' => $rs, - 'cp' => $cp, - 'ville' => $ville, - 'source' => $tabSurv['source'], - 'email' => $tabSurv['email'], - 'nic' => $tabSurv['nic'], - 'ref' => $tabSurv['ref'], - 'dateAjout' => $tabSurv['dateAjout'], - 'dateDerEnvoi' => $tabSurv['dateDerEnvoi'], - ); - } - - foreach ($listeRetour as $siren => $item) - { - $liste = new Surveillance(); - $liste->siren = $siren; - foreach($item as $s) { - $source = new stdClass(); - $source->rs = $s['rs']; - $source->cp = $s['cp']; - $source->ville = $s['ville']; - $source->source = $s['source']; - $source->email = $s['email']; - $source->nic = $s['nic']; - $source->ref = $s['ref']; - $source->encoursClient = $s['encoursClient']; - $source->dateAjout = $s['dateAjout']; //@todo : date - $source->dateDerEnvoi = $s['dateDerEnvoi']; //@todo : date - $liste->sources[] = $source; - } - $tabRet[] = $liste; - } - } - $output = new SurveillancesReturn(); - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbRepTot; - $output->result = $tabRet; - return $output; - } - - /** - * Recherche par référence client - * @param string $search - * @param integer $position - * @param integer $nbRep - * @return SearchRefClientReturn - */ - public function searchRefClient($search, $position=0, $nbRep=20) - { - $this->authenticate(); - - //Initialisation - if (empty($position)) $position = 0; - if (empty($nbRep)) $nbRep = 20; - - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - $orderBy = " ORDER BY dateAjout ASC"; - - if ($this->tabInfoUser['rechRefType']=='CLI'){ - //On cherche les logins actifs pour le client - $idClient = $this->tabInfoUser['idClient']; - - $where = "u.idClient='$idClient' AND u.actif=1 AND s.dateSuppr=0 AND ( s.siren='$search' OR s.ref='$search' OR s.rs='$search' )"; - // Il faut compter le nombre au total - $tabTmp = $iDb->select('surveillances_site s, utilisateurs u', 'count(*) as nb', $where.$orderBy, false, MYSQL_ASSOC); - $nbRepTot = $tabTmp[0]['nb']; - - // Execution de la requete - $tabTmp = $iDb->select('surveillances_site s, utilisateurs u', - "siren, nic, ref, source, login, email, DATE_FORMAT(dateAjout, '%Y-%m-%d') as dateAjout, DATE_FORMAT(dateDerEnvoi, '%Y-%m-%d') as dateEnvoi", - $where.$orderBy." LIMIT $position,$nbRep", false, MYSQL_ASSOC); - } else { - $where = "login='$login' AND dateSuppr=0 AND ( siren='$search' OR ref='$search' OR rs='$search' )"; - // Il faut compter le nombre au total - $tabTmp = $iDb->select('surveillances_site', 'count(*) as nb', $where.$orderBy, false, MYSQL_ASSOC); - $nbRepTot = $tabTmp[0]['nb']; - - // Execution de la requete - $tabTmp = $iDb->select('surveillances_site', - "siren, nic, ref, source, login, email, DATE_FORMAT(dateAjout, '%Y-%m-%d') as dateAjout, DATE_FORMAT(dateDerEnvoi, '%Y-%m-%d') as dateEnvoi", - $where.$orderBy." LIMIT $position,$nbRep", false, MYSQL_ASSOC); - } - - $tabRet = array(); - if (count($tabTmp)>0) - { - foreach ($tabTmp as $i => $item) - { - $info = new SearchRefClientInfo(); - $info->ref = $item['ref']; - $info->source = $item['source']; - $info->login = $item['login']; - $info->email = $item['email']; - $info->dateAjout = $item['dateAjout']; - $info->dateEnvoi = $item['dateEnvoi']; - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($item['siren'], $item['nic']); - - $reponse = new SearchRefClient(); - $reponse->id = $tabIdentite['id']; - $reponse->Siret = $tabIdentite['Siret']; - $reponse->Siege = $tabIdentite['Siege']; - $reponse->Nom = prepareString(strtr($tabIdentite['Nom'],'/*',' ')); - $reponse->Nom2 = prepareString($tabIdentite['Nom2']); - $reponse->Sigle = prepareString($tabIdentite['Sigle']); - $reponse->Enseigne = prepareString($tabIdentite['Enseigne']); - $reponse->Adresse = prepareString($tabIdentite['Adresse']); - $reponse->Adresse2 = prepareString($tabIdentite['Adresse2']); - $reponse->CP = $tabIdentite['CP']; - $reponse->Ville = prepareString($tabIdentite['Ville']); - $reponse->Tel = $tabIdentite['Tel']; - $reponse->Fax = $tabIdentite['Fax']; - $reponse->FJ = $tabIdentite['FJ']; - $reponse->FJLib = prepareString($tabIdentite['FJ_lib']); - $reponse->Siren = $tabIdentite['Siren']; - $reponse->Nic = $tabIdentite['Nic']; - $reponse->Actif = $tabIdentite['Actif']; - $reponse->NafEtab = $tabIdentite['NafEtab']; - $reponse->NafEtabLib = $tabIdentite['NafEtabLib']; - $reponse->NafEnt = $tabIdentite['NafEnt']; - $reponse->NafEntLib = $tabIdentite['NafEntLib']; - $reponse->Infos = $info; - $tabRet[] = $reponse; - } - } - $output = new SearchRefClientReturn(); - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbRepTot; - $output->result = $tabRet; - return $output; - } - - /** - * Retourne le bilan correspondant au siren, à l'exercice et au formalisme demandé - * @param string $siren Siren de l'entreprise - * @param string $millesime Date du bilan au format AAAAMMJJ - * @param string $typeBilan N:Réel Normal, S:Réel Simplifié, C:Consolidé - * @param string $ref Référence S&D obligatoire - * @return Bilan - */ - public function getBilan($siren, $millesime, $typeBilan='N', $ref='') - { - $this->authenticate(); - $this->permission('liasse'); - - //Initialisation - if (empty($typeBilan)) { $typeBilan = 'N'; } - if (empty($ref)) { $ref = ''; } - - debugLog('I',"Bilan $millesime $typeBilan demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $millesime = WDate::dateT('Ymd','d/m/Y',$millesime); - $mBil = new MBilans($siren); - $tabBilan = $mBil->getBilan($millesime, $typeBilan, $ref, true); - - $resultBilan = new Bilan(); - $tabPoste = array(); - foreach($tabBilan as $key => $value){ - if(!in_array($key, array('SIREN', 'DATE_FRAICHE_BILAN', - 'DATE_CLOTURE', 'DATE_CLOTURE_PRE', 'DUREE_MOIS', - 'DUREE_MOIS_PRE', 'MONNAIE', 'CONSOLIDE', 'MONNAIE_ORI', - 'MONNAIE_LIV_UNITE', 'SOURCE', 'devise'))){ - $resultPoste = new BilanPoste(); - $resultPoste->id = $key; - $resultPoste->val = $value; - $tabPoste[] = $resultPoste; - } else { - $resultBilan->$key = $value; - } - } - $this->wsLog('bilan',$siren, $millesime.':'.$typeBilan.':'.$ref); - $resultBilan->POSTES = $tabPoste; - return $resultBilan; - } - - /** - * Retourne la liste des bilans disponible pour une entreprise - * @param string $siren Siren de l'entreprise - * @return ListeBilansReturn - */ - public function getListeBilans($siren) - { - $this->authenticate(); - $this->permission('liasse'); - - //Initialisation - $tabRet = array(); - debugLog('I',"Liste des Bilans demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $mBil = new MBilans($siren); - $tabBilans = $mBil->listeBilans(true); - foreach($tabBilans as $bilan) - { - $element = new ListeBilans(); - $element->dateProvPartenaire = $bilan['dateProvPartenaire']; //@todo : date - $element->dateInsert = $bilan['dateInsert']; //@todo : date - $element->typeBilan = $bilan['typeBilan']; - $element->dureeExercice = $bilan['dureeExercice']; - $element->dateExercice = $bilan['dateExercice']; //@todo : date - $element->millesime = $bilan['millesime']; - $element->dateExercicePre = $bilan['dateExercicePre']; //@todo : date - $element->dureeExercicePre = $bilan['dureeExercicePre']; - $element->monnaie = $bilan['monnaie']; - $element->source = $bilan['source']; - $tabRet[] = $element; - } - - debugLog('I', 'Nb Bilans retournés = '. count($tabBilans), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('listebilans', $siren); - $output = new ListeBilansReturn(); - $output->nbReponses = count($tabRet); - $output->result = $tabRet; - return $output; - } - - /** - * Vérifie si un siren existe en base Scores & Décisions - * @param string $siren Siren de l'entité - * @return boolean - */ - public function isSirenExistant($siren) - { - $this->authenticate(); - - //Initialisation - $tabRet = array(); - $siren = trim(substr($siren,0,9)); - $result = false; - debugLog('I',"Siren existant demandée pour siren $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $entrep = $iInsee->sirenExiste($siren); - if (empty($entrep)) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $result = false; - } else { - debugLog('I', "Siren $siren présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $result = true; - } - $this->wsLog('sirenExiste',$siren); - return $result; - } - - /** - * Retourne une annonce en fonction de sa référence - * @param string $siren Siren de l'entreprise - * @param string $dateAnnee - * @param integer $numParution - * @param integer $numAnnonce - * @return RechercheAnnonceReturn - */ - public function rechercheAnnonce($source, $dateAnnee, $numParution, $numAnnonce) - { - $this->authenticate(); - $this->permission('histobodacc'); - - //Initialisation - $tabRet = array(); - - debugLog('I',"Annonce précise demandée pour $source, $dateAnnee, $numParution, $numAnnonce",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($dateAnnee)==4) $annee = $dateAnnee; - else $annee = substr($dateAnnee,0,4); - - $iDb = new WDB('jo'); - - switch (strtoupper($source)) - { - case 'BODA': - case 'BODB': - case 'BODC': - $lettre = substr(strtoupper($source),3,1); - if ($annee<2005) { - if ($lettre=='A'){ $numJAL=1; } - elseif ($lettre=='B'){ $numJAL=200; } - else{ break; } - $anneeDeb = $annee.'0101'; - $anneeFin = $annee.'1231'; - $res = $iDb->select('historiques.entrep e, texte t', - "$annee AS Annee_Parution, e.NOBOD AS Num_Parution, e.NOANN AS Num_Annonce, e.NOPAGE AS Num_Page, e.`DATE` AS Date_Parution, e.DEPT AS Departement, e.CODTRI AS Tribunal_Code, 'I' AS typeAnnonce, CONCAT(e.NOANN,' - ',t.annonceTxt) AS annonce", - "e.JAL=$numJAL AND e.NOBOD=$numParution AND e.`DATE` BETWEEN $anneeDeb AND $anneeFin AND e.NOANN=$numAnnonce AND e.ANBASE=t.annonceNum", false, MYSQL_ASSOC); - } else { - $res = $iDb->select('bodacc', - 'Bodacc_Annee_Parution AS Annee_Parution, Bodacc_Num AS Num_Parution, Num_Annonce, Bodacc_Page AS Num_Page, Bodacc_Date_Parution AS Date_Parution, Tribunal_Dept AS Departement, Tribunal_Code, typeAnnonce, annonce', - "Bodacc_Code='$lettre' AND Bodacc_Annee_Parution=$annee AND Bodacc_Num=$numParution AND Num_Annonce=$numAnnonce", false, MYSQL_ASSOC); - } - break; - case 'ASSO': - $res = $iDb->select('asso', - 'YEAR(Date_Parution) AS Annee_Parution, Num_Parution, Num_Annonce, pageDeb AS Num_Page, Date_Parution, Departement, codTribunal AS Tribunal_Code, typeAnnonce, Annonce_Html AS annonce', "Date_Parution BETWEEN '$annee-01-01' AND '$annee-12-31' AND Num_Parution=$annee".sprintf('%04d', $numParution)." AND Num_Annonce=$numAnnonce", - false, MYSQL_ASSOC); - break; - case 'BALO': - $res = $iDb->select('balo', - "YEAR(Date_Parution) AS Annee_Parution, Num_Parution, Num_Affaire AS Num_Annonce, '' AS Num_Page, Date_Parution, '' AS Departement, '' AS Tribunal_Code, 'Insertion' AS typeAnnonce, Annonce_Html AS annonce", "Date_Parution BETWEEN '$annee-01-01' AND '$annee-12-31' AND Num_Parution=$numParution AND Num_Affaire=$numAnnonce", - false, MYSQL_ASSOC); - break; - } - - if (count($res)>0) - { - $iBodacc = new MBodacc(); - foreach ($res as $i => $etab) - { - $annonces = new AnnonceItem(); - $annonces->Annee_Parution = $etab['Annee_Parution']; - $annonces->Num_Parution = $etab['Num_Parution']; - $annonces->Num_Annonce = $etab['Num_Annonce']; - $annonces->Num_Page = $etab['Num_Page']; - $annonces->Date_Parution = $etab['Date_Parution']; //@todo : date - $annonces->Departement = $etab['Departement']; - $annonces->Tribunal_Code = $etab['Tribunal_Code']; - $annonces->Tribunal = $iBodacc->getTribunalNom($etab['Tribunal_Code']); - $annonces->Type_Annonce = $etab['typeAnnonce']; - $annonces->Annonce = strip_tags(strtr( - html_entity_decode($etab['annonce']), - array('>'=>'>','&'=>'&','<'=>'<','’'=>"'") - )); - - $tabRet[] = $annonces; - } - } - $nbTot = count($tabRet); - $output = new RechercheAnnonceReturn(); - $output->criteres = $criteres; - $output->nbReponses = $nbTot; - $output->nbReponsesTotal = $nbTot; - $output->result = $tabRet; - return $output; - } - - /** - * getRatios - * @param string $siren - * @param string $page - * @return RatiosReturn - */ - public function getRatios($siren, $page='ratios') - { - $this->authenticate(); - $this->permission('ratios'); - - global $tva, $tabFormules, $mBil, $tabBilan, $efftr, $tabInfla; - $tabFormules = include APPLICATION_PATH . '/../library/Metier/scores/Variables/CacheTabFormules.php'; - require_once 'Metier/scores/Variables/configMRatios.php'; - - //Initialisation - if (empty($page)) $page = 'ratios'; - $tabRatiosInfos = $tabRatiosSecteurs = $tabBilansR = array(); - $tabRatios2 = $tabRatiosEvol = array(); - $tabRet = array(); - debugLog('I',"Liste des Ratios demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - debugLog('I',"Liste des Ratios demandée pour $siren avant getIdentiteEntreprise",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteEntreprise($siren,0,0,false,false); - debugLog('I',"Liste des Ratios demandée pour $siren après getIdentiteEntreprise",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $naf = $tabIdentite['NafEnt']; - $nafLib = $tabIdentite['NafEntLib']; - $efftr = $tabIdentite['Effectif']*1; - $fj = $tabIdentite['FJ']; - - $mBil = new MBilans($siren); - $tabBilans = $mBil->listeBilans(true); - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getRatios sur $siren", print_r($tabBilans, true)); - $nbBilans = count($tabBilans); - $tabBilan = $tabBil = array(); - if ($nbBilans>0){ - $tabRatios = calculRatios($tabBilans, $tabIdentite, true); - } - $nbRatios = count($tabRatios); - debugLog('I',"Liste des Ratios demandée pour $siren après calculRatios ($nbRatios)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - /** Tableau d'infos sur les formules **/ - $tabBorneMin = $tabBorneMax = array(); - foreach ($tabFormules as $formule) { - $id = $formule['id']*1; - $libelle = $formule['libelle']; - $unite = $formule['unite']; - $commentaires = $formule['commentaires']; - $tabFormulesInfos[$id] = $formule; //Pour la gestion des unités des ratios secteur - $ratiosInfos = new RatiosInfos(); - $ratiosInfos->id = 'r'.$id; - $ratiosInfos->libelle = $formule['libelle']; - $ratiosInfos->unite = $formule['unite']; - $ratiosInfos->commentaires = $formule['commentaires']; - $tabRatiosInfos[] = $ratiosInfos; - $tabBorneMin[$id] = $formule['borneMin']; - $tabBorneMax[$id] = $formule['borneMax']; - } - - $tabAnnees = array(); - foreach ($tabRatios as $i=>$R) { - - //Informations sur le bilan - $bilansInfos = new RatiosBilansInfos(); - $bilansInfos->dateCloture = $tabBilan[$i]['DATE_CLOTURE']; //@todo : date - $bilansInfos->duree = $tabBilan[$i]['DUREE_MOIS']; - $bilansInfos->devise = $tabBilan[$i]['MONNAIE']; - $bilansInfos->typeBilan = $tabBilan[$i]['CONSOLIDE']; - $bilansInfos->unite = 'U'; - if ( substr($tabBilan[$i]['DATE_CLOTURE'],0,4)>1900 ){ - $tabAnnees[$i]=substr($tabBilan[$i]['DATE_CLOTURE'],0,4); - } - - $tabRatiosEntrep = array(); - $tabRatiosEntrepEvol = array(); - foreach ( $R as $Ridx=>$Rmont ){ - - if ($Rmont<>'NS') { - if ( $tabBorneMin[$Ridx]<>'' && $Rmont<$tabBorneMin[$Ridx] ){ - $Rmont='<'.$tabBorneMin[$Ridx]; - } elseif ( $tabBorneMax[$Ridx]<>'' && $Rmont>$tabBorneMax[$Ridx] ){ - $Rmont='>'.$tabBorneMax[$Ridx]; - } - } - - // RatiosEntrep - $ratiosEntrep = new Ratios(); - if (substr($Rmont,0,1)=='N' || substr($Rmont,0,1)=='<' || substr($Rmont,0,1)=='>'){ - $ratiosEntrep->id = 'r'.$Ridx; - $ratiosEntrep->val = $Rmont; - } else { - $ratiosEntrep->id = 'r'.$Ridx; - $ratiosEntrep->val = round($Rmont,2); - } - $tabRatiosEntrep[] = $ratiosEntrep; - - if (($tabBilan[$i]['CONSOLIDE']=='S' && isset($tabRatios[$i+1])&&($tabBilan[$i+1]['CONSOLIDE']=='S'||($tabBilan[$i+1]['CONSOLIDE']=='N'&&$tabBilan[$i+1]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) || - ($tabBilan[$i]['CONSOLIDE']=='N'&&isset($tabRatios[$i+1])&&($tabBilan[$i+1]['CONSOLIDE']=='N'||($tabBilan[$i+1]['CONSOLIDE']=='S'&&$tabBilan[$i+1]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) - ) - $Rmont=(($R[$Ridx]-$tabRatios[$i+1][$Ridx])*100)/abs($tabRatios[$i+1][$Ridx]); - elseif ( ($tabBilan[$i]['CONSOLIDE']=='S'&&isset($tabRatios[$i+1])&&($tabBilan[$i+2]['CONSOLIDE']=='S'||($tabBilan[$i+2]['CONSOLIDE']=='N'&&$tabBilan[$i+2]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) - || ($tabBilan[$i]['CONSOLIDE']=='N'&&isset($tabRatios[$i+1])&&($tabBilan[$i+2]['CONSOLIDE']=='N'||($tabBilan[$i+2]['CONSOLIDE']=='S'&&$tabBilan[$i+2]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) - ) - $Rmont=(($R[$Ridx]-$tabRatios[$i+2][$Ridx])*100)/abs($tabRatios[$i+2][$Ridx]); - else - $Rmont='NS'; - - // RatiosEntrepEvol - $ratiosEntrepEvol = new Ratios(); - if ($Rmont=='NS' || $Rmont<-800 || $Rmont>800){ - $ratiosEntrepEvol->id = 'r'.$Ridx; - $ratiosEntrepEvol->val = 'NS'; - } else { - $ratiosEntrepEvol->id = 'r'.$Ridx; - $ratiosEntrepEvol->val = number_format($Rmont,2,',',' '); - } - $tabRatiosEntrepEvol[] = $ratiosEntrepEvol; - } - $bilansInfos->RatiosEntrep = $tabRatiosEntrep; - $bilansInfos->RatiosEntrepEvol = $tabRatiosEntrepEvol; - $tabBilansR[] = $bilansInfos; - } - - debugLog('I',"Liste des Ratios demandée pour $siren après EVOLUTION",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - // Tableau des ratios secteurs - - if (strlen($naf)>4) $strNaf = " AND naf5='$naf' "; - else $strNaf = " AND naf4='$naf' "; - $strAnnees = implode(',', $tabAnnees); - - $tabRatiosSecteurs = array(); - - $tabAnnees = array_unique($tabAnnees); - - if ( count($tabAnnees)>0 ) - { - $iDb = new WDB('jo'); - $tabTmp = $iDb->select('ratios_secteurs', - 'annee, naf5, naf4, id, (montant/nombre) AS ratio, nombre', - "1 $strNaf AND annee IN ($strAnnees) ORDER BY annee DESC, id ASC", - false, MYSQL_ASSOC); - - $nbRatiosSec = 0; - foreach($tabAnnees as $annee) - { - $ratiosSecteur = new RatiosSecteur(); - $ratiosSecteur->annee = $annee; - foreach ($tabTmp as $tmp) - { - if ($tmp['annee']== $annee) - { - $Ridx = $tmp['id']; - if ($tmp['nombre']>$nbRatiosSec){ - $nbRatiosSec = $tmp['nombre']; - } - - $unite = $tabFormulesInfos[$Ridx]['unite']; - if ($unite=='EUR'){ - $montant = round($tmp['ratio']*1000); - } else { - $montant = round($tmp['ratio']); - } - if ($tabBorneMin[$Ridx]<>'' && $montant<$tabBorneMin[$Ridx]){ - $montant='<'.$tabBorneMin[$Ridx]; - } elseif ($tabBorneMax[$Ridx]<>'' && $montant>$tabBorneMax[$Ridx]){ - $montant='>'.$tabBorneMax[$Ridx]; - } - - $ratiosSecteurListe = new Ratios(); - if (substr($montant,0,1)=='N' || substr($montant,0,1)=='<' || substr($montant,0,1)=='>'){ - $ratiosSecteurListe->id = 'r'.$Ridx; - $ratiosSecteurListe->val = $montant; - } else { - $ratiosSecteurListe->id = 'r'.$Ridx; - $ratiosSecteurListe->val = round($montant,2); - } - $ratiosSecteur->liste[] = $ratiosSecteurListe; - } - } - $tabRatiosSecteurs[] = $ratiosSecteur; - } - } - - //$tabRatiosSecteurs=array(count($tabTmp), "1 $strNaf AND annee IN ($strAnnees) ORDER BY annee DESC, id ASC"); - - $output = new RatiosReturn(); - $output->Nom = $tabIdentite['Nom']; - $output->NafEnt = $tabIdentite['NafEnt']; - $output->NafEntLib = $tabIdentite['NafEntLib']; - $output->FJ = $fj; - $output->FJ_lib = $tabIdentite['FJ_lib']; - $output->Siren = $siren; - $output->NbEntNaf = $nbRatiosSec; - $output->BilansInfos = $tabBilansR; - $output->RatiosInfos = $tabRatiosInfos; - $output->RatiosSecteur = $tabRatiosSecteurs; - - debugLog('I',"Liste des Ratios demandée pour $siren RETURN",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->wsLog($page, $siren); - return $output; - - } - - /** - * getRapport - * @param string $siren Siren de l'entreprise - * @param integer $niveau Niveau du rapport 1, 2 ou 3 - * @param integer $id Identifiant interne S&D de l'entreprise - * @param boolean $plus Si true, mise en surveillance privilèges - * @param string $ref Si $plus=true, référence facultative de la mise en Surveillance - * @param integer $encours Si $plus=true, encours facultatif Demandé par le client lors de la mise en Surveillance - * @param string $email Si $plus=true, email facultatif pour le suivi - * @return Rapport - */ - public function getRapport($siren, $niveau=3, $id=0, $plus=false, $ref='', $encours=0, $email='') - { - $this->authenticate(); - if (empty($niveau)) $niveau = 3; - if (empty($id)) $id = 0; - $result = new Rapport(); - $filtre = 0; - $idAnn = 0; - - //@todo : Gestion des droits - $perm = false; - switch($niveau){ - case 1: $perms = array('indiscore', 'indiscorep'); break; - case 2: $perms = array('indiscore2', 'indiscore2p'); break; - case 3: $perms = array('indiscore3', 'indiscore3p'); break; - } - foreach($perms as $item){ - if ( $this->checkPerm($item) ){ - $perm = true; - break; - } - } - if ($perm === false) { - $this->sendError('0902'); - } - - $accesDist=true; - $nivComment=2; - if ($niveau==1){ - $result->Indiscore = $this->getIndiScore($siren, 0, $nivComment, $plus, $ref, $encours, $email); - } elseif ($niveau==2) { - $result->Identite = $this->getIdentite($siren, $id=0); - $result->Indiscore = $this->getIndiScore($siren, 0, $nivComment, $plus, $ref, $encours, $email); - $result->Dirigeants = $this->getDirigeants($siren, false); - $result->Liens = $this->getLiens($siren, true); - $result->Ratios = $this->getRatios($siren, $page="rapport$niveau"); - } elseif ($niveau==3) { - $result->Identite = $this->getIdentite($siren, $id=0); - $result->Indiscore = $this->getIndiScore($siren, 0, $nivComment, $plus, $ref, $encours, $email); - $result->Dirigeants = $this->getDirigeants($siren, false); - $result->Liens = $this->getLiens($siren, true); - $result->Ratios = $this->getRatios($siren, $page="rapport$niveau"); - $result->Annonces = $this->getAnnonces($siren, $filtre, $idAnn); - } - return $result; - } - - /** - * Retourne la liste des banques connues pour une entreprise - * @param string $siren Siren de l'entreprise - * @return BanquesReturn - */ - public function getBanques($siren) - { - $this->authenticate(); - $this->permission('banque'); - - //Initialisation - $iDb = new WDB('sdv1'); - $tabRet = array(); - debugLog('I',"Liste des banques demandée pour siren $siren", - __LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (intval($siren)<=1000) { - $this->sendError('1010'); - } - - $res=$iDb->select('banques', 'codeBanque, codeGuichet, libBanqueGuichet, precis, dateSource*1 AS dateSource', "siren=$siren", false, MYSQL_ASSOC); - $tmp=$iDb->select('fedRib', "codeBanque, codeGuichet, CONCAT(libBanque,' ',libGuichet) AS libBanqueGuichet, 0 AS precis, IF (dateInfo='0000-00-00', dateDispo*1, dateInfo*1) AS dateSource", "siren=$siren", false, MYSQL_ASSOC); - $res=array_merge($res, $tmp); - foreach ($res as $tabBanque){ - $dateSource=$tabBanque['dateSource']; - $codBanque=$tabBanque['codeBanque']; - $codGuichet=$tabBanque['codeGuichet']; - $libBanque=trim($tabBanque['libBanqueGuichet']); - $found=false; - $adrBanque1=$adrBanque2=$adrBanqueCP=$adrBanqueVille=''; - - if ($codBanque>0 && $codGuichet>0 && - $dateSource>(date('Y')-4)*10000+101 && - $dateSourceselect('insee.BDF_Etabs b, insee.BDF_Guichets g', - 'g.bdfFibCodeEtab AS banque, g.bdfFibCodeGuichet AS guichet, b.bdfFibDenom40 AS nomBanque, b.bdfFibDenom10 AS sigleBanque, g.bdfFibDenom20 AS nomGuichet, g.bdfFibAdresse1 AS adresse1, g.bdfFibAdresse2 AS adresse2, g.bdfFibAdresse3 AS adresse3, g.CP, g.Ville', "g.bdfFibCodeEtab=$codBanque AND g.bdfFibCodeGuichet=$codGuichet AND b.bdfFibCodeEtab=g.bdfFibCodeEtab", - false, MYSQL_ASSOC); - if (isset($tmp[0])){ - $libBanque=trim($tmp[0]['nomBanque'].' '.$tmp[0]['nomGuichet']); - $adrBanque1=$tmp[0]['adresse1']; - $adrBanque2=trim($tmp[0]['adresse2'].' '.$tmp[0]['adresse3']); - $adrBanqueCP=$tmp[0]['CP']; - $adrBanqueVille=$tmp[0]['Ville']; - $found=true; - }; - } - if (!$found && $codBanque>0 && - $dateSource>(date('Y')-4)*10000+101 && - $dateSourceselect('insee.BDF_Etabs', "bdfFibCodeEtab AS banque, '' AS guichet, bdfFibDenom40 AS nomBanque, '' AS nomGuichet, '' AS adresse1, '' AS adresse2, '' AS adresse3, '' AS CP, '' AS Ville", "bdfFibCodeEtab=$codBanque", false, MYSQL_ASSOC); - if (isset($tmp[0])){ - $libBanque=trim($tmp[0]['nomBanque'].' '.$tmp[0]['nomGuichet']); - $adrBanque1=$tmp[0]['adresse1']; - $adrBanque2=trim($tmp[0]['adresse2'].' '.$tmp[0]['adresse3']); - $adrBanqueCP=$tmp[0]['CP']; - $adrBanqueVille=$tmp[0]['Ville']; - } else continue; - } else continue; - - $banque = new Banque(); - $banque->codeBanque = $codBanque; - $banque->codeGuichet = $codGuichet; - $banque->libBanque = $libBanque; - $banque->adresse1 = $adrBanque1; - $banque->adresse2 = $adrBanque2; - $banque->cp = $adrBanqueCP; - $banque->ville = $adrBanqueVille; - $tabRet[] = $banque; - } - debugLog('I',"Liste des banques pour siren $siren : ".count($tabRet).' banques',__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $this->wsLog('banque', $siren); - $output = new BanquesReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des compétences territoriales pour un établissement à une adresse donnée. - * @param string $siret Siret de l'établissement - * @param string $type Type de compétence (pre:prefectures et s/prefectures, jal;journaux d'annonces légales, tri:tribunaux, adm:administrateurs et mandataires judiciaires, hui:huissiers, cfe:centres de formalités des entreprises) - * @param string $codeInsee Code Insee de la commune de l'établissement - * @return ListeCompetencesReturn - */ - public function getListeCompetences($siret, $type, $codeInsee) - { - $this->authenticate(); - $this->permission('competences'); - - //Initialisation - $error = new ErrorType(); - $type = strtolower($type); - - debugLog('I',"Liste des compétences $type demandée pour la commune $codeInsee",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - $iBodacc = new MBodacc(); - $cp=$codeInsee*1; - $dep=false; - if (substr($codeInsee,0,2)=='2A' || substr($codeInsee,0,2)=='2B') - { - $dep=20; $cp=20000+(substr($codeInsee,2,3))*1; - } - elseif ($cp>0 && $cp<100) $dep=$cp; - elseif ($cp>970 && $cp<977) $dep=$cp; - elseif ($cp>999 && $cp<10000) $dep='0'.substr($cp,0,1); - elseif ($cp>=10000 && $cp<96000) $dep=substr($cp,0,2); - elseif ($cp>=99000) $dep=substr($cp,0,2); - elseif ($cp>=98000) $dep=substr($cp,0,3); - elseif ($cp>=97100 && $cp<97700) $dep=substr($cp,0,3); - - require_once 'i18n/cleanchar.php'; - - if ($type=='pre'){ - - $iDb = new WDB('jo'); - $tabTmp2 = $iDb->select('villes', 'DEP, COM, AR, CT', 'codeInsee='.$codeInsee, false, MYSQL_ASSOC); - $arrond = $tabTmp2[0]['AR']; - unset($iDb); - $iDb = new WDB('insee'); - $tabTmp2 = $iDb->select('insee_tabArrond', 'CHEFLIEU, ARTMAJ, NCC', "DEP='$dep' AND AR='$arrond'", false, MYSQL_ASSOC); - $nomSousPref = trim(strtr($tabTmp2[0]['ARTMAJ'],array('('=>'',')'=>'',' '=>'', "'"=>'')).' '.$tabTmp2[0]['NCC']); - unset($iDb); - $tabTmp = $iBodacc->getTribunauxParDep($dep); - foreach ($tabTmp as $i=>$tribunal) - { - if ($tribunal['triType']=='A' || $tribunal['triType']=='B') - { - $pref = levenshtein($tribunal['triNom'], 'PREFECTURE DE '.$nomSousPref); - $spref = levenshtein($tribunal['triNom'], 'SOUS PREFECTURE DE '.$nomSousPref); - - if ($tribunal['triType']=='B' && ($pref>7 || $spref>5)) continue; - - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType'].$typeP; - $competence->Nom = strtoupper($tribunal['triNom']); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper( - preg_replace('/ +/',' ',$tribunal['triAdrNum'].' '. - $tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '. - $tribunal['triAdrVoie'])); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $tribunal['triCommentaire']; - $tabRet[] = $competence; - - } - } - - } elseif ($type=='jal') { - - $tabTmp = $iBodacc->getJALparDep($dep); - foreach ($tabTmp as $i=>$comp) - { - $infos=''; - if (trim($comp['parution'])<>'') $infos.='Parution '.$comp['parution'].'. '; - if (trim($comp['aboAnnuel'])>0) $infos.='Abonnement Annuel : '.$comp['aboAnnuel'].' euros. '; - if (trim($comp['infos'])<>'') $infos.=$comp['infos']; - - $competence = new Competence(); - $competence->Id = 9000+$comp['id']*1; - $competence->IdSup = 0; - $competence->Code = ''; - $competence->Type = ''; - $competence->Nom = strtoupper($comp['nomJal']); - $competence->Siret = ''; - $competence->Adr = strtoupper($comp['adresse']); - $competence->AdrComp = ''; - $competence->CP = $comp['cp']; - $competence->Ville = strtoupper($comp['ville']); - $competence->CodeInsee = ''; - $competence->Tel = $comp['tel']; - $competence->Fax = $comp['fax']; - $competence->Web = $comp['siteWeb']; - $competence->Mail = $comp['email']; - $competence->Statut = 'Actif'; - $competence->DateCessation = ''; - $competence->Remarque = trim($infos); - $tabRet[] = $competence; - } - - } elseif ($type=='tri' || $type=='adm' || $type=='hui') { - - $tabTmp = $iBodacc->getTribunauxParCommune($codeInsee); - foreach ($tabTmp as $i=>$tribunal) - { - if (//$tribunal['triType']=='C' || - $tribunal['triType']=='G'// || - /*$tribunal['triType']=='I'*/) { - $idCA = $tribunal['triIdSup']; - $codeTGI = $tribunal['triCode']; - $code = strtoupper(substr($tribunal['triCode'],0,3)); - } - debugLog('D',"Liste des compétences $type demandée pour la commune $codeInsee ($dep) : ". - "Type=".$tribunal['triType'].', '. - "Code=".$tribunal[$codeTGI],__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($tribunal['triType']<>'E' && $tribunal['triType']<>'O' && - $tribunal['triType']<>'T' && $tribunal['triType']<>'R' && - $tribunal['triType']<>'N' && $tribunal['triType']<>'U' && - $tribunal['triType']<>'Z') - { - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType']; - $competence->Nom = strtoupper(cleanstring($tribunal['triNom'])); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper(cleanstring(preg_replace('/ +/',' ', - $tribunal['triAdrNum'].' '. - $tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '. - $tribunal['triAdrVoie']))); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $tribunal['triCommentaire']; - if ($tribunal['triNumGreffe']*1>0) - { - $competence->IdentifiantGreffe = $tribunal['triNumGreffe']; - } - $tabRet[] = $competence; - } - } - } - - if ($type=='adm') - { - $iInsee = new MInsee(); - $tabTmp = $iInsee->getMandataires(array($idCA), false); - $tabRet = array(); - $nbAff=0; - foreach ($tabTmp as $i=>$tribunal) - { /** @todo A revoir Debut **/ - if (stripos($tribunal['tribunal'], $code)!==false || - stripos($tribunal['tribunal'], 'SAINT')!==false) - { - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($tribunal['adresse']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $tribunal['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation'], - $competence->Remarque = $tribunal['contact']; - //,,,,Prenom,,,Statut,,,cp,ville,tel,fax,email,web,contact - $tabRet[] = $competence; - $nbAff++; - } - } - if ($nbAff==0) - { - foreach ($tabTmp as $i=>$tribunal) - { - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($tribunal['adresse']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $tribunal['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation'], - $competence->Remarque = $tribunal['contact']; - //,,,,Prenom,,,Statut,,,cp,ville,tel,fax,email,web,contact - $tabRet[] = $competence; - } - }/** @todo A revoir Fin : Lier correctement les mandataires à un TI principal **/ - } - elseif ($type=='hui') - { - $iInsee = new MInsee(); - $tabTmp = $iInsee->getHuissiers(array($codeTGI), false); - - $tabRet = array(); - $nbAff = 0; - foreach ($tabTmp as $i=>$tribunal) - { - $adr = $iInsee->structureVoie($tribunal['adresse']); - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($adr['num'].' '.$adr['adr_btq'].' '. - $adr['typeVoie'].' '.$adr['libVoie']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $adr['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation']; - $competence->Remarque = strtr($tribunal['contact'], - array( '
        '=>', ', '
        '=>', ', - '
        '=>', ', - )); - $tabRet[] = $competence; - } - $nbComp = count($tabTmp); - debugLog('I',"$nbComp compétences $type trouvées pour le tribunal $codeTGI",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } - elseif ($type=='cfe') - { - $tabTmp = $iBodacc->getTribunauxParCommune($codeInsee); - foreach ($tabTmp as $i=>$tribunal) - { - if ($tribunal['triType']=='C' || $tribunal['triType']=='O' || - $tribunal['triType']=='T' || $tribunal['triType']=='R' || - $tribunal['triType']=='N' || $tribunal['triType']=='U' || - $tribunal['triType']=='Z') - { - if (strlen($tribunal['triCommentaire'])==32 && - strpos($tribunal['triCommentaire'], ' ')===false) - $remarque=''; - else $remarque=$tribunal['triCommentaire']; - - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType']; - $competence->Nom = strtoupper($tribunal['triNom']); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper(preg_replace('/ +/',' ',$tribunal['triAdrNum'].' '.$tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '.$tribunal['triAdrVoie'])); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $remarque; - $tabRet[] = $competence; - } - } - } - $this->wsLog('competences',$siret,$type.'/'.$codeInsee); - $output = new ListeCompetencesReturn(); - $output->result = $tabRet; - $output->nbReponses = count($tabRet); - return $output; - } - - /** - * Retourne le statut du webservice - * @return StatusReturn - */ - public function status() - { - /* @todo tester les différents éléments qui peuvent conduire - * à un problème dans les services tel que la connexion à la - * base de données, l'accès FTP, l'accès HTTP, l'accès système de fichier - */ - - //Enregistrement des accès à la requête getIdentite - Zend_Registry::get('WsLogger')->info("status - ip:". - $_SERVER['REMOTE_ADDR'].", login:".$_SERVER['PHP_AUTH_USER']. - ", hash:".$_SERVER['PHP_AUTH_PW']); - - $error = new StatusReturn(); - //Test connexion à la base de données - $db = new WDB('jo'); - if (!$db) { - $error->statusCode = 9000; - $error->statusMsg = $this->listError['9000']; - } else { - $error->statusCode = 3000; - $error->statusMsg = $this->listError['3000']; - } - return $error; - } - -} - -?> \ No newline at end of file diff --git a/library/WsScore/Entreprise/v0.6/Types.php b/library/WsScore/Entreprise/v0.6/Types.php deleted file mode 100644 index 28410658..00000000 --- a/library/WsScore/Entreprise/v0.6/Types.php +++ /dev/null @@ -1,3767 +0,0 @@ - 'ErrorType', - 'StatusReturn' => 'StatusReturn', - 'SearchReturn' => 'SearchReturn', - 'SearchEntrepriseReturn' => 'SearchEntrepriseReturn', - 'SearchDirReturn' => 'SearchDirReturn', - 'DirigeantsReturn' => 'DirigeantsReturn', - 'AnnoncesReturn' => 'AnnoncesReturn', - 'InseeReturn' => 'InseeReturn', - 'TvaReturn' => 'TvaReturn', - 'LiensReturn' => 'LiensReturn', - 'InfosRegReturn' => 'InfosRegReturn', - 'ListeBilansReturn' => 'ListeBilansReturn', - 'SetSurveillanceReturn' => 'SetSurveillanceReturn', - 'SurveillancesReturn' => 'SurveillancesReturn', - 'ListeEtablissementsReturn' => 'ListeEtablissementsReturn', - 'RatiosReturn' => 'RatiosReturn', - 'RechercheAnnonceReturn' => 'RechercheAnnonceReturn', - 'Identite' => 'Identite', - 'GeoInfos' => 'GeoInfos', - 'IdentiteBilan' => 'IdentiteBilan', - 'IdentiteBourse' => 'IdentiteBourse', - 'AutreSiren' => 'AutreSiren', - 'EntrepriseCriteres' => 'EntrepriseCriteres', - 'DirigeantCriteres' => 'DirigeantCriteres', - 'EntrepriseItem' => 'EntrepriseItem', - 'EntrepriseDirItem' => 'EntrepriseDirItem', - 'Etablissement' => 'Etablissement', - 'Dirigeant' => 'Dirigeant', - 'AnnonceFilter' => 'AnnonceFilter', - 'Annonce' => 'Annonce', - 'AnnonceEvenement' => 'AnnonceEvenement', - 'AnnonceNum' => 'AnnonceNum', - 'Actionnaire' => 'Actionnaire', - 'Participation' => 'Participation', - 'InseeEven' => 'InseeEven', - 'InfosReg' => 'InfosReg', - 'InfosBourse' => 'InfosBourse', - 'ListeBilans' => 'ListeBilans', - 'SurveillancesFiltre' => 'SurveillancesFiltre', - 'Surveillance' => 'Surveillance', - 'SurveillanceSource' => 'SurveillanceSource', - 'Bilan' => 'Bilan', - 'BilanPoste' => 'BilanPoste', - 'RechercheAnnonceCriteres' => 'RechercheAnnonceCriteres', - 'AnnonceItem' => 'AnnonceItem', - 'RatiosBilansInfos' => 'RatiosBilansInfos', - 'RatiosInfos' => 'RatiosInfos', - 'RatiosSecteur' => 'RatiosSecteur', - 'Ratios' => 'Ratios', - 'Rapport' => 'Rapport', - 'Indiscore' => 'Indiscore', - 'Scores' => 'Scores', - 'IndiscoreVariables' => 'IndiscoreVariables', - 'CA_Y' => 'CA_Y', - 'IndiscoreImportExport' => 'IndiscoreImportExport', - 'IndiscoreInfosNotations' => 'IndiscoreInfosNotations', - 'IndiscorePaiement' => 'IndiscorePaiement', - 'IndiscorePaiementDetail' => 'IndiscorePaiementDetail', - 'IndiscoreNotesStructure' => 'IndiscoreNotesStructure', - 'IndiscoreBilans' => 'IndiscoreBilans', - 'AdresseDomEnt' => 'AdresseDomEnt', - 'InfosIris' => 'InfosIris', - 'BanquesReturn' => 'BanquesReturn', - 'Banque' => 'Banque', - 'ListeCompetencesReturn' => 'ListeCompetencesReturn', - 'Competence' => 'Competence', - 'IdentiteProcol' => 'IdentiteProcol', - 'Organe' => 'Organe', - 'AutreSiret' => 'AutreSiret', - 'SearchRefClientReturn' => 'SearchRefClientReturn', - 'SearchRefClient' => 'SearchRefClient', - 'SearchRefClientInfo' => 'SearchRefClientInfo', -); \ No newline at end of file diff --git a/library/WsScore/Entreprise/v0.7/Entreprise.php b/library/WsScore/Entreprise/v0.7/Entreprise.php deleted file mode 100644 index e03e042c..00000000 --- a/library/WsScore/Entreprise/v0.7/Entreprise.php +++ /dev/null @@ -1,4214 +0,0 @@ -authenticate(); - $this->permission('identite'); - - //Initialisation - if (empty($id)) { $id = 0; } - $forceVerif = false; - - $tdeb = microtime(1); - $ligne = date('YmdHis').";$siret;Ws->getIdentite Avant ..."; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - debugLog('I',"Identités demandée pour siret $siret (id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if ($siren*1==0 && $id==0) { - $this->sendError('1010'); - } elseif ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren, $nic, $id, $forceVerif); - debugLog('I', "Après getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $duree = round(microtime(1)-$tdeb,3); - $ligne = date('YmdHis').";$siret;Ws->getIdentite juste apres iInsee->... ($duree s)"; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - if (empty($entrep) || empty($entrep['id']) ) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - - $identite = new Identite(); - $identite->id = $entrep['id']; - $identite->Siret = $entrep['Siret']; - $identite->SiretSiege = $entrep['SiretSiege']; - $identite->Siege = $entrep['Siege']; - $identite->AncienSiege = $entrep['AncienSiege']; - $identite->AncienSiegeDateFin = $entrep['AncienSiegeDateFin']; - $identite->TribunalCode = prepareString($entrep['Tribunal']); - $identite->TribunalLib = prepareString($entrep['TribunalLib']); - //'NumGreffe' = $entrep['numGreffe'], // Ajouté le 4 08 2009 - $identite->NumRC = $entrep['numRC']; // Ajouté le 4 08 2009 - $identite->Actif = $entrep['Actif']; - $identite->ActifEco = $entrep['ActifEco']; // Etab éco actif, ajout le 28/04/2011 - $identite->ActifEcoDate = $entrep['ActifEcoDate']; // Date si éco inactif et jur actif - $identite->ActifEcoType = $entrep['ActifEcoType']; // vide ou NPAI ou PFER ou ECOF - $identite->EntActiveRCS = $entrep['EntActiveRCS']; - $identite->AutreId = $entrep['AutreId']; - $identite->Source = $entrep['Source']; - $identite->SourceId = $entrep['SourceId']; - $identite->Isin = $entrep['Isin']; - $identite->Nom = prepareString(strtr($entrep['Nom'],'/*',' ')); - $identite->Nom2 = prepareString($entrep['Nom2']); - $identite->NomLong = prepareString($entrep['nomLong']); // Ajouté le 4 08 2009 - $identite->NomCommercial = prepareString($entrep['NomCommercial']); // Ajouté le 16 11 2010 - $identite->Siret = $entrep['Siret']; - $identite->Sigle = prepareString($entrep['Sigle']); - $identite->SigleLong = prepareString($entrep['sigleLong']); // Ajouté le 4 08 2009 - $identite->Enseigne = prepareString($entrep['Enseigne']); - $identite->EnseigneLong = prepareString($entrep['enseigneLong']); // Ajouté le 16 11 2010 - $identite->Adresse = prepareString($entrep['Adresse']); - $identite->Adresse2 = prepareString($entrep['Adresse2']); - $identite->AdresseNum = prepareString($entrep['AdresseNum']); - $identite->AdresseBtq = prepareString($entrep['AdresseBtq']); - $identite->AdresseVoie = prepareString($entrep['AdresseVoie']); - $identite->AdresseRue = prepareString($entrep['AdresseRue']); - $identite->CP = $entrep['CP']; - $identite->Ville = prepareString($entrep['Ville']); - $identite->Pays = prepareString($entrep['Pays']); // Ajouté le 18 02 2008 - $identite->PaysIso2 = $entrep['PaysIso2']; - $identite->AdresseDom = $entrep['AdresseDom']; - - $tabAdresseDomEnt = array(); - if (isset($entrep['AdresseDomEnt']) && count($entrep['AdresseDomEnt'])>0){ - foreach ($entrep['AdresseDomEnt'] as $element){ - $adresseDomEnt = new AdresseDomEnt(); - $adresseDomEnt->siren = $element['siren']; - $adresseDomEnt->nom = $element['nom']; - $tabAdresseDomEnt[] = $adresseDomEnt; - } - } - $identite->AdresseDomEnt = $tabAdresseDomEnt; - - $identite->AdresseDomNb = $entrep['AdresseDomNb']; - $identite->Civilite = $entrep['Civilite']; - $identite->NbEtab = $entrep['NbEtab']; - $identite->Tel = prepareString($entrep['Tel']); - $identite->Fax = prepareString($entrep['Fax']); - $identite->Web = prepareString($entrep['Web']); - $identite->Mail = prepareString($entrep['Mail']); - $identite->GeoLat = $entrep['GeoLat']; - $identite->GeoLon = $entrep['GeoLon']; - $identite->GeoPrecis = $entrep['GeoPrecis']; - - $geoInfos = new GeoInfos(); - $geoInfos->CUCS = $entrep['GeoInfos']['CUCS']; - $geoInfos->NCUCS = $entrep['GeoInfos']['NCUCS']; - $geoInfos->ZRU = $entrep['GeoInfos']['ZRU']; - $geoInfos->NZRU = $entrep['GeoInfos']['NZRU']; - $geoInfos->ZFU = $entrep['GeoInfos']['ZFU']; - $geoInfos->NZFU = $entrep['GeoInfos']['NZFU']; - $geoInfos->ZUS = $entrep['GeoInfos']['ZUS']; - $geoInfos->NZUS = $entrep['GeoInfos']['NZUS']; - $geoInfos->AFR = $entrep['GeoInfos']['AFR']; - $geoInfos->NAFR = $entrep['GeoInfos']['NAFR']; - $geoInfos->ZRR = $entrep['GeoInfos']['ZRR']; - $geoInfos->NZRR = $entrep['GeoInfos']['NZRR']; - $identite->GeoInfos = $geoInfos; - - $identite->TvaNumero = $entrep['TvaNumero']; - $identite->TvaAttribue = $entrep['TvaAttribue']; - $identite->FJ = $entrep['FJ']; - $identite->FJ_Lib = $entrep['FJ_lib']; - $identite->FJ2 = $entrep['FJ2']; // Ajouté le 4 08 2009 - $identite->FJ2_Lib = $entrep['FJ2_Lib']; // Ajouté le 4 08 2009 - $identite->Siren = $entrep['Siren']; - $identite->Nic = $entrep['Nic']; - $identite->NafEnt = $entrep['NafEnt']; - $identite->NafEntLib = $entrep['NafEntLib']; - $identite->NafEtab = $entrep['NafEtab']; - $identite->NafEtabLib = $entrep['NafEtabLib']; - $identite->NaceEtab = $entrep['NaceEtab']; - $identite->NaceEnt = $entrep['NaceEnt']; - $identite->Nafa = $entrep['APRM']; - $identite->NafaLib = prepareString($entrep['APRM_Lib']); - $identite->NumRM = $entrep['NumRM']; - $identite->Activite = $entrep['Activite']; - $identite->Capital = $entrep['Capital']; - $identite->CapitalDev = $entrep['CapitalDev']; - $identite->CapitalLib = $entrep['CapitalLib']; // Ajouté le 18 02 2008 - $identite->CapitalType = prepareString($entrep['CapitalType']); // Ajouté le 4 08 2009 - $identite->DateCreaEt = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEt']); - $identite->DateCreaEn = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEn']); - $identite->DateClotEt = $entrep['DateClotEt']; //@todo : date - $identite->DateImmat = $entrep['dateImmat']; // Ajouté le 4 08 2009 - $identite->DateRadiation = $entrep['dateRad']; // Ajouté le 4 08 2009 - //'DateMajRCS' = $entrep['DateMajRCS'], // Ajouté le 4 08 2009 - $identite->EffEnTr = $entrep['EffEnTr']; - $identite->EffEnTrLib = $entrep['EffEnTrLib']; - $identite->Effectif = $entrep['Effectif']; - $identite->EffEtTr = $entrep['EffEtTr']; // Ajout le 11 08 2010 - $identite->EffEtTrLib = $entrep['EffEtTrLib']; // Ajout le 11 08 2010 - $identite->EffectifEtab = $entrep['EffectifEtab']; // Ajout le 11 08 2010 - $identite->Dept = $entrep['Dept']; - $identite->codeCommune = prepareString($entrep['codeCommune']); - $identite->AnneeEffEn = $entrep['AnneeEffEn']; - $identite->AnneeEffEt = $entrep['AnneeEffEt']; - $identite->AnneeTCA = $entrep['AnneeTCA']; - $identite->TrancheCA = $entrep['TrancheCA']; - $identite->TrancheCALib = $entrep['TrancheCALib']; - $identite->TrancheCAType = $entrep['TrancheCAType']; - $identite->dir1Code = $entrep['dir1Code']; - $identite->dir1Titre = prepareString($entrep['dir1Titre']); - $identite->dir1NomPrenom = prepareString($entrep['dir1NomPrenom']); - $identite->dir1DateFct = prepareString($entrep['dir1DateFct']); //@todo : date - $identite->dir1DateNaiss = $entrep['dir1DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir1LieuNaiss = prepareString($entrep['dir1LieuNaiss']); // Ajouté le 4 08 2009 - $identite->dir2Code = $entrep['dir2Code']; - $identite->dir2Titre = prepareString($entrep['dir2Titre']); - $identite->dir2NomPrenom = prepareString($entrep['dir2NomPrenom']); - $identite->dir2DateFct = $entrep['dir2DateFct']; //@todo : date - $identite->dir2DateNaiss = prepareString($entrep['dir2DateNaiss']); //@todo : date // Ajouté le 4 08 2009 - $identite->dir2LieuNaiss = prepareString($entrep['dir2LieuNaiss']); // Ajouté le 4 08 2009 - $identite->Rivoli = $entrep['Rivoli']; - - $identite->InfosIris->codIris = $entrep['InfosIris']['codIris']; - $identite->InfosIris->codComIris = $entrep['InfosIris']['codComIris']; - $identite->InfosIris->libIris = prepareString($entrep['InfosIris']['libIris']); - $identite->InfosIris->typIris = prepareString($entrep['InfosIris']['typIris']); - $identite->InfosIris->evoIris = $entrep['InfosIris']['evoIris']; - $identite->InfosIris->trIris = $entrep['InfosIris']['trIris']; - $identite->InfosIris->grdQuartier = $entrep['InfosIris']['grdQuartier']; - $identite->NatureActivite = $entrep['NatureActivite']; // Nature de l'activité - $identite->OrigineCreation = $entrep['OrigineCreation']; // Origine de la création - $identite->TypeExploitation = $entrep['TypeExploitation']; - $identite->Auxiliaire = $entrep['Auxiliaire']; // 1=Auxiliaire / 0=Non auxiliaire - $identite->Saisonnalite = $entrep['Saisonnalite']; // P=Activité permanente / S=Activité saisonnière - $identite->SurfaceMagasin = $entrep['ACTISURF']*1; // 0=N/D, 1=inf. à 300m2,2=300 à 400m2, 3=400 à 2500m2, 4=sup. à 2500m2 - $identite->SituationJuridique = $entrep['SituationJuridique']; - $identite->Bilan->Millesime = $entrep['bilanAnnee']; - $identite->Bilan->Cloture = $entrep['bilanDate']; //@todo : date - $identite->Bilan->Duree = $entrep['bilanMois']; - $identite->Bilan->Devise = $entrep['bilanDevise']; - $identite->Bilan->Capital = $entrep['bilanDA']; - $identite->Bilan->CA = $entrep['bilanFL']; - $identite->Bilan->CAestime = $entrep['bilanFLestime']; - $identite->Bilan->Resultat = prepareString($entrep['bilanHN']); - $identite->Bilan->Effectif = $entrep['bilanYP']; - $identite->Bourse->placeCotation = $bourse['placeCotation']; - $identite->Bourse->nombreTitres = $bourse['nombreTitres']; - $identite->Bourse->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $identite->Bourse->derCoursDate = $bourse['date']; //@todo : date - $identite->Bourse->derCoursCloture = $bourse['close']; //@todo : date - - $tabAutreSiren = array(); - if (isset($entrep['AutreSiren'])) { - $autreSiren = new AutreSiren(); - $autreSiren->siren = $entrep['AutreSiren']['listeSiren']['siren']; - $autreSiren->type = $entrep['AutreSiren']['listeSiren']['type']; - $tabAutreSiren[] = $autreSiren; - } - $identite->AutreSiren = $tabAutreSiren; - - $tabAutreSiret = array(); - if (count($entrep['AutreSiret'])) { - foreach($entrep['AutreSiret'] as $type => $item) { - $autreSiret = new AutreSiret(); - $autreSiret->type = $type; - $autreSiret->siren = $item['siren']; - $autreSiret->nic = $item['nic']; - $autreSiret->apeEtab = $item['apeEtab']; - $autreSiret->codeEve = $item['codeEve']; - $autreSiret->dateEve = $item['dateEve']; - $autreSiret->adrL1 = $item['adrL1']; - $autreSiret->adrL2 = $item['adrL2']; - $autreSiret->adrL3 = $item['adrL3']; - $autreSiret->adrL4 = $item['adrL4']; - $autreSiret->adrL5 = $item['adrL5']; - $autreSiret->adrL6 = $item['adrL6']; - $autreSiret->adrL7 = $item['adrL7']; - $autreSiret->depCom = $item['depCom']; - $autreSiret->rivoli = $item['rivoli']; - $autreSiret->siege = $item['siege']; - $autreSiret->destinat = $item['destinat']; - $autreSiret->typEtab = $item['typeEtab']; - $autreSiret->origine = $item['origine']; - $tabAutreSiret[] = $autreSiret; - } - } - $identite->AutreSiret = $tabAutreSiret; - - $identite->DateMajINSEE = $entrep['DateMajINSEE']; //@todo : date - $identite->DateMajRCS = $entrep['DateMajRCS']; //@todo : date - $identite->DateMajBILAN = $entrep['bilanDateMaj']; //@todo : date - $identite->DateMajANN = $entrep['dateMajANN']; //@todo : date - $identite->DateMajID = $entrep['dateMajIdentite']; //@todo : date - //'importExport' = $entrep['importExport'], - - if (preg_match('/NAF4/i', $this->tabInfoUser['pref'])) - { - $entrep2 = $iInsee->getNaf4($siren, $nic, $id); - $identite->Naf4Ent = $entrep2['apen4']; - $identite->Naf4Etab = $entrep2['apet4']; - $identite->Naf4EntLib = prepareString($entrep2['apen4_lib']); - $identite->Naf4EtabLib = prepareString($entrep2['apet4_lib']); - } - - debugLog('I', 'Etablissement retourné = '. $entrep['Nom'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('identite',$siret,$id); - $duree=round(microtime(1)-$tdeb,3); - $ligne=date('YmdHis').";$siret;Ws->getIdentite APRES ($duree s) !!!"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - - return $identite; - } - - /** - * Retourne les informations identitaires de l'entreprise ou de l'établissement demandé - * @param string $siret Siren de l'entreprise ou siret de l'établissement - * @param integer $id Identifiant S&D de l'établissement - * @return IdentiteProcol Fiche d'identité de l'établissement - */ - public function getIdentiteProcol($siret, $id=0, $forceVerif=false) - { - $this->authenticate(); - $this->permission('idprocol'); - - debugLog('I',"Identité AGS demandée pour siret $siret (id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if (intval($siren)==0 && $id==0) { - $this->sendError('1010'); - } elseif ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren, $nic, $id, $forceVerif); - debugLog('I', "Après getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $duree = round(microtime(1)-$tdeb,3); - $ligne = date('YmdHis').";$siret;Ws->getIdentite juste apres iInsee->... ($duree s)"; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - if (empty($entrep)) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - - $identiteProcol = new IdentiteProcol(); - - //Element identite - $identite = new Identite(); - $identite->id = $entrep['id']; - $identite->Siret = $entrep['Siret']; - $identite->SiretSiege = $entrep['SiretSiege']; - $identite->Siege = $entrep['Siege']; - $identite->TribunalCode = $entrep['Tribunal']; - $identite->TribunalLib = $entrep['TribunalLib']; - $identite->NumRC = $entrep['numRC']; // Ajouté le 4 08 2009 - $identite->Actif = $entrep['Actif']; - $identite->EntActiveRCS = $entrep['EntActiveRCS']; - $identite->AutreId = $entrep['AutreId']; - $identite->Source = $entrep['Source']; - $identite->SourceId = $entrep['SourceId']; - $identite->Isin = $entrep['Isin']; - $identite->Nom = strtr($entrep['Nom'],'/*',' '); - $identite->Nom2 = $entrep['Nom2']; - $identite->NomLong = $entrep['nomLong']; // Ajouté le 4 08 2009 - $identite->NomCommercial = $entrep['NomCommercial']; // Ajouté le 16 11 2010 - $identite->Siret = $entrep['Siret']; - $identite->Sigle = $entrep['Sigle']; - $identite->SigleLong = $entrep['sigleLong']; // Ajouté le 4 08 2009 - $identite->Enseigne = $entrep['Enseigne']; - $identite->EnseigneLong = $entrep['enseigneLong']; // Ajouté le 16 11 2010 - $identite->Adresse = $entrep['Adresse']; - $identite->Adresse2 = $entrep['Adresse2']; - $identite->AdresseNum = $entrep['AdresseNum']; - $identite->AdresseBtq = $entrep['AdresseBtq']; - $identite->AdresseVoie = $entrep['AdresseVoie']; - $identite->AdresseRue = $entrep['AdresseRue']; - $identite->CP = $entrep['CP']; - $identite->Ville = $entrep['Ville']; - $identite->Pays = $entrep['Pays']; // Ajouté le 18 02 2008 - $identite->PaysIso2 = $entrep['PaysIso2']; - $identite->AdresseDom = $entrep['AdresseDom']; - - $tabAdresseDomEnt = array(); - if (isset($entrep['AdresseDomEnt']) && count($entrep['AdresseDomEnt'])>0){ - foreach ($entrep['AdresseDomEnt'] as $element){ - $adresseDomEnt = new AdresseDomEnt(); - $adresseDomEnt->siren = $element['siren']; - $adresseDomEnt->nom = $element['nom']; - $tabAdresseDomEnt[] = $adresseDomEnt; - } - } - $identite->AdresseDomEnt = $tabAdresseDomEnt; - - $identite->AdresseDomNb = $entrep['AdresseDomNb']; - $identite->Civilite = $entrep['Civilite']; - $identite->NbEtab = $entrep['NbEtab']; - $identite->Tel = $entrep['Tel']; - $identite->Fax = $entrep['Fax']; - $identite->Web = $entrep['Web']; - $identite->Mail = $entrep['Mail']; - $identite->GeoLat = $entrep['GeoLat']; - $identite->GeoLon = $entrep['GeoLon']; - $identite->GeoPrecis = $entrep['GeoPrecis']; - $identite->GeoInfos = $entrep['GeoInfos']; - $identite->TvaNumero = $entrep['TvaNumero']; - $identite->TvaAttribue = $entrep['TvaAttribue']; - $identite->FJ = $entrep['FJ']; - $identite->FJ_Lib = $entrep['FJ_lib']; - $identite->FJ2 = $entrep['FJ2']; // Ajouté le 4 08 2009 - $identite->FJ2_Lib = $entrep['FJ2_Lib']; // Ajouté le 4 08 2009 - $identite->Siren = $entrep['Siren']; - $identite->Nic = $entrep['Nic']; - $identite->NafEnt = $entrep['NafEnt']; - $identite->NafEntLib = $entrep['NafEntLib']; - $identite->NafEtab = $entrep['NafEtab']; - $identite->NafEtabLib = $entrep['NafEtabLib']; - $identite->NaceEtab = $entrep['NaceEtab']; - $identite->NaceEnt = $entrep['NaceEnt']; - $identite->Nafa = $entrep['APRM']; - $identite->NafaLib = $entrep['APRM_Lib']; - $identite->NumRM = $entrep['NumRM']; - $identite->Activite = $entrep['Activite']; - $identite->Capital = $entrep['Capital']; - $identite->CapitalDev = $entrep['CapitalDev']; - $identite->CapitalLib = $entrep['CapitalLib']; // Ajouté le 18 02 2008 - $identite->CapitalType = $entrep['CapitalType']; // Ajouté le 4 08 2009 - $identite->DateCreaEt = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEt']); - $identite->DateCreaEn = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEn']); - $identite->DateClotEt = $entrep['DateClotEt']; //@todo : date - $identite->DateImmat = $entrep['dateImmat']; // Ajouté le 4 08 2009 - $identite->DateRadiation = $entrep['dateRad']; // Ajouté le 4 08 2009 - $identite->EffEnTr = $entrep['EffEnTr']; - $identite->EffEnTrLib = $entrep['EffEnTrLib']; - $identite->Effectif = $entrep['Effectif']; - $identite->EffEtTr = $entrep['EffEtTr']; // Ajout le 11 08 2010 - $identite->EffEtTrLib = $entrep['EffEtTrLib']; // Ajout le 11 08 2010 - $identite->EffectifEtab = $entrep['EffectifEtab']; // Ajout le 11 08 2010 - $identite->Dept = $entrep['Dept']; - $identite->codeCommune = $entrep['codeCommune']; - $identite->AnneeEffEn = $entrep['AnneeEffEn']; - $identite->AnneeEffEt = $entrep['AnneeEffEt']; - $identite->AnneeTCA = $entrep['AnneeTCA']; - $identite->TrancheCA = $entrep['TrancheCA']; - $identite->TrancheCALib = $entrep['TrancheCALib']; - $identite->dir1Code = $entrep['dir1Code']; - $identite->dir1Titre = $entrep['dir1Titre']; - $identite->dir1NomPrenom = $entrep['dir1NomPrenom']; - $identite->dir1DateFct = $entrep['dir1DateFct']; //@todo : date - $identite->dir1DateNaiss = $entrep['dir1DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir1LieuNaiss = $entrep['dir1LieuNaiss']; // Ajouté le 4 08 2009 - $identite->dir2Code = $entrep['dir2Code']; - $identite->dir2Titre = $entrep['dir2Titre']; - $identite->dir2NomPrenom = $entrep['dir2NomPrenom']; - $identite->dir2DateFct = $entrep['dir2DateFct']; //@todo : date - $identite->dir2DateNaiss = $entrep['dir2DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir2LieuNaiss = $entrep['dir2LieuNaiss']; // Ajouté le 4 08 2009 - $identite->Rivoli = $entrep['Rivoli']; - $identite->InfosIris->codIris = $entrep['InfosIris']['codIris']; - $identite->InfosIris->codComIris = $entrep['InfosIris']['codComIris']; - $identite->InfosIris->libIris = $entrep['InfosIris']['libIris']; - $identite->InfosIris->typIris = $entrep['InfosIris']['typIris']; - $identite->InfosIris->evoIris = $entrep['InfosIris']['evoIris']; - $identite->InfosIris->trIris = $entrep['InfosIris']['trIris']; - $identite->InfosIris->grdQuartier = $entrep['InfosIris']['grdQuartier']; - $identite->NatureActivite = $entrep['NatureActivite']; // Nature de l'activité - $identite->OrigineCreation = $entrep['OrigineCreation']; // Origine de la création - $identite->TypeExploitation = $entrep['TypeExploitation']; - $identite->Auxiliaire = $entrep['Auxiliaire']; // 1=Auxiliaire / 0=Non auxiliaire - $identite->Saisonnalite = $entrep['Saisonnalite']; // P=Activité permanente / S=Activité saisonnière - $identite->SituationJuridique = $entrep['SituationJuridique']; - $identite->Bilan->Cloture = $entrep['bilanDate']; //@todo : date - $identite->Bilan->Duree = $entrep['bilanMois']; - $identite->Bilan->Devise = $entrep['bilanDevise']; - $identite->Bilan->Capital = $entrep['bilanDA']; - $identite->Bilan->CA = $entrep['bilanFL']; - $identite->Bilan->Resultat = $entrep['bilanHN']; - $identite->Bilan->Effectif = $entrep['bilanYP']; - $identite->Bourse->placeCotation = $bourse['placeCotation']; - $identite->Bourse->nombreTitres = $bourse['nombreTitres']; - $identite->Bourse->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $identite->Bourse->derCoursDate = $bourse['date']; //@todo : date - $identite->Bourse->derCoursCloture = $bourse['close']; //@todo : date - - $tabAutreSiren = array(); - if (isset($entrep['AutreSiren'])) { - $autreSiren = new AutreSiren(); - $autreSiren->siren = $entrep['AutreSiren']['listeSiren']['siren']; - $autreSiren->type = $entrep['AutreSiren']['listeSiren']['type']; - $tabAutreSiren[] = $autreSiren; - } - $identite->AutreSiren = $tabAutreSiren; - - $identite->DateMajINSEE = $entrep['DateMajINSEE']; //@todo : date - $identite->DateMajRCS = $entrep['DateMajRCS']; //@todo : date - $identite->DateMajBILAN = $entrep['bilanDateMaj']; //@todo : date - $identite->DateMajANN = $entrep['dateMajANN']; //@todo : date - $identite->DateMajID = $entrep['dateMajIdentite']; //@todo : date - - if (preg_match('/NAF4/i', $this->tabInfoUser['pref'])) - { - $entrep2 = $iInsee->getNaf4($siren, $nic, $id); - $identite->Naf4Ent = $entrep2['apen4']; - $identite->Naf4Etab = $entrep2['apet4']; - $identite->Naf4EntLib = $entrep2['apen4_lib']; - $identite->Naf4EtabLib = $entrep2['apet4_lib']; - } - - $identiteProcol->Identite = $identite; - - //Eléments annonces légales - $tabRetAnn = $tabLastEven = array(); - if (intval($siren)!=0) { - $anns = $this->getAnnonces($siren, 1); - $anns = $anns->result; - $tribunalProcol = false; - foreach ($anns as $nb=>$ann) - { - $tabRetEven = array(); - foreach ($ann->evenements as $tabEven) { - // On ignore les éléments suivants - if ($tabEven->CodeEven>=7000) continue; - if ($tabEven->CodeEven>=4000 && $tabEven->CodeEven<=4999) continue; - - // Par défaut, on force le tribunal à celui présent dans la dernière annonce de Procol - if ($tribunalProcol==false && $tabEven->CodeEven>=1000 && $tabEven->CodeEven<2000 && $ann->BodaccCode=='BODA') { - $identiteProcol->TribunalCode = $ann->TribunalCode; - $identiteProcol->TribunalLib = prepareString($ann->Tribunal); - $tribunalProcol=true; - } - - // On ne prend que le dernier élément de chaque type - if (in_array($tabEven->CodeEven, $tabLastEven)) continue; - - $tabLastEven[] = $tabEven->CodeEven; - $tabRetEven[] = $tabEven; - } - - if (count($tabRetEven)>0) { - $annonce = new Annonce(); - $annonce->id = $ann->id; - $annonce->BodaccCode = $ann->BodaccCode; - $annonce->BodaccNum = $ann->BodaccNum; - $annonce->NumAnnonce = $ann->NumAnnonce; - $annonce->DateParution = $ann->DateParution; //@todo : date - $annonce->Departement = $ann->Departement; - $annonce->Tribunal = $ann->Tribunal; - $annonce->TribunalCode = $ann->TribunalCode; - $annonce->TribunalSiret = $ann->TribunalSiret; - $annonce->Rubrique = $ann->Rubrique; - $annonce->typeAnnonce = $ann->typeAnnonce; - $annonce->texteRectificatif = $ann->texteRectificatif; - $annonce->texteAnnonce = utf8_encode($ann->texteAnnonce); - $annonce->dateEffet = $ann->dateEffet; //@todo : date - $annonce->dateJugement = $ann->dateJugement; //@todo : date - $annonce->dateInsertionSD = $ann->dateInsertionSD; //@todo : date - $annonce->evenements = $tabRetEven; - $annonce->Lien_Annonce_Pdf = $ann->Lien_Annonce_Pdf; - $tabRetAnn[] = $annonce; - } - } - $identiteProcol->Annonces = $tabRetAnn; - - $iRncs = new MRncs(); - if ($entrep['Siege']==1 || $entrep['Siege']==11) { - $identiteProcol->LibTypeEtab = 'Etablissement Siege'; - } else { - $tabEtabRncs = $iRncs->getIdentiteEtab($siren, $entrep['Nic']); - if ($tabEtabRncs['Siege']==2) $identiteProcol->LibTypeEtab = 'Etablissement Principal'; - elseif ($tabEtabRncs['Siege']==1) $identiteProcol->LibTypeEtab = 'Etablissement Complementaire'; - elseif ($tabEtabRncs['Siege']==0) $identiteProcol->LibTypeEtab = 'Etablissement Secondaire'; - } - - //@todo - $tabJuge = $iRncs->getIntervenants($siren); - $tabDepots=array(); - foreach ($tabJuge as $iDepot=>$depot) { - $organe = new Organe(); - $organe->codEven = $depot['codEven']; - $organe->libEven = prepareString($depot['libEven']); - $organe->dateEffet = $depot['dateEffet']; - $organe->admcode = $depot['admcode']; - $organe->admfonction = prepareString($depot['admfonction']); - $organe->admnom = prepareString($depot['admnom']); - $organe->admadrNum = $depot['admadrNum']; - $organe->admadrInd = $depot['admadrInd']; - $organe->admadrVoie = $depot['admadrVoie']; // @todo : adm1adr1, adm1adr2, adm1adr3, - $organe->admadrCP = $depot['admadrCP']; - $organe->admadrVille = $depot['admadrVille']; - $tabDepots[] = $organe; - } - $identiteProcol->Organes = $tabDepots; - - - $mLiens = new MLiens($siren); - $tabA = $mLiens->getActionnaires($siren, 1); - $nbA = count($tabA); - $tabAct = array(); - foreach ($tabA as $i=>$lien) { - $liens = new Actionnaire(); - $liens->Pmin = $lien['Pmin']; - $liens->MajMin = $lien['MajMin']; - $liens->RaisonSociale = $lien['RaisonSociale']; - $liens->Pays = $lien['Pays']; - $liens->Siren = $lien['Siren']; - $liens->Actif = $lien['Actif']; - $tabAct[] = $liens; - } - $identiteProcol->Actionnaires = $tabAct; - - $iGreffes = new MGreffes(); - $tabActes = $iGreffes->getListeActes($siren); - - $identiteProcol->StatutsModifDepot = $identiteProcol->StatutsModif = '0000-00-00'; - foreach ($tabActes as $i=>$acte) { - if ('_'.$acte['acte_type']=='_04') { // STATUTS CONSTITUTIFS - $identiteProcol->StatutsConstDepot = $acte['depot_date']; // => 1997-12-18 - $identiteProcol->StatutsConst = $acte['acte_date']; // => 1997-11-13 - break; - } elseif (in_array('_'.$acte['acte_type'], array( - //'_04', // STATUTS CONSTITUTIFS - '_06', // STATUTS A JOUR 9 0000-00-00 2009-09-02 17:05:55 - '_07', // STATUTS A JOUR 9 0000-00-00 2009-09-02 17:05:55 - '_08', // STATUTS A JOUR ET DECLARATION DE CONFORMITE 9 0000-00-00 2009-09-02 17:05:55 - '_09', // STATUTS APRES TRANSFERT DE SIEGE 9 0000-00-00 2009-09-02 17:05:55 - '_A1', // STATUTS 9 0000-00-00 2009-09-02 17:05:55 - '_AH', // AVENANT AUX STATUTS - ))) { - // On ne prend que la dernière modif - if ($identiteProcol->StatutsModifDepot=='0000-00-00' && $identiteProcol->StatutsModif=='0000-00-00') { - $identiteProcol->StatutsModifDepot = $acte['depot_date'];// => 1997-12-18 - $identiteProcol->StatutsModif = $acte['acte_date']; // => 1997-11-13 - } - } - } - - /** Y a t il eu des informations relatives à une cession ? **/ - $tabCes = $iGreffes->getInfosCessions($siren); - if ($tabCes) { - $identiteProcol->CessionJugeLib = $tabCes['cessJuge']; - $identiteProcol->CessionJugeDate = $tabCes['cessDateJuge']; - $identiteProcol->CessionAvisBodac = $tabCes['cessDateBod']; - $identiteProcol->CessionInvenDate = $tabCes['cessDateInv']; - $identiteProcol->CessionCAdeclare = $tabCes['cessCAdec']; - $identiteProcol->CessionEffectif = $tabCes['cessEffectif']; - $identiteProcol->CessionDesc = $tabCes['cessDesc']; - $identiteProcol->CessionDescDate = $tabCes['cessDateDesc']; - $identiteProcol->CessionOffreDate = $tabCes['cessDateLim']; - $identiteProcol->CessionMandataire = $tabCes['cessMand']; - } - } - //sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Debug $siren", print_r($tabRet,true)) ; - debugLog('I', 'Etablissement retourné = '. $entrep['Nom'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('identite',$siret,$id); - - return $identiteProcol; - } - - /** - * Retourne les liens financiers pour une entreprise. - * - * @param string $siren Siren de l'entreprise - * @param boolean $actifsUniquement Uniquement les liens Actifs - * @return LiensReturn - */ - public function getLiens($siren, $actifsUniquement = true) - { - $this->authenticate(); - $this->permission('liens'); - - //Initialisation - if (empty($actifsUniquement)) { $actifsUniquement = true; } - $tabAct = $tabPar = array(); - - debugLog('I',"Liens entreprises demandés pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $mLiens = new MLiens($siren); - $tabA = $mLiens->getActionnaires($siren, $actifsUniquement); - $nbA = count($tabA); - $tabAct = array(); - if ($nbA > 0) { - foreach ($tabA as $i => $lien) { - $actionnaire = new Actionnaire(); - $actionnaire->Pmin = $lien['Pmin']; - $actionnaire->MajMin = $lien['MajMin']; - $actionnaire->RaisonSociale = $lien['RaisonSociale']; - $actionnaire->TypeEntrep = $lien['TypeEntrep']; - $actionnaire->Pays = $lien['Pays']; - $actionnaire->Siren = $lien['Siren']; - $actionnaire->Actif = $lien['Actif']; - $actionnaire->Source = $lien['Source']; - $actionnaire->DateLien = $lien['DateLien']; //@todo : date - $actionnaire->DateMaj = $lien['DateMaj']; //@todo : date - $tabAct[] = $actionnaire; - } - } - debugLog('W', "$nbA actionnaires pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $tabP = $mLiens->getParticipations($siren, $actifsUniquement); - $nbP = count($tabP); - $tabPar = array(); - if ($nbP > 0) { - foreach ($tabP as $i => $lien) { - $participation = new Participation(); - $participation->Pmin = $lien['Pmin']; - $participation->MajMin = $lien['MajMin']; - $participation->RaisonSociale = $lien['RaisonSociale']; - $participation->TypeEntrep = $lien['TypeEntrep']; - $participation->Pays = $lien['Pays']; - $participation->Siren = $lien['Siren']; - $participation->Actif = $lien['Actif']; - $participation->Source = $lien['Source']; - $participation->DateLien = $lien['DateLien']; //@todo : date - $participation->DateMaj = $lien['DateMaj']; //@todo : date - $tabPar[] = $participation; - } - } - debugLog('W', "$nbP participations pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('liens',$siren); - - $output = new LiensReturn(); - $output->actionnaires = $tabAct; - $output->participations = $tabPar; - return $output; - } - - - /** - * Liste des établissements d'une entreprise - * @param string $siren Siren de l'entreprise - * @param integer $departement Limiter aux établissements du departement - * @param integer $actif Otpionnel 1=Uniquements les actifs, 0=inactifs, Néant=Tous - * @param integer $position - * @param integer $nbRep - * - * @return ListeEtablissementsReturn - */ - public function getListeEtablissements($siren, $dep = 0, $actif = -1, $position = 0, $nbRep = 20) - { - $this->authenticate(); - $this->permission('etablissements'); - - //Initialisation - if (empty($dep)) { $dep = 0; } - if (!in_array($actif, array(0,1))) { $actif = -1; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 20; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - $departement = $dep; - - debugLog('I',"Liste des établissements demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissements($siren, '', $position, $nbRep, 200, $departement, $actif); - $etabs = $rep['reponses']; - $nbReponses = $rep['nbReponsesTotal']; - $result = array(); - if (count($etabs)>0) - { - foreach ($etabs as $nb => $etab) - { - $etablissement = new Etablissement(); - $etablissement->id = $etab['id']; - $etablissement->Siege = $etab['Siege']; - $etablissement->Enseigne = $etab['Enseigne']; - $etablissement->Adresse = $etab['Adresse']; - $etablissement->Adresse2 = $etab['Adresse2']; - $etablissement->CP = $etab['CP']; - $etablissement->Ville = $etab['Ville']; - $etablissement->Tel = $etab['Tel']; - $etablissement->Fax = $etab['Fax']; - $etablissement->Nic = $etab['Nic']; - $etablissement->Actif = $etab['Actif']; - $etablissement->NafEtab = $etab['NafEtab']; - $etablissement->NafEtabLib = $etab['NafEtabLib']; - $etablissement->EffEtTr = $etab['EffEtTr']; - $etablissement->EffEtTrLib = $etab['EffEtTrLib']; - - $result[] = $etablissement; - } - } - debugLog('I', "Nb Etablissements retournés ($departement, $actif) = ". count($result), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('etablissements',$siren); - $output = new ListeEtablissementsReturn(); - $output->nbReponses = $nbReponses; - $output->result = $result; - return $output; - } - - /** - * Retourne l'ensemble des informations identitaires des dirigeants de l'entreprise - * - * @param string $siren Siren de l'entreprise - * @param bool $histo Afficher l'historique des dirigeants - * @return DirigeantsReturn Liste des dirigeants actifs de l'entreprise - */ - public function getDirigeants( $siren , $histo = false) - { - $this->authenticate(); - $this->permission('dirigeants'); - - //Initialisation - if (empty($histo)) { $histo = false; } - - //Zend_Registry::get('WsLogger')->info('HISTO : '.$histo); - - debugLog('I',"Dirigeants demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $dirs = $iInsee->getDirigeants($siren, $histo); - //debugLog('W', print_r($dirs, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $liste = array(); - foreach ($dirs as $nb => $dir) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $dirigeant = new Dirigeant(); - $dirigeant->Code = $dir['Fonction']; - $dirigeant->Titre = $dir['Titre']; - $dirigeant->Societe = $dir['Societe']; - $dirigeant->Civilite = $dir['Civilite']; - $dirigeant->Nom = $dir['Nom']; - $dirigeant->Prenom = $dir['Prenom']; - $dirigeant->NomUsage = $dir['NomUsage']; - $dirigeant->NaissDate = $dir['NaissDate']; //@todo : date - $dirigeant->NaissVille = $dir['NaissVille']; - $dirigeant->NaissDepPays = $dir['NaissDepPays']; - $dirigeant->Ancien = $dir['Ancien']; - $dirigeant->DateFct = $dir['DateFct']; //@todo : date - $liste[] = $dirigeant; - } - $this->wsLog('dirigeants',$siren,$option); - debugLog('I', 'Nb Dirigeants retournés = '. count($dirs), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $output = new DirigeantsReturn(); - $output->result = $liste; - return $output; - } - - /** - * Retourne la liste des annonces légales relative à une entreprise - * - * @todo Revoir cette fonction pour la faire marcher avec les associations - * - * @param string $siren Siren de l'entreprise - * @param integer $filtre 1=BODACC, 2=B.A.L.O, 3=JO Association, 4=Boamp - * @param string $idAnn Identifiant de l'annonce - * @param integer $position - * @param integer $nbRep - * @return AnnoncesReturn - */ - public function getAnnonces($siren, $filtre = 1, $idAnn = '', $position = 0, $nbRep = 100) - { - $this->authenticate(); - $this->permission('annonces'); - - //Initialisation - if (empty($filtre)) { $filtre = 1; } - if (empty($idAnn)) { $idAnn = ''; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 100; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - - debugLog('I',"Annonces demandées pour $siren ($filtre, $idAnn)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $liste = array(); - - if (strlen($siren)!=9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif (intval($siren)==0 && $idAnn=='') { - debugLog('W', "Siren $siren ou annonce $idAnn inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - /* - if ($siren>100 && $filtre==3) $asso=true; - else { - $asso=false; - $tabIdentite=$this->iInsee->getIdentiteLight($siren); - if ($tabIdentite['FJ']>90 && $tabIdentite['FJ']<94 || - $tabIdentite['FJ']>9000 && $tabIdentite['FJ']<9400) $asso=true; - }*/ - - //@todo : Connaitre le nombre d'annonce - - /* - getAnnoncesBoamp => Avis de marché, Avis d'attribution - getAnnoncesAsso => Rien de particulier - getAnnoncesBalo => Rien de particulier - getAnnoncesLegales => Plusieurs requetes SQL suivant la situation - */ - - if ($idAnn=='') { - $anns=$iInsee->getAnnoncesLegales($siren); - $annsB=$iInsee->getAnnoncesBalo($siren); - $annsA=$iInsee->getAnnoncesAsso($siren); - $annsM=$iInsee->getAnnoncesBoamp($siren, $idAnn); - } elseif ($filtre==1) - $anns=$iInsee->getAnnoncesLegales($siren, $idAnn); - elseif ($filtre==2) - $annsB=$iInsee->getAnnoncesBalo($siren, $idAnn); - elseif ($filtre==3) - $annsA=$iInsee->getAnnoncesAsso($siren, $idAnn); - elseif ($filtre==4) - $annsM=$iInsee->getAnnoncesBoamp($siren, $idAnn); - - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($anns) && empty($annsB) && empty($annsA) && empty($annsM)) - { - debugLog('W', "Aucune annonce pour le siren $siren (source=$filtre, id=$idAnn)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren inexistant B '.$siren.' '.$idAnn; - } - else - { - foreach ($anns as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - $annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = prepareString($ann['texteAnnonce']); - $annonce->libFJ = $ann['libFJ']; - $annonce->codFJ = $ann['codFJ']; - $annonce->capital = $ann['capital']; - $annonce->capitalDev = $ann['capitalDev']; - - $annonce->raisonSociale = $ann['raisonSociale']; - $annonce->nomCommercial = $ann['nomCommercial']; - $annonce->sigle = $ann['sigle']; - $annonce->adresse = $ann['adresse']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - - if (is_array($annsB)) - { - foreach ($annsB as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - - if (is_array($annsA)) - { - foreach ($annsA as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - //@todo : date - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - - if (is_array($annsM)) - { - foreach ($annsM as $nb=>$ann) - { - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - } - - $nbReponses = count($liste); - if ($nbReponses>0){ - //$liste = array_slice($liste, $position, $nbRep); - } - debugLog('I', "Nb Annonces $filtre retournées pour $siren (source=$filtre, id=$idAnn) = ". count($liste), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('annonces',$siren,$filtre.'/'.$idAnn); - - $output = new AnnoncesReturn(); - $output->nbReponses = $nbReponses; - $output->result = $liste; - return $output; - } - - /** - * Retourne le nombre d'élément pour chaque type - * @param string $siren - * @return AnnonceNum[] - */ - public function getAnnoncesNum($siren) - { - $this->authenticate(); - - $output = array(); - - if ( substr($siren,0,1)=='W' ) { - $iInsee = new MInsee(); - $nb = new AnnonceNum(); - $nb->type = 'asso'; - $nb->num = $iInsee->getAnnoncesAssoCount($siren); - $output[] = $nb; - } elseif (intval($siren)!=0) { - $types = array('bodacc', 'balo', 'boamp', 'asso'); - $iInsee = new MInsee(); - foreach ($types as $type) { - switch($type) { - case 'bodacc': - $anns = $iInsee->getAnnoncesLegales($siren); - $total = count($anns); - break; - case 'balo': - $total = $iInsee->getAnnoncesBaloCount($siren); - break; - case 'boamp': - $total = $iInsee->getAnnoncesBoampCount($siren); - break; - case 'asso': - $total = $iInsee->getAnnoncesAssoCount($siren); - break; - } - $nb = new AnnonceNum(); - $nb->type = $type; - $nb->num = $total; - $output[] = $nb; - } - } - return $output; - } - - /** - * Retourne les annonces légales - * @param string $siren - * @param string $idAnn - * @param AnnonceFilter[] $filtre - * @param int $position - * @param int $nbRep - * @return AnnoncesReturn - */ - public function getAnnoncesLegales($siren, $idAnn = null, $filtre = null, $position = 0, $nbRep = 20) - { - $this->authenticate(); - $this->permission('annonces'); - - //Initialisation - if (empty($idAnn)) { $idAnn = null; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 100; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - - debugLog('I',"Annonces demandées pour $siren ($idAnn)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($siren)!=9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif (intval($siren)==0 && $idAnn=='') { - debugLog('W', "Siren $siren ou annonce $idAnn inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - - $isList = false; - - if ( is_null($idAnn) ) { - $anns = $iInsee->getAnnoncesLegales($siren); - $nbReponses = count($anns); - $isList = true; - } else { - $anns = $iInsee->getAnnoncesLegales($siren, $idAnn); - $nbReponses = count($anns); - } - - $liste = array(); - $cpt = 0; - - if (is_array($anns)) - { - foreach ($anns as $nb => $ann) - { - if ($isList===true && $nb<$position) { continue; } - $cpt++; - if ($isList===true && $cpt>$nbRep) { break; } - - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - $annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = prepareString($ann['texteAnnonce']); - $annonce->libFJ = $ann['libFJ']; - $annonce->codFJ = $ann['codFJ']; - $annonce->capital = $ann['capital']; - $annonce->capitalDev = $ann['capitalDev']; - - $annonce->raisonSociale = $ann['raisonSociale']; - $annonce->nomCommercial = $ann['nomCommercial']; - $annonce->sigle = $ann['sigle']; - $annonce->adresse = $ann['adresse']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - - $this->wsLog('annonces',$siren,$idAnn); - - $output = new AnnoncesReturn(); - $output->nbReponses = $nbReponses; - $output->result = $liste; - return $output; - } - - /** - * Retourne les annonces du journal officiel des associations - * @param string $siren - * @param string $idAnn - * @param AnnonceFilter[] $filtre - * @param int $position - * @param int $nbRep - * @return AnnoncesReturn - */ - public function getAnnoncesAsso($siren, $idAnn = null, $filtre = null, $position = 0, $nbRep = 20) - { - $this->authenticate(); - $this->permission('annonces'); - - //Initialisation - if (empty($idAnn)) { $idAnn = 0; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 20; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - - debugLog('I',"Annonces demandées pour $siren ($filtre, $idAnn)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($siren)!=9 && substr($siren,0,1)!='W') { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif (intval($siren)==0 && is_null($idAnn)) { - debugLog('W', "Siren $siren ou annonce $idAnn inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - - $nbReponses = $iInsee->getAnnoncesAssoCount($siren, $idAnn); - $anns = $iInsee->getAnnoncesAsso($siren, $idAnn, $position, $nbRep); - - $liste = array(); - - if (is_array($anns)) - { - foreach ($anns as $nb=>$ann) - { - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - //@todo : date - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - - $this->wsLog('annonces',$siren,$idAnn); - - $output = new AnnoncesReturn(); - $output->nbReponses = $nbReponses; - $output->result = $liste; - return $output; - } - - /** - * Retourne les annonces de marché public - * @param string $siren - * @param string $idAnn - * @param AnnonceFilter[] $filtre - * @param int $position - * @param int $nbRep - * @return AnnoncesReturn - */ - public function getAnnoncesBoamp($siren, $idAnn = null, $filtre = null, $position = 0, $nbRep = 20) - { - $this->authenticate(); - $this->permission('annonces'); - - //Initialisation - if (empty($idAnn)) { $idAnn = ''; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 20; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - - $type = array('A', 'M'); - - if (is_array($filtre->item) && count($filtre->item)>0) { - foreach($filtre->item as $item) { - if ( $item->key == 'type' ) { - $type = $item->value; - } - } - } - - if (strlen($siren)<>9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif (intval($siren)==0 && is_null($idAnn)) { - debugLog('W', "Siren $siren ou annonce $idAnn inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - if ( empty($idAnn) ) { - $nbReponses = $iInsee->getAnnoncesBoampCount($siren, $type); - $anns = $iInsee->getAnnoncesBoamp($siren, $idAnn, $type, $position, $nbRep); - } else { - $anns = $iInsee->getAnnoncesBoamp($siren, $idAnn, $type, 0, 1); - $nbReponses = count($anns); - } - - $liste = array(); - if (is_array($anns) && count($anns)>0) - { - foreach ($anns as $nb=>$ann) - { - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - - $this->wsLog('annonces',$siren,$idAnn); - - $output = new AnnoncesReturn(); - $output->nbReponses = $nbReponses; - $output->result = $liste; - return $output; - - } - - /** - * Retourne les annonces du bulletins des annonces légales obligatoires - * @param string $siren - * @param string $idAnn - * @param AnnonceFilter[] $filtre - * @param int $position - * @param int $nbRep - * @return AnnoncesReturn - */ - public function getAnnoncesBalo($siren, $idAnn = null, $filtre = null, $position = 0, $nbRep = 20) - { - $this->authenticate(); - $this->permission('annonces'); - - //Initialisation - if (empty($idAnn)) { $idAnn = null; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 20; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - - debugLog('I',"Annonces demandées pour $siren ($filtre, $idAnn)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($siren)<>9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif (intval($siren)==0 && is_null($idAnn)) { - debugLog('W', "Siren $siren ou annonce $idAnn inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - - if ( is_null($idAnn) ) { - $nbReponses = $iInsee->getAnnoncesBaloCount($siren); - $anns = $iInsee->getAnnoncesBalo($siren, $idAnn, $position, $nbRep); - } else { - $anns = $iInsee->getAnnoncesBalo($siren, $idAnn, 0, 1); - $nbReponses = count($anns); - } - - $liste = array(); - if (is_array($anns) && count($anns)>0) - { - foreach ($anns as $nb=>$ann) - { - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - - $this->wsLog('annonces',$siren,$idAnn); - - $output = new AnnoncesReturn(); - $output->nbReponses = $nbReponses; - $output->result = $liste; - return $output; - } - - /** - * Evaluation indiScore d'une entreprise - * @param string $siren Siren de l'entreprise - * @param string $nic Nic de l'établissement - * @param integer $niveau Niveau des commentaires - * @param bool $plus Si true, mise en surveillance privilèges - * @param string $ref Si $plus=true, référence de la mise en Surveillance - * @param integer $encours Si $plus=true, encours client demandé lors de la mise en Surveillance - * @param string $email Si $plus=true, email client pour la mise en surveillance - * @return Indiscore - */ - public function getIndiScore($siren, $nic=0, $niveau=2, $plus=false, $ref='', $encours=0, $email='') - { - $this->authenticate(); - - //Initialisation - $accesDist = true; - if (empty($nic)) { $nic = 0; } - if (empty($niveau)) { $niveau = 2; } - if (empty($plus)) { $plus = false; } - if ( !in_array($niveau, array(0,1,2,3,4,5)) ) { $niveau = 2; } - $perm = false; - //@todo : Gestion des droits - switch($niveau){ - case 3: $perms = array('indiscore3', 'indiscore3p'); break; - case 2: $perms = array('indiscore2', 'indiscore2p', 'indiscore3', 'indiscore3p'); break; - case 1: $perms = array('indiscore', 'indiscorep'); break; - } - foreach($perms as $item){ - if ( $this->checkPerm($item) ){ - $perm = true; - break; - } - } - if ($perm === false) { - $this->sendError('0902'); - } - - $tabRet = array(); - debugLog('I',"IndiScore demandée pour $siren en niveau $niveau",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)>9 || (substr($siren,0,9)*1)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $tDeb = microtime(true); - require_once 'Metier/scores/classMScores.php'; - $tabRet = calculIndiScore($siren, $nic, $accesDist, $niveau, false, 'scores'); - $duree = round(microtime(true)-$tDeb,3); - debugLog('W', "indiscore DUREE = $duree s", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $output = new Indiscore(); - foreach($tabRet as $key => $value){ - if ($key=='paiements'){ - $parMont = $value['parMont']; - $parTrim = $value['parTrim']; - $tabMont = array(); - foreach($parMont as $parMontK => $parMontV){ - $paiementMont = new IndiscorePaiementDetail(); - $paiementMont->id = $parMontK; - $paiementMont->nb = $parMontV['nb']; - if (array_key_exists('d=180', $parMontV)){ - $paiementMont->d180 = $parMontV['d=180']; - } - if (array_key_exists('d=150', $parMontV)){ - $paiementMont->d150 = $parMontV['d=150']; - } - if (array_key_exists('d=120', $parMontV)){ - $paiementMont->d120 = $parMontV['d=120']; - } - if (array_key_exists('d=90', $parMontV)){ - $paiementMont->d90 = $parMontV['d=90']; - } - if (array_key_exists('d=60', $parMontV)){ - $paiementMont->d60 = $parMontV['d=60']; - } - if (array_key_exists('d=30', $parMontV)){ - $paiementMont->d30 = $parMontV['d=30']; - } - $tabMont[] = $paiementMont; - } - $tabTrim = array(); - foreach($parTrim as $parTrimK => $parTrimV){ - $paiementTrim = new IndiscorePaiementDetail(); - $paiementTrim->id = $parTrimK; - $paiementTrim->nb = $parTrimV['nb']; - if (array_key_exists('d=180', $parTrimV)){ - $paiementTrim->d180 = $parTrimV['d=180']; - } - if (array_key_exists('d=150', $parTrimV)){ - $paiementTrim->d150 = $parTrimV['d=150']; - } - if (array_key_exists('d=120', $parTrimV)){ - $paiementTrim->d120 = $parTrimV['d=120']; - } - if (array_key_exists('d=90', $parTrimV)){ - $paiementTrim->d90 = $parTrimV['d=90']; - } - if (array_key_exists('d=60', $parTrimV)){ - $paiementTrim->d60 = $parTrimV['d=60']; - } - if (array_key_exists('d=30', $parTrimV)){ - $paiementTrim->d30 = $parTrimV['d=30']; - } - $tabTrim[] = $paiementTrim; - } - $paiement = new IndiscorePaiement(); - $paiement->parMont = $tabMont; - $paiement->parTrim = $tabTrim; - $output->paiements = $paiement; - - } elseif ($key=='Notes_Structure') { - - $notesStructure = new IndiscoreNotesStructure(); - $notesStructure->activite = $value['activite']; - $notesStructure->naf4 = $value['naf4']; - $notesStructure->age = $value['age']; - $notesStructure->capital = $value['capital']; - $notesStructure->effectif = $value['effectif']; - $notesStructure->fj = $value['fj']; - $notesStructure->localite = $value['localite']; - $notesStructure->singulier = $value['singulier']; - $output->Notes_Structure = $notesStructure; - - } elseif ($key=='tabBilans') { - - $tabRet = array(); - foreach($value as $bilan) - { - $element = new ListeBilans(); - $element->dateProvPartenaire = $bilan['dateProvPartenaire']; //@todo : date - $element->dateInsert = $bilan['dateInsert']; //@todo : date - $element->typeBilan = $bilan['typeBilan']; - $element->dureeExercice = $bilan['dureeExercice']; - $element->dateExercice = $bilan['dateExercice']; //@todo : date - $element->millesime = $bilan['millesime']; - $element->dateExercicePre = $bilan['dateExercicePre']; //@todo : date - $element->dureeExercicePre = $bilan['dureeExercicePre']; - $element->monnaie = $bilan['monnaie']; - $element->source = $bilan['source']; - $tabRet[] = $element; - } - $output->tabBilans = $tabRet; - - } elseif ($key=='tabBilan') { - - $tabRet = array(); - foreach($value as $bilan){ - $resultBilan = new Bilan(); - $tabPoste = array(); - foreach($bilan as $bilan_key => $bilan_value){ - if(!in_array($bilan_key, array('SIREN', 'DATE_FRAICHE_BILAN', - 'DATE_CLOTURE', 'DATE_CLOTURE_PRE', 'DUREE_MOIS', - 'DUREE_MOIS_PRE', 'MONNAIE', 'CONSOLIDE', 'MONNAIE_ORI', - 'MONNAIE_LIV_UNITE', 'SOURCE', 'devise'))){ - $resultPoste = new BilanPoste(); - $resultPoste->id = $bilan_key; - $resultPoste->val = $bilan_value; - $tabPoste[] = $resultPoste; - } else { - $resultBilan->$bilan_key = $bilan_value; - } - } - $resultBilan->POSTES = $tabPoste; - $tabRet[] = $resultBilan; - } - $output->tabBilan = $tabRet; - - } elseif ($key=='tabInfosNotations') { - - $infosNotation = new IndiscoreInfosNotations(); - $infosNotation->SituationFinanciere = $value['SituationFinanciere']; - $infosNotation->Notation = $value['Notation']; - $infosNotation->ProbabiliteDefaut = $value['ProbabiliteDefaut']; - $output->tabInfosNotations = $infosNotation; - - } elseif ($key=='tabImportExport') { - - $tabRet = array(); - foreach($value as $element){ - $importExport = new IndiscoreImportExport(); - $importExport->importExport = $element['importExport']; - $importExport->annee = $element['annee']; - $importExport->rangNational = $element['rangNational']; - $importExport->deptSiege = $element['deptSiege']; - $tabRet[] = $importExport; - } - $output->tabImportExport = $tabRet; - - } elseif ($key=='tabCommentaires') { - - $tab = array(); - foreach($value as $comment) { - require_once 'i18n/cleanchar.php'; - $tab[] = fixEncoding($comment); - } - $output->tabCommentaires = $tab; - - } elseif ($key=='tabVariables') { - - $tab = $value['CA_Y']; - $tabVar = array(); - if (count($tab)>0) { - foreach($tab as $varName => $varVal){ - $var = new CA_Y(); - $var->id = $varName; - $var->val = $varVal; - $tabVar[] = $var; - } - } - $variables = new IndiscoreVariables(); - $variables->CA_Y = $tabVar; - $output->tabVariables = $variables; - - } elseif ($key=='Bilans') { - - $tab = array(); - foreach($value as $item) - { - $objet = new IndiscoreBilans(); - $objet->Millesime = $item['Millesime']; - $objet->FraisPerso = $item['FraisPerso']; - $objet->CA = $item['CA']; - $objet->EBE = $item['EBE']; - $objet->TxInvest = $item['TxInvest']; - $objet->TxEndett = $item['TxEndett']; - $objet->DettesCT = $item['DettesCT']; - $objet->FraisFi = $item['FraisFi']; - $objet->BFR = $item['BFR']; - $objet->FR = $item['FR']; - $objet->FondsPr = $item['FondsPr']; - $objet->DelaiCli = $item['DelaiCli']; - $objet->DelaiFour = $item['DelaiFour']; - $tab[] = $objet; - } - $output->$key = $tab; - } else { - $output->$key = $value; - } - } - - if ($plus) { - if (empty($ref)) $ref='Indiscore+'; - if (empty($email)) $email=$this->tabInfoUser['email']; - $this->setSurveillance($siren, $email, $ref, 'privileges'); - $this->setSurveillance($siren, $email, $ref, 'score', false, $encours); - if ($this->tabInfoUser['idClient']==89) - $this->setSurveillance($siren, $email, $ref, 'annonces'); - $this->wsLog('indiscore+',$siren); - } else - $this->wsLog('indiscore',$siren); - return $output; - } - - /** - * Evaluation valorsation d'une entreprise - * @param string $siren Siren de l'entreprise - * @param string $nic Nic de l'établissement - * @param integer $niveau Niveau des commentaires - * @return Indiscore - */ - public function getValo($siren, $nic=0, $niveau=2) - { - $this->authenticate(); - $this->permission('indiscore'); - - //Initialisation - $accesDist = true; - if (empty($nic)) { - $nic = 0; - } - if (empty($niveau)) { - $niveau = 2; - } - if (empty($plus)) { - $plus = false; - } - if ( !in_array($niveau, array(0,1,2,3,4,5)) ) { - $niveau = 2; - } - $perm = false; - //@todo : Gestion des droits - /*switch($niveau){ - case 1: $perms = array('indiscore', 'indiscorep'); break; - case 2: $perms = array('indiscore2', 'indiscore2p'); break; - case 3: $perms = array('indiscore3', 'indiscore3p'); break; - } - foreach($perms as $item){ - if ( $this->checkPerm($item) ){ - $perm = true; - break; - } - } - if ($perm === false) { - $this->sendError('0902'); - }*/ - - $tabRet = array(); - debugLog('I',"IndiScore demandée pour $siren en niveau $niveau",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)>9 || (substr($siren,0,9)*1)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $tDeb = microtime(true); - require_once 'Metier/scores/classMScores.php'; - $tabRet = calculIndiScore($siren, $nic, $accesDist, $niveau, false, 'valo'); - $duree = round(microtime(true)-$tDeb,3); - debugLog('W', "indiscore DUREE = $duree s", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $output = new Indiscore(); - foreach($tabRet as $key => $value){ - if ($key=='paiements'){ - $parMont = $value['parMont']; - $parTrim = $value['parTrim']; - $tabMont = array(); - foreach($parMont as $parMontK => $parMontV){ - $paiementMont = new IndiscorePaiementDetail(); - $paiementMont->id = $parMontK; - $paiementMont->nb = $parMontV['nb']; - if (array_key_exists('d=180', $parMontV)){ - $paiementMont->d180 = $parMontV['d=180']; - } - if (array_key_exists('d=150', $parMontV)){ - $paiementMont->d150 = $parMontV['d=150']; - } - if (array_key_exists('d=120', $parMontV)){ - $paiementMont->d120 = $parMontV['d=120']; - } - if (array_key_exists('d=90', $parMontV)){ - $paiementMont->d90 = $parMontV['d=90']; - } - if (array_key_exists('d=60', $parMontV)){ - $paiementMont->d60 = $parMontV['d=60']; - } - if (array_key_exists('d=30', $parMontV)){ - $paiementMont->d30 = $parMontV['d=30']; - } - $tabMont[] = $paiementMont; - } - $tabTrim = array(); - foreach($parTrim as $parTrimK => $parTrimV){ - $paiementTrim = new IndiscorePaiementDetail(); - $paiementTrim->id = $parTrimK; - $paiementTrim->nb = $parTrimV['nb']; - if (array_key_exists('d=180', $parTrimV)){ - $paiementTrim->d180 = $parTrimV['d=180']; - } - if (array_key_exists('d=150', $parTrimV)){ - $paiementTrim->d150 = $parTrimV['d=150']; - } - if (array_key_exists('d=120', $parTrimV)){ - $paiementTrim->d120 = $parTrimV['d=120']; - } - if (array_key_exists('d=90', $parTrimV)){ - $paiementTrim->d90 = $parTrimV['d=90']; - } - if (array_key_exists('d=60', $parTrimV)){ - $paiementTrim->d60 = $parTrimV['d=60']; - } - if (array_key_exists('d=30', $parTrimV)){ - $paiementTrim->d30 = $parTrimV['d=30']; - } - $tabTrim[] = $paiementTrim; - } - $paiement = new IndiscorePaiement(); - $paiement->parMont = $tabMont; - $paiement->parTrim = $tabTrim; - $output->paiements = $paiement; - - } elseif ($key=='Notes_Structure') { - - $notesStructure = new IndiscoreNotesStructure(); - $notesStructure->activite = $value['activite']; - $notesStructure->naf4 = $value['naf4']; - $notesStructure->age = $value['age']; - $notesStructure->capital = $value['capital']; - $notesStructure->effectif = $value['effectif']; - $notesStructure->fj = $value['fj']; - $notesStructure->localite = $value['localite']; - $notesStructure->singulier = $value['singulier']; - $output->Notes_Structure = $notesStructure; - - } elseif ($key=='tabBilans') { - - $tabRet = array(); - foreach($value as $bilan) - { - $element = new ListeBilans(); - $element->dateProvPartenaire = $bilan['dateProvPartenaire']; //@todo : date - $element->dateInsert = $bilan['dateInsert']; //@todo : date - $element->typeBilan = $bilan['typeBilan']; - $element->dureeExercice = $bilan['dureeExercice']; - $element->dateExercice = $bilan['dateExercice']; //@todo : date - $element->millesime = $bilan['millesime']; - $element->dateExercicePre = $bilan['dateExercicePre']; //@todo : date - $element->dureeExercicePre = $bilan['dureeExercicePre']; - $element->monnaie = $bilan['monnaie']; - $element->source = $bilan['source']; - $tabRet[] = $element; - } - $output->tabBilans = $tabRet; - - } elseif ($key=='tabBilan') { - - $tabRet = array(); - foreach($value as $bilan){ - $resultBilan = new Bilan(); - $tabPoste = array(); - foreach($bilan as $bilan_key => $bilan_value){ - if(!in_array($bilan_key, array('SIREN', 'DATE_FRAICHE_BILAN', - 'DATE_CLOTURE', 'DATE_CLOTURE_PRE', 'DUREE_MOIS', - 'DUREE_MOIS_PRE', 'MONNAIE', 'CONSOLIDE', 'MONNAIE_ORI', - 'MONNAIE_LIV_UNITE', 'SOURCE', 'devise'))){ - $resultPoste = new BilanPoste(); - $resultPoste->id = $bilan_key; - $resultPoste->val = $bilan_value; - $tabPoste[] = $resultPoste; - } else { - $resultBilan->$bilan_key = $bilan_value; - } - } - $resultBilan->POSTES = $tabPoste; - $tabRet[] = $resultBilan; - } - $output->tabBilan = $tabRet; - - } elseif ($key=='tabInfosNotations') { - - $infosNotation = new IndiscoreInfosNotations(); - $infosNotation->SituationFinanciere = $value['SituationFinanciere']; - $infosNotation->Notation = $value['Notation']; - $infosNotation->ProbabiliteDefaut = $value['ProbabiliteDefaut']; - $output->tabInfosNotations = $infosNotation; - - } elseif ($key=='tabImportExport') { - - $tabRet = array(); - foreach($value as $element){ - $importExport = new IndiscoreImportExport(); - $importExport->importExport = $element['importExport']; - $importExport->annee = $element['annee']; - $importExport->rangNational = $element['rangNational']; - $importExport->deptSiege = $element['deptSiege']; - $tabRet[] = $importExport; - } - $output->tabImportExport = $tabRet; - - } elseif ($key=='tabCommentaires') { - - $tab = array(); - foreach($value as $comment) { - require_once 'i18n/cleanchar.php'; - $tab[] = fixEncoding($comment); - } - $output->tabCommentaires = $tab; - - } elseif ($key=='tabVariables') { - - $tab = $value['CA_Y']; - $tabVar = array(); - if (count($tab)>0) { - foreach($tab as $varName => $varVal){ - $var = new CA_Y(); - $var->id = $varName; - $var->val = $varVal; - $tabVar[] = $var; - } - } - $variables = new IndiscoreVariables(); - $variables->CA_Y = $tabVar; - $output->tabVariables = $variables; - - } elseif ($key=='Bilans') { - - $tab = array(); - foreach($value as $item) - { - $objet = new IndiscoreBilans(); - $objet->Millesime = $item['Millesime']; - $objet->FraisPerso = $item['FraisPerso']; - $objet->CA = $item['CA']; - $objet->EBE = $item['EBE']; - $objet->TxInvest = $item['TxInvest']; - $objet->TxEndett = $item['TxEndett']; - $objet->DettesCT = $item['DettesCT']; - $objet->FraisFi = $item['FraisFi']; - $objet->BFR = $item['BFR']; - $objet->FR = $item['FR']; - $objet->FondsPr = $item['FondsPr']; - $objet->DelaiCli = $item['DelaiCli']; - $objet->DelaiFour = $item['DelaiFour']; - $tab[] = $objet; - } - $output->$key = $tab; - } else { - $output->$key = $value; - } - } - - $this->wsLog('indiscore',$siren); - return $output; - } - - /** - * Liste de tous les évènements enregistrés à l'INSEE pour une entreprise - * @param string $siren Siren de l'entreprise - * @param string $nic - * @param integer $position - * @param integer $nbRep - * @return InseeReturn - **/ - public function getListeEvenements($siren, $nic=0, $position=0, $nbRep=1000) - { - $this->authenticate(); - $this->permission('eveninsee'); - - //Initialisation - if (empty($nic)) { $nic = 0; } - if (empty($position)) { $position = 0; } - if (empty($nbRep) || $nbRep>1000) { $nbRep = 1000; } - - debugLog('I',"Liste des évènements pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - - //@todo : compter la liste des événéments pour pouvoir faire la pagination - - $evens = $iInsee->getEvenements($siren, $nic, $position, $nbRep); - $tabRet = array(); - if (count($evens)>0) { - foreach ($evens as $key => $row) { - $date[$key] = $row['dateMAJ']; - } - array_multisort($date, SORT_DESC, $evens); - foreach ($evens as $nb=>$even) { - $iEven = new InseeEven(); - $iEven->Nic = $even['nic']; - $iEven->Siege = $even['siege']; - $iEven->SiretAss = $even['siretAssocie']; - $iEven->TypeSiretAss = $even['typeSiretAss']; - $iEven->EvenCode = $even['codeEven']; - $iEven->EvenLib = $even['libEven']; - $iEven->EvenLibDet = $even['libEvenDet']; - $iEven->EvenDate = $even['dateEven']; //@todo : date - $iEven->DateInfo = $even['dateMAJ']; //@todo : date - $tabRet[] = $iEven; - } - } - - debugLog('I', 'Nb évènements retournés = '. count($tabRet), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('evenements',$siren); - $output = new InseeReturn(); - $output->nbReponses = count($tabRet); // @todo : retrouver le nombre total d'évenements - $output->result = $tabRet; - return $output; - } - - - /** - * Recherche - * @param EntrepriseCriteres $criteres - * @param integer $position Position de parcours des résultats retournées (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées lors d'une requête (20 par défaut) - * @param integer $maxRep Nombre de réponses maximum pouvant être retournées lors d'une requête (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (false par défaut) - * @param boolean $avecSiren Seulement les entités sirénées (false par défaut) - * @return SearchEntrepriseReturn - */ - public function searchEntreprise($criteres, $position = 0, $nbRep = 20, $maxRep = 200, $pertinence = false, $avecSiren = false) - { - $this->authenticate(); - - if (empty($position)) { $position = 0;} - if (empty($nbRep)) { $nbRep = 20; } - if (empty($maxRep)) { $maxRep = 200; } - - require_once 'i18n/cleanchar.php'; - - $entCriteres = new EntrepriseCriteres(); - $entCriteres = $criteres; - $identifiant = $entCriteres->identifiant; - $typeId = ''; - - //Detection autour de l'identifiant - if ($identifiant!='') { - $len = strlen($identifiant); - //Numéro WALDEC - if (strtoupper(substr($identifiant,0,1))=='W') { - $typeId = 'W'; - //Code ISIN - } elseif ($len==12){ - $typeId = 'I'; - //TVA Intracommunautaire - } elseif (in_array(substr($identifiant,0,2), - array('AT','BE','BG','CY','CZ','DE','DK','EE','EL','ES', - 'FI','GB','HU','IE','IT','LT','LU','LV','MT','NL','PL', - 'PT','RO','SE','SI','SK'))){ - //"La recherche par numéro de TVA n'est pas encore possible sur ce pays !"; - //Pour la france - } elseif (substr($identifiant,0,2)=='FR') { - $typeId = 'S'; - if ($len==13) $identifiant = substr($identifiant,4,9); - else $identifiant = ''; - //Numéro RC - } elseif (preg_match('/A|B|C|D/i', $identifiant)) { - $typeId = 'R'; - //Siren normal on enleve tout ce qui n'est pas un chiffre - } else { - $typeId = 'S'; - } - } - - $adresse = trim($entCriteres->adresse); - - //Détection Tel/Fax uniquement - if ( empty($typeId) - && empty($entCriteres->raisonSociale) - && empty($adresse) - && empty($entCriteres->codePostal) - && empty($entCriteres->ville) - && empty($entCriteres->naf) ){ - $typeId = 'TEL'; - } - - if (in_array($typeId, array('R', 'W', 'I'))){ - - $O = $this->searchAutreId( - $typeId, - $identifiant, - $entCriteres->codePostal, - $entCriteres->actif, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep - ); - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } elseif ($typeId == 'S'){ - - $O = $this->searchSiren( - $identifiant, - $entCriteres->codePostal, - $entCriteres->actif, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - $output->info = $O->info; - return $output; - - } elseif ($typeId == 'TEL'){ - - $O = $this->searchTelFax( - $entCriteres->telFax, - $entCriteres->actif, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } else { - - $O = $this->searchNomAdr( - cleanstring($entCriteres->raisonSociale), - cleanstring($entCriteres->adresse), - $entCriteres->codePostal, - cleanstring($entCriteres->ville), - empty($entCriteres->siege) ? false : $entCriteres->siege, - $entCriteres->actif, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - empty($pertinence) ? false : $pertinence, - empty($avecSiren) ? false : $avecSiren, - $entCriteres->naf - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - } - } - - /** - * Recherche d'entreprise par dirigeants - * @param DirigeantCriteres $criteres - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchDirReturn - */ - public function searchDir($criteres, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - $nom = $criteres->nom; - $prenom = $criteres->prenom; - $dateNaiss = $criteres->dateNaiss; - $lieuNaiss = $criteres->lieuNaiss; - $pertinence = $criteres->pertinence; - - debugLog('I',"Recherche Dirigeant de $nom, $prenom, $dateNaiss, $lieuNaiss (Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($prenom)) $prenom = ''; - if (empty($dateNaiss)) $dateNaiss = ''; - if (empty($lieuNaiss)) $lieuNaiss = ''; - if (empty($pertinence)) $pertinence = false; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - - $iInsee = new MInsee(); - $etabs = $iInsee->rechercheDir($nom, $prenom, '', $dateNaiss, $lieuNaiss, $deb, $nbRep, $maxRep, $pertinence); - - $tabRet = array(); - foreach ($etabs['reponses'] as $etab) { - $item = new EntrepriseDirItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = $iInsee->getLibelleFJ($etab['FJ']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($iInsee->getLibelleNaf($etab['NafEtab'])); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($iInsee->getLibelleNaf($etab['NafEnt'])); - - // Dirigeant - $item->DirRs = prepareString($etab['DirRs']); - $item->DirNom = prepareString($etab['DirNom']); - $item->DirPrenom = prepareString($etab['DirPrenom']); - $item->DirNomUsage = prepareString($etab['DirNomUsage']); - $item->DirDateEffet = $etab['DirDateEffet']; - $item->DirFonction = prepareString($etab['DirFonction']); - $item->DirDepart = $etab['DirDepart']; - $tabRet[] = $item; - } - - if ($etabs['nbReponses']==0){ - debugLog('W', "Aucun résultat pour cette recherche !", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - } - - $search = new SearchDirReturn(); - $search->nbReponses = $etabs['nbReponses']; - $search->nbReponsesTotal = $etabs['nbReponsesTotal']; - $search->result = $tabRet; - return $search; - } - - /** - * Recherche d'entreprise ou d'établissement par un autre Identifiant - * - * @param string $typeId I=Code Isin, W=N°Waldec (Associations) ou R=N°RC (Registre Greffe) - * @param string $identifiant Identifiant recherché - * @param integer $dep Département - * @param integer $actif 0 : Filtre sur les inactfis, 1: Filtre sur les actifs, 2 : Tous (defaut) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchAutreId($typeId, $identifiant, $dep=0, $actif=2, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - if (empty($dep)) $dep = 0; - if (!in_array($actif, array(0,1,2))) $actif = 2; - - $typeId = substr(trim(strtoupper($typeId)),0,1); - - if ($typeId!='I' && $typeId!='W' && $typeId!='R') { - debugLog('I',"Type d'identifiant $typeId inexistant",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1021'); - } - $tabRet = array(); - debugLog('I',"Recherche par identifiant $typeId de $identifiantavec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if ($typeId=='W' || $typeId=='R') - { - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('AUTRE', $identifiant, $deb, $nbRep, $maxRep, $dep, $actif); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } else { - $iBourse = new MBourse($siren); - $siren = $iBourse->getCodeSiren($identifiant); - return $this->searchSiren($siren, $dep, $actif, $deb, $nbRep, $maxRep); - } - } - - - /** - * Recherche d'entreprise ou d'établissement par leur TEL FAX - * - * @param string $telFax Téléphone ou fax de l'établissement (ex: 0175438010) - * @param integer $actif 0 : Filtre sur les inactfis, 1: Filtre sur les actifs, 2 : Tous (defaut) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchTelFax($telFax, $actif=2, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - if (!in_array($actif, array(0,1,2))) $actif = 2; - - $tabRet = array(); - debugLog('I',"Recherche par Tel/Fax de $telFax avec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - //$assocs=$this->iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $nbRep, $pertinence); - /** @todo A FAIRE **/ - if (strlen($telFax)<10 || strlen($telFax)>14) { - debugLog('W', "Tel/Fax $telFax incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1011'); - } - - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('TEL', $telFax, $deb, $nbRep, $maxRep, 0, $actif); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } - - - /** - * Recherche entreprise par nom et adresse - * @param string $raisonSociale Raison Sociale ou Enseigne ou Sigle - * @param string $adresse Adresse de l'entreprise, du type : 3 rue des Plantes - * @param string $codePostal Code postal (ex: 75014) - * @param string $ville Ville - * @param boolean $siege Limitation de la recherche aux sièges (si true) - * @param integer $actif 0 : Filtre sur les inactfis, 1: Filtre sur les actifs, 2 : Tous (defaut) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (si true) - * @param boolean $avecSiren Ne proposer que les entités sirénées - * @param string $ape_etab - * @return SearchReturn - */ - public function searchNomAdr($raisonSociale, $adresse='', $codePostal='', $ville='', $siege=false, $actif=2, $deb=0, $nbRep=20, $maxRep=200, $pertinence=false, $avecSiren=false, $ape_etab='') - { - $this->authenticate(); - - debugLog('I',"Recherche Entreprise de $raisonSociale, $adresse, $codePostal $ville (Siège=$siege / Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($adresse)) $adresse = ''; - if (empty($codePostal)) $codePostal = ''; - if (empty($ville)) $ville = ''; - if (empty($siege)) $siege = false; - if (!in_array($actif, array(0,1,2))) $actif = 2; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($pertinence)) $pertinence = false; - if (empty($avecSiren)) $avecSiren = false; - if (empty($ape_etab)) $ape_etab = ''; - - $iInsee = new MInsee(); - $etabs = $iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren, $ape_etab); - - $result = new SearchReturn(); - $tabRet = array(); - if (count($etabs['reponses'])) { - foreach ($etabs['reponses'] as $etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = strtr($etab['Nom'],'/*',' '); - $reponse->Nom2 = $etab['Nom2']; - $reponse->Sigle = $etab['Sigle']; - $reponse->Enseigne = $etab['Enseigne']; - $reponse->Adresse = $etab['Adresse']; - $reponse->Adresse2 = $etab['Adresse2']; - $reponse->CP = $etab['CP']; - $reponse->Ville = $etab['Ville']; - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = $iInsee->getLibelleFJ($etab['FJ']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = $iInsee->getLibelleNaf($etab['NafEtab']); // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = $iInsee->getLibelleNaf($etab['NafEnt']); - - $tabRet[] = $reponse; - } - } - - $fp=fopen(LOG_PATH.'/recherches.log','a'); - - $siretTrouve = 0; - if ($etabs['nbReponses']==0) { - - $str="NbRep=0, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - fwrite($fp, $str.EOL); - fclose($fp); - debugLog('I', "rechercheEtab : AUCUN RESULTAT, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = count($tabRet); - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - - return $result; - - } - - if ($etabs['nbReponses']==1) $siretTrouve=$etabs['reponses'][0]['Siret']; - $str="NbRep=".$etabs['nbReponses'].", S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab, ($deb, $nbRep, $maxRep, $siege, $actif, $pertinence, $avecSiren), SiretTrouve=$siretTrouve"; - fwrite($fp, $str.EOL); - fclose($fp); - debugLog('I', "rechercheEtab : ".$etabs['nbReponses']." RESULTATS, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = $etabs['nbReponses']; - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - return $result; - } - - /** - * Recherche d'entreprise ou d'établissement par leur identifiant SIREN ou SIRET - * @param string $siret Siren ou Siret de l'entreprise ou de l'établissement sur 9 ou 14 chiffres significatifs - * @param integer $dep Département - * @param integer $actif 0 : Filtre sur les inactfis, 1: Filtre sur les actifs, 2 : Tous (defaut) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchSiren($siret, $dep=0, $actif=2, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - debugLog('I',"Recherche par Siret de $siret (dep=$dep) avec un maximum de $maxRep réponses pour la tranche $deb à $nbRep",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ( strlen($siret)!=14 && strlen($siret)!=9 ){ - debugLog('W', "Siren/Siret $siret incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($dep)) $dep = 0; - - if (!in_array($actif, array(0,1,2))) $actif = 2; - if ( $actif==2 ) $actif = -1; - - $nbReponsesTotal = $nbReponses = 0; - - $siren = substr($siret,0,9); - if (strlen($siret)==14) $nic = substr($siret,9,5); - elseif (strlen($siret)== 9) $nic = ''; - - $iInsee = new MInsee(); - - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep, $dep, $actif); - if ( count($rep['reponses'])==0 && $dep>0 ) { - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep, 0, $actif); - } - $etabs = $rep['reponses']; - $tabRet = array(); - if (count($etabs)>0){ - foreach ($etabs as $nb=>$etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = prepareString($etab['FJLib']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = $etab['NafEtabLib']; // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = $etab['NafEntLib']; - $tabRet[] = $reponse; - } - } - $nbReponsesTotal = $rep['nbReponsesTotal']; - $nbReponses = $rep['nbReponses']; - - /** Si le siren est valide, on part chez Infogreffe **/ - if (count($tabRet)==0 && $iInsee->valideSiren($siren)) { - $iGeffes = new MGreffes(); - $etab = $iGeffes->getIdentite($siren); - if ($etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString($etab['Nom']); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = utf8_encode(prepareString(utf8_decode($etab['FJLib']))); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; - $reponse->NafEtabLib = $etab['NafEtabLib']; - $reponse->NafEnt = $etab['NafEnt']; - $reponse->NafEntLib = $etab['NafEntLib']; - - $tabRet[] = $reponse; - $nbReponses = 1; - $nbReponsesTotal = 1; - - } else { - $iDb = new WDB(); - $iDb->insert('siren_inexistants', - array( 'siren'=>$siren, - 'nic'=>$nic, - 'dep'=>$dep, - 'login'=>$this->tabInfoUser['login'], - 'client'=>$this->tabInfoUser['idClient'], - 'dateInsert'=>date('YmdHis'))); - $nbReponses = 0; - $nbReponsesTotal = 0; - } - } - - $output = new SearchReturn(); - $output->nbReponses = $nbReponses; - $output->nbReponsesTotal = $nbReponsesTotal; - $output->result = $tabRet; - $output->info = $rep['info']; - return $output; - } - - - - - /** - * Retourne la fiche d'identité simplifié d'une entreprise avec son numéro de TVA. - * - * @param string $siren Identifiant Siren de l'entreprise - * @return TvaReturn - */ - public function getTVA($siren) - { - $this->authenticate(); - - //Initialisation - $siren = trim($siren); - debugLog('I',"TVA demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren); - debugLog('I', "Après getIdentiteEntreprise($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($entrep)) - { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - debugLog('I', "Avant MTva($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iTva = new MTva($siren); - if ($iTva->vatDefined) $tva=$iTva->vatNumber; - else $tva='N/A'; - debugLog('I', "Après MTva($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $output = new TvaReturn(); - $output->id = $entrep['id']; - $output->AutreId = $entrep['AutreId']; - $output->Nom = $entrep['Nom']; - $output->Sigle = $entrep['Sigle']; - $output->Enseigne = $entrep['Enseigne']; - $output->Adresse = $entrep['Adresse']; - $output->Adresse2 = $entrep['Adresse2']; - $output->CP = $entrep['CP']; - $output->Ville = $entrep['Ville']; - $output->Siren = $entrep['Siren']; - $output->Tva = $tva; - - debugLog('I', "TVA retournée = $tva (".$entrep['Nom'].')', __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('tva',$siren); - - return $output; - } - - /** - * Retourne tout ou patie des informations règlementées sur l'entreprise - * - * @param string $siren SIREN de l'entreprise - * @param mixed $id Id du communiqué - * @return InfosRegReturn - */ - public function getInfosReg( $siren, $id = false ) - { - $this->authenticate(); - $this->permission('infosreg'); - - //Initialisation - if (empty($id)) $id = false; - $tabRet = array(); - $siren = substr($siren,0,9); - - debugLog('I',"Infos règlementées demandées pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - $iBourse = new MBourse($siren); - $anns = $iBourse->getInfosReg($siren, $id); - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if ( empty($anns) ){ - debugLog('W', "Aucune info règlementée pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1030'); - } - - foreach ($anns as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if ($id == false) { - $infos = new InfosReg(); - $infos->id = $ann['id']; - $infos->source = $ann['source']; - $infos->DateParution = $ann['DateParution']; //@todo : date - $infos->raisonSociale = $ann['raisonSociale']; - $infos->titre = $ann['titre']; - $infos->pj = $ann['pj']; - $infos->url = $ann['url']; - $infos->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $tabRet[] = $infos; - } else { - $infos = new InfosReg(); - $infos->id = $ann['id']; - $infos->source = $ann['source']; - $infos->DateParution = $ann['DateParution']; //@todo : date - $infos->raisonSociale = $ann['raisonSociale']; - $infos->titre = $ann['titre']; - $infos->communique = $ann['communique']; - $infos->communiqueHtml = $ann['communiqueHtml']; - $infos->pj = $ann['pj']; - $infos->url = $ann['url']; - $infos->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $tabRet[] = $infos; - } - } - debugLog('I', 'Nb infos retournés = '. count($anns), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('infosreg',$siren,$id); - $output = new InfosRegReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne les informations boursières de l'entreprise - * @param string $siren SIREN de l'entreprise - * @return InfosBourse - */ - public function getInfosBourse($siren) - { - $this->authenticate(); - $this->permission('bourse'); - - //Initialisation - $error = new ErrorType(); - debugLog('I',"Infos bourse demandées pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $siren = substr($siren,0,9); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($bourse)) { - debugLog('W', "Aucune info bourse pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1030'); - } - - $result = new InfosBourse(); - $result->Siren = $bourse['siren']; - $result->RaisonSociale = $bourse['raisonSociale']; - $result->Adresse = $bourse['adresse']; - $result->Effectif = $bourse['effectif']; - $result->CodeSicovam = $bourse['code_sicovam']; - $result->CodeMnemo = $bourse['code_mnemo']; - $result->CodeBloomberg = $bourse['code_bloomberg']; - $result->CodeDatastream = $bourse['code_datastream']; - $result->Isin = $bourse['code_isin']; - $result->CodeRic = $bourse['code_ric']; - $result->DateIntroduction = $bourse['dateIntroduction']; //@todo : date - $result->DateDerAG = $bourse['dateDerAG']; //@todo : date - $result->DateRadiation = $bourse['dateRadiation']; //@todo : date - $result->AutreIsin = $bourse['autre_isin']; - $result->EligibleSRD = $bourse['eligibleSRD']; - $result->EligiblePEA = $bourse['eligiblePEA']; - $result->Tel = $bourse['tel1']; - $result->Tel2 = $bourse['tel2']; - $result->Fax = $bourse['fax1']; - $result->Fax2 = $bourse['fax2']; - $result->Web = $bourse['web']; - $result->Mail = $bourse['mail']; - - $result->Marche = $bourse['marche']; - $result->Description = $bourse['description']; - $result->Secteur = $bourse['secteur']; - $result->Activite = $bourse['activite']; - $result->ActiviteDet = $bourse['activiteDet']; - - $result->placeCotation = $bourse['placeCotation']; - $result->nombreTitres = $bourse['nombreTitres']; - $result->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $result->derCoursDate = $bourse['date']; //@todo : date - $result->derCoursCloture = $bourse['close']; - $result->derCoursOuverture = $bourse['open']; - $result->derCoursPlusHaut = $bourse['high']; - $result->derCoursPlusBas = $bourse['low']; - - $result->derCoursVolume = $bourse['volume']; - $result->coursMin = $bourse['coursMin']; - $result->coursMoy = $bourse['coursMoy']; - $result->coursMax = $bourse['coursMax']; - - $this->wsLog('bourse',$siren,$id); - return $result; - } - - /** - * Ajout d'une surveillance - * - * @param string $siret Siret/Siren - * @param string $email Adresse email du client - * @param string $ref Référence de la surveillance - * @param string $source Type de source en surveillance (insee, annonces, bilans, actes, privileges, score, dirigeants, paiements, liens) - * @param boolean $delete Suppression de la ligne - * @param integer $encoursClient Encours demandé par le client - * @return SetSurveillanceReturn - */ - public function setSurveillance($siret, $email, $ref='', $source='annonces', $delete=false, $encoursClient=0) - { - $this->authenticate(); - $source = strtolower($source); - switch ($source) { - case 'insee': - $this->permission('survinsee'); - break; - case 'bilans': - $this->permission('survbilan'); - break; - case 'actes': - $this->permission('survactes'); - break; - case 'privileges': - $this->permission('survpriv'); - break; - case 'dirigeants': - $this->permission('survdirigeants'); - break; - case 'score': - $this->permission('survscore'); - break; - case 'paiements': - $this->permission('survpaiements'); - break; - case 'liens': - $this->permission('survliens'); - break; - case 'annonces': - default: - $this->permission('survannonce'); - break; - } - - //Initialisation - if (empty($ref)) $ref = ''; - if (empty($delete)) $delete = false; - if (empty($encoursClient)) $encoursClient = false; - $result = false; - $siren = substr($siret,0,9); - $nic = substr($siret,9,5); - if (empty($nic)) { - $nic = '00000'; - } - - debugLog('I',"setSurveillances(siret=$siret, email=$email, ref=$ref, source=$source, delete=$delete)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - switch ($source) { - case 'insee': - case 'annonces': - case 'bilans': - case 'actes': - case 'privileges': - case 'paiements': - case 'liens': - case 'dirigeants': $encoursClient=0; break; - case 'score': $encoursClient=$encoursClient*1; break; - default: $source='annonces'; break; - } - - if ($delete) { - - $tabUpdate = array('dateSuppr'=>date('Y-m-d')); - $result = $iDb->update('surveillances_site', - $tabUpdate, - "source='$source' AND login='$login' AND email='$email' AND siren=$siren AND nic=$nic AND ref='$ref'" - ); - - } else { - - $where = "source='$source' AND login='$login' AND email='$email' AND siren=$siren AND nic=$nic AND ref='$ref'"; - - //Si la donnée existe déjà alors il faut mettre à jour l'encours client - $detect = $iDb->select('surveillances_site', 'siren', $where, false, MYSQL_ASSOC); - if ( count($detect)>0 ) { - - $data = array( - 'encoursClient' => $encoursClient, - ); - $result = $iDb->update('surveillances_site', $data, $where); - - } else { - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren, $nic); - - $data = array( - 'source' => $source, - 'login' => $login, - 'email' => $email, - 'siren' => $siren, - 'nic' => $nic, - 'ref' => $ref, - 'encoursClient' => $encoursClient, - 'rs' => $tabIdentite['Nom'], - 'cp' => $tabIdentite['CP'], - 'ville' => $tabIdentite['Ville'], - 'dateAjout'=>date('Y-m-d'), - 'dateSuppr'=>0, - ); - $result = $iDb->insert('surveillances_site', $data); - } - } - $output = new SetSurveillanceReturn(); - $output->result = $result; - return $output; - } - - /** - * getSurveillances - * @param SurveillancesFiltre $filtre - * @param integer $deb - * @param integer $nbRep - * @return SurveillancesReturn - */ - public function getSurveillances($filtre, $position=0, $nbRep=100) - { - $this->authenticate(); - $this->permission('survliste'); - - //Initialisation - if (empty($position)) $position = 0; - if (empty($nbRep)) $nbRep = 100; - - $error = new ErrorType(); - $tabRet = array(); - $siren = 0; - $login = $this->tabInfoUser['login']; - - $strSiren = ""; - if (!empty($filtre->item) && $filtre->itemMode == 'siren'){ - $siren = substr($filtre->item,0,9); - $nic = substr($filtre->item,9,5); - $strSiren = " AND siren='$siren'"; - } elseif (!empty($filtre->item) && $filtre->itemMode == 'search') { - $strSiren = " AND ( siren='$filtre->item' OR ref='$filtre->item' OR rs='$filtre->item' )"; - } - - //Ordre pour le tri - $triMode = strtoupper(trim($filtre->triMode)); - if ($triMode == 'DESC') { - $triMode = 'DESC'; - } else { - $triMode = 'ASC'; - } - - //Option de tri - $tri = strtolower(trim($filtre->tri)); - switch ($tri) { - case 'ref': $orderBy='ORDER BY ref'; break; - case 'dateAjout': $orderBy='ORDER BY dateAjout'; break; - case 'dateDerEnvoi': $orderBy='ORDER BY dateDerEnvoi'; break; - case 'rs': $orderBy='ORDER BY rs'; break; - case 'cp': $orderBy='ORDER BY cp'; break; - case 'ville': $orderBy='ORDER BY ville'; break; - default: $orderBy='ORDER BY siren'; break; // siren ou vide ou autre - } - $orderBy = $orderBy.' '.$triMode; - - if ($filtre->detail) { - $strSelect = 'source, email, siren, nic, ref, dateAjout, encoursClient, rs, cp, ville, dateDerEnvoi'; - } else { - $strSelect = 'source, email, siren, nic, ref, dateAjout, dateDerEnvoi'; - } - if ($filtre->source!='') $strSource = " AND source='$filtre->source' "; - else $strSource = ''; - - $iDb = new WDB(); - - if ($filtre->source!='') { - - // Il faut compter le nombre de siren au total - $tabTmp = $iDb->select( - 'surveillances_site', - 'count(*) as nb', "login='$login' AND dateSuppr=0 $strSiren $strSource", - false, MYSQL_ASSOC - ); - $nbRepTot = $tabTmp[0]['nb']; - - // Récupération des résultats - $tabTmp = $iDb->select( - 'surveillances_site', $strSelect, - "login='$login' AND dateSuppr=0 $strSiren $strSource $orderBy LIMIT $position,$nbRep", - false, MYSQL_ASSOC - ); - - } else { - - // Il faut compter le nombre de siren au total - $tabTmp = $iDb->select( - 'surveillances_site', - 'siren', "login='$login' AND dateSuppr=0 $strSiren GROUP BY siren", - false, MYSQL_ASSOC - ); - $nbRepTot = count($tabTmp); - - // Récupération des résultats - if ($nbRepTot>0){ - $tabTmp = $iDb->select( - 'surveillances_site', - 'siren', "login='$login' AND dateSuppr=0 $strSiren GROUP BY siren ORDER BY siren LIMIT $position,$nbRep", - false, MYSQL_ASSOC - ); - $listeSiren = array(); - foreach($tabTmp as $i => $v) { - $listeSiren[] = $v['siren']; - } - $tabTmp = $iDb->select( - 'surveillances_site', $strSelect, - "login='$login' AND dateSuppr=0 AND siren IN (".join(',',$listeSiren).") $strSiren ORDER BY siren", - false, MYSQL_ASSOC - ); - } - } - - if (count($tabTmp)>0) - { - //Tri pour avoir le nombre de réponse correct suivant la structure - $listeRetour = array(); - foreach ($tabTmp as $i => $tabSurv) - { - $rs = ''; - $cp = ''; - $ville = ''; - if ($filtre->detail) { - if (trim($tabSurv['rs'])<>'') { - $rs = $tabSurv['rs']; - $cp = $tabSurv['cp']; - $ville = $tabSurv['ville']; - } else { - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($tabSurv['siren'], $tabSurv['nic']); - $rs = $tabIdentite['Nom']; - $cp = $tabIdentite['CP']; - $ville = $tabIdentite['Ville']; - $iDb->update('surveillances_site', array( - 'rs' => $rs, - 'cp' => $cp, - 'ville' => $ville), - "login='$login' AND dateSuppr=0 AND siren=".$tabSurv['siren']." AND nic=".$tabSurv['nic']." $strSource", - false - ); - } - } - - $listeRetour[$tabSurv['siren']][] = array( - 'rs' => $rs, - 'cp' => $cp, - 'ville' => $ville, - 'source' => $tabSurv['source'], - 'email' => $tabSurv['email'], - 'nic' => $tabSurv['nic'], - 'ref' => $tabSurv['ref'], - 'dateAjout' => $tabSurv['dateAjout'], - 'dateDerEnvoi' => $tabSurv['dateDerEnvoi'], - ); - } - - foreach ($listeRetour as $siren => $item) - { - $liste = new Surveillance(); - $liste->siren = $siren; - foreach($item as $s) { - $source = new stdClass(); - $source->rs = $s['rs']; - $source->cp = $s['cp']; - $source->ville = $s['ville']; - $source->source = $s['source']; - $source->email = $s['email']; - $source->nic = $s['nic']; - $source->ref = $s['ref']; - $source->encoursClient = $s['encoursClient']; - $source->dateAjout = $s['dateAjout']; //@todo : date - $source->dateDerEnvoi = $s['dateDerEnvoi']; //@todo : date - $liste->sources[] = $source; - } - $tabRet[] = $liste; - } - } - $output = new SurveillancesReturn(); - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbRepTot; - $output->result = $tabRet; - return $output; - } - - /** - * Recherche par référence client - * @param string $search - * @param integer $position - * @param integer $nbRep - * @return SearchRefClientReturn - */ - public function searchRefClient($search, $position=0, $nbRep=20) - { - $this->authenticate(); - - //Initialisation - if (empty($position)) $position = 0; - if (empty($nbRep)) $nbRep = 20; - - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - $orderBy = " ORDER BY dateAjout ASC"; - - if ($this->tabInfoUser['rechRefType']=='CLI'){ - //On cherche les logins actifs pour le client - $idClient = $this->tabInfoUser['idClient']; - - $where = "u.idClient='$idClient' AND u.actif=1 AND s.dateSuppr=0 AND ( s.siren='$search' OR s.ref='$search' OR s.rs='$search' )"; - // Il faut compter le nombre au total - $tabTmp = $iDb->select('surveillances_site s, utilisateurs u', 'count(*) as nb', $where.$orderBy, false, MYSQL_ASSOC); - $nbRepTot = $tabTmp[0]['nb']; - - // Execution de la requete - $tabTmp = $iDb->select('surveillances_site s, utilisateurs u', - "siren, nic, ref, source, login, email, DATE_FORMAT(dateAjout, '%Y-%m-%d') as dateAjout, DATE_FORMAT(dateDerEnvoi, '%Y-%m-%d') as dateEnvoi", - $where.$orderBy." LIMIT $position,$nbRep", false, MYSQL_ASSOC); - } else { - $where = "login='$login' AND dateSuppr=0 AND ( siren='$search' OR ref='$search' OR rs='$search' )"; - // Il faut compter le nombre au total - $tabTmp = $iDb->select('surveillances_site', 'count(*) as nb', $where.$orderBy, false, MYSQL_ASSOC); - $nbRepTot = $tabTmp[0]['nb']; - - // Execution de la requete - $tabTmp = $iDb->select('surveillances_site', - "siren, nic, ref, source, login, email, DATE_FORMAT(dateAjout, '%Y-%m-%d') as dateAjout, DATE_FORMAT(dateDerEnvoi, '%Y-%m-%d') as dateEnvoi", - $where.$orderBy." LIMIT $position,$nbRep", false, MYSQL_ASSOC); - } - - $tabRet = array(); - if (count($tabTmp)>0) - { - foreach ($tabTmp as $i => $item) - { - $info = new SearchRefClientInfo(); - $info->ref = $item['ref']; - $info->source = $item['source']; - $info->login = $item['login']; - $info->email = $item['email']; - $info->dateAjout = $item['dateAjout']; - $info->dateEnvoi = $item['dateEnvoi']; - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($item['siren'], $item['nic']); - - $reponse = new SearchRefClient(); - $reponse->id = $tabIdentite['id']; - $reponse->Siret = $tabIdentite['Siret']; - $reponse->Siege = $tabIdentite['Siege']; - $reponse->Nom = prepareString(strtr($tabIdentite['Nom'],'/*',' ')); - $reponse->Nom2 = prepareString($tabIdentite['Nom2']); - $reponse->Sigle = prepareString($tabIdentite['Sigle']); - $reponse->Enseigne = prepareString($tabIdentite['Enseigne']); - $reponse->Adresse = prepareString($tabIdentite['Adresse']); - $reponse->Adresse2 = prepareString($tabIdentite['Adresse2']); - $reponse->CP = $tabIdentite['CP']; - $reponse->Ville = prepareString($tabIdentite['Ville']); - $reponse->Tel = $tabIdentite['Tel']; - $reponse->Fax = $tabIdentite['Fax']; - $reponse->FJ = $tabIdentite['FJ']; - $reponse->FJLib = prepareString($tabIdentite['FJ_lib']); - $reponse->Siren = $tabIdentite['Siren']; - $reponse->Nic = $tabIdentite['Nic']; - $reponse->Actif = $tabIdentite['Actif']; - $reponse->NafEtab = $tabIdentite['NafEtab']; - $reponse->NafEtabLib = $tabIdentite['NafEtabLib']; - $reponse->NafEnt = $tabIdentite['NafEnt']; - $reponse->NafEntLib = $tabIdentite['NafEntLib']; - $reponse->Infos = $info; - $tabRet[] = $reponse; - } - } - $output = new SearchRefClientReturn(); - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbRepTot; - $output->result = $tabRet; - return $output; - } - - /** - * Retourne le bilan correspondant au siren, à l'exercice et au formalisme demandé - * - * @param string $siren Siren de l'entreprise - * @param string $millesime Date du bilan au format AAAAMMJJ - * @param string $typeBilan N:Réel Normal, S:Réel Simplifié, C:Consolidé - * @param string $ref Référence S&D obligatoire - * @return Bilan - */ - public function getBilan($siren, $millesime, $typeBilan='N', $ref='') - { - $this->authenticate(); - $this->permission('liasse'); - - //Initialisation - if (empty($typeBilan)) { $typeBilan = 'N'; } - if (empty($ref)) { $ref = ''; } - - debugLog('I',"Bilan $millesime $typeBilan demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $millesime = WDate::dateT('Ymd','d/m/Y',$millesime); - $mBil = new MBilans($siren); - $tabBilan = $mBil->getBilan($millesime, $typeBilan, $ref, true); - - $resultBilan = new Bilan(); - $tabPoste = array(); - foreach($tabBilan as $key => $value){ - if(!in_array($key, array('SIREN', 'DATE_FRAICHE_BILAN', - 'DATE_CLOTURE', 'DATE_CLOTURE_PRE', 'DUREE_MOIS', - 'DUREE_MOIS_PRE', 'MONNAIE', 'CONSOLIDE', 'MONNAIE_ORI', - 'MONNAIE_LIV_UNITE', 'SOURCE', 'devise'))){ - $resultPoste = new BilanPoste(); - $resultPoste->id = $key; - $resultPoste->val = $value; - $tabPoste[] = $resultPoste; - } else { - $resultBilan->$key = $value; - } - } - $this->wsLog('bilan',$siren, $millesime.':'.$typeBilan.':'.$ref); - $resultBilan->POSTES = $tabPoste; - return $resultBilan; - } - - /** - * Retourne la liste des bilans disponible pour une entreprise - * - * @param string $siren Siren de l'entreprise - * @return ListeBilansReturn - */ - public function getListeBilans($siren) - { - $this->authenticate(); - $this->permission('liasse'); - - //Initialisation - $tabRet = array(); - debugLog('I',"Liste des Bilans demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $mBil = new MBilans($siren); - $tabBilans = $mBil->listeBilans(true); - foreach($tabBilans as $bilan) - { - $element = new ListeBilans(); - $element->dateProvPartenaire = $bilan['dateProvPartenaire']; //@todo : date - $element->dateInsert = $bilan['dateInsert']; //@todo : date - $element->typeBilan = $bilan['typeBilan']; - $element->dureeExercice = $bilan['dureeExercice']; - $element->dateExercice = $bilan['dateExercice']; //@todo : date - $element->millesime = $bilan['millesime']; - $element->dateExercicePre = $bilan['dateExercicePre']; //@todo : date - $element->dureeExercicePre = $bilan['dureeExercicePre']; - $element->monnaie = $bilan['monnaie']; - $element->source = $bilan['source']; - $tabRet[] = $element; - } - - debugLog('I', 'Nb Bilans retournés = '. count($tabBilans), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('listebilans', $siren); - $output = new ListeBilansReturn(); - $output->nbReponses = count($tabRet); - $output->result = $tabRet; - return $output; - } - - /** - * Vérifie si un siren existe en base Scores & Décisions - * @param string $siren Siren de l'entité - * @return boolean - */ - public function isSirenExistant($siren) - { - $this->authenticate(); - - //Initialisation - $tabRet = array(); - $siren = trim(substr($siren,0,9)); - $result = false; - debugLog('I',"Siren existant demandée pour siren $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $entrep = $iInsee->sirenExiste($siren); - if (empty($entrep)) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $result = false; - } else { - debugLog('I', "Siren $siren présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $result = true; - } - $this->wsLog('sirenExiste',$siren); - return $result; - } - - /** - * Retourne une annonce en fonction de sa référence - * - * @param string $siren Siren de l'entreprise - * @param string $dateAnnee - * @param integer $numParution - * @param integer $numAnnonce - * @return RechercheAnnonceReturn - */ - public function rechercheAnnonce($source, $dateAnnee, $numParution, $numAnnonce) - { - $this->authenticate(); - $this->permission('histobodacc'); - - //Initialisation - $tabRet = array(); - - debugLog('I',"Annonce précise demandée pour $source, $dateAnnee, $numParution, $numAnnonce",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($dateAnnee)==4) $annee = $dateAnnee; - else $annee = substr($dateAnnee,0,4); - - $iDb = new WDB('jo'); - - switch (strtoupper($source)) - { - case 'BODA': - case 'BODB': - case 'BODC': - $lettre = substr(strtoupper($source),3,1); - if ($annee<2005) { - if ($lettre=='A'){ $numJAL=1; } - elseif ($lettre=='B'){ $numJAL=200; } - else{ break; } - $anneeDeb = $annee.'0101'; - $anneeFin = $annee.'1231'; - $res = $iDb->select('historiques.entrep e, texte t', - "$annee AS Annee_Parution, e.NOBOD AS Num_Parution, e.NOANN AS Num_Annonce, e.NOPAGE AS Num_Page, e.`DATE` AS Date_Parution, e.DEPT AS Departement, e.CODTRI AS Tribunal_Code, 'I' AS typeAnnonce, CONCAT(e.NOANN,' - ',t.annonceTxt) AS annonce", - "e.JAL=$numJAL AND e.NOBOD=$numParution AND e.`DATE` BETWEEN $anneeDeb AND $anneeFin AND e.NOANN=$numAnnonce AND e.ANBASE=t.annonceNum", false, MYSQL_ASSOC); - } else { - $res = $iDb->select('bodacc', - 'Bodacc_Annee_Parution AS Annee_Parution, Bodacc_Num AS Num_Parution, Num_Annonce, Bodacc_Page AS Num_Page, Bodacc_Date_Parution AS Date_Parution, Tribunal_Dept AS Departement, Tribunal_Code, typeAnnonce, annonce', - "Bodacc_Code='$lettre' AND Bodacc_Annee_Parution=$annee AND Bodacc_Num=$numParution AND Num_Annonce=$numAnnonce", false, MYSQL_ASSOC); - } - break; - case 'ASSO': - $res = $iDb->select('asso', - 'YEAR(Date_Parution) AS Annee_Parution, Num_Parution, Num_Annonce, pageDeb AS Num_Page, Date_Parution, Departement, codTribunal AS Tribunal_Code, typeAnnonce, Annonce_Html AS annonce', "Date_Parution BETWEEN '$annee-01-01' AND '$annee-12-31' AND Num_Parution=$annee".sprintf('%04d', $numParution)." AND Num_Annonce=$numAnnonce", - false, MYSQL_ASSOC); - break; - case 'BALO': - $res = $iDb->select('balo', - "YEAR(Date_Parution) AS Annee_Parution, Num_Parution, Num_Affaire AS Num_Annonce, '' AS Num_Page, Date_Parution, '' AS Departement, '' AS Tribunal_Code, 'Insertion' AS typeAnnonce, Annonce_Html AS annonce", "Date_Parution BETWEEN '$annee-01-01' AND '$annee-12-31' AND Num_Parution=$numParution AND Num_Affaire=$numAnnonce", - false, MYSQL_ASSOC); - break; - } - - if (count($res)>0) - { - $iBodacc = new MBodacc(); - foreach ($res as $i => $etab) - { - $annonces = new AnnonceItem(); - $annonces->Annee_Parution = $etab['Annee_Parution']; - $annonces->Num_Parution = $etab['Num_Parution']; - $annonces->Num_Annonce = $etab['Num_Annonce']; - $annonces->Num_Page = $etab['Num_Page']; - $annonces->Date_Parution = $etab['Date_Parution']; //@todo : date - $annonces->Departement = $etab['Departement']; - $annonces->Tribunal_Code = $etab['Tribunal_Code']; - $annonces->Tribunal = $iBodacc->getTribunalNom($etab['Tribunal_Code']); - $annonces->Type_Annonce = $etab['typeAnnonce']; - $annonces->Annonce = strip_tags(strtr( - html_entity_decode($etab['annonce']), - array('>'=>'>','&'=>'&','<'=>'<','’'=>"'") - )); - - $tabRet[] = $annonces; - } - } - $nbTot = count($tabRet); - $output = new RechercheAnnonceReturn(); - $output->criteres = $criteres; - $output->nbReponses = $nbTot; - $output->nbReponsesTotal = $nbTot; - $output->result = $tabRet; - return $output; - } - - /** - * getRatios - * @param string $siren - * @param string $page - * @return RatiosReturn - */ - public function getRatios($siren, $page='ratios') - { - $this->authenticate(); - $this->permission('ratios'); - - global $tva, $tabFormules, $mBil, $tabBilan, $efftr, $tabInfla; - $tabFormules = include APPLICATION_PATH . '/../library/Metier/scores/Variables/CacheTabFormules.php'; - require_once 'Metier/scores/Variables/configMRatios.php'; - - //Initialisation - if (empty($page)) $page = 'ratios'; - $tabRatiosInfos = $tabRatiosSecteurs = $tabBilansR = array(); - $tabRatios2 = $tabRatiosEvol = array(); - $tabRet = array(); - debugLog('I',"Liste des Ratios demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - debugLog('I',"Liste des Ratios demandée pour $siren avant getIdentiteEntreprise",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteEntreprise($siren,0,0,false,false); - debugLog('I',"Liste des Ratios demandée pour $siren après getIdentiteEntreprise",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $naf = $tabIdentite['NafEnt']; - $nafLib = $tabIdentite['NafEntLib']; - $efftr = $tabIdentite['Effectif']*1; - $fj = $tabIdentite['FJ']; - - $mBil = new MBilans($siren); - $tabBilans = $mBil->listeBilans(true); - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getRatios sur $siren", print_r($tabBilans, true)); - $nbBilans = count($tabBilans); - $tabBilan = $tabBil = array(); - if ($nbBilans>0){ - $tabRatios = calculRatios($tabBilans, $tabIdentite, true); - } - $nbRatios = count($tabRatios); - debugLog('I',"Liste des Ratios demandée pour $siren après calculRatios ($nbRatios)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - /** Tableau d'infos sur les formules **/ - $tabBorneMin = $tabBorneMax = array(); - foreach ($tabFormules as $formule) { - $id = $formule['id']*1; - $libelle = $formule['libelle']; - $unite = $formule['unite']; - $commentaires = $formule['commentaires']; - $tabFormulesInfos[$id] = $formule; //Pour la gestion des unités des ratios secteur - $ratiosInfos = new RatiosInfos(); - $ratiosInfos->id = 'r'.$id; - $ratiosInfos->libelle = $formule['libelle']; - $ratiosInfos->unite = $formule['unite']; - $ratiosInfos->commentaires = $formule['commentaires']; - $tabRatiosInfos[] = $ratiosInfos; - $tabBorneMin[$id] = $formule['borneMin']; - $tabBorneMax[$id] = $formule['borneMax']; - } - - $tabAnnees = array(); - foreach ($tabRatios as $i=>$R) { - - //Informations sur le bilan - $bilansInfos = new RatiosBilansInfos(); - $bilansInfos->dateCloture = $tabBilan[$i]['DATE_CLOTURE']; //@todo : date - $bilansInfos->duree = $tabBilan[$i]['DUREE_MOIS']; - $bilansInfos->devise = $tabBilan[$i]['MONNAIE']; - $bilansInfos->typeBilan = $tabBilan[$i]['CONSOLIDE']; - $bilansInfos->unite = 'U'; - if ( substr($tabBilan[$i]['DATE_CLOTURE'],0,4)>1900 ){ - $tabAnnees[$i]=substr($tabBilan[$i]['DATE_CLOTURE'],0,4); - } - - $tabRatiosEntrep = array(); - $tabRatiosEntrepEvol = array(); - foreach ( $R as $Ridx=>$Rmont ){ - - if ($Rmont<>'NS') { - if ( $tabBorneMin[$Ridx]<>'' && $Rmont<$tabBorneMin[$Ridx] ){ - $Rmont='<'.$tabBorneMin[$Ridx]; - } elseif ( $tabBorneMax[$Ridx]<>'' && $Rmont>$tabBorneMax[$Ridx] ){ - $Rmont='>'.$tabBorneMax[$Ridx]; - } - } - - // RatiosEntrep - $ratiosEntrep = new Ratios(); - if (substr($Rmont,0,1)=='N' || substr($Rmont,0,1)=='<' || substr($Rmont,0,1)=='>'){ - $ratiosEntrep->id = 'r'.$Ridx; - $ratiosEntrep->val = $Rmont; - } else { - $ratiosEntrep->id = 'r'.$Ridx; - $ratiosEntrep->val = round($Rmont,2); - } - $tabRatiosEntrep[] = $ratiosEntrep; - - if (($tabBilan[$i]['CONSOLIDE']=='S' && isset($tabRatios[$i+1])&&($tabBilan[$i+1]['CONSOLIDE']=='S'||($tabBilan[$i+1]['CONSOLIDE']=='N'&&$tabBilan[$i+1]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) || - ($tabBilan[$i]['CONSOLIDE']=='N'&&isset($tabRatios[$i+1])&&($tabBilan[$i+1]['CONSOLIDE']=='N'||($tabBilan[$i+1]['CONSOLIDE']=='S'&&$tabBilan[$i+1]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) - ) - $Rmont=(($R[$Ridx]-$tabRatios[$i+1][$Ridx])*100)/abs($tabRatios[$i+1][$Ridx]); - elseif ( ($tabBilan[$i]['CONSOLIDE']=='S'&&isset($tabRatios[$i+1])&&($tabBilan[$i+2]['CONSOLIDE']=='S'||($tabBilan[$i+2]['CONSOLIDE']=='N'&&$tabBilan[$i+2]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) - || ($tabBilan[$i]['CONSOLIDE']=='N'&&isset($tabRatios[$i+1])&&($tabBilan[$i+2]['CONSOLIDE']=='N'||($tabBilan[$i+2]['CONSOLIDE']=='S'&&$tabBilan[$i+2]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']))) - ) - $Rmont=(($R[$Ridx]-$tabRatios[$i+2][$Ridx])*100)/abs($tabRatios[$i+2][$Ridx]); - else - $Rmont='NS'; - - // RatiosEntrepEvol - $ratiosEntrepEvol = new Ratios(); - if ($Rmont=='NS' || $Rmont<-800 || $Rmont>800){ - $ratiosEntrepEvol->id = 'r'.$Ridx; - $ratiosEntrepEvol->val = 'NS'; - } else { - $ratiosEntrepEvol->id = 'r'.$Ridx; - $ratiosEntrepEvol->val = number_format($Rmont,2,',',' '); - } - $tabRatiosEntrepEvol[] = $ratiosEntrepEvol; - } - $bilansInfos->RatiosEntrep = $tabRatiosEntrep; - $bilansInfos->RatiosEntrepEvol = $tabRatiosEntrepEvol; - $tabBilansR[] = $bilansInfos; - } - - debugLog('I',"Liste des Ratios demandée pour $siren après EVOLUTION",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - // Tableau des ratios secteurs - - if (strlen($naf)>4) $strNaf = " AND naf5='$naf' "; - else $strNaf = " AND naf4='$naf' "; - $strAnnees = implode(',', $tabAnnees); - - $tabRatiosSecteurs = array(); - - $tabAnnees = array_unique($tabAnnees); - - if ( count($tabAnnees)>0 ) - { - $iDb = new WDB('jo'); - $tabTmp = $iDb->select('ratios_secteurs', - 'annee, naf5, naf4, id, (montant/nombre) AS ratio, nombre', - "1 $strNaf AND annee IN ($strAnnees) ORDER BY annee DESC, id ASC", - false, MYSQL_ASSOC); - - $nbRatiosSec = 0; - foreach($tabAnnees as $annee) - { - $ratiosSecteur = new RatiosSecteur(); - $ratiosSecteur->annee = $annee; - foreach ($tabTmp as $tmp) - { - if ($tmp['annee']== $annee) - { - $Ridx = $tmp['id']; - if ($tmp['nombre']>$nbRatiosSec){ - $nbRatiosSec = $tmp['nombre']; - } - - $unite = $tabFormulesInfos[$Ridx]['unite']; - if ($unite=='EUR'){ - $montant = round($tmp['ratio']*1000); - } else { - $montant = round($tmp['ratio']); - } - if ($tabBorneMin[$Ridx]<>'' && $montant<$tabBorneMin[$Ridx]){ - $montant='<'.$tabBorneMin[$Ridx]; - } elseif ($tabBorneMax[$Ridx]<>'' && $montant>$tabBorneMax[$Ridx]){ - $montant='>'.$tabBorneMax[$Ridx]; - } - - $ratiosSecteurListe = new Ratios(); - if (substr($montant,0,1)=='N' || substr($montant,0,1)=='<' || substr($montant,0,1)=='>'){ - $ratiosSecteurListe->id = 'r'.$Ridx; - $ratiosSecteurListe->val = $montant; - } else { - $ratiosSecteurListe->id = 'r'.$Ridx; - $ratiosSecteurListe->val = round($montant,2); - } - $ratiosSecteur->liste[] = $ratiosSecteurListe; - } - } - $tabRatiosSecteurs[] = $ratiosSecteur; - } - } - - //$tabRatiosSecteurs=array(count($tabTmp), "1 $strNaf AND annee IN ($strAnnees) ORDER BY annee DESC, id ASC"); - - $output = new RatiosReturn(); - $output->Nom = $tabIdentite['Nom']; - $output->NafEnt = $tabIdentite['NafEnt']; - $output->NafEntLib = $tabIdentite['NafEntLib']; - $output->FJ = $fj; - $output->FJ_lib = $tabIdentite['FJ_lib']; - $output->Siren = $siren; - $output->NbEntNaf = $nbRatiosSec; - $output->BilansInfos = $tabBilansR; - $output->RatiosInfos = $tabRatiosInfos; - $output->RatiosSecteur = $tabRatiosSecteurs; - - debugLog('I',"Liste des Ratios demandée pour $siren RETURN",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->wsLog($page, $siren); - return $output; - - } - - /** - * getRapport - * @param string $siren Siren de l'entreprise - * @param integer $niveau Niveau du rapport 1, 2 ou 3 - * @param integer $id Identifiant interne S&D de l'entreprise - * @param boolean $plus Si true, mise en surveillance privilèges - * @param string $ref Si $plus=true, référence facultative de la mise en Surveillance - * @param integer $encours Si $plus=true, encours facultatif Demandé par le client lors de la mise en Surveillance - * @param string $email Si $plus=true, email facultatif pour le suivi - * @return Rapport - */ - public function getRapport($siren, $niveau=3, $id=0, $plus=false, $ref='', $encours=0, $email='') - { - $this->authenticate(); - if (empty($niveau)) $niveau = 3; - if (empty($id)) $id = 0; - $result = new Rapport(); - $filtre = 0; - $idAnn = 0; - - //@todo : Gestion des droits - $perm = false; - switch($niveau){ - case 1: $perms = array('indiscore', 'indiscorep'); break; - case 2: $perms = array('indiscore2', 'indiscore2p'); break; - case 3: $perms = array('indiscore3', 'indiscore3p'); break; - } - foreach($perms as $item){ - if ( $this->checkPerm($item) ){ - $perm = true; - break; - } - } - if ($perm === false) { - $this->sendError('0902'); - } - - $accesDist=true; - $nivComment=2; - if ($niveau==1){ - $result->Indiscore = $this->getIndiScore($siren, 0, $nivComment, $plus, $ref, $encours, $email); - } elseif ($niveau==2) { - $result->Identite = $this->getIdentite($siren, $id=0); - $result->Indiscore = $this->getIndiScore($siren, 0, $nivComment, $plus, $ref, $encours, $email); - $result->Dirigeants = $this->getDirigeants($siren, false); - $result->Liens = $this->getLiens($siren, true); - $result->Ratios = $this->getRatios($siren, $page="rapport$niveau"); - } elseif ($niveau==3) { - $result->Identite = $this->getIdentite($siren, $id=0); - $result->Indiscore = $this->getIndiScore($siren, 0, $nivComment, $plus, $ref, $encours, $email); - $result->Dirigeants = $this->getDirigeants($siren, false); - $result->Liens = $this->getLiens($siren, true); - $result->Ratios = $this->getRatios($siren, $page="rapport$niveau"); - $result->Annonces = $this->getAnnonces($siren, $filtre, $idAnn); - } - return $result; - } - - /** - * Retourne la liste des banques connues pour une entreprise - * @param string $siren Siren de l'entreprise - * @return BanquesReturn - **/ - public function getBanques($siren) - { - $this->authenticate(); - - //Initialisation - $iDb = new WDB('sdv1'); - $tabRet = array(); - debugLog('I',"Liste des banques demandée pour siren $siren", - __LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (intval($siren)<=1000) { - $this->sendError('1010'); - } - - $res=$iDb->select('banques', 'codeBanque, codeGuichet, libBanqueGuichet, precis, dateSource*1 AS dateSource', "siren=$siren", false, MYSQL_ASSOC); - $tmp=$iDb->select('fedRib', "codeBanque, codeGuichet, CONCAT(libBanque,' ',libGuichet) AS libBanqueGuichet, 0 AS precis, IF (dateInfo='0000-00-00', dateDispo*1, dateInfo*1) AS dateSource", "siren=$siren", false, MYSQL_ASSOC); - $res=array_merge($res, $tmp); - foreach ($res as $tabBanque){ - $dateSource=$tabBanque['dateSource']; - $codBanque=$tabBanque['codeBanque']; - $codGuichet=$tabBanque['codeGuichet']; - $libBanque=trim($tabBanque['libBanqueGuichet']); - $found=false; - $adrBanque1=$adrBanque2=$adrBanqueCP=$adrBanqueVille=''; - - if ($codBanque>0 && $codGuichet>0 && - $dateSource>(date('Y')-4)*10000+101 && - $dateSourceselect('insee.BDF_Etabs b, insee.BDF_Guichets g', - 'g.bdfFibCodeEtab AS banque, g.bdfFibCodeGuichet AS guichet, b.bdfFibDenom40 AS nomBanque, b.bdfFibDenom10 AS sigleBanque, g.bdfFibDenom20 AS nomGuichet, g.bdfFibAdresse1 AS adresse1, g.bdfFibAdresse2 AS adresse2, g.bdfFibAdresse3 AS adresse3, g.CP, g.Ville', "g.bdfFibCodeEtab=$codBanque AND g.bdfFibCodeGuichet=$codGuichet AND b.bdfFibCodeEtab=g.bdfFibCodeEtab", - false, MYSQL_ASSOC); - if (isset($tmp[0])){ - $libBanque=trim($tmp[0]['nomBanque'].' '.$tmp[0]['nomGuichet']); - $adrBanque1=$tmp[0]['adresse1']; - $adrBanque2=trim($tmp[0]['adresse2'].' '.$tmp[0]['adresse3']); - $adrBanqueCP=$tmp[0]['CP']; - $adrBanqueVille=$tmp[0]['Ville']; - $found=true; - }; - } - if (!$found && $codBanque>0 && - $dateSource>(date('Y')-4)*10000+101 && - $dateSourceselect('insee.BDF_Etabs', "bdfFibCodeEtab AS banque, '' AS guichet, bdfFibDenom40 AS nomBanque, '' AS nomGuichet, '' AS adresse1, '' AS adresse2, '' AS adresse3, '' AS CP, '' AS Ville", "bdfFibCodeEtab=$codBanque", false, MYSQL_ASSOC); - if (isset($tmp[0])){ - $libBanque=trim($tmp[0]['nomBanque'].' '.$tmp[0]['nomGuichet']); - $adrBanque1=$tmp[0]['adresse1']; - $adrBanque2=trim($tmp[0]['adresse2'].' '.$tmp[0]['adresse3']); - $adrBanqueCP=$tmp[0]['CP']; - $adrBanqueVille=$tmp[0]['Ville']; - } else continue; - } else continue; - - $banque = new Banque(); - $banque->codeBanque = $codBanque; - $banque->codeGuichet = $codGuichet; - $banque->libBanque = $libBanque; - $banque->adresse1 = $adrBanque1; - $banque->adresse2 = $adrBanque2; - $banque->cp = $adrBanqueCP; - $banque->ville = $adrBanqueVille; - $tabRet[] = $banque; - } - debugLog('I',"Liste des banques pour siren $siren : ".count($tabRet).' banques',__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $this->wsLog('banque', $siren); - $output = new BanquesReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des compétences territoriales pour un établissement à une adresse donnée. - * @param string $siret Siret de l'établissement - * @param string $type Type de compétence (pre:prefectures et s/prefectures, jal;journaux d'annonces légales, tri:tribunaux, adm:administrateurs et mandataires judiciaires, hui:huissiers, cfe:centres de formalités des entreprises) - * @param string $codeInsee Code Insee de la commune de l'établissement - * @return ListeCompetencesReturn - */ - public function getListeCompetences($siret, $type, $codeInsee) - { - $this->authenticate(); - $this->permission('competences'); - - //Initialisation - $error = new ErrorType(); - $type = strtolower($type); - - debugLog('I',"Liste des compétences $type demandée pour la commune $codeInsee",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - $iBodacc = new MBodacc(); - $cp=$codeInsee*1; - $dep=false; - if (substr($codeInsee,0,2)=='2A' || substr($codeInsee,0,2)=='2B') - { - $dep=20; $cp=20000+(substr($codeInsee,2,3))*1; - } - elseif ($cp>0 && $cp<100) $dep=$cp; - elseif ($cp>970 && $cp<977) $dep=$cp; - elseif ($cp>999 && $cp<10000) $dep='0'.substr($cp,0,1); - elseif ($cp>=10000 && $cp<96000) $dep=substr($cp,0,2); - elseif ($cp>=99000) $dep=substr($cp,0,2); - elseif ($cp>=98000) $dep=substr($cp,0,3); - elseif ($cp>=97100 && $cp<97700) $dep=substr($cp,0,3); - - require_once 'i18n/cleanchar.php'; - - if ($type=='pre'){ - - $iDb = new WDB('jo'); - $tabTmp2 = $iDb->select('villes', 'DEP, COM, AR, CT', 'codeInsee='.$codeInsee, false, MYSQL_ASSOC); - $arrond = $tabTmp2[0]['AR']; - unset($iDb); - $iDb = new WDB('insee'); - $tabTmp2 = $iDb->select('insee_tabArrond', 'CHEFLIEU, ARTMAJ, NCC', "DEP='$dep' AND AR='$arrond'", false, MYSQL_ASSOC); - $nomSousPref = trim(strtr($tabTmp2[0]['ARTMAJ'],array('('=>'',')'=>'',' '=>'', "'"=>'')).' '.$tabTmp2[0]['NCC']); - unset($iDb); - $tabTmp = $iBodacc->getTribunauxParDep($dep); - foreach ($tabTmp as $i=>$tribunal) - { - if ($tribunal['triType']=='A' || $tribunal['triType']=='B') - { - $pref = levenshtein($tribunal['triNom'], 'PREFECTURE DE '.$nomSousPref); - $spref = levenshtein($tribunal['triNom'], 'SOUS PREFECTURE DE '.$nomSousPref); - - if ($tribunal['triType']=='B' && ($pref>7 || $spref>5)) continue; - - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType'].$typeP; - $competence->Nom = strtoupper($tribunal['triNom']); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper( - preg_replace('/ +/',' ',$tribunal['triAdrNum'].' '. - $tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '. - $tribunal['triAdrVoie'])); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $tribunal['triCommentaire']; - $tabRet[] = $competence; - - } - } - - } elseif ($type=='jal') { - - $tabTmp = $iBodacc->getJALparDep($dep); - foreach ($tabTmp as $i=>$comp) - { - $infos=''; - if (trim($comp['parution'])<>'') $infos.='Parution '.$comp['parution'].'. '; - if (trim($comp['aboAnnuel'])>0) $infos.='Abonnement Annuel : '.$comp['aboAnnuel'].' euros. '; - if (trim($comp['infos'])<>'') $infos.=$comp['infos']; - - $competence = new Competence(); - $competence->Id = 9000+$comp['id']*1; - $competence->IdSup = 0; - $competence->Code = ''; - $competence->Type = ''; - $competence->Nom = strtoupper($comp['nomJal']); - $competence->Siret = ''; - $competence->Adr = strtoupper($comp['adresse']); - $competence->AdrComp = ''; - $competence->CP = $comp['cp']; - $competence->Ville = strtoupper($comp['ville']); - $competence->CodeInsee = ''; - $competence->Tel = $comp['tel']; - $competence->Fax = $comp['fax']; - $competence->Web = $comp['siteWeb']; - $competence->Mail = $comp['email']; - $competence->Statut = 'Actif'; - $competence->DateCessation = ''; - $competence->Remarque = trim($infos); - $tabRet[] = $competence; - } - - } elseif ($type=='tri' || $type=='adm' || $type=='hui') { - - $tabTmp = $iBodacc->getTribunauxParCommune($codeInsee); - foreach ($tabTmp as $i=>$tribunal) - { - if (//$tribunal['triType']=='C' || - $tribunal['triType']=='G'// || - /*$tribunal['triType']=='I'*/) { - $idCA = $tribunal['triIdSup']; - $codeTGI = $tribunal['triCode']; - $code = strtoupper(substr($tribunal['triCode'],0,3)); - } - debugLog('D',"Liste des compétences $type demandée pour la commune $codeInsee ($dep) : ". - "Type=".$tribunal['triType'].', '. - "Code=".$tribunal[$codeTGI],__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($tribunal['triType']<>'E' && $tribunal['triType']<>'O' && - $tribunal['triType']<>'T' && $tribunal['triType']<>'R' && - $tribunal['triType']<>'N' && $tribunal['triType']<>'U' && - $tribunal['triType']<>'Z') - { - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType']; - $competence->Nom = strtoupper(cleanstring($tribunal['triNom'])); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper(cleanstring(preg_replace('/ +/',' ', - $tribunal['triAdrNum'].' '. - $tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '. - $tribunal['triAdrVoie']))); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $tribunal['triCommentaire']; - if ($tribunal['triNumGreffe']*1>0) - { - $competence->IdentifiantGreffe = $tribunal['triNumGreffe']; - } - $tabRet[] = $competence; - } - } - } - - if ($type=='adm') - { - $iInsee = new MInsee(); - $tabTmp = $iInsee->getMandataires(array($idCA), false); - $tabRet = array(); - $nbAff=0; - foreach ($tabTmp as $i=>$tribunal) - { /** @todo A revoir Debut **/ - if (stripos($tribunal['tribunal'], $code)!==false || - stripos($tribunal['tribunal'], 'SAINT')!==false) - { - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($tribunal['adresse']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $tribunal['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation'], - $competence->Remarque = $tribunal['contact']; - //,,,,Prenom,,,Statut,,,cp,ville,tel,fax,email,web,contact - $tabRet[] = $competence; - $nbAff++; - } - } - if ($nbAff==0) - { - foreach ($tabTmp as $i=>$tribunal) - { - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($tribunal['adresse']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $tribunal['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation'], - $competence->Remarque = $tribunal['contact']; - //,,,,Prenom,,,Statut,,,cp,ville,tel,fax,email,web,contact - $tabRet[] = $competence; - } - }/** @todo A revoir Fin : Lier correctement les mandataires à un TI principal **/ - } - elseif ($type=='hui') - { - $iInsee = new MInsee(); - $tabTmp = $iInsee->getHuissiers(array($codeTGI), false); - - $tabRet = array(); - $nbAff = 0; - foreach ($tabTmp as $i=>$tribunal) - { - $adr = $iInsee->structureVoie($tribunal['adresse']); - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($adr['num'].' '.$adr['adr_btq'].' '. - $adr['typeVoie'].' '.$adr['libVoie']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $adr['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation']; - $competence->Remarque = strtr($tribunal['contact'], - array( '
        '=>', ', '
        '=>', ', - '
        '=>', ', - )); - $tabRet[] = $competence; - } - $nbComp = count($tabTmp); - debugLog('I',"$nbComp compétences $type trouvées pour le tribunal $codeTGI",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } - elseif ($type=='cfe') - { - $tabTmp = $iBodacc->getTribunauxParCommune($codeInsee); - foreach ($tabTmp as $i=>$tribunal) - { - if ($tribunal['triType']=='C' || $tribunal['triType']=='O' || - $tribunal['triType']=='T' || $tribunal['triType']=='R' || - $tribunal['triType']=='N' || $tribunal['triType']=='U' || - $tribunal['triType']=='Z') - { - if (strlen($tribunal['triCommentaire'])==32 && - strpos($tribunal['triCommentaire'], ' ')===false) - $remarque=''; - else $remarque=$tribunal['triCommentaire']; - - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType']; - $competence->Nom = strtoupper($tribunal['triNom']); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper(preg_replace('/ +/',' ',$tribunal['triAdrNum'].' '.$tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '.$tribunal['triAdrVoie'])); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $remarque; - $tabRet[] = $competence; - } - } - } - $this->wsLog('competences',$siret,$type.'/'.$codeInsee); - $output = new ListeCompetencesReturn(); - $output->result = $tabRet; - $output->nbReponses = count($tabRet); - return $output; - } - - /** - * Retourne le statut du webservice - * @return StatusReturn - */ - public function status() - { - /* @todo tester les différents éléments qui peuvent conduire - * à un problème dans les services tel que la connexion à la - * base de données, l'accès FTP, l'accès HTTP, l'accès système de fichier - */ - - //Enregistrement des accès à la requête getIdentite - Zend_Registry::get('WsLogger')->info("status - ip:". - $_SERVER['REMOTE_ADDR'].", login:".$_SERVER['PHP_AUTH_USER']. - ", hash:".$_SERVER['PHP_AUTH_PW']); - - $error = new StatusReturn(); - //Test connexion à la base de données - $db = new WDB('jo'); - if (!$db) { - $error->statusCode = 9000; - $error->statusMsg = $this->listError['9000']; - } else { - $error->statusCode = 3000; - $error->statusMsg = $this->listError['3000']; - } - return $error; - } - -} - -?> \ No newline at end of file diff --git a/library/WsScore/Entreprise/v0.7/Types.php b/library/WsScore/Entreprise/v0.7/Types.php deleted file mode 100644 index 423d30f8..00000000 --- a/library/WsScore/Entreprise/v0.7/Types.php +++ /dev/null @@ -1,3790 +0,0 @@ - 'ErrorType', - 'Amount' => 'Amount', - 'StatusReturn' => 'StatusReturn', - 'SearchReturn' => 'SearchReturn', - 'SearchEntrepriseReturn' => 'SearchEntrepriseReturn', - 'SearchDirReturn' => 'SearchDirReturn', - 'DirigeantsReturn' => 'DirigeantsReturn', - 'AnnoncesReturn' => 'AnnoncesReturn', - 'InseeReturn' => 'InseeReturn', - 'TvaReturn' => 'TvaReturn', - 'LiensReturn' => 'LiensReturn', - 'Lien' => 'Lien', - 'LienDirection' => 'LienDirection', - 'InfosRegReturn' => 'InfosRegReturn', - 'ListeBilansReturn' => 'ListeBilansReturn', - 'SetSurveillanceReturn' => 'SetSurveillanceReturn', - 'SurveillancesReturn' => 'SurveillancesReturn', - 'ListeEtablissementsReturn' => 'ListeEtablissementsReturn', - 'RatiosReturn' => 'RatiosReturn', - 'RechercheAnnonceReturn' => 'RechercheAnnonceReturn', - 'Identite' => 'Identite', - 'GeoInfos' => 'GeoInfos', - 'IdentiteBilan' => 'IdentiteBilan', - 'IdentiteBourse' => 'IdentiteBourse', - 'AutreSiren' => 'AutreSiren', - 'EntrepriseCriteres' => 'EntrepriseCriteres', - 'DirigeantCriteres' => 'DirigeantCriteres', - 'EntrepriseItem' => 'EntrepriseItem', - 'EntrepriseDirItem' => 'EntrepriseDirItem', - 'Etablissement' => 'Etablissement', - 'Dirigeant' => 'Dirigeant', - 'AnnonceFilter' => 'AnnonceFilter', - 'Annonce' => 'Annonce', - 'AnnonceEntite' => 'AnnonceEntite', - 'AnnonceEvenement' => 'AnnonceEvenement', - 'AnnonceNum' => 'AnnonceNum', - 'InseeEven' => 'InseeEven', - 'InfosReg' => 'InfosReg', - 'InfosBourse' => 'InfosBourse', - 'ListeBilans' => 'ListeBilans', - 'SurveillancesFiltre' => 'SurveillancesFiltre', - 'Surveillance' => 'Surveillance', - 'SurveillanceSource' => 'SurveillanceSource', - 'Bilan' => 'Bilan', - 'BilanPoste' => 'BilanPoste', - 'RechercheAnnonceCriteres' => 'RechercheAnnonceCriteres', - 'AnnonceItem' => 'AnnonceItem', - 'RatiosBilansInfos' => 'RatiosBilansInfos', - 'RatiosInfos' => 'RatiosInfos', - 'RatiosSecteur' => 'RatiosSecteur', - 'Ratios' => 'Ratios', - 'Rapport' => 'Rapport', - 'Indiscore' => 'Indiscore', - 'Scores' => 'Scores', - 'IndiscoreVariables' => 'IndiscoreVariables', - 'CA_Y' => 'CA_Y', - 'IndiscoreImportExport' => 'IndiscoreImportExport', - 'IndiscoreInfosNotations' => 'IndiscoreInfosNotations', - 'IndiscorePaiement' => 'IndiscorePaiement', - 'IndiscorePaiementDetail' => 'IndiscorePaiementDetail', - 'IndiscoreNotesStructure' => 'IndiscoreNotesStructure', - 'IndiscoreBilans' => 'IndiscoreBilans', - 'AdresseDomEnt' => 'AdresseDomEnt', - 'InfosIris' => 'InfosIris', - 'BanquesReturn' => 'BanquesReturn', - 'Banque' => 'Banque', - 'ListeCompetencesReturn' => 'ListeCompetencesReturn', - 'Competence' => 'Competence', - 'IdentiteProcol' => 'IdentiteProcol', - 'Organe' => 'Organe', - 'AutreSiret' => 'AutreSiret', - 'SearchRefClientReturn' => 'SearchRefClientReturn', - 'SearchRefClient' => 'SearchRefClient', - 'SearchRefClientInfo' => 'SearchRefClientInfo', - 'LienRef' => 'LienRef', - 'LienRefId' => 'LienRefId', - 'Valo' => 'Valo', -); \ No newline at end of file diff --git a/library/WsScore/Entreprise/v0.8/Entreprise.php b/library/WsScore/Entreprise/v0.8/Entreprise.php deleted file mode 100644 index b1a96615..00000000 --- a/library/WsScore/Entreprise/v0.8/Entreprise.php +++ /dev/null @@ -1,4925 +0,0 @@ -authenticate(); - $this->permission('identite'); - - //Initialisation - if (empty($id)) { $id = 0; } - $forceVerif = false; - - $tdeb = microtime(1); - $ligne = date('YmdHis').";$siret;Ws->getIdentite Avant ..."; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - debugLog('I',"Identités demandée pour siret $siret (id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if ($siren*1==0 && $id==0) { - $this->sendError('1010'); - } elseif ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren, $nic, $id, $forceVerif); - debugLog('I', "Après getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $duree = round(microtime(1)-$tdeb,3); - $ligne = date('YmdHis').";$siret;Ws->getIdentite juste apres iInsee->... ($duree s)"; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - if (empty($entrep) || empty($entrep['id']) ) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - - $identite = new Identite(); - $identite->id = $entrep['id']; - $identite->Siret = $entrep['Siret']; - $identite->SiretSiege = $entrep['SiretSiege']; - $identite->Siege = $entrep['Siege']; - $identite->AncienSiege = $entrep['AncienSiege']; - $identite->AncienSiegeDateFin = $entrep['AncienSiegeDateFin']; - $identite->TribunalCode = prepareString($entrep['Tribunal']); - $identite->TribunalLib = prepareString($entrep['TribunalLib']); - //'NumGreffe' = $entrep['numGreffe'], // Ajouté le 4 08 2009 - $identite->NumRC = $entrep['numRC']; // Ajouté le 4 08 2009 - $identite->Actif = $entrep['Actif']; - $identite->ActifEco = $entrep['ActifEco']; // Etab éco actif, ajout le 28/04/2011 - $identite->ActifEcoDate = $entrep['ActifEcoDate']; // Date si éco inactif et jur actif - $identite->ActifEcoType = $entrep['ActifEcoType']; // vide ou NPAI ou PFER ou ECOF - $identite->EntActiveRCS = $entrep['EntActiveRCS']; - $identite->AutreId = $entrep['AutreId']; - $identite->Source = $entrep['Source']; - $identite->SourceId = $entrep['SourceId']; - $identite->Isin = $entrep['Isin']; - $identite->Nom = prepareString(strtr($entrep['Nom'],'/*',' ')); - $identite->Nom2 = prepareString($entrep['Nom2']); - $identite->NomLong = prepareString($entrep['nomLong']); // Ajouté le 4 08 2009 - $identite->NomCommercial = prepareString($entrep['NomCommercial']); // Ajouté le 16 11 2010 - $identite->Siret = $entrep['Siret']; - $identite->Sigle = prepareString($entrep['Sigle']); - $identite->SigleLong = prepareString($entrep['sigleLong']); // Ajouté le 4 08 2009 - $identite->Enseigne = prepareString($entrep['Enseigne']); - $identite->EnseigneLong = prepareString($entrep['enseigneLong']); // Ajouté le 16 11 2010 - $identite->Adresse = prepareString($entrep['Adresse']); - $identite->Adresse2 = prepareString($entrep['Adresse2']); - $identite->AdresseNum = prepareString($entrep['AdresseNum']); - $identite->AdresseBtq = prepareString($entrep['AdresseBtq']); - $identite->AdresseVoie = prepareString($entrep['AdresseVoie']); - $identite->AdresseRue = prepareString($entrep['AdresseRue']); - $identite->CP = $entrep['CP']; - $identite->Ville = prepareString($entrep['Ville']); - $identite->Pays = prepareString($entrep['Pays']); // Ajouté le 18 02 2008 - $identite->PaysIso2 = $entrep['PaysIso2']; - $identite->AdresseDom = $entrep['AdresseDom']; - - $tabAdresseDomEnt = array(); - if (isset($entrep['AdresseDomEnt']) && count($entrep['AdresseDomEnt'])>0){ - foreach ($entrep['AdresseDomEnt'] as $element){ - $adresseDomEnt = new AdresseDomEnt(); - $adresseDomEnt->siren = $element['siren']; - $adresseDomEnt->nom = $element['nom']; - $tabAdresseDomEnt[] = $adresseDomEnt; - } - } - $identite->AdresseDomEnt = $tabAdresseDomEnt; - - $identite->AdresseDomNb = $entrep['AdresseDomNb']; - $identite->Civilite = $entrep['Civilite']; - $identite->NbEtab = $entrep['NbEtab']; - $identite->Tel = prepareString($entrep['Tel']); - $identite->Fax = prepareString($entrep['Fax']); - $identite->Web = prepareString($entrep['Web']); - $identite->Mail = prepareString($entrep['Mail']); - $identite->GeoLat = $entrep['GeoLat']; - $identite->GeoLon = $entrep['GeoLon']; - $identite->GeoPrecis = $entrep['GeoPrecis']; - - $geoInfos = new GeoInfos(); - $geoInfos->CUCS = $entrep['GeoInfos']['CUCS']; - $geoInfos->NCUCS = $entrep['GeoInfos']['NCUCS']; - $geoInfos->ZRU = $entrep['GeoInfos']['ZRU']; - $geoInfos->NZRU = $entrep['GeoInfos']['NZRU']; - $geoInfos->ZFU = $entrep['GeoInfos']['ZFU']; - $geoInfos->NZFU = $entrep['GeoInfos']['NZFU']; - $geoInfos->ZUS = $entrep['GeoInfos']['ZUS']; - $geoInfos->NZUS = $entrep['GeoInfos']['NZUS']; - $geoInfos->AFR = $entrep['GeoInfos']['AFR']; - $geoInfos->NAFR = $entrep['GeoInfos']['NAFR']; - $geoInfos->ZRR = $entrep['GeoInfos']['ZRR']; - $geoInfos->NZRR = $entrep['GeoInfos']['NZRR']; - $identite->GeoInfos = $geoInfos; - - $identite->TvaNumero = $entrep['TvaNumero']; - $identite->TvaAttribue = $entrep['TvaAttribue']; - $identite->FJ = $entrep['FJ']; - $identite->FJ_Lib = $entrep['FJ_lib']; - $identite->FJ2 = $entrep['FJ2']; // Ajouté le 4 08 2009 - $identite->FJ2_Lib = $entrep['FJ2_Lib']; // Ajouté le 4 08 2009 - $identite->Siren = $entrep['Siren']; - $identite->Nic = $entrep['Nic']; - $identite->NafEnt = $entrep['NafEnt']; - $identite->NafEntLib = $entrep['NafEntLib']; - $identite->NafEtab = $entrep['NafEtab']; - $identite->NafEtabLib = $entrep['NafEtabLib']; - $identite->NaceEtab = $entrep['NaceEtab']; - $identite->NaceEnt = $entrep['NaceEnt']; - $identite->Nafa = $entrep['APRM']; - $identite->NafaLib = prepareString($entrep['APRM_Lib']); - $identite->NumRM = $entrep['NumRM']; - $identite->Activite = $entrep['Activite']; - $identite->Capital = $entrep['Capital']; - $identite->CapitalDev = $entrep['CapitalDev']; - $identite->CapitalLib = $entrep['CapitalLib']; // Ajouté le 18 02 2008 - $identite->CapitalType = prepareString($entrep['CapitalType']); // Ajouté le 4 08 2009 - $identite->DateCreaEt = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEt']); - $identite->DateCreaEn = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEn']); - $identite->DateClotEt = $entrep['DateClotEt']; //@todo : date - $identite->DateImmat = $entrep['dateImmat']; // Ajouté le 4 08 2009 - $identite->DateRadiation = $entrep['dateRad']; // Ajouté le 4 08 2009 - //'DateMajRCS' = $entrep['DateMajRCS'], // Ajouté le 4 08 2009 - $identite->EffEnTr = $entrep['EffEnTr']; - $identite->EffEnTrLib = $entrep['EffEnTrLib']; - $identite->Effectif = $entrep['Effectif']; - $identite->EffEtTr = $entrep['EffEtTr']; // Ajout le 11 08 2010 - $identite->EffEtTrLib = $entrep['EffEtTrLib']; // Ajout le 11 08 2010 - $identite->EffectifEtab = $entrep['EffectifEtab']; // Ajout le 11 08 2010 - $identite->Dept = $entrep['Dept']; - $identite->codeCommune = prepareString($entrep['codeCommune']); - $identite->AnneeEffEn = $entrep['AnneeEffEn']; - $identite->AnneeEffEt = $entrep['AnneeEffEt']; - $identite->AnneeTCA = $entrep['AnneeTCA']; - $identite->TrancheCA = $entrep['TrancheCA']; - $identite->TrancheCALib = $entrep['TrancheCALib']; - $identite->TrancheCAType = $entrep['TrancheCAType']; - $identite->dir1Code = $entrep['dir1Code']; - $identite->dir1Titre = prepareString($entrep['dir1Titre']); - $identite->dir1NomPrenom = prepareString($entrep['dir1NomPrenom']); - $identite->dir1DateFct = prepareString($entrep['dir1DateFct']); //@todo : date - $identite->dir1DateNaiss = $entrep['dir1DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir1LieuNaiss = prepareString($entrep['dir1LieuNaiss']); // Ajouté le 4 08 2009 - $identite->dir2Code = $entrep['dir2Code']; - $identite->dir2Titre = prepareString($entrep['dir2Titre']); - $identite->dir2NomPrenom = prepareString($entrep['dir2NomPrenom']); - $identite->dir2DateFct = $entrep['dir2DateFct']; //@todo : date - $identite->dir2DateNaiss = prepareString($entrep['dir2DateNaiss']); //@todo : date // Ajouté le 4 08 2009 - $identite->dir2LieuNaiss = prepareString($entrep['dir2LieuNaiss']); // Ajouté le 4 08 2009 - $identite->Rivoli = $entrep['Rivoli']; - - $identite->InfosIris->codIris = $entrep['InfosIris']['codIris']; - $identite->InfosIris->codComIris = $entrep['InfosIris']['codComIris']; - $identite->InfosIris->libIris = prepareString($entrep['InfosIris']['libIris']); - $identite->InfosIris->typIris = prepareString($entrep['InfosIris']['typIris']); - $identite->InfosIris->evoIris = $entrep['InfosIris']['evoIris']; - $identite->InfosIris->trIris = $entrep['InfosIris']['trIris']; - $identite->InfosIris->grdQuartier = $entrep['InfosIris']['grdQuartier']; - $identite->NatureActivite = $entrep['NatureActivite']; // Nature de l'activité - $identite->OrigineCreation = $entrep['OrigineCreation']; // Origine de la création - $identite->TypeExploitation = $entrep['TypeExploitation']; - $identite->Auxiliaire = $entrep['Auxiliaire']; // 1=Auxiliaire / 0=Non auxiliaire - $identite->Saisonnalite = $entrep['Saisonnalite']; // P=Activité permanente / S=Activité saisonnière - $identite->SurfaceMagasin = $entrep['ACTISURF']*1; // 0=N/D, 1=inf. à 300m2,2=300 à 400m2, 3=400 à 2500m2, 4=sup. à 2500m2 - $identite->SituationJuridique = $entrep['SituationJuridique']; - $identite->Bilan->Millesime = $entrep['bilanAnnee']; - $identite->Bilan->Cloture = $entrep['bilanDate']; //@todo : date - $identite->Bilan->Duree = $entrep['bilanMois']; - $identite->Bilan->Devise = $entrep['bilanDevise']; - $identite->Bilan->Capital = $entrep['bilanDA']; - $identite->Bilan->CA = $entrep['bilanFL']; - $identite->Bilan->CAestime = $entrep['bilanFLestime']; - $identite->Bilan->Resultat = prepareString($entrep['bilanHN']); - $identite->Bilan->Effectif = $entrep['bilanYP']; - $identite->Bourse->placeCotation = $bourse['placeCotation']; - $identite->Bourse->nombreTitres = $bourse['nombreTitres']; - $identite->Bourse->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $identite->Bourse->derCoursDate = $bourse['date']; //@todo : date - $identite->Bourse->derCoursCloture = $bourse['close']; //@todo : date - - $tabAutreSiren = array(); - if (isset($entrep['AutreSiren'])) { - $autreSiren = new AutreSiren(); - $autreSiren->siren = $entrep['AutreSiren']['listeSiren']['siren']; - $autreSiren->type = $entrep['AutreSiren']['listeSiren']['type']; - $tabAutreSiren[] = $autreSiren; - } - $identite->AutreSiren = $tabAutreSiren; - - $tabAutreSiret = array(); - if (count($entrep['AutreSiret'])) { - foreach($entrep['AutreSiret'] as $type => $item) { - $autreSiret = new AutreSiret(); - $autreSiret->type = $type; - $autreSiret->siren = $item['siren']; - $autreSiret->nic = $item['nic']; - $autreSiret->apeEtab = $item['apeEtab']; - $autreSiret->codeEve = $item['codeEve']; - $autreSiret->dateEve = $item['dateEve']; - $autreSiret->adrL1 = $item['adrL1']; - $autreSiret->adrL2 = $item['adrL2']; - $autreSiret->adrL3 = $item['adrL3']; - $autreSiret->adrL4 = $item['adrL4']; - $autreSiret->adrL5 = $item['adrL5']; - $autreSiret->adrL6 = $item['adrL6']; - $autreSiret->adrL7 = $item['adrL7']; - $autreSiret->depCom = $item['depCom']; - $autreSiret->rivoli = $item['rivoli']; - $autreSiret->siege = $item['siege']; - $autreSiret->destinat = $item['destinat']; - $autreSiret->typEtab = $item['typeEtab']; - $autreSiret->origine = $item['origine']; - $tabAutreSiret[] = $autreSiret; - } - } - $identite->AutreSiret = $tabAutreSiret; - - $identite->DateMajINSEE = $entrep['DateMajINSEE']; //@todo : date - $identite->DateMajRCS = $entrep['DateMajRCS']; //@todo : date - $identite->DateMajBILAN = $entrep['bilanDateMaj']; //@todo : date - $identite->DateMajANN = $entrep['dateMajANN']; //@todo : date - $identite->DateMajID = $entrep['dateMajIdentite']; //@todo : date - //'importExport' = $entrep['importExport'], - - if (preg_match('/NAF4/i', $this->tabInfoUser['pref'])) - { - $entrep2 = $iInsee->getNaf4($siren, $nic, $id); - $identite->Naf4Ent = $entrep2['apen4']; - $identite->Naf4Etab = $entrep2['apet4']; - $identite->Naf4EntLib = prepareString($entrep2['apen4_lib']); - $identite->Naf4EtabLib = prepareString($entrep2['apet4_lib']); - } - - debugLog('I', 'Etablissement retourné = '. $entrep['Nom'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('identite',$siret,$id); - $duree=round(microtime(1)-$tdeb,3); - $ligne=date('YmdHis').";$siret;Ws->getIdentite APRES ($duree s) !!!"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - - return $identite; - } - - /** - * Retourne les informations identitaires de l'entreprise ou de l'établissement demandé - * @param string $siret Siren de l'entreprise ou siret de l'établissement - * @param integer $id Identifiant S&D de l'établissement - * @return IdentiteProcol Fiche d'identité de l'établissement - */ - public function getIdentiteProcol($siret, $id=0, $forceVerif=false) - { - $this->authenticate(); - $this->permission('idprocol'); - - debugLog('I',"Identité AGS demandée pour siret $siret (id=$id)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if (intval($siren)==0 && $id==0) { - $this->sendError('1010'); - } elseif ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren, $nic, $id, $forceVerif); - debugLog('I', "Après getIdentiteEntreprise($siren, $nic, $id)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $duree = round(microtime(1)-$tdeb,3); - $ligne = date('YmdHis').";$siret;Ws->getIdentite juste apres iInsee->... ($duree s)"; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - if (empty($entrep)) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - - $identiteProcol = new IdentiteProcol(); - - //Element identite - $identite = new Identite(); - $identite->id = $entrep['id']; - $identite->Siret = $entrep['Siret']; - $identite->SiretSiege = $entrep['SiretSiege']; - $identite->Siege = $entrep['Siege']; - $identite->TribunalCode = $entrep['Tribunal']; - $identite->TribunalLib = $entrep['TribunalLib']; - $identite->NumRC = $entrep['numRC']; // Ajouté le 4 08 2009 - $identite->Actif = $entrep['Actif']; - $identite->EntActiveRCS = $entrep['EntActiveRCS']; - $identite->AutreId = $entrep['AutreId']; - $identite->Source = $entrep['Source']; - $identite->SourceId = $entrep['SourceId']; - $identite->Isin = $entrep['Isin']; - $identite->Nom = strtr($entrep['Nom'],'/*',' '); - $identite->Nom2 = $entrep['Nom2']; - $identite->NomLong = $entrep['nomLong']; // Ajouté le 4 08 2009 - $identite->NomCommercial = $entrep['NomCommercial']; // Ajouté le 16 11 2010 - $identite->Siret = $entrep['Siret']; - $identite->Sigle = $entrep['Sigle']; - $identite->SigleLong = $entrep['sigleLong']; // Ajouté le 4 08 2009 - $identite->Enseigne = $entrep['Enseigne']; - $identite->EnseigneLong = $entrep['enseigneLong']; // Ajouté le 16 11 2010 - $identite->Adresse = $entrep['Adresse']; - $identite->Adresse2 = $entrep['Adresse2']; - $identite->AdresseNum = $entrep['AdresseNum']; - $identite->AdresseBtq = $entrep['AdresseBtq']; - $identite->AdresseVoie = $entrep['AdresseVoie']; - $identite->AdresseRue = $entrep['AdresseRue']; - $identite->CP = $entrep['CP']; - $identite->Ville = $entrep['Ville']; - $identite->Pays = $entrep['Pays']; // Ajouté le 18 02 2008 - $identite->PaysIso2 = $entrep['PaysIso2']; - $identite->AdresseDom = $entrep['AdresseDom']; - - $tabAdresseDomEnt = array(); - if (isset($entrep['AdresseDomEnt']) && count($entrep['AdresseDomEnt'])>0){ - foreach ($entrep['AdresseDomEnt'] as $element){ - $adresseDomEnt = new AdresseDomEnt(); - $adresseDomEnt->siren = $element['siren']; - $adresseDomEnt->nom = $element['nom']; - $tabAdresseDomEnt[] = $adresseDomEnt; - } - } - $identite->AdresseDomEnt = $tabAdresseDomEnt; - - $identite->AdresseDomNb = $entrep['AdresseDomNb']; - $identite->Civilite = $entrep['Civilite']; - $identite->NbEtab = $entrep['NbEtab']; - $identite->Tel = $entrep['Tel']; - $identite->Fax = $entrep['Fax']; - $identite->Web = $entrep['Web']; - $identite->Mail = $entrep['Mail']; - $identite->GeoLat = $entrep['GeoLat']; - $identite->GeoLon = $entrep['GeoLon']; - $identite->GeoPrecis = $entrep['GeoPrecis']; - $identite->GeoInfos = $entrep['GeoInfos']; - $identite->TvaNumero = $entrep['TvaNumero']; - $identite->TvaAttribue = $entrep['TvaAttribue']; - $identite->FJ = $entrep['FJ']; - $identite->FJ_Lib = $entrep['FJ_lib']; - $identite->FJ2 = $entrep['FJ2']; // Ajouté le 4 08 2009 - $identite->FJ2_Lib = $entrep['FJ2_Lib']; // Ajouté le 4 08 2009 - $identite->Siren = $entrep['Siren']; - $identite->Nic = $entrep['Nic']; - $identite->NafEnt = $entrep['NafEnt']; - $identite->NafEntLib = $entrep['NafEntLib']; - $identite->NafEtab = $entrep['NafEtab']; - $identite->NafEtabLib = $entrep['NafEtabLib']; - $identite->NaceEtab = $entrep['NaceEtab']; - $identite->NaceEnt = $entrep['NaceEnt']; - $identite->Nafa = $entrep['APRM']; - $identite->NafaLib = $entrep['APRM_Lib']; - $identite->NumRM = $entrep['NumRM']; - $identite->Activite = $entrep['Activite']; - $identite->Capital = $entrep['Capital']; - $identite->CapitalDev = $entrep['CapitalDev']; - $identite->CapitalLib = $entrep['CapitalLib']; // Ajouté le 18 02 2008 - $identite->CapitalType = $entrep['CapitalType']; // Ajouté le 4 08 2009 - $identite->DateCreaEt = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEt']); - $identite->DateCreaEn = WDate::dateT('Ymd','Y-m-d',$entrep['DateCreaEn']); - $identite->DateClotEt = $entrep['DateClotEt']; //@todo : date - $identite->DateImmat = $entrep['dateImmat']; // Ajouté le 4 08 2009 - $identite->DateRadiation = $entrep['dateRad']; // Ajouté le 4 08 2009 - $identite->EffEnTr = $entrep['EffEnTr']; - $identite->EffEnTrLib = $entrep['EffEnTrLib']; - $identite->Effectif = $entrep['Effectif']; - $identite->EffEtTr = $entrep['EffEtTr']; // Ajout le 11 08 2010 - $identite->EffEtTrLib = $entrep['EffEtTrLib']; // Ajout le 11 08 2010 - $identite->EffectifEtab = $entrep['EffectifEtab']; // Ajout le 11 08 2010 - $identite->Dept = $entrep['Dept']; - $identite->codeCommune = $entrep['codeCommune']; - $identite->AnneeEffEn = $entrep['AnneeEffEn']; - $identite->AnneeEffEt = $entrep['AnneeEffEt']; - $identite->AnneeTCA = $entrep['AnneeTCA']; - $identite->TrancheCA = $entrep['TrancheCA']; - $identite->TrancheCALib = $entrep['TrancheCALib']; - $identite->dir1Code = $entrep['dir1Code']; - $identite->dir1Titre = $entrep['dir1Titre']; - $identite->dir1NomPrenom = $entrep['dir1NomPrenom']; - $identite->dir1DateFct = $entrep['dir1DateFct']; //@todo : date - $identite->dir1DateNaiss = $entrep['dir1DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir1LieuNaiss = $entrep['dir1LieuNaiss']; // Ajouté le 4 08 2009 - $identite->dir2Code = $entrep['dir2Code']; - $identite->dir2Titre = $entrep['dir2Titre']; - $identite->dir2NomPrenom = $entrep['dir2NomPrenom']; - $identite->dir2DateFct = $entrep['dir2DateFct']; //@todo : date - $identite->dir2DateNaiss = $entrep['dir2DateNaiss']; //@todo : date // Ajouté le 4 08 2009 - $identite->dir2LieuNaiss = $entrep['dir2LieuNaiss']; // Ajouté le 4 08 2009 - $identite->Rivoli = $entrep['Rivoli']; - $identite->InfosIris->codIris = $entrep['InfosIris']['codIris']; - $identite->InfosIris->codComIris = $entrep['InfosIris']['codComIris']; - $identite->InfosIris->libIris = $entrep['InfosIris']['libIris']; - $identite->InfosIris->typIris = $entrep['InfosIris']['typIris']; - $identite->InfosIris->evoIris = $entrep['InfosIris']['evoIris']; - $identite->InfosIris->trIris = $entrep['InfosIris']['trIris']; - $identite->InfosIris->grdQuartier = $entrep['InfosIris']['grdQuartier']; - $identite->NatureActivite = $entrep['NatureActivite']; // Nature de l'activité - $identite->OrigineCreation = $entrep['OrigineCreation']; // Origine de la création - $identite->TypeExploitation = $entrep['TypeExploitation']; - $identite->Auxiliaire = $entrep['Auxiliaire']; // 1=Auxiliaire / 0=Non auxiliaire - $identite->Saisonnalite = $entrep['Saisonnalite']; // P=Activité permanente / S=Activité saisonnière - $identite->SituationJuridique = $entrep['SituationJuridique']; - $identite->Bilan->Cloture = $entrep['bilanDate']; //@todo : date - $identite->Bilan->Duree = $entrep['bilanMois']; - $identite->Bilan->Devise = $entrep['bilanDevise']; - $identite->Bilan->Capital = $entrep['bilanDA']; - $identite->Bilan->CA = $entrep['bilanFL']; - $identite->Bilan->Resultat = $entrep['bilanHN']; - $identite->Bilan->Effectif = $entrep['bilanYP']; - $identite->Bourse->placeCotation = $bourse['placeCotation']; - $identite->Bourse->nombreTitres = $bourse['nombreTitres']; - $identite->Bourse->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $identite->Bourse->derCoursDate = $bourse['date']; //@todo : date - $identite->Bourse->derCoursCloture = $bourse['close']; //@todo : date - - $tabAutreSiren = array(); - if (isset($entrep['AutreSiren'])) { - $autreSiren = new AutreSiren(); - $autreSiren->siren = $entrep['AutreSiren']['listeSiren']['siren']; - $autreSiren->type = $entrep['AutreSiren']['listeSiren']['type']; - $tabAutreSiren[] = $autreSiren; - } - $identite->AutreSiren = $tabAutreSiren; - - $identite->DateMajINSEE = $entrep['DateMajINSEE']; //@todo : date - $identite->DateMajRCS = $entrep['DateMajRCS']; //@todo : date - $identite->DateMajBILAN = $entrep['bilanDateMaj']; //@todo : date - $identite->DateMajANN = $entrep['dateMajANN']; //@todo : date - $identite->DateMajID = $entrep['dateMajIdentite']; //@todo : date - - if (preg_match('/NAF4/i', $this->tabInfoUser['pref'])) - { - $entrep2 = $iInsee->getNaf4($siren, $nic, $id); - $identite->Naf4Ent = $entrep2['apen4']; - $identite->Naf4Etab = $entrep2['apet4']; - $identite->Naf4EntLib = $entrep2['apen4_lib']; - $identite->Naf4EtabLib = $entrep2['apet4_lib']; - } - - $identiteProcol->Identite = $identite; - - //Eléments annonces légales - $tabRetAnn = $tabLastEven = array(); - if (intval($siren)!=0) { - $anns = $this->getAnnonces($siren, 1); - $anns = $anns->result; - $tribunalProcol = false; - foreach ($anns as $nb=>$ann) - { - $tabRetEven = array(); - foreach ($ann->evenements as $tabEven) { - // On ignore les éléments suivants - if ($tabEven->CodeEven>=7000) continue; - if ($tabEven->CodeEven>=4000 && $tabEven->CodeEven<=4999) continue; - - // Par défaut, on force le tribunal à celui présent dans la dernière annonce de Procol - if ($tribunalProcol==false && $tabEven->CodeEven>=1000 && $tabEven->CodeEven<2000 && $ann->BodaccCode=='BODA') { - $identiteProcol->TribunalCode = $ann->TribunalCode; - $identiteProcol->TribunalLib = prepareString($ann->Tribunal); - $tribunalProcol=true; - } - - // On ne prend que le dernier élément de chaque type - if (in_array($tabEven->CodeEven, $tabLastEven)) continue; - - $tabLastEven[] = $tabEven->CodeEven; - $tabRetEven[] = $tabEven; - } - - if (count($tabRetEven)>0) { - $annonce = new Annonce(); - $annonce->id = $ann->id; - $annonce->BodaccCode = $ann->BodaccCode; - $annonce->BodaccNum = $ann->BodaccNum; - $annonce->NumAnnonce = $ann->NumAnnonce; - $annonce->DateParution = $ann->DateParution; //@todo : date - $annonce->Departement = $ann->Departement; - $annonce->Tribunal = $ann->Tribunal; - $annonce->TribunalCode = $ann->TribunalCode; - $annonce->TribunalSiret = $ann->TribunalSiret; - $annonce->Rubrique = $ann->Rubrique; - $annonce->typeAnnonce = $ann->typeAnnonce; - $annonce->texteRectificatif = $ann->texteRectificatif; - $annonce->texteAnnonce = utf8_encode($ann->texteAnnonce); - $annonce->dateEffet = $ann->dateEffet; //@todo : date - $annonce->dateJugement = $ann->dateJugement; //@todo : date - $annonce->dateInsertionSD = $ann->dateInsertionSD; //@todo : date - $annonce->evenements = $tabRetEven; - $annonce->Lien_Annonce_Pdf = $ann->Lien_Annonce_Pdf; - $tabRetAnn[] = $annonce; - } - } - $identiteProcol->Annonces = $tabRetAnn; - - $iRncs = new MRncs(); - if ($entrep['Siege']==1 || $entrep['Siege']==11) { - $identiteProcol->LibTypeEtab = 'Etablissement Siege'; - } else { - $tabEtabRncs = $iRncs->getIdentiteEtab($siren, $entrep['Nic']); - if ($tabEtabRncs['Siege']==2) $identiteProcol->LibTypeEtab = 'Etablissement Principal'; - elseif ($tabEtabRncs['Siege']==1) $identiteProcol->LibTypeEtab = 'Etablissement Complementaire'; - elseif ($tabEtabRncs['Siege']==0) $identiteProcol->LibTypeEtab = 'Etablissement Secondaire'; - } - - //@todo - $tabJuge = $iRncs->getIntervenants($siren); - $tabDepots=array(); - foreach ($tabJuge as $iDepot=>$depot) { - $organe = new Organe(); - $organe->codEven = $depot['codEven']; - $organe->libEven = prepareString($depot['libEven']); - $organe->dateEffet = $depot['dateEffet']; - $organe->admcode = $depot['admcode']; - $organe->admfonction = prepareString($depot['admfonction']); - $organe->admnom = prepareString($depot['admnom']); - $organe->admadrNum = $depot['admadrNum']; - $organe->admadrInd = $depot['admadrInd']; - $organe->admadrVoie = $depot['admadrVoie']; // @todo : adm1adr1, adm1adr2, adm1adr3, - $organe->admadrCP = $depot['admadrCP']; - $organe->admadrVille = $depot['admadrVille']; - $tabDepots[] = $organe; - } - $identiteProcol->Organes = $tabDepots; - - require_once 'Metier/partenaires/classMLiens.php'; - $mLiens = new MLiens($siren); - $tabA = $mLiens->getActionnaires($siren, 1); - $nbA = count($tabA); - $tabAct = array(); - foreach ($tabA as $i=>$lien) { - $liens = new Actionnaire(); - $liens->Pmin = $lien['Pmin']; - $liens->MajMin = $lien['MajMin']; - $liens->RaisonSociale = $lien['RaisonSociale']; - $liens->Pays = $lien['Pays']; - $liens->Siren = $lien['Siren']; - $liens->Actif = $lien['Actif']; - $tabAct[] = $liens; - } - $identiteProcol->Actionnaires = $tabAct; - - $iGreffes = new MGreffes(); - $tabActes = $iGreffes->getListeActes($siren); - - $identiteProcol->StatutsModifDepot = $identiteProcol->StatutsModif = '0000-00-00'; - foreach ($tabActes as $i=>$acte) { - if ('_'.$acte['acte_type']=='_04') { // STATUTS CONSTITUTIFS - $identiteProcol->StatutsConstDepot = $acte['depot_date']; // => 1997-12-18 - $identiteProcol->StatutsConst = $acte['acte_date']; // => 1997-11-13 - break; - } elseif (in_array('_'.$acte['acte_type'], array( - //'_04', // STATUTS CONSTITUTIFS - '_06', // STATUTS A JOUR 9 0000-00-00 2009-09-02 17:05:55 - '_07', // STATUTS A JOUR 9 0000-00-00 2009-09-02 17:05:55 - '_08', // STATUTS A JOUR ET DECLARATION DE CONFORMITE 9 0000-00-00 2009-09-02 17:05:55 - '_09', // STATUTS APRES TRANSFERT DE SIEGE 9 0000-00-00 2009-09-02 17:05:55 - '_A1', // STATUTS 9 0000-00-00 2009-09-02 17:05:55 - '_AH', // AVENANT AUX STATUTS - ))) { - // On ne prend que la dernière modif - if ($identiteProcol->StatutsModifDepot=='0000-00-00' && $identiteProcol->StatutsModif=='0000-00-00') { - $identiteProcol->StatutsModifDepot = $acte['depot_date'];// => 1997-12-18 - $identiteProcol->StatutsModif = $acte['acte_date']; // => 1997-11-13 - } - } - } - - /** Y a t il eu des informations relatives à une cession ? **/ - $tabCes = $iGreffes->getInfosCessions($siren); - if ($tabCes) { - $identiteProcol->CessionJugeLib = $tabCes['cessJuge']; - $identiteProcol->CessionJugeDate = $tabCes['cessDateJuge']; - $identiteProcol->CessionAvisBodac = $tabCes['cessDateBod']; - $identiteProcol->CessionInvenDate = $tabCes['cessDateInv']; - $identiteProcol->CessionCAdeclare = $tabCes['cessCAdec']; - $identiteProcol->CessionEffectif = $tabCes['cessEffectif']; - $identiteProcol->CessionDesc = $tabCes['cessDesc']; - $identiteProcol->CessionDescDate = $tabCes['cessDateDesc']; - $identiteProcol->CessionOffreDate = $tabCes['cessDateLim']; - $identiteProcol->CessionMandataire = $tabCes['cessMand']; - } - } - //sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Debug $siren", print_r($tabRet,true)) ; - debugLog('I', 'Etablissement retourné = '. $entrep['Nom'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('identite',$siret,$id); - - return $identiteProcol; - } - - /** - * Retourne les liens financiers pour une entreprise. - * @param string $siren Siren de l'entreprise - * @param string $type Type de lien (actionnaire|participation) - * @return LiensReturn - */ - public function getLiens($siren, $type = null) - { - $this->authenticate(); - $this->permission('liens'); - - try { - $countryM = new Application_Model_JoTabPays(); - $sql = $countryM->select()->from($countryM, array('codPays3', 'libPays')); - $result = $countryM->fetchAll($sql); - } catch (Zend_Db_Adapter_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } catch (Zend_Exception $e) { - throw new SoapFault('ERR', "Application error"); - } - - $tabPays = array(); - if ( $result->count()>0 ) { - foreach ( $result as $item ) { - $tabPays[$item->codPays3] = $item->libPays; - } - } - - $tabAct = $tabPar = $tabDir = array(); - - try - { - require_once 'Metier/partenaires/classMLiens2.php'; - $liensM = new MLiens2($siren, 'siren'); - - //Actionnaires - $liens = $liensM->getActionnaires(null, true); - if (count($liens)>0) { - foreach ( $liens as $item ) { - $detail = new Lien(); - $detail->id = $item->id; - $detail->idFiche = $item->idAct; - $detail->nom = $item->RS; - $detail->sigle = $item->sigle; - - $libPays = ''; - if ($item->adresse_pays!='') { - $libPays = array_key_exists($item->adresse_pays, $tabPays) ? - $tabPays[$item->adresse_pays] : $item->adresse_pays; - } else { - $libPays = $tabPays['FRA']; - } - $detail->pays = $libPays; - - if ($item->PpPm=='PP' && intval($siren)==0) { - $detail->nom = $item->civilite.' '.$item->nom.' '.$item->prenom; - } - $detail->siren = str_pad($item->siren, 9, "0", STR_PAD_LEFT); - $detail->PDetention = $item->PDetention; - $detail->Pvote = $item->Pvote; - $detail->MajMin = $item->MajMin; - - if ($item->dateUpdate=='0000-00-00 00:00:00'){ - $detail->date = substr($item->dateInsert,0,10); - } else { - $detail->date = substr($item->dateUpdate,0,10); - } - - $nbIdNum = 3; - $refs = array(); - $idM = new Application_Model_Sdv1TabIdLocal(); - for ($i=0;$i<$nbIdNum;$i++) { - if( !empty($item->{'idLoc'.$i.'Num'}) ) { - $ref = new LienRefId(); - $ref->num = $item->{'idLoc'.$i.'Num'}; - - if ( !empty($item->{'idLoc'.$i.'Type'}) ) { - $sql = $idM->select()->from($idM, array('idLocal', 'idPrincipal')) - ->where('id=?', $item->{'idLoc'.$i.'Type'}); - $result = $idM->fetchRow($sql); - if (null!==$result) { - $ref->label = $result->idLocal; - $ref->type = $result->idPrincipal; - } else { - $ref->label = ''; - $ref->type = 0; - } - } else { - $ref->label = 'Identifiant local'; - $ref->type = 1; - } - - $refs[] = $ref; - } - } - $detail->identification = $refs; - - $tabAct[] = $detail; - } - } - - //Participations - $liens = $liensM->getParticipations(null, true); - if (count($liens)>0) { - foreach ( $liens as $item ) { - $detail = new Lien(); - $detail->id = $item->id; - $detail->idFiche = $item->idPar; - $detail->nom = $item->RS; - $detail->sigle = $item->sigle; - - $libPays = ''; - if ($item->adresse_pays!='') { - $libPays = array_key_exists($item->adresse_pays, $tabPays) ? - $tabPays[$item->adresse_pays] : $item->adresse_pays; - } else { - $libPays = $tabPays['FRA']; - } - $detail->pays = $libPays; - - if ($item->PpPm=='PP' && intval($siren)==0) { - $detail->nom = $item->civilite.' '.$item->nom.' '.$item->prenom; - } - $detail->siren = str_pad($item->siren, 9, "0", STR_PAD_LEFT); - $detail->PDetention = $item->PDetention; - $detail->Pvote = $item->Pvote; - $detail->MajMin = $item->MajMin; - - if ($item->dateUpdate=='0000-00-00 00:00:00'){ - $detail->date = substr($item->dateInsert,0,10); - } else { - $detail->date = substr($item->dateUpdate,0,10); - } - - $nbIdNum = 3; - $refs = array(); - $idM = new Application_Model_Sdv1TabIdLocal(); - for ($i=0;$i<$nbIdNum;$i++) { - if( !empty($item->{'idLoc'.$i.'Num'}) ) { - $ref = new LienRefId(); - $ref->num = $item->{'idLoc'.$i.'Num'}; - - if ( !empty($item->{'idLoc'.$i.'Type'}) ) { - $sql = $idM->select()->from($idM, array('idLocal', 'idPrincipal')) - ->where('id=?', $item->{'idLoc'.$i.'Type'}); - $result = $idM->fetchRow($sql); - if (null!==$result) { - $ref->label = $result->idLocal; - $ref->type = $result->idPrincipal; - } else { - $ref->label = ''; - $ref->type = 0; - } - } else { - $ref->label = 'Identifiant local'; - $ref->type = 1; - } - - $refs[] = $ref; - } - } - $detail->identification = $refs; - - $tabPar[] = $detail; - } - } - - //Directions - $liens = $liensM->getDirections(true); - if (count($liens)>0) { - foreach ( $liens as $item ) { - $detail = new LienDirection(); - $detail->siren = $item->siren; - $detail->nom = $item->raisonSociale; - $detail->fonction = $item->fonction_lib; - $detail->dirRS = $item->dirRS; - - $nom = ''; - if (!empty($item->civilite)) { - $nom.= $item->civilite.'. '; - } - if (!empty($item->nom)) { - $nom.= $item->nom.' '; - } - if (!empty($item->prenom)) { - $nom.= $item->prenom; - } - $detail->dirNom = $nom; - $detail->dirNaissLieu = $item->naissance_lieu; - $detail->dirNaissDate = $item->naissance_date; - - $tabDir[] = $detail; - } - } - } catch(Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } - - $output = new LiensReturn(); - $output->actionnaires = $tabAct; - $output->participations = $tabPar; - $output->directions = $tabDir; - return $output; - } - - /** - * Retourne les liens financiers pour une entreprise. - * @param int $id Identifiant de référence de l'entreprise - * @param string $type Type de lien (actionnaire|participation) - * @return LiensReturn - */ - public function getLiensById($id, $type = null) - { - $this->authenticate(); - $this->permission('liens'); - - try { - $countryM = new Application_Model_JoTabPays(); - $sql = $countryM->select()->from($countryM, array('codPays3', 'libPays')); - $result = $countryM->fetchAll($sql); - } catch (Zend_Db_Adapter_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } catch (Zend_Exception $e) { - throw new SoapFault('ERR', "Application error"); - } - - $tabPays = array(); - if ( $result->count()>0 ) { - foreach ( $result as $item ) { - $tabPays[$item->codPays3] = $item->libPays; - } - } - - $tabAct = $tabPar = $tabDir = array(); - - try - { - require_once 'Metier/partenaires/classMLiens2.php'; - $liensM = new MLiens2($id); - - //Actionnaires - $liens = $liensM->getActionnaires(null, true); - if (count($liens)>0) { - foreach ( $liens as $item ) { - $detail = new Lien(); - $detail->id = $item->id; - $detail->idFiche = $item->idAct; - $detail->nom = $item->RS; - $detail->sigle = $item->sigle; - - $libPays = ''; - if ($item->adresse_pays!='') { - $libPays = array_key_exists($item->adresse_pays, $tabPays) ? - $tabPays[$item->adresse_pays] : $item->adresse_pays; - } else { - $libPays = $tabPays['FRA']; - } - $detail->pays = $libPays; - - if ($item->PpPm=='PP') { - $detail->nom = $item->civilite.' '.$item->nom.' '.$item->prenom; - } - $detail->siren = str_pad($item->siren, 9, "0", STR_PAD_LEFT); - $detail->PDetention = $item->PDetention; - $detail->Pvote = $item->Pvote; - $detail->MajMin = $item->MajMin; - - if ($item->dateUpdate=='0000-00-00 00:00:00'){ - $detail->date = substr($item->dateInsert,0,10); - } else { - $detail->date = substr($item->dateUpdate,0,10); - } - - $nbIdNum = 3; - $refs = array(); - $idM = new Application_Model_Sdv1TabIdLocal(); - for ($i=0;$i<$nbIdNum;$i++) { - if( !empty($item->{'idLoc'.$i.'Num'}) ) { - $ref = new LienRefId(); - $ref->num = $item->{'idLoc'.$i.'Num'}; - - if ( !empty($item->{'idLoc'.$i.'Type'}) ) { - $sql = $idM->select()->from($idM, array('idLocal', 'idPrincipal')) - ->where('id=?', $item->{'idLoc'.$i.'Type'}); - $result = $idM->fetchRow($sql); - if (null!==$result) { - $ref->label = $result->idLocal; - $ref->type = $result->idPrincipal; - } else { - $ref->label = ''; - $ref->type = 0; - } - } else { - $ref->label = 'Identifiant local'; - $ref->type = 1; - } - - $refs[] = $ref; - } - } - $detail->identification = $refs; - - $tabAct[] = $detail; - } - } - - //Participations - $liens = $liensM->getParticipations(null, true); - if (count($liens)>0) { - foreach ( $liens as $item ) { - $detail = new Lien(); - $detail->id = $item->id; - $detail->idFiche = $item->idPar; - $detail->nom = $item->RS; - $detail->sigle = $item->sigle; - - $libPays = ''; - if ($item->adresse_pays!='') { - $libPays = array_key_exists($item->adresse_pays, $tabPays) ? - $tabPays[$item->adresse_pays] : $item->adresse_pays; - } else { - $libPays = $tabPays['FRA']; - } - $detail->pays = $libPays; - - if ($item->PpPm=='PP') { - $detail->nom = $item->civilite.' '.$item->nom.' '.$item->prenom; - } - $detail->siren = str_pad($item->siren, 9, "0", STR_PAD_LEFT); - $detail->PDetention = $item->PDetention; - $detail->Pvote = $item->Pvote; - $detail->MajMin = $item->MajMin; - - if ($item->dateUpdate=='0000-00-00 00:00:00'){ - $detail->date = substr($item->dateInsert,0,10); - } else { - $detail->date = substr($item->dateUpdate,0,10); - } - - $nbIdNum = 3; - $refs = array(); - $idM = new Application_Model_Sdv1TabIdLocal(); - for ($i=0;$i<$nbIdNum;$i++) { - if( !empty($item->{'idLoc'.$i.'Num'}) ) { - $ref = new LienRefId(); - $ref->num = $item->{'idLoc'.$i.'Num'}; - - if ( !empty($item->{'idLoc'.$i.'Type'}) ) { - $sql = $idM->select()->from($idM, array('idLocal', 'idPrincipal')) - ->where('id=?', $item->{'idLoc'.$i.'Type'}); - $result = $idM->fetchRow($sql); - if (null!==$result) { - $ref->label = $result->idLocal; - $ref->type = $result->idPrincipal; - } else { - $ref->label = ''; - $ref->type = 0; - } - } else { - $ref->label = 'Identifiant local'; - $ref->type = 1; - } - - $refs[] = $ref; - } - } - $detail->identification = $refs; - - $tabPar[] = $detail; - } - } - - //Directions - $liens = $liensM->getDirections(true); - if (count($liens)>0) { - foreach ( $liens as $item ) { - $detail = new LienDirection(); - $detail->siren = $item->siren; - $detail->nom = $item->raisonSociale; - $detail->fonction = $item->fonction_lib; - $detail->dirRS = $item->dirRS; - - $nom = ''; - if (!empty($item->civilite)) { - $nom.= $item->civilite.'. '; - } - if (!empty($item->nom)) { - $nom.= $item->nom.' '; - } - if (!empty($item->prenom)) { - $nom.= $item->prenom; - } - $detail->dirNom = $nom; - $detail->dirNaissLieu = $item->naissance_lieu; - $detail->dirNaissDate = $item->naissance_date; - - $tabDir[] = $detail; - } - } - } catch(Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } - - $output = new LiensReturn(); - $output->actionnaires = $tabAct; - $output->participations = $tabPar; - $output->directions = $tabDir; - return $output; - } - - /** - * Fiche identite Référence lien - * @param int $id - * Identifiant interne SD - * @throws SoapFault - * @return LienRef - */ - public function getLienRef($id) - { - $this->authenticate(); - $this->permission('liens'); - - $refM = new Application_Model_JoLiensRef(); - - try { - $rows = $refM->find($id); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - if ($rows->count()==0) { - throw new SoapFault('MSG', 'Aucun résultat'); - } - - $result = $rows->current()->toArray(); - - $output = new LienRef(); - $output->siren = $result['siren']; - $output->actif = $result['actif']; - $output->PpPm = $result['PpPm']; - $output->raisonSociale = $result['RS']; - $output->civilite = $result['civilite']; - $output->nom = $result['nom']; - $output->prenom = $result['prenom']; - $output->nomUsage = $result['nom_usage']; - $output->naissanceDate = $result['naissance_date']; - $output->naissanceDeptPays = $result['naissance_dept_pays']; - $output->naissanceLieu = $result['naissance_lieu']; - $output->nat = $result['nat']; - $output->adresseNum = $result['adresse_num']; - $output->adresseBtq = $result['adresse_btq']; - $output->adresseCodeVoie = $result['adresse_codevoie']; - $output->adresseLibVoie = $result['adresse_libvoie']; - $output->adressComp = $result['adresse_comp']; - $output->adresseCp = $result['adresse_cp']; - $output->adresseVille = $result['adresse_ville']; - - $output->capital = new stdClass(); - $output->capital->amount = $result['capital']; - $output->capital->currency = $result['devCapital']; - - //@todo : Utiliser le libellé du pays - $output->adressePays = $result['adresse_pays']; - - if ($result['dateUpdate']=='0000-00-00 00:00:00'){ - $output->date = substr($result['dateInsert'],0,10); - } else { - $output->date = substr($result['dateUpdate'],0,10); - } - - $refs = array(); - - $nbIdNum = 3; - $refs = array(); - $idM = new Application_Model_Sdv1TabIdLocal(); - for ($i=0;$i<$nbIdNum;$i++) { - if( !empty($result['idLoc'.$i.'Type']) ) { - $ref = new LienRefId(); - $ref->num = $result['idLoc'.$i.'Num']; - $sql = $idM->select()->from($idM, array('idLocal', 'idPrincipal')) - ->where('id=?', $result['idLoc'.$i.'Type']); - $result = $idM->fetchRow($sql); - if (null!==$result) { - $ref->label = $result->idLocal; - $ref->type = $result->idPrincipal; - } else { - $ref->label = ''; - $ref->type = 0; - } - - $refs[] = $ref; - } - } - $output->identification = $refs; - - return $output; - } - - - /** - * Liste des établissements d'une entreprise - * @param string $siren Siren de l'entreprise - * @param integer $departement Limiter aux établissements du departement - * @param integer $actif Otpionnel 1=Uniquements les actifs, 0=inactifs, Néant=Tous - * @param integer $position - * @param integer $nbRep - * - * @return ListeEtablissementsReturn - */ - public function getListeEtablissements($siren, $dep = 0, $actif = -1, $position = 0, $nbRep = 20) - { - $this->authenticate(); - $this->permission('etablissements'); - - //Initialisation - if (empty($dep)) { $dep = 0; } - if (!in_array($actif, array(0,1))) { $actif = -1; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 20; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - $departement = $dep; - - debugLog('I',"Liste des établissements demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissements($siren, '', $position, $nbRep, 200, $departement, $actif); - $etabs = $rep['reponses']; - $nbReponses = $rep['nbReponsesTotal']; - - $result = array(); - if (count($etabs)>0) { - foreach ($etabs as $nb => $etab) { - $etablissement = new Etablissement(); - $etablissement->id = $etab['id']; - $etablissement->Siege = $etab['Siege']; - $etablissement->Enseigne = $etab['Enseigne']; - $etablissement->Adresse = $etab['Adresse']; - $etablissement->Adresse2 = $etab['Adresse2']; - $etablissement->CP = $etab['CP']; - $etablissement->Ville = $etab['Ville']; - $etablissement->Tel = $etab['Tel']; - $etablissement->Fax = $etab['Fax']; - $etablissement->Nic = $etab['Nic']; - $etablissement->Actif = $etab['Actif']; - $etablissement->NafEtab = $etab['NafEtab']; - $etablissement->NafEtabLib = $etab['NafEtabLib']; - $etablissement->EffEtTr = $etab['EffEtTr']; - $etablissement->EffEtTrLib = $etab['EffEtTrLib']; - - $result[] = $etablissement; - } - } - debugLog('I', "Nb Etablissements retournés ($departement, $actif) = ". count($result), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('etablissements',$siren); - $output = new ListeEtablissementsReturn(); - $output->nbReponses = $nbReponses; - $output->result = $result; - return $output; - } - - /** - * Retourne l'ensemble des informations identitaires des dirigeants de l'entreprise - * - * @param string $siren Siren de l'entreprise - * @param bool $histo Afficher l'historique des dirigeants - * @return DirigeantsReturn Liste des dirigeants actifs de l'entreprise - */ - public function getDirigeants( $siren , $histo = false) - { - $this->authenticate(); - $this->permission('dirigeants'); - - //Initialisation - if (empty($histo)) { $histo = false; } - - //Zend_Registry::get('WsLogger')->info('HISTO : '.$histo); - - debugLog('I',"Dirigeants demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $dirs = $iInsee->getDirigeants($siren, $histo); - //debugLog('W', print_r($dirs, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $liste = array(); - foreach ($dirs as $nb => $dir) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $dirigeant = new Dirigeant(); - $dirigeant->Code = $dir['Fonction']; - $dirigeant->Titre = $dir['Titre']; - $dirigeant->Societe = $dir['Societe']; - $dirigeant->Siren = (array_key_exists('Siren', $dir) && intval($dir['Siren'])!=0) ? $dir['Siren'] : '' ; - $dirigeant->Civilite = $dir['Civilite']; - $dirigeant->Nom = $dir['Nom']; - $dirigeant->Prenom = $dir['Prenom']; - $dirigeant->NomUsage = $dir['NomUsage']; - $dirigeant->NaissDate = $dir['NaissDate']; //@todo : date - $dirigeant->NaissVille = $dir['NaissVille']; - $dirigeant->NaissDepPays = $dir['NaissDepPays']; - $dirigeant->Ancien = $dir['Ancien']; - $dirigeant->DateFct = $dir['DateFct']; //@todo : date - $liste[] = $dirigeant; - } - $this->wsLog('dirigeants',$siren,$option); - debugLog('I', 'Nb Dirigeants retournés = '. count($dirs), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $output = new DirigeantsReturn(); - $output->result = $liste; - return $output; - } - - /** - * Retourne la liste des annonces légales relative à une entreprise - * - * @todo Revoir cette fonction pour la faire marcher avec les associations - * - * @param string $siren Siren de l'entreprise - * @param integer $filtre 1=BODACC, 2=B.A.L.O, 3=JO Association, 4=Boamp - * @param string $idAnn Identifiant de l'annonce - * @param integer $position - * @param integer $nbRep - * @return AnnoncesReturn - */ - protected function getAnnonces($siren, $filtre = 1, $idAnn = '', $position = 0, $nbRep = 100) - { - $this->authenticate(); - $this->permission('annonces'); - - //Initialisation - if (empty($filtre)) { $filtre = 1; } - if (empty($idAnn)) { $idAnn = ''; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 100; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - - debugLog('I',"Annonces demandées pour $siren ($filtre, $idAnn)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $liste = array(); - - if (strlen($siren)!=9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif (intval($siren)==0 && $idAnn=='') { - debugLog('W', "Siren $siren ou annonce $idAnn inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - /* - if ($siren>100 && $filtre==3) $asso=true; - else { - $asso=false; - $tabIdentite=$this->iInsee->getIdentiteLight($siren); - if ($tabIdentite['FJ']>90 && $tabIdentite['FJ']<94 || - $tabIdentite['FJ']>9000 && $tabIdentite['FJ']<9400) $asso=true; - }*/ - - //@todo : Connaitre le nombre d'annonce - - /* - getAnnoncesBoamp => Avis de marché, Avis d'attribution - getAnnoncesAsso => Rien de particulier - getAnnoncesBalo => Rien de particulier - getAnnoncesLegales => Plusieurs requetes SQL suivant la situation - */ - - if ($idAnn=='') { - $anns=$iInsee->getAnnoncesLegales($siren); - $annsB=$iInsee->getAnnoncesBalo($siren); - $annsA=$iInsee->getAnnoncesAsso($siren); - $annsM=$iInsee->getAnnoncesBoamp($siren, $idAnn); - } elseif ($filtre==1) - $anns=$iInsee->getAnnoncesLegales($siren, $idAnn); - elseif ($filtre==2) - $annsB=$iInsee->getAnnoncesBalo($siren, $idAnn); - elseif ($filtre==3) - $annsA=$iInsee->getAnnoncesAsso($siren, $idAnn); - elseif ($filtre==4) - $annsM=$iInsee->getAnnoncesBoamp($siren, $idAnn); - - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($anns) && empty($annsB) && empty($annsA) && empty($annsM)) - { - debugLog('W', "Aucune annonce pour le siren $siren (source=$filtre, id=$idAnn)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren inexistant B '.$siren.' '.$idAnn; - } - else - { - foreach ($anns as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - $annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = prepareString($ann['texteAnnonce']); - $annonce->libFJ = $ann['libFJ']; - $annonce->codFJ = $ann['codFJ']; - $annonce->capital = $ann['capital']; - $annonce->capitalDev = $ann['capitalDev']; - - $annonce->raisonSociale = $ann['raisonSociale']; - $annonce->nomCommercial = $ann['nomCommercial']; - $annonce->sigle = $ann['sigle']; - $annonce->adresse = $ann['adresse']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - - if (is_array($annsB)) - { - foreach ($annsB as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - - if (is_array($annsA)) - { - foreach ($annsA as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - //@todo : date - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - - if (is_array($annsM)) - { - foreach ($annsM as $nb=>$ann) - { - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - - $liste[] = $annonce; - } - } - } - - $nbReponses = count($liste); - if ($nbReponses>0){ - //$liste = array_slice($liste, $position, $nbRep); - } - debugLog('I', "Nb Annonces $filtre retournées pour $siren (source=$filtre, id=$idAnn) = ". count($liste), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('annonces',$siren,$filtre.'/'.$idAnn); - - $output = new AnnoncesReturn(); - $output->nbReponses = $nbReponses; - $output->result = $liste; - return $output; - } - - /** - * Retourne le nombre d'élément pour chaque type - * @param string $siren - * @return AnnonceNum[] - */ - public function getAnnoncesNum($siren) - { - $this->authenticate(); - - $output = array(); - - if ( substr($siren,0,1)=='W' ) { - $iInsee = new MInsee(); - $nb = new AnnonceNum(); - $nb->type = 'asso'; - $nb->num = $iInsee->getAnnoncesAssoCount($siren); - $output[] = $nb; - } elseif (intval($siren)!=0) { - $types = array('bodacc', 'balo', 'boamp', 'asso'); - $iInsee = new MInsee(); - foreach ($types as $type) { - switch($type) { - case 'bodacc': - $anns = $iInsee->getAnnoncesLegales($siren); - $total = count($anns); - break; - case 'balo': - $total = $iInsee->getAnnoncesBaloCount($siren); - break; - case 'boamp': - $total = $iInsee->getAnnoncesBoampCount($siren); - break; - case 'asso': - $total = $iInsee->getAnnoncesAssoCount($siren); - break; - } - $nb = new AnnonceNum(); - $nb->type = $type; - $nb->num = $total; - $output[] = $nb; - } - } - return $output; - } - - /** - * Retourne les annonces légales - * @param string $siren - * @param string $idAnn - * @param AnnonceFilter[] $filtre - * @param int $position - * @param int $nbRep - * @return AnnoncesReturn - */ - public function getAnnoncesLegales($siren, $idAnn = null, $filtre = null, $position = 0, $nbRep = 20) - { - $this->authenticate(); - $this->permission('annonces'); - - //Initialisation - if (empty($idAnn)) { $idAnn = null; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 100; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - - debugLog('I',"Annonces demandées pour $siren ($idAnn)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($siren)!=9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif (intval($siren)==0 && $idAnn=='') { - debugLog('W', "Siren $siren ou annonce $idAnn inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - - $isList = false; - - if ( is_null($idAnn) ) { - $anns = $iInsee->getAnnoncesLegales($siren, 0, '', false, false, true); - $nbReponses = count($anns); - $isList = true; - } else { - $anns = $iInsee->getAnnoncesLegales($siren, $idAnn, '', false, false, true); - $nbReponses = count($anns); - } - - $liste = array(); - $cpt = 0; - - if (is_array($anns)) - { - foreach ($anns as $nb => $ann) { - if ($isList===true && $nb<$position) { continue; } - $cpt++; - if ($isList===true && $cpt>$nbRep) { break; } - - //@todo : Entites - $entites = array(); - if (in_array($ann['BodaccCode'], array('BODA', 'BODB', 'BODC'))) { - $detailM = new Application_Model_JoBodaccDetail(); - $sql = $detailM->select()->from($detailM, array( - 'LPAD(siren, 9, 000000000) AS siren', - 'LPAD(nic, 5, 00000) AS nic', - 'raisonSociale','adresse', 'codePostal', 'ville', 'typeEven') - )->where('id=?', $ann['id']); - $result = $detailM->fetchAll($sql); - if (count($result)>1) { - foreach ($result as $entity) { - $entite = new AnnonceEntite(); - $entite->siret = $entity->siren.$entity->nic; - $entite->raisonSociale = $entity->raisonSociale; - - $iBodacc = new MBodacc(); - $even = new AnnonceEvenement(); - $even->CodeEven = $entity->typeEven; - $even->LibEven = $iBodacc->getEvenement($entity->typeEven); - - $entite->event = $even; - $entites[] = $entite; - } - } - } - - //List events - $evens = array(); - foreach ($ann['evenements'] as $tabEven) { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - $annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteAnnonce = prepareString($ann['texteAnnonce']); - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->entites = $entites; - $annonce->deleted = $ann['deleted']; - - $liste[] = $annonce; - } - } - - $this->wsLog('annonces',$siren,$idAnn); - - $output = new AnnoncesReturn(); - $output->nbReponses = $nbReponses; - $output->result = $liste; - return $output; - } - - /** - * Retourne les annonces du journal officiel des associations - * @param string $siren - * @param string $idAnn - * @param AnnonceFilter[] $filtre - * @param int $position - * @param int $nbRep - * @return AnnoncesReturn - */ - public function getAnnoncesAsso($siren, $idAnn = null, $filtre = null, $position = 0, $nbRep = 20) - { - $this->authenticate(); - $this->permission('annonces'); - - //Initialisation - if (empty($idAnn)) { $idAnn = 0; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 20; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - - debugLog('I',"Annonces demandées pour $siren ($filtre, $idAnn)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($siren)!=9 && substr($siren,0,1)!='W') { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif (intval($siren)==0 && is_null($idAnn)) { - debugLog('W', "Siren $siren ou annonce $idAnn inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - - $nbReponses = $iInsee->getAnnoncesAssoCount($siren, $idAnn); - $anns = $iInsee->getAnnoncesAsso($siren, $idAnn, $position, $nbRep); - - $liste = array(); - - if (is_array($anns)) - { - foreach ($anns as $nb=>$ann) - { - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - //@todo : date - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - $annonce->deleted = $ann['deleted']; - - $liste[] = $annonce; - } - } - - $this->wsLog('annonces',$siren,$idAnn); - - $output = new AnnoncesReturn(); - $output->nbReponses = $nbReponses; - $output->result = $liste; - return $output; - } - - protected function getAnnoncesBoampList($siren, $filtre = null, $position = 0, $nbRep = 20) - { - - } - - /** - * Retourne les annonces de marché public - * @param string $siren - * @param string $idAnn - * @param AnnonceFilter[] $filtre - * @param int $position - * @param int $nbRep - * @return AnnoncesReturn - */ - public function getAnnoncesBoamp($siren, $idAnn = null, $filtre = null, $position = 0, $nbRep = 20) - { - $this->authenticate(); - $this->permission('annonces'); - - //Initialisation - if (empty($idAnn)) { $idAnn = ''; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 20; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - - $type = array('A', 'M'); - - if (is_array($filtre->item) && count($filtre->item)>0) { - foreach($filtre->item as $item) { - if ( $item->key == 'type' ) { - $type = $item->value; - } - } - } - - if (strlen($siren)<>9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif (intval($siren)==0 && is_null($idAnn)) { - debugLog('W', "Siren $siren ou annonce $idAnn inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - if ( empty($idAnn) ) { - $nbReponses = $iInsee->getAnnoncesBoampCount($siren, $type); - $anns = $iInsee->getAnnoncesBoamp($siren, $idAnn, $type, $position, $nbRep); - } else { - $anns = $iInsee->getAnnoncesBoamp($siren, $idAnn, $type, 0, 1); - $nbReponses = count($anns); - } - - $liste = array(); - if (is_array($anns) && count($anns)>0) { - foreach ($anns as $nb=>$ann) { - $entites = array(); - - //Add acheteur - $identite = $iInsee->getIdentiteLight($siren); - $entite = new AnnonceEntite(); - $entite->siret = $identite['Siret']; - $entite->raisonSociale = $identite['Nom']; - $even = new AnnonceEvenement(); - //$even->CodeEven = ''; - $even->LibEven = 'Acheteur'; - $entite->event = $even; - $entites[] = $entite; - - //Search titulaire - $boamplotsM = new Application_Model_JoBoampLots(); - $sql = $boamplotsM->select()->from($boamplotsM, array( - 'LPAD(siren, 9, 000000000) AS siren', - 'LPAD(nic, 5, 00000) AS nic', 'nom','adresse','cp', 'ville', 'pays') - )->where('idAnn=?', substr($ann['id'],2)); - - $result = $boamplotsM->fetchAll($sql); - - if (count($result)>0) { - foreach ($result as $entity) { - $entite = new AnnonceEntite(); - $entite->siret = $entity->siren.$entity->nic; - $entite->raisonSociale = $entity->nom; - - $even = new AnnonceEvenement(); - //$even->CodeEven = ''; - $even->LibEven = 'Attributaire'; - $entite->event = $even; - $entites[] = $entite; - } - } - - //Events - $evens = array(); - foreach ($ann['evenements'] as $tabEven) { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - //$annonce->TribunalCode = $ann['TribunalCode']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = $ann['texteAnnonce']; - //$annonce->libFJ = $ann['libFJ']; - //$annonce->codFJ = $ann['codFJ']; - //$annonce->capital = $ann['capital']; - //$annonce->capitalDev = $ann['capitalDev']; - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->entites = $entites; - $annonce->deleted = $ann['deleted']; - - $liste[] = $annonce; - } - } - - $this->wsLog('annonces',$siren,$idAnn); - - $output = new AnnoncesReturn(); - $output->nbReponses = $nbReponses; - $output->result = $liste; - return $output; - - } - - /** - * Retourne les annonces du bulletins des annonces légales obligatoires - * @param string $siren - * @param string $idAnn - * @param AnnonceFilter[] $filtre - * @param int $position - * @param int $nbRep - * @return AnnoncesReturn - */ - public function getAnnoncesBalo($siren, $idAnn = null, $filtre = null, $position = 0, $nbRep = 20) - { - $this->authenticate(); - $this->permission('annonces'); - - //Initialisation - if (empty($idAnn)) { $idAnn = null; } - if (empty($position)) { $position = 0; } - if (empty($nbRep)) { $nbRep = 20; } - - //Valeur max - if($nbRep > 200) { $nbRep = 200; } - - debugLog('I',"Annonces demandées pour $siren ($filtre, $idAnn)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($siren)<>9) { - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif (intval($siren)==0 && is_null($idAnn)) { - debugLog('W', "Siren $siren ou annonce $idAnn inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - - if ( is_null($idAnn) ) { - $nbReponses = $iInsee->getAnnoncesBaloCount($siren); - $anns = $iInsee->getAnnoncesBalo($siren, $idAnn, $position, $nbRep); - } else { - $anns = $iInsee->getAnnoncesBalo($siren, $idAnn, 0, 1); - $nbReponses = count($anns); - } - - $liste = array(); - if (is_array($anns) && count($anns)>0) - { - foreach ($anns as $nb=>$ann) - { - $evens = array(); - foreach ($ann['evenements'] as $tabEven) - { - $even = new AnnonceEvenement(); - $even->CodeEven = $tabEven['CodeEven']; - $even->LibEven = $tabEven['LibEven']; - $evens[] = $even; - } - $annonce = new Annonce(); - $annonce->id = $ann['id']; - $annonce->BodaccCode = $ann['BodaccCode']; - $annonce->BodaccNum = $ann['BodaccNum']; - $annonce->NumAnnonce = $ann['NumAnnonce']; - $annonce->DateParution = $ann['DateParution']; //@todo : date - $annonce->Departement = $ann['Departement']; - $annonce->Tribunal = $ann['Tribunal']; - $annonce->TribunalSiret = $ann['TribunalSiret']; - $annonce->Rubrique = $ann['Rubrique']; - $annonce->typeAnnonce = $ann['typeAnnonce']; - $annonce->texteRectificatif = prepareString($ann['texteRectificatif']); - $annonce->texteAnnonce = utf8_encode($ann['texteAnnonce']); - $annonce->dateEffet = $ann['dateEffet']; //@todo : date - $annonce->dateJugement = $ann['dateJugement']; //@todo : date - $annonce->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $annonce->evenements = $evens; - $annonce->Lien_Annonce_Pdf = $ann['Lien_Annonce_Pdf']; - $annonce->deleted = $ann['deleted']; - - $liste[] = $annonce; - } - } - - $this->wsLog('annonces',$siren,$idAnn); - - $output = new AnnoncesReturn(); - $output->nbReponses = $nbReponses; - $output->result = $liste; - return $output; - } - - /** - * Evaluation indiScore d'une entreprise - * @param string $siren Siren de l'entreprise - * @param string $nic Nic de l'établissement - * @param integer $niveau Niveau des commentaires - * @param bool $plus Si true, mise en surveillance privilèges - * @param string $ref Si $plus=true, référence de la mise en Surveillance - * @param integer $encours Si $plus=true, encours client demandé lors de la mise en Surveillance - * @param string $email Si $plus=true, email client pour la mise en surveillance - * @return Indiscore - */ - public function getIndiScore($siren, $nic=0, $niveau=2, $plus=false, $ref='', $encours=0, $email='') - { - $this->authenticate(); - - //Initialisation - $accesDist = true; - if (empty($nic)) { $nic = 0; } - if (empty($niveau)) { $niveau = 2; } - if (empty($plus)) { $plus = false; } - if ( !in_array($niveau, array(0,1,2,3,4,5)) ) { $niveau = 2; } - $perm = false; - //@todo : Gestion des droits - switch($niveau){ - case 3: $perms = array('indiscore3', 'indiscore3p'); break; - case 2: $perms = array('indiscore2', 'indiscore2p', 'indiscore3', 'indiscore3p'); break; - case 1: $perms = array('indiscore', 'indiscorep'); break; - } - foreach($perms as $item){ - if ( $this->checkPerm($item) ){ - $perm = true; - break; - } - } - if ($perm === false) { - $this->sendError('0902'); - } - - $tabRet = array(); - debugLog('I',"IndiScore demandée pour $siren en niveau $niveau",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)>9 || (substr($siren,0,9)*1)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $tDeb = microtime(true); - require_once 'Metier/scores/classMScores.php'; - $tabRet = calculIndiScore($siren, $nic, $accesDist, $niveau, false, 'scores'); - $duree = round(microtime(true)-$tDeb,3); - debugLog('W', "indiscore DUREE = $duree s", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $output = new Indiscore(); - foreach($tabRet as $key => $value){ - if ($key=='paiements'){ - $parMont = $value['parMont']; - $parTrim = $value['parTrim']; - $tabMont = array(); - foreach($parMont as $parMontK => $parMontV){ - $paiementMont = new IndiscorePaiementDetail(); - $paiementMont->id = $parMontK; - $paiementMont->nb = $parMontV['nb']; - if (array_key_exists('d=180', $parMontV)){ - $paiementMont->d180 = $parMontV['d=180']; - } - if (array_key_exists('d=150', $parMontV)){ - $paiementMont->d150 = $parMontV['d=150']; - } - if (array_key_exists('d=120', $parMontV)){ - $paiementMont->d120 = $parMontV['d=120']; - } - if (array_key_exists('d=90', $parMontV)){ - $paiementMont->d90 = $parMontV['d=90']; - } - if (array_key_exists('d=60', $parMontV)){ - $paiementMont->d60 = $parMontV['d=60']; - } - if (array_key_exists('d=30', $parMontV)){ - $paiementMont->d30 = $parMontV['d=30']; - } - $tabMont[] = $paiementMont; - } - $tabTrim = array(); - foreach($parTrim as $parTrimK => $parTrimV){ - $paiementTrim = new IndiscorePaiementDetail(); - $paiementTrim->id = $parTrimK; - $paiementTrim->nb = $parTrimV['nb']; - if (array_key_exists('d=180', $parTrimV)){ - $paiementTrim->d180 = $parTrimV['d=180']; - } - if (array_key_exists('d=150', $parTrimV)){ - $paiementTrim->d150 = $parTrimV['d=150']; - } - if (array_key_exists('d=120', $parTrimV)){ - $paiementTrim->d120 = $parTrimV['d=120']; - } - if (array_key_exists('d=90', $parTrimV)){ - $paiementTrim->d90 = $parTrimV['d=90']; - } - if (array_key_exists('d=60', $parTrimV)){ - $paiementTrim->d60 = $parTrimV['d=60']; - } - if (array_key_exists('d=30', $parTrimV)){ - $paiementTrim->d30 = $parTrimV['d=30']; - } - $tabTrim[] = $paiementTrim; - } - $paiement = new IndiscorePaiement(); - $paiement->parMont = $tabMont; - $paiement->parTrim = $tabTrim; - $output->paiements = $paiement; - - } elseif ($key=='Notes_Structure') { - - $notesStructure = new IndiscoreNotesStructure(); - $notesStructure->activite = $value['activite']; - $notesStructure->naf4 = $value['naf4']; - $notesStructure->age = $value['age']; - $notesStructure->capital = $value['capital']; - $notesStructure->effectif = $value['effectif']; - $notesStructure->fj = $value['fj']; - $notesStructure->localite = $value['localite']; - $notesStructure->singulier = $value['singulier']; - $output->Notes_Structure = $notesStructure; - - } elseif ($key=='tabBilans') { - - $tabRet = array(); - foreach($value as $bilan) - { - $element = new ListeBilans(); - $element->dateProvPartenaire = $bilan['dateProvPartenaire']; //@todo : date - $element->dateInsert = $bilan['dateInsert']; //@todo : date - $element->typeBilan = $bilan['typeBilan']; - $element->dureeExercice = $bilan['dureeExercice']; - $element->dateExercice = $bilan['dateExercice']; //@todo : date - $element->millesime = $bilan['millesime']; - $element->dateExercicePre = $bilan['dateExercicePre']; //@todo : date - $element->dureeExercicePre = $bilan['dureeExercicePre']; - $element->monnaie = $bilan['monnaie']; - $element->source = $bilan['source']; - $tabRet[] = $element; - } - $output->tabBilans = $tabRet; - - } elseif ($key=='tabBilan') { - - $tabRet = array(); - foreach($value as $bilan){ - $resultBilan = new Bilan(); - $tabPoste = array(); - foreach($bilan as $bilan_key => $bilan_value){ - if(!in_array($bilan_key, array('SIREN', 'DATE_FRAICHE_BILAN', - 'DATE_CLOTURE', 'DATE_CLOTURE_PRE', 'DUREE_MOIS', - 'DUREE_MOIS_PRE', 'MONNAIE', 'CONSOLIDE', 'MONNAIE_ORI', - 'MONNAIE_LIV_UNITE', 'SOURCE', 'devise'))){ - $resultPoste = new BilanPoste(); - $resultPoste->id = $bilan_key; - $resultPoste->val = $bilan_value; - $tabPoste[] = $resultPoste; - } else { - $resultBilan->$bilan_key = $bilan_value; - } - } - $resultBilan->POSTES = $tabPoste; - $tabRet[] = $resultBilan; - } - $output->tabBilan = $tabRet; - - } elseif ($key=='tabInfosNotations') { - - $infosNotation = new IndiscoreInfosNotations(); - $infosNotation->SituationFinanciere = $value['SituationFinanciere']; - $infosNotation->Notation = $value['Notation']; - $infosNotation->ProbabiliteDefaut = $value['ProbabiliteDefaut']; - $output->tabInfosNotations = $infosNotation; - - } elseif ($key=='tabImportExport') { - - $tabRet = array(); - foreach($value as $element){ - $importExport = new IndiscoreImportExport(); - $importExport->importExport = $element['importExport']; - $importExport->annee = $element['annee']; - $importExport->rangNational = $element['rangNational']; - $importExport->deptSiege = $element['deptSiege']; - $tabRet[] = $importExport; - } - $output->tabImportExport = $tabRet; - - } elseif ($key=='tabCommentaires') { - - $tab = array(); - if (count($value)>0) { - foreach($value as $comment) { - require_once 'i18n/cleanchar.php'; - $tab[] = fixEncoding($comment); - } - } - $output->tabCommentaires = $tab; - - } elseif ($key=='tabVariables') { - - $tab = $value['CA_Y']; - $tabVar = array(); - if (count($tab)>0) { - foreach($tab as $varName => $varVal){ - $var = new CA_Y(); - $var->id = $varName; - $var->val = $varVal; - $tabVar[] = $var; - } - } - $variables = new IndiscoreVariables(); - $variables->CA_Y = $tabVar; - $output->tabVariables = $variables; - - } elseif ($key=='Bilans') { - - $tab = array(); - foreach($value as $item) - { - $objet = new IndiscoreBilans(); - $objet->Millesime = $item['Millesime']; - $objet->FraisPerso = $item['FraisPerso']; - $objet->CA = $item['CA']; - $objet->EBE = $item['EBE']; - $objet->TxInvest = $item['TxInvest']; - $objet->TxEndett = $item['TxEndett']; - $objet->DettesCT = $item['DettesCT']; - $objet->FraisFi = $item['FraisFi']; - $objet->BFR = $item['BFR']; - $objet->FR = $item['FR']; - $objet->FondsPr = $item['FondsPr']; - $objet->DelaiCli = $item['DelaiCli']; - $objet->DelaiFour = $item['DelaiFour']; - $tab[] = $objet; - } - $output->$key = $tab; - } else { - $output->$key = $value; - } - } - - if ($plus) { - if (empty($ref)) $ref='Indiscore+'; - if (empty($email)) $email=$this->tabInfoUser['email']; - $this->setSurveillance($siren, $email, $ref, 'privileges'); - $this->setSurveillance($siren, $email, $ref, 'score', false, $encours); - if ($this->tabInfoUser['idClient']==89) - $this->setSurveillance($siren, $email, $ref, 'annonces'); - $this->wsLog('indiscore+',$siren); - } else - $this->wsLog('indiscore',$siren); - return $output; - } - - /** - * Evaluation valorsation d'une entreprise - * @param string $siren Siren de l'entreprise - * @param string $nic Nic de l'établissement - * @param integer $niveau Niveau des commentaires - * @return Valo - */ - public function getValo($siren, $nic=0, $niveau=2) - { - $this->authenticate(); - $this->permission('VALORISATION'); - - //Initialisation - $accesPartenaire = true; - if (APPLICATION_ENV == 'development') { - $accesPartenaire = false; - } - if (empty($nic)) { - $nic = 0; - } - $niveau = 2; - - $tabRet = array(); - debugLog('I',"IndiScore demandée pour $siren en niveau $niveau",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)>9 || (substr($siren,0,9)*1)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $tDeb = microtime(true); - require_once 'Metier/scores/classMScores.php'; - $tabRet = calculIndiScore($siren, $nic, $accesPartenaire, $niveau, false, 'valo'); - $duree = round(microtime(true)-$tDeb,3); - debugLog('W', "indiscore DUREE = $duree s", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $ouput = new Valo(); - - $Indiscore = new Indiscore(); - - foreach($tabRet as $key => $value){ - if ($key=='paiements'){ - $parMont = $value['parMont']; - $parTrim = $value['parTrim']; - $tabMont = array(); - foreach($parMont as $parMontK => $parMontV){ - $paiementMont = new IndiscorePaiementDetail(); - $paiementMont->id = $parMontK; - $paiementMont->nb = $parMontV['nb']; - if (array_key_exists('d=180', $parMontV)){ - $paiementMont->d180 = $parMontV['d=180']; - } - if (array_key_exists('d=150', $parMontV)){ - $paiementMont->d150 = $parMontV['d=150']; - } - if (array_key_exists('d=120', $parMontV)){ - $paiementMont->d120 = $parMontV['d=120']; - } - if (array_key_exists('d=90', $parMontV)){ - $paiementMont->d90 = $parMontV['d=90']; - } - if (array_key_exists('d=60', $parMontV)){ - $paiementMont->d60 = $parMontV['d=60']; - } - if (array_key_exists('d=30', $parMontV)){ - $paiementMont->d30 = $parMontV['d=30']; - } - $tabMont[] = $paiementMont; - } - $tabTrim = array(); - foreach($parTrim as $parTrimK => $parTrimV){ - $paiementTrim = new IndiscorePaiementDetail(); - $paiementTrim->id = $parTrimK; - $paiementTrim->nb = $parTrimV['nb']; - if (array_key_exists('d=180', $parTrimV)){ - $paiementTrim->d180 = $parTrimV['d=180']; - } - if (array_key_exists('d=150', $parTrimV)){ - $paiementTrim->d150 = $parTrimV['d=150']; - } - if (array_key_exists('d=120', $parTrimV)){ - $paiementTrim->d120 = $parTrimV['d=120']; - } - if (array_key_exists('d=90', $parTrimV)){ - $paiementTrim->d90 = $parTrimV['d=90']; - } - if (array_key_exists('d=60', $parTrimV)){ - $paiementTrim->d60 = $parTrimV['d=60']; - } - if (array_key_exists('d=30', $parTrimV)){ - $paiementTrim->d30 = $parTrimV['d=30']; - } - $tabTrim[] = $paiementTrim; - } - $paiement = new IndiscorePaiement(); - $paiement->parMont = $tabMont; - $paiement->parTrim = $tabTrim; - $Indiscore->paiements = $paiement; - - } elseif ($key=='Notes_Structure') { - - $notesStructure = new IndiscoreNotesStructure(); - $notesStructure->activite = $value['activite']; - $notesStructure->naf4 = $value['naf4']; - $notesStructure->age = $value['age']; - $notesStructure->capital = $value['capital']; - $notesStructure->effectif = $value['effectif']; - $notesStructure->fj = $value['fj']; - $notesStructure->localite = $value['localite']; - $notesStructure->singulier = $value['singulier']; - $Indiscore->Notes_Structure = $notesStructure; - - } elseif ($key=='tabBilans') { - - $tabRet = array(); - foreach($value as $bilan) - { - $element = new ListeBilans(); - $element->dateProvPartenaire = $bilan['dateProvPartenaire']; //@todo : date - $element->dateInsert = $bilan['dateInsert']; //@todo : date - $element->typeBilan = $bilan['typeBilan']; - $element->dureeExercice = $bilan['dureeExercice']; - $element->dateExercice = $bilan['dateExercice']; //@todo : date - $element->millesime = $bilan['millesime']; - $element->dateExercicePre = $bilan['dateExercicePre']; //@todo : date - $element->dureeExercicePre = $bilan['dureeExercicePre']; - $element->monnaie = $bilan['monnaie']; - $element->source = $bilan['source']; - $tabRet[] = $element; - } - $Indiscore->tabBilans = $tabRet; - - } elseif ($key=='tabBilan') { - - $tabRet = array(); - foreach($value as $bilan){ - $resultBilan = new Bilan(); - $tabPoste = array(); - foreach($bilan as $bilan_key => $bilan_value){ - if(!in_array($bilan_key, array('SIREN', 'DATE_FRAICHE_BILAN', - 'DATE_CLOTURE', 'DATE_CLOTURE_PRE', 'DUREE_MOIS', - 'DUREE_MOIS_PRE', 'MONNAIE', 'CONSOLIDE', 'MONNAIE_ORI', - 'MONNAIE_LIV_UNITE', 'SOURCE', 'devise'))){ - $resultPoste = new BilanPoste(); - $resultPoste->id = $bilan_key; - $resultPoste->val = $bilan_value; - $tabPoste[] = $resultPoste; - } else { - $resultBilan->$bilan_key = $bilan_value; - } - } - $resultBilan->POSTES = $tabPoste; - $tabRet[] = $resultBilan; - } - $Indiscore->tabBilan = $tabRet; - - } elseif ($key=='tabInfosNotations') { - - $infosNotation = new IndiscoreInfosNotations(); - $infosNotation->SituationFinanciere = $value['SituationFinanciere']; - $infosNotation->Notation = $value['Notation']; - $infosNotation->ProbabiliteDefaut = $value['ProbabiliteDefaut']; - $Indiscore->tabInfosNotations = $infosNotation; - - } elseif ($key=='tabImportExport') { - - $tabRet = array(); - foreach($value as $element){ - $importExport = new IndiscoreImportExport(); - $importExport->importExport = $element['importExport']; - $importExport->annee = $element['annee']; - $importExport->rangNational = $element['rangNational']; - $importExport->deptSiege = $element['deptSiege']; - $tabRet[] = $importExport; - } - $Indiscore->tabImportExport = $tabRet; - - } elseif ($key=='tabCommentaires') { - - $tab = array(); - foreach($value as $comment) { - require_once 'i18n/cleanchar.php'; - $tab[] = fixEncoding($comment); - } - $Indiscore->tabCommentaires = $tab; - - } elseif ($key=='tabVariables') { - - $tab = $value['CA_Y']; - $tabVar = array(); - if (count($tab)>0) { - foreach($tab as $varName => $varVal){ - $var = new CA_Y(); - $var->id = $varName; - $var->val = $varVal; - $tabVar[] = $var; - } - } - $variables = new IndiscoreVariables(); - $variables->CA_Y = $tabVar; - $Indiscore->tabVariables = $variables; - - } elseif ($key=='Bilans') { - - $tab = array(); - foreach($value as $item) - { - $objet = new IndiscoreBilans(); - $objet->Millesime = $item['Millesime']; - $objet->FraisPerso = $item['FraisPerso']; - $objet->CA = $item['CA']; - $objet->EBE = $item['EBE']; - $objet->TxInvest = $item['TxInvest']; - $objet->TxEndett = $item['TxEndett']; - $objet->DettesCT = $item['DettesCT']; - $objet->FraisFi = $item['FraisFi']; - $objet->BFR = $item['BFR']; - $objet->FR = $item['FR']; - $objet->FondsPr = $item['FondsPr']; - $objet->DelaiCli = $item['DelaiCli']; - $objet->DelaiFour = $item['DelaiFour']; - $tab[] = $objet; - } - $Indiscore->$key = $tab; - } else { - $Indiscore->$key = $value; - } - } - - $output->Indiscore = $Indiscore; - - //Ratios - global $tva, $mBil, $tabBilan, $efftr, $tabInfla; - $tabFormules = include APPLICATION_PATH . '/../library/Metier/scores/Variables/CacheTabFormules.php'; - require_once 'Metier/scores/Variables/configMRatios.php'; - - $mBil = new MBilans($siren); - $tabBilans = $mBil->listeBilans($accesPartenaire); - - $nbBilans = count($tabBilans); - $tabBilan = $tabBil = array(); - if ($nbBilans>0) { - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteEntreprise($siren,0,0,false,false); - debugLog('I',"Liste des Ratios demandée pour $siren après getIdentiteEntreprise",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $naf = $tabIdentite['NafEnt']; - $nafLib = $tabIdentite['NafEntLib']; - $efftr = $tabIdentite['Effectif']*1; - $fj = $tabIdentite['FJ']; - - $tabRatios = calculRatios($tabBilans, $tabIdentite, $accesPartenaire); - } - $nbRatios = count($tabRatios); - debugLog('I',"Liste des Ratios demandée pour $siren après calculRatios ($nbRatios)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - //Tableau d'infos sur les formules - $tabBorneMin = $tabBorneMax = array(); - foreach ($tabFormules as $formule) { - $id = $formule['id']*1; - $libelle = $formule['libelle']; - $unite = $formule['unite']; - $commentaires = $formule['commentaires']; - $tabFormulesInfos[$id] = $formule; //Pour la gestion des unités des ratios secteur - $ratiosInfos = new RatiosInfos(); - $ratiosInfos->id = 'r'.$id; - $ratiosInfos->libelle = $formule['libelle']; - $ratiosInfos->unite = $formule['unite']; - $ratiosInfos->commentaires = $formule['commentaires']; - - $tabRatiosInfos[] = $ratiosInfos; - $tabBorneMin[$id] = $formule['borneMin']; - $tabBorneMax[$id] = $formule['borneMax']; - } - - $tabAnnees = array(); - if ( $nbRatios > 0 ) { - foreach ( $tabRatios as $i=>$R ) { - //Informations sur le bilan - $bilansInfos = new RatiosBilansInfos(); - $bilansInfos->dateCloture = $tabBilan[$i]['DATE_CLOTURE']; //@todo : date - $bilansInfos->duree = $tabBilan[$i]['DUREE_MOIS']; - $bilansInfos->devise = $tabBilan[$i]['MONNAIE']; - $bilansInfos->typeBilan = $tabBilan[$i]['CONSOLIDE']; - $bilansInfos->unite = 'U'; - if ( substr($tabBilan[$i]['DATE_CLOTURE'],0,4)>1900 ){ - $tabAnnees[$i]=substr($tabBilan[$i]['DATE_CLOTURE'],0,4); - } - - $tabRatiosEntrep = array(); - $tabRatiosEntrepEvol = array(); - foreach ( $R as $Ridx=>$Rmont ) { - if ($Rmont<>'NS') { - if ( $tabBorneMin[$Ridx]<>'' && $Rmont<$tabBorneMin[$Ridx] ){ - $Rmont='<'.$tabBorneMin[$Ridx]; - } elseif ( $tabBorneMax[$Ridx]<>'' && $Rmont>$tabBorneMax[$Ridx] ){ - $Rmont='>'.$tabBorneMax[$Ridx]; - } - } - - // RatiosEntrep - $ratiosEntrep = new Ratios(); - if (substr($Rmont,0,1)=='N' || substr($Rmont,0,1)=='<' || substr($Rmont,0,1)=='>'){ - $ratiosEntrep->id = 'r'.$Ridx; - $ratiosEntrep->val = $Rmont; - } else { - $ratiosEntrep->id = 'r'.$Ridx; - $ratiosEntrep->val = round($Rmont,2); - } - $tabRatiosEntrep[] = $ratiosEntrep; - - if ( ( $tabBilan[$i]['CONSOLIDE']=='S' && isset($tabRatios[$i+1]) && ($tabBilan[$i+1]['CONSOLIDE']=='S' - || ($tabBilan[$i+1]['CONSOLIDE']=='N' && $tabBilan[$i+1]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']) ) ) - || ( $tabBilan[$i]['CONSOLIDE']=='N'&&isset($tabRatios[$i+1])&&($tabBilan[$i+1]['CONSOLIDE']=='N' - || ($tabBilan[$i+1]['CONSOLIDE']=='S'&&$tabBilan[$i+1]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE'])) ) - ) { - $Rmont=(($R[$Ridx]-$tabRatios[$i+1][$Ridx])*100)/abs($tabRatios[$i+1][$Ridx]); - } - elseif ( ( $tabBilan[$i]['CONSOLIDE']=='S' && isset($tabRatios[$i+1]) && ($tabBilan[$i+2]['CONSOLIDE']=='S' - || ($tabBilan[$i+2]['CONSOLIDE']=='N' && $tabBilan[$i+2]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE'])) ) - || ( $tabBilan[$i]['CONSOLIDE']=='N' && isset($tabRatios[$i+1]) && ($tabBilan[$i+2]['CONSOLIDE']=='N' - || ($tabBilan[$i+2]['CONSOLIDE']=='S'&& $tabBilan[$i+2]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE'])) ) - ) { - $Rmont = (($R[$Ridx]-$tabRatios[$i+2][$Ridx])*100)/abs($tabRatios[$i+2][$Ridx]); - } else { - $Rmont = 'NS'; - } - - // RatiosEntrepEvol - $ratiosEntrepEvol = new Ratios(); - if ($Rmont=='NS' || $Rmont<-800 || $Rmont>800){ - $ratiosEntrepEvol->id = 'r'.$Ridx; - $ratiosEntrepEvol->val = 'NS'; - } else { - $ratiosEntrepEvol->id = 'r'.$Ridx; - $ratiosEntrepEvol->val = number_format($Rmont,2,',',' '); - } - $tabRatiosEntrepEvol[] = $ratiosEntrepEvol; - } - $bilansInfos->RatiosEntrep = $tabRatiosEntrep; - $bilansInfos->RatiosEntrepEvol = $tabRatiosEntrepEvol; - $tabBilansR[] = $bilansInfos; - } - } - debugLog('I',"Liste des Ratios demandée pour $siren après EVOLUTION",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - // Tableau des ratios secteurs - if (strlen($naf)>4) $strNaf = " AND naf5='$naf' "; - else $strNaf = " AND naf4='$naf' "; - $strAnnees = implode(',', $tabAnnees); - - $tabRatiosSecteurs = array(); - - $tabAnnees = array_unique($tabAnnees); - - if ( count($tabAnnees)>0 ) { - $iDb = new WDB('jo'); - $tabTmp = $iDb->select('ratios_secteurs', - 'annee, naf5, naf4, id, (montant/nombre) AS ratio, nombre', - "1 $strNaf AND annee IN ($strAnnees) ORDER BY annee DESC, id ASC", - false, MYSQL_ASSOC); - - $nbRatiosSec = 0; - foreach($tabAnnees as $annee) { - $ratiosSecteur = new RatiosSecteur(); - $ratiosSecteur->annee = $annee; - foreach ($tabTmp as $tmp) - { - if ($tmp['annee']== $annee) - { - $Ridx = $tmp['id']; - if ($tmp['nombre']>$nbRatiosSec){ - $nbRatiosSec = $tmp['nombre']; - } - - $unite = $tabFormulesInfos[$Ridx]['unite']; - if ($unite=='EUR'){ - $montant = round($tmp['ratio']*1000); - } else { - $montant = round($tmp['ratio']); - } - if ($tabBorneMin[$Ridx]<>'' && $montant<$tabBorneMin[$Ridx]){ - $montant='<'.$tabBorneMin[$Ridx]; - } elseif ($tabBorneMax[$Ridx]<>'' && $montant>$tabBorneMax[$Ridx]){ - $montant='>'.$tabBorneMax[$Ridx]; - } - - $ratiosSecteurListe = new Ratios(); - if (substr($montant,0,1)=='N' || substr($montant,0,1)=='<' || substr($montant,0,1)=='>'){ - $ratiosSecteurListe->id = 'r'.$Ridx; - $ratiosSecteurListe->val = $montant; - } else { - $ratiosSecteurListe->id = 'r'.$Ridx; - $ratiosSecteurListe->val = round($montant,2); - } - $ratiosSecteur->liste[] = $ratiosSecteurListe; - } - } - $tabRatiosSecteurs[] = $ratiosSecteur; - } - } - - $output->RatiosBilansInfos = $tabBilansR; - $output->RatiosInfos = $tabRatiosInfos; - $output->RatiosSecteur = $tabRatiosSecteurs; - - $this->wsLog('valorisation',$siren); - return $output; - } - - /** - * Liste de tous les évènements enregistrés à l'INSEE pour une entreprise - * @param string $siren Siren de l'entreprise - * @param string $nic - * @param integer $position - * @param integer $nbRep - * @return InseeReturn - **/ - public function getListeEvenements($siren, $nic=0, $position=0, $nbRep=1000) - { - $this->authenticate(); - $this->permission('eveninsee'); - - //Initialisation - if (empty($nic)) { $nic = 0; } - if (empty($position)) { $position = 0; } - if (empty($nbRep) || $nbRep>1000) { $nbRep = 1000; } - - debugLog('I',"Liste des évènements pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - - //@todo : compter la liste des événéments pour pouvoir faire la pagination - - $evens = $iInsee->getEvenements($siren, $nic, $position, $nbRep); - $tabRet = array(); - if (count($evens)>0) { - foreach ($evens as $key => $row) { - $date[$key] = $row['dateMAJ']; - } - array_multisort($date, SORT_DESC, $evens); - foreach ($evens as $nb=>$even) { - $iEven = new InseeEven(); - $iEven->Nic = $even['nic']; - $iEven->Siege = $even['siege']; - $iEven->SiretAss = $even['siretAssocie']; - $iEven->TypeSiretAss = $even['typeSiretAss']; - $iEven->EvenCode = $even['codeEven']; - $iEven->EvenLib = $even['libEven']; - $iEven->EvenLibDet = $even['libEvenDet']; - $iEven->EvenDate = $even['dateEven']; //@todo : date - $iEven->DateInfo = $even['dateMAJ']; //@todo : date - $tabRet[] = $iEven; - } - } - - debugLog('I', 'Nb évènements retournés = '. count($tabRet), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('evenements',$siren); - $output = new InseeReturn(); - $output->nbReponses = count($tabRet); // @todo : retrouver le nombre total d'évenements - $output->result = $tabRet; - return $output; - } - - - /** - * Recherche - * @param EntrepriseCriteres $criteres - * @param integer $position Position de parcours des résultats retournées (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées lors d'une requête (20 par défaut) - * @param integer $maxRep Nombre de réponses maximum pouvant être retournées lors d'une requête (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (false par défaut) - * @param boolean $avecSiren Seulement les entités sirénées (false par défaut) - * @return SearchEntrepriseReturn - */ - public function searchEntreprise($criteres, $position = 0, $nbRep = 20, $maxRep = 200, $pertinence = false, $avecSiren = false) - { - $this->authenticate(); - - if (empty($position)) { $position = 0;} - if (empty($nbRep)) { $nbRep = 20; } - if (empty($maxRep)) { $maxRep = 200; } - - require_once 'i18n/cleanchar.php'; - - $entCriteres = new EntrepriseCriteres(); - $entCriteres = $criteres; - $identifiant = $entCriteres->identifiant; - $typeId = ''; - - //Detection autour de l'identifiant - if ($identifiant!='') { - $len = strlen($identifiant); - //Numéro WALDEC - if (strtoupper(substr($identifiant,0,1))=='W') { - $typeId = 'W'; - //Code ISIN - } elseif ($len==12){ - $typeId = 'I'; - //TVA Intracommunautaire - } elseif (in_array(substr($identifiant,0,2), - array('AT','BE','BG','CY','CZ','DE','DK','EE','EL','ES', - 'FI','GB','HU','IE','IT','LT','LU','LV','MT','NL','PL', - 'PT','RO','SE','SI','SK'))){ - //"La recherche par numéro de TVA n'est pas encore possible sur ce pays !"; - //Pour la france - } elseif (substr($identifiant,0,2)=='FR') { - $typeId = 'S'; - if ($len==13) $identifiant = substr($identifiant,4,9); - else $identifiant = ''; - //Numéro RC - } elseif (preg_match('/A|B|C|D/i', $identifiant)) { - $typeId = 'R'; - //Siren normal on enleve tout ce qui n'est pas un chiffre - } else { - $typeId = 'S'; - } - } - - $adresse = trim($entCriteres->adresse); - - //Détection Tel/Fax uniquement - if ( empty($typeId) - && empty($entCriteres->raisonSociale) - && empty($adresse) - && empty($entCriteres->codePostal) - && empty($entCriteres->ville) - && empty($entCriteres->naf) ){ - $typeId = 'TEL'; - } - - if (in_array($typeId, array('R', 'W', 'I'))){ - - $O = $this->searchAutreId( - $typeId, - $identifiant, - $entCriteres->codePostal, - $entCriteres->actif, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep - ); - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } elseif ($typeId == 'S'){ - - $O = $this->searchSiren( - $identifiant, - $entCriteres->codePostal, - $entCriteres->actif, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - $output->info = $O->info; - return $output; - - } elseif ($typeId == 'TEL'){ - - $O = $this->searchTelFax( - $entCriteres->telFax, - $entCriteres->actif, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - - } else { - - $O = $this->searchNomAdr( - cleanstring($entCriteres->raisonSociale), - cleanstring($entCriteres->adresse), - $entCriteres->codePostal, - cleanstring($entCriteres->ville), - empty($entCriteres->siege) ? false : $entCriteres->siege, - $entCriteres->actif, - empty($position) ? 0 : $position, - empty($nbRep) ? 20 : $nbRep, - empty($maxRep) ? 200 : $maxRep, - empty($pertinence) ? false : $pertinence, - empty($avecSiren) ? false : $avecSiren, - $entCriteres->naf, - $entCriteres->fj - ); - - $output = new SearchEntrepriseReturn(); - $output->nbReponses = $O->nbReponses; - $output->nbReponsesTotal = $O->nbReponsesTotal; - $output->result = $O->result; - return $output; - } - } - - /** - * Recherche d'entreprise par dirigeants - * @param DirigeantCriteres $criteres - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchDirReturn - */ - public function searchDir($criteres, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - $nom = $criteres->nom; - $prenom = $criteres->prenom; - $dateNaiss = $criteres->dateNaiss; - $lieuNaiss = $criteres->lieuNaiss; - $pertinence = $criteres->pertinence; - - debugLog('I',"Recherche Dirigeant de $nom, $prenom, $dateNaiss, $lieuNaiss (Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($prenom)) $prenom = ''; - if (empty($dateNaiss)) $dateNaiss = ''; - if (empty($lieuNaiss)) $lieuNaiss = ''; - if (empty($pertinence)) $pertinence = false; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - - $iInsee = new MInsee(); - $etabs = $iInsee->rechercheDir($nom, $prenom, '', $dateNaiss, $lieuNaiss, $deb, $nbRep, $maxRep, $pertinence); - - $tabRet = array(); - foreach ($etabs['reponses'] as $etab) { - $item = new EntrepriseDirItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = $iInsee->getLibelleFJ($etab['FJ']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($iInsee->getLibelleNaf($etab['NafEtab'])); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($iInsee->getLibelleNaf($etab['NafEnt'])); - - // Dirigeant - $item->DirRs = prepareString($etab['DirRs']); - $item->DirNom = prepareString($etab['DirNom']); - $item->DirPrenom = prepareString($etab['DirPrenom']); - $item->DirNomUsage = prepareString($etab['DirNomUsage']); - $item->DirDateEffet = $etab['DirDateEffet']; - $item->DirFonction = prepareString($etab['DirFonction']); - $item->DirDepart = $etab['DirDepart']; - $tabRet[] = $item; - } - - if ($etabs['nbReponses']==0){ - debugLog('W', "Aucun résultat pour cette recherche !", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - } - - $search = new SearchDirReturn(); - $search->nbReponses = $etabs['nbReponses']; - $search->nbReponsesTotal = $etabs['nbReponsesTotal']; - $search->result = $tabRet; - return $search; - } - - /** - * Recherche d'entreprise ou d'établissement par un autre Identifiant - * - * @param string $typeId I=Code Isin, W=N°Waldec (Associations) ou R=N°RC (Registre Greffe) - * @param string $identifiant Identifiant recherché - * @param integer $dep Département - * @param integer $actif 0 : Filtre sur les inactfis, 1: Filtre sur les actifs, 2 : Tous (defaut) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchAutreId($typeId, $identifiant, $dep=0, $actif=2, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - if (empty($dep)) $dep = 0; - if (!in_array($actif, array(0,1,2))) $actif = 2; - - $typeId = substr(trim(strtoupper($typeId)),0,1); - - if ($typeId!='I' && $typeId!='W' && $typeId!='R') { - debugLog('I',"Type d'identifiant $typeId inexistant",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1021'); - } - $tabRet = array(); - debugLog('I',"Recherche par identifiant $typeId de $identifiantavec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if ($typeId=='W' || $typeId=='R') - { - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('AUTRE', $identifiant, $deb, $nbRep, $maxRep, $dep, $actif); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } else { - $iBourse = new MBourse($siren); - $siren = $iBourse->getCodeSiren($identifiant); - return $this->searchSiren($siren, $dep, $actif, $deb, $nbRep, $maxRep); - } - } - - - /** - * Recherche d'entreprise ou d'établissement par leur TEL FAX - * - * @param string $telFax Téléphone ou fax de l'établissement (ex: 0175438010) - * @param integer $actif 0 : Filtre sur les inactfis, 1: Filtre sur les actifs, 2 : Tous (defaut) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchTelFax($telFax, $actif=2, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 0; - if (empty($maxRep)) $maxRep = 0; - if (!in_array($actif, array(0,1,2))) $actif = 2; - - $tabRet = array(); - debugLog('I',"Recherche par Tel/Fax de $telFax avec un maximum de $nbRep réponses",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - //$assocs=$this->iInsee->rechercheEtab($raisonSociale, $adresse, $codePostal, $ville, $siege, $nbRep, $pertinence); - /** @todo A FAIRE **/ - if (strlen($telFax)<10 || strlen($telFax)>14) { - debugLog('W', "Tel/Fax $telFax incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1011'); - } - - $iInsee = new MInsee(); - $rep = $iInsee->getEtablissementsParId('TEL', $telFax, $deb, $nbRep, $maxRep, 0, $actif); - $etabs = $rep['reponses']; - foreach ($etabs as $nb=>$etab) - { - $item = new EntrepriseItem(); - $item->id = $etab['id']; - $item->Pertinence = $etab['Pertinence']; - $item->Siret = $etab['Siret']; - $item->Siege = $etab['Siege']; - $item->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $item->Nom2 = prepareString($etab['Nom2']); - $item->Sigle = prepareString($etab['Sigle']); - $item->Enseigne = prepareString($etab['Enseigne']); - $item->Adresse = prepareString($etab['Adresse']); - $item->Adresse2 = prepareString($etab['Adresse2']); - $item->CP = $etab['CP']; - $item->Ville = prepareString($etab['Ville']); - $item->Tel = $etab['Tel']; - $item->Fax = $etab['Fax']; - $item->FJ = $etab['FJ']; - $item->FJLib = prepareString($etab['FJLib']); - $item->Siren = $etab['Siren']; - $item->Nic = $etab['Nic']; - $item->Actif = $etab['Actif']; - $item->NafEtab = $etab['NafEtab']; // Etablissement - $item->NafEtabLib = prepareString($etab['NafEtabLib']); // Etablissement - $item->NafEnt = $etab['NafEnt']; // Entreprise - $item->NafEntLib = prepareString($etab['NafEntLib']); - $tabRet[] = $item; - } - - $output = new SearchReturn(); - $output->nbReponses = $rep['nbReponses']; - $output->nbReponsesTotal = $rep['nbReponsesTotal']; - $output->result = $tabRet; - return $output; - } - - - /** - * Recherche entreprise par nom et adresse - * @param string $raisonSociale Raison Sociale ou Enseigne ou Sigle - * @param string $adresse Adresse de l'entreprise, du type : 3 rue des Plantes - * @param string $codePostal Code postal (ex: 75014) - * @param string $ville Ville - * @param boolean $siege Limitation de la recherche aux sièges (si true) - * @param integer $actif 0 : Filtre sur les inactfis, 1: Filtre sur les actifs, 2 : Tous (defaut) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur le nom, l'adresse et la ville (si true) - * @param boolean $avecSiren Ne proposer que les entités sirénées - * @param string $ape_etab - * @param integer $fj Code Forme juridique - * @return SearchReturn - */ - public function searchNomAdr($raisonSociale, $adresse='', $codePostal='', $ville='', $siege=false, $actif=2, $deb=0, $nbRep=20, $maxRep=200, $pertinence=false, $avecSiren=false, $ape_etab='', $fj=null) - { - $this->authenticate(); - - debugLog('I',"Recherche Entreprise de $raisonSociale, $adresse, $codePostal $ville (Siège=$siege / Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($adresse)) $adresse = ''; - if (empty($codePostal)) $codePostal = ''; - if (empty($ville)) $ville = ''; - if (empty($siege)) $siege = false; - if (!in_array($actif, array(0,1,2))) $actif = 2; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($pertinence)) $pertinence = false; - if (empty($avecSiren)) $avecSiren = false; - if (empty($ape_etab)) $ape_etab = ''; - if (!preg_match('/[0-9]{4}/',$fj)) $fj = null; - - $iInsee = new MInsee(); - $etabs = $iInsee->rechercheEtab( - $raisonSociale, - $adresse, - $codePostal, - $ville, - $siege, - $actif, - $deb, - $nbRep, - $maxRep, - $pertinence, - $avecSiren, - $ape_etab, - $fj - ); - - $result = new SearchReturn(); - $tabRet = array(); - if (count($etabs['reponses'])) { - foreach ($etabs['reponses'] as $etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = strtr($etab['Nom'],'/*',' '); - $reponse->Nom2 = $etab['Nom2']; - $reponse->Sigle = $etab['Sigle']; - $reponse->Enseigne = $etab['Enseigne']; - $reponse->Adresse = $etab['Adresse']; - $reponse->Adresse2 = $etab['Adresse2']; - $reponse->CP = $etab['CP']; - $reponse->Ville = $etab['Ville']; - $reponse->Pays = $etab['Pays']; - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = $iInsee->getLibelleFJ($etab['FJ']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = prepareString($iInsee->getLibelleNaf($etab['NafEtab'])); // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = prepareString($iInsee->getLibelleNaf($etab['NafEnt'])); - - $tabRet[] = $reponse; - } - } - - $siretTrouve = 0; - if ($etabs['nbReponses']==0) { - - debugLog('I', "rechercheEtab : AUCUN RESULTAT, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = count($tabRet); - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - - return $result; - } - - if ($etabs['nbReponses']==1) $siretTrouve=$etabs['reponses'][0]['Siret']; - debugLog('I', "rechercheEtab : ".$etabs['nbReponses']." RESULTATS, S=$raisonSociale, R=$adresse, L=$codePostal, V=$ville, A=$ape_etab ($siege, $actif, $deb, $nbRep, $maxRep, $pertinence, $avecSiren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $result->nbReponses = $etabs['nbReponses']; - $result->nbReponsesTotal = $etabs['nbReponsesTotal']; - $result->result = $tabRet; - return $result; - } - - /** - * Recherche d'entreprise ou d'établissement par leur identifiant SIREN ou SIRET - * @param string $siret Siren ou Siret de l'entreprise ou de l'établissement sur 9 ou 14 chiffres significatifs - * @param integer $dep Département - * @param integer $actif 0 : Filtre sur les inactfis, 1: Filtre sur les actifs, 2 : Tous (defaut) - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @return SearchReturn - */ - public function searchSiren($siret, $dep=0, $actif=2, $deb=0, $nbRep=20, $maxRep=200) - { - $this->authenticate(); - - debugLog('I',"Recherche par Siret de $siret (dep=$dep) avec un maximum de $maxRep réponses pour la tranche $deb à $nbRep",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ( strlen($siret)!=14 && strlen($siret)!=9 ){ - debugLog('W', "Siren/Siret $siret incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($dep)) $dep = 0; - if (empty($siege)) $siege = null; - - if (!in_array($actif, array(0,1,2))) $actif = 2; - if ( $actif==2 ) $actif = -1; - - $nbReponsesTotal = $nbReponses = 0; - - $siren = substr($siret,0,9); - if (strlen($siret)==14) $nic = substr($siret,9,5); - elseif (strlen($siret)== 9) $nic = ''; - - $iInsee = new MInsee(); - - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep, $dep, $actif, $siege); - if ( count($rep['reponses'])==0 && $dep>0 ) { - $rep = $iInsee->getEtablissements($siren, $nic, $deb, $nbRep, $maxRep, 0, $actif, $siege); - } - $etabs = $rep['reponses']; - $tabRet = array(); - if (count($etabs)>0){ - foreach ($etabs as $nb=>$etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Pays = prepareString($etab['Pays']); - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = prepareString($etab['FJLib']); - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; // Etablissement - $reponse->NafEtabLib = $etab['NafEtabLib']; // Etablissement - $reponse->NafEnt = $etab['NafEnt']; // Entreprise - $reponse->NafEntLib = $etab['NafEntLib']; - $tabRet[] = $reponse; - } - } - $nbReponsesTotal = $rep['nbReponsesTotal']; - $nbReponses = $rep['nbReponses']; - - /** Si le siren est valide, on part chez Infogreffe **/ - if (count($tabRet)==0 && $iInsee->valideSiren($siren)) { - $iGeffes = new MGreffes(); - $etab = $iGeffes->getIdentite($siren); - if ($etab) { - $reponse = new EntrepriseItem(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Siret = $etab['Siret']; - $reponse->Siege = $etab['Siege']; - $reponse->Nom = prepareString($etab['Nom']); - $reponse->Nom2 = prepareString($etab['Nom2']); - $reponse->Sigle = prepareString($etab['Sigle']); - $reponse->Enseigne = prepareString($etab['Enseigne']); - $reponse->Adresse = prepareString($etab['Adresse']); - $reponse->Adresse2 = prepareString($etab['Adresse2']); - $reponse->CP = $etab['CP']; - $reponse->Ville = prepareString($etab['Ville']); - $reponse->Pays = 'France'; - $reponse->Tel = $etab['Tel']; - $reponse->Fax = $etab['Fax']; - $reponse->FJ = $etab['FJ']; - $reponse->FJLib = $etab['FJLib']; - $reponse->Siren = $etab['Siren']; - $reponse->Nic = $etab['Nic']; - $reponse->Actif = $etab['Actif']; - $reponse->NafEtab = $etab['NafEtab']; - $reponse->NafEtabLib = $etab['NafEtabLib']; - $reponse->NafEnt = $etab['NafEnt']; - $reponse->NafEntLib = $etab['NafEntLib']; - - $tabRet[] = $reponse; - $nbReponses = 1; - $nbReponsesTotal = 1; - - } else { - $iDb = new WDB(); - $iDb->insert('siren_inexistants', - array( 'siren'=>$siren, - 'nic'=>$nic, - 'dep'=>$dep, - 'login'=>$this->tabInfoUser['login'], - 'client'=>$this->tabInfoUser['idClient'], - 'dateInsert'=>date('YmdHis'))); - $nbReponses = 0; - $nbReponsesTotal = 0; - } - } - - $output = new SearchReturn(); - $output->nbReponses = $nbReponses; - $output->nbReponsesTotal = $nbReponsesTotal; - $output->result = $tabRet; - $output->info = $rep['info']; - return $output; - } - - - - - /** - * Retourne la fiche d'identité simplifié d'une entreprise avec son numéro de TVA. - * - * @param string $siren Identifiant Siren de l'entreprise - * @return TvaReturn - */ - public function getTVA($siren) - { - $this->authenticate(); - - //Initialisation - $siren = trim($siren); - debugLog('I',"TVA demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - debugLog('I', "Avant getIdentiteEntreprise($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteEntreprise($siren); - debugLog('I', "Après getIdentiteEntreprise($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($entrep)) - { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1020'); - } - - debugLog('I', "Avant MTva($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $iTva = new MTva($siren); - if ($iTva->vatDefined) $tva=$iTva->vatNumber; - else $tva='N/A'; - debugLog('I', "Après MTva($siren)", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - - $output = new TvaReturn(); - $output->id = $entrep['id']; - $output->AutreId = $entrep['AutreId']; - $output->Nom = $entrep['Nom']; - $output->Sigle = $entrep['Sigle']; - $output->Enseigne = $entrep['Enseigne']; - $output->Adresse = $entrep['Adresse']; - $output->Adresse2 = $entrep['Adresse2']; - $output->CP = $entrep['CP']; - $output->Ville = $entrep['Ville']; - $output->Siren = $entrep['Siren']; - $output->Tva = $tva; - - debugLog('I', "TVA retournée = $tva (".$entrep['Nom'].')', __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('tva',$siren); - - return $output; - } - - /** - * Retourne tout ou patie des informations règlementées sur l'entreprise - * - * @param string $siren SIREN de l'entreprise - * @param integer $id Id du communiqué - * @return InfosRegReturn - */ - public function getInfosReg( $siren, $id = null ) - { - $this->authenticate(); - $this->permission('infosreg'); - - //Initialisation - if (empty($id)) $id = null; - $tabRet = array(); - $siren = substr($siren,0,9); - - debugLog('I',"Infos règlementées demandées pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - $iBourse = new MBourse($siren); - $anns = $iBourse->getInfosReg($siren, $id); - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if ( empty($anns) ){ - debugLog('W', "Aucune info règlementée pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1030'); - } - - foreach ($anns as $nb=>$ann) - { - //debugLog('I', "Siren/Siret $siren trouvé : ".$etab['Siren'].' '.$etab['Nic'].', '.$etab['Nom'] .', '.$etab['CP'].', '.$etab['Ville'], __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if ($id === null) { - $infos = new InfosReg(); - $infos->id = $ann['id']; - $infos->source = $ann['source']; - $infos->DateParution = $ann['DateParution']; //@todo : date - $infos->raisonSociale = $ann['raisonSociale']; - $infos->titre = $ann['titre']; - $infos->pj = $ann['pj']; - $infos->url = $ann['url']; - $infos->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $tabRet[] = $infos; - } else { - $infos = new InfosReg(); - $infos->id = $ann['id']; - $infos->source = $ann['source']; - $infos->DateParution = $ann['DateParution']; //@todo : date - $infos->raisonSociale = $ann['raisonSociale']; - $infos->titre = $ann['titre']; - $infos->communique = $ann['communique']; - $infos->communiqueHtml = $ann['communiqueHtml']; - $infos->pj = $ann['pj']; - $infos->url = $ann['url']; - $infos->dateInsertionSD = $ann['dateInsertionSD']; //@todo : date - $tabRet[] = $infos; - } - } - debugLog('I', 'Nb infos retournés = '. count($anns), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('infosreg',$siren,$id); - $output = new InfosRegReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne les informations boursières de l'entreprise - * @param string $siren SIREN de l'entreprise - * @return InfosBourse - */ - public function getInfosBourse($siren) - { - $this->authenticate(); - $this->permission('bourse'); - - //Initialisation - $error = new ErrorType(); - debugLog('I',"Infos bourse demandées pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $siren = substr($siren,0,9); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iBourse = new MBourse($siren); - $bourse = $iBourse->getInfosBourse($siren); - //debugLog('W', print_r($entrep, true), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - if (empty($bourse)) { - debugLog('W', "Aucune info bourse pour le siren $siren", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1030'); - } - - $result = new InfosBourse(); - $result->Siren = $bourse['siren']; - $result->RaisonSociale = $bourse['raisonSociale']; - $result->Adresse = $bourse['adresse']; - $result->Effectif = $bourse['effectif']; - $result->CodeSicovam = $bourse['code_sicovam']; - $result->CodeMnemo = $bourse['code_mnemo']; - $result->CodeBloomberg = $bourse['code_bloomberg']; - $result->CodeDatastream = $bourse['code_datastream']; - $result->Isin = $bourse['code_isin']; - $result->CodeRic = $bourse['code_ric']; - $result->DateIntroduction = $bourse['dateIntroduction']; //@todo : date - $result->DateDerAG = $bourse['dateDerAG']; //@todo : date - $result->DateRadiation = $bourse['dateRadiation']; //@todo : date - $result->AutreIsin = $bourse['autre_isin']; - $result->EligibleSRD = $bourse['eligibleSRD']; - $result->EligiblePEA = $bourse['eligiblePEA']; - $result->Tel = $bourse['tel1']; - $result->Tel2 = $bourse['tel2']; - $result->Fax = $bourse['fax1']; - $result->Fax2 = $bourse['fax2']; - $result->Web = $bourse['web']; - $result->Mail = $bourse['mail']; - - $result->Marche = $bourse['marche']; - $result->Description = $bourse['description']; - $result->Secteur = $bourse['secteur']; - $result->Activite = $bourse['activite']; - $result->ActiviteDet = $bourse['activiteDet']; - - $result->placeCotation = $bourse['placeCotation']; - $result->nombreTitres = $bourse['nombreTitres']; - $result->capitalisation = $bourse['close']*$bourse['nombreTitres']; - $result->derCoursDate = $bourse['date']; //@todo : date - $result->derCoursCloture = $bourse['close']; - $result->derCoursOuverture = $bourse['open']; - $result->derCoursPlusHaut = $bourse['high']; - $result->derCoursPlusBas = $bourse['low']; - - $result->derCoursVolume = $bourse['volume']; - $result->coursMin = $bourse['coursMin']; - $result->coursMoy = $bourse['coursMoy']; - $result->coursMax = $bourse['coursMax']; - - $this->wsLog('bourse',$siren,$id); - return $result; - } - - /** - * Ajout d'une surveillance - * - * @param string $siret Siret/Siren - * @param string $email Adresse email du client - * @param string $ref Référence de la surveillance - * @param string $source Type de source en surveillance (insee, annonces, bilans, actes, privileges, score, dirigeants, paiements, liens) - * @param boolean $delete Suppression de la ligne - * @param integer $encoursClient Encours demandé par le client - * @return SetSurveillanceReturn - */ - public function setSurveillance($siret, $email, $ref='', $source='annonces', $delete=false, $encoursClient=0) - { - $this->authenticate(); - $source = strtolower($source); - switch ($source) { - case 'insee': - $this->permission('survinsee'); - break; - case 'bilans': - $this->permission('survbilan'); - break; - case 'actes': - $this->permission('survactes'); - break; - case 'privileges': - $this->permission('survpriv'); - break; - case 'dirigeants': - $this->permission('survdirigeants'); - break; - case 'score': - $this->permission('survscore'); - break; - case 'paiements': - $this->permission('survpaiements'); - break; - case 'liens': - $this->permission('survliens'); - break; - case 'annonces': - default: - $this->permission('survannonce'); - break; - } - - //Initialisation - if (empty($ref)) $ref = ''; - if (empty($delete)) $delete = false; - if (empty($encoursClient)) $encoursClient = false; - $result = false; - $siren = substr($siret,0,9); - $nic = substr($siret,9,5); - if (empty($nic)) { - $nic = '00000'; - } - - debugLog('I',"setSurveillances(siret=$siret, email=$email, ref=$ref, source=$source, delete=$delete)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - switch ($source) { - case 'insee': - case 'annonces': - case 'bilans': - case 'actes': - case 'privileges': - case 'paiements': - case 'liens': - case 'dirigeants': $encoursClient=0; break; - case 'score': $encoursClient=$encoursClient*1; break; - default: $source='annonces'; break; - } - - /** - * Suppression de la surveillance - * @todo : Déplacer dans la table de mouvement - */ - if ($delete) { - - $tabUpdate = array('dateSuppr'=>date('Y-m-d')); - $result = $iDb->update('surveillances_site', - $tabUpdate, - "source='$source' AND login='$login' AND email='$email' AND siren=$siren AND nic=$nic AND ref='$ref'" - ); - - } else { - - /** - * Calcul d'initialisation du score lors d'un ajout - */ - if ( $source == 'score' ) { - $survM = new Application_Model_JoScoresSurveillance(); - $item = $survM->find($siren); - if ( $item === null ) { - require_once 'Metier/scores/classMScores.php'; - calculIndiScore($siren, 0, false, 0); - } - } - - $where = "source='$source' AND login='$login' AND email='$email' AND siren=$siren AND nic=$nic AND ref='$ref'"; - $detect = $iDb->select('surveillances_site', 'siren', $where, false, MYSQL_ASSOC); - - if ( count($detect)>0 ) { - - //Si la donnée existe déjà et que la source=score alors il faut mettre à jour l'encours client - if ($source == 'score' && $detect[0]['dateSuppr']=='0000-00-00 00:00:00') { - - $data = array ( - 'encoursClient' => $encoursClient, - ); - $result = $iDb->update('surveillances_site', $data, $where, false, 0, true); - - } elseif ( $detect[0]['dateSuppr']!='0000-00-00 00:00:00') { - - $data = array ( - 'dateAjout' => date('Y-m-d'), - 'dateSuppr' => '0000-00-00 00:00:00', - ); - $result = $iDb->update('surveillances_site', $data, $where, false, 0, true); - - } - - } else { - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren, $nic); - - $data = array( - 'source' => $source, - 'login' => $login, - 'email' => $email, - 'siren' => $siren, - 'nic' => $nic, - 'ref' => $ref, - 'encoursClient' => $encoursClient, - 'rs' => $tabIdentite['Nom'], - 'cp' => $tabIdentite['CP'], - 'ville' => $tabIdentite['Ville'], - 'dateAjout'=>date('Y-m-d'), - 'dateSuppr'=>0, - ); - $result = $iDb->insert('surveillances_site', $data, false, true); - } - } - $output = new SetSurveillanceReturn(); - $output->result = $result; - return $output; - } - - /** - * getSurveillances - * @param SurveillancesFiltre $filtre - * @param integer $deb - * @param integer $nbRep - * @return SurveillancesReturn - */ - public function getSurveillances($filtre, $position=0, $nbRep=100) - { - $this->authenticate(); - $this->permission('survliste'); - - //Initialisation - if (empty($position)) $position = 0; - if (empty($nbRep)) $nbRep = 100; - - $error = new ErrorType(); - $tabRet = array(); - $siren = 0; - $login = $this->tabInfoUser['login']; - - $strSiren = ""; - if (!empty($filtre->item) && $filtre->itemMode == 'siren'){ - $siren = substr($filtre->item,0,9); - $nic = substr($filtre->item,9,5); - $strSiren = " AND siren='$siren'"; - } elseif (!empty($filtre->item) && $filtre->itemMode == 'search') { - $strSiren = " AND ( siren='$filtre->item' OR ref='$filtre->item' OR rs='$filtre->item' )"; - } - - //Ordre pour le tri - $triMode = strtoupper(trim($filtre->triMode)); - if ($triMode == 'DESC') { - $triMode = 'DESC'; - } else { - $triMode = 'ASC'; - } - - //Option de tri - $tri = strtolower(trim($filtre->tri)); - switch ($tri) { - case 'ref': $orderBy='ORDER BY ref'; break; - case 'dateAjout': $orderBy='ORDER BY dateAjout'; break; - case 'dateDerEnvoi': $orderBy='ORDER BY dateDerEnvoi'; break; - case 'rs': $orderBy='ORDER BY rs'; break; - case 'cp': $orderBy='ORDER BY cp'; break; - case 'ville': $orderBy='ORDER BY ville'; break; - default: $orderBy='ORDER BY siren'; break; // siren ou vide ou autre - } - $orderBy = $orderBy.' '.$triMode; - - if ($filtre->detail) { - $strSelect = 'source, email, siren, nic, ref, dateAjout, encoursClient, rs, cp, ville, dateDerEnvoi'; - } else { - $strSelect = 'source, email, siren, nic, ref, dateAjout, dateDerEnvoi'; - } - if ($filtre->source!='') $strSource = " AND source='$filtre->source' "; - else $strSource = ''; - - $iDb = new WDB(); - - if ($filtre->source!='') { - - // Il faut compter le nombre de siren au total - $tabTmp = $iDb->select( - 'surveillances_site', - 'count(*) as nb', "login='$login' AND dateSuppr=0 $strSiren $strSource", - false, MYSQL_ASSOC - ); - $nbRepTot = $tabTmp[0]['nb']; - - // Récupération des résultats - $tabTmp = $iDb->select( - 'surveillances_site', $strSelect, - "login='$login' AND dateSuppr=0 $strSiren $strSource $orderBy LIMIT $position,$nbRep", - false, MYSQL_ASSOC - ); - - } else { - - // Il faut compter le nombre de siren au total - $tabTmp = $iDb->select( - 'surveillances_site', - 'siren', "login='$login' AND dateSuppr=0 $strSiren GROUP BY siren", - false, MYSQL_ASSOC - ); - $nbRepTot = count($tabTmp); - - // Récupération des résultats - if ($nbRepTot>0){ - $tabTmp = $iDb->select( - 'surveillances_site', - 'siren', "login='$login' AND dateSuppr=0 $strSiren GROUP BY siren ORDER BY siren LIMIT $position,$nbRep", - false, MYSQL_ASSOC - ); - $listeSiren = array(); - foreach($tabTmp as $i => $v) { - $listeSiren[] = $v['siren']; - } - $tabTmp = $iDb->select( - 'surveillances_site', $strSelect, - "login='$login' AND dateSuppr=0 AND siren IN (".join(',',$listeSiren).") $strSiren ORDER BY siren", - false, MYSQL_ASSOC - ); - } - } - - if (count($tabTmp)>0) - { - //Tri pour avoir le nombre de réponse correct suivant la structure - $listeRetour = array(); - foreach ($tabTmp as $i => $tabSurv) - { - $rs = ''; - $cp = ''; - $ville = ''; - if ($filtre->detail) { - if (trim($tabSurv['rs'])<>'') { - $rs = $tabSurv['rs']; - $cp = $tabSurv['cp']; - $ville = $tabSurv['ville']; - } else { - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($tabSurv['siren'], $tabSurv['nic']); - $rs = $tabIdentite['Nom']; - $cp = $tabIdentite['CP']; - $ville = $tabIdentite['Ville']; - $iDb->update('surveillances_site', array( - 'rs' => $rs, - 'cp' => $cp, - 'ville' => $ville), - "login='$login' AND dateSuppr=0 AND siren=".$tabSurv['siren']." AND nic=".$tabSurv['nic']." $strSource", - false - ); - } - } - - $listeRetour[$tabSurv['siren']][] = array( - 'rs' => $rs, - 'cp' => $cp, - 'ville' => $ville, - 'source' => $tabSurv['source'], - 'email' => $tabSurv['email'], - 'nic' => $tabSurv['nic'], - 'ref' => $tabSurv['ref'], - 'dateAjout' => $tabSurv['dateAjout'], - 'dateDerEnvoi' => $tabSurv['dateDerEnvoi'], - ); - } - - foreach ($listeRetour as $siren => $item) - { - $liste = new Surveillance(); - $liste->siren = $siren; - foreach($item as $s) { - $source = new stdClass(); - $source->rs = $s['rs']; - $source->cp = $s['cp']; - $source->ville = $s['ville']; - $source->source = $s['source']; - $source->email = $s['email']; - $source->nic = $s['nic']; - $source->ref = $s['ref']; - $source->encoursClient = $s['encoursClient']; - $source->dateAjout = $s['dateAjout']; //@todo : date - $source->dateDerEnvoi = $s['dateDerEnvoi']; //@todo : date - $liste->sources[] = $source; - } - $tabRet[] = $liste; - } - } - $output = new SurveillancesReturn(); - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbRepTot; - $output->result = $tabRet; - return $output; - } - - /** - * Recherche par référence client - * @param string $search - * @param integer $position - * @param integer $nbRep - * @return SearchRefClientReturn - */ - public function searchRefClient($search, $position=0, $nbRep=20) - { - $this->authenticate(); - - //Initialisation - if (empty($position)) $position = 0; - if (empty($nbRep)) $nbRep = 20; - - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - $orderBy = " ORDER BY dateAjout ASC"; - - if ($this->tabInfoUser['rechRefType']=='CLI'){ - //On cherche les logins actifs pour le client - $idClient = $this->tabInfoUser['idClient']; - - $where = "u.idClient='$idClient' AND u.actif=1 AND s.dateSuppr=0 AND ( s.siren='$search' OR s.ref='$search' OR s.rs='$search' )"; - // Il faut compter le nombre au total - $tabTmp = $iDb->select('surveillances_site s, utilisateurs u', 'count(*) as nb', $where.$orderBy, false, MYSQL_ASSOC); - $nbRepTot = $tabTmp[0]['nb']; - - // Execution de la requete - $tabTmp = $iDb->select('surveillances_site s, utilisateurs u', - "siren, nic, ref, source, login, email, DATE_FORMAT(dateAjout, '%Y-%m-%d') as dateAjout, DATE_FORMAT(dateDerEnvoi, '%Y-%m-%d') as dateEnvoi", - $where.$orderBy." LIMIT $position,$nbRep", false, MYSQL_ASSOC); - } else { - $where = "login='$login' AND dateSuppr=0 AND ( siren='$search' OR ref='$search' OR rs='$search' )"; - // Il faut compter le nombre au total - $tabTmp = $iDb->select('surveillances_site', 'count(*) as nb', $where.$orderBy, false, MYSQL_ASSOC); - $nbRepTot = $tabTmp[0]['nb']; - - // Execution de la requete - $tabTmp = $iDb->select('surveillances_site', - "siren, nic, ref, source, login, email, DATE_FORMAT(dateAjout, '%Y-%m-%d') as dateAjout, DATE_FORMAT(dateDerEnvoi, '%Y-%m-%d') as dateEnvoi", - $where.$orderBy." LIMIT $position,$nbRep", false, MYSQL_ASSOC); - } - - $tabRet = array(); - if (count($tabTmp)>0) - { - foreach ($tabTmp as $i => $item) - { - $info = new SearchRefClientInfo(); - $info->ref = $item['ref']; - $info->source = $item['source']; - $info->login = $item['login']; - $info->email = $item['email']; - $info->dateAjout = $item['dateAjout']; - $info->dateEnvoi = $item['dateEnvoi']; - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($item['siren'], $item['nic']); - - $reponse = new SearchRefClient(); - $reponse->id = $tabIdentite['id']; - $reponse->Siret = $tabIdentite['Siret']; - $reponse->Siege = $tabIdentite['Siege']; - $reponse->Nom = prepareString(strtr($tabIdentite['Nom'],'/*',' ')); - $reponse->Nom2 = prepareString($tabIdentite['Nom2']); - $reponse->Sigle = prepareString($tabIdentite['Sigle']); - $reponse->Enseigne = prepareString($tabIdentite['Enseigne']); - $reponse->Adresse = prepareString($tabIdentite['Adresse']); - $reponse->Adresse2 = prepareString($tabIdentite['Adresse2']); - $reponse->CP = $tabIdentite['CP']; - $reponse->Ville = prepareString($tabIdentite['Ville']); - $reponse->Tel = $tabIdentite['Tel']; - $reponse->Fax = $tabIdentite['Fax']; - $reponse->FJ = $tabIdentite['FJ']; - $reponse->FJLib = prepareString($tabIdentite['FJ_lib']); - $reponse->Siren = $tabIdentite['Siren']; - $reponse->Nic = $tabIdentite['Nic']; - $reponse->Actif = $tabIdentite['Actif']; - $reponse->NafEtab = $tabIdentite['NafEtab']; - $reponse->NafEtabLib = $tabIdentite['NafEtabLib']; - $reponse->NafEnt = $tabIdentite['NafEnt']; - $reponse->NafEntLib = $tabIdentite['NafEntLib']; - $reponse->Infos = $info; - $tabRet[] = $reponse; - } - } - $output = new SearchRefClientReturn(); - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbRepTot; - $output->result = $tabRet; - return $output; - } - - /** - * Retourne le bilan correspondant au siren, à l'exercice et au formalisme demandé - * - * @param string $siren Siren de l'entreprise - * @param string $millesime Date du bilan au format AAAAMMJJ - * @param string $typeBilan N:Réel Normal, S:Réel Simplifié, C:Consolidé - * @param string $ref Référence S&D obligatoire - * @return Bilan - */ - public function getBilan($siren, $millesime, $typeBilan='N', $ref='') - { - $this->authenticate(); - $this->permission('liasse'); - - //Initialisation - if (empty($typeBilan)) { $typeBilan = 'N'; } - if (empty($ref)) { $ref = ''; } - - debugLog('I',"Bilan $millesime $typeBilan demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $millesime = WDate::dateT('Ymd','d/m/Y',$millesime); - $mBil = new MBilans($siren); - $tabBilan = $mBil->getBilan($millesime, $typeBilan, $ref, true); - - $resultBilan = new Bilan(); - $tabPoste = array(); - foreach($tabBilan as $key => $value){ - if(!in_array($key, array('SIREN', 'DATE_FRAICHE_BILAN', - 'DATE_CLOTURE', 'DATE_CLOTURE_PRE', 'DUREE_MOIS', - 'DUREE_MOIS_PRE', 'MONNAIE', 'CONSOLIDE', 'MONNAIE_ORI', - 'MONNAIE_LIV_UNITE', 'SOURCE', 'devise'))){ - $resultPoste = new BilanPoste(); - $resultPoste->id = $key; - $resultPoste->val = $value; - $tabPoste[] = $resultPoste; - } else { - $resultBilan->$key = $value; - } - } - $this->wsLog('bilan',$siren, $millesime.':'.$typeBilan.':'.$ref); - $resultBilan->POSTES = $tabPoste; - return $resultBilan; - } - - /** - * Retourne la liste des bilans disponible pour une entreprise - * - * @param string $siren Siren de l'entreprise - * @return ListeBilansReturn - */ - public function getListeBilans($siren) - { - $this->authenticate(); - $this->permission('liasse'); - - //Initialisation - $tabRet = array(); - debugLog('I',"Liste des Bilans demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9) { - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $mBil = new MBilans($siren); - $tabBilans = $mBil->listeBilans(true); - foreach($tabBilans as $bilan) - { - $element = new ListeBilans(); - $element->dateProvPartenaire = $bilan['dateProvPartenaire']; //@todo : date - $element->dateInsert = $bilan['dateInsert']; //@todo : date - $element->typeBilan = $bilan['typeBilan']; - $element->dureeExercice = $bilan['dureeExercice']; - $element->dateExercice = $bilan['dateExercice']; //@todo : date - $element->millesime = $bilan['millesime']; - $element->dateExercicePre = $bilan['dateExercicePre']; //@todo : date - $element->dureeExercicePre = $bilan['dureeExercicePre']; - $element->monnaie = $bilan['monnaie']; - $element->source = $bilan['source']; - $tabRet[] = $element; - } - - debugLog('I', 'Nb Bilans retournés = '. count($tabBilans), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->wsLog('listebilans', $siren); - $output = new ListeBilansReturn(); - $output->nbReponses = count($tabRet); - $output->result = $tabRet; - return $output; - } - - /** - * Vérifie si un siren existe en base Scores & Décisions - * @param string $siren Siren de l'entité - * @return boolean - */ - public function isSirenExistant($siren) - { - $this->authenticate(); - - //Initialisation - $tabRet = array(); - $siren = trim(substr($siren,0,9)); - $result = false; - debugLog('I',"Siren existant demandée pour siren $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $entrep = $iInsee->sirenExiste($siren); - if (empty($entrep)) { - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $result = false; - } else { - debugLog('I', "Siren $siren présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $result = true; - } - $this->wsLog('sirenExiste',$siren); - return $result; - } - - /** - * Retourne une annonce en fonction de sa référence - * - * @param string $siren Siren de l'entreprise - * @param string $dateAnnee - * @param integer $numParution - * @param integer $numAnnonce - * @return RechercheAnnonceReturn - */ - public function rechercheAnnonce($source, $dateAnnee, $numParution, $numAnnonce) - { - $this->authenticate(); - $this->permission('histobodacc'); - - //Initialisation - $tabRet = array(); - - debugLog('I',"Annonce précise demandée pour $source, $dateAnnee, $numParution, $numAnnonce",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($dateAnnee)==4) $annee = $dateAnnee; - else $annee = substr($dateAnnee,0,4); - - $iDb = new WDB('jo'); - - switch (strtoupper($source)) - { - case 'BODA': - case 'BODB': - case 'BODC': - $lettre = substr(strtoupper($source),3,1); - if ($annee<2005) { - if ($lettre=='A'){ $numJAL=1; } - elseif ($lettre=='B'){ $numJAL=200; } - else{ break; } - $anneeDeb = $annee.'0101'; - $anneeFin = $annee.'1231'; - $res = $iDb->select('historiques.entrep e, texte t', - "$annee AS Annee_Parution, e.NOBOD AS Num_Parution, e.NOANN AS Num_Annonce, e.NOPAGE AS Num_Page, e.`DATE` AS Date_Parution, e.DEPT AS Departement, e.CODTRI AS Tribunal_Code, 'I' AS typeAnnonce, CONCAT(e.NOANN,' - ',t.annonceTxt) AS annonce", - "e.JAL=$numJAL AND e.NOBOD=$numParution AND e.`DATE` BETWEEN $anneeDeb AND $anneeFin AND e.NOANN=$numAnnonce AND e.ANBASE=t.annonceNum", false, MYSQL_ASSOC); - } else { - $res = $iDb->select('bodacc', - 'Bodacc_Annee_Parution AS Annee_Parution, Bodacc_Num AS Num_Parution, Num_Annonce, Bodacc_Page AS Num_Page, Bodacc_Date_Parution AS Date_Parution, Tribunal_Dept AS Departement, Tribunal_Code, typeAnnonce, annonce', - "Bodacc_Code='$lettre' AND Bodacc_Annee_Parution=$annee AND Bodacc_Num=$numParution AND Num_Annonce=$numAnnonce", false, MYSQL_ASSOC); - } - break; - case 'ASSO': - $res = $iDb->select('asso', - 'YEAR(Date_Parution) AS Annee_Parution, Num_Parution, Num_Annonce, pageDeb AS Num_Page, Date_Parution, Departement, codTribunal AS Tribunal_Code, typeAnnonce, Annonce_Html AS annonce', "Date_Parution BETWEEN '$annee-01-01' AND '$annee-12-31' AND Num_Parution=$annee".sprintf('%04d', $numParution)." AND Num_Annonce=$numAnnonce", - false, MYSQL_ASSOC); - break; - case 'BALO': - $res = $iDb->select('balo', - "YEAR(Date_Parution) AS Annee_Parution, Num_Parution, Num_Affaire AS Num_Annonce, '' AS Num_Page, Date_Parution, '' AS Departement, '' AS Tribunal_Code, 'Insertion' AS typeAnnonce, Annonce_Html AS annonce", "Date_Parution BETWEEN '$annee-01-01' AND '$annee-12-31' AND Num_Parution=$numParution AND Num_Affaire=$numAnnonce", - false, MYSQL_ASSOC); - break; - } - - if (count($res)>0) - { - $iBodacc = new MBodacc(); - foreach ($res as $i => $etab) - { - $annonces = new AnnonceItem(); - $annonces->Annee_Parution = $etab['Annee_Parution']; - $annonces->Num_Parution = $etab['Num_Parution']; - $annonces->Num_Annonce = $etab['Num_Annonce']; - $annonces->Num_Page = $etab['Num_Page']; - $annonces->Date_Parution = $etab['Date_Parution']; //@todo : date - $annonces->Departement = $etab['Departement']; - $annonces->Tribunal_Code = $etab['Tribunal_Code']; - $annonces->Tribunal = $iBodacc->getTribunalNom($etab['Tribunal_Code']); - $annonces->Type_Annonce = $etab['typeAnnonce']; - $annonces->Annonce = strip_tags(strtr( - html_entity_decode($etab['annonce']), - array('>'=>'>','&'=>'&','<'=>'<','’'=>"'") - )); - - $tabRet[] = $annonces; - } - } - $nbTot = count($tabRet); - $output = new RechercheAnnonceReturn(); - $output->criteres = $criteres; - $output->nbReponses = $nbTot; - $output->nbReponsesTotal = $nbTot; - $output->result = $tabRet; - return $output; - } - - /** - * getRatios - * @param string $siren - * @param string $page - * @return RatiosReturn - */ - public function getRatios($siren, $page='ratios') - { - $this->authenticate(); - $this->permission('ratios'); - - //Initialisation - if (empty($page)) $page = 'ratios'; - - debugLog('I',"Liste des Ratios demandée pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - if (strlen($siren)<>9){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } elseif ($siren*1==0) { - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - debugLog('I',"Liste des Ratios demandée pour $siren avant getIdentiteEntreprise",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteEntreprise($siren,0,0,false,false); - debugLog('I',"Liste des Ratios demandée pour $siren après getIdentiteEntreprise",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $naf = $tabIdentite['NafEnt']; - $nafLib = $tabIdentite['NafEntLib']; - $efftr = $tabIdentite['Effectif']*1; - $fj = $tabIdentite['FJ']; - - $accesPartenaire = true; - if (APPLICATION_ENV == 'development') { - $accesPartenaire = false; - } - - $tabRatiosInfos = $tabRatiosSecteurs = $tabBilansR = array(); - $tabRatios = $tabRatiosEvol = array(); - $tabRet = array(); - - global $tva, $mBil, $tabBilan, $efftr, $tabInfla; - $tabFormules = include APPLICATION_PATH . '/../library/Metier/scores/Variables/CacheTabFormules.php'; - - require_once 'Metier/scores/Variables/configMRatios.php'; - - $mBil = new MBilans($siren); - $tabBilans = $mBil->listeBilans($accesPartenaire); - - $nbBilans = count($tabBilans); - $tabBilan = $tabBil = array(); - if ($nbBilans>0) { - $tabRatios = calculRatios($tabBilans, $tabIdentite, $accesPartenaire); - } - $nbRatios = count($tabRatios); - debugLog('I',"Liste des Ratios demandée pour $siren après calculRatios ($nbRatios)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - //Tableau d'infos sur les formules - $tabBorneMin = $tabBorneMax = array(); - foreach ($tabFormules as $formule) { - $id = $formule['id']*1; - $libelle = $formule['libelle']; - $unite = $formule['unite']; - $commentaires = $formule['commentaires']; - $tabFormulesInfos[$id] = $formule; //Pour la gestion des unités des ratios secteur - $ratiosInfos = new RatiosInfos(); - $ratiosInfos->id = 'r'.$id; - $ratiosInfos->libelle = $formule['libelle']; - $ratiosInfos->unite = $formule['unite']; - $ratiosInfos->commentaires = $formule['commentaires']; - $tabRatiosInfos[] = $ratiosInfos; - $tabBorneMin[$id] = $formule['borneMin']; - $tabBorneMax[$id] = $formule['borneMax']; - } - - $tabAnnees = array(); - if ( $nbRatios > 0 ) { - foreach ( $tabRatios as $i=>$R ) { - //Informations sur le bilan - $bilansInfos = new RatiosBilansInfos(); - $bilansInfos->dateCloture = $tabBilan[$i]['DATE_CLOTURE']; //@todo : date - $bilansInfos->duree = $tabBilan[$i]['DUREE_MOIS']; - $bilansInfos->devise = $tabBilan[$i]['MONNAIE']; - $bilansInfos->typeBilan = $tabBilan[$i]['CONSOLIDE']; - $bilansInfos->unite = 'U'; - if ( substr($tabBilan[$i]['DATE_CLOTURE'],0,4)>1900 ){ - $tabAnnees[$i]=substr($tabBilan[$i]['DATE_CLOTURE'],0,4); - } - - $tabRatiosEntrep = array(); - $tabRatiosEntrepEvol = array(); - foreach ( $R as $Ridx=>$Rmont ) { - if ($Rmont<>'NS') { - if ( $tabBorneMin[$Ridx]<>'' && $Rmont<$tabBorneMin[$Ridx] ){ - $Rmont='<'.$tabBorneMin[$Ridx]; - } elseif ( $tabBorneMax[$Ridx]<>'' && $Rmont>$tabBorneMax[$Ridx] ){ - $Rmont='>'.$tabBorneMax[$Ridx]; - } - } - - // RatiosEntrep - $ratiosEntrep = new Ratios(); - if (substr($Rmont,0,1)=='N' || substr($Rmont,0,1)=='<' || substr($Rmont,0,1)=='>'){ - $ratiosEntrep->id = 'r'.$Ridx; - $ratiosEntrep->val = $Rmont; - } else { - $ratiosEntrep->id = 'r'.$Ridx; - $ratiosEntrep->val = round($Rmont,2); - } - $tabRatiosEntrep[] = $ratiosEntrep; - - if ( ( $tabBilan[$i]['CONSOLIDE']=='S' && isset($tabRatios[$i+1]) && ($tabBilan[$i+1]['CONSOLIDE']=='S' - || ($tabBilan[$i+1]['CONSOLIDE']=='N' && $tabBilan[$i+1]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE']) ) ) - || ( $tabBilan[$i]['CONSOLIDE']=='N'&&isset($tabRatios[$i+1])&&($tabBilan[$i+1]['CONSOLIDE']=='N' - || ($tabBilan[$i+1]['CONSOLIDE']=='S'&&$tabBilan[$i+1]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE'])) ) - ) { - $Rmont=(($R[$Ridx]-$tabRatios[$i+1][$Ridx])*100)/abs($tabRatios[$i+1][$Ridx]); - } - elseif ( ( $tabBilan[$i]['CONSOLIDE']=='S' && isset($tabRatios[$i+1]) && ($tabBilan[$i+2]['CONSOLIDE']=='S' - || ($tabBilan[$i+2]['CONSOLIDE']=='N' && $tabBilan[$i+2]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE'])) ) - || ( $tabBilan[$i]['CONSOLIDE']=='N' && isset($tabRatios[$i+1]) && ($tabBilan[$i+2]['CONSOLIDE']=='N' - || ($tabBilan[$i+2]['CONSOLIDE']=='S'&& $tabBilan[$i+2]['DATE_CLOTURE']<>$tabBilan[$i]['DATE_CLOTURE'])) ) - ) { - $Rmont = (($R[$Ridx]-$tabRatios[$i+2][$Ridx])*100)/abs($tabRatios[$i+2][$Ridx]); - } else { - $Rmont = 'NS'; - } - - // RatiosEntrepEvol - $ratiosEntrepEvol = new Ratios(); - if ($Rmont=='NS' || $Rmont<-800 || $Rmont>800){ - $ratiosEntrepEvol->id = 'r'.$Ridx; - $ratiosEntrepEvol->val = 'NS'; - } else { - $ratiosEntrepEvol->id = 'r'.$Ridx; - $ratiosEntrepEvol->val = number_format($Rmont,2,',',' '); - } - $tabRatiosEntrepEvol[] = $ratiosEntrepEvol; - } - $bilansInfos->RatiosEntrep = $tabRatiosEntrep; - $bilansInfos->RatiosEntrepEvol = $tabRatiosEntrepEvol; - $tabBilansR[] = $bilansInfos; - } - } - debugLog('I',"Liste des Ratios demandée pour $siren après EVOLUTION",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - // Tableau des ratios secteurs - if (strlen($naf)>4) $strNaf = " AND naf5='$naf' "; - else $strNaf = " AND naf4='$naf' "; - $strAnnees = implode(',', $tabAnnees); - - $tabRatiosSecteurs = array(); - - $tabAnnees = array_unique($tabAnnees); - - if ( count($tabAnnees)>0 ) { - $iDb = new WDB('jo'); - $tabTmp = $iDb->select('ratios_secteurs', - 'annee, naf5, naf4, id, (montant/nombre) AS ratio, nombre', - "1 $strNaf AND annee IN ($strAnnees) ORDER BY annee DESC, id ASC", - false, MYSQL_ASSOC); - - $nbRatiosSec = 0; - foreach($tabAnnees as $annee) { - $ratiosSecteur = new RatiosSecteur(); - $ratiosSecteur->annee = $annee; - foreach ($tabTmp as $tmp) - { - if ($tmp['annee']== $annee) - { - $Ridx = $tmp['id']; - if ($tmp['nombre']>$nbRatiosSec){ - $nbRatiosSec = $tmp['nombre']; - } - - $unite = $tabFormulesInfos[$Ridx]['unite']; - if ($unite=='EUR'){ - $montant = round($tmp['ratio']*1000); - } else { - $montant = round($tmp['ratio']); - } - if ($tabBorneMin[$Ridx]<>'' && $montant<$tabBorneMin[$Ridx]){ - $montant='<'.$tabBorneMin[$Ridx]; - } elseif ($tabBorneMax[$Ridx]<>'' && $montant>$tabBorneMax[$Ridx]){ - $montant='>'.$tabBorneMax[$Ridx]; - } - - $ratiosSecteurListe = new Ratios(); - if (substr($montant,0,1)=='N' || substr($montant,0,1)=='<' || substr($montant,0,1)=='>'){ - $ratiosSecteurListe->id = 'r'.$Ridx; - $ratiosSecteurListe->val = $montant; - } else { - $ratiosSecteurListe->id = 'r'.$Ridx; - $ratiosSecteurListe->val = round($montant,2); - } - $ratiosSecteur->liste[] = $ratiosSecteurListe; - } - } - $tabRatiosSecteurs[] = $ratiosSecteur; - } - } - - //$tabRatiosSecteurs=array(count($tabTmp), "1 $strNaf AND annee IN ($strAnnees) ORDER BY annee DESC, id ASC"); - - $output = new RatiosReturn(); - $output->Nom = $tabIdentite['Nom']; - $output->NafEnt = $tabIdentite['NafEnt']; - $output->NafEntLib = $tabIdentite['NafEntLib']; - $output->FJ = $fj; - $output->FJ_lib = $tabIdentite['FJ_lib']; - $output->Siren = $siren; - $output->NbEntNaf = $nbRatiosSec; - $output->BilansInfos = $tabBilansR; - $output->RatiosInfos = $tabRatiosInfos; - $output->RatiosSecteur = $tabRatiosSecteurs; - - debugLog('I',"Liste des Ratios demandée pour $siren RETURN",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->wsLog($page, $siren); - return $output; - - } - - /** - * getRapport - * @param string $siren Siren de l'entreprise - * @param integer $niveau Niveau du rapport 1, 2 ou 3 - * @param integer $id Identifiant interne S&D de l'entreprise - * @param boolean $plus Si true, mise en surveillance privilèges - * @param string $ref Si $plus=true, référence facultative de la mise en Surveillance - * @param integer $encours Si $plus=true, encours facultatif Demandé par le client lors de la mise en Surveillance - * @param string $email Si $plus=true, email facultatif pour le suivi - * @return Rapport - */ - public function getRapport($siren, $niveau=3, $id=0, $plus=false, $ref='', $encours=0, $email='') - { - $this->authenticate(); - if (empty($niveau)) $niveau = 3; - if (empty($id)) $id = 0; - $result = new Rapport(); - $filtre = 0; - $idAnn = 0; - - //@todo : Gestion des droits - $perm = false; - switch($niveau){ - case 1: $perms = array('indiscore', 'indiscorep'); break; - case 2: $perms = array('indiscore2', 'indiscore2p'); break; - case 3: $perms = array('indiscore3', 'indiscore3p'); break; - } - foreach($perms as $item){ - if ( $this->checkPerm($item) ){ - $perm = true; - break; - } - } - if ($perm === false) { - $this->sendError('0902'); - } - - $accesDist=true; - $nivComment=2; - if ($niveau==1){ - $result->Indiscore = $this->getIndiScore($siren, 0, $nivComment, $plus, $ref, $encours, $email); - } elseif ($niveau==2) { - $result->Identite = $this->getIdentite($siren, $id=0); - $result->Indiscore = $this->getIndiScore($siren, 0, $nivComment, $plus, $ref, $encours, $email); - $result->Dirigeants = $this->getDirigeants($siren, false); - $result->Liens = $this->getLiens($siren, true); - $result->Ratios = $this->getRatios($siren, $page="rapport$niveau"); - } elseif ($niveau==3) { - $result->Identite = $this->getIdentite($siren, $id=0); - $result->Indiscore = $this->getIndiScore($siren, 0, $nivComment, $plus, $ref, $encours, $email); - $result->Dirigeants = $this->getDirigeants($siren, false); - $result->Liens = $this->getLiens($siren, true); - $result->Ratios = $this->getRatios($siren, $page="rapport$niveau"); - $result->Annonces = $this->getAnnonces($siren, $filtre, $idAnn); - } - return $result; - } - - /** - * Retourne la liste des banques connues pour une entreprise - * @param string $siren Siren de l'entreprise - * @return BanquesReturn - **/ - public function getBanques($siren) - { - $this->authenticate(); - $this->permission('banque'); - - //Initialisation - $iDb = new WDB('sdv1'); - $tabRet = array(); - debugLog('I',"Liste des banques demandée pour siren $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (intval($siren)<=1000) { - $this->sendError('1010'); - } - - $res=$iDb->select('banques', 'codeBanque, codeGuichet, libBanqueGuichet, precis, dateSource*1 AS dateSource', "siren=$siren", true, MYSQL_ASSOC); - $tmp=$iDb->select('fedRib', "codeBanque, codeGuichet, CONCAT(libBanque,' ',libGuichet) AS libBanqueGuichet, 0 AS precis, IF (dateInfo='0000-00-00', dateDispo*1, dateInfo*1) AS dateSource", "siren=$siren", true, MYSQL_ASSOC); - $res=array_merge($res, $tmp); - foreach ($res as $tabBanque) - { - $dateSource = $tabBanque['dateSource']; - $codBanque = $tabBanque['codeBanque']; - $codGuichet = $tabBanque['codeGuichet']; - $libBanque = trim($tabBanque['libBanqueGuichet']); - $found = false; - $adrBanque1=$adrBanque2=$adrBanqueCP=$adrBanqueVille=''; - - if ( $codBanque>0 && $codGuichet>0 ) { - $tmp = $iDb->select('insee.BDF_Etabs b, insee.BDF_Guichets g', - 'g.bdfFibCodeEtab AS banque, g.bdfFibCodeGuichet AS guichet, b.bdfFibDenom40 AS nomBanque, b.bdfFibDenom10 AS sigleBanque, g.bdfFibDenom20 AS nomGuichet, g.bdfFibAdresse1 AS adresse1, g.bdfFibAdresse2 AS adresse2, g.bdfFibAdresse3 AS adresse3, g.CP, g.Ville', "g.bdfFibCodeEtab=$codBanque AND g.bdfFibCodeGuichet=$codGuichet AND b.bdfFibCodeEtab=g.bdfFibCodeEtab", - true, MYSQL_ASSOC); - if (count($tmp)>0) { - $found = true; - - $banque = new Banque(); - $banque->codeBanque = $codBanque; - $banque->codeGuichet = $codGuichet; - $banque->libBanque = trim($tmp[0]['nomBanque'].' '.$tmp[0]['nomGuichet']); - $banque->adresse1 = $tmp[0]['adresse1']; - $banque->adresse2 = trim($tmp[0]['adresse2'].' '.$tmp[0]['adresse3']); - $banque->cp = $tmp[0]['CP']; - $banque->ville = $tmp[0]['Ville']; - $tabRet[] = $banque; - } - } - - if ($found===false && $codBanque>0 ) { - $tmp = $iDb->select('insee.BDF_Etabs', "bdfFibCodeEtab AS banque, '' AS guichet, bdfFibDenom40 AS nomBanque, '' AS nomGuichet, '' AS adresse1, '' AS adresse2, '' AS adresse3, '' AS CP, '' AS Ville", "bdfFibCodeEtab=$codBanque", true, MYSQL_ASSOC); - if (count($tmp)>0) { - $banque = new Banque(); - $banque->codeBanque = $codBanque; - $banque->codeGuichet = $codGuichet; - $banque->libBanque = trim($tmp[0]['nomBanque'].' '.$tmp[0]['nomGuichet']); - $banque->adresse1 = $tmp[0]['adresse1']; - $banque->adresse2 = trim($tmp[0]['adresse2'].' '.$tmp[0]['adresse3']); - $banque->cp = $tmp[0]['CP']; - $banque->ville = $tmp[0]['Ville']; - $tabRet[] = $banque; - } - } - - } - debugLog('I',"Liste des banques pour siren $siren : ".count($tabRet).' banques',__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $this->wsLog('banque', $siren); - $output = new BanquesReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des compétences territoriales pour un établissement à une adresse donnée. - * @param string $siret Siret de l'établissement - * @param string $type Type de compétence (pre:prefectures et s/prefectures, jal;journaux d'annonces légales, tri:tribunaux, adm:administrateurs et mandataires judiciaires, hui:huissiers, cfe:centres de formalités des entreprises) - * @param string $codeInsee Code Insee de la commune de l'établissement - * @return ListeCompetencesReturn - */ - public function getListeCompetences($siret, $type, $codeInsee) - { - $this->authenticate(); - $this->permission('competences'); - - //Initialisation - $error = new ErrorType(); - $type = strtolower($type); - - debugLog('I',"Liste des compétences $type demandée pour la commune $codeInsee",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabRet = array(); - $iBodacc = new MBodacc(); - $cp=$codeInsee*1; - $dep=false; - if (substr($codeInsee,0,2)=='2A' || substr($codeInsee,0,2)=='2B') - { - $dep=20; $cp=20000+(substr($codeInsee,2,3))*1; - } - elseif ($cp>0 && $cp<100) $dep=$cp; - elseif ($cp>970 && $cp<977) $dep=$cp; - elseif ($cp>999 && $cp<10000) $dep='0'.substr($cp,0,1); - elseif ($cp>=10000 && $cp<96000) $dep=substr($cp,0,2); - elseif ($cp>=99000) $dep=substr($cp,0,2); - elseif ($cp>=98000) $dep=substr($cp,0,3); - elseif ($cp>=97100 && $cp<97700) $dep=substr($cp,0,3); - - require_once 'i18n/cleanchar.php'; - - if ($type=='pre'){ - - $iDb = new WDB('jo'); - $tabTmp2 = $iDb->select('villes', 'DEP, COM, AR, CT', 'codeInsee='.$codeInsee, false, MYSQL_ASSOC); - $arrond = $tabTmp2[0]['AR']; - unset($iDb); - $iDb = new WDB('insee'); - $tabTmp2 = $iDb->select('insee_tabArrond', 'CHEFLIEU, ARTMAJ, NCC', "DEP='$dep' AND AR='$arrond'", false, MYSQL_ASSOC); - $nomSousPref = trim(strtr($tabTmp2[0]['ARTMAJ'],array('('=>'',')'=>'',' '=>'', "'"=>'')).' '.$tabTmp2[0]['NCC']); - unset($iDb); - $tabTmp = $iBodacc->getTribunauxParDep($dep); - foreach ($tabTmp as $i=>$tribunal) - { - if ($tribunal['triType']=='A' || $tribunal['triType']=='B') - { - $pref = levenshtein($tribunal['triNom'], 'PREFECTURE DE '.$nomSousPref); - $spref = levenshtein($tribunal['triNom'], 'SOUS PREFECTURE DE '.$nomSousPref); - - if ($tribunal['triType']=='B' && ($pref>7 || $spref>5)) continue; - - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType'].$typeP; - $competence->Nom = strtoupper($tribunal['triNom']); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper( - preg_replace('/ +/',' ',$tribunal['triAdrNum'].' '. - $tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '. - $tribunal['triAdrVoie'])); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $tribunal['triCommentaire']; - $tabRet[] = $competence; - - } - } - - } elseif ($type=='jal') { - - $tabTmp = $iBodacc->getJALparDep($dep); - foreach ($tabTmp as $i=>$comp) - { - $infos=''; - if (trim($comp['parution'])<>'') $infos.='Parution '.$comp['parution'].'. '; - if (trim($comp['aboAnnuel'])>0) $infos.='Abonnement Annuel : '.$comp['aboAnnuel'].' euros. '; - if (trim($comp['infos'])<>'') $infos.=$comp['infos']; - - $competence = new Competence(); - $competence->Id = 9000+$comp['id']*1; - $competence->IdSup = 0; - $competence->Code = ''; - $competence->Type = ''; - $competence->Nom = strtoupper($comp['nomJal']); - $competence->Siret = ''; - $competence->Adr = strtoupper($comp['adresse']); - $competence->AdrComp = ''; - $competence->CP = $comp['cp']; - $competence->Ville = strtoupper($comp['ville']); - $competence->CodeInsee = ''; - $competence->Tel = $comp['tel']; - $competence->Fax = $comp['fax']; - $competence->Web = $comp['siteWeb']; - $competence->Mail = $comp['email']; - $competence->Statut = 'Actif'; - $competence->DateCessation = ''; - $competence->Remarque = trim($infos); - $tabRet[] = $competence; - } - - } elseif ($type=='tri' || $type=='adm' || $type=='hui') { - - $tabTmp = $iBodacc->getTribunauxParCommune($codeInsee); - foreach ($tabTmp as $i=>$tribunal) - { - if (//$tribunal['triType']=='C' || - $tribunal['triType']=='G'// || - /*$tribunal['triType']=='I'*/) { - $idCA = $tribunal['triIdSup']; - $codeTGI = $tribunal['triCode']; - $code = strtoupper(substr($tribunal['triCode'],0,3)); - } - debugLog('D',"Liste des compétences $type demandée pour la commune $codeInsee ($dep) : ". - "Type=".$tribunal['triType'].', '. - "Code=".$tribunal[$codeTGI],__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if ($tribunal['triType']<>'E' && $tribunal['triType']<>'O' && - $tribunal['triType']<>'T' && $tribunal['triType']<>'R' && - $tribunal['triType']<>'N' && $tribunal['triType']<>'U' && - $tribunal['triType']<>'Z') - { - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType']; - $competence->Nom = strtoupper(cleanstring($tribunal['triNom'])); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper(cleanstring(preg_replace('/ +/',' ', - $tribunal['triAdrNum'].' '. - $tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '. - $tribunal['triAdrVoie']))); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $tribunal['triCommentaire']; - if ($tribunal['triNumGreffe']*1>0) - { - $competence->IdentifiantGreffe = $tribunal['triNumGreffe']; - } - $tabRet[] = $competence; - } - } - } - - if ($type=='adm') - { - $iInsee = new MInsee(); - $tabTmp = $iInsee->getMandataires(array($idCA), false); - $tabRet = array(); - $nbAff=0; - foreach ($tabTmp as $i=>$tribunal) - { /** @todo A revoir Debut **/ - if (stripos($tribunal['tribunal'], $code)!==false || - stripos($tribunal['tribunal'], 'SAINT')!==false) - { - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($tribunal['adresse']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $tribunal['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation'], - $competence->Remarque = $tribunal['contact']; - //,,,,Prenom,,,Statut,,,cp,ville,tel,fax,email,web,contact - $tabRet[] = $competence; - $nbAff++; - } - } - if ($nbAff==0) - { - foreach ($tabTmp as $i=>$tribunal) - { - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($tribunal['adresse']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $tribunal['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation'], - $competence->Remarque = $tribunal['contact']; - //,,,,Prenom,,,Statut,,,cp,ville,tel,fax,email,web,contact - $tabRet[] = $competence; - } - }/** @todo A revoir Fin : Lier correctement les mandataires à un TI principal **/ - } - elseif ($type=='hui') - { - $iInsee = new MInsee(); - $tabTmp = $iInsee->getHuissiers(array($codeTGI), false); - - $tabRet = array(); - $nbAff = 0; - foreach ($tabTmp as $i=>$tribunal) - { - $adr = $iInsee->structureVoie($tribunal['adresse']); - $competence = new Competence(); - $competence->Id = $tribunal['id']; - $competence->IdSup = $tribunal['sirenGrp']; - $competence->Code = $tribunal['tribunal'].'/'.$code; - $competence->Type = $tribunal['type']; - $competence->Nom = $tribunal['Nom'].' '.$tribunal['Prenom']; - $competence->Siret = $tribunal['sirenMand']; - $competence->Adr = strtoupper($adr['num'].' '.$adr['adr_btq'].' '. - $adr['typeVoie'].' '.$adr['libVoie']); - $competence->AdrComp = strtoupper($tribunal['adresseComp']); - $competence->CP = $adr['cp']; - $competence->Ville = strtoupper($tribunal['ville']); - //'CodeInsee'=>$tribunal['CodeInsee'], - $competence->Tel = $tribunal['tel']; - $competence->Fax = $tribunal['fax']; - $competence->Web = $tribunal['web']; - $competence->Mail = $tribunal['email']; - $competence->Statut = $tribunal['Statut']; - //'DateCessation'=>$tribunal['triDateCessation']; - $competence->Remarque = strtr($tribunal['contact'], - array( '
        '=>', ', '
        '=>', ', - '
        '=>', ', - )); - $tabRet[] = $competence; - } - $nbComp = count($tabTmp); - debugLog('I',"$nbComp compétences $type trouvées pour le tribunal $codeTGI",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } - elseif ($type=='cfe') - { - $tabTmp = $iBodacc->getTribunauxParCommune($codeInsee); - foreach ($tabTmp as $i=>$tribunal) - { - if ($tribunal['triType']=='C' || $tribunal['triType']=='O' || - $tribunal['triType']=='T' || $tribunal['triType']=='R' || - $tribunal['triType']=='N' || $tribunal['triType']=='U' || - $tribunal['triType']=='Z') - { - if (strlen($tribunal['triCommentaire'])==32 && - strpos($tribunal['triCommentaire'], ' ')===false) - $remarque=''; - else $remarque=$tribunal['triCommentaire']; - - $competence = new Competence(); - $competence->Id = $tribunal['triId']; - $competence->IdSup = $tribunal['triIdSup']; - $competence->Code = $tribunal['triCode']; - $competence->Type = $tribunal['triType']; - $competence->Nom = strtoupper($tribunal['triNom']); - $competence->Siret = $tribunal['triSiret']; - $competence->Adr = strtoupper(preg_replace('/ +/',' ',$tribunal['triAdrNum'].' '.$tribunal['triAdrIndRep'].' '. - $tribunal['triAdrTypeVoie'].' '.$tribunal['triAdrVoie'])); - $competence->AdrComp = strtoupper($tribunal['triAdrComp']); - $competence->CP = $tribunal['triCP']; - $competence->Ville = strtoupper($tribunal['triVille']); - $competence->CodeInsee = $tribunal['CodeInsee']; - $competence->Tel = $tribunal['triTel']; - $competence->Fax = $tribunal['triFax']; - $competence->Web = $tribunal['triWeb']; - $competence->Mail = $tribunal['triMail']; - $competence->Statut = $tribunal['triStatut']; - $competence->DateCessation = $tribunal['triDateCessation']; //@todo : date - $competence->Remarque = $remarque; - $tabRet[] = $competence; - } - } - } - $this->wsLog('competences',$siret,$type.'/'.$codeInsee); - $output = new ListeCompetencesReturn(); - $output->result = $tabRet; - $output->nbReponses = count($tabRet); - return $output; - } - - /** - * Retourne le statut du webservice - * @return StatusReturn - */ - public function status() - { - /* @todo tester les différents éléments qui peuvent conduire - * à un problème dans les services tel que la connexion à la - * base de données, l'accès FTP, l'accès HTTP, l'accès système de fichier - */ - - //Enregistrement des accès à la requête getIdentite - Zend_Registry::get('WsLogger')->info("status - ip:". - $_SERVER['REMOTE_ADDR'].", login:".$_SERVER['PHP_AUTH_USER']. - ", hash:".$_SERVER['PHP_AUTH_PW']); - - $error = new StatusReturn(); - //Test connexion à la base de données - $db = new WDB('jo'); - if (!$db) { - $error->statusCode = 9000; - $error->statusMsg = $this->listError['9000']; - } else { - $error->statusCode = 3000; - $error->statusMsg = $this->listError['3000']; - } - return $error; - } - -} - -?> \ No newline at end of file diff --git a/library/WsScore/Entreprise/v0.8/Types.php b/library/WsScore/Entreprise/v0.8/Types.php deleted file mode 100644 index 2bfb7ae6..00000000 --- a/library/WsScore/Entreprise/v0.8/Types.php +++ /dev/null @@ -1,3995 +0,0 @@ - 'ErrorType', - 'InfosLoginReturn' => 'InfosLoginReturn', - 'InfosLogin' => 'InfosLogin', - 'InfosLoginData' => 'InfosLoginData', - 'SetInfosLoginReturn' => 'SetInfosLoginReturn', - 'NextLoginReturn' => 'NextLoginReturn', - 'NextLoginResult' => 'NextLoginResult', - 'ClientFiltre' => 'ClientFiltre', - 'ListeClientsReturn' => 'ListeClientsReturn', - 'Client' => 'Client', - 'ListeDroitsReturn' => 'ListeDroitsReturn', - 'ListePrefsReturn' => 'ListePrefsReturn', - 'ListeUtilisateursReturn' => 'ListeUtilisateursReturn', - 'Utilisateur' => 'Utilisateur', - 'LogsClientsReturn' => 'LogsClientsReturn', - 'LogsClients' => 'LogsClients', - 'ClientReturn' => 'ClientReturn', - 'SetUtilisateurs' => 'SetUtilisateurs', - 'UtilisateursReturn' => 'UtilisateursReturn', - 'ModeleUtilisateurReturn' => 'ModeleUtilisateurReturn', - 'ModeleUtilisateur' => 'ModeleUtilisateur', -); \ No newline at end of file diff --git a/library/WsScore/Gestion/v0.1/Gestion.php b/library/WsScore/Gestion/v0.1/Gestion.php deleted file mode 100644 index 27ea7a66..00000000 --- a/library/WsScore/Gestion/v0.1/Gestion.php +++ /dev/null @@ -1,1063 +0,0 @@ -authenticate(); - - //Initialisation - if (empty($ipUtilisateur)) $ipUtilisateur = $_SERVER['REMOTE_ADDR']; - $error = new ErrorType(); - $result = new InfosLogin(); - - //Filtre IP - $filtre = trim($this->tabInfoUser['filtre_ip']); - if ( !empty($filtre) && !checkPlagesIp($filtre, $ipUtilisateur) ){ - debugLog('I',"getInfosLogin Adresse IP $ipUtilisateur non declaree pour le compte $login",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->sendError('0904'); - } - - debugLog('I',"getInfosLogin pour $login (IP=$ipUtilisateur)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - //L'utilisateur qui demande les informations est différent - if ( $this->tabInfoUser['login']<>$login - && in_array($this->tabInfoUser['profil'], array('Administrateur', 'SuperAdministrateur') ) - ) { - /** Un administrateur veut il des infos sur un login ? **/ - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select( - 'utilisateurs u, clients c', - 'u.login, u.id, u.email, u.password, u.idClient, u.typeCompte, u.actif, u.filtre_ip, u.civilite, u.nom, u.prenom, u.tel, u.fax, u.mobile, u.profil, u.raisonSociale, u.siret, u.adrNum, u.adrIndRep, u.adrTypeVoie, u.adrLibVoie, u.adrCp, u.adrVille, u.adrComp, u.tel, u.fax, u.mobile, u.pref, u.profil, u.dateInscription, u.dateValidation, u.nombreConnexions, u.dateDerniereConnexion, u.droits, u.referenceParDefaut, u.nbReponses, u.formatMail, u.dateDebutCompte, u.dateFinCompte, u.maxFicheId, c.droits AS droitsClients, c.test AS clientTest, c.timeout, c.typeScore AS typeScore', - "u.login='$login' AND u.idClient=c.id AND u.deleted=0", - false, MYSQL_ASSOC - ); - $tabRep = $rep[0]; - if (count($rep)>0) - { - $timeOutSec = $tabRep['timeout']; - if ($timeOutSec==0) $timeOutSec = 1800; - $result->login = $login; - $result->id = $tabRep['id']; - $result->email = $tabRep['email']; - $result->typeCompte = $tabRep['typeCompte']; - $result->idClient = $tabRep['idClient']; - $result->filtre_ip = $tabRep['filtre_ip']; - $result->civilite = $tabRep['civilite']; - $result->nom = $tabRep['nom']; - $result->prenom = $tabRep['prenom']; - $result->raisonSociale = $tabRep['raisonSociale']; - $result->siret = $tabRep['siret']; - $result->adrNum = $tabRep['adrNum']; - $result->adrIndRep = $tabRep['adrIndRep']; - $result->adrTypeVoie = $tabRep['adrTypeVoie']; - $result->adrLibVoie = $tabRep['adrLibVoie']; - $result->adrCp = $tabRep['adrCp']; - $result->adrVille = $tabRep['adrVille']; - $result->adrComp = $tabRep['adrComp']; - $result->tel = $tabRep['tel']; - $result->fax = $tabRep['fax']; - $result->mobile = $tabRep['mobile']; - $result->pref = $tabRep['pref']; - $result->profil = $tabRep['profil']; - $result->dateInscription = $tabRep['dateInscription']; - $result->dateValidation = $tabRep['dateValidation']; - $result->nombreConnexions = $tabRep['nombreConnexions']; - $result->dateDerniereConnexion = $tabRep['dateDerniereConnexion']; - $result->droits = $tabRep['droits']; - $result->droitsClients = $tabRep['droitsClients']; - $result->timeout = $timeOutSec; - $result->clientTest = $tabRep['clientTest']; - $result->typeScore = $tabRep['typeScore']; - $result->nbReponses = $tabRep['nbReponses']; - $result->formatMail = $tabRep['formatMail']; - $result->reference = $tabRep['referenceParDefaut']; - $result->dateDebutCompte = $tabRep['dateDebutCompte']; - $result->dateFinCompte = $tabRep['dateFinCompte']; - $result->maxFicheId = $tabRep['maxFicheId']; - } else { - /** On log l'erreur d'authentification **/ - $tabInsert=array( - 'login' => $login, - 'page' => 'infosLogin', - 'params' => 'Erreur Login/Password', - 'ipClient' => $ipUtilisateur); - $iDbCrm->insert('logs', $tabInsert); - } - } - //Authentification de l'utilisateur - else - { - $ref='OK'; - //Identification utilisateur - $connected = true; - - $result->connected = $connected; - $result->login = $this->tabInfoUser['login']; - $result->id = $this->tabInfoUser['id']; - $result->idClient = $this->tabInfoUser['idClient']; - $result->email = $this->tabInfoUser['email']; - $result->typeCompte = $this->tabInfoUser['typeCompte']; - $result->filtre_ip = $this->tabInfoUser['filtre_ip']; - $result->ipPasserelle = $this->tabInfoUser['ipConnexion']; - $result->ipConnexion = $ipUtilisateur; - $result->civilite = $this->tabInfoUser['civilite']; - $result->nom = $this->tabInfoUser['nom']; - $result->prenom = $this->tabInfoUser['prenom']; - $result->raisonSociale = $this->tabInfoUser['raisonSociale']; - $result->siret = $this->tabInfoUser['siret']; - $result->adrNum = $this->tabInfoUser['adrNum']; - $result->adrIndRep = $this->tabInfoUser['adrIndRep']; - $result->adrTypeVoie = $this->tabInfoUser['adrTypeVoie']; - $result->adrLibVoie = $this->tabInfoUser['adrLibVoie']; - $result->adrCp = $this->tabInfoUser['adrCp']; - $result->adrVille = $this->tabInfoUser['adrVille']; - $result->adrComp = $this->tabInfoUser['adrComp']; - $result->tel = $this->tabInfoUser['tel']; - $result->fax = $this->tabInfoUser['fax']; - $result->mobile = $this->tabInfoUser['mobile']; - $result->pref = $this->tabInfoUser['pref']; - $result->profil = $this->tabInfoUser['profil']; - $result->dateInscription = $this->tabInfoUser['dateInscription']; - $result->dateValidation = $this->tabInfoUser['dateValidation']; - $result->nombreConnexions = $this->tabInfoUser['nombreConnexions']; - $result->dateDerniereConnexion = $this->tabInfoUser['dateDerniereConnexion']; - $result->droits = $this->tabInfoUser['droits']; - $result->droitsClients = $this->tabInfoUser['droitsClients']; - $result->timeout = $this->tabInfoUser['timeout']; - $result->clientTest = $this->tabInfoUser['clientTest']; - $result->typeScore = $this->tabInfoUser['typeScore']; - $result->nbReponses = $this->tabInfoUser['nbReponses']; - $result->formatMail = $this->tabInfoUser['formatMail']; - $result->reference = $this->tabInfoUser['referenceParDefaut']; - $result->dateDebutCompte = $this->tabInfoUser['dateDebutCompte']; - $result->dateFinCompte = $this->tabInfoUser['dateFinCompte']; - $result->maxFicheId = $this->tabInfoUser['maxFicheId']; - $result->typeScore = $this->tabInfoUser['typeScore']; - - // On log l'accès à l'authentification - if ( $this->tabInfoUser['clientTest']=='Oui' || $this->tabInfoUser['typeCompte']=='TEST' ) { - $test = 1; - } else { - $test = 0; - } - $tabInsert = array( - 'login' => $this->tabInfoUser['login'], - 'idClient' => $this->tabInfoUser['idClient'], - 'page' => 'infosLogin', - 'params' => $ref, - 'test' => $test, - 'ipClient' => $ipUtilisateur - ); - $iDbCrm = new WDB('sdv1'); - $iDbCrm->insert('logs', $tabInsert); - - //Date de dernière connexion - $iDbCrm->update('utilisateurs', - array('dateDerniereConnexion'=> date('Y-m-d H:i:s')), - "idClient=".$this->tabInfoUser['idClient']." AND login='".$this->tabInfoUser['login']."'" - ); - } - - //Retour - $output = new InfosLoginReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - - - /** - * Mise à jour des informations du profil connecté - * @param string $login - * @param string $action (delete|actif|desactif|changepwd|new|update) - * @param InfosLoginData $infos - * @return SetInfosLoginReturn - */ - public function setInfosLogin($login, $action, $infos = null) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - $result = false; - - switch($action) - { - case 'delete': - - if ($this->tabInfoUser['profil']=='Administrateur' - || $this->tabInfoUser['profil']=='SuperAdministrateur') { - $tabUpdate = array( 'deleted' => 1, 'dateUpdate' => date('Y-m-d H:i:s') ); - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->update('utilisateurs', $tabUpdate, "login='$login'")){ - $result = true; - } else { - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - } - } - break; - - case 'actif': - case 'desactif': - if ($this->tabInfoUser['profil']=='Administrateur' - || $this->tabInfoUser['profil']=='SuperAdministrateur'){ - if ($action=='actif') $actif = 1; - if ($action=='desactif') $actif = 0; - $tabUpdate = array( 'actif' => $actif, 'dateUpdate' => date('Y-m-d H:i:s') ); - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->update('utilisateurs', $tabUpdate, "login='$login'")){ - $result = true; - } else { - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - } - } - - break; - - case 'changepwd': - - $tabUpdate = array( - 'password' => stripslashes($infos->password), - 'dateUpdate' => date('Y-m-d H:i:s') - ); - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->update('utilisateurs', $tabUpdate, "login='$login'", true)){ - $result = true; - } else { - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - } - - break; - - case 'new': - - if ($this->tabInfoUser['profil']=='Administrateur' - || $this->tabInfoUser['profil']=='SuperAdministrateur') { - - $idClient = $this->tabInfoUser['idClient']; - if ( $this->tabInfoUser['profil']=='SuperAdministrateur' && $infos->idClient!=''){ - $idClient = $infos->idClient; - } - - $typeCompte = 'PROD'; - if ( $this->tabInfoUser['profil']=='SuperAdministrateur' && $infos->typeCompte=='TEST'){ - $typeCompte = 'TEST'; - } - - $tabUpdate = array( - 'idClient' => $idClient, - 'login' => $login, - 'password' => stripslashes($infos->password), - 'nom' => stripslashes($infos->nom), - 'prenom' => stripslashes($infos->prenom), - 'referenceParDefaut' => stripslashes($infos->reference), - 'email' => strtolower(stripslashes($infos->email)), - 'tel' => stripslashes($infos->tel_fix), - 'fax' => stripslashes($infos->tel_fax), - 'mobile' => stripslashes($infos->tel_mob), - 'nbReponses' => $infos->rech_nbrep, - //'formatMail' => $infos->formatMail, - 'profil' => (isset($infos->profil) || !in_array($infos->profil, array('SuperAdministrateur','Administrateur', 'Utilisateur')) ) ? $infos->profil : 'Utilisateur', - 'pref' => implode(' ',$infos->pref->item), - 'droits' => implode(' ', $infos->droits->item), - 'typeCompte' => $typeCompte, - 'dateInsert' => date('Y-m-d H:i:s'), - ); - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->insert('utilisateurs', $tabUpdate)){ - $result = true; - } else { - $error->errnum = 1; - $error->errmsg = 'Création impossible'; - } - } - - break; - - case 'update': - - if (!empty($infos->password)){ - $tabUpdate['password'] = stripslashes($infos->password); - } - $tabUpdate['email'] = stripslashes($infos->email); - $tabUpdate['tel'] = stripslashes($infos->tel_fix); - $tabUpdate['fax'] = stripslashes($infos->tel_fax); - $tabUpdate['mobile'] = stripslashes($infos->tel_mb); - $tabUpdate['nbReponses'] = $infos->rech_nbrep; - //$tabUpdate['formatMail'] = $infos->formatMail; - $tabUpdate['pref'] = implode(' ',$infos->pref->item); - $tabUpdate['dateUpdate'] = date('Y-m-d H:i:s'); - if ($this->tabInfoUser['profil']=='Administrateur' || - $this->tabInfoUser['profil']=='SuperAdministrateur') { - $tabUpdate['droits'] = implode(' ', $infos->droits->item); - $tabUpdate['nom'] = stripslashes($infos->nom); - $tabUpdate['prenom'] = stripslashes($infos->prenom); - $tabUpdate['referenceParDefaut'] = stripslashes($infos->reference); - $tabUpdate['profil'] = isset($infos->profil) ? $infos->profil : 'Utilisateur'; - } - - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->update('utilisateurs', $tabUpdate, "login='$login'", true)){ - $result = true; - } else { - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - } - - break; - default; - $result = false; - break; - } - - $output = new SetInfosLoginReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Affecter aux utilisateurs les paramètres du client - * @param integer $idClient - * @param string $element - * @param string[] $utilisateurs - * @return boolean - */ - public function setClientsParamsOnUtilisateurs( $idClient , $element = null, $utilisateurs = null ) - { - $this->authenticate(); - - if ($this->tabInfoUser['profil']!='SuperAdministrateur') { - $this->sendError('0901'); - } - if (empty($element)){ - throw new SoapFault('Error', 'Erreur dans les paramètres'); - } - switch(strtolower($element)){ - //Mettre à jour les ips des utilisateurs en fonction de celles du client - case 'ip': - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients', 'filtre_ip', "id='$idClient'", false, MYSQL_ASSOC); - if (count($rep)==0){ - throw new SoapFault('Error', 'Client inexistant'); - } - $data = array( - 'filtre_ip' => $rep[0]['filtre_ip'], - 'dateUpdate' => date('Y-m-d H:i:s'), - ); - $where = ' WHERE idClient='.$idClient; - if (!empty($utilisateurs) && is_array($utilisateurs->item)){ - $where.= ' AND login IN ('.join(',',$utilisateurs->item).')'; - } - if($iDbCrm->update('utilisateurs', $data, $where)){ - return true; - } - return false; - break; - } - } - - /** - * Obtention automatique d'un nouveau login pour un client - * @param string $login - * @return NextLoginReturn - */ - public function getNextLogin( $login ) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - - if ($this->tabInfoUser['profil']=='Administrateur' || - $this->tabInfoUser['profil']=='SuperAdministrateur') { - - /** Un administrateur veut créer un nouveau login **/ - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('utilisateurs u, clients c', 'u.idClient, c.racineLogin, c.droits', "u.login='$login' AND u.idClient=c.id"); - $racine = $rep[0]['racineLogin']; - $idClient = $rep[0]['idClient']; - $droitsClients = $rep[0]['droits']; - $rep = $iDbCrm->select('utilisateurs', 'login, length(login) as taille', "login like '$racine%' group by login order by taille desc, login desc LIMIT 0,1"); - if (count($rep)==0) { - $racine.='1'; - } else { - $last_i = preg_replace("/\D/", '',$rep[0]['login'])*1; - $racine.= $last_i+1; - } - $result = new NextLoginResult(); - $result->racine = $racine; - $result->idClient = $idClient; - $result->droitsClients = $droitsClients; - - } else { - - $error->errnum = 0; - $error->errmsg = 'Acces non authorisé!'; - } - $output = new NextLoginReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Récupère la liste des clients ou les informations d'un client - * @param integer|boolean $idClient - * @param ClientFiltre $filtre - * @return ListeClientsReturn - */ - public function getListeClients($idClient=false, $filtre=null) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - if (empty($idClient)) $idClient = false; - - $isAuthorized = false; - - if ($this->tabInfoUser['profil']=='Administrateur' && - ($idClient=='false' || $idClient==$this->tabInfoUser['idClient'])){ - $idClient = $this->tabInfoUser['idClient']; - $isAuthorized = true; - } - - if ($this->tabInfoUser['profil']<>'SuperAdministrateur'){ - $error->errnum = 1; - $error->errmsg = 'Profil non administrateur'; - } else { - $isAuthorized = true; - } - - if ($isAuthorized) - { - $strClient = ''; - - if (is_numeric($idClient)) $strClient.=" AND id='$idClient' "; - - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients', - 'id, nom, actif, test, racineLogin, siren, nic, tva, editerFacture, fact_detail, fac_dest, fac_adr1, fac_adr2, fac_adr3, fac_email, fac_tel, fact_rib, liv_dest, liv_adr1, liv_adr2, liv_adr3, liv_email, liv_tel, droits, filtres_ip, dateInsert, dateUpdate, respComSD, typeContrat, dateSignature, typeAcces, typeScore, timeout, accesPieces, accesKbis, accesInvestigations, accesInternationnal, accesEnquetes, miseSousSurveillance, forfaitExtranetPeriode, forfaitExtranetMontant, reconductionAuto, remarque, forfaitPiecesNb, forfaitPiecesMt, forfaitPiecesDep, forfaitInvestigNb, forfaitInvestigMt, forfaitInvestigDep, tarifIndiscore', - "1 $strClient", - false, - MYSQL_ASSOC); - $tabRet = array(); - foreach ($rep as $uti) - { - $client = new Client(); - $client->idClient = $uti['id']; - $client->nom = $uti['nom']; - $client->actif = $uti['actif']; - $client->test = $uti['test']; - $client->racineLogin = $uti['racineLogin']; - $client->siren = $uti['siren']; - $client->nic = $uti['nic']; - $client->tva = $uti['tva']; - $client->editerFacture = $uti['editerFacture']; - $client->fact_detail = $uti['fact_detail']; - $client->fac_dest = $uti['fac_dest']; - $client->fac_adr1 = $uti['fac_adr1']; - $client->fac_adr2 = $uti['fac_adr2']; - $client->fac_adr3 = $uti['fac_adr3']; - $client->fac_email = $uti['fac_email']; - $client->fac_tel = $uti['fac_tel']; - $client->fact_rib = $uti['fact_rib']; - $client->liv_dest = $uti['liv_dest']; - $client->liv_adr1 = $uti['liv_adr1']; - $client->liv_adr2 = $uti['liv_adr2']; - $client->liv_adr3 = $uti['liv_adr3']; - $client->liv_email = $uti['liv_email']; - $client->liv_tel = $uti['liv_tel']; - $client->droits = strtolower($uti['droits']); - $client->timeout = $uti['timeout']; - $client->filtres_ip = $uti['filtres_ip']; - $client->dateInsert = $uti['dateInsert']; - $client->dateUpdate = $uti['dateUpdate']; - $client->respComSD = $uti['respComSD']; - $client->typeContrat = $uti['typeContrat']; - $client->dateSignature = $uti['dateSignature']; - $client->typeAcces = $uti['typeAcces']; - $client->typeScore = $uti['typeScore']; - $client->accesPieces = $uti['accesPieces']; - $client->accesKbis = $uti['accesKbis']; - $client->accesInvestigations = $uti['accesInvestigations']; - $client->accesInternationnal = $uti['accesInternationnal']; - $client->accesEnquetes = $uti['accesEnquetes']; - $client->miseSousSurveillance = $uti['miseSousSurveillance']; - $client->forfaitExtranetPeriode = $uti['forfaitExtranetPeriode']; - $client->forfaitExtranetMontant = $uti['forfaitExtranetMontant']; - $client->reconductionAuto = $uti['reconductionAuto']; - $client->remarque = $uti['remarque']; - $client->forfaitPiecesNb = $uti['forfaitPiecesNb']; - $client->forfaitPiecesMt = $uti['forfaitPiecesMt']; - $client->forfaitPiecesDep = $uti['forfaitPiecesDep']; - $client->forfaitInvestigNb = $uti['forfaitInvestigNb']; - $client->forfaitInvestigMt = $uti['forfaitInvestigMt']; - $client->forfaitInvestigDep = $uti['forfaitInvestigDep']; - $client->tarifIndiscore = $uti['tarifIndiscore']; - - $tabRet[] = $client; - } - } - $output = new ListeClientsReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des droits - * @return ListeDroitsReturn[] - */ - public function getListeDroits() - { - $tabRet = array(); - foreach($this->listeDroits as $code => $desc){ - $droit = new ListeDroitsReturn(); - $droit->code = $code; - $droit->desc = $desc; - $tabRet[] = $droit; - } - return $tabRet; - } - - /** - * Retourne la liste des préférences - * @return ListePrefsReturn[] - */ - public function getListePrefs() - { - $tabRet = array(); - foreach($this->listePrefs as $code => $desc){ - $pref = new ListePrefsReturn(); - $pref->code = $code; - $pref->desc = $desc; - $tabRet[] = $pref; - } - return $tabRet; - } - - /** - * Récupère les informations du profil connecté - * @param string $login - * @param int $idClient - * @return ListeUtilisateursReturn - */ - public function getListeUtilisateurs($login, $idClient=null) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - $tabRet = array(); - - if ($this->tabInfoUser['profil']<>'Administrateur' && - $this->tabInfoUser['profil']<>'SuperAdministrateur') - { - $error->errnum = 1; - $error->errmsg = 'Profil non administrateur'; - } else { - $iDbCrm = new WDB('sdv1'); - if (!isset($idClient)){ - $rep = $iDbCrm->select('utilisateurs', 'idClient', "login='$login'"); - $idClient = $rep[0][0]; - } - if ($idClient==-1){ - $error->errnum = 1; - $error->errmsg = 'idClient=0'; - } else { - $rep = $iDbCrm->select('utilisateurs', 'id, idClient, login, email, actif, nom, prenom, referenceParDefaut', "idClient='$idClient' AND deleted=0 ORDER BY login ASC", false, MYSQL_ASSOC); - foreach ($rep as $uti){ - $utilisateur = new Utilisateur(); - $utilisateur->idUti = $uti['id']; - $utilisateur->idClient= $uti['idClient']; - $utilisateur->login = $uti['login']; - $utilisateur->email = $uti['email']; - $utilisateur->actif= $uti['actif']; - $utilisateur->nom = $uti['nom']; - $utilisateur->prenom = $uti['prenom']; - $utilisateur->reference = $uti['referenceParDefaut']; - $tabRet[]= $utilisateur; - } - } - } - $output = new ListeUtilisateursReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * getLogsClients - * @param string $mois (Format : AAAA-MM ou AAAA/MM) - * @param int $detail - * @param int $idClient - * @param string $login - * @param int $all - * @return LogsClientsReturn - */ - public function getLogsClients($mois, $detail=0, $idClient=0, $login='', $all=0) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - if (empty($detail)) $detail = 0; - if (empty($idClient)) $idClient = 0; - if (empty($login)) $login = ''; - if (empty($all)) $all = 0; - - $strDetail = $strClient = $strLogin=''; - - // Vue détaillée ou uniquement les infos payantes - if ($detail==0) { - $detail='Non'; - //$strDetail=" AND (page LIKE 'greffe_%' OR page LIKE 'inpi_%' OR page='kbis' OR page LIKE 'indiscore%' OR page='privileges' OR page='commandeAsso') AND (params<>'' OR page LIKE 'indiscore%' AND tarifIndiscore<>0) AND (params NOT LIKE '%erreur%' OR params LIKE '%erreur 17%') "; - $strDetail = ' AND ( '; - $pages = array('greffe_actes', 'greffe_bilans', 'kbis', 'indiscore', 'indiscore2', 'indiscore3', 'rapport2', 'rapport3', 'privileges', 'privcumul'); - $totalPages = count($pages); - $i=0; - foreach( $pages as $page ) { - switch($page) - { - case 'greffe_actes': - case 'greffe_bilans': - $strDetail.= "(l.page = '".$page."' AND l.params<>'' AND (l.params NOT LIKE '%erreur%' OR l.params LIKE '%erreur 17%'))"; - break; - case 'kbis': - $strDetail.= "(l.page = '".$page."' AND l.params<>'' AND l.params<>'1/1/0//' AND l.params<>'0/1/0//')"; - break; - default: - $strDetail.= "(l.page = '".$page."')"; - break; - } - $i++; - if ( $i<$totalPages) { - $strDetail.= ' OR '; - } - } - $strDetail.= ' ) '; - } elseif($detail==1) { - $detail='Oui'; - } - - // On veut uniquement le client précis - if ($all && $this->tabInfoUser['profil']=='SuperAdministrateur') { - $all = 'Oui'; - } else { - $all = 'Non'; - } - // Pas d'idClient mentionné ou tentative sur autre client et non SAD - if ($idClient==0 || ($idClient!=$this->tabInfoUser['idClient'] && $this->tabInfoUser['profil']!='SuperAdministrateur') ){ - $idClient = $this->tabInfoUser['idClient']; - } - $strClient = " AND u.idClient=$idClient "; - - // On veut uniquement le login précis - if ($login!='') { - $strLogin=" AND l.login='$login' "; - } else { - $login='Non'; - } - - // Dates de début et de fin - $mois = strtr($mois, array('-'=>'','/'=>'')); - $annee = substr($mois,0,4); - $mois = substr($mois,4,2); - $dateDeb=date('Y-m-d', mktime(0,0,0,$mois,1,$annee)); - $dateFin=date('Y-m-t', mktime(0,0,0,$mois,15,$annee)); - - $c = Zend_Registry::get('config'); - $fichierCsv=$c->profil->path->files."/logs-$annee-$mois-$detail-$idClient-$login-$all.csv"; - - if (file_exists($fichierCsv) && - date('Ymd', filemtime($fichierCsv))==date('Ymd') && - filesize($fichierCsv)>60 ) { - $size=filesize($fichierCsv); - $erreur=false; - $tabNom=array(); - $cache=1; - } else { - @unlink($fichierCsv); - $sql="SELECT LOWER(l.login) as loginUti, page, l.siren, l.nic, l.params, l.dateHeure, u.idClient, c.nom, u.referenceParDefaut AS refUti - FROM `logs` l, utilisateurs u, clients c - WHERE 1 $strDetail $strClient $strLogin AND dateHeure BETWEEN '$dateDeb 00:00:00' AND '$dateFin 23:59:59' AND l.login=u.login AND u.idClient=c.id - GROUP BY l.login, l.siren, l.page, date(dateHeure), l.params - ORDER BY l.login ASC, l.dateHeure ASC"; - $fp = fopen($c->profil->path->cache."/logs-$annee-$mois-$detail-$idClient-$login-$all.sql", 'w'); - fwrite($fp, $sql.EOL); - fclose($fp); - exec("php ".$c->profil->path->batch."/sql2csv.php sdv1 ".$c->profil->path->cache."/logs-$annee-$mois-$detail-$idClient-$login-$all.sql $fichierCsv > /dev/null &"); - $size = $cache = 0; - } - - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $result = new LogsClients(); - $result->Url = $hostname."/fichier/logs/logs-$annee-$mois-$detail-$idClient-$login-$all.csv"; - $result->Taille = $size; - $result->Cache = $cache; - - $output = new LogsClientsReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Création/Modification d'un client - * @param string $infos - * @return ClientReturn - */ - public function setClient($infos) - { - $this->authenticate(); - $result = false; - //Pas SuperAdministrateur - if ($this->tabInfoUser['profil']!='SuperAdministrateur') { - throw new SoapFault(1, 'Profil insuffisant pour cette méthode'); - } else { - $infos = json_decode($infos); - - /** - * - Protégé les chaines de caractères - * - Gérer les champs select - */ - - $idClient = null; - $tabInfos = array(); - foreach($infos as $nom => $value) - { - switch($nom) - { - case 'idClient': - $idClient = $value; - break; - case 'nom': - $tabInfos['nom'] = $value; - break; - case 'actif': - $tabInfos['actif'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'test': - $tabInfos['test'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'racineLogin': - $tabInfos['racineLogin'] = $infos->racineLogin; - break; - case 'siren': - $tabInfos['siren'] = (int) $value; - break; - case 'nic': - $tabInfos['nic'] = (int) $value; - break; - case 'tva': - $tabInfos['tva'] = $value; - break; - case 'idClientFacture': - $tabInfos['idClientFacture'] = $value; - break; - case 'editerFacture': - $tabInfos['editerFacture'] = ($value=='Non') ? 'Non' : 'Oui'; - break; - case 'fact_detail': - $tabInfos['fact_detail'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'fac_dest': - $tabInfos['fac_dest'] = $value; - break; - case 'fac_adr1': - $tabInfos['fac_adr1'] = $value; - break; - case 'fac_adr2': - $tabInfos['fac_adr2'] = $value; - break; - case 'fac_adr3': - $tabInfos['fac_adr3'] = $value; - break; - case 'fac_email': - $tabInfos['fac_email'] = $value; - break; - case 'fac_tel': - $tabInfos['fac_tel'] = $value; - break; - case 'fact_rib': - if (in_array($value, array('BPOSTALE','CCOOP', 'CDNORD'))){ - $tabInfos['fact_rib'] = $value; - } - break; - case 'liv_dest': - $tabInfos['liv_dest'] = $value; - break; - case 'liv_adr1': - $tabInfos['liv_adr1'] = $value; - break; - case 'liv_adr2': - $tabInfos['liv_adr2'] = $value; - break; - case 'liv_adr3': - $tabInfos['liv_adr3'] = $value; - break; - case 'liv_email': - $tabInfos['liv_email'] = $value; - break; - case 'liv_tel': - $tabInfos['liv_tel'] = $value; - break; - case 'droits': - if (count($value)>0){ - $tabInfos['droits'] = strtolower(implode(' ',$value)); - } else { - $tabInfos['droits'] = array(); - } - break; - case 'filtres_ip': - $tabInfos['filtres_ip'] = $value; - break; - case 'typeContrat': - if (in_array($value, array('Contrat','Marché'))){ - $tabInfos['typeContrat'] = $value; - } - break; - case 'typeAcces': - if (in_array($value, array('userPassword','userPasswordIP', 'IP'))){ - $tabInfos['typeAcces'] = $value; - } - break; - case 'typeScore': - if (in_array($value, array('20','100'))){ - $tabInfos['typeScore'] = $value; - } - break; - case 'timeout': - if (!empty($value)){ - $tabInfos['timeout'] = $value; - } - break; - case 'accesPieces': - $tabInfos['accesPieces'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'accesKbis': - $tabInfos['accesKbis'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'accesInvestigations': - $tabInfos['value'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'accesInternationnal': - $tabInfos['accesInternationnal'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'accesEnquetes': - $tabInfos['accesEnquetes'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'miseSousSurveillance': - $tabInfos['miseSousSurveillance'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'forfaitExtranetPeriode': - if (in_array($value, array('Mensuel','Trimestriel','Semestriel', 'Annuel'))){ - $tabInfos['forfaitExtranetPeriode'] = $value; - } - break; - case 'forfaitExtranetMontant': - $tabInfos['forfaitExtranetMontant'] = $value; - break; - case 'reconductionAuto': - if ($value=='Non') { - $tabInfos['reconductionAuto'] = 'Non'; - } - break; - case 'remarque': - $tabInfos['remarque'] = $value; - break; - case 'forfaitPiecesNb': - $tabInfos['forfaitPiecesNb'] = $value; - break; - case 'forfaitPiecesMt': - $tabInfos['forfaitPiecesMt'] = $value; - break; - case 'forfaitPiecesDep': - $tabInfos['forfaitPiecesDep'] = $value; - break; - case 'forfaitInvestigNb': - $tabInfos['forfaitInvestigNb'] = $value; - break; - case 'forfaitInvestigMt': - $tabInfos['forfaitInvestigMt'] = $value; - break; - case 'forfaitInvestigDep': - $tabInfos['forfaitInvestigDep'] = $value; - break; - case 'tarifIndiscore': - $tabInfos['tarifIndiscore'] = $value; - break; - case 'InterSudLogin': - $tabInfos['InterSudLogin'] = $value; - break; - case 'InterSudPass': - $tabInfos['InterSudPass'] = $value; - break; - } - - } - - $iDbCrm = new WDB('sdv1'); - if (empty($idClient)){ - //Ajout - $tabInfos['dateInsert'] = date('Y-m-d H:i:s'); - $result = $iDbCrm->insert('clients', $tabInfos, true); - } else { - //Droits client actuel avant modification - if (isset($tabInfos['droits'])){ - $rep = $iDbCrm->select('clients', 'droits', "id='$idClient'", false, MYSQL_ASSOC); - $droitsPre = explode(' ', $rep[0]['droits']); - $droitsSui = explode(' ', $tabInfos['droits']); - //Détection suppression d'un droit client - if (count($droitsSui)0 ){ - foreach($droitsDiff as $droit){ - $query = "UPDATE utilisateurs set droits=TRIM(REPLACE(droits, '$droit', '')) WHERE idClient='$idClient'"; - $iDbCrm->query($query, true); - } - } - } - } - //Modification - $tabInfos['dateUpdate'] = date('Y-m-d H:i:s'); - if ($iDbCrm->update('clients', $tabInfos, "id='$idClient'", true)){ - $result = true; - } - } - } - $output = new ClientReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Création d'un modele pour le préremplisage des données utilisateurs - * @param integer $idClient - * @param string $nom - * @param ModeleUtilisateur $infos - * @return ModeleUtilisateurReturn - */ - protected function setModeleUtilisateur($idClient, $nom, $infos) - { - $this->authenticate(); - } - - /** - * Création/Modification d'utilisateurs - * @param integer $idClient - * @param SetUtilisateurs[] $users - * @return UtilisateursReturn - */ - protected function setUtilisateurs($idClient, $users) - { - $this->authenticate(); - $error = new ErrorType(); - $result = false; - //idClient existe - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients', 'id, nom, actif, test, racineLogin, siren, nic, droits, filtres_ip, typeAcces, typeScore, accesPieces, accesKbis, accesInvestigations, accesInternationnal, accesEnquetes, miseSousSurveillance', "1 AND id='$idClient'", false, MYSQL_ASSOC); - if (count($rep)>0){ - $client = $rep[0]; - $idClient = $client['id']; - if (count($users)>0){ - foreach($users as $user){ - $tabInfos = array(); - $tabInfos['idClient'] = $idClient; - $tabInfos['login'] = $user->login; - $tabInfos['email'] = ''; - $tabInfos['password'] = $user->password; - $tabInfos['actif'] = ''; - //$tabInfos['deleted'] = ''; - - if (in_array($user->typeCompte, array('TEST', 'PROD'))){ - $tabInfos['typeCompte'] = $user->typeCompte; - } else { - $tabInfos['typeCompte'] = 'PROD'; - } - - //$tabInfos['filtre_ip'] = ''; - - //SetInfosLogin - $tabInfos['civilite'] = ''; - $tabInfos['nom'] = ''; - $tabInfos['prenom'] = ''; - - //Identique au client - $tabInfos['raisonSociale'] = ''; - $tabInfos['siret'] = ''; - $tabInfos['adrNum'] = ''; - $tabInfos['adrInRep'] = ''; - $tabInfos['adrTypeVoie'] = ''; - $tabInfos['adrLibVoie'] = ''; - $tabInfos['adrCp'] = ''; - $tabInfos['adrVille'] = ''; - $tabInfos['adrComp'] = ''; - $tabInfos['tel'] = ''; - $tabInfos['fax'] = ''; - $tabInfos['mobile'] = ''; - - $tabInfos['pref'] = ''; - - if (in_array($user->typeCompte, array('Administrateur', 'Utilisateur'))){ - $tabInfos['profil'] = $user->profil; - } else { - $tabInfos['profil'] = 'Utilisateur'; - } - /* - $tabInfos['dateInscription'] = ''; - $tabInfos['dateValidation'] = ''; - */ - - if (empty($user->droits)){ - $tabInfos['droits'] = $client->droits; - } else { - $tabInfos['droits'] = $user->droits; - } - $tabInfos['referenceParDefaut'] = ''; - $tabInfos['nbReponses'] = ''; - $tabInfos['listeEven'] = ''; - $tabInfos['maxFicheId'] = $user->maxFicheId; - - //$tabInfos['dateInsert'] = ''; - - if (empty($user->id)){ - $iDbCrm->insert('utilisateurs', $tabInfos); - } else { - $iDbCrm->update('utilisateurs', $tabInfos, "id='$user->id'"); - } - - } - } else { - $error->errnum = 1; - $error->errmsg = 'Aucun utilisateur'; - } - } else { - $error->errnum = 1; - $error->errmsg = 'Identifiant client inconnu!'; - } - $output = new UtilisateursReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } -} \ No newline at end of file diff --git a/library/WsScore/Gestion/v0.1/Types.php b/library/WsScore/Gestion/v0.1/Types.php deleted file mode 100644 index dd4eb8bc..00000000 --- a/library/WsScore/Gestion/v0.1/Types.php +++ /dev/null @@ -1,461 +0,0 @@ - 'ErrorType', - 'InfosLoginReturn' => 'InfosLoginReturn', - 'InfosLogin' => 'InfosLogin', - 'NextLoginReturn' => 'NextLoginReturn', - 'NextLoginResult' => 'NextLoginResult', - 'ClientFiltre' => 'ClientFiltre', - 'ListeClientsReturn' => 'ListeClientsReturn', - 'Client' => 'Client', - 'ListeDroitsReturn' => 'ListeDroitsReturn', - 'ListePrefsReturn' => 'ListePrefsReturn', - 'ListeUtilisateursReturn' => 'ListeUtilisateursReturn', - 'Utilisateur' => 'Utilisateur', - 'LogsClientsReturn' => 'LogsClientsReturn', - 'LogsClients' => 'LogsClients', - 'ClientReturn' => 'ClientReturn', - 'SetUtilisateurs' => 'SetUtilisateurs', - 'UtilisateursReturn' => 'UtilisateursReturn', - 'ModeleUtilisateurReturn' => 'ModeleUtilisateurReturn', - 'ModeleUtilisateur' => 'ModeleUtilisateur', - 'ClientTarif' => 'ClientTarif', -); \ No newline at end of file diff --git a/library/WsScore/Gestion/v0.2/Gestion.php b/library/WsScore/Gestion/v0.2/Gestion.php deleted file mode 100644 index a881dcef..00000000 --- a/library/WsScore/Gestion/v0.2/Gestion.php +++ /dev/null @@ -1,1288 +0,0 @@ -authenticate(); - - //Initialisation - if (empty($ipUtilisateur)) $ipUtilisateur = $_SERVER['REMOTE_ADDR']; - $error = new ErrorType(); - $result = new InfosLogin(); - - //Filtre IP - $filtre = trim($this->tabInfoUser['filtre_ip']); - if ( !empty($filtre) && !checkPlagesIp($filtre, $ipUtilisateur) ){ - debugLog('I',"getInfosLogin Adresse IP $ipUtilisateur non declaree pour le compte $login",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->sendError('0904'); - } - - debugLog('I',"getInfosLogin pour $login (IP=$ipUtilisateur)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - //L'utilisateur qui demande les informations est différent - if ( $this->tabInfoUser['login']<>$login - && in_array($this->tabInfoUser['profil'], array('Administrateur', 'SuperAdministrateur') ) - ) { - /** Un administrateur veut il des infos sur un login ? **/ - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select( - 'utilisateurs u, clients c', - 'u.login, u.id, u.email, u.password, u.idClient, u.typeCompte, u.actif, u.filtre_ip, u.civilite, u.nom, u.prenom, u.tel, u.fax, u.mobile, u.profil, u.raisonSociale, u.siret, u.adrNum, u.adrIndRep, u.adrTypeVoie, u.adrLibVoie, u.adrCp, u.adrVille, u.adrComp, u.tel, u.fax, u.mobile, u.pref, u.profil, u.dateInscription, u.dateValidation, u.nombreConnexions, u.dateDerniereConnexion, u.droits, u.referenceParDefaut, u.nbReponses, u.formatMail, u.dateDebutCompte, u.dateFinCompte, u.maxFicheId, c.droits AS droitsClients, c.test AS clientTest, c.timeout, c.typeScore AS typeScore', - "u.login='$login' AND u.idClient=c.id AND u.deleted=0", - false, MYSQL_ASSOC - ); - $tabRep = $rep[0]; - if (count($rep)>0) - { - $timeOutSec = $tabRep['timeout']; - if ($timeOutSec==0) $timeOutSec = 1800; - $result->login = $login; - $result->id = $tabRep['id']; - $result->email = $tabRep['email']; - $result->typeCompte = $tabRep['typeCompte']; - $result->idClient = $tabRep['idClient']; - $result->filtre_ip = $tabRep['filtre_ip']; - $result->civilite = $tabRep['civilite']; - $result->nom = $tabRep['nom']; - $result->prenom = $tabRep['prenom']; - $result->raisonSociale = $tabRep['raisonSociale']; - $result->siret = $tabRep['siret']; - $result->adrNum = $tabRep['adrNum']; - $result->adrIndRep = $tabRep['adrIndRep']; - $result->adrTypeVoie = $tabRep['adrTypeVoie']; - $result->adrLibVoie = $tabRep['adrLibVoie']; - $result->adrCp = $tabRep['adrCp']; - $result->adrVille = $tabRep['adrVille']; - $result->adrComp = $tabRep['adrComp']; - $result->tel = $tabRep['tel']; - $result->fax = $tabRep['fax']; - $result->mobile = $tabRep['mobile']; - $result->pref = $tabRep['pref']; - $result->profil = $tabRep['profil']; - $result->dateInscription = $tabRep['dateInscription']; - $result->dateValidation = $tabRep['dateValidation']; - $result->nombreConnexions = $tabRep['nombreConnexions']; - $result->dateDerniereConnexion = $tabRep['dateDerniereConnexion']; - $result->droits = $tabRep['droits']; - $result->droitsClients = $tabRep['droitsClients']; - $result->timeout = $timeOutSec; - $result->clientTest = $tabRep['clientTest']; - $result->typeScore = $tabRep['typeScore']; - $result->nbReponses = $tabRep['nbReponses']; - $result->formatMail = $tabRep['formatMail']; - $result->reference = $tabRep['referenceParDefaut']; - $result->dateDebutCompte = $tabRep['dateDebutCompte']; - $result->dateFinCompte = $tabRep['dateFinCompte']; - $result->maxFicheId = $tabRep['maxFicheId']; - } else { - /** On log l'erreur d'authentification **/ - $tabInsert=array( - 'login' => $login, - 'page' => 'infosLogin', - 'params' => 'Erreur Login/Password', - 'ipClient' => $ipUtilisateur); - $iDbCrm->insert('logs', $tabInsert); - } - } - //Authentification de l'utilisateur - else - { - $ref='OK'; - //Identification utilisateur - $connected = true; - - $result->connected = $connected; - $result->login = $this->tabInfoUser['login']; - $result->id = $this->tabInfoUser['id']; - $result->idClient = $this->tabInfoUser['idClient']; - $result->email = $this->tabInfoUser['email']; - $result->typeCompte = $this->tabInfoUser['typeCompte']; - $result->filtre_ip = $this->tabInfoUser['filtre_ip']; - $result->ipPasserelle = $this->tabInfoUser['ipConnexion']; - $result->ipConnexion = $ipUtilisateur; - $result->civilite = $this->tabInfoUser['civilite']; - $result->nom = $this->tabInfoUser['nom']; - $result->prenom = $this->tabInfoUser['prenom']; - $result->raisonSociale = $this->tabInfoUser['raisonSociale']; - $result->siret = $this->tabInfoUser['siret']; - $result->adrNum = $this->tabInfoUser['adrNum']; - $result->adrIndRep = $this->tabInfoUser['adrIndRep']; - $result->adrTypeVoie = $this->tabInfoUser['adrTypeVoie']; - $result->adrLibVoie = $this->tabInfoUser['adrLibVoie']; - $result->adrCp = $this->tabInfoUser['adrCp']; - $result->adrVille = $this->tabInfoUser['adrVille']; - $result->adrComp = $this->tabInfoUser['adrComp']; - $result->tel = $this->tabInfoUser['tel']; - $result->fax = $this->tabInfoUser['fax']; - $result->mobile = $this->tabInfoUser['mobile']; - $result->pref = $this->tabInfoUser['pref']; - $result->profil = $this->tabInfoUser['profil']; - $result->dateInscription = $this->tabInfoUser['dateInscription']; - $result->dateValidation = $this->tabInfoUser['dateValidation']; - $result->nombreConnexions = $this->tabInfoUser['nombreConnexions']; - $result->dateDerniereConnexion = $this->tabInfoUser['dateDerniereConnexion']; - $result->droits = $this->tabInfoUser['droits']; - $result->droitsClients = $this->tabInfoUser['droitsClients']; - $result->timeout = $this->tabInfoUser['timeout']; - $result->clientTest = $this->tabInfoUser['clientTest']; - $result->typeScore = $this->tabInfoUser['typeScore']; - $result->nbReponses = $this->tabInfoUser['nbReponses']; - $result->formatMail = $this->tabInfoUser['formatMail']; - $result->reference = $this->tabInfoUser['referenceParDefaut']; - $result->dateDebutCompte = $this->tabInfoUser['dateDebutCompte']; - $result->dateFinCompte = $this->tabInfoUser['dateFinCompte']; - $result->maxFicheId = $this->tabInfoUser['maxFicheId']; - $result->typeScore = $this->tabInfoUser['typeScore']; - $result->acceptationCGU = $this->tabInfoUser['acceptationCGU']; - - // On log l'accès à l'authentification - if ( $this->tabInfoUser['clientTest']=='Oui' || $this->tabInfoUser['typeCompte']=='TEST' ) { - $test = 1; - } else { - $test = 0; - } - $tabInsert = array( - 'login' => $this->tabInfoUser['login'], - 'idClient' => $this->tabInfoUser['idClient'], - 'page' => 'infosLogin', - 'params' => $ref, - 'test' => $test, - 'ipClient' => $ipUtilisateur - ); - $iDbCrm = new WDB('sdv1'); - $iDbCrm->insert('logs', $tabInsert); - - //Date de dernière connexion - $iDbCrm->update('utilisateurs', - array('dateDerniereConnexion'=> date('Y-m-d H:i:s')), - "idClient=".$this->tabInfoUser['idClient']." AND login='".$this->tabInfoUser['login']."'" - ); - } - - //Retour - $output = new InfosLoginReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - - /** - * Mise à jour des informations du profil connecté - * @param string $login - * @param string $action (delete|enable|disable|changepwd|new|update) - * @param string $infos - * @return boolean - */ - public function setInfosLogin($login, $action, $infos = null) - { - $this->authenticate(); - //Initialisation - $result = false; - - $infos = json_decode($infos, true); - - switch($action) - { - case 'delete': - - if ($this->tabInfoUser['profil']=='Administrateur' - || $this->tabInfoUser['profil']=='SuperAdministrateur') { - $tabUpdate = array( 'deleted' => 1, 'dateUpdate' => date('Y-m-d H:i:s') ); - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->update('utilisateurs', $tabUpdate, "login='$login'")){ - $result = true; - } - } - break; - - case 'enable': - case 'disable': - if ($this->tabInfoUser['profil']=='Administrateur' - || $this->tabInfoUser['profil']=='SuperAdministrateur') { - $actif = 1; - if ($action=='disable') { - $actif = 0; - } - $tabUpdate = array( 'actif' => $actif, 'dateUpdate' => date('YmdHis') ); - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->update('utilisateurs', $tabUpdate, "login='$login'")){ - $result = true; - } - } - - break; - - case 'changepwd': - - $tabUpdate = array( - 'password' => stripslashes($infos['password']), - 'dateUpdate' => date('Y-m-d H:i:s') - ); - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->update('utilisateurs', $tabUpdate, "login='$login'", true)){ - $result = true; - } - - break; - - case 'new': - - if ($this->tabInfoUser['profil']=='Administrateur' - || $this->tabInfoUser['profil']=='SuperAdministrateur') - { - $tabUpdate = array(); - - $idClient = $this->tabInfoUser['idClient']; - if ( $this->tabInfoUser['profil']=='SuperAdministrateur' && $infos['idClient']!=''){ - $idClient = $infos['idClient']; - } - $tabUpdate['idClient'] = $idClient; - - $tabUpdate['login'] = $login; - $tabUpdate['email'] = strtolower(stripslashes($infos['email'])); - $tabUpdate['password'] = stripslashes($infos['password']); - $tabUpdate['actif'] = 0; - $tabUpdate['deleted'] = 0; - - $typeCompte = 'PROD'; - if ( $this->tabInfoUser['profil']=='SuperAdministrateur' && $infos['typeCompte']=='TEST'){ - $typeCompte = 'TEST'; - } - $tabUpdate['typeCompte'] = $typeCompte; - - //@todo : See issue #0001209 - /* - if ($this->tabInfoUser['profil']=='SuperAdministrateur' && !empty($infos['filtre_ip'])) { - $tabUpdate['filtre_ip'] = $infos['filtre_ip']; - } else { - $rep = $iDbCrm->select('clients', 'filtre_ip', "id='$idClinet'",false, MYSQL_ASSOC); - $tabUpdate['filtre_ip'] = $rep[0]['filtre_ip']; - } - */ - //$tabUpdate['civilite'] = 'M'; - $tabUpdate['nom'] = stripslashes($infos['nom']); - $tabUpdate['prenom'] = stripslashes($infos['prenom']); - //$tabUpdate['raisonSociale'] = ''; - //$tabUpdate['siret'] = 00000000; - //adrNum - //adrIndRep - //adrTypeVoie - //adrLibVoie - //adrCp - //adrVille - //adrComp - $tabUpdate['tel'] = stripslashes($infos['tel_fix']); - $tabUpdate['fax'] = stripslashes($infos['tel_fax']); - $tabUpdate['mobile'] = stripslashes($infos['tel_mob']); - $tabUpdate['pref'] = implode(' ',$infos['pref']); - $tabUpdate['profil'] = (isset($infos['profil']) - || !in_array($infos->profil, array('SuperAdministrateur','Administrateur', 'Utilisateur')) ) ? - $infos['profil'] : 'Utilisateur'; - //dateInscription - //dateValidation - //nombreConnexions 0 - //dateDerniereConnexion - $tabUpdate['droits'] = implode(' ', $infos['droits']); - $tabUpdate['referenceParDefaut'] = stripslashes($infos['reference']); - $tabUpdate['nbReponses'] = $infos['nbReponses']; - - if ($this->tabInfoUser['profil']=='SuperAdministrateur') { - $tabUpdate['formatMail'] = $infos['formatMail']; - $tabUpdate['lienExtranetMail'] = $infos['lienExtranetMail']; - $tabUpdate['listeEven'] = $infos['listeEven']; - $tabUpdate['dateDebutCompte'] = $infos['dateDebutCompte']; - $tabUpdate['dateFinCompte'] = $infos['dateFinCompte']; - $tabUpdate['accesWS'] = $infos['accesWS']; - $tabUpdate['rechRefType'] = $infos['rechRefType']; - } - //lienSurvFic - //idSurvFic - //loginCptSurvFic - - $tabUpdate['dateInsert'] = date('YmdHis'); - //dateUpdate => MySql automatic update - - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->insert('utilisateurs', $tabUpdate)){ - $result = true; - } - } - - break; - - case 'update': - - //Don't update password if nothind is send - if (!empty($infos['password'])){ - $tabUpdate['password'] = stripslashes($infos['password']); - } - - //Only this data could be updated by the user himself - $tabUpdate['email'] = stripslashes($infos['email']); - $tabUpdate['tel'] = stripslashes($infos['tel_fix']); - $tabUpdate['fax'] = stripslashes($infos['tel_fax']); - $tabUpdate['mobile'] = stripslashes($infos['tel_mb']); - $tabUpdate['nbReponses'] = $infos['nbReponses']; - $tabUpdate['pref'] = implode(' ',$infos['pref']); - - //User with Administrateur or SuperAdministrateur can update these data - if ($this->tabInfoUser['profil']=='Administrateur' - || $this->tabInfoUser['profil']=='SuperAdministrateur') - { - $tabUpdate['droits'] = implode(' ', $infos['droits']); - $tabUpdate['nom'] = stripslashes($infos['nom']); - $tabUpdate['prenom'] = stripslashes($infos['prenom']); - $tabUpdate['referenceParDefaut'] = stripslashes($infos['reference']); - $tabUpdate['profil'] = isset($infos['profil']) ? $infos['profil'] : 'Utilisateur'; - } - - //Only update as SuperAdministrateur - if ($this->tabInfoUser['profil']=='SuperAdministrateur') - { - $typeCompte = 'PROD'; - if ( $this->tabInfoUser['profil']=='SuperAdministrateur' && $infos['typeCompte']=='TEST'){ - $typeCompte = 'TEST'; - } - $tabUpdate['typeCompte'] = $typeCompte; - - $formatMail = 'txt1'; - if ( !empty($infos['formatMail']) ) { - $formatMail = $infos['formatMail']; - } - $tabUpdate['formatMail'] = $formatMail; - - if (array_key_exists('lienExtranetMail', $infos) && !empty($infos['lienExtranetMail'])) { - $tabUpdate['lienExtranetMail'] = $infos['lienExtranetMail']; - } - - if (array_key_exists('listeEven', $infos) && !empty($infos['listeEven'])) { - $tabUpdate['listeEven'] = $infos['listeEven']; - } - - if (array_key_exists('dateDebutCompte', $infos) && !empty($infos['dateDebutCompte'])) { - $tabUpdate['dateDebutCompte'] = $infos['dateDebutCompte']; - } - - if (array_key_exists('dateFinCompte', $infos) && !empty($infos['dateFinCompte'])) { - $tabUpdate['dateFinCompte'] = $infos['dateFinCompte']; - } - - if (array_key_exists('accesWS', $infos) && !empty($infos['accesWS'])) { - $tabUpdate['accesWS'] = $infos['accesWS']; - } - - $rechRefType = 'UTI'; - if (array_key_exists('rechRefType', $infos) && !empty($infos['rechRefType'])) { - $rechRefType = $infos['rechRefType']; - } - $tabUpdate['rechRefType'] = $rechRefType; - - } - $tabUpdate['dateUpdate'] = date('YmdHis'); - - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->update('utilisateurs', $tabUpdate, "login='$login'", true)){ - $result = true; - } - - break; - - default: $result = false; break; - } - - return $result; - } - - /** - * Obtention automatique d'un nouveau login pour un client - * @param string $login - * @return NextLoginReturn - */ - public function getNextLogin( $login ) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - - if ($this->tabInfoUser['profil']=='Administrateur' || - $this->tabInfoUser['profil']=='SuperAdministrateur') { - - /** Un administrateur veut créer un nouveau login **/ - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('utilisateurs u, clients c', 'u.idClient, c.racineLogin, c.droits', "u.login='$login' AND u.idClient=c.id"); - $racine = $rep[0]['racineLogin']; - $idClient = $rep[0]['idClient']; - $droitsClients = $rep[0]['droits']; - $rep = $iDbCrm->select('utilisateurs', 'login, length(login) as taille', "login like '$racine%' group by login order by taille desc, login desc LIMIT 0,1"); - if (count($rep)==0) { - $racine.='1'; - } else { - $last_i = preg_replace("/\D/", '',$rep[0]['login'])*1; - $racine.= $last_i+1; - } - $result = new NextLoginResult(); - $result->racine = $racine; - $result->idClient = $idClient; - $result->droitsClients = $droitsClients; - - } else { - - $error->errnum = 0; - $error->errmsg = 'Acces non authorisé!'; - } - $output = new NextLoginReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Récupère la liste des clients ou les informations d'un client - * @param integer|boolean $idClient - * @param ClientFiltre $filtre - * @return ListeClientsReturn - */ - public function getListeClients($idClient=false, $filtre=null) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - if (empty($idClient)) $idClient = false; - - $isAuthorized = false; - - if ($this->tabInfoUser['profil']=='Administrateur' && - ($idClient=='false' || $idClient==$this->tabInfoUser['idClient'])){ - $idClient = $this->tabInfoUser['idClient']; - $isAuthorized = true; - } - - if ($this->tabInfoUser['profil']<>'SuperAdministrateur'){ - $error->errnum = 1; - $error->errmsg = 'Profil non administrateur'; - } else { - $isAuthorized = true; - } - - if ($isAuthorized) - { - $strClient = ''; - - if (is_numeric($idClient)) $strClient.=" AND id='$idClient' "; - - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients', - 'id, nom, actif, test, racineLogin, siren, nic, tva, editerFacture, fact_detail, fac_dest, fac_adr1, fac_adr2, fac_adr3, fac_email, fac_tel, fact_rib, liv_dest, liv_adr1, liv_adr2, liv_adr3, liv_email, liv_tel, droits, filtres_ip, dateInsert, dateUpdate, respComSD, typeContrat, dateSignature, typeAcces, typeScore, timeout, accesPieces, accesKbis, accesInvestigations, accesInternationnal, accesEnquetes, miseSousSurveillance, forfaitExtranetPeriode, forfaitExtranetMontant, reconductionAuto, remarque, forfaitPiecesNb, forfaitPiecesMt, forfaitPiecesDep, forfaitInvestigNb, forfaitInvestigMt, forfaitInvestigDep, tarifIndiscore', - "1 $strClient", - false, - MYSQL_ASSOC); - $tabRet = array(); - foreach ($rep as $uti) - { - $client = new Client(); - $client->idClient = $uti['id']; - $client->nom = $uti['nom']; - $client->actif = $uti['actif']; - $client->test = $uti['test']; - $client->racineLogin = $uti['racineLogin']; - $client->siren = $uti['siren']; - $client->nic = $uti['nic']; - $client->tva = $uti['tva']; - $client->editerFacture = $uti['editerFacture']; - $client->fact_detail = $uti['fact_detail']; - $client->fac_dest = $uti['fac_dest']; - $client->fac_adr1 = $uti['fac_adr1']; - $client->fac_adr2 = $uti['fac_adr2']; - $client->fac_adr3 = $uti['fac_adr3']; - $client->fac_email = $uti['fac_email']; - $client->fac_tel = $uti['fac_tel']; - $client->fact_rib = $uti['fact_rib']; - $client->liv_dest = $uti['liv_dest']; - $client->liv_adr1 = $uti['liv_adr1']; - $client->liv_adr2 = $uti['liv_adr2']; - $client->liv_adr3 = $uti['liv_adr3']; - $client->liv_email = $uti['liv_email']; - $client->liv_tel = $uti['liv_tel']; - $client->droits = strtolower($uti['droits']); - $client->timeout = $uti['timeout']; - $client->filtres_ip = $uti['filtres_ip']; - $client->dateInsert = $uti['dateInsert']; - $client->dateUpdate = $uti['dateUpdate']; - $client->respComSD = $uti['respComSD']; - $client->typeContrat = $uti['typeContrat']; - $client->dateSignature = $uti['dateSignature']; - $client->typeAcces = $uti['typeAcces']; - $client->typeScore = $uti['typeScore']; - $client->accesPieces = $uti['accesPieces']; - $client->accesKbis = $uti['accesKbis']; - $client->accesInvestigations = $uti['accesInvestigations']; - $client->accesInternationnal = $uti['accesInternationnal']; - $client->accesEnquetes = $uti['accesEnquetes']; - $client->miseSousSurveillance = $uti['miseSousSurveillance']; - $client->forfaitExtranetPeriode = $uti['forfaitExtranetPeriode']; - $client->forfaitExtranetMontant = $uti['forfaitExtranetMontant']; - $client->reconductionAuto = $uti['reconductionAuto']; - $client->remarque = $uti['remarque']; - $client->forfaitPiecesNb = $uti['forfaitPiecesNb']; - $client->forfaitPiecesMt = $uti['forfaitPiecesMt']; - $client->forfaitPiecesDep = $uti['forfaitPiecesDep']; - $client->forfaitInvestigNb = $uti['forfaitInvestigNb']; - $client->forfaitInvestigMt = $uti['forfaitInvestigMt']; - $client->forfaitInvestigDep = $uti['forfaitInvestigDep']; - $client->tarifIndiscore = $uti['tarifIndiscore']; - - $tabRet[] = $client; - } - } - $output = new ListeClientsReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des droits - * @return ListeDroitsReturn[] - */ - public function getListeDroits() - { - $tabRet = array(); - foreach($this->listeDroits as $code => $desc){ - $droit = new ListeDroitsReturn(); - $droit->code = $code; - $droit->desc = $desc; - $tabRet[] = $droit; - } - return $tabRet; - } - - /** - * Retourne la liste des préférences - * @return ListePrefsReturn[] - */ - public function getListePrefs() - { - $tabRet = array(); - foreach($this->listePrefs as $code => $desc){ - $pref = new ListePrefsReturn(); - $pref->code = $code; - $pref->desc = $desc; - $tabRet[] = $pref; - } - return $tabRet; - } - - /** - * Récupère les informations du profil connecté - * @param string $login - * @param int $idClient - * @return ListeUtilisateursReturn - */ - public function getListeUtilisateurs($login, $idClient=null) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - $tabRet = array(); - - if ($this->tabInfoUser['profil']<>'Administrateur' && - $this->tabInfoUser['profil']<>'SuperAdministrateur') - { - $error->errnum = 1; - $error->errmsg = 'Profil non administrateur'; - } else { - $iDbCrm = new WDB('sdv1'); - if (!isset($idClient)){ - $rep = $iDbCrm->select('utilisateurs', 'idClient', "login='$login'"); - $idClient = $rep[0][0]; - } - if ($idClient==-1){ - $error->errnum = 1; - $error->errmsg = 'idClient=0'; - } else { - $rep = $iDbCrm->select('utilisateurs', 'id, idClient, login, email, actif, nom, prenom, referenceParDefaut', "idClient='$idClient' AND deleted=0 ORDER BY login ASC", false, MYSQL_ASSOC); - foreach ($rep as $uti){ - $utilisateur = new Utilisateur(); - $utilisateur->idUti = $uti['id']; - $utilisateur->idClient= $uti['idClient']; - $utilisateur->login = $uti['login']; - $utilisateur->email = $uti['email']; - $utilisateur->actif= $uti['actif']; - $utilisateur->nom = $uti['nom']; - $utilisateur->prenom = $uti['prenom']; - $utilisateur->reference = $uti['referenceParDefaut']; - $tabRet[]= $utilisateur; - } - } - } - $output = new ListeUtilisateursReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * getLogsClients - * @param string $mois (Format : AAAA-MM ou AAAA/MM) - * @param int $detail - * @param int $idClient - * @param string $login - * @param int $all - * @return LogsClientsReturn - */ - public function getLogsClients($mois, $detail=0, $idClient=0, $login='', $all=0) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - if (empty($detail)) $detail = 0; - if (empty($idClient)) $idClient = 0; - if (empty($login)) $login = ''; - if (empty($all)) $all = 0; - - $strDetail = $strClient = $strLogin=''; - - // Vue détaillée ou uniquement les infos payantes - if ($detail==0) { - $detail='Non'; - //$strDetail=" AND (page LIKE 'greffe_%' OR page LIKE 'inpi_%' OR page='kbis' OR page LIKE 'indiscore%' OR page='privileges' OR page='commandeAsso') AND (params<>'' OR page LIKE 'indiscore%' AND tarifIndiscore<>0) AND (params NOT LIKE '%erreur%' OR params LIKE '%erreur 17%') "; - $strDetail = ' AND ( '; - $pages = array('greffe_actes', 'greffe_bilans', 'kbis', 'indiscore', 'indiscore2', 'indiscore3', 'rapport2', 'rapport3', 'privileges', 'privcumul'); - $totalPages = count($pages); - $i=0; - foreach( $pages as $page ) { - switch($page) - { - case 'greffe_actes': - case 'greffe_bilans': - $strDetail.= "(l.page = '".$page."' AND l.params<>'' AND (l.params NOT LIKE '%erreur%' OR l.params LIKE '%erreur 17%'))"; - break; - case 'kbis': - $strDetail.= "(l.page = '".$page."' AND l.params<>'' AND l.params<>'1/1/0//' AND l.params<>'0/1/0//')"; - break; - default: - $strDetail.= "(l.page = '".$page."')"; - break; - } - $i++; - if ( $i<$totalPages) { - $strDetail.= ' OR '; - } - } - $strDetail.= ' ) '; - } elseif($detail==1) { - $detail='Oui'; - } - - // On veut uniquement le client précis - if ($all && $this->tabInfoUser['profil']=='SuperAdministrateur') { - $all = 'Oui'; - } else { - $all = 'Non'; - } - // Pas d'idClient mentionné ou tentative sur autre client et non SAD - if ($idClient==0 || ($idClient!=$this->tabInfoUser['idClient'] && $this->tabInfoUser['profil']!='SuperAdministrateur') ){ - $idClient = $this->tabInfoUser['idClient']; - } - $strClient = " AND u.idClient=$idClient "; - - // On veut uniquement le login précis - if ($login!='') { - $strLogin=" AND l.login='$login' "; - } else { - $login='Non'; - } - - // Dates de début et de fin - $mois = strtr($mois, array('-'=>'','/'=>'')); - $annee = substr($mois,0,4); - $mois = substr($mois,4,2); - $dateDeb=date('Y-m-d', mktime(0,0,0,$mois,1,$annee)); - $dateFin=date('Y-m-t', mktime(0,0,0,$mois,15,$annee)); - - $c = Zend_Registry::get('config'); - $fichierCsv=$c->profil->path->files."/logs-$annee-$mois-$detail-$idClient-$login-$all.csv"; - - if (file_exists($fichierCsv) && - date('Ymd', filemtime($fichierCsv))==date('Ymd') && - filesize($fichierCsv)>60 ) { - $size=filesize($fichierCsv); - $erreur=false; - $tabNom=array(); - $cache=1; - } else { - @unlink($fichierCsv); - $sql="SELECT LOWER(l.login) as loginUti, page, l.siren, l.nic, l.params, l.dateHeure, u.idClient, c.nom, u.referenceParDefaut AS refUti - FROM `logs` l, utilisateurs u, clients c - WHERE 1 $strDetail $strClient $strLogin AND dateHeure BETWEEN '$dateDeb 00:00:00' AND '$dateFin 23:59:59' AND l.login=u.login AND u.idClient=c.id - GROUP BY l.login, l.siren, l.page, date(dateHeure), l.params - ORDER BY l.login ASC, l.dateHeure ASC"; - $fp = fopen($c->profil->path->cache."/logs-$annee-$mois-$detail-$idClient-$login-$all.sql", 'w'); - fwrite($fp, $sql.EOL); - fclose($fp); - exec("php ".$c->profil->path->batch."/sql2csv.php sdv1 ".$c->profil->path->cache."/logs-$annee-$mois-$detail-$idClient-$login-$all.sql $fichierCsv > /dev/null &"); - $size = $cache = 0; - } - - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $result = new LogsClients(); - $result->Url = $hostname."/fichier/logs/logs-$annee-$mois-$detail-$idClient-$login-$all.csv"; - $result->Taille = $size; - $result->Cache = $cache; - - $output = new LogsClientsReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Création/Modification d'un client - * @param string $infos - * @return ClientReturn - */ - public function setClient($infos) - { - $this->authenticate(); - $result = false; - //Pas SuperAdministrateur - if ($this->tabInfoUser['profil']!='SuperAdministrateur') { - throw new SoapFault(1, 'Profil insuffisant pour cette méthode'); - } else { - $infos = json_decode($infos); - - /** - * - Protéger les chaines de caractères - * - Gérer les champs select - */ - - $idClient = null; - $tabInfos = array(); - foreach($infos as $nom => $value) - { - switch($nom) - { - case 'idClient': - $idClient = $value; - break; - case 'nom': - $tabInfos['nom'] = $value; - break; - case 'actif': - $tabInfos['actif'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'test': - $tabInfos['test'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'racineLogin': - $tabInfos['racineLogin'] = $infos->racineLogin; - break; - case 'siren': - $tabInfos['siren'] = (int) $value; - break; - case 'nic': - $tabInfos['nic'] = (int) $value; - break; - case 'tva': - $tabInfos['tva'] = $value; - break; - case 'idClientFacture': - $tabInfos['idClientFacture'] = $value; - break; - case 'editerFacture': - $tabInfos['editerFacture'] = ($value=='Non') ? 'Non' : 'Oui'; - break; - case 'fact_detail': - $tabInfos['fact_detail'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'fac_dest': - $tabInfos['fac_dest'] = $value; - break; - case 'fac_adr1': - $tabInfos['fac_adr1'] = $value; - break; - case 'fac_adr2': - $tabInfos['fac_adr2'] = $value; - break; - case 'fac_adr3': - $tabInfos['fac_adr3'] = $value; - break; - case 'fac_email': - $tabInfos['fac_email'] = $value; - break; - case 'fac_tel': - $tabInfos['fac_tel'] = $value; - break; - case 'fact_rib': - if (in_array($value, array('BPOSTALE','CCOOP', 'CDNORD'))){ - $tabInfos['fact_rib'] = $value; - } - break; - case 'liv_dest': - $tabInfos['liv_dest'] = $value; - break; - case 'liv_adr1': - $tabInfos['liv_adr1'] = $value; - break; - case 'liv_adr2': - $tabInfos['liv_adr2'] = $value; - break; - case 'liv_adr3': - $tabInfos['liv_adr3'] = $value; - break; - case 'liv_email': - $tabInfos['liv_email'] = $value; - break; - case 'liv_tel': - $tabInfos['liv_tel'] = $value; - break; - case 'droits': - if (count($value)>0){ - $tabInfos['droits'] = strtolower(implode(' ',$value)); - } else { - $tabInfos['droits'] = array(); - } - break; - case 'filtres_ip': - $tabInfos['filtres_ip'] = $value; - break; - case 'typeContrat': - if (in_array($value, array('Contrat','Marché'))){ - $tabInfos['typeContrat'] = $value; - } - break; - case 'typeAcces': - if (in_array($value, array('userPassword','userPasswordIP', 'IP'))){ - $tabInfos['typeAcces'] = $value; - } - break; - case 'typeScore': - if (in_array($value, array('20','100'))){ - $tabInfos['typeScore'] = $value; - } - break; - case 'timeout': - if (!empty($value)){ - $tabInfos['timeout'] = $value; - } - break; - case 'accesPieces': - $tabInfos['accesPieces'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'accesKbis': - $tabInfos['accesKbis'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'accesInvestigations': - $tabInfos['value'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'accesInternationnal': - $tabInfos['accesInternationnal'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'accesEnquetes': - $tabInfos['accesEnquetes'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'miseSousSurveillance': - $tabInfos['miseSousSurveillance'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'forfaitExtranetPeriode': - if (in_array($value, array('Mensuel','Trimestriel','Semestriel', 'Annuel'))){ - $tabInfos['forfaitExtranetPeriode'] = $value; - } - break; - case 'forfaitExtranetMontant': - $tabInfos['forfaitExtranetMontant'] = $value; - break; - case 'reconductionAuto': - if ($value=='Non') { - $tabInfos['reconductionAuto'] = 'Non'; - } - break; - case 'remarque': - $tabInfos['remarque'] = $value; - break; - case 'forfaitPiecesNb': - $tabInfos['forfaitPiecesNb'] = $value; - break; - case 'forfaitPiecesMt': - $tabInfos['forfaitPiecesMt'] = $value; - break; - case 'forfaitPiecesDep': - $tabInfos['forfaitPiecesDep'] = $value; - break; - case 'forfaitInvestigNb': - $tabInfos['forfaitInvestigNb'] = $value; - break; - case 'forfaitInvestigMt': - $tabInfos['forfaitInvestigMt'] = $value; - break; - case 'forfaitInvestigDep': - $tabInfos['forfaitInvestigDep'] = $value; - break; - case 'tarifIndiscore': - $tabInfos['tarifIndiscore'] = $value; - break; - case 'InterSudLogin': - $tabInfos['InterSudLogin'] = $value; - break; - case 'InterSudPass': - $tabInfos['InterSudPass'] = $value; - break; - } - - } - - $iDbCrm = new WDB('sdv1'); - if (empty($idClient)){ - //Ajout - $tabInfos['dateInsert'] = date('Y-m-d H:i:s'); - $result = $iDbCrm->insert('clients', $tabInfos, true); - } else { - //Droits client actuel avant modification - if (isset($tabInfos['droits'])){ - $rep = $iDbCrm->select('clients', 'droits', "id='$idClient'", false, MYSQL_ASSOC); - $droitsPre = explode(' ', $rep[0]['droits']); - $droitsSui = explode(' ', $tabInfos['droits']); - //Détection suppression d'un droit client - if (count($droitsSui)0 ){ - foreach($droitsDiff as $droit){ - $query = "UPDATE utilisateurs set droits=TRIM(REPLACE(droits, '$droit', '')) WHERE idClient='$idClient'"; - $iDbCrm->query($query, true); - } - } - } - } - //Modification - $tabInfos['dateUpdate'] = date('Y-m-d H:i:s'); - if ($iDbCrm->update('clients', $tabInfos, "id='$idClient'", true)){ - $result = true; - } - } - } - $output = new ClientReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Création d'un modele pour le préremplisage des données utilisateurs - * @param integer $idClient - * @param string $nom - * @param ModeleUtilisateur $infos - * @return ModeleUtilisateurReturn - */ - protected function setUserModel($idClient, $nom, $infos) - { - $this->authenticate(); - } - - /** - * Get all user params (only for admin) - * @param string $login - * @return string - */ - public function getUser($login) - { - $this->authenticate(); - - if ($this->tabInfoUser['profil']!='SuperAdministrateur') { - $this->sendError('0901'); - } - try { - $userM = new Application_Model_Utilisateurs(); - $sql = $userM->select()->where('login = ?', $login); - $rowset = $userM->fetchRow($sql); - if ($rowset) { - $user = $rowset->toArray(); - return json_encode($user); - } else { - throw new SoapFault('1','Erreur'); - } - } catch (Zend_Db_Exception $e) { - throw new SoapFault('Database',$e->getMessage()); - } - } - - - /** - * Création/Modification d'utilisateurs - * @param integer $idClient - * @param SetUtilisateurs[] $users - * @return UtilisateursReturn - */ - protected function setUsers($idClient, $users) - { - $this->authenticate(); - $error = new ErrorType(); - $result = false; - //idClient existe - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients', 'id, nom, actif, test, racineLogin, siren, nic, droits, filtres_ip, typeAcces, typeScore, accesPieces, accesKbis, accesInvestigations, accesInternationnal, accesEnquetes, miseSousSurveillance', "1 AND id='$idClient'", false, MYSQL_ASSOC); - if (count($rep)>0){ - $client = $rep[0]; - $idClient = $client['id']; - if (count($users)>0){ - foreach($users as $user){ - $tabInfos = array(); - $tabInfos['idClient'] = $idClient; - $tabInfos['login'] = $user->login; - $tabInfos['email'] = ''; - $tabInfos['password'] = $user->password; - $tabInfos['actif'] = ''; - //$tabInfos['deleted'] = ''; - - if (in_array($user->typeCompte, array('TEST', 'PROD'))){ - $tabInfos['typeCompte'] = $user->typeCompte; - } else { - $tabInfos['typeCompte'] = 'PROD'; - } - - //$tabInfos['filtre_ip'] = ''; - - //SetInfosLogin - $tabInfos['civilite'] = ''; - $tabInfos['nom'] = ''; - $tabInfos['prenom'] = ''; - - //Identique au client - $tabInfos['raisonSociale'] = ''; - $tabInfos['siret'] = ''; - $tabInfos['adrNum'] = ''; - $tabInfos['adrInRep'] = ''; - $tabInfos['adrTypeVoie'] = ''; - $tabInfos['adrLibVoie'] = ''; - $tabInfos['adrCp'] = ''; - $tabInfos['adrVille'] = ''; - $tabInfos['adrComp'] = ''; - $tabInfos['tel'] = ''; - $tabInfos['fax'] = ''; - $tabInfos['mobile'] = ''; - - $tabInfos['pref'] = ''; - - if (in_array($user->typeCompte, array('Administrateur', 'Utilisateur'))){ - $tabInfos['profil'] = $user->profil; - } else { - $tabInfos['profil'] = 'Utilisateur'; - } - /* - $tabInfos['dateInscription'] = ''; - $tabInfos['dateValidation'] = ''; - */ - - if (empty($user->droits)){ - $tabInfos['droits'] = $client->droits; - } else { - $tabInfos['droits'] = $user->droits; - } - $tabInfos['referenceParDefaut'] = ''; - $tabInfos['nbReponses'] = ''; - $tabInfos['listeEven'] = ''; - $tabInfos['maxFicheId'] = $user->maxFicheId; - - //$tabInfos['dateInsert'] = ''; - - if (empty($user->id)){ - $iDbCrm->insert('utilisateurs', $tabInfos); - } else { - $iDbCrm->update('utilisateurs', $tabInfos, "id='$user->id'"); - } - - } - } else { - $error->errnum = 1; - $error->errmsg = 'Aucun utilisateur'; - } - } else { - $error->errnum = 1; - $error->errmsg = 'Identifiant client inconnu!'; - } - $output = new UtilisateursReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Affecter aux utilisateurs les paramètres du client - * @param integer $idClient - * @param string $element - * @param string[] $utilisateurs - * @return boolean - */ - public function setClientsParamsOnUtilisateurs( $idClient , $element = null, $utilisateurs = null ) - { - $this->authenticate(); - - if ($this->tabInfoUser['profil']!='SuperAdministrateur') { - $this->sendError('0901'); - } - if (empty($element)){ - throw new SoapFault('Error', 'Erreur dans les paramètres'); - } - switch(strtolower($element)){ - //Mettre à jour les ips des utilisateurs en fonction de celles du client - case 'ip': - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients', 'filtre_ip', "id='$idClient'", false, MYSQL_ASSOC); - if (count($rep)==0){ - throw new SoapFault('Error', 'Client inexistant'); - } - $data = array( - 'filtre_ip' => $rep[0]['filtre_ip'], - 'dateUpdate' => date('Y-m-d H:i:s'), - ); - $where = ' WHERE idClient='.$idClient; - if (!empty($utilisateurs) && is_array($utilisateurs->item)){ - $where.= ' AND login IN ('.join(',',$utilisateurs->item).')'; - } - if($iDbCrm->update('utilisateurs', $data, $where)){ - return true; - } - return false; - break; - } - } - - /** - * Enregistre l'acceptation des CGU pour une application - * @param string $application Nom de l'outil utilisé - * @return boolean - */ - public function setCGU($application = null) - { - $this->authenticate(); - $idUser = $this->tabInfoUser['id']; - - try { - $userM = new Application_Model_Utilisateurs(); - $data = array('acceptationCGU' => date('YmdHis')); - $result = $userM->update($data, 'id='.$idUser); - } catch (Zend_Db_Exception $e) { - throw new SoapFault('Erreur', $e->getMessage()); - } catch (Zend_Exception $e) { - throw new SoapFault('Erreur', $e->getMessage()); - } - if ( 1 == $result ) { - return true; - } - return false; - } - - /** - * Definir la méthode de tarification - * @param string $log Nom de l'élément à facturer - * @param ClientTarif $tarif Informations de facturation - * @return boolean - */ - public function setClientTarif($log, $tarif) - { - /** - * Une tarification est toujours affecté à un élément $log. - * Celle ci est définie sur un compte client (tous les utilisateurs) ou un service, - * voir un seul utilisateur. - * Pour un type de facturation - * - Unitaire : Chaque élement est à facturer - * - Forfait limité : Si tarif unitaire>0 alors on applique le prix unitaire pour chaque - * dépassement, sinon on coupe - * - Forfait illimité : - */ - - $this->authenticate(); - - if ($this->tabInfoUser['profil']!='SuperAdministrateur') { - $this->sendError('0902'); - } - - $tarifM = new Application_Model_ClientsTarif(); - - if (!in_array($tarif->log, array_keys($this->listeDroits))) { - throw new SoapFault('ClientTarif', 'log inexistant'); - } - - if (!in_array($tarif->type, array('Unitaire','ForfaitLimit','ForfaitIllimit'))) { - throw new SoapFault('ClientTarif', 'Erreur type'); - } - - if (!in_array($tarif->terme, array('fin','debut'))) { - throw new SoapFault('ClientTarif', 'Erreur terme'); - } - - if (!in_array($tarif->doublon, array('jour','mois', 'period'))) { - throw new SoapFault('ClientTarif', 'Erreur doublon'); - } - - $time = mktime(0,0,0,substr($tarif->date,4,2), substr($tarif->date,6,2), substr($tarif->date,0,4)); - - $data = array( - 'idClient' => $tarif->idClient, - 'service' => $tarif->service, - 'login' => $tarif->login, - 'log' => $tarif->log, - 'type' => $tarif->type, - 'priceForfait' => $tarif->priceForfait, - 'priceUnit' => $tarif->priceUnit, - 'limit' => $tarif->limit, - 'dateDebut' => date('YmdHis', $time), - 'duree' => $tarif->duree, - 'terme' => $tarif->terme, - 'doublon' => $tarif->doublon, - ); - - if ($tarifM->insert($data)) { - return true; - } - return false; - } - - /** - * Retourne les tarifs - * @param integer $id IdClient - * @return ClientTarifReturn[] - */ - protected function getClientTarif($id) - { - $this->authenticate(); - - if ($this->tabInfoUser['profil']!='SuperAdministrateur') { - $this->sendError('0902'); - } - - $tarifM = new Application_Model_ClientsTarif(); - - //Au client - $sql = $tarifM->select() - ->where('idClient=?', $id) - ->where("service=''") - ->where("login=''") - ->order('dateDebut DESC')->limit(1); - - //Au service - - - //Au login - - - } - -} \ No newline at end of file diff --git a/library/WsScore/Gestion/v0.2/Types.php b/library/WsScore/Gestion/v0.2/Types.php deleted file mode 100644 index 358a2612..00000000 --- a/library/WsScore/Gestion/v0.2/Types.php +++ /dev/null @@ -1,515 +0,0 @@ - 'ErrorType', - 'InfosLoginReturn' => 'InfosLoginReturn', - 'InfosLogin' => 'InfosLogin', - 'NextLoginReturn' => 'NextLoginReturn', - 'NextLoginResult' => 'NextLoginResult', - 'ClientFiltre' => 'ClientFiltre', - 'ListeClientsReturn' => 'ListeClientsReturn', - 'Client' => 'Client', - 'ListeDroitsReturn' => 'ListeDroitsReturn', - 'ListCategoryReturn' => 'ListCategoryReturn', - 'ListePrefsReturn' => 'ListePrefsReturn', - 'ListeLogsReturn' => 'ListeLogsReturn', - 'ListeUtilisateursReturn' => 'ListeUtilisateursReturn', - 'Utilisateur' => 'Utilisateur', - 'LogsClientsReturn' => 'LogsClientsReturn', - 'LogsClients' => 'LogsClients', - 'ClientReturn' => 'ClientReturn', - 'SetUtilisateurs' => 'SetUtilisateurs', - 'UtilisateursReturn' => 'UtilisateursReturn', - 'ModeleUtilisateurReturn' => 'ModeleUtilisateurReturn', - 'ModeleUtilisateur' => 'ModeleUtilisateur', - 'ClientTarif' => 'ClientTarif', - 'ClientPrestation' => 'ClientPrestation', - 'Service' => 'Service', -); \ No newline at end of file diff --git a/library/WsScore/Gestion/v0.3/Gestion.php b/library/WsScore/Gestion/v0.3/Gestion.php deleted file mode 100644 index 3ca6e779..00000000 --- a/library/WsScore/Gestion/v0.3/Gestion.php +++ /dev/null @@ -1,1974 +0,0 @@ -authenticate(); - - //Initialisation - if (empty($ipUtilisateur)) $ipUtilisateur = $_SERVER['REMOTE_ADDR']; - $error = new ErrorType(); - $result = new InfosLogin(); - - //Filtre IP - $filtre = trim($this->tabInfoUser['filtre_ip']); - if ( !empty($filtre) && !checkPlagesIp($filtre, $ipUtilisateur) ){ - debugLog('I',"getInfosLogin Adresse IP $ipUtilisateur non declaree pour le compte $login",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $this->sendError('0904'); - } - - debugLog('I',"getInfosLogin pour $login (IP=$ipUtilisateur)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - //L'utilisateur qui demande les informations est différent - if ( $this->tabInfoUser['login']<>$login - && in_array($this->tabInfoUser['profil'], array('Administrateur', 'SuperAdministrateur') ) - ) { - /** Un administrateur veut il des infos sur un login ? **/ - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select( - 'utilisateurs u, clients c', - 'u.login, u.id, u.email, u.password, u.idClient, u.typeCompte, u.actif, u.filtre_ip, u.civilite, u.nom, u.prenom, u.tel, u.fax, u.mobile, u.profil, u.raisonSociale, u.siret, u.adrNum, u.adrIndRep, u.adrTypeVoie, u.adrLibVoie, u.adrCp, u.adrVille, u.adrComp, u.pref, u.profil, u.dateInscription, u.dateValidation, u.nombreConnexions, u.dateDerniereConnexion, u.droits, u.referenceParDefaut, u.nbReponses, u.lang, u.formatMail, u.dateDebutCompte, u.dateFinCompte, u.maxFicheId, c.droits AS droitsClients, c.test AS clientTest, c.timeout, c.typeScore AS typeScore', - "u.login='$login' AND u.idClient=c.id AND u.deleted=0", - false, MYSQL_ASSOC - ); - $tabRep = $rep[0]; - if (count($rep)>0) - { - $timeOutSec = $tabRep['timeout']; - if ($timeOutSec==0) $timeOutSec = 1800; - $result->login = $login; - $result->id = $tabRep['id']; - $result->email = $tabRep['email']; - $result->typeCompte = $tabRep['typeCompte']; - $result->idClient = $tabRep['idClient']; - $result->filtre_ip = $tabRep['filtre_ip']; - $result->civilite = $tabRep['civilite']; - $result->nom = $tabRep['nom']; - $result->prenom = $tabRep['prenom']; - $result->raisonSociale = $tabRep['raisonSociale']; - $result->siret = $tabRep['siret']; - $result->adrNum = $tabRep['adrNum']; - $result->adrIndRep = $tabRep['adrIndRep']; - $result->adrTypeVoie = $tabRep['adrTypeVoie']; - $result->adrLibVoie = $tabRep['adrLibVoie']; - $result->adrCp = $tabRep['adrCp']; - $result->adrVille = $tabRep['adrVille']; - $result->adrComp = $tabRep['adrComp']; - $result->tel = $tabRep['tel']; - $result->fax = $tabRep['fax']; - $result->mobile = $tabRep['mobile']; - $result->pref = $tabRep['pref']; - $result->profil = $tabRep['profil']; - $result->dateInscription = $tabRep['dateInscription']; - $result->dateValidation = $tabRep['dateValidation']; - $result->nombreConnexions = $tabRep['nombreConnexions']; - $result->dateDerniereConnexion = $tabRep['dateDerniereConnexion']; - $result->droits = $tabRep['droits']; - $result->droitsClients = $tabRep['droitsClients']; - $result->timeout = $timeOutSec; - $result->clientTest = $tabRep['clientTest']; - $result->typeScore = $tabRep['typeScore']; - $result->nbReponses = $tabRep['nbReponses']; - $result->lang = $tabRep['lang']; - $result->formatMail = $tabRep['formatMail']; - $result->reference = $tabRep['referenceParDefaut']; - $result->dateDebutCompte = $tabRep['dateDebutCompte']; - $result->dateFinCompte = $tabRep['dateFinCompte']; - $result->maxFicheId = $tabRep['maxFicheId']; - } else { - /** On log l'erreur d'authentification **/ - $tabInsert=array( - 'login' => $login, - 'page' => 'infosLogin', - 'params' => 'Erreur Login/Password', - 'ipClient' => $ipUtilisateur); - $iDbCrm->insert('logs', $tabInsert); - } - } - //Authentification de l'utilisateur - else - { - $ref='OK'; - //Identification utilisateur - $connected = true; - - $result->connected = $connected; - $result->login = $this->tabInfoUser['login']; - $result->id = $this->tabInfoUser['id']; - $result->idClient = $this->tabInfoUser['idClient']; - $result->email = $this->tabInfoUser['email']; - $result->typeCompte = $this->tabInfoUser['typeCompte']; - $result->filtre_ip = $this->tabInfoUser['filtre_ip']; - $result->ipPasserelle = $this->tabInfoUser['ipConnexion']; - $result->ipConnexion = $ipUtilisateur; - $result->civilite = $this->tabInfoUser['civilite']; - $result->nom = $this->tabInfoUser['nom']; - $result->prenom = $this->tabInfoUser['prenom']; - $result->raisonSociale = $this->tabInfoUser['raisonSociale']; - $result->siret = $this->tabInfoUser['siret']; - $result->adrNum = $this->tabInfoUser['adrNum']; - $result->adrIndRep = $this->tabInfoUser['adrIndRep']; - $result->adrTypeVoie = $this->tabInfoUser['adrTypeVoie']; - $result->adrLibVoie = $this->tabInfoUser['adrLibVoie']; - $result->adrCp = $this->tabInfoUser['adrCp']; - $result->adrVille = $this->tabInfoUser['adrVille']; - $result->adrComp = $this->tabInfoUser['adrComp']; - $result->tel = $this->tabInfoUser['tel']; - $result->fax = $this->tabInfoUser['fax']; - $result->mobile = $this->tabInfoUser['mobile']; - $result->pref = $this->tabInfoUser['pref']; - $result->profil = $this->tabInfoUser['profil']; - $result->dateInscription = $this->tabInfoUser['dateInscription']; - $result->dateValidation = $this->tabInfoUser['dateValidation']; - $result->nombreConnexions = $this->tabInfoUser['nombreConnexions']; - $result->dateDerniereConnexion = $this->tabInfoUser['dateDerniereConnexion']; - $result->droits = $this->tabInfoUser['droits']; - $result->droitsClients = $this->tabInfoUser['droitsClients']; - $result->timeout = $this->tabInfoUser['timeout']; - $result->clientTest = $this->tabInfoUser['clientTest']; - $result->typeScore = $this->tabInfoUser['typeScore']; - $result->nbReponses = $this->tabInfoUser['nbReponses']; - $result->lang = $this->tabInfoUser['lang']; - $result->formatMail = $this->tabInfoUser['formatMail']; - $result->reference = $this->tabInfoUser['referenceParDefaut']; - $result->dateDebutCompte = $this->tabInfoUser['dateDebutCompte']; - $result->dateFinCompte = $this->tabInfoUser['dateFinCompte']; - $result->maxFicheId = $this->tabInfoUser['maxFicheId']; - $result->typeScore = $this->tabInfoUser['typeScore']; - $result->acceptationCGU = $this->tabInfoUser['acceptationCGU']; - - // On log l'accès à l'authentification - if ( $this->tabInfoUser['clientTest']=='Oui' || $this->tabInfoUser['typeCompte']=='TEST' ) { - $test = 1; - } else { - $test = 0; - } - $tabInsert = array( - 'login' => $this->tabInfoUser['login'], - 'idClient' => $this->tabInfoUser['idClient'], - 'page' => 'infosLogin', - 'params' => $ref, - 'test' => $test, - 'ipClient' => $ipUtilisateur - ); - $iDbCrm = new WDB('sdv1'); - $iDbCrm->insert('logs', $tabInsert); - - //Date de dernière connexion - $iDbCrm->update('utilisateurs', - array('dateDerniereConnexion'=> date('Y-m-d H:i:s')), - "idClient=".$this->tabInfoUser['idClient']." AND login='".$this->tabInfoUser['login']."'" - ); - } - - //Retour - $output = new InfosLoginReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Recherche de login - * @param string $idClient - * @param string $query - * @return string - */ - public function searchLogin($idClient, $query) - { - $this->authenticate(); - - $userM = new Application_Model_Sdv1Utilisateurs(); - $sql = $userM->select() - ->from($userM, array('id','login','actif','deleted')) - ->where('idClient=?', $idClient) - ->where('login LIKE "'.$query.'%"') - ->limit(20); - $result = $userM->fetchAll($sql); - - if ($result->count()>0) { - return json_encode($result->toArray()); - } - - return false; - } - - /** - * Mise à jour des informations du profil connecté - * @param string $login - * @param string $action (delete|enable|disable|changepwd|new|update) - * @param string $infos - * @return boolean - */ - public function setInfosLogin($login, $action, $infos = null) - { - $this->authenticate(); - - //Initialisation - $result = false; - $infos = json_decode($infos, true); - - //Get user infos - $userM = new Application_Model_Sdv1Utilisateurs(); - $row = $userM->select()->where('login=?',$login); - - //isExist - if ( null === $row ) { - throw new SoapFault('ERR', "User doesn't exist"); - } - - //isEditable - if ( $row->accesWS == 1 - && !in_array($this->tabInfoUser['profil'], array('Administrateur', 'SuperAdministrateur')) ) { - throw new SoapFault('MSG', "User not editable"); - } - - //Make action - switch($action) { - - case 'delete': - - if ($this->tabInfoUser['profil']=='Administrateur' - || $this->tabInfoUser['profil']=='SuperAdministrateur') { - $tabUpdate = array( 'deleted' => 1, 'dateUpdate' => date('Y-m-d H:i:s') ); - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->update('utilisateurs', $tabUpdate, "login='$login'")){ - $result = true; - } - } - break; - - case 'enable': - case 'disable': - if ($this->tabInfoUser['profil']=='Administrateur' - || $this->tabInfoUser['profil']=='SuperAdministrateur') { - $actif = 1; - if ($action=='disable') { - $actif = 0; - } - $tabUpdate = array( 'actif' => $actif, 'dateUpdate' => date('YmdHis') ); - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->update('utilisateurs', $tabUpdate, "login='$login'")){ - $result = true; - } - } - - break; - - case 'changepwd': - - $tabUpdate = array( - 'password' => stripslashes($infos['password']), - 'dateUpdate' => date('Y-m-d H:i:s') - ); - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->update('utilisateurs', $tabUpdate, "login='$login'", true)){ - $result = true; - } - - break; - - case 'new': - - if ( $this->tabInfoUser['profil']=='Administrateur' - || $this->tabInfoUser['profil']=='SuperAdministrateur') { - - $iDbCrm = new WDB('sdv1'); - $existLogin = $iDbCrm->select('utilisateurs', 'deleted', 'login="'.$login.'"', false, MYSQL_ASSOC); - if (count($existLogin)>0) { - $message = "Utilisateur existant dans le référentiel"; - if ($existLogin[0]['deleted']==1) { - $message.=" (supprimé)"; - } - throw new SoapFault('ERR', $message); - } - - $tabUpdate = array(); - - $idClient = $this->tabInfoUser['idClient']; - if ( $this->tabInfoUser['profil']=='SuperAdministrateur' && $infos['idClient']!=''){ - $idClient = $infos['idClient']; - } - $tabUpdate['idClient'] = $idClient; - - $tabUpdate['login'] = $login; - $tabUpdate['email'] = strtolower(stripslashes($infos['email'])); - $tabUpdate['password'] = stripslashes($infos['password']); - $tabUpdate['actif'] = 0; - $tabUpdate['deleted'] = 0; - - $typeCompte = 'PROD'; - if ( $this->tabInfoUser['profil']=='SuperAdministrateur' && $infos['typeCompte']=='TEST'){ - $typeCompte = 'TEST'; - } - $tabUpdate['typeCompte'] = $typeCompte; - - //@todo : See issue #0001209 - /* - if ($this->tabInfoUser['profil']=='SuperAdministrateur' && !empty($infos['filtre_ip'])) { - $tabUpdate['filtre_ip'] = $infos['filtre_ip']; - } else { - $rep = $iDbCrm->select('clients', 'filtre_ip', "id='$idClient'",false, MYSQL_ASSOC); - $tabUpdate['filtre_ip'] = $rep[0]['filtre_ip']; - } - */ - //$tabUpdate['civilite'] = 'M'; - $tabUpdate['nom'] = stripslashes($infos['nom']); - $tabUpdate['prenom'] = stripslashes($infos['prenom']); - //$tabUpdate['raisonSociale'] = ''; - //$tabUpdate['siret'] = 00000000; - //adrNum - //adrIndRep - //adrTypeVoie - //adrLibVoie - //adrCp - //adrVille - //adrComp - $tabUpdate['tel'] = stripslashes($infos['tel_fix']); - $tabUpdate['fax'] = stripslashes($infos['tel_fax']); - $tabUpdate['mobile'] = stripslashes($infos['tel_mob']); - $tabUpdate['pref'] = implode(' ',$infos['pref']); - $tabUpdate['profil'] = (isset($infos['profil']) - || !in_array($infos->profil, array('SuperAdministrateur','Administrateur', 'Utilisateur')) ) ? - $infos['profil'] : 'Utilisateur'; - //dateInscription - //dateValidation - //nombreConnexions 0 - //dateDerniereConnexion - $tabUpdate['droits'] = implode(' ', $infos['droits']); - $tabUpdate['referenceParDefaut'] = stripslashes($infos['reference']); - $tabUpdate['nbReponses'] = $infos['nbReponses']; - - $tabUpdate['lang'] = $infos['lang']; - - if ($this->tabInfoUser['profil']=='SuperAdministrateur') { - $tabUpdate['formatMail'] = $infos['formatMail']; - $tabUpdate['lienExtranetMail'] = $infos['lienExtranetMail']; - $tabUpdate['listeEven'] = $infos['listeEven']; - $tabUpdate['dateDebutCompte'] = $infos['dateDebutCompte']; - $tabUpdate['dateFinCompte'] = $infos['dateFinCompte']; - $tabUpdate['accesWS'] = $infos['accesWS']; - $tabUpdate['rechRefType'] = $infos['rechRefType']; - } - //lienSurvFic - //idSurvFic - //loginCptSurvFic - - $tabUpdate['dateInsert'] = date('YmdHis'); - //dateUpdate => MySql automatic update - - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->insert('utilisateurs', $tabUpdate)){ - $result = true; - } - } - - break; - - case 'update': - - //Don't update password if nothing is send - if (!empty($infos['password'])){ - $tabUpdate['password'] = stripslashes($infos['password']); - } - - //Only this data could be updated by the user himself - $tabUpdate['email'] = stripslashes($infos['email']); - $tabUpdate['tel'] = stripslashes($infos['tel_fix']); - $tabUpdate['fax'] = stripslashes($infos['tel_fax']); - $tabUpdate['mobile'] = stripslashes($infos['tel_mb']); - $tabUpdate['nbReponses'] = $infos['nbReponses']; - if (!empty($infos['lang'])) { - $tabUpdate['lang'] = $infos['lang']; - } - - $tabUpdate['pref'] = implode(' ',$infos['pref']); - - //User with Administrateur or SuperAdministrateur can update these data - if ($this->tabInfoUser['profil']=='Administrateur' - || $this->tabInfoUser['profil']=='SuperAdministrateur') - { - $tabUpdate['droits'] = implode(' ', $infos['droits']); - $tabUpdate['nom'] = stripslashes($infos['nom']); - $tabUpdate['prenom'] = stripslashes($infos['prenom']); - $tabUpdate['referenceParDefaut'] = stripslashes($infos['reference']); - $tabUpdate['profil'] = isset($infos['profil']) ? $infos['profil'] : 'Utilisateur'; - } - - //Only update as SuperAdministrateur - if ($this->tabInfoUser['profil']=='SuperAdministrateur') - { - $typeCompte = 'PROD'; - if ( $this->tabInfoUser['profil']=='SuperAdministrateur' && $infos['typeCompte']=='TEST'){ - $typeCompte = 'TEST'; - } - $tabUpdate['typeCompte'] = $typeCompte; - - $formatMail = 'txt1'; - if ( !empty($infos['formatMail']) ) { - $formatMail = $infos['formatMail']; - } - $tabUpdate['formatMail'] = $formatMail; - - if (array_key_exists('lienExtranetMail', $infos) && !empty($infos['lienExtranetMail'])) { - $tabUpdate['lienExtranetMail'] = $infos['lienExtranetMail']; - } - - if (array_key_exists('listeEven', $infos) && !empty($infos['listeEven'])) { - $tabUpdate['listeEven'] = $infos['listeEven']; - } - - if (array_key_exists('dateDebutCompte', $infos) && !empty($infos['dateDebutCompte'])) { - $tabUpdate['dateDebutCompte'] = $infos['dateDebutCompte']; - } - - if (array_key_exists('dateFinCompte', $infos) && !empty($infos['dateFinCompte'])) { - $tabUpdate['dateFinCompte'] = $infos['dateFinCompte']; - } - - if (array_key_exists('accesWS', $infos) && !empty($infos['accesWS'])) { - $tabUpdate['accesWS'] = $infos['accesWS']; - } - - $rechRefType = 'UTI'; - if (array_key_exists('rechRefType', $infos) && !empty($infos['rechRefType'])) { - $rechRefType = $infos['rechRefType']; - } - $tabUpdate['rechRefType'] = $rechRefType; - - } - $tabUpdate['dateUpdate'] = date('YmdHis'); - - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->update('utilisateurs', $tabUpdate, "login='$login'", true)){ - $result = true; - } - - break; - - default: $result = false; break; - } - - return $result; - } - - /** - * Obtention automatique d'un nouveau login pour un client - * @param int idClient - * @return NextLoginReturn - */ - public function getNextLogin( $idClient ) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - - if ($this->tabInfoUser['profil']=='Administrateur' - || $this->tabInfoUser['profil']=='SuperAdministrateur') - { - /** Un administrateur veut créer un nouveau login **/ - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients c', 'c.racineLogin, c.droits', "c.id='$idClient'"); - $racine = $rep[0]['racineLogin']; - $droitsClients = $rep[0]['droits']; - $rep = $iDbCrm->select('utilisateurs', 'login', "idClient='$idClient'"); - if (count($rep)==0) { - $racine.='1'; - } else { - $last_i = count($rep); - $cpt = 1; - while (true) { - $racine.= $last_i+$cpt; - $rep = $iDbCrm->select('utilisateurs', 'login', "idClient='$idClient' AND login='$racine'"); - if (count($rep)==0) break; - $cpt++; - } - } - $result = new NextLoginResult(); - $result->racine = $racine; - $result->idClient = $idClient; - $result->droitsClients = $droitsClients; - - } else { - - $error->errnum = 0; - $error->errmsg = 'Acces non authorisé!'; - } - $output = new NextLoginReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Récupère la liste des clients ou les informations d'un client - * @param integer|boolean $idClient - * @param ClientFiltre $filtre - * @return ListeClientsReturn - */ - public function getListeClients($idClient=false, $filtre=null) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - if (empty($idClient)) $idClient = false; - - $isAuthorized = false; - - if ($this->tabInfoUser['profil']=='Administrateur' && - ($idClient=='false' || $idClient==$this->tabInfoUser['idClient'])){ - $idClient = $this->tabInfoUser['idClient']; - $isAuthorized = true; - } - - if ($this->tabInfoUser['profil']<>'SuperAdministrateur'){ - $error->errnum = 1; - $error->errmsg = 'Profil non administrateur'; - } else { - $isAuthorized = true; - } - - if ($isAuthorized) - { - $strClient = ''; - - if (is_numeric($idClient)) $strClient.=" AND id='$idClient' "; - - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients', - 'id, nom, actif, test, racineLogin, siren, nic, tva, editerFacture, fact_detail, fac_dest, fac_adr1, fac_adr2, fac_adr3, fac_email, fac_tel, fact_rib, liv_dest, liv_adr1, liv_adr2, liv_adr3, liv_email, liv_tel, droits, filtres_ip, dateInsert, dateUpdate, respComSD, typeContrat, dateSignature, typeAcces, typeScore, timeout, accesPieces, accesKbis, accesInvestigations, accesInternationnal, accesEnquetes, miseSousSurveillance, forfaitExtranetPeriode, forfaitExtranetMontant, reconductionAuto, remarque, forfaitPiecesNb, forfaitPiecesMt, forfaitPiecesDep, forfaitInvestigNb, forfaitInvestigMt, forfaitInvestigDep, tarifIndiscore', - "1 $strClient", - false, - MYSQL_ASSOC); - $tabRet = array(); - foreach ($rep as $uti) - { - $client = new Client(); - $client->idClient = $uti['id']; - $client->nom = $uti['nom']; - $client->actif = $uti['actif']; - $client->test = $uti['test']; - $client->racineLogin = $uti['racineLogin']; - $client->siren = $uti['siren']; - $client->nic = $uti['nic']; - $client->tva = $uti['tva']; - $client->editerFacture = $uti['editerFacture']; - $client->fact_detail = $uti['fact_detail']; - $client->fac_dest = $uti['fac_dest']; - $client->fac_adr1 = $uti['fac_adr1']; - $client->fac_adr2 = $uti['fac_adr2']; - $client->fac_adr3 = $uti['fac_adr3']; - $client->fac_email = $uti['fac_email']; - $client->fac_tel = $uti['fac_tel']; - $client->fact_rib = $uti['fact_rib']; - $client->liv_dest = $uti['liv_dest']; - $client->liv_adr1 = $uti['liv_adr1']; - $client->liv_adr2 = $uti['liv_adr2']; - $client->liv_adr3 = $uti['liv_adr3']; - $client->liv_email = $uti['liv_email']; - $client->liv_tel = $uti['liv_tel']; - $client->droits = strtolower($uti['droits']); - $client->timeout = $uti['timeout']; - $client->filtres_ip = $uti['filtres_ip']; - $client->dateInsert = $uti['dateInsert']; - $client->dateUpdate = $uti['dateUpdate']; - $client->respComSD = $uti['respComSD']; - $client->typeContrat = $uti['typeContrat']; - $client->dateSignature = $uti['dateSignature']; - $client->typeAcces = $uti['typeAcces']; - $client->typeScore = $uti['typeScore']; - $client->accesPieces = $uti['accesPieces']; - $client->accesKbis = $uti['accesKbis']; - $client->accesInvestigations = $uti['accesInvestigations']; - $client->accesInternationnal = $uti['accesInternationnal']; - $client->accesEnquetes = $uti['accesEnquetes']; - $client->miseSousSurveillance = $uti['miseSousSurveillance']; - $client->forfaitExtranetPeriode = $uti['forfaitExtranetPeriode']; - $client->forfaitExtranetMontant = $uti['forfaitExtranetMontant']; - $client->reconductionAuto = $uti['reconductionAuto']; - $client->remarque = $uti['remarque']; - $client->forfaitPiecesNb = $uti['forfaitPiecesNb']; - $client->forfaitPiecesMt = $uti['forfaitPiecesMt']; - $client->forfaitPiecesDep = $uti['forfaitPiecesDep']; - $client->forfaitInvestigNb = $uti['forfaitInvestigNb']; - $client->forfaitInvestigMt = $uti['forfaitInvestigMt']; - $client->forfaitInvestigDep = $uti['forfaitInvestigDep']; - $client->tarifIndiscore = $uti['tarifIndiscore']; - - $tabRet[] = $client; - } - } - $output = new ListeClientsReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des droits - * @return ListeDroitsReturn[] - */ - public function getListeDroits() - { - $tabRet = array(); - foreach($this->listeDroits as $code => $desc){ - $droit = new ListeDroitsReturn(); - $droit->code = $code; - $droit->desc = $desc; - $tabRet[] = $droit; - } - return $tabRet; - } - - /** - * Catégorie des accès - * @param string $code - * @return ListCategoryReturn[] - */ - public function getCategory($code = null) - { - $tabRet = array(); - foreach($this->listeCategory as $code => $desc){ - $c = new ListCategoryReturn(); - $c->code = $code; - $c->desc = $desc['label']; - $c->droits = $desc['droits']; - $tabRet[] = $c; - } - return $tabRet; - } - - - /** - * Retourne la liste des préférences - * @return ListePrefsReturn[] - */ - public function getListePrefs() - { - $tabRet = array(); - foreach ( $this->listePrefs as $code => $desc ) { - $pref = new ListePrefsReturn(); - $pref->code = $code; - $pref->desc = $desc; - $tabRet[] = $pref; - } - return $tabRet; - } - - /** - * Retourne la liste des logs - * @return ListeLogsReturn[] - */ - public function getLogs() - { - $tabRet = array(); - foreach ( $this->logs as $code => $desc ) { - $log = new ListeLogsReturn(); - $log->code = $code; - $log->desc = $desc['label']; - $tabRet[] = $log; - } - return $tabRet; - } - - /** - * Récupère les informations du profil connecté - * @param string $login - * @param int $idClient - * @return ListeUtilisateursReturn - */ - public function getListeUtilisateurs($login, $idClient=null) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - $tabRet = array(); - - if ($this->tabInfoUser['profil']<>'Administrateur' && - $this->tabInfoUser['profil']<>'SuperAdministrateur') - { - $error->errnum = 1; - $error->errmsg = 'Profil non administrateur'; - } else { - $iDbCrm = new WDB('sdv1'); - if (!isset($idClient)){ - $rep = $iDbCrm->select('utilisateurs', 'idClient', "login='$login'"); - $idClient = $rep[0][0]; - } - if ($idClient==-1) { - $error->errnum = 1; - $error->errmsg = 'idClient=0'; - } else { - $rep = $iDbCrm->select( - 'utilisateurs', - 'id, idClient, login, email, actif, nom, prenom, referenceParDefaut', - "idClient='$idClient' AND deleted=0 ORDER BY login ASC", - false, MYSQL_ASSOC); - foreach ($rep as $uti){ - $utilisateur = new Utilisateur(); - $utilisateur->idUti = $uti['id']; - $utilisateur->idClient= $uti['idClient']; - $utilisateur->login = $uti['login']; - $utilisateur->email = $uti['email']; - $utilisateur->actif= $uti['actif']; - $utilisateur->nom = $uti['nom']; - $utilisateur->prenom = $uti['prenom']; - $utilisateur->reference = $uti['referenceParDefaut']; - $tabRet[]= $utilisateur; - } - } - } - $output = new ListeUtilisateursReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * getLogsClients - * @param string $mois (Format : AAAA-MM ou AAAA/MM) - * @param int $detail - * @param int $idClient - * @param string $login - * @param int $all - * @return LogsClientsReturn - */ - public function getLogsClients($mois, $detail=0, $idClient=0, $login='', $all=0) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - if (empty($detail)) $detail = 0; - if (empty($idClient)) $idClient = 0; - if (empty($login)) $login = ''; - if (empty($all)) $all = 0; - - $strDetail = $strClient = $strLogin=''; - - // Vue détaillée ou uniquement les infos payantes - if ($detail==0) { - $detail='Non'; - //$strDetail=" AND (page LIKE 'greffe_%' OR page LIKE 'inpi_%' OR page='kbis' OR page LIKE 'indiscore%' OR page='privileges' OR page='commandeAsso') AND (params<>'' OR page LIKE 'indiscore%' AND tarifIndiscore<>0) AND (params NOT LIKE '%erreur%' OR params LIKE '%erreur 17%') "; - $strDetail = ' AND ( '; - $pages = array('greffe_actes', 'greffe_bilans', 'kbis', 'indiscore', 'indiscore2', 'indiscore3', 'rapport2', 'rapport3', 'privileges', 'privcumul'); - $totalPages = count($pages); - $i=0; - foreach( $pages as $page ) { - switch($page) - { - case 'greffe_actes': - case 'greffe_bilans': - $strDetail.= "(l.page = '".$page."' AND l.params<>'' AND (l.params NOT LIKE '%erreur%' OR l.params LIKE '%erreur 17%'))"; - break; - case 'kbis': - $strDetail.= "(l.page = '".$page."' AND l.params<>'' AND l.params<>'1/1/0//' AND l.params<>'0/1/0//')"; - break; - default: - $strDetail.= "(l.page = '".$page."')"; - break; - } - $i++; - if ( $i<$totalPages) { - $strDetail.= ' OR '; - } - } - $strDetail.= ' ) '; - } elseif($detail==1) { - $detail='Oui'; - } - - // On veut uniquement le client précis - if ($all && $this->tabInfoUser['profil']=='SuperAdministrateur') { - $all = 'Oui'; - } else { - $all = 'Non'; - } - // Pas d'idClient mentionné ou tentative sur autre client et non SAD - if ($idClient==0 || ($idClient!=$this->tabInfoUser['idClient'] && $this->tabInfoUser['profil']!='SuperAdministrateur') ){ - $idClient = $this->tabInfoUser['idClient']; - } - $strClient = " AND u.idClient=$idClient "; - - // On veut uniquement le login précis - if ($login!='') { - $strLogin=" AND l.login='$login' "; - } else { - $login='Non'; - } - - // Dates de début et de fin - $mois = strtr($mois, array('-'=>'','/'=>'')); - $annee = substr($mois,0,4); - $mois = substr($mois,4,2); - $dateDeb=date('Y-m-d', mktime(0,0,0,$mois,1,$annee)); - $dateFin=date('Y-m-t', mktime(0,0,0,$mois,15,$annee)); - - $c = Zend_Registry::get('config'); - $fichierCsv=$c->profil->path->files."/logs-$annee-$mois-$detail-$idClient-$login-$all.csv"; - - if (file_exists($fichierCsv) - && date('Ymd', filemtime($fichierCsv))==date('Ymd') - && filesize($fichierCsv)>60 ) { - $size=filesize($fichierCsv); - $erreur=false; - $tabNom=array(); - $cache=1; - } else { - @unlink($fichierCsv); - $sql="SELECT LOWER(l.login) as loginUti, page, l.siren, l.nic, l.params, l.dateHeure, u.idClient, c.nom, u.referenceParDefaut AS refUti - FROM `logs` l, utilisateurs u, clients c - WHERE 1 $strDetail $strClient $strLogin AND dateHeure BETWEEN '$dateDeb 00:00:00' AND '$dateFin 23:59:59' AND l.login=u.login AND u.idClient=c.id - ORDER BY l.login ASC, l.dateHeure ASC"; - $fp = fopen($c->profil->path->cache."/logs-$annee-$mois-$detail-$idClient-$login-$all.sql", 'w'); - fwrite($fp, $sql.EOL); - fclose($fp); - exec("php ".$c->profil->path->batch."/sql2csv.php sdv1 ".$c->profil->path->cache."/logs-$annee-$mois-$detail-$idClient-$login-$all.sql $fichierCsv > /dev/null &"); - $size = $cache = 0; - } - - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $result = new LogsClients(); - $result->Url = $hostname."/fichier/logs/logs-$annee-$mois-$detail-$idClient-$login-$all.csv"; - $result->Taille = $size; - $result->Cache = $cache; - - $output = new LogsClientsReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Création/Modification d'un client - * @param string $infos - * @return ClientReturn - */ - public function setClient($infos) - { - $this->authenticate(); - $result = false; - //Pas SuperAdministrateur - if ($this->tabInfoUser['profil']!='SuperAdministrateur') { - throw new SoapFault(1, 'Profil insuffisant pour cette méthode'); - } else { - $infos = json_decode($infos); - - /** - * - Protéger les chaines de caractères - * - Gérer les champs select - */ - - $idClient = null; - $tabInfos = array(); - foreach($infos as $nom => $value) - { - switch($nom) - { - case 'idClient': - $idClient = $value; - break; - case 'nom': - $tabInfos['nom'] = $value; - break; - case 'actif': - $tabInfos['actif'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'test': - $tabInfos['test'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'racineLogin': - $tabInfos['racineLogin'] = $infos->racineLogin; - break; - case 'siren': - $tabInfos['siren'] = (int) $value; - break; - case 'nic': - $tabInfos['nic'] = (int) $value; - break; - case 'tva': - $tabInfos['tva'] = $value; - break; - case 'idClientFacture': - $tabInfos['idClientFacture'] = $value; - break; - case 'editerFacture': - $tabInfos['editerFacture'] = ($value=='Non') ? 'Non' : 'Oui'; - break; - case 'fact_detail': - $tabInfos['fact_detail'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'fac_dest': - $tabInfos['fac_dest'] = $value; - break; - case 'fac_adr1': - $tabInfos['fac_adr1'] = $value; - break; - case 'fac_adr2': - $tabInfos['fac_adr2'] = $value; - break; - case 'fac_adr3': - $tabInfos['fac_adr3'] = $value; - break; - case 'fac_email': - $tabInfos['fac_email'] = $value; - break; - case 'fac_tel': - $tabInfos['fac_tel'] = $value; - break; - case 'fact_rib': - if (in_array($value, array('BPOSTALE','CCOOP', 'CDNORD'))){ - $tabInfos['fact_rib'] = $value; - } - break; - case 'liv_dest': - $tabInfos['liv_dest'] = $value; - break; - case 'liv_adr1': - $tabInfos['liv_adr1'] = $value; - break; - case 'liv_adr2': - $tabInfos['liv_adr2'] = $value; - break; - case 'liv_adr3': - $tabInfos['liv_adr3'] = $value; - break; - case 'liv_email': - $tabInfos['liv_email'] = $value; - break; - case 'liv_tel': - $tabInfos['liv_tel'] = $value; - break; - case 'droits': - if (count($value)>0){ - $tabInfos['droits'] = strtolower(implode(' ',$value)); - } else { - $tabInfos['droits'] = array(); - } - break; - case 'filtres_ip': - $tabInfos['filtres_ip'] = $value; - break; - case 'typeContrat': - if (in_array($value, array('Contrat','Marché'))){ - $tabInfos['typeContrat'] = $value; - } - break; - case 'typeAcces': - if (in_array($value, array('userPassword','userPasswordIP', 'IP'))){ - $tabInfos['typeAcces'] = $value; - } - break; - case 'typeScore': - if (in_array($value, array('20','100'))){ - $tabInfos['typeScore'] = $value; - } - break; - case 'timeout': - if (!empty($value)){ - $tabInfos['timeout'] = $value; - } - break; - case 'accesPieces': - $tabInfos['accesPieces'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'accesKbis': - $tabInfos['accesKbis'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'accesInvestigations': - $tabInfos['value'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'accesInternationnal': - $tabInfos['accesInternationnal'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'accesEnquetes': - $tabInfos['accesEnquetes'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'miseSousSurveillance': - $tabInfos['miseSousSurveillance'] = ($value=='Oui') ? 'Oui' : 'Non' ; - break; - case 'forfaitExtranetPeriode': - if (in_array($value, array('Mensuel','Trimestriel','Semestriel', 'Annuel'))){ - $tabInfos['forfaitExtranetPeriode'] = $value; - } - break; - case 'forfaitExtranetMontant': - $tabInfos['forfaitExtranetMontant'] = $value; - break; - case 'reconductionAuto': - if ($value=='Non') { - $tabInfos['reconductionAuto'] = 'Non'; - } - break; - case 'remarque': - $tabInfos['remarque'] = $value; - break; - case 'forfaitPiecesNb': - $tabInfos['forfaitPiecesNb'] = $value; - break; - case 'forfaitPiecesMt': - $tabInfos['forfaitPiecesMt'] = $value; - break; - case 'forfaitPiecesDep': - $tabInfos['forfaitPiecesDep'] = $value; - break; - case 'forfaitInvestigNb': - $tabInfos['forfaitInvestigNb'] = $value; - break; - case 'forfaitInvestigMt': - $tabInfos['forfaitInvestigMt'] = $value; - break; - case 'forfaitInvestigDep': - $tabInfos['forfaitInvestigDep'] = $value; - break; - case 'tarifIndiscore': - $tabInfos['tarifIndiscore'] = $value; - break; - case 'InterSudLogin': - $tabInfos['InterSudLogin'] = $value; - break; - case 'InterSudPass': - $tabInfos['InterSudPass'] = $value; - break; - } - - } - - $iDbCrm = new WDB('sdv1'); - if (empty($idClient)){ - //Ajout - $tabInfos['dateInsert'] = date('Y-m-d H:i:s'); - $result = $iDbCrm->insert('clients', $tabInfos, true); - } else { - //Droits client actuel avant modification - if ( isset($tabInfos['droits']) ) { - $rep = $iDbCrm->select('clients', 'droits', "id='$idClient'", false, MYSQL_ASSOC); - $droitsPre = explode(' ', $rep[0]['droits']); - $droitsSui = explode(' ', $tabInfos['droits']); - //Détection suppression d'un droit client - if ( count($droitsSui)0 ){ - $this->_deleteAccess($droitsDiff, $idClient); - } - } - } - //Modification - $tabInfos['dateUpdate'] = date('Y-m-d H:i:s'); - if ($iDbCrm->update('clients', $tabInfos, "id='$idClient'", true)){ - $result = true; - } - } - } - $output = new ClientReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Get all user params (only for admin) - * @param string $login - * @return string - */ - public function getUser($login) - { - $this->authenticate(); - - if ($this->tabInfoUser['profil']!='SuperAdministrateur') { - $this->sendError('0901'); - } - try { - $userM = new Application_Model_Sdv1Utilisateurs(); - $sql = $userM->select()->where('login = ?', $login); - $rowset = $userM->fetchRow($sql); - if ($rowset) { - $user = $rowset->toArray(); - return json_encode($user); - } else { - throw new SoapFault('1','Erreur'); - } - } catch (Zend_Db_Exception $e) { - throw new SoapFault('Database',$e->getMessage()); - } - } - - /** - * Enregistre l'acceptation des CGU pour une application - * @param string $application Nom de l'outil utilisé - * @return boolean - */ - public function setCGU($application = null) - { - $this->authenticate(); - $idUser = $this->tabInfoUser['id']; - - try { - $userM = new Application_Model_Sdv1Utilisateurs(); - $data = array('acceptationCGU' => date('YmdHis')); - $result = $userM->update($data, 'id='.$idUser); - } catch (Zend_Db_Exception $e) { - throw new SoapFault('Erreur', $e->getMessage()); - } catch (Zend_Exception $e) { - throw new SoapFault('Erreur', $e->getMessage()); - } - if ( 1 == $result ) { - return true; - } - return false; - } - - /** - * Definir la méthode de tarification - * @param int $idClient Nom de l'élément à facturer - * @param ClientTarif $tarif Informations de facturation - * @param int $id Identifiant pour l'update - * @return int - */ - public function setClientTarif($idClient, $tarif, $id=null) - { - /** - * Une tarification est toujours affecté à un élément $log. - * Celle ci est définie sur un compte client (tous les utilisateurs) ou un service, - * Pour un type de facturation - * - Unitaire : Chaque élement est à facturer - * - Forfait limité : Si tarif unitaire>0 alors on applique le prix unitaire pour chaque - * dépassement, sinon on coupe - * - Forfait illimité : - */ - - $this->authenticate(); - - if ($this->tabInfoUser['profil']!='SuperAdministrateur') { - $this->sendError('0902'); - } - - if (!in_array($tarif->log, array_keys($this->logs))) { - throw new SoapFault('ClientTarif', 'log inexistant'); - } - - if (!in_array($tarif->type, array('Unitaire','ForfaitLimit','ForfaitNoLimit'))) { - throw new SoapFault('ClientTarif', 'Erreur type'); - } - - if (!in_array($tarif->doublon, array('jour','mois', 'period','none'))) { - throw new SoapFault('ClientTarif', 'Erreur doublon'); - } - - $time = mktime(0,0,0,substr($tarif->date,4,2), substr($tarif->date,6,2), substr($tarif->date,0,4)); - - $data = array( - 'idClient' => $idClient, - 'service' => $tarif->service, - 'log' => $tarif->log, - 'type' => $tarif->type, - 'priceUnit' => $tarif->priceUnit, - 'limit' => $tarif->limit, - 'dateDebut' => date('Y-m-d H:i:s', $time), - 'duree' => $tarif->duree, - 'doublon' => $tarif->doublon, - ); - - try { - $tarifM = new Application_Model_Sdv1ClientsTarifs(); - if ( null === $id) { - $result = $tarifM->insert($data); - } else { - $result = $tarifM->update($data, 'id='.$id); - } - } catch (Zend_Db_Adapter_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } catch (Zend_Exception $e) { - throw new SoapFault('ERR', "Application error"); - } - - return $result; - } - - /** - * Get list of tarif - * @param int $idClient - * @param string $service - * @throws SoapFault - * @return ClientContrat[] - */ - public function getClientTarifs($idClient, $service = null) - { - $this->authenticate(); - - if ( null === $service ) { - $service = 'DEFAULT'; - } - - //Liste dateDebut-duree disponible - $tarifM = new Application_Model_Sdv1ClientsTarifs(); - try { - $sql = $tarifM->select()->from($tarifM,array( - 'dateDebut', - 'duree' - )) - ->where('service=?',$service) - ->order('dateDebut DESC') - ->group(array('dateDebut', 'duree')); - $contrats = $tarifM->fetchAll($sql); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } - - $listeContrat = array(); - //Retrouver les éléments à facturer - if ( count($contrats)>0 ) { - foreach ( $contrats as $contrat ) { - try { - $sql = $tarifM->select() - ->where('idClient=?', $idClient) - ->where('service=?',$service) - ->where('dateDebut=?',$contrat->dateDebut) - ->where('duree=?',$contrat->duree); - $rows = $tarifM->fetchAll($sql); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } - - $output = array(); - if ( $rows->count()>0 ) { - foreach ( $rows as $row ) { - $item = new ClientTarif(); - $item->id = $row->id; - $item->idClient = $row->idClient; - $item->service = $row->service; - $item->log = $row->log; - $item->type = $row->type; - $item->priceUnit = $row->priceUnit; - $item->limit = $row->limit; - $item->date = substr($row->dateDebut,0,10); - $item->duree = $row->duree; - $item->doublon = $row->doublon; - - $output[] = $item; - } - } - - $date = new Zend_Date($contrat->dateDebut, false); - $dateBegin = $date->toString('Y-MM-dd'); - $dateEnd = $date->add($contrat->duree, Zend_Date::DAY)->toString('YYYY-MM-dd'); - - $ElementContrat = new ClientContrat(); - $ElementContrat->dateBegin = $dateBegin; - $ElementContrat->dateEnd = $dateEnd; - $ElementContrat->tarifs = $output; - - $listeContrat[] = $ElementContrat; - } - } - - return $listeContrat; - } - - /** - * Get a tarif and his details by date - * @param string $log - * @param int $idClient - * @param string $service - * @param string $date - * @throws SoapFault - * @return ClientTarif - */ - public function getClientTarif($log, $idClient, $service='default', $date=null) - { - $this->authenticate(); - - if ( empty($service) ) { - $service = 'default'; - } - - //Date not define, looks for the actual price - if ( empty($date) ) { - - } - - try { - $tarifM = new Application_Model_Sdv1ClientsTarifs(); - $sql = $tarifM->select() - ->from($tarifM, array( - 'id', 'idClient', 'service', 'log', 'type', 'priceUnit', 'limit', 'dateDebut', - 'duree', 'doublon', 'DATE_ADD(dateDebut, INTERVAL duree DAY) AS dateFin' - )) - ->where('log=?',$log) - ->where('idClient=?', $idClient) - ->where('service=?',$service); - //->where('dateDebut<=?', $date); - //->where('dateFin>?',$date); - //@todo : get date between - - $row = $tarifM->fetchRow($sql); - } catch (Zend_Db_Adapter_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } catch (Zend_Exception $e) { - throw new SoapFault('ERR', "Application error"); - } - - return $row; - } - - /** - * Liste des prestations pour un client - * @param int $idClient - * @return ClientPrestation[] - * @throws SoapFault - */ - public function getPrestations($idClient) - { - $this->authenticate(); - - //Read prestations - try { - $prestationsM = new Application_Model_Sdv1Prestations(); - $sql = $prestationsM->select() - ->from($prestationsM, array('id', 'typeprestation', 'datemiseenplace', - 'datefinprestation' ,'identifiantPrestation', 'prestationactive')) - ->where('idClient=?', $idClient); - $result = $prestationsM->fetchAll($sql); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - $output = array(); - if ($result->count()>0) { - foreach ( $result as $item ) { - $clientprestation = new ClientPrestation(); - $clientprestation->id = $item->id; - $clientprestation->type = $item->typeprestation; - $clientprestation->identifiant = $item->identifiantPrestation; - $clientprestation->active = $item->prestationactive; - $clientprestation->dateDebut = $item->datemiseenplace; - $clientprestation->dateFin = $item->datefinprestation; - - $output[] = $clientprestation; - } - } - - return $output; - } - - - /** - * Liste des paramètres d'une prestation - * @param int $id - * @return string - * @throws SoapFault - */ - public function getPrestation($id) - { - $this->authenticate(); - - //Read prestations - try { - $prestationsM = new Application_Model_Sdv1Prestations(); - $sql = $prestationsM->select()->where('id=?', $id); - $result = $prestationsM->fetchRow($sql); - if ($result!==null) { - return json_encode($result->toArray()); - } else { - return ''; - } - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - } - - /** - * Enregistre les paramètres des la prestation - * @param int $idClient - * @param string $prestation - * @return int - * @throws SoapFault - */ - public function setPrestation($idClient, $prestation) - { - $this->authenticate(); - - if ($this->tabInfoUser['profil']!='SuperAdministrateur') { - $this->sendError('0902'); - } - - $prestationParameters = json_decode($prestation, true); - - //Insert or update a prestation - try { - $prestationsM = new Application_Model_Sdv1Prestations(); - - //Update - if (!empty($prestationParameters['id'])) { - $id = $prestationParameters['id']; - unset($prestationParameters['id']); - $result = $prestationsM->update($prestationParameters, 'id='.$id); - } - - //Insert - else { - //@todo : Some control before save - - $result = $prestationsM->insert($prestationParameters); - } - - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - return $result; - } - - /** - * Define a Service in Client - * @param int $idClient - * @param string $infos - * @throws SoapFault - * @return int - */ - public function setService($idClient, $infos=null) - { - $this->authenticate(); - - if ($this->tabInfoUser['profil']!='SuperAdministrateur') { - $this->sendError('0902'); - } - - try { - $serviceM = new Application_Model_Sdv1ClientsServices(); - - $dataIn = json_decode($infos, true); - $code = $dataIn['code']; - $label = $dataIn['label']; - $droits = $dataIn['droits']; - - //Check if code exist in idClient - $sql = $serviceM->select() - ->where('idClient=?',$idClient) - ->where('code=?',$code); - - $row = $serviceM->fetchAll($sql); - - if ($row->count()>0) { - $data = array( - 'label' => $label, - 'droits' => $droits - ); - $result = $serviceM->update($data, array('idClient='.$idClient, 'code='.$code)); - - //Delete - if ( isset($row->droits) ) { - $droitsPre = explode(' ', $row->droits); - $droitsSui = explode(' ', $droits); - //Détection suppression d'un droit client - if ( count($droitsSui)0 ){ - $this->_deleteAccess($droitsDiff, $idClient, $code); - } - } - } - } else { - $data = array( - 'code' => $code, - 'label' => $label, - 'droits' => $droits, - 'idClient' => $idClient - ); - $result = $serviceM->insert($data); - } - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } - - return $result; - } - - /** - * Set a User in a Service - * @param string $login - * @param string $code - * @throws SoapFault - * @return int - */ - public function setUserService($login, $code) - { - $this->authenticate(); - - if ($this->tabInfoUser['profil']!='SuperAdministrateur') { - $this->sendError('0902'); - } - - try { - $serviceM = new Application_Model_Sdv1UtilisateursService(); - - //Check if a login exist - $sql = $serviceM->select()->where('login=?',$login); - $row = $serviceM->fetchAll($sql); - - if ($row->count()>0) { - $data = array( - 'serviceCode' => $code, - ); - $result = $serviceM->update($data, 'login='.$login); - } else { - $data = array( - 'login' => $login, - 'serviceCode' => $code, - ); - $result = $serviceM->insert($data); - } - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } - - //Override login right access - always - $serviceM = new Application_Model_Sdv1ClientsServices(); - $sql = $serviceM->select()->where('code=?',$code); - $serviceInfo = $serviceM->fetchRow($sql); - if ( null !== $serviceInfo ) { - $userM = new Application_Model_Sdv1Utilisateurs(); - $userM->update(array('droits'=>$serviceInfo->droits), 'login='.$login); - } - - return $result; - } - - /** - * List Services - * @param int $idClient - * @throws SoapFault - * @return Service[] - */ - public function getServices($idClient) - { - $this->authenticate(); - - if ($this->tabInfoUser['profil']!='SuperAdministrateur') { - $this->sendError('0902'); - } - - try { - $serviceM = new Application_Model_Sdv1ClientsServices(); - $sql = $serviceM->select() - ->where('idClient=?', $idClient) - ->order('label ASC'); - $rows = $serviceM->fetchAll($sql); - } catch (Zend_Db_Adapter_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } catch (Zend_Exception $e) { - throw new SoapFault('ERR', "Application error"); - } - - $output = array(); - if ($rows->count()>0) { - foreach($rows as $item) { - $service = new Service(); - $service->code = $item->code; - $service->label = $item->label; - $output[] = $service; - } - } - return $output; - } - - /** - * Get service parameters - * @param int $idClient - * @param string $code - * @throws SoapFault - * @return string|boolean - */ - public function getService($idClient, $code) - { - $this->authenticate(); - - if ($this->tabInfoUser['profil']!='SuperAdministrateur') { - $this->sendError('0902'); - } - - try { - $serviceM = new Application_Model_Sdv1ClientsServices(); - $sql = $serviceM->select() - ->where('idClient=?', $idClient) - ->where('serviceCode=?', $code); - $row = $serviceM->fetchRow($sql); - } catch (Zend_Db_Adapter_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } catch (Zend_Exception $e) { - throw new SoapFault('ERR', "Application error"); - } - - if (null !== $row) { - return json_encode($row->toArray()); - } - return false; - } - - /** - * Retourne la liste des utilisateurs par service - * @param int $idClient - * @param string $serviceCode - * @throws SoapFault - * @return Utilisateur[] - */ - public function getServiceUsers($idClient, $serviceCode=null) - { - $this->authenticate(); - - if ( null === $serviceCode ) { - $serviceCode = 'DEFAULT'; - } - - if ($this->tabInfoUser['profil']!='SuperAdministrateur') { - $this->sendError('0902'); - } - - $output = array(); - - //Login by service - if ($serviceCode != 'DEFAULT') { - - //Check if service exist - try { - $servicesM = new Application_Model_Sdv1ClientsServices(); - $sql = $servicesM->select() - ->from($servicesM, array('code')) - ->where('idClient=?', $idClient); - $result = $servicesM->fetchAll($sql); - if ($result->count()==0) { - throw new SoapFault('ERR', 'Service inexistant'); - } - } catch (Zend_Db_Adapter_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } catch (Zend_Exception $e) { - throw new SoapFault('ERR', "Application error"); - } - - //List login - try { - $userserviceM = new Application_Model_Sdv1UtilisateursService(); - $sql = $userserviceM->select() - ->where('serviceCode=?', $serviceCode) - ->order('login ASC'); - $logins = $userserviceM->fetchAll($sql); - } catch (Zend_Db_Adapter_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } catch (Zend_Exception $e) { - throw new SoapFault('ERR', "Application error"); - } - - //Get login informations - $userM = new Application_Model_Sdv1Utilisateurs(); - - if ($logins->count()>0) { - foreach($logins as $login) { - $sql = $userM->select() - ->where('login=?', $login->login) - ->where('deleted=0'); - $result = $userM->fetchRow($sql); - $utilisateur = new Utilisateur(); - $utilisateur->idUti = $result->id; - $utilisateur->login = $result->login; - $utilisateur->actif = $result->actif; - $utilisateur->nom = $result->nom; - $utilisateur->prenom = $result->prenom; - $utilisateur->email = $result->email; - $utilisateur->reference = $result->reference; - $output[] = $utilisateur; - } - } - - } - - //Select all logins which have service to display only login without service - else { - - $servicesM = new Application_Model_Sdv1ClientsServices(); - $sql = $servicesM->select() - ->from($servicesM, array('code')) - ->where('idClient=?', $idClient); - $result = $servicesM->fetchAll($sql); - $codes = array(); - $notlogins = array(); - if ($result->count()>0) { - foreach ($result as $item) { - $codes[] = $item->code; - } - } - - if (count($codes)>0) { - - try { - $userserviceM = new Application_Model_Sdv1UtilisateursService(); - $sql = $userserviceM->select() - ->where('serviceCode IN ("'.join(',',$codes).'")'); - $result = $userserviceM->fetchAll($sql); - } catch (Zend_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } - - if ($result->count()>0) { - foreach ($result as $item) { - $notlogins[] = $item->login; - } - } - } - - $userM = new Application_Model_Sdv1Utilisateurs(); - if (count($notlogins)>0) { - $sql = $userM->select() - ->from($userM, array('id', 'login', 'actif', 'nom', 'prenom', 'email', 'referenceParDefaut')) - ->where('login NOT IN('.join(',',$notlogins).')') - ->where('idClient=?',$idClient) - ->where('deleted=0') - ->order('login ASC'); - } else { - $sql = $userM->select() - ->from($userM, array('id', 'login', 'actif', 'nom', 'prenom', 'email', 'referenceParDefaut')) - ->where('idClient=?',$idClient) - ->where('deleted=0') - ->order('login ASC'); - } - - $logins = $userM->fetchAll($sql); - - if ($logins->count()>0) { - foreach ($logins as $result) { - $utilisateur = new Utilisateur(); - $utilisateur->idUti = $result->id; - $utilisateur->login = $result->login; - $utilisateur->actif = $result->actif; - $utilisateur->nom = $result->nom; - $utilisateur->prenom = $result->prenom; - $utilisateur->email = $result->email; - $utilisateur->reference = $result->referenceParDefaut; - $output[] = $utilisateur; - } - } - } - - return $output; - } - - /** - * Override user params - * @param string $element - * @param int $idClient - * @param string $service - * @param string $login - * @throws SoapFault - * @return boolean - */ - public function setParam($element, $idClient, $service, $login=null) - { - $this->authenticate(); - - $element = strtoupper($element); - if ( !in_array($element, array('IP', 'ACCESS')) ) { - throw new SoapFault('ERR', 'Invalid parameters'); - } - - switch ($element) { - case 'IP': - break; - case 'ACCESS': - $logins = $this->_serviceLogins($idClient, $service); - - if ( $login !== null ) { - if ( !in_array($login,$logins) ) { - throw new SoapFault('ERR', "Login not found"); - } else { - $logins = array($login); - } - } - - if ( count($logins)>0 ) { - //Get access - if ($service == 'DEFAULT') { - $clientM = new Application_Model_Sdv1Clients(); - $sql = $clientM->select()->where('idClient=?', $idClient); - $row = $clientM->fetchRow($sql); - $droits = $row->droits; - } else { - $serviceM = new Application_Model_Sdv1ClientsServices(); - $sql = $serviceM->select()->where('code=?', $service); - $row = $serviceM->fetchRow($sql); - $droits = $row->droits; - } - //Override access - $userM = new Application_Model_Sdv1Utilisateurs(); - $result = $userM->update(array('droits'=>$droits), 'login IN ('.join(',',$logins).')'); - } - break; - } - - if (empty($result)) { - return false; - } - - return true; - } - - /** - * Override email(s) in surveillances - * @param string $login - * @param string $email - * @throws SoapFault - * @return int - */ - public function setSurveillancesMail($login, $email) - { - $this->authenticate(); - - try { - $surveillanceM = new Application_Model_JoSurveillancesSite(); - $result = $surveillanceM->update(array('email'=>$email), "login='$login'"); - } catch (Zend_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } - - return $result; - } - - - /** - * Remove access to the children - * @param array $toDelete - * @param int $idClient - * @param string $service - */ - protected function _deleteAccess($toDelete, $idClient, $service=null) - { - $iDbCrm = new WDB('sdv1'); - $strLogin = ''; - - //Modification sur les droits des services - if ( count(toDelete)>0 ) { - foreach ($toDelete as $droit) { - $query = "UPDATE clients_services SET droits=TRIM(REPLACE(droits, ' $droit ', ' ')) WHERE idClient='$idClient'"; - $iDbCrm->query($query); - } - } - - if (null !== $service) { - //Récupération des logins utilisateurs du service - $logins = $this->_serviceLogins($idClient, $service); - if (count($logins)>0) { - $strLogin = ' AND login IN('.join(',',$logins->toArray()).')'; - } - } - - //Modification sur les droits utilisateurs - if ( count(toDelete)>0 ) { - foreach ($toDelete as $droit) { - $query = "UPDATE utilisateurs set droits=TRIM(REPLACE(droits, ' $droit ', ' ')) WHERE idClient='$idClient'"; - $query.= $strLogin; - $iDbCrm->query($query); - } - } - } - - /** - * Give a list of logins in a service - * @param int $idClient - * @param string $serviceCode - * @return array - */ - protected function _serviceLogins($idClient, $serviceCode) - { - $serviceCode = strtoupper($serviceCode); - - $userM = new Application_Model_Sdv1Utilisateurs(); - $sql = $userM->select() - ->from(array('u'=>'utilisateurs'), array('login')) - ->join(array('s'=>'utilisateurs_service'), 'u.login=s.login'); - - if ($serviceCode == 'DEFAULT') { - $sql->where('serviceCode=?', null); - } else { - $sql->where('serviceCode=?', $serviceCode); - } - - $logins = $userM->fetchAll($sql)->toArray(); - - return $logins; - } - -} \ No newline at end of file diff --git a/library/WsScore/Gestion/v0.3/Types.php b/library/WsScore/Gestion/v0.3/Types.php deleted file mode 100644 index 380f6ac5..00000000 --- a/library/WsScore/Gestion/v0.3/Types.php +++ /dev/null @@ -1,548 +0,0 @@ - 'ErrorType', - 'RefCommande' => 'RefCommande', - 'InfosDemandeur' => 'InfosDemandeur', - 'ListeCmdPiecesReturn' => 'ListeCmdPiecesReturn', - 'CmdPiecesReturn' => 'CmdPiecesReturn', - 'CmdPiecesDetail' => 'CmdPiecesDetail', - 'InfoCommandePieces' => 'InfoCommandePieces', - 'ListeCmdBilanReturn' => 'ListeCmdBilanReturn', - 'CmdBilanReturn' => 'CmdBilanReturn', - 'CmdBilanDetail' => 'CmdBilanDetail', - 'InfoCommandeBilan' => 'InfoCommandeBilan', - 'ListeCmdActeReturn' => 'ListeCmdActeReturn', - 'CmdActeReturn' => 'CmdActeReturn', - 'CmdActeDetail' => 'CmdActeDetail', - 'InfoCommandeActe' => 'InfoCommandeActe', - 'ListeCmdKbisReturn' => 'ListeCmdKbisReturn', - 'CmdKbisReturn' => 'CmdKbisReturn', - 'CmdKbisDetail' => 'CmdKbisDetail', - 'InfoCommandeKbis' => 'InfoCommandeKbis', - 'ListeCmdAssoReturn' => 'ListeCmdAssoReturn', - 'CmdAssoReturn' => 'CmdAssoReturn', - 'CmdAssoDetail' => 'CmdAssoDetail', - 'InfoCmdAsso' => 'InfoCmdAsso', - 'CommandeReturnType' => 'CommandeReturnType', - 'CmdFiltrePieces' => 'CmdFiltrePieces', - 'CmdStatut' => 'CmdStatut', - 'InfosLoginReturn' => 'InfosLoginReturn', - 'InfosLogin' => 'InfosLogin', - 'ListeConventionsReturn' => 'ListeConventionsReturn', - 'Convention' => 'Convention', - 'AnnonceCollecteReturn' => 'AnnonceCollecteReturn', - 'AnnonceCollecte' => 'AnnonceCollecte', - 'AnnonceEvenement' => 'AnnonceEvenement', - 'NextLoginReturn' => 'NextLoginReturn', - 'NextLoginResult' => 'NextLoginResult', - 'DevisesReturn' => 'DevisesReturn', - 'Devise' => 'Devise', - 'DevisesCoursReturn' => 'DevisesCoursReturn', - 'DevisesCours' => 'DevisesCours', - 'DupliqueAnnonceReturn' => 'DupliqueAnnonceReturn', - 'PieceReturn' => 'PieceReturn', - 'PieceResult' => 'PieceResult', - 'ListeClientsReturn' => 'ListeClientsReturn', - 'Client' => 'Client', - 'SetInfosMandataire' => 'SetInfosMandataire', - 'SetMandataireReturn' => 'SetMandataireReturn', - 'SupprAnnonceCollecteReturn' => 'SupprAnnonceCollecteReturn', - 'SetInfosLoginReturn' => 'SetInfosLoginReturn', - 'SetInfosEntrepIdentite' => 'SetInfosEntrepIdentite', - 'SetInfosEntrepLien' => 'SetInfosEntrepLien', - 'SetInfosEntrepScore' => 'SetInfosEntrepScore', - 'SetInfosEntrepEven' => 'SetInfosEntrepEven', - 'SetInfosEntrepJugement' => 'SetInfosEntrepJugement', - 'SetInfosEntrepDir' => 'SetInfosEntrepDir', - 'SetInfosEntrepInfos' => 'SetInfosEntrepInfos', - 'SetInfosEntrepReturn' => 'SetInfosEntrepReturn', - 'MandatairesReturn' => 'MandatairesReturn', - 'Mandataire' => 'Mandataire', - 'MandataireReturn' => 'MandataireReturn', - 'MandataireDetail' => 'MandataireDetail', - 'ListeJalCollecteReturn' => 'ListeJalCollecteReturn', - 'JalCollecte' => 'JalCollecte', - 'GeoCodeReturn' => 'GeoCodeReturn', - 'GeoCode' => 'GeoCode', - 'ListeUtilisateursReturn' => 'ListeUtilisateursReturn', - 'Utilisateur' => 'Utilisateur', - 'InfosCmdEnquete' => 'InfosCmdEnquete', - 'CmdEnqueteReturn' => 'CmdEnqueteReturn', - 'CmdEnquete' => 'CmdEnquete', - 'CmdEnqueteRIB' => 'CmdEnqueteRIB', - 'LogsClientsReturn' => 'LogsClientsReturn', - 'LogsClients' => 'LogsClients', - 'ListeSurveillancesCsvReturn' => 'ListeSurveillancesCsvReturn', - 'ListeSurveillancesCsv' => 'ListeSurveillancesCsv', - 'RechercheHistoReturn' => 'RechercheHistoReturn', - 'RechercheHistoCriteres' => 'RechercheHistoCriteres', - 'RechercheHistoReponses' => 'RechercheHistoReponses', - 'ClientReturn' => 'ClientReturn', - 'ModeleUtilisateurReturn' => 'ModeleUtilisateurReturn', - 'ModeleUtilisateur' => 'ModeleUtilisateur', - 'ListeDroitsReturn' => 'ListeDroitsReturn', - 'ListePrefsReturn' => 'ListePrefsReturn', - 'ListeFichierSurvReturn' => 'ListeFichierSurvReturn', - 'ListeFichierSurv' => 'ListeFichierSurv', - 'MarquesReturn' => 'MarquesReturn', - 'Marque' => 'Marque', - 'PortefeuilleReturn' => 'PortefeuilleReturn', - 'Portefeuille' => 'Portefeuille', - 'PortefeuilleFiltre' => 'PortefeuilleFiltre', - 'ClientFiltre' => 'ClientFiltre', - 'InfosLoginData' => 'InfosLoginData', - 'StatsUtilisateursReturn' => 'StatsUtilisateursReturn', - 'TribunauxReturn' => 'TribunauxReturn', - 'Tribunal' => 'Tribunal', - 'SearchMandatairesReturn' => 'SearchMandatairesReturn', - 'SearchMandataire' => 'SearchMandataire', - 'PrivilegesCumulReturn' => 'PrivilegesCumulReturn', - 'PrivilegesCumul' => 'PrivilegesCumul', - 'PrivilegesDetailReturn' => 'PrivilegesDetailReturn', - 'PrivilegesDetail' => 'PrivilegesDetail', - 'SearchActReturn' => 'SearchActReturn', - 'EntrepriseActItem' => 'EntrepriseActItem', - 'SupprAnnonceReturn' => 'SupprAnnonceReturn', - 'CommandeEnqueteReturn' => 'CommandeEnqueteReturn', -); \ No newline at end of file diff --git a/library/WsScore/Interne/v0.2/Interne.php b/library/WsScore/Interne/v0.2/Interne.php deleted file mode 100644 index dec33a57..00000000 --- a/library/WsScore/Interne/v0.2/Interne.php +++ /dev/null @@ -1,4205 +0,0 @@ -authenticate(); - //Initialisation - if (empty($tabTypes)) $tabTypes = array('03','04'); - debugLog('I',"Liste des privilèges detail sur $siren ".print_r($tabTypes, true),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iPriv = new MPrivileges(); - $ret = $iPriv->getPrivilegesDetail($siren, $tabTypes); //@todo : date - - $tabRet = array(); - if (count($ret)>0) { - foreach ($ret as $item ) { - $privileges = new PrivilegesDetail(); - $privileges->numDebiteur = $item['numDebiteur']; - $privileges->greffe = $item['greffe']; - $privileges->greffeLib = $item['greffeLib']; - $privileges->dateEven = $item['dateEven']; - $privileges->dateFraiche = $item['dateFraiche']; - $privileges->dateSD = $item['dateSD']; - $privileges->insType = $item['insType']; - $privileges->insTypeLib = $item['insTypeLib']; - $privileges->insNum = $item['insNum']; - $privileges->insDate = $item['insDate']; - $privileges->insDateEch = $item['insDateEch']; - $privileges->insObjet = $item['insObjet']; - $privileges->insMontant = $item['insMontant']; - $privileges->insDev = $item['insDev']; - $privileges->insDateFin = $item['insDateFin']; - $privileges->radDate = $item['radDate']; - $privileges->radMention = $item['radMention']; - $privileges->radPartiel = $item['radPartiel']; - $privileges->radPartMt = $item['radPartMt']; - $privileges->radDev = $item['radDev']; - $privileges->creNom = $item['creNom']; - $privileges->creAdresse1 = $item['creAdresse1']; - $privileges->creAdresse2 = $item['creAdresse2']; - $privileges->creAdresse3 = $item['creAdresse3']; - $privileges->creCP = $item['creCP']; - $privileges->creVille = $item['creVille']; - $privileges->crePays = $item['crePays']; - $privileges->creAutres = $item['creAutres']; - $tabRet[] = $privileges; - } - } - $this->wsLog('privdetail', $siren, join(',',$tabTypes)); - $output = new PrivilegesDetailReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * - * Enter description here ... - * @param string $siren - * @param array $tabTypes - * @return PrivilegesCumulReturn - */ - public function getPrivilegesCumul($siren, $tabTypes=array('03','04')) - { - $this->authenticate(); - //Initialisation - if (empty($tabTypes)) $tabTypes = array('03','04'); - debugLog('I',"Liste des privilèges cumul sur $siren ".print_r($tabTypes, true),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iPriv = new MPrivileges(); - $ret = $iPriv->getPrivilegesCumul($siren, $tabTypes); - $tabRet = array(); - - if (isset($ret['03']) && count($ret['03']>0)){ - $value = $ret['03']; - $priv = new PrivilegesCumul(); - $priv->insType = '03'; - $priv->nb = $value['nb']; - $priv->insTypeLib = $value['insTypeLib']; - $priv->dateFraiche = $value['dateFraiche']; //@todo : date - $priv->dateDerInsc = $value['dateDerInsc']; //@todo : date - $priv->nomDerCre = $value['nomDerCre']; - $priv->numDebiteur = $value['numDebiteur']; - $priv->greffeLib = $value['greffeLib']; - $priv->dateMajSD = $value['dateMajSD']; //@todo : date - $priv->insCumul = $value['insCumul']; - $tabRet[] = $priv; - } - - if (isset($ret['04']) && count($ret['04']>0)){ - $value = $ret['04']; - $priv = new PrivilegesCumul(); - $priv->insType = '04'; - $priv->nb = $value['nb']; - $priv->insTypeLib = $value['insTypeLib']; - $priv->dateFraiche = $value['dateFraiche']; //@todo : date - $priv->dateDerInsc = $value['dateDerInsc']; //@todo : date - $priv->nomDerCre = $value['nomDerCre']; - $priv->numDebiteur = $value['numDebiteur']; - $priv->greffeLib = $value['greffeLib']; - $priv->dateMajSD = $value['dateMajSD']; //@todo : date - $priv->insCumul = $value['insCumul']; - $tabRet[] = $priv; - } - $this->wsLog('privcumul', $siren, print_r($tabTypes,1)); - $output = new PrivilegesCumulReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Liste les mandataires correspondant à un nom donné - * - * @param mixed $codeTribunal Identifiants BODACC du tribunal ou tableau d'Identifiants numériques des cours d'appel - * @param array $type Type de mandataire (A)dministrateur, (M)andataire, (O)ppositions, (N)otaires, a(V)ocat - * @param int $cpDep Code postal ou département du mandataire - * @return SearchMandatairesReturn - */ - public function searchMandataires($nom, $type=array('A','M'), $cpDep=0) - { - $this->authenticate(); - - //Initialisation - if (empty($type)) $type = array('A','M'); - if (empty($cpDep)) $cpDep = 0; - $tabRet = array(); - - debugLog('I',"Recherche de Mandataires '$nom' (Dep=$cpDep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $iInsee = new MInsee(); - $tabTmp = $iInsee->searchMandataires($nom, true, $type, $cpDep); - - foreach ($tabTmp as $i=>$mand) - { - $mandataire = new SearchMandataire(); - $mandataire->id = 'm'.$i; - $mandataire->mand = utf8_encode($mand); - $tabRet[] = $mandataire; - - } - $output = new SearchMandatairesReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des tribunaux ou Compétences demandées - * @param array|string $tabTypes Tableau des types de Compétences demandés 'C':Commerce, 'I':Instance, 'G':TGI, 'A':Préfectures, 'B':Sous-préf, 'D':Tribunal Administratif, 'H':Prud'hommes, 'L': Cour d'Appel, 'M': Tribunal Mixte, 'O':CCI, 'V': Cour Administrative d'Appel - * @return TribunauxReturn - **/ - public function getTribunaux($tabTypes) - { - $this->authenticate(); - - //Initialisation - if (empty($tabTypes)) $tabTypes = array(); - if (is_string($tabTypes)) $tabTypes = (array)$tabTypes; - - $iBodacc = new MBodacc(); - debugLog('I',"Liste des tribunaux demandées",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabTmp = $iBodacc->getListeTribunaux(); - //@todo : Retourner liste en ordre alphabétique - $tabRet = array(); - if (count($tabTypes)==0) { - foreach ($tabTmp as $i => $tribunal){ - $tri = new Tribunal(); - $tri->code = $i; - $tri->nom = $tribunal['nom']; - $tabRet[] = $tri; - } - } else { - foreach ($tabTmp as $i=>$tribunal){ - $type = substr($i,-1); - if ( in_array($type, $tabTypes) ){ - $tri = new Tribunal(); - $tri->code = $i; - $tri->nom = $tribunal['nom']; - $tabRet[] = $tri; - } - } - } - $this->wsLog('tribunaux', '', print_r($tabTypes,1)); - $output = new TribunauxReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Enregistrement des informations saisie manuellement - * @param string $siret - * @param int $idEntreprise - * @param SetInfosEntrepInfos $tabInfos - * @return SetInfosEntrepReturn - */ - public function setInfosEntrep( $siret, $idEntreprise, $tabInfos ) - { - $this->authenticate(); - - Zend_Registry::get('WsLogger')->info(__FUNCTION__.' : '. - print_r($tabInfos, 1)); - - //Initialisation - $tabRet = array(); - $iBodacc = new MBodacc(); - $iInsee = new MInsee(); - $result = false; - - if (!$this->checkEdition()) { - - $error->errnum = 1; - $error->errmsg = 'Code Client Incorrect'; - - } else { - - $siren = substr($siret,0,9); - $iDb = new WDB(); - - $tabIdentite = $tabInfos->identite; - $tabJugement = $tabInfos->jugement; - $tabActio = $tabInfos->actionnaire; - $tabParti = $tabInfos->participation; - $tabScores = $tabInfos->score; - - // Mise à jour de l'identité - if (trim(strtolower($tabIdentite->web))=='http://'){ - $web = ''; - } else { - $web = trim($tabIdentite->web); - } - $tabUpdate = array( - 'isin' => trim($tabIdentite->isin), - 'tel' => trim($tabIdentite->tel), - 'fax' => trim($tabIdentite->fax), - 'web' => $web, - 'mail' => trim($tabIdentite->mail), - 'activite' => stripslashes(trim($tabIdentite->activite)), - 'sirenDoublon' => substr(str_replace(' ','',strtr($tabIdentite->sirenDoublon, '"\'./- ,\*#()',' ')),0,9), - 'waldec' => trim(str_replace(' ','',strtr($tabIdentite->waldec, '"\'./- ,\*#()',' '))), - ); - - /** @todo non traitées : [capital_mt] => 335400, [capital_dev] => EUR **/ - if (!$iDb->update('infos_entrep', $tabUpdate, "siren='$siren'")){ - if (!$iDb->insert('infos_entrep', array_merge(array('siren'=>$siren),$tabUpdate))){ - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - $output = new SetInfosEntrepReturn(); - $output->error = $error; - $output->result = $result; - return $output; - exit; - } - } - // Fin mise à jour identité - - // Opposition INSEE - if ( $tabIdentite->moisOppositionInsee>0 && - $tabIdentite->moisOppositionInsee<=(date('Ym')*1) ){ - - $iDb2 = new WDB('insee'); - if ( !$iDb2->insert('insee_nondiff', array('siren'=>$siren, 'mois'=>$tabIdentite->moisOppositionInsee)) ){ - if ( $iDb2->getLastErrorNum()<>1062 ) - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de l'inscription à la liste des oppositions de la sphère commerciale INSEE pour $siren au mois de ".$tabIdentite['moisOppositionInsee']." : ".EOL.print_r($tabIdentite, true).EOL.$iDb2->getLastError()); - } - - } - // Fin opposition INSEE - - // Domiciliataire - if (!empty($tabIdentite->domiciliataire) && $siren>1000) { - if ($tabIdentite->domiciliataire=='oui' || $tabIdentite->domiciliataire=='non') { - // L'entreprise et ces établissements seront mis à jour automatiquement ce soir - $iDb->query("INSERT IGNORE INTO jo.tabAdrDom (siren,nic,siege, etActif, nom, sigle, enseigne, adrNum, adrBtq, adrTypVoie, adrLibVoie, ville, cp, depComEt, adrComp, cj, apen,apet, dateInsert) - SELECT siren, nic, siege, actif AS etActif, raisonSociale AS nom, sigle, enseigne, adr_num as adrNum, adr_btq AS adrBtq, adr_typeVoie AS adrTypVoie, adr_libVoie AS adrLibVoie, adr_ville AS ville, adr_cp AS cp, CONCAT(adr_dep,adr_com) AS depComEt, adr_comp AS adrComp, cj, ape_entrep AS apen, ape_etab AS apet, DATE(NOW()) as dateInsert - FROM jo.etablissements WHERE siren=$siren;", false); - } - // Si demande de suppression, on force l'indicateur "" - if ($tabIdentite->domiciliataire=='non') { - $tabUpdate=array('pasEntrepDom'=>1); - if (!$iDb->update('tabAdrDom', $tabUpdate, "siren=$siren")) - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de la suppression du marqueur de domiciliation pour $siren :".EOL.print_r($tabUpdate, true).EOL.$iDb->getLastError()); - } - } - // Fin domiciliataire - - - // Insertion des scores - $tabUpdate = array(); - $setScore = false; - if ( $tabScores->encours!='' || $tabScores->encours!=null ){ - $tabUpdate['encours'] = $tabScores->encours; - $setScore = true; - } - if ( $tabScores->scoreSolv!='' ){ - $tabUpdate['scoreSolv'] = $tabScores->scoreSolv; - $setScore = true; - } - if ( $tabScores->scoreDir!='' ){ - $tabUpdate['scoreDir'] = $tabScores->scoreDir; - $setScore = true; - } - if ( $tabScores->scoreConf!='' ){ - $tabUpdate['scoreConf'] = $tabScores->scoreConf; - $setScore = true; - } - if ( $setScore ){ - // Mise à jour des Cute Offs - if ( !$iDb->update('scores_cutoff', $tabUpdate, "siren=$siren") ){ - if ( !$iDb->insert('scores_cutoff', array_merge(array( - 'siren' => $siren, - 'dateInsert' => date('Ymd') - ), $tabUpdate)) ){ - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", print_r($tabScores, true).EOL.$iDb->getLastError()); - } - } - } - // Fin insertion des scores - - // Insertion du jugement - $tabEven = array(); - if (is_array($tabJugement->even->item) && count($tabJugement->even->item)>0){ - foreach($tabJugement->even->item as $even){ - $tabEven[] = $even->code; - } - } else { - $tabEven[] = $tabJugement->even->item->code; - } - $nic = $tabJugement->nic*1; - $entrep = $iInsee->getIdentiteLight($siren, $nic); - if ( $nic>0 && $tebEven[0]->code==6700 && $entrep['Siege']==0 ){ - // Radiation d'un établissement - $tabEven[0]->code = 6600; - } - - if ( count($tabEven)>0 ){ - $idAdmin = str_replace('m','',trim($tabJugement->admin)); - $idMand = str_replace('m','',trim($tabJugement->mand)); - $idOppo = str_replace('m','',trim($tabJugement->oppo)); - - /** Nom et Identifiant de l'opérateur de saisie **/ - $iDbCrm = new WDB('sdv1'); - $rep=$iDbCrm->select('utilisateurs', 'id', "login='".$this->tabInfoUser['login']."'"); - $idUser=$rep[0][0]; - - $tabSource=explode('_',$tabJugement->source); - $source=@$tabSource[0]; - $numJal=@$tabSource[1]; - - $dateSource=WDate::dateT('d/m/Y', 'Ymd', trim($tabJugement->dateParution))*1; - if ($dateSource<20000101) - $dateSource=date('YmdHis'); - - $montant=trim(preg_replace('/[^0-9]/', '', $tabJugement->montant))*1; - $actionsMt=trim(preg_replace('/[^0-9]/', '', $tabJugement->actionsMt))*1; - $actionsNb=trim(preg_replace('/[^0-9]/', '', $tabJugement->actionsNb))*1; - if ($montant>0 && ($actionsNb>0 || $actionsMt>0)) { - if ($actionsNb>0) $actionsMt=$montant/$actionsNb; - elseif ($actionsMt>0) $actionsNb=$montant/$actionsMt; - } - - //@todo : ça ne va pas marcher ici - $strDir=''; - $tabNouvDir = array(); - if ( is_array($tabJugement->nouvDir->item) && count($tabJugement->nouvDir->item)>0 ){ - $tabNouvDir = $tabJugement->nouvDir->item; - } else { - $tabNouvDir[] = $tabJugement->nouvDir; - } - - if (count($tabNouvDir)>0) { - foreach( $tabNouvDir as $dir ){ - if ( intval($dir->Fonc)>0 ){ - $strDir.= $iBodacc->getFctDir( - $dir->Fonc.' : '. - $dir->Genre.' '. - ucwords(strtolower($dir->Pre)).' '. - strtoupper($dir->Nom) - ); - $strDir.= ', domicilié à '.$dir->Dom.'. '; - } - } - } - - if ( trim($tabJugement->nouvAdrCp)<>'' ){ - $strAdr = stripslashes(trim($tabJugement->nouvAdr).', '. - trim($tabJugement->nouvAdrCp).' '. - trim($tabJugement->nouvAdrVille)); - } else { - $strAdr=''; - } - - if (count($tabEven)>1){ - $strEven = implode(';',array_slice($tabEven, 1)); - } else { - $strEven = ''; - } - - $tabUpdate = array( - 'strEven' => $strEven, - 'sirenValide' => $iInsee->valideSiren($siren), - 'dateCessationPaiement' => empty($tabJugement->datePaie) ? '' : - WDate::dateT('d/m/Y', 'Y-m-d', trim($tabJugement->datePaie)), - 'dateEffetFinP' => empty($tabJugement->dateFinPeriode) ? '' : - WDate::dateT('d/m/Y', 'Y-m-d', trim($tabJugement->dateFinPeriode)), - 'tribunal' => trim($tabJugement->tribunal), - 'montant' => $montant, - 'actionsNb' => $actionsNb, - 'inter1type' => 'A', - 'inter1id' => $idAdmin, - 'inter1nom' => $iInsee->getMandatairesParId($idAdmin), - 'inter2type' => 'M', - 'inter2id' => $idMand, - 'inter2nom' => $iInsee->getMandatairesParId($idMand), - 'inter3type' => 'O', - 'inter3id' => $idOppo, - 'inter3nom' => $iInsee->getMandatairesParId($idOppo), - 'complement' => stripslashes(trim($tabJugement->comp)), - 'nouvActivite' => stripslashes(trim($tabJugement->nouvActivite)), - 'nouvDir' => stripslashes(trim($strDir)), - 'nouvAdr' => $strAdr, - 'nouvFJ' => trim($tabJugement->nouvFJ), - 'raisonSociale' => $entrep['Nom'], - 'adresse' => $entrep['Adresse'], - 'codePostal' => $entrep['CP'], - 'ville' => $entrep['Ville'], - 'source' => $source, - 'idSaisie' => $idUser, - 'parutionIdJal' => $numJal, - 'parutionNum' => $tabJugement->numParution, - ); - $dateJuge = WDate::dateT('d/m/Y','Y-m-d',trim($tabJugement->dateJuge)); - $tabInsert = array_merge( $tabUpdate, array( - 'siren' => $siren, - 'dateJugement' => $dateJuge, - 'typeEven' => $tabEven[0], - 'dateSource' => $dateSource, - )); - if ( !$iDb->insert('annonces', array_merge($tabInsert,array('dateInsert'=>date('YmdHis'))), true) ){ - if ( !$iDb->update('annonces', $tabUpdate, "siren=$siren AND dateJugement='$dateJuge' AND typeEven=".$tabEven[0], true)){ - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - $output = new SetInfosEntrepReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - } - } - - // Insertion actionnaire - if ( trim($tabActio->siren)!='' ) { - $nom = $pays = $dateMAJ = ''; - $ppPm = 'P'; - $pct = trim(str_replace(',','.',$tabActio->pct))*1; - $siren2 = preg_replace('/[^0-9]/','', $tabActio->siren); - $entrep2 = $iInsee->getIdentiteEntreprise($siren); - $nom2 = $entrep2['Nom']; - $pays2 = $entrep2['Pays']; - if ($pays2=='') $pays2='FRA'; - - if (substr($entrep2['FJ'],0,1)*1<>1) $ppPm='M'; - $entrep = $iInsee->getIdentiteEntreprise($siren2); - $nom = $entrep['Nom']; - $pays = trim($entrep['Pays']); - if ($pays=='') $pays='FRA'; - if (trim($tabActio->nom)!='') $nom = $tabActio->nom; - if ($tabActio->pays!='XXX') $pays = $tabActio->pays; - - if (trim($tabActio->dateMAJ)!='JJ/MM/AAAA' && trim($tabActio->dateMAJ)!=''){ - $dateMAJ = WDate::dateT('d/m/Y', 'Y-m-d', trim($tabActio->dateMAJ)); - } - - if ($tabActio->majMin=='maj') $majMin='+'; - elseif ($tabActio->majMin=='min') $majMin='-'; - else $majMin=''; - - $tabUpdate = array( - //'Siren1'=> $siren, - 'Pmin'=> $pct, - 'Pmax'=> $pct, - 'MajMin'=> $majMin, - 'PpPm'=> $ppPm, - //'Siren2'=> $siren2, - //'RaisonSociale'=> $nom, - //'Pays'=> $pays, - 'dateLien'=> $dateMAJ, - ); - - $tabInsert1 = array_merge($tabUpdate, array('ActionPart' => 1), - array( - 'Siren1'=> $siren, - 'Siren2'=> $siren2, - 'RaisonSociale'=> $nom, - 'Pays'=> $pays, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); - $res = $iDb->select('liens', 'count(*)', - "Siren1=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>1)), "siren=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))", true)) - $errMaj=1016166; - } else { - if (!$iDb->insert('liens', $tabInsert1, true)) - $errMaj=1016167; - } - - $tabInsert2 = array_merge($tabUpdate, array('ActionPart' => 2), - array( 'Siren1' => $siren2, - 'Siren2'=> $siren, - 'RaisonSociale'=> $nom2, - 'Pays'=> $pays2, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); - $res=$iDb->select('liens', 'count(*)', "Siren1=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>2)), "siren=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))", true)) - $errMaj=1016168; - } else { - if (!$iDb->insert('liens', $tabInsert2, true)) - $errMaj=1016169; - } - } - // Fin insertion actionnaire - - //Insertion participation - if ( trim($tabParti->siren)<>'' ) { - $nom = $pays = $dateMAJ = ''; - $ppPm = 'P'; - $pct = trim(str_replace(',','.',$tabParti->pct))*1; - $siren2 = preg_replace('/[^0-9]/','', $tabParti->siren); - $entrep2 = $iInsee->getIdentiteEntreprise($siren); - $nom2 = $entrep2['Nom']; - $pays2 = $entrep2['Pays']; - if ($pays2=='') $pays2='FRA'; - - if (substr($entrep2['FJ'],0,1)*1<>1) $ppPm='M'; - $entrep = $iInsee->getIdentiteEntreprise($siren2); - $nom = $entrep['Nom']; - $pays = trim($entrep['Pays']); - if ( $pays=='' ) $pays='FRA'; - if ( trim($tabParti->nom)<>'' ) $nom=$tabParti->nom; - if ( $tabParti->pays<>'XXX' ) $pays=$tabParti->pays; - - if (trim($tabParti->dateMAJ)<>'JJ/MM/AAAA' && trim($tabParti->dateMAJ)<>'') - $dateMAJ=WDate::dateT('d/m/Y', 'Y-m-d', trim($tabParti->dateMAJ)); - - if ($tabParti->majMin=='maj') $majMin='+'; - elseif ($tabParti->majMin=='min') $majMin='-'; - else $majMin=''; - - $tabUpdate = array( - 'Pmin'=> $pct, - 'Pmax'=> $pct, - 'MajMin'=> $majMin, - 'PpPm'=> $ppPm, - 'dateLien'=> $dateMAJ, - ); - - $tabInsert1 = array_merge($tabUpdate, array( 'ActionPart' => 2 ), - array( 'Siren1'=> $siren, - 'Siren2'=> $siren2, - 'RaisonSociale'=> $nom, - 'Pays'=> $pays, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); - $res=$iDb->select('liens', 'count(*)', "Siren1=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>2)), "siren=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))", true)) - $errMaj=10168; - } else { - if (!$iDb->insert('liens', $tabInsert1, true)) - $errMaj=10169; - } - - $tabInsert2 = array_merge($tabUpdate, array( 'ActionPart' => 1 ), - array( 'Siren1'=> $siren2, - 'Siren2'=> $siren, - 'RaisonSociale'=> $nom2, - 'Pays'=> $pays2, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); - $res=$iDb->select('liens', 'count(*)', "Siren1=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>1)), "siren=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))", true)) - $errMaj=10170; - } else { - if (!$iDb->insert('liens', $tabInsert2, true)) - $errMaj=10171; - } - } - // Fin insertion participation - - if ($errMaj>0){ - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - } else { - $result = true; - } - } - $output = new SetInfosEntrepReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Commande de bilan - * @param InfoCommandeBilan $infoCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdBilanReturn - */ - public function setCmdBilan( InfoCommandeBilan $infoCommande, InfosDemandeur $infosDemandeur ) - { - - } - - /** - * Renvoi des informations sur une commande de bilan - * @param string $reference - * @return CmdBilanReturn - */ - public function getCmdBilan( $reference ) - { - - } - - /** - * Commande d'acte - * @param InfoCommandeActe $infoCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdActeReturn - */ - public function setCmdActe( $infoCommande, $infosDemandeur ) - { - - } - - /** - * Renvoi des informations sur une commande d'acte - * @param string $reference - * @return CmdActeReturn - */ - public function getCmdActe( $reference ){} - - /** - * Commande de kbis - * @param InfoCommandeKbis $infoCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdKbisReturn - */ - public function setCmdKbis( InfoCommandeKbis $infoCommande, InfosDemandeur $infosDemandeur ) - { - $this->authenticate(); - - $error = new ErrorType(); - $ref = new RefCommande(); - //Vérifier les informations - switch($infoCommande->mode) - { - case 'courrier': break; - case 'mail': break; - default: - exit; break; - } - if (empty($infoCommande->siren)) - { - $error->errnum = 0; - $error->errmsg = 'Erreur SIREN invalide'; - } - else - { - $login = $_SERVER['PHP_AUTH_USER']; - // Insertion des données commande - $dataCommandes = array( - 'user_login' => $login, - 'user_email' => $this->tabInfoUser['email'], - 'type' => 'kbis', - 'demandeurReference' => $infosDemandeur->reference, - 'demandeurEmail' => $infosDemandeur->email, - 'demandeurTel' => $infosDemandeur->tel, - 'demandeurNom' => $infosDemandeur->nom, - 'demandeurService' => $infosDemandeur->service, - 'demandeurSociete' => $infosDemandeur->societe, - 'demandeurAdresse' => $infosDemandeur->adresse, - 'demandeurCp' => $infosDemandeur->cp, - 'demandeurVille' => $infosDemandeur->ville, - 'infoCommande' => serialize($infoCommande) - ); - try { - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $commande = new Application_Model_Commandes(); - $commande_id = $commande->insert($dataCommandes); - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - if ($commande_id) - { - //Enregistrement des détails de commande - $dataCommandesKbis = array( - 'commande_id' => $commande_id, - 'siren' => $infoCommande->siren, - 'raisonSociale' => '', - 'fichier' => '', - 'partenaireRequete' => '', - 'partenaireReponse' => '', - ); - try { - $commandeKbisTable = new Application_Model_CommandesPieces(); - $commandeKbisTable->insert($dataCommandesKbis); - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - try { - $row = $commande->find($commande_id); - $data = $row->current(); - $ref->reference = $data->id; - $ref->dateCommande = $data->date_added; - $ref->dateMaj = $data->date_updated; - $ref->dateReception = $data->date_closed; - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - $error->errnum = 0; - $error->errmsg = "Commande Introuvable"; - } - } - else - { - $error->errnum = 0; - $error->errmsg = "Erreur enregistrement commande"; - } - } - $output = new CmdKbisReturn(); - $cmd = new CmdKbisDetail(); - $cmd->infoCommande = $infoCommande; - $cmd->infosDemandeur = $infosDemandeur; - $cmd->refCommande = $ref; - $output->commande = $cmd; - $output->error = $error; - return $output; - } - - /** - * Renvoi des informations sur une commande de Kbis - * @param string $reference - * @return CmdKbisReturn - */ - public function getCmdKbis( $reference ){} - - /** - * Commande de privilèges et nantissements par email - * @param InfoCommandePieces $infoCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdPiecesReturn - */ - public function setCmdPieces( $infoCommande, $infosDemandeur ) - { - $this->authenticate(); - $error = new ErrorType(); - $ref = new RefCommande(); - if (!empty($infoCommande->siren)){ - //Vérification SIREN - // Insertion des données commande - $dataCommandes = array( - 'user_login' => $this->tabInfoUser['login'], - 'user_email' => $this->tabInfoUser['email'], - 'type' => 'pieces', - 'demandeurReference' => $infosDemandeur->reference, - 'demandeurEmail' => $infosDemandeur->email, - 'demandeurTel' => $infosDemandeur->tel, - 'demandeurNom' => $infosDemandeur->nom, - 'demandeurService' => $infosDemandeur->service, - 'demandeurSociete' => $infosDemandeur->societe, - 'demandeurAdresse' => $infosDemandeur->adresse, - 'demandeurCp' => $infosDemandeur->cp, - 'demandeurVille' => $infosDemandeur->ville, - 'infoCommande' => serialize($infoCommande) - ); - try { - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $commande = new Application_Model_Commandes(); - $commande_id = $commande->insert($dataCommandes); - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - if ($commande_id){ - //Enregistrement des détails de commande - $dataCommandesPieces = array( - 'commande_id' => $commande_id, - 'siren' => $infoCommande->siren, - 'raisonSociale' => '', - 'fichier' => '', - ); - try { - $commandePieces = new Application_Model_CommandesPieces(); - $commandePieces->insert($dataCommandesPieces); - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - - try { - $row = $commande->find($commande_id); - $data = $row->current(); - $ref->reference = $data->id; - $ref->dateCommande = $data->date_added; - $ref->dateMaj = $data->date_updated; - $ref->dateReception = $data->date_closed; - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - $error->errnum = 0; - $error->errmsg = "Commande Introuvable"; - } - } else { - $error->errnum = 0; - $error->errmsg = "Erreur enregistrement commande"; - } - } else { - $error->errnum = 0; - $error->errmsg = 'Erreur SIREN invalide'; - } - $output = new CmdPiecesReturn(); - $cmd = new CmdPiecesDetail(); - $cmd->infoCommande = $infoCommande; - $cmd->infosDemandeur = $infosDemandeur; - $cmd->refCommande = $ref; - $output->error = $error; - return $output; - } - - /** - * Renvoi des informations sur une commande pièces - * @param string $reference - * @return CmdPiecesReturn - */ - public function getCmdPieces( $reference ) - { - list($typeCommande, $idCommande) = explode('-', $reference); - try { - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $commandeTable = new Application_Model_Commandes(); - $select = $commandeTable->select() - ->where('type = ?', 'pieces') - ->where('id = ?', $idCommande); - $commandeRowset = $commandeTable->fetchAll($select); - } - catch (Zend_Db_Adapter_Exception $e) - { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - $error = new ErrorType(); - $ref = new RefCommande(); - $infoCommande = new InfoCommandePieces(); - $infosDemandeur = new InfosDemandeur(); - if ( $commandeRowset->count()>0 ) - { - $commande = $commandeRowset->current(); - $selectEven = $commandeTable->select() - ->order('date_added DESC')->limit(1); - $evenRowset = $commande->findDependentRowset( - 'Application_Model_CommandesEven', null, $selectEven); - $info = ''; - if($evenRowset->count()>0){ - $even = $evenRowset->current(); - $info = $even->commentaire; - } - $ref->reference = strtoupper($commande->type).'-'.$commande->id; - $ref->dateCommande = $commande->date_added; - $ref->dateMaj = $commande->date_updated; - $ref->dateReception = $commande->date_closed; - $ref->info = $info; - $ref->fichier = ''; // @todo : Détecter le fichier - $ref->login = $commande->user_login; - $infoCommande = unserialize($commande->infoCommande); - $infosDemandeur->reference = $commande->demandeurReference; - $infosDemandeur->email = $commande->demandeurEmail; - $infosDemandeur->tel = $commande->demandeurTel; - $infosDemandeur->nom = $commande->demandeurNom; - $infosDemandeur->service = $commande->demandeurService; - $infosDemandeur->societe = $commande->demandeurSociete; - $infosDemandeur->adresse = $commande->demandeurAdresse; - $infosDemandeur->cp = $commande->demandeurCp; - $infosDemandeur->ville = $commande->demandeurVille; - } - else - { - $error->errnum = 0; - $error->errmsg = 'Référence inconnue'; - } - $output = new CmdPiecesReturn(); - $cmd = new CmdPiecesDetail(); - $cmd->refCommande = $ref; - $cmd->infoCommande = $infoCommande; - $cmd->infosDemandeur = $infosDemandeur; - $output->commande = $cmd; - $output->error = $error; - return $output; - } - - /** - * Retourne la liste des commandes de pièces ainsi que leur détails - * @param CmdFiltrePieces $filtre - * @param int $position - * @param int $nbRep - * @return ListeCmdPiecesReturn - */ - public function getListeCmdPieces( $filtre, $position = 0, $nbRep = 20 ) - { - $error = new ErrorType(); - //Traitements des filtres pour générer la requête SQL - - //Selection - $nbCommandes = 0; - try - { - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $commandeTable = new Application_Model_Commandes(); - $select = $commandeTable->select()->where('type = ?', 'pieces'); - $countRowset = $commandeTable->fetchAll($select); - $nbCommandes = $countRowset->count(); - $select->order('date_added DESC')->limit($nbRep, $position); - $commandeRowset = $commandeTable->fetchAll($select); - } - catch (Zend_Db_Adapter_Exception $e) - { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - $error->errnum = 1; - $error->errmsg = 'Erreur'; - } - - if ( $commandeRowset->count()>0 ) - { - $liste = array(); - foreach ($commandeRowset as $commande) - { - $selectEven = $commandeTable->select() - ->order('date_added DESC')->limit(1); - $evenRowset = $commande->findDependentRowset( - 'Application_Model_CommandesEven', null, $selectEven); - $info = ''; - if($evenRowset->count()>0){ - $even = $evenRowset->current(); - $info = $even->commentaire; - } - - $ref = new RefCommande(); - $ref->reference = strtoupper($commande->type).'-'.$commande->id; - $ref->dateCommande = $commande->date_added; - $ref->dateMaj = $commande->date_updated; - $ref->dateReception = $commande->date_closed; - $ref->info = $info; - $ref->fichier = ''; // @todo : Détecter le fichier - $ref->login = $commande->user_login; - - $infoCommande = new InfoCommandePieces(); - $infoCommande = unserialize($commande->infoCommande); - - $infosDemandeur = new InfosDemandeur(); - $infosDemandeur->reference = $commande->demandeurReference; - $infosDemandeur->email = $commande->demandeurEmail; - $infosDemandeur->tel = $commande->demandeurTel; - $infosDemandeur->nom = $commande->demandeurNom; - $infosDemandeur->service = $commande->demandeurService; - $infosDemandeur->societe = $commande->demandeurSociete; - $infosDemandeur->adresse = $commande->demandeurAdresse; - $infosDemandeur->cp = $commande->demandeurCp; - $infosDemandeur->ville = $commande->demandeurVille; - - $cmd = new CmdPiecesDetail(); - $cmd->refCommande = $ref; - $cmd->infoCommande = $infoCommande; - $cmd->infosDemandeur = $infosDemandeur; - - $liste[] = $cmd; - } - } - - $output = new ListeCmdPiecesReturn(); - $output->error = $error; - $output->nbCommandes = $nbCommandes; - $output->liste = $liste; - return $output; - } - - /** - * Retourne la liste des statuts de commande - * @param string $type - * @return CmdStatut[] - */ - public function getListeCmdStatut( $type ) - { - Zend_Registry::get('WsLogger')->info("getListeStatut - ".$type); - try { - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $dbStatut = new Application_Model_CommandesStatut(); - $result = $dbStatut->fetchAll(array("commande_type = '$type'")); - } - catch (Zend_Db_Adapter_Exception $e) - { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - $listeStatut = array(); - if (count($result)>0) - { - foreach($result as $r) - { - $statut = new CmdStatut(); - $statut->code = $r['code']; - $statut->lib = $r['libelle']; - $listeStatut[] = $statut; - } - } - return $listeStatut; - } - - /** - * Spécifier un état défini pour une commande - * (avec déclenchement d'une action) - * @param int $reference - * @param int $statutCode - * @return bool - */ - public function setCmdStatut( $reference, $statutCode) - { - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $dbStatut = new Application_Model_CommandesStatut(); - $row = $dbStatut->fetchRow(array("code = '$statutCode'")); - if ( count($row)>0 && $this->setCommandeEven($reference, $row['lib']) ) - { - if (!empty($row['action'])){ - switch($row['action']){ - case 'CLOSE': - //date_closed - break; - } - } - return true; - } else { - return false; - } - } - - /** - * Spécifier un état pour une commande - * @param int $reference - * @param string $comment - * @return bool - */ - public function setCmdEven ( $reference, $comment ) - { - $this->authenticate(); - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - try { - //Vérifier que la commande existe avec la référence fournie - $commandeTable = new Application_Model_Commandes(); - $commandeRowset = $commandeTable->find($reference); - if ($commandeRowset->count()>0) - { - $commande = $commandeRowset->current(); - //Enregistrer l'événement - $commandeEvenTable = new Application_Model_CommandesEven(); - $insert = $commandeEvenTable->createRow(); - $insert->commande_id = $commande->id; - $insert->commentaire = $comment; - $insert->user_login = $this->tabInfoUser['login']; - $insert->save(); - //Mettre à jour la commande - $commande->date_updated = date('Y-m-d H:i:s'); - $commande->save(); - return true; - } else { - return false; - } - } - catch (Zend_Db_Adapter_Exception $e) - { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - return false; - } - } - - /** - * Ajout du nom de fichier liée à la commande - * @param int $reference - * @param string $filename - * @return bool - */ - public function setCmdDocument( $reference, $filename ) - { - $this->authenticate(); - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - try { - //Vérifier que la commande existe avec la référence fournie - $commandeTable = new Application_Model_Commandes(); - $commandeRowset = $commandeTable->find($reference); - if ($commandeRowset->count()>0) - { - $commande = $commandeRowset->current(); - switch($commande->type) - { - case 'pieces': - $infoCommandePieces = $commande->findDependentRowset('Application_Model_CommandesPieces'); - if ($infoCommandePieces->count()>0) - { - //Update informations pieces - $commandePieces = $infoCommandePieces->current(); - $commandePieces->fichier = $filename; - $commandePieces->save(); - //Mettre à jour la commande - $commande->date_updated = date('Y-m-d H:i:s'); - $commande->save(); - //Mettre à jour les évenements de commande - //@todo - return true; - } - break; - case 'default': - return false; - break; - } - } else { - return false; - } - } - catch (Zend_Db_Adapter_Exception $e) - { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - return false; - } - } - - /** - * Récupère les informations du profil connecté - * @param string $login - * @param string $ipUtilisateur - * @return InfosLoginReturn - */ - public function getInfosLogin($login, $ipUtilisateur = '') - { - $this->authenticate(); - - //Initialisation - if (empty($ipUtilisateur)) $ipUtilisateur = $_SERVER['REMOTE_ADDR']; - $error = new ErrorType(); - - debugLog('I',"getInfosLogin pour $login (IP=$ipUtilisateur)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - //L'utilisateur qui demande les informations est différent - if ($this->tabInfoUser['login']<>$login && - ( $this->tabInfoUser['profil']=='Administrateur' || - $this->tabInfoUser['profil']=='SuperAdministrateur') ) - { - //debugLog('I',"getInfosLogin - Un administrateur veut il des infos sur un login",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - /** Un administrateur veut il des infos sur un login ? **/ - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select( - 'utilisateurs u, clients c', - 'u.login, u.id, u.email, u.password, u.idClient, u.typeCompte, u.actif, u.filtre_ip, u.civilite, u.nom, u.prenom, u.tel, u.fax, u.mobile, u.profil, u.raisonSociale, u.siret, u.adrNum, u.adrIndRep, u.adrTypeVoie, u.adrLibVoie, u.adrCp, u.adrVille, u.adrComp, u.tel, u.fax, u.mobile, u.pref, u.profil, u.dateInscription, u.dateValidation, u.nombreConnexions, u.dateDerniereConnexion, u.droits, u.referenceParDefaut, u.nbReponses, u.formatMail, u.dateDebutCompte, u.dateFinCompte, u.maxFicheId, c.droits AS droitsClients, c.timeout', - "u.login='$login' AND u.idClient=c.id AND u.deleted=0", - false, MYSQL_ASSOC - ); - $tabRep = $rep[0]; - if (count($rep)>0) - { - $timeOutSec=$tabRep['timeout']*60; - if ($timeOutSec==0) $timeOutSec=1800; - $rep = array( - 'login'=> $login, - 'id'=> $tabRep['id'], - 'email'=> $tabRep['email'], - 'typeCompte'=> $tabRep['typeCompte'], - 'idClient'=> $tabRep['idClient'], - 'filtre_ip'=> $tabRep['filtre_ip'], - 'civilite'=> $tabRep['civilite'], - 'nom'=> $tabRep['nom'], - 'prenom'=> $tabRep['prenom'], - 'raisonSociale'=> $tabRep['raisonSociale'], - 'siret'=> $tabRep['siret'], - 'adrNum'=> $tabRep['adrNum'], - 'adrIndRep'=> $tabRep['adrIndRep'], - 'adrTypeVoie'=> $tabRep['adrTypeVoie'], - 'adrLibVoie'=> $tabRep['adrLibVoie'], - 'adrCp'=> $tabRep['adrCp'], - 'adrVille'=> $tabRep['adrVille'], - 'adrComp'=> $tabRep['adrComp'], - 'tel'=> $tabRep['tel'], - 'fax'=> $tabRep['fax'], - 'mobile'=> $tabRep['mobile'], - 'pref'=> $tabRep['pref'], - 'profil'=> $tabRep['profil'], - 'dateInscription'=> $tabRep['dateInscription'], - 'dateValidation'=> $tabRep['dateValidation'], - 'nombreConnexions'=> $tabRep['nombreConnexions'], - 'dateDerniereConnexion'=> $tabRep['dateDerniereConnexion'], - 'droits'=> $tabRep['droits'], - 'droitsClients'=> $tabRep['droitsClients'], - 'timeout'=> $timeOutSec, - 'nbReponses'=> $tabRep['nbReponses'], - 'formatMail'=> $tabRep['formatMail'], - 'reference'=> $tabRep['referenceParDefaut'], - 'dateDebutCompte'=> $tabRep['dateDebutCompte'], - 'dateFinCompte'=> $tabRep['dateFinCompte'], - 'maxFicheId'=> $tabRep['maxFicheId'], - ); - $tabTmp = $iDbCrm->select('clients', 'typeScore', 'id='.$tabRep['idClient'], false, MYSQL_ASSOC); - $tabRep = $tabTmp[0]; - $rep['typeScore'] = $tabRep['typeScore']; - } - } - else - { - //Identification utilisateur - $connected = true; - if (trim($this->tabInfoUser['filtre_ip'])<>'') - { - //debugLog('I',"getInfosLogin test filtre IP",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $connected = checkPlagesIp($this->tabInfoUser['filtre_ip'], $ipUtilisateur); - if (!$connected) - { - debugLog('I',"getInfosLogin Adresse IP $ipUtilisateur non declaree pour le compte $login",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 10818; - $error->errmsg = "Adresse IP $ipUtilisateur non declaree pour ce compte. Contactez votre administrateur !"; - } - } - $rep = array( - 'connected'=> $connected, - 'login'=> $this->tabInfoUser['login'], - 'id'=> $this->tabInfoUser['id'], - 'idClient'=> $this->tabInfoUser['idClient'], - 'email'=> $this->tabInfoUser['email'], - 'typeCompte'=> $this->tabInfoUser['typeCompte'], - 'filtre_ip'=> $this->tabInfoUser['filtre_ip'], - 'ipPasserelle'=> $this->tabInfoUser['ipConnexion'], - 'ipConnexion'=> $ipUtilisateur, - 'civilite'=> $this->tabInfoUser['civilite'], - 'nom'=> $this->tabInfoUser['nom'], - 'prenom'=> $this->tabInfoUser['prenom'], - 'raisonSociale'=> $this->tabInfoUser['raisonSociale'], - 'siret'=> $this->tabInfoUser['siret'], - 'adrNum'=> $this->tabInfoUser['adrNum'], - 'adrIndRep'=> $this->tabInfoUser['adrIndRep'], - 'adrTypeVoie'=> $this->tabInfoUser['adrTypeVoie'], - 'adrLibVoie'=> $this->tabInfoUser['adrLibVoie'], - 'adrCp'=> $this->tabInfoUser['adrCp'], - 'adrVille'=> $this->tabInfoUser['adrVille'], - 'adrComp'=> $this->tabInfoUser['adrComp'], - 'tel'=> $this->tabInfoUser['tel'], - 'fax'=> $this->tabInfoUser['fax'], - 'mobile'=> $this->tabInfoUser['mobile'], - 'pref'=> $this->tabInfoUser['pref'], - 'profil'=> $this->tabInfoUser['profil'], - 'dateInscription'=> $this->tabInfoUser['dateInscription'], - 'dateValidation'=> $this->tabInfoUser['dateValidation'], - 'nombreConnexions'=> $this->tabInfoUser['nombreConnexions'], - 'dateDerniereConnexion'=> $this->tabInfoUser['dateDerniereConnexion'], - 'droits'=> $this->tabInfoUser['droits'], - 'droitsClients'=> $this->tabInfoUser['droitsClients'], - 'timeout'=> $this->tabInfoUser['timeout'], - 'nbReponses'=> $this->tabInfoUser['nbReponses'], - 'formatMail'=> $this->tabInfoUser['formatMail'], - 'reference'=> $this->tabInfoUser['referenceParDefaut'], - 'dateDebutCompte'=> $this->tabInfoUser['dateDebutCompte'], - 'dateFinCompte'=> $this->tabInfoUser['dateFinCompte'], - 'maxFicheId'=> $this->tabInfoUser['maxFicheId'], - 'typeScore'=> $this->tabInfoUser['typeScore'], - ); - //debugLog('I',"getInfosLogin fin ".print_r($rep,true),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } - $result = new InfosLogin(); - $result = arrayToClass($rep, 'InfosLogin'); - $output = new InfosLoginReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Mise à jour des informations du profil connecté - * @param string $login - * @param string $action (delete|actif|desactif|changepwd|new|update) - * @param InfosLoginData $infos - * @return SetInfosLoginReturn - */ - public function setInfosLogin($login, $action, $infos = null) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - $result = false; - - switch($action) - { - case 'delete': - - if ($this->tabInfoUser['profil']=='Administrateur' || - $this->tabInfoUser['profil']=='SuperAdministrateur') { - $tabUpdate = array( 'deleted' => 1 ); - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->update('utilisateurs', $tabUpdate, "login='$login'")){ - $result = true; - } else { - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - } - } - break; - - case 'actif': - case 'desactif': - if ($this->tabInfoUser['profil']=='Administrateur' || - $this->tabInfoUser['profil']=='SuperAdministrateur'){ - if ($action=='actif') $actif = 1; - if ($action=='desactif') $actif = 0; - $tabUpdate = array( 'actif' => $actif ); - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->update('utilisateurs', $tabUpdate, "login='$login'")){ - $result = true; - } else { - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - } - } - - break; - - case 'changepwd': - - $tabUpdate = array( - 'password' => stripslashes($infos->password), - ); - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->update('utilisateurs', $tabUpdate, "login='$login'", true)){ - $result = true; - } else { - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - } - - break; - - case 'new': - - if ($this->tabInfoUser['profil']=='Administrateur' || - $this->tabInfoUser['profil']=='SuperAdministrateur') { - $tabUpdate = array( - 'idClient' => $infos->idClient, - 'login' => $login, - 'password' => stripslashes($infos->password), - 'nom' => stripslashes($infos->nom), - 'prenom' => stripslashes($infos->prenom), - 'referenceParDefaut' => stripslashes($infos->reference), - 'email' => stripslashes($infos->email), - 'tel' => stripslashes($infos->tel_fix), - 'fax' => stripslashes($infos->tel_fax), - 'mobile' => stripslashes($infos->tel_mob), - 'nbReponses' => $infos->rech_nbrep, - 'formatMail' => $infos->formatMail, - 'profil' => (isset($infos->profil) || !in_array($infos->profil, array('SuperAdministrateur','Administrateur', 'Utilisateur')) ) ? $infos->profil : 'Utilisateur', - 'pref' => implode(' ',$infos->pref->item), - 'droits' => implode(' ', $infos->droits->item), - ); - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->insert('utilisateurs', $tabUpdate)){ - $result = true; - } else { - $error->errnum = 1; - $error->errmsg = 'Création impossible'; - } - } - - break; - - case 'update': - - if (!empty($infos->password)){ - $tabUpdate['password'] = stripslashes($infos->password); - } - $tabUpdate['email'] = stripslashes($infos->email); - $tabUpdate['tel'] = stripslashes($infos->tel_fix); - $tabUpdate['fax'] = stripslashes($infos->tel_fax); - $tabUpdate['mobile'] = stripslashes($infos->tel_mb); - $tabUpdate['nbReponses'] = $infos->rech_nbrep; - $tabUpdate['formatMail'] = $infos->formatMail; - $tabUpdate['pref'] = implode(' ',$infos->pref->item); - - if ($this->tabInfoUser['profil']=='Administrateur' || - $this->tabInfoUser['profil']=='SuperAdministrateur') { - $tabUpdate['droits'] = implode(' ', $infos->droits->item); - $tabUpdate['nom'] = stripslashes($infos->nom); - $tabUpdate['prenom'] = stripslashes($infos->prenom); - $tabUpdate['referenceParDefaut'] = stripslashes($infos->reference); - $tabUpdate['profil'] = isset($infos->profil) ? $infos->profil : 'Utilisateur'; - } - - $iDbCrm = new WDB('sdv1'); - if ($iDbCrm->update('utilisateurs', $tabUpdate, "login='$login'", true)){ - $result = true; - } else { - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - } - - break; - default; - $result = false; - break; - } - - $output = new SetInfosLoginReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - - /** - * Obtention automatique d'un nouveau login pour un client - * @param string $login - * @return NextLoginReturn - */ - public function getNextLogin( $login ) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - - if ($this->tabInfoUser['profil']=='Administrateur' || - $this->tabInfoUser['profil']=='SuperAdministrateur') { - - /** Un administrateur veut créer un nouveau login **/ - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('utilisateurs u, clients c', 'u.idClient, c.racineLogin, c.droits', "u.login='$login' AND u.idClient=c.id"); - $racine = $rep[0]['racineLogin']; - $idClient = $rep[0]['idClient']; - $droitsClients = $rep[0]['droits']; - $rep = $iDbCrm->select('utilisateurs', 'login, length(login) as taille', "login like '$racine%' group by login order by taille desc, login desc LIMIT 0,1"); - if (count($rep)==0) { - $racine.='1'; - } else { - $last_i = preg_replace("/\D/", '',$rep[0]['login'])*1; - $racine.= $last_i+1; - } - $result = new NextLoginResult(); - $result->racine = $racine; - $result->idClient = $idClient; - $result->droitsClients = $droitsClients; - - } else { - - $error->errnum = 0; - $error->errmsg = 'Acces non authorisé!'; - } - $output = new NextLoginReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Enregistre une action utilisateur pour la facturation - * @param string $page - * @param string $siret - * @param int $id - * @param string $ref - * @return void - */ - public function setLog($page, $siret, $id=0, $ref='') - { - $this->authenticate(); - //Initialisation - if (empty($id)) $id = 0; - if (empty($ref)) $ref = ''; - if ( $id!=0 ) { - $ref2=''.$id.'/'.$ref; - } else { - $ref2=$ref; - } - $this->wsLog($page, $siret, $ref2); - debugLog('I',"Insertion d'un log pour la page $page $siret $ref2",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } - - /** - * Met a jour les informations sur un mandataire - * @param SetInfosMandataire $infos Informations sur le mandataire à créer ou à ajouter (ajout si id absent) - * @return SetMandataireReturn - **/ - public function setMandataire(SetInfosMandataire $infos) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - $result = true; - - $iDb = new WDB(); - /** Nom et Identifiant de l'opérateur de saisie **/ - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('utilisateurs', 'id', "login='".$this->tabInfoUser['login']."'"); - $idUser = $rep[0][0]; - - $infos = serialize($tabInfos); - debugLog('I',"Ajout/MAJ de mandaitaire $infos demandée",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $type = substr(strtoupper($infos->type),0,1); - $stag = substr(strtoupper($infos->type),1,1); - if ($stag=='S') { $stag=1; } else { $stag=0; } - if ($type=='A' || $type=='H' || $type=='M' || $type=='V' || - $type=='N' || $type=='T') - { - $tabUpdate=array( - 'sirenGrp' => substr($infos->sirenGrp,0,9)*1, - 'nicGrp' => substr($infos->sirenGrp,9,5)*1, - 'sirenMand' => substr($infos->sirenMand,0,9)*1, - 'nicMand' => substr($infos->sirenMand,9,5)*1, - 'Nom' => ucwords(strtolower($infos->Nom)), - 'Prenom' => ucwords(strtolower($infos->Prenom)), - 'type' => $type, - 'stagiaire' => $stag, - 'coursAppel' => intval($infos->coursAppel), - 'coursAppel2' => intval($infos->coursAppel2), - 'tribunal' => $infos->tribunal, - 'Statut' => strtoupper($infos->Statut), - 'adresse' => ucwords($infos->adresse), - 'adresseComp' => strtoupper($infos->adresseComp), - 'cp' => intval($infos->cp), - 'ville' => strtoupper($infos->ville), - 'tel' => $infos->tel, - 'fax' => $infos->fax, - 'email' => $infos->email, - 'web' => $infos->web, - 'contact' => $infos->contact, - 'idUser' => $idUser, - ); - } - $id = str_replace('m','', ''.$infos->id)*1; - if (intval($id)!=0) { - // MAJ - if (!$iDb->update('tabMandataires', $tabUpdate, "id=$id", true)) { - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - $result = false; - } - } else { - // Insertion - if (!$iDb->insert('tabMandataires', array_merge($tabUpdate,array('dateInsert'=>date('YmdHis'))), true)) { - $error->errnum = 1; - $error->errmsg = 'Insertion impossible'; - $result = false; - } - } - $output = new SetMandataireReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Supprime une annonce issue de la collecte - * @param string $idAnn - * @param string $siret - * @return SupprAnnonceCollecteReturn - */ - public function supprAnnonceCollecte($idAnn, $siret=null) - { - $this->authenticate(); - //Initialisation - if (empty($siret)) $siret = 0; - $error = new ErrorType(); - $result = false; - - if (!$this->checkEdition()) - { - $error->errnum = 1; - $error->errmsg = 'Code Client Incorrect'; - } - else - { - $siren = substr($siret,0,9)*1; - $iDb = new WDB(); - $idAnn = preg_replace('/^0\./','', ''.$idAnn)*1; - - if ($idAnn>0) - { - if ($iDb->update('annonces',array( - 'dateSuppr'=>date('YmdHis'), - 'idSuppr'=>$this->tabInfoUser['id']), - "id=$idAnn", false)) - { - debugLog('I',"Suppression de l'annonce collectée n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $result = true; - } - else - { - $error->errnum = 1; - $error->errmsg = 'Suppression de l\'annonce impossible'; - debugLog('I',"Suppression impossible de l'annonce collectée n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } - } - else - { - $error->errnum = 1; - $error->errmsg = 'idAnn incorrect'; - } - } - $output = new SupprAnnonceCollecteReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Récupère le mandataire par son id - * @param int $idMand Identifiant du mandataire - * @return MandataireReturn - */ - public function getMandataire($idMand) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - - debugLog('I',"Donne le Mandataires correspondant à $idMand",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new classMInsee(); - $tabRet = $iInsee->getMandataire($idMand); - $mandataire = new MandataireDetail(); - $mandataire->Nom = $tabRet['Nom']; - $mandataire->Prenom = $tabRet['Prenom']; - $mandataire->tribunal = $tabRet['tribunal']; - $mandataire->adresse = $tabRet['adresse']; - $mandataire->adresseComp = $tabRet['adresseComp']; - $mandataire->ville = $tabRet['ville']; - $mandataire->email = $tabRet['email']; - $mandataire->web = $tabRet['web']; - $mandataire->contact = $tabRet['contact']; - $output = new MandataireReturn(); - $output->error = $error; - $output->result = $mandataire; - return $output; - } - - /** - * Liste les mandataires compétentes pour une cours d'appel donnée - * - * @param mixed $codeTribunal Identifiants BODACC du tribunal ou tableau d'Identifiants numériques des cours d'appel - * @param array $type Type de mandataire (A)dministrateur, (M)andataire, (O)ppositions, (N)otaires, a(V)ocat - * @return MandatairesReturn - */ - public function getMandataires($codeTribunal=0, $type=array('A','M')) - { - $this->authenticate(); - //Initialisation - $iInsee = new MInsee(); - $error = new ErrorType(); - $trib = serialize($codeTribunal); - debugLog('I',"Liste des Mandaitaires ou Administrateur du Tribunal/Cours d'Appel $trib demandé",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (!is_array($codeTribunal) && strlen($codeTribunal)>3 && $codeTribunal*1==0) - { - // $codeTribunal est un identifiant de tribunal - $iBodacc = new MBodacc(); - $tabTmp = $iInsee->getMandataires(array($iBodacc->getTribunalIdCA($codeTribunal)), true, $type); - } - elseif ($codeTribunal*1==0) - { - // On veut tous les mandataires - $tabTmp = $iInsee->getMandataires(array(), true, $type); - } - elseif (is_array($codeTribunal)) - { - // On veut les mandataires d'une CA - $tabTmp = $iInsee->getMandataires($codeTribunal, true, $type); - } - $tabRet = array(); - foreach ($tabTmp as $i=>$mand){ - $mandataire = new Mandataire(); - $mandataire->id = 'm'.$i; - $mandataire->mand = $mand; - $tabRet[]= $mandataire; - } - $output = new MandatairesReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - - - /** - * - * Retourne la liste des conventions - * @param string $siren - * @return ListeConventionsReturn - */ - public function getListeConventions($siren) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - $tabRet = array(); - - debugLog('I',"Liste des conventions demandée pour le siren $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($siren)<>9){ - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren Siret inexistant'; - - } elseif ($siren*1==0){ - - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren inexistant'; - - } else { - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteEntreprise($siren); - - if (empty($tabIdentite) && isset($tabIdentite['erreur']) && - $tabIdentite['erreur']<>''){ - - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren inexistant'; - - } else { - - $naf = $tabIdentite['NafEnt']; - $trancheEffectif = $tabIdentite['EffEnTr']; - $effectif = $tabIdentite['Effectif']; - $fj = $tabIdentite['entreprise']['FJCodeEntrep']; - - $isolv = new MSolvabilite($siren, $naf, $trancheEffectif, - $effectif, $tabIdentite['CP'], $fj, $tabIdentite['Capital'], - $tabIdentite['CapitalDev'], $tabIdentite['DateCreaEn'], - $tabIdentite['DateCreaEt'] - ); - $noteStructure = $isolv->getSolvabilite(); - $naf4 = $isolv->getNaf4($naf); - - $tabTmp = $iInsee->listeConventions($naf4, $tabIdentite['Dept']); - foreach ($tabTmp as $conv) - { - $convention = new Convention(); - $convention->idCC = $conv['id CC']; - $convention->nomCC = $conv['nom CC']; - $convention->infoCC = $conv['infoCC']; - $convention->editorCC = $conv['editeur CC']; - $convention->nbPageCC = $conv['nb page CC']; - $convention->isbnCC = $conv['isbn CC']; - $convention->dateCC = $conv['date edition CC']; - $convention->joCCmaj = $conv['joCCmaj']; - $tabRet[] = $convention; - } - $this->wsLog('conventions',$siren); - } - } - - $output = new ListeConventionsReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Donne la cours d'appel d'un tribunal par son code - * @param string $codeTribunal Code BODACC sur 6 caractères du tribunal - * @return int - **/ - public function getIdCoursAppel($codeTribunal) - { - $this->authenticate(); - $iBodacc = new MBodacc(); - return $iBodacc->getTribunalIdCA($codeTribunal); - } - - /** - * Duplique une annonce issue de la collecte - * @param string $idAnn - * @param string $siret - * @return DupliqueAnnonceReturn - */ - public function dupliqueAnnonceCollecte($idAnn, $siret = null) - { - $this->authenticate(); - //Initialisation - if (empty($siret)) $siret = ''; - $error = new ErrorType(); - $result = 0; - - if (!$this->checkEdition()) { - $error->errnum = 1; - $error->errmsg = 'Code Client Incorrect'; - } else { - $siren = intval(substr($siret,0,9)); - $nic = intval(substr($siret,9,5)); - $iDb = new WDB(); - $idAnn = intval(preg_replace('/^0\./','', ''.$idAnn)); - if ($idAnn>0 && $siren>1000){ - $res = $iDb->select('annonces', '*', "id=$idAnn", false, MYSQL_ASSOC); - if (count($res)==0) { - $error->errnum = 1; - $error->errmsg = 'Annonce inexistante'; - } else { - $annonce = $res[0]; - // Suppression des zones inexistantes dans la table ou devant être vides - unset($annonce['id']); - unset($annonce['nic']);//=$nic; - $annonce['siren'] = $siren; - $annonce['nic'] = $nic; - if ($iDb->insert('annonces', $annonce, false)) { - debugLog('I',"Duplication de l'annonce collectée n°$idAnn sur $siret",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $result = 1; - } else { - debugLog('I',"Suppression impossible de l'annonce collectée n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 1; - $error->errmsg = 'Suppression de l\'annonce impossible'; - } - } - } - } - $output = new DupliqueAnnonceCollecte(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Récupère le contenu d'une annonce issue de la collecte - * @param string $idAnn - * @param string $siret - * @return AnnonceCollecteReturn - */ - public function getAnnonceCollecte($idAnn, $siret) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - $annonceCollecte = new AnnonceCollecte(); - $siren = substr($siret,0,9)*1; - if (!$this->checkEdition()) { - - $error->errnum = 0; - $error->errmsg = 'Code Client Incorrect'; - - } else { - - $iDb = new WDB(); - debugLog('I',"Lecture de l'annonce collectée n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $idAnn = preg_replace('/^0\./','', ''.$idAnn) * 1; - if ($idAnn>0) - { - $res = $iDb->select('annonces', - 'id, siren, sirenValide, typeEven, strEven, raisonSociale, adresse, codePostal, ville, dateJugement, dateCessationPaiement, dateEffetFinP, numero, inter1type, inter1id, inter1nom, inter2type, inter2id, inter2nom, inter3type, inter3id, inter3nom, inter4type, inter4id, inter4nom, tribunal, montant, actionsNb, complement, infosBrutes, nouvActivite, nouvDir, nouvAdr, nouvFJ, annonce, source, parutionIdJal, parutionNum, dateSource, idSaisie, idAnnonce, dateInsert', - "id=$idAnn", false, MYSQL_ASSOC - ); - if (count($res)>0) - { - $ann = $res[0]; - $annonceCollecte->id = $ann['id']; - $annonceCollecte->siren = $ann['siren']; - $annonceCollecte->raisonSociale = $ann['raisonSociale']; - $annonceCollecte->adresse = $ann['adresse']; - $annonceCollecte->codePostal = $ann['codePostal']; - $annonceCollecte->ville = $ann['ville']; - $annonceCollecte->dateJugement = $ann['dateJugement']; - - //@todo : Les libellées ne sont pas présent LibEven - $tabEven = array(); - $annonceEvenement = new AnnonceEvenement(); - $annonceEvenement->CodeEven = $ann['typeEven']; - $annonceEvenement->LibEven = ''; - $tabEven[] = $annonceEvenement; - if (!empty($ann['strEven'])){ - foreach ( explode(';',$ann['strEven']) as $code ) - { - $annonceEvenement = new AnnonceEvenement(); - $annonceEvenement->CodeEven = $code; - $annonceEvenement->LibEven = ''; - $tabEven[] = $annonceEvenement; - } - } - - $annonceCollecte->even = $tabEven; - $annonceCollecte->dateSource = $ann['dateSource']; - $annonceCollecte->dateCessationPaiement = $ann['dateCessationPaiement']; - $annonceCollecte->dateEffetFinP = $ann['dateEffetFinP']; - $annonceCollecte->tribunal = $ann['tribunal']; - $annonceCollecte->numero = $ann['numero']; - $annonceCollecte->montant = $ann['montant']; - $annonceCollecte->actionsNb = $ann['actionsNb']; - $annonceCollecte->inter1type = $ann['inter1type']; - $annonceCollecte->inter1id = $ann['inter1id']; - $annonceCollecte->inter1nom = $ann['inter1nom']; - $annonceCollecte->inter2type = $ann['inter2type']; - $annonceCollecte->inter2id = $ann['inter2id']; - $annonceCollecte->inter2nom = $ann['inter2nom']; - $annonceCollecte->inter3type = $ann['inter3type']; - $annonceCollecte->inter3id = $ann['inter3id']; - $annonceCollecte->inter3nom = $ann['inter3nom']; - $annonceCollecte->complement = $ann['complement']; - $annonceCollecte->nouvActivite = $ann['nouvActivite']; - $annonceCollecte->nouvDir = $ann['nouvDir']; - $annonceCollecte->nouvAdr = $ann['nouvAdr']; - $annonceCollecte->nouvFJ = $ann['nouvFJ']; - $annonceCollecte->source = $ann['source']; - - debugLog('I',"Lecture de l'annonce collectée n°$idAnn ($siret) : ".$ann['raisonSociale'],__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } - } - else - { - $error->errnum = 745741; - $error->errmsg = 'Selection impossible'; - } - } - $output = new AnnonceCollecteReturn(); - $output->error = $error; - $output->result = $annonceCollecte; - return $output; - } - - /** - * getDevises - * @param string $codeIsoDevise - * @return DevisesReturn - */ - public function getDevises($codeIsoDevise='') - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - if (empty($codeIsoDevise)) $codeIsoDevise = ''; - - debugLog('I',"Liste des devises ou devise $codeIsoDevise demandée",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $tabTmp = $iInsee->getDevises($codeIsoDevise); - - $tabRet = array(); - foreach ($tabTmp as $i=>$dev) - { - if ( $i!='' ){ - $devise = new Devise(); - $devise->devIso = $i; - $devise->devNom = $dev; - $tabRet[] = $devise; - } - } - $output = new DevisesReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des codes devises, libellés, date et valeur - * (toutes les devises ou une seule) - * @param string $devise Devise sur 3 lettres (facultatif) - * @return DevisesCoursReturn - */ - public function getDeviseCours($devise=false) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - - $iDb = new WDB('sdv1'); - if ($devise) $strDevise=" AND c.devise='$devise' "; - else $strDevise=''; - - $tabRet = array(); - - $res = $iDb->select('devise_cours c, devise_liste l', 'c.devise, l.devNom, max(c.date) as dateChange, c.valeur', "c.devise=l.devIso $strDevise GROUP BY c.devise ORDER BY c.devise ASC", false, MYSQL_ASSOC); - foreach ($res as $tabDev) - { - $devise = new DevisesCours(); - $devise->codeDevise = $tabDev['devise']; - $devise->nomDevise = $tabDev['devNom']; - $devise->dateChange = $tabDev['dateChange']; - $devise->valeurDevise = $tabDev['valeur']; - $tabRet[] = $devise; - } - $output = new DevisesCoursReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * getMarques - * @param string $siren - * @param int $idDepot - * @return MarquesReturn - */ - public function getMarques($siren, $idDepot=0) - { - $this->authenticate(); - $this->permission('marques'); - debugLog('I',"Liste des marques déposées pour le siren $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($idDepot)) $idDepot = 0; - $error = new ErrorType(); - $marques = array(); - require_once 'Metier/partenaires/classMMarques.php'; - $iMarque = new MMarques(); - $ret = $iMarque->getMarques($siren, $idDepot); - Zend_Registry::get('WsLogger')->info(__FUNCTION__.' : '. - print_r($ret,1)); - - foreach ($ret as $item) { - if (trim($item['imgLink'])<>'') $idLien = $item['numeroMarque']; - else $idLien = ''; - if ($idDepot==$item['numeroMarque']) { - $marque = new Marque(); - $marque->Marques = $item['nomMarque']; - $marque->Date = $item['dateDepot']; - $marque->Depot = $item['numeroMarque']; - $marque->IdLien = $idLien; - $marque->UrlLien = $item['UrlLien']; - $marque->PdfDispo = $item['pdfLink']; - $marque->Classes = $item['classesMarque']; - $marque->Perimetre = $item['periMarque']; - $marque->DateExpir = $item['dateExpir']; - $marques = array(); - $marques[] = $marque; - break; - } else { - $marque = new Marque(); - $marque->Marques = $item['nomMarque']; - $marque->Date = $item['dateDepot']; - $marque->Depot = $item['numeroMarque']; - $marque->IdLien = $idLien; - $marque->UrlLien = $item['UrlLien']; - $marque->PdfDispo = $item['pdfLink']; - $marques[] = $marque; - } - } - - Zend_Registry::get('WsLogger')->info(__FUNCTION__.' : '. - print_r($marques,1)); - - $this->wsLog('marques',$siren); - $output = new MarquesReturn(); - $output->error = $error; - $output->result = $marques; - return $output; - } - - /** - * Enter description here ... - * @param string $siren - * @param string $piece - * @param string $type - * @param integer $visu - * @param integer $courrier - * @param string $ref - * @return PieceReturn - */ - public function getPiece($siren, $piece='kbis', $type='', $visu=1, $courrier=0, $ref='') - { - $this->authenticate(); - $this->permission('kbis'); - set_time_limit(400); - - if (empty($piece)) $piece = 'kbis'; - if (empty($type)) $type = ''; - if (empty($visu)) $visu = 1; - if (empty($courrier)) $courrier = 1; - if (empty($ref)) $ref = ''; - $error = new ErrorType(); - - $erreur = false; - - $kbisLocalPDF = DOC_WEB_LOCAL."kbis/$piece-$siren.pdf"; - - if (file_exists($kbisLocalPDF) - && date('Ymd', filemtime($kbisLocalPDF))==date('Ymd') - && filesize($kbisLocalPDF)>0 ) { - $size = filesize($kbisLocalPDF); - $erreur = false; - $tabNom = array(); - $ficDist = ''; - $cache = 1; - } else { - exec("php ".APPLICATION_PATH."/../batch/getPieces.php $siren $piece > /dev/null &"); - $ficDist=''; - $size=$cache=0; - } - // On supprimer l'ancien kbis si trop vieux ou vide - if (date('Ymd', filemtime($kbisLocalPDF))<>date('Ymd') - || filesize($kbisLocalPDF)==0) { - unlink($kbisLocalPDF); - } - $result = new PieceResult(); - $result->Siren = $siren; - //@todo : Envoyer vers controlleur - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $result->Url = $hostname.'/data/kbis/'.$piece.'-'.$siren.'.pdf'; - - $result->Taille = $size; - $result->Cache = $cache; - $result->fichier = $ficDist; - $this->wsLog('kbis', $siren, "$cache/$visu/$courrier/$type/$ref"); - $output = new PieceReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Enregistrement de document actes ou status d'association - * @param string $siren Numéro Siren - * @param string $waldec Numéro waldec - * @param string $type Type d'acte - * @param string $libelle Libellé de l'acte - * @param string $date Date des l'acte au format - * @param int $nbPages Nombre de pages dans le fichier - * return boolean - */ - public function setActeAsso( $siren, $waldec, $type, $libelle, $date, $nbPages ) - { - $this->authenticate(); - if (!$this->checkEdition()) { - $this->sendError('0902'); - } - ($type == 'ST') ? $type_acte = 'ST' : $type_acte = ''; - - $data = array( - 'siren' => $siren, - 'waldec' => waldec, - 'pdfLink' => '', - 'pdfSize' => '', - 'pdfVer' => '', - 'pdfPage' => '', - 'date_acte' => WDate::dateT('d/m/Y', 'Y-m-d', $date), - 'type_acte' => $type_acte, - 'type_acte_libelle' => $libelle, - 'nbpages_acte' => $nbPages, - ); - try { - $db = Zend_Db::factory($this->dbConfig->Webservice); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $doc = new Application_Model_AssoActes(); - $doc_id = $doc->insert($data); - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - if ($commande_id) - { - return true; - } - return false; - } - - /** - * Commande de statut association - * @param InfoCmdAsso $infosCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdAssoReturn - */ - public function setCmdAsso( $infosCommande, $infosDemandeur ) - { - $this->authenticate(); - $this->permission('actes'); - //Initialisation - $error = new ErrorType(); - - $iDb = new WDB(); - - $siren = $infosCommande->siren; - $idEntreprise = intval($infosCommande->idEntreprise); - $assoNom = $infosCommande->raisonSociale; - debugLog('I',"commandeAsso pour $assoNom ($siren) début",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren, 0, $idEntreprise); - $assoSigle = $tabIdentite['Sigle']; - $assoAdresse = $tabIdentite['Adresse'].EOL.$tabIdentite['Adresse2']; - $assoCP = $tabIdentite['CP']; - $assoVille = $tabIdentite['Ville']; - - $mail = trim($infosDemandeur->email); - if ($mail=='') $mail = $this->tabInfoUser['email']; - - $tabInsert=array( - 'idUser' => $this->tabInfoUser['id'], - 'source' => 'asso', - 'login' => $this->tabInfoUser['login'], - 'emailCommande' => $mail, - 'siren' => $siren, - 'refUtilisateur' => $infosDemandeur->reference, - 'refDocument' => serialize($infosDemandeur), - 'refCommande' => serialize($infosCommande), - 'dateCommande' => DATETIME, - ); - - $url='http://d2g.refasso.com/Dev2Go.web'; - $referer=''; // http://d2g.refasso.com/dev2go.web?anchor=dem_statuts_02 - $cookie=''; - $post = array( - 'mode'=>20, - 'lBlockID'=>445031, - 'sInputNames'=>'', - 'lFormSubAction'=>100, - 'sLinkTo'=>'dem_statuts_03', - 'iDune_DateDemande_input'=>str_replace('/', '%2F', date('d/m/Y')), - 'iDune_TitreAsso_input'=>urlencode($assoNom), - 'iDune_SigleAsso_input'=>urlencode($assoSigle), - 'iDune_AdresseAsso_input'=>urlencode($assoAdresse), - 'iDune_CpAsso_input'=>urlencode($assoCP), - 'iDune_VilleAsso_input'=>urlencode($assoVille), - 'iDune_TelAsso_input'=>'', - 'iDune_FaxAsso_input'=>'', - 'iDune_EmailAsso_input'=>'', - 'iDune_DateCreaAsso_input'=>'', - 'iDune_DateDerDeclaAsso_input'=>'', - 'iDune_NomDem_input'=>'SCORES+ET+DECISIONS', - 'iDune_PrenomDem_input'=>'Yoann+LE+NAOUR', - 'iDune_AdresseDem_input'=>'19+rue+de+Clairefontaine', - 'iDune_CpDem_input'=>78120, - 'iDune_VilleDem_input'=>'RAMBOUILLET', - 'iDune_TelDem_input'=>'0134573953', - 'iDune_EmailDem_input'=>'asso%40scores-decisions.com', - 'iDune_CGAccepte_input'=>'o', - 'iDune_Statut_input'=>'n', - 'iDune_Archive_input'=>'n', - 'x'=>48, - 'y'=>8, - ); - - $tdeb=microtime(true); - $page=getUrl($url, $cookie, $post, $referer, false, '', '', 7); - $tfin=microtime(true); - $duree=$tfin-$tdeb; - $body=$page['body']; - $fp=@fopen("/tmp/asso-$siren.html", "a"); - @fwrite($fp, $body); - @fclose($fp); - - if (preg_match('/Votre commande est enregistr/i',$body)) - { - @sendMail('production@scores-decisions.com', 'asso@scores-decisions.com', - "Commande de statuts association pour $assoNom ($siren)", - "Association :".EOL.print_r($infosCommande, true).EOL.EOL. - "Demandeur:".EOL.print_r($infosDemandeur, true).EOL.EOL. - "Réponse RefAsso en $duree secondes :".EOL.print_r($page, true) - ); - $iDbCrm = new WDB('sdv1'); - $ret = $iDbCrm->insert('commandes', $tabInsert, true); - - $result = new CmdAssoDetail(); - $result->siren = $siren; - $result->emailCommande = $mail; - $result->dateCommande = DATETIME; - $result->refCmd = 'i'.$ret; - - @sendMail('production@scores-decisions.com', $mail, "Votre commande de statuts association sur $assoNom ($siren)", "Votre demande de statuts sur l'association $assoNom a été prise en compte sous la référence i$ret - ".DATETIME); - $this->wsLog('commandeAsso', $siren, 'i'.$ret.'-'.DATETIME); - debugLog('I',"commandeAsso pour $assoNom ($siren) fin",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } else { - @sendMail('production@scores-decisions.com', 'asso@scores-decisions.com', - "ERREUR lors de lommande de statuts association pour $assoNom ($siren)", "Association :".EOL.print_r($infosCommande, true).EOL.EOL. - "Demandeur:".EOL.print_r($infosDemandeur, true).EOL.EOL. - "Réponse RefAsso en $duree secondes :".EOL.print_r($page, true)); - - $error->errmsg = 'ERREUR'; - $error->errnum = 1; - debugLog('E',"commandeAsso pour $assoNom ($siren) fin",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } - $output = new CmdAssoReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Renvoi des informations sur une commande association - * @param string $reference - * @return CmdAssoReturn - */ - public function getCmdAsso( $reference ){} - - - /** - * Commande d'une enquête sur une entreprise en France ou à l'Internationale - * @param InfosCmdEnquete $infosCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdEnqueteReturn - **/ - public function setCmdEnquete($infosCommande, $infosDemandeur) - { - $this->authenticate(); - $this->permission('enquetec'); - - //Initialisation - $error = new ErrorType(); - $siren = $infosCommande->siren; - - $mail = trim($infosDemandeur->email); - if ($mail=='') $mail = $this->tabInfoUser['email']; - - $tabInsert = array( - 'idUser' => $this->tabInfoUser['id'], - 'source'=> 'intersud', // 'greffes', 'asso', 'graydon' - 'login'=> $this->tabInfoUser['login'], - 'emailCommande'=> $mail, - 'siren'=> $siren, - 'refDocument'=> serialize($infosDemandeur), - 'refCommande'=> serialize($infosCommande), - 'dateCommande'=> DATETIME, - ); - debugLog('I',"Intersud, début sur $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $messageInfo=print_r($infosCommande, 1).EOL.print_r($infosDemandeur,1).EOL; - - $idClient = $this->tabInfoUser['idClient']; - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients', ' nom, racineLogin, InterSudLogin, InterSudPass', "id='$idClient'", false, MYSQL_ASSOC); - $login = trim($rep[0]['InterSudLogin']); - $pass = trim($rep[0]['InterSudPass']); - $nomClient = trim(strtoupper($rep[0]['nom'])); - $strInfoCommande ="NOM et Prénom du client demandeur : ".$infoDemandeur->nom.EOL; - $strInfoCommande.="Email du client demandeur : $mail".EOL; - $strInfoCommande.="Tel/Fax du demandeur : ".$infosDemandeur->tel.' / '.$infosDemandeur->fax.EOL; - $strInfoCommande.="Profil du demandeur : ".trim($infosDemandeur->service).EOL; - $typeEnqLog='enqueteDemNF'; - - if ($login=='' || $pass=='') { - /** Il ne s'agit pas d'un client final, on anonymise la commande **/ - $login = 'YLENA'; // Demandes en test - $pass = 'WYLFE'; - $nomClient = $strInfoCommande = ''; - $typeEnqLog = 'enqueteDem'; - /* ENQUETES EN PROD - $login='FACTURE'; - $pass='AWKROM'; - */ - } - - $url='http://www.intersud.fr/espace_client/espace_client.php'; - $cookie = $referer = ''; - $tabPost = array('login' => $login, 'pwd' => $pass); - $tdeb = microtime(true); - $page = getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - $tabRet=array(); - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Connexion impossible à la plateforme Intersud".EOL.$strInfoCommande); - // wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - //@todo - return array('error'=>array('errnum'=>4563456, 'errmsg'=>'Connexion impossible à la plateforme d\'enquetes'), 'results'=>$tabRet); - } - $tfin = microtime(true); - $duree = $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - $cookie = $page['header']['Set-Cookie']; - - /** Connexion à l'Extranet Intersud - **/ - $url = 'http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, '', $referer, false, '', '', 7); - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - - $fp=@fopen(LOG_PATH."/intersud.log", "a"); - @fwrite($fp, print_r($page,true)); - @fclose($fp); - $tabInterSud=array(); - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[2][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[1][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - - $ref_exp=$tabInterSud['ref_exp']; - $email_exp=$tabInterSud['email_exp']; - $tel_exp=$tabInterSud['tel_exp']; - debugLog('I',"Intersud, formulaire enquête ref $ref_exp, $email_exp, $tel_exp",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $fp=@fopen(LOG_PATH."/intersud.log", "a"); - @fwrite($fp, print_r($matches,true)); - @fwrite($fp, print_r($tabInterSud,true)); - @fclose($fp); - - /** Insertion de la commande en base - **/ - $ret = $iDbCrm->insert('commandes', $tabInsert, true); - $comment = "Référence de la commande chez Scores et Décisions : i$ret - ". - DATETIME."\n". - "Date et heure de la commande : ".date('d/m/Y - H:i')."\n". - "Origine de la commande : $nomClient". - "$strInfoCommande"."\n\n". - - "CA : ".$infosCommande->PrecisionsMontantCA."\n". - "Motif de la demande : ".trim($infosCommande->PrecisionsMotif.' '.$infosCommande->PrecisionsAutre)."\n". - "Type de la demande : ".$infosCommande->PrecisionsType."\n". - "Anciennete de la relation : ".$infosCommande->Anciennete.' '.$infosCommande->AncienneteDuree."\n". - "Observations : ".$infosCommande->Observation.EOL; - - if ($infosCommande->ImpayeesChoix<>'non') - $comment.="Impayé(s) : ".$infosCommande->ImpayeesNombre." impayé(s) pour un montant de ".$infosCommande->ImpayeesMontant." en date du ".$infosCommande->ImpayeesDate.EOL; - - if ($infosCommande->RetardPaiementChoix<>'non') - $comment.="Retard(s) de paiement : ".$infosCommande->RetardPaiementNombre." retard(s) pour un montant de ".$infosCommande->RetardPaiementMontant." en date du ".$infosCommande->RetardPaiementDate.EOL; - - if ($infosCommande->LitigeChoix<>'non') - $comment.="Présence de litige(s) : ".$infosCommande->LitigePrecisions.EOL; - - $enqType=0; - $enqDelai=7; - switch (strtolower($infosCommande->Type)) { - case 'premier': $enqType=0; $enqDelai=6; break; - case 'gold': $enqType=1; break; - case 'distrimat': $enqType=2; break; - case 'star': $enqType=3; break; - case 'avis_bancaire': $enqType=4; break; - case 'autre': $enqType=5; break; - } - - /** Ajout du RIB si communiqué **/ - if (@trim(implode(' ', $infosCommande->RIB))<>'') - $iDbCrm->insert('banques', array( - 'siren'=>$siren, - 'libBanqueGuichet'=>'', - 'precis'=>1, - 'codeBanque'=>$infosCommande->RIB->banque, - 'codeGuichet'=>$infosCommande->RIB->guichet, - 'numCompte'=>$infosCommande->RIB->compte.$infosCommande->RIB->cle, - 'dateSource'=>DATETIME, - ), true); - - /** Remplissage du formulaire d'enquête pour soumission à Intersud **/ - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren); - $tabPost = array( - 'soc'=>$tabIdentite['Nom'], - 'cible_enk'=>9, // 9 - 'siret'=>$siren, - 'acti'=>'', - 'soc_exp'=>$tabInterSud['soc_exp'], - 'type_enk'=>$enqType, // 0=Premier, 1=Gold, 2=Distrimat, 3=Star, 4=Avis bancaire, 5=Autre - 'nom_diri'=>'', - 'adr'=>$tabIdentite['Adresse'], - 'ref_exp'=>$tabInterSud['ref_exp'], - 'autre_type_enk'=>'', // Texte libre - 'adr2'=>$tabIdentite['Adresse2'], - 'delai_enk'=>$enqDelai, // 6=24h, 7=72h, 8=+de5jours - 'ville'=>$tabIdentite['Ville'], - 'cp'=>$tabIdentite['CP'], - 'pays'=>'', // International ? - 'nom_exp'=>$tabInterSud['nom_exp'], - 'tel'=>$tabIdentite['Tel'], - 'port'=>$infosCommande->AutreTel, - 'tel_exp'=>$tabInterSud['tel_exp'], - 'bank'=>trim(implode(' ', $infosCommande->RIB)), - 'int_enk'=>$tabInterSud['int_enk'], // International ? - 'encours'=>$infosCommande->Encours, - 'nb_ech'=>$infosCommande->NbEcheances, - 'delai2_enk'=>$tabInterSud['delai2_enk'], // International ? - 'email_exp'=>$tabInterSud['email_exp'], - 'cred'=>'', - 'comment'=>urlencode($comment), - 'val_ret'=>$tabInterSud['val_ret'], - ); - $url='http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb=microtime(true); - $page=getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - $tabRet=array(); - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Validation impossible du formulaire d'enquête Intersud".EOL.$strInfoCommande); - //@todo - return array('error'=>array('errnum'=>456345, 'errmsg'=>'Connexion impossible à la plateforme d\'enquetes 3'), 'results'=>$tabRet); - } - $tfin=microtime(true); - $duree+=$tfin-$tdeb; - $referer=$url; - $body=$page['body']; - - $result = new CmdEnquete(); - $result->siren = $siren; - $result->emailCommande = $mail; - $result->dateCommande = DATETIME; - $result->refCmd = 'i'.$ret; - - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Commande d'enquete sur $siren", $comment.EOL.EOL.'---------------------------------'.EOL.$messageInfo.EOL.EOL.'---------------------------------'.EOL.$body); - @sendMail('production@scores-decisions.com', $mail, "Votre demande d'enquete sur ".$tabIdentite['Nom']." ($siren)", "Votre demande d'enquête sur la société ".$tabIdentite['Nom']." a été prise en compte sous la référence i$ret - ".DATETIME); - $this->wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - - /** Gestion de la déconnexion **/ - $url='http://intersud.fr/espace_client/index.php?code_ret=9'; - $tdeb=microtime(true); - $page=getUrl($url, $cookie, '', $referer, false, '', '', 7); - $tfin=microtime(true); - $duree+=$tfin-$tdeb; - - $ret = $iDbCrm->update('commandes', array('dureeCommande'=>round($duree,3)), "idCommande=$ret"); - - $output = new CmdEnqueteReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Récupération d'un kbis - * @param string $siren - * @param int $visu - * @param int $courrier - * @param string $mail - * @param string $ref - * @return PieceReturn - */ - public function getKbis($siren, $visu=1, $courrier=0, $mail='', $ref='') - { - return $this->getPiece($siren, 'kbis', '', $visu, $courrier, $ref); - } - - /** - * Récupère les informations du profil connecté - * @param string $login - * @param int $idClient - * @return ListeUtilisateursReturn - */ - public function getListeUtilisateurs($login, $idClient=-1) - { - $this->authenticate(); - - //Initialisation - if (empty($idClient)) $idClient = -1; - $error = new ErrorType(); - $tabRet = array(); - - if ($this->tabInfoUser['profil']<>'Administrateur' && - $this->tabInfoUser['profil']<>'SuperAdministrateur') - { - $error->errnum = 1; - $error->errmsg = 'Profil non administrateur'; - } else { - $iDbCrm = new WDB('sdv1'); - if ($idClient==-1){ - $rep = $iDbCrm->select('utilisateurs', 'idClient', "login='$login'"); - $idClient = $rep[0][0]; - } - if ($idClient==-1){ - $error->errnum = 1; - $error->errmsg = 'idClient=0'; - } else { - $rep = $iDbCrm->select('utilisateurs', 'id, idClient, login, email, actif, nom, prenom, referenceParDefaut', "idClient='$idClient' AND deleted=0 ORDER BY login ASC", false, MYSQL_ASSOC); - foreach ($rep as $uti){ - $utilisateur = new Utilisateur(); - $utilisateur->idUti = $uti['id']; - $utilisateur->idClient= $uti['idClient']; - $utilisateur->login = $uti['login']; - $utilisateur->email = $uti['email']; - $utilisateur->actif= $uti['actif']; - $utilisateur->nom = $uti['nom']; - $utilisateur->prenom = $uti['prenom']; - $utilisateur->reference = $uti['referenceParDefaut']; - $tabRet[]= $utilisateur; - } - } - } - $output = new ListeUtilisateursReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Créations/Modification d'utilisateurs - * @param integer $idClient - * @param SetUtilisateurs[] $users - * @return UtilisateursReturn - */ - protected function setUtilisateurs($idClient, $users) - { - $this->authenticate(); - $error = new ErrorType(); - $result = false; - //idClient existe - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients', 'id, nom, actif, test, racineLogin, siren, nic, droits, filtres_ip, typeAcces, typeScore, accesPieces, accesKbis, accesInvestigations, accesInternationnal, accesEnquetes, miseSousSurveillance', "1 AND id='$idClient'", false, MYSQL_ASSOC); - if (count($rep)>0){ - $client = $rep[0]; - $idClient = $client['id']; - if (count($users)>0){ - foreach($users as $user){ - $tabInfos = array(); - $tabInfos['idClient'] = $idClient; - $tabInfos['login'] = $user->login; - $tabInfos['email'] = ''; - $tabInfos['password'] = $user->password; - $tabInfos['actif'] = ''; - //$tabInfos['deleted'] = ''; - - if (in_array($user->typeCompte, array('TEST', 'PROD'))){ - $tabInfos['typeCompte'] = $user->typeCompte; - } else { - $tabInfos['typeCompte'] = 'PROD'; - } - - //$tabInfos['filtre_ip'] = ''; - - //SetInfosLogin - $tabInfos['civilite'] = ''; - $tabInfos['nom'] = ''; - $tabInfos['prenom'] = ''; - - //Identique au client - $tabInfos['raisonSociale'] = ''; - $tabInfos['siret'] = ''; - $tabInfos['adrNum'] = ''; - $tabInfos['adrInRep'] = ''; - $tabInfos['adrTypeVoie'] = ''; - $tabInfos['adrLibVoie'] = ''; - $tabInfos['adrCp'] = ''; - $tabInfos['adrVille'] = ''; - $tabInfos['adrComp'] = ''; - $tabInfos['tel'] = ''; - $tabInfos['fax'] = ''; - $tabInfos['mobile'] = ''; - - $tabInfos['pref'] = ''; - - if (in_array($user->typeCompte, array('Administrateur', 'Utilisateur'))){ - $tabInfos['profil'] = $user->profil; - } else { - $tabInfos['profil'] = 'Utilisateur'; - } - /* - $tabInfos['dateInscription'] = ''; - $tabInfos['dateValidation'] = ''; - */ - - if (empty($user->droits)){ - $tabInfos['droits'] = $client->droits; - } else { - $tabInfos['droits'] = $user->droits; - } - $tabInfos['referenceParDefaut'] = ''; - $tabInfos['nbReponses'] = ''; - $tabInfos['listeEven'] = ''; - $tabInfos['maxFicheId'] = $user->maxFicheId; - - //$tabInfos['dateInsert'] = ''; - - - if (empty($user->id)){ - $iDbCrm->insert('utilisateurs', $tabInfos); - } else { - $iDbCrm->update('utilisateurs', $tabInfos, "id='$user->id'"); - } - - } - } else { - $error->errnum = 1; - $error->errmsg = 'Aucun utiliateur'; - } - } else { - $error->errnum = 1; - $error->errmsg = 'Identifiant client inconnu!'; - } - $output = new UtilisateursReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Création d'un modele pour le préremplisage des données utilisateurs - * @param integer $idClient - * @param string $nom - * @param ModeleUtilisateur $infos - * @return ModeleUtilisateurReturn - */ - protected function setModeleUtilisateur($idClient, $nom, $infos) - { - $this->authenticate(); - - } - - /** - * Création/Modification d'un client - * @param Client $infos - * @param integer $idModele - * @return ClientReturn - */ - public function setClient($infos, $idModele = null) - { - $this->authenticate(); - $error = new ErrorType(); - $result = false; - //Pas SuperAdministrateur - if ($this->tabInfoUser['profil']!='SuperAdministrateur'){ - $error->errnum = 1; - $error->errmsg = 'Profil insuffisant pour cette méthode'; - } else { - $tabInfos = array(); - $tabInfos['nom'] = $infos->nom; - $tabInfos['actif'] = ($infos->actif=='Oui') ? 'Oui' : 'Non' ; - $tabInfos['test'] = ($infos->test=='Oui') ? 'Oui' : 'Non' ; - $tabInfos['racineLogin'] = $infos->racineLogin; - $tabInfos['siren'] = (int) $infos->siren; - $tabInfos['nic'] = (int) $infos->nic; - $tabInfos['tva'] = $infos->tva; - $tabInfos['idClientFacture'] = $infos->idClientFacture; - if ($infos->editerFacture=='Non') { - $tabInfos['editerFacture'] = 'Non' ; - } - $tabInfos['fact_detail'] = ($infos->fact_detail=='Oui') ? 'Oui' : 'Non' ; - $tabInfos['fac_dest'] = $infos->fac_dest; - $tabInfos['fac_adr1'] = $infos->fac_adr1; - $tabInfos['fac_adr2'] = $infos->fac_adr2; - $tabInfos['fac_adr3'] = $infos->fac_adr3; - $tabInfos['fac_email'] = $infos->fac_email; - $tabInfos['fac_tel'] = $infos->fac_tel; - if (in_array($infos->fac_rib, array('BPOSTALE','CCOOP', 'CDNORD'))){ - $tabInfos['fact_rib'] = $infos->fact_rib; - } - $tabInfos['liv_dest'] = $infos->liv_dest; - $tabInfos['liv_adr1'] = $infos->liv_adr1; - $tabInfos['liv_adr2'] = $infos->liv_adr2; - $tabInfos['liv_adr3'] = $infos->liv_adr3; - $tabInfos['liv_email'] = $infos->liv_email; - $tabInfos['liv_tel'] = $infos->liv_tel; - $tabInfos['droits'] = strtolower($infos->droits); - $tabInfos['filtres_ip'] = $infos->filtres_ip; - //$tabInfos['respComSD'] = $infos->respComSD; - if (in_array($infos->typeContrat, array('Contrat','Marché'))){ - $tabInfos['typeContrat'] = $infos->typeContrat; - } - if (in_array($infos->typeAcces, array('userPassword','userPasswordIP', 'IP'))){ - $tabInfos['typeAcces'] = $infos->typeAcces; - } - if (in_array($infos->typeScore, array('20','100'))){ - $tabInfos['typeScore'] = $infos->typeScore; - } - if (!empty($timeout)){ - $tabInfos['timeout'] = $infos->timeout; - } - $tabInfos['accesPieces'] = ($infos->accesPieces=='Oui') ? 'Oui' : 'Non' ; - $tabInfos['accesKbis'] = ($infos->accesKbis=='Oui') ? 'Oui' : 'Non' ; - $tabInfos['accesInvestigations'] = ($infos->accesInvestigations=='Oui') ? 'Oui' : 'Non' ; - $tabInfos['accesInternationnal'] = ($infos->accesInternationnal=='Oui') ? 'Oui' : 'Non' ; - $tabInfos['accesEnquetes'] = ($infos->accesEnquetes=='Oui') ? 'Oui' : 'Non' ; - $tabInfos['miseSousSurveillance'] = ($infos->miseSousSurveillance=='Oui') ? 'Oui' : 'Non' ; - if (in_array($infos->forfaitExtranetPeriode, array('Mensuel','Trimestriel','Semestriel', 'Annuel'))){ - $tabInfos['forfaitExtranetPeriode'] = $infos->forfaitExtranetPeriode; - } - $tabInfos['forfaitExtranetMontant'] = $infos->forfaitExtranetMontant; - if ($infos->reconductionAuto=='Non') { - $tabInfos['reconductionAuto'] = 'Non'; - } - $tabInfos['remarque'] = $infos->remarque; - $tabInfos['forfaitPiecesNb'] = $infos->forfaitPiecesNb; - $tabInfos['forfaitPiecesMt'] = $infos->forfaitPiecesMt; - $tabInfos['forfaitPiecesDep'] = $infos->forfaitPiecesDep; - $tabInfos['forfaitInvestigNb'] = $infos->forfaitInvestigNb; - $tabInfos['forfaitInvestigMt'] = $infos->forfaitInvestigMt; - $tabInfos['forfaitInvestigDep'] = $infos->forfaitInvestigDep; - $tabInfos['tarifIndiscore'] = $infos->tarifIndiscore; - $tabInfos['InterSudLogin'] = $infos->InterSudLogin; - $tabInfos['InterSudPass'] = $infos->InterSudPass; - - $iDbCrm = new WDB('sdv1'); - if (empty($infos->idClient)){ - //Ajout - //$tabInfos['dateInsert'] = now(); - $result = $iDbCrm->insert('clients', $tabInfos, true); - } else { - //Modification - if ($iDbCrm->update('clients', $tabInfos, "id='$infos->idClient'", true)){ - $result = true; - } - } - } - $output = new ClientReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Récupère la liste des clients ou les informations d'un client - * @param integer|boolean $idClient - * @param ClientFiltre $filtre - * @return ListeClientsReturn - */ - public function getListeClients($idClient=false, $filtre=null) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - if (empty($idClient)) $idClient = false; - - $isAuthorized = false; - - if ($this->tabInfoUser['profil']=='Administrateur' && - ($idClient=='false' || $idClient==$this->tabInfoUser['idClient'])){ - $idClient = $this->tabInfoUser['idClient']; - $isAuthorized = true; - } - - if ($this->tabInfoUser['profil']<>'SuperAdministrateur'){ - $error->errnum = 1; - $error->errmsg = 'Profil non administrateur'; - } else { - $isAuthorized = true; - } - - if ($isAuthorized) - { - $strClient = ''; - - if (is_numeric($idClient)) $strClient.=" AND id='$idClient' "; - - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients', - 'id, nom, actif, test, racineLogin, siren, nic, tva, editerFacture, fact_detail, fac_dest, fac_adr1, fac_adr2, fac_adr3, fac_email, fac_tel, fact_rib, liv_dest, liv_adr1, liv_adr2, liv_adr3, liv_email, liv_tel, droits, filtres_ip, dateInsert, dateUpdate, respComSD, typeContrat, dateSignature, typeAcces, typeScore, timeout, accesPieces, accesKbis, accesInvestigations, accesInternationnal, accesEnquetes, miseSousSurveillance, forfaitExtranetPeriode, forfaitExtranetMontant, reconductionAuto, remarque, forfaitPiecesNb, forfaitPiecesMt, forfaitPiecesDep, forfaitInvestigNb, forfaitInvestigMt, forfaitInvestigDep, tarifIndiscore', - "1 $strClient", - false, - MYSQL_ASSOC); - $tabRet = array(); - foreach ($rep as $uti) - { - $client = new Client(); - $client->idClient = $uti['id']; - $client->nom = $uti['nom']; - $client->actif = $uti['actif']; - $client->test = $uti['test']; - $client->racineLogin = $uti['racineLogin']; - $client->siren = $uti['siren']; - $client->nic = $uti['nic']; - $client->tva = $uti['tva']; - $client->editerFacture = $uti['editerFacture']; - $client->fact_detail = $uti['fact_detail']; - $client->fac_dest = $uti['fac_dest']; - $client->fac_adr1 = $uti['fac_adr1']; - $client->fac_adr2 = $uti['fac_adr2']; - $client->fac_adr3 = $uti['fac_adr3']; - $client->fac_email = $uti['fac_email']; - $client->fac_tel = $uti['fac_tel']; - $client->fact_rib = $uti['fact_rib']; - $client->liv_dest = $uti['liv_dest']; - $client->liv_adr1 = $uti['liv_adr1']; - $client->liv_adr2 = $uti['liv_adr2']; - $client->liv_adr3 = $uti['liv_adr3']; - $client->liv_email = $uti['liv_email']; - $client->liv_tel = $uti['liv_tel']; - $client->droits = strtolower($uti['droits']); - $client->timeout = $uti['timeout']; - $client->filtres_ip = $uti['filtres_ip']; - $client->dateInsert = $uti['dateInsert']; - $client->dateUpdate = $uti['dateUpdate']; - $client->respComSD = $uti['respComSD']; - $client->typeContrat = $uti['typeContrat']; - $client->dateSignature = $uti['dateSignature']; - $client->typeAcces = $uti['typeAcces']; - $client->typeScore = $uti['typeScore']; - $client->accesPieces = $uti['accesPieces']; - $client->accesKbis = $uti['accesKbis']; - $client->accesInvestigations = $uti['accesInvestigations']; - $client->accesInternationnal = $uti['accesInternationnal']; - $client->accesEnquetes = $uti['accesEnquetes']; - $client->miseSousSurveillance = $uti['miseSousSurveillance']; - $client->forfaitExtranetPeriode = $uti['forfaitExtranetPeriode']; - $client->forfaitExtranetMontant = $uti['forfaitExtranetMontant']; - $client->reconductionAuto = $uti['reconductionAuto']; - $client->remarque = $uti['remarque']; - $client->forfaitPiecesNb = $uti['forfaitPiecesNb']; - $client->forfaitPiecesMt = $uti['forfaitPiecesMt']; - $client->forfaitPiecesDep = $uti['forfaitPiecesDep']; - $client->forfaitInvestigNb = $uti['forfaitInvestigNb']; - $client->forfaitInvestigMt = $uti['forfaitInvestigMt']; - $client->forfaitInvestigDep = $uti['forfaitInvestigDep']; - $client->tarifIndiscore = $uti['tarifIndiscore']; - - $tabRet[] = $client; - } - } - $output = new ListeClientsReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * - * Retourne la liste des droits - * @return ListeDroitsReturn[] - */ - public function getListeDroits() - { - $tabRet = array(); - foreach($this->listeDroits as $code => $desc){ - $droit = new ListeDroitsReturn(); - $droit->code = $code; - $droit->desc = $desc; - $tabRet[] = $droit; - } - return $tabRet; - } - - /** - * - * Retourne la liste des préférences - * @return ListePrefsReturn[] - */ - public function getListePrefs() - { - $tabRet = array(); - foreach($this->listePrefs as $code => $desc){ - $pref = new ListePrefsReturn(); - $pref->code = $code; - $pref->desc = $desc; - $tabRet[] = $pref; - } - return $tabRet; - } - - - /** - * getStatsUtilisateurs - * @param string $login - * @param string $mois - * @param string $type - * @param boolean $payants - * @return array - */ - public function getStatsUtilisateurs($login, $mois, $type='jour', $payants=false) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - if ($payants) - { - $strPayant="AND (page LIKE 'greffe_%' OR page LIKE 'inpi_%' OR page='kbis') AND params<>'' AND (params NOT LIKE '%erreur%' OR params LIKE '%erreur 17%') "; - } - else { - $strPayant=''; - } - $iDbCrm = new WDB('sdv1'); - if ($type=='jour') { - $rep = $iDbCrm->select('logs', - 'date(dateHeure) as jours, count(*) as nb', - "1 $strPayant AND login='$login' AND dateHeure BETWEEN '$mois-01' AND '$mois-31' GROUP BY jours", - false, MYSQL_ASSOC); - } elseif ($type=='heure') { - $rep = $iDbCrm->select('logs', - 'HOUR(dateHeure) as heures, count(*) as nb', - "1 $strPayant AND login='$login' AND dateHeure BETWEEN '$mois-01' AND '$mois-31' GROUP BY heures", - false, MYSQL_ASSOC); - } - $tabRet = $rep; - - - - return array('error'=>array('errnum'=>0, 'errmsg'=>''), 'results'=>$tabRet); - } - - /** - * getPortefeuilleCsv - * @param string $login - * @param int $idClient - * @return ListeSurveillancesCsvReturn - */ - public function getPortefeuilleCsv($login='', $idClient=0) - { - return $this->getListeSurveillancesCsv('portefeuille', $login, $idClient); - } - - /** - * getPortefeuille - * @param PortefeuilleFiltre $filtre - * @param int $deb - * @param int $nbRet - * @return PortefeuilleReturn - */ - public function getPortefeuille($filtre, $deb=0, $nbRet=100) - { - $this->authenticate(); - - // Initialisation - $error = new ErrorType(); - if (empty($deb)) { $deb = 0; } - if (empty($nbRet)) { $nbRet = 100; } - - $tri = strtolower(trim($filtre->tri)); - switch ($tri) { - case 'ref': $orderBy='ORDER BY ref'; break; - case 'dateAjout': $orderBy='ORDER BY dateAjout'; break; - case 'dateDerEnvoi':$orderBy='ORDER BY dateDerEnvoi'; break; - case 'rs': $orderBy='ORDER BY rs'; break; - case 'cp': $orderBy='ORDER BY cp'; break; - case 'ville': $orderBy='ORDER BY ville'; break; - case 'indiScore': $orderBy='ORDER BY indiScore'; break; - case 'encours': $orderBy='ORDER BY encours'; break; - default: $orderBy='ORDER BY siren'; break; // siren ou vide ou autre - } - - $tabRet = array(); - $siren = substr($filtre->siret,0,9); - $nic = substr($filtre->siret,9,5); - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - - $strSelect = 's.email, s.siren, s.nic, s.ref, s.dateAjout, s.rs, s.cp, s.ville, s.dateDerEnvoi, s.encoursClient, c.actif, c.procol, c.indiScore, c.indiScore20, c.encours, c.indiScoreDate, c.dateBilan, c.indiScorePre, c.indiScore20Pre, c.encoursPre, c.indiScoreDatePre, c.sourceModif, c.scoreSolv, c.scoreSolvPre, c.scoreDir, c.scoreDirPre, c.scoreConf, c.scoreConfPre, c.scoreZ, c.scoreZPre, c.scoreCH, c.scoreCHPre, c.scoreAfdcc2, c.scoreAfdcc2Pre, c.situFi, c.situFiPre, c.infoNote, c.infoNotePre, c.noteStruct, c.noteStructPre, c.noteFin, c.noteFinPre, c.tendance, c.tendancePre, c.dateUpdate'; - - $strFiltre = ''; - if (intval($siren)>0) $strFiltre.= " AND s.siren=$siren "; - if (!empty($filtre->ref)) $strFiltre.= " AND s.ref LIKE %$filtre->ref%"; - if (!empty($filtre->rs)) $strFiltre.= " AND s.ref LIKE %$filtre->rs%"; - - // Il faut compter le nombre de siren au total - $tabTmp = $iDb->select('surveillances_site', 'count(*) as nb', "login='$login' AND source='score' AND dateSuppr=0 $strFiltre", false, MYSQL_ASSOC); - $nbRepTot = $tabTmp[0]['nb']; - - $tabTmp = $iDb->select('surveillances_site s, scores_surveillance c', $strSelect, "s.login='$login' AND s.source='score' AND s.dateSuppr=0 AND s.siren=c.siren $strFiltre $orderBy LIMIT $deb,$nbRet", false, MYSQL_ASSOC); - foreach ($tabTmp as $i=>$tabSurv) { - if (trim($tabSurv['rs'])<>'') { - $rs=$tabSurv['rs']; - $cp=$tabSurv['cp']; - $ville=$tabSurv['ville']; - } else { - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($tabSurv['siren'], $tabSurv['nic']); - $rs=$tabIdentite['Nom']; - $cp=$tabIdentite['CP']; - $ville=$tabIdentite['Ville']; - $iDb->update('surveillances_site',array( - 'rs' => $rs, - 'cp' => $cp, - 'ville' => $ville), - "login='$login' AND source='score' AND dateSuppr=0 AND siren=".$tabSurv['siren']." AND nic=".$tabSurv['nic'], - false - ); - } - - $portefeuille = new Portefeuille(); - $portefeuille->email = $tabSurv['email']; - $portefeuille->siren = $tabSurv['siren']; - $portefeuille->nic = $tabSurv['nic']; - $portefeuille->ref = $tabSurv['ref']; - $portefeuille->dateAjout = $tabSurv['dateAjout']; - $portefeuille->rs = $rs; - $portefeuille->cp = $cp; - $portefeuille->ville = $ville; - // Entreprise - $portefeuille->actif = $tabSurv['actif']; - $portefeuille->procol = $tabSurv['procol']; - $portefeuille->indiScore = $tabSurv['indiScore']; - $portefeuille->indiScore20 = $tabSurv['indiScore20']; - $portefeuille->indiScorePre = $tabSurv['indiScorePre']; - $portefeuille->indiScore20Pre = $tabSurv['indiScore20Pre']; - $portefeuille->encours = $tabSurv['encours']; - $portefeuille->encoursPre = $tabSurv['encoursPre']; - $portefeuille->indiScoreDate = $tabSurv['indiScoreDate']; - $portefeuille->indiScoreDatePre = $tabSurv['indiScoreDatePre']; - $portefeuille->encoursClient = $tabSurv['encoursClient']; - $portefeuille->dateBilan = $tabSurv['dateBilan']; - $portefeuille->sourceModif = $tabSurv['sourceModif']; - //, c.scoreSolv, c.scoreSolvPre, c.scoreDir, c.scoreDirPre, c.scoreConf, c.scoreConfPre, c.scoreZ, c.scoreZPre, c.scoreCH, c.scoreCHPre, c.scoreAfdcc2, c.scoreAfdcc2Pre, c.situFi, c.situFiPre, c.infoNote, c.infoNotePre, c.noteStruct, c.noteStructPre, c.noteFin, c.noteFinPre, c.tendance, c.tendancePre, c.dateUpdate'; - $portefeuille->dateDerEnvoi = $tabSurv['dateDerEnvoi']; - $tabRet[] = $portefeuille; - - } - - $output = new PortefeuilleReturn(); - $output->error = $error; - $output->result = $tabRet; - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbRepTot; - return $output; - } - - - /** - * rechercheHisto - * @param string $recherche - * @param string $annee - * @param string $typeBod - * @param int $deb - * @param int $nbRep - * @param int $maxRep - * @param bool $pertinence - * @return RechercheHistoReturn - */ - public function rechercheHisto($recherche, $annee='', $typeBod='', $deb=0, $nbRep=20, $maxRep=200, $pertinence=false) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - if (empty($annee)) $annee = ''; - if (empty($typeBod)) $typeBod = ''; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($annee)) $pertinence = false; - - debugLog('I',"rechercheHisto de $recherche ($annee) (Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabFiltresAnnee = array(); - - if ($annee<>'' && $annee*1>=1953 && $annee*1<=date('Y')*1) - $tabFiltresAnnee = array('annee1'=>$annee); - - require_once 'Metier/sphinx/recherche2.php'; - $ret=search2('histo', "$recherche", $tabFiltresAnnee, $deb, $nbRep, $maxRep, $pertinence); - - /*require_once 'Metier/sphinx/sphinxsearch.php'; - $sphinxsearch = new SphinxSearch(); - $ret = $sphinxsearch->searchByHisto($recherche, $tabFiltresAnnee, $deb, $nbRep, $maxRep, $pertinence); - */ - - $liste = $ret['results']; - $nbTot = $ret['nbTot']; - $duree = $ret['duration']; - $tabMots = $ret['words']; - - $tabRet = array(); - $k=0; - if(count($liste)>0) { - foreach ($liste as $n=>$etab) - { - $texte = $etab['Texte']; - $posMin=100000; - $hitMin=1000000; - foreach ($tabMots as $mot=>$tabMot){ - if ($tabMot['hits']<$hitMin) { - $hitMin=$tabMot['hits']; - $motSignificatif=$mot; - } - } - $posMin = stripos($texte, ''.$motSignificatif); - if ($posMin<150) $posMin=150; - $texte2 = substr($texte, $posMin-150, 250); - $reponse = new RechercheHistoReponses(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - $reponse->Fichier = strtr($etab['Fichier'], - array( '.txt'=>'.pdf', '/mnt/bodacc/' => 'http://tville.scores-decisions.com/bodacc/') - ); - $reponse->Annee = $etab['Annee']; - $reponse->Code = $etab['Code']; - $reponse->Texte = utf8_encode(utf8_decode($texte2)); - $tabRet[] = $reponse; - $k++; - } - } - - $criteres = new RechercheHistoCriteres(); - $criteres->recherche = $recherche; - $criteres->annee = $annee; - - $output = new RechercheHistoReturn(); - $output->criteres = $criteres; - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbTot; - $output->duree = $duree; - $output->mots = array_keys($tabMots); - $output->reponses = $tabRet; - return $output; - } - - /** - * getLogsClients - * @param string $mois (Format : AAAA-MM ou AAAA/MM) - * @param int $detail - * @param int $idClient - * @param string $login - * @param int $all - * @return LogsClientsReturn - */ - public function getLogsClients($mois, $detail=0, $idClient=0, $login='', $all=0) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - if (empty($detail)) $detail = 0; - if (empty($idClient)) $idClient = 0; - if (empty($login)) $login = ''; - if (empty($all)) $all = 0; - - $strDetail = $strClient = $strLogin=''; - - // Vue détaillée ou uniquement les infos payantes - if ($detail==0) { - $detail='Non'; - $strDetail=" AND (page LIKE 'greffe_%' OR page LIKE 'inpi_%' OR page='kbis' OR page LIKE 'indiscore%' OR page='privileges' OR page='commandeAsso') AND (params<>'' OR page LIKE 'indiscore%' AND tarifIndiscore<>0) AND (params NOT LIKE '%erreur%' OR params LIKE '%erreur 17%') "; - } elseif($detail==1) { - $detail='Oui'; - } - - // On veut uniquement le client précis - if ($all && $this->tabInfoUser['profil']=='SuperAdministrateur') { - $all = 'Oui'; - } else { - $all = 'Non'; - } - // Pas d'idClient mentionné ou tentative sur autre client et non SAD - if ($idClient==0 || ($idClient!=$this->tabInfoUser['idClient'] && $this->tabInfoUser['profil']!='SuperAdministrateur') ){ - $idClient = $this->tabInfoUser['idClient']; - } - $strClient = " AND u.idClient=$idClient "; - - // On veut uniquement le login précis - if ($login!='') { - $strLogin=" AND l.login='$login' "; - } else { - $login='Non'; - } - - // Dates de début et de fin - $mois = strtr($mois, array('-'=>'','/'=>'')); - $annee = substr($mois,0,4); - $mois = substr($mois,4,2); - $dateDeb=date('Y-m-d', mktime(0,0,0,$mois,1,$annee)); - $dateFin=date('Y-m-t', mktime(0,0,0,$mois,15,$annee)); - - $fichierCsv=DOC_WEB_LOCAL."csv/logs-$annee-$mois-$detail-$idClient-$login-$all.csv"; - - if (file_exists($fichierCsv) && - date('Ymd', filemtime($fichierCsv))==date('Ymd') && - filesize($fichierCsv)>60 ) { - $size=filesize($fichierCsv); - $erreur=false; - $tabNom=array(); - $cache=1; - } else { - @unlink($fichierCsv); - $sql="SELECT LOWER(l.login) as loginUti, page, l.siren, l.nic, l.params, l.dateHeure, u.idClient, c.nom, u.referenceParDefaut AS refUti - FROM `logs` l, utilisateurs u, clients c - WHERE 1 $strDetail $strClient $strLogin AND dateHeure BETWEEN '$dateDeb 00:00:00' AND '$dateFin 23:59:59' AND l.login=u.login AND u.idClient=c.id - GROUP BY l.login, l.siren, page, date(dateHeure), params - ORDER BY l.login ASC, dateHeure ASC"; - $fp = fopen(DOC_WEB_LOCAL."/csv/logs-$annee-$mois-$detail-$idClient-$login-$all.sql", 'w'); - fwrite($fp, $sql.EOL); - fclose($fp); - exec("php ".APPLICATION_PATH."/../batch/sql2csv.php sdv1 ".DOC_WEB_LOCAL."csv/logs-$annee-$mois-$detail-$idClient-$login-$all.sql $fichierCsv > /dev/null &"); - $size = $cache = 0; - } - - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $result = new LogsClients(); - $result->Url = $hostname.DOC_WEB_URL."csv/logs-$annee-$mois-$detail-$idClient-$login-$all.csv"; - $result->Taille = $size; - $result->Cache = $cache; - - $output = new LogsClientsReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * getListeSurveillanceCsv - * @param string $source - * @param string $login - * @param int $idClient - * @return ListeSurveillancesCsvReturn - */ - public function getListeSurveillancesCsv($source='', $login='', $idClient=0) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - if (empty($source)) $source = ''; - if (empty($idClient)) $idClient = 0; - - - debugLog('I',"getListeSurveillancesCsv Début $source $login $idClient",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $iDb = new WDB(); - $strClient = $strLogin = ''; - $exportPtf = false; - switch ($source) - { - case 'insee': - case 'annonces': - case 'bilans': - case 'score': - case 'actes': - case 'privileges': - case 'dirigeants': - break; - case 'portefeuille': - $source='score'; - $exportPtf=true; - break; - default: - $source=''; - break; - } - - if ($source<>'') $strSource = "AND source='$source' "; - else $strSource = ''; - - // Control idClient - if ($idClient==0 || ($idClient!=$this->tabInfoUser['idClient'] && $this->tabInfoUser['profil']!='SuperAdministrateur') ){ - $idClient = $this->tabInfoUser['idClient']; - } - $strClient = "AND u.idClient=$idClient "; - - if ($this->tabInfoUser['profil']=='SuperAdministrateur' || $this->tabInfoUser['profil']=='Administrateur') { - // Surveillances de tous les utilisateurs du client - if (empty($login)) { - $login = ''; - //Surveillances de l'utilisateur - } else { - $strLogin = "AND s.login='$login' "; - } - } else { - //Par défaut préselection de l'utilisateur - $login = $this->tabInfoUser['login']; - $strLogin = "AND s.login='$login' "; - } - - $fichierCsv = DOC_WEB_LOCAL."csv/listesurv-$source-$login-$idClient.csv"; - - if (file_exists($fichierCsv) && - date('Ymd', filemtime($fichierCsv))==date('Ymd') && - filesize($fichierCsv)>60 ) { - $size = filesize($fichierCsv); - $erreur = false; - $tabNom = array(); - $cache = 1; - } else { - unlink($fichierCsv); - if ($source=='score'){ - if ($this->tabInfoUser['typeScore']==20) { - $strScore='v.indiScore20 AS indiScore20'; - $strScorePre='v.indiScore20Pre AS indiScore20Pre'; - } else { - $strScore='v.indiScore AS indiScore100'; - $strScorePre='v.indiScorePre AS indiScore100Pre'; - } - /*v.scoreZ, v.scoreZPre, v.scoreCH, v.scoreCHPre, - v.scoreAfdcc2, v.scoreAfdcc2Pre, v.situFi, v.situFiPre, v.infoNote, v.infoNotePre, - v.noteStruct, v.noteStructPre, v.noteFin, v.noteFinPre, v.tendance, v.tendancePre, */ - $sql="SELECT LOWER(s.login) as loginUti, s.source, s.email, s.siren, s.nic, s.ref, s.dateAjout, - s.rs, s.cp, s.ville, s.dateDerEnvoi, - s.encoursClient, v.actif, v.procol, $strScore, v.encours, v.indiScoreDate, v.dateBilan, - $strScorePre, v.encoursPre, v.indiScoreDatePre, v.sourceModif, v.scoreSolv, v.scoreSolvPre, v.scoreDir, - v.scoreDirPre, v.scoreConf, v.scoreConfPre, - e.cj, e.capital, e.capitalDev, e.ape_entrep, e.tca, e.teff_entrep, - v.dateUpdate - FROM surveillances_site s, sdv1.utilisateurs u, sdv1.clients c, scores_surveillance v, etablissements e - WHERE s.source='score' $strClient $strLogin AND dateSuppr=0 AND s.login=u.login AND u.idClient=c.id AND s.siren=v.siren AND s.siren=e.siren - GROUP BY loginUti, s.siren, s.nic, s.source, s.ref - ORDER BY loginUti ASC, s.siren ASC, s.nic ASC, s.source ASC, s.ref ASC"; - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeSurveillancesCsv($source, $login, $idClient)", $sql); - } else { - $sql="SELECT LOWER(s.login) as loginUti, s.source, s.email, s.siren, s.nic, s.ref, s.dateAjout, - s.rs, s.cp, s.ville, s.dateDerEnvoi - FROM surveillances_site s, sdv1.utilisateurs u, sdv1.clients c - WHERE 1 $strSource $strClient $strLogin AND dateSuppr=0 AND s.login=u.login AND u.idClient=c.id - ORDER BY loginUti ASC, s.siren ASC, s.nic ASC, s.source ASC, s.ref ASC"; - } - debugLog('I',"getListeSurveillancesCsv SQL $sql",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $fp = fopen(DOC_WEB_LOCAL."csv/listesurv-$source-$login-$idClient.sql", 'w'); - fwrite($fp, $sql.EOL); - fclose($fp); - exec("php ".APPLICATION_PATH."/../batch/sql2csv.php jo ".DOC_WEB_LOCAL."csv/listesurv-$source-$login-$idClient.sql $fichierCsv > /dev/null &"); - $size=$cache=0; - } - - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $result = new ListeSurveillancesCsv(); - $result->Url = $hostname."csv/listesurv-$source-$login-$idClient.csv"; - $result->Taille = $size; - $result->Cache = $cache; - - debugLog('I','getListeSurveillancesCsv Url='.$hostname."csv/listesurv-$source-$login-$idClient.csv, Taille=$size, Cache=$cache",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $output = new ListeSurveillancesCsvReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * getListeJalCollecte - * @return ListeJalCollecteReturn - */ - public function getListeJalCollecte() - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - - $iBodacc = new MBodacc(); - $tabJal = $iBodacc->getListeJalCollecte(); - foreach ($tabJal as $i=>$jal) - { - $jalCollecte = new JalCollecte(); - $jalCollecte->id = $i; - $jalCollecte->nom = $jal; - $tabRet[] = $jalCollecte; - } - $output = new ListeJalCollecteReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * getListeFichierSurv - * @param string $login - * @param string $ref - * @param string $nomFic - * @return ListeFichierSurvReturn - */ - public function getListeFichierSurv($login, $ref='*', $nomFic='') - { - $this->authenticate(); - if (empty($ref)) $ref = '*'; - if (empty($nomFic)) $nomFic = ''; - $error = new ErrorType(); - //debugLog('I',"getListeFichierSurv pour $login, $ref, $nomFic",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabFichier=$tabDates=array(); - $numAbo=substr($ref, 0,5); - if (strtolower($login)=='vwbank') { - $repClient='volkswagen bank'; - $ficClient='surveillanceBodacc_SURBODPRDCFTVWBANK'; - $numAbo=$ref='19300'; - } elseif (substr($login,0,6)=='apicil') { - $repClient='apicil'; - $ficClient='surveillanceBodacc_SURBODPRDCFTAPICIL'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='omni04') { - $repClient='aggm mederic '; - $ficClient='surveillanceBodacc_SURBODPRDFTSOMNIREP'; - $numAbo=$ref=''; - } else { - $repClient='cnasea'; - $ficClient='surveillanceBodacc_SURBODTSTFTSCNASEA'; - } - $dh = opendir(DOC_WEB_LOCAL."clients/$repClient/"); - if (!$dh) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic", "Impossible d'ouvrir le dossier '/home/data/clients/$repClient/'"); - $error->errnum = 1; - $error->errmsg = "Impossible d'ouvrir le dossier client"; - } else { - while (false !== ($filename = readdir($dh))) { - if ($filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,42)==$ficClient.$numAbo) { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,43,8); - $tabClients[]=substr($filename,0,42); - } - elseif ($ref=='*' && $filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,37)==$ficClient && substr($filename,37,1)<>'_') { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,43,8); - $tabClients[]=substr($filename,0,42); - } - elseif ($filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,37)==$ficClient && substr($filename,37,1)=='_' && $repClient=='apicil') { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,38,8); - $tabClients[]=substr($filename,0,37); - } - elseif ($filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,38)==$ficClient && substr($filename,38,1)=='_' && $repClient=='aggm mederic ') { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,39,8); - $tabClients[]=substr($filename,0,38); - } - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic : fichier lu '$filename'", "Fichier lu '$filename'"); - } - /** Tableau des noms de fichier **/ - sort($tabFichier); - /** Tableau des dates de livraisons **/ - $tabDates=array_unique($tabDates); - sort($tabDates); - /** Tableau des Clients **/ - $tabClients=array_unique($tabClients); - sort($tabClients); - //return array('error'=>array('errnum'=>0, 'errmsg'=>''), 'results'=>$tabDates); - - /*@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic", - "Fichiers :".EOL. - print_r($tabFichier, true). - "Dates:".EOL. - print_r($tabDates, true). - "Clients :".EOL. - print_r($tabClients, true) - );*/ - - if ($ref=='*') { - $tabFichier = array(); - // Boucle sur les dates de livraison - foreach ($tabDates as $dateFic) { - if (strlen($dateFic)<>8) continue; - if (!file_exists(DOC_WEB_LOCAL."clients/$repClient/$ficClient".'_'."$dateFic.csv") || - filesize(DOC_WEB_LOCAL."clients/$repClient/$ficClient".'_'."$dateFic.csv")==0) { - - $fpW=fopen(DOC_WEB_LOCAL."clients/$repClient/$ficClient".'_'."$dateFic.csv",'w'); - $entete=true; - // Boucle afin de vérifier si on est sur le bon client - foreach ($tabClients as $nomClient) { - $dh = opendir(DOC_WEB_LOCAL."clients/$repClient/"); - while (false !== ($filename = readdir($dh))) { - if (substr($filename,0,51)==$nomClient.'_'.$dateFic && substr($filename,-4)=='.csv') { - $fichier=$filename; - //break; - } - } - $fpR=fopen(DOC_WEB_LOCAL."clients/$repClient/$fichier",'r'); - //return array('error'=>array('errnum'=>0, 'errmsg'=>''), 'results'=>array(($fichier)));//die; - if ($fpR) { - while (!feof($fpR)) { - $ligne=trim(fgets($fpR)); - if (substr($ligne,0,5)=='Siren' && $entete==true) { - fwrite($fpW, 'SITE;'.$ligne.EOL); - $entete=false; - } - elseif (substr($ligne,0,5)<>'Siren' && trim($ligne)<>'') { - fwrite($fpW, strtr($nomClient, array('surveillanceBodacc_SURBODTSTFTS'=>'', - 'surveillanceBodacc_SURBODPRDCFT'=>'')).';'.$ligne.EOL); - } - } - fclose($fpR); - } - } - fclose($fpW); - } - if (strlen($dateFic)==8) - $tabFichier[]=$ficClient.'_'.$dateFic.'.csv'; - } - } - rsort($tabFichier); - - if ($nomFic<>'') { - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, /home/data/clients/$repClient/$nomFic", 'Avant BZ2'); - if (!file_exists(DOC_WEB_LOCAL."/csv/$nomFic.bz2") || - filesize(DOC_WEB_LOCAL."/csv/$nomFic.bz2")<=14) { - $string=file_get_contents("/home/data/clients/$repClient/$nomFic"); - if ($string===false) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic", "Ouverture impossible du fichier '/home/data/clients/$repClient/$nomFic'"); - } - $bz = bzopen(DOC_WEB_LOCAL."/csv/$nomFic.bz2",'w'); - if ($bz) { - bzwrite($bz, $string, strlen($string)); - bzclose($bz); - } - } /*else - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, /home/data/clients/$repClient/$nomFic", 'Sans BZ2'); - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, /home/data/clients/$repClient/$nomFic", 'Après BZ2'); - */ - } - debugLog('I',"getListeFichierSurv pour $login, $ref, $nomFic : nb fichiers=".count($tabFichier),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $result = array(); - foreach($tabFichier as $fichier){ - $retFichier = new ListeFichierSurv(); - $retFichier->UrlFichier = $hostname.'/data/csv/'.$fichier; - $result[] = $retFichier; - } - } - $output = new ListeFichierSurvReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Geocodage d'une adresse - * @param string $adresse - * @param string $cp - * @param string $ville - * @param string $pays - * @return GeoCodeReturn - */ - public function geoCode($adresse, $cp, $ville, $pays='France') - { - $this->authenticate(); - - $ligne = date('YmdHis').";$siren;MMap AVANT"; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - - $mMap = new MMap($adresse, $cp, $ville, $pays); - - $ligne=date('YmdHis').";$siren;MMap APRES"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - - $geocode = new GeoCode(); - $geocode->latitude = $mMap->latitudeDec; - $geocode->longitude = $mMap->longitudeDec; - $geocode->precis = $mMap->precision; - $geocode->adresseValidee = $mMap->adresseValidee; - $geocode->latitudeDeg = $mMap->latitudeDeg; - $geocode->longitudeDeg = $mMap->longitudeDeg; - - $output = new GeoCodeReturn(); - $output->error = $error; - $output->result = $geocode; - } - - /** - * Suppression logique d'une annonce relative à une entité - * @param integer $source 0=Collecte, 1=BODACC, 2=B.A.L.O, 3=JO Association, 4=Boamp - * @param string $idAnn Identifiant de l'annonce - * @param string $siret Siren de l'entreprise ou Siret de l'établissement - * @return supprAnnonceReturn - */ - public function supprAnnonce($source=0, $idAnn, $siret=0) - { - $this->authenticate(); - //Initialisation - if (empty($siret)) $siret = 0; - if (empty($source)) $source = 0; - $error = new ErrorType(); - $result = false; - - if (!$this->checkEdition()) - { - $error->errnum = 1; - $error->errmsg = 'Code Client Incorrect'; - } - else - { - - $siren = substr($siret,0,9); - $iDb = new WDB(); - switch ($source) - { - case 0: - $idAnn=preg_replace('/^0\./','', ''.$idAnn)*1; - $table='annonces'; - break; - case 1: - if ($idAnn<0){ - $error->errnum = 1; - $error->errmsg = 'Code annonce Incorrect'; - } elseif (intval($siren)>0){ - $strSql="AND siren=$siren"; - $table='bodacc_detail'; - } - break; - case 3: - $table='asso'; - break; - case 2: - case 4: - default: - $error->errnum = 1; - $error->errmsg = 'Cas non géré'; - break; - } - if ($idAnn>0 && $iDb->update( $table, array('dateSuppr'=>date('YmdHis'),'idSuppr'=>$this->tabInfoUser['id']), "id=$idAnn $strSql", false)) - { - debugLog('I',"Suppression de l'annonce en source $source n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 0; - $error->errmsg = ''; - $result = true; - } else { - debugLog('I',"Suppression impossible de l'annonce en source $source n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 1; - $error->errmsg = 'Suppression de l\'annonce impossible'; - } - } - $output = new SupprAnnonceReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Duplication d'une annonce relative à une entité - * - * @param integer $source 0=Collecte, 1=BODACC, 2=B.A.L.O, 3=JO Association, 4=Boamp - * @param string $idAnn Identifiant de l'annonce - * @param string $siretIn Siren de l'entreprise ou Siret de l'établissement de l'annonce à duppliquer - * @param string $siretOut Siren/Siret de l'entreprise ou étab sur lequel il faut dupliquer l'annonce - * @return DupliqueAnnonceReturn - */ - public function dupliqueAnnonce($source=0, $idAnn, $siretIn=0, $siretOut=0) - { - debugLog('I',"Demande de duplication d'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $this->authenticate(); - //Initialisation - if (empty($siret)) $siret = 0; - if (empty($source)) $source = 0; - $error = new ErrorType(); - $result = false; - - if (!$this->checkEdition()) - { - $error->errnum = 1; - $error->errmsg = 'Code Client Incorrect'; - } - else - { - $sirenIn = substr($siretIn,0,9)*1; - $nicIn = substr($siretIn,9,5)*1; - $sirenOut = substr($siretOut,0,9)*1; - $nicOut = substr($siretOut,9,5)*1; - $iDb = new WDB(); - $strSql=''; - switch ($source) - { - case 0: - $idAnn=preg_replace('/^0\./','', ''.$idAnn)*1; - $table='annonces'; - break; - case 1: - if ($idAnn<0){ - $error->errnum = 1; - $error->errmsg = 'Code annonce Incorrect'; - } elseif (intval($siren)>0){ - $strSql.="AND siren=$sirenIn"; - $table='bodacc_detail'; - } - break; - case 3: - $table='asso'; - break; - case 2: - case 4: - default: - $error->errnum = 1; - $error->errmsg = 'Cas non géré'; - break; - } - - if ($idAnn>0) { - $res = $iDb->select($table, '*', "id=$idAnn $strSql", false, MYSQL_ASSOC); - if (count($res)==0) { - $error->errnum = 1; - $error->errmsg = 'Annonce inexistante'; - } else { - $annonce = $res[0]; - $annonce['siren'] = $sirenOut; - $annonce['sirenValide']=2; - $annonce['dateInsert']=date('YmdHis'); - if ($source==0) { - // Suppression des zones inexistantes dans la table ou devant être vides - unset($annonce['id']); - unset($annonce['nic']); - $annonce['idSaisie']=$this->tabInfoUser['id']; - } else { - $annonce['idSirenage']=$this->tabInfoUser['id']; - $annonce['nic']=$nicOut; - if ($nicOut>0) $annonce['nicValide']=2; - } - if ($iDb->insert($table, $annonce, true, true)) { - debugLog('I',"Duplication de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $result = true; - } else { - debugLog('I',"Duplication imposible de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut) : ".mysql_error(),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 1; - $error->errmsg = 'Duplication de l\'annonce impossible'; - } - } - } else { - debugLog('I',"Duplication impossible de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 1; - $error->errmsg = 'Duplication de l\'annonce impossible'; - } - } - $output = new DupliqueAnnonceReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Recherche d'entreprise par leur actionnaire - * @param string $nom Raison sociale / Nom de l'actionnaire (obligatoire) - * @param string $cpVille CP, Ville - * @param string $siren Siren de l'actionnaire - * @param string $pays Pays de l'actionnaire - * @param string $pctMin Niveau de détention Minimam de l'actionnaire - * @param string $pctMax Niveau de détention Maximum de l'actionnaire - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur les noms et prénoms (si true) - * @return SearchActReturn - */ - public function searchAct($nom, $cpVille='', $siren=0, $pays='', $pctMin=0, $pctMax=100, $deb=0, $nbRep=20, $maxRep=200, $pertinence=false) - { - debugLog('I',"Recherche Actionnaire de $nom, $cpVille (Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (!empty($pays)){ - $wdb = new WDB('jo'); - $result = $wdb->select('tabPays', 'codPays3', "libPays LIKE '".$pays); - if (count($result>0)){ - $pays = $result[0]['codPays3']; - } else { - $pays = ''; - } - } - - if (empty($cpVille)) $cpVille = ''; - if (empty($siren)) $siren = ''; - if (empty($pctMin)) $pctMin = 0; - if (empty($pctMax)) $pctMax = 100; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($pertinence)) $pertinence = false; - - $mLiens = new MLiens(''); - // rechercheActionnaire($nom, $cpVille, $siren, $pays, $pctMin, $pctMax, $deb, $nbRep, $maxRep, $pertinence) - $etabs = $mLiens->rechercheActionnaire($nom, $cpVille, $siren, $pays, $pctMin, $pctMax, $deb, $nbRep, $maxRep, $pertinence); - - $iInsee = new MInsee(); - - $tabRet = array(); - foreach ($etabs['reponses'] as $etab) { - $act = new EntrepriseActItem(); - $act->id = $etab['id']; - $act->Pertinence = $etab['Pertinence']; - $act->Siret = $etab['Siret']; - $act->Siege = $etab['Siege']; - $act->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $act->Nom2 = prepareString($etab['Nom2']); - $act->Sigle = prepareString($etab['Sigle']); - $act->Enseigne = prepareString($etab['Enseigne']); - $act->Adresse = prepareString($etab['Adresse']); - $act->Adresse2 = prepareString($etab['Adresse2']); - $act->CP = $etab['CP']; - $act->Ville = prepareString($etab['Ville']); - $act->Tel = $etab['Tel']; - $act->Fax = $etab['Fax']; - $act->FJ = $etab['FJ']; - $act->FJLib = prepareString($iInsee->getLibelleFJ($etab['FJ'])); - $act->Siren = $etab['Siren']; - $act->Nic = $etab['Nic']; - $act->Actif = $etab['Actif']; - $act->NafEtab = $etab['NafEtab']; // Etablissement - $act->NafEtabLib = prepareString($iInsee->getLibelleNaf($etab['NafEtab'])); // Etablissement - $act->NafEnt = $etab['NafEnt']; // Entreprise - $act->NafEntLib = prepareString($iInsee->getLibelleNaf($etab['NafEnt'])); - $act->ActNomRs = $etab['ActNomRs']; - $act->ActPays = $etab['ActPays']; - $act->ActDateLien = $etab['ActDateLien']; - $act->ActActif = $etab['ActActif']; - $act->ActPmin = $etab['ActPmin']; - $tabRet[] = $act; - } - - $output = new SearchActReturn(); - $output->nbReponses = $etabs['nbReponses']; - $output->nbReponsesTotal = $etabs['nbReponsesTotal']; - $output->result = $tabRet; - - if ($tabRet['nbReponses']==0) { - debugLog('W', "Aucun résultat pour cette recherche !", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - } - - return $output; - } - - /** - * Commande d'une enquête sur une entreprise en France ou à l'Internationale - * @param string $siren - * @param string $infoEnq Informations pour la demande d'enquête
        - * InfoEnq[Entrep][Tel]
        - * InfoEnq[Entrep][Fax]
        - * InfoEnq[Entrep][AutreTel]
        - * InfoEnq[Entrep][Mail]
        - * InfoEnq[Entrep][AutreMail]
        - * InfoEnq[Entrep][Web]
        - * InfoEnq[Entrep][Rib][Banque]
        - * InfoEnq[Entrep][Rib][Guichet]
        - * InfoEnq[Entrep][Rib][Compte]
        - * InfoEnq[Entrep][Rib][Cle]
        - * InfoEnq[Encours]
        - * InfoEnq[NbEcheances]
        - * InfoEnq[AvisAssureur]
        - * InfoEnq[Type]
        - * InfoEnq[Delai]
        - * InfoEnq[PrecisionsChoix]
        - * InfoEnq[Precisions][MontantCA]
        - * InfoEnq[Precisions][Motif]
        - * InfoEnq[Precisions][Autre]
        - * InfoEnq[Anciennete]
        - * InfoEnq[AncienneteDuree]
        - * InfoEnq[ImpayeesChoix]
        - * InfoEnq[Impayees][Montant]
        - * InfoEnq[Impayees][Nombre]
        - * InfoEnq[Impayees][Date]
        - * InfoEnq[RetardPaiementChoix]
        - * InfoEnq[RetardPaiement][Montant]
        - * InfoEnq[RetardPaiement][Nombre]
        - * InfoEnq[RetardPaiement][Date]
        - * InfoEnq[LitigeChoix]
        - * InfoEnq[Litige][Precisions]
        - * InfoEnq[Observation]
        - * @param string $infoDemande Informations sur l'utilisateur
        - * InfoUser[Profil]
        - * InfoUser[ProfilAutre]
        - * InfoUser[Identite]
        - * InfoUser[Tel]
        - * InfoUser[Fax]
        - * InfoUser[Email]
        - * InfoUser[Ref]
        - * @return CommandeEnqueteReturn - */ - public function commandeEnquete($siren, $infoEnq, $infoDemande) - { - $this->authenticate(); - //Initialisation - $infoEnq = json_decode($infoEnq); - $infoDemande = json_decode($infoDemande); - - $mail = trim($infoDemande['Email']); - if ($mail=='') { - $mail=$this->tabInfoUser['email']; - } - - $tabInsert = array( - 'idUser' => $this->tabInfoUser['id'], - 'source' => 'intersud', // 'greffes', 'asso', 'graydon' - 'login' => $tabInfoUser['login'], - 'emailCommande' => $mail, - 'siren' => $siren, - 'refDocument' => serialize($infoDemande), - 'refCommande' => serialize($infoEnq), - 'dateCommande' => DATETIME, - // 'idClient'=> $tabInfoUser['idClient'], - ); - debugLog('I',"Intersud, début commande sur $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $messageInfo = print_r($infoEnq, 1).EOL.print_r($infoDemande,1).EOL; - - $idClient = $this->tabInfoUser['idClient']; - - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients', ' nom, racineLogin, InterSudLogin, InterSudPass', "id='$idClient'", false, MYSQL_ASSOC); - $login = trim($rep[0]['InterSudLogin']); - $pass = trim($rep[0]['InterSudPass']); - $nomClient = trim(strtoupper($rep[0]['nom'])); - $strInfoCommande = "NOM et Prénom du client demandeur : ".$infoDemande['Identite'].EOL; - $strInfoCommande.= "Email du client demandeur : $mail".EOL; - $strInfoCommande.= "Tel/Fax du demandeur : ".$infoDemande['Tel'].' / '.$infoDemande['Fax'].EOL; - $strInfoCommande.= "Profil du demandeur : ".trim($infoDemande['Profil'].' '.$infoDemande['ProfilAutre']).EOL; - $typeEnqLog='enqueteDemNF'; - - if ($login=='' || $pass=='') { - /** Il ne s'agit pas d'un client final, on anonymise la commande **/ - $login='YLENA'; // Demandes en test - $pass='WYLFE'; - $nomClient=$strInfoCommande=''; - $typeEnqLog='enqueteDem'; - /* ENQUETES EN PROD - $login='FACTURE'; - $pass='AWKROM'; - */ - } - - /** Connexion à l'Extranet Intersud **/ - $url = 'http://www.intersud.fr/espace_client/espace_client.php'; - $cookie = $referer = ''; - $tabPost = array( - 'login' => $login, - 'pwd' => $pass, - ); - $tdeb = microtime(true); - $page = getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Connexion impossible à la plateforme Intersud".EOL.$strInfoCommande); - //wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - throw new SoapFault('1',"Connexion impossible à la plateforme d'enquêtes"); - } - - $tfin = microtime(true); - $duree = $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - $cookie = $page['header']['Set-Cookie']; - $intersudNomPrenom=$intersudRaisonSociale=''; - if (preg_match('/(.*)<\/td>/Uis',$body,$matches)) - $intersudNomPrenom=trim($matches[1]); - if (preg_match('/(.*)<\/td>/Uis',$body,$matches)) - $intersudRaisonSociale=trim($matches[1]); - debugLog('I',"Intersud, connexion via $login pour $intersudRaisonSociale ($intersudNomPrenom, cookie=$cookie)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - /* - $fp=@fopen(LOG_PATH."/intersud.log", "a"); - @fwrite($fp, EOL.DATETIME.EOL.print_r($page,true).'========================================================================================================='.EOL.EOL); - @fclose($fp); - die(); - */ - /** Page formulaire de demande d'enquête **/ - $url='http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, '', $referer, false, '', '', 7); - if ($page['code']<>200) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Connexion impossible au formulaire d'enquête Intersud".EOL.$strInfoCommande); - throw new SoapFault('2',"Connexion impossible à la plateforme d'enquêtes"); - } - - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - - $fp=@fopen(LOG_PATH.'/intersud.log', "a"); - @fwrite($fp, print_r($page,true)); - @fclose($fp); - $tabInterSud=array(); - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[2][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[1][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - $ref_exp=$tabInterSud['ref_exp']; - $email_exp=$tabInterSud['email_exp']; - $tel_exp=$tabInterSud['tel_exp']; - debugLog('I',"Intersud, formulaire enquête ref $ref_exp, $email_exp, $tel_exp",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $fp=@fopen(LOG_PATH.'/intersud.log', "a"); - @fwrite($fp, print_r($matches,true)); - @fwrite($fp, print_r($tabInterSud,true)); - @fclose($fp); - - /** Insertion de la commande en base **/ - $ret = $iDbCrm->insert('commandes', $tabInsert, true); - $comment = "Référence de la commande chez Scores et Décisions : i$ret - ".DATETIME." - Date et heure de la commande : ".date('d/m/Y - H:i')." - Origine de la commande : $nomClient - $strInfoCommande - - CA : ".$infoEnq['Precisions']['MontantCA']." - Motif de la demande : ".trim($infoEnq['Precisions']['Motif'].' '.$infoEnq['Precisions']['Autre'])." - Type de la demande : ".$infoEnq['Precisions']['Type']." - Anciennete de la relation : ".$infoEnq['Anciennete'].' '.$infoEnq['AncienneteDuree']." - Observations : ".$infoEnq['Observation'].EOL; - - if ($infoEnq['ImpayeesChoix']<>'non') - $comment.="Impayé(s) : ".$infoEnq['Impayees']['Nombre']." impayé(s) pour un montant de ".$infoEnq['Impayees']['Montant']." en date du ".$infoEnq['Impayees']['Date'].EOL; - - if ($infoEnq['RetardPaiementChoix']<>'non') - $comment.="Retard(s) de paiement : ".$infoEnq['RetardPaiement']['Nombre']." retard(s) pour un montant de ".$infoEnq['RetardPaiement']['Montant']." en date du ".$infoEnq['RetardPaiement']['Date'].EOL; - - if ($infoEnq['LitigeChoix']<>'non') - $comment.="Présence de litige(s) : ".$infoEnq['Litige']['Precisions'].EOL; - - $enqType=0; - $enqDelai=7; - switch (strtolower($infoEnq['Type'])) { - case 'premier': $enqType=0; $enqDelai=6; break; - case 'gold': $enqType=1; break; - case 'distrimat': $enqType=2; break; - case 'star': $enqType=3; break; - case 'avis_bancaire': $enqType=4; break; - case 'autre': $enqType=5; break; - } - - /** Ajout du RIB si communiqué **/ - if (@trim(implode(' ', $infoEnq['Entrep']['Rib']))<>''){ - $iDbCrm->insert('banques', array( - 'siren' => $siren, - 'libBanqueGuichet' => '', - 'precis' => 1, - 'codeBanque' => $infoEnq['Entrep']['Rib']['Banque'], - 'codeGuichet' => $infoEnq['Entrep']['Rib']['Guichet'], - 'numCompte' => $infoEnq['Entrep']['Rib']['Compte'].$infoEnq['Entrep']['Rib']['Cle'], - 'dateSource' => DATETIME, - ), true); - } - - /** Remplissage du formulaire d'enquête pour soumission à Intersud **/ - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren); - $tabPost = array( - 'soc' => $tabIdentite['Nom'], - 'cible_enk' => 9, // 9 - 'siret' => $siren, - 'acti' => '', - 'soc_exp' => $tabInterSud['soc_exp'], - 'type_enk' => $enqType, // 0=Premier, 1=Gold, 2=Distrimat, 3=Star, 4=Avis bancaire, 5=Autre - 'nom_diri' => '', - 'adr' => $tabIdentite['Adresse'], - 'ref_exp' => $tabInterSud['ref_exp'], - 'autre_type_enk' => '', // Texte libre - 'adr2' => $tabIdentite['Adresse2'], - 'delai_enk' => $enqDelai, // 6=24h, 7=72h, 8=+de5jours - 'ville' => $tabIdentite['Ville'], - 'cp' => $tabIdentite['CP'], - 'pays' => '', // International ? - 'nom_exp' => $tabInterSud['nom_exp'], - 'tel' => $tabIdentite['Tel'], - 'port' => $infoEnq['Entrep']['AutreTel'], - 'tel_exp' => $tabInterSud['tel_exp'], - 'bank' => trim(implode(' ', $infoEnq['Entrep']['Rib'])), - 'int_enk' => $tabInterSud['int_enk'], // International ? - 'encours' => $infoEnq['Encours'], - 'nb_ech' => $infoEnq['NbEcheances'], - 'delai2_enk' => $tabInterSud['delai2_enk'], // International ? - 'email_exp' => $tabInterSud['email_exp'], - 'cred' => '', - 'comment' => urlencode($comment), - 'val_ret' => $tabInterSud['val_ret'], - ); - $url = 'http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Validation impossible du formulaire d'enquête Intersud".EOL.$strInfoCommande); - throw new SoapFault('3',"Connexion impossible à la plateforme d'enquêtes"); - } - - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - - $output = new CommandeEnqueteReturn(); - $output->siren = $siren; - $output->emailCommande = $mail; - $output->dateCommande = DATETIME; - $output->refCmde = 'i'.$ret; - - //$strInfoCommande $mail - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Commande d'enquete sur $siren", $comment.EOL.EOL.'---------------------------------'.EOL.$messageInfo.EOL.EOL.'---------------------------------'.EOL.$body); - @sendMail('production@scores-decisions.com', $mail, "Votre demande d'enquete sur ".$tabIdentite['Nom']." ($siren)", "Votre demande d'enquête sur la société ".$tabIdentite['Nom']." a été prise en compte sous la référence i$ret - ".DATETIME); - wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - - /** Gestion de la déconnexion **/ - $url = 'http://intersud.fr/espace_client/index.php?code_ret=9'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, '', $referer, false, '', '', 7); - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - - $ret = $iDbCrm->update('commandes', array('dureeCommande'=>round($duree,3)), "idCommande=$ret"); - - return $output; - } - -} - -?> \ No newline at end of file diff --git a/library/WsScore/Interne/v0.2/Types.php b/library/WsScore/Interne/v0.2/Types.php deleted file mode 100644 index d0e13196..00000000 --- a/library/WsScore/Interne/v0.2/Types.php +++ /dev/null @@ -1,1981 +0,0 @@ - Pieces - -class CmdFiltrePieces -{ - /** @var string */ - public $raisonSociale; - /** @var string */ - public $siren; - /** @var string */ - public $demandeurReference; - /** @var boolean */ - public $fermee = false; -} - -class ListeCmdPiecesReturn -{ - /** @var ErrorType */ - public $error; - /** @var int */ - public $nbCommandes; - /** @var CmdPiecesDetail[] */ - public $liste; -} - -class CmdPiecesReturn -{ - /** @var ErrorType */ - public $error; - /** @var CmdPiecesDetail */ - public $commande; -} - -class CmdPiecesDetail -{ - /** @var InfoCommandePieces */ - public $infoCommande; - /** @var InfosDemandeur */ - public $infosDemandeur; - /** @var RefCommande */ - public $refCommande; -} - -class InfoCommandePieces -{ - /** @var string */ - public $siren; - /** @var bool */ - public $privSecu; - /** @var bool */ - public $privTres; - /** @var bool */ - public $nantFond; - /** @var bool */ - public $nantVend; - /** @var bool */ - public $declCrea; - /** @var bool */ - public $nantCompl; -} - -//===> Bilan - -class ListeCmdBilanReturn -{ - /** @var ErrorType */ - public $error; - /** @var int */ - public $nbCommandes; - /** @var CmdBilanDetail[] */ - public $liste; -} - -class CmdBilanReturn -{ - /** @var ErrorType */ - public $error; - /** @var CmdBilanDetail */ - public $commande; -} - -class CmdBilanDetail -{ - /** @var InfoCommandeBilan */ - public $infoCommande; - /** @var InfosDemandeur */ - public $infosDemandeur; - /** @var RefCommande */ - public $refCommande; -} - -class InfoCommandeBilan -{ - /** @var string */ - public $siren; - /** @var string */ - public $waldec; - /** @var int */ - public $idEntreprise; - /** @var string */ - public $mode; - /** @var string */ - public $dateCloture; - /** @var string */ - public $type; -} - -//===> Acte - -class ListeCmdActeReturn -{ - /** @var ErrorType */ - public $error; - /** @var int */ - public $nbCommandes; - /** @var CmdActeDetail[] */ - public $liste; -} - -class CmdActeReturn -{ - /** @var ErrorType */ - public $error; - /** @var CmdActeDetail */ - public $commande; -} - -class CmdActeDetail -{ - /** @var InfoCommandeActe */ - public $infoCommande; - /** @var InfosDemandeur */ - public $infosDemandeur; - /** @var RefCommande */ - public $refCommande; -} - -class InfoCommandeActe -{ - /** @var string */ - public $siren; - /** @var int */ - public $idEntreprise; - /** @var string */ - public $mode; - /** @var string */ - public $depotNum; - /** @var string */ - public $acteNum; -} - -//===> Kbis - -class ListeCmdKbisReturn -{ - /** @var ErrorType */ - public $error; - /** @var int */ - public $nbCommandes; - /** @var CmdKbisDetail[] */ - public $liste; -} - -class CmdKbisReturn -{ - /** @var ErrorType */ - public $error; - /** @var CmdKbisDetail */ - public $commande; -} - -class CmdKbisDetail -{ - /** @var InfoCommandeKbis */ - public $infoCommande; - /** @var InfosDemandeur */ - public $infosDemandeur; - /** @var RefCommande */ - public $refCommande; -} - -class InfoCommandeKbis -{ - /** @var string */ - public $siren; - - /** - * Méthode de transmission du kbis (mail, courrier) - * @var string - */ - public $mode; -} - -//===> Asso - -class ListeCmdAssoReturn -{ - /** @var ErrorType */ - public $error; - /** @var int */ - public $nbCommandes; - /** @var CmdAssoDetail[] */ - public $liste; -} - -class InfoCmdAsso -{ - /** @var string */ - public $siren; - /** @var string */ - public $waldec; - /** @var int */ - public $idEntreprise; - /** @var string */ - public $raisonSociale; -} - -class CmdAssoReturn -{ - /** @var ErrorType */ - public $error; - /** @var CmdAssoDetail */ - public $commande; -} - -class CmdAssoDetail -{ - /** @var string */ - public $siren; - /** @var string */ - public $emailCommande; - /** @var string */ - public $dateCommande; - /** @var string */ - public $refCmde; -} - -class CommandeReturnType -{ - /** @var ErrorType */ - public $error; - /** @var RefCommande */ - public $ref; -} - -class ListeCommandeFiltre -{ - /** @var string */ - public $type; -} - -class CmdStatut -{ - /** @var int */ - public $code; - /** @var string */ - public $lib; -} - -class InfosLoginReturn -{ - /** @var ErrorType */ - public $error; - /** @var InfosLogin */ - public $result; -} - -class InfosLogin -{ - /** @var bool */ - public $connected; - /** @var string */ - public $login; - /** @var int */ - public $id; - /** @var int */ - public $idClient; - /** @var string */ - public $email; - /** @var string */ - public $typeCompte; - /** @var string */ - public $filtre_ip; - /** @var string */ - public $ipPasserelle; - /** @var string */ - public $ipConnexion; - /** @var string */ - public $civilite; - /** @var string */ - public $nom; - /** @var string */ - public $prenom; - /** @var string */ - public $raisonSociale; - /** @var string */ - public $siret; - /** @var string */ - public $adrNum; - /** @var string */ - public $adrIndRep; - /** @var string */ - public $adrTypeVoie; - /** @var string */ - public $adrLibVoie; - /** @var string */ - public $adrCp; - /** @var string */ - public $adrVille; - /** @var string */ - public $adrComp; - /** @var string */ - public $tel; - /** @var string */ - public $fax; - /** @var string */ - public $mobile; - /** @var string */ - public $pref; - /** @var string */ - public $profil; - /** @var string */ - public $dateInscription; - /** @var string */ - public $dateValidation; - /** @var int */ - public $nombreConnexions; - /** @var string */ - public $dateDerniereConnexion; - /** @var string */ - public $droits; - /** @var string */ - public $droitsClients; - /** @var int */ - public $timeout; - /** @var int */ - public $nbReponses; - /** @var string */ - public $formatMail; - /** @var string */ - public $reference; - /** @var string */ - public $dateDebutCompte; - /** @var string */ - public $dateFinCompte; - /** @var int */ - public $maxFicheId; - /** @var string */ - public $typeScore; -} - -class ListeConventionsReturn -{ - /** @var ErrorType */ - public $error; - /** @var Convention[] */ - public $result; -} - -class Convention -{ - /** @var string */ - public $idCC; - /** @var string */ - public $nomCC; - /** @var string */ - public $infoCC; - /** @var string */ - public $editorCC; - /** @var int */ - public $nbPageCC; - /** @var string */ - public $isbnCC; - /** @var string */ - public $dateCC; - /** @var string */ - public $joCCmaj; -} - -class AnnonceCollecteReturn -{ - /** @var ErrorType */ - public $error; - /** @var AnnonceCollecte */ - public $result; -} - -class AnnonceCollecte -{ - /** @var string */ - public $id; - /** @var string */ - public $siren; - /** @var string */ - public $raisonSociale; - /** @var string */ - public $adresse; - /** @var string */ - public $codePostal; - /** @var string */ - public $ville; - /** @var string */ - public $dateJugement; - /** @var AnnonceEvenement[] */ - public $even; - /** @var string */ - public $dateSource; - /** @var string */ - public $dateCessationPaiement; - /** @var string */ - public $dateEffetFinP; - /** @var string */ - public $tribunal; - /** @var string */ - public $numero; - /** @var string */ - public $montant; - /** @var string */ - public $actionsNb; - /** @var string */ - public $inter1type; - /** @var string */ - public $inter1id; - /** @var string */ - public $inter1nom; - /** @var string */ - public $inter2type; - /** @var string */ - public $inter2id; - /** @var string */ - public $inter2nom; - /** @var string */ - public $inter3type; - /** @var string */ - public $inter3id; - /** @var string */ - public $inter3nom; - /** @var string */ - public $complement; - /** @var string */ - public $nouvActivite; - /** @var string */ - public $nouvDir; - /** @var string */ - public $nouvAdr; - /** @var string */ - public $nouvFJ; - /** @var string */ - public $source; -} - -class AnnonceEvenement -{ - /** @var int */ - public $CodeEven; - /** @var string */ - public $LibEven; -} - -class NextLoginReturn -{ - /** @var ErrorType */ - public $error; - /** @var NextLoginResult */ - public $result; -} - -class NextLoginResult -{ - /** @var string */ - public $racine; - /** @var int */ - public $idClient; - /** @var string */ - public $droitsClients; -} - -class DevisesReturn -{ - /** @var ErrorType */ - public $error; - /** @var Devise[] */ - public $result; -} - -class Devise -{ - /** @var string */ - public $devIso; - /** @var string */ - public $devNom; -} - - -class DevisesCoursReturn -{ - /** @var ErrorType */ - public $error; - /** @var DevisesCours[] */ - public $result; -} - -class DevisesCours -{ - /** @var string */ - public $codeDevise; - /** @var string */ - public $nomDevise; - /** @var string */ - public $dateChange; - /** @var string */ - public $valeurDevise; -} - -class DupliqueAnnonceReturn -{ - /** @var ErrorType */ - public $error; - /** @var int */ - public $result; -} - -class PieceReturn -{ - /** @var ErrorType */ - public $error; - /** @var PieceResult */ - public $result; -} - -class PieceResult -{ - /** @var string */ - public $Siren; - /** @var string */ - public $Url; - /** @var string */ - public $Taille; - /** @var string */ - public $Cache; - /** @var array */ - public $debug; - /** @var string */ - public $fichier; -} - -class ListeClientsReturn -{ - /** @var ErrorType */ - public $error; - /** @var Client[] */ - public $result; -} - -class Client -{ - /** @var int */ - public $idClient; - /** @var string */ - public $nom; - /** @var string */ - public $actif; - /** @var string */ - public $test; - /** @var string */ - public $racineLogin; - /** @var string */ - public $siren; - /** @var string */ - public $nic; - /** @var string */ - public $tva; - /** @var string */ - public $editerFacture; - /** @var string */ - public $fact_detail; - /** @var string */ - public $fac_dest; - /** @var string */ - public $fac_adr1; - /** @var string */ - public $fac_adr2; - /** @var string */ - public $fac_adr3; - /** @var string */ - public $fac_email; - /** @var string */ - public $fac_tel; - /** @var string */ - public $fact_rib; - /** @var string */ - public $liv_dest; - /** @var string */ - public $liv_adr1; - /** @var string */ - public $liv_adr2; - /** @var string */ - public $liv_adr3; - /** @var string */ - public $liv_email; - /** @var string */ - public $liv_tel; - /** @var string */ - public $droits; - /** @var string */ - public $filtres_ip; - /** @var string */ - public $typeContrat; - /** @var string */ - public $dateSignature; - /** @var string */ - public $typeAccess; - /** @var string */ - public $typeScore; - /** @var string */ - public $timeout; - /** @var string */ - public $accesPieces; - /** @var string */ - public $accesKbis; - /** @var string */ - public $accesInvestigations; - /** @var string */ - public $accesInternationnal; - /** @var string */ - public $accesEnquetes; - /** @var string */ - public $miseSousSurveillance; - /** @var string */ - public $forfaitExtranetPeriode; - /** @var string */ - public $forfaitExtranetMontant; - /** @var string */ - public $reconductionAuto; - /** @var string */ - public $remarque; - /** @var string */ - public $forfaitPiecesNb; - /** @var string */ - public $forfaitPiecesMt; - /** @var string */ - public $forfaitPiecesDep; - /** @var string */ - public $forfaitInvestigNb; - /** @var string */ - public $forfaitInvestigMt; - /** @var string */ - public $forfaitInvestigDep; - /** @var string */ - public $tarifIndiscore; - /** @var string */ - public $InterSudLogin; - /** @var string */ - public $InterSudPass; -} - -class SetInfosMandataire -{ - /** @var int */ - public $id = 0; - /** @var string */ - public $sirenGrp; - /** @var string */ - public $sirenMand; - /** @var string */ - public $Nom; - /** @var string */ - public $Prenom; - /** @var string */ - public $type; - /** @var string */ - public $stagiaire; - /** @var string */ - public $coursAppel; - /** @var string */ - public $coursAppel2; - /** @var string */ - public $tribunal; - /** @var string */ - public $Statut; - /** @var string */ - public $adresse; - /** @var string */ - public $adresseComp; - /** @var string */ - public $cp; - /** @var string */ - public $ville; - /** @var string */ - public $tel; - /** @var string */ - public $fax; - /** @var string */ - public $email; - /** @var string */ - public $web; - /** @var string */ - public $contact; -} - -class SetMandataireReturn -{ - /** @var ErrorType */ - public $error; - /** @var boolean */ - public $result; -} - -class SupprAnnonceCollecteReturn -{ - /** @var ErrorType */ - public $error; - /** @var boolean */ - public $result; -} - -class SupprAnnonceReturn -{ - /** @var ErrorType */ - public $error; - /** @var boolean */ - public $result; -} - -class SetInfosLoginReturn -{ - /** @var ErrorType */ - public $error; - /** @var boolean */ - public $result; -} - -class SetInfosEntrepIdentite -{ - /** @var string */ - public $isin; - /** @var string */ - public $tel; - /** @var string */ - public $fax; - /** @var string */ - public $web; - /** @var string */ - public $mail; - /** @var string */ - public $activite; - /** @var string */ - public $sirenDoublon; - /** @var string */ - public $waldec; - /** @var string */ - public $moisOppositionInsee; - /** @var string */ - public $domiciliataire; -} - -class SetInfosEntrepLien -{ - /** @var string */ - public $siren; - /** @var double */ - public $pct; - /** @var string */ - public $majMin; - /** @var string */ - public $dateMAJ; - /** @var string */ - public $pays; - /** @var string */ - public $nom; -} - -class SetInfosEntrepScore -{ - /** @var mixed */ - public $encours; - /** @var mixed */ - public $scoreSolv; - /** @var mixed */ - public $scoreDir; - /** @var mixed */ - public $scoreConf; -} - -class SetInfosEntrepEven -{ - /** @var string */ - public $code; -} - -class SetInfosEntrepJugement -{ - /** @var string */ - public $source; - /** @var string */ - public $dateJuge; - /** @var string */ - public $tribunal; - /** @var SetInfosEntrepEven[] */ - public $even; - /** @var string */ - public $admin; - /** @var string */ - public $mand; - /** @var string */ - public $oppo; - /** @var string */ - public $dateParution; - /** @var string */ - public $numParution; - /** @var string */ - public $montant; - /** @var string */ - public $actionsMt; - /** @var string */ - public $actionsNb; - /** @var string */ - public $nic; - /** @var string */ - public $datePaie; - /** @var string */ - public $dateFinPeriode; - /** @var string */ - public $comp; - /** @var string */ - public $nouvAdrCp; - /** @var string */ - public $nouvAdr; - /** @var string */ - public $nouvAdrVille; - /** @var string */ - public $nouvActivite; - /** @var string */ - public $nouvFJ; - /** @var SetInfosEntrepDir[] */ - public $nouvDir; -} - -class SetInfosEntrepDir -{ - /** @var string */ - public $Fonc; - /** @var string */ - public $Genre; - /** @var string */ - public $Pre; - /** @var string */ - public $Nom; - /** @var string */ - public $Dom; -} - -class SetInfosEntrepInfos -{ - /** @var SetInfosEntrepIdentite */ - public $identite; - /** @var SetInfosEntrepJugement */ - public $jugement; - /** @var SetInfosEntrepLien */ - public $actionnaire; - /** @var SetInfosEntrepLien */ - public $participation; - /** @var SetInfosEntrepScore */ - public $score; -} - -class SetInfosEntrepReturn -{ - /** @var ErrorType */ - public $error; - /** @var boolean */ - public $result; -} - -class SearchMandatairesReturn -{ - /** @var ErrorType */ - public $error; - /** @var SearchMandataire[] */ - public $result; -} - -class SearchMandataire -{ - /** @var string */ - public $id; - /** @var string */ - public $mand; -} - -class MandataireReturn -{ - /** @var ErrorType */ - public $error; - /** @var MandataireDetail */ - public $result; -} - -class MandataireDetail -{ - /** @var string */ - public $Nom; - /** @var string */ - public $Prenom; - /** @var string */ - public $tribunal; - /** @var string */ - public $adresse; - /** @var string */ - public $adresseComp; - /** @var string */ - public $ville; - /** @var string */ - public $email; - /** @var string */ - public $web; - /** @var string */ - public $contact; -} - -class ListeJalCollecteReturn -{ - /** @var ErrorType */ - public $error; - /** @var JalCollecte[] */ - public $result; -} - -class JalCollecte -{ - /** @var string */ - public $id; - /** @var string */ - public $nom; -} - -class GeoCodeReturn -{ - /** @var ErrorType */ - public $error; - /** @var GeoCode */ - public $result; -} - -class GeoCode -{ - /** @var string */ - public $latitude; - /** @var string */ - public $longitude; - /** @var string */ - public $precis; - /** @var string */ - public $adresseValidee; - /** @var string */ - public $latitudeDeg; - /** @var string */ - public $longitudeDeg; -} - -class ListeUtilisateursReturn -{ - /** @var ErrorType */ - public $error; - /** @var Utilisateur[] */ - public $result; -} - -class Utilisateur -{ - /** @var int */ - public $idUti; - /** @var int */ - public $idClient; - /** @var string */ - public $login; - /** @var string */ - public $email; - /** @var int */ - public $actif; - /** @var string */ - public $nom; - /** @var string */ - public $prenom; - /** @var string */ - public $reference; -} - -class CmdEnqueteRIB -{ - /** @var string */ - public $banque; - /** @var string */ - public $guichet; - /** @var string */ - public $compte; - /** @var string */ - public $cle; -} - - -class InfosCmdEnquete -{ - /** @var string */ - public $siren; - /** @var string */ - public $Nom; - /** @var string */ - public $Adresse; - /** @var string */ - public $CP; - /** @var string */ - public $Ville; - /** @var string */ - public $Tel; - /** @var string */ - public $Fax; - /** @var string */ - public $Mail; - /** @var string */ - public $AutreTel; - /** @var string */ - public $AutreMail; - /** @var string */ - public $Web; - /** @var CmdEnqueteRIB */ - public $RIB; - /** @var string */ - public $Encours; - /** @var string */ - public $NbEcheances; - /** @var string */ - public $AvisAssureur; - /** @var string */ - public $Type; - /** @var string */ - public $Delai; - /** @var string */ - public $PrecisionsType; - /** @var string */ - public $PrecisionsMontantCA; - /** @var string */ - public $PrecisionsMotif; - /** @var string */ - public $PrecisionsAutre; - /** @var string */ - public $Anciennete; - /** @var string */ - public $AncienneteDuree; - /** @var string */ - public $ImpayeesChoix; - /** @var string */ - public $ImpayeesMontant; - /** @var string */ - public $ImpayeesNombre; - /** @var string */ - public $ImpayeesDate; - /** @var string */ - public $RetardPaiementChoix; - /** @var string */ - public $RetardPaiementMontant; - /** @var string */ - public $RetardPaiementNombre; - /** @var string */ - public $RetardPaiementDate; - /** @var string */ - public $LitigeChoix; - /** @var string */ - public $LitigePrecisions; - /** @var string */ - public $Observation; -} - -class CmdEnqueteReturn -{ - /** @var ErrorType */ - public $error; - /** @var CmdEnquete */ - public $result; -} - -class CmdEnquete -{ - /** @var string */ - public $siren; - /** @var string */ - public $emailCommande; - /** @var string */ - public $dateCommande; - /** @var string */ - public $refCmde; -} - -class LogsClientsReturn -{ - /** @var ErrorType */ - public $error; - /** @var LogsClients */ - public $result; -} - -class LogsClients -{ - /** @var string */ - public $Url; - /** @var string */ - public $Taille; - /** @var int */ - public $Cache; -} - -class ListeSurveillancesCsvReturn -{ - /** @var ErrorType */ - public $error; - /** @var ListeSurveillancesCsv */ - public $result; -} - -class ListeSurveillancesCsv -{ - /** @var string */ - public $Url; - /** @var string */ - public $Taille; - /** @var int */ - public $Cache; -} - -class RechercheHistoReturn -{ - /** @var RechercheHistoCriteres */ - public $criteres; - /** @var int */ - public $nbReponses; - /** @var int */ - public $nbReponsesTotal; - /** @var int */ - public $duree; - /** @var string[] */ - public $mots; - /** @var RechercheHistoReponses[] */ - public $reponses; -} - -class RechercheHistoCriteres -{ - /** @var string */ - public $recherche; - /** @var string */ - public $annee; -} - -class RechercheHistoReponses -{ - /** @var int */ - public $id; - /** @var string */ - public $Pertinence; - /** @var string */ - public $Fichier; - /** @var string */ - public $Annee; - /** @var string */ - public $Code; - /** @var string */ - public $Texte; -} - -class ClientReturn -{ - /** @var ErrorType */ - public $error; - /** @var mixed */ - public $result; -} - -class SetUtilisateurs -{ - /** @var int */ - public $id = null; - /** @var string */ - public $login; - /** @var string */ - public $email; - /** @var string */ - public $password; - /** @var bool */ - public $actif; - - /** - * TEST/PROD - * @var string - */ - public $typeCompte; - - /** - * @var string - */ - public $filtre_ip; - /** - * M/Mme/Mlle - * @var string - */ - public $civilite; - /** @var string */ - public $nom; - /** @var string */ - public $prenom; - /** @var string */ - public $raisonSociale; - /** @var string */ - public $siret; - /** @var string */ - public $adrNum; - /** @var string */ - public $adrIndRep; - /** @var string */ - public $adrTypeVoie; - /** @var string */ - public $adrLibVoie; - /** @var string */ - public $adrCp; - /** @var string */ - public $adrVille; - /** @var string */ - public $adrComp; - /** @var string */ - public $tel; - /** @var string */ - public $fax; - /** @var string */ - public $mobile; - /** @var string */ - public $pref; - /** @var string */ - public $profil; - /** @var string */ - public $dateInscription; - /** @var string */ - public $dateValidation; - /** @var string */ - public $droits; - /** @var string */ - public $referenceParDefaut; - /** @var int */ - public $nbReponses; - /** @var string */ - public $listeEven; - /** @var int */ - public $maxFicheId; -} - -class UtilisateursReturn -{ - /** @var ErrorType */ - public $error; - /** @var boolean */ - public $result; -} - - -class ModeleUtilisateurReturn -{ - /** @var ErrorType */ - public $error; - /** @var boolean */ - public $result; -} - - -class ModeleUtilisateur -{ - /** @var string */ - public $actif; - /** @var string */ - public $typeCompte; - /** @var string */ - public $pref; - /** @var string */ - public $profil; - /** @var string */ - public $droits; -} - -class ListeDroitsReturn -{ - /** @var string */ - public $code; - /** @var string */ - public $desc; -} - -class ListePrefsReturn -{ - /** @var string */ - public $code; - /** @var string */ - public $desc; -} - -class ListeFichierSurvReturn -{ - /** @var ErrorType */ - public $error; - /** @var ListeFichierSurv[] */ - public $result; -} - -class ListeFichierSurv -{ - /** @var string */ - public $UrlFichier; -} - -class MarquesReturn -{ - /** @var ErrorType */ - public $error; - /** @var Marque[] */ - public $result; -} - -class Marque -{ - /** @var string */ - public $Marques; - /** @var string */ - public $Date; - /** @var string */ - public $Depot; - /** @var string */ - public $IdLien; - /** @var string */ - public $UrlLien; - /** @var string */ - public $PdfDispo; - /** @var string */ - public $Classes; - /** @var string */ - public $Perimetre; - /** @var string */ - public $DateExpir; -} - -class PortefeuilleReturn -{ - /** @var ErrorType */ - public $error; - /** @var Portefeuille[] */ - public $result; - /** @var int */ - public $nbReponses; - /** @var int */ - public $nbReponsesTotal; -} - -class Portefeuille -{ - /** @var string */ - public $email; - /** @var string */ - public $siren; - /** @var string */ - public $nic; - /** @var string */ - public $ref; - /** @var string */ - public $dateAjout; - /** @var string */ - public $rs; - /** @var string */ - public $cp; - /** @var string */ - public $ville; - /** @var string */ - public $actif; - /** @var string */ - public $procol; - /** @var string */ - public $indiScore; - /** @var string */ - public $indiScore20; - /** @var string */ - public $indiScorePre; - /** @var string */ - public $indiScore20Pre; - /** @var string */ - public $encours; - /** @var string */ - public $encoursPre; - /** @var string */ - public $indiScoreDate; - /** @var string */ - public $indiScoreDatePre; - /** @var string */ - public $encoursClient; - /** @var string */ - public $dateBilan; - /** @var string */ - public $sourceModif; - /** @var string */ - public $dateDerEnvoi; -} - -class PortefeuilleFiltre -{ - /** @var string */ - public $tri = 'siren'; - /** @var string */ - public $siret = ''; - /** @var string */ - public $ref = ''; - /** @var string */ - public $rs = ''; - -} - -class ClientFiltre -{ - /** @var int */ - public $page = 0; -} - -class InfosLoginData -{ - /** @var int */ - public $idClient; - /** @var string */ - public $nom; - /** @var string */ - public $prenom; - /** @var string */ - public $reference; - /** @var string */ - public $email; - /** @var string */ - public $tel_fix; - /** @var string */ - public $tel_fax; - /** @var string */ - public $tel_mob; - /** @var int */ - public $rech_nbrep; - /** @var string */ - public $formatMail; - /** @var string */ - public $password = ''; - /** - * Profil de l'utilisateur Utilisateur, Administrateur - * @var string - */ - public $profil = 'Utilisateur'; - /** @var string[] */ - public $droits; - /** @var string[] */ - public $pref; -} - -class StatsUtilisateursReturn -{ - -} - -class TribunauxReturn -{ - /** @var Tribunal[] */ - public $result; -} - -class Tribunal -{ - /** Code du tribunal - * @var string - */ - public $code; - /** Nom du tribunal - * @var string - */ - public $nom; -} - -class MandatairesReturn -{ - /** @var Mandataire[] */ - public $result; -} - -class Mandataire -{ - /** Identifiant interne du mandataire - * @var string - */ - public $id; - /** Nom et coordonnées du mandataire - * @var string - */ - public $mand; -} - -class PrivilegesDetailReturn -{ - /** @var PrivilegesDetail[] */ - public $result; -} - -class PrivilegesDetail -{ - /** Numéro du débiteur - * @var string - */ - public $numDebiteur; - - /** Numéro du greffe - * @var string - */ - public $greffe; - - /** Libellé du greffe - * @var string - */ - public $greffeLib; - - /** Date de l'inscription - * @var string - */ - public $dateEven; - - /** Date de fraîcheur de l'information dans la base du greffe - * @var string - */ - public $dateFraiche; - - /** Date de mise à jour dans la base S&D - * @var string - */ - public $dateSD; - - /** Type de privilège : 03 ou 04 - * @var string - */ - public $insType; - - /** Libellé du privilège : Privilège(s) du Trésor ou Privilège(s) sécurité sociale, régimes complémentaires - * @var string - */ - public $insTypeLib; - - /** Numéro d'inscription du privilège au Greffe - * @var string - */ - public $insNum; - - /** Date d'inscription du privilège au Greffe - * @var string - */ - public $insDate; - - /** Date d'échéance du privilège au Greffe - * @var string - */ - public $insDateEch; - - /** Objet de l'inscription ou descriptif du privilège au Greffe - * @var string - */ - public $insObjet; - - /** Montant de l'inscription privilège - * @var double - */ - public $insMontant; - - /** Devise du privilège - * @var string - */ - public $insDev; - - /** Date de caducité ou de péremption du privilège - * @var string - */ - public $insDateFin; - - /** Date de radiation du privilège - * @var string - */ - public $radDate; - - /** Date de la dernière mention de radiation partielle - * @var string - */ - public $radMention; - - /** Libellé de Mention de radiation partielle la plus récente - * @var string - */ - public $radPartiel; - - /** Montant de la radiation partielle - * @var double - */ - public $radPartMt; - - /** Devise de la radiation partielle - * @var string - */ - public $radDev; - - /** Nom du prinicpal créancier - * @var string - */ - public $creNom; - - /** Adresse du créancier ligne 1 - * @var string - */ - public $creAdresse1; - - /** Adresse du créancier ligne 2 - * @var string - */ - public $creAdresse2; - - /** Adresse du créancier ligne 3 - * @var string - */ - public $creAdresse3; - - /** Code postal du créancier - * @var string - */ - public $creCP; - - /** Ville du créancier - * @var string - */ - public $creVille; - - /** Pays du créancier - * @var string - */ - public $crePays; - - /** Liste textuelle des autres créanciers (si nécessaire) - * @var string - */ - public $creAutres; -} - -class PrivilegesCumulReturn -{ - /** @var PrivilegesCumul[] */ - public $result; -} - -class PrivilegesCumul -{ - /** Nombre de privilèges pour ce type - * @var int - */ - public $nb; - - /** Type de privilège : 03 ou 04 - * @var string - */ - public $insType; - - /** Libellé du privilège : Privilège(s) du Trésor ou Privilège(s) sécurité sociale, régimes complémentaires - * @var string - */ - public $insTypeLib; - - /** Date de fraîcheur de l'information dans la base du greffe - * @var string - */ - public $dateFraiche; - - /** Date de la dernière inscription - * @var string - */ - public $dateDerInsc; - - /** Nom du dernier créancier - * @var string - */ - public $nomDerCre; - - /** Numéro du débiteur - * @var string - */ - public $numDebiteur; - - /** Libellé du greffe - * @var string - */ - public $greffeLib; - - /** Date de mise à jour dans la base S&D - * @var string - */ - public $dateMajSD; - - /** Montant cumulé pour ce type d'inscription - * @var double - */ - public $insCumul; -} - -class SearchActReturn -{ - /** @var int */ - public $nbReponses; - /** @var int */ - public $nbReponsesTotal; - /** @var EntrepriseActItem[] */ - public $result; -} - -class EntrepriseActItem -{ - /** - * Identifiant S&D dans le moteur de recherche - * @var int - */ - public $id; - - /** - * Scoring de pertinence de la recherche - * @var int - */ - public $Pertinence; - - /** - * Siret de l'établissement - * @var string - */ - public $Siret; - - /** - * Siren de l'entreprise - * @var string - */ - public $Siren; - - /** - * Nic de l'établissement - * @var string - */ - public $Nic; - - /** - * Etablissement siège ou secondaire - * @var bool - */ - public $Siege; - - /** - * Nom de l'entreprise - * @var string - */ - public $Nom; - - /** - * Complément de nom - * @var string - */ - public $Nom2; - - /** - * Sigle de l'entreprise - * @var string - */ - public $Sigle; - - /** - * Enseigne de l'établissement - * @var string - */ - public $Enseigne; - - /** - * Adresse de l'établissement - * @var string - */ - public $Adresse; - - /** - * Complément d'adresse de l'établissement - * @var string - */ - public $Adresse2; - - /** - * Code postal - * @var string - */ - public $CP; - - /** - * Ville - * @var string - */ - public $Ville; - - /** Téléphone - * @var string - */ - public $Tel; - - /** - * Télécopie - * @var string - */ - public $Fax; - - /** - * Forme Juridique de l'entreprise - * @var string - */ - public $FJ; - - /** - * Libellé de la forme juridique - * @var string - */ - public $FJLib; - - /** - * Etablissement actif ou inactif - * @var bool - */ - public $Actif; - - /** - * Code NAF de l'établissement - * @var string - */ - public $NafEtab; - - /** - * Code NAF de l'entreprise - * @var string - */ - public $NafEnt; - - /** - * Libellé du NAF de l'entreprise - * @var string - */ - public $NafEntLib; - - /** - * Raison Sociale ou Nom de l'actionnaire - * @var string - */ - public $ActNomRs; - - /** - * Pays de l'actionnaire - * @var string - */ - public $ActPays; - - /** - * Date de l'actionnariat - * @var string - */ - public $ActDateLien; - - /** - * Actionnaire actif - * @var string - */ - public $ActActif; - - /** - * Participation minimum - * @var string - */ - public $ActPmin; - -} - - -class CommandeEnqueteReturn -{ - /** @var string */ - public $siren; - - /** @var string */ - public $emailCommande; - - /** @var string */ - public $dateCommande; - - /** @var string */ - public $refCmde; -} diff --git a/library/WsScore/Interne/v0.3/Config.php b/library/WsScore/Interne/v0.3/Config.php deleted file mode 100644 index 49a6a6a7..00000000 --- a/library/WsScore/Interne/v0.3/Config.php +++ /dev/null @@ -1,91 +0,0 @@ - 'ErrorType', - 'RefCommande' => 'RefCommande', - 'InfosDemandeur' => 'InfosDemandeur', - 'ListeCmdPiecesReturn' => 'ListeCmdPiecesReturn', - 'CmdPiecesReturn' => 'CmdPiecesReturn', - 'CmdPiecesDetail' => 'CmdPiecesDetail', - 'InfoCommandePieces' => 'InfoCommandePieces', - 'ListeCmdBilanReturn' => 'ListeCmdBilanReturn', - 'CmdBilanReturn' => 'CmdBilanReturn', - 'CmdBilanDetail' => 'CmdBilanDetail', - 'InfoCommandeBilan' => 'InfoCommandeBilan', - 'ListeCmdActeReturn' => 'ListeCmdActeReturn', - 'CmdActeReturn' => 'CmdActeReturn', - 'CmdActeDetail' => 'CmdActeDetail', - 'InfoCommandeActe' => 'InfoCommandeActe', - 'ListeCmdKbisReturn' => 'ListeCmdKbisReturn', - 'CmdKbisReturn' => 'CmdKbisReturn', - 'CmdKbisDetail' => 'CmdKbisDetail', - 'InfoCommandeKbis' => 'InfoCommandeKbis', - 'ListeCmdAssoReturn' => 'ListeCmdAssoReturn', - 'CmdAssoReturn' => 'CmdAssoReturn', - 'CmdAssoDetail' => 'CmdAssoDetail', - 'InfoCmdAsso' => 'InfoCmdAsso', - 'CommandeReturnType' => 'CommandeReturnType', - 'CmdFiltrePieces' => 'CmdFiltrePieces', - 'CmdStatut' => 'CmdStatut', - 'ListeConventionsReturn' => 'ListeConventionsReturn', - 'Convention' => 'Convention', - 'AnnonceCollecteReturn' => 'AnnonceCollecteReturn', - 'AnnonceCollecte' => 'AnnonceCollecte', - 'AnnonceEvenement' => 'AnnonceEvenement', - 'DevisesReturn' => 'DevisesReturn', - 'Devise' => 'Devise', - 'DevisesCoursReturn' => 'DevisesCoursReturn', - 'DevisesCours' => 'DevisesCours', - 'PieceReturn' => 'PieceReturn', - 'PieceResult' => 'PieceResult', - 'SetInfosMandataire' => 'SetInfosMandataire', - 'SetMandataireReturn' => 'SetMandataireReturn', - 'SetInfosEntrepIdentite' => 'SetInfosEntrepIdentite', - 'SetInfosEntrepLien' => 'SetInfosEntrepLien', - 'SetInfosEntrepScore' => 'SetInfosEntrepScore', - 'SetInfosEntrepEven' => 'SetInfosEntrepEven', - 'SetInfosEntrepJugement' => 'SetInfosEntrepJugement', - 'SetInfosEntrepDir' => 'SetInfosEntrepDir', - 'SetInfosEntrepInfos' => 'SetInfosEntrepInfos', - 'SetInfosEntrepReturn' => 'SetInfosEntrepReturn', - 'MandatairesReturn' => 'MandatairesReturn', - 'Mandataire' => 'Mandataire', - 'MandataireReturn' => 'MandataireReturn', - 'MandataireDetail' => 'MandataireDetail', - 'ListeJalCollecteReturn' => 'ListeJalCollecteReturn', - 'JalCollecte' => 'JalCollecte', - 'GeoCodeReturn' => 'GeoCodeReturn', - 'GeoCode' => 'GeoCode', - 'InfosCmdEnquete' => 'InfosCmdEnquete', - 'CmdEnqueteReturn' => 'CmdEnqueteReturn', - 'CmdEnquete' => 'CmdEnquete', - 'CmdEnqueteRIB' => 'CmdEnqueteRIB', - 'LogsClientsReturn' => 'LogsClientsReturn', - 'LogsClients' => 'LogsClients', - 'ListeSurveillancesCsvReturn' => 'ListeSurveillancesCsvReturn', - 'ListeSurveillancesCsv' => 'ListeSurveillancesCsv', - 'RechercheHistoReturn' => 'RechercheHistoReturn', - 'RechercheHistoCriteres' => 'RechercheHistoCriteres', - 'RechercheHistoReponses' => 'RechercheHistoReponses', - 'ListeFichierSurvReturn' => 'ListeFichierSurvReturn', - 'ListeFichierSurv' => 'ListeFichierSurv', - 'MarquesReturn' => 'MarquesReturn', - 'Marque' => 'Marque', - 'PortefeuilleReturn' => 'PortefeuilleReturn', - 'Portefeuille' => 'Portefeuille', - 'PortefeuilleFiltre' => 'PortefeuilleFiltre', - 'StatsUtilisateursReturn' => 'StatsUtilisateursReturn', - 'TribunauxReturn' => 'TribunauxReturn', - 'Tribunal' => 'Tribunal', - 'SearchMandatairesReturn' => 'SearchMandatairesReturn', - 'SearchMandataire' => 'SearchMandataire', - 'PrivilegesCumulReturn' => 'PrivilegesCumulReturn', - 'PrivilegesCumul' => 'PrivilegesCumul', - 'PrivilegesDetailReturn' => 'PrivilegesDetailReturn', - 'PrivilegesDetail' => 'PrivilegesDetail', - 'SearchActReturn' => 'SearchActReturn', - 'EntrepriseActItem' => 'EntrepriseActItem', - 'CommandeEnqueteReturn' => 'CommandeEnqueteReturn', - 'DirigeantOp' => 'DirigeantOp', - 'Depot' => 'Depot', - 'IdentiteLight' => 'IdentiteLight', -); \ No newline at end of file diff --git a/library/WsScore/Interne/v0.3/Interne.php b/library/WsScore/Interne/v0.3/Interne.php deleted file mode 100644 index 5f0f2d7a..00000000 --- a/library/WsScore/Interne/v0.3/Interne.php +++ /dev/null @@ -1,3387 +0,0 @@ -authenticate(); - //Initialisation - if (empty($tabTypes)) $tabTypes = array('03','04'); - debugLog('I',"Liste des privilèges detail sur $siren ".print_r($tabTypes, true),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iPriv = new MPrivileges(); - $ret = $iPriv->getPrivilegesDetail($siren, $tabTypes); //@todo : date - - $tabRet = array(); - if (count($ret)>0) { - foreach ($ret as $item ) { - $privileges = new PrivilegesDetail(); - $privileges->numDebiteur = $item['numDebiteur']; - $privileges->greffe = $item['greffe']; - $privileges->greffeLib = $item['greffeLib']; - $privileges->dateEven = $item['dateEven']; - $privileges->dateFraiche = $item['dateFraiche']; - $privileges->dateSD = $item['dateSD']; - $privileges->insType = $item['insType']; - $privileges->insTypeLib = $item['insTypeLib']; - $privileges->insNum = $item['insNum']; - $privileges->insDate = $item['insDate']; - $privileges->insDateEch = $item['insDateEch']; - $privileges->insObjet = $item['insObjet']; - $privileges->insMontant = $item['insMontant']; - $privileges->insDev = $item['insDev']; - $privileges->insDateFin = $item['insDateFin']; - $privileges->radDate = $item['radDate']; - $privileges->radMention = $item['radMention']; - $privileges->radPartiel = $item['radPartiel']; - $privileges->radPartMt = $item['radPartMt']; - $privileges->radDev = $item['radDev']; - $privileges->creNom = $item['creNom']; - $privileges->creAdresse1 = $item['creAdresse1']; - $privileges->creAdresse2 = $item['creAdresse2']; - $privileges->creAdresse3 = $item['creAdresse3']; - $privileges->creCP = $item['creCP']; - $privileges->creVille = $item['creVille']; - $privileges->crePays = $item['crePays']; - $privileges->creAutres = $item['creAutres']; - $tabRet[] = $privileges; - } - } - $this->wsLog('privdetail', $siren, join(',',$tabTypes)); - $output = new PrivilegesDetailReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne les privilèges cumulés - * @param string $siren - * @param array $tabTypes - * @return PrivilegesCumulReturn - */ - public function getPrivilegesCumul($siren, $tabTypes=array('03','04')) - { - $this->authenticate(); - //Initialisation - if (empty($tabTypes)) $tabTypes = array('03','04'); - debugLog('I',"Liste des privilèges cumul sur $siren ".print_r($tabTypes, true),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iPriv = new MPrivileges(); - $ret = $iPriv->getPrivilegesCumul($siren, $tabTypes); - $tabRet = array(); - - if (isset($ret['03']) && count($ret['03']>0)){ - $value = $ret['03']; - $priv = new PrivilegesCumul(); - $priv->insType = '03'; - $priv->nb = $value['nb']; - $priv->insTypeLib = $value['insTypeLib']; - $priv->dateFraiche = $value['dateFraiche']; //@todo : date - $priv->dateDerInsc = $value['dateDerInsc']; //@todo : date - $priv->nomDerCre = $value['nomDerCre']; - $priv->numDebiteur = $value['numDebiteur']; - $priv->greffeLib = $value['greffeLib']; - $priv->dateMajSD = $value['dateMajSD']; //@todo : date - $priv->insCumul = $value['insCumul']; - $tabRet[] = $priv; - } - - if (isset($ret['04']) && count($ret['04']>0)){ - $value = $ret['04']; - $priv = new PrivilegesCumul(); - $priv->insType = '04'; - $priv->nb = $value['nb']; - $priv->insTypeLib = $value['insTypeLib']; - $priv->dateFraiche = $value['dateFraiche']; //@todo : date - $priv->dateDerInsc = $value['dateDerInsc']; //@todo : date - $priv->nomDerCre = $value['nomDerCre']; - $priv->numDebiteur = $value['numDebiteur']; - $priv->greffeLib = $value['greffeLib']; - $priv->dateMajSD = $value['dateMajSD']; //@todo : date - $priv->insCumul = $value['insCumul']; - $tabRet[] = $priv; - } - $this->wsLog('privcumul', $siren, print_r($tabTypes,1)); - $output = new PrivilegesCumulReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Liste les mandataires correspondant à un nom donné - * @param mixed $codeTribunal Identifiants BODACC du tribunal ou tableau d'Identifiants numériques des cours d'appel - * @param array $type Type de mandataire (A)dministrateur, (M)andataire, (O)ppositions, (N)otaires, a(V)ocat - * @param int $cpDep Code postal ou département du mandataire - * @return SearchMandatairesReturn - */ - public function searchMandataires($nom, $type=array('A','M'), $cpDep=0) - { - $this->authenticate(); - - //Initialisation - if (empty($type)) $type = array('A','M'); - if (empty($cpDep)) $cpDep = 0; - $tabRet = array(); - - debugLog('I',"Recherche de Mandataires '$nom' (Dep=$cpDep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $iInsee = new MInsee(); - $tabTmp = $iInsee->searchMandataires($nom, true, $type, $cpDep); - - foreach ($tabTmp as $i=>$mand) - { - $mandataire = new SearchMandataire(); - $mandataire->id = 'm'.$i; - $mandataire->mand = utf8_encode($mand); - $tabRet[] = $mandataire; - - } - $output = new SearchMandatairesReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des tribunaux ou Compétences demandées - * @param array|string $tabTypes Tableau des types de Compétences demandés 'C':Commerce, 'I':Instance, 'G':TGI, 'A':Préfectures, 'B':Sous-préf, 'D':Tribunal Administratif, 'H':Prud'hommes, 'L': Cour d'Appel, 'M': Tribunal Mixte, 'O':CCI, 'V': Cour Administrative d'Appel - * @return TribunauxReturn - **/ - public function getTribunaux($tabTypes) - { - $this->authenticate(); - - //Initialisation - if (empty($tabTypes)) $tabTypes = array(); - if (is_string($tabTypes)) $tabTypes = (array)$tabTypes; - - $iBodacc = new MBodacc(); - debugLog('I',"Liste des tribunaux demandées",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabTmp = $iBodacc->getListeTribunaux(); - //@todo : Retourner liste en ordre alphabétique - $tabRet = array(); - if (count($tabTypes)==0) { - foreach ($tabTmp as $i => $tribunal){ - $tri = new Tribunal(); - $tri->code = $i; - $tri->nom = $tribunal['nom']; - $tabRet[] = $tri; - } - } else { - foreach ($tabTmp as $i=>$tribunal){ - $type = substr($i,-1); - if ( in_array($type, $tabTypes) ){ - $tri = new Tribunal(); - $tri->code = $i; - $tri->nom = $tribunal['nom']; - $tabRet[] = $tri; - } - } - } - $this->wsLog('tribunaux', '', print_r($tabTypes,1)); - $output = new TribunauxReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Enregistrement des informations saisie manuellement - * @param string $siret - * @param int $idEntreprise - * @param SetInfosEntrepInfos $tabInfos - * @return SetInfosEntrepReturn - */ - public function setInfosEntrep( $siret, $idEntreprise, $tabInfos ) - { - $this->authenticate(); - - //Initialisation - $tabRet = array(); - $iBodacc = new MBodacc(); - $iInsee = new MInsee(); - $result = false; - - if (!$this->checkEdition()) { - - $error->errnum = 1; - $error->errmsg = 'Code Client Incorrect'; - - } else { - - $siren = substr($siret,0,9); - $nic = substr($siret,9,5); - - $iDb = new WDB(); - - $tabIdentite = $tabInfos->identite; - $tabJugement = $tabInfos->jugement; - $tabActio = $tabInfos->actionnaire; - $tabParti = $tabInfos->participation; - $tabScores = $tabInfos->score; - - // Mise à jour de l'identité - if (trim(strtolower($tabIdentite->web))=='http://'){ - $web = ''; - } else { - $web = trim($tabIdentite->web); - } - $tabUpdate = array( - 'isin' => trim($tabIdentite->isin), - 'tel' => trim($tabIdentite->tel), - 'fax' => trim($tabIdentite->fax), - 'web' => $web, - 'mail' => trim($tabIdentite->mail), - 'activite' => stripslashes(trim($tabIdentite->activite)), - 'sirenDoublon' => substr(str_replace(' ','',strtr($tabIdentite->sirenDoublon, '"\'./- ,\*#()',' ')),0,9), - 'waldec' => trim(str_replace(' ','',strtr($tabIdentite->waldec, '"\'./- ,\*#()',' '))), - ); - - /** @todo non traitées : [capital_mt] => 335400, [capital_dev] => EUR **/ - if ( !$iDb->update('infos_entrep', $tabUpdate, "siren='$siren'") ){ - if (!$iDb->insert('infos_entrep', array_merge(array('siren'=>$siren),$tabUpdate))){ - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - $output = new SetInfosEntrepReturn(); - $output->error = $error; - $output->result = $result; - return $output; - exit; - } - } - // Fin mise à jour identité - - // Opposition INSEE - if ( $tabIdentite->moisOppositionInsee>0 && - $tabIdentite->moisOppositionInsee<=(date('Ym')*1) ){ - - $iDb2 = new WDB('insee'); - if ( !$iDb2->insert('insee_nondiff', array('siren'=>$siren, 'insEVE'=>795, 'mois'=>$tabIdentite->moisOppositionInsee)) ){ - if ( $iDb2->getLastErrorNum()<>1062 ) - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de l'inscription à la liste des oppositions de la sphère commerciale INSEE pour $siren au mois de ".$tabIdentite['moisOppositionInsee']." : ".EOL.print_r($tabIdentite, true).EOL.$iDb2->getLastError()); - } - - } - // Fin opposition INSEE - - // Refus d'inscription au RCS - if (isset($tabIdentite->moisRefusRCS) && $tabIdentite->moisRefusRCS>0 - && $tabIdentite->moisRefusRCS<=(date('Ym')*1)) { - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteLight($siren); - if ($nic<10) $nic=$entrep['Nic']; - $cj1=substr($entrep['FJ'],0,1); - $iDb2 = new WDB('insee'); - /** Insertion dans la tables des exclusions **/ - $tabInsert = array( - 'siren' => $siren, - 'nic' => $nic, - 'idSaisie' => $this->tabInfoUser['id'], - 'cj1' => $cj1, - 'insEVE' => 'RCS', - 'mois' => $tabIdentite->moisRefusRCS, - ); - if (!$iDb2->insert('insee_nondiff', $tabInsert)) - if ($iDb2->getLastErrorNum()<>1062) - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de l'inscription à la liste des refus d'enregistrement A au RCS pour $siren au mois de ".$tabIdentite->moisRefusRCS." : ".EOL.print_r($tabInsert, true).EOL.print_r($tabIdentite, true).EOL.$iDb2->getLastError()); - - /** Insertion dans la tables des évènements **/ - $tabInsert = array( - 'insSIREN' => $siren, - 'siretValide' => $iInsee->valideSiren($siren,$nic), - 'insNIC' => $nic, - 'insEVE' => 'RCS', - 'insDATEVE' => $tabIdentite->moisRefusRCS.'28', - 'insDATEMAJ' => date('YmdHis'), - 'idFlux' => date('Ymd')); - if (!$iDb2->insert('insee_even', $tabInsert)) - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de l'inscription à la liste des refus d'enregistrement B au RCS pour $siren au mois de ".$tabIdentite['moisOppositionInsee']." : ".EOL.print_r($tabInsert, true).EOL.print_r($tabIdentite, true).EOL.$iDb2->getLastError()); - - } - // Fin refus d'inscription au RCS - - // Domiciliataire - if (!empty($tabIdentite->domiciliataire) && $siren>1000) { - if ($tabIdentite->domiciliataire=='oui' || $tabIdentite->domiciliataire=='non') { - // L'entreprise et ces établissements seront mis à jour automatiquement ce soir - $iDb->query("INSERT IGNORE INTO jo.tabAdrDom (siren,nic,siege, etActif, nom, sigle, enseigne, adrNum, adrBtq, adrTypVoie, adrLibVoie, ville, cp, depComEt, adrComp, cj, apen,apet, dateInsert) - SELECT siren, nic, siege, actif AS etActif, raisonSociale AS nom, sigle, enseigne, adr_num as adrNum, adr_btq AS adrBtq, adr_typeVoie AS adrTypVoie, adr_libVoie AS adrLibVoie, adr_ville AS ville, adr_cp AS cp, CONCAT(adr_dep,adr_com) AS depComEt, adr_comp AS adrComp, cj, ape_entrep AS apen, ape_etab AS apet, DATE(NOW()) as dateInsert - FROM jo.etablissements WHERE siren=$siren;", false); - } - // Si demande de suppression, on force l'indicateur "" - if ($tabIdentite->domiciliataire=='non') { - $tabUpdate=array('pasEntrepDom'=>1); - if (!$iDb->update('tabAdrDom', $tabUpdate, "siren=$siren")) - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de la suppression du marqueur de domiciliation pour $siren :".EOL.print_r($tabUpdate, true).EOL.$iDb->getLastError()); - } - } - // Fin domiciliataire - - - // Insertion des scores - $tabUpdate = array(); - $setScore = false; - if ( $tabScores->encours!='' || $tabScores->encours!=null ){ - $tabUpdate['encours'] = $tabScores->encours; - $setScore = true; - } - if ( $tabScores->scoreSolv!='' ){ - $tabUpdate['scoreSolv'] = $tabScores->scoreSolv; - $setScore = true; - } - if ( $tabScores->scoreDir!='' ){ - $tabUpdate['scoreDir'] = $tabScores->scoreDir; - $setScore = true; - } - if ( $tabScores->scoreConf!='' ){ - $tabUpdate['scoreConf'] = $tabScores->scoreConf; - $setScore = true; - } - if ( $setScore ){ - // Mise à jour des Cute Offs - if ( !$iDb->update('scores_cutoff', $tabUpdate, "siren=$siren") ){ - if ( !$iDb->insert('scores_cutoff', array_merge(array( - 'siren' => $siren, - 'dateInsert' => date('Ymd') - ), $tabUpdate)) ){ - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", print_r($tabScores, true).EOL.$iDb->getLastError()); - } - } - } - // Fin insertion des scores - - // Insertion du jugement - $tabEven = array(); - if (is_array($tabJugement->even->item) && count($tabJugement->even->item)>0){ - foreach($tabJugement->even->item as $even){ - $tabEven[] = $even->code; - } - } elseif (!empty($tabJugement->even->item->code)) { - $tabEven[] = $tabJugement->even->item->code; - } - $nic = $tabJugement->nic*1; - $entrep = $iInsee->getIdentiteLight($siren, $nic); - if ( $nic>0 && $tabEven[0]->code==6700 && $entrep['Siege']==0 ){ - // Radiation d'un établissement - $tabEven[0]->code = 6600; - } - - if ( count($tabEven)>0 ) - { - $idAdmin = str_replace('m','',trim($tabJugement->admin)); - $idMand = str_replace('m','',trim($tabJugement->mand)); - $idOppo = str_replace('m','',trim($tabJugement->oppo)); - - /** Nom et Identifiant de l'opérateur de saisie **/ - $iDbCrm = new WDB('sdv1'); - $rep=$iDbCrm->select('utilisateurs', 'id', "login='".$this->tabInfoUser['login']."'"); - $idUser=$rep[0][0]; - - $tabSource=explode('_',$tabJugement->source); - $source=@$tabSource[0]; - $numJal=@$tabSource[1]; - - $dateSource=WDate::dateT('d/m/Y', 'Ymd', trim($tabJugement->dateParution))*1; - if ($dateSource<20000101) - $dateSource=date('YmdHis'); - - $montant=trim(preg_replace('/[^0-9]/', '', $tabJugement->montant))*1; - $actionsMt=trim(preg_replace('/[^0-9]/', '', $tabJugement->actionsMt))*1; - $actionsNb=trim(preg_replace('/[^0-9]/', '', $tabJugement->actionsNb))*1; - if ($montant>0 && ($actionsNb>0 || $actionsMt>0)) { - if ($actionsNb>0) $actionsMt=$montant/$actionsNb; - elseif ($actionsMt>0) $actionsNb=$montant/$actionsMt; - } - - //@todo : ça ne va pas marcher ici - $strDir=''; - $tabNouvDir = array(); - if ( is_array($tabJugement->nouvDir->item) && count($tabJugement->nouvDir->item)>0 ){ - $tabNouvDir = $tabJugement->nouvDir->item; - } else { - $tabNouvDir[] = $tabJugement->nouvDir; - } - - if (count($tabNouvDir)>0) { - foreach( $tabNouvDir as $dir ){ - if ( intval($dir->Fonc)>0 ){ - $strDir.= $iBodacc->getFctDir($dir->Fonc).' : '. - $dir->Genre.' '. - ucwords(strtolower($dir->Pre)).' '. - strtoupper($dir->Nom); - if (!empty($dir->Dom)) { - $strDir.= ', domicilié à '.$dir->Dom.'. '; - } - } - } - } - - if ( trim($tabJugement->nouvAdrCp)<>'' ){ - $strAdr = stripslashes(trim($tabJugement->nouvAdr).', '. - trim($tabJugement->nouvAdrCp).' '. - trim($tabJugement->nouvAdrVille)); - } else { - $strAdr=''; - } - - if (count($tabEven)>1){ - $strEven = implode(';',array_slice($tabEven, 1)); - } else { - $strEven = ''; - } - - $tabUpdate = array( - 'strEven' => $strEven, - 'sirenValide' => $iInsee->valideSiren($siren), - 'dateCessationPaiement' => empty($tabJugement->datePaie) ? '' : - WDate::dateT('d/m/Y', 'Y-m-d', trim($tabJugement->datePaie)), - 'dateEffetFinP' => empty($tabJugement->dateFinPeriode) ? '' : - WDate::dateT('d/m/Y', 'Y-m-d', trim($tabJugement->dateFinPeriode)), - 'tribunal' => trim($tabJugement->tribunal), - 'montant' => $montant, - 'actionsNb' => $actionsNb, - 'inter1type' => 'A', - 'inter1id' => $idAdmin, - 'inter1nom' => $iInsee->getMandatairesParId($idAdmin), - 'inter2type' => 'M', - 'inter2id' => $idMand, - 'inter2nom' => $iInsee->getMandatairesParId($idMand), - 'inter3type' => 'O', - 'inter3id' => $idOppo, - 'inter3nom' => $iInsee->getMandatairesParId($idOppo), - 'complement' => stripslashes(trim($tabJugement->comp)), - 'nouvActivite' => stripslashes(trim($tabJugement->nouvActivite)), - 'nouvDir' => stripslashes(trim($strDir)), - 'nouvAdr' => $strAdr, - 'nouvFJ' => trim($tabJugement->nouvFJ), - 'raisonSociale' => $entrep['Nom'], - 'adresse' => $entrep['Adresse'], - 'codePostal' => $entrep['CP'], - 'ville' => $entrep['Ville'], - 'source' => $source, - 'idSaisie' => $idUser, - 'parutionIdJal' => $numJal, - 'parutionNum' => $tabJugement->numParution, - ); - $dateJuge = WDate::dateT('d/m/Y','Y-m-d',trim($tabJugement->dateJuge)); - $tabInsert = array_merge( $tabUpdate, array( - 'siren' => $siren, - 'dateJugement' => $dateJuge, - 'typeEven' => $tabEven[0], - 'dateSource' => $dateSource, - )); - if ( !$iDb->insert('annonces', array_merge($tabInsert,array('dateInsert'=>date('YmdHis'))), true) ){ - if ( !$iDb->update('annonces', $tabUpdate, "siren=$siren AND dateJugement='$dateJuge' AND typeEven=".$tabEven[0], true)){ - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - $output = new SetInfosEntrepReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - } - } - //Fin insertion jugement - - // Insertion actionnaire - if ( trim($tabActio->siren)!='' ) - { - $nom = $pays = $dateMAJ = ''; - $ppPm = 'P'; - $pct = trim(str_replace(',','.',$tabActio->pct))*1; - $siren2 = preg_replace('/[^0-9]/','', $tabActio->siren); - $entrep2 = $iInsee->getIdentiteEntreprise($siren); - $nom2 = $entrep2['Nom']; - $pays2 = $entrep2['Pays']; - if ($pays2=='') $pays2='FRA'; - - if (substr($entrep2['FJ'],0,1)*1<>1) $ppPm='M'; - $entrep = $iInsee->getIdentiteEntreprise($siren2); - $nom = $entrep['Nom']; - $pays = trim($entrep['Pays']); - if ($pays=='') $pays='FRA'; - if (trim($tabActio->nom)!='') $nom = $tabActio->nom; - if ($tabActio->pays!='XXX') $pays = $tabActio->pays; - - if (trim($tabActio->dateMAJ)!='JJ/MM/AAAA' && trim($tabActio->dateMAJ)!=''){ - $dateMAJ = WDate::dateT('d/m/Y', 'Y-m-d', trim($tabActio->dateMAJ)); - } - - if ($tabActio->majMin=='maj') $majMin='+'; - elseif ($tabActio->majMin=='min') $majMin='-'; - else $majMin=''; - - $tabUpdate = array( - //'Siren1'=> $siren, - 'Pmin'=> $pct, - 'Pmax'=> $pct, - 'MajMin'=> $majMin, - 'PpPm'=> $ppPm, - //'Siren2'=> $siren2, - //'RaisonSociale'=> $nom, - //'Pays'=> $pays, - 'dateLien'=> $dateMAJ, - ); - - $tabInsert1 = array_merge($tabUpdate, array('ActionPart' => 1), - array( - 'Siren1'=> $siren, - 'Siren2'=> $siren2, - 'RaisonSociale'=> $nom, - 'Pays'=> $pays, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); Zend_Registry::get('WsLogger')->info('INSERTION ACTIONNAIRE : '.print_r($tabInsert1, 1)); - $res = $iDb->select('liens', 'count(*)', - "Siren1=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge( - $tabUpdate, array('ActionPart'=>1)), - "siren=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))", true)) - $errMaj=1016166; - } else { - if (!$iDb->insert('liens', $tabInsert1, true)) - $errMaj=1016167; - } - - $tabInsert2 = array_merge($tabUpdate, array('ActionPart' => 2), - array( 'Siren1' => $siren2, - 'Siren2'=> $siren, - 'RaisonSociale'=> $nom2, - 'Pays'=> $pays2, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); - $res=$iDb->select('liens', 'count(*)', "Siren1=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>2)), "siren=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))", true)) - $errMaj=1016168; - } else { - if (!$iDb->insert('liens', $tabInsert2, true)) - $errMaj=1016169; - } - } - // Fin insertion actionnaire - - //Insertion participation - if ( trim($tabParti->siren)<>'' ) { - $nom = $pays = $dateMAJ = ''; - $ppPm = 'P'; - $pct = trim(str_replace(',','.',$tabParti->pct))*1; - $siren2 = preg_replace('/[^0-9]/','', $tabParti->siren); - $entrep2 = $iInsee->getIdentiteEntreprise($siren); - $nom2 = $entrep2['Nom']; - $pays2 = $entrep2['Pays']; - if ($pays2=='') $pays2='FRA'; - - if (substr($entrep2['FJ'],0,1)*1<>1) $ppPm='M'; - $entrep = $iInsee->getIdentiteEntreprise($siren2); - $nom = $entrep['Nom']; - $pays = trim($entrep['Pays']); - if ( $pays=='' ) $pays='FRA'; - if ( trim($tabParti->nom)<>'' ) $nom=$tabParti->nom; - if ( $tabParti->pays<>'XXX' ) $pays=$tabParti->pays; - - if (trim($tabParti->dateMAJ)<>'JJ/MM/AAAA' && trim($tabParti->dateMAJ)<>'') - $dateMAJ=WDate::dateT('d/m/Y', 'Y-m-d', trim($tabParti->dateMAJ)); - - if ($tabParti->majMin=='maj') $majMin='+'; - elseif ($tabParti->majMin=='min') $majMin='-'; - else $majMin=''; - - $tabUpdate = array( - 'Pmin'=> $pct, - 'Pmax'=> $pct, - 'MajMin'=> $majMin, - 'PpPm'=> $ppPm, - 'dateLien'=> $dateMAJ, - ); - - $tabInsert1 = array_merge($tabUpdate, array( 'ActionPart' => 2 ), - array( 'Siren1'=> $siren, - 'Siren2'=> $siren2, - 'RaisonSociale'=> $nom, - 'Pays'=> $pays, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); - $res=$iDb->select('liens', 'count(*)', "Siren1=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>2)), "siren=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))", true)) - $errMaj=10168; - } else { - if (!$iDb->insert('liens', $tabInsert1, true)) - $errMaj=10169; - } - - $tabInsert2 = array_merge($tabUpdate, array( 'ActionPart' => 1 ), - array( 'Siren1'=> $siren2, - 'Siren2'=> $siren, - 'RaisonSociale'=> $nom2, - 'Pays'=> $pays2, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); - $res=$iDb->select('liens', 'count(*)', "Siren1=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>1)), "siren=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))", true)) - $errMaj=10170; - } else { - if (!$iDb->insert('liens', $tabInsert2, true)) - $errMaj=10171; - } - } - // Fin insertion participation - - if ($errMaj>0){ - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - } else { - $result = true; - } - } - $output = new SetInfosEntrepReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Commande de bilan - * @param InfoCommandeBilan $infoCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdBilanReturn - */ - public function setCmdBilan( InfoCommandeBilan $infoCommande, InfosDemandeur $infosDemandeur ) - { - - } - - /** - * Renvoi des informations sur une commande de bilan - * @param string $reference - * @return CmdBilanReturn - */ - public function getCmdBilan( $reference ) - { - - } - - /** - * Commande d'acte - * @param InfoCommandeActe $infoCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdActeReturn - */ - public function setCmdActe( $infoCommande, $infosDemandeur ) - { - - } - - /** - * Renvoi des informations sur une commande d'acte - * @param string $reference - * @return CmdActeReturn - */ - public function getCmdActe( $reference ){} - - /** - * Commande de kbis - * @param InfoCommandeKbis $infoCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdKbisReturn - */ - public function setCmdKbis( InfoCommandeKbis $infoCommande, InfosDemandeur $infosDemandeur ) - { - $this->authenticate(); - - $error = new ErrorType(); - $ref = new RefCommande(); - //Vérifier les informations - switch($infoCommande->mode) - { - case 'courrier': break; - case 'mail': break; - default: - exit; break; - } - if (empty($infoCommande->siren)) - { - $error->errnum = 0; - $error->errmsg = 'Erreur SIREN invalide'; - } - else - { - $login = $_SERVER['PHP_AUTH_USER']; - // Insertion des données commande - $dataCommandes = array( - 'user_login' => $login, - 'user_email' => $this->tabInfoUser['email'], - 'type' => 'kbis', - 'demandeurReference' => $infosDemandeur->reference, - 'demandeurEmail' => $infosDemandeur->email, - 'demandeurTel' => $infosDemandeur->tel, - 'demandeurNom' => $infosDemandeur->nom, - 'demandeurService' => $infosDemandeur->service, - 'demandeurSociete' => $infosDemandeur->societe, - 'demandeurAdresse' => $infosDemandeur->adresse, - 'demandeurCp' => $infosDemandeur->cp, - 'demandeurVille' => $infosDemandeur->ville, - 'infoCommande' => serialize($infoCommande) - ); - try { - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $commande = new Application_Model_Commandes(); - $commande_id = $commande->insert($dataCommandes); - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - if ($commande_id) - { - //Enregistrement des détails de commande - $dataCommandesKbis = array( - 'commande_id' => $commande_id, - 'siren' => $infoCommande->siren, - 'raisonSociale' => '', - 'fichier' => '', - 'partenaireRequete' => '', - 'partenaireReponse' => '', - ); - try { - $commandeKbisTable = new Application_Model_CommandesPieces(); - $commandeKbisTable->insert($dataCommandesKbis); - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - try { - $row = $commande->find($commande_id); - $data = $row->current(); - $ref->reference = $data->id; - $ref->dateCommande = $data->date_added; - $ref->dateMaj = $data->date_updated; - $ref->dateReception = $data->date_closed; - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - $error->errnum = 0; - $error->errmsg = "Commande Introuvable"; - } - } - else - { - $error->errnum = 0; - $error->errmsg = "Erreur enregistrement commande"; - } - } - $output = new CmdKbisReturn(); - $cmd = new CmdKbisDetail(); - $cmd->infoCommande = $infoCommande; - $cmd->infosDemandeur = $infosDemandeur; - $cmd->refCommande = $ref; - $output->commande = $cmd; - $output->error = $error; - return $output; - } - - /** - * Renvoi des informations sur une commande de Kbis - * @param string $reference - * @return CmdKbisReturn - */ - public function getCmdKbis( $reference ){} - - /** - * Commande de privilèges et nantissements par email - * @param InfoCommandePieces $infoCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdPiecesReturn - */ - public function setCmdPieces( $infoCommande, $infosDemandeur ) - { - $this->authenticate(); - $error = new ErrorType(); - $ref = new RefCommande(); - if (!empty($infoCommande->siren)){ - //Vérification SIREN - // Insertion des données commande - $dataCommandes = array( - 'user_login' => $this->tabInfoUser['login'], - 'user_email' => $this->tabInfoUser['email'], - 'type' => 'pieces', - 'demandeurReference' => $infosDemandeur->reference, - 'demandeurEmail' => $infosDemandeur->email, - 'demandeurTel' => $infosDemandeur->tel, - 'demandeurNom' => $infosDemandeur->nom, - 'demandeurService' => $infosDemandeur->service, - 'demandeurSociete' => $infosDemandeur->societe, - 'demandeurAdresse' => $infosDemandeur->adresse, - 'demandeurCp' => $infosDemandeur->cp, - 'demandeurVille' => $infosDemandeur->ville, - 'infoCommande' => serialize($infoCommande) - ); - try { - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $commande = new Application_Model_Commandes(); - $commande_id = $commande->insert($dataCommandes); - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - if ($commande_id){ - //Enregistrement des détails de commande - $dataCommandesPieces = array( - 'commande_id' => $commande_id, - 'siren' => $infoCommande->siren, - 'raisonSociale' => '', - 'fichier' => '', - ); - try { - $commandePieces = new Application_Model_CommandesPieces(); - $commandePieces->insert($dataCommandesPieces); - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - - try { - $row = $commande->find($commande_id); - $data = $row->current(); - $ref->reference = $data->id; - $ref->dateCommande = $data->date_added; - $ref->dateMaj = $data->date_updated; - $ref->dateReception = $data->date_closed; - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - $error->errnum = 0; - $error->errmsg = "Commande Introuvable"; - } - } else { - $error->errnum = 0; - $error->errmsg = "Erreur enregistrement commande"; - } - } else { - $error->errnum = 0; - $error->errmsg = 'Erreur SIREN invalide'; - } - $output = new CmdPiecesReturn(); - $cmd = new CmdPiecesDetail(); - $cmd->infoCommande = $infoCommande; - $cmd->infosDemandeur = $infosDemandeur; - $cmd->refCommande = $ref; - $output->error = $error; - return $output; - } - - /** - * Renvoi des informations sur une commande pièces - * @param string $reference - * @return CmdPiecesReturn - */ - public function getCmdPieces( $reference ) - { - list($typeCommande, $idCommande) = explode('-', $reference); - try { - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $commandeTable = new Application_Model_Commandes(); - $select = $commandeTable->select() - ->where('type = ?', 'pieces') - ->where('id = ?', $idCommande); - $commandeRowset = $commandeTable->fetchAll($select); - } - catch (Zend_Db_Adapter_Exception $e) - { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - $error = new ErrorType(); - $ref = new RefCommande(); - $infoCommande = new InfoCommandePieces(); - $infosDemandeur = new InfosDemandeur(); - if ( $commandeRowset->count()>0 ) - { - $commande = $commandeRowset->current(); - $selectEven = $commandeTable->select() - ->order('date_added DESC')->limit(1); - $evenRowset = $commande->findDependentRowset( - 'Application_Model_CommandesEven', null, $selectEven); - $info = ''; - if($evenRowset->count()>0){ - $even = $evenRowset->current(); - $info = $even->commentaire; - } - $ref->reference = strtoupper($commande->type).'-'.$commande->id; - $ref->dateCommande = $commande->date_added; - $ref->dateMaj = $commande->date_updated; - $ref->dateReception = $commande->date_closed; - $ref->info = $info; - $ref->fichier = ''; // @todo : Détecter le fichier - $ref->login = $commande->user_login; - $infoCommande = unserialize($commande->infoCommande); - $infosDemandeur->reference = $commande->demandeurReference; - $infosDemandeur->email = $commande->demandeurEmail; - $infosDemandeur->tel = $commande->demandeurTel; - $infosDemandeur->nom = $commande->demandeurNom; - $infosDemandeur->service = $commande->demandeurService; - $infosDemandeur->societe = $commande->demandeurSociete; - $infosDemandeur->adresse = $commande->demandeurAdresse; - $infosDemandeur->cp = $commande->demandeurCp; - $infosDemandeur->ville = $commande->demandeurVille; - } - else - { - $error->errnum = 0; - $error->errmsg = 'Référence inconnue'; - } - $output = new CmdPiecesReturn(); - $cmd = new CmdPiecesDetail(); - $cmd->refCommande = $ref; - $cmd->infoCommande = $infoCommande; - $cmd->infosDemandeur = $infosDemandeur; - $output->commande = $cmd; - $output->error = $error; - return $output; - } - - /** - * Retourne la liste des commandes de pièces ainsi que leur détails - * @param CmdFiltrePieces $filtre - * @param int $position - * @param int $nbRep - * @return ListeCmdPiecesReturn - */ - public function getListeCmdPieces( $filtre, $position = 0, $nbRep = 20 ) - { - $error = new ErrorType(); - //Traitements des filtres pour générer la requête SQL - - //Selection - $nbCommandes = 0; - try - { - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $commandeTable = new Application_Model_Commandes(); - $select = $commandeTable->select()->where('type = ?', 'pieces'); - $countRowset = $commandeTable->fetchAll($select); - $nbCommandes = $countRowset->count(); - $select->order('date_added DESC')->limit($nbRep, $position); - $commandeRowset = $commandeTable->fetchAll($select); - } - catch (Zend_Db_Adapter_Exception $e) - { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - $error->errnum = 1; - $error->errmsg = 'Erreur'; - } - - if ( $commandeRowset->count()>0 ) - { - $liste = array(); - foreach ($commandeRowset as $commande) - { - $selectEven = $commandeTable->select() - ->order('date_added DESC')->limit(1); - $evenRowset = $commande->findDependentRowset( - 'Application_Model_CommandesEven', null, $selectEven); - $info = ''; - if($evenRowset->count()>0){ - $even = $evenRowset->current(); - $info = $even->commentaire; - } - - $ref = new RefCommande(); - $ref->reference = strtoupper($commande->type).'-'.$commande->id; - $ref->dateCommande = $commande->date_added; - $ref->dateMaj = $commande->date_updated; - $ref->dateReception = $commande->date_closed; - $ref->info = $info; - $ref->fichier = ''; // @todo : Détecter le fichier - $ref->login = $commande->user_login; - - $infoCommande = new InfoCommandePieces(); - $infoCommande = unserialize($commande->infoCommande); - - $infosDemandeur = new InfosDemandeur(); - $infosDemandeur->reference = $commande->demandeurReference; - $infosDemandeur->email = $commande->demandeurEmail; - $infosDemandeur->tel = $commande->demandeurTel; - $infosDemandeur->nom = $commande->demandeurNom; - $infosDemandeur->service = $commande->demandeurService; - $infosDemandeur->societe = $commande->demandeurSociete; - $infosDemandeur->adresse = $commande->demandeurAdresse; - $infosDemandeur->cp = $commande->demandeurCp; - $infosDemandeur->ville = $commande->demandeurVille; - - $cmd = new CmdPiecesDetail(); - $cmd->refCommande = $ref; - $cmd->infoCommande = $infoCommande; - $cmd->infosDemandeur = $infosDemandeur; - - $liste[] = $cmd; - } - } - - $output = new ListeCmdPiecesReturn(); - $output->error = $error; - $output->nbCommandes = $nbCommandes; - $output->liste = $liste; - return $output; - } - - /** - * Retourne la liste des statuts de commande - * @param string $type - * @return CmdStatut[] - */ - public function getListeCmdStatut( $type ) - { - Zend_Registry::get('WsLogger')->info("getListeStatut - ".$type); - try { - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $dbStatut = new Application_Model_CommandesStatut(); - $result = $dbStatut->fetchAll(array("commande_type = '$type'")); - } - catch (Zend_Db_Adapter_Exception $e) - { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - $listeStatut = array(); - if (count($result)>0) - { - foreach($result as $r) - { - $statut = new CmdStatut(); - $statut->code = $r['code']; - $statut->lib = $r['libelle']; - $listeStatut[] = $statut; - } - } - return $listeStatut; - } - - /** - * Spécifier un état défini pour une commande - * (avec déclenchement d'une action) - * @param int $reference - * @param int $statutCode - * @return bool - */ - public function setCmdStatut( $reference, $statutCode) - { - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $dbStatut = new Application_Model_CommandesStatut(); - $row = $dbStatut->fetchRow(array("code = '$statutCode'")); - if ( count($row)>0 && $this->setCommandeEven($reference, $row['lib']) ) - { - if (!empty($row['action'])){ - switch($row['action']){ - case 'CLOSE': - //date_closed - break; - } - } - return true; - } else { - return false; - } - } - - /** - * Spécifier un état pour une commande - * @param int $reference - * @param string $comment - * @return bool - */ - public function setCmdEven ( $reference, $comment ) - { - $this->authenticate(); - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - try { - //Vérifier que la commande existe avec la référence fournie - $commandeTable = new Application_Model_Commandes(); - $commandeRowset = $commandeTable->find($reference); - if ($commandeRowset->count()>0) - { - $commande = $commandeRowset->current(); - //Enregistrer l'événement - $commandeEvenTable = new Application_Model_CommandesEven(); - $insert = $commandeEvenTable->createRow(); - $insert->commande_id = $commande->id; - $insert->commentaire = $comment; - $insert->user_login = $this->tabInfoUser['login']; - $insert->save(); - //Mettre à jour la commande - $commande->date_updated = date('Y-m-d H:i:s'); - $commande->save(); - return true; - } else { - return false; - } - } - catch (Zend_Db_Adapter_Exception $e) - { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - return false; - } - } - - /** - * Ajout du nom de fichier liée à la commande - * @param int $reference - * @param string $filename - * @return bool - */ - public function setCmdDocument( $reference, $filename ) - { - $this->authenticate(); - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - try { - //Vérifier que la commande existe avec la référence fournie - $commandeTable = new Application_Model_Commandes(); - $commandeRowset = $commandeTable->find($reference); - if ($commandeRowset->count()>0) - { - $commande = $commandeRowset->current(); - switch($commande->type) - { - case 'pieces': - $infoCommandePieces = $commande->findDependentRowset('Application_Model_CommandesPieces'); - if ($infoCommandePieces->count()>0) - { - //Update informations pieces - $commandePieces = $infoCommandePieces->current(); - $commandePieces->fichier = $filename; - $commandePieces->save(); - //Mettre à jour la commande - $commande->date_updated = date('Y-m-d H:i:s'); - $commande->save(); - //Mettre à jour les évenements de commande - //@todo - return true; - } - break; - case 'default': - return false; - break; - } - } else { - return false; - } - } - catch (Zend_Db_Adapter_Exception $e) - { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - return false; - } - } - - /** - * Enregistre une action utilisateur pour la facturation - * @param string $page - * @param string $siret - * @param int $id - * @param string $ref - * @return void - */ - public function setLog($page, $siret, $id=0, $ref='') - { - $this->authenticate(); - - //Initialisation - if (empty($id)) $id = 0; - if (empty($ref)) $ref = ''; - if ( $id!=0 ) { - $ref2=''.$id.'/'.$ref; - } else { - $ref2=$ref; - } - $this->wsLog($page, $siret, $ref2); - debugLog('I',"Insertion d'un log pour la page $page $siret $ref2",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } - - /** - * Met a jour les informations sur un mandataire - * @param SetInfosMandataire $infos Informations sur le mandataire à créer ou à ajouter (ajout si id absent) - * @return SetMandataireReturn - **/ - public function setMandataire(SetInfosMandataire $infos) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - $result = true; - - $iDb = new WDB(); - /** Nom et Identifiant de l'opérateur de saisie **/ - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('utilisateurs', 'id', "login='".$this->tabInfoUser['login']."'"); - $idUser = $rep[0][0]; - - //$infos = serialize($tabInfos); - debugLog('I',"Ajout/MAJ de mandaitaire ".print_r($infos,1)." demandée",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $type = substr(strtoupper($infos->type),0,1); - $stag = substr(strtoupper($infos->type),1,1); - if ($stag=='S') { $stag=1; } else { $stag=0; } - if ($type=='A' || $type=='H' || $type=='M' || $type=='V' || - $type=='N' || $type=='T') - { - $tabUpdate=array( - 'sirenGrp' => substr($infos->sirenGrp,0,9)*1, - 'nicGrp' => substr($infos->sirenGrp,9,5)*1, - 'sirenMand' => substr($infos->sirenMand,0,9)*1, - 'nicMand' => substr($infos->sirenMand,9,5)*1, - 'Nom' => ucwords(strtolower($infos->Nom)), - 'Prenom' => ucwords(strtolower($infos->Prenom)), - 'type' => $type, - 'stagiaire' => $stag, - 'coursAppel' => intval($infos->coursAppel), - 'coursAppel2' => intval($infos->coursAppel2), - 'tribunal' => $infos->tribunal, - 'Statut' => strtoupper($infos->Statut), - 'adresse' => ucwords($infos->adresse), - 'adresseComp' => strtoupper($infos->adresseComp), - 'cp' => intval($infos->cp), - 'ville' => strtoupper($infos->ville), - 'tel' => $infos->tel, - 'fax' => $infos->fax, - 'email' => $infos->email, - 'web' => $infos->web, - 'contact' => $infos->contact, - 'idUser' => $idUser, - ); - } - $id = str_replace('m','', ''.$infos->id)*1; - if (intval($id)!=0) { - // MAJ - if (!$iDb->update('tabMandataires', $tabUpdate, "id=$id", true)) { - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - $result = false; - } - } else { - // Insertion - if (!$iDb->insert('tabMandataires', array_merge($tabUpdate,array('dateInsert'=>date('YmdHis'))), true)) { - $error->errnum = 1; - $error->errmsg = 'Insertion impossible'; - $result = false; - } - } - $output = new SetMandataireReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Récupère le mandataire par son id - * @param int $idMand Identifiant du mandataire - * @return MandataireReturn - */ - public function getMandataire($idMand) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - - debugLog('I',"Donne le Mandataires correspondant à $idMand",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new classMInsee(); - $tabRet = $iInsee->getMandataire($idMand); - $mandataire = new MandataireDetail(); - $mandataire->Nom = $tabRet['Nom']; - $mandataire->Prenom = $tabRet['Prenom']; - $mandataire->tribunal = $tabRet['tribunal']; - $mandataire->adresse = $tabRet['adresse']; - $mandataire->adresseComp = $tabRet['adresseComp']; - $mandataire->ville = $tabRet['ville']; - $mandataire->email = $tabRet['email']; - $mandataire->web = $tabRet['web']; - $mandataire->contact = $tabRet['contact']; - $output = new MandataireReturn(); - $output->error = $error; - $output->result = $mandataire; - return $output; - } - - /** - * Liste les mandataires compétentes pour une cours d'appel donnée - * @param mixed $codeTribunal Identifiants BODACC du tribunal ou tableau d'Identifiants numériques des cours d'appel - * @param array $type Type de mandataire (A)dministrateur, (M)andataire, (O)ppositions, (N)otaires, a(V)ocat - * @return MandatairesReturn - */ - public function getMandataires($codeTribunal=0, $type=array('A','M')) - { - $this->authenticate(); - //Initialisation - $iInsee = new MInsee(); - $error = new ErrorType(); - $trib = serialize($codeTribunal); - debugLog('I',"Liste des Mandaitaires ou Administrateur du Tribunal/Cours d'Appel $trib demandé",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (!is_array($codeTribunal) && strlen($codeTribunal)>3 && $codeTribunal*1==0) - { - // $codeTribunal est un identifiant de tribunal - $iBodacc = new MBodacc(); - $tabTmp = $iInsee->getMandataires(array($iBodacc->getTribunalIdCA($codeTribunal)), true, $type); - } - elseif ($codeTribunal*1==0) - { - // On veut tous les mandataires - $tabTmp = $iInsee->getMandataires(array(), true, $type); - } - elseif (is_array($codeTribunal)) - { - // On veut les mandataires d'une CA - $tabTmp = $iInsee->getMandataires($codeTribunal, true, $type); - } - $tabRet = array(); - foreach ($tabTmp as $i=>$mand){ - $mandataire = new Mandataire(); - $mandataire->id = 'm'.$i; - $mandataire->mand = $mand; - $tabRet[]= $mandataire; - } - $output = new MandatairesReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des conventions - * @param string $siren - * @return ListeConventionsReturn - */ - public function getListeConventions($siren) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - $tabRet = array(); - - debugLog('I',"Liste des conventions demandée pour le siren $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($siren)<>9){ - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren Siret inexistant'; - - } elseif ($siren*1==0){ - - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren inexistant'; - - } else { - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteEntreprise($siren); - - if (empty($tabIdentite) && isset($tabIdentite['erreur']) && - $tabIdentite['erreur']<>''){ - - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren inexistant'; - - } else { - - $naf = $tabIdentite['NafEnt']; - $trancheEffectif = $tabIdentite['EffEnTr']; - $effectif = $tabIdentite['Effectif']; - $fj = $tabIdentite['entreprise']['FJCodeEntrep']; - - $isolv = new MSolvabilite($siren, $naf, $trancheEffectif, - $effectif, $tabIdentite['CP'], $fj, $tabIdentite['Capital'], - $tabIdentite['CapitalDev'], $tabIdentite['DateCreaEn'], - $tabIdentite['DateCreaEt'] - ); - $noteStructure = $isolv->getSolvabilite(); - $naf4 = $isolv->getNaf4($naf); - - $tabTmp = $iInsee->listeConventions($naf4, $tabIdentite['Dept']); - foreach ($tabTmp as $conv) - { - $convention = new Convention(); - $convention->idCC = $conv['id CC']; - $convention->nomCC = $conv['nom CC']; - $convention->infoCC = $conv['infoCC']; - $convention->editorCC = $conv['editeur CC']; - $convention->nbPageCC = $conv['nb page CC']; - $convention->isbnCC = $conv['isbn CC']; - $convention->dateCC = $conv['date edition CC']; - $convention->joCCmaj = $conv['joCCmaj']; - $tabRet[] = $convention; - } - $this->wsLog('conventions',$siren); - } - } - - $output = new ListeConventionsReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Donne la cours d'appel d'un tribunal par son code - * @param string $codeTribunal Code BODACC sur 6 caractères du tribunal - * @return int - **/ - public function getIdCoursAppel($codeTribunal) - { - $this->authenticate(); - $iBodacc = new MBodacc(); - return $iBodacc->getTribunalIdCA($codeTribunal); - } - - /** - * Récupère le contenu d'une annonce issue de la collecte - * @param string $idAnn - * @param string $siret - * @return AnnonceCollecteReturn - */ - public function getAnnonceCollecte($idAnn, $siret) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - $annonceCollecte = new AnnonceCollecte(); - $siren = substr($siret,0,9)*1; - if (!$this->checkEdition()) { - - $error->errnum = 0; - $error->errmsg = 'Code Client Incorrect'; - - } else { - - $iDb = new WDB(); - debugLog('I',"Lecture de l'annonce collectée n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $idAnn = preg_replace('/^0\./','', ''.$idAnn) * 1; - if ($idAnn>0) - { - $res = $iDb->select('annonces', - 'id, siren, sirenValide, typeEven, strEven, raisonSociale, adresse, codePostal, ville, dateJugement, dateCessationPaiement, dateEffetFinP, numero, inter1type, inter1id, inter1nom, inter2type, inter2id, inter2nom, inter3type, inter3id, inter3nom, inter4type, inter4id, inter4nom, tribunal, montant, actionsNb, complement, infosBrutes, nouvActivite, nouvDir, nouvAdr, nouvFJ, annonce, source, parutionIdJal, parutionNum, dateSource, idSaisie, idAnnonce, dateInsert', - "id=$idAnn", false, MYSQL_ASSOC - ); - if (count($res)>0) - { - $ann = $res[0]; - $annonceCollecte->id = $ann['id']; - $annonceCollecte->siren = $ann['siren']; - $annonceCollecte->raisonSociale = $ann['raisonSociale']; - $annonceCollecte->adresse = $ann['adresse']; - $annonceCollecte->codePostal = $ann['codePostal']; - $annonceCollecte->ville = $ann['ville']; - $annonceCollecte->dateJugement = $ann['dateJugement']; - - //@todo : Les libellées ne sont pas présent LibEven - $tabEven = array(); - $annonceEvenement = new AnnonceEvenement(); - $annonceEvenement->CodeEven = $ann['typeEven']; - $annonceEvenement->LibEven = ''; - $tabEven[] = $annonceEvenement; - if (!empty($ann['strEven'])){ - foreach ( explode(';',$ann['strEven']) as $code ) - { - $annonceEvenement = new AnnonceEvenement(); - $annonceEvenement->CodeEven = $code; - $annonceEvenement->LibEven = ''; - $tabEven[] = $annonceEvenement; - } - } - - $annonceCollecte->even = $tabEven; - $annonceCollecte->dateSource = $ann['dateSource']; - $annonceCollecte->dateCessationPaiement = $ann['dateCessationPaiement']; - $annonceCollecte->dateEffetFinP = $ann['dateEffetFinP']; - $annonceCollecte->tribunal = $ann['tribunal']; - $annonceCollecte->numero = $ann['numero']; - $annonceCollecte->montant = $ann['montant']; - $annonceCollecte->actionsNb = $ann['actionsNb']; - $annonceCollecte->inter1type = $ann['inter1type']; - $annonceCollecte->inter1id = $ann['inter1id']; - $annonceCollecte->inter1nom = $ann['inter1nom']; - $annonceCollecte->inter2type = $ann['inter2type']; - $annonceCollecte->inter2id = $ann['inter2id']; - $annonceCollecte->inter2nom = $ann['inter2nom']; - $annonceCollecte->inter3type = $ann['inter3type']; - $annonceCollecte->inter3id = $ann['inter3id']; - $annonceCollecte->inter3nom = $ann['inter3nom']; - $annonceCollecte->complement = $ann['complement']; - $annonceCollecte->nouvActivite = $ann['nouvActivite']; - $annonceCollecte->nouvDir = $ann['nouvDir']; - $annonceCollecte->nouvAdr = $ann['nouvAdr']; - $annonceCollecte->nouvFJ = $ann['nouvFJ']; - $annonceCollecte->source = $ann['source']; - - debugLog('I',"Lecture de l'annonce collectée n°$idAnn ($siret) : ".$ann['raisonSociale'],__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } else { - $error->errnum = 1; - $error->errmsg = 'Edition impossible'; - } - } - else - { - $error->errnum = 745741; - $error->errmsg = 'Selection impossible'; - } - } - $output = new AnnonceCollecteReturn(); - $output->error = $error; - $output->result = $annonceCollecte; - return $output; - } - - /** - * getDevises - * @param string $codeIsoDevise - * @return DevisesReturn - */ - public function getDevises($codeIsoDevise='') - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - if (empty($codeIsoDevise)) $codeIsoDevise = ''; - - debugLog('I',"Liste des devises ou devise $codeIsoDevise demandée",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $tabTmp = $iInsee->getDevises($codeIsoDevise); - - $tabRet = array(); - foreach ($tabTmp as $i=>$dev) - { - if ( $i!='' ){ - $devise = new Devise(); - $devise->devIso = $i; - $devise->devNom = $dev; - $tabRet[] = $devise; - } - } - $output = new DevisesReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des codes devises, libellés, date et valeur - * (toutes les devises ou une seule) - * @param string $devise Devise sur 3 lettres (facultatif) - * @return DevisesCoursReturn - */ - public function getDeviseCours($devise=false) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - - $iDb = new WDB('sdv1'); - if ($devise) $strDevise=" AND c.devise='$devise' "; - else $strDevise=''; - - $tabRet = array(); - - $res = $iDb->select('devise_cours c, devise_liste l', 'c.devise, l.devNom, max(c.date) as dateChange, c.valeur', "c.devise=l.devIso $strDevise GROUP BY c.devise ORDER BY c.devise ASC", false, MYSQL_ASSOC); - foreach ($res as $tabDev) - { - $devise = new DevisesCours(); - $devise->codeDevise = $tabDev['devise']; - $devise->nomDevise = $tabDev['devNom']; - $devise->dateChange = $tabDev['dateChange']; - $devise->valeurDevise = $tabDev['valeur']; - $tabRet[] = $devise; - } - $output = new DevisesCoursReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * getMarques - * @param string $siren - * @param int $idDepot - * @return MarquesReturn - */ - public function getMarques($siren, $idDepot=0) - { - $this->authenticate(); - $this->permission('marques'); - debugLog('I',"Liste des marques déposées pour le siren $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($idDepot)) $idDepot = 0; - $error = new ErrorType(); - $marques = array(); - require_once 'Metier/partenaires/classMMarques.php'; - $iMarque = new MMarques(); - $ret = $iMarque->getMarques($siren, $idDepot); - - foreach ($ret as $item) { - if (trim($item['imgLink'])<>'') $idLien = $item['numeroMarque']; - else $idLien = ''; - if ($idDepot==$item['numeroMarque']) { - $marque = new Marque(); - $marque->Marques = $item['nomMarque']; - $marque->Date = $item['dateDepot']; - $marque->Depot = $item['numeroMarque']; - $marque->IdLien = $idLien; - $marque->UrlLien = $item['UrlLien']; - $marque->PdfDispo = $item['pdfLink']; - $marque->Classes = $item['classesMarque']; - $marque->Perimetre = $item['periMarque']; - $marque->DateExpir = $item['dateExpir']; - $marques = array(); - $marques[] = $marque; - break; - } else { - $marque = new Marque(); - $marque->Marques = $item['nomMarque']; - $marque->Date = $item['dateDepot']; - $marque->Depot = $item['numeroMarque']; - $marque->IdLien = $idLien; - $marque->UrlLien = $item['UrlLien']; - $marque->PdfDispo = $item['pdfLink']; - $marques[] = $marque; - } - } - - Zend_Registry::get('WsLogger')->info(__FUNCTION__.' : '. - print_r($marques,1)); - - $this->wsLog('marques',$siren); - $output = new MarquesReturn(); - $output->error = $error; - $output->result = $marques; - return $output; - } - - /** - * Enter description here ... - * @param string $siren - * @param string $piece - * @param string $type - * @param integer $visu - * @param integer $courrier - * @param string $ref - * @return PieceReturn - */ - public function getPiece($siren, $piece='kbis', $type='', $visu=1, $courrier=0, $ref='') - { - $this->authenticate(); - $this->permission('kbis'); - set_time_limit(400); - - if (empty($piece)) $piece = 'kbis'; - if (empty($type)) $type = ''; - if (empty($visu)) $visu = 1; - if (empty($courrier)) $courrier = 1; - if (empty($ref)) $ref = ''; - $error = new ErrorType(); - - $erreur = false; - - $kbisLocalPDF = DOC_WEB_LOCAL."kbis/$piece-$siren.pdf"; - - if (file_exists($kbisLocalPDF) - && date('Ymd', filemtime($kbisLocalPDF))==date('Ymd') - && filesize($kbisLocalPDF)>0 ) { - $size = filesize($kbisLocalPDF); - $erreur = false; - $tabNom = array(); - $ficDist = ''; - $cache = 1; - } else { - exec("php ".APPLICATION_PATH."/../batch/getPieces.php $siren $piece > /dev/null &"); - $ficDist=''; - $size=$cache=0; - } - // On supprimer l'ancien kbis si trop vieux ou vide - if (date('Ymd', filemtime($kbisLocalPDF))<>date('Ymd') - || filesize($kbisLocalPDF)==0) { - unlink($kbisLocalPDF); - } - $result = new PieceResult(); - $result->Siren = $siren; - //@todo : Envoyer vers controlleur - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $result->Url = $hostname.'/data/kbis/'.$piece.'-'.$siren.'.pdf'; - - $result->Taille = $size; - $result->Cache = $cache; - $result->fichier = $ficDist; - $this->wsLog('kbis', $siren, "$cache/$visu/$courrier/$type/$ref"); - $output = new PieceReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Enregistrement de document actes ou status d'association - * @param string $siren Numéro Siren - * @param string $waldec Numéro waldec - * @param string $type Type d'acte - * @param string $libelle Libellé de l'acte - * @param string $date Date des l'acte au format - * @param int $nbPages Nombre de pages dans le fichier - * return boolean - */ - public function setActeAsso( $siren, $waldec, $type, $libelle, $date, $nbPages ) - { - $this->authenticate(); - if (!$this->checkEdition()) { - $this->sendError('0902'); - } - ($type == 'ST') ? $type_acte = 'ST' : $type_acte = ''; - - $data = array( - 'siren' => $siren, - 'waldec' => waldec, - 'pdfLink' => '', - 'pdfSize' => '', - 'pdfVer' => '', - 'pdfPage' => '', - 'date_acte' => WDate::dateT('d/m/Y', 'Y-m-d', $date), - 'type_acte' => $type_acte, - 'type_acte_libelle' => $libelle, - 'nbpages_acte' => $nbPages, - ); - try { - $db = Zend_Db::factory($this->dbConfig->Webservice); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $doc = new Application_Model_AssoActes(); - $doc_id = $doc->insert($data); - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - if ($commande_id) - { - return true; - } - return false; - } - - /** - * Commande de statut association - * @param InfoCmdAsso $infosCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdAssoReturn - */ - public function setCmdAsso( $infosCommande, $infosDemandeur ) - { - $this->authenticate(); - $this->permission('actes'); - //Initialisation - $error = new ErrorType(); - - $iDb = new WDB(); - - $siren = $infosCommande->siren; - $idEntreprise = intval($infosCommande->idEntreprise); - $assoNom = $infosCommande->raisonSociale; - debugLog('I',"commandeAsso pour $assoNom ($siren) début",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren, 0, $idEntreprise); - $assoSigle = $tabIdentite['Sigle']; - $assoAdresse = $tabIdentite['Adresse'].EOL.$tabIdentite['Adresse2']; - $assoCP = $tabIdentite['CP']; - $assoVille = $tabIdentite['Ville']; - - $mail = trim($infosDemandeur->email); - if ($mail=='') $mail = $this->tabInfoUser['email']; - - $tabInsert=array( - 'idUser' => $this->tabInfoUser['id'], - 'source' => 'asso', - 'login' => $this->tabInfoUser['login'], - 'emailCommande' => $mail, - 'siren' => $siren, - 'refUtilisateur' => $infosDemandeur->reference, - 'refDocument' => serialize($infosDemandeur), - 'refCommande' => serialize($infosCommande), - 'dateCommande' => DATETIME, - ); - - $url='http://d2g.refasso.com/Dev2Go.web'; - $referer=''; // http://d2g.refasso.com/dev2go.web?anchor=dem_statuts_02 - $cookie=''; - $post = array( - 'mode'=>20, - 'lBlockID'=>445031, - 'sInputNames'=>'', - 'lFormSubAction'=>100, - 'sLinkTo'=>'dem_statuts_03', - 'iDune_DateDemande_input'=>str_replace('/', '%2F', date('d/m/Y')), - 'iDune_TitreAsso_input'=>urlencode($assoNom), - 'iDune_SigleAsso_input'=>urlencode($assoSigle), - 'iDune_AdresseAsso_input'=>urlencode($assoAdresse), - 'iDune_CpAsso_input'=>urlencode($assoCP), - 'iDune_VilleAsso_input'=>urlencode($assoVille), - 'iDune_TelAsso_input'=>'', - 'iDune_FaxAsso_input'=>'', - 'iDune_EmailAsso_input'=>'', - 'iDune_DateCreaAsso_input'=>'', - 'iDune_DateDerDeclaAsso_input'=>'', - 'iDune_NomDem_input'=>'SCORES+ET+DECISIONS', - 'iDune_PrenomDem_input'=>'Yoann+LE+NAOUR', - 'iDune_AdresseDem_input'=>'19+rue+de+Clairefontaine', - 'iDune_CpDem_input'=>78120, - 'iDune_VilleDem_input'=>'RAMBOUILLET', - 'iDune_TelDem_input'=>'0134573953', - 'iDune_EmailDem_input'=>'asso%40scores-decisions.com', - 'iDune_CGAccepte_input'=>'o', - 'iDune_Statut_input'=>'n', - 'iDune_Archive_input'=>'n', - 'x'=>48, - 'y'=>8, - ); - - $tdeb=microtime(true); - $page=getUrl($url, $cookie, $post, $referer, false, '', '', 7); - $tfin=microtime(true); - $duree=$tfin-$tdeb; - $body=$page['body']; - $fp=@fopen("/tmp/asso-$siren.html", "a"); - @fwrite($fp, $body); - @fclose($fp); - - if (preg_match('/Votre commande est enregistr/i',$body)) - { - sendMail('production@scores-decisions.com', 'asso@scores-decisions.com', - "Commande de statuts association pour $assoNom ($siren)", - "Association :".EOL.print_r($infosCommande, true).EOL.EOL. - "Demandeur:".EOL.print_r($infosDemandeur, true).EOL.EOL. - "Réponse RefAsso en $duree secondes :".EOL.print_r($page, true) - ); - $iDbCrm = new WDB('sdv1'); - $ret = $iDbCrm->insert('commandes', $tabInsert, true); - - $result = new CmdAssoDetail(); - $result->siren = $siren; - $result->emailCommande = $mail; - $result->dateCommande = DATETIME; - $result->refCmd = 'i'.$ret; - - sendMail('production@scores-decisions.com', $mail, "Votre commande de statuts association sur $assoNom ($siren)", "Votre demande de statuts sur l'association $assoNom a été prise en compte sous la référence i$ret - ".DATETIME); - $this->wsLog('commandeAsso', $siren, 'i'.$ret.'-'.DATETIME); - debugLog('I',"commandeAsso pour $assoNom ($siren) fin",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } else { - sendMail('production@scores-decisions.com', 'asso@scores-decisions.com', - "ERREUR lors de lommande de statuts association pour $assoNom ($siren)", "Association :".EOL.print_r($infosCommande, true).EOL.EOL. - "Demandeur:".EOL.print_r($infosDemandeur, true).EOL.EOL. - "Réponse RefAsso en $duree secondes :".EOL.print_r($page, true)); - - $error->errmsg = 'ERREUR'; - $error->errnum = 1; - debugLog('E',"commandeAsso pour $assoNom ($siren) fin",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } - $output = new CmdAssoReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Renvoi des informations sur une commande association - * @param string $reference - * @return CmdAssoReturn - */ - public function getCmdAsso( $reference ){} - - - /** - * Commande d'une enquête sur une entreprise en France ou à l'Internationale - * @param InfosCmdEnquete $infosCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdEnqueteReturn - **/ - public function setCmdEnquete($infosCommande, $infosDemandeur) - { - $this->authenticate(); - $this->permission('enquetec'); - - //Initialisation - $error = new ErrorType(); - $siren = $infosCommande->siren; - - $mail = trim($infosDemandeur->email); - if ($mail=='') $mail = $this->tabInfoUser['email']; - - $tabInsert = array( - 'idUser' => $this->tabInfoUser['id'], - 'source'=> 'intersud', // 'greffes', 'asso', 'graydon' - 'login'=> $this->tabInfoUser['login'], - 'emailCommande'=> $mail, - 'siren'=> $siren, - 'refDocument'=> serialize($infosDemandeur), - 'refCommande'=> serialize($infosCommande), - 'dateCommande'=> DATETIME, - ); - debugLog('I',"Intersud, début sur $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $messageInfo=print_r($infosCommande, 1).EOL.print_r($infosDemandeur,1).EOL; - - $idClient = $this->tabInfoUser['idClient']; - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients', ' nom, racineLogin, InterSudLogin, InterSudPass', "id='$idClient'", false, MYSQL_ASSOC); - $login = trim($rep[0]['InterSudLogin']); - $pass = trim($rep[0]['InterSudPass']); - $nomClient = trim(strtoupper($rep[0]['nom'])); - $strInfoCommande ="NOM et Prénom du client demandeur : ".$infoDemandeur->nom.EOL; - $strInfoCommande.="Email du client demandeur : $mail".EOL; - $strInfoCommande.="Tel/Fax du demandeur : ".$infosDemandeur->tel.' / '.$infosDemandeur->fax.EOL; - $strInfoCommande.="Profil du demandeur : ".trim($infosDemandeur->service).EOL; - $typeEnqLog='enqueteDemNF'; - - if ($login=='' || $pass=='') { - /** Il ne s'agit pas d'un client final, on anonymise la commande **/ - $login = 'YLENA'; // Demandes en test - $pass = 'WYLFE'; - $nomClient = $strInfoCommande = ''; - $typeEnqLog = 'enqueteDem'; - /* ENQUETES EN PROD - $login='FACTURE'; - $pass='AWKROM'; - */ - } - - $url='http://www.intersud.fr/espace_client/espace_client.php'; - $cookie = $referer = ''; - $tabPost = array('login' => $login, 'pwd' => $pass); - $tdeb = microtime(true); - $page = getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - $tabRet=array(); - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Connexion impossible à la plateforme Intersud".EOL.$strInfoCommande); - // wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - //@todo - return array('error'=>array('errnum'=>4563456, 'errmsg'=>'Connexion impossible à la plateforme d\'enquetes'), 'results'=>$tabRet); - } - $tfin = microtime(true); - $duree = $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - $cookie = $page['header']['Set-Cookie']; - - /** Connexion à l'Extranet Intersud - **/ - $url = 'http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, '', $referer, false, '', '', 7); - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - - $fp=@fopen(LOG_PATH."/intersud.log", "a"); - @fwrite($fp, print_r($page,true)); - @fclose($fp); - $tabInterSud=array(); - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[2][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[1][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - - $ref_exp=$tabInterSud['ref_exp']; - $email_exp=$tabInterSud['email_exp']; - $tel_exp=$tabInterSud['tel_exp']; - debugLog('I',"Intersud, formulaire enquête ref $ref_exp, $email_exp, $tel_exp",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $fp=@fopen(LOG_PATH."/intersud.log", "a"); - @fwrite($fp, print_r($matches,true)); - @fwrite($fp, print_r($tabInterSud,true)); - @fclose($fp); - - /** Insertion de la commande en base - **/ - $ret = $iDbCrm->insert('commandes', $tabInsert, true); - $comment = "Référence de la commande chez Scores et Décisions : i$ret - ". - DATETIME."\n". - "Date et heure de la commande : ".date('d/m/Y - H:i')."\n". - "Origine de la commande : $nomClient". - "$strInfoCommande"."\n\n". - - "CA : ".$infosCommande->PrecisionsMontantCA."\n". - "Motif de la demande : ".trim($infosCommande->PrecisionsMotif.' '.$infosCommande->PrecisionsAutre)."\n". - "Type de la demande : ".$infosCommande->PrecisionsType."\n". - "Anciennete de la relation : ".$infosCommande->Anciennete.' '.$infosCommande->AncienneteDuree."\n". - "Observations : ".$infosCommande->Observation.EOL; - - if ($infosCommande->ImpayeesChoix<>'non') - $comment.="Impayé(s) : ".$infosCommande->ImpayeesNombre." impayé(s) pour un montant de ".$infosCommande->ImpayeesMontant." en date du ".$infosCommande->ImpayeesDate.EOL; - - if ($infosCommande->RetardPaiementChoix<>'non') - $comment.="Retard(s) de paiement : ".$infosCommande->RetardPaiementNombre." retard(s) pour un montant de ".$infosCommande->RetardPaiementMontant." en date du ".$infosCommande->RetardPaiementDate.EOL; - - if ($infosCommande->LitigeChoix<>'non') - $comment.="Présence de litige(s) : ".$infosCommande->LitigePrecisions.EOL; - - $enqType=0; - $enqDelai=7; - switch (strtolower($infosCommande->Type)) { - case 'premier': $enqType=0; $enqDelai=6; break; - case 'gold': $enqType=1; break; - case 'distrimat': $enqType=2; break; - case 'star': $enqType=3; break; - case 'avis_bancaire': $enqType=4; break; - case 'autre': $enqType=5; break; - } - - /** Ajout du RIB si communiqué **/ - if (@trim(implode(' ', $infosCommande->RIB))<>'') - $iDbCrm->insert('banques', array( - 'siren'=>$siren, - 'libBanqueGuichet'=>'', - 'precis'=>1, - 'codeBanque'=>$infosCommande->RIB->banque, - 'codeGuichet'=>$infosCommande->RIB->guichet, - 'numCompte'=>$infosCommande->RIB->compte.$infosCommande->RIB->cle, - 'dateSource'=>DATETIME, - ), true); - - /** Remplissage du formulaire d'enquête pour soumission à Intersud **/ - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren); - $tabPost = array( - 'soc'=>$tabIdentite['Nom'], - 'cible_enk'=>9, // 9 - 'siret'=>$siren, - 'acti'=>'', - 'soc_exp'=>$tabInterSud['soc_exp'], - 'type_enk'=>$enqType, // 0=Premier, 1=Gold, 2=Distrimat, 3=Star, 4=Avis bancaire, 5=Autre - 'nom_diri'=>'', - 'adr'=>$tabIdentite['Adresse'], - 'ref_exp'=>$tabInterSud['ref_exp'], - 'autre_type_enk'=>'', // Texte libre - 'adr2'=>$tabIdentite['Adresse2'], - 'delai_enk'=>$enqDelai, // 6=24h, 7=72h, 8=+de5jours - 'ville'=>$tabIdentite['Ville'], - 'cp'=>$tabIdentite['CP'], - 'pays'=>'', // International ? - 'nom_exp'=>$tabInterSud['nom_exp'], - 'tel'=>$tabIdentite['Tel'], - 'port'=>$infosCommande->AutreTel, - 'tel_exp'=>$tabInterSud['tel_exp'], - 'bank'=>trim(implode(' ', $infosCommande->RIB)), - 'int_enk'=>$tabInterSud['int_enk'], // International ? - 'encours'=>$infosCommande->Encours, - 'nb_ech'=>$infosCommande->NbEcheances, - 'delai2_enk'=>$tabInterSud['delai2_enk'], // International ? - 'email_exp'=>$tabInterSud['email_exp'], - 'cred'=>'', - 'comment'=>urlencode($comment), - 'val_ret'=>$tabInterSud['val_ret'], - ); - $url='http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb=microtime(true); - $page=getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - $tabRet=array(); - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Validation impossible du formulaire d'enquête Intersud".EOL.$strInfoCommande); - //@todo - return array('error'=>array('errnum'=>456345, 'errmsg'=>'Connexion impossible à la plateforme d\'enquetes 3'), 'results'=>$tabRet); - } - $tfin=microtime(true); - $duree+=$tfin-$tdeb; - $referer=$url; - $body=$page['body']; - - $result = new CmdEnquete(); - $result->siren = $siren; - $result->emailCommande = $mail; - $result->dateCommande = DATETIME; - $result->refCmd = 'i'.$ret; - - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Commande d'enquete sur $siren", $comment.EOL.EOL.'---------------------------------'.EOL.$messageInfo.EOL.EOL.'---------------------------------'.EOL.$body); - @sendMail('production@scores-decisions.com', $mail, "Votre demande d'enquete sur ".$tabIdentite['Nom']." ($siren)", "Votre demande d'enquête sur la société ".$tabIdentite['Nom']." a été prise en compte sous la référence i$ret - ".DATETIME); - $this->wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - - /** Gestion de la déconnexion **/ - $url='http://intersud.fr/espace_client/index.php?code_ret=9'; - $tdeb=microtime(true); - $page=getUrl($url, $cookie, '', $referer, false, '', '', 7); - $tfin=microtime(true); - $duree+=$tfin-$tdeb; - - $ret = $iDbCrm->update('commandes', array('dureeCommande'=>round($duree,3)), "idCommande=$ret"); - - $output = new CmdEnqueteReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Récupération d'un kbis - * @param string $siren - * @param int $visu - * @param int $courrier - * @param string $mail - * @param string $ref - * @return PieceReturn - */ - public function getKbis($siren, $visu=1, $courrier=0, $mail='', $ref='') - { - return $this->getPiece($siren, 'kbis', '', $visu, $courrier, $ref); - } - - /** - * getStatsUtilisateurs - * @param string $login - * @param string $mois - * @param string $type - * @param boolean $payants - * @return array - */ - public function getStatsUtilisateurs($login, $mois, $type='jour', $payants=false) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - if ($payants) - { - $strPayant="AND (page LIKE 'greffe_%' OR page LIKE 'inpi_%' OR page='kbis') AND params<>'' AND (params NOT LIKE '%erreur%' OR params LIKE '%erreur 17%') "; - } - else { - $strPayant=''; - } - $iDbCrm = new WDB('sdv1'); - if ($type=='jour') { - $rep = $iDbCrm->select('logs', - 'date(dateHeure) as jours, count(*) as nb', - "1 $strPayant AND login='$login' AND dateHeure BETWEEN '$mois-01' AND '$mois-31' GROUP BY jours", - false, MYSQL_ASSOC); - } elseif ($type=='heure') { - $rep = $iDbCrm->select('logs', - 'HOUR(dateHeure) as heures, count(*) as nb', - "1 $strPayant AND login='$login' AND dateHeure BETWEEN '$mois-01' AND '$mois-31' GROUP BY heures", - false, MYSQL_ASSOC); - } - $tabRet = $rep; - - - - return array('error'=>array('errnum'=>0, 'errmsg'=>''), 'results'=>$tabRet); - } - - /** - * getPortefeuilleCsv - * @param string $login - * @param int $idClient - * @return ListeSurveillancesCsvReturn - */ - public function getPortefeuilleCsv($login='', $idClient=0) - { - return $this->getListeSurveillancesCsv('portefeuille', $login, $idClient); - } - - /** - * getPortefeuille - * @param PortefeuilleFiltre $filtre - * @param int $deb - * @param int $nbRet - * @return PortefeuilleReturn - */ - public function getPortefeuille($filtre, $deb=0, $nbRet=100) - { - $this->authenticate(); - - // Initialisation - $error = new ErrorType(); - if (empty($deb)) { $deb = 0; } - if (empty($nbRet)) { $nbRet = 100; } - - $tri = strtolower(trim($filtre->tri)); - switch ($tri) { - case 'ref': $orderBy='ORDER BY ref'; break; - case 'dateAjout': $orderBy='ORDER BY dateAjout'; break; - case 'dateDerEnvoi':$orderBy='ORDER BY dateDerEnvoi'; break; - case 'rs': $orderBy='ORDER BY rs'; break; - case 'cp': $orderBy='ORDER BY cp'; break; - case 'ville': $orderBy='ORDER BY ville'; break; - case 'indiScore': $orderBy='ORDER BY indiScore'; break; - case 'encours': $orderBy='ORDER BY encours'; break; - default: $orderBy='ORDER BY siren'; break; // siren ou vide ou autre - } - - $tabRet = array(); - $siren = substr($filtre->siret,0,9); - $nic = substr($filtre->siret,9,5); - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - - $strSelect = 's.email, s.siren, s.nic, s.ref, s.dateAjout, s.rs, s.cp, s.ville, s.dateDerEnvoi, s.encoursClient, c.actif, c.procol, c.indiScore, c.indiScore20, c.encours, c.indiScoreDate, c.dateBilan, c.indiScorePre, c.indiScore20Pre, c.encoursPre, c.indiScoreDatePre, c.sourceModif, c.scoreSolv, c.scoreSolvPre, c.scoreDir, c.scoreDirPre, c.scoreConf, c.scoreConfPre, c.scoreZ, c.scoreZPre, c.scoreCH, c.scoreCHPre, c.scoreAfdcc2, c.scoreAfdcc2Pre, c.situFi, c.situFiPre, c.infoNote, c.infoNotePre, c.noteStruct, c.noteStructPre, c.noteFin, c.noteFinPre, c.tendance, c.tendancePre, c.dateUpdate'; - - $strFiltre = ''; - if (intval($siren)>0) $strFiltre.= " AND s.siren=$siren "; - if (!empty($filtre->ref)) $strFiltre.= " AND s.ref LIKE '%$filtre->ref%'"; - if (!empty($filtre->rs)) $strFiltre.= " AND s.rs LIKE '%$filtre->rs%'"; - - // Il faut compter le nombre de siren au total - $tabTmp = $iDb->select('surveillances_site s', 'count(*) as nb', "s.login='$login' AND s.source='score' AND s.dateSuppr=0 $strFiltre", false, MYSQL_ASSOC); - $nbRepTot = $tabTmp[0]['nb']; - - $tabTmp = $iDb->select('surveillances_site s, scores_surveillance c', $strSelect, "s.login='$login' AND s.source='score' AND s.dateSuppr=0 AND s.siren=c.siren $strFiltre $orderBy LIMIT $deb,$nbRet", false, MYSQL_ASSOC); - foreach ($tabTmp as $i=>$tabSurv) { - if (trim($tabSurv['rs'])<>'') { - $rs=$tabSurv['rs']; - $cp=$tabSurv['cp']; - $ville=$tabSurv['ville']; - } else { - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($tabSurv['siren'], $tabSurv['nic']); - $rs=$tabIdentite['Nom']; - $cp=$tabIdentite['CP']; - $ville=$tabIdentite['Ville']; - $iDb->update('surveillances_site',array( - 'rs' => $rs, - 'cp' => $cp, - 'ville' => $ville), - "login='$login' AND source='score' AND dateSuppr=0 AND siren=".$tabSurv['siren']." AND nic=".$tabSurv['nic'], - false - ); - } - - $portefeuille = new Portefeuille(); - $portefeuille->email = $tabSurv['email']; - $portefeuille->siren = $tabSurv['siren']; - $portefeuille->nic = $tabSurv['nic']; - $portefeuille->ref = $tabSurv['ref']; - $portefeuille->dateAjout = $tabSurv['dateAjout']; - $portefeuille->rs = $rs; - $portefeuille->cp = $cp; - $portefeuille->ville = $ville; - // Entreprise - $portefeuille->actif = $tabSurv['actif']; - $portefeuille->procol = $tabSurv['procol']; - $portefeuille->indiScore = $tabSurv['indiScore']; - $portefeuille->indiScore20 = $tabSurv['indiScore20']; - $portefeuille->indiScorePre = $tabSurv['indiScorePre']; - $portefeuille->indiScore20Pre = $tabSurv['indiScore20Pre']; - $portefeuille->encours = $tabSurv['encours']; - $portefeuille->encoursPre = $tabSurv['encoursPre']; - $portefeuille->indiScoreDate = $tabSurv['indiScoreDate']; - $portefeuille->indiScoreDatePre = $tabSurv['indiScoreDatePre']; - $portefeuille->encoursClient = $tabSurv['encoursClient']; - $portefeuille->dateBilan = $tabSurv['dateBilan']; - $portefeuille->sourceModif = $tabSurv['sourceModif']; - //, c.scoreSolv, c.scoreSolvPre, c.scoreDir, c.scoreDirPre, c.scoreConf, c.scoreConfPre, c.scoreZ, c.scoreZPre, c.scoreCH, c.scoreCHPre, c.scoreAfdcc2, c.scoreAfdcc2Pre, c.situFi, c.situFiPre, c.infoNote, c.infoNotePre, c.noteStruct, c.noteStructPre, c.noteFin, c.noteFinPre, c.tendance, c.tendancePre, c.dateUpdate'; - $portefeuille->dateDerEnvoi = $tabSurv['dateDerEnvoi']; - $tabRet[] = $portefeuille; - - } - - $output = new PortefeuilleReturn(); - $output->error = $error; - $output->result = $tabRet; - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbRepTot; - return $output; - } - - - /** - * rechercheHisto - * @param string $recherche - * @param string $annee - * @param string $typeBod - * @param int $deb - * @param int $nbRep - * @param int $maxRep - * @param bool $pertinence - * @return RechercheHistoReturn - */ - public function rechercheHisto($recherche, $annee='', $typeBod='', $deb=0, $nbRep=20, $maxRep=200, $pertinence=false) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - if (empty($annee)) $annee = ''; - if (empty($typeBod)) $typeBod = ''; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($annee)) $pertinence = false; - $liste = array(); - $index = 'histo'; - - debugLog('I',"rechercheHisto de $recherche ($annee) (Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabFiltres = array(); - - if ($annee<>'' && $annee*1>=1953 && $annee*1<=date('Y')*1) - $tabFiltres = array('annee1'=>$annee); - - /* - require_once 'Metier/sphinx/recherche2.php'; - $ret=search2('histo', "$recherche", $tabFiltresAnnee, $deb, $nbRep, $maxRep, $pertinence); - */ - - if (SPHINX_HISTO_VERSION == 1){ - require_once 'sphinxapi/sphinxapi-0.9.9.php'; - } elseif (SPHINX_HISTO_VERSION == 2){ - require_once 'sphinxapi/sphinxapi-2.1.2.php'; - } - - $cl = new SphinxClient(); - $cl->SetServer (SPHINX_HISTO_HOST, SPHINX_HISTO_PORT); - $cl->SetConnectTimeout ( 1 ); - $cl->SetLimits ($deb, $nbRep, $maxRep); - $cl->SetMatchMode (SPH_MATCH_EXTENDED); - foreach ($tabFiltres as $nomFiltre => $valFiltre) - $cl->SetFilter($nomFiltre, array(0=>$valFiltre)); - $cl->SetRankingMode ( SPH_RANK_PROXIMITY_BM25 ); - $res = $cl->Query ( $recherche, $index ); - - if ($res===false) { - debugLog('I',"Search Sphinx : Pas de réponse pour $recherche avec ".implode(',',$tabFiltres).' ('.$cl->GetLastError() .')',__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $criteres = new RechercheHistoCriteres(); - $criteres->recherche = $recherche; - $criteres->annee = $annee; - - $output = new RechercheHistoReturn(); - $output->criteres = $criteres; - $output->nbReponses = 0; - $output->nbReponsesTotal = 0; - $output->duree = $res[time]; - $output->mots = array(); - $output->reponses = array(); - return $output; - - } - // Le moteur est opérationel - if ( $cl->GetLastWarning() ) { - debugLog('I',"Search Sphinx : Warning pour $recherche - ".$cl->GetLastWarning(),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - //print "WARNING: " . $cl->GetLastWarning() . "\n\n"; - } - - debugLog('I',"'Search Sphinx dans $index de $recherche (Filtre=".implode(',',$tabFiltres)."), Deb=$deb, nbRep=$nbRep, max=$max, any=$any",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet=array(); - if ( is_array($res['matches'])) { - $iDb = new WDB(); - foreach ( $res['matches'] as $doc => $docinfo ) - { - $listeEtab=$iDb->select('histobodacc.bodacc_ocr', - "'Histo' as Loc, id, nomFichier, annee1, bod, texte", - "id=$doc"); - $etab = $listeEtab[0]; - $tabRet[]=array( - 'Localisation' => $etab['Loc'], - 'id' => $doc, - 'Pertinence' => $docinfo['weight'], - 'Fichier' => $etab['nomFichier'], - 'Annee' => $etab['annee1'], - 'Code' => $etab['bod'], - 'Texte' => $etab['texte'], - ); - } - } - debugLog('I','Search Sphinx : Retourne '. $res[total].'/'. $res[total_found] .' en '.$res[time] .'secondes',__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $liste = $tabRet; - $nbTot = $res[total_found]; - $duree = $res[time]; - $tabMots = $res['words']; - - $tabRet = array(); - $k=0; - if(count($liste)>0) { - require_once 'i18n/cleanchar.php'; - foreach ($liste as $n=>$etab) { - $texte = cleanutf8($etab['Texte']); - $pattern = '/[^a-zA-Z0-9\/]+/ '; - $texte = preg_replace($pattern, ' ', $texte); - $posMin=100000; - $hitMin=1000000; - foreach ($tabMots as $mot=>$tabMot) { - if ($tabMot['hits']<$hitMin) { - $hitMin=$tabMot['hits']; - $motSignificatif=$mot; - } - } - $posMin = stripos($texte, ''.$motSignificatif); - if ($posMin<150) $posMin=150; - $texte2 = substr($texte, $posMin-150, 250); - $reponse = new RechercheHistoReponses(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - - //@todo : gestion du lien pour le téléchargement des fichiers bodacc - $file = strtr($etab['Fichier'], array( - '.txt'=>'.pdf', - '/mnt/bodacc/' => '')); - $vieuxWS = false; - if ($vieuxWS) { - $reponse->Fichier = 'http://tville.scores-decisions.com/bodacc/'.$file; - } else { - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $url = '/fichier/bodacc/q/'.base64_encode($file); - $reponse->Fichier = $hostname.$url; - } - $reponse->Annee = $etab['Annee']; - $reponse->Code = $etab['Code']; - $reponse->Texte = $texte2; - $tabRet[] = $reponse; - $k++; - } - } - - $criteres = new RechercheHistoCriteres(); - $criteres->recherche = $recherche; - $criteres->annee = $annee; - - $output = new RechercheHistoReturn(); - $output->criteres = $criteres; - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbTot; - $output->duree = $duree; - $output->mots = array_keys($tabMots); - $output->reponses = $tabRet; - return $output; - } - - /** - * getListeSurveillanceCsv - * @param string $source - * @param string $login - * @param int $idClient - * @return ListeSurveillancesCsvReturn - */ - public function getListeSurveillancesCsv($source='', $login='', $idClient=0) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - if (empty($source)) $source = ''; - if (empty($idClient)) $idClient = 0; - - - debugLog('I',"getListeSurveillancesCsv Début $source $login $idClient",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $iDb = new WDB(); - $strClient = $strLogin = ''; - $exportPtf = false; - switch ($source) - { - case 'insee': - case 'annonces': - case 'bilans': - case 'score': - case 'actes': - case 'privileges': - case 'dirigeants': - break; - case 'portefeuille': - $source='score'; - $exportPtf=true; - break; - default: - $source=''; - break; - } - - if ($source<>'') $strSource = "AND source='$source' "; - else $strSource = ''; - - // Control idClient - if ($idClient==0 || ($idClient!=$this->tabInfoUser['idClient'] && $this->tabInfoUser['profil']!='SuperAdministrateur') ){ - $idClient = $this->tabInfoUser['idClient']; - } - $strClient = "AND u.idClient=$idClient "; - - if ($this->tabInfoUser['profil']=='SuperAdministrateur' || $this->tabInfoUser['profil']=='Administrateur') { - // Surveillances de tous les utilisateurs du client - if (empty($login)) { - $login = ''; - //Surveillances de l'utilisateur - } else { - $strLogin = "AND s.login='$login' "; - } - } else { - //Par défaut préselection de l'utilisateur - $login = $this->tabInfoUser['login']; - $strLogin = "AND s.login='$login' "; - } - - $fichierCsv = DOC_WEB_LOCAL."csv/listesurv-$source-$login-$idClient.csv"; - - if (file_exists($fichierCsv) && - date('Ymd', filemtime($fichierCsv))==date('Ymd') && - filesize($fichierCsv)>60 ) { - $size = filesize($fichierCsv); - $erreur = false; - $tabNom = array(); - $cache = 1; - } else { - unlink($fichierCsv); - if ($source=='score'){ - if ($this->tabInfoUser['typeScore']==20) { - $strScore='v.indiScore20 AS indiScore20'; - $strScorePre='v.indiScore20Pre AS indiScore20Pre'; - } else { - $strScore='v.indiScore AS indiScore100'; - $strScorePre='v.indiScorePre AS indiScore100Pre'; - } - /*v.scoreZ, v.scoreZPre, v.scoreCH, v.scoreCHPre, - v.scoreAfdcc2, v.scoreAfdcc2Pre, v.situFi, v.situFiPre, v.infoNote, v.infoNotePre, - v.noteStruct, v.noteStructPre, v.noteFin, v.noteFinPre, v.tendance, v.tendancePre, */ - $sql="SELECT LOWER(s.login) as loginUti, s.source, s.email, s.siren, s.nic, s.ref, s.dateAjout, - s.rs, s.cp, s.ville, s.dateDerEnvoi, - s.encoursClient, v.actif, v.procol, $strScore, v.encours, v.indiScoreDate, v.dateBilan, - $strScorePre, v.encoursPre, v.indiScoreDatePre, v.sourceModif, v.scoreSolv, v.scoreSolvPre, v.scoreDir, - v.scoreDirPre, v.scoreConf, v.scoreConfPre, - e.cj, e.capital, e.capitalDev, e.ape_entrep, e.tca, e.teff_entrep, - v.dateUpdate - FROM surveillances_site s, sdv1.utilisateurs u, sdv1.clients c, scores_surveillance v, etablissements e - WHERE s.source='score' $strClient $strLogin AND dateSuppr=0 AND s.login=u.login AND u.idClient=c.id AND s.siren=v.siren AND s.siren=e.siren - GROUP BY loginUti, s.siren, s.nic, s.source, s.ref - ORDER BY loginUti ASC, s.siren ASC, s.nic ASC, s.source ASC, s.ref ASC"; - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeSurveillancesCsv($source, $login, $idClient)", $sql); - } else { - $sql="SELECT LOWER(s.login) as loginUti, s.source, s.email, s.siren, s.nic, s.ref, s.dateAjout, - s.rs, s.cp, s.ville, s.dateDerEnvoi - FROM surveillances_site s, sdv1.utilisateurs u, sdv1.clients c - WHERE 1 $strSource $strClient $strLogin AND dateSuppr=0 AND s.login=u.login AND u.idClient=c.id - ORDER BY loginUti ASC, s.siren ASC, s.nic ASC, s.source ASC, s.ref ASC"; - } - debugLog('I',"getListeSurveillancesCsv SQL $sql",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $fp = fopen(DOC_WEB_LOCAL."csv/listesurv-$source-$login-$idClient.sql", 'w'); - fwrite($fp, $sql.EOL); - fclose($fp); - exec("php ".APPLICATION_PATH."/../batch/sql2csv.php jo ".DOC_WEB_LOCAL."csv/listesurv-$source-$login-$idClient.sql $fichierCsv > /dev/null &"); - $size=$cache=0; - } - - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $result = new ListeSurveillancesCsv(); - $result->Url = $hostname.DOC_WEB_URL."csv/listesurv-$source-$login-$idClient.csv"; - $result->Taille = $size; - $result->Cache = $cache; - - debugLog('I','getListeSurveillancesCsv Url='.$hostname.DOC_WEB_URL."csv/listesurv-$source-$login-$idClient.csv, Taille=$size, Cache=$cache",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $output = new ListeSurveillancesCsvReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * getListeJalCollecte - * @return ListeJalCollecteReturn - */ - public function getListeJalCollecte() - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - - $iBodacc = new MBodacc(); - $tabJal = $iBodacc->getListeJalCollecte(); - foreach ($tabJal as $i=>$jal) - { - $jalCollecte = new JalCollecte(); - $jalCollecte->id = $i; - $jalCollecte->nom = $jal; - $tabRet[] = $jalCollecte; - } - $output = new ListeJalCollecteReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * getListeFichierSurv - * @param string $login - * @param string $ref - * @param string $nomFic - * @return ListeFichierSurvReturn - */ - public function getListeFichierSurv($login, $ref='*', $nomFic='') - { - $this->authenticate(); - if (empty($ref)) $ref = '*'; - if (empty($nomFic)) $nomFic = ''; - $error = new ErrorType(); - //debugLog('I',"getListeFichierSurv pour $login, $ref, $nomFic",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabFichier=$tabDates=array(); - $numAbo=substr($ref, 0,5); - if (strtolower($login)=='vwbank') { - $repClient='volkswagen bank'; - $ficClient='surveillanceBodacc_SURBODPRDCFTVWBANK'; - $numAbo=$ref='19300'; - } elseif (substr($login,0,6)=='apicil') { - $repClient='apicil'; - $ficClient='surveillanceBodacc_SURBODPRDCFTAPICIL'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='omni04') { - $repClient='aggm mederic '; - $ficClient='surveillanceBodacc_SURBODPRDFTSOMNIREP'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='bodacca3m') { - $repClient='aggm mederic '; - $ficClient='surveillanceBodacc_SURBODPRDFTSMEDERIC'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='bodaccomni') { - $repClient='aggm mederic '; - $ficClient='surveillanceBodacc_SURBODPRDFTSOMNIREP'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='bodacccrr') { - $repClient='aggm mederic '; - $ficClient='surveillanceBodacc_SURBODPRDFTSCRR'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='cpcambr13' || strtolower($login)=='cpcambr14') { - $repClient='cpcam des bouches du rhône'; - $ficClient='diffusionBodacc_DIFBODPRDMAICPCAM13'; - $numAbo=$ref=''; - } else { - $repClient='cnasea'; - $ficClient='surveillanceBodacc_SURBODTSTFTSCNASEA'; - } - $dh = opendir(DOC_WEB_LOCAL."clients/$repClient/"); - if (!$dh) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic", "Impossible d'ouvrir le dossier '/home/data/clients/$repClient/'"); - $error->errnum = 1; - $error->errmsg = "Impossible d'ouvrir le dossier client"; - } else { - while (false !== ($filename = readdir($dh))) { - if ($filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,42)==$ficClient.$numAbo) { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,43,8); - $tabClients[]=substr($filename,0,42); - } - elseif ($ref=='*' && $filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,37)==$ficClient && substr($filename,37,1)<>'_') { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,43,8); - $tabClients[]=substr($filename,0,42); - } - elseif ($filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,37)==$ficClient && substr($filename,37,1)=='_' && $repClient=='apicil') { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,38,8); - $tabClients[]=substr($filename,0,37); - } - elseif ($filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,38)==$ficClient && substr($filename,38,1)=='_' && $repClient=='aggm mederic ') { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,39,8); - $tabClients[]=substr($filename,0,38); - } - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic : fichier lu '$filename'", "Fichier lu '$filename'"); - } - /** Tableau des noms de fichier **/ - sort($tabFichier); - /** Tableau des dates de livraisons **/ - $tabDates=array_unique($tabDates); - sort($tabDates); - /** Tableau des Clients **/ - $tabClients=array_unique($tabClients); - sort($tabClients); - //return array('error'=>array('errnum'=>0, 'errmsg'=>''), 'results'=>$tabDates); - - /*@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic", - "Fichiers :".EOL. - print_r($tabFichier, true). - "Dates:".EOL. - print_r($tabDates, true). - "Clients :".EOL. - print_r($tabClients, true) - );*/ - - if ($ref=='*') { - $tabFichier = array(); - // Boucle sur les dates de livraison - foreach ($tabDates as $dateFic) { - if (strlen($dateFic)<>8) continue; - if (!file_exists(DOC_WEB_LOCAL."clients/$repClient/$ficClient".'_'."$dateFic.csv") || - filesize(DOC_WEB_LOCAL."clients/$repClient/$ficClient".'_'."$dateFic.csv")==0) { - - $fpW=fopen(DOC_WEB_LOCAL."clients/$repClient/$ficClient".'_'."$dateFic.csv",'w'); - $entete=true; - // Boucle afin de vérifier si on est sur le bon client - foreach ($tabClients as $nomClient) { - $dh = opendir(DOC_WEB_LOCAL."clients/$repClient/"); - while (false !== ($filename = readdir($dh))) { - if (substr($filename,0,51)==$nomClient.'_'.$dateFic && substr($filename,-4)=='.csv') { - $fichier=$filename; - //break; - } - } - $fpR=fopen(DOC_WEB_LOCAL."clients/$repClient/$fichier",'r'); - //return array('error'=>array('errnum'=>0, 'errmsg'=>''), 'results'=>array(($fichier)));//die; - if ($fpR) { - while (!feof($fpR)) { - $ligne=trim(fgets($fpR)); - if (substr($ligne,0,5)=='Siren' && $entete==true) { - fwrite($fpW, 'SITE;'.$ligne.EOL); - $entete=false; - } - elseif (substr($ligne,0,5)<>'Siren' && trim($ligne)<>'') { - fwrite($fpW, strtr($nomClient, array('surveillanceBodacc_SURBODTSTFTS'=>'', - 'surveillanceBodacc_SURBODPRDCFT'=>'')).';'.$ligne.EOL); - } - } - fclose($fpR); - } - } - fclose($fpW); - } - if (strlen($dateFic)==8) - $tabFichier[]=$ficClient.'_'.$dateFic.'.csv'; - } - } - rsort($tabFichier); - - if ($nomFic<>'') { - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, /home/data/clients/$repClient/$nomFic", 'Avant BZ2'); - if (!file_exists(DOC_WEB_LOCAL."/csv/$nomFic.bz2") || - filesize(DOC_WEB_LOCAL."/csv/$nomFic.bz2")<=14) { - $string=file_get_contents("/home/data/clients/$repClient/$nomFic"); - if ($string===false) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic", "Ouverture impossible du fichier '/home/data/clients/$repClient/$nomFic'"); - } - $bz = bzopen(DOC_WEB_LOCAL."/csv/$nomFic.bz2",'w'); - if ($bz) { - bzwrite($bz, $string, strlen($string)); - bzclose($bz); - } - } /*else - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, /home/data/clients/$repClient/$nomFic", 'Sans BZ2'); - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, /home/data/clients/$repClient/$nomFic", 'Après BZ2'); - */ - } - debugLog('I',"getListeFichierSurv pour $login, $ref, $nomFic : nb fichiers=".count($tabFichier),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $result = array(); - foreach($tabFichier as $fichier){ - $retFichier = new ListeFichierSurv(); - $retFichier->UrlFichier = $hostname.'/data/csv/'.$fichier; - $result[] = $retFichier; - } - } - $output = new ListeFichierSurvReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Geocodage d'une adresse - * @param string $adresse - * @param string $cp - * @param string $ville - * @param string $pays - * @return GeoCodeReturn - */ - public function geoCode($adresse, $cp, $ville, $pays='France') - { - $this->authenticate(); - - $ligne = date('YmdHis').";$siren;MMap AVANT"; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - - $mMap = new MMap($adresse, $cp, $ville, $pays); - - $ligne=date('YmdHis').";$siren;MMap APRES"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - - $geocode = new GeoCode(); - $geocode->latitude = $mMap->latitudeDec; - $geocode->longitude = $mMap->longitudeDec; - $geocode->precis = $mMap->precision; - $geocode->adresseValidee = $mMap->adresseValidee; - $geocode->latitudeDeg = $mMap->latitudeDeg; - $geocode->longitudeDeg = $mMap->longitudeDeg; - - $output = new GeoCodeReturn(); - $output->error = $error; - $output->result = $geocode; - } - - /** - * Recherche d'entreprise par leur actionnaire - * @param string $nom Raison sociale / Nom de l'actionnaire (obligatoire) - * @param string $cpVille CP, Ville - * @param string $siren Siren de l'actionnaire - * @param string $pays Pays de l'actionnaire - * @param string $pctMin Niveau de détention Minimam de l'actionnaire - * @param string $pctMax Niveau de détention Maximum de l'actionnaire - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur les noms et prénoms (si true) - * @return SearchActReturn - */ - public function searchAct($nom, $cpVille='', $siren=0, $pays='', $pctMin=0, $pctMax=100, $deb=0, $nbRep=20, $maxRep=200, $pertinence=false) - { - debugLog('I',"Recherche Actionnaire de $nom, $cpVille (Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (!empty($pays)){ - $wdb = new WDB('jo'); - $result = $wdb->select('tabPays', 'codPays3', "libPays LIKE '".$pays); - if (count($result>0)){ - $pays = $result[0]['codPays3']; - } else { - $pays = ''; - } - } - - if (empty($cpVille)) $cpVille = ''; - if (empty($siren)) $siren = ''; - if (empty($pctMin)) $pctMin = 0; - if (empty($pctMax)) $pctMax = 100; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($pertinence)) $pertinence = false; - - $mLiens = new MLiens(''); - // rechercheActionnaire($nom, $cpVille, $siren, $pays, $pctMin, $pctMax, $deb, $nbRep, $maxRep, $pertinence) - $etabs = $mLiens->rechercheActionnaire($nom, $cpVille, $siren, $pays, $pctMin, $pctMax, $deb, $nbRep, $maxRep, $pertinence); - - $iInsee = new MInsee(); - - $tabRet = array(); - foreach ($etabs['reponses'] as $etab) { - $act = new EntrepriseActItem(); - $act->id = $etab['id']; - $act->Pertinence = $etab['Pertinence']; - $act->Siret = $etab['Siret']; - $act->Siege = $etab['Siege']; - $act->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $act->Nom2 = prepareString($etab['Nom2']); - $act->Sigle = prepareString($etab['Sigle']); - $act->Enseigne = prepareString($etab['Enseigne']); - $act->Adresse = prepareString($etab['Adresse']); - $act->Adresse2 = prepareString($etab['Adresse2']); - $act->CP = $etab['CP']; - $act->Ville = prepareString($etab['Ville']); - $act->Tel = $etab['Tel']; - $act->Fax = $etab['Fax']; - $act->FJ = $etab['FJ']; - $act->FJLib = prepareString($iInsee->getLibelleFJ($etab['FJ'])); - $act->Siren = $etab['Siren']; - $act->Nic = $etab['Nic']; - $act->Actif = $etab['Actif']; - $act->NafEtab = $etab['NafEtab']; // Etablissement - $act->NafEtabLib = prepareString($iInsee->getLibelleNaf($etab['NafEtab'])); // Etablissement - $act->NafEnt = $etab['NafEnt']; // Entreprise - $act->NafEntLib = prepareString($iInsee->getLibelleNaf($etab['NafEnt'])); - $act->ActNomRs = $etab['ActNomRs']; - $act->ActPays = $etab['ActPays']; - $act->ActDateLien = $etab['ActDateLien']; - $act->ActActif = $etab['ActActif']; - $act->ActPmin = $etab['ActPmin']; - $tabRet[] = $act; - } - - $output = new SearchActReturn(); - $output->nbReponses = $etabs['nbReponses']; - $output->nbReponsesTotal = $etabs['nbReponsesTotal']; - $output->result = $tabRet; - - if ($tabRet['nbReponses']==0) { - debugLog('W', "Aucun résultat pour cette recherche !", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - } - - return $output; - } - - /** - * Commande d'une enquête sur une entreprise en France ou à l'Internationale - * @param string $siren - * @param string $infoEnq Informations pour la demande d'enquête
        - * InfoEnq[Entrep][Tel]
        - * InfoEnq[Entrep][Fax]
        - * InfoEnq[Entrep][AutreTel]
        - * InfoEnq[Entrep][Mail]
        - * InfoEnq[Entrep][AutreMail]
        - * InfoEnq[Entrep][Web]
        - * InfoEnq[Entrep][Rib][Banque]
        - * InfoEnq[Entrep][Rib][Guichet]
        - * InfoEnq[Entrep][Rib][Compte]
        - * InfoEnq[Entrep][Rib][Cle]
        - * InfoEnq[Encours]
        - * InfoEnq[NbEcheances]
        - * InfoEnq[AvisAssureur]
        - * InfoEnq[Type]
        - * InfoEnq[Delai]
        - * InfoEnq[PrecisionsChoix]
        - * InfoEnq[Precisions][MontantCA]
        - * InfoEnq[Precisions][Motif]
        - * InfoEnq[Precisions][Autre]
        - * InfoEnq[Anciennete]
        - * InfoEnq[AncienneteDuree]
        - * InfoEnq[ImpayeesChoix]
        - * InfoEnq[Impayees][Montant]
        - * InfoEnq[Impayees][Nombre]
        - * InfoEnq[Impayees][Date]
        - * InfoEnq[RetardPaiementChoix]
        - * InfoEnq[RetardPaiement][Montant]
        - * InfoEnq[RetardPaiement][Nombre]
        - * InfoEnq[RetardPaiement][Date]
        - * InfoEnq[LitigeChoix]
        - * InfoEnq[Litige][Precisions]
        - * InfoEnq[Observation]
        - * @param string $infoDemande Informations sur l'utilisateur
        - * InfoUser[Profil]
        - * InfoUser[ProfilAutre]
        - * InfoUser[Identite]
        - * InfoUser[Tel]
        - * InfoUser[Fax]
        - * InfoUser[Email]
        - * InfoUser[Ref]
        - * @return CommandeEnqueteReturn - */ - public function commandeEnquete($siren, $infoEnq, $infoDemande) - { - $this->authenticate(); - //Initialisation - $infoEnq = json_decode($infoEnq); - $infoDemande = json_decode($infoDemande); - - $mail = trim($infoDemande['Email']); - if ($mail=='') { - $mail=$this->tabInfoUser['email']; - } - - $tabInsert = array( - 'idUser' => $this->tabInfoUser['id'], - 'source' => 'intersud', // 'greffes', 'asso', 'graydon' - 'login' => $tabInfoUser['login'], - 'emailCommande' => $mail, - 'siren' => $siren, - 'refDocument' => serialize($infoDemande), - 'refCommande' => serialize($infoEnq), - 'dateCommande' => DATETIME, - // 'idClient'=> $tabInfoUser['idClient'], - ); - debugLog('I',"Intersud, début commande sur $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $messageInfo = print_r($infoEnq, 1).EOL.print_r($infoDemande,1).EOL; - - $idClient = $this->tabInfoUser['idClient']; - - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients', ' nom, racineLogin, InterSudLogin, InterSudPass', "id='$idClient'", false, MYSQL_ASSOC); - $login = trim($rep[0]['InterSudLogin']); - $pass = trim($rep[0]['InterSudPass']); - $nomClient = trim(strtoupper($rep[0]['nom'])); - $strInfoCommande = "NOM et Prénom du client demandeur : ".$infoDemande['Identite'].EOL; - $strInfoCommande.= "Email du client demandeur : $mail".EOL; - $strInfoCommande.= "Tel/Fax du demandeur : ".$infoDemande['Tel'].' / '.$infoDemande['Fax'].EOL; - $strInfoCommande.= "Profil du demandeur : ".trim($infoDemande['Profil'].' '.$infoDemande['ProfilAutre']).EOL; - $typeEnqLog='enqueteDemNF'; - - if ($login=='' || $pass=='') { - /** Il ne s'agit pas d'un client final, on anonymise la commande **/ - $login='YLENA'; // Demandes en test - $pass='WYLFE'; - $nomClient=$strInfoCommande=''; - $typeEnqLog='enqueteDem'; - /* ENQUETES EN PROD - $login='FACTURE'; - $pass='AWKROM'; - */ - } - - /** Connexion à l'Extranet Intersud **/ - $url = 'http://www.intersud.fr/espace_client/espace_client.php'; - $cookie = $referer = ''; - $tabPost = array( - 'login' => $login, - 'pwd' => $pass, - ); - $tdeb = microtime(true); - $page = getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Connexion impossible à la plateforme Intersud".EOL.$strInfoCommande); - //wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - throw new SoapFault('1',"Connexion impossible à la plateforme d'enquêtes"); - } - - $tfin = microtime(true); - $duree = $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - $cookie = $page['header']['Set-Cookie']; - $intersudNomPrenom=$intersudRaisonSociale=''; - if (preg_match('/(.*)<\/td>/Uis',$body,$matches)) - $intersudNomPrenom=trim($matches[1]); - if (preg_match('/(.*)<\/td>/Uis',$body,$matches)) - $intersudRaisonSociale=trim($matches[1]); - debugLog('I',"Intersud, connexion via $login pour $intersudRaisonSociale ($intersudNomPrenom, cookie=$cookie)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - /* - $fp=@fopen(LOG_PATH."/intersud.log", "a"); - @fwrite($fp, EOL.DATETIME.EOL.print_r($page,true).'========================================================================================================='.EOL.EOL); - @fclose($fp); - die(); - */ - /** Page formulaire de demande d'enquête **/ - $url='http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, '', $referer, false, '', '', 7); - if ($page['code']<>200) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Connexion impossible au formulaire d'enquête Intersud".EOL.$strInfoCommande); - throw new SoapFault('2',"Connexion impossible à la plateforme d'enquêtes"); - } - - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - - $fp=@fopen(LOG_PATH.'/intersud.log', "a"); - @fwrite($fp, print_r($page,true)); - @fclose($fp); - $tabInterSud=array(); - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[2][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[1][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - $ref_exp=$tabInterSud['ref_exp']; - $email_exp=$tabInterSud['email_exp']; - $tel_exp=$tabInterSud['tel_exp']; - debugLog('I',"Intersud, formulaire enquête ref $ref_exp, $email_exp, $tel_exp",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $fp=@fopen(LOG_PATH.'/intersud.log', "a"); - @fwrite($fp, print_r($matches,true)); - @fwrite($fp, print_r($tabInterSud,true)); - @fclose($fp); - - /** Insertion de la commande en base **/ - $ret = $iDbCrm->insert('commandes', $tabInsert, true); - $comment = "Référence de la commande chez Scores et Décisions : i$ret - ".DATETIME." - Date et heure de la commande : ".date('d/m/Y - H:i')." - Origine de la commande : $nomClient - $strInfoCommande - - CA : ".$infoEnq['Precisions']['MontantCA']." - Motif de la demande : ".trim($infoEnq['Precisions']['Motif'].' '.$infoEnq['Precisions']['Autre'])." - Type de la demande : ".$infoEnq['Precisions']['Type']." - Anciennete de la relation : ".$infoEnq['Anciennete'].' '.$infoEnq['AncienneteDuree']." - Observations : ".$infoEnq['Observation'].EOL; - - if ($infoEnq['ImpayeesChoix']<>'non') - $comment.="Impayé(s) : ".$infoEnq['Impayees']['Nombre']." impayé(s) pour un montant de ".$infoEnq['Impayees']['Montant']." en date du ".$infoEnq['Impayees']['Date'].EOL; - - if ($infoEnq['RetardPaiementChoix']<>'non') - $comment.="Retard(s) de paiement : ".$infoEnq['RetardPaiement']['Nombre']." retard(s) pour un montant de ".$infoEnq['RetardPaiement']['Montant']." en date du ".$infoEnq['RetardPaiement']['Date'].EOL; - - if ($infoEnq['LitigeChoix']<>'non') - $comment.="Présence de litige(s) : ".$infoEnq['Litige']['Precisions'].EOL; - - $enqType=0; - $enqDelai=7; - switch (strtolower($infoEnq['Type'])) { - case 'premier': $enqType=0; $enqDelai=6; break; - case 'gold': $enqType=1; break; - case 'distrimat': $enqType=2; break; - case 'star': $enqType=3; break; - case 'avis_bancaire': $enqType=4; break; - case 'autre': $enqType=5; break; - } - - /** Ajout du RIB si communiqué **/ - if (@trim(implode(' ', $infoEnq['Entrep']['Rib']))<>''){ - $iDbCrm->insert('banques', array( - 'siren' => $siren, - 'libBanqueGuichet' => '', - 'precis' => 1, - 'codeBanque' => $infoEnq['Entrep']['Rib']['Banque'], - 'codeGuichet' => $infoEnq['Entrep']['Rib']['Guichet'], - 'numCompte' => $infoEnq['Entrep']['Rib']['Compte'].$infoEnq['Entrep']['Rib']['Cle'], - 'dateSource' => DATETIME, - ), true); - } - - /** Remplissage du formulaire d'enquête pour soumission à Intersud **/ - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren); - $tabPost = array( - 'soc' => $tabIdentite['Nom'], - 'cible_enk' => 9, // 9 - 'siret' => $siren, - 'acti' => '', - 'soc_exp' => $tabInterSud['soc_exp'], - 'type_enk' => $enqType, // 0=Premier, 1=Gold, 2=Distrimat, 3=Star, 4=Avis bancaire, 5=Autre - 'nom_diri' => '', - 'adr' => $tabIdentite['Adresse'], - 'ref_exp' => $tabInterSud['ref_exp'], - 'autre_type_enk' => '', // Texte libre - 'adr2' => $tabIdentite['Adresse2'], - 'delai_enk' => $enqDelai, // 6=24h, 7=72h, 8=+de5jours - 'ville' => $tabIdentite['Ville'], - 'cp' => $tabIdentite['CP'], - 'pays' => '', // International ? - 'nom_exp' => $tabInterSud['nom_exp'], - 'tel' => $tabIdentite['Tel'], - 'port' => $infoEnq['Entrep']['AutreTel'], - 'tel_exp' => $tabInterSud['tel_exp'], - 'bank' => trim(implode(' ', $infoEnq['Entrep']['Rib'])), - 'int_enk' => $tabInterSud['int_enk'], // International ? - 'encours' => $infoEnq['Encours'], - 'nb_ech' => $infoEnq['NbEcheances'], - 'delai2_enk' => $tabInterSud['delai2_enk'], // International ? - 'email_exp' => $tabInterSud['email_exp'], - 'cred' => '', - 'comment' => urlencode($comment), - 'val_ret' => $tabInterSud['val_ret'], - ); - $url = 'http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Validation impossible du formulaire d'enquête Intersud".EOL.$strInfoCommande); - throw new SoapFault('3',"Connexion impossible à la plateforme d'enquêtes"); - } - - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - - $output = new CommandeEnqueteReturn(); - $output->siren = $siren; - $output->emailCommande = $mail; - $output->dateCommande = DATETIME; - $output->refCmde = 'i'.$ret; - - //$strInfoCommande $mail - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Commande d'enquete sur $siren", $comment.EOL.EOL.'---------------------------------'.EOL.$messageInfo.EOL.EOL.'---------------------------------'.EOL.$body); - @sendMail('production@scores-decisions.com', $mail, "Votre demande d'enquete sur ".$tabIdentite['Nom']." ($siren)", "Votre demande d'enquête sur la société ".$tabIdentite['Nom']." a été prise en compte sous la référence i$ret - ".DATETIME); - wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - - /** Gestion de la déconnexion **/ - $url = 'http://intersud.fr/espace_client/index.php?code_ret=9'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, '', $referer, false, '', '', 7); - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - - $ret = $iDbCrm->update('commandes', array('dureeCommande'=>round($duree,3)), "idCommande=$ret"); - - return $output; - } - - /** - * Retourne l'ensemble des informations des dirigeants opérationnels (non statutaires) de l'entreprise - * @param string $siren Siren de l'entreprise - * @return DirigeantOp[] - */ - public function getDirigeantsOp($siren) - { - $this->authenticate(); - - debugLog('I',"Dirigeants opérationnels demandés pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($siren)>9 || (substr($siren,0,9)*1)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $dirs = $iInsee->getDirigeantsOp($siren); - $tabRet = array(); - if (count($dirs)>0){ - foreach ($dirs as $nb => $dir) { - $objet = new DirigeantOp(); - $objet->Code = $dir['Fonction']; - $objet->Titre = prepareString($dir['Titre']); - $objet->Societe = prepareString($dir['Societe']); - $objet->Civilite = prepareString($dir['Civilite']); - $objet->Nom = prepareString($dir['Nom']); - $objet->Prenom = prepareString($dir['Prenom']); - $objet->NomUsage = prepareString($dir['NomUsage']); - $objet->NaissDate = $dir['NaissDate'];// 07/09/1961 - $objet->NaissVille = prepareString($dir['NaissVille']); // LE RUSSEY - $objet->NaissDepPays = prepareString($dir['NaissDepPays']); // LE RUSSEY - $objet->Ancien = $dir['Ancien']; - $objet->DateFct = $dir['DateFct']; - - $tabRet[] = $objet; - } - } - $this->wsLog('dirigeantsOp', $siren); - debugLog('I', 'Nb Dirigeants Op retournés = '. count($dirs), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - return $tabRet; - } - - /** - * Liste de tous les dépôts enregistrés à l'INPI pour une entreprise - * @param string $siren Siren de l'entreprise - * @return Depot[] - */ - public function getListeDepots($siren) - { - $this->authenticate(); - - debugLog('I',"Liste des dépots INPI pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($siren)>9 || (substr($siren,0,9)*1)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iRncs=new MRncs(); - $evens=$iRncs->getListeDepots($siren); - $tabRet = array(); - if (count($evens)>0){ - foreach ($evens as $nb=>$even){ - $objet = new Depot(); - $objet->CodeDepot = $even['codDepot']; - $objet->LibDepot = prepareString($even['libDepot']); - $objet->DateDepot = $even['datDepot']; - $objet->RefDepot = $even['refDepot']; - $objet->DateRncs = $even['datRncs']; - $objet->DateMAJ = $even['datSed']; - - $tabRet[] = $objet; - } - } - debugLog('I', 'Nb dépôts retournés = '. count($tabRet), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - return $tabRet; - } - - - /** - * Enter description here ... - * @param string $siret - * @param integer $id - * @return IdentiteLight - */ - public function getIdentiteLight($siret, $id = 0) - { - $this->authenticate(); - - //Initialisation - if (empty($id)) { - $id = 0; - } - - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if ($siren*1==0 && $id==0) { - $this->sendError('1010'); - } - if ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren, $nic, $id); - - $output = new IdentiteLight(); - $output->id = $tabIdentite['id']; - $output->Siret = $tabIdentite['Siret']; - $output->Siege = $tabIdentite['Siege']; - $output->Nom = $tabIdentite['Nom']; - $output->Tribunal = $tabIdentite['Tribunal']; - $output->Sigle = $tabIdentite['Sigle']; - $output->Enseigne = $tabIdentite['Enseigne']; - $output->Adresse = $tabIdentite['Adresse']; - $output->Adresse2 = $tabIdentite['Adresse2']; - $output->AdresseNum = $tabIdentite['AdresseNum']; - $output->AdresseBtq = $tabIdentite['AdresseBtq']; - $output->AdresseVoie = $tabIdentite['AdresseVoie']; - $output->AdresseRue = $tabIdentite['AdresseRue']; - $output->CP = $tabIdentite['CP']; - $output->Ville = $tabIdentite['Ville']; - $output->Tel = $tabIdentite['Tel']; - $output->Fax = $tabIdentite['Fax']; - $output->FJ = $tabIdentite['FJ']; - $output->FJ_Lib = $tabIdentite['FJ_lib']; - $output->Siren = $tabIdentite['Siren']; - $output->Nic = $tabIdentite['Nic']; - $output->Actif = $tabIdentite['Actif']; - $output->NafEtab = $tabIdentite['NafEtab']; - $output->NafEnt = $tabIdentite['NafEnt']; - $output->NafEntLib = $tabIdentite['NafEntLib']; - $output->NafEtabLib = $tabIdentite['NafEtabLib']; - $output->AutreId = $tabIdentite['AutreId']; - $output->Source = $tabIdentite['Source']; - $output->SourceId = $tabIdentite['SourceId']; - $output->Dept = $tabIdentite['Dept']; - $output->codeCommune = $tabIdentite['codeCommune']; - $output->Capital = $tabIdentite['Capital']; - $output->CapitalDev = $tabIdentite['CapitalDev']; - $output->TrancheCA = $tabIdentite['TrancheCA']; - $output->TrancheCALib = $tabIdentite['TrancheCALib']; - $output->EffEnTr = $tabIdentite['EffEnTr']; - $output->EffEnTrLib = $tabIdentite['EffEnTrLib']; - $output->EffEtTr = $tabIdentite['EffEtTr']; - $output->EffEtTrLib = $tabIdentite['EffEtTrLib']; - return $output; - } - - -} \ No newline at end of file diff --git a/library/WsScore/Interne/v0.3/Types.php b/library/WsScore/Interne/v0.3/Types.php deleted file mode 100644 index db72c765..00000000 --- a/library/WsScore/Interne/v0.3/Types.php +++ /dev/null @@ -1,1742 +0,0 @@ - Pieces - -class CmdFiltrePieces -{ - /** @var string */ - public $raisonSociale; - /** @var string */ - public $siren; - /** @var string */ - public $demandeurReference; - /** @var boolean */ - public $fermee = false; -} - -class ListeCmdPiecesReturn -{ - /** @var ErrorType */ - public $error; - /** @var int */ - public $nbCommandes; - /** @var CmdPiecesDetail[] */ - public $liste; -} - -class CmdPiecesReturn -{ - /** @var ErrorType */ - public $error; - /** @var CmdPiecesDetail */ - public $commande; -} - -class CmdPiecesDetail -{ - /** @var InfoCommandePieces */ - public $infoCommande; - /** @var InfosDemandeur */ - public $infosDemandeur; - /** @var RefCommande */ - public $refCommande; -} - -class InfoCommandePieces -{ - /** @var string */ - public $siren; - /** @var bool */ - public $privSecu; - /** @var bool */ - public $privTres; - /** @var bool */ - public $nantFond; - /** @var bool */ - public $nantVend; - /** @var bool */ - public $declCrea; - /** @var bool */ - public $nantCompl; -} - -//===> Bilan - -class ListeCmdBilanReturn -{ - /** @var ErrorType */ - public $error; - /** @var int */ - public $nbCommandes; - /** @var CmdBilanDetail[] */ - public $liste; -} - -class CmdBilanReturn -{ - /** @var ErrorType */ - public $error; - /** @var CmdBilanDetail */ - public $commande; -} - -class CmdBilanDetail -{ - /** @var InfoCommandeBilan */ - public $infoCommande; - /** @var InfosDemandeur */ - public $infosDemandeur; - /** @var RefCommande */ - public $refCommande; -} - -class InfoCommandeBilan -{ - /** @var string */ - public $siren; - /** @var string */ - public $waldec; - /** @var int */ - public $idEntreprise; - /** @var string */ - public $mode; - /** @var string */ - public $dateCloture; - /** @var string */ - public $type; -} - -//===> Acte - -class ListeCmdActeReturn -{ - /** @var ErrorType */ - public $error; - /** @var int */ - public $nbCommandes; - /** @var CmdActeDetail[] */ - public $liste; -} - -class CmdActeReturn -{ - /** @var ErrorType */ - public $error; - /** @var CmdActeDetail */ - public $commande; -} - -class CmdActeDetail -{ - /** @var InfoCommandeActe */ - public $infoCommande; - /** @var InfosDemandeur */ - public $infosDemandeur; - /** @var RefCommande */ - public $refCommande; -} - -class InfoCommandeActe -{ - /** @var string */ - public $siren; - /** @var int */ - public $idEntreprise; - /** @var string */ - public $mode; - /** @var string */ - public $depotNum; - /** @var string */ - public $acteNum; -} - -//===> Kbis - -class ListeCmdKbisReturn -{ - /** @var ErrorType */ - public $error; - /** @var int */ - public $nbCommandes; - /** @var CmdKbisDetail[] */ - public $liste; -} - -class CmdKbisReturn -{ - /** @var ErrorType */ - public $error; - /** @var CmdKbisDetail */ - public $commande; -} - -class CmdKbisDetail -{ - /** @var InfoCommandeKbis */ - public $infoCommande; - /** @var InfosDemandeur */ - public $infosDemandeur; - /** @var RefCommande */ - public $refCommande; -} - -class InfoCommandeKbis -{ - /** @var string */ - public $siren; - - /** - * Méthode de transmission du kbis (mail, courrier) - * @var string - */ - public $mode; -} - -//===> Asso - -class ListeCmdAssoReturn -{ - /** @var ErrorType */ - public $error; - /** @var int */ - public $nbCommandes; - /** @var CmdAssoDetail[] */ - public $liste; -} - -class InfoCmdAsso -{ - /** @var string */ - public $siren; - /** @var string */ - public $waldec; - /** @var int */ - public $idEntreprise; - /** @var string */ - public $raisonSociale; -} - -class CmdAssoReturn -{ - /** @var ErrorType */ - public $error; - /** @var CmdAssoDetail */ - public $commande; -} - -class CmdAssoDetail -{ - /** @var string */ - public $siren; - /** @var string */ - public $emailCommande; - /** @var string */ - public $dateCommande; - /** @var string */ - public $refCmde; -} - -class CommandeReturnType -{ - /** @var ErrorType */ - public $error; - /** @var RefCommande */ - public $ref; -} - -class ListeCommandeFiltre -{ - /** @var string */ - public $type; -} - -class CmdStatut -{ - /** @var int */ - public $code; - /** @var string */ - public $lib; -} - -class ListeConventionsReturn -{ - /** @var ErrorType */ - public $error; - /** @var Convention[] */ - public $result; -} - -class Convention -{ - /** @var string */ - public $idCC; - /** @var string */ - public $nomCC; - /** @var string */ - public $infoCC; - /** @var string */ - public $editorCC; - /** @var int */ - public $nbPageCC; - /** @var string */ - public $isbnCC; - /** @var string */ - public $dateCC; - /** @var string */ - public $joCCmaj; -} - -class AnnonceCollecteReturn -{ - /** @var ErrorType */ - public $error; - /** @var AnnonceCollecte */ - public $result; -} - -class AnnonceCollecte -{ - /** @var string */ - public $id; - /** @var string */ - public $siren; - /** @var string */ - public $raisonSociale; - /** @var string */ - public $adresse; - /** @var string */ - public $codePostal; - /** @var string */ - public $ville; - /** @var string */ - public $dateJugement; - /** @var AnnonceEvenement[] */ - public $even; - /** @var string */ - public $dateSource; - /** @var string */ - public $dateCessationPaiement; - /** @var string */ - public $dateEffetFinP; - /** @var string */ - public $tribunal; - /** @var string */ - public $numero; - /** @var string */ - public $montant; - /** @var string */ - public $actionsNb; - /** @var string */ - public $inter1type; - /** @var string */ - public $inter1id; - /** @var string */ - public $inter1nom; - /** @var string */ - public $inter2type; - /** @var string */ - public $inter2id; - /** @var string */ - public $inter2nom; - /** @var string */ - public $inter3type; - /** @var string */ - public $inter3id; - /** @var string */ - public $inter3nom; - /** @var string */ - public $complement; - /** @var string */ - public $nouvActivite; - /** @var string */ - public $nouvDir; - /** @var string */ - public $nouvAdr; - /** @var string */ - public $nouvFJ; - /** @var string */ - public $source; -} - -class AnnonceEvenement -{ - /** @var int */ - public $CodeEven; - /** @var string */ - public $LibEven; -} - -class DevisesReturn -{ - /** @var ErrorType */ - public $error; - /** @var Devise[] */ - public $result; -} - -class Devise -{ - /** @var string */ - public $devIso; - /** @var string */ - public $devNom; -} - - -class DevisesCoursReturn -{ - /** @var ErrorType */ - public $error; - /** @var DevisesCours[] */ - public $result; -} - -class DevisesCours -{ - /** @var string */ - public $codeDevise; - /** @var string */ - public $nomDevise; - /** @var string */ - public $dateChange; - /** @var string */ - public $valeurDevise; -} - -class PieceReturn -{ - /** @var ErrorType */ - public $error; - /** @var PieceResult */ - public $result; -} - -class PieceResult -{ - /** @var string */ - public $Siren; - /** @var string */ - public $Url; - /** @var string */ - public $Taille; - /** @var string */ - public $Cache; - /** @var array */ - public $debug; - /** @var string */ - public $fichier; -} - -class SetInfosMandataire -{ - /** @var int */ - public $id = 0; - /** @var string */ - public $sirenGrp; - /** @var string */ - public $sirenMand; - /** @var string */ - public $Nom; - /** @var string */ - public $Prenom; - /** @var string */ - public $type; - /** @var string */ - public $stagiaire; - /** @var string */ - public $coursAppel; - /** @var string */ - public $coursAppel2; - /** @var string */ - public $tribunal; - /** @var string */ - public $Statut; - /** @var string */ - public $adresse; - /** @var string */ - public $adresseComp; - /** @var string */ - public $cp; - /** @var string */ - public $ville; - /** @var string */ - public $tel; - /** @var string */ - public $fax; - /** @var string */ - public $email; - /** @var string */ - public $web; - /** @var string */ - public $contact; -} - -class SetMandataireReturn -{ - /** @var ErrorType */ - public $error; - /** @var boolean */ - public $result; -} - -class SetInfosEntrepIdentite -{ - /** @var string */ - public $isin; - /** @var string */ - public $tel; - /** @var string */ - public $fax; - /** @var string */ - public $web; - /** @var string */ - public $mail; - /** @var string */ - public $activite; - /** @var string */ - public $sirenDoublon; - /** @var string */ - public $waldec; - /** @var string */ - public $moisOppositionInsee; - /** @var string */ - public $moisRefusRCS; - /** @var string */ - public $domiciliataire; -} - -class SetInfosEntrepLien -{ - /** @var string */ - public $siren; - /** @var double */ - public $pct; - /** @var string */ - public $majMin; - /** @var string */ - public $dateMAJ; - /** @var string */ - public $pays; - /** @var string */ - public $nom; -} - -class SetInfosEntrepScore -{ - /** @var mixed */ - public $encours; - /** @var mixed */ - public $scoreSolv; - /** @var mixed */ - public $scoreDir; - /** @var mixed */ - public $scoreConf; -} - -class SetInfosEntrepEven -{ - /** @var string */ - public $code; -} - -class SetInfosEntrepJugement -{ - /** @var string */ - public $source; - /** @var string */ - public $dateJuge; - /** @var string */ - public $tribunal; - /** @var SetInfosEntrepEven[] */ - public $even; - /** @var string */ - public $admin; - /** @var string */ - public $mand; - /** @var string */ - public $oppo; - /** @var string */ - public $dateParution; - /** @var string */ - public $numParution; - /** @var string */ - public $montant; - /** @var string */ - public $actionsMt; - /** @var string */ - public $actionsNb; - /** @var string */ - public $nic; - /** @var string */ - public $datePaie; - /** @var string */ - public $dateFinPeriode; - /** @var string */ - public $comp; - /** @var string */ - public $nouvAdrCp; - /** @var string */ - public $nouvAdr; - /** @var string */ - public $nouvAdrVille; - /** @var string */ - public $nouvActivite; - /** @var string */ - public $nouvFJ; - /** @var SetInfosEntrepDir[] */ - public $nouvDir; -} - -class SetInfosEntrepDir -{ - /** @var string */ - public $Fonc; - /** @var string */ - public $Genre; - /** @var string */ - public $Pre; - /** @var string */ - public $Nom; - /** @var string */ - public $Dom; -} - -class SetInfosEntrepInfos -{ - /** @var SetInfosEntrepIdentite */ - public $identite; - /** @var SetInfosEntrepJugement */ - public $jugement; - /** @var SetInfosEntrepLien */ - public $actionnaire; - /** @var SetInfosEntrepLien */ - public $participation; - /** @var SetInfosEntrepScore */ - public $score; -} - -class SetInfosEntrepReturn -{ - /** @var ErrorType */ - public $error; - /** @var boolean */ - public $result; -} - -class SearchMandatairesReturn -{ - /** @var ErrorType */ - public $error; - /** @var SearchMandataire[] */ - public $result; -} - -class SearchMandataire -{ - /** @var string */ - public $id; - /** @var string */ - public $mand; -} - -class MandataireReturn -{ - /** @var ErrorType */ - public $error; - /** @var MandataireDetail */ - public $result; -} - -class MandataireDetail -{ - /** @var string */ - public $Nom; - /** @var string */ - public $Prenom; - /** @var string */ - public $tribunal; - /** @var string */ - public $adresse; - /** @var string */ - public $adresseComp; - /** @var string */ - public $ville; - /** @var string */ - public $email; - /** @var string */ - public $web; - /** @var string */ - public $contact; -} - -class ListeJalCollecteReturn -{ - /** @var ErrorType */ - public $error; - /** @var JalCollecte[] */ - public $result; -} - -class JalCollecte -{ - /** @var string */ - public $id; - /** @var string */ - public $nom; -} - -class GeoCodeReturn -{ - /** @var ErrorType */ - public $error; - /** @var GeoCode */ - public $result; -} - -class GeoCode -{ - /** @var string */ - public $latitude; - /** @var string */ - public $longitude; - /** @var string */ - public $precis; - /** @var string */ - public $adresseValidee; - /** @var string */ - public $latitudeDeg; - /** @var string */ - public $longitudeDeg; -} - -class CmdEnqueteRIB -{ - /** @var string */ - public $banque; - /** @var string */ - public $guichet; - /** @var string */ - public $compte; - /** @var string */ - public $cle; -} - - -class InfosCmdEnquete -{ - /** @var string */ - public $siren; - /** @var string */ - public $Nom; - /** @var string */ - public $Adresse; - /** @var string */ - public $CP; - /** @var string */ - public $Ville; - /** @var string */ - public $Tel; - /** @var string */ - public $Fax; - /** @var string */ - public $Mail; - /** @var string */ - public $AutreTel; - /** @var string */ - public $AutreMail; - /** @var string */ - public $Web; - /** @var CmdEnqueteRIB */ - public $RIB; - /** @var string */ - public $Encours; - /** @var string */ - public $NbEcheances; - /** @var string */ - public $AvisAssureur; - /** @var string */ - public $Type; - /** @var string */ - public $Delai; - /** @var string */ - public $PrecisionsType; - /** @var string */ - public $PrecisionsMontantCA; - /** @var string */ - public $PrecisionsMotif; - /** @var string */ - public $PrecisionsAutre; - /** @var string */ - public $Anciennete; - /** @var string */ - public $AncienneteDuree; - /** @var string */ - public $ImpayeesChoix; - /** @var string */ - public $ImpayeesMontant; - /** @var string */ - public $ImpayeesNombre; - /** @var string */ - public $ImpayeesDate; - /** @var string */ - public $RetardPaiementChoix; - /** @var string */ - public $RetardPaiementMontant; - /** @var string */ - public $RetardPaiementNombre; - /** @var string */ - public $RetardPaiementDate; - /** @var string */ - public $LitigeChoix; - /** @var string */ - public $LitigePrecisions; - /** @var string */ - public $Observation; -} - -class CmdEnqueteReturn -{ - /** @var ErrorType */ - public $error; - /** @var CmdEnquete */ - public $result; -} - -class CmdEnquete -{ - /** @var string */ - public $siren; - /** @var string */ - public $emailCommande; - /** @var string */ - public $dateCommande; - /** @var string */ - public $refCmde; -} - -class LogsClientsReturn -{ - /** @var ErrorType */ - public $error; - /** @var LogsClients */ - public $result; -} - -class LogsClients -{ - /** @var string */ - public $Url; - /** @var string */ - public $Taille; - /** @var int */ - public $Cache; -} - -class ListeSurveillancesCsvReturn -{ - /** @var ErrorType */ - public $error; - /** @var ListeSurveillancesCsv */ - public $result; -} - -class ListeSurveillancesCsv -{ - /** @var string */ - public $Url; - /** @var string */ - public $Taille; - /** @var int */ - public $Cache; -} - -class RechercheHistoReturn -{ - /** @var RechercheHistoCriteres */ - public $criteres; - /** @var int */ - public $nbReponses; - /** @var int */ - public $nbReponsesTotal; - /** @var int */ - public $duree; - /** @var string[] */ - public $mots; - /** @var RechercheHistoReponses[] */ - public $reponses; -} - -class RechercheHistoCriteres -{ - /** @var string */ - public $recherche; - /** @var string */ - public $annee; -} - -class RechercheHistoReponses -{ - /** @var int */ - public $id; - /** @var string */ - public $Pertinence; - /** @var string */ - public $Fichier; - /** @var string */ - public $Annee; - /** @var string */ - public $Code; - /** @var string */ - public $Texte; -} - -class ListeFichierSurvReturn -{ - /** @var ErrorType */ - public $error; - /** @var ListeFichierSurv[] */ - public $result; -} - -class ListeFichierSurv -{ - /** @var string */ - public $UrlFichier; -} - -class MarquesReturn -{ - /** @var ErrorType */ - public $error; - /** @var Marque[] */ - public $result; -} - -class Marque -{ - /** @var string */ - public $Marques; - /** @var string */ - public $Date; - /** @var string */ - public $Depot; - /** @var string */ - public $IdLien; - /** @var string */ - public $UrlLien; - /** @var string */ - public $PdfDispo; - /** @var string */ - public $Classes; - /** @var string */ - public $Perimetre; - /** @var string */ - public $DateExpir; -} - -class PortefeuilleReturn -{ - /** @var ErrorType */ - public $error; - /** @var Portefeuille[] */ - public $result; - /** @var int */ - public $nbReponses; - /** @var int */ - public $nbReponsesTotal; -} - -class Portefeuille -{ - /** @var string */ - public $email; - /** @var string */ - public $siren; - /** @var string */ - public $nic; - /** @var string */ - public $ref; - /** @var string */ - public $dateAjout; - /** @var string */ - public $rs; - /** @var string */ - public $cp; - /** @var string */ - public $ville; - /** @var string */ - public $actif; - /** @var string */ - public $procol; - /** @var string */ - public $indiScore; - /** @var string */ - public $indiScore20; - /** @var string */ - public $indiScorePre; - /** @var string */ - public $indiScore20Pre; - /** @var string */ - public $encours; - /** @var string */ - public $encoursPre; - /** @var string */ - public $indiScoreDate; - /** @var string */ - public $indiScoreDatePre; - /** @var string */ - public $encoursClient; - /** @var string */ - public $dateBilan; - /** @var string */ - public $sourceModif; - /** @var string */ - public $dateDerEnvoi; -} - -class PortefeuilleFiltre -{ - /** @var string */ - public $tri = 'siren'; - /** @var string */ - public $siret = ''; - /** @var string */ - public $ref = ''; - /** @var string */ - public $rs = ''; - -} - -class ClientFiltre -{ - /** @var int */ - public $page = 0; -} - -class StatsUtilisateursReturn -{ - -} - -class TribunauxReturn -{ - /** @var Tribunal[] */ - public $result; -} - -class Tribunal -{ - /** Code du tribunal - * @var string - */ - public $code; - /** Nom du tribunal - * @var string - */ - public $nom; -} - -class MandatairesReturn -{ - /** @var Mandataire[] */ - public $result; -} - -class Mandataire -{ - /** Identifiant interne du mandataire - * @var string - */ - public $id; - /** Nom et coordonnées du mandataire - * @var string - */ - public $mand; -} - -class PrivilegesDetailReturn -{ - /** @var PrivilegesDetail[] */ - public $result; -} - -class PrivilegesDetail -{ - /** Numéro du débiteur - * @var string - */ - public $numDebiteur; - - /** Numéro du greffe - * @var string - */ - public $greffe; - - /** Libellé du greffe - * @var string - */ - public $greffeLib; - - /** Date de l'inscription - * @var string - */ - public $dateEven; - - /** Date de fraîcheur de l'information dans la base du greffe - * @var string - */ - public $dateFraiche; - - /** Date de mise à jour dans la base S&D - * @var string - */ - public $dateSD; - - /** Type de privilège : 03 ou 04 - * @var string - */ - public $insType; - - /** Libellé du privilège : Privilège(s) du Trésor ou Privilège(s) sécurité sociale, régimes complémentaires - * @var string - */ - public $insTypeLib; - - /** Numéro d'inscription du privilège au Greffe - * @var string - */ - public $insNum; - - /** Date d'inscription du privilège au Greffe - * @var string - */ - public $insDate; - - /** Date d'échéance du privilège au Greffe - * @var string - */ - public $insDateEch; - - /** Objet de l'inscription ou descriptif du privilège au Greffe - * @var string - */ - public $insObjet; - - /** Montant de l'inscription privilège - * @var double - */ - public $insMontant; - - /** Devise du privilège - * @var string - */ - public $insDev; - - /** Date de caducité ou de péremption du privilège - * @var string - */ - public $insDateFin; - - /** Date de radiation du privilège - * @var string - */ - public $radDate; - - /** Date de la dernière mention de radiation partielle - * @var string - */ - public $radMention; - - /** Libellé de Mention de radiation partielle la plus récente - * @var string - */ - public $radPartiel; - - /** Montant de la radiation partielle - * @var double - */ - public $radPartMt; - - /** Devise de la radiation partielle - * @var string - */ - public $radDev; - - /** Nom du prinicpal créancier - * @var string - */ - public $creNom; - - /** Adresse du créancier ligne 1 - * @var string - */ - public $creAdresse1; - - /** Adresse du créancier ligne 2 - * @var string - */ - public $creAdresse2; - - /** Adresse du créancier ligne 3 - * @var string - */ - public $creAdresse3; - - /** Code postal du créancier - * @var string - */ - public $creCP; - - /** Ville du créancier - * @var string - */ - public $creVille; - - /** Pays du créancier - * @var string - */ - public $crePays; - - /** Liste textuelle des autres créanciers (si nécessaire) - * @var string - */ - public $creAutres; -} - -class PrivilegesCumulReturn -{ - /** @var PrivilegesCumul[] */ - public $result; -} - -class PrivilegesCumul -{ - /** Nombre de privilèges pour ce type - * @var int - */ - public $nb; - - /** Type de privilège : 03 ou 04 - * @var string - */ - public $insType; - - /** Libellé du privilège : Privilège(s) du Trésor ou Privilège(s) sécurité sociale, régimes complémentaires - * @var string - */ - public $insTypeLib; - - /** Date de fraîcheur de l'information dans la base du greffe - * @var string - */ - public $dateFraiche; - - /** Date de la dernière inscription - * @var string - */ - public $dateDerInsc; - - /** Nom du dernier créancier - * @var string - */ - public $nomDerCre; - - /** Numéro du débiteur - * @var string - */ - public $numDebiteur; - - /** Libellé du greffe - * @var string - */ - public $greffeLib; - - /** Date de mise à jour dans la base S&D - * @var string - */ - public $dateMajSD; - - /** Montant cumulé pour ce type d'inscription - * @var double - */ - public $insCumul; -} - -class SearchActReturn -{ - /** @var int */ - public $nbReponses; - /** @var int */ - public $nbReponsesTotal; - /** @var EntrepriseActItem[] */ - public $result; -} - -class EntrepriseActItem -{ - /** - * Identifiant S&D dans le moteur de recherche - * @var int - */ - public $id; - - /** - * Scoring de pertinence de la recherche - * @var int - */ - public $Pertinence; - - /** - * Siret de l'établissement - * @var string - */ - public $Siret; - - /** - * Siren de l'entreprise - * @var string - */ - public $Siren; - - /** - * Nic de l'établissement - * @var string - */ - public $Nic; - - /** - * Etablissement siège ou secondaire - * @var bool - */ - public $Siege; - - /** - * Nom de l'entreprise - * @var string - */ - public $Nom; - - /** - * Complément de nom - * @var string - */ - public $Nom2; - - /** - * Sigle de l'entreprise - * @var string - */ - public $Sigle; - - /** - * Enseigne de l'établissement - * @var string - */ - public $Enseigne; - - /** - * Adresse de l'établissement - * @var string - */ - public $Adresse; - - /** - * Complément d'adresse de l'établissement - * @var string - */ - public $Adresse2; - - /** - * Code postal - * @var string - */ - public $CP; - - /** - * Ville - * @var string - */ - public $Ville; - - /** Téléphone - * @var string - */ - public $Tel; - - /** - * Télécopie - * @var string - */ - public $Fax; - - /** - * Forme Juridique de l'entreprise - * @var string - */ - public $FJ; - - /** - * Libellé de la forme juridique - * @var string - */ - public $FJLib; - - /** - * Etablissement actif ou inactif - * @var bool - */ - public $Actif; - - /** - * Code NAF de l'établissement - * @var string - */ - public $NafEtab; - - /** - * Code NAF de l'entreprise - * @var string - */ - public $NafEnt; - - /** - * Libellé du NAF de l'entreprise - * @var string - */ - public $NafEntLib; - - /** - * Raison Sociale ou Nom de l'actionnaire - * @var string - */ - public $ActNomRs; - - /** - * Pays de l'actionnaire - * @var string - */ - public $ActPays; - - /** - * Date de l'actionnariat - * @var string - */ - public $ActDateLien; - - /** - * Actionnaire actif - * @var string - */ - public $ActActif; - - /** - * Participation minimum - * @var string - */ - public $ActPmin; - -} - -class CommandeEnqueteReturn -{ - /** @var string */ - public $siren; - - /** @var string */ - public $emailCommande; - - /** @var string */ - public $dateCommande; - - /** @var string */ - public $refCmde; -} - -class DirigeantOp -{ - /** Code fonction du dirigeant - * @var string - * @ref mysql:Liste des dirigeants S&D:tabDirigeants.sql - */ - public $Code; - - /** Titre de la fonction du dirigeant - * @var string - */ - public $Titre; - - /** Raison Sociale du dirigeant si Personne Morale (PM) - * @var string - */ - public $Societe; - - /** Civilité du dirigeant si Personne Physique (PP) - * @var string - */ - public $Civilite; - - /** Nom du dirigeant si PP ou si PM représentée par ... - * @var string - */ - public $Nom; - - /** Prénom du dirigeant si PP ou si PM représentée par ... - * @var string - */ - public $Prenom; - - /** - * Enter description here ... - * @var string - */ - public $NomUsage; - - /** Date de naissance du dirigeant si PP - * @var string - */ - public $NaissDate; - - /** Lieu de naissance du dirigeant si PP - * @var string - */ - public $NaissVille; - - /** Département ou Pays de naissance du dirigeant si PP - * @var string - */ - public $NaissDepPays; - - /** Ce dirigeant est un ancien dirigeant (1=ancien) - * @var string - */ - public $Ancien; - - /** Date du dernier changement - * @var string - */ - public $DateFct; -} - -class Depot -{ - /** @var string */ - public $CodeDepot; - - /** @var string */ - public $LibDepot; - - /** @var string */ - public $DateDepot; - - /** @var string */ - public $RefDepot; - - /** @var string */ - public $DateRncs; - - /** @var string */ - public $DateMAJ; -} - -class IdentiteLight -{ - /** @var int */ - public $id; - - /** @var string */ - public $Siret; - - /** @var int */ - public $Siege; - - /** @var string */ - public $Nom; - - /** @var string */ - public $Tribunal; - - /** @var string */ - public $Sigle; - - /** @var string */ - public $Enseigne; - - /** @var string */ - public $Adresse; - - /** @var string */ - public $Adresse2; - - /** @var string */ - public $AdresseNum; - - /** @var string */ - public $AdresseBtq; - - /** @var string */ - public $AdresseVoie; - - /** @var string */ - public $AdresseRue; - - /** @var string */ - public $CP; - - /** @var string */ - public $Ville; - - /** @var string */ - public $Tel; - - /** @var string */ - public $Fax; - - /** @var string */ - public $FJ; - - /** @var string */ - public $FJ_Lib; - - /** @var string */ - public $Siren; - - /** @var string */ - public $Nic; - - /** @var int */ - public $Actif; - - /** @var string */ - public $NafEtab; - - /** @var string */ - public $NafEnt; - - /** @var string */ - public $NafEntLib; - - /** @var string */ - public $NafEtabLib; - - /** @var string */ - public $AutreId; - - /** @var string */ - public $Source; - - /** @var int */ - public $SourceId; - - /** @var string */ - public $Dept; - - /** @var string */ - public $codeCommune; - - /** @var string */ - public $Capital; - - /** @var string */ - public $CapitalDev; - - /** @var string */ - public $TrancheCA; - - /** @var string */ - public $TrancheCALib; - - /** @var string */ - public $EffEnTr; - - /** @var string */ - public $EffEnTrLib; - - /** @var string */ - public $EffEtTr; - - /** @var string */ - public $EffEtTrLib; -} - diff --git a/library/WsScore/Interne/v0.4/Changelog b/library/WsScore/Interne/v0.4/Changelog deleted file mode 100644 index f2440cf8..00000000 --- a/library/WsScore/Interne/v0.4/Changelog +++ /dev/null @@ -1,2 +0,0 @@ -- Arborescence des groupes -- Informations sur les groupes diff --git a/library/WsScore/Interne/v0.4/Config.php b/library/WsScore/Interne/v0.4/Config.php deleted file mode 100644 index 0d070158..00000000 --- a/library/WsScore/Interne/v0.4/Config.php +++ /dev/null @@ -1,93 +0,0 @@ - 'ErrorType', - 'RefCommande' => 'RefCommande', - 'InfosDemandeur' => 'InfosDemandeur', - 'ListeCmdPiecesReturn' => 'ListeCmdPiecesReturn', - 'CmdPiecesReturn' => 'CmdPiecesReturn', - 'CmdPiecesDetail' => 'CmdPiecesDetail', - 'InfoCommandePieces' => 'InfoCommandePieces', - 'ListeCmdBilanReturn' => 'ListeCmdBilanReturn', - 'CmdBilanReturn' => 'CmdBilanReturn', - 'CmdBilanDetail' => 'CmdBilanDetail', - 'InfoCommandeBilan' => 'InfoCommandeBilan', - 'ListeCmdActeReturn' => 'ListeCmdActeReturn', - 'CmdActeReturn' => 'CmdActeReturn', - 'CmdActeDetail' => 'CmdActeDetail', - 'InfoCommandeActe' => 'InfoCommandeActe', - 'ListeCmdKbisReturn' => 'ListeCmdKbisReturn', - 'CmdKbisReturn' => 'CmdKbisReturn', - 'CmdKbisDetail' => 'CmdKbisDetail', - 'InfoCommandeKbis' => 'InfoCommandeKbis', - 'ListeCmdAssoReturn' => 'ListeCmdAssoReturn', - 'CmdAssoReturn' => 'CmdAssoReturn', - 'CmdAssoDetail' => 'CmdAssoDetail', - 'InfoCmdAsso' => 'InfoCmdAsso', - 'CommandeReturnType' => 'CommandeReturnType', - 'CmdFiltrePieces' => 'CmdFiltrePieces', - 'CmdStatut' => 'CmdStatut', - 'ListeConventionsReturn' => 'ListeConventionsReturn', - 'Convention' => 'Convention', - 'AnnonceCollecteReturn' => 'AnnonceCollecteReturn', - 'AnnonceCollecte' => 'AnnonceCollecte', - 'AnnonceEvenement' => 'AnnonceEvenement', - 'DevisesReturn' => 'DevisesReturn', - 'Devise' => 'Devise', - 'DevisesCoursReturn' => 'DevisesCoursReturn', - 'DevisesCours' => 'DevisesCours', - 'PieceReturn' => 'PieceReturn', - 'PieceResult' => 'PieceResult', - 'SetInfosMandataire' => 'SetInfosMandataire', - 'SetMandataireReturn' => 'SetMandataireReturn', - 'SetInfosEntrepIdentite' => 'SetInfosEntrepIdentite', - 'SetInfosEntrepLien' => 'SetInfosEntrepLien', - 'SetInfosEntrepScore' => 'SetInfosEntrepScore', - 'SetInfosEntrepEven' => 'SetInfosEntrepEven', - 'SetInfosEntrepJugement' => 'SetInfosEntrepJugement', - 'SetInfosEntrepDir' => 'SetInfosEntrepDir', - 'SetInfosEntrepInfos' => 'SetInfosEntrepInfos', - 'SetInfosEntrepReturn' => 'SetInfosEntrepReturn', - 'MandatairesReturn' => 'MandatairesReturn', - 'Mandataire' => 'Mandataire', - 'MandataireReturn' => 'MandataireReturn', - 'MandataireDetail' => 'MandataireDetail', - 'ListeJalCollecteReturn' => 'ListeJalCollecteReturn', - 'JalCollecte' => 'JalCollecte', - 'GeoCodeReturn' => 'GeoCodeReturn', - 'GeoCode' => 'GeoCode', - 'InfosCmdEnquete' => 'InfosCmdEnquete', - 'CmdEnqueteReturn' => 'CmdEnqueteReturn', - 'CmdEnquete' => 'CmdEnquete', - 'CmdEnqueteRIB' => 'CmdEnqueteRIB', - 'LogsClientsReturn' => 'LogsClientsReturn', - 'LogsClients' => 'LogsClients', - 'ListeSurveillancesCsvReturn' => 'ListeSurveillancesCsvReturn', - 'ListeSurveillancesCsv' => 'ListeSurveillancesCsv', - 'RechercheHistoReturn' => 'RechercheHistoReturn', - 'RechercheHistoCriteres' => 'RechercheHistoCriteres', - 'RechercheHistoReponses' => 'RechercheHistoReponses', - 'ListeFichierSurvReturn' => 'ListeFichierSurvReturn', - 'ListeFichierSurv' => 'ListeFichierSurv', - 'MarquesReturn' => 'MarquesReturn', - 'Marque' => 'Marque', - 'PortefeuilleReturn' => 'PortefeuilleReturn', - 'Portefeuille' => 'Portefeuille', - 'PortefeuilleFiltre' => 'PortefeuilleFiltre', - 'StatsUtilisateursReturn' => 'StatsUtilisateursReturn', - 'TribunauxReturn' => 'TribunauxReturn', - 'Tribunal' => 'Tribunal', - 'SearchMandatairesReturn' => 'SearchMandatairesReturn', - 'SearchMandataire' => 'SearchMandataire', - 'PrivilegesCumulReturn' => 'PrivilegesCumulReturn', - 'PrivilegesCumul' => 'PrivilegesCumul', - 'PrivilegesDetailReturn' => 'PrivilegesDetailReturn', - 'PrivilegesDetail' => 'PrivilegesDetail', - 'SearchActReturn' => 'SearchActReturn', - 'EntrepriseActItem' => 'EntrepriseActItem', - 'CommandeEnqueteReturn' => 'CommandeEnqueteReturn', - 'DirigeantOp' => 'DirigeantOp', - 'Depot' => 'Depot', - 'IdentiteLight' => 'IdentiteLight', - 'GroupeInfos' => 'GroupeInfos', - 'GroupeInfosSecteur' => 'GroupeInfosSecteur', -); \ No newline at end of file diff --git a/library/WsScore/Interne/v0.4/Interne.php b/library/WsScore/Interne/v0.4/Interne.php deleted file mode 100644 index b983e12c..00000000 --- a/library/WsScore/Interne/v0.4/Interne.php +++ /dev/null @@ -1,3537 +0,0 @@ -authenticate(); - //Initialisation - if (empty($tabTypes)) $tabTypes = array('03','04'); - debugLog('I',"Liste des privilèges detail sur $siren ".print_r($tabTypes, true),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iPriv = new MPrivileges(); - $ret = $iPriv->getPrivilegesDetail($siren, $tabTypes); //@todo : date - - $tabRet = array(); - if (count($ret)>0) { - foreach ($ret as $item ) { - $privileges = new PrivilegesDetail(); - $privileges->numDebiteur = $item['numDebiteur']; - $privileges->greffe = $item['greffe']; - $privileges->greffeLib = $item['greffeLib']; - $privileges->dateEven = $item['dateEven']; - $privileges->dateFraiche = $item['dateFraiche']; - $privileges->dateSD = $item['dateSD']; - $privileges->insType = $item['insType']; - $privileges->insTypeLib = $item['insTypeLib']; - $privileges->insNum = $item['insNum']; - $privileges->insDate = $item['insDate']; - $privileges->insDateEch = $item['insDateEch']; - $privileges->insObjet = $item['insObjet']; - $privileges->insMontant = $item['insMontant']; - $privileges->insDev = $item['insDev']; - $privileges->insDateFin = $item['insDateFin']; - $privileges->radDate = $item['radDate']; - $privileges->radMention = $item['radMention']; - $privileges->radPartiel = $item['radPartiel']; - $privileges->radPartMt = $item['radPartMt']; - $privileges->radDev = $item['radDev']; - $privileges->creNom = $item['creNom']; - $privileges->creAdresse1 = $item['creAdresse1']; - $privileges->creAdresse2 = $item['creAdresse2']; - $privileges->creAdresse3 = $item['creAdresse3']; - $privileges->creCP = $item['creCP']; - $privileges->creVille = $item['creVille']; - $privileges->crePays = $item['crePays']; - $privileges->creAutres = $item['creAutres']; - $tabRet[] = $privileges; - } - } - $this->wsLog('privdetail', $siren, join(',',$tabTypes)); - $output = new PrivilegesDetailReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne les privilèges cumulés - * @param string $siren - * @param array $tabTypes - * @return PrivilegesCumulReturn - */ - public function getPrivilegesCumul($siren, $tabTypes=array('03','04')) - { - $this->authenticate(); - //Initialisation - if (empty($tabTypes)) $tabTypes = array('03','04'); - debugLog('I',"Liste des privilèges cumul sur $siren ".print_r($tabTypes, true),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iPriv = new MPrivileges(); - $ret = $iPriv->getPrivilegesCumul($siren, $tabTypes); - $tabRet = array(); - - if (isset($ret['03']) && count($ret['03']>0)){ - $value = $ret['03']; - $priv = new PrivilegesCumul(); - $priv->insType = '03'; - $priv->nb = $value['nb']; - $priv->insTypeLib = $value['insTypeLib']; - $priv->dateFraiche = $value['dateFraiche']; //@todo : date - $priv->dateDerInsc = $value['dateDerInsc']; //@todo : date - $priv->nomDerCre = $value['nomDerCre']; - $priv->numDebiteur = $value['numDebiteur']; - $priv->greffeLib = $value['greffeLib']; - $priv->dateMajSD = $value['dateMajSD']; //@todo : date - $priv->insCumul = $value['insCumul']; - $tabRet[] = $priv; - } - - if (isset($ret['04']) && count($ret['04']>0)){ - $value = $ret['04']; - $priv = new PrivilegesCumul(); - $priv->insType = '04'; - $priv->nb = $value['nb']; - $priv->insTypeLib = $value['insTypeLib']; - $priv->dateFraiche = $value['dateFraiche']; //@todo : date - $priv->dateDerInsc = $value['dateDerInsc']; //@todo : date - $priv->nomDerCre = $value['nomDerCre']; - $priv->numDebiteur = $value['numDebiteur']; - $priv->greffeLib = $value['greffeLib']; - $priv->dateMajSD = $value['dateMajSD']; //@todo : date - $priv->insCumul = $value['insCumul']; - $tabRet[] = $priv; - } - $this->wsLog('privcumul', $siren, print_r($tabTypes,1)); - $output = new PrivilegesCumulReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Liste les mandataires correspondant à un nom donné - * @param mixed $codeTribunal Identifiants BODACC du tribunal ou tableau d'Identifiants numériques des cours d'appel - * @param array $type Type de mandataire (A)dministrateur, (M)andataire, (O)ppositions, (N)otaires, a(V)ocat - * @param int $cpDep Code postal ou département du mandataire - * @return SearchMandatairesReturn - */ - public function searchMandataires($nom, $type=array('A','M'), $cpDep=0) - { - $this->authenticate(); - - //Initialisation - if (empty($type)) $type = array('A','M'); - if (empty($cpDep)) $cpDep = 0; - $tabRet = array(); - - debugLog('I',"Recherche de Mandataires '$nom' (Dep=$cpDep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $iInsee = new MInsee(); - $tabTmp = $iInsee->searchMandataires($nom, true, $type, $cpDep); - - foreach ($tabTmp as $i=>$mand) - { - $mandataire = new SearchMandataire(); - $mandataire->id = 'm'.$i; - $mandataire->mand = utf8_encode($mand); - $tabRet[] = $mandataire; - - } - $output = new SearchMandatairesReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des tribunaux ou Compétences demandées - * @param array|string $tabTypes Tableau des types de Compétences demandés 'C':Commerce, 'I':Instance, 'G':TGI, 'A':Préfectures, 'B':Sous-préf, 'D':Tribunal Administratif, 'H':Prud'hommes, 'L': Cour d'Appel, 'M': Tribunal Mixte, 'O':CCI, 'V': Cour Administrative d'Appel - * @return TribunauxReturn - **/ - public function getTribunaux($tabTypes) - { - $this->authenticate(); - - //Initialisation - if (empty($tabTypes)) $tabTypes = array(); - if (is_string($tabTypes)) $tabTypes = (array)$tabTypes; - - $iBodacc = new MBodacc(); - debugLog('I',"Liste des tribunaux demandées",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabTmp = $iBodacc->getListeTribunaux(); - //@todo : Retourner liste en ordre alphabétique - $tabRet = array(); - if (count($tabTypes)==0) { - foreach ($tabTmp as $i => $tribunal){ - $tri = new Tribunal(); - $tri->code = $i; - $tri->nom = $tribunal['nom']; - $tabRet[] = $tri; - } - } else { - foreach ($tabTmp as $i=>$tribunal){ - $type = substr($i,-1); - if ( in_array($type, $tabTypes) ){ - $tri = new Tribunal(); - $tri->code = $i; - $tri->nom = $tribunal['nom']; - $tabRet[] = $tri; - } - } - } - $this->wsLog('tribunaux', '', print_r($tabTypes,1)); - $output = new TribunauxReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Enregistrement des informations saisie manuellement - * @param string $siret - * @param int $idEntreprise - * @param SetInfosEntrepInfos $tabInfos - * @return SetInfosEntrepReturn - */ - public function setInfosEntrep( $siret, $idEntreprise, $tabInfos ) - { - $this->authenticate(); - - //Initialisation - $tabRet = array(); - $iBodacc = new MBodacc(); - $iInsee = new MInsee(); - $result = false; - - if (!$this->checkEdition()) { - - $error->errnum = 1; - $error->errmsg = 'Code Client Incorrect'; - - } else { - - $siren = substr($siret,0,9); - $nic = substr($siret,9,5); - - $iDb = new WDB(); - - $tabIdentite = $tabInfos->identite; - $tabJugement = $tabInfos->jugement; - $tabActio = $tabInfos->actionnaire; - $tabParti = $tabInfos->participation; - $tabScores = $tabInfos->score; - - // Mise à jour de l'identité - if (trim(strtolower($tabIdentite->web))=='http://'){ - $web = ''; - } else { - $web = trim($tabIdentite->web); - } - $tabUpdate = array( - 'isin' => trim($tabIdentite->isin), - 'tel' => trim($tabIdentite->tel), - 'fax' => trim($tabIdentite->fax), - 'web' => $web, - 'mail' => trim($tabIdentite->mail), - 'activite' => stripslashes(trim($tabIdentite->activite)), - 'sirenDoublon' => substr(str_replace(' ','',strtr($tabIdentite->sirenDoublon, '"\'./- ,\*#()',' ')),0,9), - 'waldec' => trim(str_replace(' ','',strtr($tabIdentite->waldec, '"\'./- ,\*#()',' '))), - ); - - /** @todo non traitées : [capital_mt] => 335400, [capital_dev] => EUR **/ - if ( !$iDb->update('infos_entrep', $tabUpdate, "siren='$siren'") ){ - if (!$iDb->insert('infos_entrep', array_merge(array('siren'=>$siren),$tabUpdate))){ - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - $output = new SetInfosEntrepReturn(); - $output->error = $error; - $output->result = $result; - return $output; - exit; - } - } - // Fin mise à jour identité - - // Opposition INSEE - if ( $tabIdentite->moisOppositionInsee>0 && - $tabIdentite->moisOppositionInsee<=(date('Ym')*1) ){ - - $iDb2 = new WDB('insee'); - if ( !$iDb2->insert('insee_nondiff', array('siren'=>$siren, 'insEVE'=>795, 'mois'=>$tabIdentite->moisOppositionInsee)) ){ - if ( $iDb2->getLastErrorNum()<>1062 ) - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de l'inscription à la liste des oppositions de la sphère commerciale INSEE pour $siren au mois de ".$tabIdentite['moisOppositionInsee']." : ".EOL.print_r($tabIdentite, true).EOL.$iDb2->getLastError()); - } - - } - // Fin opposition INSEE - - // Refus d'inscription au RCS - if (isset($tabIdentite->moisRefusRCS) && $tabIdentite->moisRefusRCS>0 - && $tabIdentite->moisRefusRCS<=(date('Ym')*1)) { - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteLight($siren); - if ($nic<10) $nic=$entrep['Nic']; - $cj1=substr($entrep['FJ'],0,1); - $iDb2 = new WDB('insee'); - /** Insertion dans la tables des exclusions **/ - $tabInsert = array( - 'siren' => $siren, - 'nic' => $nic, - 'idSaisie' => $this->tabInfoUser['id'], - 'cj1' => $cj1, - 'insEVE' => 'RCS', - 'mois' => $tabIdentite->moisRefusRCS, - ); - if (!$iDb2->insert('insee_nondiff', $tabInsert)) - if ($iDb2->getLastErrorNum()<>1062) - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de l'inscription à la liste des refus d'enregistrement A au RCS pour $siren au mois de ".$tabIdentite->moisRefusRCS." : ".EOL.print_r($tabInsert, true).EOL.print_r($tabIdentite, true).EOL.$iDb2->getLastError()); - - /** Insertion dans la tables des évènements **/ - $tabInsert = array( - 'insSIREN' => $siren, - 'siretValide' => $iInsee->valideSiren($siren,$nic), - 'insNIC' => $nic, - 'insEVE' => 'RCS', - 'insDATEVE' => $tabIdentite->moisRefusRCS.'28', - 'insDATEMAJ' => date('YmdHis'), - 'idFlux' => date('Ymd')); - if (!$iDb2->insert('insee_even', $tabInsert)) - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de l'inscription à la liste des refus d'enregistrement B au RCS pour $siren au mois de ".$tabIdentite['moisOppositionInsee']." : ".EOL.print_r($tabInsert, true).EOL.print_r($tabIdentite, true).EOL.$iDb2->getLastError()); - - } - // Fin refus d'inscription au RCS - - // Domiciliataire - if (!empty($tabIdentite->domiciliataire) && $siren>1000) { - if ($tabIdentite->domiciliataire=='oui' || $tabIdentite->domiciliataire=='non') { - // L'entreprise et ces établissements seront mis à jour automatiquement ce soir - $iDb->query("INSERT IGNORE INTO jo.tabAdrDom (siren,nic,siege, etActif, nom, sigle, enseigne, adrNum, adrBtq, adrTypVoie, adrLibVoie, ville, cp, depComEt, adrComp, cj, apen,apet, dateInsert) - SELECT siren, nic, siege, actif AS etActif, raisonSociale AS nom, sigle, enseigne, adr_num as adrNum, adr_btq AS adrBtq, adr_typeVoie AS adrTypVoie, adr_libVoie AS adrLibVoie, adr_ville AS ville, adr_cp AS cp, CONCAT(adr_dep,adr_com) AS depComEt, adr_comp AS adrComp, cj, ape_entrep AS apen, ape_etab AS apet, DATE(NOW()) as dateInsert - FROM jo.etablissements WHERE siren=$siren;", false); - } - // Si demande de suppression, on force l'indicateur "" - if ($tabIdentite->domiciliataire=='non') { - $tabUpdate=array('pasEntrepDom'=>1); - if (!$iDb->update('tabAdrDom', $tabUpdate, "siren=$siren")) - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de la suppression du marqueur de domiciliation pour $siren :".EOL.print_r($tabUpdate, true).EOL.$iDb->getLastError()); - } - } - // Fin domiciliataire - - - // Insertion des scores - $tabUpdate = array(); - $setScore = false; - if ( $tabScores->encours!='' || $tabScores->encours!=null ){ - $tabUpdate['encours'] = $tabScores->encours; - $setScore = true; - } - if ( $tabScores->scoreSolv!='' ){ - $tabUpdate['scoreSolv'] = $tabScores->scoreSolv; - $setScore = true; - } - if ( $tabScores->scoreDir!='' ){ - $tabUpdate['scoreDir'] = $tabScores->scoreDir; - $setScore = true; - } - if ( $tabScores->scoreConf!='' ){ - $tabUpdate['scoreConf'] = $tabScores->scoreConf; - $setScore = true; - } - if ( $setScore ){ - // Mise à jour des Cute Offs - if ( !$iDb->update('scores_cutoff', $tabUpdate, "siren=$siren") ){ - if ( !$iDb->insert('scores_cutoff', array_merge(array( - 'siren' => $siren, - 'dateInsert' => date('Ymd') - ), $tabUpdate)) ){ - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", print_r($tabScores, true).EOL.$iDb->getLastError()); - } - } - } - // Fin insertion des scores - - // Insertion du jugement - $tabEven = array(); - if (is_array($tabJugement->even->item) && count($tabJugement->even->item)>0){ - foreach($tabJugement->even->item as $even){ - $tabEven[] = $even->code; - } - } elseif (!empty($tabJugement->even->item->code)) { - $tabEven[] = $tabJugement->even->item->code; - } - $nic = $tabJugement->nic*1; - $entrep = $iInsee->getIdentiteLight($siren, $nic); - if ( $nic>0 && $tabEven[0]->code==6700 && $entrep['Siege']==0 ){ - // Radiation d'un établissement - $tabEven[0]->code = 6600; - } - - if ( count($tabEven)>0 ) - { - $idAdmin = str_replace('m','',trim($tabJugement->admin)); - $idMand = str_replace('m','',trim($tabJugement->mand)); - $idOppo = str_replace('m','',trim($tabJugement->oppo)); - - /** Nom et Identifiant de l'opérateur de saisie **/ - $iDbCrm = new WDB('sdv1'); - $rep=$iDbCrm->select('utilisateurs', 'id', "login='".$this->tabInfoUser['login']."'"); - $idUser=$rep[0][0]; - - $tabSource=explode('_',$tabJugement->source); - $source=@$tabSource[0]; - $numJal=@$tabSource[1]; - - $dateSource=WDate::dateT('d/m/Y', 'Ymd', trim($tabJugement->dateParution))*1; - if ($dateSource<20000101) - $dateSource=date('YmdHis'); - - $montant=trim(preg_replace('/[^0-9]/', '', $tabJugement->montant))*1; - $actionsMt=trim(preg_replace('/[^0-9]/', '', $tabJugement->actionsMt))*1; - $actionsNb=trim(preg_replace('/[^0-9]/', '', $tabJugement->actionsNb))*1; - if ($montant>0 && ($actionsNb>0 || $actionsMt>0)) { - if ($actionsNb>0) $actionsMt=$montant/$actionsNb; - elseif ($actionsMt>0) $actionsNb=$montant/$actionsMt; - } - - //@todo : ça ne va pas marcher ici - $strDir=''; - $tabNouvDir = array(); - if ( is_array($tabJugement->nouvDir->item) && count($tabJugement->nouvDir->item)>0 ){ - $tabNouvDir = $tabJugement->nouvDir->item; - } else { - $tabNouvDir[] = $tabJugement->nouvDir; - } - - if (count($tabNouvDir)>0) { - foreach( $tabNouvDir as $dir ){ - if ( intval($dir->Fonc)>0 ){ - $strDir.= $iBodacc->getFctDir($dir->Fonc).' : '. - $dir->Genre.' '. - ucwords(strtolower($dir->Pre)).' '. - strtoupper($dir->Nom); - if (!empty($dir->Dom)) { - $strDir.= ', domicilié à '.$dir->Dom.'. '; - } - } - } - } - - if ( trim($tabJugement->nouvAdrCp)<>'' ){ - $strAdr = stripslashes(trim($tabJugement->nouvAdr).', '. - trim($tabJugement->nouvAdrCp).' '. - trim($tabJugement->nouvAdrVille)); - } else { - $strAdr=''; - } - - if (count($tabEven)>1){ - $strEven = implode(';',array_slice($tabEven, 1)); - } else { - $strEven = ''; - } - - $tabUpdate = array( - 'strEven' => $strEven, - 'sirenValide' => $iInsee->valideSiren($siren), - 'dateCessationPaiement' => empty($tabJugement->datePaie) ? '' : - WDate::dateT('d/m/Y', 'Y-m-d', trim($tabJugement->datePaie)), - 'dateEffetFinP' => empty($tabJugement->dateFinPeriode) ? '' : - WDate::dateT('d/m/Y', 'Y-m-d', trim($tabJugement->dateFinPeriode)), - 'tribunal' => trim($tabJugement->tribunal), - 'montant' => $montant, - 'actionsNb' => $actionsNb, - 'inter1type' => 'A', - 'inter1id' => $idAdmin, - 'inter1nom' => $iInsee->getMandatairesParId($idAdmin), - 'inter2type' => 'M', - 'inter2id' => $idMand, - 'inter2nom' => $iInsee->getMandatairesParId($idMand), - 'inter3type' => 'O', - 'inter3id' => $idOppo, - 'inter3nom' => $iInsee->getMandatairesParId($idOppo), - 'complement' => stripslashes(trim($tabJugement->comp)), - 'nouvActivite' => stripslashes(trim($tabJugement->nouvActivite)), - 'nouvDir' => stripslashes(trim($strDir)), - 'nouvAdr' => $strAdr, - 'nouvFJ' => trim($tabJugement->nouvFJ), - 'raisonSociale' => $entrep['Nom'], - 'adresse' => $entrep['Adresse'], - 'codePostal' => $entrep['CP'], - 'ville' => $entrep['Ville'], - 'source' => $source, - 'idSaisie' => $idUser, - 'parutionIdJal' => $numJal, - 'parutionNum' => $tabJugement->numParution, - ); - $dateJuge = WDate::dateT('d/m/Y','Y-m-d',trim($tabJugement->dateJuge)); - $tabInsert = array_merge( $tabUpdate, array( - 'siren' => $siren, - 'dateJugement' => $dateJuge, - 'typeEven' => $tabEven[0], - 'dateSource' => $dateSource, - )); - if ( !$iDb->insert('annonces', array_merge($tabInsert,array('dateInsert'=>date('YmdHis'))), true) ){ - if ( !$iDb->update('annonces', $tabUpdate, "siren=$siren AND dateJugement='$dateJuge' AND typeEven=".$tabEven[0], true)){ - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - $output = new SetInfosEntrepReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - } - } - //Fin insertion jugement - - // Insertion actionnaire - if ( trim($tabActio->siren)!='' ) - { - $nom = $pays = $dateMAJ = ''; - $ppPm = 'P'; - $pct = trim(str_replace(',','.',$tabActio->pct))*1; - $siren2 = preg_replace('/[^0-9]/','', $tabActio->siren); - $entrep2 = $iInsee->getIdentiteEntreprise($siren); - $nom2 = $entrep2['Nom']; - $pays2 = $entrep2['Pays']; - if ($pays2=='') $pays2='FRA'; - - if (substr($entrep2['FJ'],0,1)*1<>1) $ppPm='M'; - $entrep = $iInsee->getIdentiteEntreprise($siren2); - $nom = $entrep['Nom']; - $pays = trim($entrep['Pays']); - if ($pays=='') $pays='FRA'; - if (trim($tabActio->nom)!='') $nom = $tabActio->nom; - if ($tabActio->pays!='XXX') $pays = $tabActio->pays; - - if (trim($tabActio->dateMAJ)!='JJ/MM/AAAA' && trim($tabActio->dateMAJ)!=''){ - $dateMAJ = WDate::dateT('d/m/Y', 'Y-m-d', trim($tabActio->dateMAJ)); - } - - if ($tabActio->majMin=='maj') $majMin='+'; - elseif ($tabActio->majMin=='min') $majMin='-'; - else $majMin=''; - - $tabUpdate = array( - //'Siren1'=> $siren, - 'Pmin'=> $pct, - 'Pmax'=> $pct, - 'MajMin'=> $majMin, - 'PpPm'=> $ppPm, - //'Siren2'=> $siren2, - //'RaisonSociale'=> $nom, - //'Pays'=> $pays, - 'dateLien'=> $dateMAJ, - ); - - $tabInsert1 = array_merge($tabUpdate, array('ActionPart' => 1), - array( - 'Siren1'=> $siren, - 'Siren2'=> $siren2, - 'RaisonSociale'=> $nom, - 'Pays'=> $pays, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); Zend_Registry::get('WsLogger')->info('INSERTION ACTIONNAIRE : '.print_r($tabInsert1, 1)); - $res = $iDb->select('liens', 'count(*)', - "Siren1=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge( - $tabUpdate, array('ActionPart'=>1)), - "siren=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))", true)) - $errMaj=1016166; - } else { - if (!$iDb->insert('liens', $tabInsert1, true)) - $errMaj=1016167; - } - - $tabInsert2 = array_merge($tabUpdate, array('ActionPart' => 2), - array( 'Siren1' => $siren2, - 'Siren2'=> $siren, - 'RaisonSociale'=> $nom2, - 'Pays'=> $pays2, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); - $res=$iDb->select('liens', 'count(*)', "Siren1=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>2)), "siren=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))", true)) - $errMaj=1016168; - } else { - if (!$iDb->insert('liens', $tabInsert2, true)) - $errMaj=1016169; - } - } - // Fin insertion actionnaire - - //Insertion participation - if ( trim($tabParti->siren)<>'' ) { - $nom = $pays = $dateMAJ = ''; - $ppPm = 'P'; - $pct = trim(str_replace(',','.',$tabParti->pct))*1; - $siren2 = preg_replace('/[^0-9]/','', $tabParti->siren); - $entrep2 = $iInsee->getIdentiteEntreprise($siren); - $nom2 = $entrep2['Nom']; - $pays2 = $entrep2['Pays']; - if ($pays2=='') $pays2='FRA'; - - if (substr($entrep2['FJ'],0,1)*1<>1) $ppPm='M'; - $entrep = $iInsee->getIdentiteEntreprise($siren2); - $nom = $entrep['Nom']; - $pays = trim($entrep['Pays']); - if ( $pays=='' ) $pays='FRA'; - if ( trim($tabParti->nom)<>'' ) $nom=$tabParti->nom; - if ( $tabParti->pays<>'XXX' ) $pays=$tabParti->pays; - - if (trim($tabParti->dateMAJ)<>'JJ/MM/AAAA' && trim($tabParti->dateMAJ)<>'') - $dateMAJ=WDate::dateT('d/m/Y', 'Y-m-d', trim($tabParti->dateMAJ)); - - if ($tabParti->majMin=='maj') $majMin='+'; - elseif ($tabParti->majMin=='min') $majMin='-'; - else $majMin=''; - - $tabUpdate = array( - 'Pmin'=> $pct, - 'Pmax'=> $pct, - 'MajMin'=> $majMin, - 'PpPm'=> $ppPm, - 'dateLien'=> $dateMAJ, - ); - - $tabInsert1 = array_merge($tabUpdate, array( 'ActionPart' => 2 ), - array( 'Siren1'=> $siren, - 'Siren2'=> $siren2, - 'RaisonSociale'=> $nom, - 'Pays'=> $pays, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); - $res=$iDb->select('liens', 'count(*)', "Siren1=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>2)), "siren=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))", true)) - $errMaj=10168; - } else { - if (!$iDb->insert('liens', $tabInsert1, true)) - $errMaj=10169; - } - - $tabInsert2 = array_merge($tabUpdate, array( 'ActionPart' => 1 ), - array( 'Siren1'=> $siren2, - 'Siren2'=> $siren, - 'RaisonSociale'=> $nom2, - 'Pays'=> $pays2, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); - $res=$iDb->select('liens', 'count(*)', "Siren1=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>1)), "siren=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))", true)) - $errMaj=10170; - } else { - if (!$iDb->insert('liens', $tabInsert2, true)) - $errMaj=10171; - } - } - // Fin insertion participation - - if ($errMaj>0){ - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - } else { - $result = true; - } - } - $output = new SetInfosEntrepReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Commande de bilan - * @param InfoCommandeBilan $infoCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdBilanReturn - */ - public function setCmdBilan( InfoCommandeBilan $infoCommande, InfosDemandeur $infosDemandeur ) - { - - } - - /** - * Renvoi des informations sur une commande de bilan - * @param string $reference - * @return CmdBilanReturn - */ - public function getCmdBilan( $reference ) - { - - } - - /** - * Commande d'acte - * @param InfoCommandeActe $infoCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdActeReturn - */ - public function setCmdActe( $infoCommande, $infosDemandeur ) - { - - } - - /** - * Renvoi des informations sur une commande d'acte - * @param string $reference - * @return CmdActeReturn - */ - public function getCmdActe( $reference ){} - - /** - * Commande de kbis - * @param InfoCommandeKbis $infoCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdKbisReturn - */ - public function setCmdKbis( InfoCommandeKbis $infoCommande, InfosDemandeur $infosDemandeur ) - { - $this->authenticate(); - - $error = new ErrorType(); - $ref = new RefCommande(); - //Vérifier les informations - switch($infoCommande->mode) - { - case 'courrier': break; - case 'mail': break; - default: - exit; break; - } - if (empty($infoCommande->siren)) - { - $error->errnum = 0; - $error->errmsg = 'Erreur SIREN invalide'; - } - else - { - $login = $_SERVER['PHP_AUTH_USER']; - // Insertion des données commande - $dataCommandes = array( - 'user_login' => $login, - 'user_email' => $this->tabInfoUser['email'], - 'type' => 'kbis', - 'demandeurReference' => $infosDemandeur->reference, - 'demandeurEmail' => $infosDemandeur->email, - 'demandeurTel' => $infosDemandeur->tel, - 'demandeurNom' => $infosDemandeur->nom, - 'demandeurService' => $infosDemandeur->service, - 'demandeurSociete' => $infosDemandeur->societe, - 'demandeurAdresse' => $infosDemandeur->adresse, - 'demandeurCp' => $infosDemandeur->cp, - 'demandeurVille' => $infosDemandeur->ville, - 'infoCommande' => serialize($infoCommande) - ); - try { - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $commande = new Application_Model_Commandes(); - $commande_id = $commande->insert($dataCommandes); - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - if ($commande_id) - { - //Enregistrement des détails de commande - $dataCommandesKbis = array( - 'commande_id' => $commande_id, - 'siren' => $infoCommande->siren, - 'raisonSociale' => '', - 'fichier' => '', - 'partenaireRequete' => '', - 'partenaireReponse' => '', - ); - try { - $commandeKbisTable = new Application_Model_CommandesPieces(); - $commandeKbisTable->insert($dataCommandesKbis); - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - try { - $row = $commande->find($commande_id); - $data = $row->current(); - $ref->reference = $data->id; - $ref->dateCommande = $data->date_added; - $ref->dateMaj = $data->date_updated; - $ref->dateReception = $data->date_closed; - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - $error->errnum = 0; - $error->errmsg = "Commande Introuvable"; - } - } - else - { - $error->errnum = 0; - $error->errmsg = "Erreur enregistrement commande"; - } - } - $output = new CmdKbisReturn(); - $cmd = new CmdKbisDetail(); - $cmd->infoCommande = $infoCommande; - $cmd->infosDemandeur = $infosDemandeur; - $cmd->refCommande = $ref; - $output->commande = $cmd; - $output->error = $error; - return $output; - } - - /** - * Renvoi des informations sur une commande de Kbis - * @param string $reference - * @return CmdKbisReturn - */ - public function getCmdKbis( $reference ){} - - /** - * Commande de privilèges et nantissements par email - * @param InfoCommandePieces $infoCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdPiecesReturn - */ - public function setCmdPieces( $infoCommande, $infosDemandeur ) - { - $this->authenticate(); - $error = new ErrorType(); - $ref = new RefCommande(); - if (!empty($infoCommande->siren)){ - //Vérification SIREN - // Insertion des données commande - $dataCommandes = array( - 'user_login' => $this->tabInfoUser['login'], - 'user_email' => $this->tabInfoUser['email'], - 'type' => 'pieces', - 'demandeurReference' => $infosDemandeur->reference, - 'demandeurEmail' => $infosDemandeur->email, - 'demandeurTel' => $infosDemandeur->tel, - 'demandeurNom' => $infosDemandeur->nom, - 'demandeurService' => $infosDemandeur->service, - 'demandeurSociete' => $infosDemandeur->societe, - 'demandeurAdresse' => $infosDemandeur->adresse, - 'demandeurCp' => $infosDemandeur->cp, - 'demandeurVille' => $infosDemandeur->ville, - 'infoCommande' => serialize($infoCommande) - ); - try { - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $commande = new Application_Model_Commandes(); - $commande_id = $commande->insert($dataCommandes); - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - if ($commande_id){ - //Enregistrement des détails de commande - $dataCommandesPieces = array( - 'commande_id' => $commande_id, - 'siren' => $infoCommande->siren, - 'raisonSociale' => '', - 'fichier' => '', - ); - try { - $commandePieces = new Application_Model_CommandesPieces(); - $commandePieces->insert($dataCommandesPieces); - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - - try { - $row = $commande->find($commande_id); - $data = $row->current(); - $ref->reference = $data->id; - $ref->dateCommande = $data->date_added; - $ref->dateMaj = $data->date_updated; - $ref->dateReception = $data->date_closed; - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - $error->errnum = 0; - $error->errmsg = "Commande Introuvable"; - } - } else { - $error->errnum = 0; - $error->errmsg = "Erreur enregistrement commande"; - } - } else { - $error->errnum = 0; - $error->errmsg = 'Erreur SIREN invalide'; - } - $output = new CmdPiecesReturn(); - $cmd = new CmdPiecesDetail(); - $cmd->infoCommande = $infoCommande; - $cmd->infosDemandeur = $infosDemandeur; - $cmd->refCommande = $ref; - $output->error = $error; - return $output; - } - - /** - * Renvoi des informations sur une commande pièces - * @param string $reference - * @return CmdPiecesReturn - */ - public function getCmdPieces( $reference ) - { - list($typeCommande, $idCommande) = explode('-', $reference); - try { - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $commandeTable = new Application_Model_Commandes(); - $select = $commandeTable->select() - ->where('type = ?', 'pieces') - ->where('id = ?', $idCommande); - $commandeRowset = $commandeTable->fetchAll($select); - } - catch (Zend_Db_Adapter_Exception $e) - { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - $error = new ErrorType(); - $ref = new RefCommande(); - $infoCommande = new InfoCommandePieces(); - $infosDemandeur = new InfosDemandeur(); - if ( $commandeRowset->count()>0 ) - { - $commande = $commandeRowset->current(); - $selectEven = $commandeTable->select() - ->order('date_added DESC')->limit(1); - $evenRowset = $commande->findDependentRowset( - 'Application_Model_CommandesEven', null, $selectEven); - $info = ''; - if($evenRowset->count()>0){ - $even = $evenRowset->current(); - $info = $even->commentaire; - } - $ref->reference = strtoupper($commande->type).'-'.$commande->id; - $ref->dateCommande = $commande->date_added; - $ref->dateMaj = $commande->date_updated; - $ref->dateReception = $commande->date_closed; - $ref->info = $info; - $ref->fichier = ''; // @todo : Détecter le fichier - $ref->login = $commande->user_login; - $infoCommande = unserialize($commande->infoCommande); - $infosDemandeur->reference = $commande->demandeurReference; - $infosDemandeur->email = $commande->demandeurEmail; - $infosDemandeur->tel = $commande->demandeurTel; - $infosDemandeur->nom = $commande->demandeurNom; - $infosDemandeur->service = $commande->demandeurService; - $infosDemandeur->societe = $commande->demandeurSociete; - $infosDemandeur->adresse = $commande->demandeurAdresse; - $infosDemandeur->cp = $commande->demandeurCp; - $infosDemandeur->ville = $commande->demandeurVille; - } - else - { - $error->errnum = 0; - $error->errmsg = 'Référence inconnue'; - } - $output = new CmdPiecesReturn(); - $cmd = new CmdPiecesDetail(); - $cmd->refCommande = $ref; - $cmd->infoCommande = $infoCommande; - $cmd->infosDemandeur = $infosDemandeur; - $output->commande = $cmd; - $output->error = $error; - return $output; - } - - /** - * Retourne la liste des commandes de pièces ainsi que leur détails - * @param CmdFiltrePieces $filtre - * @param int $position - * @param int $nbRep - * @return ListeCmdPiecesReturn - */ - public function getListeCmdPieces( $filtre, $position = 0, $nbRep = 20 ) - { - $error = new ErrorType(); - //Traitements des filtres pour générer la requête SQL - - //Selection - $nbCommandes = 0; - try - { - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $commandeTable = new Application_Model_Commandes(); - $select = $commandeTable->select()->where('type = ?', 'pieces'); - $countRowset = $commandeTable->fetchAll($select); - $nbCommandes = $countRowset->count(); - $select->order('date_added DESC')->limit($nbRep, $position); - $commandeRowset = $commandeTable->fetchAll($select); - } - catch (Zend_Db_Adapter_Exception $e) - { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - $error->errnum = 1; - $error->errmsg = 'Erreur'; - } - - if ( $commandeRowset->count()>0 ) - { - $liste = array(); - foreach ($commandeRowset as $commande) - { - $selectEven = $commandeTable->select() - ->order('date_added DESC')->limit(1); - $evenRowset = $commande->findDependentRowset( - 'Application_Model_CommandesEven', null, $selectEven); - $info = ''; - if($evenRowset->count()>0){ - $even = $evenRowset->current(); - $info = $even->commentaire; - } - - $ref = new RefCommande(); - $ref->reference = strtoupper($commande->type).'-'.$commande->id; - $ref->dateCommande = $commande->date_added; - $ref->dateMaj = $commande->date_updated; - $ref->dateReception = $commande->date_closed; - $ref->info = $info; - $ref->fichier = ''; // @todo : Détecter le fichier - $ref->login = $commande->user_login; - - $infoCommande = new InfoCommandePieces(); - $infoCommande = unserialize($commande->infoCommande); - - $infosDemandeur = new InfosDemandeur(); - $infosDemandeur->reference = $commande->demandeurReference; - $infosDemandeur->email = $commande->demandeurEmail; - $infosDemandeur->tel = $commande->demandeurTel; - $infosDemandeur->nom = $commande->demandeurNom; - $infosDemandeur->service = $commande->demandeurService; - $infosDemandeur->societe = $commande->demandeurSociete; - $infosDemandeur->adresse = $commande->demandeurAdresse; - $infosDemandeur->cp = $commande->demandeurCp; - $infosDemandeur->ville = $commande->demandeurVille; - - $cmd = new CmdPiecesDetail(); - $cmd->refCommande = $ref; - $cmd->infoCommande = $infoCommande; - $cmd->infosDemandeur = $infosDemandeur; - - $liste[] = $cmd; - } - } - - $output = new ListeCmdPiecesReturn(); - $output->error = $error; - $output->nbCommandes = $nbCommandes; - $output->liste = $liste; - return $output; - } - - /** - * Retourne la liste des statuts de commande - * @param string $type - * @return CmdStatut[] - */ - public function getListeCmdStatut( $type ) - { - Zend_Registry::get('WsLogger')->info("getListeStatut - ".$type); - try { - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $dbStatut = new Application_Model_CommandesStatut(); - $result = $dbStatut->fetchAll(array("commande_type = '$type'")); - } - catch (Zend_Db_Adapter_Exception $e) - { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - $listeStatut = array(); - if (count($result)>0) - { - foreach($result as $r) - { - $statut = new CmdStatut(); - $statut->code = $r['code']; - $statut->lib = $r['libelle']; - $listeStatut[] = $statut; - } - } - return $listeStatut; - } - - /** - * Spécifier un état défini pour une commande - * (avec déclenchement d'une action) - * @param int $reference - * @param int $statutCode - * @return bool - */ - public function setCmdStatut( $reference, $statutCode) - { - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $dbStatut = new Application_Model_CommandesStatut(); - $row = $dbStatut->fetchRow(array("code = '$statutCode'")); - if ( count($row)>0 && $this->setCommandeEven($reference, $row['lib']) ) - { - if (!empty($row['action'])){ - switch($row['action']){ - case 'CLOSE': - //date_closed - break; - } - } - return true; - } else { - return false; - } - } - - /** - * Spécifier un état pour une commande - * @param int $reference - * @param string $comment - * @return bool - */ - public function setCmdEven ( $reference, $comment ) - { - $this->authenticate(); - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - try { - //Vérifier que la commande existe avec la référence fournie - $commandeTable = new Application_Model_Commandes(); - $commandeRowset = $commandeTable->find($reference); - if ($commandeRowset->count()>0) - { - $commande = $commandeRowset->current(); - //Enregistrer l'événement - $commandeEvenTable = new Application_Model_CommandesEven(); - $insert = $commandeEvenTable->createRow(); - $insert->commande_id = $commande->id; - $insert->commentaire = $comment; - $insert->user_login = $this->tabInfoUser['login']; - $insert->save(); - //Mettre à jour la commande - $commande->date_updated = date('Y-m-d H:i:s'); - $commande->save(); - return true; - } else { - return false; - } - } - catch (Zend_Db_Adapter_Exception $e) - { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - return false; - } - } - - /** - * Ajout du nom de fichier liée à la commande - * @param int $reference - * @param string $filename - * @return bool - */ - public function setCmdDocument( $reference, $filename ) - { - $this->authenticate(); - $db = Zend_Db::factory($this->dbConfig->Commandes); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - try { - //Vérifier que la commande existe avec la référence fournie - $commandeTable = new Application_Model_Commandes(); - $commandeRowset = $commandeTable->find($reference); - if ($commandeRowset->count()>0) - { - $commande = $commandeRowset->current(); - switch($commande->type) - { - case 'pieces': - $infoCommandePieces = $commande->findDependentRowset('Application_Model_CommandesPieces'); - if ($infoCommandePieces->count()>0) - { - //Update informations pieces - $commandePieces = $infoCommandePieces->current(); - $commandePieces->fichier = $filename; - $commandePieces->save(); - //Mettre à jour la commande - $commande->date_updated = date('Y-m-d H:i:s'); - $commande->save(); - //Mettre à jour les évenements de commande - //@todo - return true; - } - break; - case 'default': - return false; - break; - } - } else { - return false; - } - } - catch (Zend_Db_Adapter_Exception $e) - { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - return false; - } - } - - /** - * Enregistre une action utilisateur pour la facturation - * @param string $page - * @param string $siret - * @param int $id - * @param string $ref - * @return void - */ - public function setLog($page, $siret, $id=0, $ref='') - { - $this->authenticate(); - - //Initialisation - if (empty($id)) $id = 0; - if (empty($ref)) $ref = ''; - if ( $id!=0 ) { - $ref2=''.$id.'/'.$ref; - } else { - $ref2=$ref; - } - $this->wsLog($page, $siret, $ref2); - debugLog('I',"Insertion d'un log pour la page $page $siret $ref2",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } - - /** - * Met a jour les informations sur un mandataire - * @param SetInfosMandataire $infos Informations sur le mandataire à créer ou à ajouter (ajout si id absent) - * @return SetMandataireReturn - **/ - public function setMandataire(SetInfosMandataire $infos) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - $result = true; - - $iDb = new WDB(); - /** Nom et Identifiant de l'opérateur de saisie **/ - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('utilisateurs', 'id', "login='".$this->tabInfoUser['login']."'"); - $idUser = $rep[0][0]; - - //$infos = serialize($tabInfos); - debugLog('I',"Ajout/MAJ de mandaitaire ".print_r($infos,1)." demandée",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $type = substr(strtoupper($infos->type),0,1); - $stag = substr(strtoupper($infos->type),1,1); - if ($stag=='S') { $stag=1; } else { $stag=0; } - if ($type=='A' || $type=='H' || $type=='M' || $type=='V' || - $type=='N' || $type=='T') - { - $tabUpdate=array( - 'sirenGrp' => substr($infos->sirenGrp,0,9)*1, - 'nicGrp' => substr($infos->sirenGrp,9,5)*1, - 'sirenMand' => substr($infos->sirenMand,0,9)*1, - 'nicMand' => substr($infos->sirenMand,9,5)*1, - 'Nom' => ucwords(strtolower($infos->Nom)), - 'Prenom' => ucwords(strtolower($infos->Prenom)), - 'type' => $type, - 'stagiaire' => $stag, - 'coursAppel' => intval($infos->coursAppel), - 'coursAppel2' => intval($infos->coursAppel2), - 'tribunal' => $infos->tribunal, - 'Statut' => strtoupper($infos->Statut), - 'adresse' => ucwords($infos->adresse), - 'adresseComp' => strtoupper($infos->adresseComp), - 'cp' => intval($infos->cp), - 'ville' => strtoupper($infos->ville), - 'tel' => $infos->tel, - 'fax' => $infos->fax, - 'email' => $infos->email, - 'web' => $infos->web, - 'contact' => $infos->contact, - 'idUser' => $idUser, - ); - } - $id = str_replace('m','', ''.$infos->id)*1; - if (intval($id)!=0) { - // MAJ - if (!$iDb->update('tabMandataires', $tabUpdate, "id=$id", true)) { - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - $result = false; - } - } else { - // Insertion - if (!$iDb->insert('tabMandataires', array_merge($tabUpdate,array('dateInsert'=>date('YmdHis'))), true)) { - $error->errnum = 1; - $error->errmsg = 'Insertion impossible'; - $result = false; - } - } - $output = new SetMandataireReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Récupère le mandataire par son id - * @param int $idMand Identifiant du mandataire - * @return MandataireReturn - */ - public function getMandataire($idMand) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - - debugLog('I',"Donne le Mandataires correspondant à $idMand",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new classMInsee(); - $tabRet = $iInsee->getMandataire($idMand); - $mandataire = new MandataireDetail(); - $mandataire->Nom = $tabRet['Nom']; - $mandataire->Prenom = $tabRet['Prenom']; - $mandataire->tribunal = $tabRet['tribunal']; - $mandataire->adresse = $tabRet['adresse']; - $mandataire->adresseComp = $tabRet['adresseComp']; - $mandataire->ville = $tabRet['ville']; - $mandataire->email = $tabRet['email']; - $mandataire->web = $tabRet['web']; - $mandataire->contact = $tabRet['contact']; - $output = new MandataireReturn(); - $output->error = $error; - $output->result = $mandataire; - return $output; - } - - /** - * Liste les mandataires compétentes pour une cours d'appel donnée - * @param mixed $codeTribunal Identifiants BODACC du tribunal ou tableau d'Identifiants numériques des cours d'appel - * @param array $type Type de mandataire (A)dministrateur, (M)andataire, (O)ppositions, (N)otaires, a(V)ocat - * @return MandatairesReturn - */ - public function getMandataires($codeTribunal=0, $type=array('A','M')) - { - $this->authenticate(); - //Initialisation - $iInsee = new MInsee(); - $error = new ErrorType(); - $trib = serialize($codeTribunal); - debugLog('I',"Liste des Mandaitaires ou Administrateur du Tribunal/Cours d'Appel $trib demandé",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (!is_array($codeTribunal) && strlen($codeTribunal)>3 && $codeTribunal*1==0) - { - // $codeTribunal est un identifiant de tribunal - $iBodacc = new MBodacc(); - $tabTmp = $iInsee->getMandataires(array($iBodacc->getTribunalIdCA($codeTribunal)), true, $type); - } - elseif ($codeTribunal*1==0) - { - // On veut tous les mandataires - $tabTmp = $iInsee->getMandataires(array(), true, $type); - } - elseif (is_array($codeTribunal)) - { - // On veut les mandataires d'une CA - $tabTmp = $iInsee->getMandataires($codeTribunal, true, $type); - } - $tabRet = array(); - foreach ($tabTmp as $i=>$mand){ - $mandataire = new Mandataire(); - $mandataire->id = 'm'.$i; - $mandataire->mand = $mand; - $tabRet[]= $mandataire; - } - $output = new MandatairesReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des conventions - * @param string $siren - * @return ListeConventionsReturn - */ - public function getListeConventions($siren) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - $tabRet = array(); - - debugLog('I',"Liste des conventions demandée pour le siren $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($siren)<>9){ - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren Siret inexistant'; - - } elseif ($siren*1==0){ - - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren inexistant'; - - } else { - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteEntreprise($siren); - - if (empty($tabIdentite) && isset($tabIdentite['erreur']) && - $tabIdentite['erreur']<>''){ - - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren inexistant'; - - } else { - - $naf = $tabIdentite['NafEnt']; - $trancheEffectif = $tabIdentite['EffEnTr']; - $effectif = $tabIdentite['Effectif']; - $fj = $tabIdentite['entreprise']['FJCodeEntrep']; - - $isolv = new MSolvabilite($siren, $naf, $trancheEffectif, - $effectif, $tabIdentite['CP'], $fj, $tabIdentite['Capital'], - $tabIdentite['CapitalDev'], $tabIdentite['DateCreaEn'], - $tabIdentite['DateCreaEt'] - ); - $noteStructure = $isolv->getSolvabilite(); - $naf4 = $isolv->getNaf4($naf); - - $tabTmp = $iInsee->listeConventions($naf4, $tabIdentite['Dept']); - foreach ($tabTmp as $conv) - { - $convention = new Convention(); - $convention->idCC = $conv['id CC']; - $convention->nomCC = $conv['nom CC']; - $convention->infoCC = $conv['infoCC']; - $convention->editorCC = $conv['editeur CC']; - $convention->nbPageCC = $conv['nb page CC']; - $convention->isbnCC = $conv['isbn CC']; - $convention->dateCC = $conv['date edition CC']; - $convention->joCCmaj = $conv['joCCmaj']; - $tabRet[] = $convention; - } - $this->wsLog('conventions',$siren); - } - } - - $output = new ListeConventionsReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Donne la cours d'appel d'un tribunal par son code - * @param string $codeTribunal Code BODACC sur 6 caractères du tribunal - * @return int - **/ - public function getIdCoursAppel($codeTribunal) - { - $this->authenticate(); - $iBodacc = new MBodacc(); - return $iBodacc->getTribunalIdCA($codeTribunal); - } - - /** - * Récupère le contenu d'une annonce issue de la collecte - * @param string $idAnn - * @param string $siret - * @return AnnonceCollecteReturn - */ - public function getAnnonceCollecte($idAnn, $siret) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - $annonceCollecte = new AnnonceCollecte(); - $siren = substr($siret,0,9)*1; - if (!$this->checkEdition()) { - - $error->errnum = 0; - $error->errmsg = 'Code Client Incorrect'; - - } else { - - $iDb = new WDB(); - debugLog('I',"Lecture de l'annonce collectée n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $idAnn = preg_replace('/^0\./','', ''.$idAnn) * 1; - if ($idAnn>0) - { - $res = $iDb->select('annonces', - 'id, siren, sirenValide, typeEven, strEven, raisonSociale, adresse, codePostal, ville, dateJugement, dateCessationPaiement, dateEffetFinP, numero, inter1type, inter1id, inter1nom, inter2type, inter2id, inter2nom, inter3type, inter3id, inter3nom, inter4type, inter4id, inter4nom, tribunal, montant, actionsNb, complement, infosBrutes, nouvActivite, nouvDir, nouvAdr, nouvFJ, annonce, source, parutionIdJal, parutionNum, dateSource, idSaisie, idAnnonce, dateInsert', - "id=$idAnn", false, MYSQL_ASSOC - ); - if (count($res)>0) - { - $ann = $res[0]; - $annonceCollecte->id = $ann['id']; - $annonceCollecte->siren = $ann['siren']; - $annonceCollecte->raisonSociale = $ann['raisonSociale']; - $annonceCollecte->adresse = $ann['adresse']; - $annonceCollecte->codePostal = $ann['codePostal']; - $annonceCollecte->ville = $ann['ville']; - $annonceCollecte->dateJugement = $ann['dateJugement']; - - //@todo : Les libellées ne sont pas présent LibEven - $tabEven = array(); - $annonceEvenement = new AnnonceEvenement(); - $annonceEvenement->CodeEven = $ann['typeEven']; - $annonceEvenement->LibEven = ''; - $tabEven[] = $annonceEvenement; - if (!empty($ann['strEven'])){ - foreach ( explode(';',$ann['strEven']) as $code ) - { - $annonceEvenement = new AnnonceEvenement(); - $annonceEvenement->CodeEven = $code; - $annonceEvenement->LibEven = ''; - $tabEven[] = $annonceEvenement; - } - } - - $annonceCollecte->even = $tabEven; - $annonceCollecte->dateSource = $ann['dateSource']; - $annonceCollecte->dateCessationPaiement = $ann['dateCessationPaiement']; - $annonceCollecte->dateEffetFinP = $ann['dateEffetFinP']; - $annonceCollecte->tribunal = $ann['tribunal']; - $annonceCollecte->numero = $ann['numero']; - $annonceCollecte->montant = $ann['montant']; - $annonceCollecte->actionsNb = $ann['actionsNb']; - $annonceCollecte->inter1type = $ann['inter1type']; - $annonceCollecte->inter1id = $ann['inter1id']; - $annonceCollecte->inter1nom = $ann['inter1nom']; - $annonceCollecte->inter2type = $ann['inter2type']; - $annonceCollecte->inter2id = $ann['inter2id']; - $annonceCollecte->inter2nom = $ann['inter2nom']; - $annonceCollecte->inter3type = $ann['inter3type']; - $annonceCollecte->inter3id = $ann['inter3id']; - $annonceCollecte->inter3nom = $ann['inter3nom']; - $annonceCollecte->complement = $ann['complement']; - $annonceCollecte->nouvActivite = $ann['nouvActivite']; - $annonceCollecte->nouvDir = $ann['nouvDir']; - $annonceCollecte->nouvAdr = $ann['nouvAdr']; - $annonceCollecte->nouvFJ = $ann['nouvFJ']; - $annonceCollecte->source = $ann['source']; - - debugLog('I',"Lecture de l'annonce collectée n°$idAnn ($siret) : ".$ann['raisonSociale'],__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } else { - $error->errnum = 1; - $error->errmsg = 'Edition impossible'; - } - } - else - { - $error->errnum = 745741; - $error->errmsg = 'Selection impossible'; - } - } - $output = new AnnonceCollecteReturn(); - $output->error = $error; - $output->result = $annonceCollecte; - return $output; - } - - /** - * getDevises - * @param string $codeIsoDevise - * @return DevisesReturn - */ - public function getDevises($codeIsoDevise='') - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - if (empty($codeIsoDevise)) $codeIsoDevise = ''; - - debugLog('I',"Liste des devises ou devise $codeIsoDevise demandée",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $tabTmp = $iInsee->getDevises($codeIsoDevise); - - $tabRet = array(); - foreach ($tabTmp as $i=>$dev) - { - if ( $i!='' ){ - $devise = new Devise(); - $devise->devIso = $i; - $devise->devNom = $dev; - $tabRet[] = $devise; - } - } - $output = new DevisesReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des codes devises, libellés, date et valeur - * (toutes les devises ou une seule) - * @param string $devise Devise sur 3 lettres (facultatif) - * @return DevisesCoursReturn - */ - public function getDeviseCours($devise=false) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - - $iDb = new WDB('sdv1'); - if ($devise) $strDevise=" AND c.devise='$devise' "; - else $strDevise=''; - - $tabRet = array(); - - $res = $iDb->select('devise_cours c, devise_liste l', 'c.devise, l.devNom, max(c.date) as dateChange, c.valeur', "c.devise=l.devIso $strDevise GROUP BY c.devise ORDER BY c.devise ASC", false, MYSQL_ASSOC); - foreach ($res as $tabDev) - { - $devise = new DevisesCours(); - $devise->codeDevise = $tabDev['devise']; - $devise->nomDevise = $tabDev['devNom']; - $devise->dateChange = $tabDev['dateChange']; - $devise->valeurDevise = $tabDev['valeur']; - $tabRet[] = $devise; - } - $output = new DevisesCoursReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * getMarques - * @param string $siren - * @param int $idDepot - * @return MarquesReturn - */ - public function getMarques($siren, $idDepot=0) - { - $this->authenticate(); - $this->permission('marques'); - debugLog('I',"Liste des marques déposées pour le siren $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($idDepot)) $idDepot = 0; - $error = new ErrorType(); - $marques = array(); - require_once 'Metier/partenaires/classMMarques.php'; - $iMarque = new MMarques(); - $ret = $iMarque->getMarques($siren, $idDepot); - - foreach ($ret as $item) { - if (trim($item['imgLink'])<>'') $idLien = $item['numeroMarque']; - else $idLien = ''; - if ($idDepot==$item['numeroMarque']) { - $marque = new Marque(); - $marque->Marques = $item['nomMarque']; - $marque->Date = $item['dateDepot']; - $marque->Depot = $item['numeroMarque']; - $marque->IdLien = $idLien; - $marque->UrlLien = $item['UrlLien']; - $marque->PdfDispo = $item['pdfLink']; - $marque->Classes = $item['classesMarque']; - $marque->Perimetre = $item['periMarque']; - $marque->DateExpir = $item['dateExpir']; - $marques = array(); - $marques[] = $marque; - break; - } else { - $marque = new Marque(); - $marque->Marques = $item['nomMarque']; - $marque->Date = $item['dateDepot']; - $marque->Depot = $item['numeroMarque']; - $marque->IdLien = $idLien; - $marque->UrlLien = $item['UrlLien']; - $marque->PdfDispo = $item['pdfLink']; - $marques[] = $marque; - } - } - - Zend_Registry::get('WsLogger')->info(__FUNCTION__.' : '. - print_r($marques,1)); - - $this->wsLog('marques',$siren); - $output = new MarquesReturn(); - $output->error = $error; - $output->result = $marques; - return $output; - } - - /** - * Enter description here ... - * @param string $siren - * @param string $piece - * @param string $type - * @param integer $visu - * @param integer $courrier - * @param string $ref - * @return PieceReturn - */ - public function getPiece($siren, $piece='kbis', $type='', $visu=1, $courrier=0, $ref='') - { - $this->authenticate(); - $this->permission('kbis'); - set_time_limit(400); - - if (empty($piece)) $piece = 'kbis'; - if (empty($type)) $type = ''; - if (empty($visu)) $visu = 1; - if (empty($courrier)) $courrier = 1; - if (empty($ref)) $ref = ''; - $error = new ErrorType(); - - $erreur = false; - - $kbisLocalPDF = DOC_WEB_LOCAL."kbis/$piece-$siren.pdf"; - - if (file_exists($kbisLocalPDF) - && date('Ymd', filemtime($kbisLocalPDF))==date('Ymd') - && filesize($kbisLocalPDF)>0 ) { - $size = filesize($kbisLocalPDF); - $erreur = false; - $tabNom = array(); - $ficDist = ''; - $cache = 1; - } else { - exec("php ".APPLICATION_PATH."/../batch/getPieces.php $siren $piece > /dev/null &"); - $ficDist=''; - $size=$cache=0; - } - // On supprimer l'ancien kbis si trop vieux ou vide - if (date('Ymd', filemtime($kbisLocalPDF))<>date('Ymd') - || filesize($kbisLocalPDF)==0) { - unlink($kbisLocalPDF); - } - $result = new PieceResult(); - $result->Siren = $siren; - //@todo : Envoyer vers controlleur - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $result->Url = $hostname.'/data/kbis/'.$piece.'-'.$siren.'.pdf'; - - $result->Taille = $size; - $result->Cache = $cache; - $result->fichier = $ficDist; - $this->wsLog('kbis', $siren, "$cache/$visu/$courrier/$type/$ref"); - $output = new PieceReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Enregistrement de document actes ou status d'association - * @param string $siren Numéro Siren - * @param string $waldec Numéro waldec - * @param string $type Type d'acte - * @param string $libelle Libellé de l'acte - * @param string $date Date des l'acte au format - * @param int $nbPages Nombre de pages dans le fichier - * return boolean - */ - public function setActeAsso( $siren, $waldec, $type, $libelle, $date, $nbPages ) - { - $this->authenticate(); - if (!$this->checkEdition()) { - $this->sendError('0902'); - } - ($type == 'ST') ? $type_acte = 'ST' : $type_acte = ''; - - $data = array( - 'siren' => $siren, - 'waldec' => waldec, - 'pdfLink' => '', - 'pdfSize' => '', - 'pdfVer' => '', - 'pdfPage' => '', - 'date_acte' => WDate::dateT('d/m/Y', 'Y-m-d', $date), - 'type_acte' => $type_acte, - 'type_acte_libelle' => $libelle, - 'nbpages_acte' => $nbPages, - ); - try { - $db = Zend_Db::factory($this->dbConfig->Webservice); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $doc = new Application_Model_AssoActes(); - $doc_id = $doc->insert($data); - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - if ($commande_id) - { - return true; - } - return false; - } - - /** - * Commande de statut association - * @param InfoCmdAsso $infosCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdAssoReturn - */ - public function setCmdAsso( $infosCommande, $infosDemandeur ) - { - $this->authenticate(); - $this->permission('actes'); - //Initialisation - $error = new ErrorType(); - - $iDb = new WDB(); - - $siren = $infosCommande->siren; - $idEntreprise = intval($infosCommande->idEntreprise); - $assoNom = $infosCommande->raisonSociale; - debugLog('I',"commandeAsso pour $assoNom ($siren) début",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren, 0, $idEntreprise); - $assoSigle = $tabIdentite['Sigle']; - $assoAdresse = $tabIdentite['Adresse'].EOL.$tabIdentite['Adresse2']; - $assoCP = $tabIdentite['CP']; - $assoVille = $tabIdentite['Ville']; - - $mail = trim($infosDemandeur->email); - if ($mail=='') $mail = $this->tabInfoUser['email']; - - $tabInsert=array( - 'idUser' => $this->tabInfoUser['id'], - 'source' => 'asso', - 'login' => $this->tabInfoUser['login'], - 'emailCommande' => $mail, - 'siren' => $siren, - 'refUtilisateur' => $infosDemandeur->reference, - 'refDocument' => serialize($infosDemandeur), - 'refCommande' => serialize($infosCommande), - 'dateCommande' => DATETIME, - ); - - $iDbCrm = new WDB('sdv1'); - $ret = $iDbCrm->insert('commandes', $tabInsert, true); - - if ( $ret!=0 ) { - - sendMail('production@scores-decisions.com', 'asso@scores-decisions.com', - "Commande de statuts association pour $assoNom ($siren)", - "Association :".EOL.print_r($infosCommande, true).EOL.EOL. - "Demandeur:".EOL.print_r($infosDemandeur, true).EOL.EOL. - "Ref : i".$ret - ); - - $result = new CmdAssoDetail(); - $result->siren = $siren; - $result->emailCommande = $mail; - $result->dateCommande = DATETIME; - $result->refCmd = 'i'.$ret; - - sendMail('production@scores-decisions.com', $mail, - "Votre commande de statuts association sur $assoNom ($siren)", - "Votre demande de statuts sur l'association $assoNom a été prise en compte sous la référence i$ret - ".DATETIME); - $this->wsLog('commandeAsso', $siren, 'i'.$ret.'-'.DATETIME); - debugLog('I',"commandeAsso pour $assoNom ($siren) fin",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - } else { - - $error->errnum = 1; - $error->errmsg = 'Erreur'; - - } - - $output = new CmdAssoReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Renvoi des informations sur une commande association - * @param string $reference - * @return CmdAssoReturn - */ - public function getCmdAsso( $reference ){} - - - /** - * Commande d'une enquête sur une entreprise en France ou à l'Internationale - * @param InfosCmdEnquete $infosCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdEnqueteReturn - **/ - public function setCmdEnquete($infosCommande, $infosDemandeur) - { - $this->authenticate(); - $this->permission('enquetec'); - - //Initialisation - $error = new ErrorType(); - $siren = $infosCommande->siren; - - $mail = trim($infosDemandeur->email); - if ($mail=='') $mail = $this->tabInfoUser['email']; - - $tabInsert = array( - 'idUser' => $this->tabInfoUser['id'], - 'source'=> 'intersud', // 'greffes', 'asso', 'graydon' - 'login'=> $this->tabInfoUser['login'], - 'emailCommande'=> $mail, - 'siren'=> $siren, - 'refDocument'=> serialize($infosDemandeur), - 'refCommande'=> serialize($infosCommande), - 'dateCommande'=> DATETIME, - ); - debugLog('I',"Intersud, début sur $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $messageInfo=print_r($infosCommande, 1).EOL.print_r($infosDemandeur,1).EOL; - - $idClient = $this->tabInfoUser['idClient']; - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients', ' nom, racineLogin, InterSudLogin, InterSudPass', "id='$idClient'", false, MYSQL_ASSOC); - $login = trim($rep[0]['InterSudLogin']); - $pass = trim($rep[0]['InterSudPass']); - $nomClient = trim(strtoupper($rep[0]['nom'])); - $strInfoCommande ="NOM et Prénom du client demandeur : ".$infoDemandeur->nom.EOL; - $strInfoCommande.="Email du client demandeur : $mail".EOL; - $strInfoCommande.="Tel/Fax du demandeur : ".$infosDemandeur->tel.' / '.$infosDemandeur->fax.EOL; - $strInfoCommande.="Profil du demandeur : ".trim($infosDemandeur->service).EOL; - $typeEnqLog='enqueteDemNF'; - - if ($login=='' || $pass=='') { - /** Il ne s'agit pas d'un client final, on anonymise la commande **/ - $login = 'YLENA'; // Demandes en test - $pass = 'WYLFE'; - $nomClient = $strInfoCommande = ''; - $typeEnqLog = 'enqueteDem'; - /* ENQUETES EN PROD - $login='FACTURE'; - $pass='AWKROM'; - */ - } - - $url='http://www.intersud.fr/espace_client/espace_client.php'; - $cookie = $referer = ''; - $tabPost = array('login' => $login, 'pwd' => $pass); - $tdeb = microtime(true); - $page = getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - $tabRet=array(); - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Connexion impossible à la plateforme Intersud".EOL.$strInfoCommande); - // wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - //@todo - return array('error'=>array('errnum'=>4563456, 'errmsg'=>'Connexion impossible à la plateforme d\'enquetes'), 'results'=>$tabRet); - } - $tfin = microtime(true); - $duree = $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - $cookie = $page['header']['Set-Cookie']; - - /** Connexion à l'Extranet Intersud - **/ - $url = 'http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, '', $referer, false, '', '', 7); - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - - $fp=@fopen(LOG_PATH."/intersud.log", "a"); - @fwrite($fp, print_r($page,true)); - @fclose($fp); - $tabInterSud=array(); - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[2][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[1][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - - $ref_exp=$tabInterSud['ref_exp']; - $email_exp=$tabInterSud['email_exp']; - $tel_exp=$tabInterSud['tel_exp']; - debugLog('I',"Intersud, formulaire enquête ref $ref_exp, $email_exp, $tel_exp",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $fp=@fopen(LOG_PATH."/intersud.log", "a"); - @fwrite($fp, print_r($matches,true)); - @fwrite($fp, print_r($tabInterSud,true)); - @fclose($fp); - - /** Insertion de la commande en base - **/ - $ret = $iDbCrm->insert('commandes', $tabInsert, true); - $comment = "Référence de la commande chez Scores et Décisions : i$ret - ". - DATETIME."\n". - "Date et heure de la commande : ".date('d/m/Y - H:i')."\n". - "Origine de la commande : $nomClient". - "$strInfoCommande"."\n\n". - - "CA : ".$infosCommande->PrecisionsMontantCA."\n". - "Motif de la demande : ".trim($infosCommande->PrecisionsMotif.' '.$infosCommande->PrecisionsAutre)."\n". - "Type de la demande : ".$infosCommande->PrecisionsType."\n". - "Anciennete de la relation : ".$infosCommande->Anciennete.' '.$infosCommande->AncienneteDuree."\n". - "Observations : ".$infosCommande->Observation.EOL; - - if ($infosCommande->ImpayeesChoix<>'non') - $comment.="Impayé(s) : ".$infosCommande->ImpayeesNombre." impayé(s) pour un montant de ".$infosCommande->ImpayeesMontant." en date du ".$infosCommande->ImpayeesDate.EOL; - - if ($infosCommande->RetardPaiementChoix<>'non') - $comment.="Retard(s) de paiement : ".$infosCommande->RetardPaiementNombre." retard(s) pour un montant de ".$infosCommande->RetardPaiementMontant." en date du ".$infosCommande->RetardPaiementDate.EOL; - - if ($infosCommande->LitigeChoix<>'non') - $comment.="Présence de litige(s) : ".$infosCommande->LitigePrecisions.EOL; - - $enqType=0; - $enqDelai=7; - switch (strtolower($infosCommande->Type)) { - case 'premier': $enqType=0; $enqDelai=6; break; - case 'gold': $enqType=1; break; - case 'distrimat': $enqType=2; break; - case 'star': $enqType=3; break; - case 'avis_bancaire': $enqType=4; break; - case 'autre': $enqType=5; break; - } - - /** Ajout du RIB si communiqué **/ - if (@trim(implode(' ', $infosCommande->RIB))<>'') - $iDbCrm->insert('banques', array( - 'siren'=>$siren, - 'libBanqueGuichet'=>'', - 'precis'=>1, - 'codeBanque'=>$infosCommande->RIB->banque, - 'codeGuichet'=>$infosCommande->RIB->guichet, - 'numCompte'=>$infosCommande->RIB->compte.$infosCommande->RIB->cle, - 'dateSource'=>DATETIME, - ), true); - - /** Remplissage du formulaire d'enquête pour soumission à Intersud **/ - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren); - $tabPost = array( - 'soc'=>$tabIdentite['Nom'], - 'cible_enk'=>9, // 9 - 'siret'=>$siren, - 'acti'=>'', - 'soc_exp'=>$tabInterSud['soc_exp'], - 'type_enk'=>$enqType, // 0=Premier, 1=Gold, 2=Distrimat, 3=Star, 4=Avis bancaire, 5=Autre - 'nom_diri'=>'', - 'adr'=>$tabIdentite['Adresse'], - 'ref_exp'=>$tabInterSud['ref_exp'], - 'autre_type_enk'=>'', // Texte libre - 'adr2'=>$tabIdentite['Adresse2'], - 'delai_enk'=>$enqDelai, // 6=24h, 7=72h, 8=+de5jours - 'ville'=>$tabIdentite['Ville'], - 'cp'=>$tabIdentite['CP'], - 'pays'=>'', // International ? - 'nom_exp'=>$tabInterSud['nom_exp'], - 'tel'=>$tabIdentite['Tel'], - 'port'=>$infosCommande->AutreTel, - 'tel_exp'=>$tabInterSud['tel_exp'], - 'bank'=>trim(implode(' ', $infosCommande->RIB)), - 'int_enk'=>$tabInterSud['int_enk'], // International ? - 'encours'=>$infosCommande->Encours, - 'nb_ech'=>$infosCommande->NbEcheances, - 'delai2_enk'=>$tabInterSud['delai2_enk'], // International ? - 'email_exp'=>$tabInterSud['email_exp'], - 'cred'=>'', - 'comment'=>urlencode($comment), - 'val_ret'=>$tabInterSud['val_ret'], - ); - $url='http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb=microtime(true); - $page=getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - $tabRet=array(); - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Validation impossible du formulaire d'enquête Intersud".EOL.$strInfoCommande); - //@todo - return array('error'=>array('errnum'=>456345, 'errmsg'=>'Connexion impossible à la plateforme d\'enquetes 3'), 'results'=>$tabRet); - } - $tfin=microtime(true); - $duree+=$tfin-$tdeb; - $referer=$url; - $body=$page['body']; - - $result = new CmdEnquete(); - $result->siren = $siren; - $result->emailCommande = $mail; - $result->dateCommande = DATETIME; - $result->refCmd = 'i'.$ret; - - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Commande d'enquete sur $siren", $comment.EOL.EOL.'---------------------------------'.EOL.$messageInfo.EOL.EOL.'---------------------------------'.EOL.$body); - @sendMail('production@scores-decisions.com', $mail, "Votre demande d'enquete sur ".$tabIdentite['Nom']." ($siren)", "Votre demande d'enquête sur la société ".$tabIdentite['Nom']." a été prise en compte sous la référence i$ret - ".DATETIME); - $this->wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - - /** Gestion de la déconnexion **/ - $url='http://intersud.fr/espace_client/index.php?code_ret=9'; - $tdeb=microtime(true); - $page=getUrl($url, $cookie, '', $referer, false, '', '', 7); - $tfin=microtime(true); - $duree+=$tfin-$tdeb; - - $ret = $iDbCrm->update('commandes', array('dureeCommande'=>round($duree,3)), "idCommande=$ret"); - - $output = new CmdEnqueteReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Récupération d'un kbis - * @param string $siren - * @param int $visu - * @param int $courrier - * @param string $mail - * @param string $ref - * @return PieceReturn - */ - public function getKbis($siren, $visu=1, $courrier=0, $mail='', $ref='') - { - return $this->getPiece($siren, 'kbis', '', $visu, $courrier, $ref); - } - - /** - * getStatsUtilisateurs - * @param string $login - * @param string $mois - * @param string $type - * @param boolean $payants - * @return array - */ - public function getStatsUtilisateurs($login, $mois, $type='jour', $payants=false) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - if ($payants) - { - $strPayant="AND (page LIKE 'greffe_%' OR page LIKE 'inpi_%' OR page='kbis') AND params<>'' AND (params NOT LIKE '%erreur%' OR params LIKE '%erreur 17%') "; - } - else { - $strPayant=''; - } - $iDbCrm = new WDB('sdv1'); - if ($type=='jour') { - $rep = $iDbCrm->select('logs', - 'date(dateHeure) as jours, count(*) as nb', - "1 $strPayant AND login='$login' AND dateHeure BETWEEN '$mois-01' AND '$mois-31' GROUP BY jours", - false, MYSQL_ASSOC); - } elseif ($type=='heure') { - $rep = $iDbCrm->select('logs', - 'HOUR(dateHeure) as heures, count(*) as nb', - "1 $strPayant AND login='$login' AND dateHeure BETWEEN '$mois-01' AND '$mois-31' GROUP BY heures", - false, MYSQL_ASSOC); - } - $tabRet = $rep; - - - - return array('error'=>array('errnum'=>0, 'errmsg'=>''), 'results'=>$tabRet); - } - - /** - * getPortefeuilleCsv - * @param string $login - * @param int $idClient - * @return ListeSurveillancesCsvReturn - */ - public function getPortefeuilleCsv($login='', $idClient=0) - { - return $this->getListeSurveillancesCsv('portefeuille', $login, $idClient); - } - - /** - * getPortefeuille - * @param PortefeuilleFiltre $filtre - * @param int $deb - * @param int $nbRet - * @return PortefeuilleReturn - */ - public function getPortefeuille($filtre, $deb=0, $nbRet=100) - { - $this->authenticate(); - - // Initialisation - $error = new ErrorType(); - if (empty($deb)) { $deb = 0; } - if (empty($nbRet)) { $nbRet = 100; } - - $tri = strtolower(trim($filtre->tri)); - switch ($tri) { - case 'ref': $orderBy='ORDER BY ref'; break; - case 'dateAjout': $orderBy='ORDER BY dateAjout'; break; - case 'dateDerEnvoi':$orderBy='ORDER BY dateDerEnvoi'; break; - case 'rs': $orderBy='ORDER BY rs'; break; - case 'cp': $orderBy='ORDER BY cp'; break; - case 'ville': $orderBy='ORDER BY ville'; break; - case 'indiScore': $orderBy='ORDER BY indiScore'; break; - case 'encours': $orderBy='ORDER BY encours'; break; - default: $orderBy='ORDER BY siren'; break; // siren ou vide ou autre - } - - $tabRet = array(); - $siren = substr($filtre->siret,0,9); - $nic = substr($filtre->siret,9,5); - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - - $strSelect = 's.email, s.siren, s.nic, s.ref, s.dateAjout, s.rs, s.cp, s.ville, s.dateDerEnvoi, s.encoursClient, c.actif, c.procol, c.indiScore, c.indiScore20, c.encours, c.indiScoreDate, c.dateBilan, c.indiScorePre, c.indiScore20Pre, c.encoursPre, c.indiScoreDatePre, c.sourceModif, c.scoreSolv, c.scoreSolvPre, c.scoreDir, c.scoreDirPre, c.scoreConf, c.scoreConfPre, c.scoreZ, c.scoreZPre, c.scoreCH, c.scoreCHPre, c.scoreAfdcc2, c.scoreAfdcc2Pre, c.situFi, c.situFiPre, c.infoNote, c.infoNotePre, c.noteStruct, c.noteStructPre, c.noteFin, c.noteFinPre, c.tendance, c.tendancePre, c.dateUpdate'; - - $strFiltre = ''; - if (intval($siren)>0) $strFiltre.= " AND s.siren=$siren "; - if (!empty($filtre->ref)) $strFiltre.= " AND s.ref LIKE '%$filtre->ref%'"; - if (!empty($filtre->rs)) $strFiltre.= " AND s.rs LIKE '%$filtre->rs%'"; - - // Il faut compter le nombre de siren au total - $tabTmp = $iDb->select('surveillances_site s', 'count(*) as nb', "s.login='$login' AND s.source='score' AND s.dateSuppr=0 $strFiltre", false, MYSQL_ASSOC); - $nbRepTot = $tabTmp[0]['nb']; - - $tabTmp = $iDb->select('surveillances_site s, scores_surveillance c', $strSelect, "s.login='$login' AND s.source='score' AND s.dateSuppr=0 AND s.siren=c.siren $strFiltre $orderBy LIMIT $deb,$nbRet", false, MYSQL_ASSOC); - foreach ($tabTmp as $i=>$tabSurv) { - if (trim($tabSurv['rs'])<>'') { - $rs=$tabSurv['rs']; - $cp=$tabSurv['cp']; - $ville=$tabSurv['ville']; - } else { - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($tabSurv['siren'], $tabSurv['nic']); - $rs=$tabIdentite['Nom']; - $cp=$tabIdentite['CP']; - $ville=$tabIdentite['Ville']; - $iDb->update('surveillances_site',array( - 'rs' => $rs, - 'cp' => $cp, - 'ville' => $ville), - "login='$login' AND source='score' AND dateSuppr=0 AND siren=".$tabSurv['siren']." AND nic=".$tabSurv['nic'], - false - ); - } - - $portefeuille = new Portefeuille(); - $portefeuille->email = $tabSurv['email']; - $portefeuille->siren = $tabSurv['siren']; - $portefeuille->nic = $tabSurv['nic']; - $portefeuille->ref = $tabSurv['ref']; - $portefeuille->dateAjout = $tabSurv['dateAjout']; - $portefeuille->rs = $rs; - $portefeuille->cp = $cp; - $portefeuille->ville = $ville; - // Entreprise - $portefeuille->actif = $tabSurv['actif']; - $portefeuille->procol = $tabSurv['procol']; - $portefeuille->indiScore = $tabSurv['indiScore']; - $portefeuille->indiScore20 = $tabSurv['indiScore20']; - $portefeuille->indiScorePre = $tabSurv['indiScorePre']; - $portefeuille->indiScore20Pre = $tabSurv['indiScore20Pre']; - $portefeuille->encours = $tabSurv['encours']; - $portefeuille->encoursPre = $tabSurv['encoursPre']; - $portefeuille->indiScoreDate = $tabSurv['indiScoreDate']; - $portefeuille->indiScoreDatePre = $tabSurv['indiScoreDatePre']; - $portefeuille->encoursClient = $tabSurv['encoursClient']; - $portefeuille->dateBilan = $tabSurv['dateBilan']; - $portefeuille->sourceModif = $tabSurv['sourceModif']; - //, c.scoreSolv, c.scoreSolvPre, c.scoreDir, c.scoreDirPre, c.scoreConf, c.scoreConfPre, c.scoreZ, c.scoreZPre, c.scoreCH, c.scoreCHPre, c.scoreAfdcc2, c.scoreAfdcc2Pre, c.situFi, c.situFiPre, c.infoNote, c.infoNotePre, c.noteStruct, c.noteStructPre, c.noteFin, c.noteFinPre, c.tendance, c.tendancePre, c.dateUpdate'; - $portefeuille->dateDerEnvoi = $tabSurv['dateDerEnvoi']; - $tabRet[] = $portefeuille; - - } - - $output = new PortefeuilleReturn(); - $output->error = $error; - $output->result = $tabRet; - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbRepTot; - return $output; - } - - - /** - * rechercheHisto - * @param string $recherche - * @param string $annee - * @param string $typeBod - * @param int $deb - * @param int $nbRep - * @param int $maxRep - * @param bool $pertinence - * @return RechercheHistoReturn - */ - public function rechercheHisto($recherche, $annee='', $typeBod='', $deb=0, $nbRep=20, $maxRep=200, $pertinence=false) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - if (empty($annee)) $annee = ''; - if (empty($typeBod)) $typeBod = ''; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($annee)) $pertinence = false; - $liste = array(); - $index = 'histo'; - - debugLog('I',"rechercheHisto de $recherche ($annee) (Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabFiltres = array(); - - if ($annee<>'' && $annee*1>=1953 && $annee*1<=date('Y')*1) - $tabFiltres = array('annee1'=>$annee); - - /* - require_once 'Metier/sphinx/recherche2.php'; - $ret=search2('histo', "$recherche", $tabFiltresAnnee, $deb, $nbRep, $maxRep, $pertinence); - */ - - if (SPHINX_HISTO_VERSION == 1){ - require_once 'sphinxapi/sphinxapi-0.9.9.php'; - } elseif (SPHINX_HISTO_VERSION == 2){ - require_once 'sphinxapi/sphinxapi-2.1.2.php'; - } - - $cl = new SphinxClient(); - $cl->SetServer (SPHINX_HISTO_HOST, SPHINX_HISTO_PORT); - $cl->SetConnectTimeout ( 1 ); - $cl->SetLimits ($deb, $nbRep, $maxRep); - $cl->SetMatchMode (SPH_MATCH_EXTENDED); - foreach ($tabFiltres as $nomFiltre => $valFiltre) - $cl->SetFilter($nomFiltre, array(0=>$valFiltre)); - $cl->SetRankingMode ( SPH_RANK_PROXIMITY_BM25 ); - $res = $cl->Query ( $recherche, $index ); - - if ($res===false) { - debugLog('I',"Search Sphinx : Pas de réponse pour $recherche avec ".implode(',',$tabFiltres).' ('.$cl->GetLastError() .')',__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $criteres = new RechercheHistoCriteres(); - $criteres->recherche = $recherche; - $criteres->annee = $annee; - - $output = new RechercheHistoReturn(); - $output->criteres = $criteres; - $output->nbReponses = 0; - $output->nbReponsesTotal = 0; - $output->duree = $res[time]; - $output->mots = array(); - $output->reponses = array(); - return $output; - - } - // Le moteur est opérationel - if ( $cl->GetLastWarning() ) { - debugLog('I',"Search Sphinx : Warning pour $recherche - ".$cl->GetLastWarning(),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - //print "WARNING: " . $cl->GetLastWarning() . "\n\n"; - } - - debugLog('I',"'Search Sphinx dans $index de $recherche (Filtre=".implode(',',$tabFiltres)."), Deb=$deb, nbRep=$nbRep, max=$max, any=$any",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet=array(); - if ( is_array($res['matches'])) { - $iDb = new WDB(); - foreach ( $res['matches'] as $doc => $docinfo ) - { - $listeEtab=$iDb->select('histobodacc.bodacc_ocr', - "'Histo' as Loc, id, nomFichier, annee1, bod, texte", - "id=$doc"); - $etab = $listeEtab[0]; - $tabRet[]=array( - 'Localisation' => $etab['Loc'], - 'id' => $doc, - 'Pertinence' => $docinfo['weight'], - 'Fichier' => $etab['nomFichier'], - 'Annee' => $etab['annee1'], - 'Code' => $etab['bod'], - 'Texte' => $etab['texte'], - ); - } - } - debugLog('I','Search Sphinx : Retourne '. $res[total].'/'. $res[total_found] .' en '.$res[time] .'secondes',__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $liste = $tabRet; - $nbTot = $res[total_found]; - $duree = $res[time]; - $tabMots = $res['words']; - - $tabRet = array(); - $k=0; - if(count($liste)>0) { - require_once 'i18n/cleanchar.php'; - foreach ($liste as $n=>$etab) { - $texte = cleanutf8($etab['Texte']); - $pattern = '/[^a-zA-Z0-9\/]+/ '; - $texte = preg_replace($pattern, ' ', $texte); - $posMin=100000; - $hitMin=1000000; - foreach ($tabMots as $mot=>$tabMot) { - if ($tabMot['hits']<$hitMin) { - $hitMin=$tabMot['hits']; - $motSignificatif=$mot; - } - } - $posMin = stripos($texte, ''.$motSignificatif); - if ($posMin<150) $posMin=150; - $texte2 = substr($texte, $posMin-150, 250); - $reponse = new RechercheHistoReponses(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - - //@todo : gestion du lien pour le téléchargement des fichiers bodacc - $file = strtr($etab['Fichier'], array( - '.txt'=>'.pdf', - '/mnt/bodacc/' => '')); - $vieuxWS = false; - if ($vieuxWS) { - $reponse->Fichier = 'http://tville.scores-decisions.com/bodacc/'.$file; - } else { - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $url = '/fichier/bodacc/q/'.base64_encode($file); - $reponse->Fichier = $hostname.$url; - } - $reponse->Annee = $etab['Annee']; - $reponse->Code = $etab['Code']; - $reponse->Texte = $texte2; - $tabRet[] = $reponse; - $k++; - } - } - - $criteres = new RechercheHistoCriteres(); - $criteres->recherche = $recherche; - $criteres->annee = $annee; - - $output = new RechercheHistoReturn(); - $output->criteres = $criteres; - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbTot; - $output->duree = $duree; - $output->mots = array_keys($tabMots); - $output->reponses = $tabRet; - return $output; - } - - /** - * getListeSurveillanceCsv - * @param string $source - * @param string $login - * @param int $idClient - * @return ListeSurveillancesCsvReturn - */ - public function getListeSurveillancesCsv($source='', $login='', $idClient=0) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - if (empty($source)) $source = ''; - if (empty($idClient)) $idClient = 0; - - - debugLog('I',"getListeSurveillancesCsv Début $source $login $idClient",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $iDb = new WDB(); - $strClient = $strLogin = ''; - $exportPtf = false; - switch ($source) - { - case 'insee': - case 'annonces': - case 'bilans': - case 'score': - case 'actes': - case 'privileges': - case 'dirigeants': - break; - case 'portefeuille': - $source='score'; - $exportPtf=true; - break; - default: - $source=''; - break; - } - - if ($source<>'') $strSource = "AND source='$source' "; - else $strSource = ''; - - // Control idClient - if ($idClient==0 || ($idClient!=$this->tabInfoUser['idClient'] && $this->tabInfoUser['profil']!='SuperAdministrateur') ){ - $idClient = $this->tabInfoUser['idClient']; - } - $strClient = "AND u.idClient=$idClient "; - - if ($this->tabInfoUser['profil']=='SuperAdministrateur' || $this->tabInfoUser['profil']=='Administrateur') { - // Surveillances de tous les utilisateurs du client - if (empty($login)) { - $login = ''; - //Surveillances de l'utilisateur - } else { - $strLogin = "AND s.login='$login' "; - } - } else { - //Par défaut préselection de l'utilisateur - $login = $this->tabInfoUser['login']; - $strLogin = "AND s.login='$login' "; - } - - $fichierCsv = DOC_WEB_LOCAL."csv/listesurv-$source-$login-$idClient.csv"; - - if (file_exists($fichierCsv) && - date('Ymd', filemtime($fichierCsv))==date('Ymd') && - filesize($fichierCsv)>60 ) { - $size = filesize($fichierCsv); - $erreur = false; - $tabNom = array(); - $cache = 1; - } else { - unlink($fichierCsv); - if ($source=='score'){ - if ($this->tabInfoUser['typeScore']==20) { - $strScore='v.indiScore20 AS indiScore20'; - $strScorePre='v.indiScore20Pre AS indiScore20Pre'; - } else { - $strScore='v.indiScore AS indiScore100'; - $strScorePre='v.indiScorePre AS indiScore100Pre'; - } - /*v.scoreZ, v.scoreZPre, v.scoreCH, v.scoreCHPre, - v.scoreAfdcc2, v.scoreAfdcc2Pre, v.situFi, v.situFiPre, v.infoNote, v.infoNotePre, - v.noteStruct, v.noteStructPre, v.noteFin, v.noteFinPre, v.tendance, v.tendancePre, */ - $sql="SELECT LOWER(s.login) as loginUti, s.source, s.email, s.siren, s.nic, s.ref, s.dateAjout, - s.rs, s.cp, s.ville, s.dateDerEnvoi, - s.encoursClient, v.actif, v.procol, $strScore, v.encours, v.indiScoreDate, v.dateBilan, - $strScorePre, v.encoursPre, v.indiScoreDatePre, v.sourceModif, v.scoreSolv, v.scoreSolvPre, v.scoreDir, - v.scoreDirPre, v.scoreConf, v.scoreConfPre, - e.cj, e.capital, e.capitalDev, e.ape_entrep, e.tca, e.teff_entrep, - v.dateUpdate - FROM surveillances_site s, sdv1.utilisateurs u, sdv1.clients c, scores_surveillance v, etablissements e - WHERE s.source='score' $strClient $strLogin AND dateSuppr=0 AND s.login=u.login AND u.idClient=c.id AND s.siren=v.siren AND s.siren=e.siren - GROUP BY loginUti, s.siren, s.nic, s.source, s.ref - ORDER BY loginUti ASC, s.siren ASC, s.nic ASC, s.source ASC, s.ref ASC"; - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeSurveillancesCsv($source, $login, $idClient)", $sql); - } else { - $sql="SELECT LOWER(s.login) as loginUti, s.source, s.email, s.siren, s.nic, s.ref, s.dateAjout, - s.rs, s.cp, s.ville, s.dateDerEnvoi - FROM surveillances_site s, sdv1.utilisateurs u, sdv1.clients c - WHERE 1 $strSource $strClient $strLogin AND dateSuppr=0 AND s.login=u.login AND u.idClient=c.id - ORDER BY loginUti ASC, s.siren ASC, s.nic ASC, s.source ASC, s.ref ASC"; - } - debugLog('I',"getListeSurveillancesCsv SQL $sql",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $fp = fopen(DOC_WEB_LOCAL."csv/listesurv-$source-$login-$idClient.sql", 'w'); - fwrite($fp, $sql.EOL); - fclose($fp); - exec("php ".APPLICATION_PATH."/../batch/sql2csv.php jo ".DOC_WEB_LOCAL."csv/listesurv-$source-$login-$idClient.sql $fichierCsv > /dev/null &"); - $size=$cache=0; - } - - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $result = new ListeSurveillancesCsv(); - $result->Url = $hostname.DOC_WEB_URL."csv/listesurv-$source-$login-$idClient.csv"; - $result->Taille = $size; - $result->Cache = $cache; - - debugLog('I','getListeSurveillancesCsv Url='.$hostname.DOC_WEB_URL."csv/listesurv-$source-$login-$idClient.csv, Taille=$size, Cache=$cache",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $output = new ListeSurveillancesCsvReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * getListeJalCollecte - * @return ListeJalCollecteReturn - */ - public function getListeJalCollecte() - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - - $iBodacc = new MBodacc(); - $tabJal = $iBodacc->getListeJalCollecte(); - foreach ($tabJal as $i=>$jal) - { - $jalCollecte = new JalCollecte(); - $jalCollecte->id = $i; - $jalCollecte->nom = $jal; - $tabRet[] = $jalCollecte; - } - $output = new ListeJalCollecteReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * getListeFichierSurv - * @param string $login - * @param string $ref - * @param string $nomFic - * @return ListeFichierSurvReturn - */ - public function getListeFichierSurv($login, $ref='*', $nomFic='') - { - $this->authenticate(); - if (empty($ref)) $ref = '*'; - if (empty($nomFic)) $nomFic = ''; - $error = new ErrorType(); - //debugLog('I',"getListeFichierSurv pour $login, $ref, $nomFic",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabFichier=$tabDates=array(); - $numAbo=substr($ref, 0,5); - if (strtolower($login)=='vwbank') { - $repClient='volkswagen bank'; - $ficClient='surveillanceBodacc_SURBODPRDCFTVWBANK'; - $numAbo=$ref='19300'; - } elseif (substr($login,0,6)=='apicil') { - $repClient='apicil'; - $ficClient='surveillanceBodacc_SURBODPRDCFTAPICIL'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='omni04') { - $repClient='aggm mederic '; - $ficClient='surveillanceBodacc_SURBODPRDFTSOMNIREP'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='bodacca3m') { - $repClient='aggm mederic '; - $ficClient='surveillanceBodacc_SURBODPRDFTSMEDERIC'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='bodaccomni') { - $repClient='aggm mederic '; - $ficClient='surveillanceBodacc_SURBODPRDFTSOMNIREP'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='bodacccrr') { - $repClient='aggm mederic '; - $ficClient='surveillanceBodacc_SURBODPRDFTSCRR'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='cpcambr13' || strtolower($login)=='cpcambr14') { - $repClient='cpcam des bouches du rhône'; - $ficClient='diffusionBodacc_DIFBODPRDMAICPCAM13'; - $numAbo=$ref=''; - } else { - $repClient='cnasea'; - $ficClient='surveillanceBodacc_SURBODTSTFTSCNASEA'; - } - $dh = opendir(DOC_WEB_LOCAL."clients/$repClient/"); - if (!$dh) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic", "Impossible d'ouvrir le dossier '/home/data/clients/$repClient/'"); - $error->errnum = 1; - $error->errmsg = "Impossible d'ouvrir le dossier client"; - } else { - while (false !== ($filename = readdir($dh))) { - if ($filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,42)==$ficClient.$numAbo) { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,43,8); - $tabClients[]=substr($filename,0,42); - } - elseif ($ref=='*' && $filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,37)==$ficClient && substr($filename,37,1)<>'_') { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,43,8); - $tabClients[]=substr($filename,0,42); - } - elseif ($filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,37)==$ficClient && substr($filename,37,1)=='_' && $repClient=='apicil') { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,38,8); - $tabClients[]=substr($filename,0,37); - } - elseif ($filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,38)==$ficClient && substr($filename,38,1)=='_' && $repClient=='aggm mederic ') { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,39,8); - $tabClients[]=substr($filename,0,38); - } - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic : fichier lu '$filename'", "Fichier lu '$filename'"); - } - /** Tableau des noms de fichier **/ - sort($tabFichier); - /** Tableau des dates de livraisons **/ - $tabDates=array_unique($tabDates); - sort($tabDates); - /** Tableau des Clients **/ - $tabClients=array_unique($tabClients); - sort($tabClients); - //return array('error'=>array('errnum'=>0, 'errmsg'=>''), 'results'=>$tabDates); - - /*@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic", - "Fichiers :".EOL. - print_r($tabFichier, true). - "Dates:".EOL. - print_r($tabDates, true). - "Clients :".EOL. - print_r($tabClients, true) - );*/ - - if ($ref=='*') { - $tabFichier = array(); - // Boucle sur les dates de livraison - foreach ($tabDates as $dateFic) { - if (strlen($dateFic)<>8) continue; - if (!file_exists(DOC_WEB_LOCAL."clients/$repClient/$ficClient".'_'."$dateFic.csv") || - filesize(DOC_WEB_LOCAL."clients/$repClient/$ficClient".'_'."$dateFic.csv")==0) { - - $fpW=fopen(DOC_WEB_LOCAL."clients/$repClient/$ficClient".'_'."$dateFic.csv",'w'); - $entete=true; - // Boucle afin de vérifier si on est sur le bon client - foreach ($tabClients as $nomClient) { - $dh = opendir(DOC_WEB_LOCAL."clients/$repClient/"); - while (false !== ($filename = readdir($dh))) { - if (substr($filename,0,51)==$nomClient.'_'.$dateFic && substr($filename,-4)=='.csv') { - $fichier=$filename; - //break; - } - } - $fpR=fopen(DOC_WEB_LOCAL."clients/$repClient/$fichier",'r'); - //return array('error'=>array('errnum'=>0, 'errmsg'=>''), 'results'=>array(($fichier)));//die; - if ($fpR) { - while (!feof($fpR)) { - $ligne=trim(fgets($fpR)); - if (substr($ligne,0,5)=='Siren' && $entete==true) { - fwrite($fpW, 'SITE;'.$ligne.EOL); - $entete=false; - } - elseif (substr($ligne,0,5)<>'Siren' && trim($ligne)<>'') { - fwrite($fpW, strtr($nomClient, array('surveillanceBodacc_SURBODTSTFTS'=>'', - 'surveillanceBodacc_SURBODPRDCFT'=>'')).';'.$ligne.EOL); - } - } - fclose($fpR); - } - } - fclose($fpW); - } - if (strlen($dateFic)==8) - $tabFichier[]=$ficClient.'_'.$dateFic.'.csv'; - } - } - rsort($tabFichier); - - if ($nomFic<>'') { - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, /home/data/clients/$repClient/$nomFic", 'Avant BZ2'); - if (!file_exists(DOC_WEB_LOCAL."/csv/$nomFic.bz2") || - filesize(DOC_WEB_LOCAL."/csv/$nomFic.bz2")<=14) { - $string=file_get_contents("/home/data/clients/$repClient/$nomFic"); - if ($string===false) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic", "Ouverture impossible du fichier '/home/data/clients/$repClient/$nomFic'"); - } - $bz = bzopen(DOC_WEB_LOCAL."/csv/$nomFic.bz2",'w'); - if ($bz) { - bzwrite($bz, $string, strlen($string)); - bzclose($bz); - } - } /*else - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, /home/data/clients/$repClient/$nomFic", 'Sans BZ2'); - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, /home/data/clients/$repClient/$nomFic", 'Après BZ2'); - */ - } - debugLog('I',"getListeFichierSurv pour $login, $ref, $nomFic : nb fichiers=".count($tabFichier),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $result = array(); - foreach($tabFichier as $fichier){ - $retFichier = new ListeFichierSurv(); - $retFichier->UrlFichier = $hostname.'/data/csv/'.$fichier; - $result[] = $retFichier; - } - } - $output = new ListeFichierSurvReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Geocodage d'une adresse - * @param string $adresse - * @param string $cp - * @param string $ville - * @param string $pays - * @return GeoCodeReturn - */ - public function geoCode($adresse, $cp, $ville, $pays='France') - { - $this->authenticate(); - - $ligne = date('YmdHis').";$siren;MMap AVANT"; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - - $mMap = new MMap($adresse, $cp, $ville, $pays); - - $ligne=date('YmdHis').";$siren;MMap APRES"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - - $geocode = new GeoCode(); - $geocode->latitude = $mMap->latitudeDec; - $geocode->longitude = $mMap->longitudeDec; - $geocode->precis = $mMap->precision; - $geocode->adresseValidee = $mMap->adresseValidee; - $geocode->latitudeDeg = $mMap->latitudeDeg; - $geocode->longitudeDeg = $mMap->longitudeDeg; - - $output = new GeoCodeReturn(); - $output->error = $error; - $output->result = $geocode; - } - - /** - * Recherche d'entreprise par leur actionnaire - * @param string $nom Raison sociale / Nom de l'actionnaire (obligatoire) - * @param string $cpVille CP, Ville - * @param string $siren Siren de l'actionnaire - * @param string $pays Pays de l'actionnaire - * @param string $pctMin Niveau de détention Minimam de l'actionnaire - * @param string $pctMax Niveau de détention Maximum de l'actionnaire - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur les noms et prénoms (si true) - * @return SearchActReturn - */ - public function searchAct($nom, $cpVille='', $siren=0, $pays='', $pctMin=0, $pctMax=100, $deb=0, $nbRep=20, $maxRep=200, $pertinence=false) - { - debugLog('I',"Recherche Actionnaire de $nom, $cpVille (Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (!empty($pays)){ - $wdb = new WDB('jo'); - $result = $wdb->select('tabPays', 'codPays3', "libPays LIKE '".$pays); - if (count($result>0)){ - $pays = $result[0]['codPays3']; - } else { - $pays = ''; - } - } - - if (empty($cpVille)) $cpVille = ''; - if (empty($siren)) $siren = ''; - if (empty($pctMin)) $pctMin = 0; - if (empty($pctMax)) $pctMax = 100; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($pertinence)) $pertinence = false; - - $mLiens = new MLiens(''); - // rechercheActionnaire($nom, $cpVille, $siren, $pays, $pctMin, $pctMax, $deb, $nbRep, $maxRep, $pertinence) - $etabs = $mLiens->rechercheActionnaire($nom, $cpVille, $siren, $pays, $pctMin, $pctMax, $deb, $nbRep, $maxRep, $pertinence); - - $iInsee = new MInsee(); - - $tabRet = array(); - foreach ($etabs['reponses'] as $etab) { - $act = new EntrepriseActItem(); - $act->id = $etab['id']; - $act->Pertinence = $etab['Pertinence']; - $act->Siret = $etab['Siret']; - $act->Siege = $etab['Siege']; - $act->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $act->Nom2 = prepareString($etab['Nom2']); - $act->Sigle = prepareString($etab['Sigle']); - $act->Enseigne = prepareString($etab['Enseigne']); - $act->Adresse = prepareString($etab['Adresse']); - $act->Adresse2 = prepareString($etab['Adresse2']); - $act->CP = $etab['CP']; - $act->Ville = prepareString($etab['Ville']); - $act->Tel = $etab['Tel']; - $act->Fax = $etab['Fax']; - $act->FJ = $etab['FJ']; - $act->FJLib = prepareString($iInsee->getLibelleFJ($etab['FJ'])); - $act->Siren = $etab['Siren']; - $act->Nic = $etab['Nic']; - $act->Actif = $etab['Actif']; - $act->NafEtab = $etab['NafEtab']; // Etablissement - $act->NafEtabLib = prepareString($iInsee->getLibelleNaf($etab['NafEtab'])); // Etablissement - $act->NafEnt = $etab['NafEnt']; // Entreprise - $act->NafEntLib = prepareString($iInsee->getLibelleNaf($etab['NafEnt'])); - $act->ActNomRs = $etab['ActNomRs']; - $act->ActPays = $etab['ActPays']; - $act->ActDateLien = $etab['ActDateLien']; - $act->ActActif = $etab['ActActif']; - $act->ActPmin = $etab['ActPmin']; - $tabRet[] = $act; - } - - $output = new SearchActReturn(); - $output->nbReponses = $etabs['nbReponses']; - $output->nbReponsesTotal = $etabs['nbReponsesTotal']; - $output->result = $tabRet; - - if ($tabRet['nbReponses']==0) { - debugLog('W', "Aucun résultat pour cette recherche !", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - } - - return $output; - } - - /** - * Commande d'une enquête sur une entreprise en France ou à l'Internationale - * @param string $siren - * @param string $infoEnq Informations pour la demande d'enquête
        - * InfoEnq[Entrep][Tel]
        - * InfoEnq[Entrep][Fax]
        - * InfoEnq[Entrep][AutreTel]
        - * InfoEnq[Entrep][Mail]
        - * InfoEnq[Entrep][AutreMail]
        - * InfoEnq[Entrep][Web]
        - * InfoEnq[Entrep][Rib][Banque]
        - * InfoEnq[Entrep][Rib][Guichet]
        - * InfoEnq[Entrep][Rib][Compte]
        - * InfoEnq[Entrep][Rib][Cle]
        - * InfoEnq[Encours]
        - * InfoEnq[NbEcheances]
        - * InfoEnq[AvisAssureur]
        - * InfoEnq[Type]
        - * InfoEnq[Delai]
        - * InfoEnq[PrecisionsChoix]
        - * InfoEnq[Precisions][MontantCA]
        - * InfoEnq[Precisions][Motif]
        - * InfoEnq[Precisions][Autre]
        - * InfoEnq[Anciennete]
        - * InfoEnq[AncienneteDuree]
        - * InfoEnq[ImpayeesChoix]
        - * InfoEnq[Impayees][Montant]
        - * InfoEnq[Impayees][Nombre]
        - * InfoEnq[Impayees][Date]
        - * InfoEnq[RetardPaiementChoix]
        - * InfoEnq[RetardPaiement][Montant]
        - * InfoEnq[RetardPaiement][Nombre]
        - * InfoEnq[RetardPaiement][Date]
        - * InfoEnq[LitigeChoix]
        - * InfoEnq[Litige][Precisions]
        - * InfoEnq[Observation]
        - * @param string $infoDemande Informations sur l'utilisateur
        - * InfoUser[Profil]
        - * InfoUser[ProfilAutre]
        - * InfoUser[Identite]
        - * InfoUser[Tel]
        - * InfoUser[Fax]
        - * InfoUser[Email]
        - * InfoUser[Ref]
        - * @return CommandeEnqueteReturn - */ - public function commandeEnquete($siren, $infoEnq, $infoDemande) - { - $this->authenticate(); - //Initialisation - $infoEnq = json_decode($infoEnq); - $infoDemande = json_decode($infoDemande); - - $mail = trim($infoDemande['Email']); - if ($mail=='') { - $mail=$this->tabInfoUser['email']; - } - - $tabInsert = array( - 'idUser' => $this->tabInfoUser['id'], - 'source' => 'intersud', // 'greffes', 'asso', 'graydon' - 'login' => $tabInfoUser['login'], - 'emailCommande' => $mail, - 'siren' => $siren, - 'refDocument' => serialize($infoDemande), - 'refCommande' => serialize($infoEnq), - 'dateCommande' => DATETIME, - // 'idClient'=> $tabInfoUser['idClient'], - ); - debugLog('I',"Intersud, début commande sur $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $messageInfo = print_r($infoEnq, 1).EOL.print_r($infoDemande,1).EOL; - - $idClient = $this->tabInfoUser['idClient']; - - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients', ' nom, racineLogin, InterSudLogin, InterSudPass', "id='$idClient'", false, MYSQL_ASSOC); - $login = trim($rep[0]['InterSudLogin']); - $pass = trim($rep[0]['InterSudPass']); - $nomClient = trim(strtoupper($rep[0]['nom'])); - $strInfoCommande = "NOM et Prénom du client demandeur : ".$infoDemande['Identite'].EOL; - $strInfoCommande.= "Email du client demandeur : $mail".EOL; - $strInfoCommande.= "Tel/Fax du demandeur : ".$infoDemande['Tel'].' / '.$infoDemande['Fax'].EOL; - $strInfoCommande.= "Profil du demandeur : ".trim($infoDemande['Profil'].' '.$infoDemande['ProfilAutre']).EOL; - $typeEnqLog='enqueteDemNF'; - - if ($login=='' || $pass=='') { - /** Il ne s'agit pas d'un client final, on anonymise la commande **/ - $login='YLENA'; // Demandes en test - $pass='WYLFE'; - $nomClient=$strInfoCommande=''; - $typeEnqLog='enqueteDem'; - /* ENQUETES EN PROD - $login='FACTURE'; - $pass='AWKROM'; - */ - } - - /** Connexion à l'Extranet Intersud **/ - $url = 'http://www.intersud.fr/espace_client/espace_client.php'; - $cookie = $referer = ''; - $tabPost = array( - 'login' => $login, - 'pwd' => $pass, - ); - $tdeb = microtime(true); - $page = getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Connexion impossible à la plateforme Intersud".EOL.$strInfoCommande); - //wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - throw new SoapFault('1',"Connexion impossible à la plateforme d'enquêtes"); - } - - $tfin = microtime(true); - $duree = $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - $cookie = $page['header']['Set-Cookie']; - $intersudNomPrenom=$intersudRaisonSociale=''; - if (preg_match('/(.*)<\/td>/Uis',$body,$matches)) - $intersudNomPrenom=trim($matches[1]); - if (preg_match('/(.*)<\/td>/Uis',$body,$matches)) - $intersudRaisonSociale=trim($matches[1]); - debugLog('I',"Intersud, connexion via $login pour $intersudRaisonSociale ($intersudNomPrenom, cookie=$cookie)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - /* - $fp=@fopen(LOG_PATH."/intersud.log", "a"); - @fwrite($fp, EOL.DATETIME.EOL.print_r($page,true).'========================================================================================================='.EOL.EOL); - @fclose($fp); - die(); - */ - /** Page formulaire de demande d'enquête **/ - $url='http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, '', $referer, false, '', '', 7); - if ($page['code']<>200) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Connexion impossible au formulaire d'enquête Intersud".EOL.$strInfoCommande); - throw new SoapFault('2',"Connexion impossible à la plateforme d'enquêtes"); - } - - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - - $fp=@fopen(LOG_PATH.'/intersud.log', "a"); - @fwrite($fp, print_r($page,true)); - @fclose($fp); - $tabInterSud=array(); - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[2][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[1][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - $ref_exp=$tabInterSud['ref_exp']; - $email_exp=$tabInterSud['email_exp']; - $tel_exp=$tabInterSud['tel_exp']; - debugLog('I',"Intersud, formulaire enquête ref $ref_exp, $email_exp, $tel_exp",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $fp=@fopen(LOG_PATH.'/intersud.log', "a"); - @fwrite($fp, print_r($matches,true)); - @fwrite($fp, print_r($tabInterSud,true)); - @fclose($fp); - - /** Insertion de la commande en base **/ - $ret = $iDbCrm->insert('commandes', $tabInsert, true); - $comment = "Référence de la commande chez Scores et Décisions : i$ret - ".DATETIME." - Date et heure de la commande : ".date('d/m/Y - H:i')." - Origine de la commande : $nomClient - $strInfoCommande - - CA : ".$infoEnq['Precisions']['MontantCA']." - Motif de la demande : ".trim($infoEnq['Precisions']['Motif'].' '.$infoEnq['Precisions']['Autre'])." - Type de la demande : ".$infoEnq['Precisions']['Type']." - Anciennete de la relation : ".$infoEnq['Anciennete'].' '.$infoEnq['AncienneteDuree']." - Observations : ".$infoEnq['Observation'].EOL; - - if ($infoEnq['ImpayeesChoix']<>'non') - $comment.="Impayé(s) : ".$infoEnq['Impayees']['Nombre']." impayé(s) pour un montant de ".$infoEnq['Impayees']['Montant']." en date du ".$infoEnq['Impayees']['Date'].EOL; - - if ($infoEnq['RetardPaiementChoix']<>'non') - $comment.="Retard(s) de paiement : ".$infoEnq['RetardPaiement']['Nombre']." retard(s) pour un montant de ".$infoEnq['RetardPaiement']['Montant']." en date du ".$infoEnq['RetardPaiement']['Date'].EOL; - - if ($infoEnq['LitigeChoix']<>'non') - $comment.="Présence de litige(s) : ".$infoEnq['Litige']['Precisions'].EOL; - - $enqType=0; - $enqDelai=7; - switch (strtolower($infoEnq['Type'])) { - case 'premier': $enqType=0; $enqDelai=6; break; - case 'gold': $enqType=1; break; - case 'distrimat': $enqType=2; break; - case 'star': $enqType=3; break; - case 'avis_bancaire': $enqType=4; break; - case 'autre': $enqType=5; break; - } - - /** Ajout du RIB si communiqué **/ - if (@trim(implode(' ', $infoEnq['Entrep']['Rib']))<>''){ - $iDbCrm->insert('banques', array( - 'siren' => $siren, - 'libBanqueGuichet' => '', - 'precis' => 1, - 'codeBanque' => $infoEnq['Entrep']['Rib']['Banque'], - 'codeGuichet' => $infoEnq['Entrep']['Rib']['Guichet'], - 'numCompte' => $infoEnq['Entrep']['Rib']['Compte'].$infoEnq['Entrep']['Rib']['Cle'], - 'dateSource' => DATETIME, - ), true); - } - - /** Remplissage du formulaire d'enquête pour soumission à Intersud **/ - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren); - $tabPost = array( - 'soc' => $tabIdentite['Nom'], - 'cible_enk' => 9, // 9 - 'siret' => $siren, - 'acti' => '', - 'soc_exp' => $tabInterSud['soc_exp'], - 'type_enk' => $enqType, // 0=Premier, 1=Gold, 2=Distrimat, 3=Star, 4=Avis bancaire, 5=Autre - 'nom_diri' => '', - 'adr' => $tabIdentite['Adresse'], - 'ref_exp' => $tabInterSud['ref_exp'], - 'autre_type_enk' => '', // Texte libre - 'adr2' => $tabIdentite['Adresse2'], - 'delai_enk' => $enqDelai, // 6=24h, 7=72h, 8=+de5jours - 'ville' => $tabIdentite['Ville'], - 'cp' => $tabIdentite['CP'], - 'pays' => '', // International ? - 'nom_exp' => $tabInterSud['nom_exp'], - 'tel' => $tabIdentite['Tel'], - 'port' => $infoEnq['Entrep']['AutreTel'], - 'tel_exp' => $tabInterSud['tel_exp'], - 'bank' => trim(implode(' ', $infoEnq['Entrep']['Rib'])), - 'int_enk' => $tabInterSud['int_enk'], // International ? - 'encours' => $infoEnq['Encours'], - 'nb_ech' => $infoEnq['NbEcheances'], - 'delai2_enk' => $tabInterSud['delai2_enk'], // International ? - 'email_exp' => $tabInterSud['email_exp'], - 'cred' => '', - 'comment' => urlencode($comment), - 'val_ret' => $tabInterSud['val_ret'], - ); - $url = 'http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Validation impossible du formulaire d'enquête Intersud".EOL.$strInfoCommande); - throw new SoapFault('3',"Connexion impossible à la plateforme d'enquêtes"); - } - - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - - $output = new CommandeEnqueteReturn(); - $output->siren = $siren; - $output->emailCommande = $mail; - $output->dateCommande = DATETIME; - $output->refCmde = 'i'.$ret; - - //$strInfoCommande $mail - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Commande d'enquete sur $siren", $comment.EOL.EOL.'---------------------------------'.EOL.$messageInfo.EOL.EOL.'---------------------------------'.EOL.$body); - @sendMail('production@scores-decisions.com', $mail, "Votre demande d'enquete sur ".$tabIdentite['Nom']." ($siren)", "Votre demande d'enquête sur la société ".$tabIdentite['Nom']." a été prise en compte sous la référence i$ret - ".DATETIME); - wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - - /** Gestion de la déconnexion **/ - $url = 'http://intersud.fr/espace_client/index.php?code_ret=9'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, '', $referer, false, '', '', 7); - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - - $ret = $iDbCrm->update('commandes', array('dureeCommande'=>round($duree,3)), "idCommande=$ret"); - - return $output; - } - - /** - * Retourne l'ensemble des informations des dirigeants opérationnels (non statutaires) de l'entreprise - * @param string $siren Siren de l'entreprise - * @return DirigeantOp[] - */ - public function getDirigeantsOp($siren) - { - $this->authenticate(); - - debugLog('I',"Dirigeants opérationnels demandés pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($siren)>9 || (substr($siren,0,9)*1)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $dirs = $iInsee->getDirigeantsOp($siren); - $tabRet = array(); - if (count($dirs)>0){ - foreach ($dirs as $nb => $dir) { - $objet = new DirigeantOp(); - $objet->Code = $dir['Fonction']; - $objet->Titre = prepareString($dir['Titre']); - $objet->Societe = prepareString($dir['Societe']); - $objet->Civilite = prepareString($dir['Civilite']); - $objet->Nom = prepareString($dir['Nom']); - $objet->Prenom = prepareString($dir['Prenom']); - $objet->NomUsage = prepareString($dir['NomUsage']); - $objet->NaissDate = $dir['NaissDate'];// 07/09/1961 - $objet->NaissVille = prepareString($dir['NaissVille']); // LE RUSSEY - $objet->NaissDepPays = prepareString($dir['NaissDepPays']); // LE RUSSEY - $objet->Ancien = $dir['Ancien']; - $objet->DateFct = $dir['DateFct']; - - $tabRet[] = $objet; - } - } - $this->wsLog('dirigeantsOp', $siren); - debugLog('I', 'Nb Dirigeants Op retournés = '. count($dirs), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - return $tabRet; - } - - /** - * Liste de tous les dépôts enregistrés à l'INPI pour une entreprise - * @param string $siren Siren de l'entreprise - * @return Depot[] - */ - public function getListeDepots($siren) - { - $this->authenticate(); - - debugLog('I',"Liste des dépots INPI pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($siren)>9 || (substr($siren,0,9)*1)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iRncs=new MRncs(); - $evens=$iRncs->getListeDepots($siren); - $tabRet = array(); - if (count($evens)>0){ - foreach ($evens as $nb=>$even){ - $objet = new Depot(); - $objet->CodeDepot = $even['codDepot']; - $objet->LibDepot = prepareString($even['libDepot']); - $objet->DateDepot = $even['datDepot']; - $objet->RefDepot = $even['refDepot']; - $objet->DateRncs = $even['datRncs']; - $objet->DateMAJ = $even['datSed']; - - $tabRet[] = $objet; - } - } - debugLog('I', 'Nb dépôts retournés = '. count($tabRet), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - return $tabRet; - } - - - /** - * Enter description here ... - * @param string $siret - * @param integer $id - * @return IdentiteLight - */ - public function getIdentiteLight($siret, $id = 0) - { - $this->authenticate(); - - //Initialisation - if (empty($id)) { - $id = 0; - } - - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if ($siren*1==0 && $id==0) { - $this->sendError('1010'); - } - if ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren, $nic, $id); - - $output = new IdentiteLight(); - $output->id = $tabIdentite['id']; - $output->Siret = $tabIdentite['Siret']; - $output->Siege = $tabIdentite['Siege']; - $output->Nom = $tabIdentite['Nom']; - $output->Tribunal = $tabIdentite['Tribunal']; - $output->Sigle = $tabIdentite['Sigle']; - $output->Enseigne = $tabIdentite['Enseigne']; - $output->Adresse = $tabIdentite['Adresse']; - $output->Adresse2 = $tabIdentite['Adresse2']; - $output->AdresseNum = $tabIdentite['AdresseNum']; - $output->AdresseBtq = $tabIdentite['AdresseBtq']; - $output->AdresseVoie = $tabIdentite['AdresseVoie']; - $output->AdresseRue = $tabIdentite['AdresseRue']; - $output->CP = $tabIdentite['CP']; - $output->Ville = $tabIdentite['Ville']; - $output->Tel = $tabIdentite['Tel']; - $output->Fax = $tabIdentite['Fax']; - $output->FJ = $tabIdentite['FJ']; - $output->FJ_Lib = $tabIdentite['FJ_lib']; - $output->Siren = $tabIdentite['Siren']; - $output->Nic = $tabIdentite['Nic']; - $output->Actif = $tabIdentite['Actif']; - $output->NafEtab = $tabIdentite['NafEtab']; - $output->NafEnt = $tabIdentite['NafEnt']; - $output->NafEntLib = $tabIdentite['NafEntLib']; - $output->NafEtabLib = $tabIdentite['NafEtabLib']; - $output->AutreId = $tabIdentite['AutreId']; - $output->Source = $tabIdentite['Source']; - $output->SourceId = $tabIdentite['SourceId']; - $output->Dept = $tabIdentite['Dept']; - $output->codeCommune = $tabIdentite['codeCommune']; - $output->Capital = $tabIdentite['Capital']; - $output->CapitalDev = $tabIdentite['CapitalDev']; - $output->TrancheCA = $tabIdentite['TrancheCA']; - $output->TrancheCALib = $tabIdentite['TrancheCALib']; - $output->EffEnTr = $tabIdentite['EffEnTr']; - $output->EffEnTrLib = $tabIdentite['EffEnTrLib']; - $output->EffEtTr = $tabIdentite['EffEtTr']; - $output->EffEtTrLib = $tabIdentite['EffEtTrLib']; - return $output; - } - - /** - * Retourne les éléments du groupes - * @param string $siren - * @param int $pctMin (33, 40 ,50) - * @param int $nbNiveaux - * @return string - */ - public function getGroupesArbo($siren, $pctMin=33, $nbNiveaux=10) - { - $this->authenticate(); - - if ( empty($pctMin) || !in_array($pctMin, array(33, 40, 50)) ) { $pctMin = 33; } - if ( empty($nbNiveaux) ) { $nbNiveaux = 10; } - - if ( strlen($siren)!=9 || intval($siren)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - require_once 'Metier/partenaires/classMLiens.php'; - $liens = new MLiens($siren); - $retour = $liens->getArborescence($siren, $pctMin, $nbNiveaux); - - $this->wsLog('groupesarbo', $siren); - return json_encode($retour); - } - - - /** - * Retourne les information du groupe, tête de pont - * @param string $siren - * @return GroupeInfos - */ - public function getGroupeInfos($siren) - { - $this->authenticate(); - - if ( strlen($siren)!=9 || intval($siren)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iDb = new WDB('jo'); - $tmp = $iDb->select('etablissements_act', - 'raisonSociale, enseigne, sigle, identite_pre, adr_num, adr_btq, adr_typeVoie, adr_libVoie, adr_comp, adr_cp, adr_ville, adr_dep, adr_com, tel, fax, siren, sirenGrp', - "siren=(SELECT distinct sirenGrp FROM etablissements_act WHERE siren=$siren AND siege=1) LIMIT 0,1", false, MYSQL_ASSOC); - $tabEnt = $tmp[0]; - - $sirenGrp = $tabEnt['siren']; - - if ($sirenGrp<1000) { - throw new SoapFault('Error', 'Aucun siren de groupe'); - } - - /** Table des Nafs5 => Secteurs **/ - $tmp = $iDb->select('tabNaf5', 'codNaf2, codNaf1', '1 GROUP BY codNAf2', false, MYSQL_ASSOC); - $tabNAf2 = array(); - foreach ($tmp as $tmp2) { - $tabNAf2[$tmp2['codNaf2']]=$tmp2['codNaf1']; - } - - $tabNaf2Lib = array( - 'A'=>'Agriculture, sylviculture et pêche', - 'B'=>'Industries extractives', - 'C'=>'Industrie manufacturière', - 'D'=>'Production et distribution d\'électricité, de gaz, de vapeur et d\'air conditionné', - 'E'=>'Production et distribution d\'eau ; assainissement, gestion des déchets et dépollution', - 'F'=>'Construction', - 'G'=>'Commerce ; réparation d\'automobiles et de motocycles', - 'H'=>'Transports et entreposage', - 'I'=>'Hébergement et restauration', - 'J'=>'Information et communication', - 'K'=>'Activités financières et d\'assurance', - 'L'=>'Activités immobilières', - 'M'=>'Activités spécialisées, scientifiques et techniques', - 'N'=>'Activités de services administratifs et de soutien', - 'O'=>'Administration publique', - 'P'=>'Enseignement', - 'Q'=>'Santé humaine et action sociale', - 'R'=>'Arts, spectacles et activités récréatives', - 'S'=>'Autres activités de services', - 'T'=>'Activités des ménages en tant qu\'employeurs ; activités indifférenciées des ménages en tant que producteurs de biens et services pour usage propre', - 'U'=>'Activités extra-territoriales', - ); - - $iInsee = new MInsee(); - $tabId = $iInsee->getIdentiteEntreprise($sirenGrp); - - //Chargement retour - $output = new GroupeInfos(); - $output->grpNom = $tabEnt['raisonSociale']; - $output->grpEnseigne = $tabEnt['enseigne']; - $output->grpSigle = $tabEnt['sigle']; - $output->grpAdrNum = $tabEnt['adr_num']; - $output->grpAdrBtq = $tabEnt['adr_btq']; - $output->grpAdrTypeVoie = $tabEnt['adr_typeVoie']; - $output->grpadrLibVoie = $tabEnt['adr_libVoie']; - $output->grpAdrComp = $tabEnt['adr_comp']; - $output->grpAdrCP = $tabEnt['adr_cp']; - $output->grpAdrVille = $tabEnt['adr_ville']; - $output->grpAdrDep = $tabEnt['adr_dep']; - $output->grpAdrCom = $tabEnt['adr_com']; - $output->grpTel = $tabEnt['tel']; - $output->grpFax = $tabEnt['fax']; - $output->grpSiren = $tabEnt['siren']; - $output->grpTva = $tabId['TvaNumero']; - $output->grpIsin = $tabId['Isin']; - $output->grpNumRC = $tabId['numRC']; - $output->grpTribunal = $tabId['TribunalLib']; - $output->grpWeb = $tabId['Web']; - - $grpNbEnt = $grpEffectif = $grpCAExp = $grpCA = $nbProcol = 0; - $grpDateCrea = $grpDateImmat = date('Ymd'); - - $tmp = $iDb->select('jo.etablissements_act e', - 'e.siren, e.eff_entrep, e.dateCrea_ent AS dateCrea, e.dateImmat*1 AS dateImmat, e.bilFK, e.bilFL, e.bilYP, e.ape_entrep, e.avisCs, e.procolHisto', - "e.sirenGrp=$sirenGrp AND e.siege=1", false, MYSQL_ASSOC); - - $tabSirenGrp = array(); - $tabSecteur = array(); - $tabAvis = array(); - if ( count($tmp)>0 ) { - foreach ($tmp as $tabEnt) - { - $tabSirenGrp[] = $tabEnt['siren']; - $grpNbEnt++; - - if ($tabEnt['bilYP']>$tabEnt['eff_entrep']) - $grpEffectif+=$tabEnt['bilYP']; - else - $grpEffectif+=$tabEnt['eff_entrep']; - - if ($tabEnt['procolHisto']*1==1) $nbProcol++; - - if ($grpDateCrea>$tabEnt['dateCrea'] && $tabEnt['dateCrea']>=19000101) - $grpDateCrea=$tabEnt['dateCrea']; - - if ($grpDateImmat>$tabEnt['dateImmat'] && $tabEnt['dateImmat']>=19000101) - $grpDateImmat=$tabEnt['dateImmat']; - - $grpCAExp+=$tabEnt['bilFK']; - $grpCA+=$tabEnt['bilFL']; - - $tabSecteur[$tabNAf2[''.substr($tabEnt['ape_entrep'],0,2)]]['nb']++; - $tabSecteur[$tabNAf2[''.substr($tabEnt['ape_entrep'],0,2)]]['ca']+=$tabEnt['bilFL']; - $tabSecteur[$tabNAf2[''.substr($tabEnt['ape_entrep'],0,2)]]['eff']+=$tabEnt['eff_entrep']; - - $tabAvis[$tabEnt['avisCs']]++; - } - } - $output->grpNbProcolHisto = $nbProcol; - $output->grpCAExport = $grpCAExp; - $output->grpCA = $grpCA; - - if ($grpCA>=500000000) - $output->grpGrandGroupeFr=1; - else - $output->grpGrandGroupeFr=0; - - $output->grpNbEntrep = $grpNbEnt; - $output->grpEffectif = $grpEffectif; - - $output->grpAnneCreation = ''; - if ($grpDateCrea<$grpDateImmat) - $output->grpAnneCreation = substr($grpDateCrea,0,4); - else - $output->grpAnneCreation = substr($grpDateImmat,0,4); - - //@todo : transformer le tableau - $output->avisCs = json_encode($tabAvis); // Vérifier les procol - - $tabSecteur2 = array(); - if ( count($tabSecteur)>0 ) { - foreach ($tabSecteur as $secteur=>$tmp) { - $info = new GroupeInfosSecteur(); - $info->code = $secteur; - $info->lib = $tabNaf2Lib[$secteur]; - $info->entrepNb = $tmp['nb']; - $info->entrepTx = round($tmp['nb']*100/$grpNbEnt,2); - $info->caNb = $tmp['ca']; - $info->caTx = round($tmp['ca']*100/$grpCA,2); - $info->effNb = $tmp['eff']; - $info->effTx = round($tmp['eff']*100/$grpEffectif,2); - $tabSecteur2[] = $info; - } - } - $output->secteur = $tabSecteur2; //@todo : transformer le tableau - - $this->wsLog('groupeinfos', $siren); - return $output; - } - - -} \ No newline at end of file diff --git a/library/WsScore/Interne/v0.4/Types.php b/library/WsScore/Interne/v0.4/Types.php deleted file mode 100644 index f1e79639..00000000 --- a/library/WsScore/Interne/v0.4/Types.php +++ /dev/null @@ -1,1858 +0,0 @@ - Pieces - -class CmdFiltrePieces -{ - /** @var string */ - public $raisonSociale; - /** @var string */ - public $siren; - /** @var string */ - public $demandeurReference; - /** @var boolean */ - public $fermee = false; -} - -class ListeCmdPiecesReturn -{ - /** @var ErrorType */ - public $error; - /** @var int */ - public $nbCommandes; - /** @var CmdPiecesDetail[] */ - public $liste; -} - -class CmdPiecesReturn -{ - /** @var ErrorType */ - public $error; - /** @var CmdPiecesDetail */ - public $commande; -} - -class CmdPiecesDetail -{ - /** @var InfoCommandePieces */ - public $infoCommande; - /** @var InfosDemandeur */ - public $infosDemandeur; - /** @var RefCommande */ - public $refCommande; -} - -class InfoCommandePieces -{ - /** @var string */ - public $siren; - /** @var bool */ - public $privSecu; - /** @var bool */ - public $privTres; - /** @var bool */ - public $nantFond; - /** @var bool */ - public $nantVend; - /** @var bool */ - public $declCrea; - /** @var bool */ - public $nantCompl; -} - -//===> Bilan - -class ListeCmdBilanReturn -{ - /** @var ErrorType */ - public $error; - /** @var int */ - public $nbCommandes; - /** @var CmdBilanDetail[] */ - public $liste; -} - -class CmdBilanReturn -{ - /** @var ErrorType */ - public $error; - /** @var CmdBilanDetail */ - public $commande; -} - -class CmdBilanDetail -{ - /** @var InfoCommandeBilan */ - public $infoCommande; - /** @var InfosDemandeur */ - public $infosDemandeur; - /** @var RefCommande */ - public $refCommande; -} - -class InfoCommandeBilan -{ - /** @var string */ - public $siren; - /** @var string */ - public $waldec; - /** @var int */ - public $idEntreprise; - /** @var string */ - public $mode; - /** @var string */ - public $dateCloture; - /** @var string */ - public $type; -} - -//===> Acte - -class ListeCmdActeReturn -{ - /** @var ErrorType */ - public $error; - /** @var int */ - public $nbCommandes; - /** @var CmdActeDetail[] */ - public $liste; -} - -class CmdActeReturn -{ - /** @var ErrorType */ - public $error; - /** @var CmdActeDetail */ - public $commande; -} - -class CmdActeDetail -{ - /** @var InfoCommandeActe */ - public $infoCommande; - /** @var InfosDemandeur */ - public $infosDemandeur; - /** @var RefCommande */ - public $refCommande; -} - -class InfoCommandeActe -{ - /** @var string */ - public $siren; - /** @var int */ - public $idEntreprise; - /** @var string */ - public $mode; - /** @var string */ - public $depotNum; - /** @var string */ - public $acteNum; -} - -//===> Kbis - -class ListeCmdKbisReturn -{ - /** @var ErrorType */ - public $error; - /** @var int */ - public $nbCommandes; - /** @var CmdKbisDetail[] */ - public $liste; -} - -class CmdKbisReturn -{ - /** @var ErrorType */ - public $error; - /** @var CmdKbisDetail */ - public $commande; -} - -class CmdKbisDetail -{ - /** @var InfoCommandeKbis */ - public $infoCommande; - /** @var InfosDemandeur */ - public $infosDemandeur; - /** @var RefCommande */ - public $refCommande; -} - -class InfoCommandeKbis -{ - /** @var string */ - public $siren; - - /** - * Méthode de transmission du kbis (mail, courrier) - * @var string - */ - public $mode; -} - -//===> Asso - -class ListeCmdAssoReturn -{ - /** @var ErrorType */ - public $error; - /** @var int */ - public $nbCommandes; - /** @var CmdAssoDetail[] */ - public $liste; -} - -class InfoCmdAsso -{ - /** @var string */ - public $siren; - /** @var string */ - public $waldec; - /** @var int */ - public $idEntreprise; - /** @var string */ - public $raisonSociale; -} - -class CmdAssoReturn -{ - /** @var ErrorType */ - public $error; - /** @var CmdAssoDetail */ - public $commande; -} - -class CmdAssoDetail -{ - /** @var string */ - public $siren; - /** @var string */ - public $emailCommande; - /** @var string */ - public $dateCommande; - /** @var string */ - public $refCmde; -} - -class CommandeReturnType -{ - /** @var ErrorType */ - public $error; - /** @var RefCommande */ - public $ref; -} - -class ListeCommandeFiltre -{ - /** @var string */ - public $type; -} - -class CmdStatut -{ - /** @var int */ - public $code; - /** @var string */ - public $lib; -} - -class ListeConventionsReturn -{ - /** @var ErrorType */ - public $error; - /** @var Convention[] */ - public $result; -} - -class Convention -{ - /** @var string */ - public $idCC; - /** @var string */ - public $nomCC; - /** @var string */ - public $infoCC; - /** @var string */ - public $editorCC; - /** @var int */ - public $nbPageCC; - /** @var string */ - public $isbnCC; - /** @var string */ - public $dateCC; - /** @var string */ - public $joCCmaj; -} - -class AnnonceCollecteReturn -{ - /** @var ErrorType */ - public $error; - /** @var AnnonceCollecte */ - public $result; -} - -class AnnonceCollecte -{ - /** @var string */ - public $id; - /** @var string */ - public $siren; - /** @var string */ - public $raisonSociale; - /** @var string */ - public $adresse; - /** @var string */ - public $codePostal; - /** @var string */ - public $ville; - /** @var string */ - public $dateJugement; - /** @var AnnonceEvenement[] */ - public $even; - /** @var string */ - public $dateSource; - /** @var string */ - public $dateCessationPaiement; - /** @var string */ - public $dateEffetFinP; - /** @var string */ - public $tribunal; - /** @var string */ - public $numero; - /** @var string */ - public $montant; - /** @var string */ - public $actionsNb; - /** @var string */ - public $inter1type; - /** @var string */ - public $inter1id; - /** @var string */ - public $inter1nom; - /** @var string */ - public $inter2type; - /** @var string */ - public $inter2id; - /** @var string */ - public $inter2nom; - /** @var string */ - public $inter3type; - /** @var string */ - public $inter3id; - /** @var string */ - public $inter3nom; - /** @var string */ - public $complement; - /** @var string */ - public $nouvActivite; - /** @var string */ - public $nouvDir; - /** @var string */ - public $nouvAdr; - /** @var string */ - public $nouvFJ; - /** @var string */ - public $source; -} - -class AnnonceEvenement -{ - /** @var int */ - public $CodeEven; - /** @var string */ - public $LibEven; -} - -class DevisesReturn -{ - /** @var ErrorType */ - public $error; - /** @var Devise[] */ - public $result; -} - -class Devise -{ - /** @var string */ - public $devIso; - /** @var string */ - public $devNom; -} - - -class DevisesCoursReturn -{ - /** @var ErrorType */ - public $error; - /** @var DevisesCours[] */ - public $result; -} - -class DevisesCours -{ - /** @var string */ - public $codeDevise; - /** @var string */ - public $nomDevise; - /** @var string */ - public $dateChange; - /** @var string */ - public $valeurDevise; -} - -class PieceReturn -{ - /** @var ErrorType */ - public $error; - /** @var PieceResult */ - public $result; -} - -class PieceResult -{ - /** @var string */ - public $Siren; - /** @var string */ - public $Url; - /** @var string */ - public $Taille; - /** @var string */ - public $Cache; - /** @var array */ - public $debug; - /** @var string */ - public $fichier; -} - -class SetInfosMandataire -{ - /** @var int */ - public $id = 0; - /** @var string */ - public $sirenGrp; - /** @var string */ - public $sirenMand; - /** @var string */ - public $Nom; - /** @var string */ - public $Prenom; - /** @var string */ - public $type; - /** @var string */ - public $stagiaire; - /** @var string */ - public $coursAppel; - /** @var string */ - public $coursAppel2; - /** @var string */ - public $tribunal; - /** @var string */ - public $Statut; - /** @var string */ - public $adresse; - /** @var string */ - public $adresseComp; - /** @var string */ - public $cp; - /** @var string */ - public $ville; - /** @var string */ - public $tel; - /** @var string */ - public $fax; - /** @var string */ - public $email; - /** @var string */ - public $web; - /** @var string */ - public $contact; -} - -class SetMandataireReturn -{ - /** @var ErrorType */ - public $error; - /** @var boolean */ - public $result; -} - -class SetInfosEntrepIdentite -{ - /** @var string */ - public $isin; - /** @var string */ - public $tel; - /** @var string */ - public $fax; - /** @var string */ - public $web; - /** @var string */ - public $mail; - /** @var string */ - public $activite; - /** @var string */ - public $sirenDoublon; - /** @var string */ - public $waldec; - /** @var string */ - public $moisOppositionInsee; - /** @var string */ - public $moisRefusRCS; - /** @var string */ - public $domiciliataire; -} - -class SetInfosEntrepLien -{ - /** @var string */ - public $siren; - /** @var double */ - public $pct; - /** @var string */ - public $majMin; - /** @var string */ - public $dateMAJ; - /** @var string */ - public $pays; - /** @var string */ - public $nom; -} - -class SetInfosEntrepScore -{ - /** @var mixed */ - public $encours; - /** @var mixed */ - public $scoreSolv; - /** @var mixed */ - public $scoreDir; - /** @var mixed */ - public $scoreConf; -} - -class SetInfosEntrepEven -{ - /** @var string */ - public $code; -} - -class SetInfosEntrepJugement -{ - /** @var string */ - public $source; - /** @var string */ - public $dateJuge; - /** @var string */ - public $tribunal; - /** @var SetInfosEntrepEven[] */ - public $even; - /** @var string */ - public $admin; - /** @var string */ - public $mand; - /** @var string */ - public $oppo; - /** @var string */ - public $dateParution; - /** @var string */ - public $numParution; - /** @var string */ - public $montant; - /** @var string */ - public $actionsMt; - /** @var string */ - public $actionsNb; - /** @var string */ - public $nic; - /** @var string */ - public $datePaie; - /** @var string */ - public $dateFinPeriode; - /** @var string */ - public $comp; - /** @var string */ - public $nouvAdrCp; - /** @var string */ - public $nouvAdr; - /** @var string */ - public $nouvAdrVille; - /** @var string */ - public $nouvActivite; - /** @var string */ - public $nouvFJ; - /** @var SetInfosEntrepDir[] */ - public $nouvDir; -} - -class SetInfosEntrepDir -{ - /** @var string */ - public $Fonc; - /** @var string */ - public $Genre; - /** @var string */ - public $Pre; - /** @var string */ - public $Nom; - /** @var string */ - public $Dom; -} - -class SetInfosEntrepInfos -{ - /** @var SetInfosEntrepIdentite */ - public $identite; - /** @var SetInfosEntrepJugement */ - public $jugement; - /** @var SetInfosEntrepLien */ - public $actionnaire; - /** @var SetInfosEntrepLien */ - public $participation; - /** @var SetInfosEntrepScore */ - public $score; -} - -class SetInfosEntrepReturn -{ - /** @var ErrorType */ - public $error; - /** @var boolean */ - public $result; -} - -class SearchMandatairesReturn -{ - /** @var ErrorType */ - public $error; - /** @var SearchMandataire[] */ - public $result; -} - -class SearchMandataire -{ - /** @var string */ - public $id; - /** @var string */ - public $mand; -} - -class MandataireReturn -{ - /** @var ErrorType */ - public $error; - /** @var MandataireDetail */ - public $result; -} - -class MandataireDetail -{ - /** @var string */ - public $Nom; - /** @var string */ - public $Prenom; - /** @var string */ - public $tribunal; - /** @var string */ - public $adresse; - /** @var string */ - public $adresseComp; - /** @var string */ - public $ville; - /** @var string */ - public $email; - /** @var string */ - public $web; - /** @var string */ - public $contact; -} - -class ListeJalCollecteReturn -{ - /** @var ErrorType */ - public $error; - /** @var JalCollecte[] */ - public $result; -} - -class JalCollecte -{ - /** @var string */ - public $id; - /** @var string */ - public $nom; -} - -class GeoCodeReturn -{ - /** @var ErrorType */ - public $error; - /** @var GeoCode */ - public $result; -} - -class GeoCode -{ - /** @var string */ - public $latitude; - /** @var string */ - public $longitude; - /** @var string */ - public $precis; - /** @var string */ - public $adresseValidee; - /** @var string */ - public $latitudeDeg; - /** @var string */ - public $longitudeDeg; -} - -class CmdEnqueteRIB -{ - /** @var string */ - public $banque; - /** @var string */ - public $guichet; - /** @var string */ - public $compte; - /** @var string */ - public $cle; -} - - -class InfosCmdEnquete -{ - /** @var string */ - public $siren; - /** @var string */ - public $Nom; - /** @var string */ - public $Adresse; - /** @var string */ - public $CP; - /** @var string */ - public $Ville; - /** @var string */ - public $Tel; - /** @var string */ - public $Fax; - /** @var string */ - public $Mail; - /** @var string */ - public $AutreTel; - /** @var string */ - public $AutreMail; - /** @var string */ - public $Web; - /** @var CmdEnqueteRIB */ - public $RIB; - /** @var string */ - public $Encours; - /** @var string */ - public $NbEcheances; - /** @var string */ - public $AvisAssureur; - /** @var string */ - public $Type; - /** @var string */ - public $Delai; - /** @var string */ - public $PrecisionsType; - /** @var string */ - public $PrecisionsMontantCA; - /** @var string */ - public $PrecisionsMotif; - /** @var string */ - public $PrecisionsAutre; - /** @var string */ - public $Anciennete; - /** @var string */ - public $AncienneteDuree; - /** @var string */ - public $ImpayeesChoix; - /** @var string */ - public $ImpayeesMontant; - /** @var string */ - public $ImpayeesNombre; - /** @var string */ - public $ImpayeesDate; - /** @var string */ - public $RetardPaiementChoix; - /** @var string */ - public $RetardPaiementMontant; - /** @var string */ - public $RetardPaiementNombre; - /** @var string */ - public $RetardPaiementDate; - /** @var string */ - public $LitigeChoix; - /** @var string */ - public $LitigePrecisions; - /** @var string */ - public $Observation; -} - -class CmdEnqueteReturn -{ - /** @var ErrorType */ - public $error; - /** @var CmdEnquete */ - public $result; -} - -class CmdEnquete -{ - /** @var string */ - public $siren; - /** @var string */ - public $emailCommande; - /** @var string */ - public $dateCommande; - /** @var string */ - public $refCmde; -} - -class LogsClientsReturn -{ - /** @var ErrorType */ - public $error; - /** @var LogsClients */ - public $result; -} - -class LogsClients -{ - /** @var string */ - public $Url; - /** @var string */ - public $Taille; - /** @var int */ - public $Cache; -} - -class ListeSurveillancesCsvReturn -{ - /** @var ErrorType */ - public $error; - /** @var ListeSurveillancesCsv */ - public $result; -} - -class ListeSurveillancesCsv -{ - /** @var string */ - public $Url; - /** @var string */ - public $Taille; - /** @var int */ - public $Cache; -} - -class RechercheHistoReturn -{ - /** @var RechercheHistoCriteres */ - public $criteres; - /** @var int */ - public $nbReponses; - /** @var int */ - public $nbReponsesTotal; - /** @var int */ - public $duree; - /** @var string[] */ - public $mots; - /** @var RechercheHistoReponses[] */ - public $reponses; -} - -class RechercheHistoCriteres -{ - /** @var string */ - public $recherche; - /** @var string */ - public $annee; -} - -class RechercheHistoReponses -{ - /** @var int */ - public $id; - /** @var string */ - public $Pertinence; - /** @var string */ - public $Fichier; - /** @var string */ - public $Annee; - /** @var string */ - public $Code; - /** @var string */ - public $Texte; -} - -class ListeFichierSurvReturn -{ - /** @var ErrorType */ - public $error; - /** @var ListeFichierSurv[] */ - public $result; -} - -class ListeFichierSurv -{ - /** @var string */ - public $UrlFichier; -} - -class MarquesReturn -{ - /** @var ErrorType */ - public $error; - /** @var Marque[] */ - public $result; -} - -class Marque -{ - /** @var string */ - public $Marques; - /** @var string */ - public $Date; - /** @var string */ - public $Depot; - /** @var string */ - public $IdLien; - /** @var string */ - public $UrlLien; - /** @var string */ - public $PdfDispo; - /** @var string */ - public $Classes; - /** @var string */ - public $Perimetre; - /** @var string */ - public $DateExpir; -} - -class PortefeuilleReturn -{ - /** @var ErrorType */ - public $error; - /** @var Portefeuille[] */ - public $result; - /** @var int */ - public $nbReponses; - /** @var int */ - public $nbReponsesTotal; -} - -class Portefeuille -{ - /** @var string */ - public $email; - /** @var string */ - public $siren; - /** @var string */ - public $nic; - /** @var string */ - public $ref; - /** @var string */ - public $dateAjout; - /** @var string */ - public $rs; - /** @var string */ - public $cp; - /** @var string */ - public $ville; - /** @var string */ - public $actif; - /** @var string */ - public $procol; - /** @var string */ - public $indiScore; - /** @var string */ - public $indiScore20; - /** @var string */ - public $indiScorePre; - /** @var string */ - public $indiScore20Pre; - /** @var string */ - public $encours; - /** @var string */ - public $encoursPre; - /** @var string */ - public $indiScoreDate; - /** @var string */ - public $indiScoreDatePre; - /** @var string */ - public $encoursClient; - /** @var string */ - public $dateBilan; - /** @var string */ - public $sourceModif; - /** @var string */ - public $dateDerEnvoi; -} - -class PortefeuilleFiltre -{ - /** @var string */ - public $tri = 'siren'; - /** @var string */ - public $siret = ''; - /** @var string */ - public $ref = ''; - /** @var string */ - public $rs = ''; - -} - -class ClientFiltre -{ - /** @var int */ - public $page = 0; -} - -class StatsUtilisateursReturn -{ - -} - -class TribunauxReturn -{ - /** @var Tribunal[] */ - public $result; -} - -class Tribunal -{ - /** Code du tribunal - * @var string - */ - public $code; - /** Nom du tribunal - * @var string - */ - public $nom; -} - -class MandatairesReturn -{ - /** @var Mandataire[] */ - public $result; -} - -class Mandataire -{ - /** Identifiant interne du mandataire - * @var string - */ - public $id; - /** Nom et coordonnées du mandataire - * @var string - */ - public $mand; -} - -class PrivilegesDetailReturn -{ - /** @var PrivilegesDetail[] */ - public $result; -} - -class PrivilegesDetail -{ - /** Numéro du débiteur - * @var string - */ - public $numDebiteur; - - /** Numéro du greffe - * @var string - */ - public $greffe; - - /** Libellé du greffe - * @var string - */ - public $greffeLib; - - /** Date de l'inscription - * @var string - */ - public $dateEven; - - /** Date de fraîcheur de l'information dans la base du greffe - * @var string - */ - public $dateFraiche; - - /** Date de mise à jour dans la base S&D - * @var string - */ - public $dateSD; - - /** Type de privilège : 03 ou 04 - * @var string - */ - public $insType; - - /** Libellé du privilège : Privilège(s) du Trésor ou Privilège(s) sécurité sociale, régimes complémentaires - * @var string - */ - public $insTypeLib; - - /** Numéro d'inscription du privilège au Greffe - * @var string - */ - public $insNum; - - /** Date d'inscription du privilège au Greffe - * @var string - */ - public $insDate; - - /** Date d'échéance du privilège au Greffe - * @var string - */ - public $insDateEch; - - /** Objet de l'inscription ou descriptif du privilège au Greffe - * @var string - */ - public $insObjet; - - /** Montant de l'inscription privilège - * @var double - */ - public $insMontant; - - /** Devise du privilège - * @var string - */ - public $insDev; - - /** Date de caducité ou de péremption du privilège - * @var string - */ - public $insDateFin; - - /** Date de radiation du privilège - * @var string - */ - public $radDate; - - /** Date de la dernière mention de radiation partielle - * @var string - */ - public $radMention; - - /** Libellé de Mention de radiation partielle la plus récente - * @var string - */ - public $radPartiel; - - /** Montant de la radiation partielle - * @var double - */ - public $radPartMt; - - /** Devise de la radiation partielle - * @var string - */ - public $radDev; - - /** Nom du prinicpal créancier - * @var string - */ - public $creNom; - - /** Adresse du créancier ligne 1 - * @var string - */ - public $creAdresse1; - - /** Adresse du créancier ligne 2 - * @var string - */ - public $creAdresse2; - - /** Adresse du créancier ligne 3 - * @var string - */ - public $creAdresse3; - - /** Code postal du créancier - * @var string - */ - public $creCP; - - /** Ville du créancier - * @var string - */ - public $creVille; - - /** Pays du créancier - * @var string - */ - public $crePays; - - /** Liste textuelle des autres créanciers (si nécessaire) - * @var string - */ - public $creAutres; -} - -class PrivilegesCumulReturn -{ - /** @var PrivilegesCumul[] */ - public $result; -} - -class PrivilegesCumul -{ - /** Nombre de privilèges pour ce type - * @var int - */ - public $nb; - - /** Type de privilège : 03 ou 04 - * @var string - */ - public $insType; - - /** Libellé du privilège : Privilège(s) du Trésor ou Privilège(s) sécurité sociale, régimes complémentaires - * @var string - */ - public $insTypeLib; - - /** Date de fraîcheur de l'information dans la base du greffe - * @var string - */ - public $dateFraiche; - - /** Date de la dernière inscription - * @var string - */ - public $dateDerInsc; - - /** Nom du dernier créancier - * @var string - */ - public $nomDerCre; - - /** Numéro du débiteur - * @var string - */ - public $numDebiteur; - - /** Libellé du greffe - * @var string - */ - public $greffeLib; - - /** Date de mise à jour dans la base S&D - * @var string - */ - public $dateMajSD; - - /** Montant cumulé pour ce type d'inscription - * @var double - */ - public $insCumul; -} - -class SearchActReturn -{ - /** @var int */ - public $nbReponses; - /** @var int */ - public $nbReponsesTotal; - /** @var EntrepriseActItem[] */ - public $result; -} - -class EntrepriseActItem -{ - /** - * Identifiant S&D dans le moteur de recherche - * @var int - */ - public $id; - - /** - * Scoring de pertinence de la recherche - * @var int - */ - public $Pertinence; - - /** - * Siret de l'établissement - * @var string - */ - public $Siret; - - /** - * Siren de l'entreprise - * @var string - */ - public $Siren; - - /** - * Nic de l'établissement - * @var string - */ - public $Nic; - - /** - * Etablissement siège ou secondaire - * @var bool - */ - public $Siege; - - /** - * Nom de l'entreprise - * @var string - */ - public $Nom; - - /** - * Complément de nom - * @var string - */ - public $Nom2; - - /** - * Sigle de l'entreprise - * @var string - */ - public $Sigle; - - /** - * Enseigne de l'établissement - * @var string - */ - public $Enseigne; - - /** - * Adresse de l'établissement - * @var string - */ - public $Adresse; - - /** - * Complément d'adresse de l'établissement - * @var string - */ - public $Adresse2; - - /** - * Code postal - * @var string - */ - public $CP; - - /** - * Ville - * @var string - */ - public $Ville; - - /** Téléphone - * @var string - */ - public $Tel; - - /** - * Télécopie - * @var string - */ - public $Fax; - - /** - * Forme Juridique de l'entreprise - * @var string - */ - public $FJ; - - /** - * Libellé de la forme juridique - * @var string - */ - public $FJLib; - - /** - * Etablissement actif ou inactif - * @var bool - */ - public $Actif; - - /** - * Code NAF de l'établissement - * @var string - */ - public $NafEtab; - - /** - * Code NAF de l'entreprise - * @var string - */ - public $NafEnt; - - /** - * Libellé du NAF de l'entreprise - * @var string - */ - public $NafEntLib; - - /** - * Raison Sociale ou Nom de l'actionnaire - * @var string - */ - public $ActNomRs; - - /** - * Pays de l'actionnaire - * @var string - */ - public $ActPays; - - /** - * Date de l'actionnariat - * @var string - */ - public $ActDateLien; - - /** - * Actionnaire actif - * @var string - */ - public $ActActif; - - /** - * Participation minimum - * @var string - */ - public $ActPmin; - -} - -class CommandeEnqueteReturn -{ - /** @var string */ - public $siren; - - /** @var string */ - public $emailCommande; - - /** @var string */ - public $dateCommande; - - /** @var string */ - public $refCmde; -} - -class DirigeantOp -{ - /** Code fonction du dirigeant - * @var string - * @ref mysql:Liste des dirigeants S&D:tabDirigeants.sql - */ - public $Code; - - /** Titre de la fonction du dirigeant - * @var string - */ - public $Titre; - - /** Raison Sociale du dirigeant si Personne Morale (PM) - * @var string - */ - public $Societe; - - /** Civilité du dirigeant si Personne Physique (PP) - * @var string - */ - public $Civilite; - - /** Nom du dirigeant si PP ou si PM représentée par ... - * @var string - */ - public $Nom; - - /** Prénom du dirigeant si PP ou si PM représentée par ... - * @var string - */ - public $Prenom; - - /** - * Enter description here ... - * @var string - */ - public $NomUsage; - - /** Date de naissance du dirigeant si PP - * @var string - */ - public $NaissDate; - - /** Lieu de naissance du dirigeant si PP - * @var string - */ - public $NaissVille; - - /** Département ou Pays de naissance du dirigeant si PP - * @var string - */ - public $NaissDepPays; - - /** Ce dirigeant est un ancien dirigeant (1=ancien) - * @var string - */ - public $Ancien; - - /** Date du dernier changement - * @var string - */ - public $DateFct; -} - -class Depot -{ - /** @var string */ - public $CodeDepot; - - /** @var string */ - public $LibDepot; - - /** @var string */ - public $DateDepot; - - /** @var string */ - public $RefDepot; - - /** @var string */ - public $DateRncs; - - /** @var string */ - public $DateMAJ; -} - -class IdentiteLight -{ - /** @var int */ - public $id; - - /** @var string */ - public $Siret; - - /** @var int */ - public $Siege; - - /** @var string */ - public $Nom; - - /** @var string */ - public $Tribunal; - - /** @var string */ - public $Sigle; - - /** @var string */ - public $Enseigne; - - /** @var string */ - public $Adresse; - - /** @var string */ - public $Adresse2; - - /** @var string */ - public $AdresseNum; - - /** @var string */ - public $AdresseBtq; - - /** @var string */ - public $AdresseVoie; - - /** @var string */ - public $AdresseRue; - - /** @var string */ - public $CP; - - /** @var string */ - public $Ville; - - /** @var string */ - public $Tel; - - /** @var string */ - public $Fax; - - /** @var string */ - public $FJ; - - /** @var string */ - public $FJ_Lib; - - /** @var string */ - public $Siren; - - /** @var string */ - public $Nic; - - /** @var int */ - public $Actif; - - /** @var string */ - public $NafEtab; - - /** @var string */ - public $NafEnt; - - /** @var string */ - public $NafEntLib; - - /** @var string */ - public $NafEtabLib; - - /** @var string */ - public $AutreId; - - /** @var string */ - public $Source; - - /** @var int */ - public $SourceId; - - /** @var string */ - public $Dept; - - /** @var string */ - public $codeCommune; - - /** @var string */ - public $Capital; - - /** @var string */ - public $CapitalDev; - - /** @var string */ - public $TrancheCA; - - /** @var string */ - public $TrancheCALib; - - /** @var string */ - public $EffEnTr; - - /** @var string */ - public $EffEnTrLib; - - /** @var string */ - public $EffEtTr; - - /** @var string */ - public $EffEtTrLib; -} - -class GroupeInfos -{ - /** @var string */ - public $grpNom; - - /** @var string */ - public $grpEnseigne; - - /** @var string */ - public $grpSigle; - - /** @var string */ - public $grpAdrNum; - - /** @var string */ - public $grpAdrBtq; - - /** @var string */ - public $grpAdrTypeVoie; - - /** @var string */ - public $grpadrLibVoie; - - /** @var string */ - public $grpAdrComp; - - /** @var string */ - public $grpAdrCP; - - /** @var string */ - public $grpAdrVille; - - /** @var string */ - public $grpAdrDep; - - /** @var string */ - public $grpAdrCom; - - /** @var string */ - public $grpTel; - - /** @var string */ - public $grpFax; - - /** @var string */ - public $grpSiren; - - /** @var string */ - public $grpTva; - - /** @var string */ - public $grpIsin; - - /** @var string */ - public $grpNumRC; - - /** @var string */ - public $grpTribunal; - - /** @var string */ - public $grpWeb; - - /** @var string */ - public $grpNbProcolHisto; - - /** @var string */ - public $grpCAExport; - - /** @var string */ - public $grpCA; - - /** @var string */ - public $grpGrandGroupeFr; - - /** @var string */ - public $grpNbEntrep; - - /** @var string */ - public $grpEffectif; - - /** @var string */ - public $grpAnneCreation; - - /** @var string */ - public $avisCs; - - /** @var GroupeInfosSecteur[] */ - public $secteur; -} - -class GroupeInfosSecteur -{ - /** @var string */ - public $code; - - /** @var string */ - public $lib; - - /** @var int */ - public $entrepNb; - - /** @var string */ - public $entrepTx; - - /** @var int */ - public $caNb; - - /** @var float */ - public $caTx; - - /** @var int */ - public $effNb; - - /** @var float */ - public $effTx; -} diff --git a/library/WsScore/Interne/v0.5/Changelog b/library/WsScore/Interne/v0.5/Changelog deleted file mode 100644 index bd61166a..00000000 --- a/library/WsScore/Interne/v0.5/Changelog +++ /dev/null @@ -1,18 +0,0 @@ -- Add getBilanSaisie -- Remove setInfosEntrep -- Remove getKbis -- Remove setCmdBilan -- Remove getCmdBilan -- Remove setCmdActe -- Remove getCmdACte -- Remove setCmdKbis -- Remove getCmdKbis -- Remove setCmdPieces -- Remove getCmdPieces -- Remove getListeCmdPieces -- Remove getListeCmdStatut -- Remove setCmdStatut -- Remove setCmdEven -- Remove setCmdDocument -- Add getContactEt -- Add getCountryId \ No newline at end of file diff --git a/library/WsScore/Interne/v0.5/Config.php b/library/WsScore/Interne/v0.5/Config.php deleted file mode 100644 index 90af7e16..00000000 --- a/library/WsScore/Interne/v0.5/Config.php +++ /dev/null @@ -1,69 +0,0 @@ - 'ContactEt', - 'ContactEtReturn' => 'ContactEtReturn', - 'ErrorType' => 'ErrorType', - 'RefCommande' => 'RefCommande', - 'ListeConventionsReturn' => 'ListeConventionsReturn', - 'Convention' => 'Convention', - 'AnnonceCollecteReturn' => 'AnnonceCollecteReturn', - 'AnnonceCollecte' => 'AnnonceCollecte', - 'AnnonceEvenement' => 'AnnonceEvenement', - 'DevisesReturn' => 'DevisesReturn', - 'Devise' => 'Devise', - 'DevisesCoursReturn' => 'DevisesCoursReturn', - 'DevisesCours' => 'DevisesCours', - 'PieceReturn' => 'PieceReturn', - 'PieceResult' => 'PieceResult', - 'SetInfosMandataire' => 'SetInfosMandataire', - 'SetMandataireReturn' => 'SetMandataireReturn', - 'MandatairesReturn' => 'MandatairesReturn', - 'Mandataire' => 'Mandataire', - 'MandataireReturn' => 'MandataireReturn', - 'MandataireDetail' => 'MandataireDetail', - 'ListeJalCollecteReturn' => 'ListeJalCollecteReturn', - 'JalCollecte' => 'JalCollecte', - 'GeoCodeReturn' => 'GeoCodeReturn', - 'GeoCode' => 'GeoCode', - 'InfoCmdAsso' => 'InfoCmdAsso', - 'InfosCmdEnquete' => 'InfosCmdEnquete', - 'InfosDemandeur' => 'InfosDemandeur', - 'CmdAssoDetail' => 'CmdAssoDetail', - 'CmdAssoReturn' => 'CmdAssoReturn', - 'CmdEnqueteReturn' => 'CmdEnqueteReturn', - 'CmdEnquete' => 'CmdEnquete', - 'CmdEnqueteRIB' => 'CmdEnqueteRIB', - 'LogsClientsReturn' => 'LogsClientsReturn', - 'LogsClients' => 'LogsClients', - 'ListeSurveillancesCsvReturn' => 'ListeSurveillancesCsvReturn', - 'ListeSurveillancesCsv' => 'ListeSurveillancesCsv', - 'RechercheHistoReturn' => 'RechercheHistoReturn', - 'RechercheHistoCriteres' => 'RechercheHistoCriteres', - 'RechercheHistoReponses' => 'RechercheHistoReponses', - 'ListeFichierSurvReturn' => 'ListeFichierSurvReturn', - 'ListeFichierSurv' => 'ListeFichierSurv', - 'MarquesReturn' => 'MarquesReturn', - 'Marque' => 'Marque', - 'PortefeuilleReturn' => 'PortefeuilleReturn', - 'Portefeuille' => 'Portefeuille', - 'PortefeuilleFiltre' => 'PortefeuilleFiltre', - 'StatsUtilisateursReturn' => 'StatsUtilisateursReturn', - 'TribunauxReturn' => 'TribunauxReturn', - 'Tribunal' => 'Tribunal', - 'SearchMandatairesReturn' => 'SearchMandatairesReturn', - 'SearchMandataire' => 'SearchMandataire', - 'PrivilegesCumulReturn' => 'PrivilegesCumulReturn', - 'PrivilegesCumul' => 'PrivilegesCumul', - 'PrivilegesDetailReturn' => 'PrivilegesDetailReturn', - 'PrivilegesDetail' => 'PrivilegesDetail', - 'SearchActReturn' => 'SearchActReturn', - 'EntrepriseActItem' => 'EntrepriseActItem', - 'CommandeEnqueteReturn' => 'CommandeEnqueteReturn', - 'DirigeantOp' => 'DirigeantOp', - 'Depot' => 'Depot', - 'IdentiteLight' => 'IdentiteLight', - 'GroupeInfos' => 'GroupeInfos', - 'GroupeInfosSecteur' => 'GroupeInfosSecteur', - 'BilanSaisieFiltre' => 'BilanSaisieFiltre', - 'CountryId' => 'CountryId', -); \ No newline at end of file diff --git a/library/WsScore/Interne/v0.5/Interne.php b/library/WsScore/Interne/v0.5/Interne.php deleted file mode 100644 index 5889dbd5..00000000 --- a/library/WsScore/Interne/v0.5/Interne.php +++ /dev/null @@ -1,2693 +0,0 @@ -authenticate(); - //Initialisation - if (empty($tabTypes)) $tabTypes = array('03','04'); - debugLog('I',"Liste des privilèges detail sur $siren ".print_r($tabTypes, true),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iPriv = new MPrivileges(); - $ret = $iPriv->getPrivilegesDetail($siren, $tabTypes); //@todo : date - - $tabRet = array(); - if (count($ret)>0) { - foreach ($ret as $item ) { - $privileges = new PrivilegesDetail(); - $privileges->numDebiteur = $item['numDebiteur']; - $privileges->greffe = $item['greffe']; - $privileges->greffeLib = $item['greffeLib']; - $privileges->dateEven = $item['dateEven']; - $privileges->dateFraiche = $item['dateFraiche']; - $privileges->dateSD = $item['dateSD']; - $privileges->insType = $item['insType']; - $privileges->insTypeLib = $item['insTypeLib']; - $privileges->insNum = $item['insNum']; - $privileges->insDate = $item['insDate']; - $privileges->insDateEch = $item['insDateEch']; - $privileges->insObjet = $item['insObjet']; - $privileges->insMontant = $item['insMontant']; - $privileges->insDev = $item['insDev']; - $privileges->insDateFin = $item['insDateFin']; - $privileges->radDate = $item['radDate']; - $privileges->radMention = $item['radMention']; - $privileges->radPartiel = $item['radPartiel']; - $privileges->radPartMt = $item['radPartMt']; - $privileges->radDev = $item['radDev']; - $privileges->creNom = $item['creNom']; - $privileges->creAdresse1 = $item['creAdresse1']; - $privileges->creAdresse2 = $item['creAdresse2']; - $privileges->creAdresse3 = $item['creAdresse3']; - $privileges->creCP = $item['creCP']; - $privileges->creVille = $item['creVille']; - $privileges->crePays = $item['crePays']; - $privileges->creAutres = $item['creAutres']; - $tabRet[] = $privileges; - } - } - $this->wsLog('privdetail', $siren, join(',',$tabTypes)); - $output = new PrivilegesDetailReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne les privilèges cumulés - * @param string $siren - * @param array $tabTypes - * @return PrivilegesCumulReturn - */ - public function getPrivilegesCumul($siren, $tabTypes=array('03','04')) - { - $this->authenticate(); - //Initialisation - if (empty($tabTypes)) $tabTypes = array('03','04'); - debugLog('I',"Liste des privilèges cumul sur $siren ".print_r($tabTypes, true),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iPriv = new MPrivileges(); - $ret = $iPriv->getPrivilegesCumul($siren, $tabTypes); - $tabRet = array(); - - if (isset($ret['03']) && count($ret['03']>0)){ - $value = $ret['03']; - $priv = new PrivilegesCumul(); - $priv->insType = '03'; - $priv->nb = $value['nb']; - $priv->insTypeLib = $value['insTypeLib']; - $priv->dateFraiche = $value['dateFraiche']; //@todo : date - $priv->dateDerInsc = $value['dateDerInsc']; //@todo : date - $priv->nomDerCre = $value['nomDerCre']; - $priv->numDebiteur = $value['numDebiteur']; - $priv->greffeLib = $value['greffeLib']; - $priv->dateMajSD = $value['dateMajSD']; //@todo : date - $priv->insCumul = $value['insCumul']; - $tabRet[] = $priv; - } - - if (isset($ret['04']) && count($ret['04']>0)){ - $value = $ret['04']; - $priv = new PrivilegesCumul(); - $priv->insType = '04'; - $priv->nb = $value['nb']; - $priv->insTypeLib = $value['insTypeLib']; - $priv->dateFraiche = $value['dateFraiche']; //@todo : date - $priv->dateDerInsc = $value['dateDerInsc']; //@todo : date - $priv->nomDerCre = $value['nomDerCre']; - $priv->numDebiteur = $value['numDebiteur']; - $priv->greffeLib = $value['greffeLib']; - $priv->dateMajSD = $value['dateMajSD']; //@todo : date - $priv->insCumul = $value['insCumul']; - $tabRet[] = $priv; - } - $this->wsLog('privcumul', $siren, print_r($tabTypes,1)); - $output = new PrivilegesCumulReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Liste les mandataires correspondant à un nom donné - * @param mixed $codeTribunal Identifiants BODACC du tribunal ou tableau d'Identifiants numériques des cours d'appel - * @param array $type Type de mandataire (A)dministrateur, (M)andataire, (O)ppositions, (N)otaires, a(V)ocat - * @param int $cpDep Code postal ou département du mandataire - * @return SearchMandatairesReturn - */ - public function searchMandataires($nom, $type=array('A','M'), $cpDep=0) - { - $this->authenticate(); - - //Initialisation - if (empty($type)) $type = array('A','M'); - if (empty($cpDep)) $cpDep = 0; - $tabRet = array(); - - debugLog('I',"Recherche de Mandataires '$nom' (Dep=$cpDep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $iInsee = new MInsee(); - $tabTmp = $iInsee->searchMandataires($nom, true, $type, $cpDep); - - foreach ($tabTmp as $i=>$mand) - { - $mandataire = new SearchMandataire(); - $mandataire->id = 'm'.$i; - $mandataire->mand = utf8_encode($mand); - $tabRet[] = $mandataire; - - } - $output = new SearchMandatairesReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des tribunaux ou Compétences demandées - * @param array|string $tabTypes Tableau des types de Compétences demandés 'C':Commerce, 'I':Instance, 'G':TGI, 'A':Préfectures, 'B':Sous-préf, 'D':Tribunal Administratif, 'H':Prud'hommes, 'L': Cour d'Appel, 'M': Tribunal Mixte, 'O':CCI, 'V': Cour Administrative d'Appel - * @return TribunauxReturn - **/ - public function getTribunaux($tabTypes) - { - $this->authenticate(); - - //Initialisation - if (empty($tabTypes)) $tabTypes = array(); - if (is_string($tabTypes)) $tabTypes = (array)$tabTypes; - - $iBodacc = new MBodacc(); - debugLog('I',"Liste des tribunaux demandées",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabTmp = $iBodacc->getListeTribunaux(); - //@todo : Retourner liste en ordre alphabétique - $tabRet = array(); - if (count($tabTypes)==0) { - foreach ($tabTmp as $i => $tribunal){ - $tri = new Tribunal(); - $tri->code = $i; - $tri->nom = $tribunal['nom']; - $tabRet[] = $tri; - } - } else { - foreach ($tabTmp as $i=>$tribunal){ - $type = substr($i,-1); - if ( in_array($type, $tabTypes) ){ - $tri = new Tribunal(); - $tri->code = $i; - $tri->nom = $tribunal['nom']; - $tabRet[] = $tri; - } - } - } - $this->wsLog('tribunaux', '', print_r($tabTypes,1)); - $output = new TribunauxReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Enregistre une action utilisateur pour la facturation - * @param string $page - * @param string $siret - * @param int $id - * @param string $ref - * @return void - */ - public function setLog($page, $siret, $id=0, $ref='') - { - $this->authenticate(); - - //Initialisation - if (empty($id)) $id = 0; - if (empty($ref)) $ref = ''; - if ( $id!=0 ) { - $ref2=''.$id.'/'.$ref; - } else { - $ref2=$ref; - } - $this->wsLog($page, $siret, $ref2); - debugLog('I',"Insertion d'un log pour la page $page $siret $ref2",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } - - /** - * Met a jour les informations sur un mandataire - * @param SetInfosMandataire $infos Informations sur le mandataire à créer ou à ajouter (ajout si id absent) - * @return SetMandataireReturn - **/ - public function setMandataire(SetInfosMandataire $infos) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - $result = true; - - $iDb = new WDB(); - /** Nom et Identifiant de l'opérateur de saisie **/ - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('utilisateurs', 'id', "login='".$this->tabInfoUser['login']."'"); - $idUser = $rep[0][0]; - - //$infos = serialize($tabInfos); - debugLog('I',"Ajout/MAJ de mandaitaire ".print_r($infos,1)." demandée",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $type = substr(strtoupper($infos->type),0,1); - $stag = substr(strtoupper($infos->type),1,1); - if ($stag=='S') { $stag=1; } else { $stag=0; } - if ($type=='A' || $type=='H' || $type=='M' || $type=='V' || - $type=='N' || $type=='T') - { - $tabUpdate=array( - 'sirenGrp' => substr($infos->sirenGrp,0,9)*1, - 'nicGrp' => substr($infos->sirenGrp,9,5)*1, - 'sirenMand' => substr($infos->sirenMand,0,9)*1, - 'nicMand' => substr($infos->sirenMand,9,5)*1, - 'Nom' => ucwords(strtolower($infos->Nom)), - 'Prenom' => ucwords(strtolower($infos->Prenom)), - 'type' => $type, - 'stagiaire' => $stag, - 'coursAppel' => intval($infos->coursAppel), - 'coursAppel2' => intval($infos->coursAppel2), - 'tribunal' => $infos->tribunal, - 'Statut' => strtoupper($infos->Statut), - 'adresse' => ucwords($infos->adresse), - 'adresseComp' => strtoupper($infos->adresseComp), - 'cp' => intval($infos->cp), - 'ville' => strtoupper($infos->ville), - 'tel' => $infos->tel, - 'fax' => $infos->fax, - 'email' => $infos->email, - 'web' => $infos->web, - 'contact' => $infos->contact, - 'idUser' => $idUser, - ); - } - $id = str_replace('m','', ''.$infos->id)*1; - if (intval($id)!=0) { - // MAJ - if (!$iDb->update('tabMandataires', $tabUpdate, "id=$id", true)) { - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - $result = false; - } - } else { - // Insertion - if (!$iDb->insert('tabMandataires', array_merge($tabUpdate,array('dateInsert'=>date('YmdHis'))), true)) { - $error->errnum = 1; - $error->errmsg = 'Insertion impossible'; - $result = false; - } - } - $output = new SetMandataireReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Récupère le mandataire par son id - * @param int $idMand Identifiant du mandataire - * @return MandataireReturn - */ - public function getMandataire($idMand) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - - debugLog('I',"Donne le Mandataires correspondant à $idMand",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new classMInsee(); - $tabRet = $iInsee->getMandataire($idMand); - $mandataire = new MandataireDetail(); - $mandataire->Nom = $tabRet['Nom']; - $mandataire->Prenom = $tabRet['Prenom']; - $mandataire->tribunal = $tabRet['tribunal']; - $mandataire->adresse = $tabRet['adresse']; - $mandataire->adresseComp = $tabRet['adresseComp']; - $mandataire->ville = $tabRet['ville']; - $mandataire->email = $tabRet['email']; - $mandataire->web = $tabRet['web']; - $mandataire->contact = $tabRet['contact']; - $output = new MandataireReturn(); - $output->error = $error; - $output->result = $mandataire; - return $output; - } - - /** - * Liste les mandataires compétentes pour une cours d'appel donnée - * @param mixed $codeTribunal Identifiants BODACC du tribunal ou tableau d'Identifiants numériques des cours d'appel - * @param array $type Type de mandataire (A)dministrateur, (M)andataire, (O)ppositions, (N)otaires, a(V)ocat - * @return MandatairesReturn - */ - public function getMandataires($codeTribunal=0, $type=array('A','M')) - { - $this->authenticate(); - //Initialisation - $iInsee = new MInsee(); - $error = new ErrorType(); - $trib = serialize($codeTribunal); - debugLog('I',"Liste des Mandaitaires ou Administrateur du Tribunal/Cours d'Appel $trib demandé",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (!is_array($codeTribunal) && strlen($codeTribunal)>3 && $codeTribunal*1==0) - { - // $codeTribunal est un identifiant de tribunal - $iBodacc = new MBodacc(); - $tabTmp = $iInsee->getMandataires(array($iBodacc->getTribunalIdCA($codeTribunal)), true, $type); - } - elseif ($codeTribunal*1==0) - { - // On veut tous les mandataires - $tabTmp = $iInsee->getMandataires(array(), true, $type); - } - elseif (is_array($codeTribunal)) - { - // On veut les mandataires d'une CA - $tabTmp = $iInsee->getMandataires($codeTribunal, true, $type); - } - $tabRet = array(); - foreach ($tabTmp as $i=>$mand){ - $mandataire = new Mandataire(); - $mandataire->id = 'm'.$i; - $mandataire->mand = $mand; - $tabRet[]= $mandataire; - } - $output = new MandatairesReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des conventions - * @param string $siren - * @return ListeConventionsReturn - */ - public function getListeConventions($siren) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - $tabRet = array(); - - debugLog('I',"Liste des conventions demandée pour le siren $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($siren)<>9){ - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren Siret inexistant'; - - } elseif ($siren*1==0){ - - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren inexistant'; - - } else { - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteEntreprise($siren); - - if (empty($tabIdentite) && isset($tabIdentite['erreur']) && - $tabIdentite['erreur']<>''){ - - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren inexistant'; - - } else { - - $naf = $tabIdentite['NafEnt']; - $trancheEffectif = $tabIdentite['EffEnTr']; - $effectif = $tabIdentite['Effectif']; - $fj = $tabIdentite['entreprise']['FJCodeEntrep']; - - $isolv = new MSolvabilite($siren, $naf, $trancheEffectif, - $effectif, $tabIdentite['CP'], $fj, $tabIdentite['Capital'], - $tabIdentite['CapitalDev'], $tabIdentite['DateCreaEn'], - $tabIdentite['DateCreaEt'] - ); - $noteStructure = $isolv->getSolvabilite(); - $naf4 = $isolv->getNaf4($naf); - - $tabTmp = $iInsee->listeConventions($naf4, $tabIdentite['Dept']); - foreach ($tabTmp as $conv) - { - $convention = new Convention(); - $convention->idCC = $conv['id CC']; - $convention->nomCC = $conv['nom CC']; - $convention->infoCC = $conv['infoCC']; - $convention->editorCC = $conv['editeur CC']; - $convention->nbPageCC = $conv['nb page CC']; - $convention->isbnCC = $conv['isbn CC']; - $convention->dateCC = $conv['date edition CC']; - $convention->joCCmaj = $conv['joCCmaj']; - $tabRet[] = $convention; - } - $this->wsLog('conventions',$siren); - } - } - - $output = new ListeConventionsReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Donne la cours d'appel d'un tribunal par son code - * @param string $codeTribunal Code BODACC sur 6 caractères du tribunal - * @return int - **/ - public function getIdCoursAppel($codeTribunal) - { - $this->authenticate(); - $iBodacc = new MBodacc(); - return $iBodacc->getTribunalIdCA($codeTribunal); - } - - /** - * Récupère le contenu d'une annonce issue de la collecte - * @param string $idAnn - * @param string $siret - * @return AnnonceCollecteReturn - */ - public function getAnnonceCollecte($idAnn, $siret) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - $annonceCollecte = new AnnonceCollecte(); - $siren = substr($siret,0,9)*1; - if (!$this->checkEdition()) { - - $error->errnum = 0; - $error->errmsg = 'Code Client Incorrect'; - - } else { - - $iDb = new WDB(); - debugLog('I',"Lecture de l'annonce collectée n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $idAnn = preg_replace('/^0\./','', ''.$idAnn) * 1; - if ($idAnn>0) - { - $res = $iDb->select('annonces', - 'id, siren, sirenValide, typeEven, strEven, raisonSociale, adresse, codePostal, ville, dateJugement, dateCessationPaiement, dateEffetFinP, numero, inter1type, inter1id, inter1nom, inter2type, inter2id, inter2nom, inter3type, inter3id, inter3nom, inter4type, inter4id, inter4nom, tribunal, montant, actionsNb, complement, infosBrutes, nouvActivite, nouvDir, nouvAdr, nouvFJ, annonce, source, parutionIdJal, parutionNum, dateSource, idSaisie, idAnnonce, dateInsert', - "id=$idAnn", false, MYSQL_ASSOC - ); - if (count($res)>0) - { - $ann = $res[0]; - $annonceCollecte->id = $ann['id']; - $annonceCollecte->siren = $ann['siren']; - $annonceCollecte->raisonSociale = $ann['raisonSociale']; - $annonceCollecte->adresse = $ann['adresse']; - $annonceCollecte->codePostal = $ann['codePostal']; - $annonceCollecte->ville = $ann['ville']; - $annonceCollecte->dateJugement = $ann['dateJugement']; - - //@todo : Les libellées ne sont pas présent LibEven - $tabEven = array(); - $annonceEvenement = new AnnonceEvenement(); - $annonceEvenement->CodeEven = $ann['typeEven']; - $annonceEvenement->LibEven = ''; - $tabEven[] = $annonceEvenement; - if (!empty($ann['strEven'])){ - foreach ( explode(';',$ann['strEven']) as $code ) - { - $annonceEvenement = new AnnonceEvenement(); - $annonceEvenement->CodeEven = $code; - $annonceEvenement->LibEven = ''; - $tabEven[] = $annonceEvenement; - } - } - - $annonceCollecte->even = $tabEven; - $annonceCollecte->dateSource = $ann['dateSource']; - $annonceCollecte->dateCessationPaiement = $ann['dateCessationPaiement']; - $annonceCollecte->dateEffetFinP = $ann['dateEffetFinP']; - $annonceCollecte->tribunal = $ann['tribunal']; - $annonceCollecte->numero = $ann['numero']; - $annonceCollecte->montant = $ann['montant']; - $annonceCollecte->actionsNb = $ann['actionsNb']; - $annonceCollecte->inter1type = $ann['inter1type']; - $annonceCollecte->inter1id = $ann['inter1id']; - $annonceCollecte->inter1nom = $ann['inter1nom']; - $annonceCollecte->inter2type = $ann['inter2type']; - $annonceCollecte->inter2id = $ann['inter2id']; - $annonceCollecte->inter2nom = $ann['inter2nom']; - $annonceCollecte->inter3type = $ann['inter3type']; - $annonceCollecte->inter3id = $ann['inter3id']; - $annonceCollecte->inter3nom = $ann['inter3nom']; - $annonceCollecte->complement = $ann['complement']; - $annonceCollecte->nouvActivite = $ann['nouvActivite']; - $annonceCollecte->nouvDir = $ann['nouvDir']; - $annonceCollecte->nouvAdr = $ann['nouvAdr']; - $annonceCollecte->nouvFJ = $ann['nouvFJ']; - $annonceCollecte->source = $ann['source']; - - debugLog('I',"Lecture de l'annonce collectée n°$idAnn ($siret) : ".$ann['raisonSociale'],__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } else { - $error->errnum = 1; - $error->errmsg = 'Edition impossible'; - } - } - else - { - $error->errnum = 745741; - $error->errmsg = 'Selection impossible'; - } - } - $output = new AnnonceCollecteReturn(); - $output->error = $error; - $output->result = $annonceCollecte; - return $output; - } - - /** - * getDevises - * @param string $codeIsoDevise - * @return DevisesReturn - */ - public function getDevises($codeIsoDevise='') - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - if (empty($codeIsoDevise)) $codeIsoDevise = ''; - - debugLog('I',"Liste des devises ou devise $codeIsoDevise demandée",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $tabTmp = $iInsee->getDevises($codeIsoDevise); - - $tabRet = array(); - foreach ($tabTmp as $i=>$dev) - { - if ( $i!='' ){ - $devise = new Devise(); - $devise->devIso = $i; - $devise->devNom = $dev; - $tabRet[] = $devise; - } - } - $output = new DevisesReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des codes devises, libellés, date et valeur - * (toutes les devises ou une seule) - * @param string $devise Devise sur 3 lettres (facultatif) - * @return DevisesCoursReturn - */ - public function getDeviseCours($devise=false) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - - $iDb = new WDB('sdv1'); - if ($devise) $strDevise=" AND c.devise='$devise' "; - else $strDevise=''; - - $tabRet = array(); - - $res = $iDb->select('devise_cours c, devise_liste l', 'c.devise, l.devNom, max(c.date) as dateChange, c.valeur', "c.devise=l.devIso $strDevise GROUP BY c.devise ORDER BY c.devise ASC", false, MYSQL_ASSOC); - foreach ($res as $tabDev) - { - $devise = new DevisesCours(); - $devise->codeDevise = $tabDev['devise']; - $devise->nomDevise = $tabDev['devNom']; - $devise->dateChange = $tabDev['dateChange']; - $devise->valeurDevise = $tabDev['valeur']; - $tabRet[] = $devise; - } - $output = new DevisesCoursReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * getMarques - * @param string $siren - * @param int $idDepot - * @return MarquesReturn - */ - public function getMarques($siren, $idDepot=0) - { - $this->authenticate(); - $this->permission('marques'); - debugLog('I',"Liste des marques déposées pour le siren $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($idDepot)) $idDepot = 0; - $error = new ErrorType(); - $marques = array(); - require_once 'Metier/partenaires/classMMarques.php'; - $iMarque = new MMarques(); - $ret = $iMarque->getMarques($siren, $idDepot); - - foreach ($ret as $item) { - if (trim($item['imgLink'])<>'') $idLien = $item['numeroMarque']; - else $idLien = ''; - if ($idDepot==$item['numeroMarque']) { - $marque = new Marque(); - $marque->Marques = $item['nomMarque']; - $marque->Date = $item['dateDepot']; - $marque->Depot = $item['numeroMarque']; - $marque->IdLien = $idLien; - $marque->UrlLien = $item['UrlLien']; - $marque->PdfDispo = $item['pdfLink']; - $marque->Classes = $item['classesMarque']; - $marque->Perimetre = $item['periMarque']; - $marque->DateExpir = $item['dateExpir']; - $marques = array(); - $marques[] = $marque; - break; - } else { - $marque = new Marque(); - $marque->Marques = $item['nomMarque']; - $marque->Date = $item['dateDepot']; - $marque->Depot = $item['numeroMarque']; - $marque->IdLien = $idLien; - $marque->UrlLien = $item['UrlLien']; - $marque->PdfDispo = $item['pdfLink']; - $marques[] = $marque; - } - } - - Zend_Registry::get('WsLogger')->info(__FUNCTION__.' : '. - print_r($marques,1)); - - $this->wsLog('marques',$siren); - $output = new MarquesReturn(); - $output->error = $error; - $output->result = $marques; - return $output; - } - - /** - * Enter description here ... - * @param string $siren - * @param string $piece - * @param string $type - * @param integer $visu - * @param integer $courrier - * @param string $ref - * @return PieceReturn - */ - public function getPiece($siren, $piece='kbis', $type='', $visu=1, $courrier=0, $ref='') - { - $this->authenticate(); - $this->permission('kbis'); - set_time_limit(400); - - if (empty($piece)) $piece = 'kbis'; - if (empty($type)) $type = ''; - if (empty($visu)) $visu = 1; - if (empty($courrier)) $courrier = 1; - if (empty($ref)) $ref = ''; - $error = new ErrorType(); - - $erreur = false; - - $kbisLocalPDF = DOC_WEB_LOCAL."kbis/$piece-$siren.pdf"; - - if (file_exists($kbisLocalPDF) - && date('Ymd', filemtime($kbisLocalPDF))==date('Ymd') - && filesize($kbisLocalPDF)>0 ) { - $size = filesize($kbisLocalPDF); - $erreur = false; - $tabNom = array(); - $ficDist = ''; - $cache = 1; - } else { - exec("php ".APPLICATION_PATH."/../batch/getPieces.php $siren $piece > /dev/null &"); - $ficDist=''; - $size=$cache=0; - } - // On supprimer l'ancien kbis si trop vieux ou vide - if (date('Ymd', filemtime($kbisLocalPDF))<>date('Ymd') - || filesize($kbisLocalPDF)==0) { - unlink($kbisLocalPDF); - } - $result = new PieceResult(); - $result->Siren = $siren; - //@todo : Envoyer vers controlleur - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $result->Url = $hostname.'/data/kbis/'.$piece.'-'.$siren.'.pdf'; - - $result->Taille = $size; - $result->Cache = $cache; - $result->fichier = $ficDist; - $this->wsLog('kbis', $siren, "$cache/$visu/$courrier/$type/$ref"); - $output = new PieceReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Commande de statut association - * @param InfoCmdAsso $infosCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdAssoReturn - */ - public function setCmdAsso( $infosCommande, $infosDemandeur ) - { - $this->authenticate(); - $this->permission('actes'); - //Initialisation - $error = new ErrorType(); - - $iDb = new WDB(); - - $siren = $infosCommande->siren; - $idEntreprise = intval($infosCommande->idEntreprise); - $assoNom = $infosCommande->raisonSociale; - debugLog('I',"commandeAsso pour $assoNom ($siren) début",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren, 0, $idEntreprise); - $assoSigle = $tabIdentite['Sigle']; - $assoAdresse = $tabIdentite['Adresse'].EOL.$tabIdentite['Adresse2']; - $assoCP = $tabIdentite['CP']; - $assoVille = $tabIdentite['Ville']; - - $mail = trim($infosDemandeur->email); - if ($mail=='') $mail = $this->tabInfoUser['email']; - - $tabInsert=array( - 'idUser' => $this->tabInfoUser['id'], - 'source' => 'asso', - 'login' => $this->tabInfoUser['login'], - 'emailCommande' => $mail, - 'siren' => $siren, - 'refUtilisateur' => $infosDemandeur->reference, - 'refDocument' => serialize($infosDemandeur), - 'refCommande' => serialize($infosCommande), - 'dateCommande' => DATETIME, - ); - - $iDbCrm = new WDB('sdv1'); - $ret = $iDbCrm->insert('commandes', $tabInsert, true); - - if ( $ret!=0 ) { - - sendMail('production@scores-decisions.com', 'asso@scores-decisions.com', - "Commande de statuts association pour $assoNom ($siren)", - "Association :".EOL.print_r($infosCommande, true).EOL.EOL. - "Demandeur:".EOL.print_r($infosDemandeur, true).EOL.EOL. - "Ref : i".$ret - ); - - $result = new CmdAssoDetail(); - $result->siren = $siren; - $result->emailCommande = $mail; - $result->dateCommande = DATETIME; - $result->refCmd = 'i'.$ret; - - sendMail('production@scores-decisions.com', $mail, - "Votre commande de statuts association sur $assoNom ($siren)", - "Votre demande de statuts sur l'association $assoNom a été prise en compte sous la référence i$ret - ".DATETIME); - $this->wsLog('commandeAsso', $siren, 'i'.$ret.'-'.DATETIME); - debugLog('I',"commandeAsso pour $assoNom ($siren) fin",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - } else { - - $error->errnum = 1; - $error->errmsg = 'Erreur'; - - } - - $output = new CmdAssoReturn(); - $output->error = $error; - $output->commande = $result; - return $output; - } - - /** - * Commande d'une enquête sur une entreprise en France ou à l'Internationale - * @param InfosCmdEnquete $infosCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdEnqueteReturn - **/ - public function setCmdEnquete($infosCommande, $infosDemandeur) - { - $this->authenticate(); - $this->permission('enquetec'); - - //Initialisation - $error = new ErrorType(); - $siren = $infosCommande->siren; - - $mail = trim($infosDemandeur->email); - if ($mail=='') $mail = $this->tabInfoUser['email']; - - $tabInsert = array( - 'idUser' => $this->tabInfoUser['id'], - 'source'=> 'intersud', // 'greffes', 'asso', 'graydon' - 'login'=> $this->tabInfoUser['login'], - 'emailCommande'=> $mail, - 'siren'=> $siren, - 'refDocument'=> serialize($infosDemandeur), - 'refCommande'=> serialize($infosCommande), - 'dateCommande'=> DATETIME, - ); - debugLog('I',"Intersud, début sur $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $messageInfo=print_r($infosCommande, 1).EOL.print_r($infosDemandeur,1).EOL; - - $idClient = $this->tabInfoUser['idClient']; - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients', ' nom, racineLogin, InterSudLogin, InterSudPass', "id='$idClient'", false, MYSQL_ASSOC); - $login = trim($rep[0]['InterSudLogin']); - $pass = trim($rep[0]['InterSudPass']); - $nomClient = trim(strtoupper($rep[0]['nom'])); - $strInfoCommande ="NOM et Prénom du client demandeur : ".$infoDemandeur->nom.EOL; - $strInfoCommande.="Email du client demandeur : $mail".EOL; - $strInfoCommande.="Tel/Fax du demandeur : ".$infosDemandeur->tel.' / '.$infosDemandeur->fax.EOL; - $strInfoCommande.="Profil du demandeur : ".trim($infosDemandeur->service).EOL; - $typeEnqLog='enqueteDemNF'; - - if ($login=='' || $pass=='') { - /** Il ne s'agit pas d'un client final, on anonymise la commande **/ - $login = 'YLENA'; // Demandes en test - $pass = 'WYLFE'; - $nomClient = $strInfoCommande = ''; - $typeEnqLog = 'enqueteDem'; - /* ENQUETES EN PROD - $login='FACTURE'; - $pass='AWKROM'; - */ - } - - $url='http://www.intersud.fr/espace_client/espace_client.php'; - $cookie = $referer = ''; - $tabPost = array('login' => $login, 'pwd' => $pass); - $tdeb = microtime(true); - $page = getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - $tabRet=array(); - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Connexion impossible à la plateforme Intersud".EOL.$strInfoCommande); - // wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - //@todo - return array('error'=>array('errnum'=>4563456, 'errmsg'=>'Connexion impossible à la plateforme d\'enquetes'), 'results'=>$tabRet); - } - $tfin = microtime(true); - $duree = $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - $cookie = $page['header']['Set-Cookie']; - - /** Connexion à l'Extranet Intersud - **/ - $url = 'http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, '', $referer, false, '', '', 7); - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - - $fp=@fopen(LOG_PATH."/intersud.log", "a"); - @fwrite($fp, print_r($page,true)); - @fclose($fp); - $tabInterSud=array(); - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[2][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[1][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - - $ref_exp=$tabInterSud['ref_exp']; - $email_exp=$tabInterSud['email_exp']; - $tel_exp=$tabInterSud['tel_exp']; - debugLog('I',"Intersud, formulaire enquête ref $ref_exp, $email_exp, $tel_exp",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $fp=@fopen(LOG_PATH."/intersud.log", "a"); - @fwrite($fp, print_r($matches,true)); - @fwrite($fp, print_r($tabInterSud,true)); - @fclose($fp); - - /** Insertion de la commande en base - **/ - $ret = $iDbCrm->insert('commandes', $tabInsert, true); - $comment = "Référence de la commande chez Scores et Décisions : i$ret - ". - DATETIME."\n". - "Date et heure de la commande : ".date('d/m/Y - H:i')."\n". - "Origine de la commande : $nomClient". - "$strInfoCommande"."\n\n". - - "CA : ".$infosCommande->PrecisionsMontantCA."\n". - "Motif de la demande : ".trim($infosCommande->PrecisionsMotif.' '.$infosCommande->PrecisionsAutre)."\n". - "Type de la demande : ".$infosCommande->PrecisionsType."\n". - "Anciennete de la relation : ".$infosCommande->Anciennete.' '.$infosCommande->AncienneteDuree."\n". - "Observations : ".$infosCommande->Observation.EOL; - - if ($infosCommande->ImpayeesChoix<>'non') - $comment.="Impayé(s) : ".$infosCommande->ImpayeesNombre." impayé(s) pour un montant de ".$infosCommande->ImpayeesMontant." en date du ".$infosCommande->ImpayeesDate.EOL; - - if ($infosCommande->RetardPaiementChoix<>'non') - $comment.="Retard(s) de paiement : ".$infosCommande->RetardPaiementNombre." retard(s) pour un montant de ".$infosCommande->RetardPaiementMontant." en date du ".$infosCommande->RetardPaiementDate.EOL; - - if ($infosCommande->LitigeChoix<>'non') - $comment.="Présence de litige(s) : ".$infosCommande->LitigePrecisions.EOL; - - $enqType=0; - $enqDelai=7; - switch (strtolower($infosCommande->Type)) { - case 'premier': $enqType=0; $enqDelai=6; break; - case 'gold': $enqType=1; break; - case 'distrimat': $enqType=2; break; - case 'star': $enqType=3; break; - case 'avis_bancaire': $enqType=4; break; - case 'autre': $enqType=5; break; - } - - /** Ajout du RIB si communiqué **/ - if (@trim(implode(' ', $infosCommande->RIB))<>'') - $iDbCrm->insert('banques', array( - 'siren'=>$siren, - 'libBanqueGuichet'=>'', - 'precis'=>1, - 'codeBanque'=>$infosCommande->RIB->banque, - 'codeGuichet'=>$infosCommande->RIB->guichet, - 'numCompte'=>$infosCommande->RIB->compte.$infosCommande->RIB->cle, - 'dateSource'=>DATETIME, - ), true); - - /** Remplissage du formulaire d'enquête pour soumission à Intersud **/ - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren); - $tabPost = array( - 'soc'=>$tabIdentite['Nom'], - 'cible_enk'=>9, // 9 - 'siret'=>$siren, - 'acti'=>'', - 'soc_exp'=>$tabInterSud['soc_exp'], - 'type_enk'=>$enqType, // 0=Premier, 1=Gold, 2=Distrimat, 3=Star, 4=Avis bancaire, 5=Autre - 'nom_diri'=>'', - 'adr'=>$tabIdentite['Adresse'], - 'ref_exp'=>$tabInterSud['ref_exp'], - 'autre_type_enk'=>'', // Texte libre - 'adr2'=>$tabIdentite['Adresse2'], - 'delai_enk'=>$enqDelai, // 6=24h, 7=72h, 8=+de5jours - 'ville'=>$tabIdentite['Ville'], - 'cp'=>$tabIdentite['CP'], - 'pays'=>'', // International ? - 'nom_exp'=>$tabInterSud['nom_exp'], - 'tel'=>$tabIdentite['Tel'], - 'port'=>$infosCommande->AutreTel, - 'tel_exp'=>$tabInterSud['tel_exp'], - 'bank'=>trim(implode(' ', $infosCommande->RIB)), - 'int_enk'=>$tabInterSud['int_enk'], // International ? - 'encours'=>$infosCommande->Encours, - 'nb_ech'=>$infosCommande->NbEcheances, - 'delai2_enk'=>$tabInterSud['delai2_enk'], // International ? - 'email_exp'=>$tabInterSud['email_exp'], - 'cred'=>'', - 'comment'=>urlencode($comment), - 'val_ret'=>$tabInterSud['val_ret'], - ); - $url='http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb=microtime(true); - $page=getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - $tabRet=array(); - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Validation impossible du formulaire d'enquête Intersud".EOL.$strInfoCommande); - //@todo - return array('error'=>array('errnum'=>456345, 'errmsg'=>'Connexion impossible à la plateforme d\'enquetes 3'), 'results'=>$tabRet); - } - $tfin=microtime(true); - $duree+=$tfin-$tdeb; - $referer=$url; - $body=$page['body']; - - $result = new CmdEnquete(); - $result->siren = $siren; - $result->emailCommande = $mail; - $result->dateCommande = DATETIME; - $result->refCmd = 'i'.$ret; - - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Commande d'enquete sur $siren", $comment.EOL.EOL.'---------------------------------'.EOL.$messageInfo.EOL.EOL.'---------------------------------'.EOL.$body); - @sendMail('production@scores-decisions.com', $mail, "Votre demande d'enquete sur ".$tabIdentite['Nom']." ($siren)", "Votre demande d'enquête sur la société ".$tabIdentite['Nom']." a été prise en compte sous la référence i$ret - ".DATETIME); - $this->wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - - /** Gestion de la déconnexion **/ - $url='http://intersud.fr/espace_client/index.php?code_ret=9'; - $tdeb=microtime(true); - $page=getUrl($url, $cookie, '', $referer, false, '', '', 7); - $tfin=microtime(true); - $duree+=$tfin-$tdeb; - - $ret = $iDbCrm->update('commandes', array('dureeCommande'=>round($duree,3)), "idCommande=$ret"); - - $output = new CmdEnqueteReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * getStatsUtilisateurs - * @param string $login - * @param string $mois - * @param string $type - * @param boolean $payants - * @return array - */ - public function getStatsUtilisateurs($login, $mois, $type='jour', $payants=false) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - if ($payants) - { - $strPayant="AND (page LIKE 'greffe_%' OR page LIKE 'inpi_%' OR page='kbis') AND params<>'' AND (params NOT LIKE '%erreur%' OR params LIKE '%erreur 17%') "; - } - else { - $strPayant=''; - } - $iDbCrm = new WDB('sdv1'); - if ($type=='jour') { - $rep = $iDbCrm->select('logs', - 'date(dateHeure) as jours, count(*) as nb', - "1 $strPayant AND login='$login' AND dateHeure BETWEEN '$mois-01' AND '$mois-31' GROUP BY jours", - false, MYSQL_ASSOC); - } elseif ($type=='heure') { - $rep = $iDbCrm->select('logs', - 'HOUR(dateHeure) as heures, count(*) as nb', - "1 $strPayant AND login='$login' AND dateHeure BETWEEN '$mois-01' AND '$mois-31' GROUP BY heures", - false, MYSQL_ASSOC); - } - $tabRet = $rep; - - - - return array('error'=>array('errnum'=>0, 'errmsg'=>''), 'results'=>$tabRet); - } - - /** - * getPortefeuilleCsv - * @param string $login - * @param int $idClient - * @return ListeSurveillancesCsvReturn - */ - public function getPortefeuilleCsv($login='', $idClient=0) - { - return $this->getListeSurveillancesCsv('portefeuille', $login, $idClient); - } - - /** - * getPortefeuille - * @param PortefeuilleFiltre $filtre - * @param int $deb - * @param int $nbRet - * @return PortefeuilleReturn - */ - public function getPortefeuille($filtre, $deb=0, $nbRet=100) - { - $this->authenticate(); - - // Initialisation - $error = new ErrorType(); - if (empty($deb)) { $deb = 0; } - if (empty($nbRet)) { $nbRet = 100; } - - $tri = strtolower(trim($filtre->tri)); - switch ($tri) { - case 'ref': $orderBy='ORDER BY ref'; break; - case 'dateAjout': $orderBy='ORDER BY dateAjout'; break; - case 'dateDerEnvoi':$orderBy='ORDER BY dateDerEnvoi'; break; - case 'rs': $orderBy='ORDER BY rs'; break; - case 'cp': $orderBy='ORDER BY cp'; break; - case 'ville': $orderBy='ORDER BY ville'; break; - case 'indiScore': $orderBy='ORDER BY indiScore'; break; - case 'encours': $orderBy='ORDER BY encours'; break; - default: $orderBy='ORDER BY siren'; break; // siren ou vide ou autre - } - - $tabRet = array(); - $siren = substr($filtre->siret,0,9); - $nic = substr($filtre->siret,9,5); - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - - $strSelect = 's.email, s.siren, s.nic, s.ref, s.dateAjout, s.rs, s.cp, s.ville, s.dateDerEnvoi, s.encoursClient, c.actif, c.procol, c.indiScore, c.indiScore20, c.encours, c.indiScoreDate, c.dateBilan, c.indiScorePre, c.indiScore20Pre, c.encoursPre, c.indiScoreDatePre, c.sourceModif, c.scoreSolv, c.scoreSolvPre, c.scoreDir, c.scoreDirPre, c.scoreConf, c.scoreConfPre, c.scoreZ, c.scoreZPre, c.scoreCH, c.scoreCHPre, c.scoreAfdcc2, c.scoreAfdcc2Pre, c.situFi, c.situFiPre, c.infoNote, c.infoNotePre, c.noteStruct, c.noteStructPre, c.noteFin, c.noteFinPre, c.tendance, c.tendancePre, c.dateUpdate'; - - $strFiltre = ''; - if (intval($siren)>0) $strFiltre.= " AND s.siren=$siren "; - if (!empty($filtre->ref)) $strFiltre.= " AND s.ref LIKE '%$filtre->ref%'"; - if (!empty($filtre->rs)) $strFiltre.= " AND s.rs LIKE '%$filtre->rs%'"; - - // Il faut compter le nombre de siren au total - $tabTmp = $iDb->select('surveillances_site s', 'count(*) as nb', "s.login='$login' AND s.source='score' AND s.dateSuppr=0 $strFiltre", false, MYSQL_ASSOC); - $nbRepTot = $tabTmp[0]['nb']; - - $tabTmp = $iDb->select('surveillances_site s, scores_surveillance c', $strSelect, "s.login='$login' AND s.source='score' AND s.dateSuppr=0 AND s.siren=c.siren $strFiltre $orderBy LIMIT $deb,$nbRet", false, MYSQL_ASSOC); - foreach ($tabTmp as $i=>$tabSurv) { - if (trim($tabSurv['rs'])<>'') { - $rs=$tabSurv['rs']; - $cp=$tabSurv['cp']; - $ville=$tabSurv['ville']; - } else { - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($tabSurv['siren'], $tabSurv['nic']); - $rs=$tabIdentite['Nom']; - $cp=$tabIdentite['CP']; - $ville=$tabIdentite['Ville']; - $iDb->update('surveillances_site',array( - 'rs' => $rs, - 'cp' => $cp, - 'ville' => $ville), - "login='$login' AND source='score' AND dateSuppr=0 AND siren=".$tabSurv['siren']." AND nic=".$tabSurv['nic'], - false - ); - } - - $portefeuille = new Portefeuille(); - $portefeuille->email = $tabSurv['email']; - $portefeuille->siren = $tabSurv['siren']; - $portefeuille->nic = $tabSurv['nic']; - $portefeuille->ref = $tabSurv['ref']; - $portefeuille->dateAjout = $tabSurv['dateAjout']; - $portefeuille->rs = $rs; - $portefeuille->cp = $cp; - $portefeuille->ville = $ville; - // Entreprise - $portefeuille->actif = $tabSurv['actif']; - $portefeuille->procol = $tabSurv['procol']; - $portefeuille->indiScore = $tabSurv['indiScore']; - $portefeuille->indiScore20 = $tabSurv['indiScore20']; - $portefeuille->indiScorePre = $tabSurv['indiScorePre']; - $portefeuille->indiScore20Pre = $tabSurv['indiScore20Pre']; - $portefeuille->encours = $tabSurv['encours']; - $portefeuille->encoursPre = $tabSurv['encoursPre']; - $portefeuille->indiScoreDate = $tabSurv['indiScoreDate']; - $portefeuille->indiScoreDatePre = $tabSurv['indiScoreDatePre']; - $portefeuille->encoursClient = $tabSurv['encoursClient']; - $portefeuille->dateBilan = $tabSurv['dateBilan']; - $portefeuille->sourceModif = $tabSurv['sourceModif']; - //, c.scoreSolv, c.scoreSolvPre, c.scoreDir, c.scoreDirPre, c.scoreConf, c.scoreConfPre, c.scoreZ, c.scoreZPre, c.scoreCH, c.scoreCHPre, c.scoreAfdcc2, c.scoreAfdcc2Pre, c.situFi, c.situFiPre, c.infoNote, c.infoNotePre, c.noteStruct, c.noteStructPre, c.noteFin, c.noteFinPre, c.tendance, c.tendancePre, c.dateUpdate'; - $portefeuille->dateDerEnvoi = $tabSurv['dateDerEnvoi']; - $tabRet[] = $portefeuille; - - } - - $output = new PortefeuilleReturn(); - $output->error = $error; - $output->result = $tabRet; - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbRepTot; - return $output; - } - - - /** - * rechercheHisto - * @param string $recherche - * @param string $annee - * @param string $typeBod - * @param int $deb - * @param int $nbRep - * @param int $maxRep - * @param bool $pertinence - * @return RechercheHistoReturn - */ - public function rechercheHisto($recherche, $annee='', $typeBod='', $deb=0, $nbRep=20, $maxRep=200, $pertinence=false) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - if (empty($annee)) $annee = ''; - if (empty($typeBod)) $typeBod = ''; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($annee)) $pertinence = false; - $liste = array(); - $index = 'histo'; - - debugLog('I',"rechercheHisto de $recherche ($annee) (Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabFiltres = array(); - - if ($annee<>'' && $annee*1>=1953 && $annee*1<=date('Y')*1) - $tabFiltres = array('annee1'=>$annee); - - /* - require_once 'Metier/sphinx/recherche2.php'; - $ret=search2('histo', "$recherche", $tabFiltresAnnee, $deb, $nbRep, $maxRep, $pertinence); - */ - - if (SPHINX_HISTO_VERSION == 1){ - require_once 'sphinxapi/sphinxapi-0.9.9.php'; - } elseif (SPHINX_HISTO_VERSION == 2){ - require_once 'sphinxapi/sphinxapi-2.1.2.php'; - } - - $cl = new SphinxClient(); - $cl->SetServer (SPHINX_HISTO_HOST, SPHINX_HISTO_PORT); - $cl->SetConnectTimeout ( 1 ); - $cl->SetLimits ($deb, $nbRep, $maxRep); - $cl->SetMatchMode (SPH_MATCH_EXTENDED); - foreach ($tabFiltres as $nomFiltre => $valFiltre) - $cl->SetFilter($nomFiltre, array(0=>$valFiltre)); - $cl->SetRankingMode ( SPH_RANK_PROXIMITY_BM25 ); - $res = $cl->Query ( $recherche, $index ); - - if ($res===false) { - debugLog('I',"Search Sphinx : Pas de réponse pour $recherche avec ".implode(',',$tabFiltres).' ('.$cl->GetLastError() .')',__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $criteres = new RechercheHistoCriteres(); - $criteres->recherche = $recherche; - $criteres->annee = $annee; - - $output = new RechercheHistoReturn(); - $output->criteres = $criteres; - $output->nbReponses = 0; - $output->nbReponsesTotal = 0; - $output->duree = $res[time]; - $output->mots = array(); - $output->reponses = array(); - return $output; - - } - // Le moteur est opérationel - if ( $cl->GetLastWarning() ) { - debugLog('I',"Search Sphinx : Warning pour $recherche - ".$cl->GetLastWarning(),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - //print "WARNING: " . $cl->GetLastWarning() . "\n\n"; - } - - debugLog('I',"'Search Sphinx dans $index de $recherche (Filtre=".implode(',',$tabFiltres)."), Deb=$deb, nbRep=$nbRep, max=$max, any=$any",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet=array(); - if ( is_array($res['matches'])) { - $iDb = new WDB(); - foreach ( $res['matches'] as $doc => $docinfo ) - { - $listeEtab=$iDb->select('histobodacc.bodacc_ocr', - "'Histo' as Loc, id, nomFichier, annee1, bod, texte", - "id=$doc"); - $etab = $listeEtab[0]; - $tabRet[]=array( - 'Localisation' => $etab['Loc'], - 'id' => $doc, - 'Pertinence' => $docinfo['weight'], - 'Fichier' => $etab['nomFichier'], - 'Annee' => $etab['annee1'], - 'Code' => $etab['bod'], - 'Texte' => $etab['texte'], - ); - } - } - debugLog('I','Search Sphinx : Retourne '. $res[total].'/'. $res[total_found] .' en '.$res[time] .'secondes',__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $liste = $tabRet; - $nbTot = $res[total_found]; - $duree = $res[time]; - $tabMots = $res['words']; - - $tabRet = array(); - $k=0; - if(count($liste)>0) { - require_once 'i18n/cleanchar.php'; - foreach ($liste as $n=>$etab) { - $texte = cleanutf8($etab['Texte']); - $pattern = '/[^a-zA-Z0-9\/]+/ '; - $texte = preg_replace($pattern, ' ', $texte); - $posMin=100000; - $hitMin=1000000; - foreach ($tabMots as $mot=>$tabMot) { - if ($tabMot['hits']<$hitMin) { - $hitMin=$tabMot['hits']; - $motSignificatif=$mot; - } - } - $posMin = stripos($texte, ''.$motSignificatif); - if ($posMin<150) $posMin=150; - $texte2 = substr($texte, $posMin-150, 250); - $reponse = new RechercheHistoReponses(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - - //@todo : gestion du lien pour le téléchargement des fichiers bodacc - $file = strtr($etab['Fichier'], array( - '.txt'=>'.pdf', - '/mnt/bodacc/' => '')); - $vieuxWS = false; - if ($vieuxWS) { - $reponse->Fichier = 'http://tville.scores-decisions.com/bodacc/'.$file; - } else { - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $url = '/fichier/bodacc/q/'.base64_encode($file); - $reponse->Fichier = $hostname.$url; - } - $reponse->Annee = $etab['Annee']; - $reponse->Code = $etab['Code']; - $reponse->Texte = $texte2; - $tabRet[] = $reponse; - $k++; - } - } - - $criteres = new RechercheHistoCriteres(); - $criteres->recherche = $recherche; - $criteres->annee = $annee; - - $output = new RechercheHistoReturn(); - $output->criteres = $criteres; - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbTot; - $output->duree = $duree; - $output->mots = array_keys($tabMots); - $output->reponses = $tabRet; - return $output; - } - - /** - * getListeSurveillanceCsv - * @param string $source - * @param string $login - * @param int $idClient - * @return ListeSurveillancesCsvReturn - */ - public function getListeSurveillancesCsv($source='', $login='', $idClient=0) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - if (empty($source)) $source = ''; - if (empty($idClient)) $idClient = 0; - - - debugLog('I',"getListeSurveillancesCsv Début $source $login $idClient",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $iDb = new WDB(); - $strClient = $strLogin = ''; - $exportPtf = false; - switch ($source) - { - case 'insee': - case 'annonces': - case 'bilans': - case 'score': - case 'actes': - case 'privileges': - case 'dirigeants': - break; - case 'portefeuille': - $source='score'; - $exportPtf=true; - break; - default: - $source=''; - break; - } - - if ($source<>'') $strSource = "AND source='$source' "; - else $strSource = ''; - - // Control idClient - if ($idClient==0 || ($idClient!=$this->tabInfoUser['idClient'] && $this->tabInfoUser['profil']!='SuperAdministrateur') ){ - $idClient = $this->tabInfoUser['idClient']; - } - $strClient = "AND u.idClient=$idClient "; - - if ($this->tabInfoUser['profil']=='SuperAdministrateur' || $this->tabInfoUser['profil']=='Administrateur') { - // Surveillances de tous les utilisateurs du client - if (empty($login)) { - $login = ''; - //Surveillances de l'utilisateur - } else { - $strLogin = "AND s.login='$login' "; - } - } else { - //Par défaut préselection de l'utilisateur - $login = $this->tabInfoUser['login']; - $strLogin = "AND s.login='$login' "; - } - - $fichierCsv = DOC_WEB_LOCAL."csv/listesurv-$source-$login-$idClient.csv"; - - if (file_exists($fichierCsv) && - date('Ymd', filemtime($fichierCsv))==date('Ymd') && - filesize($fichierCsv)>60 ) { - $size = filesize($fichierCsv); - $erreur = false; - $tabNom = array(); - $cache = 1; - } else { - unlink($fichierCsv); - if ($source=='score'){ - if ($this->tabInfoUser['typeScore']==20) { - $strScore='v.indiScore20 AS indiScore20'; - $strScorePre='v.indiScore20Pre AS indiScore20Pre'; - } else { - $strScore='v.indiScore AS indiScore100'; - $strScorePre='v.indiScorePre AS indiScore100Pre'; - } - /*v.scoreZ, v.scoreZPre, v.scoreCH, v.scoreCHPre, - v.scoreAfdcc2, v.scoreAfdcc2Pre, v.situFi, v.situFiPre, v.infoNote, v.infoNotePre, - v.noteStruct, v.noteStructPre, v.noteFin, v.noteFinPre, v.tendance, v.tendancePre, */ - $sql="SELECT LOWER(s.login) as loginUti, s.source, s.email, s.siren, s.nic, s.ref, s.dateAjout, - s.rs, s.cp, s.ville, s.dateDerEnvoi, - s.encoursClient, v.actif, v.procol, $strScore, v.encours, v.indiScoreDate, v.dateBilan, - $strScorePre, v.encoursPre, v.indiScoreDatePre, v.sourceModif, v.scoreSolv, v.scoreSolvPre, v.scoreDir, - v.scoreDirPre, v.scoreConf, v.scoreConfPre, - e.cj, e.capital, e.capitalDev, e.ape_entrep, e.tca, e.teff_entrep, - v.dateUpdate - FROM surveillances_site s, sdv1.utilisateurs u, sdv1.clients c, scores_surveillance v, etablissements e - WHERE s.source='score' $strClient $strLogin AND dateSuppr=0 AND s.login=u.login AND u.idClient=c.id AND s.siren=v.siren AND s.siren=e.siren - GROUP BY loginUti, s.siren, s.nic, s.source, s.ref - ORDER BY loginUti ASC, s.siren ASC, s.nic ASC, s.source ASC, s.ref ASC"; - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeSurveillancesCsv($source, $login, $idClient)", $sql); - } else { - $sql="SELECT LOWER(s.login) as loginUti, s.source, s.email, s.siren, s.nic, s.ref, s.dateAjout, - s.rs, s.cp, s.ville, s.dateDerEnvoi - FROM surveillances_site s, sdv1.utilisateurs u, sdv1.clients c - WHERE 1 $strSource $strClient $strLogin AND dateSuppr=0 AND s.login=u.login AND u.idClient=c.id - ORDER BY loginUti ASC, s.siren ASC, s.nic ASC, s.source ASC, s.ref ASC"; - } - debugLog('I',"getListeSurveillancesCsv SQL $sql",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $fp = fopen(DOC_WEB_LOCAL."csv/listesurv-$source-$login-$idClient.sql", 'w'); - fwrite($fp, $sql.EOL); - fclose($fp); - exec("php ".APPLICATION_PATH."/../batch/sql2csv.php jo ".DOC_WEB_LOCAL."csv/listesurv-$source-$login-$idClient.sql $fichierCsv > /dev/null &"); - $size=$cache=0; - } - - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $result = new ListeSurveillancesCsv(); - $result->Url = $hostname.DOC_WEB_URL."csv/listesurv-$source-$login-$idClient.csv"; - $result->Taille = $size; - $result->Cache = $cache; - - debugLog('I','getListeSurveillancesCsv Url='.$hostname.DOC_WEB_URL."csv/listesurv-$source-$login-$idClient.csv, Taille=$size, Cache=$cache",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $output = new ListeSurveillancesCsvReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * getListeJalCollecte - * @return ListeJalCollecteReturn - */ - public function getListeJalCollecte() - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - - $iBodacc = new MBodacc(); - $tabJal = $iBodacc->getListeJalCollecte(); - foreach ($tabJal as $i=>$jal) - { - $jalCollecte = new JalCollecte(); - $jalCollecte->id = $i; - $jalCollecte->nom = $jal; - $tabRet[] = $jalCollecte; - } - $output = new ListeJalCollecteReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * getListeFichierSurv - * @param string $login - * @param string $ref - * @param string $nomFic - * @return ListeFichierSurvReturn - */ - public function getListeFichierSurv($login, $ref='*', $nomFic='') - { - $this->authenticate(); - if (empty($ref)) $ref = '*'; - if (empty($nomFic)) $nomFic = ''; - $error = new ErrorType(); - //debugLog('I',"getListeFichierSurv pour $login, $ref, $nomFic",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabFichier=$tabDates=array(); - $numAbo=substr($ref, 0,5); - if (strtolower($login)=='vwbank') { - $repClient='volkswagen bank'; - $ficClient='surveillanceBodacc_SURBODPRDCFTVWBANK'; - $numAbo=$ref='19300'; - } elseif (substr($login,0,6)=='apicil') { - $repClient='apicil'; - $ficClient='surveillanceBodacc_SURBODPRDCFTAPICIL'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='omni04') { - $repClient='aggm mederic '; - $ficClient='surveillanceBodacc_SURBODPRDFTSOMNIREP'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='bodacca3m') { - $repClient='aggm mederic '; - $ficClient='surveillanceBodacc_SURBODPRDFTSMEDERIC'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='bodaccomni') { - $repClient='aggm mederic '; - $ficClient='surveillanceBodacc_SURBODPRDFTSOMNIREP'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='bodacccrr') { - $repClient='aggm mederic '; - $ficClient='surveillanceBodacc_SURBODPRDFTSCRR'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='cpcambr13' || strtolower($login)=='cpcambr14') { - $repClient='cpcam des bouches du rhône'; - $ficClient='diffusionBodacc_DIFBODPRDMAICPCAM13'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='frbsurveillance'){ - $repClient='france boissons'; - $ficClient='surveillanceBodacc_SURBODPRDFTPFBOISSON'; - } else { - $repClient='cnasea'; - $ficClient='surveillanceBodacc_SURBODTSTFTSCNASEA'; - } - $dh = opendir(DOC_WEB_LOCAL."clients/$repClient/"); - if (!$dh) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic", "Impossible d'ouvrir le dossier '/home/data/clients/$repClient/'"); - $error->errnum = 1; - $error->errmsg = "Impossible d'ouvrir le dossier client"; - } else { - while (false !== ($filename = readdir($dh))) { - if ($filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,42)==$ficClient.$numAbo) { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,43,8); - $tabClients[]=substr($filename,0,42); - } - elseif ($ref=='*' && $filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,37)==$ficClient && substr($filename,37,1)<>'_') { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,43,8); - $tabClients[]=substr($filename,0,42); - } - elseif ($filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,37)==$ficClient && substr($filename,37,1)=='_' && $repClient=='apicil') { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,38,8); - $tabClients[]=substr($filename,0,37); - } - elseif ($filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,38)==$ficClient && substr($filename,38,1)=='_' && $repClient=='aggm mederic ') { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,39,8); - $tabClients[]=substr($filename,0,38); - } - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic : fichier lu '$filename'", "Fichier lu '$filename'"); - /* - elseif ( $ficClient=='surveillanceBodacc_SURBODPRDFTPFBOISSON' && substr($filename,0,strlen($ficClient))==$ficClient && $repClient=='france boissons') { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,strlen($ficClient)+1,8); - $tabClients[]=substr($filename,0,strlen($ficClient)); - } - */ - } - /** Tableau des noms de fichier **/ - sort($tabFichier); - /** Tableau des dates de livraisons **/ - $tabDates=array_unique($tabDates); - sort($tabDates); - /** Tableau des Clients **/ - $tabClients=array_unique($tabClients); - sort($tabClients); - //return array('error'=>array('errnum'=>0, 'errmsg'=>''), 'results'=>$tabDates); - - /*@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic", - "Fichiers :".EOL. - print_r($tabFichier, true). - "Dates:".EOL. - print_r($tabDates, true). - "Clients :".EOL. - print_r($tabClients, true) - );*/ - - if ($ref=='*') { - $tabFichier = array(); - // Boucle sur les dates de livraison - foreach ($tabDates as $dateFic) { - if (strlen($dateFic)<>8) continue; - if (!file_exists(DOC_WEB_LOCAL."clients/$repClient/$ficClient".'_'."$dateFic.csv") || - filesize(DOC_WEB_LOCAL."clients/$repClient/$ficClient".'_'."$dateFic.csv")==0) { - - $fpW=fopen(DOC_WEB_LOCAL."clients/$repClient/$ficClient".'_'."$dateFic.csv",'w'); - $entete=true; - // Boucle afin de vérifier si on est sur le bon client - foreach ($tabClients as $nomClient) { - $dh = opendir(DOC_WEB_LOCAL."clients/$repClient/"); - while (false !== ($filename = readdir($dh))) { - if (substr($filename,0,51)==$nomClient.'_'.$dateFic && substr($filename,-4)=='.csv') { - $fichier=$filename; - //break; - } - } - $fpR=fopen(DOC_WEB_LOCAL."clients/$repClient/$fichier",'r'); - //return array('error'=>array('errnum'=>0, 'errmsg'=>''), 'results'=>array(($fichier)));//die; - if ($fpR) { - while (!feof($fpR)) { - $ligne=trim(fgets($fpR)); - if (substr($ligne,0,5)=='Siren' && $entete==true) { - fwrite($fpW, 'SITE;'.$ligne.EOL); - $entete=false; - } - elseif (substr($ligne,0,5)<>'Siren' && trim($ligne)<>'') { - fwrite($fpW, strtr($nomClient, array('surveillanceBodacc_SURBODTSTFTS'=>'', - 'surveillanceBodacc_SURBODPRDCFT'=>'')).';'.$ligne.EOL); - } - } - fclose($fpR); - } - } - fclose($fpW); - } - if (strlen($dateFic)==8) - $tabFichier[]=$ficClient.'_'.$dateFic.'.csv'; - } - } - rsort($tabFichier); - - if ($nomFic<>'') { - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, /home/data/clients/$repClient/$nomFic", 'Avant BZ2'); - if (!file_exists(DOC_WEB_LOCAL."/csv/$nomFic.bz2") || - filesize(DOC_WEB_LOCAL."/csv/$nomFic.bz2")<=14) { - $string=file_get_contents("/home/data/clients/$repClient/$nomFic"); - if ($string===false) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic", "Ouverture impossible du fichier '/home/data/clients/$repClient/$nomFic'"); - } - $bz = bzopen(DOC_WEB_LOCAL."/csv/$nomFic.bz2",'w'); - if ($bz) { - bzwrite($bz, $string, strlen($string)); - bzclose($bz); - } - } /*else - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, /home/data/clients/$repClient/$nomFic", 'Sans BZ2'); - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, /home/data/clients/$repClient/$nomFic", 'Après BZ2'); - */ - } - debugLog('I',"getListeFichierSurv pour $login, $ref, $nomFic : nb fichiers=".count($tabFichier),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $result = array(); - foreach($tabFichier as $fichier){ - $retFichier = new ListeFichierSurv(); - $retFichier->UrlFichier = $hostname.'/data/csv/'.$fichier; - $result[] = $retFichier; - } - } - $output = new ListeFichierSurvReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Geocodage d'une adresse - * @param string $adresse - * @param string $cp - * @param string $ville - * @param string $pays - * @return GeoCodeReturn - */ - public function geoCode($adresse, $cp, $ville, $pays='France') - { - $this->authenticate(); - - $ligne = date('YmdHis').";$siren;MMap AVANT"; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - - $mMap = new MMap($adresse, $cp, $ville, $pays); - - $ligne=date('YmdHis').";$siren;MMap APRES"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - - $geocode = new GeoCode(); - $geocode->latitude = $mMap->latitudeDec; - $geocode->longitude = $mMap->longitudeDec; - $geocode->precis = $mMap->precision; - $geocode->adresseValidee = $mMap->adresseValidee; - $geocode->latitudeDeg = $mMap->latitudeDeg; - $geocode->longitudeDeg = $mMap->longitudeDeg; - - $output = new GeoCodeReturn(); - $output->error = $error; - $output->result = $geocode; - } - - /** - * Recherche d'entreprise par leur actionnaire - * @param string $nom Raison sociale / Nom de l'actionnaire (obligatoire) - * @param string $cpVille CP, Ville - * @param string $siren Siren de l'actionnaire - * @param string $pays Pays de l'actionnaire - * @param string $pctMin Niveau de détention Minimam de l'actionnaire - * @param string $pctMax Niveau de détention Maximum de l'actionnaire - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur les noms et prénoms (si true) - * @return SearchActReturn - */ - public function searchAct($nom, $cpVille='', $siren=0, $pays='', $pctMin=0, $pctMax=100, $deb=0, $nbRep=20, $maxRep=200, $pertinence=false) - { - debugLog('I',"Recherche Actionnaire de $nom, $cpVille (Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (!empty($pays)){ - $wdb = new WDB('jo'); - $result = $wdb->select('tabPays', 'codPays3', "libPays LIKE '".$pays); - if (count($result>0)){ - $pays = $result[0]['codPays3']; - } else { - $pays = ''; - } - } - - if (empty($cpVille)) $cpVille = ''; - if (empty($siren)) $siren = ''; - if (empty($pctMin)) $pctMin = 0; - if (empty($pctMax)) $pctMax = 100; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($pertinence)) $pertinence = false; - - $mLiens = new MLiens(''); - // rechercheActionnaire($nom, $cpVille, $siren, $pays, $pctMin, $pctMax, $deb, $nbRep, $maxRep, $pertinence) - $etabs = $mLiens->rechercheActionnaire($nom, $cpVille, $siren, $pays, $pctMin, $pctMax, $deb, $nbRep, $maxRep, $pertinence); - - $iInsee = new MInsee(); - - $tabRet = array(); - foreach ($etabs['reponses'] as $etab) { - $act = new EntrepriseActItem(); - $act->id = $etab['id']; - $act->Pertinence = $etab['Pertinence']; - $act->Siret = $etab['Siret']; - $act->Siege = $etab['Siege']; - $act->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $act->Nom2 = prepareString($etab['Nom2']); - $act->Sigle = prepareString($etab['Sigle']); - $act->Enseigne = prepareString($etab['Enseigne']); - $act->Adresse = prepareString($etab['Adresse']); - $act->Adresse2 = prepareString($etab['Adresse2']); - $act->CP = $etab['CP']; - $act->Ville = prepareString($etab['Ville']); - $act->Tel = $etab['Tel']; - $act->Fax = $etab['Fax']; - $act->FJ = $etab['FJ']; - $act->FJLib = prepareString($iInsee->getLibelleFJ($etab['FJ'])); - $act->Siren = $etab['Siren']; - $act->Nic = $etab['Nic']; - $act->Actif = $etab['Actif']; - $act->NafEtab = $etab['NafEtab']; // Etablissement - $act->NafEtabLib = prepareString($iInsee->getLibelleNaf($etab['NafEtab'])); // Etablissement - $act->NafEnt = $etab['NafEnt']; // Entreprise - $act->NafEntLib = prepareString($iInsee->getLibelleNaf($etab['NafEnt'])); - $act->ActNomRs = $etab['ActNomRs']; - $act->ActPays = $etab['ActPays']; - $act->ActDateLien = $etab['ActDateLien']; - $act->ActActif = $etab['ActActif']; - $act->ActPmin = $etab['ActPmin']; - $tabRet[] = $act; - } - - $output = new SearchActReturn(); - $output->nbReponses = $etabs['nbReponses']; - $output->nbReponsesTotal = $etabs['nbReponsesTotal']; - $output->result = $tabRet; - - if ($tabRet['nbReponses']==0) { - debugLog('W', "Aucun résultat pour cette recherche !", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - } - - return $output; - } - - /** - * Commande d'une enquête sur une entreprise en France ou à l'Internationale - * @param string $siren - * @param string $infoEnq Informations pour la demande d'enquête
        - * InfoEnq[Entrep][Tel]
        - * InfoEnq[Entrep][Fax]
        - * InfoEnq[Entrep][AutreTel]
        - * InfoEnq[Entrep][Mail]
        - * InfoEnq[Entrep][AutreMail]
        - * InfoEnq[Entrep][Web]
        - * InfoEnq[Entrep][Rib][Banque]
        - * InfoEnq[Entrep][Rib][Guichet]
        - * InfoEnq[Entrep][Rib][Compte]
        - * InfoEnq[Entrep][Rib][Cle]
        - * InfoEnq[Encours]
        - * InfoEnq[NbEcheances]
        - * InfoEnq[AvisAssureur]
        - * InfoEnq[Type]
        - * InfoEnq[Delai]
        - * InfoEnq[PrecisionsChoix]
        - * InfoEnq[Precisions][MontantCA]
        - * InfoEnq[Precisions][Motif]
        - * InfoEnq[Precisions][Autre]
        - * InfoEnq[Anciennete]
        - * InfoEnq[AncienneteDuree]
        - * InfoEnq[ImpayeesChoix]
        - * InfoEnq[Impayees][Montant]
        - * InfoEnq[Impayees][Nombre]
        - * InfoEnq[Impayees][Date]
        - * InfoEnq[RetardPaiementChoix]
        - * InfoEnq[RetardPaiement][Montant]
        - * InfoEnq[RetardPaiement][Nombre]
        - * InfoEnq[RetardPaiement][Date]
        - * InfoEnq[LitigeChoix]
        - * InfoEnq[Litige][Precisions]
        - * InfoEnq[Observation]
        - * @param string $infoDemande Informations sur l'utilisateur
        - * InfoUser[Profil]
        - * InfoUser[ProfilAutre]
        - * InfoUser[Identite]
        - * InfoUser[Tel]
        - * InfoUser[Fax]
        - * InfoUser[Email]
        - * InfoUser[Ref]
        - * @return CommandeEnqueteReturn - */ - public function commandeEnquete($siren, $infoEnq, $infoDemande) - { - $this->authenticate(); - //Initialisation - $infoEnq = json_decode($infoEnq); - $infoDemande = json_decode($infoDemande); - - $mail = trim($infoDemande['Email']); - if ($mail=='') { - $mail=$this->tabInfoUser['email']; - } - - $tabInsert = array( - 'idUser' => $this->tabInfoUser['id'], - 'source' => 'intersud', // 'greffes', 'asso', 'graydon' - 'login' => $tabInfoUser['login'], - 'emailCommande' => $mail, - 'siren' => $siren, - 'refDocument' => serialize($infoDemande), - 'refCommande' => serialize($infoEnq), - 'dateCommande' => DATETIME, - // 'idClient'=> $tabInfoUser['idClient'], - ); - debugLog('I',"Intersud, début commande sur $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $messageInfo = print_r($infoEnq, 1).EOL.print_r($infoDemande,1).EOL; - - $idClient = $this->tabInfoUser['idClient']; - - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients', ' nom, racineLogin, InterSudLogin, InterSudPass', "id='$idClient'", false, MYSQL_ASSOC); - $login = trim($rep[0]['InterSudLogin']); - $pass = trim($rep[0]['InterSudPass']); - $nomClient = trim(strtoupper($rep[0]['nom'])); - $strInfoCommande = "NOM et Prénom du client demandeur : ".$infoDemande['Identite'].EOL; - $strInfoCommande.= "Email du client demandeur : $mail".EOL; - $strInfoCommande.= "Tel/Fax du demandeur : ".$infoDemande['Tel'].' / '.$infoDemande['Fax'].EOL; - $strInfoCommande.= "Profil du demandeur : ".trim($infoDemande['Profil'].' '.$infoDemande['ProfilAutre']).EOL; - $typeEnqLog='enqueteDemNF'; - - if ($login=='' || $pass=='') { - /** Il ne s'agit pas d'un client final, on anonymise la commande **/ - $login='YLENA'; // Demandes en test - $pass='WYLFE'; - $nomClient=$strInfoCommande=''; - $typeEnqLog='enqueteDem'; - /* ENQUETES EN PROD - $login='FACTURE'; - $pass='AWKROM'; - */ - } - - /** Connexion à l'Extranet Intersud **/ - $url = 'http://www.intersud.fr/espace_client/espace_client.php'; - $cookie = $referer = ''; - $tabPost = array( - 'login' => $login, - 'pwd' => $pass, - ); - $tdeb = microtime(true); - $page = getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Connexion impossible à la plateforme Intersud".EOL.$strInfoCommande); - //wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - throw new SoapFault('1',"Connexion impossible à la plateforme d'enquêtes"); - } - - $tfin = microtime(true); - $duree = $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - $cookie = $page['header']['Set-Cookie']; - $intersudNomPrenom=$intersudRaisonSociale=''; - if (preg_match('/(.*)<\/td>/Uis',$body,$matches)) - $intersudNomPrenom=trim($matches[1]); - if (preg_match('/(.*)<\/td>/Uis',$body,$matches)) - $intersudRaisonSociale=trim($matches[1]); - debugLog('I',"Intersud, connexion via $login pour $intersudRaisonSociale ($intersudNomPrenom, cookie=$cookie)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - /* - $fp=@fopen(LOG_PATH."/intersud.log", "a"); - @fwrite($fp, EOL.DATETIME.EOL.print_r($page,true).'========================================================================================================='.EOL.EOL); - @fclose($fp); - die(); - */ - /** Page formulaire de demande d'enquête **/ - $url='http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, '', $referer, false, '', '', 7); - if ($page['code']<>200) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Connexion impossible au formulaire d'enquête Intersud".EOL.$strInfoCommande); - throw new SoapFault('2',"Connexion impossible à la plateforme d'enquêtes"); - } - - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - - $fp=@fopen(LOG_PATH.'/intersud.log', "a"); - @fwrite($fp, print_r($page,true)); - @fclose($fp); - $tabInterSud=array(); - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[2][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[1][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - $ref_exp=$tabInterSud['ref_exp']; - $email_exp=$tabInterSud['email_exp']; - $tel_exp=$tabInterSud['tel_exp']; - debugLog('I',"Intersud, formulaire enquête ref $ref_exp, $email_exp, $tel_exp",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $fp=@fopen(LOG_PATH.'/intersud.log', "a"); - @fwrite($fp, print_r($matches,true)); - @fwrite($fp, print_r($tabInterSud,true)); - @fclose($fp); - - /** Insertion de la commande en base **/ - $ret = $iDbCrm->insert('commandes', $tabInsert, true); - $comment = "Référence de la commande chez Scores et Décisions : i$ret - ".DATETIME." - Date et heure de la commande : ".date('d/m/Y - H:i')." - Origine de la commande : $nomClient - $strInfoCommande - - CA : ".$infoEnq['Precisions']['MontantCA']." - Motif de la demande : ".trim($infoEnq['Precisions']['Motif'].' '.$infoEnq['Precisions']['Autre'])." - Type de la demande : ".$infoEnq['Precisions']['Type']." - Anciennete de la relation : ".$infoEnq['Anciennete'].' '.$infoEnq['AncienneteDuree']." - Observations : ".$infoEnq['Observation'].EOL; - - if ($infoEnq['ImpayeesChoix']<>'non') - $comment.="Impayé(s) : ".$infoEnq['Impayees']['Nombre']." impayé(s) pour un montant de ".$infoEnq['Impayees']['Montant']." en date du ".$infoEnq['Impayees']['Date'].EOL; - - if ($infoEnq['RetardPaiementChoix']<>'non') - $comment.="Retard(s) de paiement : ".$infoEnq['RetardPaiement']['Nombre']." retard(s) pour un montant de ".$infoEnq['RetardPaiement']['Montant']." en date du ".$infoEnq['RetardPaiement']['Date'].EOL; - - if ($infoEnq['LitigeChoix']<>'non') - $comment.="Présence de litige(s) : ".$infoEnq['Litige']['Precisions'].EOL; - - $enqType=0; - $enqDelai=7; - switch (strtolower($infoEnq['Type'])) { - case 'premier': $enqType=0; $enqDelai=6; break; - case 'gold': $enqType=1; break; - case 'distrimat': $enqType=2; break; - case 'star': $enqType=3; break; - case 'avis_bancaire': $enqType=4; break; - case 'autre': $enqType=5; break; - } - - /** Ajout du RIB si communiqué **/ - if (@trim(implode(' ', $infoEnq['Entrep']['Rib']))<>''){ - $iDbCrm->insert('banques', array( - 'siren' => $siren, - 'libBanqueGuichet' => '', - 'precis' => 1, - 'codeBanque' => $infoEnq['Entrep']['Rib']['Banque'], - 'codeGuichet' => $infoEnq['Entrep']['Rib']['Guichet'], - 'numCompte' => $infoEnq['Entrep']['Rib']['Compte'].$infoEnq['Entrep']['Rib']['Cle'], - 'dateSource' => DATETIME, - ), true); - } - - /** Remplissage du formulaire d'enquête pour soumission à Intersud **/ - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren); - $tabPost = array( - 'soc' => $tabIdentite['Nom'], - 'cible_enk' => 9, // 9 - 'siret' => $siren, - 'acti' => '', - 'soc_exp' => $tabInterSud['soc_exp'], - 'type_enk' => $enqType, // 0=Premier, 1=Gold, 2=Distrimat, 3=Star, 4=Avis bancaire, 5=Autre - 'nom_diri' => '', - 'adr' => $tabIdentite['Adresse'], - 'ref_exp' => $tabInterSud['ref_exp'], - 'autre_type_enk' => '', // Texte libre - 'adr2' => $tabIdentite['Adresse2'], - 'delai_enk' => $enqDelai, // 6=24h, 7=72h, 8=+de5jours - 'ville' => $tabIdentite['Ville'], - 'cp' => $tabIdentite['CP'], - 'pays' => '', // International ? - 'nom_exp' => $tabInterSud['nom_exp'], - 'tel' => $tabIdentite['Tel'], - 'port' => $infoEnq['Entrep']['AutreTel'], - 'tel_exp' => $tabInterSud['tel_exp'], - 'bank' => trim(implode(' ', $infoEnq['Entrep']['Rib'])), - 'int_enk' => $tabInterSud['int_enk'], // International ? - 'encours' => $infoEnq['Encours'], - 'nb_ech' => $infoEnq['NbEcheances'], - 'delai2_enk' => $tabInterSud['delai2_enk'], // International ? - 'email_exp' => $tabInterSud['email_exp'], - 'cred' => '', - 'comment' => urlencode($comment), - 'val_ret' => $tabInterSud['val_ret'], - ); - $url = 'http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Validation impossible du formulaire d'enquête Intersud".EOL.$strInfoCommande); - throw new SoapFault('3',"Connexion impossible à la plateforme d'enquêtes"); - } - - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - - $output = new CommandeEnqueteReturn(); - $output->siren = $siren; - $output->emailCommande = $mail; - $output->dateCommande = DATETIME; - $output->refCmde = 'i'.$ret; - - //$strInfoCommande $mail - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Commande d'enquete sur $siren", $comment.EOL.EOL.'---------------------------------'.EOL.$messageInfo.EOL.EOL.'---------------------------------'.EOL.$body); - @sendMail('production@scores-decisions.com', $mail, "Votre demande d'enquete sur ".$tabIdentite['Nom']." ($siren)", "Votre demande d'enquête sur la société ".$tabIdentite['Nom']." a été prise en compte sous la référence i$ret - ".DATETIME); - wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - - /** Gestion de la déconnexion **/ - $url = 'http://intersud.fr/espace_client/index.php?code_ret=9'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, '', $referer, false, '', '', 7); - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - - $ret = $iDbCrm->update('commandes', array('dureeCommande'=>round($duree,3)), "idCommande=$ret"); - - return $output; - } - - /** - * Retourne l'ensemble des informations des dirigeants opérationnels (non statutaires) de l'entreprise - * @param string $siren Siren de l'entreprise - * @return DirigeantOp[] - */ - public function getDirigeantsOp($siren) - { - $this->authenticate(); - - debugLog('I',"Dirigeants opérationnels demandés pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($siren)>9 || (substr($siren,0,9)*1)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $dirs = $iInsee->getDirigeantsOp($siren); - $tabRet = array(); - if (count($dirs)>0){ - foreach ($dirs as $nb => $dir) { - $objet = new DirigeantOp(); - $objet->Code = $dir['Fonction']; - $objet->Titre = prepareString($dir['Titre']); - $objet->Societe = prepareString($dir['Societe']); - $objet->Civilite = prepareString($dir['Civilite']); - $objet->Nom = prepareString($dir['Nom']); - $objet->Prenom = prepareString($dir['Prenom']); - $objet->NomUsage = prepareString($dir['NomUsage']); - $objet->NaissDate = $dir['NaissDate'];// 07/09/1961 - $objet->NaissVille = prepareString($dir['NaissVille']); // LE RUSSEY - $objet->NaissDepPays = prepareString($dir['NaissDepPays']); // LE RUSSEY - $objet->Ancien = $dir['Ancien']; - $objet->DateFct = $dir['DateFct']; - - $tabRet[] = $objet; - } - } - $this->wsLog('dirigeantsOp', $siren); - debugLog('I', 'Nb Dirigeants Op retournés = '. count($dirs), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - return $tabRet; - } - - /** - * Liste de tous les dépôts enregistrés à l'INPI pour une entreprise - * @param string $siren Siren de l'entreprise - * @return Depot[] - */ - public function getListeDepots($siren) - { - $this->authenticate(); - - debugLog('I',"Liste des dépots INPI pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($siren)>9 || (substr($siren,0,9)*1)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iRncs=new MRncs(); - $evens=$iRncs->getListeDepots($siren); - $tabRet = array(); - if (count($evens)>0){ - foreach ($evens as $nb=>$even){ - $objet = new Depot(); - $objet->CodeDepot = $even['codDepot']; - $objet->LibDepot = prepareString($even['libDepot']); - $objet->DateDepot = $even['datDepot']; - $objet->RefDepot = $even['refDepot']; - $objet->DateRncs = $even['datRncs']; - $objet->DateMAJ = $even['datSed']; - - $tabRet[] = $objet; - } - } - debugLog('I', 'Nb dépôts retournés = '. count($tabRet), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - return $tabRet; - } - - - /** - * Enter description here ... - * @param string $siret - * @param integer $id - * @return IdentiteLight - */ - public function getIdentiteLight($siret, $id = 0) - { - $this->authenticate(); - - //Initialisation - if (empty($id)) { - $id = 0; - } - - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if ($siren*1==0 && $id==0) { - $this->sendError('1010'); - } - if ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren, $nic, $id); - - $output = new IdentiteLight(); - $output->id = $tabIdentite['id']; - $output->Siret = $tabIdentite['Siret']; - $output->Siege = $tabIdentite['Siege']; - $output->Nom = $tabIdentite['Nom']; - $output->Tribunal = $tabIdentite['Tribunal']; - $output->Sigle = $tabIdentite['Sigle']; - $output->Enseigne = $tabIdentite['Enseigne']; - $output->Adresse = $tabIdentite['Adresse']; - $output->Adresse2 = $tabIdentite['Adresse2']; - $output->AdresseNum = $tabIdentite['AdresseNum']; - $output->AdresseBtq = $tabIdentite['AdresseBtq']; - $output->AdresseVoie = $tabIdentite['AdresseVoie']; - $output->AdresseRue = $tabIdentite['AdresseRue']; - $output->CP = $tabIdentite['CP']; - $output->Ville = $tabIdentite['Ville']; - $output->Tel = $tabIdentite['Tel']; - $output->Fax = $tabIdentite['Fax']; - $output->FJ = $tabIdentite['FJ']; - $output->FJ_Lib = $tabIdentite['FJ_lib']; - $output->Siren = $tabIdentite['Siren']; - $output->Nic = $tabIdentite['Nic']; - $output->Actif = $tabIdentite['Actif']; - $output->NafEtab = $tabIdentite['NafEtab']; - $output->NafEnt = $tabIdentite['NafEnt']; - $output->NafEntLib = $tabIdentite['NafEntLib']; - $output->NafEtabLib = $tabIdentite['NafEtabLib']; - $output->AutreId = $tabIdentite['AutreId']; - $output->Source = $tabIdentite['Source']; - $output->SourceId = $tabIdentite['SourceId']; - $output->Dept = $tabIdentite['Dept']; - $output->codeCommune = $tabIdentite['codeCommune']; - $output->Capital = $tabIdentite['Capital']; - $output->CapitalDev = $tabIdentite['CapitalDev']; - $output->TrancheCA = $tabIdentite['TrancheCA']; - $output->TrancheCALib = $tabIdentite['TrancheCALib']; - $output->EffEnTr = $tabIdentite['EffEnTr']; - $output->EffEnTrLib = $tabIdentite['EffEnTrLib']; - $output->EffEtTr = $tabIdentite['EffEtTr']; - $output->EffEtTrLib = $tabIdentite['EffEtTrLib']; - return $output; - } - - /** - * Retourne les éléments du groupes - * @param string $siren - * @param int $pctMin (33, 40 ,50) - * @param int $nbNiveaux - * @return string - */ - public function getGroupesArbo($siren, $pctMin=33, $nbNiveaux=10) - { - $this->authenticate(); - - if ( empty($pctMin) || !in_array($pctMin, array(33, 40, 50)) ) { $pctMin = 33; } - if ( empty($nbNiveaux) ) { $nbNiveaux = 10; } - - if ( strlen($siren)!=9 || intval($siren)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - require_once 'Metier/partenaires/classMLiens.php'; - $liens = new MLiens($siren); - $retour = $liens->getArborescence($siren, $pctMin, $nbNiveaux); - - $this->wsLog('groupesarbo', $siren); - return json_encode($retour); - } - - - /** - * Retourne les information du groupe, tête de pont - * @param string $siren - * @return GroupeInfos - */ - public function getGroupeInfos($siren) - { - $this->authenticate(); - - if ( strlen($siren)!=9 || intval($siren)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iDb = new WDB('jo'); - $tmp = $iDb->select('etablissements_act', - 'raisonSociale, enseigne, sigle, identite_pre, adr_num, adr_btq, adr_typeVoie, adr_libVoie, adr_comp, adr_cp, adr_ville, adr_dep, adr_com, tel, fax, siren, sirenGrp', - "siren=(SELECT distinct sirenGrp FROM etablissements_act WHERE siren=$siren AND siege=1) LIMIT 0,1", false, MYSQL_ASSOC); - $tabEnt = $tmp[0]; - - $sirenGrp = $tabEnt['siren']; - - if ($sirenGrp<1000) { - throw new SoapFault('Error', 'Aucun siren de groupe'); - } - - /** Table des Nafs5 => Secteurs **/ - $tmp = $iDb->select('tabNaf5', 'codNaf2, codNaf1', '1 GROUP BY codNAf2', false, MYSQL_ASSOC); - $tabNAf2 = array(); - foreach ($tmp as $tmp2) { - $tabNAf2[$tmp2['codNaf2']]=$tmp2['codNaf1']; - } - - $tabNaf2Lib = array( - 'A'=>'Agriculture, sylviculture et pêche', - 'B'=>'Industries extractives', - 'C'=>'Industrie manufacturière', - 'D'=>'Production et distribution d\'électricité, de gaz, de vapeur et d\'air conditionné', - 'E'=>'Production et distribution d\'eau ; assainissement, gestion des déchets et dépollution', - 'F'=>'Construction', - 'G'=>'Commerce ; réparation d\'automobiles et de motocycles', - 'H'=>'Transports et entreposage', - 'I'=>'Hébergement et restauration', - 'J'=>'Information et communication', - 'K'=>'Activités financières et d\'assurance', - 'L'=>'Activités immobilières', - 'M'=>'Activités spécialisées, scientifiques et techniques', - 'N'=>'Activités de services administratifs et de soutien', - 'O'=>'Administration publique', - 'P'=>'Enseignement', - 'Q'=>'Santé humaine et action sociale', - 'R'=>'Arts, spectacles et activités récréatives', - 'S'=>'Autres activités de services', - 'T'=>'Activités des ménages en tant qu\'employeurs ; activités indifférenciées des ménages en tant que producteurs de biens et services pour usage propre', - 'U'=>'Activités extra-territoriales', - ); - - $iInsee = new MInsee(); - $tabId = $iInsee->getIdentiteEntreprise($sirenGrp); - - //Chargement retour - $output = new GroupeInfos(); - $output->grpNom = $tabEnt['raisonSociale']; - $output->grpEnseigne = $tabEnt['enseigne']; - $output->grpSigle = $tabEnt['sigle']; - $output->grpAdrNum = $tabEnt['adr_num']; - $output->grpAdrBtq = $tabEnt['adr_btq']; - $output->grpAdrTypeVoie = $tabEnt['adr_typeVoie']; - $output->grpadrLibVoie = $tabEnt['adr_libVoie']; - $output->grpAdrComp = $tabEnt['adr_comp']; - $output->grpAdrCP = $tabEnt['adr_cp']; - $output->grpAdrVille = $tabEnt['adr_ville']; - $output->grpAdrDep = $tabEnt['adr_dep']; - $output->grpAdrCom = $tabEnt['adr_com']; - $output->grpTel = $tabEnt['tel']; - $output->grpFax = $tabEnt['fax']; - $output->grpSiren = $tabEnt['siren']; - $output->grpTva = $tabId['TvaNumero']; - $output->grpIsin = $tabId['Isin']; - $output->grpNumRC = $tabId['numRC']; - $output->grpTribunal = $tabId['TribunalLib']; - $output->grpWeb = $tabId['Web']; - - $grpNbEnt = $grpEffectif = $grpCAExp = $grpCA = $nbProcol = 0; - $grpDateCrea = $grpDateImmat = date('Ymd'); - - $tmp = $iDb->select('jo.etablissements_act e', - 'e.siren, e.eff_entrep, e.dateCrea_ent AS dateCrea, e.dateImmat*1 AS dateImmat, e.bilFK, e.bilFL, e.bilYP, e.ape_entrep, e.avisCs, e.procolHisto', - "e.sirenGrp=$sirenGrp AND e.siege=1", false, MYSQL_ASSOC); - - $tabSirenGrp = array(); - $tabSecteur = array(); - $tabAvis = array(); - if ( count($tmp)>0 ) { - foreach ($tmp as $tabEnt) - { - $tabSirenGrp[] = $tabEnt['siren']; - $grpNbEnt++; - - if ($tabEnt['bilYP']>$tabEnt['eff_entrep']) - $grpEffectif+=$tabEnt['bilYP']; - else - $grpEffectif+=$tabEnt['eff_entrep']; - - if ($tabEnt['procolHisto']*1==1) $nbProcol++; - - if ($grpDateCrea>$tabEnt['dateCrea'] && $tabEnt['dateCrea']>=19000101) - $grpDateCrea=$tabEnt['dateCrea']; - - if ($grpDateImmat>$tabEnt['dateImmat'] && $tabEnt['dateImmat']>=19000101) - $grpDateImmat=$tabEnt['dateImmat']; - - $grpCAExp+=$tabEnt['bilFK']; - $grpCA+=$tabEnt['bilFL']; - - $tabSecteur[$tabNAf2[''.substr($tabEnt['ape_entrep'],0,2)]]['nb']++; - $tabSecteur[$tabNAf2[''.substr($tabEnt['ape_entrep'],0,2)]]['ca']+=$tabEnt['bilFL']; - $tabSecteur[$tabNAf2[''.substr($tabEnt['ape_entrep'],0,2)]]['eff']+=$tabEnt['eff_entrep']; - - $tabAvis[$tabEnt['avisCs']]++; - } - } - $output->grpNbProcolHisto = $nbProcol; - $output->grpCAExport = $grpCAExp; - $output->grpCA = $grpCA; - - if ($grpCA>=500000000) - $output->grpGrandGroupeFr=1; - else - $output->grpGrandGroupeFr=0; - - $output->grpNbEntrep = $grpNbEnt; - $output->grpEffectif = $grpEffectif; - - $output->grpAnneCreation = ''; - if ($grpDateCrea<$grpDateImmat) - $output->grpAnneCreation = substr($grpDateCrea,0,4); - else - $output->grpAnneCreation = substr($grpDateImmat,0,4); - - //@todo : transformer le tableau - $output->avisCs = json_encode($tabAvis); // Vérifier les procol - - $tabSecteur2 = array(); - if ( count($tabSecteur)>0 ) { - foreach ($tabSecteur as $secteur=>$tmp) { - $info = new GroupeInfosSecteur(); - $info->code = $secteur; - $info->lib = $tabNaf2Lib[$secteur]; - $info->entrepNb = $tmp['nb']; - $info->entrepTx = round($tmp['nb']*100/$grpNbEnt,2); - $info->caNb = $tmp['ca']; - $info->caTx = round($tmp['ca']*100/$grpCA,2); - $info->effNb = $tmp['eff']; - $info->effTx = round($tmp['eff']*100/$grpEffectif,2); - $tabSecteur2[] = $info; - } - } - $output->secteur = $tabSecteur2; //@todo : transformer le tableau - - $this->wsLog('groupeinfos', $siren); - return $output; - } - - /** - * Liste les bilans en saisie - * @param BilanSaisieFiltre[] $filtre - * @param integer $position - * @param integer $nbRep - */ - protected function getBilanSaisie($filtre, $position = 0, $nbRep = 50) - { - $this->authenticate(); - - $idUtilisateur = $this->tabInfoUser['id']; - - if (empty($position)) $position = 0; - if (empty($nbRep)) $nbRep = 50; - if ($nbRep>200) $nbRep = 200; - - $bilansM = new Application_Model_FedasoBilans(); - - $sql = $bilansM->select()->order('dateEntree DESC'); - - if (is_array($filtre) && count($filtre)>0) { - foreach($filtre as $item) { - switch($item->key) { - case 'siren': - $sql->where('siren=?', $item->value); - break; - case 'etat': - - break; - /** - * Si l'utilisateur est de S&d (idClient = 1) et SuperAdministeur ou - * Mode Edition dans les droits alors on permet la sélection d'un autre - * utilisateur - */ - case 'idUtilisateur': - if ($this->tabInfoUser['idClient']==1 - && ($this->tabInfoUser['profil']=='SuperAdministrateur' - || $this->checkPerm('edition')) ) { - $idUtilisateur = $item->value; - } - break; - } - } - } - - //Select user id - $sql->where('idUtilisateur=?', $idUtilisateur); - - //Paginate - $sql->limit($nbRep, $position); - //Get results - $results = $bilansM->fetchAll($sql)->toArray(); - - $iInsee = new MInsee(); - - $output = array(); - if (count($results)>0) { - foreach ($results as $result) { - - $entrep = $iInsee->getIdentiteLight($result['siren']); - - $saisie = new BilanSaisieInfos(); - $saisie->raisonSociale = $entrep['raisonSociale']; - $saisie->siren = $result['siren']; - $saisie->dateCloture = $result['dateCloture']; //@todo : date format 2010-12-31 - $saisie->duree = $result['duree']; - $saisie->dateIn = $result['dateEntree']; //@todo : date format 2011-08-31 12:00:01 - - /** - * Gestion des différents états - * 1 - dateEntree : Enregistré - * 2 - dateEnvoi : Saisie en cours - * 3 - dateRetour : Saisie - * 4 - dateChargement : Chargé en base - * - * 5 - codeRetour = : Erreur à la saisie - */ - - $saisie->etat = ''; - $saisie->date = ''; - - $output[] = $saisie; - } - } - - return $output; - } - - /** - * Liste des contacts par établissement (beta) - * @param string $siret - * @param string $filtre - * @param int $position - * @param int $nbRep - * @return ContactEtReturn - * @throws SoapFault - */ - public function getContactEt($siret, $filtre, $position = 0, $nbRep = 200) - { - $this->authenticate(); - - if ( strlen($siret)!=9 || strlen($siret)!=14 ) { - $this->sendError('1010'); - } - - $siren = substr($siret,0,9); - if (intval($siren)==0 ) { - $this->sendError('1010'); - } - - $nic = substr($nic,10,5); - if (intval($nic)==0) { - $nic = '00000'; - } - - $telephonieM = new Application_Model_JoTelephonie(); - $sql = $telephonieM->select() - ->from($telephonieM, array('id', 'typeTel', 'infoTel', 'telephone', 'partenaire', "DATE_FORMAT(dateInsert,'%Y%m%d')")) - ->where('actif=1') - ->where('typeTel=?','tel') - ->where('siren=?',$siren) - ->where('nic=?',$nic) - ->order('dateInsert DESC') - ->limit($nbRep, $position); - try { - $contacts = $telephonieM->fetchAll($sql); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - //Comptage - $sql = $telephonieM->select() - ->from($telephonieM, 'COUNT(*) as nb') - ->where('actif=1') - ->where('typeTel=?','tel') - ->where('siren=?',$siren) - ->where('nic=?',$nic); - - $nbContacts = $telephonieM->fetchRow($sql)->nb; - - $list = array(); - if ( $contacts->count() > 0) { - foreach ( $contacts as $item ) - { - $contact = new ContactEt(); - $contact->id = $item->id; - $contact->value = $item->telephone; - $contact->type = $item->typeTel; - $contact->description = ''; - $contact->source = ''; - $contact->date = $item->dateInsert; - $list[] = $contact; - } - } - - //Return - $output = new ContactEtReturn(); - $output->nbReponses = $nbContacts; - $output->result = $list; - - return $output; - } - - - /** - * Identifiant locaux des pays - * @param string $codeCountry - * @return CountryId[] - * @throws SoapFault - */ - public function getCountryId($codeCountry) - { - $this->authenticate(); - - if ( strlen($codeCountry)!=3 ) { - throw new SoapFault('ERR', 'codeCountry error'); - } - - //Retrieve data - try { - $idlocalM = new Application_Model_Sdv1TabIdLocal(); - $sql = $idlocalM->select() - ->where('codPays=?', $codeCountry) - ->orWhere('codPays IS NULL'); - $row = $idlocalM->fetchAll($sql); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - $output = array(); - if ($row->count()>0) { - foreach ( $row as $item ) { - $struct = new CountryId(); - $struct->internalId = $item->id; - $struct->name = $item->idLocal; - $struct->longname = $item->idLocalLong; - switch ( $item->idPrincipal ) { - case 0: - $struct->type = 'Secondaire'; - break; - case 1: - $struct->type = 'Principal'; - break; - case 2: - $struct->type = 'TVA'; - break; - } - $struct->info = $item->infoIden; - $output[] = $struct; - } - } - return $output; - } - - -} \ No newline at end of file diff --git a/library/WsScore/Interne/v0.5/Types.php b/library/WsScore/Interne/v0.5/Types.php deleted file mode 100644 index a6d42f9d..00000000 --- a/library/WsScore/Interne/v0.5/Types.php +++ /dev/null @@ -1,1599 +0,0 @@ - 'ContactEt', - 'ContactEtReturn' => 'ContactEtReturn', - 'ErrorType' => 'ErrorType', - 'RefCommande' => 'RefCommande', - 'ListeConventionsReturn' => 'ListeConventionsReturn', - 'Convention' => 'Convention', - 'AnnonceCollecteReturn' => 'AnnonceCollecteReturn', - 'AnnonceCollecte' => 'AnnonceCollecte', - 'AnnonceEvenement' => 'AnnonceEvenement', - 'DevisesReturn' => 'DevisesReturn', - 'Devise' => 'Devise', - 'DevisesCoursReturn' => 'DevisesCoursReturn', - 'DevisesCours' => 'DevisesCours', - 'PieceReturn' => 'PieceReturn', - 'PieceResult' => 'PieceResult', - 'SetInfosMandataire' => 'SetInfosMandataire', - 'SetMandataireReturn' => 'SetMandataireReturn', - 'MandatairesReturn' => 'MandatairesReturn', - 'Mandataire' => 'Mandataire', - 'MandataireReturn' => 'MandataireReturn', - 'MandataireDetail' => 'MandataireDetail', - 'ListeJalCollecteReturn' => 'ListeJalCollecteReturn', - 'JalCollecte' => 'JalCollecte', - 'GeoCodeReturn' => 'GeoCodeReturn', - 'GeoCode' => 'GeoCode', - 'InfoCmdAsso' => 'InfoCmdAsso', - 'InfosCmdEnquete' => 'InfosCmdEnquete', - 'InfosDemandeur' => 'InfosDemandeur', - 'CmdAssoDetail' => 'CmdAssoDetail', - 'CmdAssoReturn' => 'CmdAssoReturn', - 'CmdEnqueteReturn' => 'CmdEnqueteReturn', - 'CmdEnquete' => 'CmdEnquete', - 'CmdEnqueteRIB' => 'CmdEnqueteRIB', - 'LogsClientsReturn' => 'LogsClientsReturn', - 'LogsClients' => 'LogsClients', - 'ListeSurveillancesCsvReturn' => 'ListeSurveillancesCsvReturn', - 'ListeSurveillancesCsv' => 'ListeSurveillancesCsv', - 'RechercheHistoReturn' => 'RechercheHistoReturn', - 'RechercheHistoCriteres' => 'RechercheHistoCriteres', - 'RechercheHistoReponses' => 'RechercheHistoReponses', - 'ListeFichierSurvReturn' => 'ListeFichierSurvReturn', - 'ListeFichierSurv' => 'ListeFichierSurv', - 'MarquesReturn' => 'MarquesReturn', - 'Marque' => 'Marque', - 'PortefeuilleReturn' => 'PortefeuilleReturn', - 'Portefeuille' => 'Portefeuille', - 'PortefeuilleFiltre' => 'PortefeuilleFiltre', - 'StatsUtilisateursReturn' => 'StatsUtilisateursReturn', - 'TribunauxReturn' => 'TribunauxReturn', - 'Tribunal' => 'Tribunal', - 'SearchMandatairesReturn' => 'SearchMandatairesReturn', - 'SearchMandataire' => 'SearchMandataire', - 'PrivilegesCumulReturn' => 'PrivilegesCumulReturn', - 'PrivilegesCumul' => 'PrivilegesCumul', - 'PrivilegesDetailReturn' => 'PrivilegesDetailReturn', - 'PrivilegesDetail' => 'PrivilegesDetail', - 'SearchActReturn' => 'SearchActReturn', - 'EntrepriseActItem' => 'EntrepriseActItem', - 'CommandeEnqueteReturn' => 'CommandeEnqueteReturn', - 'DirigeantOp' => 'DirigeantOp', - 'Depot' => 'Depot', - 'IdentiteLight' => 'IdentiteLight', - 'GroupeInfos' => 'GroupeInfos', - 'GroupeInfosSecteur' => 'GroupeInfosSecteur', - 'BilanSaisieFiltre' => 'BilanSaisieFiltre', - 'CountryId' => 'CountryId', -); \ No newline at end of file diff --git a/library/WsScore/Interne/v0.6/Interne.php b/library/WsScore/Interne/v0.6/Interne.php deleted file mode 100644 index a905073b..00000000 --- a/library/WsScore/Interne/v0.6/Interne.php +++ /dev/null @@ -1,2725 +0,0 @@ -authenticate(); - //Initialisation - if (empty($tabTypes)) $tabTypes = array('03','04'); - debugLog('I',"Liste des privilèges detail sur $siren ".print_r($tabTypes, true),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iPriv = new MPrivileges(); - $ret = $iPriv->getPrivilegesDetail($siren, $tabTypes); //@todo : date - - $tabRet = array(); - if (count($ret)>0) { - foreach ($ret as $item ) { - $privileges = new PrivilegesDetail(); - $privileges->numDebiteur = $item['numDebiteur']; - $privileges->greffe = $item['greffe']; - $privileges->greffeLib = $item['greffeLib']; - $privileges->dateEven = $item['dateEven']; - $privileges->dateFraiche = $item['dateFraiche']; - $privileges->dateSD = $item['dateSD']; - $privileges->insType = $item['insType']; - $privileges->insTypeLib = $item['insTypeLib']; - $privileges->insNum = $item['insNum']; - $privileges->insDate = $item['insDate']; - $privileges->insDateEch = $item['insDateEch']; - $privileges->insObjet = $item['insObjet']; - $privileges->insMontant = $item['insMontant']; - $privileges->insDev = $item['insDev']; - $privileges->insDateFin = $item['insDateFin']; - $privileges->radDate = $item['radDate']; - $privileges->radMention = $item['radMention']; - $privileges->radPartiel = $item['radPartiel']; - $privileges->radPartMt = $item['radPartMt']; - $privileges->radDev = $item['radDev']; - $privileges->creNom = $item['creNom']; - $privileges->creAdresse1 = $item['creAdresse1']; - $privileges->creAdresse2 = $item['creAdresse2']; - $privileges->creAdresse3 = $item['creAdresse3']; - $privileges->creCP = $item['creCP']; - $privileges->creVille = $item['creVille']; - $privileges->crePays = $item['crePays']; - $privileges->creAutres = $item['creAutres']; - $tabRet[] = $privileges; - } - } - $this->wsLog('privdetail', $siren, join(',',$tabTypes)); - $output = new PrivilegesDetailReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne les privilèges cumulés - * @param string $siren - * @param array $tabTypes - * @return PrivilegesCumulReturn - */ - public function getPrivilegesCumul($siren, $tabTypes=array('03','04')) - { - $this->authenticate(); - //Initialisation - if (empty($tabTypes)) $tabTypes = array('03','04'); - debugLog('I',"Liste des privilèges cumul sur $siren ".print_r($tabTypes, true),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iPriv = new MPrivileges(); - $ret = $iPriv->getPrivilegesCumul($siren, $tabTypes); - $tabRet = array(); - - if (isset($ret['03']) && count($ret['03']>0)){ - $value = $ret['03']; - $priv = new PrivilegesCumul(); - $priv->insType = '03'; - $priv->nb = $value['nb']; - $priv->insTypeLib = $value['insTypeLib']; - $priv->dateFraiche = $value['dateFraiche']; //@todo : date - $priv->dateDerInsc = $value['dateDerInsc']; //@todo : date - $priv->nomDerCre = $value['nomDerCre']; - $priv->numDebiteur = $value['numDebiteur']; - $priv->greffeLib = $value['greffeLib']; - $priv->dateMajSD = $value['dateMajSD']; //@todo : date - $priv->insCumul = $value['insCumul']; - $tabRet[] = $priv; - } - - if (isset($ret['04']) && count($ret['04']>0)){ - $value = $ret['04']; - $priv = new PrivilegesCumul(); - $priv->insType = '04'; - $priv->nb = $value['nb']; - $priv->insTypeLib = $value['insTypeLib']; - $priv->dateFraiche = $value['dateFraiche']; //@todo : date - $priv->dateDerInsc = $value['dateDerInsc']; //@todo : date - $priv->nomDerCre = $value['nomDerCre']; - $priv->numDebiteur = $value['numDebiteur']; - $priv->greffeLib = $value['greffeLib']; - $priv->dateMajSD = $value['dateMajSD']; //@todo : date - $priv->insCumul = $value['insCumul']; - $tabRet[] = $priv; - } - $this->wsLog('privcumul', $siren, print_r($tabTypes,1)); - $output = new PrivilegesCumulReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Liste les mandataires correspondant à un nom donné - * @param mixed $codeTribunal Identifiants BODACC du tribunal ou tableau d'Identifiants numériques des cours d'appel - * @param array $type Type de mandataire (A)dministrateur, (M)andataire, (O)ppositions, (N)otaires, a(V)ocat - * @param int $cpDep Code postal ou département du mandataire - * @return SearchMandatairesReturn - */ - public function searchMandataires($nom, $type=array('A','M'), $cpDep=0) - { - $this->authenticate(); - - //Initialisation - if (empty($type)) $type = array('A','M'); - if (empty($cpDep)) $cpDep = 0; - $tabRet = array(); - - debugLog('I',"Recherche de Mandataires '$nom' (Dep=$cpDep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $iInsee = new MInsee(); - $tabTmp = $iInsee->searchMandataires($nom, true, $type, $cpDep); - - foreach ($tabTmp as $i=>$mand) - { - $mandataire = new SearchMandataire(); - $mandataire->id = 'm'.$i; - $mandataire->mand = $mand; - $tabRet[] = $mandataire; - - } - $output = new SearchMandatairesReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des tribunaux ou Compétences demandées - * @param array|string $tabTypes Tableau des types de Compétences demandés 'C':Commerce, 'I':Instance, 'G':TGI, 'A':Préfectures, 'B':Sous-préf, 'D':Tribunal Administratif, 'H':Prud'hommes, 'L': Cour d'Appel, 'M': Tribunal Mixte, 'O':CCI, 'V': Cour Administrative d'Appel - * @return TribunauxReturn - **/ - public function getTribunaux($tabTypes) - { - $this->authenticate(); - - //Initialisation - if (empty($tabTypes)) $tabTypes = array(); - if (is_string($tabTypes)) $tabTypes = (array)$tabTypes; - - $iBodacc = new MBodacc(); - debugLog('I',"Liste des tribunaux demandées",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabTmp = $iBodacc->getListeTribunaux(); - //@todo : Retourner liste en ordre alphabétique - $tabRet = array(); - if (count($tabTypes)==0) { - foreach ($tabTmp as $i => $tribunal){ - $tri = new Tribunal(); - $tri->code = $i; - $tri->nom = $tribunal['nom']; - $tabRet[] = $tri; - } - } else { - foreach ($tabTmp as $i=>$tribunal){ - $type = substr($i,-1); - if ( in_array($type, $tabTypes) ){ - $tri = new Tribunal(); - $tri->code = $i; - $tri->nom = $tribunal['nom']; - $tabRet[] = $tri; - } - } - } - $this->wsLog('tribunaux', '', print_r($tabTypes,1)); - $output = new TribunauxReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Enregistre une action utilisateur pour la facturation - * @param string $page - * @param string $siret - * @param int $id - * @param string $ref - * @return void - */ - public function setLog($page, $siret, $id=0, $ref='') - { - $this->authenticate(); - - //Initialisation - if (empty($id)) $id = 0; - if (empty($ref)) $ref = ''; - if ( $id!=0 ) { - $ref2=''.$id.'/'.$ref; - } else { - $ref2=$ref; - } - $this->wsLog($page, $siret, $ref2); - debugLog('I',"Insertion d'un log pour la page $page $siret $ref2",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } - - /** - * Met a jour les informations sur un mandataire - * @param SetInfosMandataire $infos Informations sur le mandataire à créer ou à ajouter (ajout si id absent) - * @return SetMandataireReturn - **/ - public function setMandataire(SetInfosMandataire $infos) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - $result = true; - - $iDb = new WDB(); - /** Nom et Identifiant de l'opérateur de saisie **/ - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('utilisateurs', 'id', "login='".$this->tabInfoUser['login']."'"); - $idUser = $rep[0][0]; - - //$infos = serialize($tabInfos); - debugLog('I',"Ajout/MAJ de mandaitaire ".print_r($infos,1)." demandée",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $type = substr(strtoupper($infos->type),0,1); - $stag = substr(strtoupper($infos->type),1,1); - if ($stag=='S') { $stag=1; } else { $stag=0; } - if ($type=='A' || $type=='H' || $type=='M' || $type=='V' || - $type=='N' || $type=='T') - { - $tabUpdate=array( - 'sirenGrp' => substr($infos->sirenGrp,0,9)*1, - 'nicGrp' => substr($infos->sirenGrp,9,5)*1, - 'sirenMand' => substr($infos->sirenMand,0,9)*1, - 'nicMand' => substr($infos->sirenMand,9,5)*1, - 'Nom' => ucwords(strtolower($infos->Nom)), - 'Prenom' => ucwords(strtolower($infos->Prenom)), - 'type' => $type, - 'stagiaire' => $stag, - 'coursAppel' => intval($infos->coursAppel), - 'coursAppel2' => intval($infos->coursAppel2), - 'tribunal' => $infos->tribunal, - 'Statut' => strtoupper($infos->Statut), - 'adresse' => ucwords($infos->adresse), - 'adresseComp' => strtoupper($infos->adresseComp), - 'cp' => intval($infos->cp), - 'ville' => strtoupper($infos->ville), - 'tel' => $infos->tel, - 'fax' => $infos->fax, - 'email' => $infos->email, - 'web' => $infos->web, - 'contact' => $infos->contact, - 'idUser' => $idUser, - ); - } - $id = str_replace('m','', ''.$infos->id)*1; - if (intval($id)!=0) { - // MAJ - if (!$iDb->update('tabMandataires', $tabUpdate, "id=$id", true)) { - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - $result = false; - } - } else { - // Insertion - if (!$iDb->insert('tabMandataires', array_merge($tabUpdate,array('dateInsert'=>date('YmdHis'))), true)) { - $error->errnum = 1; - $error->errmsg = 'Insertion impossible'; - $result = false; - } - } - $output = new SetMandataireReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Récupère le mandataire par son id - * @param int $idMand Identifiant du mandataire - * @return MandataireReturn - */ - public function getMandataire($idMand) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - - debugLog('I',"Donne le Mandataires correspondant à $idMand",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - require_once 'Metier/insee/classMInsee.php'; - $iInsee = new MInsee(); - $tabRet = $iInsee->getMandataire($idMand); - $mandataire = new MandataireDetail(); - $mandataire->Nom = $tabRet['Nom']; - $mandataire->Prenom = $tabRet['Prenom']; - $mandataire->tribunal = $tabRet['tribunal']; - $mandataire->adresse = $tabRet['adresse']; - $mandataire->adresseComp = $tabRet['adresseComp']; - $mandataire->ville = $tabRet['ville']; - $mandataire->email = $tabRet['email']; - $mandataire->web = $tabRet['web']; - $mandataire->contact = $tabRet['contact']; - $output = new MandataireReturn(); - $output->error = $error; - $output->result = $mandataire; - return $output; - } - - /** - * Liste les mandataires compétentes pour une cours d'appel donnée - * @param mixed $codeTribunal Identifiants BODACC du tribunal ou tableau d'Identifiants numériques des cours d'appel - * @param array $type Type de mandataire (A)dministrateur, (M)andataire, (O)ppositions, (N)otaires, a(V)ocat - * @return MandatairesReturn - */ - public function getMandataires($codeTribunal=0, $type=array('A','M')) - { - $this->authenticate(); - //Initialisation - $iInsee = new MInsee(); - $error = new ErrorType(); - $trib = serialize($codeTribunal); - debugLog('I',"Liste des Mandaitaires ou Administrateur du Tribunal/Cours d'Appel $trib demandé",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (!is_array($codeTribunal) && strlen($codeTribunal)>3 && $codeTribunal*1==0) - { - // $codeTribunal est un identifiant de tribunal - $iBodacc = new MBodacc(); - $tabTmp = $iInsee->getMandataires(array($iBodacc->getTribunalIdCA($codeTribunal)), true, $type); - } - elseif ($codeTribunal*1==0) - { - // On veut tous les mandataires - $tabTmp = $iInsee->getMandataires(array(), true, $type); - } - elseif (is_array($codeTribunal)) - { - // On veut les mandataires d'une CA - $tabTmp = $iInsee->getMandataires($codeTribunal, true, $type); - } - $tabRet = array(); - foreach ($tabTmp as $i=>$mand){ - $mandataire = new Mandataire(); - $mandataire->id = 'm'.$i; - $mandataire->mand = $mand; - $tabRet[]= $mandataire; - } - $output = new MandatairesReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des conventions - * @param string $siren - * @return ListeConventionsReturn - */ - public function getListeConventions($siren) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - $tabRet = array(); - - debugLog('I',"Liste des conventions demandée pour le siren $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($siren)<>9){ - debugLog('W', "Siren/Siret $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren Siret inexistant'; - - } elseif ($siren*1==0){ - - debugLog('W', "Siren $siren inexistant", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren inexistant'; - - } else { - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteEntreprise($siren); - - if (empty($tabIdentite) && isset($tabIdentite['erreur']) && - $tabIdentite['erreur']<>''){ - - debugLog('W', "Siren $siren non présent en base", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 102; - $error->errmsg = 'Siren inexistant'; - - } else { - - $naf = $tabIdentite['NafEnt']; - $trancheEffectif = $tabIdentite['EffEnTr']; - $effectif = $tabIdentite['Effectif']; - $fj = $tabIdentite['entreprise']['FJCodeEntrep']; - - $isolv = new MSolvabilite($siren, $naf, $trancheEffectif, - $effectif, $tabIdentite['CP'], $fj, $tabIdentite['Capital'], - $tabIdentite['CapitalDev'], $tabIdentite['DateCreaEn'], - $tabIdentite['DateCreaEt'] - ); - $noteStructure = $isolv->getSolvabilite(); - $naf4 = $isolv->getNaf4($naf); - - $tabTmp = $iInsee->listeConventions($naf4, $tabIdentite['Dept']); - foreach ($tabTmp as $conv) - { - $convention = new Convention(); - $convention->idCC = $conv['id CC']; - $convention->nomCC = $conv['nom CC']; - $convention->infoCC = $conv['infoCC']; - $convention->editorCC = $conv['editeur CC']; - $convention->nbPageCC = $conv['nb page CC']; - $convention->isbnCC = $conv['isbn CC']; - $convention->dateCC = $conv['date edition CC']; - $convention->joCCmaj = $conv['joCCmaj']; - $tabRet[] = $convention; - } - $this->wsLog('conventions',$siren); - } - } - - $output = new ListeConventionsReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Donne la cours d'appel d'un tribunal par son code - * @param string $codeTribunal Code BODACC sur 6 caractères du tribunal - * @return int - **/ - public function getIdCoursAppel($codeTribunal) - { - $this->authenticate(); - $iBodacc = new MBodacc(); - return $iBodacc->getTribunalIdCA($codeTribunal); - } - - /** - * Récupère le contenu d'une annonce issue de la collecte - * @param string $idAnn - * @param string $siret - * @return AnnonceCollecteReturn - */ - public function getAnnonceCollecte($idAnn, $siret) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - $annonceCollecte = new AnnonceCollecte(); - $siren = substr($siret,0,9)*1; - if (!$this->checkEdition()) { - - $error->errnum = 0; - $error->errmsg = 'Code Client Incorrect'; - - } else { - - $iDb = new WDB(); - debugLog('I',"Lecture de l'annonce collectée n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $idAnn = preg_replace('/^0\./','', ''.$idAnn) * 1; - if ($idAnn>0) - { - $res = $iDb->select('annonces', - 'id, siren, sirenValide, typeEven, strEven, raisonSociale, adresse, codePostal, ville, dateJugement, dateCessationPaiement, dateEffetFinP, numero, inter1type, inter1id, inter1nom, inter2type, inter2id, inter2nom, inter3type, inter3id, inter3nom, inter4type, inter4id, inter4nom, tribunal, montant, actionsNb, complement, infosBrutes, nouvActivite, nouvDir, nouvAdr, nouvFJ, annonce, source, parutionIdJal, parutionNum, dateSource, idSaisie, idAnnonce, dateInsert', - "id=$idAnn", false, MYSQL_ASSOC - ); - if (count($res)>0) - { - $ann = $res[0]; - $annonceCollecte->id = $ann['id']; - $annonceCollecte->siren = $ann['siren']; - $annonceCollecte->raisonSociale = $ann['raisonSociale']; - $annonceCollecte->adresse = $ann['adresse']; - $annonceCollecte->codePostal = $ann['codePostal']; - $annonceCollecte->ville = $ann['ville']; - $annonceCollecte->dateJugement = $ann['dateJugement']; - - //@todo : Les libellées ne sont pas présent LibEven - $tabEven = array(); - $annonceEvenement = new AnnonceEvenement(); - $annonceEvenement->CodeEven = $ann['typeEven']; - $annonceEvenement->LibEven = ''; - $tabEven[] = $annonceEvenement; - if (!empty($ann['strEven'])){ - foreach ( explode(';',$ann['strEven']) as $code ) - { - $annonceEvenement = new AnnonceEvenement(); - $annonceEvenement->CodeEven = $code; - $annonceEvenement->LibEven = ''; - $tabEven[] = $annonceEvenement; - } - } - - $annonceCollecte->even = $tabEven; - $annonceCollecte->dateSource = $ann['dateSource']; - $annonceCollecte->dateCessationPaiement = $ann['dateCessationPaiement']; - $annonceCollecte->dateEffetFinP = $ann['dateEffetFinP']; - $annonceCollecte->tribunal = $ann['tribunal']; - $annonceCollecte->numero = $ann['numero']; - $annonceCollecte->montant = $ann['montant']; - $annonceCollecte->actionsNb = $ann['actionsNb']; - $annonceCollecte->inter1type = $ann['inter1type']; - $annonceCollecte->inter1id = $ann['inter1id']; - $annonceCollecte->inter1nom = $ann['inter1nom']; - $annonceCollecte->inter2type = $ann['inter2type']; - $annonceCollecte->inter2id = $ann['inter2id']; - $annonceCollecte->inter2nom = $ann['inter2nom']; - $annonceCollecte->inter3type = $ann['inter3type']; - $annonceCollecte->inter3id = $ann['inter3id']; - $annonceCollecte->inter3nom = $ann['inter3nom']; - $annonceCollecte->complement = $ann['complement']; - $annonceCollecte->nouvActivite = $ann['nouvActivite']; - $annonceCollecte->nouvDir = $ann['nouvDir']; - $annonceCollecte->nouvAdr = $ann['nouvAdr']; - $annonceCollecte->nouvFJ = $ann['nouvFJ']; - $annonceCollecte->source = $ann['source']; - - debugLog('I',"Lecture de l'annonce collectée n°$idAnn ($siret) : ".$ann['raisonSociale'],__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } else { - $error->errnum = 1; - $error->errmsg = 'Edition impossible'; - } - } - else - { - $error->errnum = 745741; - $error->errmsg = 'Selection impossible'; - } - } - $output = new AnnonceCollecteReturn(); - $output->error = $error; - $output->result = $annonceCollecte; - return $output; - } - - /** - * getDevises - * @param string $codeIsoDevise - * @return DevisesReturn - */ - public function getDevises($codeIsoDevise='') - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - if (empty($codeIsoDevise)) $codeIsoDevise = ''; - - debugLog('I',"Liste des devises ou devise $codeIsoDevise demandée",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new MInsee(); - $tabTmp = $iInsee->getDevises($codeIsoDevise); - - $tabRet = array(); - foreach ($tabTmp as $i=>$dev) - { - if ( $i!='' ){ - $devise = new Devise(); - $devise->devIso = $i; - $devise->devNom = $dev; - $tabRet[] = $devise; - } - } - $output = new DevisesReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Retourne la liste des codes devises, libellés, date et valeur - * (toutes les devises ou une seule) - * @param string $devise Devise sur 3 lettres (facultatif) - * @return DevisesCoursReturn - */ - public function getDeviseCours($devise=false) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - - $iDb = new WDB('sdv1'); - if ($devise) $strDevise=" AND c.devise='$devise' "; - else $strDevise=''; - - $tabRet = array(); - - $res = $iDb->select('devise_cours c, devise_liste l', 'c.devise, l.devNom, max(c.date) as dateChange, c.valeur', "c.devise=l.devIso $strDevise GROUP BY c.devise ORDER BY c.devise ASC", false, MYSQL_ASSOC); - foreach ($res as $tabDev) - { - $devise = new DevisesCours(); - $devise->codeDevise = $tabDev['devise']; - $devise->nomDevise = $tabDev['devNom']; - $devise->dateChange = $tabDev['dateChange']; - $devise->valeurDevise = $tabDev['valeur']; - $tabRet[] = $devise; - } - $output = new DevisesCoursReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * getMarques - * @param string $siren - * @param int $idDepot - * @return MarquesReturn - */ - public function getMarques($siren, $idDepot=0) - { - $this->authenticate(); - $this->permission('marques'); - debugLog('I',"Liste des marques déposées pour le siren $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (empty($idDepot)) $idDepot = 0; - $error = new ErrorType(); - $marques = array(); - require_once 'Metier/partenaires/classMMarques.php'; - $iMarque = new MMarques(); - $ret = $iMarque->getMarques($siren, $idDepot); - - foreach ($ret as $item) - { - if ($idDepot==$item['numeroMarque']) { - $marque = new Marque(); - $marque->Marques = $item['nomMarque']; - $marque->Perimetre = $item['periMarque']; - $marque->Deposant = $item['detailDeposant']; - $marque->Depot = $item['numeroMarque']; - $marque->Classes = $item['classesMarque']; - $marque->ProduitsServices = $item['PS']; - $marque->Mandataire = $item['detailMandataire']; - $marque->Statut = $item['detailStatut']; - $marque->Date = $item['dateDepot']; - $marque->Lieu = $item['lieuDepot']; - $marque->Historique = $item['histo']; - $marque->Img = ''; - $marque->Pdf = $item['pdfLink']; - - $marques[] = $marque; - break; - } else { - $marque = new Marque(); - $marque->Marques = $item['nomMarque']; - $marque->Perimetre = ''; - $marque->Deposant = ''; - $marque->Depot = $item['numeroMarque']; - $marque->Classes = ''; - $marque->Mandataire = ''; - $marque->Statut = ''; - $marque->Date = $item['dateDepot']; - $marque->Lieu = ''; - $marque->Img = ''; - $marque->Pdf = $item['pdfLink']; - $marques[] = $marque; - } - } - - $this->wsLog('marques',$siren); - $output = new MarquesReturn(); - $output->error = $error; - $output->result = $marques; - return $output; - } - - /** - * Enter description here ... - * @param string $siren - * @param string $piece - * @param string $type - * @param integer $visu - * @param integer $courrier - * @param string $ref - * @return PieceReturn - */ - public function getPiece($siren, $piece='kbis', $type='', $visu=1, $courrier=0, $ref='') - { - $this->authenticate(); - $this->permission('kbis'); - set_time_limit(400); - - if (empty($piece)) $piece = 'kbis'; - if (empty($type)) $type = ''; - if (empty($visu)) $visu = 1; - if (empty($courrier)) $courrier = 1; - if (empty($ref)) $ref = ''; - $error = new ErrorType(); - - $erreur = false; - - $kbisLocalPDF = DOC_WEB_LOCAL."kbis/$piece-$siren.pdf"; - - if (file_exists($kbisLocalPDF) - && date('Ymd', filemtime($kbisLocalPDF))==date('Ymd') - && filesize($kbisLocalPDF)>0 ) { - $size = filesize($kbisLocalPDF); - $erreur = false; - $tabNom = array(); - $ficDist = ''; - $cache = 1; - } else { - exec("php ".APPLICATION_PATH."/../batch/getPieces.php $siren $piece > /dev/null &"); - $ficDist=''; - $size=$cache=0; - } - // On supprimer l'ancien kbis si trop vieux ou vide - if (date('Ymd', filemtime($kbisLocalPDF))<>date('Ymd') - || filesize($kbisLocalPDF)==0) { - unlink($kbisLocalPDF); - } - $result = new PieceResult(); - $result->Siren = $siren; - //@todo : Envoyer vers controlleur - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $result->Url = $hostname.'/data/kbis/'.$piece.'-'.$siren.'.pdf'; - - $result->Taille = $size; - $result->Cache = $cache; - $result->fichier = $ficDist; - $this->wsLog('kbis', $siren, "$cache/$visu/$courrier/$type/$ref"); - $output = new PieceReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Commande de statut association - * @param InfoCmdAsso $infosCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdAssoReturn - */ - public function setCmdAsso( $infosCommande, $infosDemandeur ) - { - $this->authenticate(); - $this->permission('actes'); - //Initialisation - $error = new ErrorType(); - - $iDb = new WDB(); - - $siren = $infosCommande->siren; - $idEntreprise = intval($infosCommande->idEntreprise); - $assoNom = $infosCommande->raisonSociale; - debugLog('I',"commandeAsso pour $assoNom ($siren) début",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren, 0, $idEntreprise); - $assoSigle = $tabIdentite['Sigle']; - $assoAdresse = $tabIdentite['Adresse'].EOL.$tabIdentite['Adresse2']; - $assoCP = $tabIdentite['CP']; - $assoVille = $tabIdentite['Ville']; - - $mail = trim($infosDemandeur->email); - if ($mail=='') $mail = $this->tabInfoUser['email']; - - $tabInsert=array( - 'idUser' => $this->tabInfoUser['id'], - 'source' => 'asso', - 'login' => $this->tabInfoUser['login'], - 'emailCommande' => $mail, - 'siren' => $siren, - 'refUtilisateur' => $infosDemandeur->reference, - 'refDocument' => serialize($infosDemandeur), - 'refCommande' => serialize($infosCommande), - 'dateCommande' => DATETIME, - ); - - $iDbCrm = new WDB('sdv1'); - $ret = $iDbCrm->insert('commandes', $tabInsert, true); - - if ( $ret!=0 ) { - - sendMail('production@scores-decisions.com', 'support@scores-decisions.com', - "Commande de statuts association pour $assoNom ($siren)", - "Association :".EOL.print_r($infosCommande, true).EOL.EOL. - "Demandeur:".EOL.print_r($infosDemandeur, true).EOL.EOL. - "Ref : i".$ret - ); - - $result = new CmdAssoDetail(); - $result->siren = $siren; - $result->emailCommande = $mail; - $result->dateCommande = DATETIME; - $result->refCmd = 'i'.$ret; - - sendMail('production@scores-decisions.com', $mail, - "Votre commande de statuts association sur $assoNom ($siren)", - "Votre demande de statuts sur l'association $assoNom a été prise en compte sous la référence i$ret - ".DATETIME); - $this->wsLog('commandeAsso', $siren, 'i'.$ret.'-'.DATETIME); - debugLog('I',"commandeAsso pour $assoNom ($siren) fin",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - } else { - - $error->errnum = 1; - $error->errmsg = 'Erreur'; - - } - - $output = new CmdAssoReturn(); - $output->error = $error; - $output->commande = $result; - return $output; - } - - /** - * Commande d'une enquête sur une entreprise en France ou à l'Internationale - * @param InfosCmdEnquete $infosCommande - * @param InfosDemandeur $infosDemandeur - * @return CmdEnqueteReturn - **/ - public function setCmdEnquete($infosCommande, $infosDemandeur) - { - $this->authenticate(); - $this->permission('enquetec'); - - //Initialisation - $error = new ErrorType(); - $siren = $infosCommande->siren; - - $mail = trim($infosDemandeur->email); - if ($mail=='') $mail = $this->tabInfoUser['email']; - - $tabInsert = array( - 'idUser' => $this->tabInfoUser['id'], - 'source'=> 'intersud', // 'greffes', 'asso', 'graydon' - 'login'=> $this->tabInfoUser['login'], - 'emailCommande'=> $mail, - 'siren'=> $siren, - 'refDocument'=> serialize($infosDemandeur), - 'refCommande'=> serialize($infosCommande), - 'dateCommande'=> DATETIME, - ); - debugLog('I',"Intersud, début sur $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $messageInfo=print_r($infosCommande, 1).EOL.print_r($infosDemandeur,1).EOL; - - $idClient = $this->tabInfoUser['idClient']; - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients', ' nom, racineLogin, InterSudLogin, InterSudPass', "id='$idClient'", false, MYSQL_ASSOC); - $login = trim($rep[0]['InterSudLogin']); - $pass = trim($rep[0]['InterSudPass']); - $nomClient = trim(strtoupper($rep[0]['nom'])); - $strInfoCommande ="NOM et Prénom du client demandeur : ".$infoDemandeur->nom.EOL; - $strInfoCommande.="Email du client demandeur : $mail".EOL; - $strInfoCommande.="Tel/Fax du demandeur : ".$infosDemandeur->tel.' / '.$infosDemandeur->fax.EOL; - $strInfoCommande.="Profil du demandeur : ".trim($infosDemandeur->service).EOL; - $typeEnqLog='enqueteDemNF'; - - if ($login=='' || $pass=='') { - /** Il ne s'agit pas d'un client final, on anonymise la commande **/ - $login = 'YLENA'; // Demandes en test - $pass = 'WYLFE'; - $nomClient = $strInfoCommande = ''; - $typeEnqLog = 'enqueteDem'; - /* ENQUETES EN PROD - $login='FACTURE'; - $pass='AWKROM'; - */ - } - - $url='http://www.intersud.fr/espace_client/espace_client.php'; - $cookie = $referer = ''; - $tabPost = array('login' => $login, 'pwd' => $pass); - $tdeb = microtime(true); - $page = getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - $tabRet=array(); - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Connexion impossible à la plateforme Intersud".EOL.$strInfoCommande); - // wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - //@todo - return array('error'=>array('errnum'=>4563456, 'errmsg'=>'Connexion impossible à la plateforme d\'enquetes'), 'results'=>$tabRet); - } - $tfin = microtime(true); - $duree = $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - $cookie = $page['header']['Set-Cookie']; - - /** Connexion à l'Extranet Intersud - **/ - $url = 'http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, '', $referer, false, '', '', 7); - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - - $fp=@fopen(LOG_PATH."/intersud.log", "a"); - @fwrite($fp, print_r($page,true)); - @fclose($fp); - $tabInterSud=array(); - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[2][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[1][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - - $ref_exp=$tabInterSud['ref_exp']; - $email_exp=$tabInterSud['email_exp']; - $tel_exp=$tabInterSud['tel_exp']; - debugLog('I',"Intersud, formulaire enquête ref $ref_exp, $email_exp, $tel_exp",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $fp=@fopen(LOG_PATH."/intersud.log", "a"); - @fwrite($fp, print_r($matches,true)); - @fwrite($fp, print_r($tabInterSud,true)); - @fclose($fp); - - /** Insertion de la commande en base - **/ - $ret = $iDbCrm->insert('commandes', $tabInsert, true); - $comment = "Référence de la commande chez Scores et Décisions : i$ret - ". - DATETIME."\n". - "Date et heure de la commande : ".date('d/m/Y - H:i')."\n". - "Origine de la commande : $nomClient". - "$strInfoCommande"."\n\n". - - "CA : ".$infosCommande->PrecisionsMontantCA."\n". - "Motif de la demande : ".trim($infosCommande->PrecisionsMotif.' '.$infosCommande->PrecisionsAutre)."\n". - "Type de la demande : ".$infosCommande->PrecisionsType."\n". - "Anciennete de la relation : ".$infosCommande->Anciennete.' '.$infosCommande->AncienneteDuree."\n". - "Observations : ".$infosCommande->Observation.EOL; - - if ($infosCommande->ImpayeesChoix<>'non') - $comment.="Impayé(s) : ".$infosCommande->ImpayeesNombre." impayé(s) pour un montant de ".$infosCommande->ImpayeesMontant." en date du ".$infosCommande->ImpayeesDate.EOL; - - if ($infosCommande->RetardPaiementChoix<>'non') - $comment.="Retard(s) de paiement : ".$infosCommande->RetardPaiementNombre." retard(s) pour un montant de ".$infosCommande->RetardPaiementMontant." en date du ".$infosCommande->RetardPaiementDate.EOL; - - if ($infosCommande->LitigeChoix<>'non') - $comment.="Présence de litige(s) : ".$infosCommande->LitigePrecisions.EOL; - - $enqType=0; - $enqDelai=7; - switch (strtolower($infosCommande->Type)) { - case 'premier': $enqType=0; $enqDelai=6; break; - case 'gold': $enqType=1; break; - case 'distrimat': $enqType=2; break; - case 'star': $enqType=3; break; - case 'avis_bancaire': $enqType=4; break; - case 'autre': $enqType=5; break; - } - - /** Ajout du RIB si communiqué **/ - if (@trim(implode(' ', $infosCommande->RIB))<>'') - $iDbCrm->insert('banques', array( - 'siren'=>$siren, - 'libBanqueGuichet'=>'', - 'precis'=>1, - 'codeBanque'=>$infosCommande->RIB->banque, - 'codeGuichet'=>$infosCommande->RIB->guichet, - 'numCompte'=>$infosCommande->RIB->compte.$infosCommande->RIB->cle, - 'dateSource'=>DATETIME, - ), true); - - /** Remplissage du formulaire d'enquête pour soumission à Intersud **/ - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren); - $tabPost = array( - 'soc'=>$tabIdentite['Nom'], - 'cible_enk'=>9, // 9 - 'siret'=>$siren, - 'acti'=>'', - 'soc_exp'=>$tabInterSud['soc_exp'], - 'type_enk'=>$enqType, // 0=Premier, 1=Gold, 2=Distrimat, 3=Star, 4=Avis bancaire, 5=Autre - 'nom_diri'=>'', - 'adr'=>$tabIdentite['Adresse'], - 'ref_exp'=>$tabInterSud['ref_exp'], - 'autre_type_enk'=>'', // Texte libre - 'adr2'=>$tabIdentite['Adresse2'], - 'delai_enk'=>$enqDelai, // 6=24h, 7=72h, 8=+de5jours - 'ville'=>$tabIdentite['Ville'], - 'cp'=>$tabIdentite['CP'], - 'pays'=>'', // International ? - 'nom_exp'=>$tabInterSud['nom_exp'], - 'tel'=>$tabIdentite['Tel'], - 'port'=>$infosCommande->AutreTel, - 'tel_exp'=>$tabInterSud['tel_exp'], - 'bank'=>trim(implode(' ', $infosCommande->RIB)), - 'int_enk'=>$tabInterSud['int_enk'], // International ? - 'encours'=>$infosCommande->Encours, - 'nb_ech'=>$infosCommande->NbEcheances, - 'delai2_enk'=>$tabInterSud['delai2_enk'], // International ? - 'email_exp'=>$tabInterSud['email_exp'], - 'cred'=>'', - 'comment'=>urlencode($comment), - 'val_ret'=>$tabInterSud['val_ret'], - ); - $url='http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb=microtime(true); - $page=getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - $tabRet=array(); - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Validation impossible du formulaire d'enquête Intersud".EOL.$strInfoCommande); - //@todo - return array('error'=>array('errnum'=>456345, 'errmsg'=>'Connexion impossible à la plateforme d\'enquetes 3'), 'results'=>$tabRet); - } - $tfin=microtime(true); - $duree+=$tfin-$tdeb; - $referer=$url; - $body=$page['body']; - - $result = new CmdEnquete(); - $result->siren = $siren; - $result->emailCommande = $mail; - $result->dateCommande = DATETIME; - $result->refCmd = 'i'.$ret; - - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Commande d'enquete sur $siren", $comment.EOL.EOL.'---------------------------------'.EOL.$messageInfo.EOL.EOL.'---------------------------------'.EOL.$body); - @sendMail('production@scores-decisions.com', $mail, "Votre demande d'enquete sur ".$tabIdentite['Nom']." ($siren)", "Votre demande d'enquête sur la société ".$tabIdentite['Nom']." a été prise en compte sous la référence i$ret - ".DATETIME); - $this->wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - - /** Gestion de la déconnexion **/ - $url='http://intersud.fr/espace_client/index.php?code_ret=9'; - $tdeb=microtime(true); - $page=getUrl($url, $cookie, '', $referer, false, '', '', 7); - $tfin=microtime(true); - $duree+=$tfin-$tdeb; - - $ret = $iDbCrm->update('commandes', array('dureeCommande'=>round($duree,3)), "idCommande=$ret"); - - $output = new CmdEnqueteReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * getStatsUtilisateurs - * @param string $login - * @param string $mois - * @param string $type - * @param boolean $payants - * @return array - */ - public function getStatsUtilisateurs($login, $mois, $type='jour', $payants=false) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - if ($payants) - { - $strPayant="AND (page LIKE 'greffe_%' OR page LIKE 'inpi_%' OR page='kbis') AND params<>'' AND (params NOT LIKE '%erreur%' OR params LIKE '%erreur 17%') "; - } - else { - $strPayant=''; - } - $iDbCrm = new WDB('sdv1'); - if ($type=='jour') { - $rep = $iDbCrm->select('logs', - 'date(dateHeure) as jours, count(*) as nb', - "1 $strPayant AND login='$login' AND dateHeure BETWEEN '$mois-01' AND '$mois-31' GROUP BY jours", - false, MYSQL_ASSOC); - } elseif ($type=='heure') { - $rep = $iDbCrm->select('logs', - 'HOUR(dateHeure) as heures, count(*) as nb', - "1 $strPayant AND login='$login' AND dateHeure BETWEEN '$mois-01' AND '$mois-31' GROUP BY heures", - false, MYSQL_ASSOC); - } - $tabRet = $rep; - - - - return array('error'=>array('errnum'=>0, 'errmsg'=>''), 'results'=>$tabRet); - } - - /** - * getPortefeuilleCsv - * @param string $login - * @param int $idClient - * @return ListeSurveillancesCsvReturn - */ - public function getPortefeuilleCsv($login='', $idClient=0) - { - return $this->getListeSurveillancesCsv('portefeuille', $login, $idClient); - } - - /** - * getPortefeuille - * @param PortefeuilleFiltre $filtre - * @param int $deb - * @param int $nbRet - * @return PortefeuilleReturn - */ - public function getPortefeuille($filtre, $deb=0, $nbRet=100) - { - $this->authenticate(); - - // Initialisation - $error = new ErrorType(); - if (empty($deb)) { $deb = 0; } - if (empty($nbRet)) { $nbRet = 100; } - - $tri = strtolower(trim($filtre->tri)); - switch ($tri) { - case 'ref': $orderBy='ORDER BY ref'; break; - case 'dateAjout': $orderBy='ORDER BY dateAjout'; break; - case 'dateDerEnvoi':$orderBy='ORDER BY dateDerEnvoi'; break; - case 'rs': $orderBy='ORDER BY rs'; break; - case 'cp': $orderBy='ORDER BY cp'; break; - case 'ville': $orderBy='ORDER BY ville'; break; - case 'indiScore': $orderBy='ORDER BY indiScore'; break; - case 'encours': $orderBy='ORDER BY encours'; break; - default: $orderBy='ORDER BY siren'; break; // siren ou vide ou autre - } - - $tabRet = array(); - $siren = substr($filtre->siret,0,9); - $nic = substr($filtre->siret,9,5); - $iDb = new WDB(); - $login = $this->tabInfoUser['login']; - - $strSelect = 's.email, s.siren, s.nic, s.ref, s.dateAjout, s.rs, s.cp, s.ville, s.dateDerEnvoi, s.encoursClient, c.actif, c.procol, c.indiScore, c.indiScore20, c.encours, c.indiScoreDate, c.dateBilan, c.indiScorePre, c.indiScore20Pre, c.encoursPre, c.indiScoreDatePre, c.sourceModif, c.scoreSolv, c.scoreSolvPre, c.scoreDir, c.scoreDirPre, c.scoreConf, c.scoreConfPre, c.scoreZ, c.scoreZPre, c.scoreCH, c.scoreCHPre, c.scoreAfdcc2, c.scoreAfdcc2Pre, c.situFi, c.situFiPre, c.infoNote, c.infoNotePre, c.noteStruct, c.noteStructPre, c.noteFin, c.noteFinPre, c.tendance, c.tendancePre, c.dateUpdate'; - - $strFiltre = ''; - if (intval($siren)>0) $strFiltre.= " AND s.siren=$siren "; - if (!empty($filtre->ref)) $strFiltre.= " AND s.ref LIKE '%$filtre->ref%'"; - if (!empty($filtre->rs)) $strFiltre.= " AND s.rs LIKE '%$filtre->rs%'"; - - // Il faut compter le nombre de siren au total - $tabTmp = $iDb->select('surveillances_site s', 'count(*) as nb', "s.login='$login' AND s.source='score' AND s.dateSuppr=0 $strFiltre", false, MYSQL_ASSOC); - $nbRepTot = $tabTmp[0]['nb']; - - $tabTmp = $iDb->select('surveillances_site s, scores_surveillance c', $strSelect, "s.login='$login' AND s.source='score' AND s.dateSuppr=0 AND s.siren=c.siren $strFiltre $orderBy LIMIT $deb,$nbRet", false, MYSQL_ASSOC); - foreach ($tabTmp as $i=>$tabSurv) { - if (trim($tabSurv['rs'])<>'') { - $rs=$tabSurv['rs']; - $cp=$tabSurv['cp']; - $ville=$tabSurv['ville']; - } else { - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($tabSurv['siren'], $tabSurv['nic']); - $rs=$tabIdentite['Nom']; - $cp=$tabIdentite['CP']; - $ville=$tabIdentite['Ville']; - $iDb->update('surveillances_site',array( - 'rs' => $rs, - 'cp' => $cp, - 'ville' => $ville), - "login='$login' AND source='score' AND dateSuppr=0 AND siren=".$tabSurv['siren']." AND nic=".$tabSurv['nic'], - false - ); - } - - $portefeuille = new Portefeuille(); - $portefeuille->email = $tabSurv['email']; - $portefeuille->siren = $tabSurv['siren']; - $portefeuille->nic = $tabSurv['nic']; - $portefeuille->ref = $tabSurv['ref']; - $portefeuille->dateAjout = $tabSurv['dateAjout']; - $portefeuille->rs = $rs; - $portefeuille->cp = $cp; - $portefeuille->ville = $ville; - // Entreprise - $portefeuille->actif = $tabSurv['actif']; - $portefeuille->procol = $tabSurv['procol']; - $portefeuille->indiScore = $tabSurv['indiScore']; - $portefeuille->indiScore20 = $tabSurv['indiScore20']; - $portefeuille->indiScorePre = $tabSurv['indiScorePre']; - $portefeuille->indiScore20Pre = $tabSurv['indiScore20Pre']; - $portefeuille->encours = $tabSurv['encours']; - $portefeuille->encoursPre = $tabSurv['encoursPre']; - $portefeuille->indiScoreDate = $tabSurv['indiScoreDate']; - $portefeuille->indiScoreDatePre = $tabSurv['indiScoreDatePre']; - $portefeuille->encoursClient = $tabSurv['encoursClient']; - $portefeuille->dateBilan = $tabSurv['dateBilan']; - $portefeuille->sourceModif = $tabSurv['sourceModif']; - //, c.scoreSolv, c.scoreSolvPre, c.scoreDir, c.scoreDirPre, c.scoreConf, c.scoreConfPre, c.scoreZ, c.scoreZPre, c.scoreCH, c.scoreCHPre, c.scoreAfdcc2, c.scoreAfdcc2Pre, c.situFi, c.situFiPre, c.infoNote, c.infoNotePre, c.noteStruct, c.noteStructPre, c.noteFin, c.noteFinPre, c.tendance, c.tendancePre, c.dateUpdate'; - $portefeuille->dateDerEnvoi = $tabSurv['dateDerEnvoi']; - $tabRet[] = $portefeuille; - - } - - $output = new PortefeuilleReturn(); - $output->error = $error; - $output->result = $tabRet; - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbRepTot; - return $output; - } - - - /** - * rechercheHisto - * @param string $recherche - * @param string $annee - * @param string $typeBod - * @param int $deb - * @param int $nbRep - * @param int $maxRep - * @param bool $pertinence - * @return RechercheHistoReturn - */ - public function rechercheHisto($recherche, $annee='', $typeBod='', $deb=0, $nbRep=20, $maxRep=200, $pertinence=false) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - if (empty($annee)) $annee = ''; - if (empty($typeBod)) $typeBod = ''; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($annee)) $pertinence = false; - $liste = array(); - $index = 'histo'; - - debugLog('I',"rechercheHisto de $recherche ($annee) (Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabFiltres = array(); - - if ($annee<>'' && $annee*1>=1953 && $annee*1<=date('Y')*1) - $tabFiltres = array('annee1'=>$annee); - - /* - require_once 'Metier/sphinx/recherche2.php'; - $ret=search2('histo', "$recherche", $tabFiltresAnnee, $deb, $nbRep, $maxRep, $pertinence); - */ - - if (SPHINX_HISTO_VERSION == 1){ - require_once 'sphinxapi/sphinxapi-0.9.9.php'; - } elseif (SPHINX_HISTO_VERSION == 2){ - require_once 'sphinxapi/sphinxapi-2.1.2.php'; - } - - $cl = new SphinxClient(); - $cl->SetServer (SPHINX_HISTO_HOST, SPHINX_HISTO_PORT); - $cl->SetConnectTimeout ( 1 ); - $cl->SetLimits ($deb, $nbRep, $maxRep); - $cl->SetMatchMode (SPH_MATCH_EXTENDED); - foreach ($tabFiltres as $nomFiltre => $valFiltre) - $cl->SetFilter($nomFiltre, array(0=>$valFiltre)); - $cl->SetRankingMode ( SPH_RANK_PROXIMITY_BM25 ); - $res = $cl->Query ( $recherche, $index ); - - if ($res===false) { - debugLog('I',"Search Sphinx : Pas de réponse pour $recherche avec ".implode(',',$tabFiltres).' ('.$cl->GetLastError() .')',__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $criteres = new RechercheHistoCriteres(); - $criteres->recherche = $recherche; - $criteres->annee = $annee; - - $output = new RechercheHistoReturn(); - $output->criteres = $criteres; - $output->nbReponses = 0; - $output->nbReponsesTotal = 0; - $output->duree = $res[time]; - $output->mots = array(); - $output->reponses = array(); - return $output; - - } - // Le moteur est opérationel - if ( $cl->GetLastWarning() ) { - debugLog('I',"Search Sphinx : Warning pour $recherche - ".$cl->GetLastWarning(),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - //print "WARNING: " . $cl->GetLastWarning() . "\n\n"; - } - - debugLog('I',"'Search Sphinx dans $index de $recherche (Filtre=".implode(',',$tabFiltres)."), Deb=$deb, nbRep=$nbRep, max=$max, any=$any",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet=array(); - if ( is_array($res['matches'])) { - $iDb = new WDB(); - foreach ( $res['matches'] as $doc => $docinfo ) - { - $listeEtab=$iDb->select('histobodacc.bodacc_ocr', - "'Histo' as Loc, id, nomFichier, annee1, bod, texte", - "id=$doc"); - $etab = $listeEtab[0]; - $tabRet[]=array( - 'Localisation' => $etab['Loc'], - 'id' => $doc, - 'Pertinence' => $docinfo['weight'], - 'Fichier' => $etab['nomFichier'], - 'Annee' => $etab['annee1'], - 'Code' => $etab['bod'], - 'Texte' => $etab['texte'], - ); - } - } - debugLog('I','Search Sphinx : Retourne '. $res[total].'/'. $res[total_found] .' en '.$res[time] .'secondes',__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $liste = $tabRet; - $nbTot = $res[total_found]; - $duree = $res[time]; - $tabMots = $res['words']; - - $tabRet = array(); - $k=0; - if(count($liste)>0) { - require_once 'i18n/cleanchar.php'; - foreach ($liste as $n=>$etab) { - $texte = cleanutf8($etab['Texte']); - $pattern = '/[^a-zA-Z0-9\/]+/ '; - $texte = preg_replace($pattern, ' ', $texte); - $posMin=100000; - $hitMin=1000000; - foreach ($tabMots as $mot=>$tabMot) { - if ($tabMot['hits']<$hitMin) { - $hitMin=$tabMot['hits']; - $motSignificatif=$mot; - } - } - $posMin = stripos($texte, ''.$motSignificatif); - if ($posMin<150) $posMin=150; - $texte2 = substr($texte, $posMin-150, 250); - $reponse = new RechercheHistoReponses(); - $reponse->id = $etab['id']; - $reponse->Pertinence = $etab['Pertinence']; - - //@todo : gestion du lien pour le téléchargement des fichiers bodacc - $file = strtr($etab['Fichier'], array( - '.txt'=>'.pdf', - '/mnt/bodacc/' => '')); - $vieuxWS = false; - if ($vieuxWS) { - $reponse->Fichier = 'http://tville.scores-decisions.com/bodacc/'.$file; - } else { - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $url = '/fichier/bodacc/q/'.base64_encode($file); - $reponse->Fichier = $hostname.$url; - } - $reponse->Annee = $etab['Annee']; - $reponse->Code = $etab['Code']; - $reponse->Texte = $texte2; - $tabRet[] = $reponse; - $k++; - } - } - - $criteres = new RechercheHistoCriteres(); - $criteres->recherche = $recherche; - $criteres->annee = $annee; - - $output = new RechercheHistoReturn(); - $output->criteres = $criteres; - $output->nbReponses = count($tabRet); - $output->nbReponsesTotal = $nbTot; - $output->duree = $duree; - $output->mots = array_keys($tabMots); - $output->reponses = $tabRet; - return $output; - } - - /** - * getListeSurveillanceCsv - * @param string $source - * @param string $login - * @param int $idClient - * @return ListeSurveillancesCsvReturn - */ - public function getListeSurveillancesCsv($source='', $login='', $idClient=0) - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - if (empty($source)) $source = ''; - if (empty($idClient)) $idClient = 0; - - debugLog('I',"getListeSurveillancesCsv Début $source $login $idClient",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $tabRet = array(); - $iDb = new WDB(); - $strClient = $strLogin = ''; - $exportPtf = false; - switch ($source) - { - case 'insee': - case 'annonces': - case 'bilans': - case 'score': - case 'actes': - case 'privileges': - case 'dirigeants': - break; - case 'portefeuille': - $source='score'; - $exportPtf=true; - break; - default: - $source=''; - break; - } - - if ($source<>'') $strSource = "AND source='$source' "; - else $strSource = ''; - - // Control idClient - if ($idClient==0 || ($idClient!=$this->tabInfoUser['idClient'] && $this->tabInfoUser['profil']!='SuperAdministrateur') ){ - $idClient = $this->tabInfoUser['idClient']; - } - $strClient = "AND u.idClient=$idClient "; - - if ($this->tabInfoUser['profil']=='SuperAdministrateur' || $this->tabInfoUser['profil']=='Administrateur') { - // Surveillances de tous les utilisateurs du client - if (empty($login)) { - $login = ''; - //Surveillances de l'utilisateur - } else { - $strLogin = "AND s.login='$login' "; - } - } else { - //Par défaut préselection de l'utilisateur - $login = $this->tabInfoUser['login']; - $strLogin = "AND s.login='$login' "; - } - - $fichierCsv = DOC_WEB_LOCAL."listesurv-$source-$login-$idClient.csv"; - - if ( file_exists($fichierCsv) - && date('Ymd', filemtime($fichierCsv))==date('Ymd') - && filesize($fichierCsv)>60 ) { - $size = filesize($fichierCsv); - $erreur = false; - $tabNom = array(); - $cache = 1; - } else { - unlink($fichierCsv); - if ($source=='score'){ - if ($this->tabInfoUser['typeScore']==20) { - $strScore='v.indiScore20 AS indiScore20'; - $strScorePre='v.indiScore20Pre AS indiScore20Pre'; - } else { - $strScore='v.indiScore AS indiScore100'; - $strScorePre='v.indiScorePre AS indiScore100Pre'; - } - /*v.scoreZ, v.scoreZPre, v.scoreCH, v.scoreCHPre, - v.scoreAfdcc2, v.scoreAfdcc2Pre, v.situFi, v.situFiPre, v.infoNote, v.infoNotePre, - v.noteStruct, v.noteStructPre, v.noteFin, v.noteFinPre, v.tendance, v.tendancePre, */ - $sql="SELECT LOWER(s.login) as loginUti, s.source, s.email, s.siren, s.nic, s.ref, s.dateAjout, - s.rs, s.cp, s.ville, s.dateDerEnvoi, - s.encoursClient, v.actif, v.procol, $strScore, v.encours, v.indiScoreDate, v.dateBilan, - $strScorePre, v.encoursPre, v.indiScoreDatePre, v.sourceModif, v.scoreSolv, v.scoreSolvPre, v.scoreDir, - v.scoreDirPre, v.scoreConf, v.scoreConfPre, - e.cj, e.capital, e.capitalDev, e.ape_entrep, e.tca, e.teff_entrep, - v.dateUpdate - FROM surveillances_site s, sdv1.utilisateurs u, sdv1.clients c, scores_surveillance v, etablissements e - WHERE s.source='score' $strClient $strLogin AND dateSuppr=0 AND s.login=u.login AND u.idClient=c.id AND s.siren=v.siren AND s.siren=e.siren - GROUP BY loginUti, s.siren, s.nic, s.source, s.ref - ORDER BY loginUti ASC, s.siren ASC, s.nic ASC, s.source ASC, s.ref ASC"; - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeSurveillancesCsv($source, $login, $idClient)", $sql); - } else { - $sql="SELECT LOWER(s.login) as loginUti, s.source, s.email, s.siren, s.nic, s.ref, s.dateAjout, - s.rs, s.cp, s.ville, s.dateDerEnvoi - FROM surveillances_site s, sdv1.utilisateurs u, sdv1.clients c - WHERE 1 $strSource $strClient $strLogin AND dateSuppr=0 AND s.login=u.login AND u.idClient=c.id - ORDER BY loginUti ASC, s.siren ASC, s.nic ASC, s.source ASC, s.ref ASC"; - } - debugLog('I',"getListeSurveillancesCsv SQL $sql",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $fp = fopen(DOC_WEB_LOCAL."listesurv-$source-$login-$idClient.sql", 'w'); - fwrite($fp, $sql.EOL); - fclose($fp); - $c = Zend_Registry::get('config'); - exec("php ".$c->profil->path->batch."/sql2csv.php jo ".DOC_WEB_LOCAL."listesurv-$source-$login-$idClient.sql $fichierCsv > /dev/null &"); - $size=$cache=0; - } - - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $result = new ListeSurveillancesCsv(); - $result->Url = $hostname.DOC_WEB_URL."csv/listesurv-$source-$login-$idClient.csv"; - $result->Taille = $size; - $result->Cache = $cache; - - debugLog('I','getListeSurveillancesCsv Url='.$hostname.DOC_WEB_URL."csv/listesurv-$source-$login-$idClient.csv, Taille=$size, Cache=$cache",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $output = new ListeSurveillancesCsvReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * getListeJalCollecte - * @return ListeJalCollecteReturn - */ - public function getListeJalCollecte() - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - - $iBodacc = new MBodacc(); - $tabJal = $iBodacc->getListeJalCollecte(); - foreach ($tabJal as $i=>$jal) - { - $jalCollecte = new JalCollecte(); - $jalCollecte->id = $i; - $jalCollecte->nom = $jal; - $tabRet[] = $jalCollecte; - } - $output = new ListeJalCollecteReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * getListeFichierSurv - * @param string $login - * @param string $ref - * @param string $nomFic - * @return ListeFichierSurvReturn - */ - public function getListeFichierSurv($login, $ref='*', $nomFic='') - { - $this->authenticate(); - if (empty($ref)) $ref = '*'; - if (empty($nomFic)) $nomFic = ''; - $error = new ErrorType(); - //debugLog('I',"getListeFichierSurv pour $login, $ref, $nomFic",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $tabFichier=$tabDates=array(); - $numAbo=substr($ref, 0,5); - if (strtolower($login)=='vwbank') { - $repClient='volkswagen bank'; - $ficClient='surveillanceBodacc_SURBODPRDCFTVWBANK'; - $numAbo=$ref='19300'; - } elseif (substr($login,0,6)=='apicil') { - $repClient='apicil'; - $ficClient='surveillanceBodacc_SURBODPRDCFTAPICIL'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='omni04') { - $repClient='aggm mederic '; - $ficClient='surveillanceBodacc_SURBODPRDFTSOMNIREP'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='bodacca3m') { - $repClient='aggm mederic '; - $ficClient='surveillanceBodacc_SURBODPRDFTSMEDERIC'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='bodaccomni') { - $repClient='aggm mederic '; - $ficClient='surveillanceBodacc_SURBODPRDFTSOMNIREP'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='bodacccrr') { - $repClient='aggm mederic '; - $ficClient='surveillanceBodacc_SURBODPRDFTSCRR'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='cpcambr13' || strtolower($login)=='cpcambr14') { - $repClient='cpcam des bouches du rhône'; - $ficClient='diffusionBodacc_DIFBODPRDMAICPCAM13'; - $numAbo=$ref=''; - } elseif (strtolower($login)=='frbsurveillance'){ - $repClient='france boissons'; - $ficClient='surveillanceBodacc_SURBODPRDFTPFBOISSON'; - } else { - $repClient='cnasea'; - $ficClient='surveillanceBodacc_SURBODTSTFTSCNASEA'; - } - $dh = opendir(DOC_WEB_LOCAL."clients/$repClient/"); - if (!$dh) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic", "Impossible d'ouvrir le dossier '/home/data/clients/$repClient/'"); - $error->errnum = 1; - $error->errmsg = "Impossible d'ouvrir le dossier client"; - } else { - while (false !== ($filename = readdir($dh))) { - if ($filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,42)==$ficClient.$numAbo) { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,43,8); - $tabClients[]=substr($filename,0,42); - } - elseif ($ref=='*' && $filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,37)==$ficClient && substr($filename,37,1)<>'_') { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,43,8); - $tabClients[]=substr($filename,0,42); - } - elseif ($filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,37)==$ficClient && substr($filename,37,1)=='_' && $repClient=='apicil') { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,38,8); - $tabClients[]=substr($filename,0,37); - } - elseif ($filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv' && substr($filename,0,38)==$ficClient && substr($filename,38,1)=='_' && $repClient=='aggm mederic ') { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,39,8); - $tabClients[]=substr($filename,0,38); - } - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic : fichier lu '$filename'", "Fichier lu '$filename'"); - /* - elseif ( $ficClient=='surveillanceBodacc_SURBODPRDFTPFBOISSON' && substr($filename,0,strlen($ficClient))==$ficClient && $repClient=='france boissons') { - $tabFichier[] = $filename; - $tabDates[]=substr($filename,strlen($ficClient)+1,8); - $tabClients[]=substr($filename,0,strlen($ficClient)); - } - */ - } - /** Tableau des noms de fichier **/ - sort($tabFichier); - /** Tableau des dates de livraisons **/ - $tabDates=array_unique($tabDates); - sort($tabDates); - /** Tableau des Clients **/ - $tabClients=array_unique($tabClients); - sort($tabClients); - //return array('error'=>array('errnum'=>0, 'errmsg'=>''), 'results'=>$tabDates); - - /*@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic", - "Fichiers :".EOL. - print_r($tabFichier, true). - "Dates:".EOL. - print_r($tabDates, true). - "Clients :".EOL. - print_r($tabClients, true) - );*/ - - if ($ref=='*') { - $tabFichier = array(); - // Boucle sur les dates de livraison - foreach ($tabDates as $dateFic) { - if (strlen($dateFic)<>8) continue; - if (!file_exists(DOC_WEB_LOCAL."clients/$repClient/$ficClient".'_'."$dateFic.csv") || - filesize(DOC_WEB_LOCAL."clients/$repClient/$ficClient".'_'."$dateFic.csv")==0) { - - $fpW=fopen(DOC_WEB_LOCAL."clients/$repClient/$ficClient".'_'."$dateFic.csv",'w'); - $entete=true; - // Boucle afin de vérifier si on est sur le bon client - foreach ($tabClients as $nomClient) { - $dh = opendir(DOC_WEB_LOCAL."clients/$repClient/"); - while (false !== ($filename = readdir($dh))) { - if (substr($filename,0,51)==$nomClient.'_'.$dateFic && substr($filename,-4)=='.csv') { - $fichier=$filename; - //break; - } - } - $fpR=fopen(DOC_WEB_LOCAL."clients/$repClient/$fichier",'r'); - //return array('error'=>array('errnum'=>0, 'errmsg'=>''), 'results'=>array(($fichier)));//die; - if ($fpR) { - while (!feof($fpR)) { - $ligne=trim(fgets($fpR)); - if (substr($ligne,0,5)=='Siren' && $entete==true) { - fwrite($fpW, 'SITE;'.$ligne.EOL); - $entete=false; - } - elseif (substr($ligne,0,5)<>'Siren' && trim($ligne)<>'') { - fwrite($fpW, strtr($nomClient, array('surveillanceBodacc_SURBODTSTFTS'=>'', - 'surveillanceBodacc_SURBODPRDCFT'=>'')).';'.$ligne.EOL); - } - } - fclose($fpR); - } - } - fclose($fpW); - } - if (strlen($dateFic)==8) - $tabFichier[]=$ficClient.'_'.$dateFic.'.csv'; - } - } - rsort($tabFichier); - - if ($nomFic<>'') { - //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, /home/data/clients/$repClient/$nomFic", 'Avant BZ2'); - if (!file_exists(DOC_WEB_LOCAL."/csv/$nomFic.bz2") || - filesize(DOC_WEB_LOCAL."/csv/$nomFic.bz2")<=14) { - $string=file_get_contents("/home/data/clients/$repClient/$nomFic"); - if ($string===false) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, $nomFic", "Ouverture impossible du fichier '/home/data/clients/$repClient/$nomFic'"); - } - $bz = bzopen(DOC_WEB_LOCAL."/csv/$nomFic.bz2",'w'); - if ($bz) { - bzwrite($bz, $string, strlen($string)); - bzclose($bz); - } - } /*else - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, /home/data/clients/$repClient/$nomFic", 'Sans BZ2'); - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "getListeFichierSurv pour $login, $ref, /home/data/clients/$repClient/$nomFic", 'Après BZ2'); - */ - } - debugLog('I',"getListeFichierSurv pour $login, $ref, $nomFic : nb fichiers=".count($tabFichier),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $result = array(); - foreach($tabFichier as $fichier){ - $retFichier = new ListeFichierSurv(); - $retFichier->UrlFichier = $hostname.'/data/csv/'.$fichier; - $result[] = $retFichier; - } - } - $output = new ListeFichierSurvReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Geocodage d'une adresse - * @param string $adresse - * @param string $cp - * @param string $ville - * @param string $pays - * @return GeoCodeReturn - */ - public function geoCode($adresse, $cp, $ville, $pays='France') - { - $this->authenticate(); - - $ligne = date('YmdHis').";$siren;MMap AVANT"; - $fp = fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - - $mMap = new MMap($adresse, $cp, $ville, $pays); - - $ligne=date('YmdHis').";$siren;MMap APRES"; - $fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); - fwrite($fp,$ligne.EOL); - fclose($fp); - - $geocode = new GeoCode(); - $geocode->latitude = $mMap->latitudeDec; - $geocode->longitude = $mMap->longitudeDec; - $geocode->precis = $mMap->precision; - $geocode->adresseValidee = $mMap->adresseValidee; - $geocode->latitudeDeg = $mMap->latitudeDeg; - $geocode->longitudeDeg = $mMap->longitudeDeg; - - $output = new GeoCodeReturn(); - $output->error = $error; - $output->result = $geocode; - } - - /** - * Recherche d'entreprise par leur actionnaire - * @param string $nom Raison sociale / Nom de l'actionnaire (obligatoire) - * @param string $cpVille CP, Ville - * @param string $siren Siren de l'actionnaire - * @param string $pays Pays de l'actionnaire - * @param string $pctMin Niveau de détention Minimam de l'actionnaire - * @param string $pctMax Niveau de détention Maximum de l'actionnaire - * @param integer $deb Position du curseur dans la liste des réponses (0 par défaut) - * @param integer $nbRep Nombre de réponses retournées au maximum par cette requete (20 par défaut) - * @param integer $maxRep Nombre de réponses recherchées au maximum (200 par défaut) - * @param boolean $pertinence Recherche orthographique stricte sur les noms et prénoms (si true) - * @return SearchActReturn - */ - public function searchAct($nom, $cpVille='', $siren=0, $pays='', $pctMin=0, $pctMax=100, $deb=0, $nbRep=20, $maxRep=200, $pertinence=false) - { - debugLog('I',"Recherche Actionnaire de $nom, $cpVille (Max Rep=$nbRep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (!empty($pays)){ - $wdb = new WDB('jo'); - $result = $wdb->select('tabPays', 'codPays3', "libPays LIKE '".$pays); - if (count($result>0)){ - $pays = $result[0]['codPays3']; - } else { - $pays = ''; - } - } - - if (empty($cpVille)) $cpVille = ''; - if (empty($siren)) $siren = ''; - if (empty($pctMin)) $pctMin = 0; - if (empty($pctMax)) $pctMax = 100; - if (empty($deb)) $deb = 0; - if (empty($nbRep)) $nbRep = 20; - if (empty($maxRep)) $maxRep = 200; - if (empty($pertinence)) $pertinence = false; - - $formR = array( - 'type' => 'act', - 'siren' => $siren, - 'actNomRS' => join(' ', array($nom, $cpVille)), - 'pays' => $pays, - 'pctMin' => $pctMin, - 'pctMax' => $pctMax, - ); - - $version = defined('SPHINX_ACT_VERSION') ? SPHINX_ACT_VERSION : 1; - require_once 'Metier/sphinx/rechercheFonc.php'; - $etabs = rechercheAct($formR, $deb, $nbRep, $maxRep); - - $iInsee = new MInsee(); - $tabRet = array(); - - $reponses = $etabs['reponses']; - if (count($reponses)>0) { - foreach ($reponses as $etab) { - $act = new EntrepriseActItem(); - $act->id = $etab['id']; - $act->Pertinence = $etab['Pertinence']; - $act->Siret = $etab['Siret']; - $act->Siege = $etab['Siege']; - $act->Nom = prepareString(strtr($etab['Nom'],'/*',' ')); - $act->Nom2 = prepareString($etab['Nom2']); - $act->Sigle = prepareString($etab['Sigle']); - $act->Enseigne = prepareString($etab['Enseigne']); - $act->Adresse = prepareString($etab['Adresse']); - $act->Adresse2 = prepareString($etab['Adresse2']); - $act->CP = $etab['CP']; - $act->Ville = prepareString($etab['Ville']); - $act->Pays = $etab['Pays']; - $act->Tel = $etab['Tel']; - $act->Fax = $etab['Fax']; - $act->FJ = $etab['FJ']; - $act->FJLib = prepareString($iInsee->getLibelleFJ($etab['FJ'])); - $act->Siren = $etab['Siren']; - $act->Nic = $etab['Nic']; - $act->Actif = $etab['Actif']; - $act->NafEtab = $etab['NafEtab']; // Etablissement - $act->NafEtabLib = prepareString($iInsee->getLibelleNaf($etab['NafEtab'])); // Etablissement - $act->NafEnt = $etab['NafEnt']; // Entreprise - $act->NafEntLib = prepareString($iInsee->getLibelleNaf($etab['NafEnt'])); - $act->ActNomRs = $etab['ActNomRs']; - $act->ActPays = $etab['ActPays']; - $act->ActDateLien = $etab['ActDateLien']; - $act->ActActif = $etab['ActActif']; - $act->ActPmin = $etab['ActPmin']; - $tabRet[] = $act; - } - } - - $output = new SearchActReturn(); - $output->nbReponses = $etabs['nbReponses']; - $output->nbReponsesTotal = $etabs['nbReponsesTotal']; - $output->result = $tabRet; - - if ($tabRet['nbReponses']==0) { - debugLog('W', "Aucun résultat pour cette recherche !", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - } - - return $output; - } - - /** - * Commande d'une enquête sur une entreprise en France ou à l'Internationale - * @param string $siren - * @param string $infoEnq Informations pour la demande d'enquête
        - * InfoEnq[Entrep][Tel]
        - * InfoEnq[Entrep][Fax]
        - * InfoEnq[Entrep][AutreTel]
        - * InfoEnq[Entrep][Mail]
        - * InfoEnq[Entrep][AutreMail]
        - * InfoEnq[Entrep][Web]
        - * InfoEnq[Entrep][Rib][Banque]
        - * InfoEnq[Entrep][Rib][Guichet]
        - * InfoEnq[Entrep][Rib][Compte]
        - * InfoEnq[Entrep][Rib][Cle]
        - * InfoEnq[Encours]
        - * InfoEnq[NbEcheances]
        - * InfoEnq[AvisAssureur]
        - * InfoEnq[Type]
        - * InfoEnq[Delai]
        - * InfoEnq[PrecisionsChoix]
        - * InfoEnq[Precisions][MontantCA]
        - * InfoEnq[Precisions][Motif]
        - * InfoEnq[Precisions][Autre]
        - * InfoEnq[Anciennete]
        - * InfoEnq[AncienneteDuree]
        - * InfoEnq[ImpayeesChoix]
        - * InfoEnq[Impayees][Montant]
        - * InfoEnq[Impayees][Nombre]
        - * InfoEnq[Impayees][Date]
        - * InfoEnq[RetardPaiementChoix]
        - * InfoEnq[RetardPaiement][Montant]
        - * InfoEnq[RetardPaiement][Nombre]
        - * InfoEnq[RetardPaiement][Date]
        - * InfoEnq[LitigeChoix]
        - * InfoEnq[Litige][Precisions]
        - * InfoEnq[Observation]
        - * @param string $infoDemande Informations sur l'utilisateur
        - * InfoUser[Profil]
        - * InfoUser[ProfilAutre]
        - * InfoUser[Identite]
        - * InfoUser[Tel]
        - * InfoUser[Fax]
        - * InfoUser[Email]
        - * InfoUser[Ref]
        - * @return CommandeEnqueteReturn - */ - public function commandeEnquete($siren, $infoEnq, $infoDemande) - { - $this->authenticate(); - //Initialisation - $infoEnq = json_decode($infoEnq); - $infoDemande = json_decode($infoDemande); - - $mail = trim($infoDemande['Email']); - if ($mail=='') { - $mail=$this->tabInfoUser['email']; - } - - $tabInsert = array( - 'idUser' => $this->tabInfoUser['id'], - 'source' => 'intersud', // 'greffes', 'asso', 'graydon' - 'login' => $tabInfoUser['login'], - 'emailCommande' => $mail, - 'siren' => $siren, - 'refDocument' => serialize($infoDemande), - 'refCommande' => serialize($infoEnq), - 'dateCommande' => DATETIME, - // 'idClient'=> $tabInfoUser['idClient'], - ); - debugLog('I',"Intersud, début commande sur $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $messageInfo = print_r($infoEnq, 1).EOL.print_r($infoDemande,1).EOL; - - $idClient = $this->tabInfoUser['idClient']; - - $iDbCrm = new WDB('sdv1'); - $rep = $iDbCrm->select('clients', ' nom, racineLogin, InterSudLogin, InterSudPass', "id='$idClient'", false, MYSQL_ASSOC); - $login = trim($rep[0]['InterSudLogin']); - $pass = trim($rep[0]['InterSudPass']); - $nomClient = trim(strtoupper($rep[0]['nom'])); - $strInfoCommande = "NOM et Prénom du client demandeur : ".$infoDemande['Identite'].EOL; - $strInfoCommande.= "Email du client demandeur : $mail".EOL; - $strInfoCommande.= "Tel/Fax du demandeur : ".$infoDemande['Tel'].' / '.$infoDemande['Fax'].EOL; - $strInfoCommande.= "Profil du demandeur : ".trim($infoDemande['Profil'].' '.$infoDemande['ProfilAutre']).EOL; - $typeEnqLog='enqueteDemNF'; - - if ($login=='' || $pass=='') { - /** Il ne s'agit pas d'un client final, on anonymise la commande **/ - $login='YLENA'; // Demandes en test - $pass='WYLFE'; - $nomClient=$strInfoCommande=''; - $typeEnqLog='enqueteDem'; - /* ENQUETES EN PROD - $login='FACTURE'; - $pass='AWKROM'; - */ - } - - /** Connexion à l'Extranet Intersud **/ - $url = 'http://www.intersud.fr/espace_client/espace_client.php'; - $cookie = $referer = ''; - $tabPost = array( - 'login' => $login, - 'pwd' => $pass, - ); - $tdeb = microtime(true); - $page = getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Connexion impossible à la plateforme Intersud".EOL.$strInfoCommande); - //wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - throw new SoapFault('1',"Connexion impossible à la plateforme d'enquêtes"); - } - - $tfin = microtime(true); - $duree = $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - $cookie = $page['header']['Set-Cookie']; - $intersudNomPrenom=$intersudRaisonSociale=''; - if (preg_match('/(.*)<\/td>/Uis',$body,$matches)) - $intersudNomPrenom=trim($matches[1]); - if (preg_match('/(.*)<\/td>/Uis',$body,$matches)) - $intersudRaisonSociale=trim($matches[1]); - debugLog('I',"Intersud, connexion via $login pour $intersudRaisonSociale ($intersudNomPrenom, cookie=$cookie)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - /* - $fp=@fopen(LOG_PATH."/intersud.log", "a"); - @fwrite($fp, EOL.DATETIME.EOL.print_r($page,true).'========================================================================================================='.EOL.EOL); - @fclose($fp); - die(); - */ - /** Page formulaire de demande d'enquête **/ - $url='http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, '', $referer, false, '', '', 7); - if ($page['code']<>200) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Connexion impossible au formulaire d'enquête Intersud".EOL.$strInfoCommande); - throw new SoapFault('2',"Connexion impossible à la plateforme d'enquêtes"); - } - - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - - $fp=@fopen(LOG_PATH.'/intersud.log', "a"); - @fwrite($fp, print_r($page,true)); - @fclose($fp); - $tabInterSud=array(); - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[2][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - if (preg_match_all('/$field) { - $tmp=explode('"', $matches[1][$i]); - $tabInterSud[$field]=$tmp[0]; - } - } - $ref_exp=$tabInterSud['ref_exp']; - $email_exp=$tabInterSud['email_exp']; - $tel_exp=$tabInterSud['tel_exp']; - debugLog('I',"Intersud, formulaire enquête ref $ref_exp, $email_exp, $tel_exp",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $fp=@fopen(LOG_PATH.'/intersud.log', "a"); - @fwrite($fp, print_r($matches,true)); - @fwrite($fp, print_r($tabInterSud,true)); - @fclose($fp); - - /** Insertion de la commande en base **/ - $ret = $iDbCrm->insert('commandes', $tabInsert, true); - $comment = "Référence de la commande chez Scores et Décisions : i$ret - ".DATETIME." - Date et heure de la commande : ".date('d/m/Y - H:i')." - Origine de la commande : $nomClient - $strInfoCommande - - CA : ".$infoEnq['Precisions']['MontantCA']." - Motif de la demande : ".trim($infoEnq['Precisions']['Motif'].' '.$infoEnq['Precisions']['Autre'])." - Type de la demande : ".$infoEnq['Precisions']['Type']." - Anciennete de la relation : ".$infoEnq['Anciennete'].' '.$infoEnq['AncienneteDuree']." - Observations : ".$infoEnq['Observation'].EOL; - - if ($infoEnq['ImpayeesChoix']<>'non') - $comment.="Impayé(s) : ".$infoEnq['Impayees']['Nombre']." impayé(s) pour un montant de ".$infoEnq['Impayees']['Montant']." en date du ".$infoEnq['Impayees']['Date'].EOL; - - if ($infoEnq['RetardPaiementChoix']<>'non') - $comment.="Retard(s) de paiement : ".$infoEnq['RetardPaiement']['Nombre']." retard(s) pour un montant de ".$infoEnq['RetardPaiement']['Montant']." en date du ".$infoEnq['RetardPaiement']['Date'].EOL; - - if ($infoEnq['LitigeChoix']<>'non') - $comment.="Présence de litige(s) : ".$infoEnq['Litige']['Precisions'].EOL; - - $enqType=0; - $enqDelai=7; - switch (strtolower($infoEnq['Type'])) { - case 'premier': $enqType=0; $enqDelai=6; break; - case 'gold': $enqType=1; break; - case 'distrimat': $enqType=2; break; - case 'star': $enqType=3; break; - case 'avis_bancaire': $enqType=4; break; - case 'autre': $enqType=5; break; - } - - /** Ajout du RIB si communiqué **/ - if (@trim(implode(' ', $infoEnq['Entrep']['Rib']))<>''){ - $iDbCrm->insert('banques', array( - 'siren' => $siren, - 'libBanqueGuichet' => '', - 'precis' => 1, - 'codeBanque' => $infoEnq['Entrep']['Rib']['Banque'], - 'codeGuichet' => $infoEnq['Entrep']['Rib']['Guichet'], - 'numCompte' => $infoEnq['Entrep']['Rib']['Compte'].$infoEnq['Entrep']['Rib']['Cle'], - 'dateSource' => DATETIME, - ), true); - } - - /** Remplissage du formulaire d'enquête pour soumission à Intersud **/ - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren); - $tabPost = array( - 'soc' => $tabIdentite['Nom'], - 'cible_enk' => 9, // 9 - 'siret' => $siren, - 'acti' => '', - 'soc_exp' => $tabInterSud['soc_exp'], - 'type_enk' => $enqType, // 0=Premier, 1=Gold, 2=Distrimat, 3=Star, 4=Avis bancaire, 5=Autre - 'nom_diri' => '', - 'adr' => $tabIdentite['Adresse'], - 'ref_exp' => $tabInterSud['ref_exp'], - 'autre_type_enk' => '', // Texte libre - 'adr2' => $tabIdentite['Adresse2'], - 'delai_enk' => $enqDelai, // 6=24h, 7=72h, 8=+de5jours - 'ville' => $tabIdentite['Ville'], - 'cp' => $tabIdentite['CP'], - 'pays' => '', // International ? - 'nom_exp' => $tabInterSud['nom_exp'], - 'tel' => $tabIdentite['Tel'], - 'port' => $infoEnq['Entrep']['AutreTel'], - 'tel_exp' => $tabInterSud['tel_exp'], - 'bank' => trim(implode(' ', $infoEnq['Entrep']['Rib'])), - 'int_enk' => $tabInterSud['int_enk'], // International ? - 'encours' => $infoEnq['Encours'], - 'nb_ech' => $infoEnq['NbEcheances'], - 'delai2_enk' => $tabInterSud['delai2_enk'], // International ? - 'email_exp' => $tabInterSud['email_exp'], - 'cred' => '', - 'comment' => urlencode($comment), - 'val_ret' => $tabInterSud['val_ret'], - ); - $url = 'http://intersud.fr/espace_client/demande_enquete.php'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, $tabPost, $referer, false, '', '', 7); - if ($page['code']<>200) { - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ATTENTION : Commande d'enquete sur $siren", "Validation impossible du formulaire d'enquête Intersud".EOL.$strInfoCommande); - throw new SoapFault('3',"Connexion impossible à la plateforme d'enquêtes"); - } - - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - $referer = $url; - $body = $page['body']; - - $output = new CommandeEnqueteReturn(); - $output->siren = $siren; - $output->emailCommande = $mail; - $output->dateCommande = DATETIME; - $output->refCmde = 'i'.$ret; - - //$strInfoCommande $mail - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Commande d'enquete sur $siren", $comment.EOL.EOL.'---------------------------------'.EOL.$messageInfo.EOL.EOL.'---------------------------------'.EOL.$body); - @sendMail('production@scores-decisions.com', $mail, "Votre demande d'enquete sur ".$tabIdentite['Nom']." ($siren)", "Votre demande d'enquête sur la société ".$tabIdentite['Nom']." a été prise en compte sous la référence i$ret - ".DATETIME); - wsLog($typeEnqLog, $siren, 'i'.$ret.'-'.DATETIME); - - /** Gestion de la déconnexion **/ - $url = 'http://intersud.fr/espace_client/index.php?code_ret=9'; - $tdeb = microtime(true); - $page = getUrl($url, $cookie, '', $referer, false, '', '', 7); - $tfin = microtime(true); - $duree+= $tfin-$tdeb; - - $ret = $iDbCrm->update('commandes', array('dureeCommande'=>round($duree,3)), "idCommande=$ret"); - - return $output; - } - - /** - * Retourne l'ensemble des informations des dirigeants opérationnels (non statutaires) de l'entreprise - * @param string $siren Siren de l'entreprise - * @return DirigeantOp[] - */ - public function getDirigeantsOp($siren) - { - $this->authenticate(); - - debugLog('I',"Dirigeants opérationnels demandés pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($siren)>9 || (substr($siren,0,9)*1)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iInsee = new MInsee(); - $dirs = $iInsee->getDirigeantsOp($siren); - $tabRet = array(); - if (count($dirs)>0){ - foreach ($dirs as $nb => $dir) { - $objet = new DirigeantOp(); - $objet->Code = $dir['Fonction']; - $objet->Titre = prepareString($dir['Titre']); - $objet->Societe = prepareString($dir['Societe']); - $objet->Civilite = prepareString($dir['Civilite']); - $objet->Nom = prepareString($dir['Nom']); - $objet->Prenom = prepareString($dir['Prenom']); - $objet->NomUsage = prepareString($dir['NomUsage']); - $objet->NaissDate = $dir['NaissDate'];// 07/09/1961 - $objet->NaissVille = prepareString($dir['NaissVille']); // LE RUSSEY - $objet->NaissDepPays = prepareString($dir['NaissDepPays']); // LE RUSSEY - $objet->Ancien = $dir['Ancien']; - $objet->DateFct = $dir['DateFct']; - - $tabRet[] = $objet; - } - } - $this->wsLog('dirigeantsOp', $siren); - debugLog('I', 'Nb Dirigeants Op retournés = '. count($dirs), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - return $tabRet; - } - - /** - * Liste de tous les dépôts enregistrés à l'INPI pour une entreprise - * @param string $siren Siren de l'entreprise - * @return Depot[] - */ - public function getListeDepots($siren) - { - $this->authenticate(); - - debugLog('I',"Liste des dépots INPI pour $siren",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (strlen($siren)>9 || (substr($siren,0,9)*1)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iRncs=new MRncs(); - $evens=$iRncs->getListeDepots($siren); - $tabRet = array(); - if (count($evens)>0){ - foreach ($evens as $nb=>$even){ - $objet = new Depot(); - $objet->CodeDepot = $even['codDepot']; - $objet->LibDepot = prepareString($even['libDepot']); - $objet->DateDepot = $even['datDepot']; - $objet->RefDepot = $even['refDepot']; - $objet->DateRncs = $even['datRncs']; - $objet->DateMAJ = $even['datSed']; - - $tabRet[] = $objet; - } - } - debugLog('I', 'Nb dépôts retournés = '. count($tabRet), __LINE__, __FILE__, __FUNCTION__, __CLASS__); - return $tabRet; - } - - - /** - * Enter description here ... - * @param string $siret - * @param integer $id - * @return IdentiteLight - */ - public function getIdentiteLight($siret, $id = 0) - { - $this->authenticate(); - - //Initialisation - if (empty($id)) { - $id = 0; - } - - $siret = trim($siret); - $len = strlen($siret); - $siren = substr($siret,0,9); - if ($len == 14) { - $nic = substr($siret,9,5)*1; - } elseif ($len == 9) { - $nic = 0; - } - - if ($siren*1==0 && $id==0) { - $this->sendError('1010'); - } - if ($len!=14 && $len!=9) { - $this->sendError('1020'); - } - - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($siren, $nic, $id); - - $output = new IdentiteLight(); - $output->id = $tabIdentite['id']; - $output->Siret = $tabIdentite['Siret']; - $output->Siege = $tabIdentite['Siege']; - $output->Nom = $tabIdentite['Nom']; - $output->Tribunal = $tabIdentite['Tribunal']; - $output->Sigle = $tabIdentite['Sigle']; - $output->Enseigne = $tabIdentite['Enseigne']; - $output->Adresse = $tabIdentite['Adresse']; - $output->Adresse2 = $tabIdentite['Adresse2']; - $output->AdresseNum = $tabIdentite['AdresseNum']; - $output->AdresseBtq = $tabIdentite['AdresseBtq']; - $output->AdresseVoie = $tabIdentite['AdresseVoie']; - $output->AdresseRue = $tabIdentite['AdresseRue']; - $output->CP = $tabIdentite['CP']; - $output->Ville = $tabIdentite['Ville']; - $output->Tel = $tabIdentite['Tel']; - $output->Fax = $tabIdentite['Fax']; - $output->FJ = $tabIdentite['FJ']; - $output->FJ_Lib = $tabIdentite['FJ_lib']; - $output->Siren = $tabIdentite['Siren']; - $output->Nic = $tabIdentite['Nic']; - $output->Actif = $tabIdentite['Actif']; - $output->NafEtab = $tabIdentite['NafEtab']; - $output->NafEnt = $tabIdentite['NafEnt']; - $output->NafEntLib = $tabIdentite['NafEntLib']; - $output->NafEtabLib = $tabIdentite['NafEtabLib']; - $output->AutreId = $tabIdentite['AutreId']; - $output->Source = $tabIdentite['Source']; - $output->SourceId = $tabIdentite['SourceId']; - $output->Dept = $tabIdentite['Dept']; - $output->codeCommune = $tabIdentite['codeCommune']; - $output->Capital = $tabIdentite['Capital']; - $output->CapitalDev = $tabIdentite['CapitalDev']; - $output->TrancheCA = $tabIdentite['TrancheCA']; - $output->TrancheCALib = $tabIdentite['TrancheCALib']; - $output->EffEnTr = $tabIdentite['EffEnTr']; - $output->EffEnTrLib = $tabIdentite['EffEnTrLib']; - $output->EffEtTr = $tabIdentite['EffEtTr']; - $output->EffEtTrLib = $tabIdentite['EffEtTrLib']; - return $output; - } - - /** - * Retourne les éléments du groupes - * @param string $siren - * @param int $pctMin (33, 40 ,50) - * @param boolean $stopAtIsin - * @param int $nbNiveaux - * @return string - */ - public function getGroupesArbo($siren, $pctMin=33, $stopAtIsin=false, $nbNiveaux=10) - { - $this->authenticate(); - - if ( !in_array($pctMin, array(33, 40, 50)) && $this->tabInfoUser['idClient']!=1 ) { - $pctMin = 33; - } - - if ( empty($stopAtIsin) ) { $stopAtIsin = false; } - if ( empty($nbNiveaux) ) { $nbNiveaux = 10; } - - if ( strlen($siren)!=9 || intval($siren)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - try { - require_once 'Metier/partenaires/classMLiens2.php'; - $liensM = new MLiens2($siren, 'siren'); - $liensM->stopAtFirstIsin = $stopAtIsin; - $tabRet = $liensM->getTree($pctMin, $nbNiveaux); - } catch(Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } - - $this->wsLog('groupesarbo', $siren); - return json_encode($tabRet); - } - - /** - * Retourne les information du groupe, tête de pont - * @param string $siren - * @return GroupeInfos - */ - public function getGroupeInfos($siren) - { - $this->authenticate(); - - if ( strlen($siren)!=9 || intval($siren)<100 ){ - debugLog('W', "Siren $siren incorrect", __LINE__, __FILE__, __FUNCTION__, __CLASS__); - $this->sendError('1010'); - } - - $iDb = new WDB('jo'); - $tmp = $iDb->select('etablissements_act', - 'raisonSociale, enseigne, sigle, identite_pre, adr_num, adr_btq, adr_typeVoie, adr_libVoie, adr_comp, adr_cp, adr_ville, adr_dep, adr_com, tel, fax, siren, sirenGrp', - "siren=(SELECT distinct sirenGrp FROM etablissements_act WHERE siren=$siren AND siege=1) LIMIT 0,1", false, MYSQL_ASSOC); - $tabEnt = $tmp[0]; - - $sirenGrp = $tabEnt['siren']; - - if ($sirenGrp<1000) { - throw new SoapFault('Error', 'Aucun siren de groupe'); - } - - /** Table des Nafs5 => Secteurs **/ - $tmp = $iDb->select('tabNaf5', 'codNaf2, codNaf1', '1 GROUP BY codNAf2', false, MYSQL_ASSOC); - $tabNAf2 = array(); - foreach ($tmp as $tmp2) { - $tabNAf2[$tmp2['codNaf2']]=$tmp2['codNaf1']; - } - - $tabNaf2Lib = array( - 'A'=>'Agriculture, sylviculture et pêche', - 'B'=>'Industries extractives', - 'C'=>'Industrie manufacturière', - 'D'=>'Production et distribution d\'électricité, de gaz, de vapeur et d\'air conditionné', - 'E'=>'Production et distribution d\'eau ; assainissement, gestion des déchets et dépollution', - 'F'=>'Construction', - 'G'=>'Commerce ; réparation d\'automobiles et de motocycles', - 'H'=>'Transports et entreposage', - 'I'=>'Hébergement et restauration', - 'J'=>'Information et communication', - 'K'=>'Activités financières et d\'assurance', - 'L'=>'Activités immobilières', - 'M'=>'Activités spécialisées, scientifiques et techniques', - 'N'=>'Activités de services administratifs et de soutien', - 'O'=>'Administration publique', - 'P'=>'Enseignement', - 'Q'=>'Santé humaine et action sociale', - 'R'=>'Arts, spectacles et activités récréatives', - 'S'=>'Autres activités de services', - 'T'=>'Activités des ménages en tant qu\'employeurs ; activités indifférenciées des ménages en tant que producteurs de biens et services pour usage propre', - 'U'=>'Activités extra-territoriales', - ); - - $iInsee = new MInsee(); - $tabId = $iInsee->getIdentiteEntreprise($sirenGrp); - - //Chargement retour - $output = new GroupeInfos(); - $output->grpNom = $tabEnt['raisonSociale']; - $output->grpEnseigne = $tabEnt['enseigne']; - $output->grpSigle = $tabEnt['sigle']; - $output->grpAdrNum = $tabEnt['adr_num']; - $output->grpAdrBtq = $tabEnt['adr_btq']; - $output->grpAdrTypeVoie = $tabEnt['adr_typeVoie']; - $output->grpadrLibVoie = $tabEnt['adr_libVoie']; - $output->grpAdrComp = $tabEnt['adr_comp']; - $output->grpAdrCP = $tabEnt['adr_cp']; - $output->grpAdrVille = $tabEnt['adr_ville']; - $output->grpAdrDep = $tabEnt['adr_dep']; - $output->grpAdrCom = $tabEnt['adr_com']; - $output->grpTel = $tabEnt['tel']; - $output->grpFax = $tabEnt['fax']; - $output->grpSiren = $tabEnt['siren']; - $output->grpTva = $tabId['TvaNumero']; - $output->grpIsin = $tabId['Isin']; - $output->grpNumRC = $tabId['numRC']; - $output->grpTribunal = $tabId['TribunalLib']; - $output->grpWeb = $tabId['Web']; - - $grpNbEnt = $grpEffectif = $grpCAExp = $grpCA = $nbProcol = 0; - $grpDateCrea = $grpDateImmat = date('Ymd'); - - $tmp = $iDb->select('jo.etablissements_act e', - 'e.siren, e.eff_entrep, e.dateCrea_ent AS dateCrea, e.dateImmat*1 AS dateImmat, e.bilFK, e.bilFL, e.bilYP, e.ape_entrep, e.avisCs, e.procolHisto', - "e.sirenGrp=$sirenGrp AND e.siege=1", false, MYSQL_ASSOC); - - $tabSirenGrp = array(); - $tabSecteur = array(); - $tabAvis = array(); - if ( count($tmp)>0 ) { - foreach ($tmp as $tabEnt) - { - $tabSirenGrp[] = $tabEnt['siren']; - $grpNbEnt++; - - if ($tabEnt['bilYP']>$tabEnt['eff_entrep']) - $grpEffectif+=$tabEnt['bilYP']; - else - $grpEffectif+=$tabEnt['eff_entrep']; - - if ($tabEnt['procolHisto']*1==1) $nbProcol++; - - if ($grpDateCrea>$tabEnt['dateCrea'] && $tabEnt['dateCrea']>=19000101) - $grpDateCrea=$tabEnt['dateCrea']; - - if ($grpDateImmat>$tabEnt['dateImmat'] && $tabEnt['dateImmat']>=19000101) - $grpDateImmat=$tabEnt['dateImmat']; - - $grpCAExp+=$tabEnt['bilFK']; - $grpCA+=$tabEnt['bilFL']; - - $tabSecteur[$tabNAf2[''.substr($tabEnt['ape_entrep'],0,2)]]['nb']++; - $tabSecteur[$tabNAf2[''.substr($tabEnt['ape_entrep'],0,2)]]['ca']+=$tabEnt['bilFL']; - $tabSecteur[$tabNAf2[''.substr($tabEnt['ape_entrep'],0,2)]]['eff']+=$tabEnt['eff_entrep']; - - $tabAvis[$tabEnt['avisCs']]++; - } - } - $output->grpNbProcolHisto = $nbProcol; - $output->grpCAExport = $grpCAExp; - $output->grpCA = $grpCA; - - if ($grpCA>=500000000) - $output->grpGrandGroupeFr=1; - else - $output->grpGrandGroupeFr=0; - - $output->grpNbEntrep = $grpNbEnt; - $output->grpEffectif = $grpEffectif; - - $output->grpAnneCreation = ''; - if ($grpDateCrea<$grpDateImmat) - $output->grpAnneCreation = substr($grpDateCrea,0,4); - else - $output->grpAnneCreation = substr($grpDateImmat,0,4); - - //@todo : transformer le tableau - $output->avisCs = json_encode($tabAvis); // Vérifier les procol - - $tabSecteur2 = array(); - if ( count($tabSecteur)>0 ) { - foreach ($tabSecteur as $secteur=>$tmp) { - $info = new GroupeInfosSecteur(); - $info->code = $secteur; - $info->lib = $tabNaf2Lib[$secteur]; - $info->entrepNb = $tmp['nb']; - $info->entrepTx = round($tmp['nb']*100/$grpNbEnt,2); - $info->caNb = $tmp['ca']; - $info->caTx = round($tmp['ca']*100/$grpCA,2); - $info->effNb = $tmp['eff']; - $info->effTx = round($tmp['eff']*100/$grpEffectif,2); - $tabSecteur2[] = $info; - } - } - $output->secteur = $tabSecteur2; //@todo : transformer le tableau - - $this->wsLog('groupeinfos', $siren); - return $output; - } - - /** - * Liste les bilans en saisie - * @param BilanSaisieFiltre[] $filtre - * @param integer $position - * @param integer $nbRep - */ - protected function getBilanSaisie($filtre, $position = 0, $nbRep = 50) - { - $this->authenticate(); - - $idUtilisateur = $this->tabInfoUser['id']; - - if (empty($position)) $position = 0; - if (empty($nbRep)) $nbRep = 50; - if ($nbRep>200) $nbRep = 200; - - $bilansM = new Application_Model_FedasoBilans(); - - $sql = $bilansM->select()->order('dateEntree DESC'); - - if (is_array($filtre) && count($filtre)>0) { - foreach($filtre as $item) { - switch($item->key) { - case 'siren': - $sql->where('siren=?', $item->value); - break; - case 'etat': - - break; - /** - * Si l'utilisateur est de S&d (idClient = 1) et SuperAdministeur ou - * Mode Edition dans les droits alors on permet la sélection d'un autre - * utilisateur - */ - case 'idUtilisateur': - if ($this->tabInfoUser['idClient']==1 - && ($this->tabInfoUser['profil']=='SuperAdministrateur' - || $this->checkPerm('edition')) ) { - $idUtilisateur = $item->value; - } - break; - } - } - } - - //Select user id - $sql->where('idUtilisateur=?', $idUtilisateur); - - //Paginate - $sql->limit($nbRep, $position); - //Get results - $results = $bilansM->fetchAll($sql)->toArray(); - - $iInsee = new MInsee(); - - $output = array(); - if (count($results)>0) { - foreach ($results as $result) { - - $entrep = $iInsee->getIdentiteLight($result['siren']); - - $saisie = new BilanSaisieInfos(); - $saisie->raisonSociale = $entrep['raisonSociale']; - $saisie->siren = $result['siren']; - $saisie->dateCloture = $result['dateCloture']; //@todo : date format 2010-12-31 - $saisie->duree = $result['duree']; - $saisie->dateIn = $result['dateEntree']; //@todo : date format 2011-08-31 12:00:01 - - /** - * Gestion des différents états - * 1 - dateEntree : Enregistré - * 2 - dateEnvoi : Saisie en cours - * 3 - dateRetour : Saisie - * 4 - dateChargement : Chargé en base - * - * 5 - codeRetour = : Erreur à la saisie - */ - - $saisie->etat = ''; - $saisie->date = ''; - - $output[] = $saisie; - } - } - - return $output; - } - - /** - * Liste des contacts par établissement (beta) - * @param string $siret - * @param string $filtre - * @param int $position - * @param int $nbRep - * @return ContactEtReturn - * @throws SoapFault - */ - public function getContactEt($siret, $filtre, $position = 0, $nbRep = 200) - { - $this->authenticate(); - - if ( strlen($siret)!=9 || strlen($siret)!=14 ) { - $this->sendError('1010'); - } - - $siren = substr($siret,0,9); - if (intval($siren)==0 ) { - $this->sendError('1010'); - } - - $nic = substr($nic,10,5); - if (intval($nic)==0) { - $nic = '00000'; - } - - $telephonieM = new Application_Model_JoTelephonie(); - $sql = $telephonieM->select() - ->from($telephonieM, array('id', 'typeTel', 'infoTel', 'telephone', 'partenaire', "DATE_FORMAT(dateInsert,'%Y%m%d')")) - ->where('actif=1') - ->where('typeTel=?','tel') - ->where('siren=?',$siren) - ->where('nic=?',$nic) - ->order('dateInsert DESC') - ->limit($nbRep, $position); - try { - $contacts = $telephonieM->fetchAll($sql); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - //Comptage - $sql = $telephonieM->select() - ->from($telephonieM, 'COUNT(*) as nb') - ->where('actif=1') - ->where('typeTel=?','tel') - ->where('siren=?',$siren) - ->where('nic=?',$nic); - - $nbContacts = $telephonieM->fetchRow($sql)->nb; - - $list = array(); - if ( $contacts->count() > 0) { - foreach ( $contacts as $item ) - { - $contact = new ContactEt(); - $contact->id = $item->id; - $contact->value = $item->telephone; - $contact->type = $item->typeTel; - $contact->description = ''; - $contact->source = ''; - $contact->date = $item->dateInsert; - $list[] = $contact; - } - } - - //Return - $output = new ContactEtReturn(); - $output->nbReponses = $nbContacts; - $output->result = $list; - - return $output; - } - - - /** - * Identifiant locaux des pays - * @param string $codeCountry - * @return CountryId[] - * @throws SoapFault - */ - public function getCountryId($codeCountry) - { - $this->authenticate(); - - if ( strlen($codeCountry)!=3 ) { - throw new SoapFault('ERR', 'codeCountry error'); - } - - //Retrieve data - try { - $idlocalM = new Application_Model_Sdv1TabIdLocal(); - $sql = $idlocalM->select() - ->where('codPays=?', $codeCountry) - ->orWhere('codPays IS NULL'); - $row = $idlocalM->fetchAll($sql); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - $output = array(); - if ($row->count()>0) { - foreach ( $row as $item ) { - $struct = new CountryId(); - $struct->internalId = $item->id; - $struct->name = $item->idLocal; - $struct->longname = $item->idLocalLong; - switch ( $item->idPrincipal ) { - case 0: - $struct->type = 'Secondaire'; - break; - case 1: - $struct->type = 'Principal'; - break; - case 2: - $struct->type = 'TVA'; - break; - } - $struct->info = $item->infoIden; - $output[] = $struct; - } - } - return $output; - } - - -} \ No newline at end of file diff --git a/library/WsScore/Interne/v0.6/Types.php b/library/WsScore/Interne/v0.6/Types.php deleted file mode 100644 index c2004269..00000000 --- a/library/WsScore/Interne/v0.6/Types.php +++ /dev/null @@ -1,1613 +0,0 @@ - 'Bilans', - 'Bilan' => 'Bilan', - 'Actes' => 'Actes', - 'Acte' => 'Acte', -); \ No newline at end of file diff --git a/library/WsScore/Pieces/v0.1/Pieces.php b/library/WsScore/Pieces/v0.1/Pieces.php deleted file mode 100644 index cae1b233..00000000 --- a/library/WsScore/Pieces/v0.1/Pieces.php +++ /dev/null @@ -1,483 +0,0 @@ -authenticate(); - $this->permission('KBIS'); - - //Vérification du siren - if (intval($siren)==0) { - $this->sendError('1010'); - } elseif (strlen($siren)!=9) { - $this->sendError('1020'); - } - - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80'){ - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - - $c = Zend_Registry::get('config'); - $path = realpath($c->profil->path->secure).'/kbis/'; - - //Le fichier existe avec une date de validité inférieure à 1 jour - $filepdf = $path.$siren.'.pdf'; - if ( file_exists($filepdf) && date('Ymd', filemtime($filepdf))==date('Ymd') ) { - - $this->wsLog('kbis', $siren, basename($filepdf)); - return $hostname.DOC_WEB_URL.'kbis/'.basename($filepdf); - - } else { - - $file = null; - - //On vérifie quand même si il n'existe pas une commande en html - $dir = $path.date('Ymd'); - if ( file_exists($dir) ) { - foreach ( glob($dir.'/'.$siren.'-*.html') as $file ) { - break; - } - } - - if ( empty($file) ) { - //Téléchargement du KBIS - $result = array(); - exec('php '.$c->profil->path->batch.'/getKbis.php --siren '.$siren, $result); - $result = end($result); - if (substr($result,-5)=='.html') - { - $file = $dir.'/'.$result; - $this->wsLog('kbis', $siren, $result); - } - elseif ( $result!='ERREUR') - { - throw new SoapFault('MSG',$result); - } - else - { - $text = 'La récupération du KBIS a échoué sur le siren : '.$siren; - sendMail( - 'production@scores-decisions.com', - 'supportdev@scores-decisions.com', - '[ERREUR KBIS]', - $text); - throw new SoapFault('0000',"Erreur récupération du kbis"); - } - } else { - $this->wsLog('kbis', $siren, basename($file)); - } - - //Génération du PDF - require_once 'wkhtmltopdf/wkhtmltopdf.php'; - $pdf = new wkhtmltopdf(); - $fileOut = $pdf->exec($file, $filepdf); - - if ( !file_exists($filepdf) ) { - throw new SoapFault('0000',"Fichier PDF introuvable"); - } - return $hostname.DOC_WEB_URL.'kbis/'.basename($filepdf); - } - } - - /** - * Liste des bilans disponible au format image - * @param string $identifiant - * SIREN ou autre identifiant - * @param int $position - * Numéro de page - * @param int $nbRep - * Nombre de réponse par page (max=200) - * @return Bilans - * @throws SoapFault - */ - public function getBilans($identifiant, $position = 0, $nbRep = 200) - { - // @todo : Code Saisie + Date saisie - - $this->authenticate(); - - if ( empty($position) ) { - $position = 0; - } - if ($nbRep > 200) { - $nbRep = 200; - } - - if ( strlen($identifiant)!=9 ) { - $this->sendError('1010'); - } - - /* - * Entreprise avec des bilans - * Base RNCS - * Si association alors lire dans la base de données pour établir la liste - * //@todo : Enregistrer dans la base jo.greffes_bilans - */ - $iInsee = new MInsee(); - $identite = $iInsee->getIdentiteLight($identifiant); - if (empty($identite['id'])){ - $this->sendError('1020'); - } - $fj = $identite['FJ']; - - $assoFormeJuridique = array( - //Associations - '9210','9220','9221','9222','9223','9224','9230','9240','9260', - //Syndicats - '7345','7353','7354','7355','8410','8420','9110', - //Fondation - '9300', - ); - - $list = array(); - - /** - * Liste des bilans association - */ - if ( in_array($fj, $assoFormeJuridique) ) { - - $bilansM = new Application_Model_JoAssoBilans(); - //Comptage - $sql = $bilansM->select() - ->from($bilansM, 'COUNT(*) as nb') - ->where('siren=?', $identifiant); - - $nbBilans = $bilansM->fetchRow($sql)->nb; - - if ($nbBilans>0) - { - //Liste - $sql = $bilansM->select() - ->from($bilansM, array('dateCloture', 'Assoc_Date_Declaration', 'pdfLink', - 'typeCompte', 'pdfSize', 'pdfPage')) - ->where('siren = ?', $identifiant) - ->order('dateCloture DESC') - ->limit($nbRep, $position); - $bilans = $bilansM->fetchAll($sql); - - if( $bilans->count() > 0) { - foreach ($bilans as $item) { - - $filename = basename($item->pdfLink); - $file = SECURE_STORAGE . 'association/bilans/' . $filename; - - $bilansList = new Bilan(); - $bilansList->DateCloture = substr($item->dateCloture,0,4).substr($item->dateCloture,5,2).substr($item->dateCloture,8,2); - $bilansList->DateDepot = substr($item->Assoc_Date_Declaration,0,4).substr($item->Assoc_Date_Declaration,5,2).substr($item->Assoc_Date_Declaration,8,2); - $bilansList->DureeExercice = ''; - $bilansList->Type = $item->typeCompte; - - //Chech file exist - if ( file_exists($file) ) - { - $bilansList->File = 'ASS_'.$filename; - $bilansList->FileSize = $item->pdfSize; - $bilansList->NumberOfPages = $item->pdfPage; - $bilansList->ModeDiffusion = 'T'; - } - $list[] = $bilansList; - } - } - } - - } - //Liste des bilans Infogreffe - else - { - require_once 'Metier/Infogreffe/InfogreffeBi.php'; - $infogreffe = new Metier_Infogreffe_Bi($identifiant); - $list = $infogreffe->getList(); - $nbBilans = count($list); - } - - $this->wsLog('greffe_bilans', $identifiant, 'Liste'); - - $output = new Bilans(); - $output->nbReponses = $nbBilans; - $output->result = $list; - - return $output; - } - - /** - * Commande du fichier (URL ou Référence de commande) - * @param string $identifiant - * SIREN ou autre identifiant - * @param string $dateCloture - * Date de cloture du bilan (SSAAMMJJ) - * @param string $type - * Type de compte (null|sociaux|consolides) - * @param string $diffusion - * Mode de diffusion (T|C) - * @param string $reference - * Nom du fichier ou référence de commande - * @param string $email - * email pour la réception de la commande (si différent du compte utilisateur) - * @throws SoapFault - * @return string - * URL ou identifiant de commande - */ - public function getBilan($identifiant, $dateCloture, $type, $diffusion, $reference = '', $email = '') - { - $this->authenticate(); - $this->permission('actes'); - - if ( strlen($identifiant)!=9 ) { - $this->sendError('1010'); - } - - $output = ''; - - /** - * Association - */ - if ( substr($reference, 0,4) == 'ASS_' ) { - switch ( $diffusion ) { - case 'T': - if ( preg_match('/^ASS_([0-9]{9})_([0-9]{8})/', $reference, $parseRef) ) { - $controlSiren = $parseRef[1]; - $controlDate = substr($parseRef[2],4,4).substr($parseRef[2],2,2).substr($parseRef[2],0,2); - if ( $controlSiren == $identifiant && $controlDate == $dateCloture) { - - $filename = substr($reference,4); - $c = Zend_Registry::get('config'); - $file = $c->profil->path->secure . DIRECTORY_SEPARATOR . 'association/bilans/' . $filename; - $dest = $c->profil->path->files . DIRECTORY_SEPARATOR . 'associations/' . $reference; - - if ( file_exists($file) && copy($file, $dest)) { - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ($_SERVER['SERVER_PORT']!='80') { - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $output = $hostname . '/fichier/associations/' . basename($dest); - $dateClotureD = substr($dateCloture,4,2).'/'.substr($dateCloture,6,2).'/'.substr($dateCloture,0,4); - $this->wsLog('greffe_bilans', $identifiant, 'Bilan association au '.$dateClotureD); - } - - } - } - break; - } - } - - /** - * Entreprise - */ - else { - switch ( $diffusion ) { - - case 'T': - - require_once 'Metier/Infogreffe/InfogreffeBi.php'; - $infogreffe = new Metier_Infogreffe_Bi($identifiant); - $pdf = $infogreffe->getCommandeT($dateCloture, $type); - - if ( !empty($pdf) ) { - - $c = Zend_Registry::get('config'); - $file = $c->profil->path->secure . DIRECTORY_SEPARATOR . $pdf; - $dest = $c->profil->path->files . DIRECTORY_SEPARATOR . 'greffes' . DIRECTORY_SEPARATOR . $pdf; - - if ( file_exists($file) && copy($file, $dest)) { - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ( $_SERVER['SERVER_PORT'] != '80' ) { - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $output = $hostname . '/data/greffes/' . basename($dest); // @todo : Chemin du fichier - $this->wsLog('greffe_bilans', $siren, basename($dest)); - } else { - throw new SoapFault('ERR', 'Fichier introuvable'); - } - } - - break; - - case 'C': - - //Génération identifiant de commande unique - $refCommande = uniqid(); - - $iInsee = new MInsee(); - $raisonSociale = $iInsee->getIdentiteLight($identifiant); - - //Sauvegarde dans la base - $commandeM = new Application_Model_Sdv1GreffeCommandes(); - $id = $commandeM->insert(array( - 'refCommande' => $refCommande, - 'login' => $this->tabInfoUser['login'], - 'email' => empty($email) ? $this->tabInfoUser['email'] : $email, - 'refClient' => $reference, - 'type' => 'C', - 'siren' => $identifiant, - 'raisonSociale' => $raisonSociale, - 'documentType' => 'BI', - 'documentLib' => 'Bilan' . $type . ' ' . $dateCloture, - 'dateInsert' => date('YmdHis'), - )); - - //Commande chez Infogreffe - require_once 'Metier/Infogreffe/InfogreffeBi.php'; - $infogreffe = new Metier_Infogreffe_Bi($identifiant); - if ( $infogreffe->getCommandeC($dateCloture, $type, 'G'.$refCommande) ) { - $commandeM->update(array( - 'dateCommande' => date('YmdHis'), - ), 'id='.$id); - } - - return $refCommande; - break; - } - } - - return $output; - } - - /** - * Liste des actes au format image - * @param string $identifiant - * @return Actes - */ - public function getActes($identifiant) - { - require_once 'Metier/Infogreffe/InfogreffeAc.php'; - $infogreffe = new Metier_Infogreffe_Ac($identifiant); - $list = $infogreffe->getList(true); - $nbActes = count($list); - - if ($nbActes>0) { - //Information INPI - $rncs = new MRncs(); - foreach ($list as $i => $item) { - $result = $rncs->getListeDepots($identifiant, $item->DepotDate); - if (count($result)>0) { - foreach ($result as $infos) { - $list[$i]->infos[] = $infos['libDepot']; - } - } - } - } - - $this->wsLog('greffe_actes', $identifiant, 'Liste'); - - $output = new Actes(); - $output->result = $list; - $output->nbReponses = $nbActes; - - return $output; - } - - /** - * @todo : - * @param string $identifiant - * SIREN - * @param string $diffusion - * Mode de diffusion (C|T) - * @param string $depotNum - * - * @param string $depotDate - * - * @param string $acteType - * Type de l'acte - * @param string $acteNum - * Numéro de l'acte - * @param string $acteDate - * Date de l'acte - * @param string $reference - * A DETERMINER - * @throws SoapFault - * @return string - * URL ou identifiant de commande - */ - public function getActe($identifiant, $diffusion, $depotNum, $depotDate, $acteType, $acteNum, $acteDate, $reference = '') - { - $this->authenticate(); - $this->permission('actes'); - - if ( strlen($identifiant)!=9 ) { - $this->sendError('1010'); - } - - $output = ''; - - switch ( $diffusion ) { - - case 'T': - - require_once 'Metier/Infogreffe/InfogreffeAc.php'; - $infogreffe = new Metier_Infogreffe_Ac($identifiant); - $pdf = $infogreffe->getCommandeT($depotNum, $depotDate, $acteType, $acteNum, $acteDate); - - if ( !empty($pdf) ) { - - $c = Zend_Registry::get('config'); - $file = $c->profil->path->secure . DIRECTORY_SEPARATOR . $pdf; - $dest = $c->profil->path->files . DIRECTORY_SEPARATOR . 'greffes' . DIRECTORY_SEPARATOR . $pdf; - - if ( file_exists($file) && copy($file, $dest)) { - $hostname = 'http://'.$_SERVER['SERVER_NAME']; - if ( $_SERVER['SERVER_PORT'] != '80' ) { - $hostname.= ':'.$_SERVER['SERVER_PORT']; - } - $output = $hostname . '/data/greffes/' . basename($dest); - //@todo : Surcharger la référence avec le nom du fichier - $this->wsLog('greffe_actes', $siren, $reference); - } else { - throw new SoapFault('ERR', 'Fichier introuvable'); - } - } - - break; - - case 'C': - - //Génération identifiant de commande unique - $refCommande = uniqid(); - - $iInsee = new MInsee(); - $raisonSociale = $iInsee->getIdentiteLight($identifiant); - - //Sauvegarde dans la base - $commandeM = new Application_Model_Sdv1GreffeCommandes(); - $id = $commandeM->insert(array( - 'refCommande' => $refCommande, - 'login' => $this->tabInfoUser['login'], - 'email' => empty($email) ? $this->tabInfoUser['email'] : $email, - 'refClient' => $reference, - 'type' => 'C', - 'siren' => $identifiant, - 'raisonSociale' => $raisonSociale, - 'documentType' => 'AC', - 'documentLib' => '', - 'dateInsert' => date('YmdHis'), - )); - - //Commande chez Infogreffe - require_once 'Metier/Infogreffe/InfogreffeAc.php'; - $infogreffe = new Metier_Infogreffe_Ac($identifiant); - if ( $infogreffe->getCommandeC($dateCloture, $type, 'G'.$refCommande) ) { - $commandeM->update(array( - 'dateCommande' => date('YmdHis'), - ), 'id='.$id); - } - - return $refCommande; - - break; - } - - return $output; - } - -} \ No newline at end of file diff --git a/library/WsScore/Pieces/v0.1/Types.php b/library/WsScore/Pieces/v0.1/Types.php deleted file mode 100644 index fff26d24..00000000 --- a/library/WsScore/Pieces/v0.1/Types.php +++ /dev/null @@ -1,154 +0,0 @@ - 'ErrorType', - 'SearchMandatairesReturn' => 'SearchMandatairesReturn', - 'SearchMandataire' => 'SearchMandataire', - 'SetInfosEntrepReturn' => 'SetInfosEntrepReturn', - 'SetInfosMandataire' => 'SetInfosMandataire', - 'SetMandataireReturn' => 'SetMandataireReturn', - 'SupprAnnonceCollecteReturn' => 'SupprAnnonceCollecteReturn', - 'MandataireReturn' => 'MandataireReturn', - 'MandataireDetail' => 'MandataireDetail', - 'MandatairesReturn' => 'MandatairesReturn', - 'Mandataire' => 'Mandataire', - 'DupliqueAnnonceReturn' => 'DupliqueAnnonceReturn', - 'AnnonceCollecteReturn' => 'AnnonceCollecteReturn', - 'AnnonceCollecte' => 'AnnonceCollecte', - 'AnnonceEvenement' => 'AnnonceEvenement', - 'ListeJalCollecteReturn' => 'ListeJalCollecteReturn', - 'JalCollecte' => 'JalCollecte', - 'SupprAnnonceReturn' => 'SupprAnnonceReturn', - 'DupliqueAnnonceReturn' => 'DupliqueAnnonceReturn', -); \ No newline at end of file diff --git a/library/WsScore/Saisie/v0.1/Saisie.php b/library/WsScore/Saisie/v0.1/Saisie.php deleted file mode 100644 index 39983f00..00000000 --- a/library/WsScore/Saisie/v0.1/Saisie.php +++ /dev/null @@ -1,1173 +0,0 @@ -authenticate(); - - //Initialisation - if (empty($type)) $type = array('A','M'); - if (empty($cpDep)) $cpDep = 0; - $tabRet = array(); - - debugLog('I',"Recherche de Mandataires '$nom' (Dep=$cpDep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $iInsee = new MInsee(); - $tabTmp = $iInsee->searchMandataires($nom, true, $type, $cpDep); - - foreach ($tabTmp as $i=>$mand) - { - $mandataire = new SearchMandataire(); - $mandataire->id = 'm'.$i; - $mandataire->mand = utf8_encode($mand); - $tabRet[] = $mandataire; - - } - $output = new SearchMandatairesReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Enregistrement des informations saisie manuellement - * @param string $siret - * @param int $idEntreprise - * @param string $infos - * @return SetInfosEntrepReturn - */ - public function setInfosEntrep( $siret, $idEntreprise, $infos ) - { - $this->authenticate(); - - //Initialisation - $tabRet = array(); - $iBodacc = new MBodacc(); - $iInsee = new MInsee(); - $result = false; - - if (!$this->checkEdition()) { - - $error->errnum = 1; - $error->errmsg = 'Code Client Incorrect'; - - } else { - $siren = substr($siret,0,9); - $nic = substr($siret,9,5); - - $iDb = new WDB(); - - $tabInfos = json_decode($infos, true); - - $tabIdentite = $tabInfos['identite']; - $tabJugement = $tabInfos['jugement']; - $tabActio = $tabInfos['actionnaire']; - $tabParti = $tabInfos['participation']; - $tabScores = $tabInfos['score']; - - // Mise à jour de l'identité - if (trim(strtolower($tabIdentite['web']))=='http://'){ - $web = ''; - } else { - $web = trim($tabIdentite['web']); - } - $tabUpdate = array( - 'isin' => trim($tabIdentite['isin']), - 'tel' => trim($tabIdentite['tel']), - 'fax' => trim($tabIdentite['fax']), - 'web' => $web, - 'mail' => trim($tabIdentite['mail']), - 'activite' => stripslashes(trim($tabIdentite['activite'])), - 'sirenDoublon' => substr(str_replace(' ','',strtr($tabIdentite['sirenDoublon'], '"\'./- ,\*#()',' ')),0,9), - 'waldec' => trim(str_replace(' ','',strtr($tabIdentite['waldec'], '"\'./- ,\*#()',' '))), - ); - - /** @todo non traitées : [capital_mt] => 335400, [capital_dev] => EUR **/ - if ( !$iDb->update('infos_entrep', $tabUpdate, "siren='$siren'") ){ - if (!$iDb->insert('infos_entrep', array_merge(array('siren'=>$siren),$tabUpdate))){ - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - $output = new SetInfosEntrepReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - } - // Fin mise à jour identité - - // Opposition INSEE - if ( $tabIdentite['moisOppositionInsee']>0 && - $tabIdentite['moisOppositionInsee']<=(date('Ym')*1) ){ - - $iDb2 = new WDB('insee'); - if ( !$iDb2->insert('insee_nondiff', array('siren'=>$siren, 'insEVE'=>795, 'mois'=>$tabIdentite['moisOppositionInsee'])) ){ - if ( $iDb2->getLastErrorNum()<>1062 ) - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de l'inscription à la liste des oppositions de la sphère commerciale INSEE pour $siren au mois de ".$tabIdentite['moisOppositionInsee']." : ".EOL.print_r($tabIdentite, true).EOL.$iDb2->getLastError()); - } - - } - // Fin opposition INSEE - - // Refus d'inscription au RCS - if (isset($tabIdentite['moisRefusRCS']) && $tabIdentite['moisRefusRCS']>0 - && $tabIdentite['moisRefusRCS']<=(date('Ym')*1)) { - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteLight($siren); - if ($nic<10) $nic=$entrep['Nic']; - $cj1=substr($entrep['FJ'],0,1); - $iDb2 = new WDB('insee'); - /** Insertion dans la tables des exclusions **/ - $tabInsert = array( - 'siren' => $siren, - 'nic' => $nic, - 'idSaisie' => $this->tabInfoUser['id'], - 'cj1' => $cj1, - 'insEVE' => 'RCS', - 'mois' => $tabIdentite['moisRefusRCS'], - ); - if (!$iDb2->insert('insee_nondiff', $tabInsert)) - if ($iDb2->getLastErrorNum()<>1062) - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de l'inscription à la liste des refus d'enregistrement A au RCS pour $siren au mois de ".$tabIdentite['moisRefusRCS']." : ".EOL.print_r($tabInsert, true).EOL.print_r($tabIdentite, true).EOL.$iDb2->getLastError()); - - /** Insertion dans la tables des évènements **/ - $tabInsert = array( - 'insSIREN' => $siren, - 'siretValide' => $iInsee->valideSiren($siren,$nic), - 'insNIC' => $nic, - 'insEVE' => 'RCS', - 'insDATEVE' => $tabIdentite['moisRefusRCS'].'28', - 'insDATEMAJ' => date('YmdHis'), - 'idFlux' => date('Ymd')); - if (!$iDb2->insert('insee_even', $tabInsert)) - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de l'inscription à la liste des refus d'enregistrement B au RCS pour $siren au mois de ".$tabIdentite['moisOppositionInsee']." : ".EOL.print_r($tabInsert, true).EOL.print_r($tabIdentite, true).EOL.$iDb2->getLastError()); - } - // Fin refus d'inscription au RCS - - // Domiciliataire - if (!empty($tabIdentite['domiciliataire']) && $siren>1000) { - if ($tabIdentite['domiciliataire']=='oui' || $tabIdentite['domiciliataire']=='non') { - // L'entreprise et ces établissements seront mis à jour automatiquement ce soir - $iDb->query("INSERT IGNORE INTO jo.tabAdrDom (siren,nic,siege, etActif, nom, sigle, enseigne, adrNum, adrBtq, adrTypVoie, adrLibVoie, ville, cp, depComEt, adrComp, cj, apen,apet, dateInsert) - SELECT siren, nic, siege, actif AS etActif, raisonSociale AS nom, sigle, enseigne, adr_num as adrNum, adr_btq AS adrBtq, adr_typeVoie AS adrTypVoie, adr_libVoie AS adrLibVoie, adr_ville AS ville, adr_cp AS cp, CONCAT(adr_dep,adr_com) AS depComEt, adr_comp AS adrComp, cj, ape_entrep AS apen, ape_etab AS apet, DATE(NOW()) as dateInsert - FROM jo.etablissements WHERE siren=$siren;", false); - } - // Si demande de suppression, on force l'indicateur "" - if ($tabIdentite['domiciliataire']=='non') { - $tabUpdate=array('pasEntrepDom'=>1); - if (!$iDb->update('tabAdrDom', $tabUpdate, "siren=$siren")) - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de la suppression du marqueur de domiciliation pour $siren :".EOL.print_r($tabUpdate, true).EOL.$iDb->getLastError()); - } - } - // Fin domiciliataire - - // Insertion des scores - $tabUpdate = array(); - $setScore = false; - if ( $tabScores['encours']!='' || $tabScores['encours']!=null ){ - $tabUpdate['encours'] = $tabScores['encours']; - $setScore = true; - } - if ( $tabScores['scoreSolv']!='' ){ - $tabUpdate['scoreSolv'] = $tabScores['scoreSolv']; - $setScore = true; - } - if ( $tabScores['scoreDir']!='' ){ - $tabUpdate['scoreDir'] = $tabScores['scoreDir']; - $setScore = true; - } - if ( $tabScores['scoreConf']!='' ){ - $tabUpdate['scoreConf'] = $tabScores['scoreConf']; - $setScore = true; - } - if ( $setScore ){ - // Mise à jour des Cute Offs - if ( !$iDb->update('scores_cutoff', $tabUpdate, "siren=$siren") ){ - if ( !$iDb->insert('scores_cutoff', array_merge(array( - 'siren' => $siren, - 'dateInsert' => date('Ymd') ), $tabUpdate)) ){ - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", print_r($tabScores, true).EOL.$iDb->getLastError()); - } - } - } - // Fin insertion des scores - - // Insertion du jugement - $tabEven = $tabJugement['even']; - $nic = $tabJugement['nic']*1; - $entrep = $iInsee->getIdentiteLight($siren, $nic); - if ( $nic>0 && $tabEven[0]==6700 && $entrep['Siege']==0 ){ - // Radiation d'un établissement - $tabEven[0] = 6600; - } - - if ( count($tabEven)>0 ){ - $idAdmin = str_replace('m','',trim($tabJugement['admin'])); - $idMand = str_replace('m','',trim($tabJugement['mand'])); - $idOppo = str_replace('m','',trim($tabJugement['oppo'])); - - $tabSource=explode('_',$tabJugement['source']); - $source=@$tabSource[0]; - $numJal=@$tabSource[1]; - - $dateSource=WDate::dateT('d/m/Y', 'Ymd', trim($tabJugement['dateParution']))*1; - if ($dateSource<20000101) - $dateSource=date('YmdHis'); - - $montant=trim(preg_replace('/[^0-9]/', '', $tabJugement['montant']))*1; - $actionsMt=trim(preg_replace('/[^0-9]/', '', $tabJugement['actionsMt']))*1; - $actionsNb=trim(preg_replace('/[^0-9]/', '', $tabJugement['actionsNb']))*1; - if ($montant>0 && ($actionsNb>0 || $actionsMt>0)) { - if ($actionsNb>0) $actionsMt=$montant/$actionsNb; - elseif ($actionsMt>0) $actionsNb=$montant/$actionsMt; - } - - //@todo : ça ne va pas marcher ici - $strDir=''; - - if (count($tabJugement['nouvDir'])>0) { - foreach( $tabJugement['nouvDir'] as $dir ){ - if ( intval($dir['Fonc'])>0 ){ - $strDir.= $iBodacc->getFctDir($dir['Fonc']).' : '.$dir['Genre'].' '. - ucwords(strtolower($dir['Pre'])).' '.strtoupper($dir['Nom']); - if (!empty($dir['Dom'])) { - $strDir.= ', domicilié à '.$dir['Dom'].'. '; - } - } - } - } - - if ( trim($tabJugement['nouvAdrCp'])<>'' ){ - $strAdr = stripslashes(trim($tabJugement['nouvAdr']).', '. - trim($tabJugement['nouvAdrCp']).' '. - trim($tabJugement['nouvAdrVille'])); - } else { - $strAdr=''; - } - - if (count($tabEven)>1){ - $strEven = implode(';',array_slice($tabEven, 1)); - } else { - $strEven = ''; - } - - $tabUpdate = array( - 'strEven' => $strEven, - 'sirenValide' => $iInsee->valideSiren($siren), - 'dateCessationPaiement' => empty($tabJugement['datePaie']) ? '' : - WDate::dateT('d/m/Y', 'Y-m-d', trim($tabJugement['datePaie'])), - 'dateEffetFinP' => empty($tabJugement['dateFinPeriode']) ? '' : - WDate::dateT('d/m/Y', 'Y-m-d', trim($tabJugement['dateFinPeriode'])), - 'tribunal' => trim($tabJugement['tribunal']), - 'montant' => $montant, - 'actionsNb' => $actionsNb, - 'inter1type' => 'A', - 'inter1id' => $idAdmin, - 'inter1nom' => utf8_encode($iInsee->getMandatairesParId($idAdmin)), - 'inter2type' => 'M', - 'inter2id' => $idMand, - 'inter2nom' => utf8_encode($iInsee->getMandatairesParId($idMand)), - 'inter3type' => 'O', - 'inter3id' => $idOppo, - 'inter3nom' => utf8_encode($iInsee->getMandatairesParId($idOppo)), - 'complement' => stripslashes(trim($tabJugement['comp'])), - 'nouvActivite' => stripslashes(trim($tabJugement['nouvActivite'])), - 'nouvDir' => stripslashes(trim($strDir)), - 'nouvAdr' => $strAdr, - 'nouvFJ' => trim($tabJugement['nouvFJ']), - 'raisonSociale' => $entrep['Nom'], - 'adresse' => $entrep['Adresse'], - 'codePostal' => $entrep['CP'], - 'ville' => $entrep['Ville'], - 'source' => $source, - 'idSaisie' => $this->tabInfoUser['id'], - 'parutionIdJal' => $numJal, - 'parutionNum' => $tabJugement['numParution'], - ); - $dateJuge = WDate::dateT('d/m/Y','Y-m-d',trim($tabJugement['dateJuge'])); - $tabInsert = array_merge( $tabUpdate, array( - 'siren' => $siren, - 'dateJugement' => $dateJuge, - 'typeEven' => $tabEven[0], - 'dateSource' => $dateSource, - )); - if ( !$iDb->insert('annonces', array_merge($tabInsert,array('dateInsert'=>date('YmdHis'))), true) ){ - if ( !$iDb->update('annonces', $tabUpdate, "siren=$siren AND dateJugement='$dateJuge' AND typeEven=".$tabEven[0], true)){ - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - $output = new SetInfosEntrepReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - } - } - - // Insertion actionnaire - if ( trim($tabActio['siren'])!='' ) { - $nom = $pays = $dateMAJ = ''; - $ppPm = 'P'; - $pct = trim(str_replace(',','.',$tabActio['pct']))*1; - $siren2 = preg_replace('/[^0-9]/','', $tabActio['siren']); - $entrep2 = $iInsee->getIdentiteEntreprise($siren); - $nom2 = $entrep2['Nom']; - $pays2 = $entrep2['Pays']; - if ($pays2=='') $pays2='FRA'; - - if (substr($entrep2['FJ'],0,1)*1<>1) $ppPm='M'; - $entrep = $iInsee->getIdentiteEntreprise($siren2); - $nom = $entrep['Nom']; - $pays = trim($entrep['Pays']); - if ($pays=='') $pays='FRA'; - if (trim($tabActio['nom'])!='') $nom = $tabActio['nom']; - if ($tabActio['pays']!='XXX') $pays = $tabActio['pays']; - - if (trim($tabActio['dateMAJ'])!='JJ/MM/AAAA' && trim($tabActio['dateMAJ'])!=''){ - $dateMAJ = WDate::dateT('d/m/Y', 'Y-m-d', trim($tabActio['dateMAJ'])); - } - - if ($tabActio['majMin']=='maj') $majMin='+'; - elseif ($tabActio['majMin']=='min') $majMin='-'; - else $majMin=''; - - $tabUpdate = array( - //'Siren1'=> $siren, - 'Pmin'=> $pct, - 'Pmax'=> $pct, - 'MajMin'=> $majMin, - 'PpPm'=> $ppPm, - //'Siren2'=> $siren2, - //'RaisonSociale'=> $nom, - //'Pays'=> $pays, - 'dateLien'=> $dateMAJ, - ); - - $tabInsert1 = array_merge($tabUpdate, array('ActionPart' => 1), array( - 'Siren1'=> $siren, - 'Siren2'=> $siren2, - 'RaisonSociale'=> $nom, - 'Pays'=> $pays, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); - $res = $iDb->select('liens', 'count(*)', - "Siren1=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>1)), "siren=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))", true)) - $errMaj=1016166; - } else { - if (!$iDb->insert('liens', $tabInsert1, true)) - $errMaj=1016167; - } - - $tabInsert2 = array_merge($tabUpdate, array('ActionPart' => 2), array( - 'Siren1' => $siren2, - 'Siren2'=> $siren, - 'RaisonSociale'=> $nom2, - 'Pays'=> $pays2, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); - $res=$iDb->select('liens', 'count(*)', "Siren1=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>2)), "siren=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))", true)) - $errMaj=1016168; - } else { - if (!$iDb->insert('liens', $tabInsert2, true)) - $errMaj=1016169; - } - } - // Fin insertion actionnaire - - //Insertion participation - if ( trim($tabParti['siren'])<>'' ) { - $nom = $pays = $dateMAJ = ''; - $ppPm = 'P'; - $pct = trim(str_replace(',','.',$tabParti['pct']))*1; - $siren2 = preg_replace('/[^0-9]/','', $tabParti['siren']); - $entrep2 = $iInsee->getIdentiteEntreprise($siren); - $nom2 = $entrep2['Nom']; - $pays2 = $entrep2['Pays']; - if ($pays2=='') $pays2='FRA'; - - if (substr($entrep2['FJ'],0,1)*1<>1) $ppPm='M'; - $entrep = $iInsee->getIdentiteEntreprise($siren2); - $nom = $entrep['Nom']; - $pays = trim($entrep['Pays']); - if ( $pays=='' ) $pays='FRA'; - if ( trim($tabParti['nom'])<>'' ) $nom=$tabParti['nom']; - if ( $tabParti['pays']<>'XXX' ) $pays=$tabParti['pays']; - - if (trim($tabParti['dateMAJ'])<>'JJ/MM/AAAA' && trim($tabParti['dateMAJ'])<>'') - $dateMAJ=WDate::dateT('d/m/Y', 'Y-m-d', trim($tabParti['dateMAJ'])); - - if ($tabParti['majMin']=='maj') $majMin='+'; - elseif ($tabParti['majMin']=='min') $majMin='-'; - else $majMin=''; - - $tabUpdate = array( - 'Pmin'=> $pct, - 'Pmax'=> $pct, - 'MajMin'=> $majMin, - 'PpPm'=> $ppPm, - 'dateLien'=> $dateMAJ, - ); - - $tabInsert1 = array_merge($tabUpdate, array( 'ActionPart' => 2 ), array( - 'Siren1'=> $siren, - 'Siren2'=> $siren2, - 'RaisonSociale'=> $nom, - 'Pays'=> $pays, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); - $res=$iDb->select('liens', 'count(*)', "Siren1=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>2)), "siren=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))", true)) - $errMaj=10168; - } else { - if (!$iDb->insert('liens', $tabInsert1, true)) - $errMaj=10169; - } - - $tabInsert2 = array_merge($tabUpdate, array( 'ActionPart' => 1 ), array( - 'Siren1'=> $siren2, - 'Siren2'=> $siren, - 'RaisonSociale'=> $nom2, - 'Pays'=> $pays2, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); - $res=$iDb->select('liens', 'count(*)', "Siren1=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>1)), "siren=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))", true)) - $errMaj=10170; - } else { - if (!$iDb->insert('liens', $tabInsert2, true)) - $errMaj=10171; - } - } - // Fin insertion participation - - if ($errMaj>0){ - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - } else { - $result = true; - } - } - $output = new SetInfosEntrepReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Met a jour les informations sur un mandataire - * @param SetInfosMandataire $infos Informations sur le mandataire à créer ou à ajouter (ajout si id absent) - * @return SetMandataireReturn - */ - public function setMandataire(SetInfosMandataire $infos) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - $result = true; - - $iDb = new WDB(); - - //$infos = serialize($tabInfos); - debugLog('I',"Ajout/MAJ de mandaitaire ".print_r($infos,1)." demandée",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $type = substr(strtoupper($infos->type),0,1); - $stag = substr(strtoupper($infos->type),1,1); - if ($stag=='S') { - $stag=1; - } else { - $stag=0; - } - if ($type=='A' || $type=='H' || $type=='M' || $type=='V' || - $type=='N' || $type=='T') - { - $tabUpdate=array( - 'sirenGrp' => substr($infos->sirenGrp,0,9)*1, - 'nicGrp' => substr($infos->sirenGrp,9,5)*1, - 'sirenMand' => substr($infos->sirenMand,0,9)*1, - 'nicMand' => substr($infos->sirenMand,9,5)*1, - 'Nom' => ucwords(strtolower($infos->Nom)), - 'Prenom' => ucwords(strtolower($infos->Prenom)), - 'type' => $type, - 'stagiaire' => $stag, - 'coursAppel' => intval($infos->coursAppel), - 'coursAppel2' => intval($infos->coursAppel2), - 'tribunal' => $infos->tribunal, - 'Statut' => strtoupper($infos->Statut), - 'adresse' => ucwords($infos->adresse), - 'adresseComp' => strtoupper($infos->adresseComp), - 'cp' => intval($infos->cp), - 'ville' => strtoupper($infos->ville), - 'tel' => $infos->tel, - 'fax' => $infos->fax, - 'email' => $infos->email, - 'web' => $infos->web, - 'contact' => $infos->contact, - 'idUser' => $this->tabInfoUser['id'], - ); - } - $id = str_replace('m','', ''.$infos->id)*1; - if (intval($id)!=0) { - // MAJ - if (!$iDb->update('tabMandataires', $tabUpdate, "id=$id", true)) { - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - $result = false; - } - } else { - // Insertion - if (!$iDb->insert('tabMandataires', array_merge($tabUpdate,array('dateInsert'=>date('YmdHis'))), true)) { - $error->errnum = 1; - $error->errmsg = 'Insertion impossible'; - $result = false; - } - } - $output = new SetMandataireReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Supprime une annonce issue de la collecte - * @param string $idAnn - * @param string $siret - * @return SupprAnnonceCollecteReturn - */ - public function supprAnnonceCollecte($idAnn, $siret=null) - { - $this->authenticate(); - //Initialisation - if (empty($siret)) $siret = 0; - $error = new ErrorType(); - $result = false; - - if (!$this->checkEdition()) - { - $error->errnum = 1; - $error->errmsg = 'Code Client Incorrect'; - } - else - { - $siren = substr($siret,0,9)*1; - $iDb = new WDB(); - $idAnn = preg_replace('/^0\./','', ''.$idAnn)*1; - - if ($idAnn>0) - { - if ($iDb->update('annonces',array( - 'dateSuppr'=>date('YmdHis'), - 'idSuppr'=>$this->tabInfoUser['id']), - "id=$idAnn", false)) - { - debugLog('I',"Suppression de l'annonce collectée n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $result = true; - } - else - { - $error->errnum = 1; - $error->errmsg = 'Suppression de l\'annonce impossible'; - debugLog('I',"Suppression impossible de l'annonce collectée n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } - } - else - { - $error->errnum = 1; - $error->errmsg = 'idAnn incorrect'; - } - } - $output = new SupprAnnonceCollecteReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Récupère le mandataire par son id - * @param int $idMand Identifiant du mandataire - * @return MandataireReturn - */ - public function getMandataire($idMand) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - - debugLog('I',"Donne le Mandataires correspondant à $idMand",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $iInsee = new classMInsee(); - $tabRet = $iInsee->getMandataire($idMand); - $mandataire = new MandataireDetail(); - $mandataire->Nom = $tabRet['Nom']; - $mandataire->Prenom = $tabRet['Prenom']; - $mandataire->tribunal = $tabRet['tribunal']; - $mandataire->adresse = $tabRet['adresse']; - $mandataire->adresseComp = $tabRet['adresseComp']; - $mandataire->ville = $tabRet['ville']; - $mandataire->email = $tabRet['email']; - $mandataire->web = $tabRet['web']; - $mandataire->contact = $tabRet['contact']; - $output = new MandataireReturn(); - $output->error = $error; - $output->result = $mandataire; - return $output; - } - - /** - * Liste les mandataires compétentes pour une cours d'appel donnée - * @param mixed $codeTribunal Identifiants BODACC du tribunal ou tableau d'Identifiants numériques des cours d'appel - * @param array $type Type de mandataire (A)dministrateur, (M)andataire, (O)ppositions, (N)otaires, a(V)ocat - * @return MandatairesReturn - */ - public function getMandataires($codeTribunal=0, $type=array('A','M')) - { - $this->authenticate(); - //Initialisation - $iInsee = new MInsee(); - $error = new ErrorType(); - $trib = serialize($codeTribunal); - debugLog('I',"Liste des Mandaitaires ou Administrateur du Tribunal/Cours d'Appel $trib demandé",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (!is_array($codeTribunal) && strlen($codeTribunal)>3 && $codeTribunal*1==0) - { - // $codeTribunal est un identifiant de tribunal - $iBodacc = new MBodacc(); - $tabTmp = $iInsee->getMandataires(array($iBodacc->getTribunalIdCA($codeTribunal)), true, $type); - } - elseif ($codeTribunal*1==0) - { - // On veut tous les mandataires - $tabTmp = $iInsee->getMandataires(array(), true, $type); - } - elseif (is_array($codeTribunal)) - { - // On veut les mandataires d'une CA - $tabTmp = $iInsee->getMandataires($codeTribunal, true, $type); - } - $tabRet = array(); - foreach ($tabTmp as $i=>$mand){ - $mandataire = new Mandataire(); - $mandataire->id = 'm'.$i; - $mandataire->mand = $mand; - $tabRet[]= $mandataire; - } - $output = new MandatairesReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Donne la cours d'appel d'un tribunal par son code - * @param string $codeTribunal Code BODACC sur 6 caractères du tribunal - * @return int - */ - public function getIdCoursAppel($codeTribunal) - { - $this->authenticate(); - $iBodacc = new MBodacc(); - return $iBodacc->getTribunalIdCA($codeTribunal); - } - - /** - * Duplique une annonce issue de la collecte - * @param string $idAnn - * @param string $siret - * @return DupliqueAnnonceReturn - */ - public function dupliqueAnnonceCollecte($idAnn, $siret = null) - { - $this->authenticate(); - //Initialisation - if (empty($siret)) $siret = ''; - $error = new ErrorType(); - $result = 0; - - if (!$this->checkEdition()) { - $error->errnum = 1; - $error->errmsg = 'Code Client Incorrect'; - } else { - $siren = intval(substr($siret,0,9)); - $nic = intval(substr($siret,9,5)); - $iDb = new WDB(); - $idAnn = intval(preg_replace('/^0\./','', ''.$idAnn)); - if ($idAnn>0 && $siren>1000){ - $res = $iDb->select('annonces', '*', "id=$idAnn", false, MYSQL_ASSOC); - if (count($res)==0) { - $error->errnum = 1; - $error->errmsg = 'Annonce inexistante'; - } else { - $annonce = $res[0]; - // Suppression des zones inexistantes dans la table ou devant être vides - unset($annonce['id']); - unset($annonce['nic']);//=$nic; - $annonce['siren'] = $siren; - $annonce['nic'] = $nic; - if ($iDb->insert('annonces', $annonce, false)) { - debugLog('I',"Duplication de l'annonce collectée n°$idAnn sur $siret",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $result = 1; - } else { - debugLog('I',"Suppression impossible de l'annonce collectée n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 1; - $error->errmsg = 'Suppression de l\'annonce impossible'; - } - } - } - } - $output = new DupliqueAnnonceCollecte(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Récupère le contenu d'une annonce issue de la collecte - * @param string $idAnn - * @param string $siret - * @return AnnonceCollecteReturn - */ - public function getAnnonceCollecte($idAnn, $siret) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - $annonceCollecte = new AnnonceCollecte(); - $siren = substr($siret,0,9)*1; - if (!$this->checkEdition()) { - - $error->errnum = 0; - $error->errmsg = 'Code Client Incorrect'; - - } else { - - $iDb = new WDB(); - debugLog('I',"Lecture de l'annonce collectée n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $idAnn = preg_replace('/^0\./','', ''.$idAnn) * 1; - if ($idAnn>0) - { - $res = $iDb->select('annonces', - 'id, siren, sirenValide, typeEven, strEven, raisonSociale, adresse, codePostal, ville, dateJugement, dateCessationPaiement, dateEffetFinP, numero, inter1type, inter1id, inter1nom, inter2type, inter2id, inter2nom, inter3type, inter3id, inter3nom, inter4type, inter4id, inter4nom, tribunal, montant, actionsNb, complement, infosBrutes, nouvActivite, nouvDir, nouvAdr, nouvFJ, annonce, source, parutionIdJal, parutionNum, dateSource, idSaisie, idAnnonce, dateInsert', - "id=$idAnn", false, MYSQL_ASSOC - ); - if (count($res)>0) - { - $ann = $res[0]; - $annonceCollecte->id = $ann['id']; - $annonceCollecte->siren = $ann['siren']; - $annonceCollecte->raisonSociale = $ann['raisonSociale']; - $annonceCollecte->adresse = $ann['adresse']; - $annonceCollecte->codePostal = $ann['codePostal']; - $annonceCollecte->ville = $ann['ville']; - $annonceCollecte->dateJugement = $ann['dateJugement']; - - //@todo : Les libellées ne sont pas présent LibEven - $tabEven = array(); - $annonceEvenement = new AnnonceEvenement(); - $annonceEvenement->CodeEven = $ann['typeEven']; - $annonceEvenement->LibEven = ''; - $tabEven[] = $annonceEvenement; - if (!empty($ann['strEven'])){ - foreach ( explode(';',$ann['strEven']) as $code ) - { - $annonceEvenement = new AnnonceEvenement(); - $annonceEvenement->CodeEven = $code; - $annonceEvenement->LibEven = ''; - $tabEven[] = $annonceEvenement; - } - } - - $annonceCollecte->even = $tabEven; - $annonceCollecte->dateSource = $ann['dateSource']; - $annonceCollecte->dateCessationPaiement = $ann['dateCessationPaiement']; - $annonceCollecte->dateEffetFinP = $ann['dateEffetFinP']; - $annonceCollecte->tribunal = $ann['tribunal']; - $annonceCollecte->numero = $ann['numero']; - $annonceCollecte->montant = $ann['montant']; - $annonceCollecte->actionsNb = $ann['actionsNb']; - $annonceCollecte->inter1type = $ann['inter1type']; - $annonceCollecte->inter1id = $ann['inter1id']; - $annonceCollecte->inter1nom = $ann['inter1nom']; - $annonceCollecte->inter2type = $ann['inter2type']; - $annonceCollecte->inter2id = $ann['inter2id']; - $annonceCollecte->inter2nom = $ann['inter2nom']; - $annonceCollecte->inter3type = $ann['inter3type']; - $annonceCollecte->inter3id = $ann['inter3id']; - $annonceCollecte->inter3nom = $ann['inter3nom']; - $annonceCollecte->complement = $ann['complement']; - $annonceCollecte->nouvActivite = $ann['nouvActivite']; - $annonceCollecte->nouvDir = $ann['nouvDir']; - $annonceCollecte->nouvAdr = $ann['nouvAdr']; - $annonceCollecte->nouvFJ = $ann['nouvFJ']; - $annonceCollecte->source = $ann['source']; - - debugLog('I',"Lecture de l'annonce collectée n°$idAnn ($siret) : ".$ann['raisonSociale'],__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } else { - $error->errnum = 1; - $error->errmsg = 'Edition impossible'; - } - } - else - { - $error->errnum = 745741; - $error->errmsg = 'Selection impossible'; - } - } - $output = new AnnonceCollecteReturn(); - $output->error = $error; - $output->result = $annonceCollecte; - return $output; - } - - /** - * Enregistrement de document actes ou status d'association - * @param string $siren Numéro Siren - * @param string $waldec Numéro waldec - * @param string $type Type d'acte - * @param string $libelle Libellé de l'acte - * @param string $date Date des l'acte au format - * @param int $nbPages Nombre de pages dans le fichier - * return boolean - */ - public function setActeAsso( $siren, $waldec, $type, $libelle, $date, $nbPages ) - { - $this->authenticate(); - if (!$this->checkEdition()) { - $this->sendError('0902'); - } - ($type == 'ST') ? $type_acte = 'ST' : $type_acte = ''; - - $data = array( - 'siren' => $siren, - 'waldec' => waldec, - 'pdfLink' => '', - 'pdfSize' => '', - 'pdfVer' => '', - 'pdfPage' => '', - 'date_acte' => WDate::dateT('d/m/Y', 'Y-m-d', $date), - 'type_acte' => $type_acte, - 'type_acte_libelle' => $libelle, - 'nbpages_acte' => $nbPages, - ); - try { - $db = Zend_Db::factory($this->dbConfig->Webservice); - Zend_Db_Table_Abstract::setDefaultAdapter($db); - $doc = new Application_Model_AssoActes(); - $doc_id = $doc->insert($data); - } catch (Zend_Exception $e) { - Zend_Registry::get('WsLogger') - ->err(__FUNCTION__.' - '.$e->getMessage()); - } - if ($commande_id) - { - return true; - } - return false; - } - - /** - * getListeJalCollecte - * @return ListeJalCollecteReturn - */ - public function getListeJalCollecte() - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - - $iBodacc = new MBodacc(); - $tabJal = $iBodacc->getListeJalCollecte(); - foreach ($tabJal as $i=>$jal) - { - $jalCollecte = new JalCollecte(); - $jalCollecte->id = $i; - $jalCollecte->nom = $jal; - $tabRet[] = $jalCollecte; - } - $output = new ListeJalCollecteReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - - /** - * Suppression logique d'une annonce relative à une entité - * @param integer $source 0=Collecte, 1=BODACC, 2=B.A.L.O, 3=JO Association, 4=Boamp - * @param string $idAnn Identifiant de l'annonce - * @param string $siret Siren de l'entreprise ou Siret de l'établissement - * @return SupprAnnonceReturn - */ - public function supprAnnonce($source=0, $idAnn, $siret=0) - { - $this->authenticate(); - //Initialisation - if (empty($siret)) $siret = 0; - if (empty($source)) $source = 0; - $error = new ErrorType(); - $result = false; - - if (!$this->checkEdition()) - { - $error->errnum = 1; - $error->errmsg = 'Code Client Incorrect'; - } - else - { - - $siren = substr($siret,0,9); - $iDb = new WDB(); - switch ($source) - { - case 0: - $idAnn = preg_replace('/^0\./','', ''.$idAnn)*1; - $table = 'annonces'; - break; - case 1: - if (intval($idAnn)<0){ - $error->errnum = 1; - $error->errmsg = 'Code annonce Incorrect'; - } else { - $strSql = "AND siren=$siren"; - $table = 'bodacc_detail'; - } - break; - case 3: - $table = 'asso'; - break; - case 2: - case 4: - default: - $error->errnum = 1; - $error->errmsg = 'Cas non géré'; - break; - } - if (intval($idAnn)>0 && $iDb->update($table, array( - 'dateSuppr' => date('YmdHis'), - 'idSuppr' => $this->tabInfoUser['id']), - "id=$idAnn $strSql", false)) - { - debugLog('I',"Suppression de l'annonce en source $source n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 0; - $error->errmsg = ''; - $result = true; - } else { - debugLog('I',"Suppression impossible de l'annonce en source $source n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 1; - $error->errmsg = 'Suppression de l\'annonce impossible'; - } - } - $output = new SupprAnnonceReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Duplication d'une annonce relative à une entité - * - * @param integer $source 0=Collecte, 1=BODACC, 2=B.A.L.O, 3=JO Association, 4=Boamp - * @param string $idAnn Identifiant de l'annonce - * @param string $siretIn Siren de l'entreprise ou Siret de l'établissement de l'annonce à duppliquer - * @param string $siretOut Siren/Siret de l'entreprise ou étab sur lequel il faut dupliquer l'annonce - * @return DupliqueAnnonceReturn - */ - public function dupliqueAnnonce($source=0, $idAnn, $siretIn=0, $siretOut=0) - { - debugLog('I',"Demande de duplication d'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $this->authenticate(); - //Initialisation - if (empty($siret)) $siret = 0; - if (empty($source)) $source = 0; - $error = new ErrorType(); - $result = false; - - if (!$this->checkEdition()) - { - $error->errnum = 1; - $error->errmsg = 'Code Client Incorrect'; - } - else - { - $sirenIn = substr($siretIn,0,9)*1; - $nicIn = substr($siretIn,9,5)*1; - $sirenOut = substr($siretOut,0,9)*1; - $nicOut = substr($siretOut,9,5)*1; - $iDb = new WDB(); - $strSql=''; - switch ($source) - { - case 0: - $idAnn = preg_replace('/^0\./','', ''.$idAnn)*1; - $table = 'annonces'; - break; - case 1: - if (intval($idAnn)<0){ - $error->errnum = 1; - $error->errmsg = 'Code annonce Incorrect'; - } else { - if (intval($sirenIn)>0) $strSql.="AND siren=$sirenIn"; - $table = 'bodacc_detail'; - } - break; - case 3: - $table = 'asso'; - break; - case 2: - case 4: - default: - $error->errnum = 1; - $error->errmsg = 'Cas non géré'; - break; - } - - if (intval($idAnn)>0) { - $res = $iDb->select($table, '*', "id=$idAnn $strSql", false, MYSQL_ASSOC); - - if (count($res)==0) { - $error->errnum = 1; - $error->errmsg = 'Annonce inexistante'; - } else { - - /* Si table = asso => UPDATE de la ligne */ - if ($table == 'asso'){ - $annonce = $res[0]; - $annonce['siren'] = $sirenOut; - $annonce['sirenValide'] = 2; - $annonce['dateUpdate'] = date('YmdHis'); - $annonce['idSirenage'] = $this->tabInfoUser['id']; - $annonce['nic'] = $nicOut; - if ($nicOut>0) $annonce['nicValide'] = 2; - if ($iDb->update($table, $annonce, "id=".$idAnn, true, true)){ - debugLog('I',"Duplication de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $result = true; - } else { - debugLog('I',"Duplication impossible de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut) : ".mysql_error(),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 1; - $error->errmsg = "Duplication de l'annonce impossible"; - } - } - /* Si sirenIn = 0 et table = bodacc_detail => INSERT + UPDATE */ - elseif (intval($sirenIn) == 0 && $table == 'bodacc_detail' ){ - $annonce = $res[0]; - $annonce['siren'] = $sirenOut; - $annonce['sirenValide'] = 2; - $annonce['dateInsert'] = date('YmdHis'); - $annonce['idSirenage'] = $this->tabInfoUser['id']; - $annonce['nic'] = $nicOut; - if ($nicOut>0) $annonce['nicValide'] = 2; - if ($iDb->insert($table, $annonce, true, true)) { - debugLog('I',"Duplication de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $result = true; - $data = array( - 'idSuppr' => $this->tabInfoUser['id'], - 'dateSuppr' => date('YmdHis'), - ); - $iDb->update($table, $data, "id=$idAnn $strSql", true, true); - } else { - debugLog('I',"Duplication impossible de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut) : ".mysql_error(),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 1; - $error->errmsg = "Duplication de l'annonce impossible"; - } - } - /* si sirenIn != 0 et table = bodacc_detail => insert */ - elseif (intval($sirenIn) != 0 && $table == 'bodacc_detail'){ - $annonce = $res[0]; - $annonce['siren'] = $sirenOut; - $annonce['sirenValide'] = 2; - $annonce['dateInsert'] = date('YmdHis'); - $annonce['idSirenage'] = $this->tabInfoUser['id']; - $annonce['nic'] = $nicOut; - if ($nicOut>0) $annonce['nicValide'] = 2; - if ($iDb->insert($table, $annonce, true, true)) { - debugLog('I',"Duplication de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $result = true; - } else { - debugLog('I',"Duplication impossible de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut) : ".mysql_error(),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 1; - $error->errmsg = "Duplication de l'annonce impossible"; - } - - } - /* Si table = annonces => INSERT */ - elseif ($table == 'annonces'){ - $annonce = $res[0]; - // Suppression des zones inexistantes dans la table ou devant être vides - unset($annonce['id']); - unset($annonce['nic']); - $annonce['idSaisie'] = $this->tabInfoUser['id']; - if ($iDb->insert($table, $annonce, true, true)) { - debugLog('I',"Duplication de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $result = true; - } else { - debugLog('I',"Duplication impossible de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut) : ".mysql_error(),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 1; - $error->errmsg = "Duplication de l'annonce impossible"; - } - } - } - } else { - debugLog('I',"Duplication impossible de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 1; - $error->errmsg = "Duplication de l'annonce impossible"; - } - } - $output = new DupliqueAnnonceReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Modification du code evenement d'une annonce - * @param string $siren - * @param string $id - * @param string[] $codeEven - * @return boolean - */ - public function setAnnonceEven($siren, $id, $codeEven) - { - $this->authenticate(); - $iDb = new WDB('jo'); - - $list = array(); - if (is_object($codeEven)){ - $list = $codeEven->item; - } else { - $list = $codeEven; - } - - if (count($list)>0){ - $tabUpdate = array( - 'typeEven' => implode(';',$list), - 'idSirenage' => $this->tabInfoUser['id'], - //'dateUpdate' => date('Y-m-d H:i:s'), - ); - if ($iDb->update('bodacc_detail', $tabUpdate, "siren='$siren' AND id='$id'")){ - debugLog('I',"setAnnonceEven (siren=$siren, list=$list)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - return true; - } - } - return false; - } -} \ No newline at end of file diff --git a/library/WsScore/Saisie/v0.1/Types.php b/library/WsScore/Saisie/v0.1/Types.php deleted file mode 100644 index adede308..00000000 --- a/library/WsScore/Saisie/v0.1/Types.php +++ /dev/null @@ -1,258 +0,0 @@ - 'ErrorType', - 'SearchMandatairesReturn' => 'SearchMandatairesReturn', - 'SearchMandataire' => 'SearchMandataire', - 'SetInfosEntrepReturn' => 'SetInfosEntrepReturn', - 'SetInfosMandataire' => 'SetInfosMandataire', - 'SetMandataireReturn' => 'SetMandataireReturn', - 'SupprAnnonceCollecteReturn' => 'SupprAnnonceCollecteReturn', - 'MandatairesReturn' => 'MandatairesReturn', - 'Mandataire' => 'Mandataire', - 'DupliqueAnnonceReturn' => 'DupliqueAnnonceReturn', - 'AnnonceCollecteReturn' => 'AnnonceCollecteReturn', - 'AnnonceCollecte' => 'AnnonceCollecte', - 'AnnonceEvenement' => 'AnnonceEvenement', - 'ListeJalCollecteReturn' => 'ListeJalCollecteReturn', - 'JalCollecte' => 'JalCollecte', - 'SupprAnnonceReturn' => 'SupprAnnonceReturn', - 'DupliqueAnnonceReturn' => 'DupliqueAnnonceReturn', - 'BilanInfos' => 'BilanInfos', - 'SearchLienRef' => 'SearchLienRef', - 'LienDoc' => 'LienDoc', -); \ No newline at end of file diff --git a/library/WsScore/Saisie/v0.2/Saisie.php b/library/WsScore/Saisie/v0.2/Saisie.php deleted file mode 100644 index 28df87ed..00000000 --- a/library/WsScore/Saisie/v0.2/Saisie.php +++ /dev/null @@ -1,2401 +0,0 @@ -authenticate(); - - //Initialisation - if (empty($type)) $type = array('A','M'); - if (empty($cpDep)) $cpDep = 0; - $tabRet = array(); - - debugLog('I',"Recherche de Mandataires '$nom' (Dep=$cpDep)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $iInsee = new MInsee(); - $tabTmp = $iInsee->searchMandataires($nom, true, $type, $cpDep); - - foreach ($tabTmp as $i=>$mand) - { - $mandataire = new SearchMandataire(); - $mandataire->id = 'm'.$i; - $mandataire->mand = utf8_encode($mand); - $tabRet[] = $mandataire; - } - $output = new SearchMandatairesReturn(); - $output->result = $tabRet; - return $output; - } - - /** - * Enregistrement des informations saisie manuellement - * @param string $siret - * @param int $idEntreprise - * @param string $infos - * @return SetInfosEntrepReturn - */ - public function setInfosEntrep( $siret, $idEntreprise, $infos ) - { - $this->authenticate(); - - //Initialisation - $tabRet = array(); - $iBodacc = new MBodacc(); - $iInsee = new MInsee(); - $result = false; - - if (!$this->checkEdition()) { - - $error->errnum = 1; - $error->errmsg = 'Code Client Incorrect'; - - } else { - $siren = substr($siret,0,9); - $nic = substr($siret,9,5); - - $iDb = new WDB(); - - $tabInfos = json_decode($infos, true); - - $tabIdentite = $tabInfos['identite']; - $tabJugement = $tabInfos['jugement']; - $tabActio = $tabInfos['actionnaire']; - $tabParti = $tabInfos['participation']; - $tabScores = $tabInfos['score']; - - // Mise à jour de l'identité - if (trim(strtolower($tabIdentite['web']))=='http://'){ - $web = ''; - } else { - $web = trim($tabIdentite['web']); - } - $tabUpdate = array( - 'isin' => trim($tabIdentite['isin']), - 'tel' => trim($tabIdentite['tel']), - 'fax' => trim($tabIdentite['fax']), - 'web' => $web, - 'mail' => trim($tabIdentite['mail']), - 'activite' => stripslashes(trim($tabIdentite['activite'])), - 'sirenDoublon' => substr(str_replace(' ','',strtr($tabIdentite['sirenDoublon'], '"\'./- ,\*#()',' ')),0,9), - 'waldec' => trim(str_replace(' ','',strtr($tabIdentite['waldec'], '"\'./- ,\*#()',' '))), - ); - - /** @todo non traitées : [capital_mt] => 335400, [capital_dev] => EUR **/ - if ( !$iDb->update('infos_entrep', $tabUpdate, "siren='$siren'") ){ - if (!$iDb->insert('infos_entrep', array_merge(array('siren'=>$siren),$tabUpdate))){ - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - $output = new SetInfosEntrepReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - } - // Fin mise à jour identité - - // Opposition INSEE - if ( $tabIdentite['moisOppositionInsee']>0 && - $tabIdentite['moisOppositionInsee']<=(date('Ym')*1) ){ - - $iDb2 = new WDB('insee'); - if ( !$iDb2->insert('insee_nondiff', array('siren'=>$siren, 'insEVE'=>795, 'mois'=>$tabIdentite['moisOppositionInsee'])) ){ - if ( $iDb2->getLastErrorNum()<>1062 ) - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de l'inscription à la liste des oppositions de la sphère commerciale INSEE pour $siren au mois de ".$tabIdentite['moisOppositionInsee']." : ".EOL.print_r($tabIdentite, true).EOL.$iDb2->getLastError()); - } - - } - // Fin opposition INSEE - - // Refus d'inscription au RCS - if (isset($tabIdentite['moisRefusRCS']) && $tabIdentite['moisRefusRCS']>0 - && $tabIdentite['moisRefusRCS']<=(date('Ym')*1)) { - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteLight($siren); - if ($nic<10) $nic=$entrep['Nic']; - $cj1=substr($entrep['FJ'],0,1); - $iDb2 = new WDB('insee'); - /** Insertion dans la tables des exclusions **/ - $tabInsert = array( - 'siren' => $siren, - 'nic' => $nic, - 'idSaisie' => $this->tabInfoUser['id'], - 'cj1' => $cj1, - 'insEVE' => 'RCS', - 'mois' => $tabIdentite['moisRefusRCS'], - ); - if (!$iDb2->insert('insee_nondiff', $tabInsert)) - if ($iDb2->getLastErrorNum()<>1062) - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de l'inscription à la liste des refus d'enregistrement A au RCS pour $siren au mois de ".$tabIdentite['moisRefusRCS']." : ".EOL.print_r($tabInsert, true).EOL.print_r($tabIdentite, true).EOL.$iDb2->getLastError()); - - /** Insertion dans la tables des évènements **/ - $tabInsert = array( - 'insSIREN' => $siren, - 'siretValide' => $iInsee->valideSiren($siren,$nic), - 'insNIC' => $nic, - 'insEVE' => 'RCS', - 'insDATEVE' => $tabIdentite['moisRefusRCS'].'28', - 'insDATEMAJ' => date('YmdHis'), - 'idFlux' => date('Ymd')); - if (!$iDb2->insert('insee_even', $tabInsert)) - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de l'inscription à la liste des refus d'enregistrement B au RCS pour $siren au mois de ".$tabIdentite['moisOppositionInsee']." : ".EOL.print_r($tabInsert, true).EOL.print_r($tabIdentite, true).EOL.$iDb2->getLastError()); - } - // Fin refus d'inscription au RCS - - // Domiciliataire - if (!empty($tabIdentite['domiciliataire']) && $siren>1000) { - if ($tabIdentite['domiciliataire']=='oui' || $tabIdentite['domiciliataire']=='non') { - // L'entreprise et ces établissements seront mis à jour automatiquement ce soir - $iDb->query("INSERT IGNORE INTO jo.tabAdrDom (siren,nic,siege, etActif, nom, sigle, enseigne, adrNum, adrBtq, adrTypVoie, adrLibVoie, ville, cp, depComEt, adrComp, cj, apen,apet, dateInsert) - SELECT siren, nic, siege, actif AS etActif, raisonSociale AS nom, sigle, enseigne, adr_num as adrNum, adr_btq AS adrBtq, adr_typeVoie AS adrTypVoie, adr_libVoie AS adrLibVoie, adr_ville AS ville, adr_cp AS cp, CONCAT(adr_dep,adr_com) AS depComEt, adr_comp AS adrComp, cj, ape_entrep AS apen, ape_etab AS apet, DATE(NOW()) as dateInsert - FROM jo.etablissements WHERE siren=$siren;", false); - } - // Si demande de suppression, on force l'indicateur "" - if ($tabIdentite['domiciliataire']=='non') { - $tabUpdate=array('pasEntrepDom'=>1); - if (!$iDb->update('tabAdrDom', $tabUpdate, "siren=$siren")) - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", "Erreur lors de la suppression du marqueur de domiciliation pour $siren :".EOL.print_r($tabUpdate, true).EOL.$iDb->getLastError()); - } - } - // Fin domiciliataire - - // Insertion des scores - $tabUpdate = array(); - $setScore = false; - if ( $tabScores['encours']!='' || $tabScores['encours']!=null ){ - $tabUpdate['encours'] = $tabScores['encours']; - $setScore = true; - } - if ( $tabScores['scoreSolv']!='' ){ - $tabUpdate['scoreSolv'] = $tabScores['scoreSolv']; - $setScore = true; - } - if ( $tabScores['scoreDir']!='' ){ - $tabUpdate['scoreDir'] = $tabScores['scoreDir']; - $setScore = true; - } - if ( $tabScores['scoreConf']!='' ){ - $tabUpdate['scoreConf'] = $tabScores['scoreConf']; - $setScore = true; - } - if ( $setScore ){ - // Mise à jour des Cute Offs - if ( !$iDb->update('scores_cutoff', $tabUpdate, "siren=$siren") ){ - if ( !$iDb->insert('scores_cutoff', array_merge(array( - 'siren' => $siren, - 'dateInsert' => date('Ymd') ), $tabUpdate)) ){ - @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "ERREUR setInfosEntrep pour $siren", print_r($tabScores, true).EOL.$iDb->getLastError()); - } - } - } - // Fin insertion des scores - - // Insertion du jugement - $tabEven = $tabJugement['even']; - $nic = $tabJugement['nic']*1; - $entrep = $iInsee->getIdentiteLight($siren, $nic); - if ( $nic>0 && $tabEven[0]==6700 && $entrep['Siege']==0 ){ - // Radiation d'un établissement - $tabEven[0] = 6600; - } - - if ( count($tabEven)>0 ){ - $idAdmin = str_replace('m','',trim($tabJugement['admin'])); - $idMand = str_replace('m','',trim($tabJugement['mand'])); - $idOppo = str_replace('m','',trim($tabJugement['oppo'])); - - $tabSource=explode('_',$tabJugement['source']); - $source=@$tabSource[0]; - $numJal=@$tabSource[1]; - - $dateSource=WDate::dateT('d/m/Y', 'Ymd', trim($tabJugement['dateParution']))*1; - if ($dateSource<20000101) - $dateSource=date('YmdHis'); - - $montant=trim(preg_replace('/[^0-9]/', '', $tabJugement['montant']))*1; - $actionsMt=trim(preg_replace('/[^0-9]/', '', $tabJugement['actionsMt']))*1; - $actionsNb=trim(preg_replace('/[^0-9]/', '', $tabJugement['actionsNb']))*1; - if ($montant>0 && ($actionsNb>0 || $actionsMt>0)) { - if ($actionsNb>0) $actionsMt=$montant/$actionsNb; - elseif ($actionsMt>0) $actionsNb=$montant/$actionsMt; - } - - //@todo : ça ne va pas marcher ici - $strDir=''; - - if (count($tabJugement['nouvDir'])>0) { - foreach( $tabJugement['nouvDir'] as $dir ){ - if ( intval($dir['Fonc'])>0 ){ - $strDir.= $iBodacc->getFctDir($dir['Fonc']).' : '.$dir['Genre'].' '. - ucwords(strtolower($dir['Pre'])).' '.strtoupper($dir['Nom']); - if (!empty($dir['Dom'])) { - $strDir.= ', domicilié à '.$dir['Dom'].'. '; - } - } - } - } - - if ( trim($tabJugement['nouvAdrCp'])<>'' ){ - $strAdr = stripslashes(trim($tabJugement['nouvAdr']).', '. - trim($tabJugement['nouvAdrCp']).' '. - trim($tabJugement['nouvAdrVille'])); - } else { - $strAdr=''; - } - - if (count($tabEven)>1){ - $strEven = implode(';',array_slice($tabEven, 1)); - } else { - $strEven = ''; - } - - $tabUpdate = array( - 'strEven' => $strEven, - 'sirenValide' => $iInsee->valideSiren($siren), - 'dateCessationPaiement' => empty($tabJugement['datePaie']) ? '' : - WDate::dateT('d/m/Y', 'Y-m-d', trim($tabJugement['datePaie'])), - 'dateEffetFinP' => empty($tabJugement['dateFinPeriode']) ? '' : - WDate::dateT('d/m/Y', 'Y-m-d', trim($tabJugement['dateFinPeriode'])), - 'tribunal' => trim($tabJugement['tribunal']), - 'montant' => $montant, - 'actionsNb' => $actionsNb, - 'inter1type' => 'A', - 'inter1id' => $idAdmin, - 'inter1nom' => utf8_encode($iInsee->getMandatairesParId($idAdmin)), - 'inter2type' => 'M', - 'inter2id' => $idMand, - 'inter2nom' => utf8_encode($iInsee->getMandatairesParId($idMand)), - 'inter3type' => 'O', - 'inter3id' => $idOppo, - 'inter3nom' => utf8_encode($iInsee->getMandatairesParId($idOppo)), - 'complement' => stripslashes(trim($tabJugement['comp'])), - 'nouvActivite' => stripslashes(trim($tabJugement['nouvActivite'])), - 'nouvDir' => stripslashes(trim($strDir)), - 'nouvAdr' => $strAdr, - 'nouvFJ' => trim($tabJugement['nouvFJ']), - 'raisonSociale' => $entrep['Nom'], - 'adresse' => $entrep['Adresse'], - 'codePostal' => $entrep['CP'], - 'ville' => $entrep['Ville'], - 'source' => $source, - 'idSaisie' => $this->tabInfoUser['id'], - 'parutionIdJal' => $numJal, - 'parutionNum' => $tabJugement['numParution'], - ); - $dateJuge = WDate::dateT('d/m/Y','Y-m-d',trim($tabJugement['dateJuge'])); - $tabInsert = array_merge( $tabUpdate, array( - 'siren' => $siren, - 'dateJugement' => $dateJuge, - 'typeEven' => $tabEven[0], - 'dateSource' => $dateSource, - )); - if ( !$iDb->insert('annonces', array_merge($tabInsert,array('dateInsert'=>date('YmdHis'))), true) ){ - if ( !$iDb->update('annonces', $tabUpdate, "siren=$siren AND dateJugement='$dateJuge' AND typeEven=".$tabEven[0], true)){ - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - $output = new SetInfosEntrepReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - } - } - - // Insertion actionnaire - if ( trim($tabActio['siren'])!='' ) { - $nom = $pays = $dateMAJ = ''; - $ppPm = 'P'; - $pct = trim(str_replace(',','.',$tabActio['pct']))*1; - $siren2 = preg_replace('/[^0-9]/','', $tabActio['siren']); - $entrep2 = $iInsee->getIdentiteEntreprise($siren); - $nom2 = $entrep2['Nom']; - $pays2 = $entrep2['Pays']; - if ($pays2=='') $pays2='FRA'; - - if (substr($entrep2['FJ'],0,1)*1<>1) $ppPm='M'; - $entrep = $iInsee->getIdentiteEntreprise($siren2); - $nom = $entrep['Nom']; - $pays = trim($entrep['Pays']); - if ($pays=='') $pays='FRA'; - if (trim($tabActio['nom'])!='') $nom = $tabActio['nom']; - if ($tabActio['pays']!='XXX') $pays = $tabActio['pays']; - - if (trim($tabActio['dateMAJ'])!='JJ/MM/AAAA' && trim($tabActio['dateMAJ'])!=''){ - $dateMAJ = WDate::dateT('d/m/Y', 'Y-m-d', trim($tabActio['dateMAJ'])); - } - - if ($tabActio['majMin']=='maj') $majMin='+'; - elseif ($tabActio['majMin']=='min') $majMin='-'; - else $majMin=''; - - $tabUpdate = array( - //'Siren1'=> $siren, - 'Pmin'=> $pct, - 'Pmax'=> $pct, - 'MajMin'=> $majMin, - 'PpPm'=> $ppPm, - //'Siren2'=> $siren2, - //'RaisonSociale'=> $nom, - //'Pays'=> $pays, - 'dateLien'=> $dateMAJ, - ); - - $tabInsert1 = array_merge($tabUpdate, array('ActionPart' => 1), array( - 'Siren1'=> $siren, - 'Siren2'=> $siren2, - 'RaisonSociale'=> $nom, - 'Pays'=> $pays, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); - $res = $iDb->select('liens', 'count(*)', - "Siren1=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>1)), "siren=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))", true)) - $errMaj=1016166; - } else { - if (!$iDb->insert('liens', $tabInsert1, true)) - $errMaj=1016167; - } - - $tabInsert2 = array_merge($tabUpdate, array('ActionPart' => 2), array( - 'Siren1' => $siren2, - 'Siren2'=> $siren, - 'RaisonSociale'=> $nom2, - 'Pays'=> $pays2, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); - $res=$iDb->select('liens', 'count(*)', "Siren1=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>2)), "siren=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))", true)) - $errMaj=1016168; - } else { - if (!$iDb->insert('liens', $tabInsert2, true)) - $errMaj=1016169; - } - } - // Fin insertion actionnaire - - //Insertion participation - if ( trim($tabParti['siren'])<>'' ) { - $nom = $pays = $dateMAJ = ''; - $ppPm = 'P'; - $pct = trim(str_replace(',','.',$tabParti['pct']))*1; - $siren2 = preg_replace('/[^0-9]/','', $tabParti['siren']); - $entrep2 = $iInsee->getIdentiteEntreprise($siren); - $nom2 = $entrep2['Nom']; - $pays2 = $entrep2['Pays']; - if ($pays2=='') $pays2='FRA'; - - if (substr($entrep2['FJ'],0,1)*1<>1) $ppPm='M'; - $entrep = $iInsee->getIdentiteEntreprise($siren2); - $nom = $entrep['Nom']; - $pays = trim($entrep['Pays']); - if ( $pays=='' ) $pays='FRA'; - if ( trim($tabParti['nom'])<>'' ) $nom=$tabParti['nom']; - if ( $tabParti['pays']<>'XXX' ) $pays=$tabParti['pays']; - - if (trim($tabParti['dateMAJ'])<>'JJ/MM/AAAA' && trim($tabParti['dateMAJ'])<>'') - $dateMAJ=WDate::dateT('d/m/Y', 'Y-m-d', trim($tabParti['dateMAJ'])); - - if ($tabParti['majMin']=='maj') $majMin='+'; - elseif ($tabParti['majMin']=='min') $majMin='-'; - else $majMin=''; - - $tabUpdate = array( - 'Pmin'=> $pct, - 'Pmax'=> $pct, - 'MajMin'=> $majMin, - 'PpPm'=> $ppPm, - 'dateLien'=> $dateMAJ, - ); - - $tabInsert1 = array_merge($tabUpdate, array( 'ActionPart' => 2 ), array( - 'Siren1'=> $siren, - 'Siren2'=> $siren2, - 'RaisonSociale'=> $nom, - 'Pays'=> $pays, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); - $res=$iDb->select('liens', 'count(*)', "Siren1=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>2)), "siren=$siren AND (Siren2=$siren2 OR (RaisonSociale='$nom' AND Pays='$pays'))", true)) - $errMaj=10168; - } else { - if (!$iDb->insert('liens', $tabInsert1, true)) - $errMaj=10169; - } - - $tabInsert2 = array_merge($tabUpdate, array( 'ActionPart' => 1 ), array( - 'Siren1'=> $siren2, - 'Siren2'=> $siren, - 'RaisonSociale'=> $nom2, - 'Pays'=> $pays2, - 'actif'=> 1, - 'source'=> 1900, - 'dateInsert'=> date('YmdHis')) - ); - $res=$iDb->select('liens', 'count(*)', "Siren1=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))"); - if ($res[0][0]>0) { - if (!$iDb->update('liens', array_merge($tabUpdate,array('ActionPart'=>1)), "siren=$siren2 AND (Siren2=$siren OR (RaisonSociale='$nom2' AND Pays='$pays2'))", true)) - $errMaj=10170; - } else { - if (!$iDb->insert('liens', $tabInsert2, true)) - $errMaj=10171; - } - } - // Fin insertion participation - - if ($errMaj>0){ - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - } else { - $result = true; - } - } - $output = new SetInfosEntrepReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Met a jour les informations sur un mandataire - * @param SetInfosMandataire $infos Informations sur le mandataire à créer ou à ajouter (ajout si id absent) - * @return SetMandataireReturn - */ - public function setMandataire(SetInfosMandataire $infos) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - $result = true; - - $iDb = new WDB(); - - //$infos = serialize($tabInfos); - debugLog('I',"Ajout/MAJ de mandaitaire ".print_r($infos,1)." demandée",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $type = substr(strtoupper($infos->type),0,1); - $stag = substr(strtoupper($infos->type),1,1); - if ($stag=='S') { - $stag=1; - } else { - $stag=0; - } - if ($type=='A' || $type=='H' || $type=='M' || $type=='V' || - $type=='N' || $type=='T') - { - $tabUpdate=array( - 'sirenGrp' => substr($infos->sirenGrp,0,9)*1, - 'nicGrp' => substr($infos->sirenGrp,9,5)*1, - 'sirenMand' => substr($infos->sirenMand,0,9)*1, - 'nicMand' => substr($infos->sirenMand,9,5)*1, - 'Nom' => ucwords(strtolower($infos->Nom)), - 'Prenom' => ucwords(strtolower($infos->Prenom)), - 'type' => $type, - 'stagiaire' => $stag, - 'coursAppel' => intval($infos->coursAppel), - 'coursAppel2' => intval($infos->coursAppel2), - 'tribunal' => $infos->tribunal, - 'Statut' => strtoupper($infos->Statut), - 'adresse' => ucwords($infos->adresse), - 'adresseComp' => strtoupper($infos->adresseComp), - 'cp' => intval($infos->cp), - 'ville' => strtoupper($infos->ville), - 'tel' => $infos->tel, - 'fax' => $infos->fax, - 'email' => $infos->email, - 'web' => $infos->web, - 'contact' => $infos->contact, - 'idUser' => $this->tabInfoUser['id'], - ); - } - $id = str_replace('m','', ''.$infos->id)*1; - if (intval($id)!=0) { - // MAJ - if (!$iDb->update('tabMandataires', $tabUpdate, "id=$id", true)) { - $error->errnum = 1; - $error->errmsg = 'Mise a jour impossible'; - $result = false; - } - } else { - // Insertion - if (!$iDb->insert('tabMandataires', array_merge($tabUpdate,array('dateInsert'=>date('YmdHis'))), true)) { - $error->errnum = 1; - $error->errmsg = 'Insertion impossible'; - $result = false; - } - } - $output = new SetMandataireReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Supprime une annonce issue de la collecte - * @param string $idAnn - * @param string $siret - * @return SupprAnnonceCollecteReturn - */ - public function supprAnnonceCollecte($idAnn, $siret=null) - { - $this->authenticate(); - //Initialisation - if (empty($siret)) $siret = 0; - $error = new ErrorType(); - $result = false; - - if (!$this->checkEdition()) - { - $error->errnum = 1; - $error->errmsg = 'Code Client Incorrect'; - } - else - { - $siren = substr($siret,0,9)*1; - $iDb = new WDB(); - $idAnn = preg_replace('/^0\./','', ''.$idAnn)*1; - - if ($idAnn>0) - { - if ($iDb->update('annonces',array( - 'dateSuppr'=>date('YmdHis'), - 'idSuppr'=>$this->tabInfoUser['id']), - "id=$idAnn", false)) - { - debugLog('I',"Suppression de l'annonce collectée n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $result = true; - } - else - { - $error->errnum = 1; - $error->errmsg = 'Suppression de l\'annonce impossible'; - debugLog('I',"Suppression impossible de l'annonce collectée n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } - } - else - { - $error->errnum = 1; - $error->errmsg = 'idAnn incorrect'; - } - } - $output = new SupprAnnonceCollecteReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Récupère le mandataire par son id - * @param int $id Identifiant du mandataire - * @return string - */ - public function getMandataire($id) - { - $this->authenticate(); - require_once 'Metier/insee/classMInsee.php'; - $iInsee = new MInsee(); - $tabRet = $iInsee->getMandataire($id); - return json_encode($tabRet); - } - - /** - * Liste les mandataires compétentes pour une cours d'appel donnée - * @param mixed $codeTribunal Identifiants BODACC du tribunal ou tableau d'Identifiants numériques des cours d'appel - * @param array $type Type de mandataire (A)dministrateur, (M)andataire, (O)ppositions, (N)otaires, a(V)ocat - * @return MandatairesReturn - */ - public function getMandataires($codeTribunal=0, $type=array('A','M')) - { - $this->authenticate(); - //Initialisation - $iInsee = new MInsee(); - $error = new ErrorType(); - $trib = serialize($codeTribunal); - debugLog('I',"Liste des Mandaitaires ou Administrateur du Tribunal/Cours d'Appel $trib demandé",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - if (!is_array($codeTribunal) && strlen($codeTribunal)>3 && $codeTribunal*1==0) - { - // $codeTribunal est un identifiant de tribunal - $iBodacc = new MBodacc(); - $tabTmp = $iInsee->getMandataires(array($iBodacc->getTribunalIdCA($codeTribunal)), true, $type); - } - elseif ($codeTribunal*1==0) - { - // On veut tous les mandataires - $tabTmp = $iInsee->getMandataires(array(), true, $type); - } - elseif (is_array($codeTribunal)) - { - // On veut les mandataires d'une CA - $tabTmp = $iInsee->getMandataires($codeTribunal, true, $type); - } - $tabRet = array(); - foreach ($tabTmp as $i=>$mand){ - $mandataire = new Mandataire(); - $mandataire->id = 'm'.$i; - $mandataire->mand = $mand; - $tabRet[]= $mandataire; - } - $output = new MandatairesReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - /** - * Donne la cours d'appel d'un tribunal par son code - * @param string $codeTribunal Code BODACC sur 6 caractères du tribunal - * @return int - */ - public function getIdCoursAppel($codeTribunal) - { - $this->authenticate(); - $iBodacc = new MBodacc(); - return $iBodacc->getTribunalIdCA($codeTribunal); - } - - /** - * Duplique une annonce issue de la collecte - * @param string $idAnn - * @param string $siret - * @return DupliqueAnnonceReturn - */ - public function dupliqueAnnonceCollecte($idAnn, $siret = null) - { - $this->authenticate(); - //Initialisation - if (empty($siret)) $siret = ''; - $error = new ErrorType(); - $result = 0; - - if (!$this->checkEdition()) { - $error->errnum = 1; - $error->errmsg = 'Code Client Incorrect'; - } else { - $siren = intval(substr($siret,0,9)); - $nic = intval(substr($siret,9,5)); - $iDb = new WDB(); - $idAnn = intval(preg_replace('/^0\./','', ''.$idAnn)); - if ($idAnn>0 && $siren>1000){ - $res = $iDb->select('annonces', '*', "id=$idAnn", false, MYSQL_ASSOC); - if (count($res)==0) { - $error->errnum = 1; - $error->errmsg = 'Annonce inexistante'; - } else { - $annonce = $res[0]; - // Suppression des zones inexistantes dans la table ou devant être vides - unset($annonce['id']); - unset($annonce['nic']);//=$nic; - $annonce['siren'] = $siren; - $annonce['nic'] = $nic; - if ($iDb->insert('annonces', $annonce, false)) { - debugLog('I',"Duplication de l'annonce collectée n°$idAnn sur $siret",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $result = 1; - } else { - debugLog('I',"Suppression impossible de l'annonce collectée n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 1; - $error->errmsg = 'Suppression de l\'annonce impossible'; - } - } - } - } - $output = new DupliqueAnnonceCollecte(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Récupère le contenu d'une annonce issue de la collecte - * @param string $idAnn - * @param string $siret - * @return AnnonceCollecteReturn - */ - public function getAnnonceCollecte($idAnn, $siret) - { - $this->authenticate(); - //Initialisation - $error = new ErrorType(); - $annonceCollecte = new AnnonceCollecte(); - $siren = substr($siret,0,9)*1; - if (!$this->checkEdition()) { - - $error->errnum = 0; - $error->errmsg = 'Code Client Incorrect'; - - } else { - - $iDb = new WDB(); - debugLog('I',"Lecture de l'annonce collectée n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $idAnn = preg_replace('/^0\./','', ''.$idAnn) * 1; - if ($idAnn>0) - { - $res = $iDb->select('annonces', - 'id, siren, sirenValide, typeEven, strEven, raisonSociale, adresse, codePostal, ville, dateJugement, dateCessationPaiement, dateEffetFinP, numero, inter1type, inter1id, inter1nom, inter2type, inter2id, inter2nom, inter3type, inter3id, inter3nom, inter4type, inter4id, inter4nom, tribunal, montant, actionsNb, complement, infosBrutes, nouvActivite, nouvDir, nouvAdr, nouvFJ, annonce, source, parutionIdJal, parutionNum, dateSource, idSaisie, idAnnonce, dateInsert', - "id=$idAnn", false, MYSQL_ASSOC - ); - if (count($res)>0) - { - $ann = $res[0]; - $annonceCollecte->id = $ann['id']; - $annonceCollecte->siren = $ann['siren']; - $annonceCollecte->raisonSociale = $ann['raisonSociale']; - $annonceCollecte->adresse = $ann['adresse']; - $annonceCollecte->codePostal = $ann['codePostal']; - $annonceCollecte->ville = $ann['ville']; - $annonceCollecte->dateJugement = $ann['dateJugement']; - - //@todo : Les libellées ne sont pas présent LibEven - $tabEven = array(); - $annonceEvenement = new AnnonceEvenement(); - $annonceEvenement->CodeEven = $ann['typeEven']; - $annonceEvenement->LibEven = ''; - $tabEven[] = $annonceEvenement; - if (!empty($ann['strEven'])){ - foreach ( explode(';',$ann['strEven']) as $code ) - { - $annonceEvenement = new AnnonceEvenement(); - $annonceEvenement->CodeEven = $code; - $annonceEvenement->LibEven = ''; - $tabEven[] = $annonceEvenement; - } - } - - $annonceCollecte->even = $tabEven; - $annonceCollecte->dateSource = $ann['dateSource']; - $annonceCollecte->dateCessationPaiement = $ann['dateCessationPaiement']; - $annonceCollecte->dateEffetFinP = $ann['dateEffetFinP']; - $annonceCollecte->tribunal = $ann['tribunal']; - $annonceCollecte->numero = $ann['numero']; - $annonceCollecte->montant = $ann['montant']; - $annonceCollecte->actionsNb = $ann['actionsNb']; - $annonceCollecte->inter1type = $ann['inter1type']; - $annonceCollecte->inter1id = $ann['inter1id']; - $annonceCollecte->inter1nom = $ann['inter1nom']; - $annonceCollecte->inter2type = $ann['inter2type']; - $annonceCollecte->inter2id = $ann['inter2id']; - $annonceCollecte->inter2nom = $ann['inter2nom']; - $annonceCollecte->inter3type = $ann['inter3type']; - $annonceCollecte->inter3id = $ann['inter3id']; - $annonceCollecte->inter3nom = $ann['inter3nom']; - $annonceCollecte->complement = $ann['complement']; - $annonceCollecte->nouvActivite = $ann['nouvActivite']; - $annonceCollecte->nouvDir = $ann['nouvDir']; - $annonceCollecte->nouvAdr = $ann['nouvAdr']; - $annonceCollecte->nouvFJ = $ann['nouvFJ']; - $annonceCollecte->source = $ann['source']; - - debugLog('I',"Lecture de l'annonce collectée n°$idAnn ($siret) : ".$ann['raisonSociale'],__LINE__,__FILE__, __FUNCTION__, __CLASS__); - } else { - $error->errnum = 1; - $error->errmsg = 'Edition impossible'; - } - } - else - { - $error->errnum = 745741; - $error->errmsg = 'Selection impossible'; - } - } - $output = new AnnonceCollecteReturn(); - $output->error = $error; - $output->result = $annonceCollecte; - return $output; - } - - /** - * Enregistrement de document actes ou status d'association - * @param string $siren Numéro Siren - * @param string $waldec Numéro waldec - * @param string $type Type d'acte (ST) - * @param string $libelle Libellé de l'acte - * @param string $date Date de l'acte au format AAAAMMDD - * return boolean - */ - public function setActeAsso( $siren, $waldec, $type, $libelle, $date ) - { - $this->authenticate(); - if (!$this->checkEdition()) { - $this->sendError('0902'); - } - - ($type == 'ST') ? $type_acte = 'ST' : $type_acte = 'ST'; - - $data = array( - 'siren' => $siren, - 'waldec' => $waldec, - 'pdfLink' => '', - 'pdfSize' => '', - 'pdfVer' => '', - 'pdfPage' => '', - 'date_acte' => WDate::dateT('Ymd', 'Y-m-d', $date), - 'type_acte' => $type_acte, - 'type_acte_libelle' => $libelle, - ); - - //Save - try { - $doc = new Application_Model_AssoActes(); - $id = $doc->insert($data); - } catch (Zend_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - return $id; - } - - /** - * getListeJalCollecte - * @return ListeJalCollecteReturn - */ - public function getListeJalCollecte() - { - $this->authenticate(); - - //Initialisation - $error = new ErrorType(); - - $iBodacc = new MBodacc(); - $tabJal = $iBodacc->getListeJalCollecte(); - foreach ($tabJal as $i=>$jal) - { - $jalCollecte = new JalCollecte(); - $jalCollecte->id = $i; - $jalCollecte->nom = $jal; - $tabRet[] = $jalCollecte; - } - $output = new ListeJalCollecteReturn(); - $output->error = $error; - $output->result = $tabRet; - return $output; - } - - - /** - * Suppression logique d'une annonce relative à une entité - * @param integer $source 0=Collecte, 1=BODACC, 2=B.A.L.O, 3=JO Association, 4=Boamp - * @param string $idAnn Identifiant de l'annonce - * @param string $siret Siren de l'entreprise ou Siret de l'établissement - * @return SupprAnnonceReturn - */ - public function supprAnnonce($source=0, $idAnn, $siret=0) - { - $this->authenticate(); - //Initialisation - if (empty($siret)) $siret = 0; - if (empty($source)) $source = 0; - $error = new ErrorType(); - $result = false; - - if (!$this->checkEdition()) - { - $error->errnum = 1; - $error->errmsg = 'Code Client Incorrect'; - } - else - { - - $siren = substr($siret,0,9); - $iDb = new WDB(); - switch ($source) - { - case 0: - $idAnn = preg_replace('/^0\./','', ''.$idAnn)*1; - $table = 'annonces'; - break; - case 1: - if (intval($idAnn)<0){ - $error->errnum = 1; - $error->errmsg = 'Code annonce Incorrect'; - } else { - $strSql = "AND siren=$siren"; - $table = 'bodacc_detail'; - } - break; - case 3: - $table = 'asso'; - break; - case 2: - case 4: - default: - $error->errnum = 1; - $error->errmsg = 'Cas non géré'; - break; - } - if (intval($idAnn)>0 && $iDb->update($table, array( - 'dateSuppr' => date('YmdHis'), - 'idSuppr' => $this->tabInfoUser['id']), - "id=$idAnn $strSql", false)) - { - debugLog('I',"Suppression de l'annonce en source $source n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 0; - $error->errmsg = ''; - $result = true; - } else { - debugLog('I',"Suppression impossible de l'annonce en source $source n°$idAnn ($siret)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 1; - $error->errmsg = 'Suppression de l\'annonce impossible'; - } - } - $output = new SupprAnnonceReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Duplication d'une annonce relative à une entité - * - * @param integer $source 0=Collecte, 1=BODACC, 2=B.A.L.O, 3=JO Association, 4=Boamp - * @param string $idAnn Identifiant de l'annonce - * @param string $siretIn Siren de l'entreprise ou Siret de l'établissement de l'annonce à duppliquer - * @param string $siretOut Siren/Siret de l'entreprise ou étab sur lequel il faut dupliquer l'annonce - * @return DupliqueAnnonceReturn - */ - public function dupliqueAnnonce($source=0, $idAnn, $siretIn=0, $siretOut=0) - { - debugLog('I',"Demande de duplication d'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - $this->authenticate(); - //Initialisation - if (empty($siret)) $siret = 0; - if (empty($source)) $source = 0; - $error = new ErrorType(); - $result = false; - - if (!$this->checkEdition()) - { - $error->errnum = 1; - $error->errmsg = 'Code Client Incorrect'; - } - else - { - $sirenIn = substr($siretIn,0,9)*1; - $nicIn = substr($siretIn,9,5)*1; - $sirenOut = substr($siretOut,0,9)*1; - $nicOut = substr($siretOut,9,5)*1; - $iDb = new WDB(); - $strSql=''; - switch ($source) - { - // - case 0: - $idAnn = preg_replace('/^0\./','', ''.$idAnn)*1; - $table = 'annonces'; - break; - - //Bodacc - case 1: - if (intval($idAnn)<0) { - //@todo : Must be possible - $error->errnum = 1; - $error->errmsg = 'Code annonce Incorrect'; - } else { - if (intval($sirenIn)>0) $strSql.="AND siren=$sirenIn"; - $table = 'bodacc_detail'; - } - break; - - //Association - case 3: - $table = 'asso'; - break; - // - case 2: - // - case 4: - // - default: - $error->errnum = 1; - $error->errmsg = 'Cas non géré'; - break; - } - - if (intval($idAnn)>0) { - $res = $iDb->select($table, '*', "id=$idAnn $strSql", false, MYSQL_ASSOC); - - if (count($res)==0) { - $error->errnum = 1; - $error->errmsg = 'Annonce inexistante'; - } else { - - /* Si table = asso => UPDATE de la ligne */ - if ($table == 'asso'){ - //$annonce = $res[0]; - $annonce['siren'] = $sirenOut; - $annonce['sirenValide'] = 2; - $annonce['dateUpdate'] = date('YmdHis'); - $annonce['idSirenage'] = $this->tabInfoUser['id']; - $annonce['nic'] = $nicOut; - if ($nicOut>0) $annonce['nicValide'] = 2; - if ($iDb->update($table, $annonce, "id=".$idAnn, true, true)) { - debugLog('I',"Duplication de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - - //Si WALDEC présent dans l'annonce alors on rapproche tout - if ($res['Waldec']!='') { - $iDb->update($table, $annonce, "Waldec=".$res['Waldec'], false); - } - $result = true; - } else { - debugLog('I',"Duplication impossible de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut) : ".mysql_error(),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 1; - $error->errmsg = "Duplication de l'annonce impossible"; - } - } - /* Si sirenIn = 0 et table = bodacc_detail => INSERT + UPDATE */ - elseif (intval($sirenIn) == 0 && $table == 'bodacc_detail' ) { - $annonce = $res[0]; - $annonce['siren'] = $sirenOut; - $annonce['sirenValide'] = 2; - $annonce['dateInsert'] = date('YmdHis'); - $annonce['idSirenage'] = $this->tabInfoUser['id']; - $annonce['nic'] = $nicOut; - if ($nicOut>0) $annonce['nicValide'] = 2; - if ($iDb->insert($table, $annonce, true, true)) { - debugLog('I',"Duplication de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $result = true; - $data = array( - 'idSuppr' => $this->tabInfoUser['id'], - 'dateSuppr' => date('YmdHis'), - ); - $iDb->update($table, $data, "id=$idAnn $strSql", true, true); - } else { - debugLog('I',"Duplication impossible de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut) : ".mysql_error(),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 1; - $error->errmsg = "Duplication de l'annonce impossible"; - } - } - /* si sirenIn != 0 et table = bodacc_detail => insert */ - elseif (intval($sirenIn) != 0 && $table == 'bodacc_detail') { - $annonce = $res[0]; - $annonce['siren'] = $sirenOut; - $annonce['sirenValide'] = 2; - $annonce['dateInsert'] = date('YmdHis'); - $annonce['idSirenage'] = $this->tabInfoUser['id']; - $annonce['nic'] = $nicOut; - if ($nicOut>0) $annonce['nicValide'] = 2; - if ($iDb->insert($table, $annonce, true, true)) { - debugLog('I',"Duplication de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $result = true; - } else { - debugLog('I',"Duplication impossible de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut) : ".mysql_error(),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 1; - $error->errmsg = "Duplication de l'annonce impossible"; - } - - } - /* Si table = annonces => INSERT */ - elseif ($table == 'annonces'){ - $annonce = $res[0]; - // Suppression des zones inexistantes dans la table ou devant être vides - unset($annonce['id']); - unset($annonce['nic']); - $annonce['idSaisie'] = $this->tabInfoUser['id']; - if ($iDb->insert($table, $annonce, true, true)) { - debugLog('I',"Duplication de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $result = true; - } else { - debugLog('I',"Duplication impossible de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut) : ".mysql_error(),__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 1; - $error->errmsg = "Duplication de l'annonce impossible"; - } - } - } - } else { - debugLog('I',"Duplication impossible de l'annonce en source $source sur n°$idAnn (siretIn=$siretIn, siretOut=$siretOut)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - $error->errnum = 1; - $error->errmsg = "Duplication de l'annonce impossible"; - } - } - $output = new DupliqueAnnonceReturn(); - $output->error = $error; - $output->result = $result; - return $output; - } - - /** - * Modification du code evenement d'une annonce - * @param string $siren - * @param string $id - * @param string[] $codeEven - * @return boolean - */ - public function setAnnonceEven($siren, $id, $codeEven) - { - $this->authenticate(); - $iDb = new WDB('jo'); - - $list = array(); - if (is_object($codeEven)){ - $list = $codeEven->item; - } else { - $list = $codeEven; - } - - //Get Rubrique of event - $eventM = new Application_Model_JoTabEvenements(); - $sql = $eventM->select()->where('codEven=?', $list[0]); - $row = $eventM->fetchRow($sql); - - if (count($list)>0){ - $tabUpdate = array( - 'typeEven' => implode(';',$list), - 'Rubrique' => $row->Rubrique, - 'idSirenage' => $this->tabInfoUser['id'], - ); - if ($iDb->update('bodacc_detail', $tabUpdate, "siren='$siren' AND id='$id'")){ - debugLog('I',"setAnnonceEven (siren=$siren, list=$list)",__LINE__,__FILE__, __FUNCTION__, __CLASS__); - return true; - } - } - return false; - } - - /** - * Enregistre une information de contact - * @param string $siret - * SIRET ou SIREN - * @param string $type - * Type de l'information (tel) - * @param string $value - * Valeur - * @param string $info - * Information complémentaire () - * @return int - * Retourne l'identifiant de l'élément - */ - public function setContactEt($siret, $type, $value, $info) - { - $this->authenticate(); - $idUtilisateur = $this->tabInfoUser['idUtilisateur']; - - //Control input value - if ( strlen($siret)!=9 || strlen($siret)!=14 ) { - $this->sendError('1010'); - } - $siren = substr($siret,0,9); - if (intval($siren)==0 ) { - $this->sendError('1010'); - } - $nic = substr($nic,10,5); - if (intval($nic)==0) { - $nic = '00000'; - } - - if ( !in_array($type, array('an8','domaines','fax','logo','mail','mob','tel','web') ) ) { - throw new SoapFault('ERR', "unknow value for type"); - } - - switch($type) { - case 'tel' : - - break; - } - - $iInsee = new MInsee(); - $entrep = $iInsee->getIdentiteLight($siren, $nic); - if ( empty($entrep['id']) || intval($entrep['id'])==0 ) { - $this->sendError('1020'); - } - - $data = array( - 'siren' => $siren, - 'nic' => $nic, - 'dateProvPartenaire'=> date('Y').date('m').date('d'), - 'typeTel' => 'tel', - 'infoTel' => $info, - 'telephone' => $value, - 'actif' => '1', - 'partenaire' => '175', //@todo : change partenaire code - 'idUtilisateur' => $idUtilisateur, - 'dateInsert' => date('YmdHis'), - ); - - //Connect to the database - try { - $telephonieM = new Application_Model_JoTelephonie(); - $id = $telephonieM->insert($data); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - return $id; - } - - /** - * Saisie d'un bilan - * @param string $siren - * @param BilanInfos $data - * @param string $step (normal|nocheck|onlycheck) - * @return int - * @throws SoapFault - */ - public function setBilan($siren, $data, $step = null) - { - $this->authenticate(); - - //Control input value - if ( strlen($siren)!=9 ) { - $this->sendError('1010'); - } - - $intervalCalc = 10; - - $tabPostes = array(); - - //Control des valeurs - if (!preg_match('/[0-9]{8}/', $data->dateCloture)) { - throw new SoapFault('MSG', "Erreur Date de cloture"); - } - if ($data->dateCloturePre!='AAAAMMJJ' && !preg_match('/[0-9]{8}/', $data->dateCloturePre)) { - throw new SoapFault('MSG', "Erreur Date de cloture précédente"); - } - if ($data->dateCloturePre=='AAAAMMJJ') { - $data->dateCloturePre = 0; - } - if (intval($data->dureeMois)<1) { - throw new SoapFault('MSG', "Erreur Durée"); - } - if ($data->dureeMoisPre!=0 && intval($data->dureeMoisPre)<1) { - throw new SoapFault('MSG', "Erreur Durée précédente"); - } - if (!empty($data->postes)) { - $listPostes = explode(';', $data->postes); - foreach($listPostes as $strPoste) { - $itemPoste = explode('=', $strPoste); - if (!is_numeric($itemPoste[1])) { - throw new SoapFault('MSG', "Erreur poste ".$itemPoste[0]); - break; - } - $tabPostes[$itemPoste[0]] = intval($itemPoste[1]); - } - } else { - throw new SoapFault('MSG', "Aucun poste saisi"); - } - - //Mathematic control - if ($step != 'nocheck' && count($tabPostes)>0) - { - global $tabCtrl; - require_once 'Metier/partenaires/classMBilans.php'; - $tabFormules = array(); - //Parcourir les formules - foreach ( $tabCtrl[$data->typeBilan] as $formule => $lib ) { - $posEgal = strpos($formule, '='); - $partLeft = substr($formule, 0, $posEgal); - preg_match_all('/([A-Z0-9]+|(\+|\-))/', $partLeft, $matches); - $total = substr($formule, $posEgal+1); - $tabFormules[] = array( - 'operation' => $matches[0], - 'total' => $total, - ); - } - - //Effectuer le calcul - if ( count($tabFormules)>0 ) { - foreach ( $tabFormules as $formule ) { - $checkPostes = array(); - - //Réaliser le calcul - $calc = 0; - $signe = null; - foreach ( $formule['operation'] as $operation ) { - if ( $operation == '-' ) { - $signe = '-'; - } elseif ( $operation == '+' ) { - $signe = '+'; - } else { - $checkPostes[] = $operation; - //Vérification valeur poste - if ( !array_key_exists($operation, $tabPostes) ) { - $tabPostes[$operation] = 0; - } - //Calcul - if ( empty($signe) ) { - $calc = $tabPostes[$operation]; - } elseif ( $signe == '+' ) { - $calc+= $tabPostes[$operation]; - } elseif ( $signe == '-' ) { - $calc-= $tabPostes[$operation]; - } - } - } - - $checkPostes[] = $formule['total']; - //Effecteur la vérification avec le total - if ( !array_key_exists($formule['total'], $tabPostes) ) { - $total = 0; - } else { - $total = $tabPostes[$formule['total']]; - } - if ($calc!=$total && !($calc-$intervalCalc<$total && $calc+$intervalCalc>$total) ) { - throw new SoapFault('ERR', join(';',$checkPostes)); - } - } - } - } - - if ( $step == 'onlycheck' ) { - - return 1; - - } else { - - try { - $bilansM = new Application_Model_JoBilans(); - $sql = $bilansM->select() - ->where('siren=?', $siren) - ->where('dateExercice=?', $data->dateCloture) - ->where('typeBilan=?', $data->typeBilan); - $row = $bilansM->fetchRow($sql); - - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - if ($row!==null) { - - //Backup in historiques - $historiquesM = new Application_Model_HistoriquesBilans(); - $backupData = $row->toArray(); - unset($backupData['id']); - try { - $historiquesM->insert($backupData); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - //Define data - $dataToUpdate = array( - 'dateProvPartenaire' => date('Ymd'), - 'dateExercicePre' => $data->dateCloturePre, - 'dureeExercice' => $data->dureeMois, - 'dureeExercicePre' => $data->dureeMoisPre, - 'monnaie' => 'EUR', - 'monnaieOrigine' => 'EUR', - 'unite' => $data->unite, - 'postes' => $data->postes, - 'partenaire' => 1, - 'confidentiel' => 0, - 'dateInsert' => date('YmdHis'), - ); - - //Update - try { - $id = $bilansM->update($dataToUpdate, 'id = '.$row->id); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - } else { - //Define data - $dataToInsert = array( - 'siren' => $siren, - 'dateProvPartenaire' => date('Ymd'), - 'dateExercice' => $data->dateCloture, - 'dateExercicePre' => $data->dateCloturePre, - 'dureeExercice' => $data->dureeMois, - 'dureeExercicePre' => $data->dureeMoisPre, - 'monnaie' => 'EUR', - 'typeBilan' => $data->typeBilan, - 'monnaieOrigine' => 'EUR', - 'unite' => $data->unite, - 'postes' => $data->postes, - 'partenaire' => 1, - 'confidentiel' => 0, - 'dateInsert' => date('YmdHis'), - ); - - //Insert - try { - $id = $bilansM->insert($dataToInsert); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - } - - if (empty($id)) { - throw new SoapFault('ERR', "Application error"); - } - - //Save user - $userM = new Application_Model_JoBilansUser(); - try { - $userM->insert(array( - 'idUtilisateur' => $this->tabInfoUser['id'], - 'login' => $this->tabInfoUser['login'], - 'siren' => $siren, - 'dateExercice' => $data->dateCloture, - 'typeBilan' => $data->typeBilan, - 'dateAction' => date('YmdHis'), - )); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - return $id; - } - } - - /** - * Créer un identifiant local pour un pays - * @param string $infos - * @param string $id - * @throws SoapFault - * @return int - */ - public function setCountryId($infos, $id = null) - { - $this->authenticate(); - - $data = json_decode($infos, true); - - if ($id!==null) { - - //Update - try { - $countryIdM = new Application_Model_JoTabIdLocal(); - $id = $countryIdM->update($data, 'id = '.$id); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - } else { - - //Insert - try { - $countryIdM = new Application_Model_JoTabIdLocal(); - $id = $countryIdM->insert($data); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - } - - return $id; - } - - /** - * Get lien informations - * @param int $id - * @throws SoapFault - * @return string - */ - public function getLien($id) - { - $this->authenticate(); - - $lienM = new Application_Model_JoLiens(); - try { - $row = $lienM->find($id); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - $result = $row->current()->toArray(); - return json_encode($result); - } - - /** - * Définition d'un lien - * @param string $infos - * @param int $id - * @throws SoapFault - * @return int - */ - public function setLien($infos, $id=null) - { - $this->authenticate(); - - $dataLien = json_decode($infos, true); - $dataLien['source'] = 1900; - - $lienM = new Application_Model_JoLiens(); - - //Test si PDetention >= 100 - if ($dataLien['actif']!=0) { - $sql = $lienM->select()->from($lienM, array( - 'idPar', new Zend_Db_Expr('SUM( PDetention ) AS sumDet') - )) - ->where('idPar=?',$dataLien['idPar']); - if (null !== $id) { - $sql->where('id!=?', $id); - } - $sql->where('actif=?',1); - $result = $lienM->fetchRow($sql); - if ( null !== $result ) { - if ( (float) ($result->sumDet + $dataLien['PDetention']) > 100.1 ) { - throw new SoapFault('ERR', "Erreur Detention sup 100%"); - } - } - } - - //Enregistrer les infos - if (empty($id)) { - - $dataLien = array_merge($dataLien, array( - 'idInsert' => $this->tabInfoUser['id'], - 'dateInsert' => date('YmdHis'), - )); - - try { - $id = $lienM->insert($dataLien); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - } - //Mise à jour des infos - else { - - if ($dataLien['actif']==0) { - $dataLien = array_merge($dataLien, array( - 'idSuppr' => $this->tabInfoUser['id'], - 'dateSuppr' => date('YmdHis'), - )); - } else { - $dataLien = array_merge($dataLien, array( - 'idUpdate' => $this->tabInfoUser['id'], - 'dateUpdate' => date('YmdHis'), - )); - } - - try { - $id = $lienM->update($dataLien, 'id = '.$id); - } catch (Zend_Db_Statement_Exception $e) { - if ( $e->getCode() == 1062 ) { - $id = $lienM->delete('id = '.$id); - } - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - } - - return $id; - } - - /** - * Définition d'une fiche lien - * @param string $infos - * @param int $id - * @throws SoapFault - * @return int - */ - public function setLienRef($infos, $id=null) - { - $this->authenticate(); - - $dataRef = json_decode($infos, true); - $dataRef['source'] = 1900; - - $refM = new Application_Model_JoLiensRef(); - - //Insert - if ($id===null) { - - //Check if exist - if (intval($dataRef['siren'])!=0) { - $sql = $refM->select()->from($refM, array('id'))->where('siren=?', $dataRef['siren']); - $rowset = $refM->fetchRow($sql); - if ( $rowset!==null ) { - return $rowset->id; - } - } - - $dataRef = array_merge($dataRef, array( - 'actif' => 1, - 'idInsert' => $this->tabInfoUser['id'], - 'dateInsert' => date('YmdHis')) - ); - - try { - $id = $refM->insert($dataRef); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - } - //Update - else { - - if ($dataRef['actif']==0) { - - $dataRef = array_merge($dataRef, array( - 'idSuppr' => $this->tabInfoUser['id'], - 'dateSuppr' => date('YmdHis'), - )); - - try { - $id = $refM->update($dataRef, 'id = '.$id); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - } else { - - $dataRef = array_merge($dataRef, array( - 'idUpdate' => $this->tabInfoUser['id'], - 'dateUpdate' => date('YmdHis'), - )); - - try { - $id = $refM->update($dataRef, 'id = '.$id); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - } - - } - - return $id; - } - - /** - * Retourne les informations de référence - * @param int $id - * @throws SoapFault - * @return string - */ - public function getLienRef($id) - { - $this->authenticate(); - - $refM = new Application_Model_JoLiensRef(); - $row = $refM->find($id); - $ouput = ''; - if ($row === null) { - - } else { - $output = json_encode($row->current()->toArray()); - } - return $output; - } - - /** - * Liste des documents pour un lien - * @param int $id - * @param string $type null|Lien|Entreprise|Siren - * @throws SoapFault - * @return LienDoc[] - */ - public function getLienDoc($id, $type = null) - { - $this->authenticate(); - - //Type = Entreprise => Search id by Siren - if ($type == 'Siren') { - $lienrefM = new Application_Model_JoLiensRef(); - $sql = $lienrefM->select()->where('siren=?',$id); - $row = $lienrefM->fetchRow($sql); - $idNum = $row->id; - $type = 'Entreprise'; - } - //Type = Lien - elseif ($type == 'Lien' || $type == 'Entreprise') { - $idNum = $id; - } - - $output = array(); - - if ($type !== null && $idNum === null) { - return $output; - } - - //Get the result - $liendocM = new Application_Model_JoLiensDoc(); - try { - if ($idNum === null) { - $sql = $liendocM->select() - ->where('id=?', $id) - ->where('dateSuppr=?', '0000-00-00 00:00:00'); - } else { - $sql = $liendocM->select() - ->where('idNum=?', $idNum) - ->where('idType=?', $type) - ->where('dateSuppr=?', '0000-00-00 00:00:00'); - } - $sql->order('dateDocRef DESC')->limit(3); - $rowset = $liendocM->fetchAll($sql); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - if ( $rowset->count()>0 ) { - - foreach ( $rowset as $item ) { - $struct = new LienDoc(); - $struct->id = $item->id; - $struct->perimetre = $item->periDoc; - $params = explode('-', $item->docRef); - switch($params[0]) { - case 'INTERNE' : - $tabLabel = array( - 'CA'=>"Comptes Annuels", - 'CC'=>"Comptes Consolidés", - 'DR'=>"Document de référence", - 'RA'=>"Rapport Annuel ou d'Activité", - 'RS'=>"Rapport Semestriel", - 'RG'=>"Rapport de gestion", - 'RF'=>"Rapport financier", - 'OR'=>"Organigramme", - 'AP'=>"Article de presse", - 'AC'=>"Acte", - 'ST'=>"Statuts", - 'DW'=>"Document Web/Internet", - ); - $struct->label = $tabLabel[$params[2]].' ('.WDate::dateT('Ymd', 'd/m/Y', $params[3]).')'; - $struct->url = $item->docRef.'.pdf'; - break; - case 'GREFFE' : - $struct->label = $item->docRef; - $struct->url = $item->docRef; - //@todo - break; - } - - $struct->date = $item->dateDocRef; - $output[] = $struct; - } - } - return $output; - } - - /** - * Définition d'un document attaché à un lien - * @param string $infos - * @param int $id - * @throws SoapFault - * @return int - */ - public function setLienDoc($infos, $id=null) - { - $this->authenticate(); - - $dataDoc = json_decode($infos, true); - - $docM = new Application_Model_JoLiensDoc(); - - //Insert - if ($id===null) { - - $dataDoc = array_merge($dataDoc, array( - 'idInsert' => $this->tabInfoUser['id'], - 'dateInsert' => date('YmdHis')) - ); - - try { - $id = $docM->insert($dataDoc); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - } - //Update - else { - - $dataDoc = array_merge($dataDoc, array( - 'idSuppr' => $this->tabInfoUser['id'], - 'dateSuppr' => date('YmdHis'), - )); - - try { - $id = $docM->update($dataDoc, 'id = '.$id); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - } - - return $id; - } - - - /** - * Recherche de fiche lien dans le référentiel - * @param string $query - * @param string $type null|siren|identifiant|id|special - * @throws SoapFault - * @return SearchLienRef[] - */ - public function searchLienRef($query, $type = null) - { - $this->authenticate(); - - $db = Zend_Db_Table_Abstract::getDefaultAdapter(); - - $sql = $db->select()->from(array('l' => 'jo.liensRef')); - - if ( $type == 'siren' ) { - - $queries = explode(' ', $query); - $sql->join(array('p' => 'jo.tabPays'), 'p.codPays3 = l.adresse_pays', array('codPays3','libPays')); - $sql->where("l.siren=?", $queries[0]); - - } elseif ( $type == 'identifiant' ) { - - $queries = explode(' ', $query); - $sql->join(array('p' => 'jo.tabPays'), 'p.codPays3 = l.adresse_pays', array('codPays3','libPays')); - $sql->where("l.idLoc1Num=?", $queries[0]); - - } elseif ( $type == 'id' ) { - - $sql->join(array('p' => 'jo.tabPays'), 'p.codPays3 = l.adresse_pays', array('codPays3','libPays')); - $sql->where("l.id=?", $query); - - } elseif ( $type == 'special' ) { - - $queries = explode(' ', $query); - if (count($queries)>0) { - $where = ''; - $i = 0; - foreach ($queries as $item) { - if (strlen($item)>2) { - $where.= 'LIKE "%'.strtolower($item).'%"'; - } - $i++; - if (count($queries) > $i){ - $where.= ' OR '; - } - } - $sql->where("(l.RS ".$where.") OR (l.nom ".$where.")"); - $sql->where('l.id<1000'); - } - - } else { - - $sql->join(array('p' => 'jo.tabPays'), 'p.codPays3 = l.adresse_pays', array('codPays3','libPays')); - - $pos = strrpos($query, ','); - if ($pos !== false) { - $country = trim(substr($query, $pos+1)); - $query = trim(substr($query, 0, $pos)); - } - - $queries = explode(' ', $query); - - if (count($queries)>0) { - $where = ''; - $i = 0; - foreach ($queries as $item) { - if (strlen($item)>2) { - $where = 'LIKE "%'.strtolower($item).'%"'; - } - $i++; - $sql->where('CONCAT_WS(" ", l.RS, l.nom, l.prenom) '.$where); - } - $sql->where('l.id>=1000'); - } - - if ( !empty($country) ) { - $sql->where('l.adresse_pays=?', $country); - } - } - $sql->limit(20); - - try { - $result = $db->fetchAll($sql, null, Zend_Db::FETCH_OBJ); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } - - $output = array(); - if (count($result>0)) { - foreach($result as $item) { - $tmp = new SearchLienRef(); - $tmp->id = $item->id; - - //Personne Morale - if ($item->siren!='') { - $lib = $item->RS.', '.str_pad($item->siren, 9, '0', STR_PAD_LEFT); - } else { - $lib = $item->RS.', '.$item->adresse_cp.' '.$item->adresse_ville.', '.$item->libPays; - } - - //Personne Physique - if ( $item->nom != '' ) { - $lib = ' '.$item->nom.' '.$item->prenom.', '.$item->nom_usage.', '.$item->naissance_date.', '.$item->nat; - } - - if ($item->actif!=1) { - $lib.= ' (inactif)'; - } - - $tmp->lib = $lib; - $output[] = $tmp; - } - } - - return $output; - } - - /** - * Change siren for a registered mark - * @param int $id - * Registered mark ID - * @param string $siren - * Siren to affect - * @throws SoapFault - * @return int - */ - public function dupliqueMarque($id, $siren) - { - $this->authenticate(); - - $idUser = $this->tabInfoUser['id']; - - $data = array( - 'sirenDeposant' => $siren, - 'sirenValide' => 2, - 'idSirenage' => $idUser, - 'dateUpdate' => date('YmdHis') - ); - - try { - $marqueM = new Application_Model_BopiMarques(); - $result = $marqueM->update($data, 'id='.$id); - } catch (Zend_Db_Adapter_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } catch (Zend_Exception $e) { - throw new SoapFault('ERR', "Application error"); - } - return $result; - } - - /** - * Bourse - * @param string $isin - * @param string $infos - * @throws SoapFault - * @return int - */ - public function setBourse($isin, $infos) - { - $this->authenticate(); - - if (strlen($isin)>12) { - throw new SoapFault('ERR', 'Code Isin incorrect.'); - } - - $data = json_decode($infos, true); - - $bourseM = new Application_Model_Sdv1BourseIsin(); - - //Check if exist - $sql = $bourseM->select()->where('code_isin=?',$isin); - $result = $bourseM->fetchAll($sql); - - //Insert - if ($result->count()==0) { - - $data = array_merge($data, array( - 'dateInsert' => date('YmdHis'), - )); - - try { - $id = $bourseM->insert($data); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - } - //Update - else { - - try { - $id = $bourseM->update($data, 'code_isin = '.$isin); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - } - - return $id; - } - - /** - * Informations boursières pour la saisie - * @param string $isin - * @throws SoapFault - * @return string - */ - public function getBourse($isin) - { - $this->authenticate(); - - if (strlen($isin)>12) { - throw new SoapFault('ERR', 'Code Isin incorrect.'); - } - - $bourseM = new Application_Model_Sdv1BourseIsin(); - $result = $bourseM->find($isin)->current(); - if ( $result===null ) { - throw new SoapFault('MSG', 'Aucun résultat'); - } - - return json_encode($result->toArray()); - } - - /** - * LienRef Fusion or Move LienRef - * @param string $action fusion|moveact|movepar - * @param int $idLien - * Identifiant du lien entre idPar et idAct - * @param int $id - * Identifiant à affecter (idPar ou idAct) - * @throws SoapFault - * @return boolean - */ - public function setLienChange($action, $idLien, $id) - { - $this->authenticate(); - - if (empty($action)) { - throw new SoapFault('ERR', "action"); - } - - $lienM = new Application_Model_JoLiens(); - - //Fusion : - if ($action=='fusion') - { - //Ecraser les actionnaires avec l'ancien id - $lienM->update( - array('idAct'=>$idLien, 'idUpdate'=>$this->tabInfoUser['id']), - 'idAct='.$id); - //Ecraser les participations avec l'ancien id - $lienM->update( - array('idPar'=>$idLien, 'idUpdate'=>$this->tabInfoUser['id']), - 'idPar='.$id); - - //Supprimer la fiche - $lienrefM = new Application_Model_JoLiensRef(); - $lienM->update( - array('dateSuppr'=>date('Ymd'), 'idSuppr'=>$this->tabInfoUser['id']), - 'id='.$id); - - return true; - - } - //Move actionnaire to a new parent - elseif ($action=='moveact') - { - try { - $result = $lienM->update(array('idPar'=>$id, 'idUpdate'=>$this->tabInfoUser['id']), - 'id='.$idLien); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } - - if ($result) return true; - } - //Move participation to a new parent - elseif ($action=='movepar') - { - try { - $result = $lienM->update(array('idAct'=>$id, 'idUpdate'=>$this->tabInfoUser['id']), - 'id='.$idLien); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } - if ($result) return true; - } - - return false; - } - - /** - * Position cut-off pour le calcul des scores - * @param string $infos - * json_encode array with this values - * siren - * encours - * scoreSolv - * scoreDir - * scoreConf - * remarque - * @param boolean $delete - * @throws SoapFault - * @return int - */ - public function setScoreCutoff($infos, $delete = false) - { - $this->authenticate(); - - if (null === $delete) { - $delete = false; - } - - $data = json_decode($infos, true); - - //if profil = score (20), use this table to convert - if ( $this->tabInfoUser['typeScore']==20 ) { - $convert20to100 = array( - 0 => 0, - 1 => 19, - 2 => 29, - 3 => 34, - 4 => 35, - 5 => 38, - 6 => 40, - 7 => 44, - 8 => 45, - 9 => 49, - 10 => 50, - 11 => 54, - 12 => 56, - 13 => 59, - 14 => 61, - 15 => 64, - 16 => 68, - 17 => 72, - 18 => 79, - 19 => 80, - 20 => 90, - ); - $data['scoreSolv'] = $convert20to100[$data['scoreSolv']]; - $data['scoreDir'] = $convert20to100[$data['scoreDir']]; - $data['scoreConf'] = $convert20to100[$data['scoreConf']]; - } - - $cutoffM = new Application_Model_JoScoresCutoff(); - $sql = $cutoffM->select()->where('siren=?', $data['siren']); - $row = $cutoffM->fetchRow($sql); - - //Historisation - if ( null !== $row ) { - $mvtM = new Application_Model_JoScoresCutoffMvt(); - $backupData = $row->toArray(); - unset($backupData['dateUpdate']); - $backupData = array_merge($backupData, array( - 'idMvt' => $this->tabInfoUser['id'], - 'dateMvt'=>date('YmdHis') - )); - - try { - $mvtM->insert($backupData); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']!=1) { - throw new SoapFault('ERR', "Application error"); - } else { - throw new SoapFault('ERR', $e->getMessage()); - } - } - - $cutoffM->delete('siren='.$data['siren']); - } - - if ( !$delete ) { - //Insertion - $data = array_merge($data, array( - 'idInsert' => $this->tabInfoUser['id'], - 'dateInsert'=>date('YmdHis') - )); - try { - $result = $cutoffM->insert($data); - } catch (Zend_Db_Exception $e) { - if ($this->tabInfoUser['idClient']==1) { - throw new SoapFault('ERR', $e->getMessage()); - } else { - throw new SoapFault('ERR', "Application error"); - } - } - - //Mise en surveillance - if ($result>0 && !empty($this->tabInfoUser['email'])) { - $iInsee = new MInsee(); - $tabIdentite = $iInsee->getIdentiteLight($data['siren']); - $data = array( - 'source' => 'score', - 'login' => $this->tabInfoUser['login'], - 'email' => $this->tabInfoUser['email'], - 'siren' => $data['siren'], - 'nic' => 0, - 'ref' => 'CUTOFF', - 'encoursClient' => 0, - 'rs' => $tabIdentite['Nom'], - 'cp' => $tabIdentite['CP'], - 'ville' => $tabIdentite['Ville'], - 'dateAjout'=>date('Y-m-d'), - 'dateSuppr'=>0, - ); - $iDb = new WDB('jo'); - $iDb->insert('surveillances_site', $data); - } - } - - return $result; - } - - /** - * Get cutoff on a SIREN - * @param string $siren - * @return mixed - */ - public function getScoreCutoff($siren) - { - $this->authenticate(); - - $cutoffM = new Application_Model_JoScoresCutoff(); - $sql = $cutoffM->select()->where('siren=?', $siren); - $row = $cutoffM->fetchRow($sql); - $result = false; - if ( null !== $row ) { - $scoreSolv = intval($row->scoreSolv); - $scoreDir = intval($row->scoreDir); - $scoreConf = intval($row->scoreConf); - if ( $this->tabInfoUser['typeScore']==20 ) { - $convert100to20 = array( - 0 => 0, - 19 => 1, - 29 => 2, - 34 => 3, - 35 => 4, - 38 => 5, - 40 => 6, - 44 => 7, - 45 => 8, - 49 => 9, - 50 => 10, - 54 => 11, - 56 => 12, - 59 => 13, - 61 => 14, - 64 => 15, - 68 => 16, - 72 => 17, - 79 => 18, - 80 => 19, - 90 => 20, - ); - $scoreSolv = $convert100to20[$scoreSolv]; - $scoreDir = $convert100to20[$scoreDir]; - $scoreConf = $convert100to20[$scoreConf]; - } - $result = json_encode(array( - 'siren' => $row->siren, - 'encours' => $row->encours, - 'scoreSolv' => $scoreSolv, - 'scoreDir' => $scoreDir, - 'scoreConf' => $scoreConf, - 'remarque' => $row->remarque, - 'dateInsert' => $row->dateInsert, - 'dateUpdate' => $row->dateUpdate, - )); - } - - return $result; - } - -} \ No newline at end of file diff --git a/library/WsScore/Saisie/v0.2/Types.php b/library/WsScore/Saisie/v0.2/Types.php deleted file mode 100644 index 3db71aa1..00000000 --- a/library/WsScore/Saisie/v0.2/Types.php +++ /dev/null @@ -1,302 +0,0 @@ - array( - 'actif' => true, - 'versions' => array( - '0.8' => array( 'actif' => true, 'defaut' => 'beta' ), - '0.7' => array( 'actif' => true, 'defaut' => true ), - '0.6' => array( 'actif' => true, 'defaut' => false ), - '0.5' => array( 'actif' => true, 'defaut' => false ), - '0.4' => array( 'actif' => true, 'defaut' => false ), - '0.3' => array( 'actif' => false, 'defaut' => false ), - '0.2' => array( 'actif' => false, 'defaut' => false ), - ), - ), - 'interne' => array( - 'actif' => true, - 'versions' => array( - '0.6' => array( 'actif' => true, 'defaut' => 'beta' ), - '0.5' => array( 'actif' => true, 'defaut' => true ), - '0.4' => array( 'actif' => true, 'defaut' => false ), - '0.3' => array( 'actif' => true, 'defaut' => false ), - '0.2' => array( 'actif' => false, 'defaut' => false ), - ), - 'idClient' => array(1), - ), - 'gestion' => array( - 'actif' => true, - 'versions' => array( - '0.3' => array( 'actif' => true, 'defaut' => true ), - '0.2' => array( 'actif' => true, 'defaut' => false ), - '0.1' => array( 'actif' => true, 'defaut' => false ), - ), - 'idClient' => array(1), - ), - 'catalog' => array( - 'actif' => true, - 'versions' => array( - '0.1' => array( 'actif' => true, 'defaut' => true ), - ), - 'idClient' => array(1), - ), - 'saisie' => array( - 'actif' => true, - 'versions' => array( - '0.2' => array( 'actif' => true, 'defaut' => true), - '0.1' => array( 'actif' => true, 'defaut' => false ), - ), - 'idClient' => array(1), - ), - 'pieces' => array( - 'actif' => true, - 'versions' => array( - '0.1' => array( 'actif' => true, 'defaut' => true ), - ), - 'idClient' => array(1), - ), -); \ No newline at end of file diff --git a/library/WsScore/WsScore.php b/library/WsScore/WsScore.php deleted file mode 100644 index f0405d1f..00000000 --- a/library/WsScore/WsScore.php +++ /dev/null @@ -1,685 +0,0 @@ - "Export des résultats de la recherche", - 'IPARI' => "Investigation par l'image IparI©", - 'HISTOBODACC' => "Historique des annonces bodacc", - 'INVESTIG' => "Investigation", - 'SEARCHENT' => "Recherche Entreprise", - 'SEARCHDIR' => "Recherche Dirigeant", - 'SEARCHACT' => "Recherche Actionnaire", - - //IDENTITE - 'IDENTITE' => "Fiche d'identité", - 'IDPROCOL' => 'Fiche procédure collective', - 'LIENS' => "Liens inter-entreprise", - 'ETABLISSEMENTS' => "Liste des établissements", - 'GROUPE' => "Informations et organigramme du groupe", - 'EVENINSEE' => 'Évènements INSEE', - 'AVISINSEE' => 'Avis de situation INSEE', - - //DIRIGEANT - 'DIRIGEANTS' => "Liste des dirigeants", - 'DIRIGEANTSOP' => "Liste des dirigeants opérationnels", - - //FINANCE - 'SYNTHESE' => "Synthèse", - 'RATIOS' => "Ratios", - 'FLUX' => "Flux de trésorerie", - 'LIASSE' => "Liasse fiscale", - 'LIASSEXLS' => "Export des Liasses au format XLS", - 'UPLOADBILAN' => "Saisie de bilan", - 'BOURSE' => "Bourse & cotations", - 'BANQUE' => "Relations bancaires", - - //JURIDIQUE - 'ANNONCES' => "Annonces légales", - 'INFOSREG' => "Informations réglementée", - 'COMPETENCES' => "Compétences territoriales", - 'CONVENTIONS' => "Conventions collectives", - 'MARQUES' => "Marques déposées", - - //EVALUATION - 'INDISCORE' => "indiScore©", - 'INDISCORE2' => "Rapport synthetique", - 'INDISCORE3' => "Rapport complet", - 'INDISCOREP' => "indiScore+", - 'INDISCORE2P' => "Rapport synthetique+", - 'INDISCORE3P' => "Rapport complet+", - 'VALORISATION' => "Valorisation", - 'SCORECSF' => "Score CSF", - 'ENQUETEC' => "Enquête commerciale", - 'AVISCREDIT' => "Avis de crédit personnalisé", - - //PIECES - 'KBIS' => "Extrait RCS", - 'ACTES' => "Pièces officielles", - 'PRIVILEGES' => "Privilèges", - - //SURVEILLANCES - 'SURVANNONCE' => "Surveillance des annonces légales", - 'SURVINSEE' => "Surveillance des événements INSEE", - 'SURVBILAN' => "Surveillance des bilans saisies (liasse fiscale)", - 'SURVSCORE' => "Surveillance des événements sur le score", - 'SURVACTES' => "Surveillance des pieces officielles (comptes annuels, actes)", - 'SURVDIRIGEANTS'=> "Surveillance des dirigeants", - 'SURVPAIEMENTS' => "Surveillance des paiements", - 'SURVLIENS' => "Surveillance des liens financiers", - 'SURVPRIV' => "Surveillance des privilèges", - - //OPTIONS - 'MONPROFIL' => "Mon profil", - 'EDITION' => "Mode Edition", - 'PORTEFEUILLE' => "Portefeuille", - 'SURVLISTE' => "Liste des surveillances", - - //DIVERS - 'INTERNATIONAL' => "Recherche Internationale", - 'BDF' => "Banque de France", - 'WORLDCHECK' => "World-Check Risk Intelligence", - ); - - protected $listeCategory = array( - 'RECHERCHE' => array( - 'label' => "Recherche", - 'droits' => array('RECHCSV', 'IPARI', 'HISTOBODACC', 'INVESTIG', 'SEARCHENT', - 'SEARCHDIR', 'SEARCHACT'), - ), - 'IDENTITE' => array( - 'label' => "Identité", - 'droits' => array('IDENTITE','IDPROCOL', 'LIENS', 'ETABLISSEMENTS', 'GROUPE', - 'EVENINSEE', 'AVISINSEE'), - ), - 'DIRIGEANT' => array( - 'label' => "Dirigeant", - 'droits' => array('DIRIGEANTS','DIRIGEANTSOP', 'WORLDCHECK'), - ), - 'FINANCE' => array( - 'label' => 'Elements Financiers', - 'droits' => array('SYNTHESE','RATIOS','FLUX','LIASSE','LIASSEXLS', 'UPLOADBILAN', - 'BOURSE','BANQUE'), - ), - 'JURIDIQUE' => array( - 'label' => 'Elements Juridiques', - 'droits' => array('ANNONCES','INFOSREG','COMPETENCES','CONVENTIONS','MARQUES'), - ), - 'EVALUATION' => array( - 'label' => 'Evaluation', - 'droits' => array('INDISCORE', 'INDISCORE2', 'INDISCORE3', 'INDISCOREP', 'INDISCORE2P', - 'INDISCORE3P','VALORISATION','ENQUETEC','AVISCREDIT'), - ), - 'PIECES' => array( - 'label' => 'Pièces officielles', - 'droits' => array('KBIS', 'ACTES', 'PRIVILEGES'), - ), - 'SURVEILLANCES' => array( - 'label' => 'Surveillances', - 'droits' => array('SURVANNONCE', 'SURVINSEE', 'SURVBILAN', 'SURVSCORE', 'SURVACTES', - 'SURVDIRIGEANTS', 'SURVPAIEMENTS', 'SURVLIENS', 'SURVPRIV', - ), - ), - 'OPTIONS' => array( - 'label' => 'Options', - 'droits' => array('MONPROFIL','SURVLISTE','PORTEFEUILLE','EDITION'), - ), - 'DIVERS' => array( - 'label' => 'Divers', - 'droits' => array('INTERNATIONAL', 'BDF'), - ), - ); - - /** - * List preferences - * @var array - */ - protected $listePrefs = array( - 'NAF4' => "Afficher les anciens NAF", - 'NACE' => "Afficher les codes NACES", - 'NEWS' => "Afficher les news Google©", - 'MAPPY' => "Afficher les façades d'immeubles", - 'CARTES' => "Afficher les cartes et les plans", - 'VOIRSURV' => "Afficher les entités sous surveillances", - 'DEMANDEREF' => "Demande de référence par defaut", - 'RECHREF' => "Afficher le formulaire de recherche par référence", - ); - - /** - * List logs for facturation - * @var array - */ - protected $logs = array( - 'identite' => array( - 'label' => "Identité" - ), - 'liens' => array( - 'label' => "Liens Inter-Entreprise" - ), - 'etablissements' => array( - 'label' => "Etablissements" - ), - 'dirigeants' => array( - 'label' => "Dirigeants" - ), - 'annonces' => array( - 'label' => "Annonces légales", - ), - 'indiscore' => array( - 'label' => "Indiscore", - ), - 'indiscorep' => array( - 'label' => "Indiscore+", - ), - 'indiscore2' => array( - 'label' => "Rapport", - ), - 'indiscore2p' => array( - 'label' => "Rapport avec suivi", - ), - 'indiscore3' => array( - 'label' => "Rapport complet", - ), - 'indiscore3p' => array( - 'label' => "Rapport complet avec suivi", - ), - 'evenements' => array( - 'label' => "Modifications Insee", - ), - 'tva' => array( - 'label' => "Modifications Insee", - ), - 'infosreg' => array( - 'label' => "Informations réglementées", - ), - 'bourse' => array( - 'label' => "Information boursière" - ), - 'bilan' => array( - 'label' => "Liasse fiscale", - ), - 'sirenExiste' => array( - 'label' => "Controle du SIREN", - ), - 'ratios' => array( - 'label' => "Ratios", - ), - 'rapport1' => array( - 'label' => "Rapport complet 1", - ), - 'rapport2' => array( - 'label' => "Rapport complet 2", - ), - 'rapport3' => array( - 'label' => "Rapport complet 3", - ), - 'banque' => array( - 'label' => "Relations banquaires", - ), - 'competences' => array( - 'label' => "Competences territoriales", - ), - 'privdetail' => array( - 'label' => "Détails des privilèges", - ), - 'privcumul' => array( - 'label' => "Privilèges cumulés", - ), - 'conventions' => array( - 'label' => "Conventions collectives", - ), - 'marques' => array( - 'label' => "Marques déposés", - ), - 'kbis' => array( - 'label' => "Extrait RCS", - ), - 'dirigeantsop' => array( - 'label' => "Dirigeants opérationels", - ), - 'groupesarbo' => array( - 'label' => "Arborescence de groupes", - ), - 'groupeinfos' => array( - 'label' => "Informations groupe", - ), - 'valorisation' => array( - 'label' => "Valorisation", - ), - ); - - /** - * List of error code send as SoapFault - * @var unknown_type - */ - public $listError = array( - '0900' => "Identifiant ou mot de passe incorrect", - '0901' => "Accès WS non authorisé pour cet utilisateur", - '0902' => "Méthode non authorisée dans votre profil", - '0903' => "Période d'accès au service invalide", - '0904' => "Adresse IP Invalide", - '1010' => 'Siren invalide', - '1011' => 'Identifiant invalide', - '1020' => 'Siren inexistant', - '1021' => 'Type d\'identifiant inexistant', - '1030' => 'Aucun résultat pour ce siren en base', - '3000' => 'Service disponible', - '9000' => 'Service S&D indisponible', - '9001' => 'Service partenaire indisponible', - '9002' => 'Méthode provisoirement indisponible', - '9003' => 'Version du service désactivé', - '9004' => 'Version du service inexistant', - '9010' => 'Fichier indisponible', - '9020' => 'Requête incorrecte', - ); - - public function __construct() - { - defined('DATETIME') - || define ('DATETIME', date('YmdHis')); - - defined('DATE') - || define ('DATE', substr(DATETIME,0,8)); - - defined('TIME') - || define ('TIME', substr(DATETIME,8,6)); - - defined('DATE_LISIBLE') - || define ('DATE_LISIBLE', substr(DATETIME,6,2).'/'.substr(DATETIME,4,2).'/'.substr(DATETIME,0,4)); - - defined('TIME_LISIBLE') - || define ('TIME_LISIBLE', substr(DATETIME,8,2).':'.substr(DATETIME,10,2).':'.substr(DATETIME,12,2)); - } - - /** - * Send SoapFault with code and messade define - * @param string $code - * @throws SoapFault - */ - protected function sendError($code) - { - $message = 'Erreur inconnue'; - if (array_key_exists($code, $this->listError)){ - $message = $this->listError[$code]; - } - throw new SoapFault($code,$message); - exit; - } - - /** - * Enregistre l'appel utilisateur à une méthode - * @param $service - * @param $siret - * @param $ref - * @return void - */ - protected function wsLog($service, $siret='', $ref='') - { - $iDbCrm = new WDB('sdv1'); - - //Is it a test - if ($this->tabInfoUser['clientTest']=='Oui' || $this->tabInfoUser['typeCompte']=='TEST') { - $test=1; - } else { - $test=0; - } - - //Get login service - $sql = "SELECT * FROM utilisateurs_service WHERE login='".$this->tabInfoUser['login']."'"; - $result = $iDbCrm->query($sql); - if ( mysql_num_rows($result) == 0 ) { - $loginService = 'default'; - } else { - $row = mysql_fetch_assoc($result); - $loginService = $row['serviceCode']; - } - - //Update count access to a service - $sql = "UPDATE logsCount SET conso=conso+1 WHERE jour=CURDATE() AND idClient=".$this->tabInfoUser['idClient']. - " AND service='".$loginService."' AND log='".$service."'"; - $iDbCrm->query($sql); - $updateOk = $iDbCrm->getAffectedRows(); - //If not insert - if ($updateOk==0) { - $sql = "INSERT INTO logsCount (jour, idClient, service, log, conso) ". - "VALUES (NOW(), ".$this->tabInfoUser['idClient'].", '".$loginService."', '".$service."', 1) "; - $iDbCrm->query($sql); - } - - if (strlen($siret)==14) { - $siren = substr($siret,0,9); - $nic = substr($siret,9,5); - } elseif (strlen($siret)==9) { - $siren=$siret; - $nic=''; - } - - $rs = ''; - $cp = ''; - $vil = ''; - - $tabRdvInsee = array(); - if ( in_array($service, array('identite', 'greffe_bilans', 'greffe_actes', 'liens', - 'dirigeants', 'etablissements', 'dirigeantsOp', 'kbis', 'indiscore', 'indiscore2', - 'indiscore3', 'rapport2', 'rapport3')) ) { - - if (intval($siren)>1000 && intval($nic)>9) $strNic=" AND nic=$nic "; - elseif (intval($siren)==0 && $ref>0) $strNic=" AND id=$ref "; - elseif (intval($siren)>1000) $strNic=" AND siege=1 ORDER BY actif DESC, nic DESC "; - else return; - - $rep = $iDbCrm->select('jo.etablissements', - 'siren, nic, actif, siege, raisonSociale, adr_cp, adr_ville, source', - "siren=$siren $strNic", false, MYSQL_ASSOC); - if ( count($rep)>0 ) { - $tabRep = $rep[0]; - $rs = $tabRep['raisonSociale']; - $cp = $tabRep['adr_cp']; - $vil = $tabRep['adr_ville']; - $tabRdvInsee['source']=$tabRep['source']; - if ( $tabRep['actif']==0 ) - $tabRdvInsee['actifInsee']=0; - elseif ( intval($siren)>1000 ) { - $tabRdvInsee['actifInsee']=1; - $rep=$iDbCrm->select('jo.rncs_entrep', 'count(*) AS nb', "siren=$siren", false, MYSQL_ASSOC); - $tabRep=$rep[0]; - if ($tabRep['nb']>0) $tabRdvInsee['source']=5; - } - } - } - - $tabInsert = array( - 'login' => $this->tabInfoUser['login'], - 'idClient' => $this->tabInfoUser['idClient'], - 'page' => $service, - 'siren' => $siren, - 'nic' => $nic, - 'params' => $ref, - 'test' => $test, - 'raisonSociale' => $rs, - 'cp' => $cp, - 'ville' => $vil, - 'ipClient' => $this->tabInfoUser['ipConnexion'], - ); - $rep = $iDbCrm->insert('logs', array_merge($tabInsert,$tabRdvInsee), false, true); - } - - /** - * Retourne une erreur soap lors d'une mauvaise authentification - * @throws SoapFault - */ - protected function authenticate() - { - $auth = $this->checkAuth($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW'], $_SERVER['REMOTE_ADDR']); - if ( $auth === false ) { - $this->sendError('0900'); - } elseif ( $auth !== true ) { - $this->sendError($auth); - } - } - - protected function permission($perm) - { - if ( !$this->checkPerm($perm) ){ - $this->sendError('0902'); - } - } - - - protected function checkLimit($log) - { - //Get login service - $sql = "SELECT * FROM utilisateurs_service WHERE login='".$this->tabInfoUser['login']."'"; - $result = $iDbCrm->query($sql); - if ( mysql_num_rows($result) == 0 ) { - $loginService = 'default'; - } else { - $row = mysql_fetch_assoc($result); - $loginService = $row['serviceCode']; - } - - //Read if client has pricing for this service - $pricing = $iDbCrm->select('clients_tarifs', 'login, service', - "log='".$log."' AND idClient=" . $this->tabInfoUser['idClient'] . - " AND service='".$loginService."'" . - " ORDER BY dateDebut DESC LIMIT 1"); - - if ( count($pricing)>0 ) { - //Limit - } - } - - /** - * Check if user has the right to access WebService - * @throws SoapFault - */ - protected function checkAccesWS() - { - //Vérifier que l'utilisateur à le droit accesWS (clients/utilisateurs) - $accesWs = $this->tabInfoUser['accesWS']; - if ($accesWs){ - $this->sendError('0901'); - } - } - - /** - * Check if the user has the right to acces this functionality - * @param string $perm - * @throws SoapFault - */ - protected function checkPerm($perm) - { - $droits = $this->tabInfoUser['droits']; - $output = false; - if ( preg_match('/\b'.$perm.'\b/i', $droits) ){ - $output = true; - } - return $output; - } - - /** - * Check if the user could edit data - */ - protected function checkEdition() - { - if ($this->tabInfoUser['idClient']==1) - return true; - - if ($this->checkPerm('edition')) - return true; - - return false; - } - - - /** - * checkAuth - * @param string $login - * @param string $password - * @param string $ipConnexion - * @return mixed - */ - protected function checkAuth($login, $password, $ipConnexion) - { - $userM = new Application_Model_Sdv1Utilisateurs(); - $sql = $userM->select() - ->setIntegrityCheck(false) - ->from(array('u'=>'utilisateurs'), array( - 'u.login', 'u.id', 'u.email', 'u.password', 'u.idClient', 'u.typeCompte', 'u.actif', - 'u.filtre_ip', 'u.profil', 'u.civilite', 'u.nom', 'u.prenom', 'u.tel', 'u.fax', - 'u.mobile', 'u.pref', 'u.rechRefType', 'u.profil', 'u.nombreConnexions', - 'u.dateDerniereConnexion', 'u.droits', 'u.referenceParDefaut', 'u.nbReponses', 'u.lang', - 'u.formatMail', 'u.dateDebutCompte', 'u.dateFinCompte', 'u.accesWS', 'u.acceptationCGU')) - ->join(array('c'=>'clients'), 'u.idClient = c.id', array( - 'c.droits AS droitsClients', 'c.test AS clientTest', 'c.typeScore', 'c.timeout', - )) - ->where('u.login=?', $login) - ->where('u.actif=?', 1) - ->where('u.deleted=?', 0) - ->where('c.actif=?','Oui'); - - $result = $userM->fetchRow($sql); - - if ( null === $result ) { - debugLog('W',"CheckAuth $login/$password inexistant ou inactif (IP=$ipConnexion)", __LINE__,__FILE__, __FUNCTION__, __CLASS__); - return false; - } - - // Check password with database informations - if ( $result->password == $password //password sent in clear - || md5($result->password) == $password //password sent with md5 - || md5($result->login.'|'.$result->password) == $password //password sent concat with login and crypt by md5 - // Block access with IPs - || ( substr($password,0,7)=='iponly:' - && !empty($result->filtre_ip) - && checkPlagesIp($result->filtre_ip, substr($password,7))) ) { - - $timeout = $result->timeout; - if ($timeout==0) $timeout = 1800; - $this->tabInfoUser = array( - 'login' => $result->login, - 'id' => $result->id, - 'civilite' => $result->civilite, - 'nom' => $result->nom, - 'prenom' => $result->prenom, - 'tel' => $result->tel, - 'fax' => $result->fax, - 'mobile' => $result->mobile, - 'email' => $result->email, - 'typeCompte' => $result->typeCompte, - 'idClient' => $result->idClient, - 'filtre_ip' => $result->filtre_ip, - 'ipConnexion' => $ipConnexion, - 'pref' => $result->pref, - 'rechRefType' => $result->rechRefType, - 'profil' => $result->profil, - 'nombreConnexions' => $result->nombreConnexions, - 'dateDerniereConnexion' => $result->dateDerniereConnexion, - 'droits' => $result->droits, - 'droitsClients' => $result->droitsClients, - 'timeout' => $timeout, - 'clientTest' => $result->clientTest, - 'typeScore' => $result->typeScore, - 'nbReponses' => $result->nbReponses, - 'lang' => $result->lang, - 'formatMail' => $result->formatMail, - 'referenceParDefaut' => $result->referenceParDefaut, - 'dateDebutCompte' => $result->dateDebutCompte, - 'dateFinCompte' => $result->dateFinCompte, - 'acceptationCGU' => $result->acceptationCGU - ); - debugLog('W',"CheckAuth $login/$password OK", __LINE__,__FILE__, __FUNCTION__, __CLASS__); - - /** - * Date de debut de compte - */ - if ( !empty($result->dateDebutCompte) && $result->dateDebutCompte!='0000-00-00' ) { - $today = mktime(0, 0, 0, date('m'), date('d'), date('Y')); - $dateDebutCompte = mktime(0, 0, 0, substr($result->dateDebutCompte,5,2), substr($result->dateDebutCompte,8,2), substr($result->dateDebutCompte,0,4)); - if ( $today < $dateDebutCompte ) { - return '0903'; - } - } - - /** - * Date de fin de compte - */ - if ( !empty($result->dateFinCompte) && $result->dateFinCompte!='0000-00-00' ) { - $today = mktime(0, 0, 0, date('m'), date('d'), date('Y')); - $dateFinCompte = mktime(0, 0, 0, substr($result->dateFinCompte,5,2), substr($result->dateFinCompte,8,2), substr($result->dateFinCompte,0,4)); - if ( $today > $dateFinCompte) { - return '0903'; - } - } - - /** - * Acces WS, block access to other apps - */ - if ($result->accesWS==1 && $result->idClient!=1) { - - // Webservice user don't need access to others apps - if ( in_array($ipConnexion, $this->listApplicationIp) && $tabRep['idClient']!=1 ) { - - return '0901'; - - } elseif ($ipConnexion!='127.0.0.1') { - - // For customized version, check user is in the good service - $clients = include APPLICATION_PATH . '/../library/WsScore/Clients/ClientsConfig.php'; - foreach( $clients as $section => $params ){ - if ($params['actif']) { - $wsClients[$params['idClient']] = $section; - } - } - if ( array_key_exists($this->tabInfoUser['idClient'], $wsClients) - && ( $this->serviceClient == false - || strtolower($this->serviceClientName)!=$wsClients[$this->tabInfoUser['idClient']] ) ){ - return '0901'; - } - - } - } - return true; - - } - debugLog('W',"CheckAuth $login/$password incorrect (IP=$ipConnexion)", __LINE__,__FILE__, __FUNCTION__, __CLASS__); - return false; - } -} \ No newline at end of file diff --git a/library/WsScore/functions.php b/library/WsScore/functions.php deleted file mode 100644 index 661b62d1..00000000 --- a/library/WsScore/functions.php +++ /dev/null @@ -1,86 +0,0 @@ - $val) - { - if (is_array($val)){ - $data->$key = array_to_object($val); - } else { - $data->$key = $val; - } - } - } else { - $data = $tab; - } - return $data ; -} - -function arrayToClass($element, $className) -{ - //file_put_contents('class.log', "class = $className\n", FILE_APPEND); - $class = new ReflectionClass($className); - $data = new stdClass; - foreach ($class->getProperties() as $property) - { - if ($property->isPublic() && preg_match_all('/@var\s+([^\s]+)/m', $property->getDocComment(), $matches)) - { - $name = $property->getName(); - $type = $matches[1][0]; - //file_put_contents('class.log', "property = $name, $type\n", FILE_APPEND); - //Traitement des types ArrayOf - if (substr($type, -2) == '[]') { - $type = substr($type, 0, strlen($type)-2); - $arrayOf = array(); - //file_put_contents('class.log', "ArrayOf ".count($element[$name])." elements, $type\n", FILE_APPEND); - if (count($element[$name])>0) { - foreach($element[$name] as $index => $elementArrayOf){ - //file_put_contents('class.log', "array = $index, $type\n", FILE_APPEND); - if (in_array($type, array('string', 'str', 'float', 'double', 'int', 'integer', 'bool', 'boolean'))){ - $arrayOf[$index] = $elementArrayOf; - } else { - $arrayOf[$index] = arrayToClass($elementArrayOf, $type); - } - } - } - $data->$name = $arrayOf; - } - //Traitement des types complexes - elseif (class_exists($type)) - { - $data->$name = arrayToClass($element[$name], $type); - } - // Assignation valeur - elseif (isset($element[$name]) && !empty($element[$name])) - { - //file_put_contents('class.log', "value = $element[$name]\n", FILE_APPEND); - $data->$name = $element[$name]; - } - // Déclaration element avec valeur par défaut pour ne pas provoquer d'erreur - else - { - if (in_array($type, array('string', 'str'))){ - $data->$name = ''; - } elseif (in_array($type, array('float', 'double', 'int', 'integer'))) { - $data->$name = 0; - } elseif (in_array($type, array('bool', 'boolean'))) { - $data->$name = false; - } - //file_put_contents('class.log', "value = default\n", FILE_APPEND); - } - } - } - return $data ; -} - -function isNumericArray($tab) -{ - $keys = array_keys($tab); - if (is_numeric($keys[0])){ - return true; - } else { - return false; - } -} \ No newline at end of file diff --git a/library/Zend/Acl.php b/library/Zend/Acl.php deleted file mode 100644 index cc6de6b9..00000000 --- a/library/Zend/Acl.php +++ /dev/null @@ -1,1242 +0,0 @@ - array( - 'allRoles' => array( - 'allPrivileges' => array( - 'type' => self::TYPE_DENY, - 'assert' => null - ), - 'byPrivilegeId' => array() - ), - 'byRoleId' => array() - ), - 'byResourceId' => array() - ); - - /** - * Adds a Role having an identifier unique to the registry - * - * The $parents parameter may be a reference to, or the string identifier for, - * a Role existing in the registry, or $parents may be passed as an array of - * these - mixing string identifiers and objects is ok - to indicate the Roles - * from which the newly added Role will directly inherit. - * - * In order to resolve potential ambiguities with conflicting rules inherited - * from different parents, the most recently added parent takes precedence over - * parents that were previously added. In other words, the first parent added - * will have the least priority, and the last parent added will have the - * highest priority. - * - * @param Zend_Acl_Role_Interface|string $role - * @param Zend_Acl_Role_Interface|string|array $parents - * @uses Zend_Acl_Role_Registry::add() - * @return Zend_Acl Provides a fluent interface - */ - public function addRole($role, $parents = null) - { - if (is_string($role)) { - $role = new Zend_Acl_Role($role); - } - - if (!$role instanceof Zend_Acl_Role_Interface) { - require_once 'Zend/Acl/Exception.php'; - throw new Zend_Acl_Exception('addRole() expects $role to be of type Zend_Acl_Role_Interface'); - } - - - $this->_getRoleRegistry()->add($role, $parents); - - return $this; - } - - /** - * Returns the identified Role - * - * The $role parameter can either be a Role or Role identifier. - * - * @param Zend_Acl_Role_Interface|string $role - * @uses Zend_Acl_Role_Registry::get() - * @return Zend_Acl_Role_Interface - */ - public function getRole($role) - { - return $this->_getRoleRegistry()->get($role); - } - - /** - * Returns true if and only if the Role exists in the registry - * - * The $role parameter can either be a Role or a Role identifier. - * - * @param Zend_Acl_Role_Interface|string $role - * @uses Zend_Acl_Role_Registry::has() - * @return boolean - */ - public function hasRole($role) - { - return $this->_getRoleRegistry()->has($role); - } - - /** - * Returns true if and only if $role inherits from $inherit - * - * Both parameters may be either a Role or a Role identifier. If - * $onlyParents is true, then $role must inherit directly from - * $inherit in order to return true. By default, this method looks - * through the entire inheritance DAG to determine whether $role - * inherits from $inherit through its ancestor Roles. - * - * @param Zend_Acl_Role_Interface|string $role - * @param Zend_Acl_Role_Interface|string $inherit - * @param boolean $onlyParents - * @uses Zend_Acl_Role_Registry::inherits() - * @return boolean - */ - public function inheritsRole($role, $inherit, $onlyParents = false) - { - return $this->_getRoleRegistry()->inherits($role, $inherit, $onlyParents); - } - - /** - * Removes the Role from the registry - * - * The $role parameter can either be a Role or a Role identifier. - * - * @param Zend_Acl_Role_Interface|string $role - * @uses Zend_Acl_Role_Registry::remove() - * @return Zend_Acl Provides a fluent interface - */ - public function removeRole($role) - { - $this->_getRoleRegistry()->remove($role); - - if ($role instanceof Zend_Acl_Role_Interface) { - $roleId = $role->getRoleId(); - } else { - $roleId = $role; - } - - foreach ($this->_rules['allResources']['byRoleId'] as $roleIdCurrent => $rules) { - if ($roleId === $roleIdCurrent) { - unset($this->_rules['allResources']['byRoleId'][$roleIdCurrent]); - } - } - foreach ($this->_rules['byResourceId'] as $resourceIdCurrent => $visitor) { - if (array_key_exists('byRoleId', $visitor)) { - foreach ($visitor['byRoleId'] as $roleIdCurrent => $rules) { - if ($roleId === $roleIdCurrent) { - unset($this->_rules['byResourceId'][$resourceIdCurrent]['byRoleId'][$roleIdCurrent]); - } - } - } - } - - return $this; - } - - /** - * Removes all Roles from the registry - * - * @uses Zend_Acl_Role_Registry::removeAll() - * @return Zend_Acl Provides a fluent interface - */ - public function removeRoleAll() - { - $this->_getRoleRegistry()->removeAll(); - - foreach ($this->_rules['allResources']['byRoleId'] as $roleIdCurrent => $rules) { - unset($this->_rules['allResources']['byRoleId'][$roleIdCurrent]); - } - foreach ($this->_rules['byResourceId'] as $resourceIdCurrent => $visitor) { - foreach ($visitor['byRoleId'] as $roleIdCurrent => $rules) { - unset($this->_rules['byResourceId'][$resourceIdCurrent]['byRoleId'][$roleIdCurrent]); - } - } - - return $this; - } - - /** - * Adds a Resource having an identifier unique to the ACL - * - * The $parent parameter may be a reference to, or the string identifier for, - * the existing Resource from which the newly added Resource will inherit. - * - * @param Zend_Acl_Resource_Interface|string $resource - * @param Zend_Acl_Resource_Interface|string $parent - * @throws Zend_Acl_Exception - * @return Zend_Acl Provides a fluent interface - */ - public function addResource($resource, $parent = null) - { - if (is_string($resource)) { - $resource = new Zend_Acl_Resource($resource); - } - - if (!$resource instanceof Zend_Acl_Resource_Interface) { - require_once 'Zend/Acl/Exception.php'; - throw new Zend_Acl_Exception('addResource() expects $resource to be of type Zend_Acl_Resource_Interface'); - } - - $resourceId = $resource->getResourceId(); - - if ($this->has($resourceId)) { - require_once 'Zend/Acl/Exception.php'; - throw new Zend_Acl_Exception("Resource id '$resourceId' already exists in the ACL"); - } - - $resourceParent = null; - - if (null !== $parent) { - try { - if ($parent instanceof Zend_Acl_Resource_Interface) { - $resourceParentId = $parent->getResourceId(); - } else { - $resourceParentId = $parent; - } - $resourceParent = $this->get($resourceParentId); - } catch (Zend_Acl_Exception $e) { - require_once 'Zend/Acl/Exception.php'; - throw new Zend_Acl_Exception("Parent Resource id '$resourceParentId' does not exist", 0, $e); - } - $this->_resources[$resourceParentId]['children'][$resourceId] = $resource; - } - - $this->_resources[$resourceId] = array( - 'instance' => $resource, - 'parent' => $resourceParent, - 'children' => array() - ); - - return $this; - } - - /** - * Adds a Resource having an identifier unique to the ACL - * - * The $parent parameter may be a reference to, or the string identifier for, - * the existing Resource from which the newly added Resource will inherit. - * - * @deprecated in version 1.9.1 and will be available till 2.0. New code - * should use addResource() instead. - * - * @param Zend_Acl_Resource_Interface $resource - * @param Zend_Acl_Resource_Interface|string $parent - * @throws Zend_Acl_Exception - * @return Zend_Acl Provides a fluent interface - */ - public function add(Zend_Acl_Resource_Interface $resource, $parent = null) - { - return $this->addResource($resource, $parent); - } - - /** - * Returns the identified Resource - * - * The $resource parameter can either be a Resource or a Resource identifier. - * - * @param Zend_Acl_Resource_Interface|string $resource - * @throws Zend_Acl_Exception - * @return Zend_Acl_Resource_Interface - */ - public function get($resource) - { - if ($resource instanceof Zend_Acl_Resource_Interface) { - $resourceId = $resource->getResourceId(); - } else { - $resourceId = (string) $resource; - } - - if (!$this->has($resource)) { - require_once 'Zend/Acl/Exception.php'; - throw new Zend_Acl_Exception("Resource '$resourceId' not found"); - } - - return $this->_resources[$resourceId]['instance']; - } - - /** - * Returns true if and only if the Resource exists in the ACL - * - * The $resource parameter can either be a Resource or a Resource identifier. - * - * @param Zend_Acl_Resource_Interface|string $resource - * @return boolean - */ - public function has($resource) - { - if ($resource instanceof Zend_Acl_Resource_Interface) { - $resourceId = $resource->getResourceId(); - } else { - $resourceId = (string) $resource; - } - - return isset($this->_resources[$resourceId]); - } - - /** - * Returns true if and only if $resource inherits from $inherit - * - * Both parameters may be either a Resource or a Resource identifier. If - * $onlyParent is true, then $resource must inherit directly from - * $inherit in order to return true. By default, this method looks - * through the entire inheritance tree to determine whether $resource - * inherits from $inherit through its ancestor Resources. - * - * @param Zend_Acl_Resource_Interface|string $resource - * @param Zend_Acl_Resource_Interface|string $inherit - * @param boolean $onlyParent - * @throws Zend_Acl_Resource_Registry_Exception - * @return boolean - */ - public function inherits($resource, $inherit, $onlyParent = false) - { - try { - $resourceId = $this->get($resource)->getResourceId(); - $inheritId = $this->get($inherit)->getResourceId(); - } catch (Zend_Acl_Exception $e) { - require_once 'Zend/Acl/Exception.php'; - throw new Zend_Acl_Exception($e->getMessage(), $e->getCode(), $e); - } - - if (null !== $this->_resources[$resourceId]['parent']) { - $parentId = $this->_resources[$resourceId]['parent']->getResourceId(); - if ($inheritId === $parentId) { - return true; - } else if ($onlyParent) { - return false; - } - } else { - return false; - } - - while (null !== $this->_resources[$parentId]['parent']) { - $parentId = $this->_resources[$parentId]['parent']->getResourceId(); - if ($inheritId === $parentId) { - return true; - } - } - - return false; - } - - /** - * Removes a Resource and all of its children - * - * The $resource parameter can either be a Resource or a Resource identifier. - * - * @param Zend_Acl_Resource_Interface|string $resource - * @throws Zend_Acl_Exception - * @return Zend_Acl Provides a fluent interface - */ - public function remove($resource) - { - try { - $resourceId = $this->get($resource)->getResourceId(); - } catch (Zend_Acl_Exception $e) { - require_once 'Zend/Acl/Exception.php'; - throw new Zend_Acl_Exception($e->getMessage(), $e->getCode(), $e); - } - - $resourcesRemoved = array($resourceId); - if (null !== ($resourceParent = $this->_resources[$resourceId]['parent'])) { - unset($this->_resources[$resourceParent->getResourceId()]['children'][$resourceId]); - } - foreach ($this->_resources[$resourceId]['children'] as $childId => $child) { - $this->remove($childId); - $resourcesRemoved[] = $childId; - } - - foreach ($resourcesRemoved as $resourceIdRemoved) { - foreach ($this->_rules['byResourceId'] as $resourceIdCurrent => $rules) { - if ($resourceIdRemoved === $resourceIdCurrent) { - unset($this->_rules['byResourceId'][$resourceIdCurrent]); - } - } - } - - unset($this->_resources[$resourceId]); - - return $this; - } - - /** - * Removes all Resources - * - * @return Zend_Acl Provides a fluent interface - */ - public function removeAll() - { - foreach ($this->_resources as $resourceId => $resource) { - foreach ($this->_rules['byResourceId'] as $resourceIdCurrent => $rules) { - if ($resourceId === $resourceIdCurrent) { - unset($this->_rules['byResourceId'][$resourceIdCurrent]); - } - } - } - - $this->_resources = array(); - - return $this; - } - - /** - * Adds an "allow" rule to the ACL - * - * @param Zend_Acl_Role_Interface|string|array $roles - * @param Zend_Acl_Resource_Interface|string|array $resources - * @param string|array $privileges - * @param Zend_Acl_Assert_Interface $assert - * @uses Zend_Acl::setRule() - * @return Zend_Acl Provides a fluent interface - */ - public function allow($roles = null, $resources = null, $privileges = null, Zend_Acl_Assert_Interface $assert = null) - { - return $this->setRule(self::OP_ADD, self::TYPE_ALLOW, $roles, $resources, $privileges, $assert); - } - - /** - * Adds a "deny" rule to the ACL - * - * @param Zend_Acl_Role_Interface|string|array $roles - * @param Zend_Acl_Resource_Interface|string|array $resources - * @param string|array $privileges - * @param Zend_Acl_Assert_Interface $assert - * @uses Zend_Acl::setRule() - * @return Zend_Acl Provides a fluent interface - */ - public function deny($roles = null, $resources = null, $privileges = null, Zend_Acl_Assert_Interface $assert = null) - { - return $this->setRule(self::OP_ADD, self::TYPE_DENY, $roles, $resources, $privileges, $assert); - } - - /** - * Removes "allow" permissions from the ACL - * - * @param Zend_Acl_Role_Interface|string|array $roles - * @param Zend_Acl_Resource_Interface|string|array $resources - * @param string|array $privileges - * @uses Zend_Acl::setRule() - * @return Zend_Acl Provides a fluent interface - */ - public function removeAllow($roles = null, $resources = null, $privileges = null) - { - return $this->setRule(self::OP_REMOVE, self::TYPE_ALLOW, $roles, $resources, $privileges); - } - - /** - * Removes "deny" restrictions from the ACL - * - * @param Zend_Acl_Role_Interface|string|array $roles - * @param Zend_Acl_Resource_Interface|string|array $resources - * @param string|array $privileges - * @uses Zend_Acl::setRule() - * @return Zend_Acl Provides a fluent interface - */ - public function removeDeny($roles = null, $resources = null, $privileges = null) - { - return $this->setRule(self::OP_REMOVE, self::TYPE_DENY, $roles, $resources, $privileges); - } - - /** - * Performs operations on ACL rules - * - * The $operation parameter may be either OP_ADD or OP_REMOVE, depending on whether the - * user wants to add or remove a rule, respectively: - * - * OP_ADD specifics: - * - * A rule is added that would allow one or more Roles access to [certain $privileges - * upon] the specified Resource(s). - * - * OP_REMOVE specifics: - * - * The rule is removed only in the context of the given Roles, Resources, and privileges. - * Existing rules to which the remove operation does not apply would remain in the - * ACL. - * - * The $type parameter may be either TYPE_ALLOW or TYPE_DENY, depending on whether the - * rule is intended to allow or deny permission, respectively. - * - * The $roles and $resources parameters may be references to, or the string identifiers for, - * existing Resources/Roles, or they may be passed as arrays of these - mixing string identifiers - * and objects is ok - to indicate the Resources and Roles to which the rule applies. If either - * $roles or $resources is null, then the rule applies to all Roles or all Resources, respectively. - * Both may be null in order to work with the default rule of the ACL. - * - * The $privileges parameter may be used to further specify that the rule applies only - * to certain privileges upon the Resource(s) in question. This may be specified to be a single - * privilege with a string, and multiple privileges may be specified as an array of strings. - * - * If $assert is provided, then its assert() method must return true in order for - * the rule to apply. If $assert is provided with $roles, $resources, and $privileges all - * equal to null, then a rule having a type of: - * - * TYPE_ALLOW will imply a type of TYPE_DENY, and - * - * TYPE_DENY will imply a type of TYPE_ALLOW - * - * when the rule's assertion fails. This is because the ACL needs to provide expected - * behavior when an assertion upon the default ACL rule fails. - * - * @param string $operation - * @param string $type - * @param Zend_Acl_Role_Interface|string|array $roles - * @param Zend_Acl_Resource_Interface|string|array $resources - * @param string|array $privileges - * @param Zend_Acl_Assert_Interface $assert - * @throws Zend_Acl_Exception - * @uses Zend_Acl_Role_Registry::get() - * @uses Zend_Acl::get() - * @return Zend_Acl Provides a fluent interface - */ - public function setRule($operation, $type, $roles = null, $resources = null, $privileges = null, - Zend_Acl_Assert_Interface $assert = null) - { - // ensure that the rule type is valid; normalize input to uppercase - $type = strtoupper($type); - if (self::TYPE_ALLOW !== $type && self::TYPE_DENY !== $type) { - require_once 'Zend/Acl/Exception.php'; - throw new Zend_Acl_Exception("Unsupported rule type; must be either '" . self::TYPE_ALLOW . "' or '" - . self::TYPE_DENY . "'"); - } - - // ensure that all specified Roles exist; normalize input to array of Role objects or null - if (!is_array($roles)) { - $roles = array($roles); - } else if (0 === count($roles)) { - $roles = array(null); - } - $rolesTemp = $roles; - $roles = array(); - foreach ($rolesTemp as $role) { - if (null !== $role) { - $roles[] = $this->_getRoleRegistry()->get($role); - } else { - $roles[] = null; - } - } - unset($rolesTemp); - - // ensure that all specified Resources exist; normalize input to array of Resource objects or null - if ($resources !== null) { - if (!is_array($resources)) { - $resources = array($resources); - } else if (0 === count($resources)) { - $resources = array(null); - } - $resourcesTemp = $resources; - $resources = array(); - foreach ($resourcesTemp as $resource) { - if (null !== $resource) { - $resources[] = $this->get($resource); - } else { - $resources[] = null; - } - } - unset($resourcesTemp, $resource); - } else { - $allResources = array(); // this might be used later if resource iteration is required - foreach ($this->_resources as $rTarget) { - $allResources[] = $rTarget['instance']; - } - unset($rTarget); - } - - // normalize privileges to array - if (null === $privileges) { - $privileges = array(); - } else if (!is_array($privileges)) { - $privileges = array($privileges); - } - - switch ($operation) { - - // add to the rules - case self::OP_ADD: - if ($resources !== null) { - // this block will iterate the provided resources - foreach ($resources as $resource) { - foreach ($roles as $role) { - $rules =& $this->_getRules($resource, $role, true); - if (0 === count($privileges)) { - $rules['allPrivileges']['type'] = $type; - $rules['allPrivileges']['assert'] = $assert; - if (!isset($rules['byPrivilegeId'])) { - $rules['byPrivilegeId'] = array(); - } - } else { - foreach ($privileges as $privilege) { - $rules['byPrivilegeId'][$privilege]['type'] = $type; - $rules['byPrivilegeId'][$privilege]['assert'] = $assert; - } - } - } - } - } else { - // this block will apply to all resources in a global rule - foreach ($roles as $role) { - $rules =& $this->_getRules(null, $role, true); - if (0 === count($privileges)) { - $rules['allPrivileges']['type'] = $type; - $rules['allPrivileges']['assert'] = $assert; - } else { - foreach ($privileges as $privilege) { - $rules['byPrivilegeId'][$privilege]['type'] = $type; - $rules['byPrivilegeId'][$privilege]['assert'] = $assert; - } - } - } - } - break; - - // remove from the rules - case self::OP_REMOVE: - if ($resources !== null) { - // this block will iterate the provided resources - foreach ($resources as $resource) { - foreach ($roles as $role) { - $rules =& $this->_getRules($resource, $role); - if (null === $rules) { - continue; - } - if (0 === count($privileges)) { - if (null === $resource && null === $role) { - if ($type === $rules['allPrivileges']['type']) { - $rules = array( - 'allPrivileges' => array( - 'type' => self::TYPE_DENY, - 'assert' => null - ), - 'byPrivilegeId' => array() - ); - } - continue; - } - - if (isset($rules['allPrivileges']['type']) && - $type === $rules['allPrivileges']['type']) - { - unset($rules['allPrivileges']); - } - } else { - foreach ($privileges as $privilege) { - if (isset($rules['byPrivilegeId'][$privilege]) && - $type === $rules['byPrivilegeId'][$privilege]['type']) - { - unset($rules['byPrivilegeId'][$privilege]); - } - } - } - } - } - } else { - // this block will apply to all resources in a global rule - foreach ($roles as $role) { - /** - * since null (all resources) was passed to this setRule() call, we need - * clean up all the rules for the global allResources, as well as the indivually - * set resources (per privilege as well) - */ - foreach (array_merge(array(null), $allResources) as $resource) { - $rules =& $this->_getRules($resource, $role, true); - if (null === $rules) { - continue; - } - if (0 === count($privileges)) { - if (null === $role) { - if ($type === $rules['allPrivileges']['type']) { - $rules = array( - 'allPrivileges' => array( - 'type' => self::TYPE_DENY, - 'assert' => null - ), - 'byPrivilegeId' => array() - ); - } - continue; - } - - if (isset($rules['allPrivileges']['type']) && $type === $rules['allPrivileges']['type']) { - unset($rules['allPrivileges']); - } - } else { - foreach ($privileges as $privilege) { - if (isset($rules['byPrivilegeId'][$privilege]) && - $type === $rules['byPrivilegeId'][$privilege]['type']) - { - unset($rules['byPrivilegeId'][$privilege]); - } - } - } - } - } - } - break; - - default: - require_once 'Zend/Acl/Exception.php'; - throw new Zend_Acl_Exception("Unsupported operation; must be either '" . self::OP_ADD . "' or '" - . self::OP_REMOVE . "'"); - } - - return $this; - } - - /** - * Returns true if and only if the Role has access to the Resource - * - * The $role and $resource parameters may be references to, or the string identifiers for, - * an existing Resource and Role combination. - * - * If either $role or $resource is null, then the query applies to all Roles or all Resources, - * respectively. Both may be null to query whether the ACL has a "blacklist" rule - * (allow everything to all). By default, Zend_Acl creates a "whitelist" rule (deny - * everything to all), and this method would return false unless this default has - * been overridden (i.e., by executing $acl->allow()). - * - * If a $privilege is not provided, then this method returns false if and only if the - * Role is denied access to at least one privilege upon the Resource. In other words, this - * method returns true if and only if the Role is allowed all privileges on the Resource. - * - * This method checks Role inheritance using a depth-first traversal of the Role registry. - * The highest priority parent (i.e., the parent most recently added) is checked first, - * and its respective parents are checked similarly before the lower-priority parents of - * the Role are checked. - * - * @param Zend_Acl_Role_Interface|string $role - * @param Zend_Acl_Resource_Interface|string $resource - * @param string $privilege - * @uses Zend_Acl::get() - * @uses Zend_Acl_Role_Registry::get() - * @return boolean - */ - public function isAllowed($role = null, $resource = null, $privilege = null) - { - // reset role & resource to null - $this->_isAllowedRole = null; - $this->_isAllowedResource = null; - $this->_isAllowedPrivilege = null; - - if (null !== $role) { - // keep track of originally called role - $this->_isAllowedRole = $role; - $role = $this->_getRoleRegistry()->get($role); - if (!$this->_isAllowedRole instanceof Zend_Acl_Role_Interface) { - $this->_isAllowedRole = $role; - } - } - - if (null !== $resource) { - // keep track of originally called resource - $this->_isAllowedResource = $resource; - $resource = $this->get($resource); - if (!$this->_isAllowedResource instanceof Zend_Acl_Resource_Interface) { - $this->_isAllowedResource = $resource; - } - } - - if (null === $privilege) { - // query on all privileges - do { - // depth-first search on $role if it is not 'allRoles' pseudo-parent - if (null !== $role && null !== ($result = $this->_roleDFSAllPrivileges($role, $resource, $privilege))) { - return $result; - } - - // look for rule on 'allRoles' psuedo-parent - if (null !== ($rules = $this->_getRules($resource, null))) { - foreach ($rules['byPrivilegeId'] as $privilege => $rule) { - if (self::TYPE_DENY === ($ruleTypeOnePrivilege = $this->_getRuleType($resource, null, $privilege))) { - return false; - } - } - if (null !== ($ruleTypeAllPrivileges = $this->_getRuleType($resource, null, null))) { - return self::TYPE_ALLOW === $ruleTypeAllPrivileges; - } - } - - // try next Resource - $resource = $this->_resources[$resource->getResourceId()]['parent']; - - } while (true); // loop terminates at 'allResources' pseudo-parent - } else { - $this->_isAllowedPrivilege = $privilege; - // query on one privilege - do { - // depth-first search on $role if it is not 'allRoles' pseudo-parent - if (null !== $role && null !== ($result = $this->_roleDFSOnePrivilege($role, $resource, $privilege))) { - return $result; - } - - // look for rule on 'allRoles' pseudo-parent - if (null !== ($ruleType = $this->_getRuleType($resource, null, $privilege))) { - return self::TYPE_ALLOW === $ruleType; - } else if (null !== ($ruleTypeAllPrivileges = $this->_getRuleType($resource, null, null))) { - return self::TYPE_ALLOW === $ruleTypeAllPrivileges; - } - - // try next Resource - $resource = $this->_resources[$resource->getResourceId()]['parent']; - - } while (true); // loop terminates at 'allResources' pseudo-parent - } - } - - /** - * Returns the Role registry for this ACL - * - * If no Role registry has been created yet, a new default Role registry - * is created and returned. - * - * @return Zend_Acl_Role_Registry - */ - protected function _getRoleRegistry() - { - if (null === $this->_roleRegistry) { - $this->_roleRegistry = new Zend_Acl_Role_Registry(); - } - return $this->_roleRegistry; - } - - /** - * Performs a depth-first search of the Role DAG, starting at $role, in order to find a rule - * allowing/denying $role access to all privileges upon $resource - * - * This method returns true if a rule is found and allows access. If a rule exists and denies access, - * then this method returns false. If no applicable rule is found, then this method returns null. - * - * @param Zend_Acl_Role_Interface $role - * @param Zend_Acl_Resource_Interface $resource - * @return boolean|null - */ - protected function _roleDFSAllPrivileges(Zend_Acl_Role_Interface $role, Zend_Acl_Resource_Interface $resource = null) - { - $dfs = array( - 'visited' => array(), - 'stack' => array() - ); - - if (null !== ($result = $this->_roleDFSVisitAllPrivileges($role, $resource, $dfs))) { - return $result; - } - - while (null !== ($role = array_pop($dfs['stack']))) { - if (!isset($dfs['visited'][$role->getRoleId()])) { - if (null !== ($result = $this->_roleDFSVisitAllPrivileges($role, $resource, $dfs))) { - return $result; - } - } - } - - return null; - } - - /** - * Visits an $role in order to look for a rule allowing/denying $role access to all privileges upon $resource - * - * This method returns true if a rule is found and allows access. If a rule exists and denies access, - * then this method returns false. If no applicable rule is found, then this method returns null. - * - * This method is used by the internal depth-first search algorithm and may modify the DFS data structure. - * - * @param Zend_Acl_Role_Interface $role - * @param Zend_Acl_Resource_Interface $resource - * @param array $dfs - * @return boolean|null - * @throws Zend_Acl_Exception - */ - protected function _roleDFSVisitAllPrivileges(Zend_Acl_Role_Interface $role, Zend_Acl_Resource_Interface $resource = null, - &$dfs = null) - { - if (null === $dfs) { - /** - * @see Zend_Acl_Exception - */ - require_once 'Zend/Acl/Exception.php'; - throw new Zend_Acl_Exception('$dfs parameter may not be null'); - } - - if (null !== ($rules = $this->_getRules($resource, $role))) { - foreach ($rules['byPrivilegeId'] as $privilege => $rule) { - if (self::TYPE_DENY === ($ruleTypeOnePrivilege = $this->_getRuleType($resource, $role, $privilege))) { - return false; - } - } - if (null !== ($ruleTypeAllPrivileges = $this->_getRuleType($resource, $role, null))) { - return self::TYPE_ALLOW === $ruleTypeAllPrivileges; - } - } - - $dfs['visited'][$role->getRoleId()] = true; - foreach ($this->_getRoleRegistry()->getParents($role) as $roleParentId => $roleParent) { - $dfs['stack'][] = $roleParent; - } - - return null; - } - - /** - * Performs a depth-first search of the Role DAG, starting at $role, in order to find a rule - * allowing/denying $role access to a $privilege upon $resource - * - * This method returns true if a rule is found and allows access. If a rule exists and denies access, - * then this method returns false. If no applicable rule is found, then this method returns null. - * - * @param Zend_Acl_Role_Interface $role - * @param Zend_Acl_Resource_Interface $resource - * @param string $privilege - * @return boolean|null - * @throws Zend_Acl_Exception - */ - protected function _roleDFSOnePrivilege(Zend_Acl_Role_Interface $role, Zend_Acl_Resource_Interface $resource = null, - $privilege = null) - { - if (null === $privilege) { - /** - * @see Zend_Acl_Exception - */ - require_once 'Zend/Acl/Exception.php'; - throw new Zend_Acl_Exception('$privilege parameter may not be null'); - } - - $dfs = array( - 'visited' => array(), - 'stack' => array() - ); - - if (null !== ($result = $this->_roleDFSVisitOnePrivilege($role, $resource, $privilege, $dfs))) { - return $result; - } - - while (null !== ($role = array_pop($dfs['stack']))) { - if (!isset($dfs['visited'][$role->getRoleId()])) { - if (null !== ($result = $this->_roleDFSVisitOnePrivilege($role, $resource, $privilege, $dfs))) { - return $result; - } - } - } - - return null; - } - - /** - * Visits an $role in order to look for a rule allowing/denying $role access to a $privilege upon $resource - * - * This method returns true if a rule is found and allows access. If a rule exists and denies access, - * then this method returns false. If no applicable rule is found, then this method returns null. - * - * This method is used by the internal depth-first search algorithm and may modify the DFS data structure. - * - * @param Zend_Acl_Role_Interface $role - * @param Zend_Acl_Resource_Interface $resource - * @param string $privilege - * @param array $dfs - * @return boolean|null - * @throws Zend_Acl_Exception - */ - protected function _roleDFSVisitOnePrivilege(Zend_Acl_Role_Interface $role, Zend_Acl_Resource_Interface $resource = null, - $privilege = null, &$dfs = null) - { - if (null === $privilege) { - /** - * @see Zend_Acl_Exception - */ - require_once 'Zend/Acl/Exception.php'; - throw new Zend_Acl_Exception('$privilege parameter may not be null'); - } - - if (null === $dfs) { - /** - * @see Zend_Acl_Exception - */ - require_once 'Zend/Acl/Exception.php'; - throw new Zend_Acl_Exception('$dfs parameter may not be null'); - } - - if (null !== ($ruleTypeOnePrivilege = $this->_getRuleType($resource, $role, $privilege))) { - return self::TYPE_ALLOW === $ruleTypeOnePrivilege; - } else if (null !== ($ruleTypeAllPrivileges = $this->_getRuleType($resource, $role, null))) { - return self::TYPE_ALLOW === $ruleTypeAllPrivileges; - } - - $dfs['visited'][$role->getRoleId()] = true; - foreach ($this->_getRoleRegistry()->getParents($role) as $roleParentId => $roleParent) { - $dfs['stack'][] = $roleParent; - } - - return null; - } - - /** - * Returns the rule type associated with the specified Resource, Role, and privilege - * combination. - * - * If a rule does not exist or its attached assertion fails, which means that - * the rule is not applicable, then this method returns null. Otherwise, the - * rule type applies and is returned as either TYPE_ALLOW or TYPE_DENY. - * - * If $resource or $role is null, then this means that the rule must apply to - * all Resources or Roles, respectively. - * - * If $privilege is null, then the rule must apply to all privileges. - * - * If all three parameters are null, then the default ACL rule type is returned, - * based on whether its assertion method passes. - * - * @param Zend_Acl_Resource_Interface $resource - * @param Zend_Acl_Role_Interface $role - * @param string $privilege - * @return string|null - */ - protected function _getRuleType(Zend_Acl_Resource_Interface $resource = null, Zend_Acl_Role_Interface $role = null, - $privilege = null) - { - // get the rules for the $resource and $role - if (null === ($rules = $this->_getRules($resource, $role))) { - return null; - } - - // follow $privilege - if (null === $privilege) { - if (isset($rules['allPrivileges'])) { - $rule = $rules['allPrivileges']; - } else { - return null; - } - } else if (!isset($rules['byPrivilegeId'][$privilege])) { - return null; - } else { - $rule = $rules['byPrivilegeId'][$privilege]; - } - - // check assertion first - if ($rule['assert']) { - $assertion = $rule['assert']; - $assertionValue = $assertion->assert( - $this, - ($this->_isAllowedRole instanceof Zend_Acl_Role_Interface) ? $this->_isAllowedRole : $role, - ($this->_isAllowedResource instanceof Zend_Acl_Resource_Interface) ? $this->_isAllowedResource : $resource, - $this->_isAllowedPrivilege - ); - } - - if (null === $rule['assert'] || $assertionValue) { - return $rule['type']; - } else if (null !== $resource || null !== $role || null !== $privilege) { - return null; - } else if (self::TYPE_ALLOW === $rule['type']) { - return self::TYPE_DENY; - } else { - return self::TYPE_ALLOW; - } - } - - /** - * Returns the rules associated with a Resource and a Role, or null if no such rules exist - * - * If either $resource or $role is null, this means that the rules returned are for all Resources or all Roles, - * respectively. Both can be null to return the default rule set for all Resources and all Roles. - * - * If the $create parameter is true, then a rule set is first created and then returned to the caller. - * - * @param Zend_Acl_Resource_Interface $resource - * @param Zend_Acl_Role_Interface $role - * @param boolean $create - * @return array|null - */ - protected function &_getRules(Zend_Acl_Resource_Interface $resource = null, Zend_Acl_Role_Interface $role = null, - $create = false) - { - // create a reference to null - $null = null; - $nullRef =& $null; - - // follow $resource - do { - if (null === $resource) { - $visitor =& $this->_rules['allResources']; - break; - } - $resourceId = $resource->getResourceId(); - if (!isset($this->_rules['byResourceId'][$resourceId])) { - if (!$create) { - return $nullRef; - } - $this->_rules['byResourceId'][$resourceId] = array(); - } - $visitor =& $this->_rules['byResourceId'][$resourceId]; - } while (false); - - - // follow $role - if (null === $role) { - if (!isset($visitor['allRoles'])) { - if (!$create) { - return $nullRef; - } - $visitor['allRoles']['byPrivilegeId'] = array(); - } - return $visitor['allRoles']; - } - $roleId = $role->getRoleId(); - if (!isset($visitor['byRoleId'][$roleId])) { - if (!$create) { - return $nullRef; - } - $visitor['byRoleId'][$roleId]['byPrivilegeId'] = array(); - $visitor['byRoleId'][$roleId]['allPrivileges'] = array('type' => null, 'assert' => null); - } - return $visitor['byRoleId'][$roleId]; - } - - - /** - * @return array of registered roles (Deprecated) - * @deprecated Deprecated since version 1.10 (December 2009) - */ - public function getRegisteredRoles() - { - trigger_error('The method getRegisteredRoles() was deprecated as of ' - . 'version 1.0, and may be removed. You\'re encouraged ' - . 'to use getRoles() instead.'); - - return $this->_getRoleRegistry()->getRoles(); - } - - /** - * Returns an array of registered roles. - * - * Note that this method does not return instances of registered roles, - * but only the role identifiers. - * - * @return array of registered roles - */ - public function getRoles() - { - return array_keys($this->_getRoleRegistry()->getRoles()); - } - - /** - * @return array of registered resources - */ - public function getResources() - { - return array_keys($this->_resources); - } - -} - diff --git a/library/Zend/Acl/Assert/Interface.php b/library/Zend/Acl/Assert/Interface.php deleted file mode 100644 index e61c3087..00000000 --- a/library/Zend/Acl/Assert/Interface.php +++ /dev/null @@ -1,64 +0,0 @@ -_resourceId = (string) $resourceId; - } - - /** - * Defined by Zend_Acl_Resource_Interface; returns the Resource identifier - * - * @return string - */ - public function getResourceId() - { - return $this->_resourceId; - } - - /** - * Defined by Zend_Acl_Resource_Interface; returns the Resource identifier - * Proxies to getResourceId() - * - * @return string - */ - public function __toString() - { - return $this->getResourceId(); - } -} diff --git a/library/Zend/Acl/Resource/Interface.php b/library/Zend/Acl/Resource/Interface.php deleted file mode 100644 index 4ab22846..00000000 --- a/library/Zend/Acl/Resource/Interface.php +++ /dev/null @@ -1,37 +0,0 @@ -_roleId = (string) $roleId; - } - - /** - * Defined by Zend_Acl_Role_Interface; returns the Role identifier - * - * @return string - */ - public function getRoleId() - { - return $this->_roleId; - } - - /** - * Defined by Zend_Acl_Role_Interface; returns the Role identifier - * Proxies to getRoleId() - * - * @return string - */ - public function __toString() - { - return $this->getRoleId(); - } -} diff --git a/library/Zend/Acl/Role/Interface.php b/library/Zend/Acl/Role/Interface.php deleted file mode 100644 index ddb7b331..00000000 --- a/library/Zend/Acl/Role/Interface.php +++ /dev/null @@ -1,37 +0,0 @@ -getRoleId(); - - if ($this->has($roleId)) { - /** - * @see Zend_Acl_Role_Registry_Exception - */ - require_once 'Zend/Acl/Role/Registry/Exception.php'; - throw new Zend_Acl_Role_Registry_Exception("Role id '$roleId' already exists in the registry"); - } - - $roleParents = array(); - - if (null !== $parents) { - if (!is_array($parents)) { - $parents = array($parents); - } - /** - * @see Zend_Acl_Role_Registry_Exception - */ - require_once 'Zend/Acl/Role/Registry/Exception.php'; - foreach ($parents as $parent) { - try { - if ($parent instanceof Zend_Acl_Role_Interface) { - $roleParentId = $parent->getRoleId(); - } else { - $roleParentId = $parent; - } - $roleParent = $this->get($roleParentId); - } catch (Zend_Acl_Role_Registry_Exception $e) { - throw new Zend_Acl_Role_Registry_Exception("Parent Role id '$roleParentId' does not exist", 0, $e); - } - $roleParents[$roleParentId] = $roleParent; - $this->_roles[$roleParentId]['children'][$roleId] = $role; - } - } - - $this->_roles[$roleId] = array( - 'instance' => $role, - 'parents' => $roleParents, - 'children' => array() - ); - - return $this; - } - - /** - * Returns the identified Role - * - * The $role parameter can either be a Role or a Role identifier. - * - * @param Zend_Acl_Role_Interface|string $role - * @throws Zend_Acl_Role_Registry_Exception - * @return Zend_Acl_Role_Interface - */ - public function get($role) - { - if ($role instanceof Zend_Acl_Role_Interface) { - $roleId = $role->getRoleId(); - } else { - $roleId = (string) $role; - } - - if (!$this->has($role)) { - /** - * @see Zend_Acl_Role_Registry_Exception - */ - require_once 'Zend/Acl/Role/Registry/Exception.php'; - throw new Zend_Acl_Role_Registry_Exception("Role '$roleId' not found"); - } - - return $this->_roles[$roleId]['instance']; - } - - /** - * Returns true if and only if the Role exists in the registry - * - * The $role parameter can either be a Role or a Role identifier. - * - * @param Zend_Acl_Role_Interface|string $role - * @return boolean - */ - public function has($role) - { - if ($role instanceof Zend_Acl_Role_Interface) { - $roleId = $role->getRoleId(); - } else { - $roleId = (string) $role; - } - - return isset($this->_roles[$roleId]); - } - - /** - * Returns an array of an existing Role's parents - * - * The array keys are the identifiers of the parent Roles, and the values are - * the parent Role instances. The parent Roles are ordered in this array by - * ascending priority. The highest priority parent Role, last in the array, - * corresponds with the parent Role most recently added. - * - * If the Role does not have any parents, then an empty array is returned. - * - * @param Zend_Acl_Role_Interface|string $role - * @uses Zend_Acl_Role_Registry::get() - * @return array - */ - public function getParents($role) - { - $roleId = $this->get($role)->getRoleId(); - - return $this->_roles[$roleId]['parents']; - } - - /** - * Returns true if and only if $role inherits from $inherit - * - * Both parameters may be either a Role or a Role identifier. If - * $onlyParents is true, then $role must inherit directly from - * $inherit in order to return true. By default, this method looks - * through the entire inheritance DAG to determine whether $role - * inherits from $inherit through its ancestor Roles. - * - * @param Zend_Acl_Role_Interface|string $role - * @param Zend_Acl_Role_Interface|string $inherit - * @param boolean $onlyParents - * @throws Zend_Acl_Role_Registry_Exception - * @return boolean - */ - public function inherits($role, $inherit, $onlyParents = false) - { - /** - * @see Zend_Acl_Role_Registry_Exception - */ - require_once 'Zend/Acl/Role/Registry/Exception.php'; - try { - $roleId = $this->get($role)->getRoleId(); - $inheritId = $this->get($inherit)->getRoleId(); - } catch (Zend_Acl_Role_Registry_Exception $e) { - throw new Zend_Acl_Role_Registry_Exception($e->getMessage(), $e->getCode(), $e); - } - - $inherits = isset($this->_roles[$roleId]['parents'][$inheritId]); - - if ($inherits || $onlyParents) { - return $inherits; - } - - foreach ($this->_roles[$roleId]['parents'] as $parentId => $parent) { - if ($this->inherits($parentId, $inheritId)) { - return true; - } - } - - return false; - } - - /** - * Removes the Role from the registry - * - * The $role parameter can either be a Role or a Role identifier. - * - * @param Zend_Acl_Role_Interface|string $role - * @throws Zend_Acl_Role_Registry_Exception - * @return Zend_Acl_Role_Registry Provides a fluent interface - */ - public function remove($role) - { - /** - * @see Zend_Acl_Role_Registry_Exception - */ - require_once 'Zend/Acl/Role/Registry/Exception.php'; - try { - $roleId = $this->get($role)->getRoleId(); - } catch (Zend_Acl_Role_Registry_Exception $e) { - throw new Zend_Acl_Role_Registry_Exception($e->getMessage(), $e->getCode(), $e); - } - - foreach ($this->_roles[$roleId]['children'] as $childId => $child) { - unset($this->_roles[$childId]['parents'][$roleId]); - } - foreach ($this->_roles[$roleId]['parents'] as $parentId => $parent) { - unset($this->_roles[$parentId]['children'][$roleId]); - } - - unset($this->_roles[$roleId]); - - return $this; - } - - /** - * Removes all Roles from the registry - * - * @return Zend_Acl_Role_Registry Provides a fluent interface - */ - public function removeAll() - { - $this->_roles = array(); - - return $this; - } - - public function getRoles() - { - return $this->_roles; - } - -} diff --git a/library/Zend/Acl/Role/Registry/Exception.php b/library/Zend/Acl/Role/Registry/Exception.php deleted file mode 100644 index 9a518adf..00000000 --- a/library/Zend/Acl/Role/Registry/Exception.php +++ /dev/null @@ -1,36 +0,0 @@ -_acl = new Zend_Acl(); - $xml = simplexml_load_file($rolefile); -/* -Roles file format: - - - - - - - - -*/ - foreach($xml->role as $role) { - $this->_acl->addRole(new Zend_Acl_Role((string)$role["id"])); - foreach($role->user as $user) { - $this->_users[(string)$user["name"]] = array("password" => (string)$user["password"], - "role" => (string)$role["id"]); - } - } - } - - /** - * Get ACL with roles from XML file - * - * @return Zend_Acl - */ - public function getAcl() - { - return $this->_acl; - } - - /** - * Perform authentication - * - * @throws Zend_Auth_Adapter_Exception - * @return Zend_Auth_Result - * @see Zend_Auth_Adapter_Interface#authenticate() - */ - public function authenticate() - { - if (empty($this->_username) || - empty($this->_password)) { - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception('Username/password should be set'); - } - - if(!isset($this->_users[$this->_username])) { - return new Zend_Auth_Result(Zend_Auth_Result::FAILURE_IDENTITY_NOT_FOUND, - null, - array('Username not found') - ); - } - - $user = $this->_users[$this->_username]; - if($user["password"] != $this->_password) { - return new Zend_Auth_Result(Zend_Auth_Result::FAILURE_CREDENTIAL_INVALID, - null, - array('Authentication failed') - ); - } - - $id = new stdClass(); - $id->role = $user["role"]; - $id->name = $this->_username; - return new Zend_Auth_Result(Zend_Auth_Result::SUCCESS, $id); - } -} diff --git a/library/Zend/Amf/Adobe/DbInspector.php b/library/Zend/Amf/Adobe/DbInspector.php deleted file mode 100644 index 9562a606..00000000 --- a/library/Zend/Amf/Adobe/DbInspector.php +++ /dev/null @@ -1,103 +0,0 @@ -describeTable('Pdo_Mysql', - * array( - * 'host' => '127.0.0.1', - * 'username' => 'webuser', - * 'password' => 'xxxxxxxx', - * 'dbname' => 'test' - * ), - * 'mytable' - * ); - * - * @param string $dbType Database adapter type for Zend_Db - * @param array|object $dbDescription Adapter-specific connection settings - * @param string $tableName Table name - * @return array Table description - * @see Zend_Db::describeTable() - * @see Zend_Db::factory() - */ - public function describeTable($dbType, $dbDescription, $tableName) - { - $db = $this->_connect($dbType, $dbDescription); - return $db->describeTable($tableName); - } - - /** - * Test database connection - * - * @param string $dbType Database adapter type for Zend_Db - * @param array|object $dbDescription Adapter-specific connection settings - * @return bool - * @see Zend_Db::factory() - */ - public function connect($dbType, $dbDescription) - { - $db = $this->_connect($dbType, $dbDescription); - $db->listTables(); - return true; - } - - /** - * Get the list of database tables - * - * @param string $dbType Database adapter type for Zend_Db - * @param array|object $dbDescription Adapter-specific connection settings - * @return array List of the tables - */ - public function getTables($dbType, $dbDescription) - { - $db = $this->_connect($dbType, $dbDescription); - return $db->listTables(); - } -} diff --git a/library/Zend/Amf/Adobe/Introspector.php b/library/Zend/Amf/Adobe/Introspector.php deleted file mode 100644 index 66ef3147..00000000 --- a/library/Zend/Amf/Adobe/Introspector.php +++ /dev/null @@ -1,318 +0,0 @@ -_xml = new DOMDocument('1.0', 'utf-8'); - } - - /** - * Create XML definition on an AMF service class - * - * @param string $serviceClass Service class name - * @param array $options invocation options - * @return string XML with service class introspection - */ - public function introspect($serviceClass, $options = array()) - { - $this->_options = $options; - - if (strpbrk($serviceClass, '\\/<>')) { - return $this->_returnError('Invalid service name'); - } - - // Transform com.foo.Bar into com_foo_Bar - $serviceClass = str_replace('.' , '_', $serviceClass); - - // Introspect! - if (!class_exists($serviceClass)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($serviceClass, $this->_getServicePath()); - } - - $serv = $this->_xml->createElement('service-description'); - $serv->setAttribute('xmlns', 'http://ns.adobe.com/flex/service-description/2008'); - - $this->_types = $this->_xml->createElement('types'); - $this->_ops = $this->_xml->createElement('operations'); - - $r = Zend_Server_Reflection::reflectClass($serviceClass); - $this->_addService($r, $this->_ops); - - $serv->appendChild($this->_types); - $serv->appendChild($this->_ops); - $this->_xml->appendChild($serv); - - return $this->_xml->saveXML(); - } - - /** - * Authentication handler - * - * @param Zend_Acl $acl - * @return unknown_type - */ - public function initAcl(Zend_Acl $acl) - { - return false; // we do not need auth for this class - } - - /** - * Generate map of public class attributes - * - * @param string $typename type name - * @param DOMElement $typexml target XML element - * @return void - */ - protected function _addClassAttributes($typename, DOMElement $typexml) - { - // Do not try to autoload here because _phpTypeToAS should - // have already attempted to load this class - if (!class_exists($typename, false)) { - return; - } - - $rc = new Zend_Reflection_Class($typename); - foreach ($rc->getProperties() as $prop) { - if (!$prop->isPublic()) { - continue; - } - - $propxml = $this->_xml->createElement('property'); - $propxml->setAttribute('name', $prop->getName()); - - $type = $this->_registerType($this->_getPropertyType($prop)); - $propxml->setAttribute('type', $type); - - $typexml->appendChild($propxml); - } - } - - /** - * Build XML service description from reflection class - * - * @param Zend_Server_Reflection_Class $refclass - * @param DOMElement $target target XML element - * @return void - */ - protected function _addService(Zend_Server_Reflection_Class $refclass, DOMElement $target) - { - foreach ($refclass->getMethods() as $method) { - if (!$method->isPublic() - || $method->isConstructor() - || ('__' == substr($method->name, 0, 2)) - ) { - continue; - } - - foreach ($method->getPrototypes() as $proto) { - $op = $this->_xml->createElement('operation'); - $op->setAttribute('name', $method->getName()); - - $rettype = $this->_registerType($proto->getReturnType()); - $op->setAttribute('returnType', $rettype); - - foreach ($proto->getParameters() as $param) { - $arg = $this->_xml->createElement('argument'); - $arg->setAttribute('name', $param->getName()); - - $type = $param->getType(); - if ($type == 'mixed' && ($pclass = $param->getClass())) { - $type = $pclass->getName(); - } - - $ptype = $this->_registerType($type); - $arg->setAttribute('type', $ptype); - - if($param->isDefaultValueAvailable()) { - $arg->setAttribute('defaultvalue', $param->getDefaultValue()); - } - - $op->appendChild($arg); - } - - $target->appendChild($op); - } - } - } - - /** - * Extract type of the property from DocBlock - * - * @param Zend_Reflection_Property $prop reflection property object - * @return string Property type - */ - protected function _getPropertyType(Zend_Reflection_Property $prop) - { - $docBlock = $prop->getDocComment(); - - if (!$docBlock) { - return 'Unknown'; - } - - if (!$docBlock->hasTag('var')) { - return 'Unknown'; - } - - $tag = $docBlock->getTag('var'); - return trim($tag->getDescription()); - } - - /** - * Get the array of service directories - * - * @return array Service class directories - */ - protected function _getServicePath() - { - if (isset($this->_options['server'])) { - return $this->_options['server']->getDirectory(); - } - - if (isset($this->_options['directories'])) { - return $this->_options['directories']; - } - - return array(); - } - - /** - * Map from PHP type name to AS type name - * - * @param string $typename PHP type name - * @return string AS type name - */ - protected function _phpTypeToAS($typename) - { - if (class_exists($typename)) { - $vars = get_class_vars($typename); - - if (isset($vars['_explicitType'])) { - return $vars['_explicitType']; - } - } - - if (false !== ($asname = Zend_Amf_Parse_TypeLoader::getMappedClassName($typename))) { - return $asname; - } - - return $typename; - } - - /** - * Register new type on the system - * - * @param string $typename type name - * @return string New type name - */ - protected function _registerType($typename) - { - // Known type - return its AS name - if (isset($this->_typesMap[$typename])) { - return $this->_typesMap[$typename]; - } - - // Standard types - if (in_array($typename, array('void', 'null', 'mixed', 'unknown_type'))) { - return 'Unknown'; - } - - // Arrays - if ('array' == $typename) { - return 'Unknown[]'; - } - - if (in_array($typename, array('int', 'integer', 'bool', 'boolean', 'float', 'string', 'object', 'Unknown', 'stdClass'))) { - return $typename; - } - - // Resolve and store AS name - $asTypeName = $this->_phpTypeToAS($typename); - $this->_typesMap[$typename] = $asTypeName; - - // Create element for the name - $typeEl = $this->_xml->createElement('type'); - $typeEl->setAttribute('name', $asTypeName); - $this->_addClassAttributes($typename, $typeEl); - $this->_types->appendChild($typeEl); - - return $asTypeName; - } - - /** - * Return error with error message - * - * @param string $msg Error message - * @return string - */ - protected function _returnError($msg) - { - return 'ERROR: $msg'; - } -} diff --git a/library/Zend/Amf/Auth/Abstract.php b/library/Zend/Amf/Auth/Abstract.php deleted file mode 100644 index d5b72d9d..00000000 --- a/library/Zend/Amf/Auth/Abstract.php +++ /dev/null @@ -1,42 +0,0 @@ -_username = $username; - $this->_password = $password; - } -} diff --git a/library/Zend/Amf/Constants.php b/library/Zend/Amf/Constants.php deleted file mode 100644 index d5342f5e..00000000 --- a/library/Zend/Amf/Constants.php +++ /dev/null @@ -1,87 +0,0 @@ -_stream->readByte(); - } - - switch($typeMarker) { - // number - case Zend_Amf_Constants::AMF0_NUMBER: - return $this->_stream->readDouble(); - - // boolean - case Zend_Amf_Constants::AMF0_BOOLEAN: - return (boolean) $this->_stream->readByte(); - - // string - case Zend_Amf_Constants::AMF0_STRING: - return $this->_stream->readUTF(); - - // object - case Zend_Amf_Constants::AMF0_OBJECT: - return $this->readObject(); - - // null - case Zend_Amf_Constants::AMF0_NULL: - return null; - - // undefined - case Zend_Amf_Constants::AMF0_UNDEFINED: - return null; - - // Circular references are returned here - case Zend_Amf_Constants::AMF0_REFERENCE: - return $this->readReference(); - - // mixed array with numeric and string keys - case Zend_Amf_Constants::AMF0_MIXEDARRAY: - return $this->readMixedArray(); - - // array - case Zend_Amf_Constants::AMF0_ARRAY: - return $this->readArray(); - - // date - case Zend_Amf_Constants::AMF0_DATE: - return $this->readDate(); - - // longString strlen(string) > 2^16 - case Zend_Amf_Constants::AMF0_LONGSTRING: - return $this->_stream->readLongUTF(); - - //internal AS object, not supported - case Zend_Amf_Constants::AMF0_UNSUPPORTED: - return null; - - // XML - case Zend_Amf_Constants::AMF0_XML: - return $this->readXmlString(); - - // typed object ie Custom Class - case Zend_Amf_Constants::AMF0_TYPEDOBJECT: - return $this->readTypedObject(); - - //AMF3-specific - case Zend_Amf_Constants::AMF0_AMF3: - return $this->readAmf3TypeMarker(); - - default: - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Unsupported marker type: ' . $typeMarker); - } - } - - /** - * Read AMF objects and convert to PHP objects - * - * Read the name value pair objects form the php message and convert them to - * a php object class. - * - * Called when the marker type is 3. - * - * @param array|null $object - * @return object - */ - public function readObject($object = null) - { - if ($object === null) { - $object = array(); - } - - while (true) { - $key = $this->_stream->readUTF(); - $typeMarker = $this->_stream->readByte(); - if ($typeMarker != Zend_Amf_Constants::AMF0_OBJECTTERM ){ - //Recursivly call readTypeMarker to get the types of properties in the object - $object[$key] = $this->readTypeMarker($typeMarker); - } else { - //encountered AMF object terminator - break; - } - } - $this->_reference[] = $object; - return (object) $object; - } - - /** - * Read reference objects - * - * Used to gain access to the private array of reference objects. - * Called when marker type is 7. - * - * @return object - * @throws Zend_Amf_Exception for invalid reference keys - */ - public function readReference() - { - $key = $this->_stream->readInt(); - if (!array_key_exists($key, $this->_reference)) { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Invalid reference key: '. $key); - } - return $this->_reference[$key]; - } - - /** - * Reads an array with numeric and string indexes. - * - * Called when marker type is 8 - * - * @todo As of Flash Player 9 there is not support for mixed typed arrays - * so we handle this as an object. With the introduction of vectors - * in Flash Player 10 this may need to be reconsidered. - * @return array - */ - public function readMixedArray() - { - $length = $this->_stream->readLong(); - return $this->readObject(); - } - - /** - * Converts numerically indexed actiosncript arrays into php arrays. - * - * Called when marker type is 10 - * - * @return array - */ - public function readArray() - { - $length = $this->_stream->readLong(); - $array = array(); - while ($length--) { - $array[] = $this->readTypeMarker(); - } - return $array; - } - - /** - * Convert AS Date to Zend_Date - * - * @return Zend_Date - */ - public function readDate() - { - // get the unix time stamp. Not sure why ActionScript does not use - // milliseconds - $timestamp = floor($this->_stream->readDouble() / 1000); - - // The timezone offset is never returned to the server; it is always 0, - // so read and ignore. - $offset = $this->_stream->readInt(); - - require_once 'Zend/Date.php'; - $date = new Zend_Date($timestamp); - return $date; - } - - /** - * Convert XML to SimpleXml - * If user wants DomDocument they can use dom_import_simplexml - * - * @return SimpleXml Object - */ - public function readXmlString() - { - $string = $this->_stream->readLongUTF(); - return simplexml_load_string($string); - } - - /** - * Read Class that is to be mapped to a server class. - * - * Commonly used for Value Objects on the server - * - * @todo implement Typed Class mapping - * @return object|array - * @throws Zend_Amf_Exception if unable to load type - */ - public function readTypedObject() - { - require_once 'Zend/Amf/Parse/TypeLoader.php'; - // get the remote class name - $className = $this->_stream->readUTF(); - $loader = Zend_Amf_Parse_TypeLoader::loadType($className); - $returnObject = new $loader(); - $properties = get_object_vars($this->readObject()); - foreach($properties as $key=>$value) { - if($key) { - $returnObject->$key = $value; - } - } - if($returnObject instanceof Zend_Amf_Value_Messaging_ArrayCollection) { - $returnObject = get_object_vars($returnObject); - } - return $returnObject; - } - - /** - * AMF3 data type encountered load AMF3 Deserializer to handle - * type markers. - * - * @return string - */ - public function readAmf3TypeMarker() - { - require_once 'Zend/Amf/Parse/Amf3/Deserializer.php'; - $deserializer = new Zend_Amf_Parse_Amf3_Deserializer($this->_stream); - $this->_objectEncoding = Zend_Amf_Constants::AMF3_OBJECT_ENCODING; - return $deserializer->readTypeMarker(); - } - - /** - * Return the object encoding to check if an AMF3 object - * is going to be return. - * - * @return int - */ - public function getObjectEncoding() - { - return $this->_objectEncoding; - } -} diff --git a/library/Zend/Amf/Parse/Amf0/Serializer.php b/library/Zend/Amf/Parse/Amf0/Serializer.php deleted file mode 100644 index ce23f194..00000000 --- a/library/Zend/Amf/Parse/Amf0/Serializer.php +++ /dev/null @@ -1,362 +0,0 @@ -writeObjectReference($data, $markerType)) { - // Write the Type Marker to denote the following action script data type - $this->_stream->writeByte($markerType); - switch($markerType) { - case Zend_Amf_Constants::AMF0_NUMBER: - $this->_stream->writeDouble($data); - break; - case Zend_Amf_Constants::AMF0_BOOLEAN: - $this->_stream->writeByte($data); - break; - case Zend_Amf_Constants::AMF0_STRING: - $this->_stream->writeUTF($data); - break; - case Zend_Amf_Constants::AMF0_OBJECT: - $this->writeObject($data); - break; - case Zend_Amf_Constants::AMF0_NULL: - break; - case Zend_Amf_Constants::AMF0_REFERENCE: - $this->_stream->writeInt($data); - break; - case Zend_Amf_Constants::AMF0_MIXEDARRAY: - // Write length of numeric keys as zero. - $this->_stream->writeLong(0); - $this->writeObject($data); - break; - case Zend_Amf_Constants::AMF0_ARRAY: - $this->writeArray($data); - break; - case Zend_Amf_Constants::AMF0_DATE: - $this->writeDate($data); - break; - case Zend_Amf_Constants::AMF0_LONGSTRING: - $this->_stream->writeLongUTF($data); - break; - case Zend_Amf_Constants::AMF0_TYPEDOBJECT: - $this->writeTypedObject($data); - break; - case Zend_Amf_Constants::AMF0_AMF3: - $this->writeAmf3TypeMarker($data); - break; - default: - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception("Unknown Type Marker: " . $markerType); - } - } - } else { - if (is_resource($data)) { - $data = Zend_Amf_Parse_TypeLoader::handleResource($data); - } - switch (true) { - case (is_int($data) || is_float($data)): - $markerType = Zend_Amf_Constants::AMF0_NUMBER; - break; - case (is_bool($data)): - $markerType = Zend_Amf_Constants::AMF0_BOOLEAN; - break; - case (is_string($data) && (($this->_mbStringFunctionsOverloaded ? mb_strlen($data, '8bit') : strlen($data)) > 65536)): - $markerType = Zend_Amf_Constants::AMF0_LONGSTRING; - break; - case (is_string($data)): - $markerType = Zend_Amf_Constants::AMF0_STRING; - break; - case (is_object($data)): - if (($data instanceof DateTime) || ($data instanceof Zend_Date)) { - $markerType = Zend_Amf_Constants::AMF0_DATE; - } else { - - if($className = $this->getClassName($data)){ - //Object is a Typed object set classname - $markerType = Zend_Amf_Constants::AMF0_TYPEDOBJECT; - $this->_className = $className; - } else { - // Object is a generic classname - $markerType = Zend_Amf_Constants::AMF0_OBJECT; - } - break; - } - break; - case (null === $data): - $markerType = Zend_Amf_Constants::AMF0_NULL; - break; - case (is_array($data)): - // check if it is an associative array - $i = 0; - foreach (array_keys($data) as $key) { - // check if it contains non-integer keys - if (!is_numeric($key) || intval($key) != $key) { - $markerType = Zend_Amf_Constants::AMF0_OBJECT; - break; - // check if it is a sparse indexed array - } else if ($key != $i) { - $markerType = Zend_Amf_Constants::AMF0_MIXEDARRAY; - break; - } - $i++; - } - // Dealing with a standard numeric array - if(!$markerType){ - $markerType = Zend_Amf_Constants::AMF0_ARRAY; - break; - } - break; - default: - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Unsupported data type: ' . gettype($data)); - } - - $this->writeTypeMarker($data, $markerType); - } - return $this; - } - - /** - * Check if the given object is in the reference table, write the reference if it exists, - * otherwise add the object to the reference table - * - * @param mixed $object object reference to check for reference - * @param string $markerType AMF type of the object to write - * @param mixed $objectByVal object to check for reference - * @return Boolean true, if the reference was written, false otherwise - */ - protected function writeObjectReference(&$object, $markerType, $objectByVal = false) - { - // Workaround for PHP5 with E_STRICT enabled complaining about "Only - // variables should be passed by reference" - if ((null === $object) && ($objectByVal !== false)) { - $object = &$objectByVal; - } - - if ($markerType == Zend_Amf_Constants::AMF0_OBJECT - || $markerType == Zend_Amf_Constants::AMF0_MIXEDARRAY - || $markerType == Zend_Amf_Constants::AMF0_ARRAY - || $markerType == Zend_Amf_Constants::AMF0_TYPEDOBJECT - ) { - $ref = array_search($object, $this->_referenceObjects, true); - //handle object reference - if($ref !== false){ - $this->writeTypeMarker($ref,Zend_Amf_Constants::AMF0_REFERENCE); - return true; - } - - $this->_referenceObjects[] = $object; - } - - return false; - } - - /** - * Write a PHP array with string or mixed keys. - * - * @param object $data - * @return Zend_Amf_Parse_Amf0_Serializer - */ - public function writeObject($object) - { - // Loop each element and write the name of the property. - foreach ($object as $key => &$value) { - // skip variables starting with an _ private transient - if( $key[0] == "_") continue; - $this->_stream->writeUTF($key); - $this->writeTypeMarker($value); - } - - // Write the end object flag - $this->_stream->writeInt(0); - $this->_stream->writeByte(Zend_Amf_Constants::AMF0_OBJECTTERM); - return $this; - } - - /** - * Write a standard numeric array to the output stream. If a mixed array - * is encountered call writeTypeMarker with mixed array. - * - * @param array $array - * @return Zend_Amf_Parse_Amf0_Serializer - */ - public function writeArray(&$array) - { - $length = count($array); - if (!$length < 0) { - // write the length of the array - $this->_stream->writeLong(0); - } else { - // Write the length of the numeric array - $this->_stream->writeLong($length); - for ($i=0; $i<$length; $i++) { - $value = isset($array[$i]) ? $array[$i] : null; - $this->writeTypeMarker($value); - } - } - return $this; - } - - /** - * Convert the DateTime into an AMF Date - * - * @param DateTime|Zend_Date $data - * @return Zend_Amf_Parse_Amf0_Serializer - */ - public function writeDate($data) - { - if ($data instanceof DateTime) { - $dateString = $data->format('U'); - } elseif ($data instanceof Zend_Date) { - $dateString = $data->toString('U'); - } else { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Invalid date specified; must be a DateTime or Zend_Date object'); - } - $dateString *= 1000; - - // Make the conversion and remove milliseconds. - $this->_stream->writeDouble($dateString); - - // Flash does not respect timezone but requires it. - $this->_stream->writeInt(0); - - return $this; - } - - /** - * Write a class mapped object to the output stream. - * - * @param object $data - * @return Zend_Amf_Parse_Amf0_Serializer - */ - public function writeTypedObject($data) - { - $this->_stream->writeUTF($this->_className); - $this->writeObject($data); - return $this; - } - - /** - * Encountered and AMF3 Type Marker use AMF3 serializer. Once AMF3 is - * encountered it will not return to AMf0. - * - * @param string $data - * @return Zend_Amf_Parse_Amf0_Serializer - */ - public function writeAmf3TypeMarker(&$data) - { - require_once 'Zend/Amf/Parse/Amf3/Serializer.php'; - $serializer = new Zend_Amf_Parse_Amf3_Serializer($this->_stream); - $serializer->writeTypeMarker($data); - return $this; - } - - /** - * Find if the class name is a class mapped name and return the - * respective classname if it is. - * - * @param object $object - * @return false|string $className - */ - protected function getClassName($object) - { - require_once 'Zend/Amf/Parse/TypeLoader.php'; - //Check to see if the object is a typed object and we need to change - $className = ''; - switch (true) { - // the return class mapped name back to actionscript class name. - case Zend_Amf_Parse_TypeLoader::getMappedClassName(get_class($object)): - $className = Zend_Amf_Parse_TypeLoader::getMappedClassName(get_class($object)); - break; - // Check to see if the user has defined an explicit Action Script type. - case isset($object->_explicitType): - $className = $object->_explicitType; - break; - // Check if user has defined a method for accessing the Action Script type - case method_exists($object, 'getASClassName'): - $className = $object->getASClassName(); - break; - // No return class name is set make it a generic object - case ($object instanceof stdClass): - $className = ''; - break; - // By default, use object's class name - default: - $className = get_class($object); - break; - } - if(!$className == '') { - return $className; - } else { - return false; - } - } -} diff --git a/library/Zend/Amf/Parse/Amf3/Deserializer.php b/library/Zend/Amf/Parse/Amf3/Deserializer.php deleted file mode 100644 index 361aaa47..00000000 --- a/library/Zend/Amf/Parse/Amf3/Deserializer.php +++ /dev/null @@ -1,422 +0,0 @@ -_stream->readByte(); - } - - switch($typeMarker) { - case Zend_Amf_Constants::AMF3_UNDEFINED: - return null; - case Zend_Amf_Constants::AMF3_NULL: - return null; - case Zend_Amf_Constants::AMF3_BOOLEAN_FALSE: - return false; - case Zend_Amf_Constants::AMF3_BOOLEAN_TRUE: - return true; - case Zend_Amf_Constants::AMF3_INTEGER: - return $this->readInteger(); - case Zend_Amf_Constants::AMF3_NUMBER: - return $this->_stream->readDouble(); - case Zend_Amf_Constants::AMF3_STRING: - return $this->readString(); - case Zend_Amf_Constants::AMF3_DATE: - return $this->readDate(); - case Zend_Amf_Constants::AMF3_ARRAY: - return $this->readArray(); - case Zend_Amf_Constants::AMF3_OBJECT: - return $this->readObject(); - case Zend_Amf_Constants::AMF3_XML: - case Zend_Amf_Constants::AMF3_XMLSTRING: - return $this->readXmlString(); - case Zend_Amf_Constants::AMF3_BYTEARRAY: - return $this->readString(); - default: - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Unsupported type marker: ' . $typeMarker); - } - } - - /** - * Read and deserialize an integer - * - * AMF 3 represents smaller integers with fewer bytes using the most - * significant bit of each byte. The worst case uses 32-bits - * to represent a 29-bit number, which is what we would have - * done with no compression. - * - 0x00000000 - 0x0000007F : 0xxxxxxx - * - 0x00000080 - 0x00003FFF : 1xxxxxxx 0xxxxxxx - * - 0x00004000 - 0x001FFFFF : 1xxxxxxx 1xxxxxxx 0xxxxxxx - * - 0x00200000 - 0x3FFFFFFF : 1xxxxxxx 1xxxxxxx 1xxxxxxx xxxxxxxx - * - 0x40000000 - 0xFFFFFFFF : throw range exception - * - * 0x04 -> integer type code, followed by up to 4 bytes of data. - * - * Parsing integers on OSFlash for the AMF3 integer data format: - * @link http://osflash.org/amf3/parsing_integers - * @return int|float - */ - public function readInteger() - { - $count = 1; - $intReference = $this->_stream->readByte(); - $result = 0; - while ((($intReference & 0x80) != 0) && $count < 4) { - $result <<= 7; - $result |= ($intReference & 0x7f); - $intReference = $this->_stream->readByte(); - $count++; - } - if ($count < 4) { - $result <<= 7; - $result |= $intReference; - } else { - // Use all 8 bits from the 4th byte - $result <<= 8; - $result |= $intReference; - - // Check if the integer should be negative - if (($result & 0x10000000) != 0) { - //and extend the sign bit - $result |= ~0xFFFFFFF; - } - } - return $result; - } - - /** - * Read and deserialize a string - * - * Strings can be sent as a reference to a previously - * occurring String by using an index to the implicit string reference table. - * Strings are encoding using UTF-8 - however the header may either - * describe a string literal or a string reference. - * - * - string = 0x06 string-data - * - string-data = integer-data [ modified-utf-8 ] - * - modified-utf-8 = *OCTET - * - * @return String - */ - public function readString() - { - $stringReference = $this->readInteger(); - - //Check if this is a reference string - if (($stringReference & 0x01) == 0) { - // reference string - $stringReference = $stringReference >> 1; - if ($stringReference >= count($this->_referenceStrings)) { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Undefined string reference: ' . $stringReference); - } - // reference string found - return $this->_referenceStrings[$stringReference]; - } - - $length = $stringReference >> 1; - if ($length) { - $string = $this->_stream->readBytes($length); - $this->_referenceStrings[] = $string; - } else { - $string = ""; - } - return $string; - } - - /** - * Read and deserialize a date - * - * Data is the number of milliseconds elapsed since the epoch - * of midnight, 1st Jan 1970 in the UTC time zone. - * Local time zone information is not sent to flash. - * - * - date = 0x08 integer-data [ number-data ] - * - * @return Zend_Date - */ - public function readDate() - { - $dateReference = $this->readInteger(); - if (($dateReference & 0x01) == 0) { - $dateReference = $dateReference >> 1; - if ($dateReference>=count($this->_referenceObjects)) { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Undefined date reference: ' . $dateReference); - } - return $this->_referenceObjects[$dateReference]; - } - - $timestamp = floor($this->_stream->readDouble() / 1000); - - require_once 'Zend/Date.php'; - $dateTime = new Zend_Date($timestamp); - $this->_referenceObjects[] = $dateTime; - return $dateTime; - } - - /** - * Read amf array to PHP array - * - * - array = 0x09 integer-data ( [ 1OCTET *amf3-data ] | [OCTET *amf3-data 1] | [ OCTET *amf-data ] ) - * - * @return array - */ - public function readArray() - { - $arrayReference = $this->readInteger(); - if (($arrayReference & 0x01)==0){ - $arrayReference = $arrayReference >> 1; - if ($arrayReference>=count($this->_referenceObjects)) { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Unknow array reference: ' . $arrayReference); - } - return $this->_referenceObjects[$arrayReference]; - } - - // Create a holder for the array in the reference list - $data = array(); - $this->_referenceObjects[] =& $data; - $key = $this->readString(); - - // Iterating for string based keys. - while ($key != '') { - $data[$key] = $this->readTypeMarker(); - $key = $this->readString(); - } - - $arrayReference = $arrayReference >>1; - - //We have a dense array - for ($i=0; $i < $arrayReference; $i++) { - $data[] = $this->readTypeMarker(); - } - - return $data; - } - - /** - * Read an object from the AMF stream and convert it into a PHP object - * - * @todo Rather than using an array of traitsInfo create Zend_Amf_Value_TraitsInfo - * @return object|array - */ - public function readObject() - { - $traitsInfo = $this->readInteger(); - $storedObject = ($traitsInfo & 0x01)==0; - $traitsInfo = $traitsInfo >> 1; - - // Check if the Object is in the stored Objects reference table - if ($storedObject) { - $ref = $traitsInfo; - if (!isset($this->_referenceObjects[$ref])) { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Unknown Object reference: ' . $ref); - } - $returnObject = $this->_referenceObjects[$ref]; - } else { - // Check if the Object is in the stored Definitions reference table - $storedClass = ($traitsInfo & 0x01) == 0; - $traitsInfo = $traitsInfo >> 1; - if ($storedClass) { - $ref = $traitsInfo; - if (!isset($this->_referenceDefinitions[$ref])) { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Unknows Definition reference: '. $ref); - } - // Populate the reference attributes - $className = $this->_referenceDefinitions[$ref]['className']; - $encoding = $this->_referenceDefinitions[$ref]['encoding']; - $propertyNames = $this->_referenceDefinitions[$ref]['propertyNames']; - } else { - // The class was not in the reference tables. Start reading rawdata to build traits. - // Create a traits table. Zend_Amf_Value_TraitsInfo would be ideal - $className = $this->readString(); - $encoding = $traitsInfo & 0x03; - $propertyNames = array(); - $traitsInfo = $traitsInfo >> 2; - } - - // We now have the object traits defined in variables. Time to go to work: - if (!$className) { - // No class name generic object - $returnObject = new stdClass(); - } else { - // Defined object - // Typed object lookup against registered classname maps - if ($loader = Zend_Amf_Parse_TypeLoader::loadType($className)) { - $returnObject = new $loader(); - } else { - //user defined typed object - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Typed object not found: '. $className . ' '); - } - } - - // Add the Object to the reference table - $this->_referenceObjects[] = $returnObject; - - $properties = array(); // clear value - // Check encoding types for additional processing. - switch ($encoding) { - case (Zend_Amf_Constants::ET_EXTERNAL): - // Externalizable object such as {ArrayCollection} and {ObjectProxy} - if (!$storedClass) { - $this->_referenceDefinitions[] = array( - 'className' => $className, - 'encoding' => $encoding, - 'propertyNames' => $propertyNames, - ); - } - $returnObject->externalizedData = $this->readTypeMarker(); - break; - case (Zend_Amf_Constants::ET_DYNAMIC): - // used for Name-value encoding - if (!$storedClass) { - $this->_referenceDefinitions[] = array( - 'className' => $className, - 'encoding' => $encoding, - 'propertyNames' => $propertyNames, - ); - } - // not a reference object read name value properties from byte stream - do { - $property = $this->readString(); - if ($property != "") { - $propertyNames[] = $property; - $properties[$property] = $this->readTypeMarker(); - } - } while ($property !=""); - break; - default: - // basic property list object. - if (!$storedClass) { - $count = $traitsInfo; // Number of properties in the list - for($i=0; $i< $count; $i++) { - $propertyNames[] = $this->readString(); - } - // Add a reference to the class. - $this->_referenceDefinitions[] = array( - 'className' => $className, - 'encoding' => $encoding, - 'propertyNames' => $propertyNames, - ); - } - foreach ($propertyNames as $property) { - $properties[$property] = $this->readTypeMarker(); - } - break; - } - - // Add properties back to the return object. - if (!is_array($properties)) $properties = array(); - foreach($properties as $key=>$value) { - if($key) { - $returnObject->$key = $value; - } - } - - - } - - if ($returnObject instanceof Zend_Amf_Value_Messaging_ArrayCollection) { - if (isset($returnObject->externalizedData)) { - $returnObject = $returnObject->externalizedData; - } else { - $returnObject = get_object_vars($returnObject); - } - } - - return $returnObject; - } - - /** - * Convert XML to SimpleXml - * If user wants DomDocument they can use dom_import_simplexml - * - * @return SimpleXml Object - */ - public function readXmlString() - { - $xmlReference = $this->readInteger(); - $length = $xmlReference >> 1; - $string = $this->_stream->readBytes($length); - return simplexml_load_string($string); - } -} diff --git a/library/Zend/Amf/Parse/Amf3/Serializer.php b/library/Zend/Amf/Parse/Amf3/Serializer.php deleted file mode 100644 index 7cbea7f6..00000000 --- a/library/Zend/Amf/Parse/Amf3/Serializer.php +++ /dev/null @@ -1,534 +0,0 @@ -_stream->writeByte($markerType); - - switch ($markerType) { - case Zend_Amf_Constants::AMF3_NULL: - break; - case Zend_Amf_Constants::AMF3_BOOLEAN_FALSE: - break; - case Zend_Amf_Constants::AMF3_BOOLEAN_TRUE: - break; - case Zend_Amf_Constants::AMF3_INTEGER: - $this->writeInteger($data); - break; - case Zend_Amf_Constants::AMF3_NUMBER: - $this->_stream->writeDouble($data); - break; - case Zend_Amf_Constants::AMF3_STRING: - $this->writeString($data); - break; - case Zend_Amf_Constants::AMF3_DATE: - $this->writeDate($data); - break; - case Zend_Amf_Constants::AMF3_ARRAY: - $this->writeArray($data); - break; - case Zend_Amf_Constants::AMF3_OBJECT: - $this->writeObject($data); - break; - case Zend_Amf_Constants::AMF3_BYTEARRAY: - $this->writeByteArray($data); - break; - case Zend_Amf_Constants::AMF3_XMLSTRING; - $this->writeXml($data); - break; - default: - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Unknown Type Marker: ' . $markerType); - } - } else { - // Detect Type Marker - if (is_resource($data)) { - $data = Zend_Amf_Parse_TypeLoader::handleResource($data); - } - switch (true) { - case (null === $data): - $markerType = Zend_Amf_Constants::AMF3_NULL; - break; - case (is_bool($data)): - if ($data){ - $markerType = Zend_Amf_Constants::AMF3_BOOLEAN_TRUE; - } else { - $markerType = Zend_Amf_Constants::AMF3_BOOLEAN_FALSE; - } - break; - case (is_int($data)): - if (($data > 0xFFFFFFF) || ($data < -268435456)) { - $markerType = Zend_Amf_Constants::AMF3_NUMBER; - } else { - $markerType = Zend_Amf_Constants::AMF3_INTEGER; - } - break; - case (is_float($data)): - $markerType = Zend_Amf_Constants::AMF3_NUMBER; - break; - case (is_string($data)): - $markerType = Zend_Amf_Constants::AMF3_STRING; - break; - case (is_array($data)): - $markerType = Zend_Amf_Constants::AMF3_ARRAY; - break; - case (is_object($data)): - // Handle object types. - if (($data instanceof DateTime) || ($data instanceof Zend_Date)) { - $markerType = Zend_Amf_Constants::AMF3_DATE; - } else if ($data instanceof Zend_Amf_Value_ByteArray) { - $markerType = Zend_Amf_Constants::AMF3_BYTEARRAY; - } else if (($data instanceof DOMDocument) || ($data instanceof SimpleXMLElement)) { - $markerType = Zend_Amf_Constants::AMF3_XMLSTRING; - } else { - $markerType = Zend_Amf_Constants::AMF3_OBJECT; - } - break; - default: - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Unsupported data type: ' . gettype($data)); - } - $this->writeTypeMarker($data, $markerType); - } - } - - /** - * Write an AMF3 integer - * - * @param int|float $data - * @return Zend_Amf_Parse_Amf3_Serializer - */ - public function writeInteger($int) - { - if (($int & 0xffffff80) == 0) { - $this->_stream->writeByte($int & 0x7f); - return $this; - } - - if (($int & 0xffffc000) == 0 ) { - $this->_stream->writeByte(($int >> 7 ) | 0x80); - $this->_stream->writeByte($int & 0x7f); - return $this; - } - - if (($int & 0xffe00000) == 0) { - $this->_stream->writeByte(($int >> 14 ) | 0x80); - $this->_stream->writeByte(($int >> 7 ) | 0x80); - $this->_stream->writeByte($int & 0x7f); - return $this; - } - - $this->_stream->writeByte(($int >> 22 ) | 0x80); - $this->_stream->writeByte(($int >> 15 ) | 0x80); - $this->_stream->writeByte(($int >> 8 ) | 0x80); - $this->_stream->writeByte($int & 0xff); - return $this; - } - - /** - * Send string to output stream, without trying to reference it. - * The string is prepended with strlen($string) << 1 | 0x01 - * - * @param string $string - * @return Zend_Amf_Parse_Amf3_Serializer - */ - protected function writeBinaryString(&$string){ - $ref = ($this->_mbStringFunctionsOverloaded ? mb_strlen($string, '8bit') : strlen($string)) << 1 | 0x01; - $this->writeInteger($ref); - $this->_stream->writeBytes($string); - - return $this; - } - - /** - * Send string to output stream - * - * @param string $string - * @return Zend_Amf_Parse_Amf3_Serializer - */ - public function writeString(&$string) - { - $len = $this->_mbStringFunctionsOverloaded ? mb_strlen($string, '8bit') : strlen($string); - if(!$len){ - $this->writeInteger(0x01); - return $this; - } - - $ref = array_key_exists($string, $this->_referenceStrings) - ? $this->_referenceStrings[$string] - : false; - if ($ref === false){ - $this->_referenceStrings[$string] = count($this->_referenceStrings); - $this->writeBinaryString($string); - } else { - $ref <<= 1; - $this->writeInteger($ref); - } - - return $this; - } - - /** - * Send ByteArray to output stream - * - * @param string|Zend_Amf_Value_ByteArray $data - * @return Zend_Amf_Parse_Amf3_Serializer - */ - public function writeByteArray(&$data) - { - if ($this->writeObjectReference($data)) { - return $this; - } - - if (is_string($data)) { - //nothing to do - } else if ($data instanceof Zend_Amf_Value_ByteArray) { - $data = $data->getData(); - } else { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Invalid ByteArray specified; must be a string or Zend_Amf_Value_ByteArray'); - } - - $this->writeBinaryString($data); - - return $this; - } - - /** - * Send xml to output stream - * - * @param DOMDocument|SimpleXMLElement $xml - * @return Zend_Amf_Parse_Amf3_Serializer - */ - public function writeXml($xml) - { - if ($this->writeObjectReference($xml)) { - return $this; - } - - if(is_string($xml)) { - //nothing to do - } else if ($xml instanceof DOMDocument) { - $xml = $xml->saveXml(); - } else if ($xml instanceof SimpleXMLElement) { - $xml = $xml->asXML(); - } else { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Invalid xml specified; must be a DOMDocument or SimpleXMLElement'); - } - - $this->writeBinaryString($xml); - - return $this; - } - - /** - * Convert DateTime/Zend_Date to AMF date - * - * @param DateTime|Zend_Date $date - * @return Zend_Amf_Parse_Amf3_Serializer - */ - public function writeDate($date) - { - if ($this->writeObjectReference($date)) { - return $this; - } - - if ($date instanceof DateTime) { - $dateString = $date->format('U') * 1000; - } elseif ($date instanceof Zend_Date) { - $dateString = $date->toString('U') * 1000; - } else { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Invalid date specified; must be a string DateTime or Zend_Date object'); - } - - $this->writeInteger(0x01); - // write time to stream minus milliseconds - $this->_stream->writeDouble($dateString); - return $this; - } - - /** - * Write a PHP array back to the amf output stream - * - * @param array $array - * @return Zend_Amf_Parse_Amf3_Serializer - */ - public function writeArray(&$array) - { - // arrays aren't reference here but still counted - $this->_referenceObjects[] = $array; - - // have to seperate mixed from numberic keys. - $numeric = array(); - $string = array(); - foreach ($array as $key => &$value) { - if (is_int($key)) { - $numeric[] = $value; - } else { - $string[$key] = $value; - } - } - - // write the preamble id of the array - $length = count($numeric); - $id = ($length << 1) | 0x01; - $this->writeInteger($id); - - //Write the mixed type array to the output stream - foreach($string as $key => &$value) { - $this->writeString($key) - ->writeTypeMarker($value); - } - $this->writeString($this->_strEmpty); - - // Write the numeric array to ouput stream - foreach($numeric as &$value) { - $this->writeTypeMarker($value); - } - return $this; - } - - /** - * Check if the given object is in the reference table, write the reference if it exists, - * otherwise add the object to the reference table - * - * @param mixed $object object reference to check for reference - * @param mixed $objectByVal object to check for reference - * @return Boolean true, if the reference was written, false otherwise - */ - protected function writeObjectReference(&$object, $objectByVal = false) - { - // Workaround for PHP5 with E_STRICT enabled complaining about "Only - // variables should be passed by reference" - if ((null === $object) && ($objectByVal !== false)) { - $object = &$objectByVal; - } - - $hash = spl_object_hash($object); - $ref = array_key_exists($hash, $this->_referenceObjects) - ? $this->_referenceObjects[$hash] - : false; - - // quickly handle object references - if ($ref !== false){ - $ref <<= 1; - $this->writeInteger($ref); - return true; - } - $this->_referenceObjects[$hash] = count($this->_referenceObjects); - return false; - } - - /** - * Write object to ouput stream - * - * @param mixed $data - * @return Zend_Amf_Parse_Amf3_Serializer - */ - public function writeObject($object) - { - if($this->writeObjectReference($object)){ - return $this; - } - - $className = ''; - - //Check to see if the object is a typed object and we need to change - switch (true) { - // the return class mapped name back to actionscript class name. - case ($className = Zend_Amf_Parse_TypeLoader::getMappedClassName(get_class($object))): - break; - - // Check to see if the user has defined an explicit Action Script type. - case isset($object->_explicitType): - $className = $object->_explicitType; - break; - - // Check if user has defined a method for accessing the Action Script type - case method_exists($object, 'getASClassName'): - $className = $object->getASClassName(); - break; - - // No return class name is set make it a generic object - case ($object instanceof stdClass): - $className = ''; - break; - - // By default, use object's class name - default: - $className = get_class($object); - break; - } - - $writeTraits = true; - - //check to see, if we have a corresponding definition - if(array_key_exists($className, $this->_referenceDefinitions)){ - $traitsInfo = $this->_referenceDefinitions[$className]['id']; - $encoding = $this->_referenceDefinitions[$className]['encoding']; - $propertyNames = $this->_referenceDefinitions[$className]['propertyNames']; - - $traitsInfo = ($traitsInfo << 2) | 0x01; - - $writeTraits = false; - } else { - $propertyNames = array(); - - if($className == ''){ - //if there is no className, we interpret the class as dynamic without any sealed members - $encoding = Zend_Amf_Constants::ET_DYNAMIC; - } else { - $encoding = Zend_Amf_Constants::ET_PROPLIST; - - foreach($object as $key => $value) { - if( $key[0] != "_") { - $propertyNames[] = $key; - } - } - } - - $this->_referenceDefinitions[$className] = array( - 'id' => count($this->_referenceDefinitions), - 'encoding' => $encoding, - 'propertyNames' => $propertyNames, - ); - - $traitsInfo = Zend_Amf_Constants::AMF3_OBJECT_ENCODING; - $traitsInfo |= $encoding << 2; - $traitsInfo |= (count($propertyNames) << 4); - } - - $this->writeInteger($traitsInfo); - - if($writeTraits){ - $this->writeString($className); - foreach ($propertyNames as $value) { - $this->writeString($value); - } - } - - try { - switch($encoding) { - case Zend_Amf_Constants::ET_PROPLIST: - //Write the sealed values to the output stream. - foreach ($propertyNames as $key) { - $this->writeTypeMarker($object->$key); - } - break; - case Zend_Amf_Constants::ET_DYNAMIC: - //Write the sealed values to the output stream. - foreach ($propertyNames as $key) { - $this->writeTypeMarker($object->$key); - } - - //Write remaining properties - foreach($object as $key => $value){ - if(!in_array($key,$propertyNames) && $key[0] != "_"){ - $this->writeString($key); - $this->writeTypeMarker($value); - } - } - - //Write an empty string to end the dynamic part - $this->writeString($this->_strEmpty); - break; - case Zend_Amf_Constants::ET_EXTERNAL: - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('External Object Encoding not implemented'); - break; - default: - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Unknown Object Encoding type: ' . $encoding); - } - } catch (Exception $e) { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Unable to writeObject output: ' . $e->getMessage(), 0, $e); - } - - return $this; - } -} diff --git a/library/Zend/Amf/Parse/Deserializer.php b/library/Zend/Amf/Parse/Deserializer.php deleted file mode 100644 index 6c563678..00000000 --- a/library/Zend/Amf/Parse/Deserializer.php +++ /dev/null @@ -1,65 +0,0 @@ -_stream = $stream; - } - - /** - * Checks for AMF marker types and calls the appropriate methods - * for deserializing those marker types. Markers are the data type of - * the following value. - * - * @param int $typeMarker - * @return mixed Whatever the data type is of the marker in php - */ - public abstract function readTypeMarker($markerType = null); -} diff --git a/library/Zend/Amf/Parse/InputStream.php b/library/Zend/Amf/Parse/InputStream.php deleted file mode 100644 index af52ca70..00000000 --- a/library/Zend/Amf/Parse/InputStream.php +++ /dev/null @@ -1,39 +0,0 @@ - Value is Mysql type (exact string) => PHP type - */ - static public $fieldTypes = array( - "int" => "int", - "timestamp" => "int", - "year" => "int", - "real" => "float", - ); - /** - * Parse resource into array - * - * @param resource $resource - * @return array - */ - public function parse($resource) { - $result = array(); - $fieldcnt = mysql_num_fields($resource); - $fields_transform = array(); - for($i=0;$i<$fieldcnt;$i++) { - $type = mysql_field_type($resource, $i); - if(isset(self::$fieldTypes[$type])) { - $fields_transform[mysql_field_name($resource, $i)] = self::$fieldTypes[$type]; - } - } - - while($row = mysql_fetch_object($resource)) { - foreach($fields_transform as $fieldname => $fieldtype) { - settype($row->$fieldname, $fieldtype); - } - $result[] = $row; - } - return $result; - } -} diff --git a/library/Zend/Amf/Parse/Resource/MysqliResult.php b/library/Zend/Amf/Parse/Resource/MysqliResult.php deleted file mode 100644 index c549fadd..00000000 --- a/library/Zend/Amf/Parse/Resource/MysqliResult.php +++ /dev/null @@ -1,128 +0,0 @@ - "MYSQLI_TYPE_DECIMAL", - 1 => "MYSQLI_TYPE_TINYINT", - 2 => "MYSQLI_TYPE_SMALLINT", - 3 => "MYSQLI_TYPE_INTEGER", - 4 => "MYSQLI_TYPE_FLOAT", - 5 => "MYSQLI_TYPE_DOUBLE", - 7 => "MYSQLI_TYPE_TIMESTAMP", - 8 => "MYSQLI_TYPE_BIGINT", - 9 => "MYSQLI_TYPE_MEDIUMINT", - 10 => "MYSQLI_TYPE_DATE", - 11 => "MYSQLI_TYPE_TIME", - 12 => "MYSQLI_TYPE_DATETIME", - 13 => "MYSQLI_TYPE_YEAR", - 14 => "MYSQLI_TYPE_DATE", - 16 => "MYSQLI_TYPE_BIT", - 246 => "MYSQLI_TYPE_DECIMAL", - 247 => "MYSQLI_TYPE_ENUM", - 248 => "MYSQLI_TYPE_SET", - 249 => "MYSQLI_TYPE_TINYBLOB", - 250 => "MYSQLI_TYPE_MEDIUMBLOB", - 251 => "MYSQLI_TYPE_LONGBLOB", - 252 => "MYSQLI_TYPE_BLOB", - 253 => "MYSQLI_TYPE_VARCHAR", - 254 => "MYSQLI_TYPE_CHAR", - 255 => "MYSQLI_TYPE_GEOMETRY", - ); - - // Build an associative array for a type look up - static $mysqli_to_php = array( - "MYSQLI_TYPE_DECIMAL" => 'float', - "MYSQLI_TYPE_NEWDECIMAL" => 'float', - "MYSQLI_TYPE_BIT" => 'integer', - "MYSQLI_TYPE_TINYINT" => 'integer', - "MYSQLI_TYPE_SMALLINT" => 'integer', - "MYSQLI_TYPE_MEDIUMINT" => 'integer', - "MYSQLI_TYPE_BIGINT" => 'integer', - "MYSQLI_TYPE_INTEGER" => 'integer', - "MYSQLI_TYPE_FLOAT" => 'float', - "MYSQLI_TYPE_DOUBLE" => 'float', - "MYSQLI_TYPE_NULL" => 'null', - "MYSQLI_TYPE_TIMESTAMP" => 'string', - "MYSQLI_TYPE_INT24" => 'integer', - "MYSQLI_TYPE_DATE" => 'string', - "MYSQLI_TYPE_TIME" => 'string', - "MYSQLI_TYPE_DATETIME" => 'string', - "MYSQLI_TYPE_YEAR" => 'string', - "MYSQLI_TYPE_NEWDATE" => 'string', - "MYSQLI_TYPE_ENUM" => 'string', - "MYSQLI_TYPE_SET" => 'string', - "MYSQLI_TYPE_TINYBLOB" => 'object', - "MYSQLI_TYPE_MEDIUMBLOB" => 'object', - "MYSQLI_TYPE_LONGBLOB" => 'object', - "MYSQLI_TYPE_BLOB" => 'object', - "MYSQLI_TYPE_CHAR" => 'string', - "MYSQLI_TYPE_VARCHAR" => 'string', - "MYSQLI_TYPE_GEOMETRY" => 'object', - "MYSQLI_TYPE_BIT" => 'integer', - ); - - /** - * Parse resource into array - * - * @param resource $resource - * @return array - */ - public function parse($resource) { - - $result = array(); - $fieldcnt = mysqli_num_fields($resource); - - - $fields_transform = array(); - - for($i=0;$i<$fieldcnt;$i++) { - $finfo = mysqli_fetch_field_direct($resource, $i); - - if(isset(self::$mysqli_type[$finfo->type])) { - $fields_transform[$finfo->name] = self::$mysqli_to_php[self::$mysqli_type[$finfo->type]]; - } - } - - while($row = mysqli_fetch_assoc($resource)) { - foreach($fields_transform as $fieldname => $fieldtype) { - settype($row[$fieldname], $fieldtype); - } - $result[] = $row; - } - return $result; - } -} diff --git a/library/Zend/Amf/Parse/Resource/Stream.php b/library/Zend/Amf/Parse/Resource/Stream.php deleted file mode 100644 index 2f6ee88f..00000000 --- a/library/Zend/Amf/Parse/Resource/Stream.php +++ /dev/null @@ -1,42 +0,0 @@ -_stream = $stream; - $this->_mbStringFunctionsOverloaded = function_exists('mb_strlen') && (ini_get('mbstring.func_overload') !== '') && ((int)ini_get('mbstring.func_overload') & 2); - } - - /** - * Find the PHP object type and convert it into an AMF object type - * - * @param mixed $content - * @param int $markerType - * @param mixed $contentByVal - * @return void - */ - public abstract function writeTypeMarker(&$content, $markerType = null, $contentByVal = false); -} diff --git a/library/Zend/Amf/Parse/TypeLoader.php b/library/Zend/Amf/Parse/TypeLoader.php deleted file mode 100644 index f5190b22..00000000 --- a/library/Zend/Amf/Parse/TypeLoader.php +++ /dev/null @@ -1,231 +0,0 @@ - 'Zend_Amf_Value_Messaging_AcknowledgeMessage', - 'flex.messaging.messages.ErrorMessage' => 'Zend_Amf_Value_Messaging_AsyncMessage', - 'flex.messaging.messages.CommandMessage' => 'Zend_Amf_Value_Messaging_CommandMessage', - 'flex.messaging.messages.ErrorMessage' => 'Zend_Amf_Value_Messaging_ErrorMessage', - 'flex.messaging.messages.RemotingMessage' => 'Zend_Amf_Value_Messaging_RemotingMessage', - 'flex.messaging.io.ArrayCollection' => 'Zend_Amf_Value_Messaging_ArrayCollection', - ); - - /** - * @var array Default class map - */ - protected static $_defaultClassMap = array( - 'flex.messaging.messages.AcknowledgeMessage' => 'Zend_Amf_Value_Messaging_AcknowledgeMessage', - 'flex.messaging.messages.ErrorMessage' => 'Zend_Amf_Value_Messaging_AsyncMessage', - 'flex.messaging.messages.CommandMessage' => 'Zend_Amf_Value_Messaging_CommandMessage', - 'flex.messaging.messages.ErrorMessage' => 'Zend_Amf_Value_Messaging_ErrorMessage', - 'flex.messaging.messages.RemotingMessage' => 'Zend_Amf_Value_Messaging_RemotingMessage', - 'flex.messaging.io.ArrayCollection' => 'Zend_Amf_Value_Messaging_ArrayCollection', - ); - - /** - * @var Zend_Loader_PluginLoader_Interface - */ - protected static $_resourceLoader = null; - - - /** - * Load the mapped class type into a callback. - * - * @param string $className - * @return object|false - */ - public static function loadType($className) - { - $class = self::getMappedClassName($className); - if(!$class) { - $class = str_replace('.', '_', $className); - } - if (!class_exists($class)) { - return "stdClass"; - } - return $class; - } - - /** - * Looks up the supplied call name to its mapped class name - * - * @param string $className - * @return string - */ - public static function getMappedClassName($className) - { - $mappedName = array_search($className, self::$classMap); - - if ($mappedName) { - return $mappedName; - } - - $mappedName = array_search($className, array_flip(self::$classMap)); - - if ($mappedName) { - return $mappedName; - } - - return false; - } - - /** - * Map PHP class names to ActionScript class names - * - * Allows users to map the class names of there action script classes - * to the equivelent php class name. Used in deserialization to load a class - * and serialiation to set the class name of the returned object. - * - * @param string $asClassName - * @param string $phpClassName - * @return void - */ - public static function setMapping($asClassName, $phpClassName) - { - self::$classMap[$asClassName] = $phpClassName; - } - - /** - * Reset type map - * - * @return void - */ - public static function resetMap() - { - self::$classMap = self::$_defaultClassMap; - } - - /** - * Set loader for resource type handlers - * - * @param Zend_Loader_PluginLoader_Interface $loader - */ - public static function setResourceLoader(Zend_Loader_PluginLoader_Interface $loader) - { - self::$_resourceLoader = $loader; - } - - /** - * Add directory to the list of places where to look for resource handlers - * - * @param string $prefix - * @param string $dir - */ - public static function addResourceDirectory($prefix, $dir) - { - if(self::$_resourceLoader) { - self::$_resourceLoader->addPrefixPath($prefix, $dir); - } - } - - /** - * Get plugin class that handles this resource - * - * @param resource $resource Resource type - * @return string Class name - */ - public static function getResourceParser($resource) - { - if(self::$_resourceLoader) { - $type = preg_replace("/[^A-Za-z0-9_]/", " ", get_resource_type($resource)); - $type = str_replace(" ","", ucwords($type)); - return self::$_resourceLoader->load($type); - } - return false; - } - - /** - * Convert resource to a serializable object - * - * @param resource $resource - * @return mixed - */ - public static function handleResource($resource) - { - if(!self::$_resourceLoader) { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Unable to handle resources - resource plugin loader not set'); - } - try { - while(is_resource($resource)) { - $resclass = self::getResourceParser($resource); - if(!$resclass) { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Can not serialize resource type: '. get_resource_type($resource)); - } - $parser = new $resclass(); - if(is_callable(array($parser, 'parse'))) { - $resource = $parser->parse($resource); - } else { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception("Could not call parse() method on class $resclass"); - } - } - return $resource; - } catch(Zend_Amf_Exception $e) { - throw new Zend_Amf_Exception($e->getMessage(), $e->getCode(), $e); - } catch(Exception $e) { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Can not serialize resource type: '. get_resource_type($resource), 0, $e); - } - } -} diff --git a/library/Zend/Amf/Request.php b/library/Zend/Amf/Request.php deleted file mode 100644 index 289b8c28..00000000 --- a/library/Zend/Amf/Request.php +++ /dev/null @@ -1,251 +0,0 @@ -_inputStream = new Zend_Amf_Parse_InputStream($request); - $this->_deserializer = new Zend_Amf_Parse_Amf0_Deserializer($this->_inputStream); - $this->readMessage($this->_inputStream); - return $this; - } - - /** - * Takes the raw AMF input stream and converts it into valid PHP objects - * - * @param Zend_Amf_Parse_InputStream - * @return Zend_Amf_Request - */ - public function readMessage(Zend_Amf_Parse_InputStream $stream) - { - $clientVersion = $stream->readUnsignedShort(); - if (($clientVersion != Zend_Amf_Constants::AMF0_OBJECT_ENCODING) - && ($clientVersion != Zend_Amf_Constants::AMF3_OBJECT_ENCODING) - && ($clientVersion != Zend_Amf_Constants::FMS_OBJECT_ENCODING) - ) { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Unknown Player Version ' . $clientVersion); - } - - $this->_bodies = array(); - $this->_headers = array(); - $headerCount = $stream->readInt(); - - // Iterate through the AMF envelope header - while ($headerCount--) { - $this->_headers[] = $this->readHeader(); - } - - // Iterate through the AMF envelope body - $bodyCount = $stream->readInt(); - while ($bodyCount--) { - $this->_bodies[] = $this->readBody(); - } - - return $this; - } - - /** - * Deserialize a message header from the input stream. - * - * A message header is structured as: - * - NAME String - * - MUST UNDERSTAND Boolean - * - LENGTH Int - * - DATA Object - * - * @return Zend_Amf_Value_MessageHeader - */ - public function readHeader() - { - $name = $this->_inputStream->readUTF(); - $mustRead = (bool)$this->_inputStream->readByte(); - $length = $this->_inputStream->readLong(); - - try { - $data = $this->_deserializer->readTypeMarker(); - } catch (Exception $e) { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Unable to parse ' . $name . ' header data: ' . $e->getMessage() . ' '. $e->getLine(), 0, $e); - } - - $header = new Zend_Amf_Value_MessageHeader($name, $mustRead, $data, $length); - return $header; - } - - /** - * Deserialize a message body from the input stream - * - * @return Zend_Amf_Value_MessageBody - */ - public function readBody() - { - $targetURI = $this->_inputStream->readUTF(); - $responseURI = $this->_inputStream->readUTF(); - $length = $this->_inputStream->readLong(); - - try { - $data = $this->_deserializer->readTypeMarker(); - } catch (Exception $e) { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Unable to parse ' . $targetURI . ' body data ' . $e->getMessage(), 0, $e); - } - - // Check for AMF3 objectEncoding - if ($this->_deserializer->getObjectEncoding() == Zend_Amf_Constants::AMF3_OBJECT_ENCODING) { - /* - * When and AMF3 message is sent to the server it is nested inside - * an AMF0 array called Content. The following code gets the object - * out of the content array and sets it as the message data. - */ - if(is_array($data) && $data[0] instanceof Zend_Amf_Value_Messaging_AbstractMessage){ - $data = $data[0]; - } - - // set the encoding so we return our message in AMF3 - $this->_objectEncoding = Zend_Amf_Constants::AMF3_OBJECT_ENCODING; - } - - $body = new Zend_Amf_Value_MessageBody($targetURI, $responseURI, $data); - return $body; - } - - /** - * Return an array of the body objects that were found in the amf request. - * - * @return array {target, response, length, content} - */ - public function getAmfBodies() - { - return $this->_bodies; - } - - /** - * Accessor to private array of message bodies. - * - * @param Zend_Amf_Value_MessageBody $message - * @return Zend_Amf_Request - */ - public function addAmfBody(Zend_Amf_Value_MessageBody $message) - { - $this->_bodies[] = $message; - return $this; - } - - /** - * Return an array of headers that were found in the amf request. - * - * @return array {operation, mustUnderstand, length, param} - */ - public function getAmfHeaders() - { - return $this->_headers; - } - - /** - * Return the either 0 or 3 for respect AMF version - * - * @return int - */ - public function getObjectEncoding() - { - return $this->_objectEncoding; - } - - /** - * Set the object response encoding - * - * @param mixed $int - * @return Zend_Amf_Request - */ - public function setObjectEncoding($int) - { - $this->_objectEncoding = $int; - return $this; - } -} diff --git a/library/Zend/Amf/Request/Http.php b/library/Zend/Amf/Request/Http.php deleted file mode 100644 index b7952770..00000000 --- a/library/Zend/Amf/Request/Http.php +++ /dev/null @@ -1,80 +0,0 @@ -_rawRequest = $amfRequest; - $this->initialize($amfRequest); - } else { - echo '

        Zend Amf Endpoint

        ' ; - } - } - - /** - * Retrieve raw AMF Request - * - * @return string - */ - public function getRawRequest() - { - return $this->_rawRequest; - } -} diff --git a/library/Zend/Amf/Response.php b/library/Zend/Amf/Response.php deleted file mode 100644 index cac34dec..00000000 --- a/library/Zend/Amf/Response.php +++ /dev/null @@ -1,205 +0,0 @@ -_outputStream = new Zend_Amf_Parse_OutputStream(); - $this->writeMessage($this->_outputStream); - return $this; - } - - /** - * Serialize the PHP data types back into Actionscript and - * create and AMF stream. - * - * @param Zend_Amf_Parse_OutputStream $stream - * @return Zend_Amf_Response - */ - public function writeMessage(Zend_Amf_Parse_OutputStream $stream) - { - $objectEncoding = $this->_objectEncoding; - - //Write encoding to start of stream. Preamble byte is written of two byte Unsigned Short - $stream->writeByte(0x00); - $stream->writeByte($objectEncoding); - - // Loop through the AMF Headers that need to be returned. - $headerCount = count($this->_headers); - $stream->writeInt($headerCount); - foreach ($this->getAmfHeaders() as $header) { - $serializer = new Zend_Amf_Parse_Amf0_Serializer($stream); - $stream->writeUTF($header->name); - $stream->writeByte($header->mustRead); - $stream->writeLong(Zend_Amf_Constants::UNKNOWN_CONTENT_LENGTH); - if (is_object($header->data)) { - // Workaround for PHP5 with E_STRICT enabled complaining about - // "Only variables should be passed by reference" - $placeholder = null; - $serializer->writeTypeMarker($placeholder, null, $header->data); - } else { - $serializer->writeTypeMarker($header->data); - } - } - - // loop through the AMF bodies that need to be returned. - $bodyCount = count($this->_bodies); - $stream->writeInt($bodyCount); - foreach ($this->_bodies as $body) { - $serializer = new Zend_Amf_Parse_Amf0_Serializer($stream); - $stream->writeUTF($body->getTargetURI()); - $stream->writeUTF($body->getResponseURI()); - $stream->writeLong(Zend_Amf_Constants::UNKNOWN_CONTENT_LENGTH); - $bodyData = $body->getData(); - $markerType = ($this->_objectEncoding == Zend_Amf_Constants::AMF0_OBJECT_ENCODING) ? null : Zend_Amf_Constants::AMF0_AMF3; - if (is_object($bodyData)) { - // Workaround for PHP5 with E_STRICT enabled complaining about - // "Only variables should be passed by reference" - $placeholder = null; - $serializer->writeTypeMarker($placeholder, $markerType, $bodyData); - } else { - $serializer->writeTypeMarker($bodyData, $markerType); - } - } - - return $this; - } - - /** - * Return the output stream content - * - * @return string The contents of the output stream - */ - public function getResponse() - { - return $this->_outputStream->getStream(); - } - - /** - * Return the output stream content - * - * @return string - */ - public function __toString() - { - return $this->getResponse(); - } - - /** - * Add an AMF body to be sent to the Flash Player - * - * @param Zend_Amf_Value_MessageBody $body - * @return Zend_Amf_Response - */ - public function addAmfBody(Zend_Amf_Value_MessageBody $body) - { - $this->_bodies[] = $body; - return $this; - } - - /** - * Return an array of AMF bodies to be serialized - * - * @return array - */ - public function getAmfBodies() - { - return $this->_bodies; - } - - /** - * Add an AMF Header to be sent back to the flash player - * - * @param Zend_Amf_Value_MessageHeader $header - * @return Zend_Amf_Response - */ - public function addAmfHeader(Zend_Amf_Value_MessageHeader $header) - { - $this->_headers[] = $header; - return $this; - } - - /** - * Retrieve attached AMF message headers - * - * @return array Array of Zend_Amf_Value_MessageHeader objects - */ - public function getAmfHeaders() - { - return $this->_headers; - } - - /** - * Set the AMF encoding that will be used for serialization - * - * @param int $encoding - * @return Zend_Amf_Response - */ - public function setObjectEncoding($encoding) - { - $this->_objectEncoding = $encoding; - return $this; - } -} diff --git a/library/Zend/Amf/Response/Http.php b/library/Zend/Amf/Response/Http.php deleted file mode 100644 index 0e52c783..00000000 --- a/library/Zend/Amf/Response/Http.php +++ /dev/null @@ -1,73 +0,0 @@ -isIeOverSsl()) { - header('Cache-Control: cache, must-revalidate'); - header('Pragma: public'); - } else { - header('Cache-Control: no-cache, must-revalidate'); - header('Pragma: no-cache'); - } - header('Expires: Thu, 19 Nov 1981 08:52:00 GMT'); - header('Content-Type: application/x-amf'); - } - return parent::getResponse(); - } - - protected function isIeOverSsl() - { - $ssl = isset($_SERVER['HTTPS']) ? $_SERVER['HTTPS'] : false; - if (!$ssl || ($ssl == 'off')) { - // IIS reports "off", whereas other browsers simply don't populate - return false; - } - - $ua = $_SERVER['HTTP_USER_AGENT']; - if (!preg_match('/; MSIE \d+\.\d+;/', $ua)) { - // Not MicroSoft Internet Explorer - return false; - } - - return true; - } -} diff --git a/library/Zend/Amf/Server.php b/library/Zend/Amf/Server.php deleted file mode 100644 index c2ca7091..00000000 --- a/library/Zend/Amf/Server.php +++ /dev/null @@ -1,1048 +0,0 @@ - method pairs - * @var array - */ - protected $_table = array(); - - /** - * - * @var bool session flag; whether or not to add a session to each response. - */ - protected $_session = false; - - /** - * Namespace allows all AMF calls to not clobber other PHP session variables - * @var Zend_Session_NameSpace default session namespace zend_amf - */ - protected $_sesionNamespace = 'zend_amf'; - - /** - * Set the default session.name if php_ - * @var string - */ - protected $_sessionName = 'PHPSESSID'; - - /** - * Authentication handler object - * - * @var Zend_Amf_Auth_Abstract - */ - protected $_auth; - /** - * ACL handler object - * - * @var Zend_Acl - */ - protected $_acl; - /** - * The server constructor - */ - public function __construct() - { - Zend_Amf_Parse_TypeLoader::setResourceLoader(new Zend_Loader_PluginLoader(array("Zend_Amf_Parse_Resource" => "Zend/Amf/Parse/Resource"))); - } - - /** - * Set authentication adapter - * - * If the authentication adapter implements a "getAcl()" method, populate - * the ACL of this instance with it (if none exists already). - * - * @param Zend_Amf_Auth_Abstract $auth - * @return Zend_Amf_Server - */ - public function setAuth(Zend_Amf_Auth_Abstract $auth) - { - $this->_auth = $auth; - if ((null === $this->getAcl()) && method_exists($auth, 'getAcl')) { - $this->setAcl($auth->getAcl()); - } - return $this; - } - /** - * Get authentication adapter - * - * @return Zend_Amf_Auth_Abstract - */ - public function getAuth() - { - return $this->_auth; - } - - /** - * Set ACL adapter - * - * @param Zend_Acl $acl - * @return Zend_Amf_Server - */ - public function setAcl(Zend_Acl $acl) - { - $this->_acl = $acl; - return $this; - } - /** - * Get ACL adapter - * - * @return Zend_Acl - */ - public function getAcl() - { - return $this->_acl; - } - - /** - * Set production flag - * - * @param bool $flag - * @return Zend_Amf_Server - */ - public function setProduction($flag) - { - $this->_production = (bool) $flag; - return $this; - } - - /** - * Whether or not the server is in production - * - * @return bool - */ - public function isProduction() - { - return $this->_production; - } - - /** - * @param namespace of all incoming sessions defaults to Zend_Amf - * @return Zend_Amf_Server - */ - public function setSession($namespace = 'Zend_Amf') - { - require_once 'Zend/Session.php'; - $this->_session = true; - $this->_sesionNamespace = new Zend_Session_Namespace($namespace); - return $this; - } - - /** - * Whether of not the server is using sessions - * @return bool - */ - public function isSession() - { - return $this->_session; - } - - /** - * Check if the ACL allows accessing the function or method - * - * @param string|object $object Object or class being accessed - * @param string $function Function or method being accessed - * @return unknown_type - */ - protected function _checkAcl($object, $function) - { - if(!$this->_acl) { - return true; - } - if($object) { - $class = is_object($object)?get_class($object):$object; - if(!$this->_acl->has($class)) { - require_once 'Zend/Acl/Resource.php'; - $this->_acl->add(new Zend_Acl_Resource($class)); - } - $call = array($object, "initAcl"); - if(is_callable($call) && !call_user_func($call, $this->_acl)) { - // if initAcl returns false, no ACL check - return true; - } - } else { - $class = null; - } - - $auth = Zend_Auth::getInstance(); - if($auth->hasIdentity()) { - $role = $auth->getIdentity()->role; - } else { - if($this->_acl->hasRole(Zend_Amf_Constants::GUEST_ROLE)) { - $role = Zend_Amf_Constants::GUEST_ROLE; - } else { - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception("Unauthenticated access not allowed"); - } - } - if($this->_acl->isAllowed($role, $class, $function)) { - return true; - } else { - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception("Access not allowed"); - } - } - - /** - * Get PluginLoader for the Server - * - * @return Zend_Loader_PluginLoader - */ - protected function getLoader() - { - if(empty($this->_loader)) { - require_once 'Zend/Loader/PluginLoader.php'; - $this->_loader = new Zend_Loader_PluginLoader(); - } - return $this->_loader; - } - - /** - * Loads a remote class or method and executes the function and returns - * the result - * - * @param string $method Is the method to execute - * @param mixed $param values for the method - * @return mixed $response the result of executing the method - * @throws Zend_Amf_Server_Exception - */ - protected function _dispatch($method, $params = null, $source = null) - { - if($source) { - if(($mapped = Zend_Amf_Parse_TypeLoader::getMappedClassName($source)) !== false) { - $source = $mapped; - } - } - $qualifiedName = empty($source) ? $method : $source . '.' . $method; - - if (!isset($this->_table[$qualifiedName])) { - // if source is null a method that was not defined was called. - if ($source) { - $className = str_replace('.', '_', $source); - if(class_exists($className, false) && !isset($this->_classAllowed[$className])) { - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception('Can not call "' . $className . '" - use setClass()'); - } - try { - $this->getLoader()->load($className); - } catch (Exception $e) { - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception('Class "' . $className . '" does not exist: '.$e->getMessage(), 0, $e); - } - // Add the new loaded class to the server. - require_once 'Zend/Amf/Server/Exception.php'; - $this->setClass($className, $source); - } - - if (!isset($this->_table[$qualifiedName])) { - // Source is null or doesn't contain specified method - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception('Method "' . $method . '" does not exist'); - } - } - - $info = $this->_table[$qualifiedName]; - $argv = $info->getInvokeArguments(); - - if (0 < count($argv)) { - $params = array_merge($params, $argv); - } - - $params = $this->_castParameters($info, $params); - - if ($info instanceof Zend_Server_Reflection_Function) { - $func = $info->getName(); - $this->_checkAcl(null, $func); - $return = call_user_func_array($func, $params); - } elseif ($info instanceof Zend_Server_Reflection_Method) { - // Get class - $class = $info->getDeclaringClass()->getName(); - if ('static' == $info->isStatic()) { - // for some reason, invokeArgs() does not work the same as - // invoke(), and expects the first argument to be an object. - // So, using a callback if the method is static. - $this->_checkAcl($class, $info->getName()); - $return = call_user_func_array(array($class, $info->getName()), $params); - } else { - // Object methods - try { - $object = $info->getDeclaringClass()->newInstance(); - } catch (Exception $e) { - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception('Error instantiating class ' . $class . ' to invoke method ' . $info->getName() . ': '.$e->getMessage(), 621, $e); - } - $this->_checkAcl($object, $info->getName()); - $return = $info->invokeArgs($object, $params); - } - } else { - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception('Method missing implementation ' . get_class($info)); - } - - return $return; - } - - /** - * Handles each of the 11 different command message types. - * - * A command message is a flex.messaging.messages.CommandMessage - * - * @see Zend_Amf_Value_Messaging_CommandMessage - * @param Zend_Amf_Value_Messaging_CommandMessage $message - * @return Zend_Amf_Value_Messaging_AcknowledgeMessage - */ - protected function _loadCommandMessage(Zend_Amf_Value_Messaging_CommandMessage $message) - { - require_once 'Zend/Amf/Value/Messaging/AcknowledgeMessage.php'; - switch($message->operation) { - case Zend_Amf_Value_Messaging_CommandMessage::DISCONNECT_OPERATION : - case Zend_Amf_Value_Messaging_CommandMessage::CLIENT_PING_OPERATION : - $return = new Zend_Amf_Value_Messaging_AcknowledgeMessage($message); - break; - case Zend_Amf_Value_Messaging_CommandMessage::LOGIN_OPERATION : - $data = explode(':', base64_decode($message->body)); - $userid = $data[0]; - $password = isset($data[1])?$data[1]:""; - if(empty($userid)) { - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception('Login failed: username not supplied'); - } - if(!$this->_handleAuth($userid, $password)) { - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception('Authentication failed'); - } - $return = new Zend_Amf_Value_Messaging_AcknowledgeMessage($message); - break; - case Zend_Amf_Value_Messaging_CommandMessage::LOGOUT_OPERATION : - if($this->_auth) { - Zend_Auth::getInstance()->clearIdentity(); - } - $return = new Zend_Amf_Value_Messaging_AcknowledgeMessage($message); - break; - default : - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception('CommandMessage::' . $message->operation . ' not implemented'); - break; - } - return $return; - } - - /** - * Create appropriate error message - * - * @param int $objectEncoding Current AMF encoding - * @param string $message Message that was being processed when error happened - * @param string $description Error description - * @param mixed $detail Detailed data about the error - * @param int $code Error code - * @param int $line Error line - * @return Zend_Amf_Value_Messaging_ErrorMessage|array - */ - protected function _errorMessage($objectEncoding, $message, $description, $detail, $code, $line) - { - $return = null; - switch ($objectEncoding) { - case Zend_Amf_Constants::AMF0_OBJECT_ENCODING : - return array ( - 'description' => ($this->isProduction ()) ? '' : $description, - 'detail' => ($this->isProduction ()) ? '' : $detail, - 'line' => ($this->isProduction ()) ? 0 : $line, - 'code' => $code - ); - case Zend_Amf_Constants::AMF3_OBJECT_ENCODING : - require_once 'Zend/Amf/Value/Messaging/ErrorMessage.php'; - $return = new Zend_Amf_Value_Messaging_ErrorMessage ( $message ); - $return->faultString = $this->isProduction () ? '' : $description; - $return->faultCode = $code; - $return->faultDetail = $this->isProduction () ? '' : $detail; - break; - } - return $return; - } - - /** - * Handle AMF authentication - * - * @param string $userid - * @param string $password - * @return boolean - */ - protected function _handleAuth( $userid, $password) - { - if (!$this->_auth) { - return true; - } - $this->_auth->setCredentials($userid, $password); - $auth = Zend_Auth::getInstance(); - $result = $auth->authenticate($this->_auth); - if ($result->isValid()) { - if (!$this->isSession()) { - $this->setSession(); - } - return true; - } else { - // authentication failed, good bye - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception( - "Authentication failed: " . join("\n", - $result->getMessages()), $result->getCode()); - } - - } - - /** - * Takes the deserialized AMF request and performs any operations. - * - * @todo should implement and SPL observer pattern for custom AMF headers - * @todo DescribeService support - * @param Zend_Amf_Request $request - * @return Zend_Amf_Response - * @throws Zend_Amf_server_Exception|Exception - */ - protected function _handle(Zend_Amf_Request $request) - { - // Get the object encoding of the request. - $objectEncoding = $request->getObjectEncoding(); - - // create a response object to place the output from the services. - $response = $this->getResponse(); - - // set response encoding - $response->setObjectEncoding($objectEncoding); - - // Authenticate, if we have credential headers - $error = false; - $headers = $request->getAmfHeaders(); - if (isset($headers[Zend_Amf_Constants::CREDENTIALS_HEADER]) - && isset($headers[Zend_Amf_Constants::CREDENTIALS_HEADER]->userid) - && isset($headers[Zend_Amf_Constants::CREDENTIALS_HEADER]->password) - ) { - try { - if ($this->_handleAuth( - $headers[Zend_Amf_Constants::CREDENTIALS_HEADER]->userid, - $headers[Zend_Amf_Constants::CREDENTIALS_HEADER]->password - )) { - // use RequestPersistentHeader to clear credentials - $response->addAmfHeader( - new Zend_Amf_Value_MessageHeader( - Zend_Amf_Constants::PERSISTENT_HEADER, - false, - new Zend_Amf_Value_MessageHeader( - Zend_Amf_Constants::CREDENTIALS_HEADER, - false, null - ) - ) - ); - } - } catch (Exception $e) { - // Error during authentication; report it - $error = $this->_errorMessage( - $objectEncoding, - '', - $e->getMessage(), - $e->getTraceAsString(), - $e->getCode(), - $e->getLine() - ); - $responseType = Zend_AMF_Constants::STATUS_METHOD; - } - } - - // Iterate through each of the service calls in the AMF request - foreach($request->getAmfBodies() as $body) - { - if ($error) { - // Error during authentication; just report it and be done - $responseURI = $body->getResponseURI() . $responseType; - $newBody = new Zend_Amf_Value_MessageBody($responseURI, null, $error); - $response->addAmfBody($newBody); - continue; - } - try { - switch ($objectEncoding) { - case Zend_Amf_Constants::AMF0_OBJECT_ENCODING: - // AMF0 Object Encoding - $targetURI = $body->getTargetURI(); - $message = ''; - - // Split the target string into its values. - $source = substr($targetURI, 0, strrpos($targetURI, '.')); - - if ($source) { - // Break off method name from namespace into source - $method = substr(strrchr($targetURI, '.'), 1); - $return = $this->_dispatch($method, $body->getData(), $source); - } else { - // Just have a method name. - $return = $this->_dispatch($targetURI, $body->getData()); - } - break; - case Zend_Amf_Constants::AMF3_OBJECT_ENCODING: - default: - // AMF3 read message type - $message = $body->getData(); - if ($message instanceof Zend_Amf_Value_Messaging_CommandMessage) { - // async call with command message - $return = $this->_loadCommandMessage($message); - } elseif ($message instanceof Zend_Amf_Value_Messaging_RemotingMessage) { - require_once 'Zend/Amf/Value/Messaging/AcknowledgeMessage.php'; - $return = new Zend_Amf_Value_Messaging_AcknowledgeMessage($message); - $return->body = $this->_dispatch($message->operation, $message->body, $message->source); - } else { - // Amf3 message sent with netConnection - $targetURI = $body->getTargetURI(); - - // Split the target string into its values. - $source = substr($targetURI, 0, strrpos($targetURI, '.')); - - if ($source) { - // Break off method name from namespace into source - $method = substr(strrchr($targetURI, '.'), 1); - $return = $this->_dispatch($method, $body->getData(), $source); - } else { - // Just have a method name. - $return = $this->_dispatch($targetURI, $body->getData()); - } - } - break; - } - $responseType = Zend_AMF_Constants::RESULT_METHOD; - } catch (Exception $e) { - $return = $this->_errorMessage($objectEncoding, $message, - $e->getMessage(), $e->getTraceAsString(),$e->getCode(), $e->getLine()); - $responseType = Zend_AMF_Constants::STATUS_METHOD; - } - - $responseURI = $body->getResponseURI() . $responseType; - $newBody = new Zend_Amf_Value_MessageBody($responseURI, null, $return); - $response->addAmfBody($newBody); - } - // Add a session header to the body if session is requested. - if($this->isSession()) { - $currentID = session_id(); - $joint = "?"; - if(isset($_SERVER['QUERY_STRING'])) { - if(!strpos($_SERVER['QUERY_STRING'], $currentID) !== FALSE) { - if(strrpos($_SERVER['QUERY_STRING'], "?") !== FALSE) { - $joint = "&"; - } - } - } - - // create a new AMF message header with the session id as a variable. - $sessionValue = $joint . $this->_sessionName . "=" . $currentID; - $sessionHeader = new Zend_Amf_Value_MessageHeader(Zend_Amf_Constants::URL_APPEND_HEADER, false, $sessionValue); - $response->addAmfHeader($sessionHeader); - } - - // serialize the response and return serialized body. - $response->finalize(); - } - - /** - * Handle an AMF call from the gateway. - * - * @param null|Zend_Amf_Request $request Optional - * @return Zend_Amf_Response - */ - public function handle($request = null) - { - // Check if request was passed otherwise get it from the server - if ($request === null || !$request instanceof Zend_Amf_Request) { - $request = $this->getRequest(); - } else { - $this->setRequest($request); - } - if ($this->isSession()) { - // Check if a session is being sent from the amf call - if (isset($_COOKIE[$this->_sessionName])) { - session_id($_COOKIE[$this->_sessionName]); - } - } - - // Check for errors that may have happend in deserialization of Request. - try { - // Take converted PHP objects and handle service call. - // Serialize to Zend_Amf_response for output stream - $this->_handle($request); - $response = $this->getResponse(); - } catch (Exception $e) { - // Handle any errors in the serialization and service calls. - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception('Handle error: ' . $e->getMessage() . ' ' . $e->getLine(), 0, $e); - } - - // Return the Amf serialized output string - return $response; - } - - /** - * Set request object - * - * @param string|Zend_Amf_Request $request - * @return Zend_Amf_Server - */ - public function setRequest($request) - { - if (is_string($request) && class_exists($request)) { - $request = new $request(); - if (!$request instanceof Zend_Amf_Request) { - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception('Invalid request class'); - } - } elseif (!$request instanceof Zend_Amf_Request) { - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception('Invalid request object'); - } - $this->_request = $request; - return $this; - } - - /** - * Return currently registered request object - * - * @return null|Zend_Amf_Request - */ - public function getRequest() - { - if (null === $this->_request) { - require_once 'Zend/Amf/Request/Http.php'; - $this->setRequest(new Zend_Amf_Request_Http()); - } - - return $this->_request; - } - - /** - * Public access method to private Zend_Amf_Server_Response reference - * - * @param string|Zend_Amf_Server_Response $response - * @return Zend_Amf_Server - */ - public function setResponse($response) - { - if (is_string($response) && class_exists($response)) { - $response = new $response(); - if (!$response instanceof Zend_Amf_Response) { - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception('Invalid response class'); - } - } elseif (!$response instanceof Zend_Amf_Response) { - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception('Invalid response object'); - } - $this->_response = $response; - return $this; - } - - /** - * get a reference to the Zend_Amf_response instance - * - * @return Zend_Amf_Server_Response - */ - public function getResponse() - { - if (null === ($response = $this->_response)) { - require_once 'Zend/Amf/Response/Http.php'; - $this->setResponse(new Zend_Amf_Response_Http()); - } - return $this->_response; - } - - /** - * Attach a class or object to the server - * - * Class may be either a class name or an instantiated object. Reflection - * is done on the class or object to determine the available public - * methods, and each is attached to the server as and available method. If - * a $namespace has been provided, that namespace is used to prefix - * AMF service call. - * - * @param string|object $class - * @param string $namespace Optional - * @param mixed $arg Optional arguments to pass to a method - * @return Zend_Amf_Server - * @throws Zend_Amf_Server_Exception on invalid input - */ - public function setClass($class, $namespace = '', $argv = null) - { - if (is_string($class) && !class_exists($class)){ - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception('Invalid method or class'); - } elseif (!is_string($class) && !is_object($class)) { - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception('Invalid method or class; must be a classname or object'); - } - - $argv = null; - if (2 < func_num_args()) { - $argv = array_slice(func_get_args(), 2); - } - - // Use the class name as the name space by default. - - if ($namespace == '') { - $namespace = is_object($class) ? get_class($class) : $class; - } - - $this->_classAllowed[is_object($class) ? get_class($class) : $class] = true; - - $this->_methods[] = Zend_Server_Reflection::reflectClass($class, $argv, $namespace); - $this->_buildDispatchTable(); - - return $this; - } - - /** - * Attach a function to the server - * - * Additional arguments to pass to the function at dispatch may be passed; - * any arguments following the namespace will be aggregated and passed at - * dispatch time. - * - * @param string|array $function Valid callback - * @param string $namespace Optional namespace prefix - * @return Zend_Amf_Server - * @throws Zend_Amf_Server_Exception - */ - public function addFunction($function, $namespace = '') - { - if (!is_string($function) && !is_array($function)) { - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception('Unable to attach function'); - } - - $argv = null; - if (2 < func_num_args()) { - $argv = array_slice(func_get_args(), 2); - } - - $function = (array) $function; - foreach ($function as $func) { - if (!is_string($func) || !function_exists($func)) { - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception('Unable to attach function'); - } - $this->_methods[] = Zend_Server_Reflection::reflectFunction($func, $argv, $namespace); - } - - $this->_buildDispatchTable(); - return $this; - } - - - /** - * Creates an array of directories in which services can reside. - * TODO: add support for prefixes? - * - * @param string $dir - */ - public function addDirectory($dir) - { - $this->getLoader()->addPrefixPath("", $dir); - } - - /** - * Returns an array of directories that can hold services. - * - * @return array - */ - public function getDirectory() - { - return $this->getLoader()->getPaths(""); - } - - /** - * (Re)Build the dispatch table - * - * The dispatch table consists of a an array of method name => - * Zend_Server_Reflection_Function_Abstract pairs - * - * @return void - */ - protected function _buildDispatchTable() - { - $table = array(); - foreach ($this->_methods as $key => $dispatchable) { - if ($dispatchable instanceof Zend_Server_Reflection_Function_Abstract) { - $ns = $dispatchable->getNamespace(); - $name = $dispatchable->getName(); - $name = empty($ns) ? $name : $ns . '.' . $name; - - if (isset($table[$name])) { - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception('Duplicate method registered: ' . $name); - } - $table[$name] = $dispatchable; - continue; - } - - if ($dispatchable instanceof Zend_Server_Reflection_Class) { - foreach ($dispatchable->getMethods() as $method) { - $ns = $method->getNamespace(); - $name = $method->getName(); - $name = empty($ns) ? $name : $ns . '.' . $name; - - if (isset($table[$name])) { - require_once 'Zend/Amf/Server/Exception.php'; - throw new Zend_Amf_Server_Exception('Duplicate method registered: ' . $name); - } - $table[$name] = $method; - continue; - } - } - } - $this->_table = $table; - } - - - - /** - * Raise a server fault - * - * Unimplemented - * - * @param string|Exception $fault - * @return void - */ - public function fault($fault = null, $code = 404) - { - } - - /** - * Returns a list of registered methods - * - * Returns an array of dispatchables (Zend_Server_Reflection_Function, - * _Method, and _Class items). - * - * @return array - */ - public function getFunctions() - { - return $this->_table; - } - - /** - * Set server persistence - * - * Unimplemented - * - * @param mixed $mode - * @return void - */ - public function setPersistence($mode) - { - } - - /** - * Load server definition - * - * Unimplemented - * - * @param array $definition - * @return void - */ - public function loadFunctions($definition) - { - } - - /** - * Map ActionScript classes to PHP classes - * - * @param string $asClass - * @param string $phpClass - * @return Zend_Amf_Server - */ - public function setClassMap($asClass, $phpClass) - { - require_once 'Zend/Amf/Parse/TypeLoader.php'; - Zend_Amf_Parse_TypeLoader::setMapping($asClass, $phpClass); - return $this; - } - - /** - * List all available methods - * - * Returns an array of method names. - * - * @return array - */ - public function listMethods() - { - return array_keys($this->_table); - } - - /** - * Cast parameters - * - * Takes the provided parameters from the request, and attempts to cast them - * to objects, if the prototype defines any as explicit object types - * - * @param Reflection $reflectionMethod - * @param array $params - * @return array - */ - protected function _castParameters($reflectionMethod, array $params) - { - $prototypes = $reflectionMethod->getPrototypes(); - $nonObjectTypes = array( - 'null', - 'mixed', - 'void', - 'unknown', - 'bool', - 'boolean', - 'number', - 'int', - 'integer', - 'double', - 'float', - 'string', - 'array', - 'object', - 'stdclass', - ); - $types = array(); - foreach ($prototypes as $prototype) { - foreach ($prototype->getParameters() as $parameter) { - $type = $parameter->getType(); - if (in_array(strtolower($type), $nonObjectTypes)) { - continue; - } - $position = $parameter->getPosition(); - $types[$position] = $type; - } - } - - if (empty($types)) { - return $params; - } - - foreach ($params as $position => $value) { - if (!isset($types[$position])) { - // No specific type to cast to? done - continue; - } - - $type = $types[$position]; - - if (!class_exists($type)) { - // Not a class, apparently. done - continue; - } - - if ($value instanceof $type) { - // Already of the right type? done - continue; - } - - if (!is_array($value) && !is_object($value)) { - // Can't cast scalars to objects easily; done - continue; - } - - // Create instance, and loop through value to set - $object = new $type; - foreach ($value as $property => $defined) { - $object->{$property} = $defined; - } - - $params[$position] = $object; - } - - return $params; - } -} diff --git a/library/Zend/Amf/Server/Exception.php b/library/Zend/Amf/Server/Exception.php deleted file mode 100644 index b9618314..00000000 --- a/library/Zend/Amf/Server/Exception.php +++ /dev/null @@ -1,37 +0,0 @@ -_stream = $stream; - $this->_needle = 0; - $this->_mbStringFunctionsOverloaded = function_exists('mb_strlen') && (ini_get('mbstring.func_overload') !== '') && ((int)ini_get('mbstring.func_overload') & 2); - $this->_streamLength = $this->_mbStringFunctionsOverloaded ? mb_strlen($stream, '8bit') : strlen($stream); - $this->_bigEndian = (pack('l', 1) === "\x00\x00\x00\x01"); - } - - /** - * Returns the current stream - * - * @return string - */ - public function getStream() - { - return $this->_stream; - } - - /** - * Read the number of bytes in a row for the length supplied. - * - * @todo Should check that there are enough bytes left in the stream we are about to read. - * @param int $length - * @return string - * @throws Zend_Amf_Exception for buffer underrun - */ - public function readBytes($length) - { - if (($length + $this->_needle) > $this->_streamLength) { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception('Buffer underrun at needle position: ' . $this->_needle . ' while requesting length: ' . $length); - } - $bytes = $this->_mbStringFunctionsOverloaded ? mb_substr($this->_stream, $this->_needle, $length, '8bit') : substr($this->_stream, $this->_needle, $length); - $this->_needle+= $length; - return $bytes; - } - - /** - * Write any length of bytes to the stream - * - * Usually a string. - * - * @param string $bytes - * @return Zend_Amf_Util_BinaryStream - */ - public function writeBytes($bytes) - { - $this->_stream.= $bytes; - return $this; - } - - /** - * Reads a signed byte - * - * @return int Value is in the range of -128 to 127. - * @throws Zend_Amf_Exception - */ - public function readByte() - { - if (($this->_needle + 1) > $this->_streamLength) { - require_once 'Zend/Amf/Exception.php'; - throw new Zend_Amf_Exception( - 'Buffer underrun at needle position: ' - . $this->_needle - . ' while requesting length: ' - . $this->_streamLength - ); - } - - return ord($this->_stream{$this->_needle++}); - } - - /** - * Writes the passed string into a signed byte on the stream. - * - * @param string $stream - * @return Zend_Amf_Util_BinaryStream - */ - public function writeByte($stream) - { - $this->_stream.= pack('c', $stream); - return $this; - } - - /** - * Reads a signed 32-bit integer from the data stream. - * - * @return int Value is in the range of -2147483648 to 2147483647 - */ - public function readInt() - { - return ($this->readByte() << 8) + $this->readByte(); - } - - /** - * Write an the integer to the output stream as a 32 bit signed integer - * - * @param int $stream - * @return Zend_Amf_Util_BinaryStream - */ - public function writeInt($stream) - { - $this->_stream.= pack('n', $stream); - return $this; - } - - /** - * Reads a UTF-8 string from the data stream - * - * @return string A UTF-8 string produced by the byte representation of characters - */ - public function readUtf() - { - $length = $this->readInt(); - return $this->readBytes($length); - } - - /** - * Wite a UTF-8 string to the outputstream - * - * @param string $stream - * @return Zend_Amf_Util_BinaryStream - */ - public function writeUtf($stream) - { - $this->writeInt($this->_mbStringFunctionsOverloaded ? mb_strlen($stream, '8bit') : strlen($stream)); - $this->_stream.= $stream; - return $this; - } - - - /** - * Read a long UTF string - * - * @return string - */ - public function readLongUtf() - { - $length = $this->readLong(); - return $this->readBytes($length); - } - - /** - * Write a long UTF string to the buffer - * - * @param string $stream - * @return Zend_Amf_Util_BinaryStream - */ - public function writeLongUtf($stream) - { - $this->writeLong($this->_mbStringFunctionsOverloaded ? mb_strlen($stream, '8bit') : strlen($stream)); - $this->_stream.= $stream; - } - - /** - * Read a long numeric value - * - * @return double - */ - public function readLong() - { - return ($this->readByte() << 24) + ($this->readByte() << 16) + ($this->readByte() << 8) + $this->readByte(); - } - - /** - * Write long numeric value to output stream - * - * @param int|string $stream - * @return Zend_Amf_Util_BinaryStream - */ - public function writeLong($stream) - { - $this->_stream.= pack('N', $stream); - return $this; - } - - /** - * Read a 16 bit unsigned short. - * - * @todo This could use the unpack() w/ S,n, or v - * @return double - */ - public function readUnsignedShort() - { - $byte1 = $this->readByte(); - $byte2 = $this->readByte(); - return (($byte1 << 8) | $byte2); - } - - /** - * Reads an IEEE 754 double-precision floating point number from the data stream. - * - * @return double Floating point number - */ - public function readDouble() - { - $bytes = $this->_mbStringFunctionsOverloaded ? mb_substr($this->_stream, $this->_needle, 8, '8bit') : substr($this->_stream, $this->_needle, 8); - $this->_needle+= 8; - - if (!$this->_bigEndian) { - $bytes = strrev($bytes); - } - - $double = unpack('dflt', $bytes); - return $double['flt']; - } - - /** - * Writes an IEEE 754 double-precision floating point number from the data stream. - * - * @param string|double $stream - * @return Zend_Amf_Util_BinaryStream - */ - public function writeDouble($stream) - { - $stream = pack('d', $stream); - if (!$this->_bigEndian) { - $stream = strrev($stream); - } - $this->_stream.= $stream; - return $this; - } - -} diff --git a/library/Zend/Amf/Value/ByteArray.php b/library/Zend/Amf/Value/ByteArray.php deleted file mode 100644 index b62c182f..00000000 --- a/library/Zend/Amf/Value/ByteArray.php +++ /dev/null @@ -1,58 +0,0 @@ -_data = $data; - } - - /** - * Return the byte stream - * - * @return string - */ - public function getData() - { - return $this->_data; - } -} diff --git a/library/Zend/Amf/Value/MessageBody.php b/library/Zend/Amf/Value/MessageBody.php deleted file mode 100644 index fe58eea2..00000000 --- a/library/Zend/Amf/Value/MessageBody.php +++ /dev/null @@ -1,182 +0,0 @@ - - * This Message structure defines how a local client would - * invoke a method/operation on a remote server. Additionally, - * the response from the Server is structured identically. - * - * @package Zend_Amf - * @subpackage Value - * @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com) - * @license http://framework.zend.com/license/new-bsd New BSD License - */ -class Zend_Amf_Value_MessageBody -{ - /** - * A string describing which operation, function, or method - * is to be remotley invoked. - * @var string - */ - protected $_targetUri = ""; - - /** - * Universal Resource Identifier that uniquely targets the originator's - * Object that should receive the server's response. The server will - * use this path specification to target the "OnResult()" or "onStatus()" - * handlers within the client. For Flash, it specifies an ActionScript - * Object path only. The NetResponse object pointed to by the Response Uri - * contains the connection state information. Passing/specifying this - * provides a convenient mechanism for the client/server to share access - * to an object that is managing the state of the shared connection. - * - * Since the server will use this field in the event of an error, - * this field is required even if a successful server request would - * not be expected to return a value to the client. - * - * @var string - */ - protected $_responseUri = ""; - - /** - * Contains the actual data associated with the operation. It contains - * the client's parameter data that is passed to the server's operation/method. - * When serializing a root level data type or a parameter list array, no - * name field is included. That is, the data is anonomously represented - * as "Type Marker"/"Value" pairs. When serializing member data, the data is - * represented as a series of "Name"/"Type"/"Value" combinations. - * - * For server generated responses, it may contain any ActionScript - * data/objects that the server was expected to provide. - * - * @var string - */ - protected $_data; - - /** - * Constructor - * - * @param string $targetUri - * @param string $responseUri - * @param string $data - * @return void - */ - public function __construct($targetUri, $responseUri, $data) - { - $this->setTargetUri($targetUri); - $this->setResponseUri($responseUri); - $this->setData($data); - } - - /** - * Retrieve target Uri - * - * @return string - */ - public function getTargetUri() - { - return $this->_targetUri; - } - - /** - * Set target Uri - * - * @param string $targetUri - * @return Zend_Amf_Value_MessageBody - */ - public function setTargetUri($targetUri) - { - if (null === $targetUri) { - $targetUri = ''; - } - $this->_targetUri = (string) $targetUri; - return $this; - } - - /** - * Get target Uri - * - * @return string - */ - public function getResponseUri() - { - return $this->_responseUri; - } - - /** - * Set response Uri - * - * @param string $responseUri - * @return Zend_Amf_Value_MessageBody - */ - public function setResponseUri($responseUri) - { - if (null === $responseUri) { - $responseUri = ''; - } - $this->_responseUri = $responseUri; - return $this; - } - - /** - * Retrieve response data - * - * @return string - */ - public function getData() - { - return $this->_data; - } - - /** - * Set response data - * - * @param mixed $data - * @return Zend_Amf_Value_MessageBody - */ - public function setData($data) - { - $this->_data = $data; - return $this; - } - - /** - * Set reply method - * - * @param string $methodName - * @return Zend_Amf_Value_MessageBody - */ - public function setReplyMethod($methodName) - { - if (!preg_match('#^[/?]#', $methodName)) { - $this->_targetUri = rtrim($this->_targetUri, '/') . '/'; - } - $this->_targetUri = $this->_targetUri . $methodName; - return $this; - } -} diff --git a/library/Zend/Amf/Value/MessageHeader.php b/library/Zend/Amf/Value/MessageHeader.php deleted file mode 100644 index b106c501..00000000 --- a/library/Zend/Amf/Value/MessageHeader.php +++ /dev/null @@ -1,81 +0,0 @@ -name = $name; - $this->mustRead = (bool) $mustRead; - $this->data = $data; - if (null !== $length) { - $this->length = (int) $length; - } - } -} diff --git a/library/Zend/Amf/Value/Messaging/AbstractMessage.php b/library/Zend/Amf/Value/Messaging/AbstractMessage.php deleted file mode 100644 index f342b3f6..00000000 --- a/library/Zend/Amf/Value/Messaging/AbstractMessage.php +++ /dev/null @@ -1,92 +0,0 @@ -clientId = $this->generateId(); - $this->destination = null; - $this->messageId = $this->generateId(); - $this->timestamp = time().'00'; - $this->timeToLive = 0; - $this->headers = new STDClass(); - $this->body = null; - - // correleate the two messages - if ($message && isset($message->messageId)) { - $this->correlationId = $message->messageId; - } - } -} diff --git a/library/Zend/Amf/Value/Messaging/ArrayCollection.php b/library/Zend/Amf/Value/Messaging/ArrayCollection.php deleted file mode 100644 index bdcfeec8..00000000 --- a/library/Zend/Amf/Value/Messaging/ArrayCollection.php +++ /dev/null @@ -1,35 +0,0 @@ -body
        - * of the message. - */ - const LOGIN_OPERATION = 8; - - /** - * This operation is used to log the user out of the current channel, and - * will invalidate the server session if the channel is HTTP based. - */ - const LOGOUT_OPERATION = 9; - - /** - * This operation is used to indicate that the client's subscription to a - * remote destination has been invalidated. - */ - const SESSION_INVALIDATE_OPERATION = 10; - - /** - * This operation is used by the MultiTopicConsumer to subscribe/unsubscribe - * from multiple subtopics/selectors in the same message. - */ - const MULTI_SUBSCRIBE_OPERATION = 11; - - /** - * This operation is used to indicate that a channel has disconnected - */ - const DISCONNECT_OPERATION = 12; - - /** - * This is the default operation for new CommandMessage instances. - */ - const UNKNOWN_OPERATION = 10000; - - /** - * The operation to execute for messages of this type - * @var int - */ - public $operation = self::UNKNOWN_OPERATION; -} diff --git a/library/Zend/Amf/Value/Messaging/ErrorMessage.php b/library/Zend/Amf/Value/Messaging/ErrorMessage.php deleted file mode 100644 index 40813a02..00000000 --- a/library/Zend/Amf/Value/Messaging/ErrorMessage.php +++ /dev/null @@ -1,67 +0,0 @@ -clientId = $this->generateId(); - $this->destination = null; - $this->messageId = $this->generateId(); - $this->timestamp = time().'00'; - $this->timeToLive = 0; - $this->headers = new stdClass(); - $this->body = null; - } -} diff --git a/library/Zend/Amf/Value/TraitsInfo.php b/library/Zend/Amf/Value/TraitsInfo.php deleted file mode 100644 index f8863cdc..00000000 --- a/library/Zend/Amf/Value/TraitsInfo.php +++ /dev/null @@ -1,154 +0,0 @@ -_className = $className; - $this->_dynamic = $dynamic; - $this->_externalizable = $externalizable; - $this->_properties = $properties; - } - - /** - * Test if the class is a dynamic class - * - * @return boolean - */ - public function isDynamic() - { - return $this->_dynamic; - } - - /** - * Test if class is externalizable - * - * @return boolean - */ - public function isExternalizable() - { - return $this->_externalizable; - } - - /** - * Return the number of properties in the class - * - * @return int - */ - public function length() - { - return count($this->_properties); - } - - /** - * Return the class name - * - * @return string - */ - public function getClassName() - { - return $this->_className; - } - - /** - * Add an additional property - * - * @param string $name - * @return Zend_Amf_Value_TraitsInfo - */ - public function addProperty($name) - { - $this->_properties[] = $name; - return $this; - } - - /** - * Add all properties of the class. - * - * @param array $props - * @return Zend_Amf_Value_TraitsInfo - */ - public function addAllProperties(array $props) - { - $this->_properties = $props; - return $this; - } - - /** - * Get the property at a given index - * - * @param int $index - * @return string - */ - public function getProperty($index) - { - return $this->_properties[(int) $index]; - } - - /** - * Return all properties of the class. - * - * @return array - */ - public function getAllProperties() - { - return $this->_properties; - } -} diff --git a/library/Zend/Application.php b/library/Zend/Application.php deleted file mode 100644 index fa229c9b..00000000 --- a/library/Zend/Application.php +++ /dev/null @@ -1,417 +0,0 @@ -_environment = (string) $environment; - - require_once 'Zend/Loader/Autoloader.php'; - $this->_autoloader = Zend_Loader_Autoloader::getInstance(); - - if (null !== $options) { - if (is_string($options)) { - $options = $this->_loadConfig($options); - } elseif ($options instanceof Zend_Config) { - $options = $options->toArray(); - } elseif (!is_array($options)) { - throw new Zend_Application_Exception('Invalid options provided; must be location of config file, a config object, or an array'); - } - - $this->setOptions($options); - } - } - - /** - * Retrieve current environment - * - * @return string - */ - public function getEnvironment() - { - return $this->_environment; - } - - /** - * Retrieve autoloader instance - * - * @return Zend_Loader_Autoloader - */ - public function getAutoloader() - { - return $this->_autoloader; - } - - /** - * Set application options - * - * @param array $options - * @throws Zend_Application_Exception When no bootstrap path is provided - * @throws Zend_Application_Exception When invalid bootstrap information are provided - * @return Zend_Application - */ - public function setOptions(array $options) - { - if (!empty($options['config'])) { - if (is_array($options['config'])) { - $_options = array(); - foreach ($options['config'] as $tmp) { - $_options = $this->mergeOptions($_options, $this->_loadConfig($tmp)); - } - $options = $this->mergeOptions($_options, $options); - } else { - $options = $this->mergeOptions($this->_loadConfig($options['config']), $options); - } - } - - $this->_options = $options; - - $options = array_change_key_case($options, CASE_LOWER); - - $this->_optionKeys = array_keys($options); - - if (!empty($options['phpsettings'])) { - $this->setPhpSettings($options['phpsettings']); - } - - if (!empty($options['includepaths'])) { - $this->setIncludePaths($options['includepaths']); - } - - if (!empty($options['autoloadernamespaces'])) { - $this->setAutoloaderNamespaces($options['autoloadernamespaces']); - } - - if (!empty($options['autoloaderzfpath'])) { - $autoloader = $this->getAutoloader(); - if (method_exists($autoloader, 'setZfPath')) { - $zfPath = $options['autoloaderzfpath']; - $zfVersion = !empty($options['autoloaderzfversion']) - ? $options['autoloaderzfversion'] - : 'latest'; - $autoloader->setZfPath($zfPath, $zfVersion); - } - } - - if (!empty($options['bootstrap'])) { - $bootstrap = $options['bootstrap']; - - if (is_string($bootstrap)) { - $this->setBootstrap($bootstrap); - } elseif (is_array($bootstrap)) { - if (empty($bootstrap['path'])) { - throw new Zend_Application_Exception('No bootstrap path provided'); - } - - $path = $bootstrap['path']; - $class = null; - - if (!empty($bootstrap['class'])) { - $class = $bootstrap['class']; - } - - $this->setBootstrap($path, $class); - } else { - throw new Zend_Application_Exception('Invalid bootstrap information provided'); - } - } - - return $this; - } - - /** - * Retrieve application options (for caching) - * - * @return array - */ - public function getOptions() - { - return $this->_options; - } - - /** - * Is an option present? - * - * @param string $key - * @return bool - */ - public function hasOption($key) - { - return in_array(strtolower($key), $this->_optionKeys); - } - - /** - * Retrieve a single option - * - * @param string $key - * @return mixed - */ - public function getOption($key) - { - if ($this->hasOption($key)) { - $options = $this->getOptions(); - $options = array_change_key_case($options, CASE_LOWER); - return $options[strtolower($key)]; - } - return null; - } - - /** - * Merge options recursively - * - * @param array $array1 - * @param mixed $array2 - * @return array - */ - public function mergeOptions(array $array1, $array2 = null) - { - if (is_array($array2)) { - foreach ($array2 as $key => $val) { - if (is_array($array2[$key])) { - $array1[$key] = (array_key_exists($key, $array1) && is_array($array1[$key])) - ? $this->mergeOptions($array1[$key], $array2[$key]) - : $array2[$key]; - } else { - $array1[$key] = $val; - } - } - } - return $array1; - } - - /** - * Set PHP configuration settings - * - * @param array $settings - * @param string $prefix Key prefix to prepend to array values (used to map . separated INI values) - * @return Zend_Application - */ - public function setPhpSettings(array $settings, $prefix = '') - { - foreach ($settings as $key => $value) { - $key = empty($prefix) ? $key : $prefix . $key; - if (is_scalar($value)) { - ini_set($key, $value); - } elseif (is_array($value)) { - $this->setPhpSettings($value, $key . '.'); - } - } - - return $this; - } - - /** - * Set include path - * - * @param array $paths - * @return Zend_Application - */ - public function setIncludePaths(array $paths) - { - $path = implode(PATH_SEPARATOR, $paths); - set_include_path($path . PATH_SEPARATOR . get_include_path()); - return $this; - } - - /** - * Set autoloader namespaces - * - * @param array $namespaces - * @return Zend_Application - */ - public function setAutoloaderNamespaces(array $namespaces) - { - $autoloader = $this->getAutoloader(); - - foreach ($namespaces as $namespace) { - $autoloader->registerNamespace($namespace); - } - - return $this; - } - - /** - * Set bootstrap path/class - * - * @param string $path - * @param string $class - * @return Zend_Application - */ - public function setBootstrap($path, $class = null) - { - // setOptions() can potentially send a null value; specify default - // here - if (null === $class) { - $class = 'Bootstrap'; - } - - if (!class_exists($class, false)) { - require_once $path; - if (!class_exists($class, false)) { - throw new Zend_Application_Exception('Bootstrap class not found'); - } - } - $this->_bootstrap = new $class($this); - - if (!$this->_bootstrap instanceof Zend_Application_Bootstrap_Bootstrapper) { - throw new Zend_Application_Exception('Bootstrap class does not implement Zend_Application_Bootstrap_Bootstrapper'); - } - - return $this; - } - - /** - * Get bootstrap object - * - * @return Zend_Application_Bootstrap_BootstrapAbstract - */ - public function getBootstrap() - { - if (null === $this->_bootstrap) { - $this->_bootstrap = new Zend_Application_Bootstrap_Bootstrap($this); - } - return $this->_bootstrap; - } - - /** - * Bootstrap application - * - * @param null|string|array $resource - * @return Zend_Application - */ - public function bootstrap($resource = null) - { - $this->getBootstrap()->bootstrap($resource); - return $this; - } - - /** - * Run the application - * - * @return void - */ - public function run() - { - $this->getBootstrap()->run(); - } - - /** - * Load configuration file of options - * - * @param string $file - * @throws Zend_Application_Exception When invalid configuration file is provided - * @return array - */ - protected function _loadConfig($file) - { - $environment = $this->getEnvironment(); - $suffix = pathinfo($file, PATHINFO_EXTENSION); - $suffix = ($suffix === 'dist') - ? pathinfo(basename($file, ".$suffix"), PATHINFO_EXTENSION) - : $suffix; - - switch (strtolower($suffix)) { - case 'ini': - $config = new Zend_Config_Ini($file, $environment); - break; - - case 'xml': - $config = new Zend_Config_Xml($file, $environment); - break; - - case 'json': - $config = new Zend_Config_Json($file, $environment); - break; - - case 'yaml': - case 'yml': - $config = new Zend_Config_Yaml($file, $environment); - break; - - case 'php': - case 'inc': - $config = include $file; - if (!is_array($config)) { - throw new Zend_Application_Exception('Invalid configuration file provided; PHP file does not return array value'); - } - return $config; - break; - - default: - throw new Zend_Application_Exception('Invalid configuration file provided; unknown config type'); - } - - return $config->toArray(); - } -} diff --git a/library/Zend/Application/Bootstrap/Bootstrap.php b/library/Zend/Application/Bootstrap/Bootstrap.php deleted file mode 100644 index d81cc257..00000000 --- a/library/Zend/Application/Bootstrap/Bootstrap.php +++ /dev/null @@ -1,156 +0,0 @@ -hasOption('resourceloader')) { - $this->setOptions(array( - 'resourceloader' => $application->getOption('resourceloader') - )); - } - $this->getResourceLoader(); - - if (!$this->hasPluginResource('FrontController')) { - $this->registerPluginResource('FrontController'); - } - } - - /** - * Run the application - * - * Checks to see that we have a default controller directory. If not, an - * exception is thrown. - * - * If so, it registers the bootstrap with the 'bootstrap' parameter of - * the front controller, and dispatches the front controller. - * - * @return mixed - * @throws Zend_Application_Bootstrap_Exception - */ - public function run() - { - $front = $this->getResource('FrontController'); - $default = $front->getDefaultModule(); - if (null === $front->getControllerDirectory($default)) { - throw new Zend_Application_Bootstrap_Exception( - 'No default controller directory registered with front controller' - ); - } - - $front->setParam('bootstrap', $this); - $response = $front->dispatch(); - if ($front->returnResponse()) { - return $response; - } - } - - /** - * Set module resource loader - * - * @param Zend_Loader_Autoloader_Resource $loader - * @return Zend_Application_Module_Bootstrap - */ - public function setResourceLoader(Zend_Loader_Autoloader_Resource $loader) - { - $this->_resourceLoader = $loader; - return $this; - } - - /** - * Retrieve module resource loader - * - * @return Zend_Loader_Autoloader_Resource - */ - public function getResourceLoader() - { - if ((null === $this->_resourceLoader) - && (false != ($namespace = $this->getAppNamespace())) - ) { - $r = new ReflectionClass($this); - $path = $r->getFileName(); - $this->setResourceLoader(new Zend_Application_Module_Autoloader(array( - 'namespace' => $namespace, - 'basePath' => dirname($path), - ))); - } - return $this->_resourceLoader; - } - - /** - * Get application namespace (used for module autoloading) - * - * @return string - */ - public function getAppNamespace() - { - return $this->_appNamespace; - } - - /** - * Set application namespace (for module autoloading) - * - * @param string - * @return Zend_Application_Bootstrap_Bootstrap - */ - public function setAppNamespace($value) - { - $this->_appNamespace = (string) $value; - return $this; - } -} diff --git a/library/Zend/Application/Bootstrap/BootstrapAbstract.php b/library/Zend/Application/Bootstrap/BootstrapAbstract.php deleted file mode 100644 index 7a0f94fc..00000000 --- a/library/Zend/Application/Bootstrap/BootstrapAbstract.php +++ /dev/null @@ -1,772 +0,0 @@ -setApplication($application); - $options = $application->getOptions(); - $this->setOptions($options); - } - - /** - * Set class state - * - * @param array $options - * @return Zend_Application_Bootstrap_BootstrapAbstract - */ - public function setOptions(array $options) - { - $this->_options = $this->mergeOptions($this->_options, $options); - - $options = array_change_key_case($options, CASE_LOWER); - $this->_optionKeys = array_merge($this->_optionKeys, array_keys($options)); - - $methods = get_class_methods($this); - foreach ($methods as $key => $method) { - $methods[$key] = strtolower($method); - } - - if (array_key_exists('pluginpaths', $options)) { - $pluginLoader = $this->getPluginLoader(); - - foreach ($options['pluginpaths'] as $prefix => $path) { - $pluginLoader->addPrefixPath($prefix, $path); - } - unset($options['pluginpaths']); - } - - foreach ($options as $key => $value) { - $method = 'set' . strtolower($key); - - if (in_array($method, $methods)) { - $this->$method($value); - } elseif ('resources' == $key) { - foreach ($value as $resource => $resourceOptions) { - $this->registerPluginResource($resource, $resourceOptions); - } - } - } - return $this; - } - - /** - * Get current options from bootstrap - * - * @return array - */ - public function getOptions() - { - return $this->_options; - } - - /** - * Is an option present? - * - * @param string $key - * @return bool - */ - public function hasOption($key) - { - return in_array(strtolower($key), $this->_optionKeys); - } - - /** - * Retrieve a single option - * - * @param string $key - * @return mixed - */ - public function getOption($key) - { - if ($this->hasOption($key)) { - $options = $this->getOptions(); - $options = array_change_key_case($options, CASE_LOWER); - return $options[strtolower($key)]; - } - return null; - } - - /** - * Merge options recursively - * - * @param array $array1 - * @param mixed $array2 - * @return array - */ - public function mergeOptions(array $array1, $array2 = null) - { - if (is_array($array2)) { - foreach ($array2 as $key => $val) { - if (is_array($array2[$key])) { - $array1[$key] = (array_key_exists($key, $array1) && is_array($array1[$key])) - ? $this->mergeOptions($array1[$key], $array2[$key]) - : $array2[$key]; - } else { - $array1[$key] = $val; - } - } - } - return $array1; - } - - /** - * Get class resources (as resource/method pairs) - * - * Uses get_class_methods() by default, reflection on prior to 5.2.6, - * as a bug prevents the usage of get_class_methods() there. - * - * @return array - */ - public function getClassResources() - { - if (null === $this->_classResources) { - if (version_compare(PHP_VERSION, '5.2.6') === -1) { - $class = new ReflectionObject($this); - $classMethods = $class->getMethods(); - $methodNames = array(); - - foreach ($classMethods as $method) { - $methodNames[] = $method->getName(); - } - } else { - $methodNames = get_class_methods($this); - } - - $this->_classResources = array(); - foreach ($methodNames as $method) { - if (5 < strlen($method) && '_init' === substr($method, 0, 5)) { - $this->_classResources[strtolower(substr($method, 5))] = $method; - } - } - } - - return $this->_classResources; - } - - /** - * Get class resource names - * - * @return array - */ - public function getClassResourceNames() - { - $resources = $this->getClassResources(); - return array_keys($resources); - } - - /** - * Register a new resource plugin - * - * @param string|Zend_Application_Resource_Resource $resource - * @param mixed $options - * @return Zend_Application_Bootstrap_BootstrapAbstract - * @throws Zend_Application_Bootstrap_Exception When invalid resource is provided - */ - public function registerPluginResource($resource, $options = null) - { - if ($resource instanceof Zend_Application_Resource_Resource) { - $resource->setBootstrap($this); - $pluginName = $this->_resolvePluginResourceName($resource); - $this->_pluginResources[$pluginName] = $resource; - return $this; - } - - if (!is_string($resource)) { - throw new Zend_Application_Bootstrap_Exception('Invalid resource provided to ' . __METHOD__); - } - - $this->_pluginResources[$resource] = $options; - return $this; - } - - /** - * Unregister a resource from the bootstrap - * - * @param string|Zend_Application_Resource_Resource $resource - * @return Zend_Application_Bootstrap_BootstrapAbstract - * @throws Zend_Application_Bootstrap_Exception When unknown resource type is provided - */ - public function unregisterPluginResource($resource) - { - if ($resource instanceof Zend_Application_Resource_Resource) { - if ($index = array_search($resource, $this->_pluginResources, true)) { - unset($this->_pluginResources[$index]); - } - return $this; - } - - if (!is_string($resource)) { - throw new Zend_Application_Bootstrap_Exception('Unknown resource type provided to ' . __METHOD__); - } - - $resource = strtolower($resource); - if (array_key_exists($resource, $this->_pluginResources)) { - unset($this->_pluginResources[$resource]); - } - - return $this; - } - - /** - * Is the requested plugin resource registered? - * - * @param string $resource - * @return bool - */ - public function hasPluginResource($resource) - { - return (null !== $this->getPluginResource($resource)); - } - - /** - * Get a registered plugin resource - * - * @param string $resourceName - * @return Zend_Application_Resource_Resource - */ - public function getPluginResource($resource) - { - if (array_key_exists(strtolower($resource), $this->_pluginResources)) { - $resource = strtolower($resource); - if (!$this->_pluginResources[$resource] instanceof Zend_Application_Resource_Resource) { - $resourceName = $this->_loadPluginResource($resource, $this->_pluginResources[$resource]); - if (!$resourceName) { - throw new Zend_Application_Bootstrap_Exception(sprintf('Unable to resolve plugin "%s"; no corresponding plugin with that name', $resource)); - } - $resource = $resourceName; - } - return $this->_pluginResources[$resource]; - } - - foreach ($this->_pluginResources as $plugin => $spec) { - if ($spec instanceof Zend_Application_Resource_Resource) { - $pluginName = $this->_resolvePluginResourceName($spec); - if (0 === strcasecmp($resource, $pluginName)) { - unset($this->_pluginResources[$plugin]); - $this->_pluginResources[$pluginName] = $spec; - return $spec; - } - continue; - } - - if (false !== $pluginName = $this->_loadPluginResource($plugin, $spec)) { - if (0 === strcasecmp($resource, $pluginName)) { - return $this->_pluginResources[$pluginName]; - } - continue; - } - - if (class_exists($plugin) - && is_subclass_of($plugin, 'Zend_Application_Resource_Resource') - ) { //@SEE ZF-7550 - $spec = (array) $spec; - $spec['bootstrap'] = $this; - $instance = new $plugin($spec); - $pluginName = $this->_resolvePluginResourceName($instance); - unset($this->_pluginResources[$plugin]); - $this->_pluginResources[$pluginName] = $instance; - - if (0 === strcasecmp($resource, $pluginName)) { - return $instance; - } - } - } - - return null; - } - - /** - * Retrieve all plugin resources - * - * @return array - */ - public function getPluginResources() - { - foreach (array_keys($this->_pluginResources) as $resource) { - $this->getPluginResource($resource); - } - return $this->_pluginResources; - } - - /** - * Retrieve plugin resource names - * - * @return array - */ - public function getPluginResourceNames() - { - $this->getPluginResources(); - return array_keys($this->_pluginResources); - } - - /** - * Set plugin loader for loading resources - * - * @param Zend_Loader_PluginLoader_Interface $loader - * @return Zend_Application_Bootstrap_BootstrapAbstract - */ - public function setPluginLoader(Zend_Loader_PluginLoader_Interface $loader) - { - $this->_pluginLoader = $loader; - return $this; - } - - /** - * Get the plugin loader for resources - * - * @return Zend_Loader_PluginLoader_Interface - */ - public function getPluginLoader() - { - if ($this->_pluginLoader === null) { - $options = array( - 'Zend_Application_Resource' => 'Zend/Application/Resource', - 'ZendX_Application_Resource' => 'ZendX/Application/Resource' - ); - - $this->_pluginLoader = new Zend_Loader_PluginLoader($options); - } - - return $this->_pluginLoader; - } - - /** - * Set application/parent bootstrap - * - * @param Zend_Application|Zend_Application_Bootstrap_Bootstrapper $application - * @return Zend_Application_Bootstrap_BootstrapAbstract - */ - public function setApplication($application) - { - if (($application instanceof Zend_Application) - || ($application instanceof Zend_Application_Bootstrap_Bootstrapper) - ) { - if ($application === $this) { - throw new Zend_Application_Bootstrap_Exception('Cannot set application to same object; creates recursion'); - } - $this->_application = $application; - } else { - throw new Zend_Application_Bootstrap_Exception('Invalid application provided to bootstrap constructor (received "' . get_class($application) . '" instance)'); - } - return $this; - } - - /** - * Retrieve parent application instance - * - * @return Zend_Application|Zend_Application_Bootstrap_Bootstrapper - */ - public function getApplication() - { - return $this->_application; - } - - /** - * Retrieve application environment - * - * @return string - */ - public function getEnvironment() - { - if (null === $this->_environment) { - $this->_environment = $this->getApplication()->getEnvironment(); - } - return $this->_environment; - } - - /** - * Set resource container - * - * By default, if a resource callback has a non-null return value, this - * value will be stored in a container using the resource name as the - * key. - * - * Containers must be objects, and must allow setting public properties. - * - * @param object $container - * @return Zend_Application_Bootstrap_BootstrapAbstract - */ - public function setContainer($container) - { - if (!is_object($container)) { - throw new Zend_Application_Bootstrap_Exception('Resource containers must be objects'); - } - $this->_container = $container; - return $this; - } - - /** - * Retrieve resource container - * - * @return object - */ - public function getContainer() - { - if (null === $this->_container) { - $this->setContainer(new Zend_Registry()); - } - return $this->_container; - } - - /** - * Determine if a resource has been stored in the container - * - * During bootstrap resource initialization, you may return a value. If - * you do, it will be stored in the {@link setContainer() container}. - * You can use this method to determine if a value was stored. - * - * @param string $name - * @return bool - */ - public function hasResource($name) - { - $resource = strtolower($name); - $container = $this->getContainer(); - return isset($container->{$resource}); - } - - /** - * Retrieve a resource from the container - * - * During bootstrap resource initialization, you may return a value. If - * you do, it will be stored in the {@link setContainer() container}. - * You can use this method to retrieve that value. - * - * If no value was returned, this will return a null value. - * - * @param string $name - * @return null|mixed - */ - public function getResource($name) - { - $resource = strtolower($name); - $container = $this->getContainer(); - if ($this->hasResource($resource)) { - return $container->{$resource}; - } - return null; - } - - /** - * Implement PHP's magic to retrieve a ressource - * in the bootstrap - * - * @param string $prop - * @return null|mixed - */ - public function __get($prop) - { - return $this->getResource($prop); - } - - /** - * Implement PHP's magic to ask for the - * existence of a ressource in the bootstrap - * - * @param string $prop - * @return bool - */ - public function __isset($prop) - { - return $this->hasResource($prop); - } - - /** - * Bootstrap individual, all, or multiple resources - * - * Marked as final to prevent issues when subclassing and naming the - * child class 'Bootstrap' (in which case, overriding this method - * would result in it being treated as a constructor). - * - * If you need to override this functionality, override the - * {@link _bootstrap()} method. - * - * @param null|string|array $resource - * @return Zend_Application_Bootstrap_BootstrapAbstract - * @throws Zend_Application_Bootstrap_Exception When invalid argument was passed - */ - final public function bootstrap($resource = null) - { - $this->_bootstrap($resource); - return $this; - } - - /** - * Overloading: intercept calls to bootstrap() methods - * - * @param string $method - * @param array $args - * @return void - * @throws Zend_Application_Bootstrap_Exception On invalid method name - */ - public function __call($method, $args) - { - if (9 < strlen($method) && 'bootstrap' === substr($method, 0, 9)) { - $resource = substr($method, 9); - return $this->bootstrap($resource); - } - - throw new Zend_Application_Bootstrap_Exception('Invalid method "' . $method . '"'); - } - - /** - * Bootstrap implementation - * - * This method may be overridden to provide custom bootstrapping logic. - * It is the sole method called by {@link bootstrap()}. - * - * @param null|string|array $resource - * @return void - * @throws Zend_Application_Bootstrap_Exception When invalid argument was passed - */ - protected function _bootstrap($resource = null) - { - if (null === $resource) { - foreach ($this->getClassResourceNames() as $resource) { - $this->_executeResource($resource); - } - - foreach ($this->getPluginResourceNames() as $resource) { - $this->_executeResource($resource); - } - } elseif (is_string($resource)) { - $this->_executeResource($resource); - } elseif (is_array($resource)) { - foreach ($resource as $r) { - $this->_executeResource($r); - } - } else { - throw new Zend_Application_Bootstrap_Exception('Invalid argument passed to ' . __METHOD__); - } - } - - /** - * Execute a resource - * - * Checks to see if the resource has already been run. If not, it searches - * first to see if a local method matches the resource, and executes that. - * If not, it checks to see if a plugin resource matches, and executes that - * if found. - * - * Finally, if not found, it throws an exception. - * - * @param string $resource - * @return void - * @throws Zend_Application_Bootstrap_Exception When resource not found - */ - protected function _executeResource($resource) - { - $resourceName = strtolower($resource); - - if (in_array($resourceName, $this->_run)) { - return; - } - - if (isset($this->_started[$resourceName]) && $this->_started[$resourceName]) { - throw new Zend_Application_Bootstrap_Exception('Circular resource dependency detected'); - } - - $classResources = $this->getClassResources(); - if (array_key_exists($resourceName, $classResources)) { - $this->_started[$resourceName] = true; - $method = $classResources[$resourceName]; - $return = $this->$method(); - unset($this->_started[$resourceName]); - $this->_markRun($resourceName); - - if (null !== $return) { - $this->getContainer()->{$resourceName} = $return; - } - - return; - } - - if ($this->hasPluginResource($resource)) { - $this->_started[$resourceName] = true; - $plugin = $this->getPluginResource($resource); - $return = $plugin->init(); - unset($this->_started[$resourceName]); - $this->_markRun($resourceName); - - if (null !== $return) { - $this->getContainer()->{$resourceName} = $return; - } - - return; - } - - throw new Zend_Application_Bootstrap_Exception('Resource matching "' . $resource . '" not found'); - } - - /** - * Load a plugin resource - * - * @param string $resource - * @param array|object|null $options - * @return string|false - */ - protected function _loadPluginResource($resource, $options) - { - $options = (array) $options; - $options['bootstrap'] = $this; - $className = $this->getPluginLoader()->load(strtolower($resource), false); - - if (!$className) { - return false; - } - - $instance = new $className($options); - - unset($this->_pluginResources[$resource]); - - if (isset($instance->_explicitType)) { - $resource = $instance->_explicitType; - } - $resource = strtolower($resource); - $this->_pluginResources[$resource] = $instance; - - return $resource; - } - - /** - * Mark a resource as having run - * - * @param string $resource - * @return void - */ - protected function _markRun($resource) - { - if (!in_array($resource, $this->_run)) { - $this->_run[] = $resource; - } - } - - /** - * Resolve a plugin resource name - * - * Uses, in order of preference - * - $_explicitType property of resource - * - Short name of resource (if a matching prefix path is found) - * - class name (if none of the above are true) - * - * The name is then cast to lowercase. - * - * @param Zend_Application_Resource_Resource $resource - * @return string - */ - protected function _resolvePluginResourceName($resource) - { - if (isset($resource->_explicitType)) { - $pluginName = $resource->_explicitType; - } else { - $className = get_class($resource); - $pluginName = $className; - $loader = $this->getPluginLoader(); - foreach ($loader->getPaths() as $prefix => $paths) { - if (0 === strpos($className, $prefix)) { - $pluginName = substr($className, strlen($prefix)); - $pluginName = trim($pluginName, '_'); - break; - } - } - } - $pluginName = strtolower($pluginName); - return $pluginName; - } -} diff --git a/library/Zend/Application/Bootstrap/Bootstrapper.php b/library/Zend/Application/Bootstrap/Bootstrapper.php deleted file mode 100644 index 956da142..00000000 --- a/library/Zend/Application/Bootstrap/Bootstrapper.php +++ /dev/null @@ -1,94 +0,0 @@ -initDefaultResourceTypes(); - } - - /** - * Initialize default resource types for module resource classes - * - * @return void - */ - public function initDefaultResourceTypes() - { - $basePath = $this->getBasePath(); - $this->addResourceTypes(array( - 'dbtable' => array( - 'namespace' => 'Model_DbTable', - 'path' => 'models/DbTable', - ), - 'mappers' => array( - 'namespace' => 'Model_Mapper', - 'path' => 'models/mappers', - ), - 'form' => array( - 'namespace' => 'Form', - 'path' => 'forms', - ), - 'model' => array( - 'namespace' => 'Model', - 'path' => 'models', - ), - 'plugin' => array( - 'namespace' => 'Plugin', - 'path' => 'plugins', - ), - 'service' => array( - 'namespace' => 'Service', - 'path' => 'services', - ), - 'viewhelper' => array( - 'namespace' => 'View_Helper', - 'path' => 'views/helpers', - ), - 'viewfilter' => array( - 'namespace' => 'View_Filter', - 'path' => 'views/filters', - ), - )); - $this->setDefaultResourceType('model'); - } -} diff --git a/library/Zend/Application/Module/Bootstrap.php b/library/Zend/Application/Module/Bootstrap.php deleted file mode 100644 index f69fa5b9..00000000 --- a/library/Zend/Application/Module/Bootstrap.php +++ /dev/null @@ -1,128 +0,0 @@ -setApplication($application); - - // Use same plugin loader as parent bootstrap - if ($application instanceof Zend_Application_Bootstrap_ResourceBootstrapper) { - $this->setPluginLoader($application->getPluginLoader()); - } - - $key = strtolower($this->getModuleName()); - if ($application->hasOption($key)) { - // Don't run via setOptions() to prevent duplicate initialization - $this->setOptions($application->getOption($key)); - } - - if ($application->hasOption('resourceloader')) { - $this->setOptions(array( - 'resourceloader' => $application->getOption('resourceloader') - )); - } - $this->initResourceLoader(); - - // ZF-6545: ensure front controller resource is loaded - if (!$this->hasPluginResource('FrontController')) { - $this->registerPluginResource('FrontController'); - } - - // ZF-6545: prevent recursive registration of modules - if ($this->hasPluginResource('modules')) { - $this->unregisterPluginResource('modules'); - } - } - - /** - * Ensure resource loader is loaded - * - * @return void - */ - public function initResourceLoader() - { - $this->getResourceLoader(); - } - - /** - * Get default application namespace - * - * Proxies to {@link getModuleName()}, and returns the current module - * name - * - * @return string - */ - public function getAppNamespace() - { - return $this->getModuleName(); - } - - /** - * Retrieve module name - * - * @return string - */ - public function getModuleName() - { - if (empty($this->_moduleName)) { - $class = get_class($this); - if (preg_match('/^([a-z][a-z0-9]*)_/i', $class, $matches)) { - $prefix = $matches[1]; - } else { - $prefix = $class; - } - $this->_moduleName = $prefix; - } - return $this->_moduleName; - } -} diff --git a/library/Zend/Application/Resource/Cachemanager.php b/library/Zend/Application/Resource/Cachemanager.php deleted file mode 100644 index c01b5ad8..00000000 --- a/library/Zend/Application/Resource/Cachemanager.php +++ /dev/null @@ -1,73 +0,0 @@ -getCacheManager(); - } - - /** - * Retrieve Zend_Cache_Manager instance - * - * @return Zend_Cache_Manager - */ - public function getCacheManager() - { - if (null === $this->_manager) { - $this->_manager = new Zend_Cache_Manager; - - $options = $this->getOptions(); - foreach ($options as $key => $value) { - if ($this->_manager->hasCacheTemplate($key)) { - $this->_manager->setTemplateOptions($key, $value); - } else { - $this->_manager->setCacheTemplate($key, $value); - } - } - } - - return $this->_manager; - } -} diff --git a/library/Zend/Application/Resource/Db.php b/library/Zend/Application/Resource/Db.php deleted file mode 100644 index bd3d9504..00000000 --- a/library/Zend/Application/Resource/Db.php +++ /dev/null @@ -1,196 +0,0 @@ -_adapter = $adapter; - return $this; - } - - /** - * Adapter type to use - * - * @return string - */ - public function getAdapter() - { - return $this->_adapter; - } - - /** - * Set the adapter params - * - * @param string $adapter - * @return Zend_Application_Resource_Db - */ - public function setParams(array $params) - { - $this->_params = $params; - return $this; - } - - /** - * Adapter parameters - * - * @return array - */ - public function getParams() - { - return $this->_params; - } - - /** - * Set whether to use this as default table adapter - * - * @param boolean $defaultTableAdapter - * @return Zend_Application_Resource_Db - */ - public function setIsDefaultTableAdapter($isDefaultTableAdapter) - { - $this->_isDefaultTableAdapter = $isDefaultTableAdapter; - return $this; - } - - /** - * Is this adapter the default table adapter? - * - * @return void - */ - public function isDefaultTableAdapter() - { - return $this->_isDefaultTableAdapter; - } - - /** - * Retrieve initialized DB connection - * - * @return null|Zend_Db_Adapter_Abstract - */ - public function getDbAdapter() - { - if ((null === $this->_db) - && (null !== ($adapter = $this->getAdapter())) - ) { - $this->_db = Zend_Db::factory($adapter, $this->getParams()); - - if ($this->_db instanceof Zend_Db_Adapter_Abstract - && $this->isDefaultTableAdapter() - ) { - Zend_Db_Table::setDefaultAdapter($this->_db); - } - } - return $this->_db; - } - - /** - * Defined by Zend_Application_Resource_Resource - * - * @return Zend_Db_Adapter_Abstract|null - */ - public function init() - { - if (null !== ($db = $this->getDbAdapter())) { - return $db; - } - } - - /** - * Set the default metadata cache - * - * @param string|Zend_Cache_Core $cache - * @return Zend_Application_Resource_Db - */ - public function setDefaultMetadataCache($cache) - { - $metadataCache = null; - - if (is_string($cache)) { - $bootstrap = $this->getBootstrap(); - if ($bootstrap instanceof Zend_Application_Bootstrap_ResourceBootstrapper - && $bootstrap->hasPluginResource('CacheManager') - ) { - $cacheManager = $bootstrap->bootstrap('CacheManager') - ->getResource('CacheManager'); - if (null !== $cacheManager && $cacheManager->hasCache($cache)) { - $metadataCache = $cacheManager->getCache($cache); - } - } - } else if ($cache instanceof Zend_Cache_Core) { - $metadataCache = $cache; - } - - if ($metadataCache instanceof Zend_Cache_Core) { - Zend_Db_Table::setDefaultMetadataCache($metadataCache); - } - - return $this; - } -} diff --git a/library/Zend/Application/Resource/Dojo.php b/library/Zend/Application/Resource/Dojo.php deleted file mode 100644 index d56eaeb6..00000000 --- a/library/Zend/Application/Resource/Dojo.php +++ /dev/null @@ -1,76 +0,0 @@ -getDojo(); - } - - /** - * Retrieve Dojo View Helper - * - * @return Zend_Dojo_View_Dojo_Container - */ - public function getDojo() - { - if (null === $this->_dojo) { - $this->getBootstrap()->bootstrap('view'); - $view = $this->getBootstrap()->view; - - Zend_Dojo::enableView($view); - $view->dojo()->setOptions($this->getOptions()); - - $this->_dojo = $view->dojo(); - } - - return $this->_dojo; - } -} diff --git a/library/Zend/Application/Resource/Exception.php b/library/Zend/Application/Resource/Exception.php deleted file mode 100644 index 88125d0a..00000000 --- a/library/Zend/Application/Resource/Exception.php +++ /dev/null @@ -1,40 +0,0 @@ -getFrontController(); - - foreach ($this->getOptions() as $key => $value) { - switch (strtolower($key)) { - case 'controllerdirectory': - if (is_string($value)) { - $front->setControllerDirectory($value); - } elseif (is_array($value)) { - foreach ($value as $module => $directory) { - $front->addControllerDirectory($directory, $module); - } - } - break; - - case 'modulecontrollerdirectoryname': - $front->setModuleControllerDirectoryName($value); - break; - - case 'moduledirectory': - if (is_string($value)) { - $front->addModuleDirectory($value); - } elseif (is_array($value)) { - foreach($value as $moduleDir) { - $front->addModuleDirectory($moduleDir); - } - } - break; - - case 'defaultcontrollername': - $front->setDefaultControllerName($value); - break; - - case 'defaultaction': - $front->setDefaultAction($value); - break; - - case 'defaultmodule': - $front->setDefaultModule($value); - break; - - case 'baseurl': - if (!empty($value)) { - $front->setBaseUrl($value); - } - break; - - case 'params': - $front->setParams($value); - break; - - case 'plugins': - foreach ((array) $value as $pluginClass) { - $stackIndex = null; - if(is_array($pluginClass)) { - $pluginClass = array_change_key_case($pluginClass, CASE_LOWER); - if(isset($pluginClass['class'])) - { - if(isset($pluginClass['stackindex'])) { - $stackIndex = $pluginClass['stackindex']; - } - - $pluginClass = $pluginClass['class']; - } - } - - $plugin = new $pluginClass(); - $front->registerPlugin($plugin, $stackIndex); - } - break; - - case 'returnresponse': - $front->returnResponse((bool) $value); - break; - - case 'throwexceptions': - $front->throwExceptions((bool) $value); - break; - - case 'actionhelperpaths': - if (is_array($value)) { - foreach ($value as $helperPrefix => $helperPath) { - Zend_Controller_Action_HelperBroker::addPath($helperPath, $helperPrefix); - } - } - break; - - case 'dispatcher': - if(!isset($value['class'])) { - require_once 'Zend/Application/Exception.php'; - throw new Zend_Application_Exception('You must specify both '); - } - if (!isset($value['params'])) { - $value['params'] = array(); - } - - $dispatchClass = $value['class']; - if(!class_exists($dispatchClass)) { - require_once 'Zend/Application/Exception.php'; - throw new Zend_Application_Exception('Dispatcher class not found!'); - } - $front->setDispatcher(new $dispatchClass((array)$value['params'])); - break; - default: - $front->setParam($key, $value); - break; - } - } - - if (null !== ($bootstrap = $this->getBootstrap())) { - $this->getBootstrap()->frontController = $front; - } - - return $front; - } - - /** - * Retrieve front controller instance - * - * @return Zend_Controller_Front - */ - public function getFrontController() - { - if (null === $this->_front) { - $this->_front = Zend_Controller_Front::getInstance(); - } - return $this->_front; - } -} diff --git a/library/Zend/Application/Resource/Layout.php b/library/Zend/Application/Resource/Layout.php deleted file mode 100644 index 494ec96c..00000000 --- a/library/Zend/Application/Resource/Layout.php +++ /dev/null @@ -1,70 +0,0 @@ -getBootstrap()->bootstrap('FrontController'); - return $this->getLayout(); - } - - /** - * Retrieve layout object - * - * @return Zend_Layout - */ - public function getLayout() - { - if (null === $this->_layout) { - $this->_layout = Zend_Layout::startMvc($this->getOptions()); - } - return $this->_layout; - } -} diff --git a/library/Zend/Application/Resource/Locale.php b/library/Zend/Application/Resource/Locale.php deleted file mode 100644 index cceac13c..00000000 --- a/library/Zend/Application/Resource/Locale.php +++ /dev/null @@ -1,117 +0,0 @@ -getLocale(); - } - - /** - * Retrieve locale object - * - * @return Zend_Locale - */ - public function getLocale() - { - if (null === $this->_locale) { - $options = $this->getOptions(); - - if (!isset($options['default'])) { - $this->_locale = new Zend_Locale(); - } elseif(!isset($options['force']) || - (bool) $options['force'] == false) - { - // Don't force any locale, just go for auto detection - Zend_Locale::setDefault($options['default']); - $this->_locale = new Zend_Locale(); - } else { - $this->_locale = new Zend_Locale($options['default']); - } - - $key = (isset($options['registry_key']) && !is_numeric($options['registry_key'])) - ? $options['registry_key'] - : self::DEFAULT_REGISTRY_KEY; - Zend_Registry::set($key, $this->_locale); - } - - return $this->_locale; - } - - /** - * Set the cache - * - * @param string|Zend_Cache_Core $cache - * @return Zend_Application_Resource_Locale - */ - public function setCache($cache) - { - if (is_string($cache)) { - $bootstrap = $this->getBootstrap(); - if ($bootstrap instanceof Zend_Application_Bootstrap_ResourceBootstrapper - && $bootstrap->hasPluginResource('CacheManager') - ) { - $cacheManager = $bootstrap->bootstrap('CacheManager') - ->getResource('CacheManager'); - if (null !== $cacheManager && $cacheManager->hasCache($cache)) { - $cache = $cacheManager->getCache($cache); - } - } - } - - if ($cache instanceof Zend_Cache_Core) { - Zend_Locale::setCache($cache); - } - - return $this; - } -} diff --git a/library/Zend/Application/Resource/Log.php b/library/Zend/Application/Resource/Log.php deleted file mode 100644 index 1ea51e18..00000000 --- a/library/Zend/Application/Resource/Log.php +++ /dev/null @@ -1,83 +0,0 @@ -getLog(); - } - - /** - * Attach logger - * - * @param Zend_Log $log - * @return Zend_Application_Resource_Log - */ - public function setLog(Zend_Log $log) - { - $this->_log = $log; - return $this; - } - - /** - * Retrieve logger object - * - * @return Zend_Log - */ - public function getLog() - { - if (null === $this->_log) { - $options = $this->getOptions(); - $log = Zend_Log::factory($options); - $this->setLog($log); - } - return $this->_log; - } -} diff --git a/library/Zend/Application/Resource/Mail.php b/library/Zend/Application/Resource/Mail.php deleted file mode 100644 index 8e9d41d1..00000000 --- a/library/Zend/Application/Resource/Mail.php +++ /dev/null @@ -1,147 +0,0 @@ -getMail(); - } - - /** - * - * @return Zend_Mail_Transport_Abstract|null - */ - public function getMail() - { - if (null === $this->_transport) { - $options = $this->getOptions(); - foreach($options as $key => $option) { - $options[strtolower($key)] = $option; - } - $this->setOptions($options); - - if(isset($options['transport']) && - !is_numeric($options['transport'])) - { - $this->_transport = $this->_setupTransport($options['transport']); - if(!isset($options['transport']['register']) || - $options['transport']['register'] == '1' || - (isset($options['transport']['register']) && - !is_numeric($options['transport']['register']) && - (bool) $options['transport']['register'] == true)) - { - Zend_Mail::setDefaultTransport($this->_transport); - } - } - - $this->_setDefaults('from'); - $this->_setDefaults('replyTo'); - } - - return $this->_transport; - } - - protected function _setDefaults($type) { - $key = strtolower('default' . $type); - $options = $this->getOptions(); - - if(isset($options[$key]['email']) && - !is_numeric($options[$key]['email'])) - { - $method = array('Zend_Mail', 'setDefault' . ucfirst($type)); - if(isset($options[$key]['name']) && - !is_numeric($options[$key]['name'])) - { - call_user_func($method, $options[$key]['email'], - $options[$key]['name']); - } else { - call_user_func($method, $options[$key]['email']); - } - } - } - - protected function _setupTransport($options) - { - if(!isset($options['type'])) { - $options['type'] = 'sendmail'; - } - - $transportName = $options['type']; - if(!Zend_Loader_Autoloader::autoload($transportName)) - { - $transportName = ucfirst(strtolower($transportName)); - - if(!Zend_Loader_Autoloader::autoload($transportName)) - { - $transportName = 'Zend_Mail_Transport_' . $transportName; - if(!Zend_Loader_Autoloader::autoload($transportName)) { - throw new Zend_Application_Resource_Exception( - "Specified Mail Transport '{$transportName}'" - . 'could not be found' - ); - } - } - } - - unset($options['type']); - unset($options['register']); //@see ZF-11022 - - switch($transportName) { - case 'Zend_Mail_Transport_Smtp': - if(!isset($options['host'])) { - throw new Zend_Application_Resource_Exception( - 'A host is necessary for smtp transport,' - .' but none was given'); - } - - $transport = new $transportName($options['host'], $options); - break; - case 'Zend_Mail_Transport_Sendmail': - default: - $transport = new $transportName($options); - break; - } - - return $transport; - } -} diff --git a/library/Zend/Application/Resource/Modules.php b/library/Zend/Application/Resource/Modules.php deleted file mode 100644 index 749d37d0..00000000 --- a/library/Zend/Application/Resource/Modules.php +++ /dev/null @@ -1,155 +0,0 @@ -_bootstraps = new ArrayObject(array(), ArrayObject::ARRAY_AS_PROPS); - parent::__construct($options); - } - - /** - * Initialize modules - * - * @return array - * @throws Zend_Application_Resource_Exception When bootstrap class was not found - */ - public function init() - { - $bootstraps = array(); - $bootstrap = $this->getBootstrap(); - $bootstrap->bootstrap('FrontController'); - $front = $bootstrap->getResource('FrontController'); - - $modules = $front->getControllerDirectory(); - $default = $front->getDefaultModule(); - $curBootstrapClass = get_class($bootstrap); - foreach ($modules as $module => $moduleDirectory) { - $bootstrapClass = $this->_formatModuleName($module) . '_Bootstrap'; - if (!class_exists($bootstrapClass, false)) { - $bootstrapPath = dirname($moduleDirectory) . '/Bootstrap.php'; - if (file_exists($bootstrapPath)) { - $eMsgTpl = 'Bootstrap file found for module "%s" but bootstrap class "%s" not found'; - include_once $bootstrapPath; - if (($default != $module) - && !class_exists($bootstrapClass, false) - ) { - throw new Zend_Application_Resource_Exception(sprintf( - $eMsgTpl, $module, $bootstrapClass - )); - } elseif ($default == $module) { - if (!class_exists($bootstrapClass, false)) { - $bootstrapClass = 'Bootstrap'; - if (!class_exists($bootstrapClass, false)) { - throw new Zend_Application_Resource_Exception(sprintf( - $eMsgTpl, $module, $bootstrapClass - )); - } - } - } - } else { - continue; - } - } - - if ($bootstrapClass == $curBootstrapClass) { - // If the found bootstrap class matches the one calling this - // resource, don't re-execute. - continue; - } - - $bootstraps[$module] = $bootstrapClass; - } - - return $this->_bootstraps = $this->bootstrapBootstraps($bootstraps); - } - - /* - * Bootstraps the bootstraps found. Allows for easy extension. - * @param array $bootstraps Array containing the bootstraps to instantiate - */ - protected function bootstrapBootstraps($bootstraps) - { - $bootstrap = $this->getBootstrap(); - $out = new ArrayObject(array(), ArrayObject::ARRAY_AS_PROPS); - - foreach($bootstraps as $module => $bootstrapClass) { - $moduleBootstrap = new $bootstrapClass($bootstrap); - $moduleBootstrap->bootstrap(); - $out[$module] = $moduleBootstrap; - } - - return $out; - } - - /** - * Get bootstraps that have been run - * - * @return ArrayObject - */ - public function getExecutedBootstraps() - { - return $this->_bootstraps; - } - - /** - * Format a module name to the module class prefix - * - * @param string $name - * @return string - */ - protected function _formatModuleName($name) - { - $name = strtolower($name); - $name = str_replace(array('-', '.'), ' ', $name); - $name = ucwords($name); - $name = str_replace(' ', '', $name); - return $name; - } -} diff --git a/library/Zend/Application/Resource/Multidb.php b/library/Zend/Application/Resource/Multidb.php deleted file mode 100644 index fdbb38ee..00000000 --- a/library/Zend/Application/Resource/Multidb.php +++ /dev/null @@ -1,210 +0,0 @@ - - * resources.multidb.defaultMetadataCache = "database" - * - * resources.multidb.db1.adapter = "pdo_mysql" - * resources.multidb.db1.host = "localhost" - * resources.multidb.db1.username = "webuser" - * resources.multidb.db1.password = "XXXX" - * resources.multidb.db1.dbname = "db1" - * resources.multidb.db1.default = true - * - * resources.multidb.db2.adapter = "pdo_pgsql" - * resources.multidb.db2.host = "example.com" - * resources.multidb.db2.username = "dba" - * resources.multidb.db2.password = "notthatpublic" - * resources.multidb.db2.dbname = "db2" - *
        - * - * @category Zend - * @package Zend_Application - * @subpackage Resource - * @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com) - * @license http://framework.zend.com/license/new-bsd New BSD License - */ -class Zend_Application_Resource_Multidb extends Zend_Application_Resource_ResourceAbstract -{ - /** - * Associative array containing all configured db's - * - * @var array - */ - protected $_dbs = array(); - - /** - * An instance of the default db, if set - * - * @var null|Zend_Db_Adapter_Abstract - */ - protected $_defaultDb; - - /** - * Initialize the Database Connections (instances of Zend_Db_Table_Abstract) - * - * @return Zend_Application_Resource_Multidb - */ - public function init() - { - $options = $this->getOptions(); - - if (isset($options['defaultMetadataCache'])) { - $this->_setDefaultMetadataCache($options['defaultMetadataCache']); - unset($options['defaultMetadataCache']); - } - - foreach ($options as $id => $params) { - $adapter = $params['adapter']; - $default = (int) ( - isset($params['isDefaultTableAdapter']) && $params['isDefaultTableAdapter'] - || isset($params['default']) && $params['default'] - ); - unset( - $params['adapter'], - $params['default'], - $params['isDefaultTableAdapter'] - ); - - $this->_dbs[$id] = Zend_Db::factory($adapter, $params); - - if ($default) { - $this->_setDefault($this->_dbs[$id]); - } - } - - return $this; - } - - /** - * Determine if the given db(identifier) is the default db. - * - * @param string|Zend_Db_Adapter_Abstract $db The db to determine whether it's set as default - * @return boolean True if the given parameter is configured as default. False otherwise - */ - public function isDefault($db) - { - if(!$db instanceof Zend_Db_Adapter_Abstract) { - $db = $this->getDb($db); - } - - return $db === $this->_defaultDb; - } - - /** - * Retrieve the specified database connection - * - * @param null|string|Zend_Db_Adapter_Abstract $db The adapter to retrieve. - * Null to retrieve the default connection - * @return Zend_Db_Adapter_Abstract - * @throws Zend_Application_Resource_Exception if the given parameter could not be found - */ - public function getDb($db = null) - { - if ($db === null) { - return $this->getDefaultDb(); - } - - if (isset($this->_dbs[$db])) { - return $this->_dbs[$db]; - } - - throw new Zend_Application_Resource_Exception( - 'A DB adapter was tried to retrieve, but was not configured' - ); - } - - /** - * Get the default db connection - * - * @param boolean $justPickOne If true, a random (the first one in the stack) - * connection is returned if no default was set. - * If false, null is returned if no default was set. - * @return null|Zend_Db_Adapter_Abstract - */ - public function getDefaultDb($justPickOne = true) - { - if ($this->_defaultDb !== null) { - return $this->_defaultDb; - } - - if ($justPickOne) { - return reset($this->_dbs); // Return first db in db pool - } - - return null; - } - - /** - * Set the default db adapter - * - * @var Zend_Db_Adapter_Abstract $adapter Adapter to set as default - */ - protected function _setDefault(Zend_Db_Adapter_Abstract $adapter) - { - Zend_Db_Table::setDefaultAdapter($adapter); - $this->_defaultDb = $adapter; - } - - /** - * Set the default metadata cache - * - * @param string|Zend_Cache_Core $cache - * @return Zend_Application_Resource_Multidb - */ - protected function _setDefaultMetadataCache($cache) - { - $metadataCache = null; - - if (is_string($cache)) { - $bootstrap = $this->getBootstrap(); - if ($bootstrap instanceof Zend_Application_Bootstrap_ResourceBootstrapper && - $bootstrap->hasPluginResource('CacheManager') - ) { - $cacheManager = $bootstrap->bootstrap('CacheManager') - ->getResource('CacheManager'); - if (null !== $cacheManager && $cacheManager->hasCache($cache)) { - $metadataCache = $cacheManager->getCache($cache); - } - } - } else if ($cache instanceof Zend_Cache_Core) { - $metadataCache = $cache; - } - - if ($metadataCache instanceof Zend_Cache_Core) { - Zend_Db_Table::setDefaultMetadataCache($metadataCache); - } - - return $this; - } -} diff --git a/library/Zend/Application/Resource/Navigation.php b/library/Zend/Application/Resource/Navigation.php deleted file mode 100644 index 9aaf78a8..00000000 --- a/library/Zend/Application/Resource/Navigation.php +++ /dev/null @@ -1,128 +0,0 @@ -_container) { - $options = $this->getOptions(); - - if(isset($options['defaultPageType'])) { - Zend_Navigation_Page::setDefaultPageType($options['defaultPageType']); - } - - $pages = isset($options['pages']) ? $options['pages'] : array(); - $this->_container = new Zend_Navigation($pages); - } - - $this->store(); - return $this->_container; - } - - /** - * Stores navigation container in registry or Navigation view helper - * - * @return void - */ - public function store() - { - $options = $this->getOptions(); - if (isset($options['storage']['registry']) && - $options['storage']['registry'] == true) { - $this->_storeRegistry(); - } else { - $this->_storeHelper(); - } - } - - /** - * Stores navigation container in the registry - * - * @return void - */ - protected function _storeRegistry() - { - $options = $this->getOptions(); - if(isset($options['storage']['registry']['key']) && - !is_numeric($options['storage']['registry']['key'])) // see ZF-7461 - { - $key = $options['storage']['registry']['key']; - } else { - $key = self::DEFAULT_REGISTRY_KEY; - } - - Zend_Registry::set($key,$this->getContainer()); - } - - /** - * Stores navigation container in the Navigation helper - * - * @return void - */ - protected function _storeHelper() - { - $this->getBootstrap()->bootstrap('view'); - $view = $this->getBootstrap()->view; - $view->getHelper('navigation')->navigation($this->getContainer()); - } - - /** - * Returns navigation container - * - * @return Zend_Navigation - */ - public function getContainer() - { - return $this->_container; - } -} diff --git a/library/Zend/Application/Resource/Resource.php b/library/Zend/Application/Resource/Resource.php deleted file mode 100644 index 40ba45fa..00000000 --- a/library/Zend/Application/Resource/Resource.php +++ /dev/null @@ -1,80 +0,0 @@ -setOptions($options); - } else if ($options instanceof Zend_Config) { - $this->setOptions($options->toArray()); - } - } - - /** - * Set options from array - * - * @param array $options Configuration for resource - * @return Zend_Application_Resource_ResourceAbstract - */ - public function setOptions(array $options) - { - if (array_key_exists('bootstrap', $options)) { - $this->setBootstrap($options['bootstrap']); - unset($options['bootstrap']); - } - - foreach ($options as $key => $value) { - if (in_array(strtolower($key), $this->_skipOptions)) { - continue; - } - - $method = 'set' . strtolower($key); - if (method_exists($this, $method)) { - $this->$method($value); - } - } - - $this->_options = $this->mergeOptions($this->_options, $options); - - return $this; - } - - /** - * Retrieve resource options - * - * @return array - */ - public function getOptions() - { - return $this->_options; - } - - /** - * Merge options recursively - * - * @param array $array1 - * @param mixed $array2 - * @return array - */ - public function mergeOptions(array $array1, $array2 = null) - { - if (is_array($array2)) { - foreach ($array2 as $key => $val) { - if (is_array($array2[$key])) { - $array1[$key] = (array_key_exists($key, $array1) && is_array($array1[$key])) - ? $this->mergeOptions($array1[$key], $array2[$key]) - : $array2[$key]; - } else { - $array1[$key] = $val; - } - } - } - return $array1; - } - - /** - * Set the bootstrap to which the resource is attached - * - * @param Zend_Application_Bootstrap_Bootstrapper $bootstrap - * @return Zend_Application_Resource_Resource - */ - public function setBootstrap(Zend_Application_Bootstrap_Bootstrapper $bootstrap) - { - $this->_bootstrap = $bootstrap; - return $this; - } - - /** - * Retrieve the bootstrap to which the resource is attached - * - * @return null|Zend_Application_Bootstrap_Bootstrapper - */ - public function getBootstrap() - { - return $this->_bootstrap; - } -} diff --git a/library/Zend/Application/Resource/Router.php b/library/Zend/Application/Resource/Router.php deleted file mode 100644 index 3965e484..00000000 --- a/library/Zend/Application/Resource/Router.php +++ /dev/null @@ -1,87 +0,0 @@ -getRouter(); - } - - /** - * Retrieve router object - * - * @return Zend_Controller_Router_Rewrite - */ - public function getRouter() - { - if (null === $this->_router) { - $bootstrap = $this->getBootstrap(); - $bootstrap->bootstrap('FrontController'); - $this->_router = $bootstrap->getContainer()->frontcontroller->getRouter(); - - $options = $this->getOptions(); - if (!isset($options['routes'])) { - $options['routes'] = array(); - } - - if (isset($options['chainNameSeparator'])) { - $this->_router->setChainNameSeparator($options['chainNameSeparator']); - } - - if (isset($options['useRequestParametersAsGlobal'])) { - $this->_router->useRequestParametersAsGlobal($options['useRequestParametersAsGlobal']); - } - - $this->_router->addConfig(new Zend_Config($options['routes'])); - } - - return $this->_router; - } -} diff --git a/library/Zend/Application/Resource/Session.php b/library/Zend/Application/Resource/Session.php deleted file mode 100644 index 4bbcdc47..00000000 --- a/library/Zend/Application/Resource/Session.php +++ /dev/null @@ -1,118 +0,0 @@ -_saveHandler = $saveHandler; - return $this; - } - - /** - * Get session save handler - * - * @return Zend_Session_SaveHandler_Interface - */ - public function getSaveHandler() - { - if (!$this->_saveHandler instanceof Zend_Session_SaveHandler_Interface) { - if (is_array($this->_saveHandler)) { - if (!array_key_exists('class', $this->_saveHandler)) { - throw new Zend_Application_Resource_Exception('Session save handler class not provided in options'); - } - $options = array(); - if (array_key_exists('options', $this->_saveHandler)) { - $options = $this->_saveHandler['options']; - } - $this->_saveHandler = $this->_saveHandler['class']; - $this->_saveHandler = new $this->_saveHandler($options); - } elseif (is_string($this->_saveHandler)) { - $this->_saveHandler = new $this->_saveHandler(); - } - - if (!$this->_saveHandler instanceof Zend_Session_SaveHandler_Interface) { - throw new Zend_Application_Resource_Exception('Invalid session save handler'); - } - } - return $this->_saveHandler; - } - - /** - * @return bool - */ - protected function _hasSaveHandler() - { - return ($this->_saveHandler !== null); - } - - /** - * Defined by Zend_Application_Resource_Resource - * - * @return void - */ - public function init() - { - $options = array_change_key_case($this->getOptions(), CASE_LOWER); - if (isset($options['savehandler'])) { - unset($options['savehandler']); - } - - if (count($options) > 0) { - Zend_Session::setOptions($options); - } - - if ($this->_hasSaveHandler()) { - Zend_Session::setSaveHandler($this->getSaveHandler()); - } - } -} diff --git a/library/Zend/Application/Resource/Translate.php b/library/Zend/Application/Resource/Translate.php deleted file mode 100644 index 075c07f3..00000000 --- a/library/Zend/Application/Resource/Translate.php +++ /dev/null @@ -1,134 +0,0 @@ -getTranslate(); - } - - /** - * Retrieve translate object - * - * @return Zend_Translate - * @throws Zend_Application_Resource_Exception if registry key was used - * already but is no instance of Zend_Translate - */ - public function getTranslate() - { - if (null === $this->_translate) { - $options = $this->getOptions(); - - if (!isset($options['content']) && !isset($options['data'])) { - require_once 'Zend/Application/Resource/Exception.php'; - throw new Zend_Application_Resource_Exception('No translation source data provided.'); - } else if (array_key_exists('content', $options) && array_key_exists('data', $options)) { - require_once 'Zend/Application/Resource/Exception.php'; - throw new Zend_Application_Resource_Exception( - 'Conflict on translation source data: choose only one key between content and data.' - ); - } - - if (empty($options['adapter'])) { - $options['adapter'] = Zend_Translate::AN_ARRAY; - } - - if (!empty($options['data'])) { - $options['content'] = $options['data']; - unset($options['data']); - } - - if (isset($options['options'])) { - foreach($options['options'] as $key => $value) { - $options[$key] = $value; - } - } - - if (!empty($options['cache']) && is_string($options['cache'])) { - $bootstrap = $this->getBootstrap(); - if ($bootstrap instanceof Zend_Application_Bootstrap_ResourceBootstrapper && - $bootstrap->hasPluginResource('CacheManager') - ) { - $cacheManager = $bootstrap->bootstrap('CacheManager') - ->getResource('CacheManager'); - if (null !== $cacheManager && - $cacheManager->hasCache($options['cache']) - ) { - $options['cache'] = $cacheManager->getCache($options['cache']); - } - } - } - - $key = (isset($options['registry_key']) && !is_numeric($options['registry_key'])) - ? $options['registry_key'] - : self::DEFAULT_REGISTRY_KEY; - unset($options['registry_key']); - - if(Zend_Registry::isRegistered($key)) { - $translate = Zend_Registry::get($key); - if(!$translate instanceof Zend_Translate) { - require_once 'Zend/Application/Resource/Exception.php'; - throw new Zend_Application_Resource_Exception($key - . ' already registered in registry but is ' - . 'no instance of Zend_Translate'); - } - - $translate->addTranslation($options); - $this->_translate = $translate; - } else { - $this->_translate = new Zend_Translate($options); - Zend_Registry::set($key, $this->_translate); - } - } - - return $this->_translate; - } -} diff --git a/library/Zend/Application/Resource/Useragent.php b/library/Zend/Application/Resource/Useragent.php deleted file mode 100644 index 3b166cd8..00000000 --- a/library/Zend/Application/Resource/Useragent.php +++ /dev/null @@ -1,72 +0,0 @@ -getUserAgent(); - - // Optionally seed the UserAgent view helper - $bootstrap = $this->getBootstrap(); - if ($bootstrap->hasResource('view') || $bootstrap->hasPluginResource('view')) { - $bootstrap->bootstrap('view'); - $view = $bootstrap->getResource('view'); - if (null !== $view) { - $view->userAgent($userAgent); - } - } - - return $userAgent; - } - - /** - * Get UserAgent instance - * - * @return Zend_Http_UserAgent - */ - public function getUserAgent() - { - if (null === $this->_userAgent) { - $options = $this->getOptions(); - $this->_userAgent = new Zend_Http_UserAgent($options); - } - - return $this->_userAgent; - } -} diff --git a/library/Zend/Application/Resource/View.php b/library/Zend/Application/Resource/View.php deleted file mode 100644 index 2d24852f..00000000 --- a/library/Zend/Application/Resource/View.php +++ /dev/null @@ -1,86 +0,0 @@ -getView(); - - $viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer'); - $viewRenderer->setView($view); - return $view; - } - - /** - * Retrieve view object - * - * @return Zend_View - */ - public function getView() - { - if (null === $this->_view) { - $options = $this->getOptions(); - $this->_view = new Zend_View($options); - - if (isset($options['doctype'])) { - $this->_view->doctype()->setDoctype(strtoupper($options['doctype'])); - if (isset($options['charset']) && $this->_view->doctype()->isHtml5()) { - $this->_view->headMeta()->setCharset($options['charset']); - } - } - if (isset($options['contentType'])) { - $this->_view->headMeta()->appendHttpEquiv('Content-Type', $options['contentType']); - } - if (isset($options['assign']) && is_array($options['assign'])) { - $this->_view->assign($options['assign']); - } - } - return $this->_view; - } -} diff --git a/library/Zend/Auth.php b/library/Zend/Auth.php deleted file mode 100644 index 6d859712..00000000 --- a/library/Zend/Auth.php +++ /dev/null @@ -1,169 +0,0 @@ -_storage) { - /** - * @see Zend_Auth_Storage_Session - */ - require_once 'Zend/Auth/Storage/Session.php'; - $this->setStorage(new Zend_Auth_Storage_Session()); - } - - return $this->_storage; - } - - /** - * Sets the persistent storage handler - * - * @param Zend_Auth_Storage_Interface $storage - * @return Zend_Auth Provides a fluent interface - */ - public function setStorage(Zend_Auth_Storage_Interface $storage) - { - $this->_storage = $storage; - return $this; - } - - /** - * Authenticates against the supplied adapter - * - * @param Zend_Auth_Adapter_Interface $adapter - * @return Zend_Auth_Result - */ - public function authenticate(Zend_Auth_Adapter_Interface $adapter) - { - $result = $adapter->authenticate(); - - /** - * ZF-7546 - prevent multiple succesive calls from storing inconsistent results - * Ensure storage has clean state - */ - if ($this->hasIdentity()) { - $this->clearIdentity(); - } - - if ($result->isValid()) { - $this->getStorage()->write($result->getIdentity()); - } - - return $result; - } - - /** - * Returns true if and only if an identity is available from storage - * - * @return boolean - */ - public function hasIdentity() - { - return !$this->getStorage()->isEmpty(); - } - - /** - * Returns the identity from storage or null if no identity is available - * - * @return mixed|null - */ - public function getIdentity() - { - $storage = $this->getStorage(); - - if ($storage->isEmpty()) { - return null; - } - - return $storage->read(); - } - - /** - * Clears the identity from persistent storage - * - * @return void - */ - public function clearIdentity() - { - $this->getStorage()->clear(); - } -} diff --git a/library/Zend/Auth/Adapter/DbTable.php b/library/Zend/Auth/Adapter/DbTable.php deleted file mode 100644 index 43722d1d..00000000 --- a/library/Zend/Auth/Adapter/DbTable.php +++ /dev/null @@ -1,561 +0,0 @@ -_setDbAdapter($zendDb); - - if (null !== $tableName) { - $this->setTableName($tableName); - } - - if (null !== $identityColumn) { - $this->setIdentityColumn($identityColumn); - } - - if (null !== $credentialColumn) { - $this->setCredentialColumn($credentialColumn); - } - - if (null !== $credentialTreatment) { - $this->setCredentialTreatment($credentialTreatment); - } - } - - /** - * _setDbAdapter() - set the database adapter to be used for quering - * - * @param Zend_Db_Adapter_Abstract - * @throws Zend_Auth_Adapter_Exception - * @return Zend_Auth_Adapter_DbTable - */ - protected function _setDbAdapter(Zend_Db_Adapter_Abstract $zendDb = null) - { - $this->_zendDb = $zendDb; - - /** - * If no adapter is specified, fetch default database adapter. - */ - if(null === $this->_zendDb) { - require_once 'Zend/Db/Table/Abstract.php'; - $this->_zendDb = Zend_Db_Table_Abstract::getDefaultAdapter(); - if (null === $this->_zendDb) { - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception('No database adapter present'); - } - } - - return $this; - } - - /** - * setTableName() - set the table name to be used in the select query - * - * @param string $tableName - * @return Zend_Auth_Adapter_DbTable Provides a fluent interface - */ - public function setTableName($tableName) - { - $this->_tableName = $tableName; - return $this; - } - - /** - * setIdentityColumn() - set the column name to be used as the identity column - * - * @param string $identityColumn - * @return Zend_Auth_Adapter_DbTable Provides a fluent interface - */ - public function setIdentityColumn($identityColumn) - { - $this->_identityColumn = $identityColumn; - return $this; - } - - /** - * setCredentialColumn() - set the column name to be used as the credential column - * - * @param string $credentialColumn - * @return Zend_Auth_Adapter_DbTable Provides a fluent interface - */ - public function setCredentialColumn($credentialColumn) - { - $this->_credentialColumn = $credentialColumn; - return $this; - } - - /** - * setCredentialTreatment() - allows the developer to pass a parameterized string that is - * used to transform or treat the input credential data. - * - * In many cases, passwords and other sensitive data are encrypted, hashed, encoded, - * obscured, or otherwise treated through some function or algorithm. By specifying a - * parameterized treatment string with this method, a developer may apply arbitrary SQL - * upon input credential data. - * - * Examples: - * - * 'PASSWORD(?)' - * 'MD5(?)' - * - * @param string $treatment - * @return Zend_Auth_Adapter_DbTable Provides a fluent interface - */ - public function setCredentialTreatment($treatment) - { - $this->_credentialTreatment = $treatment; - return $this; - } - - /** - * setIdentity() - set the value to be used as the identity - * - * @param string $value - * @return Zend_Auth_Adapter_DbTable Provides a fluent interface - */ - public function setIdentity($value) - { - $this->_identity = $value; - return $this; - } - - /** - * setCredential() - set the credential value to be used, optionally can specify a treatment - * to be used, should be supplied in parameterized form, such as 'MD5(?)' or 'PASSWORD(?)' - * - * @param string $credential - * @return Zend_Auth_Adapter_DbTable Provides a fluent interface - */ - public function setCredential($credential) - { - $this->_credential = $credential; - return $this; - } - - /** - * setAmbiguityIdentity() - sets a flag for usage of identical identities - * with unique credentials. It accepts integers (0, 1) or boolean (true, - * false) parameters. Default is false. - * - * @param int|bool $flag - * @return Zend_Auth_Adapter_DbTable - */ - public function setAmbiguityIdentity($flag) - { - if (is_integer($flag)) { - $this->_ambiguityIdentity = (1 === $flag ? true : false); - } elseif (is_bool($flag)) { - $this->_ambiguityIdentity = $flag; - } - return $this; - } - /** - * getAmbiguityIdentity() - returns TRUE for usage of multiple identical - * identies with different credentials, FALSE if not used. - * - * @return bool - */ - public function getAmbiguityIdentity() - { - return $this->_ambiguityIdentity; - } - - /** - * getDbSelect() - Return the preauthentication Db Select object for userland select query modification - * - * @return Zend_Db_Select - */ - public function getDbSelect() - { - if ($this->_dbSelect == null) { - $this->_dbSelect = $this->_zendDb->select(); - } - - return $this->_dbSelect; - } - - /** - * getResultRowObject() - Returns the result row as a stdClass object - * - * @param string|array $returnColumns - * @param string|array $omitColumns - * @return stdClass|boolean - */ - public function getResultRowObject($returnColumns = null, $omitColumns = null) - { - if (!$this->_resultRow) { - return false; - } - - $returnObject = new stdClass(); - - if (null !== $returnColumns) { - - $availableColumns = array_keys($this->_resultRow); - foreach ( (array) $returnColumns as $returnColumn) { - if (in_array($returnColumn, $availableColumns)) { - $returnObject->{$returnColumn} = $this->_resultRow[$returnColumn]; - } - } - return $returnObject; - - } elseif (null !== $omitColumns) { - - $omitColumns = (array) $omitColumns; - foreach ($this->_resultRow as $resultColumn => $resultValue) { - if (!in_array($resultColumn, $omitColumns)) { - $returnObject->{$resultColumn} = $resultValue; - } - } - return $returnObject; - - } else { - - foreach ($this->_resultRow as $resultColumn => $resultValue) { - $returnObject->{$resultColumn} = $resultValue; - } - return $returnObject; - - } - } - - /** - * authenticate() - defined by Zend_Auth_Adapter_Interface. This method is called to - * attempt an authentication. Previous to this call, this adapter would have already - * been configured with all necessary information to successfully connect to a database - * table and attempt to find a record matching the provided identity. - * - * @throws Zend_Auth_Adapter_Exception if answering the authentication query is impossible - * @return Zend_Auth_Result - */ - public function authenticate() - { - $this->_authenticateSetup(); - $dbSelect = $this->_authenticateCreateSelect(); - $resultIdentities = $this->_authenticateQuerySelect($dbSelect); - - if ( ($authResult = $this->_authenticateValidateResultSet($resultIdentities)) instanceof Zend_Auth_Result) { - return $authResult; - } - - if (true === $this->getAmbiguityIdentity()) { - $validIdentities = array (); - $zendAuthCredentialMatchColumn = $this->_zendDb->foldCase('zend_auth_credential_match'); - foreach ($resultIdentities as $identity) { - if (1 === (int) $identity[$zendAuthCredentialMatchColumn]) { - $validIdentities[] = $identity; - } - } - $resultIdentities = $validIdentities; - } - - $authResult = $this->_authenticateValidateResult(array_shift($resultIdentities)); - return $authResult; - } - - /** - * _authenticateSetup() - This method abstracts the steps involved with - * making sure that this adapter was indeed setup properly with all - * required pieces of information. - * - * @throws Zend_Auth_Adapter_Exception - in the event that setup was not done properly - * @return true - */ - protected function _authenticateSetup() - { - $exception = null; - - if ($this->_tableName == '') { - $exception = 'A table must be supplied for the Zend_Auth_Adapter_DbTable authentication adapter.'; - } elseif ($this->_identityColumn == '') { - $exception = 'An identity column must be supplied for the Zend_Auth_Adapter_DbTable authentication adapter.'; - } elseif ($this->_credentialColumn == '') { - $exception = 'A credential column must be supplied for the Zend_Auth_Adapter_DbTable authentication adapter.'; - } elseif ($this->_identity == '') { - $exception = 'A value for the identity was not provided prior to authentication with Zend_Auth_Adapter_DbTable.'; - } elseif ($this->_credential === null) { - $exception = 'A credential value was not provided prior to authentication with Zend_Auth_Adapter_DbTable.'; - } - - if (null !== $exception) { - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception($exception); - } - - $this->_authenticateResultInfo = array( - 'code' => Zend_Auth_Result::FAILURE, - 'identity' => $this->_identity, - 'messages' => array() - ); - - return true; - } - - /** - * _authenticateCreateSelect() - This method creates a Zend_Db_Select object that - * is completely configured to be queried against the database. - * - * @return Zend_Db_Select - */ - protected function _authenticateCreateSelect() - { - // build credential expression - if (empty($this->_credentialTreatment) || (strpos($this->_credentialTreatment, '?') === false)) { - $this->_credentialTreatment = '?'; - } - - $credentialExpression = new Zend_Db_Expr( - '(CASE WHEN ' . - $this->_zendDb->quoteInto( - $this->_zendDb->quoteIdentifier($this->_credentialColumn, true) - . ' = ' . $this->_credentialTreatment, $this->_credential - ) - . ' THEN 1 ELSE 0 END) AS ' - . $this->_zendDb->quoteIdentifier( - $this->_zendDb->foldCase('zend_auth_credential_match') - ) - ); - - // get select - $dbSelect = clone $this->getDbSelect(); - $dbSelect->from($this->_tableName, array('*', $credentialExpression)) - ->where($this->_zendDb->quoteIdentifier($this->_identityColumn, true) . ' = ?', $this->_identity); - - return $dbSelect; - } - - /** - * _authenticateQuerySelect() - This method accepts a Zend_Db_Select object and - * performs a query against the database with that object. - * - * @param Zend_Db_Select $dbSelect - * @throws Zend_Auth_Adapter_Exception - when an invalid select - * object is encountered - * @return array - */ - protected function _authenticateQuerySelect(Zend_Db_Select $dbSelect) - { - try { - if ($this->_zendDb->getFetchMode() != Zend_DB::FETCH_ASSOC) { - $origDbFetchMode = $this->_zendDb->getFetchMode(); - $this->_zendDb->setFetchMode(Zend_DB::FETCH_ASSOC); - } - $resultIdentities = $this->_zendDb->fetchAll($dbSelect); - if (isset($origDbFetchMode)) { - $this->_zendDb->setFetchMode($origDbFetchMode); - unset($origDbFetchMode); - } - } catch (Exception $e) { - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception('The supplied parameters to Zend_Auth_Adapter_DbTable failed to ' - . 'produce a valid sql statement, please check table and column names ' - . 'for validity.', 0, $e); - } - return $resultIdentities; - } - - /** - * _authenticateValidateResultSet() - This method attempts to make - * certain that only one record was returned in the resultset - * - * @param array $resultIdentities - * @return true|Zend_Auth_Result - */ - protected function _authenticateValidateResultSet(array $resultIdentities) - { - - if (count($resultIdentities) < 1) { - $this->_authenticateResultInfo['code'] = Zend_Auth_Result::FAILURE_IDENTITY_NOT_FOUND; - $this->_authenticateResultInfo['messages'][] = 'A record with the supplied identity could not be found.'; - return $this->_authenticateCreateAuthResult(); - } elseif (count($resultIdentities) > 1 && false === $this->getAmbiguityIdentity()) { - $this->_authenticateResultInfo['code'] = Zend_Auth_Result::FAILURE_IDENTITY_AMBIGUOUS; - $this->_authenticateResultInfo['messages'][] = 'More than one record matches the supplied identity.'; - return $this->_authenticateCreateAuthResult(); - } - - return true; - } - - /** - * _authenticateValidateResult() - This method attempts to validate that - * the record in the resultset is indeed a record that matched the - * identity provided to this adapter. - * - * @param array $resultIdentity - * @return Zend_Auth_Result - */ - protected function _authenticateValidateResult($resultIdentity) - { - $zendAuthCredentialMatchColumn = $this->_zendDb->foldCase('zend_auth_credential_match'); - - if ($resultIdentity[$zendAuthCredentialMatchColumn] != '1') { - $this->_authenticateResultInfo['code'] = Zend_Auth_Result::FAILURE_CREDENTIAL_INVALID; - $this->_authenticateResultInfo['messages'][] = 'Supplied credential is invalid.'; - return $this->_authenticateCreateAuthResult(); - } - - unset($resultIdentity[$zendAuthCredentialMatchColumn]); - $this->_resultRow = $resultIdentity; - - $this->_authenticateResultInfo['code'] = Zend_Auth_Result::SUCCESS; - $this->_authenticateResultInfo['messages'][] = 'Authentication successful.'; - return $this->_authenticateCreateAuthResult(); - } - - /** - * _authenticateCreateAuthResult() - Creates a Zend_Auth_Result object from - * the information that has been collected during the authenticate() attempt. - * - * @return Zend_Auth_Result - */ - protected function _authenticateCreateAuthResult() - { - return new Zend_Auth_Result( - $this->_authenticateResultInfo['code'], - $this->_authenticateResultInfo['identity'], - $this->_authenticateResultInfo['messages'] - ); - } - -} diff --git a/library/Zend/Auth/Adapter/Digest.php b/library/Zend/Auth/Adapter/Digest.php deleted file mode 100644 index 3705c186..00000000 --- a/library/Zend/Auth/Adapter/Digest.php +++ /dev/null @@ -1,252 +0,0 @@ -$methodName($$option); - } - } - } - - /** - * Returns the filename option value or null if it has not yet been set - * - * @return string|null - */ - public function getFilename() - { - return $this->_filename; - } - - /** - * Sets the filename option value - * - * @param mixed $filename - * @return Zend_Auth_Adapter_Digest Provides a fluent interface - */ - public function setFilename($filename) - { - $this->_filename = (string) $filename; - return $this; - } - - /** - * Returns the realm option value or null if it has not yet been set - * - * @return string|null - */ - public function getRealm() - { - return $this->_realm; - } - - /** - * Sets the realm option value - * - * @param mixed $realm - * @return Zend_Auth_Adapter_Digest Provides a fluent interface - */ - public function setRealm($realm) - { - $this->_realm = (string) $realm; - return $this; - } - - /** - * Returns the username option value or null if it has not yet been set - * - * @return string|null - */ - public function getUsername() - { - return $this->_username; - } - - /** - * Sets the username option value - * - * @param mixed $username - * @return Zend_Auth_Adapter_Digest Provides a fluent interface - */ - public function setUsername($username) - { - $this->_username = (string) $username; - return $this; - } - - /** - * Returns the password option value or null if it has not yet been set - * - * @return string|null - */ - public function getPassword() - { - return $this->_password; - } - - /** - * Sets the password option value - * - * @param mixed $password - * @return Zend_Auth_Adapter_Digest Provides a fluent interface - */ - public function setPassword($password) - { - $this->_password = (string) $password; - return $this; - } - - /** - * Defined by Zend_Auth_Adapter_Interface - * - * @throws Zend_Auth_Adapter_Exception - * @return Zend_Auth_Result - */ - public function authenticate() - { - $optionsRequired = array('filename', 'realm', 'username', 'password'); - foreach ($optionsRequired as $optionRequired) { - if (null === $this->{"_$optionRequired"}) { - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception("Option '$optionRequired' must be set before authentication"); - } - } - - if (false === ($fileHandle = @fopen($this->_filename, 'r'))) { - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception("Cannot open '$this->_filename' for reading"); - } - - $id = "$this->_username:$this->_realm"; - $idLength = strlen($id); - - $result = array( - 'code' => Zend_Auth_Result::FAILURE, - 'identity' => array( - 'realm' => $this->_realm, - 'username' => $this->_username, - ), - 'messages' => array() - ); - - while ($line = trim(fgets($fileHandle))) { - if (substr($line, 0, $idLength) === $id) { - if ($this->_secureStringCompare(substr($line, -32), md5("$this->_username:$this->_realm:$this->_password"))) { - $result['code'] = Zend_Auth_Result::SUCCESS; - } else { - $result['code'] = Zend_Auth_Result::FAILURE_CREDENTIAL_INVALID; - $result['messages'][] = 'Password incorrect'; - } - return new Zend_Auth_Result($result['code'], $result['identity'], $result['messages']); - } - } - - $result['code'] = Zend_Auth_Result::FAILURE_IDENTITY_NOT_FOUND; - $result['messages'][] = "Username '$this->_username' and realm '$this->_realm' combination not found"; - return new Zend_Auth_Result($result['code'], $result['identity'], $result['messages']); - } - - /** - * Securely compare two strings for equality while avoided C level memcmp() - * optimisations capable of leaking timing information useful to an attacker - * attempting to iteratively guess the unknown string (e.g. password) being - * compared against. - * - * @param string $a - * @param string $b - * @return bool - */ - protected function _secureStringCompare($a, $b) - { - if (strlen($a) !== strlen($b)) { - return false; - } - $result = 0; - for ($i = 0; $i < strlen($a); $i++) { - $result |= ord($a[$i]) ^ ord($b[$i]); - } - return $result == 0; - } -} diff --git a/library/Zend/Auth/Adapter/Exception.php b/library/Zend/Auth/Adapter/Exception.php deleted file mode 100644 index 6a8efc0b..00000000 --- a/library/Zend/Auth/Adapter/Exception.php +++ /dev/null @@ -1,38 +0,0 @@ - 'basic'|'digest'|'basic digest' - * 'realm' => - * 'digest_domains' => Space-delimited list of URIs - * 'nonce_timeout' => - * 'use_opaque' => Whether to send the opaque value in the header - * 'alogrithm' => See $_supportedAlgos. Default: MD5 - * 'proxy_auth' => Whether to do authentication as a Proxy - * @throws Zend_Auth_Adapter_Exception - * @return void - */ - public function __construct(array $config) - { - if (!extension_loaded('hash')) { - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception(__CLASS__ . ' requires the \'hash\' extension'); - } - - $this->_request = null; - $this->_response = null; - $this->_ieNoOpaque = false; - - - if (empty($config['accept_schemes'])) { - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception('Config key \'accept_schemes\' is required'); - } - - $schemes = explode(' ', $config['accept_schemes']); - $this->_acceptSchemes = array_intersect($schemes, $this->_supportedSchemes); - if (empty($this->_acceptSchemes)) { - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception('No supported schemes given in \'accept_schemes\'. Valid values: ' - . implode(', ', $this->_supportedSchemes)); - } - - // Double-quotes are used to delimit the realm string in the HTTP header, - // and colons are field delimiters in the password file. - if (empty($config['realm']) || - !ctype_print($config['realm']) || - strpos($config['realm'], ':') !== false || - strpos($config['realm'], '"') !== false) { - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception('Config key \'realm\' is required, and must contain only printable ' - . 'characters, excluding quotation marks and colons'); - } else { - $this->_realm = $config['realm']; - } - - if (in_array('digest', $this->_acceptSchemes)) { - if (empty($config['digest_domains']) || - !ctype_print($config['digest_domains']) || - strpos($config['digest_domains'], '"') !== false) { - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception('Config key \'digest_domains\' is required, and must contain ' - . 'only printable characters, excluding quotation marks'); - } else { - $this->_domains = $config['digest_domains']; - } - - if (empty($config['nonce_timeout']) || - !is_numeric($config['nonce_timeout'])) { - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception('Config key \'nonce_timeout\' is required, and must be an ' - . 'integer'); - } else { - $this->_nonceTimeout = (int) $config['nonce_timeout']; - } - - // We use the opaque value unless explicitly told not to - if (isset($config['use_opaque']) && false == (bool) $config['use_opaque']) { - $this->_useOpaque = false; - } else { - $this->_useOpaque = true; - } - - if (isset($config['algorithm']) && in_array($config['algorithm'], $this->_supportedAlgos)) { - $this->_algo = $config['algorithm']; - } else { - $this->_algo = 'MD5'; - } - } - - // Don't be a proxy unless explicitly told to do so - if (isset($config['proxy_auth']) && true == (bool) $config['proxy_auth']) { - $this->_imaProxy = true; // I'm a Proxy - } else { - $this->_imaProxy = false; - } - } - - /** - * Setter for the _basicResolver property - * - * @param Zend_Auth_Adapter_Http_Resolver_Interface $resolver - * @return Zend_Auth_Adapter_Http Provides a fluent interface - */ - public function setBasicResolver(Zend_Auth_Adapter_Http_Resolver_Interface $resolver) - { - $this->_basicResolver = $resolver; - - return $this; - } - - /** - * Getter for the _basicResolver property - * - * @return Zend_Auth_Adapter_Http_Resolver_Interface - */ - public function getBasicResolver() - { - return $this->_basicResolver; - } - - /** - * Setter for the _digestResolver property - * - * @param Zend_Auth_Adapter_Http_Resolver_Interface $resolver - * @return Zend_Auth_Adapter_Http Provides a fluent interface - */ - public function setDigestResolver(Zend_Auth_Adapter_Http_Resolver_Interface $resolver) - { - $this->_digestResolver = $resolver; - - return $this; - } - - /** - * Getter for the _digestResolver property - * - * @return Zend_Auth_Adapter_Http_Resolver_Interface - */ - public function getDigestResolver() - { - return $this->_digestResolver; - } - - /** - * Setter for the Request object - * - * @param Zend_Controller_Request_Http $request - * @return Zend_Auth_Adapter_Http Provides a fluent interface - */ - public function setRequest(Zend_Controller_Request_Http $request) - { - $this->_request = $request; - - return $this; - } - - /** - * Getter for the Request object - * - * @return Zend_Controller_Request_Http - */ - public function getRequest() - { - return $this->_request; - } - - /** - * Setter for the Response object - * - * @param Zend_Controller_Response_Http $response - * @return Zend_Auth_Adapter_Http Provides a fluent interface - */ - public function setResponse(Zend_Controller_Response_Http $response) - { - $this->_response = $response; - - return $this; - } - - /** - * Getter for the Response object - * - * @return Zend_Controller_Response_Http - */ - public function getResponse() - { - return $this->_response; - } - - /** - * Authenticate - * - * @throws Zend_Auth_Adapter_Exception - * @return Zend_Auth_Result - */ - public function authenticate() - { - if (empty($this->_request) || - empty($this->_response)) { - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception('Request and Response objects must be set before calling ' - . 'authenticate()'); - } - - if ($this->_imaProxy) { - $getHeader = 'Proxy-Authorization'; - } else { - $getHeader = 'Authorization'; - } - - $authHeader = $this->_request->getHeader($getHeader); - if (!$authHeader) { - return $this->_challengeClient(); - } - - list($clientScheme) = explode(' ', $authHeader); - $clientScheme = strtolower($clientScheme); - - // The server can issue multiple challenges, but the client should - // answer with only the selected auth scheme. - if (!in_array($clientScheme, $this->_supportedSchemes)) { - $this->_response->setHttpResponseCode(400); - return new Zend_Auth_Result( - Zend_Auth_Result::FAILURE_UNCATEGORIZED, - array(), - array('Client requested an incorrect or unsupported authentication scheme') - ); - } - - // client sent a scheme that is not the one required - if (!in_array($clientScheme, $this->_acceptSchemes)) { - // challenge again the client - return $this->_challengeClient(); - } - - switch ($clientScheme) { - case 'basic': - $result = $this->_basicAuth($authHeader); - break; - case 'digest': - $result = $this->_digestAuth($authHeader); - break; - default: - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception('Unsupported authentication scheme'); - } - - return $result; - } - - /** - * Challenge Client - * - * Sets a 401 or 407 Unauthorized response code, and creates the - * appropriate Authenticate header(s) to prompt for credentials. - * - * @return Zend_Auth_Result Always returns a non-identity Auth result - */ - protected function _challengeClient() - { - if ($this->_imaProxy) { - $statusCode = 407; - $headerName = 'Proxy-Authenticate'; - } else { - $statusCode = 401; - $headerName = 'WWW-Authenticate'; - } - - $this->_response->setHttpResponseCode($statusCode); - - // Send a challenge in each acceptable authentication scheme - if (in_array('basic', $this->_acceptSchemes)) { - $this->_response->setHeader($headerName, $this->_basicHeader()); - } - if (in_array('digest', $this->_acceptSchemes)) { - $this->_response->setHeader($headerName, $this->_digestHeader()); - } - return new Zend_Auth_Result( - Zend_Auth_Result::FAILURE_CREDENTIAL_INVALID, - array(), - array('Invalid or absent credentials; challenging client') - ); - } - - /** - * Basic Header - * - * Generates a Proxy- or WWW-Authenticate header value in the Basic - * authentication scheme. - * - * @return string Authenticate header value - */ - protected function _basicHeader() - { - return 'Basic realm="' . $this->_realm . '"'; - } - - /** - * Digest Header - * - * Generates a Proxy- or WWW-Authenticate header value in the Digest - * authentication scheme. - * - * @return string Authenticate header value - */ - protected function _digestHeader() - { - $wwwauth = 'Digest realm="' . $this->_realm . '", ' - . 'domain="' . $this->_domains . '", ' - . 'nonce="' . $this->_calcNonce() . '", ' - . ($this->_useOpaque ? 'opaque="' . $this->_calcOpaque() . '", ' : '') - . 'algorithm="' . $this->_algo . '", ' - . 'qop="' . implode(',', $this->_supportedQops) . '"'; - - return $wwwauth; - } - - /** - * Basic Authentication - * - * @param string $header Client's Authorization header - * @throws Zend_Auth_Adapter_Exception - * @return Zend_Auth_Result - */ - protected function _basicAuth($header) - { - if (empty($header)) { - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception('The value of the client Authorization header is required'); - } - if (empty($this->_basicResolver)) { - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception('A basicResolver object must be set before doing Basic ' - . 'authentication'); - } - - // Decode the Authorization header - $auth = substr($header, strlen('Basic ')); - $auth = base64_decode($auth); - if (!$auth) { - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception('Unable to base64_decode Authorization header value'); - } - - // See ZF-1253. Validate the credentials the same way the digest - // implementation does. If invalid credentials are detected, - // re-challenge the client. - if (!ctype_print($auth)) { - return $this->_challengeClient(); - } - // Fix for ZF-1515: Now re-challenges on empty username or password - $creds = array_filter(explode(':', $auth)); - if (count($creds) != 2) { - return $this->_challengeClient(); - } - - $password = $this->_basicResolver->resolve($creds[0], $this->_realm); - if ($password && $this->_secureStringCompare($password, $creds[1])) { - $identity = array('username'=>$creds[0], 'realm'=>$this->_realm); - return new Zend_Auth_Result(Zend_Auth_Result::SUCCESS, $identity); - } else { - return $this->_challengeClient(); - } - } - - /** - * Digest Authentication - * - * @param string $header Client's Authorization header - * @throws Zend_Auth_Adapter_Exception - * @return Zend_Auth_Result Valid auth result only on successful auth - */ - protected function _digestAuth($header) - { - if (empty($header)) { - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception('The value of the client Authorization header is required'); - } - if (empty($this->_digestResolver)) { - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception('A digestResolver object must be set before doing Digest authentication'); - } - - $data = $this->_parseDigestAuth($header); - if ($data === false) { - $this->_response->setHttpResponseCode(400); - return new Zend_Auth_Result( - Zend_Auth_Result::FAILURE_UNCATEGORIZED, - array(), - array('Invalid Authorization header format') - ); - } - - // See ZF-1052. This code was a bit too unforgiving of invalid - // usernames. Now, if the username is bad, we re-challenge the client. - if ('::invalid::' == $data['username']) { - return $this->_challengeClient(); - } - - // Verify that the client sent back the same nonce - if ($this->_calcNonce() != $data['nonce']) { - return $this->_challengeClient(); - } - // The opaque value is also required to match, but of course IE doesn't - // play ball. - if (!$this->_ieNoOpaque && $this->_calcOpaque() != $data['opaque']) { - return $this->_challengeClient(); - } - - // Look up the user's password hash. If not found, deny access. - // This makes no assumptions about how the password hash was - // constructed beyond that it must have been built in such a way as - // to be recreatable with the current settings of this object. - $ha1 = $this->_digestResolver->resolve($data['username'], $data['realm']); - if ($ha1 === false) { - return $this->_challengeClient(); - } - - // If MD5-sess is used, a1 value is made of the user's password - // hash with the server and client nonce appended, separated by - // colons. - if ($this->_algo == 'MD5-sess') { - $ha1 = hash('md5', $ha1 . ':' . $data['nonce'] . ':' . $data['cnonce']); - } - - // Calculate h(a2). The value of this hash depends on the qop - // option selected by the client and the supported hash functions - switch ($data['qop']) { - case 'auth': - $a2 = $this->_request->getMethod() . ':' . $data['uri']; - break; - case 'auth-int': - // Should be REQUEST_METHOD . ':' . uri . ':' . hash(entity-body), - // but this isn't supported yet, so fall through to default case - default: - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception('Client requested an unsupported qop option'); - } - // Using hash() should make parameterizing the hash algorithm - // easier - $ha2 = hash('md5', $a2); - - - // Calculate the server's version of the request-digest. This must - // match $data['response']. See RFC 2617, section 3.2.2.1 - $message = $data['nonce'] . ':' . $data['nc'] . ':' . $data['cnonce'] . ':' . $data['qop'] . ':' . $ha2; - $digest = hash('md5', $ha1 . ':' . $message); - - // If our digest matches the client's let them in, otherwise return - // a 401 code and exit to prevent access to the protected resource. - if ($this->_secureStringCompare($digest, $data['response'])) { - $identity = array('username'=>$data['username'], 'realm'=>$data['realm']); - return new Zend_Auth_Result(Zend_Auth_Result::SUCCESS, $identity); - } else { - return $this->_challengeClient(); - } - } - - /** - * Calculate Nonce - * - * @return string The nonce value - */ - protected function _calcNonce() - { - // Once subtle consequence of this timeout calculation is that it - // actually divides all of time into _nonceTimeout-sized sections, such - // that the value of timeout is the point in time of the next - // approaching "boundary" of a section. This allows the server to - // consistently generate the same timeout (and hence the same nonce - // value) across requests, but only as long as one of those - // "boundaries" is not crossed between requests. If that happens, the - // nonce will change on its own, and effectively log the user out. This - // would be surprising if the user just logged in. - $timeout = ceil(time() / $this->_nonceTimeout) * $this->_nonceTimeout; - - $nonce = hash('md5', $timeout . ':' . $this->_request->getServer('HTTP_USER_AGENT') . ':' . __CLASS__); - return $nonce; - } - - /** - * Calculate Opaque - * - * The opaque string can be anything; the client must return it exactly as - * it was sent. It may be useful to store data in this string in some - * applications. Ideally, a new value for this would be generated each time - * a WWW-Authenticate header is sent (in order to reduce predictability), - * but we would have to be able to create the same exact value across at - * least two separate requests from the same client. - * - * @return string The opaque value - */ - protected function _calcOpaque() - { - return hash('md5', 'Opaque Data:' . __CLASS__); - } - - /** - * Parse Digest Authorization header - * - * @param string $header Client's Authorization: HTTP header - * @return array|false Data elements from header, or false if any part of - * the header is invalid - */ - protected function _parseDigestAuth($header) - { - $temp = null; - $data = array(); - - // See ZF-1052. Detect invalid usernames instead of just returning a - // 400 code. - $ret = preg_match('/username="([^"]+)"/', $header, $temp); - if (!$ret || empty($temp[1]) - || !ctype_print($temp[1]) - || strpos($temp[1], ':') !== false) { - $data['username'] = '::invalid::'; - } else { - $data['username'] = $temp[1]; - } - $temp = null; - - $ret = preg_match('/realm="([^"]+)"/', $header, $temp); - if (!$ret || empty($temp[1])) { - return false; - } - if (!ctype_print($temp[1]) || strpos($temp[1], ':') !== false) { - return false; - } else { - $data['realm'] = $temp[1]; - } - $temp = null; - - $ret = preg_match('/nonce="([^"]+)"/', $header, $temp); - if (!$ret || empty($temp[1])) { - return false; - } - if (!ctype_xdigit($temp[1])) { - return false; - } else { - $data['nonce'] = $temp[1]; - } - $temp = null; - - $ret = preg_match('/uri="([^"]+)"/', $header, $temp); - if (!$ret || empty($temp[1])) { - return false; - } - // Section 3.2.2.5 in RFC 2617 says the authenticating server must - // verify that the URI field in the Authorization header is for the - // same resource requested in the Request Line. - $rUri = @parse_url($this->_request->getRequestUri()); - $cUri = @parse_url($temp[1]); - if (false === $rUri || false === $cUri) { - return false; - } else { - // Make sure the path portion of both URIs is the same - if ($rUri['path'] != $cUri['path']) { - return false; - } - // Section 3.2.2.5 seems to suggest that the value of the URI - // Authorization field should be made into an absolute URI if the - // Request URI is absolute, but it's vague, and that's a bunch of - // code I don't want to write right now. - $data['uri'] = $temp[1]; - } - $temp = null; - - $ret = preg_match('/response="([^"]+)"/', $header, $temp); - if (!$ret || empty($temp[1])) { - return false; - } - if (32 != strlen($temp[1]) || !ctype_xdigit($temp[1])) { - return false; - } else { - $data['response'] = $temp[1]; - } - $temp = null; - - // The spec says this should default to MD5 if omitted. OK, so how does - // that square with the algo we send out in the WWW-Authenticate header, - // if it can easily be overridden by the client? - $ret = preg_match('/algorithm="?(' . $this->_algo . ')"?/', $header, $temp); - if ($ret && !empty($temp[1]) - && in_array($temp[1], $this->_supportedAlgos)) { - $data['algorithm'] = $temp[1]; - } else { - $data['algorithm'] = 'MD5'; // = $this->_algo; ? - } - $temp = null; - - // Not optional in this implementation - $ret = preg_match('/cnonce="([^"]+)"/', $header, $temp); - if (!$ret || empty($temp[1])) { - return false; - } - if (!ctype_print($temp[1])) { - return false; - } else { - $data['cnonce'] = $temp[1]; - } - $temp = null; - - // If the server sent an opaque value, the client must send it back - if ($this->_useOpaque) { - $ret = preg_match('/opaque="([^"]+)"/', $header, $temp); - if (!$ret || empty($temp[1])) { - - // Big surprise: IE isn't RFC 2617-compliant. - if (false !== strpos($this->_request->getHeader('User-Agent'), 'MSIE')) { - $temp[1] = ''; - $this->_ieNoOpaque = true; - } else { - return false; - } - } - // This implementation only sends MD5 hex strings in the opaque value - if (!$this->_ieNoOpaque && - (32 != strlen($temp[1]) || !ctype_xdigit($temp[1]))) { - return false; - } else { - $data['opaque'] = $temp[1]; - } - $temp = null; - } - - // Not optional in this implementation, but must be one of the supported - // qop types - $ret = preg_match('/qop="?(' . implode('|', $this->_supportedQops) . ')"?/', $header, $temp); - if (!$ret || empty($temp[1])) { - return false; - } - if (!in_array($temp[1], $this->_supportedQops)) { - return false; - } else { - $data['qop'] = $temp[1]; - } - $temp = null; - - // Not optional in this implementation. The spec says this value - // shouldn't be a quoted string, but apparently some implementations - // quote it anyway. See ZF-1544. - $ret = preg_match('/nc="?([0-9A-Fa-f]{8})"?/', $header, $temp); - if (!$ret || empty($temp[1])) { - return false; - } - if (8 != strlen($temp[1]) || !ctype_xdigit($temp[1])) { - return false; - } else { - $data['nc'] = $temp[1]; - } - $temp = null; - - return $data; - } - - /** - * Securely compare two strings for equality while avoided C level memcmp() - * optimisations capable of leaking timing information useful to an attacker - * attempting to iteratively guess the unknown string (e.g. password) being - * compared against. - * - * @param string $a - * @param string $b - * @return bool - */ - protected function _secureStringCompare($a, $b) - { - if (strlen($a) !== strlen($b)) { - return false; - } - $result = 0; - for ($i = 0; $i < strlen($a); $i++) { - $result |= ord($a[$i]) ^ ord($b[$i]); - } - return $result == 0; - } -} diff --git a/library/Zend/Auth/Adapter/Http/Resolver/Exception.php b/library/Zend/Auth/Adapter/Http/Resolver/Exception.php deleted file mode 100644 index 82c2a929..00000000 --- a/library/Zend/Auth/Adapter/Http/Resolver/Exception.php +++ /dev/null @@ -1,40 +0,0 @@ -setFile($path); - } - } - - /** - * Set the path to the credentials file - * - * @param string $path - * @throws Zend_Auth_Adapter_Http_Resolver_Exception - * @return Zend_Auth_Adapter_Http_Resolver_File Provides a fluent interface - */ - public function setFile($path) - { - if (empty($path) || !is_readable($path)) { - /** - * @see Zend_Auth_Adapter_Http_Resolver_Exception - */ - require_once 'Zend/Auth/Adapter/Http/Resolver/Exception.php'; - throw new Zend_Auth_Adapter_Http_Resolver_Exception('Path not readable: ' . $path); - } - $this->_file = $path; - - return $this; - } - - /** - * Returns the path to the credentials file - * - * @return string - */ - public function getFile() - { - return $this->_file; - } - - /** - * Resolve credentials - * - * Only the first matching username/realm combination in the file is - * returned. If the file contains credentials for Digest authentication, - * the returned string is the password hash, or h(a1) from RFC 2617. The - * returned string is the plain-text password for Basic authentication. - * - * The expected format of the file is: - * username:realm:sharedSecret - * - * That is, each line consists of the user's username, the applicable - * authentication realm, and the password or hash, each delimited by - * colons. - * - * @param string $username Username - * @param string $realm Authentication Realm - * @throws Zend_Auth_Adapter_Http_Resolver_Exception - * @return string|false User's shared secret, if the user is found in the - * realm, false otherwise. - */ - public function resolve($username, $realm) - { - if (empty($username)) { - /** - * @see Zend_Auth_Adapter_Http_Resolver_Exception - */ - require_once 'Zend/Auth/Adapter/Http/Resolver/Exception.php'; - throw new Zend_Auth_Adapter_Http_Resolver_Exception('Username is required'); - } else if (!ctype_print($username) || strpos($username, ':') !== false) { - /** - * @see Zend_Auth_Adapter_Http_Resolver_Exception - */ - require_once 'Zend/Auth/Adapter/Http/Resolver/Exception.php'; - throw new Zend_Auth_Adapter_Http_Resolver_Exception('Username must consist only of printable characters, ' - . 'excluding the colon'); - } - if (empty($realm)) { - /** - * @see Zend_Auth_Adapter_Http_Resolver_Exception - */ - require_once 'Zend/Auth/Adapter/Http/Resolver/Exception.php'; - throw new Zend_Auth_Adapter_Http_Resolver_Exception('Realm is required'); - } else if (!ctype_print($realm) || strpos($realm, ':') !== false) { - /** - * @see Zend_Auth_Adapter_Http_Resolver_Exception - */ - require_once 'Zend/Auth/Adapter/Http/Resolver/Exception.php'; - throw new Zend_Auth_Adapter_Http_Resolver_Exception('Realm must consist only of printable characters, ' - . 'excluding the colon.'); - } - - // Open file, read through looking for matching credentials - $fp = @fopen($this->_file, 'r'); - if (!$fp) { - /** - * @see Zend_Auth_Adapter_Http_Resolver_Exception - */ - require_once 'Zend/Auth/Adapter/Http/Resolver/Exception.php'; - throw new Zend_Auth_Adapter_Http_Resolver_Exception('Unable to open password file: ' . $this->_file); - } - - // No real validation is done on the contents of the password file. The - // assumption is that we trust the administrators to keep it secure. - while (($line = fgetcsv($fp, 512, ':')) !== false) { - if ($line[0] == $username && $line[1] == $realm) { - $password = $line[2]; - fclose($fp); - return $password; - } - } - - fclose($fp); - return false; - } -} diff --git a/library/Zend/Auth/Adapter/Http/Resolver/Interface.php b/library/Zend/Auth/Adapter/Http/Resolver/Interface.php deleted file mode 100644 index 52103553..00000000 --- a/library/Zend/Auth/Adapter/Http/Resolver/Interface.php +++ /dev/null @@ -1,47 +0,0 @@ -_xmlToken = $strXmlDocument; - $this->_infoCard = new Zend_InfoCard(); - } - - /** - * Sets the InfoCard component Adapter to use - * - * @param Zend_InfoCard_Adapter_Interface $a - * @return Zend_Auth_Adapter_InfoCard Provides a fluent interface - */ - public function setAdapter(Zend_InfoCard_Adapter_Interface $a) - { - $this->_infoCard->setAdapter($a); - return $this; - } - - /** - * Retrieves the InfoCard component adapter being used - * - * @return Zend_InfoCard_Adapter_Interface - */ - public function getAdapter() - { - return $this->_infoCard->getAdapter(); - } - - /** - * Retrieves the InfoCard public key cipher object being used - * - * @return Zend_InfoCard_Cipher_PKI_Interface - */ - public function getPKCipherObject() - { - return $this->_infoCard->getPKCipherObject(); - } - - /** - * Sets the InfoCard public key cipher object to use - * - * @param Zend_InfoCard_Cipher_PKI_Interface $cipherObj - * @return Zend_Auth_Adapter_InfoCard Provides a fluent interface - */ - public function setPKICipherObject(Zend_InfoCard_Cipher_PKI_Interface $cipherObj) - { - $this->_infoCard->setPKICipherObject($cipherObj); - return $this; - } - - /** - * Retrieves the Symmetric cipher object being used - * - * @return Zend_InfoCard_Cipher_Symmetric_Interface - */ - public function getSymCipherObject() - { - return $this->_infoCard->getSymCipherObject(); - } - - /** - * Sets the InfoCard symmetric cipher object to use - * - * @param Zend_InfoCard_Cipher_Symmetric_Interface $cipherObj - * @return Zend_Auth_Adapter_InfoCard Provides a fluent interface - */ - public function setSymCipherObject(Zend_InfoCard_Cipher_Symmetric_Interface $cipherObj) - { - $this->_infoCard->setSymCipherObject($cipherObj); - return $this; - } - - /** - * Remove a Certificate Pair by Key ID from the search list - * - * @param string $key_id The Certificate Key ID returned from adding the certificate pair - * @throws Zend_InfoCard_Exception - * @return Zend_Auth_Adapter_InfoCard Provides a fluent interface - */ - public function removeCertificatePair($key_id) - { - $this->_infoCard->removeCertificatePair($key_id); - return $this; - } - - /** - * Add a Certificate Pair to the list of certificates searched by the component - * - * @param string $private_key_file The path to the private key file for the pair - * @param string $public_key_file The path to the certificate / public key for the pair - * @param string $type (optional) The URI for the type of key pair this is (default RSA with OAEP padding) - * @param string $password (optional) The password for the private key file if necessary - * @throws Zend_InfoCard_Exception - * @return string A key ID representing this key pair in the component - */ - public function addCertificatePair($private_key_file, $public_key_file, $type = Zend_InfoCard_Cipher::ENC_RSA_OAEP_MGF1P, $password = null) - { - return $this->_infoCard->addCertificatePair($private_key_file, $public_key_file, $type, $password); - } - - /** - * Return a Certificate Pair from a key ID - * - * @param string $key_id The Key ID of the certificate pair in the component - * @throws Zend_InfoCard_Exception - * @return array An array containing the path to the private/public key files, - * the type URI and the password if provided - */ - public function getCertificatePair($key_id) - { - return $this->_infoCard->getCertificatePair($key_id); - } - - /** - * Set the XML Token to be processed - * - * @param string $strXmlToken The XML token to process - * @return Zend_Auth_Adapter_InfoCard Provides a fluent interface - */ - public function setXmlToken($strXmlToken) - { - $this->_xmlToken = $strXmlToken; - return $this; - } - - /** - * Get the XML Token being processed - * - * @return string The XML token to be processed - */ - public function getXmlToken() - { - return $this->_xmlToken; - } - - /** - * Authenticates the XML token - * - * @return Zend_Auth_Result The result of the authentication - */ - public function authenticate() - { - try { - $claims = $this->_infoCard->process($this->getXmlToken()); - } catch(Exception $e) { - return new Zend_Auth_Result(Zend_Auth_Result::FAILURE , null, array('Exception Thrown', - $e->getMessage(), - $e->getTraceAsString(), - serialize($e))); - } - - if(!$claims->isValid()) { - switch($claims->getCode()) { - case Zend_infoCard_Claims::RESULT_PROCESSING_FAILURE: - return new Zend_Auth_Result( - Zend_Auth_Result::FAILURE, - $claims, - array( - 'Processing Failure', - $claims->getErrorMsg() - ) - ); - break; - case Zend_InfoCard_Claims::RESULT_VALIDATION_FAILURE: - return new Zend_Auth_Result( - Zend_Auth_Result::FAILURE_CREDENTIAL_INVALID, - $claims, - array( - 'Validation Failure', - $claims->getErrorMsg() - ) - ); - break; - default: - return new Zend_Auth_Result( - Zend_Auth_Result::FAILURE, - $claims, - array( - 'Unknown Failure', - $claims->getErrorMsg() - ) - ); - break; - } - } - - return new Zend_Auth_Result( - Zend_Auth_Result::SUCCESS, - $claims - ); - } -} diff --git a/library/Zend/Auth/Adapter/Interface.php b/library/Zend/Auth/Adapter/Interface.php deleted file mode 100644 index 550932cd..00000000 --- a/library/Zend/Auth/Adapter/Interface.php +++ /dev/null @@ -1,46 +0,0 @@ -setOptions($options); - if ($username !== null) { - $this->setUsername($username); - } - if ($password !== null) { - $this->setPassword($password); - } - } - - /** - * Returns the array of arrays of Zend_Ldap options of this adapter. - * - * @return array|null - */ - public function getOptions() - { - return $this->_options; - } - - /** - * Sets the array of arrays of Zend_Ldap options to be used by - * this adapter. - * - * @param array $options The array of arrays of Zend_Ldap options - * @return Zend_Auth_Adapter_Ldap Provides a fluent interface - */ - public function setOptions($options) - { - $this->_options = is_array($options) ? $options : array(); - return $this; - } - - /** - * Returns the username of the account being authenticated, or - * NULL if none is set. - * - * @return string|null - */ - public function getUsername() - { - return $this->_username; - } - - /** - * Sets the username for binding - * - * @param string $username The username for binding - * @return Zend_Auth_Adapter_Ldap Provides a fluent interface - */ - public function setUsername($username) - { - $this->_username = (string) $username; - return $this; - } - - /** - * Returns the password of the account being authenticated, or - * NULL if none is set. - * - * @return string|null - */ - public function getPassword() - { - return $this->_password; - } - - /** - * Sets the passwort for the account - * - * @param string $password The password of the account being authenticated - * @return Zend_Auth_Adapter_Ldap Provides a fluent interface - */ - public function setPassword($password) - { - $this->_password = (string) $password; - return $this; - } - - /** - * setIdentity() - set the identity (username) to be used - * - * Proxies to {@see setUsername()} - * - * Closes ZF-6813 - * - * @param string $identity - * @return Zend_Auth_Adapter_Ldap Provides a fluent interface - */ - public function setIdentity($identity) - { - return $this->setUsername($identity); - } - - /** - * setCredential() - set the credential (password) value to be used - * - * Proxies to {@see setPassword()} - * - * Closes ZF-6813 - * - * @param string $credential - * @return Zend_Auth_Adapter_Ldap Provides a fluent interface - */ - public function setCredential($credential) - { - return $this->setPassword($credential); - } - - /** - * Returns the LDAP Object - * - * @return Zend_Ldap The Zend_Ldap object used to authenticate the credentials - */ - public function getLdap() - { - if ($this->_ldap === null) { - /** - * @see Zend_Ldap - */ - require_once 'Zend/Ldap.php'; - $this->_ldap = new Zend_Ldap(); - } - - return $this->_ldap; - } - - /** - * Set an Ldap connection - * - * @param Zend_Ldap $ldap An existing Ldap object - * @return Zend_Auth_Adapter_Ldap Provides a fluent interface - */ - public function setLdap(Zend_Ldap $ldap) - { - $this->_ldap = $ldap; - - $this->setOptions(array($ldap->getOptions())); - - return $this; - } - - /** - * Returns a domain name for the current LDAP options. This is used - * for skipping redundant operations (e.g. authentications). - * - * @return string - */ - protected function _getAuthorityName() - { - $options = $this->getLdap()->getOptions(); - $name = $options['accountDomainName']; - if (!$name) - $name = $options['accountDomainNameShort']; - return $name ? $name : ''; - } - - /** - * Authenticate the user - * - * @throws Zend_Auth_Adapter_Exception - * @return Zend_Auth_Result - */ - public function authenticate() - { - /** - * @see Zend_Ldap_Exception - */ - require_once 'Zend/Ldap/Exception.php'; - - $messages = array(); - $messages[0] = ''; // reserved - $messages[1] = ''; // reserved - - $username = $this->_username; - $password = $this->_password; - - if (!$username) { - $code = Zend_Auth_Result::FAILURE_IDENTITY_NOT_FOUND; - $messages[0] = 'A username is required'; - return new Zend_Auth_Result($code, '', $messages); - } - if (!$password) { - /* A password is required because some servers will - * treat an empty password as an anonymous bind. - */ - $code = Zend_Auth_Result::FAILURE_CREDENTIAL_INVALID; - $messages[0] = 'A password is required'; - return new Zend_Auth_Result($code, '', $messages); - } - - $ldap = $this->getLdap(); - - $code = Zend_Auth_Result::FAILURE; - $messages[0] = "Authority not found: $username"; - $failedAuthorities = array(); - - /* Iterate through each server and try to authenticate the supplied - * credentials against it. - */ - foreach ($this->_options as $name => $options) { - - if (!is_array($options)) { - /** - * @see Zend_Auth_Adapter_Exception - */ - require_once 'Zend/Auth/Adapter/Exception.php'; - throw new Zend_Auth_Adapter_Exception('Adapter options array not an array'); - } - $adapterOptions = $this->_prepareOptions($ldap, $options); - $dname = ''; - - try { - if ($messages[1]) - $messages[] = $messages[1]; - $messages[1] = ''; - $messages[] = $this->_optionsToString($options); - - $dname = $this->_getAuthorityName(); - if (isset($failedAuthorities[$dname])) { - /* If multiple sets of server options for the same domain - * are supplied, we want to skip redundant authentications - * where the identity or credentials where found to be - * invalid with another server for the same domain. The - * $failedAuthorities array tracks this condition (and also - * serves to supply the original error message). - * This fixes issue ZF-4093. - */ - $messages[1] = $failedAuthorities[$dname]; - $messages[] = "Skipping previously failed authority: $dname"; - continue; - } - - $canonicalName = $ldap->getCanonicalAccountName($username); - $ldap->bind($canonicalName, $password); - /* - * Fixes problem when authenticated user is not allowed to retrieve - * group-membership information or own account. - * This requires that the user specified with "username" and optionally - * "password" in the Zend_Ldap options is able to retrieve the required - * information. - */ - $requireRebind = false; - if (isset($options['username'])) { - $ldap->bind(); - $requireRebind = true; - } - $dn = $ldap->getCanonicalAccountName($canonicalName, Zend_Ldap::ACCTNAME_FORM_DN); - - $groupResult = $this->_checkGroupMembership($ldap, $canonicalName, $dn, $adapterOptions); - if ($groupResult === true) { - $this->_authenticatedDn = $dn; - $messages[0] = ''; - $messages[1] = ''; - $messages[] = "$canonicalName authentication successful"; - if ($requireRebind === true) { - // rebinding with authenticated user - $ldap->bind($dn, $password); - } - return new Zend_Auth_Result(Zend_Auth_Result::SUCCESS, $canonicalName, $messages); - } else { - $messages[0] = 'Account is not a member of the specified group'; - $messages[1] = $groupResult; - $failedAuthorities[$dname] = $groupResult; - } - } catch (Zend_Ldap_Exception $zle) { - - /* LDAP based authentication is notoriously difficult to diagnose. Therefore - * we bend over backwards to capture and record every possible bit of - * information when something goes wrong. - */ - - $err = $zle->getCode(); - - if ($err == Zend_Ldap_Exception::LDAP_X_DOMAIN_MISMATCH) { - /* This error indicates that the domain supplied in the - * username did not match the domains in the server options - * and therefore we should just skip to the next set of - * server options. - */ - continue; - } else if ($err == Zend_Ldap_Exception::LDAP_NO_SUCH_OBJECT) { - $code = Zend_Auth_Result::FAILURE_IDENTITY_NOT_FOUND; - $messages[0] = "Account not found: $username"; - $failedAuthorities[$dname] = $zle->getMessage(); - } else if ($err == Zend_Ldap_Exception::LDAP_INVALID_CREDENTIALS) { - $code = Zend_Auth_Result::FAILURE_CREDENTIAL_INVALID; - $messages[0] = 'Invalid credentials'; - $failedAuthorities[$dname] = $zle->getMessage(); - } else { - $line = $zle->getLine(); - $messages[] = $zle->getFile() . "($line): " . $zle->getMessage(); - $messages[] = preg_replace( - '/\b'.preg_quote(substr($password, 0, 15), '/').'\b/', - '*****', - $zle->getTraceAsString() - ); - $messages[0] = 'An unexpected failure occurred'; - } - $messages[1] = $zle->getMessage(); - } - } - - $msg = isset($messages[1]) ? $messages[1] : $messages[0]; - $messages[] = "$username authentication failed: $msg"; - - return new Zend_Auth_Result($code, $username, $messages); - } - - /** - * Sets the LDAP specific options on the Zend_Ldap instance - * - * @param Zend_Ldap $ldap - * @param array $options - * @return array of auth-adapter specific options - */ - protected function _prepareOptions(Zend_Ldap $ldap, array $options) - { - $adapterOptions = array( - 'group' => null, - 'groupDn' => $ldap->getBaseDn(), - 'groupScope' => Zend_Ldap::SEARCH_SCOPE_SUB, - 'groupAttr' => 'cn', - 'groupFilter' => 'objectClass=groupOfUniqueNames', - 'memberAttr' => 'uniqueMember', - 'memberIsDn' => true - ); - foreach ($adapterOptions as $key => $value) { - if (array_key_exists($key, $options)) { - $value = $options[$key]; - unset($options[$key]); - switch ($key) { - case 'groupScope': - $value = (int)$value; - if (in_array($value, array(Zend_Ldap::SEARCH_SCOPE_BASE, - Zend_Ldap::SEARCH_SCOPE_ONE, Zend_Ldap::SEARCH_SCOPE_SUB), true)) { - $adapterOptions[$key] = $value; - } - break; - case 'memberIsDn': - $adapterOptions[$key] = ($value === true || - $value === '1' || strcasecmp($value, 'true') == 0); - break; - default: - $adapterOptions[$key] = trim($value); - break; - } - } - } - $ldap->setOptions($options); - return $adapterOptions; - } - - /** - * Checks the group membership of the bound user - * - * @param Zend_Ldap $ldap - * @param string $canonicalName - * @param string $dn - * @param array $adapterOptions - * @return string|true - */ - protected function _checkGroupMembership(Zend_Ldap $ldap, $canonicalName, $dn, array $adapterOptions) - { - if ($adapterOptions['group'] === null) { - return true; - } - - if ($adapterOptions['memberIsDn'] === false) { - $user = $canonicalName; - } else { - $user = $dn; - } - - /** - * @see Zend_Ldap_Filter - */ - require_once 'Zend/Ldap/Filter.php'; - $groupName = Zend_Ldap_Filter::equals($adapterOptions['groupAttr'], $adapterOptions['group']); - $membership = Zend_Ldap_Filter::equals($adapterOptions['memberAttr'], $user); - $group = Zend_Ldap_Filter::andFilter($groupName, $membership); - $groupFilter = $adapterOptions['groupFilter']; - if (!empty($groupFilter)) { - $group = $group->addAnd($groupFilter); - } - - $result = $ldap->count($group, $adapterOptions['groupDn'], $adapterOptions['groupScope']); - - if ($result === 1) { - return true; - } else { - return 'Failed to verify group membership with ' . $group->toString(); - } - } - - /** - * getAccountObject() - Returns the result entry as a stdClass object - * - * This resembles the feature {@see Zend_Auth_Adapter_DbTable::getResultRowObject()}. - * Closes ZF-6813 - * - * @param array $returnAttribs - * @param array $omitAttribs - * @return stdClass|boolean - */ - public function getAccountObject(array $returnAttribs = array(), array $omitAttribs = array()) - { - if (!$this->_authenticatedDn) { - return false; - } - - $returnObject = new stdClass(); - - $returnAttribs = array_map('strtolower', $returnAttribs); - $omitAttribs = array_map('strtolower', $omitAttribs); - $returnAttribs = array_diff($returnAttribs, $omitAttribs); - - $entry = $this->getLdap()->getEntry($this->_authenticatedDn, $returnAttribs, true); - foreach ($entry as $attr => $value) { - if (in_array($attr, $omitAttribs)) { - // skip attributes marked to be omitted - continue; - } - if (is_array($value)) { - $returnObject->$attr = (count($value) > 1) ? $value : $value[0]; - } else { - $returnObject->$attr = $value; - } - } - return $returnObject; - } - - /** - * Converts options to string - * - * @param array $options - * @return string - */ - private function _optionsToString(array $options) - { - $str = ''; - foreach ($options as $key => $val) { - if ($key === 'password') - $val = '*****'; - if ($str) - $str .= ','; - $str .= $key . '=' . $val; - } - return $str; - } -} diff --git a/library/Zend/Auth/Adapter/OpenId.php b/library/Zend/Auth/Adapter/OpenId.php deleted file mode 100644 index 8882ac6c..00000000 --- a/library/Zend/Auth/Adapter/OpenId.php +++ /dev/null @@ -1,284 +0,0 @@ -_id = $id; - $this->_storage = $storage; - $this->_returnTo = $returnTo; - $this->_root = $root; - $this->_extensions = $extensions; - $this->_response = $response; - } - - /** - * Sets the value to be used as the identity - * - * @param string $id the identity value - * @return Zend_Auth_Adapter_OpenId Provides a fluent interface - */ - public function setIdentity($id) - { - $this->_id = $id; - return $this; - } - - /** - * Sets the storage implementation which will be use by OpenId - * - * @param Zend_OpenId_Consumer_Storage $storage - * @return Zend_Auth_Adapter_OpenId Provides a fluent interface - */ - public function setStorage(Zend_OpenId_Consumer_Storage $storage) - { - $this->_storage = $storage; - return $this; - } - - /** - * Sets the HTTP URL to redirect response from server to - * - * @param string $returnTo - * @return Zend_Auth_Adapter_OpenId Provides a fluent interface - */ - public function setReturnTo($returnTo) - { - $this->_returnTo = $returnTo; - return $this; - } - - /** - * Sets HTTP URL to identify consumer on server - * - * @param string $root - * @return Zend_Auth_Adapter_OpenId Provides a fluent interface - */ - public function setRoot($root) - { - $this->_root = $root; - return $this; - } - - /** - * Sets OpenID extension(s) - * - * @param mixed $extensions - * @return Zend_Auth_Adapter_OpenId Provides a fluent interface - */ - public function setExtensions($extensions) - { - $this->_extensions = $extensions; - return $this; - } - - /** - * Sets an optional response object to perform HTTP or HTML form redirection - * - * @param string $root - * @return Zend_Auth_Adapter_OpenId Provides a fluent interface - */ - public function setResponse($response) - { - $this->_response = $response; - return $this; - } - - /** - * Enables or disables interaction with user during authentication on - * OpenID provider. - * - * @param bool $check_immediate - * @return Zend_Auth_Adapter_OpenId Provides a fluent interface - */ - public function setCheckImmediate($check_immediate) - { - $this->_check_immediate = $check_immediate; - return $this; - } - - /** - * Sets HTTP client object to make HTTP requests - * - * @param Zend_Http_Client $client HTTP client object to be used - */ - public function setHttpClient($client) { - $this->_httpClient = $client; - } - - /** - * Authenticates the given OpenId identity. - * Defined by Zend_Auth_Adapter_Interface. - * - * @throws Zend_Auth_Adapter_Exception If answering the authentication query is impossible - * @return Zend_Auth_Result - */ - public function authenticate() { - $id = $this->_id; - if (!empty($id)) { - $consumer = new Zend_OpenId_Consumer($this->_storage); - $consumer->setHttpClient($this->_httpClient); - /* login() is never returns on success */ - if (!$this->_check_immediate) { - if (!$consumer->login($id, - $this->_returnTo, - $this->_root, - $this->_extensions, - $this->_response)) { - return new Zend_Auth_Result( - Zend_Auth_Result::FAILURE, - $id, - array("Authentication failed", $consumer->getError())); - } - } else { - if (!$consumer->check($id, - $this->_returnTo, - $this->_root, - $this->_extensions, - $this->_response)) { - return new Zend_Auth_Result( - Zend_Auth_Result::FAILURE, - $id, - array("Authentication failed", $consumer->getError())); - } - } - } else { - $params = (isset($_SERVER['REQUEST_METHOD']) && - $_SERVER['REQUEST_METHOD']=='POST') ? $_POST: $_GET; - $consumer = new Zend_OpenId_Consumer($this->_storage); - $consumer->setHttpClient($this->_httpClient); - if ($consumer->verify( - $params, - $id, - $this->_extensions)) { - return new Zend_Auth_Result( - Zend_Auth_Result::SUCCESS, - $id, - array("Authentication successful")); - } else { - return new Zend_Auth_Result( - Zend_Auth_Result::FAILURE, - $id, - array("Authentication failed", $consumer->getError())); - } - } - } - -} diff --git a/library/Zend/Auth/Exception.php b/library/Zend/Auth/Exception.php deleted file mode 100644 index 67bf9c0d..00000000 --- a/library/Zend/Auth/Exception.php +++ /dev/null @@ -1,36 +0,0 @@ - self::SUCCESS ) { - $code = 1; - } - - $this->_code = $code; - $this->_identity = $identity; - $this->_messages = $messages; - } - - /** - * Returns whether the result represents a successful authentication attempt - * - * @return boolean - */ - public function isValid() - { - return ($this->_code > 0) ? true : false; - } - - /** - * getCode() - Get the result code for this authentication attempt - * - * @return int - */ - public function getCode() - { - return $this->_code; - } - - /** - * Returns the identity used in the authentication attempt - * - * @return mixed - */ - public function getIdentity() - { - return $this->_identity; - } - - /** - * Returns an array of string reasons why the authentication attempt was unsuccessful - * - * If authentication was successful, this method returns an empty array. - * - * @return array - */ - public function getMessages() - { - return $this->_messages; - } -} diff --git a/library/Zend/Auth/Storage/Exception.php b/library/Zend/Auth/Storage/Exception.php deleted file mode 100644 index 38762aae..00000000 --- a/library/Zend/Auth/Storage/Exception.php +++ /dev/null @@ -1,38 +0,0 @@ -_data); - } - - /** - * Returns the contents of storage - * Behavior is undefined when storage is empty. - * - * @throws Zend_Auth_Storage_Exception If reading contents from storage is impossible - * @return mixed - */ - public function read() - { - return $this->_data; - } - - /** - * Writes $contents to storage - * - * @param mixed $contents - * @throws Zend_Auth_Storage_Exception If writing $contents to storage is impossible - * @return void - */ - public function write($contents) - { - $this->_data = $contents; - } - - /** - * Clears contents from storage - * - * @throws Zend_Auth_Storage_Exception If clearing contents from storage is impossible - * @return void - */ - public function clear() - { - $this->_data = null; - } -} diff --git a/library/Zend/Auth/Storage/Session.php b/library/Zend/Auth/Storage/Session.php deleted file mode 100644 index 143f1493..00000000 --- a/library/Zend/Auth/Storage/Session.php +++ /dev/null @@ -1,150 +0,0 @@ -_namespace = $namespace; - $this->_member = $member; - $this->_session = new Zend_Session_Namespace($this->_namespace); - } - - /** - * Returns the session namespace - * - * @return string - */ - public function getNamespace() - { - return $this->_namespace; - } - - /** - * Returns the name of the session object member - * - * @return string - */ - public function getMember() - { - return $this->_member; - } - - /** - * Defined by Zend_Auth_Storage_Interface - * - * @return boolean - */ - public function isEmpty() - { - return !isset($this->_session->{$this->_member}); - } - - /** - * Defined by Zend_Auth_Storage_Interface - * - * @return mixed - */ - public function read() - { - return $this->_session->{$this->_member}; - } - - /** - * Defined by Zend_Auth_Storage_Interface - * - * @param mixed $contents - * @return void - */ - public function write($contents) - { - $this->_session->{$this->_member} = $contents; - } - - /** - * Defined by Zend_Auth_Storage_Interface - * - * @return void - */ - public function clear() - { - unset($this->_session->{$this->_member}); - } -} diff --git a/library/Zend/Barcode.php b/library/Zend/Barcode.php deleted file mode 100644 index ef907df0..00000000 --- a/library/Zend/Barcode.php +++ /dev/null @@ -1,352 +0,0 @@ -rendererParams)) { - $rendererConfig = $barcode->rendererParams->toArray(); - } - if (isset($barcode->renderer)) { - $renderer = (string) $barcode->renderer; - } - if (isset($barcode->barcodeParams)) { - $barcodeConfig = $barcode->barcodeParams->toArray(); - } - if (isset($barcode->barcode)) { - $barcode = (string) $barcode->barcode; - } else { - $barcode = null; - } - } - - try { - $barcode = self::makeBarcode($barcode, $barcodeConfig); - $renderer = self::makeRenderer($renderer, $rendererConfig); - } catch (Zend_Exception $e) { - $renderable = ($e instanceof Zend_Barcode_Exception) ? $e->isRenderable() : false; - if ($automaticRenderError && $renderable) { - $barcode = self::makeBarcode('error', array( - 'text' => $e->getMessage() - )); - $renderer = self::makeRenderer($renderer, array()); - } else { - throw $e; - } - } - - $renderer->setAutomaticRenderError($automaticRenderError); - return $renderer->setBarcode($barcode); - } - - /** - * Barcode Constructor - * - * @param mixed $barcode String name of barcode class, or Zend_Config object. - * @param mixed $barcodeConfig OPTIONAL; an array or Zend_Config object with barcode parameters. - * @return Zend_Barcode_Object - */ - public static function makeBarcode($barcode, $barcodeConfig = array()) - { - if ($barcode instanceof Zend_Barcode_Object_ObjectAbstract) { - return $barcode; - } - - /* - * Convert Zend_Config argument to plain string - * barcode name and separate config object. - */ - if ($barcode instanceof Zend_Config) { - if (isset($barcode->barcodeParams) && $barcode->barcodeParams instanceof Zend_Config) { - $barcodeConfig = $barcode->barcodeParams->toArray(); - } - if (isset($barcode->barcode)) { - $barcode = (string) $barcode->barcode; - } else { - $barcode = null; - } - } - if ($barcodeConfig instanceof Zend_Config) { - $barcodeConfig = $barcodeConfig->toArray(); - } - - /* - * Verify that barcode parameters are in an array. - */ - if (!is_array($barcodeConfig)) { - /** - * @see Zend_Barcode_Exception - */ - require_once 'Zend/Barcode/Exception.php'; - throw new Zend_Barcode_Exception( - 'Barcode parameters must be in an array or a Zend_Config object' - ); - } - - /* - * Verify that an barcode name has been specified. - */ - if (!is_string($barcode) || empty($barcode)) { - /** - * @see Zend_Barcode_Exception - */ - require_once 'Zend/Barcode/Exception.php'; - throw new Zend_Barcode_Exception( - 'Barcode name must be specified in a string' - ); - } - /* - * Form full barcode class name - */ - $barcodeNamespace = 'Zend_Barcode_Object'; - if (isset($barcodeConfig['barcodeNamespace'])) { - $barcodeNamespace = $barcodeConfig['barcodeNamespace']; - } - - $barcodeName = strtolower($barcodeNamespace . '_' . $barcode); - $barcodeName = str_replace(' ', '_', ucwords( - str_replace( '_', ' ', $barcodeName) - )); - - /* - * Load the barcode class. This throws an exception - * if the specified class cannot be loaded. - */ - if (!class_exists($barcodeName)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($barcodeName); - } - - /* - * Create an instance of the barcode class. - * Pass the config to the barcode class constructor. - */ - $bcAdapter = new $barcodeName($barcodeConfig); - - /* - * Verify that the object created is a descendent of the abstract barcode type. - */ - if (!$bcAdapter instanceof Zend_Barcode_Object_ObjectAbstract) { - /** - * @see Zend_Barcode_Exception - */ - require_once 'Zend/Barcode/Exception.php'; - throw new Zend_Barcode_Exception( - "Barcode class '$barcodeName' does not extend Zend_Barcode_Object_ObjectAbstract" - ); - } - return $bcAdapter; - } - - /** - * Renderer Constructor - * - * @param mixed $renderer String name of renderer class, or Zend_Config object. - * @param mixed $rendererConfig OPTIONAL; an array or Zend_Config object with renderer parameters. - * @return Zend_Barcode_Renderer - */ - public static function makeRenderer($renderer = 'image', $rendererConfig = array()) - { - if ($renderer instanceof Zend_Barcode_Renderer_RendererAbstract) { - return $renderer; - } - - /* - * Convert Zend_Config argument to plain string - * barcode name and separate config object. - */ - if ($renderer instanceof Zend_Config) { - if (isset($renderer->rendererParams)) { - $rendererConfig = $renderer->rendererParams->toArray(); - } - if (isset($renderer->renderer)) { - $renderer = (string) $renderer->renderer; - } - } - if ($rendererConfig instanceof Zend_Config) { - $rendererConfig = $rendererConfig->toArray(); - } - - /* - * Verify that barcode parameters are in an array. - */ - if (!is_array($rendererConfig)) { - /** - * @see Zend_Barcode_Exception - */ - require_once 'Zend/Barcode/Exception.php'; - $e = new Zend_Barcode_Exception( - 'Barcode parameters must be in an array or a Zend_Config object' - ); - $e->setIsRenderable(false); - throw $e; - } - - /* - * Verify that an barcode name has been specified. - */ - if (!is_string($renderer) || empty($renderer)) { - /** - * @see Zend_Barcode_Exception - */ - require_once 'Zend/Barcode/Exception.php'; - $e = new Zend_Barcode_Exception( - 'Renderer name must be specified in a string' - ); - $e->setIsRenderable(false); - throw $e; - } - - /* - * Form full barcode class name - */ - $rendererNamespace = 'Zend_Barcode_Renderer'; - if (isset($rendererConfig['rendererNamespace'])) { - $rendererNamespace = $rendererConfig['rendererNamespace']; - } - - $rendererName = strtolower($rendererNamespace . '_' . $renderer); - $rendererName = str_replace(' ', '_', ucwords( - str_replace( '_', ' ', $rendererName) - )); - - /* - * Load the barcode class. This throws an exception - * if the specified class cannot be loaded. - */ - if (!class_exists($rendererName)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($rendererName); - } - - /* - * Create an instance of the barcode class. - * Pass the config to the barcode class constructor. - */ - $rdrAdapter = new $rendererName($rendererConfig); - - /* - * Verify that the object created is a descendent of the abstract barcode type. - */ - if (!$rdrAdapter instanceof Zend_Barcode_Renderer_RendererAbstract) { - /** - * @see Zend_Barcode_Exception - */ - require_once 'Zend/Barcode/Exception.php'; - $e = new Zend_Barcode_Exception( - "Renderer class '$rendererName' does not extend Zend_Barcode_Renderer_RendererAbstract" - ); - $e->setIsRenderable(false); - throw $e; - } - return $rdrAdapter; - } - - /** - * Proxy to renderer render() method - * - * @param string | Zend_Barcode_Object | array | Zend_Config $barcode - * @param string | Zend_Barcode_Renderer $renderer - * @param array | Zend_Config $barcodeConfig - * @param array | Zend_Config $rendererConfig - */ - public static function render( - $barcode, - $renderer, - $barcodeConfig = array(), - $rendererConfig = array() - ) { - self::factory($barcode, $renderer, $barcodeConfig, $rendererConfig)->render(); - } - - /** - * Proxy to renderer draw() method - * - * @param string | Zend_Barcode_Object | array | Zend_Config $barcode - * @param string | Zend_Barcode_Renderer $renderer - * @param array | Zend_Config $barcodeConfig - * @param array | Zend_Config $rendererConfig - * @return mixed - */ - public static function draw( - $barcode, - $renderer, - $barcodeConfig = array(), - $rendererConfig = array() - ) { - return self::factory($barcode, $renderer, $barcodeConfig, $rendererConfig)->draw(); - } - - /** - * Proxy for setBarcodeFont of Zend_Barcode_Object - * @param string $font - * @eturn void - */ - public static function setBarcodeFont($font) - { - require_once 'Zend/Barcode/Object/ObjectAbstract.php'; - Zend_Barcode_Object_ObjectAbstract::setBarcodeFont($font); - } -} diff --git a/library/Zend/Barcode/Exception.php b/library/Zend/Barcode/Exception.php deleted file mode 100644 index 71db6a78..00000000 --- a/library/Zend/Barcode/Exception.php +++ /dev/null @@ -1,63 +0,0 @@ -_isRenderable = (bool) $flag; - return $this; - } - - /** - * Retrieve renderable flag - * - * @return bool - */ - public function isRenderable() - { - return $this->_isRenderable; - } -} diff --git a/library/Zend/Barcode/Object/Code128.php b/library/Zend/Barcode/Object/Code128.php deleted file mode 100644 index d8518f73..00000000 --- a/library/Zend/Barcode/Object/Code128.php +++ /dev/null @@ -1,391 +0,0 @@ - "11011001100", 1 => "11001101100", 2 => "11001100110", - 3 => "10010011000", 4 => "10010001100", 5 => "10001001100", - 6 => "10011001000", 7 => "10011000100", 8 => "10001100100", - 9 => "11001001000", 10 => "11001000100", 11 => "11000100100", - 12 => "10110011100", 13 => "10011011100", 14 => "10011001110", - 15 => "10111001100", 16 => "10011101100", 17 => "10011100110", - 18 => "11001110010", 19 => "11001011100", 20 => "11001001110", - 21 => "11011100100", 22 => "11001110100", 23 => "11101101110", - 24 => "11101001100", 25 => "11100101100", 26 => "11100100110", - 27 => "11101100100", 28 => "11100110100", 29 => "11100110010", - 30 => "11011011000", 31 => "11011000110", 32 => "11000110110", - 33 => "10100011000", 34 => "10001011000", 35 => "10001000110", - 36 => "10110001000", 37 => "10001101000", 38 => "10001100010", - 39 => "11010001000", 40 => "11000101000", 41 => "11000100010", - 42 => "10110111000", 43 => "10110001110", 44 => "10001101110", - 45 => "10111011000", 46 => "10111000110", 47 => "10001110110", - 48 => "11101110110", 49 => "11010001110", 50 => "11000101110", - 51 => "11011101000", 52 => "11011100010", 53 => "11011101110", - 54 => "11101011000", 55 => "11101000110", 56 => "11100010110", - 57 => "11101101000", 58 => "11101100010", 59 => "11100011010", - 60 => "11101111010", 61 => "11001000010", 62 => "11110001010", - 63 => "10100110000", 64 => "10100001100", 65 => "10010110000", - 66 => "10010000110", 67 => "10000101100", 68 => "10000100110", - 69 => "10110010000", 70 => "10110000100", 71 => "10011010000", - 72 => "10011000010", 73 => "10000110100", 74 => "10000110010", - 75 => "11000010010", 76 => "11001010000", 77 => "11110111010", - 78 => "11000010100", 79 => "10001111010", 80 => "10100111100", - 81 => "10010111100", 82 => "10010011110", 83 => "10111100100", - 84 => "10011110100", 85 => "10011110010", 86 => "11110100100", - 87 => "11110010100", 88 => "11110010010", 89 => "11011011110", - 90 => "11011110110", 91 => "11110110110", 92 => "10101111000", - 93 => "10100011110", 94 => "10001011110", 95 => "10111101000", - 96 => "10111100010", 97 => "11110101000", 98 => "11110100010", - 99 => "10111011110", 100 => "10111101110", 101 => "11101011110", - 102 => "11110101110", - 103 => "11010000100", 104 => "11010010000", 105 => "11010011100", - 106 => "1100011101011"); - - /** - * Character sets ABC - * @var array - */ - protected $_charSets = array( - 'A' => array( - ' ', '!', '"', '#', '$', '%', '&', "'", - '(', ')', '*', '+', ',', '-', '.', '/', - '0', '1', '2', '3', '4', '5', '6', '7', - '8', '9', ':', ';', '<', '=', '>', '?', - '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', - 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', - 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', - 'X', 'Y', 'Z', '[', '\\', ']', '^', '_', - 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, - 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, - 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, - 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, - 'FNC3', 'FNC2', 'SHIFT', 'Code C', 'Code B', 'FNC4', 'FNC1', - 'START A', 'START B', 'START C', 'STOP'), - 'B' => array( - ' ', '!', '"', '#', '$', '%', '&', "'", - '(', ')', '*', '+', ',', '-', '.', '/', - '0', '1', '2', '3', '4', '5', '6', '7', - '8', '9', ':', ';', '<', '=', '>', '?', - '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', - 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', - 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', - 'X', 'Y', 'Z', '[', '\\', ']', '^', '_', - '`', 'a', 'b', 'c', 'd', 'e', 'f', 'g', - 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', - 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', - 'x', 'y', 'z', '{', '|', '}', '~', 0x7F, - 'FNC3', 'FNC2', 'SHIFT', 'Code C', 'FNC4', 'Code A', 'FNC1', - 'START A', 'START B', 'START C', 'STOP',), - 'C' => array( - '00', '01', '02', '03', '04', '05', '06', '07', '08', '09', - '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', - '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', - '30', '31', '32', '33', '34', '35', '36', '37', '38', '39', - '40', '41', '42', '43', '44', '45', '46', '47', '48', '49', - '50', '51', '52', '53', '54', '55', '56', '57', '58', '59', - '60', '61', '62', '63', '64', '65', '66', '67', '68', '69', - '70', '71', '72', '73', '74', '75', '76', '77', '78', '79', - '80', '81', '82', '83', '84', '85', '86', '87', '88', '89', - '90', '91', '92', '93', '94', '95', '96', '97', '98', '99', - 'Code B', 'Code A', 'FNC1', 'START A', 'START B', 'START C', 'STOP')); - /*'A' => array( - ' '=>0, '!'=>1, '"'=>2, '#'=>3, '$'=>4, '%'=>5, '&'=>6, "'"=>7, - '('=>8, ')'=>9, '*'=>10, '+'=>11, ','=>12, '-'=>13, '.'=>14, '/'=>15, - '0'=>16, '1'=>17, '2'=>18, '3'=>19, '4'=>20, '5'=>21, '6'=>22, '7'=>23, - '8'=>24, '9'=>25, ':'=>26, ';'=>27, '<'=>28, '='=>29, '>'=>30, '?'=>31, - '@'=>32, 'A'=>33, 'B'=>34, 'C'=>35, 'D'=>36, 'E'=>37, 'F'=>38, 'G'=>39, - 'H'=>40, 'I'=>41, 'J'=>42, 'K'=>43, 'L'=>44, 'M'=>45, 'N'=>46, 'O'=>47, - 'P'=>48, 'Q'=>49, 'R'=>50, 'S'=>51, 'T'=>52, 'U'=>53, 'V'=>54, 'W'=>55, - 'X'=>56, 'Y'=>57, 'Z'=>58, '['=>59, '\\'=>60, ']'=>61, '^'=>62, '_'=>63, - 0x00=>64, 0x01=>65, 0x02=>66, 0x03=>67, 0x04=>68, 0x05=>69, 0x06=>70, 0x07=>71, - 0x08=>72, 0x09=>73, 0x0A=>74, 0x0B=>75, 0x0C=>76, 0x0D=>77, 0x0E=>78, 0x0F=>79, - 0x10=>80, 0x11=>81, 0x12=>82, 0x13=>83, 0x14=>84, 0x15=>85, 0x16=>86, 0x17=>87, - 0x18=>88, 0x19=>89, 0x1A=>90, 0x1B=>91, 0x1C=>92, 0x1D=>93, 0x1E=>94, 0x1F=>95, - 'FNC3'=>96, 'FNC2'=>97, 'SHIFT'=>98, 'Code C'=>99, 'Code B'=>100, 'FNC4'=>101, 'FNC1'=>102, 'START A'=>103, - 'START B'=>104, 'START C'=>105, 'STOP'=>106), - 'B' => array( - ' '=>0, '!'=>1, '"'=>2, '#'=>3, '$'=>4, '%'=>5, '&'=>6, "'"=>7, - '('=>8, ')'=>9, '*'=>10, '+'=>11, ','=>12, '-'=>13, '.'=>14, '/'=>15, - '0'=>16, '1'=>17, '2'=>18, '3'=>19, '4'=>20, '5'=>21, '6'=>22, '7'=>23, - '8'=>24, '9'=>25, ':'=>26, ';'=>27, '<'=>28, '='=>29, '>'=>30, '?'=>31, - '@'=>32, 'A'=>33, 'B'=>34, 'C'=>35, 'D'=>36, 'E'=>37, 'F'=>38, 'G'=>39, - 'H'=>40, 'I'=>41, 'J'=>42, 'K'=>43, 'L'=>44, 'M'=>45, 'N'=>46, 'O'=>47, - 'P'=>48, 'Q'=>49, 'R'=>50, 'S'=>51, 'T'=>52, 'U'=>53, 'V'=>54, 'W'=>55, - 'X'=>56, 'Y'=>57, 'Z'=>58, '['=>59, '\\'=>60, ']'=>61, '^'=>62, '_'=>63, - '`' =>64, 'a'=>65, 'b'=>66, 'c'=>67, 'd'=>68, 'e'=>69, 'f'=>70, 'g'=>71, - 'h'=>72, 'i'=>73, 'j'=>74, 'k'=>75, 'l'=>76, 'm'=>77, 'n'=>78, 'o'=>79, - 'p'=>80, 'q'=>81, 'r'=>82, 's'=>83, 't'=>84, 'u'=>85, 'v'=>86, 'w'=>87, - 'x'=>88, 'y'=>89, 'z'=>90, '{'=>91, '|'=>92, '}'=>93, '~'=>94, 0x7F=>95, - 'FNC3'=>96, 'FNC2'=>97, 'SHIFT'=>98, 'Code C'=>99, 'FNC4'=>100, 'Code A'=>101, 'FNC1'=>102, 'START A'=>103, - 'START B'=>104, 'START C'=>105, 'STOP'=>106,), - 'C' => array( - '00'=>0, '01'=>1, '02'=>2, '03'=>3, '04'=>4, '05'=>5, '06'=>6, '07'=>7, '08'=>8, '09'=>9, - '10'=>10, '11'=>11, '12'=>12, '13'=>13, '14'=>14, '15'=>15, '16'=>16, '17'=>17, '18'=>18, '19'=>19, - '20'=>20, '21'=>21, '22'=>22, '23'=>23, '24'=>24, '25'=>25, '26'=>26, '27'=>27, '28'=>28, '29'=>29, - '30'=>30, '31'=>31, '32'=>32, '33'=>33, '34'=>34, '35'=>35, '36'=>36, '37'=>37, '38'=>38, '39'=>39, - '40'=>40, '41'=>41, '42'=>42, '43'=>43, '44'=>44, '45'=>45, '46'=>46, '47'=>47, '48'=>48, '49'=>49, - '50'=>50, '51'=>51, '52'=>52, '53'=>53, '54'=>54, '55'=>55, '56'=>56, '57'=>57, '58'=>58, '59'=>59, - '60'=>60, '61'=>61, '62'=>62, '63'=>63, '64'=>64, '65'=>65, '66'=>66, '67'=>67, '68'=>68, '69'=>69, - '70'=>70, '71'=>71, '72'=>72, '73'=>73, '74'=>74, '75'=>75, '76'=>76, '77'=>77, '78'=>78, '79'=>79, - '80'=>80, '81'=>81, '82'=>82, '83'=>83, '84'=>84, '85'=>85, '86'=>86, '87'=>87, '88'=>88, '89'=>89, - '90'=>90, '91'=>91, '92'=>92, '93'=>93, '94'=>94, '95'=>95, '96'=>96, '97'=>97, '98'=>98, '99'=>99, - 'Code B'=>100, 'Code A'=>101, 'FNC1'=>102, 'START A'=>103, 'START B'=>104, 'START C'=>105, 'STOP'=>106));*/ - - /** - * Width of the barcode (in pixels) - * @return integer - */ - protected function _calculateBarcodeWidth() - { - $quietZone = $this->getQuietZone(); - // Each characters contain 11 bars... - $characterLength = 11 * $this->_barThinWidth * $this->_factor; - $convertedChars = count($this->_convertToBarcodeChars($this->getText())); - if ($this->_withChecksum) { - $convertedChars++; - } - $encodedData = $convertedChars * $characterLength; - // ...except the STOP character (13) - $encodedData += $characterLength + 2 * $this->_barThinWidth * $this->_factor; - $width = $quietZone + $encodedData + $quietZone; - return $width; - } - - /** - * Partial check of code128 barcode - * @return void - */ - protected function _checkParams() - { - } - - /** - * Prepare array to draw barcode - * @return array - */ - protected function _prepareBarcode() - { - $barcodeTable = array(); - - $convertedChars = $this->_convertToBarcodeChars($this->getText()); - - if ($this->_withChecksum) { - $convertedChars[] = $this->getChecksum($this->getText()); - } - - // STOP CHARACTER - $convertedChars[] = 106; - - foreach ($convertedChars as $barcodeChar) { - $barcodePattern = $this->_codingMap[$barcodeChar]; - foreach (str_split($barcodePattern) as $c) { - $barcodeTable[] = array($c, $this->_barThinWidth, 0, 1); - } - } - return $barcodeTable; - } - - /** - * Checks if the next $length chars of $string starting at $pos are numeric. - * Returns false if the end of the string is reached. - * @param string $string String to search - * @param int $pos Starting position - * @param int $length Length to search - * @return bool - */ - protected static function _isDigit($string, $pos, $length = 2) - { - if ($pos + $length > strlen($string)) { - return false; - } - - for ($i = $pos; $i < $pos + $length; $i++) { - if (!is_numeric($string[$i])) { - return false; - } - } - return true; - } - - /** - * Convert string to barcode string - * @return array - */ - protected function _convertToBarcodeChars($string) - { - $string = (string) $string; - if (!strlen($string)) { - return array(); - } - - if (isset($this->_convertedText[md5($string)])) { - return $this->_convertedText[md5($string)]; - } - - $currentCharset = null; - $sum = 0; - $fak = 0; - $result = array(); - - for ($pos = 0; $pos < strlen($string); $pos++) { - $char = $string[$pos]; - $code = null; - - if (self::_isDigit($string, $pos, 4) && $currentCharset != 'C' - || self::_isDigit($string, $pos, 2) && $currentCharset == 'C') { - /** - * Switch to C if the next 4 chars are numeric or stay C if the next 2 - * chars are numeric - */ - if ($currentCharset != 'C') { - if ($pos == 0) { - $code = array_search("START C", $this->_charSets['C']); - } else { - $code = array_search("Code C", $this->_charSets[$currentCharset]); - } - $result[] = $code; - $currentCharset = 'C'; - } - } else if (in_array($char, $this->_charSets['B']) && $currentCharset != 'B' - && !(in_array($char, $this->_charSets['A']) && $currentCharset == 'A')) { - /** - * Switch to B as B contains the char and B is not the current charset. - */ - if ($pos == 0) { - $code = array_search("START B", $this->_charSets['B']); - } else { - $code = array_search("Code B", $this->_charSets[$currentCharset]); - } - $result[] = $code; - $currentCharset = 'B'; - } else if (array_key_exists($char, $this->_charSets['A']) && $currentCharset != 'A' - && !(array_key_exists($char, $this->_charSets['B']) && $currentCharset == 'B')) { - /** - * Switch to C as C contains the char and C is not the current charset. - */ - if ($pos == 0) { - $code = array_search("START A", $this->_charSets['A']); - } else { - $code =array_search("Code A", $this->_charSets[$currentCharset]); - } - $result[] = $code; - $currentCharset = 'A'; - } - - if ($currentCharset == 'C') { - $code = array_search(substr($string, $pos, 2), $this->_charSets['C']); - $pos++; //Two chars from input - } else { - $code = array_search($string[$pos], $this->_charSets[$currentCharset]); - } - $result[] = $code; - } - - $this->_convertedText[md5($string)] = $result; - return $result; - } - - /** - * Set text to encode - * @param string $value - * @return Zend_Barcode_Object - */ - public function setText($value) - { - $this->_text = $value; - return $this; - } - - /** - * Retrieve text to encode - * @return string - */ - public function getText() - { - return $this->_text; - } - - /** - * Get barcode checksum - * - * @param string $text - * @return int - */ - public function getChecksum($text) - { - $tableOfChars = $this->_convertToBarcodeChars($text); - - $sum = $tableOfChars[0]; - unset($tableOfChars[0]); - - $k = 1; - foreach ($tableOfChars as $char) { - $sum += ($k++) * $char; - } - - $checksum = $sum % 103; - - return $checksum; - } - - /** - * Standard validation for most of barcode objects - * @param string $value - * @param array $options - */ - protected function _validateText($value, $options = array()) - { - // @TODO: add code128 validator - return true; - } -} diff --git a/library/Zend/Barcode/Object/Code25.php b/library/Zend/Barcode/Object/Code25.php deleted file mode 100644 index a4775872..00000000 --- a/library/Zend/Barcode/Object/Code25.php +++ /dev/null @@ -1,143 +0,0 @@ - '00110', - '1' => '10001', - '2' => '01001', - '3' => '11000', - '4' => '00101', - '5' => '10100', - '6' => '01100', - '7' => '00011', - '8' => '10010', - '9' => '01010', - ); - - /** - * Width of the barcode (in pixels) - * @return integer - */ - protected function _calculateBarcodeWidth() - { - $quietZone = $this->getQuietZone(); - $startCharacter = (2 * $this->_barThickWidth + 4 * $this->_barThinWidth) * $this->_factor; - $characterLength = (3 * $this->_barThinWidth + 2 * $this->_barThickWidth + 5 * $this->_barThinWidth) - * $this->_factor; - $encodedData = strlen($this->getText()) * $characterLength; - $stopCharacter = (2 * $this->_barThickWidth + 4 * $this->_barThinWidth) * $this->_factor; - return $quietZone + $startCharacter + $encodedData + $stopCharacter + $quietZone; - } - - /** - * Partial check of interleaved 2 of 5 barcode - * @return void - */ - protected function _checkParams() - { - $this->_checkRatio(); - } - - /** - * Prepare array to draw barcode - * @return array - */ - protected function _prepareBarcode() - { - $barcodeTable = array(); - - // Start character (30301) - $barcodeTable[] = array(1 , $this->_barThickWidth , 0 , 1); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , 1); - $barcodeTable[] = array(1 , $this->_barThickWidth , 0 , 1); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , 1); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , 1); - $barcodeTable[] = array(0 , $this->_barThinWidth); - - $text = str_split($this->getText()); - foreach ($text as $char) { - $barcodeChar = str_split($this->_codingMap[$char]); - foreach ($barcodeChar as $c) { - /* visible, width, top, length */ - $width = $c ? $this->_barThickWidth : $this->_barThinWidth; - $barcodeTable[] = array(1 , $width , 0 , 1); - $barcodeTable[] = array(0 , $this->_barThinWidth); - } - } - - // Stop character (30103) - $barcodeTable[] = array(1 , $this->_barThickWidth , 0 , 1); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , 1); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , 1); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , 1); - $barcodeTable[] = array(1 , $this->_barThickWidth , 0 , 1); - return $barcodeTable; - } - - /** - * Get barcode checksum - * - * @param string $text - * @return int - */ - public function getChecksum($text) - { - $this->_checkText($text); - $factor = 3; - $checksum = 0; - - for ($i = strlen($text); $i > 0; $i --) { - $checksum += intval($text{$i - 1}) * $factor; - $factor = 4 - $factor; - } - - $checksum = (10 - ($checksum % 10)) % 10; - - return $checksum; - } -} diff --git a/library/Zend/Barcode/Object/Code25interleaved.php b/library/Zend/Barcode/Object/Code25interleaved.php deleted file mode 100644 index 48518222..00000000 --- a/library/Zend/Barcode/Object/Code25interleaved.php +++ /dev/null @@ -1,179 +0,0 @@ -_barcodeLength = 'even'; - } - - /** - * Activate/deactivate drawing of bearer bars - * @param boolean $value - * @return Zend_Barcode_Object_Int25 - */ - public function setWithBearerBars($value) - { - $this->_withBearerBars = (bool) $value; - return $this; - } - - /** - * Retrieve if bearer bars are enabled - * @return boolean - */ - public function getWithBearerBars() - { - return $this->_withBearerBars; - } - - /** - * Width of the barcode (in pixels) - * @return integer - */ - protected function _calculateBarcodeWidth() - { - $quietZone = $this->getQuietZone(); - $startCharacter = (4 * $this->_barThinWidth) * $this->_factor; - $characterLength = (3 * $this->_barThinWidth + 2 * $this->_barThickWidth) * $this->_factor; - $encodedData = strlen($this->getText()) * $characterLength; - $stopCharacter = ($this->_barThickWidth + 2 * $this->_barThinWidth) * $this->_factor; - return $quietZone + $startCharacter + $encodedData + $stopCharacter + $quietZone; - } - - /** - * Prepare array to draw barcode - * @return array - */ - protected function _prepareBarcode() - { - if ($this->_withBearerBars) { - $this->_withBorder = false; - } - - // Start character (0000) - $barcodeTable[] = array(1, $this->_barThinWidth, 0, 1); - $barcodeTable[] = array(0, $this->_barThinWidth, 0, 1); - $barcodeTable[] = array(1, $this->_barThinWidth, 0, 1); - $barcodeTable[] = array(0, $this->_barThinWidth, 0, 1); - - // Encoded $text - $text = $this->getText(); - for ($i = 0; $i < strlen($text); $i += 2) { // Draw 2 chars at a time - $char1 = substr($text, $i, 1); - $char2 = substr($text, $i + 1, 1); - - // Interleave - for ($ibar = 0; $ibar < 5; $ibar ++) { - // Draws char1 bar (fore color) - $barWidth = (substr($this->_codingMap[$char1], $ibar, 1)) - ? $this->_barThickWidth - : $this->_barThinWidth; - - $barcodeTable[] = array(1, $barWidth, 0, 1); - - // Left space corresponding to char2 (background color) - $barWidth = (substr($this->_codingMap[$char2], $ibar, 1)) - ? $this->_barThickWidth - : $this->_barThinWidth; - $barcodeTable[] = array(0, $barWidth, 0 , 1); - } - } - - // Stop character (100) - $barcodeTable[] = array(1 , $this->_barThickWidth, 0, 1); - $barcodeTable[] = array(0 , $this->_barThinWidth, 0, 1); - $barcodeTable[] = array(1 , $this->_barThinWidth, 0, 1); - return $barcodeTable; - } - - /** - * Drawing of bearer bars (if enabled) - * - * @return void - */ - protected function _postDrawBarcode() - { - if (!$this->_withBearerBars) { - return; - } - - $width = $this->_barThickWidth * $this->_factor; - $point1 = $this->_rotate(-1, -1); - $point2 = $this->_rotate($this->_calculateWidth() - 1, -1); - $point3 = $this->_rotate($this->_calculateWidth() - 1, $width - 1); - $point4 = $this->_rotate(-1, $width - 1); - $this->_addPolygon(array( - $point1, - $point2, - $point3, - $point4, - )); - $point1 = $this->_rotate( - 0, - 0 + $this->_barHeight * $this->_factor - 1 - ); - $point2 = $this->_rotate( - $this->_calculateWidth() - 1, - 0 + $this->_barHeight * $this->_factor - 1 - ); - $point3 = $this->_rotate( - $this->_calculateWidth() - 1, - 0 + $this->_barHeight * $this->_factor - $width - ); - $point4 = $this->_rotate( - 0, - 0 + $this->_barHeight * $this->_factor - $width - ); - $this->_addPolygon(array( - $point1, - $point2, - $point3, - $point4, - )); - } -} diff --git a/library/Zend/Barcode/Object/Code39.php b/library/Zend/Barcode/Object/Code39.php deleted file mode 100644 index 7ec4aad9..00000000 --- a/library/Zend/Barcode/Object/Code39.php +++ /dev/null @@ -1,188 +0,0 @@ - '000110100', - '1' => '100100001', - '2' => '001100001', - '3' => '101100000', - '4' => '000110001', - '5' => '100110000', - '6' => '001110000', - '7' => '000100101', - '8' => '100100100', - '9' => '001100100', - 'A' => '100001001', - 'B' => '001001001', - 'C' => '101001000', - 'D' => '000011001', - 'E' => '100011000', - 'F' => '001011000', - 'G' => '000001101', - 'H' => '100001100', - 'I' => '001001100', - 'J' => '000011100', - 'K' => '100000011', - 'L' => '001000011', - 'M' => '101000010', - 'N' => '000010011', - 'O' => '100010010', - 'P' => '001010010', - 'Q' => '000000111', - 'R' => '100000110', - 'S' => '001000110', - 'T' => '000010110', - 'U' => '110000001', - 'V' => '011000001', - 'W' => '111000000', - 'X' => '010010001', - 'Y' => '110010000', - 'Z' => '011010000', - '-' => '010000101', - '.' => '110000100', - ' ' => '011000100', - '$' => '010101000', - '/' => '010100010', - '+' => '010001010', - '%' => '000101010', - '*' => '010010100', - ); - - /** - * Partial check of Code39 barcode - * @return void - */ - protected function _checkParams() - { - $this->_checkRatio(); - } - - /** - * Width of the barcode (in pixels) - * @return int - */ - protected function _calculateBarcodeWidth() - { - $quietZone = $this->getQuietZone(); - $characterLength = (6 * $this->_barThinWidth + 3 * $this->_barThickWidth + 1) * $this->_factor; - $encodedData = strlen($this->getText()) * $characterLength - $this->_factor; - return $quietZone + $encodedData + $quietZone; - } - - /** - * Set text to encode - * @param string $value - * @return Zend_Barcode_Object - */ - public function setText($value) - { - $this->_text = $value; - return $this; - } - - /** - * Retrieve text to display - * @return string - */ - public function getText() - { - return '*' . parent::getText() . '*'; - } - - /** - * Retrieve text to display - * @return string - */ - public function getTextToDisplay() - { - $text = parent::getTextToDisplay(); - if (substr($text, 0, 1) != '*' && substr($text, -1) != '*') { - return '*' . $text . '*'; - } else { - return $text; - } - } - - /** - * Prepare array to draw barcode - * @return array - */ - protected function _prepareBarcode() - { - $text = str_split($this->getText()); - $barcodeTable = array(); - foreach ($text as $char) { - $barcodeChar = str_split($this->_codingMap[$char]); - $visible = true; - foreach ($barcodeChar as $c) { - /* visible, width, top, length */ - $width = $c ? $this->_barThickWidth : $this->_barThinWidth; - $barcodeTable[] = array((int) $visible, $width, 0, 1); - $visible = ! $visible; - } - $barcodeTable[] = array(0 , $this->_barThinWidth); - } - return $barcodeTable; - } - - /** - * Get barcode checksum - * - * @param string $text - * @return int - */ - public function getChecksum($text) - { - $this->_checkText($text); - $text = str_split($text); - $charset = array_flip(array_keys($this->_codingMap)); - $checksum = 0; - foreach ($text as $character) { - $checksum += $charset[$character]; - } - return array_search(($checksum % 43), $charset); - } -} diff --git a/library/Zend/Barcode/Object/Ean13.php b/library/Zend/Barcode/Object/Ean13.php deleted file mode 100644 index 5c762f5e..00000000 --- a/library/Zend/Barcode/Object/Ean13.php +++ /dev/null @@ -1,225 +0,0 @@ - array( - 0 => "0001101", 1 => "0011001", 2 => "0010011", 3 => "0111101", 4 => "0100011", - 5 => "0110001", 6 => "0101111", 7 => "0111011", 8 => "0110111", 9 => "0001011" - ), - 'B' => array( - 0 => "0100111", 1 => "0110011", 2 => "0011011", 3 => "0100001", 4 => "0011101", - 5 => "0111001", 6 => "0000101", 7 => "0010001", 8 => "0001001", 9 => "0010111" - ), - 'C' => array( - 0 => "1110010", 1 => "1100110", 2 => "1101100", 3 => "1000010", 4 => "1011100", - 5 => "1001110", 6 => "1010000", 7 => "1000100", 8 => "1001000", 9 => "1110100" - )); - - protected $_parities = array( - 0 => array('A','A','A','A','A','A'), - 1 => array('A','A','B','A','B','B'), - 2 => array('A','A','B','B','A','B'), - 3 => array('A','A','B','B','B','A'), - 4 => array('A','B','A','A','B','B'), - 5 => array('A','B','B','A','A','B'), - 6 => array('A','B','B','B','A','A'), - 7 => array('A','B','A','B','A','B'), - 8 => array('A','B','A','B','B','A'), - 9 => array('A','B','B','A','B','A') - ); - - /** - * Default options for Postnet barcode - * @return void - */ - protected function _getDefaultOptions() - { - $this->_barcodeLength = 13; - $this->_mandatoryChecksum = true; - $this->_mandatoryQuietZones = true; - } - - /** - * Width of the barcode (in pixels) - * @return integer - */ - protected function _calculateBarcodeWidth() - { - $quietZone = $this->getQuietZone(); - $startCharacter = (3 * $this->_barThinWidth) * $this->_factor; - $middleCharacter = (5 * $this->_barThinWidth) * $this->_factor; - $stopCharacter = (3 * $this->_barThinWidth) * $this->_factor; - $encodedData = (7 * $this->_barThinWidth) * $this->_factor * 12; - return $quietZone + $startCharacter + $middleCharacter + $encodedData + $stopCharacter + $quietZone; - } - - /** - * Partial check of interleaved EAN/UPC barcode - * @return void - */ - protected function _checkParams() - {} - - /** - * Prepare array to draw barcode - * @return array - */ - protected function _prepareBarcode() - { - $barcodeTable = array(); - $height = ($this->_drawText) ? 1.1 : 1; - - // Start character (101) - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - - $textTable = str_split($this->getText()); - $parity = $this->_parities[$textTable[0]]; - - // First part - for ($i = 1; $i < 7; $i++) { - $bars = str_split($this->_codingMap[$parity[$i - 1]][$textTable[$i]]); - foreach ($bars as $b) { - $barcodeTable[] = array($b , $this->_barThinWidth , 0 , 1); - } - } - - // Middle character (01010) - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , $height); - - // Second part - for ($i = 7; $i < 13; $i++) { - $bars = str_split($this->_codingMap['C'][$textTable[$i]]); - foreach ($bars as $b) { - $barcodeTable[] = array($b , $this->_barThinWidth , 0 , 1); - } - } - - // Stop character (101) - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - return $barcodeTable; - } - - /** - * Get barcode checksum - * - * @param string $text - * @return int - */ - public function getChecksum($text) - { - $this->_checkText($text); - $factor = 3; - $checksum = 0; - - for ($i = strlen($text); $i > 0; $i --) { - $checksum += intval($text{$i - 1}) * $factor; - $factor = 4 - $factor; - } - - $checksum = (10 - ($checksum % 10)) % 10; - - return $checksum; - } - - /** - * Partial function to draw text - * @return void - */ - protected function _drawText() - { - if (get_class($this) == 'Zend_Barcode_Object_Ean13') { - $this->_drawEan13Text(); - } else { - parent::_drawText(); - } - } - - protected function _drawEan13Text() - { - if ($this->_drawText) { - $text = $this->getTextToDisplay(); - $characterWidth = (7 * $this->_barThinWidth) * $this->_factor; - $leftPosition = $this->getQuietZone() - $characterWidth; - for ($i = 0; $i < $this->_barcodeLength; $i ++) { - $this->_addText( - $text{$i}, - $this->_fontSize * $this->_factor, - $this->_rotate( - $leftPosition, - (int) $this->_withBorder * 2 - + $this->_factor * ($this->_barHeight + $this->_fontSize) + 1 - ), - $this->_font, - $this->_foreColor, - 'left', - - $this->_orientation - ); - switch ($i) { - case 0: - $factor = 3; - break; - case 6: - $factor = 4; - break; - default: - $factor = 0; - } - $leftPosition = $leftPosition + $characterWidth + ($factor * $this->_barThinWidth * $this->_factor); - } - } - } -} diff --git a/library/Zend/Barcode/Object/Ean2.php b/library/Zend/Barcode/Object/Ean2.php deleted file mode 100644 index 3e0a9876..00000000 --- a/library/Zend/Barcode/Object/Ean2.php +++ /dev/null @@ -1,65 +0,0 @@ - array('A','A'), - 1 => array('A','B'), - 2 => array('B','A'), - 3 => array('B','B') - ); - - /** - * Default options for Ean2 barcode - * @return void - */ - protected function _getDefaultOptions() - { - $this->_barcodeLength = 2; - } - - protected function _getParity($i) - { - $modulo = $this->getText() % 4; - return $this->_parities[$modulo][$i]; - } -} diff --git a/library/Zend/Barcode/Object/Ean5.php b/library/Zend/Barcode/Object/Ean5.php deleted file mode 100644 index b1eea9bf..00000000 --- a/library/Zend/Barcode/Object/Ean5.php +++ /dev/null @@ -1,147 +0,0 @@ - array('B','B','A','A','A'), - 1 => array('B','A','B','A','A'), - 2 => array('B','A','A','B','A'), - 3 => array('B','A','A','A','B'), - 4 => array('A','B','B','A','A'), - 5 => array('A','A','B','B','A'), - 6 => array('A','A','A','B','B'), - 7 => array('A','B','A','B','A'), - 8 => array('A','B','A','A','B'), - 9 => array('A','A','B','A','B') - ); - - /** - * Default options for Ean5 barcode - * @return void - */ - protected function _getDefaultOptions() - { - $this->_barcodeLength = 5; - } - - /** - * Width of the barcode (in pixels) - * @return integer - */ - protected function _calculateBarcodeWidth() - { - $quietZone = $this->getQuietZone(); - $startCharacter = (5 * $this->_barThinWidth) * $this->_factor; - $middleCharacter = (2 * $this->_barThinWidth) * $this->_factor; - $encodedData = (7 * $this->_barThinWidth) * $this->_factor; - return $quietZone + $startCharacter + ($this->_barcodeLength - 1) * $middleCharacter + $this->_barcodeLength * $encodedData + $quietZone; - } - - /** - * Prepare array to draw barcode - * @return array - */ - protected function _prepareBarcode() - { - $barcodeTable = array(); - - // Start character (01011) - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , 1); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , 1); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , 1); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , 1); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , 1); - - $firstCharacter = true; - $textTable = str_split($this->getText()); - - // Characters - for ($i = 0; $i < $this->_barcodeLength; $i++) { - if ($firstCharacter) { - $firstCharacter = false; - } else { - // Intermediate character (01) - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , 1); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , 1); - } - $bars = str_split($this->_codingMap[$this->_getParity($i)][$textTable[$i]]); - foreach ($bars as $b) { - $barcodeTable[] = array($b , $this->_barThinWidth , 0 , 1); - } - } - - return $barcodeTable; - } - - /** - * Get barcode checksum - * - * @param string $text - * @return int - */ - public function getChecksum($text) - { - $this->_checkText($text); - $checksum = 0; - - for ($i = 0 ; $i < $this->_barcodeLength; $i ++) { - $checksum += intval($text{$i}) * ($i % 2 ? 9 : 3); - } - - return ($checksum % 10); - } - - protected function _getParity($i) - { - $checksum = $this->getChecksum($this->getText()); - return $this->_parities[$checksum][$i]; - } - - /** - * Retrieve text to encode - * @return string - */ - public function getText() - { - return $this->_addLeadingZeros($this->_text); - } -} diff --git a/library/Zend/Barcode/Object/Ean8.php b/library/Zend/Barcode/Object/Ean8.php deleted file mode 100644 index 5c85ca6b..00000000 --- a/library/Zend/Barcode/Object/Ean8.php +++ /dev/null @@ -1,175 +0,0 @@ -_barcodeLength = 8; - $this->_mandatoryChecksum = true; - } - - /** - * Width of the barcode (in pixels) - * @return integer - */ - protected function _calculateBarcodeWidth() - { - $quietZone = $this->getQuietZone(); - $startCharacter = (3 * $this->_barThinWidth) * $this->_factor; - $middleCharacter = (5 * $this->_barThinWidth) * $this->_factor; - $stopCharacter = (3 * $this->_barThinWidth) * $this->_factor; - $encodedData = (7 * $this->_barThinWidth) * $this->_factor * 8; - return $quietZone + $startCharacter + $middleCharacter + $encodedData + $stopCharacter + $quietZone; - } - - /** - * Prepare array to draw barcode - * @return array - */ - protected function _prepareBarcode() - { - $barcodeTable = array(); - $height = ($this->_drawText) ? 1.1 : 1; - - // Start character (101) - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - - $textTable = str_split($this->getText()); - - // First part - for ($i = 0; $i < 4; $i++) { - $bars = str_split($this->_codingMap['A'][$textTable[$i]]); - foreach ($bars as $b) { - $barcodeTable[] = array($b , $this->_barThinWidth , 0 , 1); - } - } - - // Middle character (01010) - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , $height); - - // Second part - for ($i = 4; $i < 8; $i++) { - $bars = str_split($this->_codingMap['C'][$textTable[$i]]); - foreach ($bars as $b) { - $barcodeTable[] = array($b , $this->_barThinWidth , 0 , 1); - } - } - - // Stop character (101) - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - return $barcodeTable; - } - - /** - * Partial function to draw text - * @return void - */ - protected function _drawText() - { - if ($this->_drawText) { - $text = $this->getTextToDisplay(); - $characterWidth = (7 * $this->_barThinWidth) * $this->_factor; - $leftPosition = $this->getQuietZone() + (3 * $this->_barThinWidth) * $this->_factor; - for ($i = 0; $i < $this->_barcodeLength; $i ++) { - $this->_addText( - $text{$i}, - $this->_fontSize * $this->_factor, - $this->_rotate( - $leftPosition, - (int) $this->_withBorder * 2 - + $this->_factor * ($this->_barHeight + $this->_fontSize) + 1 - ), - $this->_font, - $this->_foreColor, - 'left', - - $this->_orientation - ); - switch ($i) { - case 3: - $factor = 4; - break; - default: - $factor = 0; - } - $leftPosition = $leftPosition + $characterWidth + ($factor * $this->_barThinWidth * $this->_factor); - } - } - } - - /** - * Particular validation for Ean8 barcode objects - * (to suppress checksum character substitution) - * @param string $value - * @param array $options - */ - protected function _validateText($value, $options = array()) - { - $validator = new Zend_Validate_Barcode(array( - 'adapter' => 'ean8', - 'checksum' => false, - )); - - $value = $this->_addLeadingZeros($value, true); - - if (!$validator->isValid($value)) { - $message = implode("\n", $validator->getMessages()); - - /** - * @see Zend_Barcode_Object_Exception - */ - require_once 'Zend/Barcode/Object/Exception.php'; - throw new Zend_Barcode_Object_Exception($message); - } - } -} diff --git a/library/Zend/Barcode/Object/Error.php b/library/Zend/Barcode/Object/Error.php deleted file mode 100644 index 72307689..00000000 --- a/library/Zend/Barcode/Object/Error.php +++ /dev/null @@ -1,100 +0,0 @@ -_instructions = array(); - $this->_addText('ERROR:', 10, array(5 , 18), $this->_font, 0, 'left'); - $this->_addText($this->_text, 10, array(5 , 32), $this->_font, 0, 'left'); - return $this->_instructions; - } - - /** - * For compatibility reason - * @return void - */ - protected function _prepareBarcode() - { - } - - /** - * For compatibility reason - * @return void - */ - protected function _checkParams() - { - } - - /** - * For compatibility reason - * @return void - */ - protected function _calculateBarcodeWidth() - { - } -} diff --git a/library/Zend/Barcode/Object/Exception.php b/library/Zend/Barcode/Object/Exception.php deleted file mode 100644 index a3c31c2c..00000000 --- a/library/Zend/Barcode/Object/Exception.php +++ /dev/null @@ -1,35 +0,0 @@ -_barcodeLength = 12; - $this->_mandatoryChecksum = true; - } - - /** - * Retrieve text to display - * @return string - */ - public function getTextToDisplay() - { - return preg_replace('/([0-9]{2})([0-9]{3})([0-9]{3})([0-9]{3})([0-9])/', - '$1.$2 $3.$4 $5', - $this->getText()); - } - - /** - * Check allowed characters - * @param string $value - * @return string - * @throw Zend_Barcode_Object_Exception - */ - public function validateText($value) - { - $this->_validateText($value, array('validator' => $this->getType())); - } - - /** - * Get barcode checksum - * - * @param string $text - * @return int - */ - public function getChecksum($text) - { - $this->_checkText($text); - $checksum = 0; - - for ($i = strlen($text); $i > 0; $i --) { - $checksum += intval($text{$i - 1}) * (($i % 2) ? 4 : 9); - } - - $checksum = (10 - ($checksum % 10)) % 10; - - return $checksum; - } -} diff --git a/library/Zend/Barcode/Object/Itf14.php b/library/Zend/Barcode/Object/Itf14.php deleted file mode 100644 index 01da466b..00000000 --- a/library/Zend/Barcode/Object/Itf14.php +++ /dev/null @@ -1,49 +0,0 @@ -_barcodeLength = 14; - $this->_mandatoryChecksum = true; - } -} diff --git a/library/Zend/Barcode/Object/Leitcode.php b/library/Zend/Barcode/Object/Leitcode.php deleted file mode 100644 index ddcd84d2..00000000 --- a/library/Zend/Barcode/Object/Leitcode.php +++ /dev/null @@ -1,64 +0,0 @@ -_barcodeLength = 14; - $this->_mandatoryChecksum = true; - } - - /** - * Retrieve text to display - * @return string - */ - public function getTextToDisplay() - { - return preg_replace('/([0-9]{5})([0-9]{3})([0-9]{3})([0-9]{2})([0-9])/', - '$1.$2.$3.$4 $5', - $this->getText()); - } -} diff --git a/library/Zend/Barcode/Object/ObjectAbstract.php b/library/Zend/Barcode/Object/ObjectAbstract.php deleted file mode 100644 index 62e847c6..00000000 --- a/library/Zend/Barcode/Object/ObjectAbstract.php +++ /dev/null @@ -1,1317 +0,0 @@ -_getDefaultOptions(); - if (self::$_staticFont !== null) { - $this->_font = self::$_staticFont; - } - if ($options instanceof Zend_Config) { - $options = $options->toArray(); - } - if (is_array($options)) { - $this->setOptions($options); - } - $this->_type = strtolower(substr(get_class($this), strlen($this->_barcodeNamespace) + 1)); - if ($this->_mandatoryChecksum) { - $this->_withChecksum = true; - $this->_withChecksumInText = true; - } - } - - /** - * Set default options for particular object - * @return void - */ - protected function _getDefaultOptions() - { - } - - /** - * Set barcode state from options array - * @param array $options - * @return Zend_Barcode_Object - */ - public function setOptions($options) - { - foreach ($options as $key => $value) { - $method = 'set' . $key; - if (method_exists($this, $method)) { - $this->$method($value); - } - } - return $this; - } - - /** - * Set barcode state from config object - * @param Zend_Config $config - * @return Zend_Barcode_Object - */ - public function setConfig(Zend_Config $config) - { - return $this->setOptions($config->toArray()); - } - - /** - * Set barcode namespace for autoloading - * - * @param string $namespace - * @return Zend_Barcode_Object - */ - public function setBarcodeNamespace($namespace) - { - $this->_barcodeNamespace = $namespace; - return $this; - } - - /** - * Retrieve barcode namespace - * - * @return string - */ - public function getBarcodeNamespace() - { - return $this->_barcodeNamespace; - } - - /** - * Retrieve type of barcode - * @return string - */ - public function getType() - { - return $this->_type; - } - - /** - * Set height of the barcode bar - * @param integer $value - * @return Zend_Barcode_Object - * @throw Zend_Barcode_Object_Exception - */ - public function setBarHeight($value) - { - if (intval($value) <= 0) { - require_once 'Zend/Barcode/Object/Exception.php'; - throw new Zend_Barcode_Object_Exception( - 'Bar height must be greater than 0' - ); - } - $this->_barHeight = intval($value); - return $this; - } - - /** - * Get height of the barcode bar - * @return integer - */ - public function getBarHeight() - { - return $this->_barHeight; - } - - /** - * Set thickness of thin bar - * @param integer $value - * @return Zend_Barcode_Object - * @throw Zend_Barcode_Object_Exception - */ - public function setBarThinWidth($value) - { - if (intval($value) <= 0) { - require_once 'Zend/Barcode/Object/Exception.php'; - throw new Zend_Barcode_Object_Exception( - 'Bar width must be greater than 0' - ); - } - $this->_barThinWidth = intval($value); - return $this; - } - - /** - * Get thickness of thin bar - * @return integer - */ - public function getBarThinWidth() - { - return $this->_barThinWidth; - } - - /** - * Set thickness of thick bar - * @param integer $value - * @return Zend_Barcode_Object - * @throw Zend_Barcode_Object_Exception - */ - public function setBarThickWidth($value) - { - if (intval($value) <= 0) { - require_once 'Zend/Barcode/Object/Exception.php'; - throw new Zend_Barcode_Object_Exception( - 'Bar width must be greater than 0' - ); - } - $this->_barThickWidth = intval($value); - return $this; - } - - /** - * Get thickness of thick bar - * @return integer - */ - public function getBarThickWidth() - { - return $this->_barThickWidth; - } - - /** - * Set factor applying to - * thinBarWidth - thickBarWidth - barHeight - fontSize - * @param float $value - * @return Zend_Barcode_Object - * @throw Zend_Barcode_Object_Exception - */ - public function setFactor($value) - { - if (floatval($value) <= 0) { - require_once 'Zend/Barcode/Object/Exception.php'; - throw new Zend_Barcode_Object_Exception( - 'Factor must be greater than 0' - ); - } - $this->_factor = floatval($value); - return $this; - } - - /** - * Get factor applying to - * thinBarWidth - thickBarWidth - barHeight - fontSize - * @return integer - */ - public function getFactor() - { - return $this->_factor; - } - - /** - * Set color of the barcode and text - * @param string $value - * @return Zend_Barcode_Object - * @throw Zend_Barcode_Object_Exception - */ - public function setForeColor($value) - { - if (preg_match('`\#[0-9A-F]{6}`', $value)) { - $this->_foreColor = hexdec($value); - } elseif (is_numeric($value) && $value >= 0 && $value <= 16777125) { - $this->_foreColor = intval($value); - } else { - require_once 'Zend/Barcode/Object/Exception.php'; - throw new Zend_Barcode_Object_Exception( - 'Text color must be set as #[0-9A-F]{6}' - ); - } - return $this; - } - - /** - * Retrieve color of the barcode and text - * @return unknown - */ - public function getForeColor() - { - return $this->_foreColor; - } - - /** - * Set the color of the background - * @param integer $value - * @return Zend_Barcode_Object - * @throw Zend_Barcode_Object_Exception - */ - public function setBackgroundColor($value) - { - if (preg_match('`\#[0-9A-F]{6}`', $value)) { - $this->_backgroundColor = hexdec($value); - } elseif (is_numeric($value) && $value >= 0 && $value <= 16777125) { - $this->_backgroundColor = intval($value); - } else { - require_once 'Zend/Barcode/Object/Exception.php'; - throw new Zend_Barcode_Object_Exception( - 'Background color must be set as #[0-9A-F]{6}' - ); - } - return $this; - } - - /** - * Retrieve background color of the image - * @return integer - */ - public function getBackgroundColor() - { - return $this->_backgroundColor; - } - - /** - * Activate/deactivate drawing of the bar - * @param boolean $value - * @return Zend_Barcode_Object - */ - public function setWithBorder($value) - { - $this->_withBorder = (bool) $value; - return $this; - } - - /** - * Retrieve if border are draw or not - * @return boolean - */ - public function getWithBorder() - { - return $this->_withBorder; - } - - /** - * Activate/deactivate drawing of the quiet zones - * @param boolean $value - * @return Zend_Barcode_Object - */ - public function setWithQuietZones($value) - { - $this->_withQuietZones = (bool) $value; - return $this; - } - - /** - * Retrieve if quiet zones are draw or not - * @return boolean - */ - public function getWithQuietZones() - { - return $this->_withQuietZones; - } - - /** - * Allow fast inversion of font/bars color and background color - * @return Zend_Barcode_Object - */ - public function setReverseColor() - { - $tmp = $this->_foreColor; - $this->_foreColor = $this->_backgroundColor; - $this->_backgroundColor = $tmp; - return $this; - } - - /** - * Set orientation of barcode and text - * @param float $value - * @return Zend_Barcode_Object - * @throw Zend_Barcode_Object_Exception - */ - public function setOrientation($value) - { - $this->_orientation = floatval($value) - floor(floatval($value) / 360) * 360; - return $this; - } - - /** - * Retrieve orientation of barcode and text - * @return float - */ - public function getOrientation() - { - return $this->_orientation; - } - - /** - * Set text to encode - * @param string $value - * @return Zend_Barcode_Object - */ - public function setText($value) - { - $this->_text = trim($value); - return $this; - } - - /** - * Retrieve text to encode - * @return string - */ - public function getText() - { - $text = $this->_text; - if ($this->_withChecksum) { - $text .= $this->getChecksum($this->_text); - } - return $this->_addLeadingZeros($text); - } - - /** - * Automatically add leading zeros if barcode length is fixed - * @param string $text - * @param boolean $withoutChecksum - */ - protected function _addLeadingZeros($text, $withoutChecksum = false) - { - if ($this->_barcodeLength && $this->_addLeadingZeros) { - $omitChecksum = (int) ($this->_withChecksum && $withoutChecksum); - if (is_int($this->_barcodeLength)) { - $length = $this->_barcodeLength - $omitChecksum; - if (strlen($text) < $length) { - $text = str_repeat('0', $length - strlen($text)) . $text; - } - } else { - if ($this->_barcodeLength == 'even') { - $text = ((strlen($text) - $omitChecksum) % 2 ? '0' . $text : $text); - } - } - } - return $text; - } - - /** - * Retrieve text to encode - * @return string - */ - public function getRawText() - { - return $this->_text; - } - - /** - * Retrieve text to display - * @return string - */ - public function getTextToDisplay() - { - if ($this->_withChecksumInText) { - return $this->getText(); - } else { - return $this->_addLeadingZeros($this->_text, true); - } - } - - /** - * Activate/deactivate drawing of text to encode - * @param boolean $value - * @return Zend_Barcode_Object - */ - public function setDrawText($value) - { - $this->_drawText = (bool) $value; - return $this; - } - - /** - * Retrieve if drawing of text to encode is enabled - * @return boolean - */ - public function getDrawText() - { - return $this->_drawText; - } - - /** - * Activate/deactivate the adjustment of the position - * of the characters to the position of the bars - * @param boolean $value - * @return Zend_Barcode_Object - * @throw Zend_Barcode_Object_Exception - */ - public function setStretchText($value) - { - $this->_stretchText = (bool) $value; - return $this; - } - - /** - * Retrieve if the adjustment of the position of the characters - * to the position of the bars is enabled - * @return boolean - */ - public function getStretchText() - { - return $this->_stretchText; - } - - /** - * Activate/deactivate the automatic generation - * of the checksum character - * added to the barcode text - * @param boolean $value - * @return Zend_Barcode_Object - */ - public function setWithChecksum($value) - { - if (!$this->_mandatoryChecksum) { - $this->_withChecksum = (bool) $value; - } - return $this; - } - - /** - * Retrieve if the checksum character is automatically - * added to the barcode text - * @return boolean - */ - public function getWithChecksum() - { - return $this->_withChecksum; - } - - /** - * Activate/deactivate the automatic generation - * of the checksum character - * added to the barcode text - * @param boolean $value - * @return Zend_Barcode_Object - * @throw Zend_Barcode_Object_Exception - */ - public function setWithChecksumInText($value) - { - if (!$this->_mandatoryChecksum) { - $this->_withChecksumInText = (bool) $value; - } - return $this; - } - - /** - * Retrieve if the checksum character is automatically - * added to the barcode text - * @return boolean - */ - public function getWithChecksumInText() - { - return $this->_withChecksumInText; - } - - /** - * Set the font for all instances of barcode - * @param string $font - * @return void - */ - public static function setBarcodeFont($font) - { - if (is_string($font) || (is_int($font) && $font >= 1 && $font <= 5)) { - self::$_staticFont = $font; - } - } - - /** - * Set the font: - * - if integer between 1 and 5, use gd built-in fonts - * - if string, $value is assumed to be the path to a TTF font - * @param integer|string $value - * @return Zend_Barcode_Object - * @throw Zend_Barcode_Object_Exception - */ - public function setFont($value) - { - if (is_int($value) && $value >= 1 && $value <= 5) { - if (!extension_loaded('gd')) { - require_once 'Zend/Barcode/Object/Exception.php'; - throw new Zend_Barcode_Object_Exception( - 'GD extension is required to use numeric font' - ); - } - - // Case of numeric font with GD - $this->_font = $value; - - // In this case font size is given by: - $this->_fontSize = imagefontheight($value); - } elseif (is_string($value)) { - $this->_font = $value; - } else { - require_once 'Zend/Barcode/Object/Exception.php'; - throw new Zend_Barcode_Object_Exception(sprintf( - 'Invalid font "%s" provided to setFont()', - $value - )); - } - return $this; - } - - /** - * Retrieve the font - * @return integer|string - */ - public function getFont() - { - return $this->_font; - } - - /** - * Set the size of the font in case of TTF - * @param float $value - * @return Zend_Barcode_Object - * @throw Zend_Barcode_Object_Exception - */ - public function setFontSize($value) - { - if (is_numeric($this->_font)) { - // Case of numeric font with GD - return $this; - } - - if (!is_numeric($value)) { - require_once 'Zend/Barcode/Object/Exception.php'; - throw new Zend_Barcode_Object_Exception( - 'Font size must be a numeric value' - ); - } - - $this->_fontSize = $value; - return $this; - } - - /** - * Retrieve the size of the font in case of TTF - * @return float - */ - public function getFontSize() - { - return $this->_fontSize; - } - - /** - * Quiet zone before first bar - * and after the last bar - * @return integer - */ - public function getQuietZone() - { - if ($this->_withQuietZones || $this->_mandatoryQuietZones) { - return 10 * $this->_barThinWidth * $this->_factor; - } else { - return 0; - } - } - - /** - * Add an instruction in the array of instructions - * @param array $instruction - */ - protected function _addInstruction(array $instruction) - { - $this->_instructions[] = $instruction; - } - - /** - * Retrieve the set of drawing instructions - * @return array - */ - public function getInstructions() - { - return $this->_instructions; - } - - /** - * Add a polygon drawing instruction in the set of instructions - * @param array $points - * @param integer $color - * @param boolean $filled - */ - protected function _addPolygon(array $points, $color = null, $filled = true) - { - if ($color === null) { - $color = $this->_foreColor; - } - $this->_addInstruction(array( - 'type' => 'polygon', - 'points' => $points, - 'color' => $color, - 'filled' => $filled, - )); - } - - /** - * Add a text drawing instruction in the set of instructions - * @param string $text - * @param float $size - * @param array $position - * @param string $font - * @param integer $color - * @param string $alignment - * @param float $orientation - */ - protected function _addText( - $text, - $size, - $position, - $font, - $color, - $alignment = 'center', - $orientation = 0 - ) { - if ($color === null) { - $color = $this->_foreColor; - } - $this->_addInstruction(array( - 'type' => 'text', - 'text' => $text, - 'size' => $size, - 'position' => $position, - 'font' => $font, - 'color' => $color, - 'alignment' => $alignment, - 'orientation' => $orientation, - )); - } - - /** - * Checking of parameters after all settings - * @return void - */ - public function checkParams() - { - $this->_checkText(); - $this->_checkFontAndOrientation(); - $this->_checkParams(); - return true; - } - - /** - * Check if a text is really provided to barcode - * @return void - * @throw Zend_Barcode_Object_Exception - */ - protected function _checkText($value = null) - { - if ($value === null) { - $value = $this->_text; - } - if (!strlen($value)) { - require_once 'Zend/Barcode/Object/Exception.php'; - throw new Zend_Barcode_Object_Exception( - 'A text must be provide to Barcode before drawing' - ); - } - $this->validateText($value); - } - - /** - * Check the ratio between the thick and the thin bar - * @param integer $min - * @param integer $max - * @return void - * @throw Zend_Barcode_Object_Exception - */ - protected function _checkRatio($min = 2, $max = 3) - { - $ratio = $this->_barThickWidth / $this->_barThinWidth; - if (!($ratio >= $min && $ratio <= $max)) { - require_once 'Zend/Barcode/Object/Exception.php'; - throw new Zend_Barcode_Object_Exception(sprintf( - 'Ratio thick/thin bar must be between %0.1f and %0.1f (actual %0.3f)', - $min, - $max, - $ratio - )); - } - } - - /** - * Drawing with an angle is just allow TTF font - * @return void - * @throw Zend_Barcode_Object_Exception - */ - protected function _checkFontAndOrientation() - { - if (is_numeric($this->_font) && $this->_orientation != 0) { - require_once 'Zend/Barcode/Object/Exception.php'; - throw new Zend_Barcode_Object_Exception( - 'Only drawing with TTF font allow orientation of the barcode.' - ); - } - } - - /** - * Width of the result image - * (before any rotation) - * @return integer - */ - protected function _calculateWidth() - { - return (int) $this->_withBorder - + $this->_calculateBarcodeWidth() - + (int) $this->_withBorder; - } - - /** - * Calculate the width of the barcode - * @return integer - */ - abstract protected function _calculateBarcodeWidth(); - - /** - * Height of the result object - * @return integer - */ - protected function _calculateHeight() - { - return (int) $this->_withBorder * 2 - + $this->_calculateBarcodeHeight() - + (int) $this->_withBorder * 2; - } - - /** - * Height of the barcode - * @return integer - */ - protected function _calculateBarcodeHeight() - { - $textHeight = 0; - $extraHeight = 0; - if ($this->_drawText) { - $textHeight += $this->_fontSize; - $extraHeight = 2; - } - return ($this->_barHeight + $textHeight) * $this->_factor + $extraHeight; - } - - /** - * Get height of the result object - * @return integer - */ - public function getHeight($recalculate = false) - { - if ($this->_height === null || $recalculate) { - $this->_height = - abs($this->_calculateHeight() * cos($this->_orientation / 180 * pi())) - + abs($this->_calculateWidth() * sin($this->_orientation / 180 * pi())); - } - return $this->_height; - } - - /** - * Get width of the result object - * @return integer - */ - public function getWidth($recalculate = false) - { - if ($this->_width === null || $recalculate) { - $this->_width = - abs($this->_calculateWidth() * cos($this->_orientation / 180 * pi())) - + abs($this->_calculateHeight() * sin($this->_orientation / 180 * pi())); - } - return $this->_width; - } - - /** - * Calculate the offset from the left of the object - * if an orientation is activated - * @param boolean $recalculate - * @return float - */ - public function getOffsetLeft($recalculate = false) - { - if ($this->_offsetLeft === null || $recalculate) { - $this->_offsetLeft = - min(array( - 0 * cos( - $this->_orientation / 180 * pi()) - 0 * sin( - $this->_orientation / 180 * pi()), - 0 * cos( - $this->_orientation / 180 * pi()) - $this->_calculateBarcodeHeight() * sin( - $this->_orientation / 180 * pi()), - $this->_calculateBarcodeWidth() * cos( - $this->_orientation / 180 * pi()) - $this->_calculateBarcodeHeight() * sin( - $this->_orientation / 180 * pi()), - $this->_calculateBarcodeWidth() * cos( - $this->_orientation / 180 * pi()) - 0 * sin( - $this->_orientation / 180 * pi()), - )); - } - return $this->_offsetLeft; - } - - /** - * Calculate the offset from the top of the object - * if an orientation is activated - * @param boolean $recalculate - * @return float - */ - public function getOffsetTop($recalculate = false) - { - if ($this->_offsetTop === null || $recalculate) { - $this->_offsetTop = - min(array( - 0 * cos( - $this->_orientation / 180 * pi()) + 0 * sin( - $this->_orientation / 180 * pi()), - $this->_calculateBarcodeHeight() * cos( - $this->_orientation / 180 * pi()) + 0 * sin( - $this->_orientation / 180 * pi()), - $this->_calculateBarcodeHeight() * cos( - $this->_orientation / 180 * pi()) + $this->_calculateBarcodeWidth() * sin( - $this->_orientation / 180 * pi()), - 0 * cos( - $this->_orientation / 180 * pi()) + $this->_calculateBarcodeWidth() * sin( - $this->_orientation / 180 * pi()), - )); - } - return $this->_offsetTop; - } - - /** - * Apply rotation on a point in X/Y dimensions - * @param float $x1 x-position before rotation - * @param float $y1 y-position before rotation - * @return array Array of two elements corresponding to the new XY point - */ - protected function _rotate($x1, $y1) - { - $x2 = $x1 * cos($this->_orientation / 180 * pi()) - - $y1 * sin($this->_orientation / 180 * pi()) - + $this->getOffsetLeft(); - $y2 = $y1 * cos($this->_orientation / 180 * pi()) - + $x1 * sin($this->_orientation / 180 * pi()) - + $this->getOffsetTop(); - return array(intval($x2) , intval($y2)); - } - - /** - * Complete drawing of the barcode - * @return array Table of instructions - */ - public function draw() - { - $this->checkParams(); - $this->_drawBarcode(); - $this->_drawBorder(); - $this->_drawText(); - return $this->getInstructions(); - } - - /** - * Draw the barcode - * @return void - */ - protected function _drawBarcode() - { - $barcodeTable = $this->_prepareBarcode(); - - $this->_preDrawBarcode(); - - $xpos = (int) $this->_withBorder; - $ypos = (int) $this->_withBorder; - - $point1 = $this->_rotate(0, 0); - $point2 = $this->_rotate(0, $this->_calculateHeight() - 1); - $point3 = $this->_rotate( - $this->_calculateWidth() - 1, - $this->_calculateHeight() - 1 - ); - $point4 = $this->_rotate($this->_calculateWidth() - 1, 0); - - $this->_addPolygon(array( - $point1, - $point2, - $point3, - $point4 - ), $this->_backgroundColor); - - $xpos += $this->getQuietZone(); - $barLength = $this->_barHeight * $this->_factor; - - foreach ($barcodeTable as $bar) { - $width = $bar[1] * $this->_factor; - if ($bar[0]) { - $point1 = $this->_rotate($xpos, $ypos + $bar[2] * $barLength); - $point2 = $this->_rotate($xpos, $ypos + $bar[3] * $barLength); - $point3 = $this->_rotate( - $xpos + $width - 1, - $ypos + $bar[3] * $barLength - ); - $point4 = $this->_rotate( - $xpos + $width - 1, - $ypos + $bar[2] * $barLength - ); - $this->_addPolygon(array( - $point1, - $point2, - $point3, - $point4, - )); - } - $xpos += $width; - } - - $this->_postDrawBarcode(); - } - - /** - * Partial function to draw border - * @return void - */ - protected function _drawBorder() - { - if ($this->_withBorder) { - $point1 = $this->_rotate(0, 0); - $point2 = $this->_rotate($this->_calculateWidth() - 1, 0); - $point3 = $this->_rotate( - $this->_calculateWidth() - 1, - $this->_calculateHeight() - 1 - ); - $point4 = $this->_rotate(0, $this->_calculateHeight() - 1); - $this->_addPolygon(array( - $point1, - $point2, - $point3, - $point4, - $point1, - ), $this->_foreColor, false); - } - } - - /** - * Partial function to draw text - * @return void - */ - protected function _drawText() - { - if ($this->_drawText) { - $text = $this->getTextToDisplay(); - if ($this->_stretchText) { - $textLength = strlen($text); - $space = ($this->_calculateWidth() - 2 * $this->getQuietZone()) / $textLength; - for ($i = 0; $i < $textLength; $i ++) { - $leftPosition = $this->getQuietZone() + $space * ($i + 0.5); - $this->_addText( - $text{$i}, - $this->_fontSize * $this->_factor, - $this->_rotate( - $leftPosition, - (int) $this->_withBorder * 2 - + $this->_factor * ($this->_barHeight + $this->_fontSize) + 1 - ), - $this->_font, - $this->_foreColor, - 'center', - - $this->_orientation - ); - } - } else { - $this->_addText( - $text, - $this->_fontSize * $this->_factor, - $this->_rotate( - $this->_calculateWidth() / 2, - (int) $this->_withBorder * 2 - + $this->_factor * ($this->_barHeight + $this->_fontSize) + 1 - ), - $this->_font, - $this->_foreColor, - 'center', - - $this->_orientation - ); - } - } - } - - /** - * Check for invalid characters - * @param string $value Text to be ckecked - * @return void - */ - public function validateText($value) - { - $this->_validateText($value); - } - - /** - * Standard validation for most of barcode objects - * @param string $value - * @param array $options - */ - protected function _validateText($value, $options = array()) - { - $validatorName = (isset($options['validator'])) ? $options['validator'] : $this->getType(); - - $validator = new Zend_Validate_Barcode(array( - 'adapter' => $validatorName, - 'checksum' => false, - )); - - $checksumCharacter = ''; - $withChecksum = false; - if ($this->_mandatoryChecksum) { - $checksumCharacter = $this->_substituteChecksumCharacter; - $withChecksum = true; - } - - $value = $this->_addLeadingZeros($value, $withChecksum) . $checksumCharacter; - - if (!$validator->isValid($value)) { - $message = implode("\n", $validator->getMessages()); - - /** - * @see Zend_Barcode_Object_Exception - */ - require_once 'Zend/Barcode/Object/Exception.php'; - throw new Zend_Barcode_Object_Exception($message); - } - } - - /** - * Each child must prepare the barcode and return - * a table like array( - * 0 => array( - * 0 => int (visible(black) or not(white)) - * 1 => int (width of the bar) - * 2 => float (0->1 position from the top of the beginning of the bar in %) - * 3 => float (0->1 position from the top of the end of the bar in %) - * ), - * 1 => ... - * ) - * - * @return array - */ - abstract protected function _prepareBarcode(); - - /** - * Checking of parameters after all settings - * - * @return void - */ - abstract protected function _checkParams(); - - /** - * Allow each child to draw something else - * - * @return void - */ - protected function _preDrawBarcode() - { - } - - /** - * Allow each child to draw something else - * (ex: bearer bars in interleaved 2 of 5 code) - * - * @return void - */ - protected function _postDrawBarcode() - { - } -} diff --git a/library/Zend/Barcode/Object/Planet.php b/library/Zend/Barcode/Object/Planet.php deleted file mode 100644 index 1da1fc35..00000000 --- a/library/Zend/Barcode/Object/Planet.php +++ /dev/null @@ -1,62 +0,0 @@ - "00111", - 1 => "11100", - 2 => "11010", - 3 => "11001", - 4 => "10110", - 5 => "10101", - 6 => "10011", - 7 => "01110", - 8 => "01101", - 9 => "01011" - ); -} \ No newline at end of file diff --git a/library/Zend/Barcode/Object/Postnet.php b/library/Zend/Barcode/Object/Postnet.php deleted file mode 100644 index 3534c633..00000000 --- a/library/Zend/Barcode/Object/Postnet.php +++ /dev/null @@ -1,136 +0,0 @@ - "11000", - 1 => "00011", - 2 => "00101", - 3 => "00110", - 4 => "01001", - 5 => "01010", - 6 => "01100", - 7 => "10001", - 8 => "10010", - 9 => "10100" - ); - - /** - * Default options for Postnet barcode - * @return void - */ - protected function _getDefaultOptions() - { - $this->_barThinWidth = 2; - $this->_barHeight = 20; - $this->_drawText = false; - $this->_stretchText = true; - $this->_mandatoryChecksum = true; - } - - /** - * Width of the barcode (in pixels) - * @return integer - */ - protected function _calculateBarcodeWidth() - { - $quietZone = $this->getQuietZone(); - $startCharacter = (2 * $this->_barThinWidth) * $this->_factor; - $stopCharacter = (1 * $this->_barThinWidth) * $this->_factor; - $encodedData = (10 * $this->_barThinWidth) * $this->_factor * strlen($this->getText()); - return $quietZone + $startCharacter + $encodedData + $stopCharacter + $quietZone; - } - - /** - * Partial check of interleaved Postnet barcode - * @return void - */ - protected function _checkParams() - {} - - /** - * Prepare array to draw barcode - * @return array - */ - protected function _prepareBarcode() - { - $barcodeTable = array(); - - // Start character (1) - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , 1); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , 1); - - // Text to encode - $textTable = str_split($this->getText()); - foreach ($textTable as $char) { - $bars = str_split($this->_codingMap[$char]); - foreach ($bars as $b) { - $barcodeTable[] = array(1 , $this->_barThinWidth , 0.5 - $b * 0.5 , 1); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , 1); - } - } - - // Stop character (1) - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , 1); - return $barcodeTable; - } - - /** - * Get barcode checksum - * - * @param string $text - * @return int - */ - public function getChecksum($text) - { - $this->_checkText($text); - $sum = array_sum(str_split($text)); - $checksum = (10 - ($sum % 10)) % 10; - return $checksum; - } -} diff --git a/library/Zend/Barcode/Object/Royalmail.php b/library/Zend/Barcode/Object/Royalmail.php deleted file mode 100644 index 4a87fdf4..00000000 --- a/library/Zend/Barcode/Object/Royalmail.php +++ /dev/null @@ -1,163 +0,0 @@ - '3300', '1' => '3210', '2' => '3201', '3' => '2310', '4' => '2301', '5' => '2211', - '6' => '3120', '7' => '3030', '8' => '3021', '9' => '2130', 'A' => '2121', 'B' => '2031', - 'C' => '3102', 'D' => '3012', 'E' => '3003', 'F' => '2112', 'G' => '2103', 'H' => '2013', - 'I' => '1320', 'J' => '1230', 'K' => '1221', 'L' => '0330', 'M' => '0321', 'N' => '0231', - 'O' => '1302', 'P' => '1212', 'Q' => '1203', 'R' => '0312', 'S' => '0303', 'T' => '0213', - 'U' => '1122', 'V' => '1032', 'W' => '1023', 'X' => '0132', 'Y' => '0123', 'Z' => '0033' - ); - - protected $_rows = array( - '0' => 1, '1' => 1, '2' => 1, '3' => 1, '4' => 1, '5' => 1, - '6' => 2, '7' => 2, '8' => 2, '9' => 2, 'A' => 2, 'B' => 2, - 'C' => 3, 'D' => 3, 'E' => 3, 'F' => 3, 'G' => 3, 'H' => 3, - 'I' => 4, 'J' => 4, 'K' => 4, 'L' => 4, 'M' => 4, 'N' => 4, - 'O' => 5, 'P' => 5, 'Q' => 5, 'R' => 5, 'S' => 5, 'T' => 5, - 'U' => 0, 'V' => 0, 'W' => 0, 'X' => 0, 'Y' => 0, 'Z' => 0, - ); - - protected $_columns = array( - '0' => 1, '1' => 2, '2' => 3, '3' => 4, '4' => 5, '5' => 0, - '6' => 1, '7' => 2, '8' => 3, '9' => 4, 'A' => 5, 'B' => 0, - 'C' => 1, 'D' => 2, 'E' => 3, 'F' => 4, 'G' => 5, 'H' => 0, - 'I' => 1, 'J' => 2, 'K' => 3, 'L' => 4, 'M' => 5, 'N' => 0, - 'O' => 1, 'P' => 2, 'Q' => 3, 'R' => 4, 'S' => 5, 'T' => 0, - 'U' => 1, 'V' => 2, 'W' => 3, 'X' => 4, 'Y' => 5, 'Z' => 0, - ); - - /** - * Default options for Postnet barcode - * @return void - */ - protected function _getDefaultOptions() - { - $this->_barThinWidth = 2; - $this->_barHeight = 20; - $this->_drawText = false; - $this->_stretchText = true; - $this->_mandatoryChecksum = true; - } - - /** - * Width of the barcode (in pixels) - * @return integer - */ - protected function _calculateBarcodeWidth() - { - $quietZone = $this->getQuietZone(); - $startCharacter = (2 * $this->_barThinWidth) * $this->_factor; - $stopCharacter = (1 * $this->_barThinWidth) * $this->_factor; - $encodedData = (8 * $this->_barThinWidth) * $this->_factor * strlen($this->getText()); - return $quietZone + $startCharacter + $encodedData + $stopCharacter + $quietZone; - } - - /** - * Partial check of interleaved Postnet barcode - * @return void - */ - protected function _checkParams() - {} - - /** - * Prepare array to draw barcode - * @return array - */ - protected function _prepareBarcode() - { - $barcodeTable = array(); - - // Start character (1) - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , 5/8); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , 1); - - // Text to encode - $textTable = str_split($this->getText()); - foreach ($textTable as $char) { - $bars = str_split($this->_codingMap[$char]); - foreach ($bars as $b) { - $barcodeTable[] = array(1 , $this->_barThinWidth , ($b > 1 ? 3/8 : 0) , ($b % 2 ? 5/8 : 1)); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , 1); - } - } - - // Stop character (1) - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , 1); - return $barcodeTable; - } - - /** - * Get barcode checksum - * - * @param string $text - * @return int - */ - public function getChecksum($text) - { - $this->_checkText($text); - $values = str_split($text); - $rowvalue = 0; - $colvalue = 0; - foreach($values as $row) { - $rowvalue += $this->_rows[$row]; - $colvalue += $this->_columns[$row]; - } - - $rowvalue %= 6; - $colvalue %= 6; - - $rowchkvalue = array_keys($this->_rows, $rowvalue); - $colchkvalue = array_keys($this->_columns, $colvalue); - return current(array_intersect($rowchkvalue, $colchkvalue)); - } -} diff --git a/library/Zend/Barcode/Object/Upca.php b/library/Zend/Barcode/Object/Upca.php deleted file mode 100644 index 412e0c49..00000000 --- a/library/Zend/Barcode/Object/Upca.php +++ /dev/null @@ -1,172 +0,0 @@ -_barcodeLength = 12; - $this->_mandatoryChecksum = true; - $this->_mandatoryQuietZones = true; - } - - /** - * Width of the barcode (in pixels) - * @return integer - */ - protected function _calculateBarcodeWidth() - { - $quietZone = $this->getQuietZone(); - $startCharacter = (3 * $this->_barThinWidth) * $this->_factor; - $middleCharacter = (5 * $this->_barThinWidth) * $this->_factor; - $stopCharacter = (3 * $this->_barThinWidth) * $this->_factor; - $encodedData = (7 * $this->_barThinWidth) * $this->_factor * 12; - return $quietZone + $startCharacter + $middleCharacter + $encodedData + $stopCharacter + $quietZone; - } - - /** - * Prepare array to draw barcode - * @return array - */ - protected function _prepareBarcode() - { - $barcodeTable = array(); - $height = ($this->_drawText) ? 1.1 : 1; - - // Start character (101) - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - - $textTable = str_split($this->getText()); - - // First character - $bars = str_split($this->_codingMap['A'][$textTable[0]]); - foreach ($bars as $b) { - $barcodeTable[] = array($b , $this->_barThinWidth , 0 , $height); - } - - // First part - for ($i = 1; $i < 6; $i++) { - $bars = str_split($this->_codingMap['A'][$textTable[$i]]); - foreach ($bars as $b) { - $barcodeTable[] = array($b , $this->_barThinWidth , 0 , 1); - } - } - - // Middle character (01010) - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , $height); - - // Second part - for ($i = 6; $i < 11; $i++) { - $bars = str_split($this->_codingMap['C'][$textTable[$i]]); - foreach ($bars as $b) { - $barcodeTable[] = array($b , $this->_barThinWidth , 0 , 1); - } - } - - // Last character - $bars = str_split($this->_codingMap['C'][$textTable[11]]); - foreach ($bars as $b) { - $barcodeTable[] = array($b , $this->_barThinWidth , 0 , $height); - } - - // Stop character (101) - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - return $barcodeTable; - } - - /** - * Partial function to draw text - * @return void - */ - protected function _drawText() - { - if ($this->_drawText) { - $text = $this->getTextToDisplay(); - $characterWidth = (7 * $this->_barThinWidth) * $this->_factor; - $leftPosition = $this->getQuietZone() - $characterWidth; - for ($i = 0; $i < $this->_barcodeLength; $i ++) { - $fontSize = $this->_fontSize; - if ($i == 0 || $i == 11) { - $fontSize *= 0.8; - } - $this->_addText( - $text{$i}, - $fontSize * $this->_factor, - $this->_rotate( - $leftPosition, - (int) $this->_withBorder * 2 - + $this->_factor * ($this->_barHeight + $fontSize) + 1 - ), - $this->_font, - $this->_foreColor, - 'left', - - $this->_orientation - ); - switch ($i) { - case 0: - $factor = 10; - break; - case 5: - $factor = 4; - break; - case 10: - $factor = 11; - break; - default: - $factor = 0; - } - $leftPosition = $leftPosition + $characterWidth + ($factor * $this->_barThinWidth * $this->_factor); - } - } - } -} diff --git a/library/Zend/Barcode/Object/Upce.php b/library/Zend/Barcode/Object/Upce.php deleted file mode 100644 index c31564c6..00000000 --- a/library/Zend/Barcode/Object/Upce.php +++ /dev/null @@ -1,228 +0,0 @@ - array( - 0 => array('B','B','B','A','A','A'), - 1 => array('B','B','A','B','A','A'), - 2 => array('B','B','A','A','B','A'), - 3 => array('B','B','A','A','A','B'), - 4 => array('B','A','B','B','A','A'), - 5 => array('B','A','A','B','B','A'), - 6 => array('B','A','A','A','B','B'), - 7 => array('B','A','B','A','B','A'), - 8 => array('B','A','B','A','A','B'), - 9 => array('B','A','A','B','A','B')), - 1 => array( - 0 => array('A','A','A','B','B','B'), - 1 => array('A','A','B','A','B','B'), - 2 => array('A','A','B','B','A','B'), - 3 => array('A','A','B','B','B','A'), - 4 => array('A','B','A','A','B','B'), - 5 => array('A','B','B','A','A','B'), - 6 => array('A','B','B','B','A','A'), - 7 => array('A','B','A','B','A','B'), - 8 => array('A','B','A','B','B','A'), - 9 => array('A','B','B','A','B','A')) - ); - - /** - * Default options for Postnet barcode - * @return void - */ - protected function _getDefaultOptions() - { - $this->_barcodeLength = 8; - $this->_mandatoryChecksum = true; - $this->_mandatoryQuietZones = true; - } - - /** - * Retrieve text to encode - * @return string - */ - public function getText() - { - $text = parent::getText(); - if ($text{0} != 1) { - $text{0} = 0; - } - return $text; - } - - /** - * Width of the barcode (in pixels) - * @return integer - */ - protected function _calculateBarcodeWidth() - { - $quietZone = $this->getQuietZone(); - $startCharacter = (3 * $this->_barThinWidth) * $this->_factor; - $stopCharacter = (6 * $this->_barThinWidth) * $this->_factor; - $encodedData = (7 * $this->_barThinWidth) * $this->_factor * 6; - return $quietZone + $startCharacter + $encodedData + $stopCharacter + $quietZone; - } - - /** - * Prepare array to draw barcode - * @return array - */ - protected function _prepareBarcode() - { - $barcodeTable = array(); - $height = ($this->_drawText) ? 1.1 : 1; - - // Start character (101) - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - - $textTable = str_split($this->getText()); - $system = 0; - if ($textTable[0] == 1) { - $system = 1; - } - $checksum = $textTable[7]; - $parity = $this->_parities[$system][$checksum]; - - for ($i = 1; $i < 7; $i++) { - $bars = str_split($this->_codingMap[$parity[$i - 1]][$textTable[$i]]); - foreach ($bars as $b) { - $barcodeTable[] = array($b , $this->_barThinWidth , 0 , 1); - } - } - - // Stop character (10101) - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(0 , $this->_barThinWidth , 0 , $height); - $barcodeTable[] = array(1 , $this->_barThinWidth , 0 , $height); - return $barcodeTable; - } - - /** - * Partial function to draw text - * @return void - */ - protected function _drawText() - { - if ($this->_drawText) { - $text = $this->getTextToDisplay(); - $characterWidth = (7 * $this->_barThinWidth) * $this->_factor; - $leftPosition = $this->getQuietZone() - $characterWidth; - for ($i = 0; $i < $this->_barcodeLength; $i ++) { - $fontSize = $this->_fontSize; - if ($i == 0 || $i == 7) { - $fontSize *= 0.8; - } - $this->_addText( - $text{$i}, - $fontSize * $this->_factor, - $this->_rotate( - $leftPosition, - (int) $this->_withBorder * 2 - + $this->_factor * ($this->_barHeight + $fontSize) + 1 - ), - $this->_font, - $this->_foreColor, - 'left', - - $this->_orientation - ); - switch ($i) { - case 0: - $factor = 3; - break; - case 6: - $factor = 5; - break; - default: - $factor = 0; - } - $leftPosition = $leftPosition + $characterWidth + ($factor * $this->_barThinWidth * $this->_factor); - } - } - } - - /** - * Particular validation for Upce barcode objects - * (to suppress checksum character substitution) - * @param string $value - * @param array $options - */ - protected function _validateText($value, $options = array()) - { - $validator = new Zend_Validate_Barcode(array( - 'adapter' => 'upce', - 'checksum' => false, - )); - - $value = $this->_addLeadingZeros($value, true); - - if (!$validator->isValid($value)) { - $message = implode("\n", $validator->getMessages()); - - /** - * @see Zend_Barcode_Object_Exception - */ - require_once 'Zend/Barcode/Object/Exception.php'; - throw new Zend_Barcode_Object_Exception($message); - } - } - - /** - * Get barcode checksum - * - * @param string $text - * @return int - */ - public function getChecksum($text) - { - $text = $this->_addLeadingZeros($text, true); - if ($text{0} != 1) { - $text{0} = 0; - } - return parent::getChecksum($text); - } -} diff --git a/library/Zend/Barcode/Renderer/Exception.php b/library/Zend/Barcode/Renderer/Exception.php deleted file mode 100644 index c7bc396a..00000000 --- a/library/Zend/Barcode/Renderer/Exception.php +++ /dev/null @@ -1,35 +0,0 @@ -_userHeight = intval($value); - return $this; - } - - /** - * Get barcode height - * - * @return int - */ - public function getHeight() - { - return $this->_userHeight; - } - - /** - * Set barcode width - * - * @param mixed $value - * @return void - */ - public function setWidth($value) - { - if (!is_numeric($value) || intval($value) < 0) { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception( - 'Image width must be greater than or equals 0' - ); - } - $this->_userWidth = intval($value); - return $this; - } - - /** - * Get barcode width - * - * @return int - */ - public function getWidth() - { - return $this->_userWidth; - } - - /** - * Set an image resource to draw the barcode inside - * - * @param resource $value - * @return Zend_Barcode_Renderer - * @throw Zend_Barcode_Renderer_Exception - */ - public function setResource($image) - { - if (gettype($image) != 'resource' || get_resource_type($image) != 'gd') { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception( - 'Invalid image resource provided to setResource()' - ); - } - $this->_resource = $image; - return $this; - } - - /** - * Set the image type to produce (png, jpeg, gif) - * - * @param string $value - * @return Zend_Barcode_RendererAbstract - * @throw Zend_Barcode_Renderer_Exception - */ - public function setImageType($value) - { - if ($value == 'jpg') { - $value = 'jpeg'; - } - - if (!in_array($value, $this->_allowedImageType)) { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception(sprintf( - 'Invalid type "%s" provided to setImageType()', - $value - )); - } - - $this->_imageType = $value; - return $this; - } - - /** - * Retrieve the image type to produce - * - * @return string - */ - public function getImageType() - { - return $this->_imageType; - } - - /** - * Initialize the image resource - * - * @return void - */ - protected function _initRenderer() - { - if (!extension_loaded('gd')) { - require_once 'Zend/Barcode/Exception.php'; - $e = new Zend_Barcode_Exception( - 'Gd extension must be loaded to render barcode as image' - ); - $e->setIsRenderable(false); - throw $e; - } - - $barcodeWidth = $this->_barcode->getWidth(true); - $barcodeHeight = $this->_barcode->getHeight(true); - - if ($this->_resource !== null) { - $foreColor = $this->_barcode->getForeColor(); - $backgroundColor = $this->_barcode->getBackgroundColor(); - $this->_imageBackgroundColor = imagecolorallocate( - $this->_resource, - ($backgroundColor & 0xFF0000) >> 16, - ($backgroundColor & 0x00FF00) >> 8, - $backgroundColor & 0x0000FF - ); - $this->_imageForeColor = imagecolorallocate( - $this->_resource, - ($foreColor & 0xFF0000) >> 16, - ($foreColor & 0x00FF00) >> 8, - $foreColor & 0x0000FF - ); - } else { - $width = $barcodeWidth; - $height = $barcodeHeight; - if ($this->_userWidth && $this->_barcode->getType() != 'error') { - $width = $this->_userWidth; - } - if ($this->_userHeight && $this->_barcode->getType() != 'error') { - $height = $this->_userHeight; - } - - $foreColor = $this->_barcode->getForeColor(); - $backgroundColor = $this->_barcode->getBackgroundColor(); - $this->_resource = imagecreatetruecolor($width, $height); - - $this->_imageBackgroundColor = imagecolorallocate( - $this->_resource, - ($backgroundColor & 0xFF0000) >> 16, - ($backgroundColor & 0x00FF00) >> 8, - $backgroundColor & 0x0000FF - ); - $this->_imageForeColor = imagecolorallocate( - $this->_resource, - ($foreColor & 0xFF0000) >> 16, - ($foreColor & 0x00FF00) >> 8, - $foreColor & 0x0000FF - ); - $white = imagecolorallocate($this->_resource, 255, 255, 255); - imagefilledrectangle($this->_resource, 0, 0, $width - 1, $height - 1, $white); - } - $this->_adjustPosition(imagesy($this->_resource), imagesx($this->_resource)); - imagefilledrectangle( - $this->_resource, - $this->_leftOffset, - $this->_topOffset, - $this->_leftOffset + $barcodeWidth - 1, - $this->_topOffset + $barcodeHeight - 1, - $this->_imageBackgroundColor - ); - } - - /** - * Check barcode parameters - * - * @return void - */ - protected function _checkParams() - { - $this->_checkDimensions(); - } - - /** - * Check barcode dimensions - * - * @return void - */ - protected function _checkDimensions() - { - if ($this->_resource !== null) { - if (imagesy($this->_resource) < $this->_barcode->getHeight(true)) { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception( - 'Barcode is define outside the image (height)' - ); - } - } else { - if ($this->_userHeight) { - $height = $this->_barcode->getHeight(true); - if ($this->_userHeight < $height) { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception(sprintf( - "Barcode is define outside the image (calculated: '%d', provided: '%d')", - $height, - $this->_userHeight - )); - } - } - } - if ($this->_resource !== null) { - if (imagesx($this->_resource) < $this->_barcode->getWidth(true)) { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception( - 'Barcode is define outside the image (width)' - ); - } - } else { - if ($this->_userWidth) { - $width = $this->_barcode->getWidth(true); - if ($this->_userWidth < $width) { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception(sprintf( - "Barcode is define outside the image (calculated: '%d', provided: '%d')", - $width, - $this->_userWidth - )); - } - } - } - } - - /** - * Draw and render the barcode with correct headers - * - * @return mixed - */ - public function render() - { - $this->draw(); - header("Content-Type: image/" . $this->_imageType); - $functionName = 'image' . $this->_imageType; - call_user_func($functionName, $this->_resource); - @imagedestroy($this->_resource); - } - - /** - * Draw a polygon in the image resource - * - * @param array $points - * @param integer $color - * @param boolean $filled - */ - protected function _drawPolygon($points, $color, $filled = true) - { - $newPoints = array( - $points[0][0] + $this->_leftOffset, - $points[0][1] + $this->_topOffset, - $points[1][0] + $this->_leftOffset, - $points[1][1] + $this->_topOffset, - $points[2][0] + $this->_leftOffset, - $points[2][1] + $this->_topOffset, - $points[3][0] + $this->_leftOffset, - $points[3][1] + $this->_topOffset, - ); - - $allocatedColor = imagecolorallocate( - $this->_resource, - ($color & 0xFF0000) >> 16, - ($color & 0x00FF00) >> 8, - $color & 0x0000FF - ); - - if ($filled) { - imagefilledpolygon($this->_resource, $newPoints, 4, $allocatedColor); - } else { - imagepolygon($this->_resource, $newPoints, 4, $allocatedColor); - } - } - - /** - * Draw a polygon in the image resource - * - * @param string $text - * @param float $size - * @param array $position - * @param string $font - * @param integer $color - * @param string $alignment - * @param float $orientation - */ - protected function _drawText($text, $size, $position, $font, $color, $alignment = 'center', $orientation = 0) - { - $allocatedColor = imagecolorallocate( - $this->_resource, - ($color & 0xFF0000) >> 16, - ($color & 0x00FF00) >> 8, - $color & 0x0000FF - ); - - if ($font == null) { - $font = 3; - } - $position[0] += $this->_leftOffset; - $position[1] += $this->_topOffset; - - if (is_numeric($font)) { - if ($orientation) { - /** - * imagestring() doesn't allow orientation, if orientation - * needed: a TTF font is required. - * Throwing an exception here, allow to use automaticRenderError - * to informe user of the problem instead of simply not drawing - * the text - */ - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception( - 'No orientation possible with GD internal font' - ); - } - $fontWidth = imagefontwidth($font); - $positionY = $position[1] - imagefontheight($font) + 1; - switch ($alignment) { - case 'left': - $positionX = $position[0]; - break; - case 'center': - $positionX = $position[0] - ceil(($fontWidth * strlen($text)) / 2); - break; - case 'right': - $positionX = $position[0] - ($fontWidth * strlen($text)); - break; - } - imagestring($this->_resource, $font, $positionX, $positionY, $text, $color); - } else { - - if (!function_exists('imagettfbbox')) { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception( - 'A font was provided, but this instance of PHP does not have TTF (FreeType) support' - ); - } - - $box = imagettfbbox($size, 0, $font, $text); - switch ($alignment) { - case 'left': - $width = 0; - break; - case 'center': - $width = ($box[2] - $box[0]) / 2; - break; - case 'right': - $width = ($box[2] - $box[0]); - break; - } - imagettftext( - $this->_resource, - $size, - $orientation, - $position[0] - ($width * cos(pi() * $orientation / 180)), - $position[1] + ($width * sin(pi() * $orientation / 180)), - $allocatedColor, - $font, - $text - ); - } - } -} diff --git a/library/Zend/Barcode/Renderer/Pdf.php b/library/Zend/Barcode/Renderer/Pdf.php deleted file mode 100644 index 0e830c62..00000000 --- a/library/Zend/Barcode/Renderer/Pdf.php +++ /dev/null @@ -1,242 +0,0 @@ -_resource = $pdf; - $this->_page = intval($page); - - if (!count($this->_resource->pages)) { - $this->_page = 0; - $this->_resource->pages[] = new Zend_Pdf_Page( - Zend_Pdf_Page::SIZE_A4 - ); - } - return $this; - } - - /** - * Check renderer parameters - * - * @return void - */ - protected function _checkParams() - { - } - - /** - * Draw the barcode in the PDF, send headers and the PDF - * @return mixed - */ - public function render() - { - $this->draw(); - header("Content-Type: application/pdf"); - echo $this->_resource->render(); - } - - /** - * Initialize the PDF resource - * @return void - */ - protected function _initRenderer() - { - if ($this->_resource === null) { - $this->_resource = new Zend_Pdf(); - $this->_resource->pages[] = new Zend_Pdf_Page( - Zend_Pdf_Page::SIZE_A4 - ); - } - - $pdfPage = $this->_resource->pages[$this->_page]; - $this->_adjustPosition($pdfPage->getHeight(), $pdfPage->getWidth()); - } - - /** - * Draw a polygon in the rendering resource - * @param array $points - * @param integer $color - * @param boolean $filled - */ - protected function _drawPolygon($points, $color, $filled = true) - { - $page = $this->_resource->pages[$this->_page]; - foreach ($points as $point) { - $x[] = $point[0] * $this->_moduleSize + $this->_leftOffset; - $y[] = $page->getHeight() - $point[1] * $this->_moduleSize - $this->_topOffset; - } - if (count($y) == 4) { - if ($x[0] != $x[3] && $y[0] == $y[3]) { - $y[0] -= ($this->_moduleSize / 2); - $y[3] -= ($this->_moduleSize / 2); - } - if ($x[1] != $x[2] && $y[1] == $y[2]) { - $y[1] += ($this->_moduleSize / 2); - $y[2] += ($this->_moduleSize / 2); - } - } - - $color = new Zend_Pdf_Color_Rgb( - (($color & 0xFF0000) >> 16) / 255.0, - (($color & 0x00FF00) >> 8) / 255.0, - ($color & 0x0000FF) / 255.0 - ); - - $page->setLineColor($color); - $page->setFillColor($color); - $page->setLineWidth($this->_moduleSize); - - $fillType = ($filled) - ? Zend_Pdf_Page::SHAPE_DRAW_FILL_AND_STROKE - : Zend_Pdf_Page::SHAPE_DRAW_STROKE; - - $page->drawPolygon($x, $y, $fillType); - } - - /** - * Draw a text in the rendering resource - * @param string $text - * @param float $size - * @param array $position - * @param string $font - * @param integer $color - * @param string $alignment - * @param float $orientation - */ - protected function _drawText( - $text, - $size, - $position, - $font, - $color, - $alignment = 'center', - $orientation = 0 - ) { - $page = $this->_resource->pages[$this->_page]; - $color = new Zend_Pdf_Color_Rgb( - (($color & 0xFF0000) >> 16) / 255.0, - (($color & 0x00FF00) >> 8) / 255.0, - ($color & 0x0000FF) / 255.0 - ); - - $page->setLineColor($color); - $page->setFillColor($color); - $page->setFont(Zend_Pdf_Font::fontWithPath($font), $size * $this->_moduleSize * 1.2); - - $width = $this->widthForStringUsingFontSize( - $text, - Zend_Pdf_Font::fontWithPath($font), - $size * $this->_moduleSize - ); - - $angle = pi() * $orientation / 180; - $left = $position[0] * $this->_moduleSize + $this->_leftOffset; - $top = $page->getHeight() - $position[1] * $this->_moduleSize - $this->_topOffset; - - switch ($alignment) { - case 'center': - $left -= ($width / 2) * cos($angle); - $top -= ($width / 2) * sin($angle); - break; - case 'right': - $left -= $width; - break; - } - $page->rotate($left, $top, $angle); - $page->drawText($text, $left, $top); - $page->rotate($left, $top, - $angle); - } - - /** - * Calculate the width of a string: - * in case of using alignment parameter in drawText - * @param string $text - * @param Zend_Pdf_Font $font - * @param float $fontSize - * @return float - */ - public function widthForStringUsingFontSize($text, $font, $fontSize) - { - $drawingString = iconv('UTF-8', 'UTF-16BE//IGNORE', $text); - $characters = array(); - for ($i = 0; $i < strlen($drawingString); $i ++) { - $characters[] = (ord($drawingString[$i ++]) << 8) | ord($drawingString[$i]); - } - $glyphs = $font->glyphNumbersForCharacters($characters); - $widths = $font->widthsForGlyphs($glyphs); - $stringWidth = (array_sum($widths) / $font->getUnitsPerEm()) * $fontSize; - return $stringWidth; - } -} diff --git a/library/Zend/Barcode/Renderer/RendererAbstract.php b/library/Zend/Barcode/Renderer/RendererAbstract.php deleted file mode 100644 index 348bd999..00000000 --- a/library/Zend/Barcode/Renderer/RendererAbstract.php +++ /dev/null @@ -1,540 +0,0 @@ -toArray(); - } - if (is_array($options)) { - $this->setOptions($options); - } - $this->_type = strtolower(substr( - get_class($this), - strlen($this->_rendererNamespace) + 1 - )); - } - - /** - * Set renderer state from options array - * @param array $options - * @return Zend_Renderer_Object - */ - public function setOptions($options) - { - foreach ($options as $key => $value) { - $method = 'set' . $key; - if (method_exists($this, $method)) { - $this->$method($value); - } - } - return $this; - } - - /** - * Set renderer state from config object - * @param Zend_Config $config - * @return Zend_Renderer_Object - */ - public function setConfig(Zend_Config $config) - { - return $this->setOptions($config->toArray()); - } - - /** - * Set renderer namespace for autoloading - * - * @param string $namespace - * @return Zend_Renderer_Object - */ - public function setRendererNamespace($namespace) - { - $this->_rendererNamespace = $namespace; - return $this; - } - - /** - * Retrieve renderer namespace - * - * @return string - */ - public function getRendererNamespace() - { - return $this->_rendererNamespace; - } - - /** - * Retrieve renderer type - * @return string - */ - public function getType() - { - return $this->_type; - } - - /** - * Manually adjust top position - * @param integer $value - * @return Zend_Barcode_Renderer - * @throw Zend_Barcode_Renderer_Exception - */ - public function setTopOffset($value) - { - if (!is_numeric($value) || intval($value) < 0) { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception( - 'Vertical position must be greater than or equals 0' - ); - } - $this->_topOffset = intval($value); - return $this; - } - - /** - * Retrieve vertical adjustment - * @return integer - */ - public function getTopOffset() - { - return $this->_topOffset; - } - - /** - * Manually adjust left position - * @param integer $value - * @return Zend_Barcode_Renderer - * @throw Zend_Barcode_Renderer_Exception - */ - public function setLeftOffset($value) - { - if (!is_numeric($value) || intval($value) < 0) { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception( - 'Horizontal position must be greater than or equals 0' - ); - } - $this->_leftOffset = intval($value); - return $this; - } - - /** - * Retrieve vertical adjustment - * @return integer - */ - public function getLeftOffset() - { - return $this->_leftOffset; - } - - /** - * Activate/Deactivate the automatic rendering of exception - * @param boolean $value - */ - public function setAutomaticRenderError($value) - { - $this->_automaticRenderError = (bool) $value; - return $this; - } - - /** - * Horizontal position of the barcode in the rendering resource - * @param string $value - * @return Zend_Barcode_Renderer - * @throw Zend_Barcode_Renderer_Exception - */ - public function setHorizontalPosition($value) - { - if (!in_array($value, array('left' , 'center' , 'right'))) { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception( - "Invalid barcode position provided must be 'left', 'center' or 'right'" - ); - } - $this->_horizontalPosition = $value; - return $this; - } - - /** - * Horizontal position of the barcode in the rendering resource - * @return string - */ - public function getHorizontalPosition() - { - return $this->_horizontalPosition; - } - - /** - * Vertical position of the barcode in the rendering resource - * @param string $value - * @return Zend_Barcode_Renderer - * @throw Zend_Barcode_Renderer_Exception - */ - public function setVerticalPosition($value) - { - if (!in_array($value, array('top' , 'middle' , 'bottom'))) { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception( - "Invalid barcode position provided must be 'top', 'middle' or 'bottom'" - ); - } - $this->_verticalPosition = $value; - return $this; - } - - /** - * Vertical position of the barcode in the rendering resource - * @return string - */ - public function getVerticalPosition() - { - return $this->_verticalPosition; - } - - /** - * Set the size of a module - * @param float $value - * @return Zend_Barcode_Renderer - * @throw Zend_Barcode_Renderer_Exception - */ - public function setModuleSize($value) - { - if (!is_numeric($value) || floatval($value) <= 0) { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception( - 'Float size must be greater than 0' - ); - } - $this->_moduleSize = floatval($value); - return $this; - } - - - /** - * Set the size of a module - * @return float - */ - public function getModuleSize() - { - return $this->_moduleSize; - } - - /** - * Retrieve the automatic rendering of exception - * @return boolean - */ - public function getAutomaticRenderError() - { - return $this->_automaticRenderError; - } - - /** - * Set the barcode object - * @param Zend_Barcode_Object $barcode - * @return Zend_Barcode_Renderer - */ - public function setBarcode($barcode) - { - if (!$barcode instanceof Zend_Barcode_Object_ObjectAbstract) { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception( - 'Invalid barcode object provided to setBarcode()' - ); - } - $this->_barcode = $barcode; - return $this; - } - - /** - * Retrieve the barcode object - * @return Zend_Barcode_Object - */ - public function getBarcode() - { - return $this->_barcode; - } - - /** - * Checking of parameters after all settings - * @return boolean - */ - public function checkParams() - { - $this->_checkBarcodeObject(); - $this->_checkParams(); - return true; - } - - /** - * Check if a barcode object is correctly provided - * @return void - * @throw Zend_Barcode_Renderer_Exception - */ - protected function _checkBarcodeObject() - { - if ($this->_barcode === null) { - /** - * @see Zend_Barcode_Renderer_Exception - */ - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception( - 'No barcode object provided' - ); - } - } - - /** - * Calculate the left and top offset of the barcode in the - * rendering support - * - * @param float $supportHeight - * @param float $supportWidth - * @return void - */ - protected function _adjustPosition($supportHeight, $supportWidth) - { - $barcodeHeight = $this->_barcode->getHeight(true) * $this->_moduleSize; - if ($barcodeHeight != $supportHeight && $this->_topOffset == 0) { - switch ($this->_verticalPosition) { - case 'middle': - $this->_topOffset = floor( - ($supportHeight - $barcodeHeight) / 2); - break; - case 'bottom': - $this->_topOffset = $supportHeight - $barcodeHeight; - break; - case 'top': - default: - $this->_topOffset = 0; - break; - } - } - $barcodeWidth = $this->_barcode->getWidth(true) * $this->_moduleSize; - if ($barcodeWidth != $supportWidth && $this->_leftOffset == 0) { - switch ($this->_horizontalPosition) { - case 'center': - $this->_leftOffset = floor( - ($supportWidth - $barcodeWidth) / 2); - break; - case 'right': - $this->_leftOffset = $supportWidth - $barcodeWidth; - break; - case 'left': - default: - $this->_leftOffset = 0; - break; - } - } - } - - /** - * Draw the barcode in the rendering resource - * @return mixed - */ - public function draw() - { - try { - $this->checkParams(); - $this->_initRenderer(); - $this->_drawInstructionList(); - } catch (Zend_Exception $e) { - $renderable = false; - if ($e instanceof Zend_Barcode_Exception) { - $renderable = $e->isRenderable(); - } - if ($this->_automaticRenderError && $renderable) { - $barcode = Zend_Barcode::makeBarcode( - 'error', - array('text' => $e->getMessage()) - ); - $this->setBarcode($barcode); - $this->_resource = null; - $this->_initRenderer(); - $this->_drawInstructionList(); - } else { - if ($e instanceof Zend_Barcode_Exception) { - $e->setIsRenderable(false); - } - throw $e; - } - } - return $this->_resource; - } - - /** - * Sub process to draw the barcode instructions - * Needed by the automatic error rendering - */ - private function _drawInstructionList() - { - $instructionList = $this->_barcode->draw(); - foreach ($instructionList as $instruction) { - switch ($instruction['type']) { - case 'polygon': - $this->_drawPolygon( - $instruction['points'], - $instruction['color'], - $instruction['filled'] - ); - break; - case 'text': //$text, $size, $position, $font, $color, $alignment = 'center', $orientation = 0) - $this->_drawText( - $instruction['text'], - $instruction['size'], - $instruction['position'], - $instruction['font'], - $instruction['color'], - $instruction['alignment'], - $instruction['orientation'] - ); - break; - default: - /** - * @see Zend_Barcode_Renderer_Exception - */ - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception( - 'Unkown drawing command' - ); - } - } - } - - /** - * Checking of parameters after all settings - * @return void - */ - abstract protected function _checkParams(); - - /** - * Render the resource by sending headers and drawed resource - * @return mixed - */ - abstract public function render(); - - /** - * Initialize the rendering resource - * @return void - */ - abstract protected function _initRenderer(); - - /** - * Draw a polygon in the rendering resource - * @param array $points - * @param integer $color - * @param boolean $filled - */ - abstract protected function _drawPolygon($points, $color, $filled = true); - - /** - * Draw a polygon in the rendering resource - * @param string $text - * @param float $size - * @param array $position - * @param string $font - * @param integer $color - * @param string $alignment - * @param float $orientation - */ - abstract protected function _drawText( - $text, - $size, - $position, - $font, - $color, - $alignment = 'center', - $orientation = 0 - ); -} diff --git a/library/Zend/Barcode/Renderer/Svg.php b/library/Zend/Barcode/Renderer/Svg.php deleted file mode 100644 index e8a6a4b0..00000000 --- a/library/Zend/Barcode/Renderer/Svg.php +++ /dev/null @@ -1,382 +0,0 @@ -_userHeight = intval($value); - return $this; - } - - /** - * Get barcode height - * - * @return int - */ - public function getHeight() - { - return $this->_userHeight; - } - - /** - * Set barcode width - * - * @param mixed $value - * @return void - */ - public function setWidth($value) - { - if (!is_numeric($value) || intval($value) < 0) { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception( - 'Svg width must be greater than or equals 0' - ); - } - $this->_userWidth = intval($value); - return $this; - } - - /** - * Get barcode width - * - * @return int - */ - public function getWidth() - { - return $this->_userWidth; - } - - /** - * Set an image resource to draw the barcode inside - * - * @param DOMDocument $value - * @return Zend_Barcode_Renderer - * @throw Zend_Barcode_Renderer_Exception - */ - public function setResource($svg) - { - if (!$svg instanceof DOMDocument) { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception( - 'Invalid DOMDocument resource provided to setResource()' - ); - } - $this->_resource = $svg; - return $this; - } - - /** - * Initialize the image resource - * - * @return void - */ - protected function _initRenderer() - { - $barcodeWidth = $this->_barcode->getWidth(true); - $barcodeHeight = $this->_barcode->getHeight(true); - - $backgroundColor = $this->_barcode->getBackgroundColor(); - $imageBackgroundColor = 'rgb(' . implode(', ', array(($backgroundColor & 0xFF0000) >> 16, - ($backgroundColor & 0x00FF00) >> 8, - ($backgroundColor & 0x0000FF))) . ')'; - - $width = $barcodeWidth; - $height = $barcodeHeight; - if ($this->_userWidth && $this->_barcode->getType() != 'error') { - $width = $this->_userWidth; - } - if ($this->_userHeight && $this->_barcode->getType() != 'error') { - $height = $this->_userHeight; - } - if ($this->_resource === null) { - $this->_resource = new DOMDocument('1.0', 'utf-8'); - $this->_resource->formatOutput = true; - $this->_rootElement = $this->_resource->createElement('svg'); - $this->_rootElement->setAttribute('xmlns', "http://www.w3.org/2000/svg"); - $this->_rootElement->setAttribute('version', '1.1'); - $this->_rootElement->setAttribute('width', $width); - $this->_rootElement->setAttribute('height', $height); - - $this->_appendRootElement('title', - array(), - "Barcode " . strtoupper($this->_barcode->getType()) . " " . $this->_barcode->getText()); - } else { - $this->_readRootElement(); - $width = $this->_rootElement->getAttribute('width'); - $height = $this->_rootElement->getAttribute('height'); - } - $this->_adjustPosition($height, $width); - - $this->_appendRootElement('rect', - array('x' => $this->_leftOffset, - 'y' => $this->_topOffset, - 'width' => ($this->_leftOffset + $barcodeWidth - 1), - 'height' => ($this->_topOffset + $barcodeHeight - 1), - 'fill' => $imageBackgroundColor)); - } - - protected function _readRootElement() - { - if ($this->_resource !== null) { - $this->_rootElement = $this->_resource->documentElement; - } - } - - /** - * Append a new DOMElement to the root element - * - * @param string $tagName - * @param array $attributes - * @param string $textContent - */ - protected function _appendRootElement($tagName, $attributes = array(), $textContent = null) - { - $newElement = $this->_createElement($tagName, $attributes, $textContent); - $this->_rootElement->appendChild($newElement); - } - - /** - * Create DOMElement - * - * @param string $tagName - * @param array $attributes - * @param string $textContent - * @return DOMElement - */ - protected function _createElement($tagName, $attributes = array(), $textContent = null) - { - $element = $this->_resource->createElement($tagName); - foreach ($attributes as $k =>$v) { - $element->setAttribute($k, $v); - } - if ($textContent !== null) { - $element->appendChild(new DOMText((string) $textContent)); - } - return $element; - } - - /** - * Check barcode parameters - * - * @return void - */ - protected function _checkParams() - { - $this->_checkDimensions(); - } - - /** - * Check barcode dimensions - * - * @return void - */ - protected function _checkDimensions() - { - if ($this->_resource !== null) { - $this->_readRootElement(); - $height = (float) $this->_rootElement->getAttribute('height'); - if ($height < $this->_barcode->getHeight(true)) { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception( - 'Barcode is define outside the image (height)' - ); - } - } else { - if ($this->_userHeight) { - $height = $this->_barcode->getHeight(true); - if ($this->_userHeight < $height) { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception(sprintf( - "Barcode is define outside the image (calculated: '%d', provided: '%d')", - $height, - $this->_userHeight - )); - } - } - } - if ($this->_resource !== null) { - $this->_readRootElement(); - $width = $this->_rootElement->getAttribute('width'); - if ($width < $this->_barcode->getWidth(true)) { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception( - 'Barcode is define outside the image (width)' - ); - } - } else { - if ($this->_userWidth) { - $width = (float) $this->_barcode->getWidth(true); - if ($this->_userWidth < $width) { - require_once 'Zend/Barcode/Renderer/Exception.php'; - throw new Zend_Barcode_Renderer_Exception(sprintf( - "Barcode is define outside the image (calculated: '%d', provided: '%d')", - $width, - $this->_userWidth - )); - } - } - } - } - - /** - * Draw the barcode in the rendering resource - * @return mixed - */ - public function draw() - { - parent::draw(); - $this->_resource->appendChild($this->_rootElement); - return $this->_resource; - } - - /** - * Draw and render the barcode with correct headers - * - * @return mixed - */ - public function render() - { - $this->draw(); - header("Content-Type: image/svg+xml"); - echo $this->_resource->saveXML(); - } - - /** - * Draw a polygon in the svg resource - * - * @param array $points - * @param integer $color - * @param boolean $filled - */ - protected function _drawPolygon($points, $color, $filled = true) - { - $color = 'rgb(' . implode(', ', array(($color & 0xFF0000) >> 16, - ($color & 0x00FF00) >> 8, - ($color & 0x0000FF))) . ')'; - $orientation = $this->getBarcode()->getOrientation(); - $newPoints = array( - $points[0][0] + $this->_leftOffset, - $points[0][1] + $this->_topOffset, - $points[1][0] + $this->_leftOffset, - $points[1][1] + $this->_topOffset, - $points[2][0] + $this->_leftOffset + cos(-$orientation), - $points[2][1] + $this->_topOffset - sin($orientation), - $points[3][0] + $this->_leftOffset + cos(-$orientation), - $points[3][1] + $this->_topOffset - sin($orientation), - ); - $newPoints = implode(' ', $newPoints); - $attributes['points'] = $newPoints; - $attributes['fill'] = $color; - $this->_appendRootElement('polygon', $attributes); - } - - /** - * Draw a polygon in the svg resource - * - * @param string $text - * @param float $size - * @param array $position - * @param string $font - * @param integer $color - * @param string $alignment - * @param float $orientation - */ - protected function _drawText($text, $size, $position, $font, $color, $alignment = 'center', $orientation = 0) - { - $color = 'rgb(' . implode(', ', array(($color & 0xFF0000) >> 16, - ($color & 0x00FF00) >> 8, - ($color & 0x0000FF))) . ')'; - $attributes['x'] = $position[0] + $this->_leftOffset; - $attributes['y'] = $position[1] + $this->_topOffset; - //$attributes['font-family'] = $font; - $attributes['color'] = $color; - $attributes['font-size'] = $size * 1.2; - switch ($alignment) { - case 'left': - $textAnchor = 'start'; - break; - case 'right': - $textAnchor = 'end'; - break; - case 'center': - default: - $textAnchor = 'middle'; - } - $attributes['style'] = 'text-anchor: ' . $textAnchor; - $attributes['transform'] = 'rotate(' - . (- $orientation) - . ', ' - . ($position[0] + $this->_leftOffset) - . ', ' . ($position[1] + $this->_topOffset) - . ')'; - $this->_appendRootElement('text', $attributes, $text); - } -} diff --git a/library/Zend/Cache.php b/library/Zend/Cache.php deleted file mode 100644 index aff2e653..00000000 --- a/library/Zend/Cache.php +++ /dev/null @@ -1,250 +0,0 @@ -setBackend($backendObject); - return $frontendObject; - } - - /** - * Backend Constructor - * - * @param string $backend - * @param array $backendOptions - * @param boolean $customBackendNaming - * @param boolean $autoload - * @return Zend_Cache_Backend - */ - public static function _makeBackend($backend, $backendOptions, $customBackendNaming = false, $autoload = false) - { - if (!$customBackendNaming) { - $backend = self::_normalizeName($backend); - } - if (in_array($backend, Zend_Cache::$standardBackends)) { - // we use a standard backend - $backendClass = 'Zend_Cache_Backend_' . $backend; - // security controls are explicit - require_once str_replace('_', DIRECTORY_SEPARATOR, $backendClass) . '.php'; - } else { - // we use a custom backend - if (!preg_match('~^[\w\\\\]+$~D', $backend)) { - Zend_Cache::throwException("Invalid backend name [$backend]"); - } - if (!$customBackendNaming) { - // we use this boolean to avoid an API break - $backendClass = 'Zend_Cache_Backend_' . $backend; - } else { - $backendClass = $backend; - } - if (!$autoload) { - $file = str_replace('_', DIRECTORY_SEPARATOR, $backendClass) . '.php'; - if (!(self::_isReadable($file))) { - self::throwException("file $file not found in include_path"); - } - require_once $file; - } - } - return new $backendClass($backendOptions); - } - - /** - * Frontend Constructor - * - * @param string $frontend - * @param array $frontendOptions - * @param boolean $customFrontendNaming - * @param boolean $autoload - * @return Zend_Cache_Core|Zend_Cache_Frontend - */ - public static function _makeFrontend($frontend, $frontendOptions = array(), $customFrontendNaming = false, $autoload = false) - { - if (!$customFrontendNaming) { - $frontend = self::_normalizeName($frontend); - } - if (in_array($frontend, self::$standardFrontends)) { - // we use a standard frontend - // For perfs reasons, with frontend == 'Core', we can interact with the Core itself - $frontendClass = 'Zend_Cache_' . ($frontend != 'Core' ? 'Frontend_' : '') . $frontend; - // security controls are explicit - require_once str_replace('_', DIRECTORY_SEPARATOR, $frontendClass) . '.php'; - } else { - // we use a custom frontend - if (!preg_match('~^[\w\\\\]+$~D', $frontend)) { - Zend_Cache::throwException("Invalid frontend name [$frontend]"); - } - if (!$customFrontendNaming) { - // we use this boolean to avoid an API break - $frontendClass = 'Zend_Cache_Frontend_' . $frontend; - } else { - $frontendClass = $frontend; - } - if (!$autoload) { - $file = str_replace('_', DIRECTORY_SEPARATOR, $frontendClass) . '.php'; - if (!(self::_isReadable($file))) { - self::throwException("file $file not found in include_path"); - } - require_once $file; - } - } - return new $frontendClass($frontendOptions); - } - - /** - * Throw an exception - * - * Note : for perf reasons, the "load" of Zend/Cache/Exception is dynamic - * @param string $msg Message for the exception - * @throws Zend_Cache_Exception - */ - public static function throwException($msg, Exception $e = null) - { - // For perfs reasons, we use this dynamic inclusion - require_once 'Zend/Cache/Exception.php'; - throw new Zend_Cache_Exception($msg, 0, $e); - } - - /** - * Normalize frontend and backend names to allow multiple words TitleCased - * - * @param string $name Name to normalize - * @return string - */ - protected static function _normalizeName($name) - { - $name = ucfirst(strtolower($name)); - $name = str_replace(array('-', '_', '.'), ' ', $name); - $name = ucwords($name); - $name = str_replace(' ', '', $name); - if (stripos($name, 'ZendServer') === 0) { - $name = 'ZendServer_' . substr($name, strlen('ZendServer')); - } - - return $name; - } - - /** - * Returns TRUE if the $filename is readable, or FALSE otherwise. - * This function uses the PHP include_path, where PHP's is_readable() - * does not. - * - * Note : this method comes from Zend_Loader (see #ZF-2891 for details) - * - * @param string $filename - * @return boolean - */ - private static function _isReadable($filename) - { - if (!$fh = @fopen($filename, 'r', true)) { - return false; - } - @fclose($fh); - return true; - } - -} diff --git a/library/Zend/Cache/Backend.php b/library/Zend/Cache/Backend.php deleted file mode 100644 index 803fd446..00000000 --- a/library/Zend/Cache/Backend.php +++ /dev/null @@ -1,290 +0,0 @@ - (int) lifetime : - * - Cache lifetime (in seconds) - * - If null, the cache is valid forever - * - * =====> (int) logging : - * - if set to true, a logging is activated throw Zend_Log - * - * @var array directives - */ - protected $_directives = array( - 'lifetime' => 3600, - 'logging' => false, - 'logger' => null - ); - - /** - * Available options - * - * @var array available options - */ - protected $_options = array(); - - /** - * Constructor - * - * @param array $options Associative array of options - * @throws Zend_Cache_Exception - * @return void - */ - public function __construct(array $options = array()) - { - while (list($name, $value) = each($options)) { - $this->setOption($name, $value); - } - } - - /** - * Set the frontend directives - * - * @param array $directives Assoc of directives - * @throws Zend_Cache_Exception - * @return void - */ - public function setDirectives($directives) - { - if (!is_array($directives)) Zend_Cache::throwException('Directives parameter must be an array'); - while (list($name, $value) = each($directives)) { - if (!is_string($name)) { - Zend_Cache::throwException("Incorrect option name : $name"); - } - $name = strtolower($name); - if (array_key_exists($name, $this->_directives)) { - $this->_directives[$name] = $value; - } - - } - - $this->_loggerSanity(); - } - - /** - * Set an option - * - * @param string $name - * @param mixed $value - * @throws Zend_Cache_Exception - * @return void - */ - public function setOption($name, $value) - { - if (!is_string($name)) { - Zend_Cache::throwException("Incorrect option name : $name"); - } - $name = strtolower($name); - if (array_key_exists($name, $this->_options)) { - $this->_options[$name] = $value; - } - } - - /** - * Returns an option - * - * @param string $name Optional, the options name to return - * @throws Zend_Cache_Exceptions - * @return mixed - */ - public function getOption($name) - { - $name = strtolower($name); - - if (array_key_exists($name, $this->_options)) { - return $this->_options[$name]; - } - - if (array_key_exists($name, $this->_directives)) { - return $this->_directives[$name]; - } - - Zend_Cache::throwException("Incorrect option name : {$name}"); - } - - /** - * Get the life time - * - * if $specificLifetime is not false, the given specific life time is used - * else, the global lifetime is used - * - * @param int $specificLifetime - * @return int Cache life time - */ - public function getLifetime($specificLifetime) - { - if ($specificLifetime === false) { - return $this->_directives['lifetime']; - } - return $specificLifetime; - } - - /** - * Return true if the automatic cleaning is available for the backend - * - * DEPRECATED : use getCapabilities() instead - * - * @deprecated - * @return boolean - */ - public function isAutomaticCleaningAvailable() - { - return true; - } - - /** - * Determine system TMP directory and detect if we have read access - * - * inspired from Zend_File_Transfer_Adapter_Abstract - * - * @return string - * @throws Zend_Cache_Exception if unable to determine directory - */ - public function getTmpDir() - { - $tmpdir = array(); - foreach (array($_ENV, $_SERVER) as $tab) { - foreach (array('TMPDIR', 'TEMP', 'TMP', 'windir', 'SystemRoot') as $key) { - if (isset($tab[$key]) && is_string($tab[$key])) { - if (($key == 'windir') or ($key == 'SystemRoot')) { - $dir = realpath($tab[$key] . '\\temp'); - } else { - $dir = realpath($tab[$key]); - } - if ($this->_isGoodTmpDir($dir)) { - return $dir; - } - } - } - } - $upload = ini_get('upload_tmp_dir'); - if ($upload) { - $dir = realpath($upload); - if ($this->_isGoodTmpDir($dir)) { - return $dir; - } - } - if (function_exists('sys_get_temp_dir')) { - $dir = sys_get_temp_dir(); - if ($this->_isGoodTmpDir($dir)) { - return $dir; - } - } - // Attemp to detect by creating a temporary file - $tempFile = tempnam(md5(uniqid(rand(), TRUE)), ''); - if ($tempFile) { - $dir = realpath(dirname($tempFile)); - unlink($tempFile); - if ($this->_isGoodTmpDir($dir)) { - return $dir; - } - } - if ($this->_isGoodTmpDir('/tmp')) { - return '/tmp'; - } - if ($this->_isGoodTmpDir('\\temp')) { - return '\\temp'; - } - Zend_Cache::throwException('Could not determine temp directory, please specify a cache_dir manually'); - } - - /** - * Verify if the given temporary directory is readable and writable - * - * @param string $dir temporary directory - * @return boolean true if the directory is ok - */ - protected function _isGoodTmpDir($dir) - { - if (is_readable($dir)) { - if (is_writable($dir)) { - return true; - } - } - return false; - } - - /** - * Make sure if we enable logging that the Zend_Log class - * is available. - * Create a default log object if none is set. - * - * @throws Zend_Cache_Exception - * @return void - */ - protected function _loggerSanity() - { - if (!isset($this->_directives['logging']) || !$this->_directives['logging']) { - return; - } - - if (isset($this->_directives['logger'])) { - if ($this->_directives['logger'] instanceof Zend_Log) { - return; - } - Zend_Cache::throwException('Logger object is not an instance of Zend_Log class.'); - } - - // Create a default logger to the standard output stream - require_once 'Zend/Log.php'; - require_once 'Zend/Log/Writer/Stream.php'; - require_once 'Zend/Log/Filter/Priority.php'; - $logger = new Zend_Log(new Zend_Log_Writer_Stream('php://output')); - $logger->addFilter(new Zend_Log_Filter_Priority(Zend_Log::WARN, '<=')); - $this->_directives['logger'] = $logger; - } - - /** - * Log a message at the WARN (4) priority. - * - * @param string $message - * @throws Zend_Cache_Exception - * @return void - */ - protected function _log($message, $priority = 4) - { - if (!$this->_directives['logging']) { - return; - } - - if (!isset($this->_directives['logger'])) { - Zend_Cache::throwException('Logging is enabled but logger is not set.'); - } - $logger = $this->_directives['logger']; - if (!$logger instanceof Zend_Log) { - Zend_Cache::throwException('Logger object is not an instance of Zend_Log class.'); - } - $logger->log($message, $priority); - } -} diff --git a/library/Zend/Cache/Backend/Apc.php b/library/Zend/Cache/Backend/Apc.php deleted file mode 100644 index 0786df01..00000000 --- a/library/Zend/Cache/Backend/Apc.php +++ /dev/null @@ -1,355 +0,0 @@ - infinite lifetime) - * @return boolean true if no problem - */ - public function save($data, $id, $tags = array(), $specificLifetime = false) - { - $lifetime = $this->getLifetime($specificLifetime); - $result = apc_store($id, array($data, time(), $lifetime), $lifetime); - if (count($tags) > 0) { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_APC_BACKEND); - } - return $result; - } - - /** - * Remove a cache record - * - * @param string $id cache id - * @return boolean true if no problem - */ - public function remove($id) - { - return apc_delete($id); - } - - /** - * Clean some cache records - * - * Available modes are : - * 'all' (default) => remove all cache entries ($tags is not used) - * 'old' => unsupported - * 'matchingTag' => unsupported - * 'notMatchingTag' => unsupported - * 'matchingAnyTag' => unsupported - * - * @param string $mode clean mode - * @param array $tags array of tags - * @throws Zend_Cache_Exception - * @return boolean true if no problem - */ - public function clean($mode = Zend_Cache::CLEANING_MODE_ALL, $tags = array()) - { - switch ($mode) { - case Zend_Cache::CLEANING_MODE_ALL: - return apc_clear_cache('user'); - break; - case Zend_Cache::CLEANING_MODE_OLD: - $this->_log("Zend_Cache_Backend_Apc::clean() : CLEANING_MODE_OLD is unsupported by the Apc backend"); - break; - case Zend_Cache::CLEANING_MODE_MATCHING_TAG: - case Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG: - case Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG: - $this->_log(self::TAGS_UNSUPPORTED_BY_CLEAN_OF_APC_BACKEND); - break; - default: - Zend_Cache::throwException('Invalid mode for clean() method'); - break; - } - } - - /** - * Return true if the automatic cleaning is available for the backend - * - * DEPRECATED : use getCapabilities() instead - * - * @deprecated - * @return boolean - */ - public function isAutomaticCleaningAvailable() - { - return false; - } - - /** - * Return the filling percentage of the backend storage - * - * @throws Zend_Cache_Exception - * @return int integer between 0 and 100 - */ - public function getFillingPercentage() - { - $mem = apc_sma_info(true); - $memSize = $mem['num_seg'] * $mem['seg_size']; - $memAvailable= $mem['avail_mem']; - $memUsed = $memSize - $memAvailable; - if ($memSize == 0) { - Zend_Cache::throwException('can\'t get apc memory size'); - } - if ($memUsed > $memSize) { - return 100; - } - return ((int) (100. * ($memUsed / $memSize))); - } - - /** - * Return an array of stored tags - * - * @return array array of stored tags (string) - */ - public function getTags() - { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_APC_BACKEND); - return array(); - } - - /** - * Return an array of stored cache ids which match given tags - * - * In case of multiple tags, a logical AND is made between tags - * - * @param array $tags array of tags - * @return array array of matching cache ids (string) - */ - public function getIdsMatchingTags($tags = array()) - { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_APC_BACKEND); - return array(); - } - - /** - * Return an array of stored cache ids which don't match given tags - * - * In case of multiple tags, a logical OR is made between tags - * - * @param array $tags array of tags - * @return array array of not matching cache ids (string) - */ - public function getIdsNotMatchingTags($tags = array()) - { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_APC_BACKEND); - return array(); - } - - /** - * Return an array of stored cache ids which match any given tags - * - * In case of multiple tags, a logical AND is made between tags - * - * @param array $tags array of tags - * @return array array of any matching cache ids (string) - */ - public function getIdsMatchingAnyTags($tags = array()) - { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_APC_BACKEND); - return array(); - } - - /** - * Return an array of stored cache ids - * - * @return array array of stored cache ids (string) - */ - public function getIds() - { - $res = array(); - $array = apc_cache_info('user', false); - $records = $array['cache_list']; - foreach ($records as $record) { - $res[] = $record['info']; - } - return $res; - } - - /** - * Return an array of metadatas for the given cache id - * - * The array must include these keys : - * - expire : the expire timestamp - * - tags : a string array of tags - * - mtime : timestamp of last modification time - * - * @param string $id cache id - * @return array array of metadatas (false if the cache id is not found) - */ - public function getMetadatas($id) - { - $tmp = apc_fetch($id); - if (is_array($tmp)) { - $data = $tmp[0]; - $mtime = $tmp[1]; - if (!isset($tmp[2])) { - // because this record is only with 1.7 release - // if old cache records are still there... - return false; - } - $lifetime = $tmp[2]; - return array( - 'expire' => $mtime + $lifetime, - 'tags' => array(), - 'mtime' => $mtime - ); - } - return false; - } - - /** - * Give (if possible) an extra lifetime to the given cache id - * - * @param string $id cache id - * @param int $extraLifetime - * @return boolean true if ok - */ - public function touch($id, $extraLifetime) - { - $tmp = apc_fetch($id); - if (is_array($tmp)) { - $data = $tmp[0]; - $mtime = $tmp[1]; - if (!isset($tmp[2])) { - // because this record is only with 1.7 release - // if old cache records are still there... - return false; - } - $lifetime = $tmp[2]; - $newLifetime = $lifetime - (time() - $mtime) + $extraLifetime; - if ($newLifetime <=0) { - return false; - } - apc_store($id, array($data, time(), $newLifetime), $newLifetime); - return true; - } - return false; - } - - /** - * Return an associative array of capabilities (booleans) of the backend - * - * The array must include these keys : - * - automatic_cleaning (is automating cleaning necessary) - * - tags (are tags supported) - * - expired_read (is it possible to read expired cache records - * (for doNotTestCacheValidity option for example)) - * - priority does the backend deal with priority when saving - * - infinite_lifetime (is infinite lifetime can work with this backend) - * - get_list (is it possible to get the list of cache ids and the complete list of tags) - * - * @return array associative of with capabilities - */ - public function getCapabilities() - { - return array( - 'automatic_cleaning' => false, - 'tags' => false, - 'expired_read' => false, - 'priority' => false, - 'infinite_lifetime' => false, - 'get_list' => true - ); - } - -} diff --git a/library/Zend/Cache/Backend/BlackHole.php b/library/Zend/Cache/Backend/BlackHole.php deleted file mode 100644 index 615d7c0c..00000000 --- a/library/Zend/Cache/Backend/BlackHole.php +++ /dev/null @@ -1,250 +0,0 @@ - infinite lifetime) - * @return boolean true if no problem - */ - public function save($data, $id, $tags = array(), $specificLifetime = false) - { - return true; - } - - /** - * Remove a cache record - * - * @param string $id cache id - * @return boolean true if no problem - */ - public function remove($id) - { - return true; - } - - /** - * Clean some cache records - * - * Available modes are : - * 'all' (default) => remove all cache entries ($tags is not used) - * 'old' => remove too old cache entries ($tags is not used) - * 'matchingTag' => remove cache entries matching all given tags - * ($tags can be an array of strings or a single string) - * 'notMatchingTag' => remove cache entries not matching one of the given tags - * ($tags can be an array of strings or a single string) - * 'matchingAnyTag' => remove cache entries matching any given tags - * ($tags can be an array of strings or a single string) - * - * @param string $mode clean mode - * @param tags array $tags array of tags - * @return boolean true if no problem - */ - public function clean($mode = Zend_Cache::CLEANING_MODE_ALL, $tags = array()) - { - return true; - } - - /** - * Return an array of stored cache ids - * - * @return array array of stored cache ids (string) - */ - public function getIds() - { - return array(); - } - - /** - * Return an array of stored tags - * - * @return array array of stored tags (string) - */ - public function getTags() - { - return array(); - } - - /** - * Return an array of stored cache ids which match given tags - * - * In case of multiple tags, a logical AND is made between tags - * - * @param array $tags array of tags - * @return array array of matching cache ids (string) - */ - public function getIdsMatchingTags($tags = array()) - { - return array(); - } - - /** - * Return an array of stored cache ids which don't match given tags - * - * In case of multiple tags, a logical OR is made between tags - * - * @param array $tags array of tags - * @return array array of not matching cache ids (string) - */ - public function getIdsNotMatchingTags($tags = array()) - { - return array(); - } - - /** - * Return an array of stored cache ids which match any given tags - * - * In case of multiple tags, a logical AND is made between tags - * - * @param array $tags array of tags - * @return array array of any matching cache ids (string) - */ - public function getIdsMatchingAnyTags($tags = array()) - { - return array(); - } - - /** - * Return the filling percentage of the backend storage - * - * @return int integer between 0 and 100 - * @throws Zend_Cache_Exception - */ - public function getFillingPercentage() - { - return 0; - } - - /** - * Return an array of metadatas for the given cache id - * - * The array must include these keys : - * - expire : the expire timestamp - * - tags : a string array of tags - * - mtime : timestamp of last modification time - * - * @param string $id cache id - * @return array array of metadatas (false if the cache id is not found) - */ - public function getMetadatas($id) - { - return false; - } - - /** - * Give (if possible) an extra lifetime to the given cache id - * - * @param string $id cache id - * @param int $extraLifetime - * @return boolean true if ok - */ - public function touch($id, $extraLifetime) - { - return false; - } - - /** - * Return an associative array of capabilities (booleans) of the backend - * - * The array must include these keys : - * - automatic_cleaning (is automating cleaning necessary) - * - tags (are tags supported) - * - expired_read (is it possible to read expired cache records - * (for doNotTestCacheValidity option for example)) - * - priority does the backend deal with priority when saving - * - infinite_lifetime (is infinite lifetime can work with this backend) - * - get_list (is it possible to get the list of cache ids and the complete list of tags) - * - * @return array associative of with capabilities - */ - public function getCapabilities() - { - return array( - 'automatic_cleaning' => true, - 'tags' => true, - 'expired_read' => true, - 'priority' => true, - 'infinite_lifetime' => true, - 'get_list' => true, - ); - } - - /** - * PUBLIC METHOD FOR UNIT TESTING ONLY ! - * - * Force a cache record to expire - * - * @param string $id cache id - */ - public function ___expire($id) - { - } -} diff --git a/library/Zend/Cache/Backend/ExtendedInterface.php b/library/Zend/Cache/Backend/ExtendedInterface.php deleted file mode 100644 index bb5ec5a4..00000000 --- a/library/Zend/Cache/Backend/ExtendedInterface.php +++ /dev/null @@ -1,126 +0,0 @@ - (string) cache_dir : - * - Directory where to put the cache files - * - * =====> (boolean) file_locking : - * - Enable / disable file_locking - * - Can avoid cache corruption under bad circumstances but it doesn't work on multithread - * webservers and on NFS filesystems for example - * - * =====> (boolean) read_control : - * - Enable / disable read control - * - If enabled, a control key is embeded in cache file and this key is compared with the one - * calculated after the reading. - * - * =====> (string) read_control_type : - * - Type of read control (only if read control is enabled). Available values are : - * 'md5' for a md5 hash control (best but slowest) - * 'crc32' for a crc32 hash control (lightly less safe but faster, better choice) - * 'adler32' for an adler32 hash control (excellent choice too, faster than crc32) - * 'strlen' for a length only test (fastest) - * - * =====> (int) hashed_directory_level : - * - Hashed directory level - * - Set the hashed directory structure level. 0 means "no hashed directory - * structure", 1 means "one level of directory", 2 means "two levels"... - * This option can speed up the cache only when you have many thousands of - * cache file. Only specific benchs can help you to choose the perfect value - * for you. Maybe, 1 or 2 is a good start. - * - * =====> (int) hashed_directory_umask : - * - deprecated - * - Permissions for hashed directory structure - * - * =====> (int) hashed_directory_perm : - * - Permissions for hashed directory structure - * - * =====> (string) file_name_prefix : - * - prefix for cache files - * - be really carefull with this option because a too generic value in a system cache dir - * (like /tmp) can cause disasters when cleaning the cache - * - * =====> (int) cache_file_umask : - * - deprecated - * - Permissions for cache files - * - * =====> (int) cache_file_perm : - * - Permissions for cache files - * - * =====> (int) metatadatas_array_max_size : - * - max size for the metadatas array (don't change this value unless you - * know what you are doing) - * - * @var array available options - */ - protected $_options = array( - 'cache_dir' => null, - 'file_locking' => true, - 'read_control' => true, - 'read_control_type' => 'crc32', - 'hashed_directory_level' => 0, - 'hashed_directory_perm' => 0700, - 'file_name_prefix' => 'zend_cache', - 'cache_file_perm' => 0600, - 'metadatas_array_max_size' => 100 - ); - - /** - * Array of metadatas (each item is an associative array) - * - * @var array - */ - protected $_metadatasArray = array(); - - - /** - * Constructor - * - * @param array $options associative array of options - * @throws Zend_Cache_Exception - * @return void - */ - public function __construct(array $options = array()) - { - parent::__construct($options); - if ($this->_options['cache_dir'] !== null) { // particular case for this option - $this->setCacheDir($this->_options['cache_dir']); - } else { - $this->setCacheDir(self::getTmpDir() . DIRECTORY_SEPARATOR, false); - } - if (isset($this->_options['file_name_prefix'])) { // particular case for this option - if (!preg_match('~^[a-zA-Z0-9_]+$~D', $this->_options['file_name_prefix'])) { - Zend_Cache::throwException('Invalid file_name_prefix : must use only [a-zA-Z0-9_]'); - } - } - if ($this->_options['metadatas_array_max_size'] < 10) { - Zend_Cache::throwException('Invalid metadatas_array_max_size, must be > 10'); - } - - if (isset($options['hashed_directory_umask'])) { - // See #ZF-12047 - trigger_error("'hashed_directory_umask' is deprecated -> please use 'hashed_directory_perm' instead", E_USER_NOTICE); - if (!isset($options['hashed_directory_perm'])) { - $options['hashed_directory_perm'] = $options['hashed_directory_umask']; - } - } - if (isset($options['hashed_directory_perm']) && is_string($options['hashed_directory_perm'])) { - // See #ZF-4422 - $this->_options['hashed_directory_perm'] = octdec($this->_options['hashed_directory_perm']); - } - - if (isset($options['cache_file_umask'])) { - // See #ZF-12047 - trigger_error("'cache_file_umask' is deprecated -> please use 'cache_file_perm' instead", E_USER_NOTICE); - if (!isset($options['cache_file_perm'])) { - $options['cache_file_perm'] = $options['cache_file_umask']; - } - } - if (isset($options['cache_file_perm']) && is_string($options['cache_file_perm'])) { - // See #ZF-4422 - $this->_options['cache_file_perm'] = octdec($this->_options['cache_file_perm']); - } - } - - /** - * Set the cache_dir (particular case of setOption() method) - * - * @param string $value - * @param boolean $trailingSeparator If true, add a trailing separator is necessary - * @throws Zend_Cache_Exception - * @return void - */ - public function setCacheDir($value, $trailingSeparator = true) - { - if (!is_dir($value)) { - Zend_Cache::throwException(sprintf('cache_dir "%s" must be a directory', $value)); - } - if (!is_writable($value)) { - Zend_Cache::throwException(sprintf('cache_dir "%s" is not writable', $value)); - } - if ($trailingSeparator) { - // add a trailing DIRECTORY_SEPARATOR if necessary - $value = rtrim(realpath($value), '\\/') . DIRECTORY_SEPARATOR; - } - $this->_options['cache_dir'] = $value; - } - - /** - * Test if a cache is available for the given id and (if yes) return it (false else) - * - * @param string $id cache id - * @param boolean $doNotTestCacheValidity if set to true, the cache validity won't be tested - * @return string|false cached datas - */ - public function load($id, $doNotTestCacheValidity = false) - { - if (!($this->_test($id, $doNotTestCacheValidity))) { - // The cache is not hit ! - return false; - } - $metadatas = $this->_getMetadatas($id); - $file = $this->_file($id); - $data = $this->_fileGetContents($file); - if ($this->_options['read_control']) { - $hashData = $this->_hash($data, $this->_options['read_control_type']); - $hashControl = $metadatas['hash']; - if ($hashData != $hashControl) { - // Problem detected by the read control ! - $this->_log('Zend_Cache_Backend_File::load() / read_control : stored hash and computed hash do not match'); - $this->remove($id); - return false; - } - } - return $data; - } - - /** - * Test if a cache is available or not (for the given id) - * - * @param string $id cache id - * @return mixed false (a cache is not available) or "last modified" timestamp (int) of the available cache record - */ - public function test($id) - { - clearstatcache(); - return $this->_test($id, false); - } - - /** - * Save some string datas into a cache record - * - * Note : $data is always "string" (serialization is done by the - * core not by the backend) - * - * @param string $data Datas to cache - * @param string $id Cache id - * @param array $tags Array of strings, the cache record will be tagged by each string entry - * @param int $specificLifetime If != false, set a specific lifetime for this cache record (null => infinite lifetime) - * @return boolean true if no problem - */ - public function save($data, $id, $tags = array(), $specificLifetime = false) - { - clearstatcache(); - $file = $this->_file($id); - $path = $this->_path($id); - if ($this->_options['hashed_directory_level'] > 0) { - if (!is_writable($path)) { - // maybe, we just have to build the directory structure - $this->_recursiveMkdirAndChmod($id); - } - if (!is_writable($path)) { - return false; - } - } - if ($this->_options['read_control']) { - $hash = $this->_hash($data, $this->_options['read_control_type']); - } else { - $hash = ''; - } - $metadatas = array( - 'hash' => $hash, - 'mtime' => time(), - 'expire' => $this->_expireTime($this->getLifetime($specificLifetime)), - 'tags' => $tags - ); - $res = $this->_setMetadatas($id, $metadatas); - if (!$res) { - $this->_log('Zend_Cache_Backend_File::save() / error on saving metadata'); - return false; - } - $res = $this->_filePutContents($file, $data); - return $res; - } - - /** - * Remove a cache record - * - * @param string $id cache id - * @return boolean true if no problem - */ - public function remove($id) - { - $file = $this->_file($id); - $boolRemove = $this->_remove($file); - $boolMetadata = $this->_delMetadatas($id); - return $boolMetadata && $boolRemove; - } - - /** - * Clean some cache records - * - * Available modes are : - * - * Zend_Cache::CLEANING_MODE_ALL (default) => remove all cache entries ($tags is not used) - * Zend_Cache::CLEANING_MODE_OLD => remove too old cache entries ($tags is not used) - * Zend_Cache::CLEANING_MODE_MATCHING_TAG => remove cache entries matching all given tags - * ($tags can be an array of strings or a single string) - * Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG => remove cache entries not {matching one of the given tags} - * ($tags can be an array of strings or a single string) - * Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG => remove cache entries matching any given tags - * ($tags can be an array of strings or a single string) - * - * @param string $mode clean mode - * @param tags array $tags array of tags - * @return boolean true if no problem - */ - public function clean($mode = Zend_Cache::CLEANING_MODE_ALL, $tags = array()) - { - // We use this protected method to hide the recursive stuff - clearstatcache(); - return $this->_clean($this->_options['cache_dir'], $mode, $tags); - } - - /** - * Return an array of stored cache ids - * - * @return array array of stored cache ids (string) - */ - public function getIds() - { - return $this->_get($this->_options['cache_dir'], 'ids', array()); - } - - /** - * Return an array of stored tags - * - * @return array array of stored tags (string) - */ - public function getTags() - { - return $this->_get($this->_options['cache_dir'], 'tags', array()); - } - - /** - * Return an array of stored cache ids which match given tags - * - * In case of multiple tags, a logical AND is made between tags - * - * @param array $tags array of tags - * @return array array of matching cache ids (string) - */ - public function getIdsMatchingTags($tags = array()) - { - return $this->_get($this->_options['cache_dir'], 'matching', $tags); - } - - /** - * Return an array of stored cache ids which don't match given tags - * - * In case of multiple tags, a logical OR is made between tags - * - * @param array $tags array of tags - * @return array array of not matching cache ids (string) - */ - public function getIdsNotMatchingTags($tags = array()) - { - return $this->_get($this->_options['cache_dir'], 'notMatching', $tags); - } - - /** - * Return an array of stored cache ids which match any given tags - * - * In case of multiple tags, a logical AND is made between tags - * - * @param array $tags array of tags - * @return array array of any matching cache ids (string) - */ - public function getIdsMatchingAnyTags($tags = array()) - { - return $this->_get($this->_options['cache_dir'], 'matchingAny', $tags); - } - - /** - * Return the filling percentage of the backend storage - * - * @throws Zend_Cache_Exception - * @return int integer between 0 and 100 - */ - public function getFillingPercentage() - { - $free = disk_free_space($this->_options['cache_dir']); - $total = disk_total_space($this->_options['cache_dir']); - if ($total == 0) { - Zend_Cache::throwException('can\'t get disk_total_space'); - } else { - if ($free >= $total) { - return 100; - } - return ((int) (100. * ($total - $free) / $total)); - } - } - - /** - * Return an array of metadatas for the given cache id - * - * The array must include these keys : - * - expire : the expire timestamp - * - tags : a string array of tags - * - mtime : timestamp of last modification time - * - * @param string $id cache id - * @return array array of metadatas (false if the cache id is not found) - */ - public function getMetadatas($id) - { - $metadatas = $this->_getMetadatas($id); - if (!$metadatas) { - return false; - } - if (time() > $metadatas['expire']) { - return false; - } - return array( - 'expire' => $metadatas['expire'], - 'tags' => $metadatas['tags'], - 'mtime' => $metadatas['mtime'] - ); - } - - /** - * Give (if possible) an extra lifetime to the given cache id - * - * @param string $id cache id - * @param int $extraLifetime - * @return boolean true if ok - */ - public function touch($id, $extraLifetime) - { - $metadatas = $this->_getMetadatas($id); - if (!$metadatas) { - return false; - } - if (time() > $metadatas['expire']) { - return false; - } - $newMetadatas = array( - 'hash' => $metadatas['hash'], - 'mtime' => time(), - 'expire' => $metadatas['expire'] + $extraLifetime, - 'tags' => $metadatas['tags'] - ); - $res = $this->_setMetadatas($id, $newMetadatas); - if (!$res) { - return false; - } - return true; - } - - /** - * Return an associative array of capabilities (booleans) of the backend - * - * The array must include these keys : - * - automatic_cleaning (is automating cleaning necessary) - * - tags (are tags supported) - * - expired_read (is it possible to read expired cache records - * (for doNotTestCacheValidity option for example)) - * - priority does the backend deal with priority when saving - * - infinite_lifetime (is infinite lifetime can work with this backend) - * - get_list (is it possible to get the list of cache ids and the complete list of tags) - * - * @return array associative of with capabilities - */ - public function getCapabilities() - { - return array( - 'automatic_cleaning' => true, - 'tags' => true, - 'expired_read' => true, - 'priority' => false, - 'infinite_lifetime' => true, - 'get_list' => true - ); - } - - /** - * PUBLIC METHOD FOR UNIT TESTING ONLY ! - * - * Force a cache record to expire - * - * @param string $id cache id - */ - public function ___expire($id) - { - $metadatas = $this->_getMetadatas($id); - if ($metadatas) { - $metadatas['expire'] = 1; - $this->_setMetadatas($id, $metadatas); - } - } - - /** - * Get a metadatas record - * - * @param string $id Cache id - * @return array|false Associative array of metadatas - */ - protected function _getMetadatas($id) - { - if (isset($this->_metadatasArray[$id])) { - return $this->_metadatasArray[$id]; - } else { - $metadatas = $this->_loadMetadatas($id); - if (!$metadatas) { - return false; - } - $this->_setMetadatas($id, $metadatas, false); - return $metadatas; - } - } - - /** - * Set a metadatas record - * - * @param string $id Cache id - * @param array $metadatas Associative array of metadatas - * @param boolean $save optional pass false to disable saving to file - * @return boolean True if no problem - */ - protected function _setMetadatas($id, $metadatas, $save = true) - { - if (count($this->_metadatasArray) >= $this->_options['metadatas_array_max_size']) { - $n = (int) ($this->_options['metadatas_array_max_size'] / 10); - $this->_metadatasArray = array_slice($this->_metadatasArray, $n); - } - if ($save) { - $result = $this->_saveMetadatas($id, $metadatas); - if (!$result) { - return false; - } - } - $this->_metadatasArray[$id] = $metadatas; - return true; - } - - /** - * Drop a metadata record - * - * @param string $id Cache id - * @return boolean True if no problem - */ - protected function _delMetadatas($id) - { - if (isset($this->_metadatasArray[$id])) { - unset($this->_metadatasArray[$id]); - } - $file = $this->_metadatasFile($id); - return $this->_remove($file); - } - - /** - * Clear the metadatas array - * - * @return void - */ - protected function _cleanMetadatas() - { - $this->_metadatasArray = array(); - } - - /** - * Load metadatas from disk - * - * @param string $id Cache id - * @return array|false Metadatas associative array - */ - protected function _loadMetadatas($id) - { - $file = $this->_metadatasFile($id); - $result = $this->_fileGetContents($file); - if (!$result) { - return false; - } - $tmp = @unserialize($result); - return $tmp; - } - - /** - * Save metadatas to disk - * - * @param string $id Cache id - * @param array $metadatas Associative array - * @return boolean True if no problem - */ - protected function _saveMetadatas($id, $metadatas) - { - $file = $this->_metadatasFile($id); - $result = $this->_filePutContents($file, serialize($metadatas)); - if (!$result) { - return false; - } - return true; - } - - /** - * Make and return a file name (with path) for metadatas - * - * @param string $id Cache id - * @return string Metadatas file name (with path) - */ - protected function _metadatasFile($id) - { - $path = $this->_path($id); - $fileName = $this->_idToFileName('internal-metadatas---' . $id); - return $path . $fileName; - } - - /** - * Check if the given filename is a metadatas one - * - * @param string $fileName File name - * @return boolean True if it's a metadatas one - */ - protected function _isMetadatasFile($fileName) - { - $id = $this->_fileNameToId($fileName); - if (substr($id, 0, 21) == 'internal-metadatas---') { - return true; - } else { - return false; - } - } - - /** - * Remove a file - * - * If we can't remove the file (because of locks or any problem), we will touch - * the file to invalidate it - * - * @param string $file Complete file path - * @return boolean True if ok - */ - protected function _remove($file) - { - if (!is_file($file)) { - return false; - } - if (!@unlink($file)) { - # we can't remove the file (because of locks or any problem) - $this->_log("Zend_Cache_Backend_File::_remove() : we can't remove $file"); - return false; - } - return true; - } - - /** - * Clean some cache records (protected method used for recursive stuff) - * - * Available modes are : - * Zend_Cache::CLEANING_MODE_ALL (default) => remove all cache entries ($tags is not used) - * Zend_Cache::CLEANING_MODE_OLD => remove too old cache entries ($tags is not used) - * Zend_Cache::CLEANING_MODE_MATCHING_TAG => remove cache entries matching all given tags - * ($tags can be an array of strings or a single string) - * Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG => remove cache entries not {matching one of the given tags} - * ($tags can be an array of strings or a single string) - * Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG => remove cache entries matching any given tags - * ($tags can be an array of strings or a single string) - * - * @param string $dir Directory to clean - * @param string $mode Clean mode - * @param array $tags Array of tags - * @throws Zend_Cache_Exception - * @return boolean True if no problem - */ - protected function _clean($dir, $mode = Zend_Cache::CLEANING_MODE_ALL, $tags = array()) - { - if (!is_dir($dir)) { - return false; - } - $result = true; - $prefix = $this->_options['file_name_prefix']; - $glob = @glob($dir . $prefix . '--*'); - if ($glob === false) { - // On some systems it is impossible to distinguish between empty match and an error. - return true; - } - foreach ($glob as $file) { - if (is_file($file)) { - $fileName = basename($file); - if ($this->_isMetadatasFile($fileName)) { - // in CLEANING_MODE_ALL, we drop anything, even remainings old metadatas files - if ($mode != Zend_Cache::CLEANING_MODE_ALL) { - continue; - } - } - $id = $this->_fileNameToId($fileName); - $metadatas = $this->_getMetadatas($id); - if ($metadatas === FALSE) { - $metadatas = array('expire' => 1, 'tags' => array()); - } - switch ($mode) { - case Zend_Cache::CLEANING_MODE_ALL: - $res = $this->remove($id); - if (!$res) { - // in this case only, we accept a problem with the metadatas file drop - $res = $this->_remove($file); - } - $result = $result && $res; - break; - case Zend_Cache::CLEANING_MODE_OLD: - if (time() > $metadatas['expire']) { - $result = $this->remove($id) && $result; - } - break; - case Zend_Cache::CLEANING_MODE_MATCHING_TAG: - $matching = true; - foreach ($tags as $tag) { - if (!in_array($tag, $metadatas['tags'])) { - $matching = false; - break; - } - } - if ($matching) { - $result = $this->remove($id) && $result; - } - break; - case Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG: - $matching = false; - foreach ($tags as $tag) { - if (in_array($tag, $metadatas['tags'])) { - $matching = true; - break; - } - } - if (!$matching) { - $result = $this->remove($id) && $result; - } - break; - case Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG: - $matching = false; - foreach ($tags as $tag) { - if (in_array($tag, $metadatas['tags'])) { - $matching = true; - break; - } - } - if ($matching) { - $result = $this->remove($id) && $result; - } - break; - default: - Zend_Cache::throwException('Invalid mode for clean() method'); - break; - } - } - if ((is_dir($file)) and ($this->_options['hashed_directory_level']>0)) { - // Recursive call - $result = $this->_clean($file . DIRECTORY_SEPARATOR, $mode, $tags) && $result; - if ($mode == Zend_Cache::CLEANING_MODE_ALL) { - // we try to drop the structure too - @rmdir($file); - } - } - } - return $result; - } - - protected function _get($dir, $mode, $tags = array()) - { - if (!is_dir($dir)) { - return false; - } - $result = array(); - $prefix = $this->_options['file_name_prefix']; - $glob = @glob($dir . $prefix . '--*'); - if ($glob === false) { - // On some systems it is impossible to distinguish between empty match and an error. - return array(); - } - foreach ($glob as $file) { - if (is_file($file)) { - $fileName = basename($file); - $id = $this->_fileNameToId($fileName); - $metadatas = $this->_getMetadatas($id); - if ($metadatas === FALSE) { - continue; - } - if (time() > $metadatas['expire']) { - continue; - } - switch ($mode) { - case 'ids': - $result[] = $id; - break; - case 'tags': - $result = array_unique(array_merge($result, $metadatas['tags'])); - break; - case 'matching': - $matching = true; - foreach ($tags as $tag) { - if (!in_array($tag, $metadatas['tags'])) { - $matching = false; - break; - } - } - if ($matching) { - $result[] = $id; - } - break; - case 'notMatching': - $matching = false; - foreach ($tags as $tag) { - if (in_array($tag, $metadatas['tags'])) { - $matching = true; - break; - } - } - if (!$matching) { - $result[] = $id; - } - break; - case 'matchingAny': - $matching = false; - foreach ($tags as $tag) { - if (in_array($tag, $metadatas['tags'])) { - $matching = true; - break; - } - } - if ($matching) { - $result[] = $id; - } - break; - default: - Zend_Cache::throwException('Invalid mode for _get() method'); - break; - } - } - if ((is_dir($file)) and ($this->_options['hashed_directory_level']>0)) { - // Recursive call - $recursiveRs = $this->_get($file . DIRECTORY_SEPARATOR, $mode, $tags); - if ($recursiveRs === false) { - $this->_log('Zend_Cache_Backend_File::_get() / recursive call : can\'t list entries of "'.$file.'"'); - } else { - $result = array_unique(array_merge($result, $recursiveRs)); - } - } - } - return array_unique($result); - } - - /** - * Compute & return the expire time - * - * @return int expire time (unix timestamp) - */ - protected function _expireTime($lifetime) - { - if ($lifetime === null) { - return 9999999999; - } - return time() + $lifetime; - } - - /** - * Make a control key with the string containing datas - * - * @param string $data Data - * @param string $controlType Type of control 'md5', 'crc32' or 'strlen' - * @throws Zend_Cache_Exception - * @return string Control key - */ - protected function _hash($data, $controlType) - { - switch ($controlType) { - case 'md5': - return md5($data); - case 'crc32': - return crc32($data); - case 'strlen': - return strlen($data); - case 'adler32': - return hash('adler32', $data); - default: - Zend_Cache::throwException("Incorrect hash function : $controlType"); - } - } - - /** - * Transform a cache id into a file name and return it - * - * @param string $id Cache id - * @return string File name - */ - protected function _idToFileName($id) - { - $prefix = $this->_options['file_name_prefix']; - $result = $prefix . '---' . $id; - return $result; - } - - /** - * Make and return a file name (with path) - * - * @param string $id Cache id - * @return string File name (with path) - */ - protected function _file($id) - { - $path = $this->_path($id); - $fileName = $this->_idToFileName($id); - return $path . $fileName; - } - - /** - * Return the complete directory path of a filename (including hashedDirectoryStructure) - * - * @param string $id Cache id - * @param boolean $parts if true, returns array of directory parts instead of single string - * @return string Complete directory path - */ - protected function _path($id, $parts = false) - { - $partsArray = array(); - $root = $this->_options['cache_dir']; - $prefix = $this->_options['file_name_prefix']; - if ($this->_options['hashed_directory_level']>0) { - $hash = hash('adler32', $id); - for ($i=0 ; $i < $this->_options['hashed_directory_level'] ; $i++) { - $root = $root . $prefix . '--' . substr($hash, 0, $i + 1) . DIRECTORY_SEPARATOR; - $partsArray[] = $root; - } - } - if ($parts) { - return $partsArray; - } else { - return $root; - } - } - - /** - * Make the directory strucuture for the given id - * - * @param string $id cache id - * @return boolean true - */ - protected function _recursiveMkdirAndChmod($id) - { - if ($this->_options['hashed_directory_level'] <=0) { - return true; - } - $partsArray = $this->_path($id, true); - foreach ($partsArray as $part) { - if (!is_dir($part)) { - @mkdir($part, $this->_options['hashed_directory_perm']); - @chmod($part, $this->_options['hashed_directory_perm']); // see #ZF-320 (this line is required in some configurations) - } - } - return true; - } - - /** - * Test if the given cache id is available (and still valid as a cache record) - * - * @param string $id Cache id - * @param boolean $doNotTestCacheValidity If set to true, the cache validity won't be tested - * @return boolean|mixed false (a cache is not available) or "last modified" timestamp (int) of the available cache record - */ - protected function _test($id, $doNotTestCacheValidity) - { - $metadatas = $this->_getMetadatas($id); - if (!$metadatas) { - return false; - } - if ($doNotTestCacheValidity || (time() <= $metadatas['expire'])) { - return $metadatas['mtime']; - } - return false; - } - - /** - * Return the file content of the given file - * - * @param string $file File complete path - * @return string File content (or false if problem) - */ - protected function _fileGetContents($file) - { - $result = false; - if (!is_file($file)) { - return false; - } - $f = @fopen($file, 'rb'); - if ($f) { - if ($this->_options['file_locking']) @flock($f, LOCK_SH); - $result = stream_get_contents($f); - if ($this->_options['file_locking']) @flock($f, LOCK_UN); - @fclose($f); - } - return $result; - } - - /** - * Put the given string into the given file - * - * @param string $file File complete path - * @param string $string String to put in file - * @return boolean true if no problem - */ - protected function _filePutContents($file, $string) - { - $result = false; - $f = @fopen($file, 'ab+'); - if ($f) { - if ($this->_options['file_locking']) @flock($f, LOCK_EX); - fseek($f, 0); - ftruncate($f, 0); - $tmp = @fwrite($f, $string); - if (!($tmp === FALSE)) { - $result = true; - } - @fclose($f); - } - @chmod($file, $this->_options['cache_file_perm']); - return $result; - } - - /** - * Transform a file name into cache id and return it - * - * @param string $fileName File name - * @return string Cache id - */ - protected function _fileNameToId($fileName) - { - $prefix = $this->_options['file_name_prefix']; - return preg_replace('~^' . $prefix . '---(.*)$~', '$1', $fileName); - } - -} diff --git a/library/Zend/Cache/Backend/Interface.php b/library/Zend/Cache/Backend/Interface.php deleted file mode 100644 index 3f44e2e1..00000000 --- a/library/Zend/Cache/Backend/Interface.php +++ /dev/null @@ -1,99 +0,0 @@ - infinite lifetime) - * @return boolean true if no problem - */ - public function save($data, $id, $tags = array(), $specificLifetime = false); - - /** - * Remove a cache record - * - * @param string $id Cache id - * @return boolean True if no problem - */ - public function remove($id); - - /** - * Clean some cache records - * - * Available modes are : - * Zend_Cache::CLEANING_MODE_ALL (default) => remove all cache entries ($tags is not used) - * Zend_Cache::CLEANING_MODE_OLD => remove too old cache entries ($tags is not used) - * Zend_Cache::CLEANING_MODE_MATCHING_TAG => remove cache entries matching all given tags - * ($tags can be an array of strings or a single string) - * Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG => remove cache entries not {matching one of the given tags} - * ($tags can be an array of strings or a single string) - * Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG => remove cache entries matching any given tags - * ($tags can be an array of strings or a single string) - * - * @param string $mode Clean mode - * @param array $tags Array of tags - * @return boolean true if no problem - */ - public function clean($mode = Zend_Cache::CLEANING_MODE_ALL, $tags = array()); - -} diff --git a/library/Zend/Cache/Backend/Libmemcached.php b/library/Zend/Cache/Backend/Libmemcached.php deleted file mode 100644 index cc20c10b..00000000 --- a/library/Zend/Cache/Backend/Libmemcached.php +++ /dev/null @@ -1,484 +0,0 @@ - (array) servers : - * an array of memcached server ; each memcached server is described by an associative array : - * 'host' => (string) : the name of the memcached server - * 'port' => (int) : the port of the memcached server - * 'weight' => (int) : number of buckets to create for this server which in turn control its - * probability of it being selected. The probability is relative to the total - * weight of all servers. - * =====> (array) client : - * an array of memcached client options ; the memcached client is described by an associative array : - * @see http://php.net/manual/memcached.constants.php - * - The option name can be the name of the constant without the prefix 'OPT_' - * or the integer value of this option constant - * - * @var array available options - */ - protected $_options = array( - 'servers' => array(array( - 'host' => self::DEFAULT_HOST, - 'port' => self::DEFAULT_PORT, - 'weight' => self::DEFAULT_WEIGHT, - )), - 'client' => array() - ); - - /** - * Memcached object - * - * @var mixed memcached object - */ - protected $_memcache = null; - - /** - * Constructor - * - * @param array $options associative array of options - * @throws Zend_Cache_Exception - * @return void - */ - public function __construct(array $options = array()) - { - if (!extension_loaded('memcached')) { - Zend_Cache::throwException('The memcached extension must be loaded for using this backend !'); - } - - // override default client options - $this->_options['client'] = array( - Memcached::OPT_DISTRIBUTION => Memcached::DISTRIBUTION_CONSISTENT, - Memcached::OPT_HASH => Memcached::HASH_MD5, - Memcached::OPT_LIBKETAMA_COMPATIBLE => true, - ); - - parent::__construct($options); - - if (isset($this->_options['servers'])) { - $value = $this->_options['servers']; - if (isset($value['host'])) { - // in this case, $value seems to be a simple associative array (one server only) - $value = array(0 => $value); // let's transform it into a classical array of associative arrays - } - $this->setOption('servers', $value); - } - $this->_memcache = new Memcached; - - // setup memcached client options - foreach ($this->_options['client'] as $name => $value) { - $optId = null; - if (is_int($name)) { - $optId = $name; - } else { - $optConst = 'Memcached::OPT_' . strtoupper($name); - if (defined($optConst)) { - $optId = constant($optConst); - } else { - $this->_log("Unknown memcached client option '{$name}' ({$optConst})"); - } - } - if ($optId) { - if (!$this->_memcache->setOption($optId, $value)) { - $this->_log("Setting memcached client option '{$optId}' failed"); - } - } - } - - // setup memcached servers - $servers = array(); - foreach ($this->_options['servers'] as $server) { - if (!array_key_exists('port', $server)) { - $server['port'] = self::DEFAULT_PORT; - } - if (!array_key_exists('weight', $server)) { - $server['weight'] = self::DEFAULT_WEIGHT; - } - - $servers[] = array($server['host'], $server['port'], $server['weight']); - } - $this->_memcache->addServers($servers); - } - - /** - * Test if a cache is available for the given id and (if yes) return it (false else) - * - * @param string $id Cache id - * @param boolean $doNotTestCacheValidity If set to true, the cache validity won't be tested - * @return string|false cached datas - */ - public function load($id, $doNotTestCacheValidity = false) - { - $tmp = $this->_memcache->get($id); - if (isset($tmp[0])) { - return $tmp[0]; - } - return false; - } - - /** - * Test if a cache is available or not (for the given id) - * - * @param string $id Cache id - * @return int|false (a cache is not available) or "last modified" timestamp (int) of the available cache record - */ - public function test($id) - { - $tmp = $this->_memcache->get($id); - if (isset($tmp[0], $tmp[1])) { - return (int)$tmp[1]; - } - return false; - } - - /** - * Save some string datas into a cache record - * - * Note : $data is always "string" (serialization is done by the - * core not by the backend) - * - * @param string $data Datas to cache - * @param string $id Cache id - * @param array $tags Array of strings, the cache record will be tagged by each string entry - * @param int $specificLifetime If != false, set a specific lifetime for this cache record (null => infinite lifetime) - * @return boolean True if no problem - */ - public function save($data, $id, $tags = array(), $specificLifetime = false) - { - $lifetime = $this->getLifetime($specificLifetime); - - // ZF-8856: using set because add needs a second request if item already exists - $result = @$this->_memcache->set($id, array($data, time(), $lifetime), $lifetime); - if ($result === false) { - $rsCode = $this->_memcache->getResultCode(); - $rsMsg = $this->_memcache->getResultMessage(); - $this->_log("Memcached::set() failed: [{$rsCode}] {$rsMsg}"); - } - - if (count($tags) > 0) { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_LIBMEMCACHED_BACKEND); - } - - return $result; - } - - /** - * Remove a cache record - * - * @param string $id Cache id - * @return boolean True if no problem - */ - public function remove($id) - { - return $this->_memcache->delete($id); - } - - /** - * Clean some cache records - * - * Available modes are : - * 'all' (default) => remove all cache entries ($tags is not used) - * 'old' => unsupported - * 'matchingTag' => unsupported - * 'notMatchingTag' => unsupported - * 'matchingAnyTag' => unsupported - * - * @param string $mode Clean mode - * @param array $tags Array of tags - * @throws Zend_Cache_Exception - * @return boolean True if no problem - */ - public function clean($mode = Zend_Cache::CLEANING_MODE_ALL, $tags = array()) - { - switch ($mode) { - case Zend_Cache::CLEANING_MODE_ALL: - return $this->_memcache->flush(); - break; - case Zend_Cache::CLEANING_MODE_OLD: - $this->_log("Zend_Cache_Backend_Libmemcached::clean() : CLEANING_MODE_OLD is unsupported by the Libmemcached backend"); - break; - case Zend_Cache::CLEANING_MODE_MATCHING_TAG: - case Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG: - case Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG: - $this->_log(self::TAGS_UNSUPPORTED_BY_CLEAN_OF_LIBMEMCACHED_BACKEND); - break; - default: - Zend_Cache::throwException('Invalid mode for clean() method'); - break; - } - } - - /** - * Return true if the automatic cleaning is available for the backend - * - * @return boolean - */ - public function isAutomaticCleaningAvailable() - { - return false; - } - - /** - * Set the frontend directives - * - * @param array $directives Assoc of directives - * @throws Zend_Cache_Exception - * @return void - */ - public function setDirectives($directives) - { - parent::setDirectives($directives); - $lifetime = $this->getLifetime(false); - if ($lifetime > 2592000) { - // #ZF-3490 : For the memcached backend, there is a lifetime limit of 30 days (2592000 seconds) - $this->_log('memcached backend has a limit of 30 days (2592000 seconds) for the lifetime'); - } - if ($lifetime === null) { - // #ZF-4614 : we tranform null to zero to get the maximal lifetime - parent::setDirectives(array('lifetime' => 0)); - } - } - - /** - * Return an array of stored cache ids - * - * @return array array of stored cache ids (string) - */ - public function getIds() - { - $this->_log("Zend_Cache_Backend_Libmemcached::save() : getting the list of cache ids is unsupported by the Libmemcached backend"); - return array(); - } - - /** - * Return an array of stored tags - * - * @return array array of stored tags (string) - */ - public function getTags() - { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_LIBMEMCACHED_BACKEND); - return array(); - } - - /** - * Return an array of stored cache ids which match given tags - * - * In case of multiple tags, a logical AND is made between tags - * - * @param array $tags array of tags - * @return array array of matching cache ids (string) - */ - public function getIdsMatchingTags($tags = array()) - { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_LIBMEMCACHED_BACKEND); - return array(); - } - - /** - * Return an array of stored cache ids which don't match given tags - * - * In case of multiple tags, a logical OR is made between tags - * - * @param array $tags array of tags - * @return array array of not matching cache ids (string) - */ - public function getIdsNotMatchingTags($tags = array()) - { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_LIBMEMCACHED_BACKEND); - return array(); - } - - /** - * Return an array of stored cache ids which match any given tags - * - * In case of multiple tags, a logical AND is made between tags - * - * @param array $tags array of tags - * @return array array of any matching cache ids (string) - */ - public function getIdsMatchingAnyTags($tags = array()) - { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_LIBMEMCACHED_BACKEND); - return array(); - } - - /** - * Return the filling percentage of the backend storage - * - * @throws Zend_Cache_Exception - * @return int integer between 0 and 100 - */ - public function getFillingPercentage() - { - $mems = $this->_memcache->getStats(); - if ($mems === false) { - return 0; - } - - $memSize = null; - $memUsed = null; - foreach ($mems as $key => $mem) { - if ($mem === false) { - $this->_log('can\'t get stat from ' . $key); - continue; - } - - $eachSize = $mem['limit_maxbytes']; - $eachUsed = $mem['bytes']; - if ($eachUsed > $eachSize) { - $eachUsed = $eachSize; - } - - $memSize += $eachSize; - $memUsed += $eachUsed; - } - - if ($memSize === null || $memUsed === null) { - Zend_Cache::throwException('Can\'t get filling percentage'); - } - - return ((int) (100. * ($memUsed / $memSize))); - } - - /** - * Return an array of metadatas for the given cache id - * - * The array must include these keys : - * - expire : the expire timestamp - * - tags : a string array of tags - * - mtime : timestamp of last modification time - * - * @param string $id cache id - * @return array array of metadatas (false if the cache id is not found) - */ - public function getMetadatas($id) - { - $tmp = $this->_memcache->get($id); - if (isset($tmp[0], $tmp[1], $tmp[2])) { - $data = $tmp[0]; - $mtime = $tmp[1]; - $lifetime = $tmp[2]; - return array( - 'expire' => $mtime + $lifetime, - 'tags' => array(), - 'mtime' => $mtime - ); - } - - return false; - } - - /** - * Give (if possible) an extra lifetime to the given cache id - * - * @param string $id cache id - * @param int $extraLifetime - * @return boolean true if ok - */ - public function touch($id, $extraLifetime) - { - $tmp = $this->_memcache->get($id); - if (isset($tmp[0], $tmp[1], $tmp[2])) { - $data = $tmp[0]; - $mtime = $tmp[1]; - $lifetime = $tmp[2]; - $newLifetime = $lifetime - (time() - $mtime) + $extraLifetime; - if ($newLifetime <=0) { - return false; - } - // #ZF-5702 : we try replace() first becase set() seems to be slower - if (!($result = $this->_memcache->replace($id, array($data, time(), $newLifetime), $newLifetime))) { - $result = $this->_memcache->set($id, array($data, time(), $newLifetime), $newLifetime); - if ($result === false) { - $rsCode = $this->_memcache->getResultCode(); - $rsMsg = $this->_memcache->getResultMessage(); - $this->_log("Memcached::set() failed: [{$rsCode}] {$rsMsg}"); - } - } - return $result; - } - return false; - } - - /** - * Return an associative array of capabilities (booleans) of the backend - * - * The array must include these keys : - * - automatic_cleaning (is automating cleaning necessary) - * - tags (are tags supported) - * - expired_read (is it possible to read expired cache records - * (for doNotTestCacheValidity option for example)) - * - priority does the backend deal with priority when saving - * - infinite_lifetime (is infinite lifetime can work with this backend) - * - get_list (is it possible to get the list of cache ids and the complete list of tags) - * - * @return array associative of with capabilities - */ - public function getCapabilities() - { - return array( - 'automatic_cleaning' => false, - 'tags' => false, - 'expired_read' => false, - 'priority' => false, - 'infinite_lifetime' => false, - 'get_list' => false - ); - } - -} diff --git a/library/Zend/Cache/Backend/Memcached.php b/library/Zend/Cache/Backend/Memcached.php deleted file mode 100644 index 893a987e..00000000 --- a/library/Zend/Cache/Backend/Memcached.php +++ /dev/null @@ -1,504 +0,0 @@ - (array) servers : - * an array of memcached server ; each memcached server is described by an associative array : - * 'host' => (string) : the name of the memcached server - * 'port' => (int) : the port of the memcached server - * 'persistent' => (bool) : use or not persistent connections to this memcached server - * 'weight' => (int) : number of buckets to create for this server which in turn control its - * probability of it being selected. The probability is relative to the total - * weight of all servers. - * 'timeout' => (int) : value in seconds which will be used for connecting to the daemon. Think twice - * before changing the default value of 1 second - you can lose all the - * advantages of caching if your connection is too slow. - * 'retry_interval' => (int) : controls how often a failed server will be retried, the default value - * is 15 seconds. Setting this parameter to -1 disables automatic retry. - * 'status' => (bool) : controls if the server should be flagged as online. - * 'failure_callback' => (callback) : Allows the user to specify a callback function to run upon - * encountering an error. The callback is run before failover - * is attempted. The function takes two parameters, the hostname - * and port of the failed server. - * - * =====> (boolean) compression : - * true if you want to use on-the-fly compression - * - * =====> (boolean) compatibility : - * true if you use old memcache server or extension - * - * @var array available options - */ - protected $_options = array( - 'servers' => array(array( - 'host' => self::DEFAULT_HOST, - 'port' => self::DEFAULT_PORT, - 'persistent' => self::DEFAULT_PERSISTENT, - 'weight' => self::DEFAULT_WEIGHT, - 'timeout' => self::DEFAULT_TIMEOUT, - 'retry_interval' => self::DEFAULT_RETRY_INTERVAL, - 'status' => self::DEFAULT_STATUS, - 'failure_callback' => self::DEFAULT_FAILURE_CALLBACK - )), - 'compression' => false, - 'compatibility' => false, - ); - - /** - * Memcache object - * - * @var mixed memcache object - */ - protected $_memcache = null; - - /** - * Constructor - * - * @param array $options associative array of options - * @throws Zend_Cache_Exception - * @return void - */ - public function __construct(array $options = array()) - { - if (!extension_loaded('memcache')) { - Zend_Cache::throwException('The memcache extension must be loaded for using this backend !'); - } - parent::__construct($options); - if (isset($this->_options['servers'])) { - $value= $this->_options['servers']; - if (isset($value['host'])) { - // in this case, $value seems to be a simple associative array (one server only) - $value = array(0 => $value); // let's transform it into a classical array of associative arrays - } - $this->setOption('servers', $value); - } - $this->_memcache = new Memcache; - foreach ($this->_options['servers'] as $server) { - if (!array_key_exists('port', $server)) { - $server['port'] = self::DEFAULT_PORT; - } - if (!array_key_exists('persistent', $server)) { - $server['persistent'] = self::DEFAULT_PERSISTENT; - } - if (!array_key_exists('weight', $server)) { - $server['weight'] = self::DEFAULT_WEIGHT; - } - if (!array_key_exists('timeout', $server)) { - $server['timeout'] = self::DEFAULT_TIMEOUT; - } - if (!array_key_exists('retry_interval', $server)) { - $server['retry_interval'] = self::DEFAULT_RETRY_INTERVAL; - } - if (!array_key_exists('status', $server)) { - $server['status'] = self::DEFAULT_STATUS; - } - if (!array_key_exists('failure_callback', $server)) { - $server['failure_callback'] = self::DEFAULT_FAILURE_CALLBACK; - } - if ($this->_options['compatibility']) { - // No status for compatibility mode (#ZF-5887) - $this->_memcache->addServer($server['host'], $server['port'], $server['persistent'], - $server['weight'], $server['timeout'], - $server['retry_interval']); - } else { - $this->_memcache->addServer($server['host'], $server['port'], $server['persistent'], - $server['weight'], $server['timeout'], - $server['retry_interval'], - $server['status'], $server['failure_callback']); - } - } - } - - /** - * Test if a cache is available for the given id and (if yes) return it (false else) - * - * @param string $id Cache id - * @param boolean $doNotTestCacheValidity If set to true, the cache validity won't be tested - * @return string|false cached datas - */ - public function load($id, $doNotTestCacheValidity = false) - { - $tmp = $this->_memcache->get($id); - if (is_array($tmp) && isset($tmp[0])) { - return $tmp[0]; - } - return false; - } - - /** - * Test if a cache is available or not (for the given id) - * - * @param string $id Cache id - * @return mixed|false (a cache is not available) or "last modified" timestamp (int) of the available cache record - */ - public function test($id) - { - $tmp = $this->_memcache->get($id); - if (is_array($tmp)) { - return $tmp[1]; - } - return false; - } - - /** - * Save some string datas into a cache record - * - * Note : $data is always "string" (serialization is done by the - * core not by the backend) - * - * @param string $data Datas to cache - * @param string $id Cache id - * @param array $tags Array of strings, the cache record will be tagged by each string entry - * @param int $specificLifetime If != false, set a specific lifetime for this cache record (null => infinite lifetime) - * @return boolean True if no problem - */ - public function save($data, $id, $tags = array(), $specificLifetime = false) - { - $lifetime = $this->getLifetime($specificLifetime); - if ($this->_options['compression']) { - $flag = MEMCACHE_COMPRESSED; - } else { - $flag = 0; - } - - // ZF-8856: using set because add needs a second request if item already exists - $result = @$this->_memcache->set($id, array($data, time(), $lifetime), $flag, $lifetime); - - if (count($tags) > 0) { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_MEMCACHED_BACKEND); - } - - return $result; - } - - /** - * Remove a cache record - * - * @param string $id Cache id - * @return boolean True if no problem - */ - public function remove($id) - { - return $this->_memcache->delete($id, 0); - } - - /** - * Clean some cache records - * - * Available modes are : - * 'all' (default) => remove all cache entries ($tags is not used) - * 'old' => unsupported - * 'matchingTag' => unsupported - * 'notMatchingTag' => unsupported - * 'matchingAnyTag' => unsupported - * - * @param string $mode Clean mode - * @param array $tags Array of tags - * @throws Zend_Cache_Exception - * @return boolean True if no problem - */ - public function clean($mode = Zend_Cache::CLEANING_MODE_ALL, $tags = array()) - { - switch ($mode) { - case Zend_Cache::CLEANING_MODE_ALL: - return $this->_memcache->flush(); - break; - case Zend_Cache::CLEANING_MODE_OLD: - $this->_log("Zend_Cache_Backend_Memcached::clean() : CLEANING_MODE_OLD is unsupported by the Memcached backend"); - break; - case Zend_Cache::CLEANING_MODE_MATCHING_TAG: - case Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG: - case Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG: - $this->_log(self::TAGS_UNSUPPORTED_BY_CLEAN_OF_MEMCACHED_BACKEND); - break; - default: - Zend_Cache::throwException('Invalid mode for clean() method'); - break; - } - } - - /** - * Return true if the automatic cleaning is available for the backend - * - * @return boolean - */ - public function isAutomaticCleaningAvailable() - { - return false; - } - - /** - * Set the frontend directives - * - * @param array $directives Assoc of directives - * @throws Zend_Cache_Exception - * @return void - */ - public function setDirectives($directives) - { - parent::setDirectives($directives); - $lifetime = $this->getLifetime(false); - if ($lifetime > 2592000) { - // #ZF-3490 : For the memcached backend, there is a lifetime limit of 30 days (2592000 seconds) - $this->_log('memcached backend has a limit of 30 days (2592000 seconds) for the lifetime'); - } - if ($lifetime === null) { - // #ZF-4614 : we tranform null to zero to get the maximal lifetime - parent::setDirectives(array('lifetime' => 0)); - } - } - - /** - * Return an array of stored cache ids - * - * @return array array of stored cache ids (string) - */ - public function getIds() - { - $this->_log("Zend_Cache_Backend_Memcached::save() : getting the list of cache ids is unsupported by the Memcache backend"); - return array(); - } - - /** - * Return an array of stored tags - * - * @return array array of stored tags (string) - */ - public function getTags() - { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_MEMCACHED_BACKEND); - return array(); - } - - /** - * Return an array of stored cache ids which match given tags - * - * In case of multiple tags, a logical AND is made between tags - * - * @param array $tags array of tags - * @return array array of matching cache ids (string) - */ - public function getIdsMatchingTags($tags = array()) - { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_MEMCACHED_BACKEND); - return array(); - } - - /** - * Return an array of stored cache ids which don't match given tags - * - * In case of multiple tags, a logical OR is made between tags - * - * @param array $tags array of tags - * @return array array of not matching cache ids (string) - */ - public function getIdsNotMatchingTags($tags = array()) - { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_MEMCACHED_BACKEND); - return array(); - } - - /** - * Return an array of stored cache ids which match any given tags - * - * In case of multiple tags, a logical AND is made between tags - * - * @param array $tags array of tags - * @return array array of any matching cache ids (string) - */ - public function getIdsMatchingAnyTags($tags = array()) - { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_MEMCACHED_BACKEND); - return array(); - } - - /** - * Return the filling percentage of the backend storage - * - * @throws Zend_Cache_Exception - * @return int integer between 0 and 100 - */ - public function getFillingPercentage() - { - $mems = $this->_memcache->getExtendedStats(); - - $memSize = null; - $memUsed = null; - foreach ($mems as $key => $mem) { - if ($mem === false) { - $this->_log('can\'t get stat from ' . $key); - continue; - } - - $eachSize = $mem['limit_maxbytes']; - $eachUsed = $mem['bytes']; - if ($eachUsed > $eachSize) { - $eachUsed = $eachSize; - } - - $memSize += $eachSize; - $memUsed += $eachUsed; - } - - if ($memSize === null || $memUsed === null) { - Zend_Cache::throwException('Can\'t get filling percentage'); - } - - return ((int) (100. * ($memUsed / $memSize))); - } - - /** - * Return an array of metadatas for the given cache id - * - * The array must include these keys : - * - expire : the expire timestamp - * - tags : a string array of tags - * - mtime : timestamp of last modification time - * - * @param string $id cache id - * @return array array of metadatas (false if the cache id is not found) - */ - public function getMetadatas($id) - { - $tmp = $this->_memcache->get($id); - if (is_array($tmp)) { - $data = $tmp[0]; - $mtime = $tmp[1]; - if (!isset($tmp[2])) { - // because this record is only with 1.7 release - // if old cache records are still there... - return false; - } - $lifetime = $tmp[2]; - return array( - 'expire' => $mtime + $lifetime, - 'tags' => array(), - 'mtime' => $mtime - ); - } - return false; - } - - /** - * Give (if possible) an extra lifetime to the given cache id - * - * @param string $id cache id - * @param int $extraLifetime - * @return boolean true if ok - */ - public function touch($id, $extraLifetime) - { - if ($this->_options['compression']) { - $flag = MEMCACHE_COMPRESSED; - } else { - $flag = 0; - } - $tmp = $this->_memcache->get($id); - if (is_array($tmp)) { - $data = $tmp[0]; - $mtime = $tmp[1]; - if (!isset($tmp[2])) { - // because this record is only with 1.7 release - // if old cache records are still there... - return false; - } - $lifetime = $tmp[2]; - $newLifetime = $lifetime - (time() - $mtime) + $extraLifetime; - if ($newLifetime <=0) { - return false; - } - // #ZF-5702 : we try replace() first becase set() seems to be slower - if (!($result = $this->_memcache->replace($id, array($data, time(), $newLifetime), $flag, $newLifetime))) { - $result = $this->_memcache->set($id, array($data, time(), $newLifetime), $flag, $newLifetime); - } - return $result; - } - return false; - } - - /** - * Return an associative array of capabilities (booleans) of the backend - * - * The array must include these keys : - * - automatic_cleaning (is automating cleaning necessary) - * - tags (are tags supported) - * - expired_read (is it possible to read expired cache records - * (for doNotTestCacheValidity option for example)) - * - priority does the backend deal with priority when saving - * - infinite_lifetime (is infinite lifetime can work with this backend) - * - get_list (is it possible to get the list of cache ids and the complete list of tags) - * - * @return array associative of with capabilities - */ - public function getCapabilities() - { - return array( - 'automatic_cleaning' => false, - 'tags' => false, - 'expired_read' => false, - 'priority' => false, - 'infinite_lifetime' => false, - 'get_list' => false - ); - } - -} diff --git a/library/Zend/Cache/Backend/Sqlite.php b/library/Zend/Cache/Backend/Sqlite.php deleted file mode 100644 index 54e1597b..00000000 --- a/library/Zend/Cache/Backend/Sqlite.php +++ /dev/null @@ -1,678 +0,0 @@ - (string) cache_db_complete_path : - * - the complete path (filename included) of the SQLITE database - * - * ====> (int) automatic_vacuum_factor : - * - Disable / Tune the automatic vacuum process - * - The automatic vacuum process defragment the database file (and make it smaller) - * when a clean() or delete() is called - * 0 => no automatic vacuum - * 1 => systematic vacuum (when delete() or clean() methods are called) - * x (integer) > 1 => automatic vacuum randomly 1 times on x clean() or delete() - * - * @var array Available options - */ - protected $_options = array( - 'cache_db_complete_path' => null, - 'automatic_vacuum_factor' => 10 - ); - - /** - * DB ressource - * - * @var mixed $_db - */ - private $_db = null; - - /** - * Boolean to store if the structure has benn checked or not - * - * @var boolean $_structureChecked - */ - private $_structureChecked = false; - - /** - * Constructor - * - * @param array $options Associative array of options - * @throws Zend_cache_Exception - * @return void - */ - public function __construct(array $options = array()) - { - parent::__construct($options); - if ($this->_options['cache_db_complete_path'] === null) { - Zend_Cache::throwException('cache_db_complete_path option has to set'); - } - if (!extension_loaded('sqlite')) { - Zend_Cache::throwException("Cannot use SQLite storage because the 'sqlite' extension is not loaded in the current PHP environment"); - } - $this->_getConnection(); - } - - /** - * Destructor - * - * @return void - */ - public function __destruct() - { - @sqlite_close($this->_getConnection()); - } - - /** - * Test if a cache is available for the given id and (if yes) return it (false else) - * - * @param string $id Cache id - * @param boolean $doNotTestCacheValidity If set to true, the cache validity won't be tested - * @return string|false Cached datas - */ - public function load($id, $doNotTestCacheValidity = false) - { - $this->_checkAndBuildStructure(); - $sql = "SELECT content FROM cache WHERE id='$id'"; - if (!$doNotTestCacheValidity) { - $sql = $sql . " AND (expire=0 OR expire>" . time() . ')'; - } - $result = $this->_query($sql); - $row = @sqlite_fetch_array($result); - if ($row) { - return $row['content']; - } - return false; - } - - /** - * Test if a cache is available or not (for the given id) - * - * @param string $id Cache id - * @return mixed|false (a cache is not available) or "last modified" timestamp (int) of the available cache record - */ - public function test($id) - { - $this->_checkAndBuildStructure(); - $sql = "SELECT lastModified FROM cache WHERE id='$id' AND (expire=0 OR expire>" . time() . ')'; - $result = $this->_query($sql); - $row = @sqlite_fetch_array($result); - if ($row) { - return ((int) $row['lastModified']); - } - return false; - } - - /** - * Save some string datas into a cache record - * - * Note : $data is always "string" (serialization is done by the - * core not by the backend) - * - * @param string $data Datas to cache - * @param string $id Cache id - * @param array $tags Array of strings, the cache record will be tagged by each string entry - * @param int $specificLifetime If != false, set a specific lifetime for this cache record (null => infinite lifetime) - * @throws Zend_Cache_Exception - * @return boolean True if no problem - */ - public function save($data, $id, $tags = array(), $specificLifetime = false) - { - $this->_checkAndBuildStructure(); - $lifetime = $this->getLifetime($specificLifetime); - $data = @sqlite_escape_string($data); - $mktime = time(); - if ($lifetime === null) { - $expire = 0; - } else { - $expire = $mktime + $lifetime; - } - $this->_query("DELETE FROM cache WHERE id='$id'"); - $sql = "INSERT INTO cache (id, content, lastModified, expire) VALUES ('$id', '$data', $mktime, $expire)"; - $res = $this->_query($sql); - if (!$res) { - $this->_log("Zend_Cache_Backend_Sqlite::save() : impossible to store the cache id=$id"); - return false; - } - $res = true; - foreach ($tags as $tag) { - $res = $this->_registerTag($id, $tag) && $res; - } - return $res; - } - - /** - * Remove a cache record - * - * @param string $id Cache id - * @return boolean True if no problem - */ - public function remove($id) - { - $this->_checkAndBuildStructure(); - $res = $this->_query("SELECT COUNT(*) AS nbr FROM cache WHERE id='$id'"); - $result1 = @sqlite_fetch_single($res); - $result2 = $this->_query("DELETE FROM cache WHERE id='$id'"); - $result3 = $this->_query("DELETE FROM tag WHERE id='$id'"); - $this->_automaticVacuum(); - return ($result1 && $result2 && $result3); - } - - /** - * Clean some cache records - * - * Available modes are : - * Zend_Cache::CLEANING_MODE_ALL (default) => remove all cache entries ($tags is not used) - * Zend_Cache::CLEANING_MODE_OLD => remove too old cache entries ($tags is not used) - * Zend_Cache::CLEANING_MODE_MATCHING_TAG => remove cache entries matching all given tags - * ($tags can be an array of strings or a single string) - * Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG => remove cache entries not {matching one of the given tags} - * ($tags can be an array of strings or a single string) - * Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG => remove cache entries matching any given tags - * ($tags can be an array of strings or a single string) - * - * @param string $mode Clean mode - * @param array $tags Array of tags - * @return boolean True if no problem - */ - public function clean($mode = Zend_Cache::CLEANING_MODE_ALL, $tags = array()) - { - $this->_checkAndBuildStructure(); - $return = $this->_clean($mode, $tags); - $this->_automaticVacuum(); - return $return; - } - - /** - * Return an array of stored cache ids - * - * @return array array of stored cache ids (string) - */ - public function getIds() - { - $this->_checkAndBuildStructure(); - $res = $this->_query("SELECT id FROM cache WHERE (expire=0 OR expire>" . time() . ")"); - $result = array(); - while ($id = @sqlite_fetch_single($res)) { - $result[] = $id; - } - return $result; - } - - /** - * Return an array of stored tags - * - * @return array array of stored tags (string) - */ - public function getTags() - { - $this->_checkAndBuildStructure(); - $res = $this->_query("SELECT DISTINCT(name) AS name FROM tag"); - $result = array(); - while ($id = @sqlite_fetch_single($res)) { - $result[] = $id; - } - return $result; - } - - /** - * Return an array of stored cache ids which match given tags - * - * In case of multiple tags, a logical AND is made between tags - * - * @param array $tags array of tags - * @return array array of matching cache ids (string) - */ - public function getIdsMatchingTags($tags = array()) - { - $first = true; - $ids = array(); - foreach ($tags as $tag) { - $res = $this->_query("SELECT DISTINCT(id) AS id FROM tag WHERE name='$tag'"); - if (!$res) { - return array(); - } - $rows = @sqlite_fetch_all($res, SQLITE_ASSOC); - $ids2 = array(); - foreach ($rows as $row) { - $ids2[] = $row['id']; - } - if ($first) { - $ids = $ids2; - $first = false; - } else { - $ids = array_intersect($ids, $ids2); - } - } - $result = array(); - foreach ($ids as $id) { - $result[] = $id; - } - return $result; - } - - /** - * Return an array of stored cache ids which don't match given tags - * - * In case of multiple tags, a logical OR is made between tags - * - * @param array $tags array of tags - * @return array array of not matching cache ids (string) - */ - public function getIdsNotMatchingTags($tags = array()) - { - $res = $this->_query("SELECT id FROM cache"); - $rows = @sqlite_fetch_all($res, SQLITE_ASSOC); - $result = array(); - foreach ($rows as $row) { - $id = $row['id']; - $matching = false; - foreach ($tags as $tag) { - $res = $this->_query("SELECT COUNT(*) AS nbr FROM tag WHERE name='$tag' AND id='$id'"); - if (!$res) { - return array(); - } - $nbr = (int) @sqlite_fetch_single($res); - if ($nbr > 0) { - $matching = true; - } - } - if (!$matching) { - $result[] = $id; - } - } - return $result; - } - - /** - * Return an array of stored cache ids which match any given tags - * - * In case of multiple tags, a logical AND is made between tags - * - * @param array $tags array of tags - * @return array array of any matching cache ids (string) - */ - public function getIdsMatchingAnyTags($tags = array()) - { - $first = true; - $ids = array(); - foreach ($tags as $tag) { - $res = $this->_query("SELECT DISTINCT(id) AS id FROM tag WHERE name='$tag'"); - if (!$res) { - return array(); - } - $rows = @sqlite_fetch_all($res, SQLITE_ASSOC); - $ids2 = array(); - foreach ($rows as $row) { - $ids2[] = $row['id']; - } - if ($first) { - $ids = $ids2; - $first = false; - } else { - $ids = array_merge($ids, $ids2); - } - } - $result = array(); - foreach ($ids as $id) { - $result[] = $id; - } - return $result; - } - - /** - * Return the filling percentage of the backend storage - * - * @throws Zend_Cache_Exception - * @return int integer between 0 and 100 - */ - public function getFillingPercentage() - { - $dir = dirname($this->_options['cache_db_complete_path']); - $free = disk_free_space($dir); - $total = disk_total_space($dir); - if ($total == 0) { - Zend_Cache::throwException('can\'t get disk_total_space'); - } else { - if ($free >= $total) { - return 100; - } - return ((int) (100. * ($total - $free) / $total)); - } - } - - /** - * Return an array of metadatas for the given cache id - * - * The array must include these keys : - * - expire : the expire timestamp - * - tags : a string array of tags - * - mtime : timestamp of last modification time - * - * @param string $id cache id - * @return array array of metadatas (false if the cache id is not found) - */ - public function getMetadatas($id) - { - $tags = array(); - $res = $this->_query("SELECT name FROM tag WHERE id='$id'"); - if ($res) { - $rows = @sqlite_fetch_all($res, SQLITE_ASSOC); - foreach ($rows as $row) { - $tags[] = $row['name']; - } - } - $this->_query('CREATE TABLE cache (id TEXT PRIMARY KEY, content BLOB, lastModified INTEGER, expire INTEGER)'); - $res = $this->_query("SELECT lastModified,expire FROM cache WHERE id='$id'"); - if (!$res) { - return false; - } - $row = @sqlite_fetch_array($res, SQLITE_ASSOC); - return array( - 'tags' => $tags, - 'mtime' => $row['lastModified'], - 'expire' => $row['expire'] - ); - } - - /** - * Give (if possible) an extra lifetime to the given cache id - * - * @param string $id cache id - * @param int $extraLifetime - * @return boolean true if ok - */ - public function touch($id, $extraLifetime) - { - $sql = "SELECT expire FROM cache WHERE id='$id' AND (expire=0 OR expire>" . time() . ')'; - $res = $this->_query($sql); - if (!$res) { - return false; - } - $expire = @sqlite_fetch_single($res); - $newExpire = $expire + $extraLifetime; - $res = $this->_query("UPDATE cache SET lastModified=" . time() . ", expire=$newExpire WHERE id='$id'"); - if ($res) { - return true; - } else { - return false; - } - } - - /** - * Return an associative array of capabilities (booleans) of the backend - * - * The array must include these keys : - * - automatic_cleaning (is automating cleaning necessary) - * - tags (are tags supported) - * - expired_read (is it possible to read expired cache records - * (for doNotTestCacheValidity option for example)) - * - priority does the backend deal with priority when saving - * - infinite_lifetime (is infinite lifetime can work with this backend) - * - get_list (is it possible to get the list of cache ids and the complete list of tags) - * - * @return array associative of with capabilities - */ - public function getCapabilities() - { - return array( - 'automatic_cleaning' => true, - 'tags' => true, - 'expired_read' => true, - 'priority' => false, - 'infinite_lifetime' => true, - 'get_list' => true - ); - } - - /** - * PUBLIC METHOD FOR UNIT TESTING ONLY ! - * - * Force a cache record to expire - * - * @param string $id Cache id - */ - public function ___expire($id) - { - $time = time() - 1; - $this->_query("UPDATE cache SET lastModified=$time, expire=$time WHERE id='$id'"); - } - - /** - * Return the connection resource - * - * If we are not connected, the connection is made - * - * @throws Zend_Cache_Exception - * @return resource Connection resource - */ - private function _getConnection() - { - if (is_resource($this->_db)) { - return $this->_db; - } else { - $this->_db = @sqlite_open($this->_options['cache_db_complete_path']); - if (!(is_resource($this->_db))) { - Zend_Cache::throwException("Impossible to open " . $this->_options['cache_db_complete_path'] . " cache DB file"); - } - return $this->_db; - } - } - - /** - * Execute an SQL query silently - * - * @param string $query SQL query - * @return mixed|false query results - */ - private function _query($query) - { - $db = $this->_getConnection(); - if (is_resource($db)) { - $res = @sqlite_query($db, $query); - if ($res === false) { - return false; - } else { - return $res; - } - } - return false; - } - - /** - * Deal with the automatic vacuum process - * - * @return void - */ - private function _automaticVacuum() - { - if ($this->_options['automatic_vacuum_factor'] > 0) { - $rand = rand(1, $this->_options['automatic_vacuum_factor']); - if ($rand == 1) { - $this->_query('VACUUM'); - } - } - } - - /** - * Register a cache id with the given tag - * - * @param string $id Cache id - * @param string $tag Tag - * @return boolean True if no problem - */ - private function _registerTag($id, $tag) { - $res = $this->_query("DELETE FROM TAG WHERE name='$tag' AND id='$id'"); - $res = $this->_query("INSERT INTO tag (name, id) VALUES ('$tag', '$id')"); - if (!$res) { - $this->_log("Zend_Cache_Backend_Sqlite::_registerTag() : impossible to register tag=$tag on id=$id"); - return false; - } - return true; - } - - /** - * Build the database structure - * - * @return false - */ - private function _buildStructure() - { - $this->_query('DROP INDEX tag_id_index'); - $this->_query('DROP INDEX tag_name_index'); - $this->_query('DROP INDEX cache_id_expire_index'); - $this->_query('DROP TABLE version'); - $this->_query('DROP TABLE cache'); - $this->_query('DROP TABLE tag'); - $this->_query('CREATE TABLE version (num INTEGER PRIMARY KEY)'); - $this->_query('CREATE TABLE cache (id TEXT PRIMARY KEY, content BLOB, lastModified INTEGER, expire INTEGER)'); - $this->_query('CREATE TABLE tag (name TEXT, id TEXT)'); - $this->_query('CREATE INDEX tag_id_index ON tag(id)'); - $this->_query('CREATE INDEX tag_name_index ON tag(name)'); - $this->_query('CREATE INDEX cache_id_expire_index ON cache(id, expire)'); - $this->_query('INSERT INTO version (num) VALUES (1)'); - } - - /** - * Check if the database structure is ok (with the good version) - * - * @return boolean True if ok - */ - private function _checkStructureVersion() - { - $result = $this->_query("SELECT num FROM version"); - if (!$result) return false; - $row = @sqlite_fetch_array($result); - if (!$row) { - return false; - } - if (((int) $row['num']) != 1) { - // old cache structure - $this->_log('Zend_Cache_Backend_Sqlite::_checkStructureVersion() : old cache structure version detected => the cache is going to be dropped'); - return false; - } - return true; - } - - /** - * Clean some cache records - * - * Available modes are : - * Zend_Cache::CLEANING_MODE_ALL (default) => remove all cache entries ($tags is not used) - * Zend_Cache::CLEANING_MODE_OLD => remove too old cache entries ($tags is not used) - * Zend_Cache::CLEANING_MODE_MATCHING_TAG => remove cache entries matching all given tags - * ($tags can be an array of strings or a single string) - * Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG => remove cache entries not {matching one of the given tags} - * ($tags can be an array of strings or a single string) - * Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG => remove cache entries matching any given tags - * ($tags can be an array of strings or a single string) - * - * @param string $mode Clean mode - * @param array $tags Array of tags - * @return boolean True if no problem - */ - private function _clean($mode = Zend_Cache::CLEANING_MODE_ALL, $tags = array()) - { - switch ($mode) { - case Zend_Cache::CLEANING_MODE_ALL: - $res1 = $this->_query('DELETE FROM cache'); - $res2 = $this->_query('DELETE FROM tag'); - return $res1 && $res2; - break; - case Zend_Cache::CLEANING_MODE_OLD: - $mktime = time(); - $res1 = $this->_query("DELETE FROM tag WHERE id IN (SELECT id FROM cache WHERE expire>0 AND expire<=$mktime)"); - $res2 = $this->_query("DELETE FROM cache WHERE expire>0 AND expire<=$mktime"); - return $res1 && $res2; - break; - case Zend_Cache::CLEANING_MODE_MATCHING_TAG: - $ids = $this->getIdsMatchingTags($tags); - $result = true; - foreach ($ids as $id) { - $result = $this->remove($id) && $result; - } - return $result; - break; - case Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG: - $ids = $this->getIdsNotMatchingTags($tags); - $result = true; - foreach ($ids as $id) { - $result = $this->remove($id) && $result; - } - return $result; - break; - case Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG: - $ids = $this->getIdsMatchingAnyTags($tags); - $result = true; - foreach ($ids as $id) { - $result = $this->remove($id) && $result; - } - return $result; - break; - default: - break; - } - return false; - } - - /** - * Check if the database structure is ok (with the good version), if no : build it - * - * @throws Zend_Cache_Exception - * @return boolean True if ok - */ - private function _checkAndBuildStructure() - { - if (!($this->_structureChecked)) { - if (!$this->_checkStructureVersion()) { - $this->_buildStructure(); - if (!$this->_checkStructureVersion()) { - Zend_Cache::throwException("Impossible to build cache structure in " . $this->_options['cache_db_complete_path']); - } - } - $this->_structureChecked = true; - } - return true; - } - -} diff --git a/library/Zend/Cache/Backend/Static.php b/library/Zend/Cache/Backend/Static.php deleted file mode 100644 index a8e2ac86..00000000 --- a/library/Zend/Cache/Backend/Static.php +++ /dev/null @@ -1,560 +0,0 @@ - null, - 'sub_dir' => 'html', - 'file_extension' => '.html', - 'index_filename' => 'index', - 'file_locking' => true, - 'cache_file_umask' => 0600, - 'cache_directory_umask' => 0700, - 'debug_header' => false, - 'tag_cache' => null, - 'disable_caching' => false - ); - - /** - * Cache for handling tags - * @var Zend_Cache_Core - */ - protected $_tagCache = null; - - /** - * Tagged items - * @var array - */ - protected $_tagged = null; - - /** - * Interceptor child method to handle the case where an Inner - * Cache object is being set since it's not supported by the - * standard backend interface - * - * @param string $name - * @param mixed $value - * @return Zend_Cache_Backend_Static - */ - public function setOption($name, $value) - { - if ($name == 'tag_cache') { - $this->setInnerCache($value); - } else { - parent::setOption($name, $value); - } - return $this; - } - - /** - * Retrieve any option via interception of the parent's statically held - * options including the local option for a tag cache. - * - * @param string $name - * @return mixed - */ - public function getOption($name) - { - $name = strtolower($name); - - if ($name == 'tag_cache') { - return $this->getInnerCache(); - } - - return parent::getOption($name); - } - - /** - * Test if a cache is available for the given id and (if yes) return it (false else) - * - * Note : return value is always "string" (unserialization is done by the core not by the backend) - * - * @param string $id Cache id - * @param boolean $doNotTestCacheValidity If set to true, the cache validity won't be tested - * @return string|false cached datas - */ - public function load($id, $doNotTestCacheValidity = false) - { - if (($id = (string)$id) === '') { - $id = $this->_detectId(); - } else { - $id = $this->_decodeId($id); - } - if (!$this->_verifyPath($id)) { - Zend_Cache::throwException('Invalid cache id: does not match expected public_dir path'); - } - if ($doNotTestCacheValidity) { - $this->_log("Zend_Cache_Backend_Static::load() : \$doNotTestCacheValidity=true is unsupported by the Static backend"); - } - - $fileName = basename($id); - if ($fileName === '') { - $fileName = $this->_options['index_filename']; - } - $pathName = $this->_options['public_dir'] . dirname($id); - $file = rtrim($pathName, '/') . '/' . $fileName . $this->_options['file_extension']; - if (file_exists($file)) { - $content = file_get_contents($file); - return $content; - } - - return false; - } - - /** - * Test if a cache is available or not (for the given id) - * - * @param string $id cache id - * @return bool - */ - public function test($id) - { - $id = $this->_decodeId($id); - if (!$this->_verifyPath($id)) { - Zend_Cache::throwException('Invalid cache id: does not match expected public_dir path'); - } - - $fileName = basename($id); - if ($fileName === '') { - $fileName = $this->_options['index_filename']; - } - if ($this->_tagged === null && $tagged = $this->getInnerCache()->load(self::INNER_CACHE_NAME)) { - $this->_tagged = $tagged; - } elseif (!$this->_tagged) { - return false; - } - $pathName = $this->_options['public_dir'] . dirname($id); - - // Switch extension if needed - if (isset($this->_tagged[$id])) { - $extension = $this->_tagged[$id]['extension']; - } else { - $extension = $this->_options['file_extension']; - } - $file = $pathName . '/' . $fileName . $extension; - if (file_exists($file)) { - return true; - } - return false; - } - - /** - * Save some string datas into a cache record - * - * Note : $data is always "string" (serialization is done by the - * core not by the backend) - * - * @param string $data Datas to cache - * @param string $id Cache id - * @param array $tags Array of strings, the cache record will be tagged by each string entry - * @param int $specificLifetime If != false, set a specific lifetime for this cache record (null => infinite lifetime) - * @return boolean true if no problem - */ - public function save($data, $id, $tags = array(), $specificLifetime = false) - { - if ($this->_options['disable_caching']) { - return true; - } - $extension = null; - if ($this->_isSerialized($data)) { - $data = unserialize($data); - $extension = '.' . ltrim($data[1], '.'); - $data = $data[0]; - } - - clearstatcache(); - if (($id = (string)$id) === '') { - $id = $this->_detectId(); - } else { - $id = $this->_decodeId($id); - } - - $fileName = basename($id); - if ($fileName === '') { - $fileName = $this->_options['index_filename']; - } - - $pathName = realpath($this->_options['public_dir']) . dirname($id); - $this->_createDirectoriesFor($pathName); - - if ($id === null || strlen($id) == 0) { - $dataUnserialized = unserialize($data); - $data = $dataUnserialized['data']; - } - $ext = $this->_options['file_extension']; - if ($extension) $ext = $extension; - $file = rtrim($pathName, '/') . '/' . $fileName . $ext; - if ($this->_options['file_locking']) { - $result = file_put_contents($file, $data, LOCK_EX); - } else { - $result = file_put_contents($file, $data); - } - @chmod($file, $this->_octdec($this->_options['cache_file_umask'])); - - if ($this->_tagged === null && $tagged = $this->getInnerCache()->load(self::INNER_CACHE_NAME)) { - $this->_tagged = $tagged; - } elseif ($this->_tagged === null) { - $this->_tagged = array(); - } - if (!isset($this->_tagged[$id])) { - $this->_tagged[$id] = array(); - } - if (!isset($this->_tagged[$id]['tags'])) { - $this->_tagged[$id]['tags'] = array(); - } - $this->_tagged[$id]['tags'] = array_unique(array_merge($this->_tagged[$id]['tags'], $tags)); - $this->_tagged[$id]['extension'] = $ext; - $this->getInnerCache()->save($this->_tagged, self::INNER_CACHE_NAME); - return (bool) $result; - } - - /** - * Recursively create the directories needed to write the static file - */ - protected function _createDirectoriesFor($path) - { - if (!is_dir($path)) { - $oldUmask = umask(0); - if ( !@mkdir($path, $this->_octdec($this->_options['cache_directory_umask']), true)) { - $lastErr = error_get_last(); - umask($oldUmask); - Zend_Cache::throwException("Can't create directory: {$lastErr['message']}"); - } - umask($oldUmask); - } - } - - /** - * Detect serialization of data (cannot predict since this is the only way - * to obey the interface yet pass in another parameter). - * - * In future, ZF 2.0, check if we can just avoid the interface restraints. - * - * This format is the only valid one possible for the class, so it's simple - * to just run a regular expression for the starting serialized format. - */ - protected function _isSerialized($data) - { - return preg_match("/a:2:\{i:0;s:\d+:\"/", $data); - } - - /** - * Remove a cache record - * - * @param string $id Cache id - * @return boolean True if no problem - */ - public function remove($id) - { - if (!$this->_verifyPath($id)) { - Zend_Cache::throwException('Invalid cache id: does not match expected public_dir path'); - } - $fileName = basename($id); - if ($this->_tagged === null && $tagged = $this->getInnerCache()->load(self::INNER_CACHE_NAME)) { - $this->_tagged = $tagged; - } elseif (!$this->_tagged) { - return false; - } - if (isset($this->_tagged[$id])) { - $extension = $this->_tagged[$id]['extension']; - } else { - $extension = $this->_options['file_extension']; - } - if ($fileName === '') { - $fileName = $this->_options['index_filename']; - } - $pathName = $this->_options['public_dir'] . dirname($id); - $file = realpath($pathName) . '/' . $fileName . $extension; - if (!file_exists($file)) { - return false; - } - return unlink($file); - } - - /** - * Remove a cache record recursively for the given directory matching a - * REQUEST_URI based relative path (deletes the actual file matching this - * in addition to the matching directory) - * - * @param string $id Cache id - * @return boolean True if no problem - */ - public function removeRecursively($id) - { - if (!$this->_verifyPath($id)) { - Zend_Cache::throwException('Invalid cache id: does not match expected public_dir path'); - } - $fileName = basename($id); - if ($fileName === '') { - $fileName = $this->_options['index_filename']; - } - $pathName = $this->_options['public_dir'] . dirname($id); - $file = $pathName . '/' . $fileName . $this->_options['file_extension']; - $directory = $pathName . '/' . $fileName; - if (file_exists($directory)) { - if (!is_writable($directory)) { - return false; - } - if (is_dir($directory)) { - foreach (new DirectoryIterator($directory) as $file) { - if (true === $file->isFile()) { - if (false === unlink($file->getPathName())) { - return false; - } - } - } - } - rmdir($directory); - } - if (file_exists($file)) { - if (!is_writable($file)) { - return false; - } - return unlink($file); - } - return true; - } - - /** - * Clean some cache records - * - * Available modes are : - * Zend_Cache::CLEANING_MODE_ALL (default) => remove all cache entries ($tags is not used) - * Zend_Cache::CLEANING_MODE_OLD => remove too old cache entries ($tags is not used) - * Zend_Cache::CLEANING_MODE_MATCHING_TAG => remove cache entries matching all given tags - * ($tags can be an array of strings or a single string) - * Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG => remove cache entries not {matching one of the given tags} - * ($tags can be an array of strings or a single string) - * Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG => remove cache entries matching any given tags - * ($tags can be an array of strings or a single string) - * - * @param string $mode Clean mode - * @param array $tags Array of tags - * @return boolean true if no problem - */ - public function clean($mode = Zend_Cache::CLEANING_MODE_ALL, $tags = array()) - { - $result = false; - switch ($mode) { - case Zend_Cache::CLEANING_MODE_MATCHING_TAG: - case Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG: - if (empty($tags)) { - throw new Zend_Exception('Cannot use tag matching modes as no tags were defined'); - } - if ($this->_tagged === null && $tagged = $this->getInnerCache()->load(self::INNER_CACHE_NAME)) { - $this->_tagged = $tagged; - } elseif (!$this->_tagged) { - return true; - } - foreach ($tags as $tag) { - $urls = array_keys($this->_tagged); - foreach ($urls as $url) { - if (isset($this->_tagged[$url]['tags']) && in_array($tag, $this->_tagged[$url]['tags'])) { - $this->remove($url); - unset($this->_tagged[$url]); - } - } - } - $this->getInnerCache()->save($this->_tagged, self::INNER_CACHE_NAME); - $result = true; - break; - case Zend_Cache::CLEANING_MODE_ALL: - if ($this->_tagged === null) { - $tagged = $this->getInnerCache()->load(self::INNER_CACHE_NAME); - $this->_tagged = $tagged; - } - if ($this->_tagged === null || empty($this->_tagged)) { - return true; - } - $urls = array_keys($this->_tagged); - foreach ($urls as $url) { - $this->remove($url); - unset($this->_tagged[$url]); - } - $this->getInnerCache()->save($this->_tagged, self::INNER_CACHE_NAME); - $result = true; - break; - case Zend_Cache::CLEANING_MODE_OLD: - $this->_log("Zend_Cache_Backend_Static : Selected Cleaning Mode Currently Unsupported By This Backend"); - break; - case Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG: - if (empty($tags)) { - throw new Zend_Exception('Cannot use tag matching modes as no tags were defined'); - } - if ($this->_tagged === null) { - $tagged = $this->getInnerCache()->load(self::INNER_CACHE_NAME); - $this->_tagged = $tagged; - } - if ($this->_tagged === null || empty($this->_tagged)) { - return true; - } - $urls = array_keys($this->_tagged); - foreach ($urls as $url) { - $difference = array_diff($tags, $this->_tagged[$url]['tags']); - if (count($tags) == count($difference)) { - $this->remove($url); - unset($this->_tagged[$url]); - } - } - $this->getInnerCache()->save($this->_tagged, self::INNER_CACHE_NAME); - $result = true; - break; - default: - Zend_Cache::throwException('Invalid mode for clean() method'); - break; - } - return $result; - } - - /** - * Set an Inner Cache, used here primarily to store Tags associated - * with caches created by this backend. Note: If Tags are lost, the cache - * should be completely cleaned as the mapping of tags to caches will - * have been irrevocably lost. - * - * @param Zend_Cache_Core - * @return void - */ - public function setInnerCache(Zend_Cache_Core $cache) - { - $this->_tagCache = $cache; - $this->_options['tag_cache'] = $cache; - } - - /** - * Get the Inner Cache if set - * - * @return Zend_Cache_Core - */ - public function getInnerCache() - { - if ($this->_tagCache === null) { - Zend_Cache::throwException('An Inner Cache has not been set; use setInnerCache()'); - } - return $this->_tagCache; - } - - /** - * Verify path exists and is non-empty - * - * @param string $path - * @return bool - */ - protected function _verifyPath($path) - { - $path = realpath($path); - $base = realpath($this->_options['public_dir']); - return strncmp($path, $base, strlen($base)) !== 0; - } - - /** - * Determine the page to save from the request - * - * @return string - */ - protected function _detectId() - { - return $_SERVER['REQUEST_URI']; - } - - /** - * Validate a cache id or a tag (security, reliable filenames, reserved prefixes...) - * - * Throw an exception if a problem is found - * - * @param string $string Cache id or tag - * @throws Zend_Cache_Exception - * @return void - * @deprecated Not usable until perhaps ZF 2.0 - */ - protected static function _validateIdOrTag($string) - { - if (!is_string($string)) { - Zend_Cache::throwException('Invalid id or tag : must be a string'); - } - - // Internal only checked in Frontend - not here! - if (substr($string, 0, 9) == 'internal-') { - return; - } - - // Validation assumes no query string, fragments or scheme included - only the path - if (!preg_match( - '/^(?:\/(?:(?:%[[:xdigit:]]{2}|[A-Za-z0-9-_.!~*\'()\[\]:@&=+$,;])*)?)+$/', - $string - ) - ) { - Zend_Cache::throwException("Invalid id or tag '$string' : must be a valid URL path"); - } - } - - /** - * Detect an octal string and return its octal value for file permission ops - * otherwise return the non-string (assumed octal or decimal int already) - * - * @param string $val The potential octal in need of conversion - * @return int - */ - protected function _octdec($val) - { - if (is_string($val) && decoct(octdec($val)) == $val) { - return octdec($val); - } - return $val; - } - - /** - * Decode a request URI from the provided ID - * - * @param string $id - * @return string - */ - protected function _decodeId($id) - { - return pack('H*', $id); - } -} diff --git a/library/Zend/Cache/Backend/Test.php b/library/Zend/Cache/Backend/Test.php deleted file mode 100644 index e93d965b..00000000 --- a/library/Zend/Cache/Backend/Test.php +++ /dev/null @@ -1,413 +0,0 @@ -_addLog('construct', array($options)); - } - - /** - * Set the frontend directives - * - * @param array $directives assoc of directives - * @return void - */ - public function setDirectives($directives) - { - $this->_addLog('setDirectives', array($directives)); - } - - /** - * Test if a cache is available for the given id and (if yes) return it (false else) - * - * For this test backend only, if $id == 'false', then the method will return false - * if $id == 'serialized', the method will return a serialized array - * ('foo' else) - * - * @param string $id Cache id - * @param boolean $doNotTestCacheValidity If set to true, the cache validity won't be tested - * @return string Cached datas (or false) - */ - public function load($id, $doNotTestCacheValidity = false) - { - $this->_addLog('get', array($id, $doNotTestCacheValidity)); - - if ( $id == 'false' - || $id == 'd8523b3ee441006261eeffa5c3d3a0a7' - || $id == 'e83249ea22178277d5befc2c5e2e9ace' - || $id == '40f649b94977c0a6e76902e2a0b43587' - || $id == '88161989b73a4cbfd0b701c446115a99' - || $id == '205fc79cba24f0f0018eb92c7c8b3ba4' - || $id == '170720e35f38150b811f68a937fb042d') - { - return false; - } - if ($id=='serialized') { - return serialize(array('foo')); - } - if ($id=='serialized2') { - return serialize(array('headers' => array(), 'data' => 'foo')); - } - if ( $id == '71769f39054f75894288e397df04e445' || $id == '615d222619fb20b527168340cebd0578' - || $id == '8a02d218a5165c467e7a5747cc6bd4b6' || $id == '648aca1366211d17cbf48e65dc570bee' - || $id == '4a923ef02d7f997ca14d56dfeae25ea7') { - return serialize(array('foo', 'bar')); - } - return 'foo'; - } - - /** - * Test if a cache is available or not (for the given id) - * - * For this test backend only, if $id == 'false', then the method will return false - * (123456 else) - * - * @param string $id Cache id - * @return mixed|false false (a cache is not available) or "last modified" timestamp (int) of the available cache record - */ - public function test($id) - { - $this->_addLog('test', array($id)); - if ($id=='false') { - return false; - } - if (($id=='3c439c922209e2cb0b54d6deffccd75a')) { - return false; - } - return 123456; - } - - /** - * Save some string datas into a cache record - * - * For this test backend only, if $id == 'false', then the method will return false - * (true else) - * - * @param string $data Datas to cache - * @param string $id Cache id - * @param array $tags Array of strings, the cache record will be tagged by each string entry - * @param int $specificLifetime If != false, set a specific lifetime for this cache record (null => infinite lifetime) - * @return boolean True if no problem - */ - public function save($data, $id, $tags = array(), $specificLifetime = false) - { - $this->_addLog('save', array($data, $id, $tags)); - if (substr($id,-5)=='false') { - return false; - } - return true; - } - - /** - * Remove a cache record - * - * For this test backend only, if $id == 'false', then the method will return false - * (true else) - * - * @param string $id Cache id - * @return boolean True if no problem - */ - public function remove($id) - { - $this->_addLog('remove', array($id)); - if (substr($id,-5)=='false') { - return false; - } - return true; - } - - /** - * Clean some cache records - * - * For this test backend only, if $mode == 'false', then the method will return false - * (true else) - * - * Available modes are : - * Zend_Cache::CLEANING_MODE_ALL (default) => remove all cache entries ($tags is not used) - * Zend_Cache::CLEANING_MODE_OLD => remove too old cache entries ($tags is not used) - * Zend_Cache::CLEANING_MODE_MATCHING_TAG => remove cache entries matching all given tags - * ($tags can be an array of strings or a single string) - * Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG => remove cache entries not {matching one of the given tags} - * ($tags can be an array of strings or a single string) - * - * @param string $mode Clean mode - * @param array $tags Array of tags - * @return boolean True if no problem - */ - public function clean($mode = Zend_Cache::CLEANING_MODE_ALL, $tags = array()) - { - $this->_addLog('clean', array($mode, $tags)); - if ($mode=='false') { - return false; - } - return true; - } - - /** - * Get the last log - * - * @return string The last log - */ - public function getLastLog() - { - return $this->_log[$this->_index - 1]; - } - - /** - * Get the log index - * - * @return int Log index - */ - public function getLogIndex() - { - return $this->_index; - } - - /** - * Get the complete log array - * - * @return array Complete log array - */ - public function getAllLogs() - { - return $this->_log; - } - - /** - * Return true if the automatic cleaning is available for the backend - * - * @return boolean - */ - public function isAutomaticCleaningAvailable() - { - return true; - } - - /** - * Return an array of stored cache ids - * - * @return array array of stored cache ids (string) - */ - public function getIds() - { - return array( - 'prefix_id1', 'prefix_id2' - ); - } - - /** - * Return an array of stored tags - * - * @return array array of stored tags (string) - */ - public function getTags() - { - return array( - 'tag1', 'tag2' - ); - } - - /** - * Return an array of stored cache ids which match given tags - * - * In case of multiple tags, a logical AND is made between tags - * - * @param array $tags array of tags - * @return array array of matching cache ids (string) - */ - public function getIdsMatchingTags($tags = array()) - { - if ($tags == array('tag1', 'tag2')) { - return array('prefix_id1', 'prefix_id2'); - } - - return array(); - } - - /** - * Return an array of stored cache ids which don't match given tags - * - * In case of multiple tags, a logical OR is made between tags - * - * @param array $tags array of tags - * @return array array of not matching cache ids (string) - */ - public function getIdsNotMatchingTags($tags = array()) - { - if ($tags == array('tag3', 'tag4')) { - return array('prefix_id3', 'prefix_id4'); - } - - return array(); - } - - /** - * Return an array of stored cache ids which match any given tags - * - * In case of multiple tags, a logical AND is made between tags - * - * @param array $tags array of tags - * @return array array of any matching cache ids (string) - */ - public function getIdsMatchingAnyTags($tags = array()) - { - if ($tags == array('tag5', 'tag6')) { - return array('prefix_id5', 'prefix_id6'); - } - - return array(); - } - - /** - * Return the filling percentage of the backend storage - * - * @return int integer between 0 and 100 - */ - public function getFillingPercentage() - { - return 50; - } - - /** - * Return an array of metadatas for the given cache id - * - * The array must include these keys : - * - expire : the expire timestamp - * - tags : a string array of tags - * - mtime : timestamp of last modification time - * - * @param string $id cache id - * @return array array of metadatas (false if the cache id is not found) - */ - public function getMetadatas($id) - { - return false; - } - - /** - * Give (if possible) an extra lifetime to the given cache id - * - * @param string $id cache id - * @param int $extraLifetime - * @return boolean true if ok - */ - public function touch($id, $extraLifetime) - { - return true; - } - - /** - * Return an associative array of capabilities (booleans) of the backend - * - * The array must include these keys : - * - automatic_cleaning (is automating cleaning necessary) - * - tags (are tags supported) - * - expired_read (is it possible to read expired cache records - * (for doNotTestCacheValidity option for example)) - * - priority does the backend deal with priority when saving - * - infinite_lifetime (is infinite lifetime can work with this backend) - * - get_list (is it possible to get the list of cache ids and the complete list of tags) - * - * @return array associative of with capabilities - */ - public function getCapabilities() - { - return array( - 'automatic_cleaning' => true, - 'tags' => true, - 'expired_read' => false, - 'priority' => true, - 'infinite_lifetime' => true, - 'get_list' => true - ); - } - - /** - * Add an event to the log array - * - * @param string $methodName MethodName - * @param array $args Arguments - * @return void - */ - private function _addLog($methodName, $args) - { - $this->_log[$this->_index] = array( - 'methodName' => $methodName, - 'args' => $args - ); - $this->_index = $this->_index + 1; - } - -} diff --git a/library/Zend/Cache/Backend/TwoLevels.php b/library/Zend/Cache/Backend/TwoLevels.php deleted file mode 100644 index f8463cb5..00000000 --- a/library/Zend/Cache/Backend/TwoLevels.php +++ /dev/null @@ -1,536 +0,0 @@ - (string) slow_backend : - * - Slow backend name - * - Must implement the Zend_Cache_Backend_ExtendedInterface - * - Should provide a big storage - * - * =====> (string) fast_backend : - * - Flow backend name - * - Must implement the Zend_Cache_Backend_ExtendedInterface - * - Must be much faster than slow_backend - * - * =====> (array) slow_backend_options : - * - Slow backend options (see corresponding backend) - * - * =====> (array) fast_backend_options : - * - Fast backend options (see corresponding backend) - * - * =====> (int) stats_update_factor : - * - Disable / Tune the computation of the fast backend filling percentage - * - When saving a record into cache : - * 1 => systematic computation of the fast backend filling percentage - * x (integer) > 1 => computation of the fast backend filling percentage randomly 1 times on x cache write - * - * =====> (boolean) slow_backend_custom_naming : - * =====> (boolean) fast_backend_custom_naming : - * =====> (boolean) slow_backend_autoload : - * =====> (boolean) fast_backend_autoload : - * - See Zend_Cache::factory() method - * - * =====> (boolean) auto_refresh_fast_cache - * - If true, auto refresh the fast cache when a cache record is hit - * - * @var array available options - */ - protected $_options = array( - 'slow_backend' => 'File', - 'fast_backend' => 'Apc', - 'slow_backend_options' => array(), - 'fast_backend_options' => array(), - 'stats_update_factor' => 10, - 'slow_backend_custom_naming' => false, - 'fast_backend_custom_naming' => false, - 'slow_backend_autoload' => false, - 'fast_backend_autoload' => false, - 'auto_refresh_fast_cache' => true - ); - - /** - * Slow Backend - * - * @var Zend_Cache_Backend_ExtendedInterface - */ - protected $_slowBackend; - - /** - * Fast Backend - * - * @var Zend_Cache_Backend_ExtendedInterface - */ - protected $_fastBackend; - - /** - * Cache for the fast backend filling percentage - * - * @var int - */ - protected $_fastBackendFillingPercentage = null; - - /** - * Constructor - * - * @param array $options Associative array of options - * @throws Zend_Cache_Exception - * @return void - */ - public function __construct(array $options = array()) - { - parent::__construct($options); - - if ($this->_options['slow_backend'] === null) { - Zend_Cache::throwException('slow_backend option has to set'); - } elseif ($this->_options['slow_backend'] instanceof Zend_Cache_Backend_ExtendedInterface) { - $this->_slowBackend = $this->_options['slow_backend']; - } else { - $this->_slowBackend = Zend_Cache::_makeBackend( - $this->_options['slow_backend'], - $this->_options['slow_backend_options'], - $this->_options['slow_backend_custom_naming'], - $this->_options['slow_backend_autoload'] - ); - if (!in_array('Zend_Cache_Backend_ExtendedInterface', class_implements($this->_slowBackend))) { - Zend_Cache::throwException('slow_backend must implement the Zend_Cache_Backend_ExtendedInterface interface'); - } - } - - if ($this->_options['fast_backend'] === null) { - Zend_Cache::throwException('fast_backend option has to set'); - } elseif ($this->_options['fast_backend'] instanceof Zend_Cache_Backend_ExtendedInterface) { - $this->_fastBackend = $this->_options['fast_backend']; - } else { - $this->_fastBackend = Zend_Cache::_makeBackend( - $this->_options['fast_backend'], - $this->_options['fast_backend_options'], - $this->_options['fast_backend_custom_naming'], - $this->_options['fast_backend_autoload'] - ); - if (!in_array('Zend_Cache_Backend_ExtendedInterface', class_implements($this->_fastBackend))) { - Zend_Cache::throwException('fast_backend must implement the Zend_Cache_Backend_ExtendedInterface interface'); - } - } - - $this->_slowBackend->setDirectives($this->_directives); - $this->_fastBackend->setDirectives($this->_directives); - } - - /** - * Test if a cache is available or not (for the given id) - * - * @param string $id cache id - * @return mixed|false (a cache is not available) or "last modified" timestamp (int) of the available cache record - */ - public function test($id) - { - $fastTest = $this->_fastBackend->test($id); - if ($fastTest) { - return $fastTest; - } else { - return $this->_slowBackend->test($id); - } - } - - /** - * Save some string datas into a cache record - * - * Note : $data is always "string" (serialization is done by the - * core not by the backend) - * - * @param string $data Datas to cache - * @param string $id Cache id - * @param array $tags Array of strings, the cache record will be tagged by each string entry - * @param int $specificLifetime If != false, set a specific lifetime for this cache record (null => infinite lifetime) - * @param int $priority integer between 0 (very low priority) and 10 (maximum priority) used by some particular backends - * @return boolean true if no problem - */ - public function save($data, $id, $tags = array(), $specificLifetime = false, $priority = 8) - { - $usage = $this->_getFastFillingPercentage('saving'); - $boolFast = true; - $lifetime = $this->getLifetime($specificLifetime); - $preparedData = $this->_prepareData($data, $lifetime, $priority); - if (($priority > 0) && (10 * $priority >= $usage)) { - $fastLifetime = $this->_getFastLifetime($lifetime, $priority); - $boolFast = $this->_fastBackend->save($preparedData, $id, array(), $fastLifetime); - $boolSlow = $this->_slowBackend->save($preparedData, $id, $tags, $lifetime); - } else { - $boolSlow = $this->_slowBackend->save($preparedData, $id, $tags, $lifetime); - if ($boolSlow === true) { - $boolFast = $this->_fastBackend->remove($id); - if (!$boolFast && !$this->_fastBackend->test($id)) { - // some backends return false on remove() even if the key never existed. (and it won't if fast is full) - // all we care about is that the key doesn't exist now - $boolFast = true; - } - } - } - - return ($boolFast && $boolSlow); - } - - /** - * Test if a cache is available for the given id and (if yes) return it (false else) - * - * Note : return value is always "string" (unserialization is done by the core not by the backend) - * - * @param string $id Cache id - * @param boolean $doNotTestCacheValidity If set to true, the cache validity won't be tested - * @return string|false cached datas - */ - public function load($id, $doNotTestCacheValidity = false) - { - $res = $this->_fastBackend->load($id, $doNotTestCacheValidity); - if ($res === false) { - $res = $this->_slowBackend->load($id, $doNotTestCacheValidity); - if ($res === false) { - // there is no cache at all for this id - return false; - } - } - $array = unserialize($res); - // maybe, we have to refresh the fast cache ? - if ($this->_options['auto_refresh_fast_cache']) { - if ($array['priority'] == 10) { - // no need to refresh the fast cache with priority = 10 - return $array['data']; - } - $newFastLifetime = $this->_getFastLifetime($array['lifetime'], $array['priority'], time() - $array['expire']); - // we have the time to refresh the fast cache - $usage = $this->_getFastFillingPercentage('loading'); - if (($array['priority'] > 0) && (10 * $array['priority'] >= $usage)) { - // we can refresh the fast cache - $preparedData = $this->_prepareData($array['data'], $array['lifetime'], $array['priority']); - $this->_fastBackend->save($preparedData, $id, array(), $newFastLifetime); - } - } - return $array['data']; - } - - /** - * Remove a cache record - * - * @param string $id Cache id - * @return boolean True if no problem - */ - public function remove($id) - { - $boolFast = $this->_fastBackend->remove($id); - $boolSlow = $this->_slowBackend->remove($id); - return $boolFast && $boolSlow; - } - - /** - * Clean some cache records - * - * Available modes are : - * Zend_Cache::CLEANING_MODE_ALL (default) => remove all cache entries ($tags is not used) - * Zend_Cache::CLEANING_MODE_OLD => remove too old cache entries ($tags is not used) - * Zend_Cache::CLEANING_MODE_MATCHING_TAG => remove cache entries matching all given tags - * ($tags can be an array of strings or a single string) - * Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG => remove cache entries not {matching one of the given tags} - * ($tags can be an array of strings or a single string) - * Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG => remove cache entries matching any given tags - * ($tags can be an array of strings or a single string) - * - * @param string $mode Clean mode - * @param array $tags Array of tags - * @throws Zend_Cache_Exception - * @return boolean true if no problem - */ - public function clean($mode = Zend_Cache::CLEANING_MODE_ALL, $tags = array()) - { - switch($mode) { - case Zend_Cache::CLEANING_MODE_ALL: - $boolFast = $this->_fastBackend->clean(Zend_Cache::CLEANING_MODE_ALL); - $boolSlow = $this->_slowBackend->clean(Zend_Cache::CLEANING_MODE_ALL); - return $boolFast && $boolSlow; - break; - case Zend_Cache::CLEANING_MODE_OLD: - return $this->_slowBackend->clean(Zend_Cache::CLEANING_MODE_OLD); - case Zend_Cache::CLEANING_MODE_MATCHING_TAG: - $ids = $this->_slowBackend->getIdsMatchingTags($tags); - $res = true; - foreach ($ids as $id) { - $bool = $this->remove($id); - $res = $res && $bool; - } - return $res; - break; - case Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG: - $ids = $this->_slowBackend->getIdsNotMatchingTags($tags); - $res = true; - foreach ($ids as $id) { - $bool = $this->remove($id); - $res = $res && $bool; - } - return $res; - break; - case Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG: - $ids = $this->_slowBackend->getIdsMatchingAnyTags($tags); - $res = true; - foreach ($ids as $id) { - $bool = $this->remove($id); - $res = $res && $bool; - } - return $res; - break; - default: - Zend_Cache::throwException('Invalid mode for clean() method'); - break; - } - } - - /** - * Return an array of stored cache ids - * - * @return array array of stored cache ids (string) - */ - public function getIds() - { - return $this->_slowBackend->getIds(); - } - - /** - * Return an array of stored tags - * - * @return array array of stored tags (string) - */ - public function getTags() - { - return $this->_slowBackend->getTags(); - } - - /** - * Return an array of stored cache ids which match given tags - * - * In case of multiple tags, a logical AND is made between tags - * - * @param array $tags array of tags - * @return array array of matching cache ids (string) - */ - public function getIdsMatchingTags($tags = array()) - { - return $this->_slowBackend->getIdsMatchingTags($tags); - } - - /** - * Return an array of stored cache ids which don't match given tags - * - * In case of multiple tags, a logical OR is made between tags - * - * @param array $tags array of tags - * @return array array of not matching cache ids (string) - */ - public function getIdsNotMatchingTags($tags = array()) - { - return $this->_slowBackend->getIdsNotMatchingTags($tags); - } - - /** - * Return an array of stored cache ids which match any given tags - * - * In case of multiple tags, a logical AND is made between tags - * - * @param array $tags array of tags - * @return array array of any matching cache ids (string) - */ - public function getIdsMatchingAnyTags($tags = array()) - { - return $this->_slowBackend->getIdsMatchingAnyTags($tags); - } - - /** - * Return the filling percentage of the backend storage - * - * @return int integer between 0 and 100 - */ - public function getFillingPercentage() - { - return $this->_slowBackend->getFillingPercentage(); - } - - /** - * Return an array of metadatas for the given cache id - * - * The array must include these keys : - * - expire : the expire timestamp - * - tags : a string array of tags - * - mtime : timestamp of last modification time - * - * @param string $id cache id - * @return array array of metadatas (false if the cache id is not found) - */ - public function getMetadatas($id) - { - return $this->_slowBackend->getMetadatas($id); - } - - /** - * Give (if possible) an extra lifetime to the given cache id - * - * @param string $id cache id - * @param int $extraLifetime - * @return boolean true if ok - */ - public function touch($id, $extraLifetime) - { - return $this->_slowBackend->touch($id, $extraLifetime); - } - - /** - * Return an associative array of capabilities (booleans) of the backend - * - * The array must include these keys : - * - automatic_cleaning (is automating cleaning necessary) - * - tags (are tags supported) - * - expired_read (is it possible to read expired cache records - * (for doNotTestCacheValidity option for example)) - * - priority does the backend deal with priority when saving - * - infinite_lifetime (is infinite lifetime can work with this backend) - * - get_list (is it possible to get the list of cache ids and the complete list of tags) - * - * @return array associative of with capabilities - */ - public function getCapabilities() - { - $slowBackendCapabilities = $this->_slowBackend->getCapabilities(); - return array( - 'automatic_cleaning' => $slowBackendCapabilities['automatic_cleaning'], - 'tags' => $slowBackendCapabilities['tags'], - 'expired_read' => $slowBackendCapabilities['expired_read'], - 'priority' => $slowBackendCapabilities['priority'], - 'infinite_lifetime' => $slowBackendCapabilities['infinite_lifetime'], - 'get_list' => $slowBackendCapabilities['get_list'] - ); - } - - /** - * Prepare a serialized array to store datas and metadatas informations - * - * @param string $data data to store - * @param int $lifetime original lifetime - * @param int $priority priority - * @return string serialize array to store into cache - */ - private function _prepareData($data, $lifetime, $priority) - { - $lt = $lifetime; - if ($lt === null) { - $lt = 9999999999; - } - return serialize(array( - 'data' => $data, - 'lifetime' => $lifetime, - 'expire' => time() + $lt, - 'priority' => $priority - )); - } - - /** - * Compute and return the lifetime for the fast backend - * - * @param int $lifetime original lifetime - * @param int $priority priority - * @param int $maxLifetime maximum lifetime - * @return int lifetime for the fast backend - */ - private function _getFastLifetime($lifetime, $priority, $maxLifetime = null) - { - if ($lifetime <= 0) { - // if no lifetime, we have an infinite lifetime - // we need to use arbitrary lifetimes - $fastLifetime = (int) (2592000 / (11 - $priority)); - } else { - // prevent computed infinite lifetime (0) by ceil - $fastLifetime = (int) ceil($lifetime / (11 - $priority)); - } - - if ($maxLifetime >= 0 && $fastLifetime > $maxLifetime) { - return $maxLifetime; - } - - return $fastLifetime; - } - - /** - * PUBLIC METHOD FOR UNIT TESTING ONLY ! - * - * Force a cache record to expire - * - * @param string $id cache id - */ - public function ___expire($id) - { - $this->_fastBackend->remove($id); - $this->_slowBackend->___expire($id); - } - - private function _getFastFillingPercentage($mode) - { - - if ($mode == 'saving') { - // mode saving - if ($this->_fastBackendFillingPercentage === null) { - $this->_fastBackendFillingPercentage = $this->_fastBackend->getFillingPercentage(); - } else { - $rand = rand(1, $this->_options['stats_update_factor']); - if ($rand == 1) { - // we force a refresh - $this->_fastBackendFillingPercentage = $this->_fastBackend->getFillingPercentage(); - } - } - } else { - // mode loading - // we compute the percentage only if it's not available in cache - if ($this->_fastBackendFillingPercentage === null) { - $this->_fastBackendFillingPercentage = $this->_fastBackend->getFillingPercentage(); - } - } - return $this->_fastBackendFillingPercentage; - } - -} diff --git a/library/Zend/Cache/Backend/WinCache.php b/library/Zend/Cache/Backend/WinCache.php deleted file mode 100644 index 440ffc40..00000000 --- a/library/Zend/Cache/Backend/WinCache.php +++ /dev/null @@ -1,349 +0,0 @@ - infinite lifetime) - * @return boolean true if no problem - */ - public function save($data, $id, $tags = array(), $specificLifetime = false) - { - $lifetime = $this->getLifetime($specificLifetime); - $result = wincache_ucache_set($id, array($data, time(), $lifetime), $lifetime); - if (count($tags) > 0) { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_WINCACHE_BACKEND); - } - return $result; - } - - /** - * Remove a cache record - * - * @param string $id cache id - * @return boolean true if no problem - */ - public function remove($id) - { - return wincache_ucache_delete($id); - } - - /** - * Clean some cache records - * - * Available modes are : - * 'all' (default) => remove all cache entries ($tags is not used) - * 'old' => unsupported - * 'matchingTag' => unsupported - * 'notMatchingTag' => unsupported - * 'matchingAnyTag' => unsupported - * - * @param string $mode clean mode - * @param array $tags array of tags - * @throws Zend_Cache_Exception - * @return boolean true if no problem - */ - public function clean($mode = Zend_Cache::CLEANING_MODE_ALL, $tags = array()) - { - switch ($mode) { - case Zend_Cache::CLEANING_MODE_ALL: - return wincache_ucache_clear(); - break; - case Zend_Cache::CLEANING_MODE_OLD: - $this->_log("Zend_Cache_Backend_WinCache::clean() : CLEANING_MODE_OLD is unsupported by the WinCache backend"); - break; - case Zend_Cache::CLEANING_MODE_MATCHING_TAG: - case Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG: - case Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG: - $this->_log(self::TAGS_UNSUPPORTED_BY_CLEAN_OF_WINCACHE_BACKEND); - break; - default: - Zend_Cache::throwException('Invalid mode for clean() method'); - break; - } - } - - /** - * Return true if the automatic cleaning is available for the backend - * - * DEPRECATED : use getCapabilities() instead - * - * @deprecated - * @return boolean - */ - public function isAutomaticCleaningAvailable() - { - return false; - } - - /** - * Return the filling percentage of the backend storage - * - * @throws Zend_Cache_Exception - * @return int integer between 0 and 100 - */ - public function getFillingPercentage() - { - $mem = wincache_ucache_meminfo(); - $memSize = $mem['memory_total']; - $memUsed = $memSize - $mem['memory_free']; - if ($memSize == 0) { - Zend_Cache::throwException('can\'t get WinCache memory size'); - } - if ($memUsed > $memSize) { - return 100; - } - return ((int) (100. * ($memUsed / $memSize))); - } - - /** - * Return an array of stored tags - * - * @return array array of stored tags (string) - */ - public function getTags() - { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_WINCACHE_BACKEND); - return array(); - } - - /** - * Return an array of stored cache ids which match given tags - * - * In case of multiple tags, a logical AND is made between tags - * - * @param array $tags array of tags - * @return array array of matching cache ids (string) - */ - public function getIdsMatchingTags($tags = array()) - { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_WINCACHE_BACKEND); - return array(); - } - - /** - * Return an array of stored cache ids which don't match given tags - * - * In case of multiple tags, a logical OR is made between tags - * - * @param array $tags array of tags - * @return array array of not matching cache ids (string) - */ - public function getIdsNotMatchingTags($tags = array()) - { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_WINCACHE_BACKEND); - return array(); - } - - /** - * Return an array of stored cache ids which match any given tags - * - * In case of multiple tags, a logical AND is made between tags - * - * @param array $tags array of tags - * @return array array of any matching cache ids (string) - */ - public function getIdsMatchingAnyTags($tags = array()) - { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_WINCACHE_BACKEND); - return array(); - } - - /** - * Return an array of stored cache ids - * - * @return array array of stored cache ids (string) - */ - public function getIds() - { - $res = array(); - $array = wincache_ucache_info(); - $records = $array['ucache_entries']; - foreach ($records as $record) { - $res[] = $record['key_name']; - } - return $res; - } - - /** - * Return an array of metadatas for the given cache id - * - * The array must include these keys : - * - expire : the expire timestamp - * - tags : a string array of tags - * - mtime : timestamp of last modification time - * - * @param string $id cache id - * @return array array of metadatas (false if the cache id is not found) - */ - public function getMetadatas($id) - { - $tmp = wincache_ucache_get($id); - if (is_array($tmp)) { - $data = $tmp[0]; - $mtime = $tmp[1]; - if (!isset($tmp[2])) { - return false; - } - $lifetime = $tmp[2]; - return array( - 'expire' => $mtime + $lifetime, - 'tags' => array(), - 'mtime' => $mtime - ); - } - return false; - } - - /** - * Give (if possible) an extra lifetime to the given cache id - * - * @param string $id cache id - * @param int $extraLifetime - * @return boolean true if ok - */ - public function touch($id, $extraLifetime) - { - $tmp = wincache_ucache_get($id); - if (is_array($tmp)) { - $data = $tmp[0]; - $mtime = $tmp[1]; - if (!isset($tmp[2])) { - return false; - } - $lifetime = $tmp[2]; - $newLifetime = $lifetime - (time() - $mtime) + $extraLifetime; - if ($newLifetime <=0) { - return false; - } - return wincache_ucache_set($id, array($data, time(), $newLifetime), $newLifetime); - } - return false; - } - - /** - * Return an associative array of capabilities (booleans) of the backend - * - * The array must include these keys : - * - automatic_cleaning (is automating cleaning necessary) - * - tags (are tags supported) - * - expired_read (is it possible to read expired cache records - * (for doNotTestCacheValidity option for example)) - * - priority does the backend deal with priority when saving - * - infinite_lifetime (is infinite lifetime can work with this backend) - * - get_list (is it possible to get the list of cache ids and the complete list of tags) - * - * @return array associative of with capabilities - */ - public function getCapabilities() - { - return array( - 'automatic_cleaning' => false, - 'tags' => false, - 'expired_read' => false, - 'priority' => false, - 'infinite_lifetime' => false, - 'get_list' => true - ); - } - -} diff --git a/library/Zend/Cache/Backend/Xcache.php b/library/Zend/Cache/Backend/Xcache.php deleted file mode 100644 index c19391c2..00000000 --- a/library/Zend/Cache/Backend/Xcache.php +++ /dev/null @@ -1,221 +0,0 @@ - (string) user : - * xcache.admin.user (necessary for the clean() method) - * - * =====> (string) password : - * xcache.admin.pass (clear, not MD5) (necessary for the clean() method) - * - * @var array available options - */ - protected $_options = array( - 'user' => null, - 'password' => null - ); - - /** - * Constructor - * - * @param array $options associative array of options - * @throws Zend_Cache_Exception - * @return void - */ - public function __construct(array $options = array()) - { - if (!extension_loaded('xcache')) { - Zend_Cache::throwException('The xcache extension must be loaded for using this backend !'); - } - parent::__construct($options); - } - - /** - * Test if a cache is available for the given id and (if yes) return it (false else) - * - * WARNING $doNotTestCacheValidity=true is unsupported by the Xcache backend - * - * @param string $id cache id - * @param boolean $doNotTestCacheValidity if set to true, the cache validity won't be tested - * @return string cached datas (or false) - */ - public function load($id, $doNotTestCacheValidity = false) - { - if ($doNotTestCacheValidity) { - $this->_log("Zend_Cache_Backend_Xcache::load() : \$doNotTestCacheValidity=true is unsupported by the Xcache backend"); - } - $tmp = xcache_get($id); - if (is_array($tmp)) { - return $tmp[0]; - } - return false; - } - - /** - * Test if a cache is available or not (for the given id) - * - * @param string $id cache id - * @return mixed false (a cache is not available) or "last modified" timestamp (int) of the available cache record - */ - public function test($id) - { - if (xcache_isset($id)) { - $tmp = xcache_get($id); - if (is_array($tmp)) { - return $tmp[1]; - } - } - return false; - } - - /** - * Save some string datas into a cache record - * - * Note : $data is always "string" (serialization is done by the - * core not by the backend) - * - * @param string $data datas to cache - * @param string $id cache id - * @param array $tags array of strings, the cache record will be tagged by each string entry - * @param int $specificLifetime if != false, set a specific lifetime for this cache record (null => infinite lifetime) - * @return boolean true if no problem - */ - public function save($data, $id, $tags = array(), $specificLifetime = false) - { - $lifetime = $this->getLifetime($specificLifetime); - $result = xcache_set($id, array($data, time()), $lifetime); - if (count($tags) > 0) { - $this->_log(self::TAGS_UNSUPPORTED_BY_SAVE_OF_XCACHE_BACKEND); - } - return $result; - } - - /** - * Remove a cache record - * - * @param string $id cache id - * @return boolean true if no problem - */ - public function remove($id) - { - return xcache_unset($id); - } - - /** - * Clean some cache records - * - * Available modes are : - * 'all' (default) => remove all cache entries ($tags is not used) - * 'old' => unsupported - * 'matchingTag' => unsupported - * 'notMatchingTag' => unsupported - * 'matchingAnyTag' => unsupported - * - * @param string $mode clean mode - * @param array $tags array of tags - * @throws Zend_Cache_Exception - * @return boolean true if no problem - */ - public function clean($mode = Zend_Cache::CLEANING_MODE_ALL, $tags = array()) - { - switch ($mode) { - case Zend_Cache::CLEANING_MODE_ALL: - // Necessary because xcache_clear_cache() need basic authentification - $backup = array(); - if (isset($_SERVER['PHP_AUTH_USER'])) { - $backup['PHP_AUTH_USER'] = $_SERVER['PHP_AUTH_USER']; - } - if (isset($_SERVER['PHP_AUTH_PW'])) { - $backup['PHP_AUTH_PW'] = $_SERVER['PHP_AUTH_PW']; - } - if ($this->_options['user']) { - $_SERVER['PHP_AUTH_USER'] = $this->_options['user']; - } - if ($this->_options['password']) { - $_SERVER['PHP_AUTH_PW'] = $this->_options['password']; - } - - $cnt = xcache_count(XC_TYPE_VAR); - for ($i=0; $i < $cnt; $i++) { - xcache_clear_cache(XC_TYPE_VAR, $i); - } - - if (isset($backup['PHP_AUTH_USER'])) { - $_SERVER['PHP_AUTH_USER'] = $backup['PHP_AUTH_USER']; - $_SERVER['PHP_AUTH_PW'] = $backup['PHP_AUTH_PW']; - } - return true; - break; - case Zend_Cache::CLEANING_MODE_OLD: - $this->_log("Zend_Cache_Backend_Xcache::clean() : CLEANING_MODE_OLD is unsupported by the Xcache backend"); - break; - case Zend_Cache::CLEANING_MODE_MATCHING_TAG: - case Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG: - case Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG: - $this->_log(self::TAGS_UNSUPPORTED_BY_CLEAN_OF_XCACHE_BACKEND); - break; - default: - Zend_Cache::throwException('Invalid mode for clean() method'); - break; - } - } - - /** - * Return true if the automatic cleaning is available for the backend - * - * @return boolean - */ - public function isAutomaticCleaningAvailable() - { - return false; - } - -} diff --git a/library/Zend/Cache/Backend/ZendPlatform.php b/library/Zend/Cache/Backend/ZendPlatform.php deleted file mode 100644 index 57cf864a..00000000 --- a/library/Zend/Cache/Backend/ZendPlatform.php +++ /dev/null @@ -1,317 +0,0 @@ -_directives['lifetime']; - } - $res = output_cache_get($id, $lifetime); - if($res) { - return $res[0]; - } else { - return false; - } - } - - - /** - * Test if a cache is available or not (for the given id) - * - * @param string $id Cache id - * @return mixed|false false (a cache is not available) or "last modified" timestamp (int) of the available cache record - */ - public function test($id) - { - $result = output_cache_get($id, $this->_directives['lifetime']); - if ($result) { - return $result[1]; - } - return false; - } - - /** - * Save some string datas into a cache record - * - * Note : $data is always "string" (serialization is done by the - * core not by the backend) - * - * @param string $data Data to cache - * @param string $id Cache id - * @param array $tags Array of strings, the cache record will be tagged by each string entry - * @param int $specificLifetime If != false, set a specific lifetime for this cache record (null => infinite lifetime) - * @return boolean true if no problem - */ - public function save($data, $id, $tags = array(), $specificLifetime = false) - { - if (!($specificLifetime === false)) { - $this->_log("Zend_Cache_Backend_ZendPlatform::save() : non false specifc lifetime is unsuported for this backend"); - } - - $lifetime = $this->_directives['lifetime']; - $result1 = output_cache_put($id, array($data, time())); - $result2 = (count($tags) == 0); - - foreach ($tags as $tag) { - $tagid = self::TAGS_PREFIX.$tag; - $old_tags = output_cache_get($tagid, $lifetime); - if ($old_tags === false) { - $old_tags = array(); - } - $old_tags[$id] = $id; - output_cache_remove_key($tagid); - $result2 = output_cache_put($tagid, $old_tags); - } - - return $result1 && $result2; - } - - - /** - * Remove a cache record - * - * @param string $id Cache id - * @return boolean True if no problem - */ - public function remove($id) - { - return output_cache_remove_key($id); - } - - - /** - * Clean some cache records - * - * Available modes are : - * Zend_Cache::CLEANING_MODE_ALL (default) => remove all cache entries ($tags is not used) - * Zend_Cache::CLEANING_MODE_OLD => remove too old cache entries ($tags is not used) - * This mode is not supported in this backend - * Zend_Cache::CLEANING_MODE_MATCHING_TAG => remove cache entries matching all given tags - * ($tags can be an array of strings or a single string) - * Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG => unsupported - * Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG => remove cache entries matching any given tags - * ($tags can be an array of strings or a single string) - * - * @param string $mode Clean mode - * @param array $tags Array of tags - * @throws Zend_Cache_Exception - * @return boolean True if no problem - */ - public function clean($mode = Zend_Cache::CLEANING_MODE_ALL, $tags = array()) - { - switch ($mode) { - case Zend_Cache::CLEANING_MODE_ALL: - case Zend_Cache::CLEANING_MODE_OLD: - $cache_dir = ini_get('zend_accelerator.output_cache_dir'); - if (!$cache_dir) { - return false; - } - $cache_dir .= '/.php_cache_api/'; - return $this->_clean($cache_dir, $mode); - break; - case Zend_Cache::CLEANING_MODE_MATCHING_TAG: - $idlist = null; - foreach ($tags as $tag) { - $next_idlist = output_cache_get(self::TAGS_PREFIX.$tag, $this->_directives['lifetime']); - if ($idlist) { - $idlist = array_intersect_assoc($idlist, $next_idlist); - } else { - $idlist = $next_idlist; - } - if (count($idlist) == 0) { - // if ID list is already empty - we may skip checking other IDs - $idlist = null; - break; - } - } - if ($idlist) { - foreach ($idlist as $id) { - output_cache_remove_key($id); - } - } - return true; - break; - case Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG: - $this->_log("Zend_Cache_Backend_ZendPlatform::clean() : CLEANING_MODE_NOT_MATCHING_TAG is not supported by the Zend Platform backend"); - return false; - break; - case Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG: - $idlist = null; - foreach ($tags as $tag) { - $next_idlist = output_cache_get(self::TAGS_PREFIX.$tag, $this->_directives['lifetime']); - if ($idlist) { - $idlist = array_merge_recursive($idlist, $next_idlist); - } else { - $idlist = $next_idlist; - } - if (count($idlist) == 0) { - // if ID list is already empty - we may skip checking other IDs - $idlist = null; - break; - } - } - if ($idlist) { - foreach ($idlist as $id) { - output_cache_remove_key($id); - } - } - return true; - break; - default: - Zend_Cache::throwException('Invalid mode for clean() method'); - break; - } - } - - /** - * Clean a directory and recursivly go over it's subdirectories - * - * Remove all the cached files that need to be cleaned (according to mode and files mtime) - * - * @param string $dir Path of directory ot clean - * @param string $mode The same parameter as in Zend_Cache_Backend_ZendPlatform::clean() - * @return boolean True if ok - */ - private function _clean($dir, $mode) - { - $d = @dir($dir); - if (!$d) { - return false; - } - $result = true; - while (false !== ($file = $d->read())) { - if ($file == '.' || $file == '..') { - continue; - } - $file = $d->path . $file; - if (is_dir($file)) { - $result = ($this->_clean($file .'/', $mode)) && ($result); - } else { - if ($mode == Zend_Cache::CLEANING_MODE_ALL) { - $result = ($this->_remove($file)) && ($result); - } else if ($mode == Zend_Cache::CLEANING_MODE_OLD) { - // Files older than lifetime get deleted from cache - if ($this->_directives['lifetime'] !== null) { - if ((time() - @filemtime($file)) > $this->_directives['lifetime']) { - $result = ($this->_remove($file)) && ($result); - } - } - } - } - } - $d->close(); - return $result; - } - - /** - * Remove a file - * - * If we can't remove the file (because of locks or any problem), we will touch - * the file to invalidate it - * - * @param string $file Complete file path - * @return boolean True if ok - */ - private function _remove($file) - { - if (!@unlink($file)) { - # If we can't remove the file (because of locks or any problem), we will touch - # the file to invalidate it - $this->_log("Zend_Cache_Backend_ZendPlatform::_remove() : we can't remove $file => we are going to try to invalidate it"); - if ($this->_directives['lifetime'] === null) { - return false; - } - if (!file_exists($file)) { - return false; - } - return @touch($file, time() - 2*abs($this->_directives['lifetime'])); - } - return true; - } - -} diff --git a/library/Zend/Cache/Backend/ZendServer.php b/library/Zend/Cache/Backend/ZendServer.php deleted file mode 100644 index 590a57e2..00000000 --- a/library/Zend/Cache/Backend/ZendServer.php +++ /dev/null @@ -1,207 +0,0 @@ - (string) namespace : - * Namespace to be used for chaching operations - * - * @var array available options - */ - protected $_options = array( - 'namespace' => 'zendframework' - ); - - /** - * Store data - * - * @param mixed $data Object to store - * @param string $id Cache id - * @param int $timeToLive Time to live in seconds - * @throws Zend_Cache_Exception - */ - abstract protected function _store($data, $id, $timeToLive); - - /** - * Fetch data - * - * @param string $id Cache id - * @throws Zend_Cache_Exception - */ - abstract protected function _fetch($id); - - /** - * Unset data - * - * @param string $id Cache id - */ - abstract protected function _unset($id); - - /** - * Clear cache - */ - abstract protected function _clear(); - - /** - * Test if a cache is available for the given id and (if yes) return it (false else) - * - * @param string $id cache id - * @param boolean $doNotTestCacheValidity if set to true, the cache validity won't be tested - * @return string cached datas (or false) - */ - public function load($id, $doNotTestCacheValidity = false) - { - $tmp = $this->_fetch($id); - if ($tmp !== null) { - return $tmp; - } - return false; - } - - /** - * Test if a cache is available or not (for the given id) - * - * @param string $id cache id - * @return mixed false (a cache is not available) or "last modified" timestamp (int) of the available cache record - * @throws Zend_Cache_Exception - */ - public function test($id) - { - $tmp = $this->_fetch('internal-metadatas---' . $id); - if ($tmp !== false) { - if (!is_array($tmp) || !isset($tmp['mtime'])) { - Zend_Cache::throwException('Cache metadata for \'' . $id . '\' id is corrupted' ); - } - return $tmp['mtime']; - } - return false; - } - - /** - * Compute & return the expire time - * - * @return int expire time (unix timestamp) - */ - private function _expireTime($lifetime) - { - if ($lifetime === null) { - return 9999999999; - } - return time() + $lifetime; - } - - /** - * Save some string datas into a cache record - * - * Note : $data is always "string" (serialization is done by the - * core not by the backend) - * - * @param string $data datas to cache - * @param string $id cache id - * @param array $tags array of strings, the cache record will be tagged by each string entry - * @param int $specificLifetime if != false, set a specific lifetime for this cache record (null => infinite lifetime) - * @return boolean true if no problem - */ - public function save($data, $id, $tags = array(), $specificLifetime = false) - { - $lifetime = $this->getLifetime($specificLifetime); - $metadatas = array( - 'mtime' => time(), - 'expire' => $this->_expireTime($lifetime), - ); - - if (count($tags) > 0) { - $this->_log('Zend_Cache_Backend_ZendServer::save() : tags are unsupported by the ZendServer backends'); - } - - return $this->_store($data, $id, $lifetime) && - $this->_store($metadatas, 'internal-metadatas---' . $id, $lifetime); - } - - /** - * Remove a cache record - * - * @param string $id cache id - * @return boolean true if no problem - */ - public function remove($id) - { - $result1 = $this->_unset($id); - $result2 = $this->_unset('internal-metadatas---' . $id); - - return $result1 && $result2; - } - - /** - * Clean some cache records - * - * Available modes are : - * 'all' (default) => remove all cache entries ($tags is not used) - * 'old' => unsupported - * 'matchingTag' => unsupported - * 'notMatchingTag' => unsupported - * 'matchingAnyTag' => unsupported - * - * @param string $mode clean mode - * @param array $tags array of tags - * @throws Zend_Cache_Exception - * @return boolean true if no problem - */ - public function clean($mode = Zend_Cache::CLEANING_MODE_ALL, $tags = array()) - { - switch ($mode) { - case Zend_Cache::CLEANING_MODE_ALL: - $this->_clear(); - return true; - break; - case Zend_Cache::CLEANING_MODE_OLD: - $this->_log("Zend_Cache_Backend_ZendServer::clean() : CLEANING_MODE_OLD is unsupported by the Zend Server backends."); - break; - case Zend_Cache::CLEANING_MODE_MATCHING_TAG: - case Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG: - case Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG: - $this->_clear(); - $this->_log('Zend_Cache_Backend_ZendServer::clean() : tags are unsupported by the Zend Server backends.'); - break; - default: - Zend_Cache::throwException('Invalid mode for clean() method'); - break; - } - } -} diff --git a/library/Zend/Cache/Backend/ZendServer/Disk.php b/library/Zend/Cache/Backend/ZendServer/Disk.php deleted file mode 100644 index ab01ccf8..00000000 --- a/library/Zend/Cache/Backend/ZendServer/Disk.php +++ /dev/null @@ -1,100 +0,0 @@ -_options['namespace'] . '::' . $id, - $data, - $timeToLive) === false) { - $this->_log('Store operation failed.'); - return false; - } - return true; - } - - /** - * Fetch data - * - * @param string $id Cache id - */ - protected function _fetch($id) - { - return zend_disk_cache_fetch($this->_options['namespace'] . '::' . $id); - } - - /** - * Unset data - * - * @param string $id Cache id - * @return boolean true if no problem - */ - protected function _unset($id) - { - return zend_disk_cache_delete($this->_options['namespace'] . '::' . $id); - } - - /** - * Clear cache - */ - protected function _clear() - { - zend_disk_cache_clear($this->_options['namespace']); - } -} diff --git a/library/Zend/Cache/Backend/ZendServer/ShMem.php b/library/Zend/Cache/Backend/ZendServer/ShMem.php deleted file mode 100644 index 8d73fc9b..00000000 --- a/library/Zend/Cache/Backend/ZendServer/ShMem.php +++ /dev/null @@ -1,100 +0,0 @@ -_options['namespace'] . '::' . $id, - $data, - $timeToLive) === false) { - $this->_log('Store operation failed.'); - return false; - } - return true; - } - - /** - * Fetch data - * - * @param string $id Cache id - */ - protected function _fetch($id) - { - return zend_shm_cache_fetch($this->_options['namespace'] . '::' . $id); - } - - /** - * Unset data - * - * @param string $id Cache id - * @return boolean true if no problem - */ - protected function _unset($id) - { - return zend_shm_cache_delete($this->_options['namespace'] . '::' . $id); - } - - /** - * Clear cache - */ - protected function _clear() - { - zend_shm_cache_clear($this->_options['namespace']); - } -} diff --git a/library/Zend/Cache/Core.php b/library/Zend/Cache/Core.php deleted file mode 100644 index e3588636..00000000 --- a/library/Zend/Cache/Core.php +++ /dev/null @@ -1,765 +0,0 @@ - (boolean) write_control : - * - Enable / disable write control (the cache is read just after writing to detect corrupt entries) - * - Enable write control will lightly slow the cache writing but not the cache reading - * Write control can detect some corrupt cache files but maybe it's not a perfect control - * - * ====> (boolean) caching : - * - Enable / disable caching - * (can be very useful for the debug of cached scripts) - * - * =====> (string) cache_id_prefix : - * - prefix for cache ids (namespace) - * - * ====> (boolean) automatic_serialization : - * - Enable / disable automatic serialization - * - It can be used to save directly datas which aren't strings (but it's slower) - * - * ====> (int) automatic_cleaning_factor : - * - Disable / Tune the automatic cleaning process - * - The automatic cleaning process destroy too old (for the given life time) - * cache files when a new cache file is written : - * 0 => no automatic cache cleaning - * 1 => systematic cache cleaning - * x (integer) > 1 => automatic cleaning randomly 1 times on x cache write - * - * ====> (int) lifetime : - * - Cache lifetime (in seconds) - * - If null, the cache is valid forever. - * - * ====> (boolean) logging : - * - If set to true, logging is activated (but the system is slower) - * - * ====> (boolean) ignore_user_abort - * - If set to true, the core will set the ignore_user_abort PHP flag inside the - * save() method to avoid cache corruptions in some cases (default false) - * - * @var array $_options available options - */ - protected $_options = array( - 'write_control' => true, - 'caching' => true, - 'cache_id_prefix' => null, - 'automatic_serialization' => false, - 'automatic_cleaning_factor' => 10, - 'lifetime' => 3600, - 'logging' => false, - 'logger' => null, - 'ignore_user_abort' => false - ); - - /** - * Array of options which have to be transfered to backend - * - * @var array $_directivesList - */ - protected static $_directivesList = array('lifetime', 'logging', 'logger'); - - /** - * Not used for the core, just a sort a hint to get a common setOption() method (for the core and for frontends) - * - * @var array $_specificOptions - */ - protected $_specificOptions = array(); - - /** - * Last used cache id - * - * @var string $_lastId - */ - private $_lastId = null; - - /** - * True if the backend implements Zend_Cache_Backend_ExtendedInterface - * - * @var boolean $_extendedBackend - */ - protected $_extendedBackend = false; - - /** - * Array of capabilities of the backend (only if it implements Zend_Cache_Backend_ExtendedInterface) - * - * @var array - */ - protected $_backendCapabilities = array(); - - /** - * Constructor - * - * @param array|Zend_Config $options Associative array of options or Zend_Config instance - * @throws Zend_Cache_Exception - * @return void - */ - public function __construct($options = array()) - { - if ($options instanceof Zend_Config) { - $options = $options->toArray(); - } - if (!is_array($options)) { - Zend_Cache::throwException("Options passed were not an array" - . " or Zend_Config instance."); - } - while (list($name, $value) = each($options)) { - $this->setOption($name, $value); - } - $this->_loggerSanity(); - } - - /** - * Set options using an instance of type Zend_Config - * - * @param Zend_Config $config - * @return Zend_Cache_Core - */ - public function setConfig(Zend_Config $config) - { - $options = $config->toArray(); - while (list($name, $value) = each($options)) { - $this->setOption($name, $value); - } - return $this; - } - - /** - * Set the backend - * - * @param Zend_Cache_Backend $backendObject - * @throws Zend_Cache_Exception - * @return void - */ - public function setBackend(Zend_Cache_Backend $backendObject) - { - $this->_backend= $backendObject; - // some options (listed in $_directivesList) have to be given - // to the backend too (even if they are not "backend specific") - $directives = array(); - foreach (Zend_Cache_Core::$_directivesList as $directive) { - $directives[$directive] = $this->_options[$directive]; - } - $this->_backend->setDirectives($directives); - if (in_array('Zend_Cache_Backend_ExtendedInterface', class_implements($this->_backend))) { - $this->_extendedBackend = true; - $this->_backendCapabilities = $this->_backend->getCapabilities(); - } - - } - - /** - * Returns the backend - * - * @return Zend_Cache_Backend backend object - */ - public function getBackend() - { - return $this->_backend; - } - - /** - * Public frontend to set an option - * - * There is an additional validation (relatively to the protected _setOption method) - * - * @param string $name Name of the option - * @param mixed $value Value of the option - * @throws Zend_Cache_Exception - * @return void - */ - public function setOption($name, $value) - { - if (!is_string($name)) { - Zend_Cache::throwException("Incorrect option name!"); - } - $name = strtolower($name); - if (array_key_exists($name, $this->_options)) { - // This is a Core option - $this->_setOption($name, $value); - return; - } - if (array_key_exists($name, $this->_specificOptions)) { - // This a specic option of this frontend - $this->_specificOptions[$name] = $value; - return; - } - } - - /** - * Public frontend to get an option value - * - * @param string $name Name of the option - * @throws Zend_Cache_Exception - * @return mixed option value - */ - public function getOption($name) - { - $name = strtolower($name); - - if (array_key_exists($name, $this->_options)) { - // This is a Core option - return $this->_options[$name]; - } - - if (array_key_exists($name, $this->_specificOptions)) { - // This a specic option of this frontend - return $this->_specificOptions[$name]; - } - - Zend_Cache::throwException("Incorrect option name : $name"); - } - - /** - * Set an option - * - * @param string $name Name of the option - * @param mixed $value Value of the option - * @throws Zend_Cache_Exception - * @return void - */ - private function _setOption($name, $value) - { - if (!is_string($name) || !array_key_exists($name, $this->_options)) { - Zend_Cache::throwException("Incorrect option name : $name"); - } - if ($name == 'lifetime' && empty($value)) { - $value = null; - } - $this->_options[$name] = $value; - } - - /** - * Force a new lifetime - * - * The new value is set for the core/frontend but for the backend too (directive) - * - * @param int $newLifetime New lifetime (in seconds) - * @return void - */ - public function setLifetime($newLifetime) - { - $this->_options['lifetime'] = $newLifetime; - $this->_backend->setDirectives(array( - 'lifetime' => $newLifetime - )); - } - - /** - * Test if a cache is available for the given id and (if yes) return it (false else) - * - * @param string $id Cache id - * @param boolean $doNotTestCacheValidity If set to true, the cache validity won't be tested - * @param boolean $doNotUnserialize Do not serialize (even if automatic_serialization is true) => for internal use - * @return mixed|false Cached datas - */ - public function load($id, $doNotTestCacheValidity = false, $doNotUnserialize = false) - { - if (!$this->_options['caching']) { - return false; - } - $id = $this->_id($id); // cache id may need prefix - $this->_lastId = $id; - self::_validateIdOrTag($id); - - $this->_log("Zend_Cache_Core: load item '{$id}'", 7); - $data = $this->_backend->load($id, $doNotTestCacheValidity); - if ($data===false) { - // no cache available - return false; - } - if ((!$doNotUnserialize) && $this->_options['automatic_serialization']) { - // we need to unserialize before sending the result - return unserialize($data); - } - return $data; - } - - /** - * Test if a cache is available for the given id - * - * @param string $id Cache id - * @return int|false Last modified time of cache entry if it is available, false otherwise - */ - public function test($id) - { - if (!$this->_options['caching']) { - return false; - } - $id = $this->_id($id); // cache id may need prefix - self::_validateIdOrTag($id); - $this->_lastId = $id; - - $this->_log("Zend_Cache_Core: test item '{$id}'", 7); - return $this->_backend->test($id); - } - - /** - * Save some data in a cache - * - * @param mixed $data Data to put in cache (can be another type than string if automatic_serialization is on) - * @param string $id Cache id (if not set, the last cache id will be used) - * @param array $tags Cache tags - * @param int $specificLifetime If != false, set a specific lifetime for this cache record (null => infinite lifetime) - * @param int $priority integer between 0 (very low priority) and 10 (maximum priority) used by some particular backends - * @throws Zend_Cache_Exception - * @return boolean True if no problem - */ - public function save($data, $id = null, $tags = array(), $specificLifetime = false, $priority = 8) - { - if (!$this->_options['caching']) { - return true; - } - if ($id === null) { - $id = $this->_lastId; - } else { - $id = $this->_id($id); - } - self::_validateIdOrTag($id); - self::_validateTagsArray($tags); - if ($this->_options['automatic_serialization']) { - // we need to serialize datas before storing them - $data = serialize($data); - } else { - if (!is_string($data)) { - Zend_Cache::throwException("Datas must be string or set automatic_serialization = true"); - } - } - - // automatic cleaning - if ($this->_options['automatic_cleaning_factor'] > 0) { - $rand = rand(1, $this->_options['automatic_cleaning_factor']); - if ($rand==1) { - // new way || deprecated way - if ($this->_extendedBackend || method_exists($this->_backend, 'isAutomaticCleaningAvailable')) { - $this->_log("Zend_Cache_Core::save(): automatic cleaning running", 7); - $this->clean(Zend_Cache::CLEANING_MODE_OLD); - } else { - $this->_log("Zend_Cache_Core::save(): automatic cleaning is not available/necessary with current backend", 4); - } - } - } - - $this->_log("Zend_Cache_Core: save item '{$id}'", 7); - if ($this->_options['ignore_user_abort']) { - $abort = ignore_user_abort(true); - } - if (($this->_extendedBackend) && ($this->_backendCapabilities['priority'])) { - $result = $this->_backend->save($data, $id, $tags, $specificLifetime, $priority); - } else { - $result = $this->_backend->save($data, $id, $tags, $specificLifetime); - } - if ($this->_options['ignore_user_abort']) { - ignore_user_abort($abort); - } - - if (!$result) { - // maybe the cache is corrupted, so we remove it ! - $this->_log("Zend_Cache_Core::save(): failed to save item '{$id}' -> removing it", 4); - $this->_backend->remove($id); - return false; - } - - if ($this->_options['write_control']) { - $data2 = $this->_backend->load($id, true); - if ($data!=$data2) { - $this->_log("Zend_Cache_Core::save(): write control of item '{$id}' failed -> removing it", 4); - $this->_backend->remove($id); - return false; - } - } - - return true; - } - - /** - * Remove a cache - * - * @param string $id Cache id to remove - * @return boolean True if ok - */ - public function remove($id) - { - if (!$this->_options['caching']) { - return true; - } - $id = $this->_id($id); // cache id may need prefix - self::_validateIdOrTag($id); - - $this->_log("Zend_Cache_Core: remove item '{$id}'", 7); - return $this->_backend->remove($id); - } - - /** - * Clean cache entries - * - * Available modes are : - * 'all' (default) => remove all cache entries ($tags is not used) - * 'old' => remove too old cache entries ($tags is not used) - * 'matchingTag' => remove cache entries matching all given tags - * ($tags can be an array of strings or a single string) - * 'notMatchingTag' => remove cache entries not matching one of the given tags - * ($tags can be an array of strings or a single string) - * 'matchingAnyTag' => remove cache entries matching any given tags - * ($tags can be an array of strings or a single string) - * - * @param string $mode - * @param array|string $tags - * @throws Zend_Cache_Exception - * @return boolean True if ok - */ - public function clean($mode = 'all', $tags = array()) - { - if (!$this->_options['caching']) { - return true; - } - if (!in_array($mode, array(Zend_Cache::CLEANING_MODE_ALL, - Zend_Cache::CLEANING_MODE_OLD, - Zend_Cache::CLEANING_MODE_MATCHING_TAG, - Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG, - Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG))) { - Zend_Cache::throwException('Invalid cleaning mode'); - } - self::_validateTagsArray($tags); - - return $this->_backend->clean($mode, $tags); - } - - /** - * Return an array of stored cache ids which match given tags - * - * In case of multiple tags, a logical AND is made between tags - * - * @param array $tags array of tags - * @return array array of matching cache ids (string) - */ - public function getIdsMatchingTags($tags = array()) - { - if (!$this->_extendedBackend) { - Zend_Cache::throwException(self::BACKEND_NOT_IMPLEMENTS_EXTENDED_IF); - } - if (!($this->_backendCapabilities['tags'])) { - Zend_Cache::throwException(self::BACKEND_NOT_SUPPORTS_TAG); - } - - $ids = $this->_backend->getIdsMatchingTags($tags); - - // we need to remove cache_id_prefix from ids (see #ZF-6178, #ZF-7600) - if (isset($this->_options['cache_id_prefix']) && $this->_options['cache_id_prefix'] !== '') { - $prefix = & $this->_options['cache_id_prefix']; - $prefixLen = strlen($prefix); - foreach ($ids as &$id) { - if (strpos($id, $prefix) === 0) { - $id = substr($id, $prefixLen); - } - } - } - - return $ids; - } - - /** - * Return an array of stored cache ids which don't match given tags - * - * In case of multiple tags, a logical OR is made between tags - * - * @param array $tags array of tags - * @return array array of not matching cache ids (string) - */ - public function getIdsNotMatchingTags($tags = array()) - { - if (!$this->_extendedBackend) { - Zend_Cache::throwException(self::BACKEND_NOT_IMPLEMENTS_EXTENDED_IF); - } - if (!($this->_backendCapabilities['tags'])) { - Zend_Cache::throwException(self::BACKEND_NOT_SUPPORTS_TAG); - } - - $ids = $this->_backend->getIdsNotMatchingTags($tags); - - // we need to remove cache_id_prefix from ids (see #ZF-6178, #ZF-7600) - if (isset($this->_options['cache_id_prefix']) && $this->_options['cache_id_prefix'] !== '') { - $prefix = & $this->_options['cache_id_prefix']; - $prefixLen = strlen($prefix); - foreach ($ids as &$id) { - if (strpos($id, $prefix) === 0) { - $id = substr($id, $prefixLen); - } - } - } - - return $ids; - } - - /** - * Return an array of stored cache ids which match any given tags - * - * In case of multiple tags, a logical OR is made between tags - * - * @param array $tags array of tags - * @return array array of matching any cache ids (string) - */ - public function getIdsMatchingAnyTags($tags = array()) - { - if (!$this->_extendedBackend) { - Zend_Cache::throwException(self::BACKEND_NOT_IMPLEMENTS_EXTENDED_IF); - } - if (!($this->_backendCapabilities['tags'])) { - Zend_Cache::throwException(self::BACKEND_NOT_SUPPORTS_TAG); - } - - $ids = $this->_backend->getIdsMatchingAnyTags($tags); - - // we need to remove cache_id_prefix from ids (see #ZF-6178, #ZF-7600) - if (isset($this->_options['cache_id_prefix']) && $this->_options['cache_id_prefix'] !== '') { - $prefix = & $this->_options['cache_id_prefix']; - $prefixLen = strlen($prefix); - foreach ($ids as &$id) { - if (strpos($id, $prefix) === 0) { - $id = substr($id, $prefixLen); - } - } - } - - return $ids; - } - - /** - * Return an array of stored cache ids - * - * @return array array of stored cache ids (string) - */ - public function getIds() - { - if (!$this->_extendedBackend) { - Zend_Cache::throwException(self::BACKEND_NOT_IMPLEMENTS_EXTENDED_IF); - } - - $ids = $this->_backend->getIds(); - - // we need to remove cache_id_prefix from ids (see #ZF-6178, #ZF-7600) - if (isset($this->_options['cache_id_prefix']) && $this->_options['cache_id_prefix'] !== '') { - $prefix = & $this->_options['cache_id_prefix']; - $prefixLen = strlen($prefix); - foreach ($ids as &$id) { - if (strpos($id, $prefix) === 0) { - $id = substr($id, $prefixLen); - } - } - } - - return $ids; - } - - /** - * Return an array of stored tags - * - * @return array array of stored tags (string) - */ - public function getTags() - { - if (!$this->_extendedBackend) { - Zend_Cache::throwException(self::BACKEND_NOT_IMPLEMENTS_EXTENDED_IF); - } - if (!($this->_backendCapabilities['tags'])) { - Zend_Cache::throwException(self::BACKEND_NOT_SUPPORTS_TAG); - } - return $this->_backend->getTags(); - } - - /** - * Return the filling percentage of the backend storage - * - * @return int integer between 0 and 100 - */ - public function getFillingPercentage() - { - if (!$this->_extendedBackend) { - Zend_Cache::throwException(self::BACKEND_NOT_IMPLEMENTS_EXTENDED_IF); - } - return $this->_backend->getFillingPercentage(); - } - - /** - * Return an array of metadatas for the given cache id - * - * The array will include these keys : - * - expire : the expire timestamp - * - tags : a string array of tags - * - mtime : timestamp of last modification time - * - * @param string $id cache id - * @return array array of metadatas (false if the cache id is not found) - */ - public function getMetadatas($id) - { - if (!$this->_extendedBackend) { - Zend_Cache::throwException(self::BACKEND_NOT_IMPLEMENTS_EXTENDED_IF); - } - $id = $this->_id($id); // cache id may need prefix - return $this->_backend->getMetadatas($id); - } - - /** - * Give (if possible) an extra lifetime to the given cache id - * - * @param string $id cache id - * @param int $extraLifetime - * @return boolean true if ok - */ - public function touch($id, $extraLifetime) - { - if (!$this->_extendedBackend) { - Zend_Cache::throwException(self::BACKEND_NOT_IMPLEMENTS_EXTENDED_IF); - } - $id = $this->_id($id); // cache id may need prefix - - $this->_log("Zend_Cache_Core: touch item '{$id}'", 7); - return $this->_backend->touch($id, $extraLifetime); - } - - /** - * Validate a cache id or a tag (security, reliable filenames, reserved prefixes...) - * - * Throw an exception if a problem is found - * - * @param string $string Cache id or tag - * @throws Zend_Cache_Exception - * @return void - */ - protected static function _validateIdOrTag($string) - { - if (!is_string($string)) { - Zend_Cache::throwException('Invalid id or tag : must be a string'); - } - if (substr($string, 0, 9) == 'internal-') { - Zend_Cache::throwException('"internal-*" ids or tags are reserved'); - } - if (!preg_match('~^[a-zA-Z0-9_]+$~D', $string)) { - Zend_Cache::throwException("Invalid id or tag '$string' : must use only [a-zA-Z0-9_]"); - } - } - - /** - * Validate a tags array (security, reliable filenames, reserved prefixes...) - * - * Throw an exception if a problem is found - * - * @param array $tags Array of tags - * @throws Zend_Cache_Exception - * @return void - */ - protected static function _validateTagsArray($tags) - { - if (!is_array($tags)) { - Zend_Cache::throwException('Invalid tags array : must be an array'); - } - foreach($tags as $tag) { - self::_validateIdOrTag($tag); - } - reset($tags); - } - - /** - * Make sure if we enable logging that the Zend_Log class - * is available. - * Create a default log object if none is set. - * - * @throws Zend_Cache_Exception - * @return void - */ - protected function _loggerSanity() - { - if (!isset($this->_options['logging']) || !$this->_options['logging']) { - return; - } - - if (isset($this->_options['logger']) && $this->_options['logger'] instanceof Zend_Log) { - return; - } - - // Create a default logger to the standard output stream - require_once 'Zend/Log.php'; - require_once 'Zend/Log/Writer/Stream.php'; - require_once 'Zend/Log/Filter/Priority.php'; - $logger = new Zend_Log(new Zend_Log_Writer_Stream('php://output')); - $logger->addFilter(new Zend_Log_Filter_Priority(Zend_Log::WARN, '<=')); - $this->_options['logger'] = $logger; - } - - /** - * Log a message at the WARN (4) priority. - * - * @param string $message - * @throws Zend_Cache_Exception - * @return void - */ - protected function _log($message, $priority = 4) - { - if (!$this->_options['logging']) { - return; - } - if (!(isset($this->_options['logger']) || $this->_options['logger'] instanceof Zend_Log)) { - Zend_Cache::throwException('Logging is enabled but logger is not set'); - } - $logger = $this->_options['logger']; - $logger->log($message, $priority); - } - - /** - * Make and return a cache id - * - * Checks 'cache_id_prefix' and returns new id with prefix or simply the id if null - * - * @param string $id Cache id - * @return string Cache id (with or without prefix) - */ - protected function _id($id) - { - if (($id !== null) && isset($this->_options['cache_id_prefix'])) { - return $this->_options['cache_id_prefix'] . $id; // return with prefix - } - return $id; // no prefix, just return the $id passed - } - -} diff --git a/library/Zend/Cache/Exception.php b/library/Zend/Cache/Exception.php deleted file mode 100644 index 44884515..00000000 --- a/library/Zend/Cache/Exception.php +++ /dev/null @@ -1,32 +0,0 @@ -_tags = $tags; - $this->_extension = $extension; - ob_start(array($this, '_flush')); - ob_implicit_flush(false); - $this->_idStack[] = $id; - return false; - } - - /** - * callback for output buffering - * (shouldn't really be called manually) - * - * @param string $data Buffered output - * @return string Data to send to browser - */ - public function _flush($data) - { - $id = array_pop($this->_idStack); - if ($id === null) { - Zend_Cache::throwException('use of _flush() without a start()'); - } - if ($this->_extension) { - $this->save(serialize(array($data, $this->_extension)), $id, $this->_tags); - } else { - $this->save($data, $id, $this->_tags); - } - return $data; - } -} diff --git a/library/Zend/Cache/Frontend/Class.php b/library/Zend/Cache/Frontend/Class.php deleted file mode 100644 index 7c9a1709..00000000 --- a/library/Zend/Cache/Frontend/Class.php +++ /dev/null @@ -1,265 +0,0 @@ - (mixed) cached_entity : - * - if set to a class name, we will cache an abstract class and will use only static calls - * - if set to an object, we will cache this object methods - * - * ====> (boolean) cache_by_default : - * - if true, method calls will be cached by default - * - * ====> (array) cached_methods : - * - an array of method names which will be cached (even if cache_by_default = false) - * - * ====> (array) non_cached_methods : - * - an array of method names which won't be cached (even if cache_by_default = true) - * - * @var array available options - */ - protected $_specificOptions = array( - 'cached_entity' => null, - 'cache_by_default' => true, - 'cached_methods' => array(), - 'non_cached_methods' => array() - ); - - /** - * Tags array - * - * @var array - */ - private $_tags = array(); - - /** - * SpecificLifetime value - * - * false => no specific life time - * - * @var int - */ - private $_specificLifetime = false; - - /** - * The cached object or the name of the cached abstract class - * - * @var mixed - */ - private $_cachedEntity = null; - - /** - * The class name of the cached object or cached abstract class - * - * Used to differentiate between different classes with the same method calls. - * - * @var string - */ - private $_cachedEntityLabel = ''; - - /** - * Priority (used by some particular backends) - * - * @var int - */ - private $_priority = 8; - - /** - * Constructor - * - * @param array $options Associative array of options - * @throws Zend_Cache_Exception - * @return void - */ - public function __construct(array $options = array()) - { - while (list($name, $value) = each($options)) { - $this->setOption($name, $value); - } - if ($this->_specificOptions['cached_entity'] === null) { - Zend_Cache::throwException('cached_entity must be set !'); - } - $this->setCachedEntity($this->_specificOptions['cached_entity']); - $this->setOption('automatic_serialization', true); - } - - /** - * Set a specific life time - * - * @param int $specificLifetime - * @return void - */ - public function setSpecificLifetime($specificLifetime = false) - { - $this->_specificLifetime = $specificLifetime; - } - - /** - * Set the priority (used by some particular backends) - * - * @param int $priority integer between 0 (very low priority) and 10 (maximum priority) - */ - public function setPriority($priority) - { - $this->_priority = $priority; - } - - /** - * Public frontend to set an option - * - * Just a wrapper to get a specific behaviour for cached_entity - * - * @param string $name Name of the option - * @param mixed $value Value of the option - * @throws Zend_Cache_Exception - * @return void - */ - public function setOption($name, $value) - { - if ($name == 'cached_entity') { - $this->setCachedEntity($value); - } else { - parent::setOption($name, $value); - } - } - - /** - * Specific method to set the cachedEntity - * - * if set to a class name, we will cache an abstract class and will use only static calls - * if set to an object, we will cache this object methods - * - * @param mixed $cachedEntity - */ - public function setCachedEntity($cachedEntity) - { - if (!is_string($cachedEntity) && !is_object($cachedEntity)) { - Zend_Cache::throwException('cached_entity must be an object or a class name'); - } - $this->_cachedEntity = $cachedEntity; - $this->_specificOptions['cached_entity'] = $cachedEntity; - if (is_string($this->_cachedEntity)){ - $this->_cachedEntityLabel = $this->_cachedEntity; - } else { - $ro = new ReflectionObject($this->_cachedEntity); - $this->_cachedEntityLabel = $ro->getName(); - } - } - - /** - * Set the cache array - * - * @param array $tags - * @return void - */ - public function setTagsArray($tags = array()) - { - $this->_tags = $tags; - } - - /** - * Main method : call the specified method or get the result from cache - * - * @param string $name Method name - * @param array $parameters Method parameters - * @return mixed Result - */ - public function __call($name, $parameters) - { - $callback = array($this->_cachedEntity, $name); - - if (!is_callable($callback, false)) { - Zend_Cache::throwException('Invalid callback'); - } - - $cacheBool1 = $this->_specificOptions['cache_by_default']; - $cacheBool2 = in_array($name, $this->_specificOptions['cached_methods']); - $cacheBool3 = in_array($name, $this->_specificOptions['non_cached_methods']); - $cache = (($cacheBool1 || $cacheBool2) && (!$cacheBool3)); - if (!$cache) { - // We do not have not cache - return call_user_func_array($callback, $parameters); - } - - $id = $this->_makeId($name, $parameters); - if ( ($rs = $this->load($id)) && isset($rs[0], $rs[1]) ) { - // A cache is available - $output = $rs[0]; - $return = $rs[1]; - } else { - // A cache is not available (or not valid for this frontend) - ob_start(); - ob_implicit_flush(false); - - try { - $return = call_user_func_array($callback, $parameters); - $output = ob_get_clean(); - $data = array($output, $return); - $this->save($data, $id, $this->_tags, $this->_specificLifetime, $this->_priority); - } catch (Exception $e) { - ob_end_clean(); - throw $e; - } - } - - echo $output; - return $return; - } - - /** - * ZF-9970 - * - * @deprecated - */ - private function _makeId($name, $args) - { - return $this->makeId($name, $args); - } - - /** - * Make a cache id from the method name and parameters - * - * @param string $name Method name - * @param array $args Method parameters - * @return string Cache id - */ - public function makeId($name, array $args = array()) - { - return md5($this->_cachedEntityLabel . '__' . $name . '__' . serialize($args)); - } - -} diff --git a/library/Zend/Cache/Frontend/File.php b/library/Zend/Cache/Frontend/File.php deleted file mode 100644 index 04355c49..00000000 --- a/library/Zend/Cache/Frontend/File.php +++ /dev/null @@ -1,222 +0,0 @@ - (string) master_file : - * - a complete path of the master file - * - deprecated (see master_files) - * - * ====> (array) master_files : - * - an array of complete path of master files - * - this option has to be set ! - * - * ====> (string) master_files_mode : - * - Zend_Cache_Frontend_File::MODE_AND or Zend_Cache_Frontend_File::MODE_OR - * - if MODE_AND, then all master files have to be touched to get a cache invalidation - * - if MODE_OR (default), then a single touched master file is enough to get a cache invalidation - * - * ====> (boolean) ignore_missing_master_files - * - if set to true, missing master files are ignored silently - * - if set to false (default), an exception is thrown if there is a missing master file - * @var array available options - */ - protected $_specificOptions = array( - 'master_file' => null, - 'master_files' => null, - 'master_files_mode' => 'OR', - 'ignore_missing_master_files' => false - ); - - /** - * Master file mtimes - * - * Array of int - * - * @var array - */ - private $_masterFile_mtimes = null; - - /** - * Constructor - * - * @param array $options Associative array of options - * @throws Zend_Cache_Exception - * @return void - */ - public function __construct(array $options = array()) - { - while (list($name, $value) = each($options)) { - $this->setOption($name, $value); - } - if (!isset($this->_specificOptions['master_files'])) { - Zend_Cache::throwException('master_files option must be set'); - } - } - - /** - * Change the master_files option - * - * @param array $masterFiles the complete paths and name of the master files - */ - public function setMasterFiles(array $masterFiles) - { - $this->_specificOptions['master_file'] = null; // to keep a compatibility - $this->_specificOptions['master_files'] = null; - $this->_masterFile_mtimes = array(); - - clearstatcache(); - $i = 0; - foreach ($masterFiles as $masterFile) { - if (file_exists($masterFile)) { - $mtime = filemtime($masterFile); - } else { - $mtime = false; - } - - if (!$this->_specificOptions['ignore_missing_master_files'] && !$mtime) { - Zend_Cache::throwException('Unable to read master_file : ' . $masterFile); - } - - $this->_masterFile_mtimes[$i] = $mtime; - $this->_specificOptions['master_files'][$i] = $masterFile; - if ($i === 0) { // to keep a compatibility - $this->_specificOptions['master_file'] = $masterFile; - } - - $i++; - } - } - - /** - * Change the master_file option - * - * To keep the compatibility - * - * @deprecated - * @param string $masterFile the complete path and name of the master file - */ - public function setMasterFile($masterFile) - { - $this->setMasterFiles(array($masterFile)); - } - - /** - * Public frontend to set an option - * - * Just a wrapper to get a specific behaviour for master_file - * - * @param string $name Name of the option - * @param mixed $value Value of the option - * @throws Zend_Cache_Exception - * @return void - */ - public function setOption($name, $value) - { - if ($name == 'master_file') { - $this->setMasterFile($value); - } else if ($name == 'master_files') { - $this->setMasterFiles($value); - } else { - parent::setOption($name, $value); - } - } - - /** - * Test if a cache is available for the given id and (if yes) return it (false else) - * - * @param string $id Cache id - * @param boolean $doNotTestCacheValidity If set to true, the cache validity won't be tested - * @param boolean $doNotUnserialize Do not serialize (even if automatic_serialization is true) => for internal use - * @return mixed|false Cached datas - */ - public function load($id, $doNotTestCacheValidity = false, $doNotUnserialize = false) - { - if (!$doNotTestCacheValidity) { - if ($this->test($id)) { - return parent::load($id, true, $doNotUnserialize); - } - return false; - } - return parent::load($id, true, $doNotUnserialize); - } - - /** - * Test if a cache is available for the given id - * - * @param string $id Cache id - * @return int|false Last modified time of cache entry if it is available, false otherwise - */ - public function test($id) - { - $lastModified = parent::test($id); - if ($lastModified) { - if ($this->_specificOptions['master_files_mode'] == self::MODE_AND) { - // MODE_AND - foreach($this->_masterFile_mtimes as $masterFileMTime) { - if ($masterFileMTime) { - if ($lastModified > $masterFileMTime) { - return $lastModified; - } - } - } - } else { - // MODE_OR - $res = true; - foreach($this->_masterFile_mtimes as $masterFileMTime) { - if ($masterFileMTime) { - if ($lastModified <= $masterFileMTime) { - return false; - } - } - } - return $lastModified; - } - } - return false; - } - -} - diff --git a/library/Zend/Cache/Frontend/Function.php b/library/Zend/Cache/Frontend/Function.php deleted file mode 100644 index 4550f980..00000000 --- a/library/Zend/Cache/Frontend/Function.php +++ /dev/null @@ -1,179 +0,0 @@ - (boolean) cache_by_default : - * - if true, function calls will be cached by default - * - * ====> (array) cached_functions : - * - an array of function names which will be cached (even if cache_by_default = false) - * - * ====> (array) non_cached_functions : - * - an array of function names which won't be cached (even if cache_by_default = true) - * - * @var array options - */ - protected $_specificOptions = array( - 'cache_by_default' => true, - 'cached_functions' => array(), - 'non_cached_functions' => array() - ); - - /** - * Constructor - * - * @param array $options Associative array of options - * @return void - */ - public function __construct(array $options = array()) - { - while (list($name, $value) = each($options)) { - $this->setOption($name, $value); - } - $this->setOption('automatic_serialization', true); - } - - /** - * Main method : call the specified function or get the result from cache - * - * @param callback $callback A valid callback - * @param array $parameters Function parameters - * @param array $tags Cache tags - * @param int $specificLifetime If != false, set a specific lifetime for this cache record (null => infinite lifetime) - * @param int $priority integer between 0 (very low priority) and 10 (maximum priority) used by some particular backends - * @return mixed Result - */ - public function call($callback, array $parameters = array(), $tags = array(), $specificLifetime = false, $priority = 8) - { - if (!is_callable($callback, true, $name)) { - Zend_Cache::throwException('Invalid callback'); - } - - $cacheBool1 = $this->_specificOptions['cache_by_default']; - $cacheBool2 = in_array($name, $this->_specificOptions['cached_functions']); - $cacheBool3 = in_array($name, $this->_specificOptions['non_cached_functions']); - $cache = (($cacheBool1 || $cacheBool2) && (!$cacheBool3)); - if (!$cache) { - // Caching of this callback is disabled - return call_user_func_array($callback, $parameters); - } - - $id = $this->_makeId($callback, $parameters); - if ( ($rs = $this->load($id)) && isset($rs[0], $rs[1])) { - // A cache is available - $output = $rs[0]; - $return = $rs[1]; - } else { - // A cache is not available (or not valid for this frontend) - ob_start(); - ob_implicit_flush(false); - $return = call_user_func_array($callback, $parameters); - $output = ob_get_clean(); - $data = array($output, $return); - $this->save($data, $id, $tags, $specificLifetime, $priority); - } - - echo $output; - return $return; - } - - /** - * ZF-9970 - * - * @deprecated - */ - private function _makeId($callback, array $args) - { - return $this->makeId($callback, $args); - } - - /** - * Make a cache id from the function name and parameters - * - * @param callback $callback A valid callback - * @param array $args Function parameters - * @throws Zend_Cache_Exception - * @return string Cache id - */ - public function makeId($callback, array $args = array()) - { - if (!is_callable($callback, true, $name)) { - Zend_Cache::throwException('Invalid callback'); - } - - // functions, methods and classnames are case-insensitive - $name = strtolower($name); - - // generate a unique id for object callbacks - if (is_object($callback)) { // Closures & __invoke - $object = $callback; - } elseif (isset($callback[0])) { // array($object, 'method') - $object = $callback[0]; - } - if (isset($object)) { - try { - $tmp = @serialize($callback); - } catch (Exception $e) { - Zend_Cache::throwException($e->getMessage()); - } - if (!$tmp) { - $lastErr = error_get_last(); - Zend_Cache::throwException("Can't serialize callback object to generate id: {$lastErr['message']}"); - } - $name.= '__' . $tmp; - } - - // generate a unique id for arguments - $argsStr = ''; - if ($args) { - try { - $argsStr = @serialize(array_values($args)); - } catch (Exception $e) { - Zend_Cache::throwException($e->getMessage()); - } - if (!$argsStr) { - $lastErr = error_get_last(); - throw Zend_Cache::throwException("Can't serialize arguments to generate id: {$lastErr['message']}"); - } - } - - return md5($name . $argsStr); - } - -} diff --git a/library/Zend/Cache/Frontend/Output.php b/library/Zend/Cache/Frontend/Output.php deleted file mode 100644 index f9a086e1..00000000 --- a/library/Zend/Cache/Frontend/Output.php +++ /dev/null @@ -1,105 +0,0 @@ -_idStack = array(); - } - - /** - * Start the cache - * - * @param string $id Cache id - * @param boolean $doNotTestCacheValidity If set to true, the cache validity won't be tested - * @param boolean $echoData If set to true, datas are sent to the browser if the cache is hit (simply returned else) - * @return mixed True if the cache is hit (false else) with $echoData=true (default) ; string else (datas) - */ - public function start($id, $doNotTestCacheValidity = false, $echoData = true) - { - $data = $this->load($id, $doNotTestCacheValidity); - if ($data !== false) { - if ( $echoData ) { - echo($data); - return true; - } else { - return $data; - } - } - ob_start(); - ob_implicit_flush(false); - $this->_idStack[] = $id; - return false; - } - - /** - * Stop the cache - * - * @param array $tags Tags array - * @param int $specificLifetime If != false, set a specific lifetime for this cache record (null => infinite lifetime) - * @param string $forcedDatas If not null, force written datas with this - * @param boolean $echoData If set to true, datas are sent to the browser - * @param int $priority integer between 0 (very low priority) and 10 (maximum priority) used by some particular backends - * @return void - */ - public function end($tags = array(), $specificLifetime = false, $forcedDatas = null, $echoData = true, $priority = 8) - { - if ($forcedDatas === null) { - $data = ob_get_clean(); - } else { - $data =& $forcedDatas; - } - $id = array_pop($this->_idStack); - if ($id === null) { - Zend_Cache::throwException('use of end() without a start()'); - } - $this->save($data, $id, $tags, $specificLifetime, $priority); - if ($echoData) { - echo($data); - } - } - -} diff --git a/library/Zend/Cache/Frontend/Page.php b/library/Zend/Cache/Frontend/Page.php deleted file mode 100644 index e2c98038..00000000 --- a/library/Zend/Cache/Frontend/Page.php +++ /dev/null @@ -1,404 +0,0 @@ - (boolean) http_conditional : - * - if true, http conditional mode is on - * WARNING : http_conditional OPTION IS NOT IMPLEMENTED FOR THE MOMENT (TODO) - * - * ====> (boolean) debug_header : - * - if true, a debug text is added before each cached pages - * - * ====> (boolean) content_type_memorization : - * - deprecated => use memorize_headers instead - * - if the Content-Type header is sent after the cache was started, the - * corresponding value can be memorized and replayed when the cache is hit - * (if false (default), the frontend doesn't take care of Content-Type header) - * - * ====> (array) memorize_headers : - * - an array of strings corresponding to some HTTP headers name. Listed headers - * will be stored with cache datas and "replayed" when the cache is hit - * - * ====> (array) default_options : - * - an associative array of default options : - * - (boolean) cache : cache is on by default if true - * - (boolean) cacheWithXXXVariables (XXXX = 'Get', 'Post', 'Session', 'Files' or 'Cookie') : - * if true, cache is still on even if there are some variables in this superglobal array - * if false, cache is off if there are some variables in this superglobal array - * - (boolean) makeIdWithXXXVariables (XXXX = 'Get', 'Post', 'Session', 'Files' or 'Cookie') : - * if true, we have to use the content of this superglobal array to make a cache id - * if false, the cache id won't be dependent of the content of this superglobal array - * - (int) specific_lifetime : cache specific lifetime - * (false => global lifetime is used, null => infinite lifetime, - * integer => this lifetime is used), this "lifetime" is probably only - * usefull when used with "regexps" array - * - (array) tags : array of tags (strings) - * - (int) priority : integer between 0 (very low priority) and 10 (maximum priority) used by - * some particular backends - * - * ====> (array) regexps : - * - an associative array to set options only for some REQUEST_URI - * - keys are (pcre) regexps - * - values are associative array with specific options to set if the regexp matchs on $_SERVER['REQUEST_URI'] - * (see default_options for the list of available options) - * - if several regexps match the $_SERVER['REQUEST_URI'], only the last one will be used - * - * @var array options - */ - protected $_specificOptions = array( - 'http_conditional' => false, - 'debug_header' => false, - 'content_type_memorization' => false, - 'memorize_headers' => array(), - 'default_options' => array( - 'cache_with_get_variables' => false, - 'cache_with_post_variables' => false, - 'cache_with_session_variables' => false, - 'cache_with_files_variables' => false, - 'cache_with_cookie_variables' => false, - 'make_id_with_get_variables' => true, - 'make_id_with_post_variables' => true, - 'make_id_with_session_variables' => true, - 'make_id_with_files_variables' => true, - 'make_id_with_cookie_variables' => true, - 'cache' => true, - 'specific_lifetime' => false, - 'tags' => array(), - 'priority' => null - ), - 'regexps' => array() - ); - - /** - * Internal array to store some options - * - * @var array associative array of options - */ - protected $_activeOptions = array(); - - /** - * If true, the page won't be cached - * - * @var boolean - */ - protected $_cancel = false; - - /** - * Constructor - * - * @param array $options Associative array of options - * @param boolean $doNotTestCacheValidity If set to true, the cache validity won't be tested - * @throws Zend_Cache_Exception - * @return void - */ - public function __construct(array $options = array()) - { - while (list($name, $value) = each($options)) { - $name = strtolower($name); - switch ($name) { - case 'regexps': - $this->_setRegexps($value); - break; - case 'default_options': - $this->_setDefaultOptions($value); - break; - case 'content_type_memorization': - $this->_setContentTypeMemorization($value); - break; - default: - $this->setOption($name, $value); - } - } - if (isset($this->_specificOptions['http_conditional'])) { - if ($this->_specificOptions['http_conditional']) { - Zend_Cache::throwException('http_conditional is not implemented for the moment !'); - } - } - $this->setOption('automatic_serialization', true); - } - - /** - * Specific setter for the 'default_options' option (with some additional tests) - * - * @param array $options Associative array - * @throws Zend_Cache_Exception - * @return void - */ - protected function _setDefaultOptions($options) - { - if (!is_array($options)) { - Zend_Cache::throwException('default_options must be an array !'); - } - foreach ($options as $key=>$value) { - if (!is_string($key)) { - Zend_Cache::throwException("invalid option [$key] !"); - } - $key = strtolower($key); - if (isset($this->_specificOptions['default_options'][$key])) { - $this->_specificOptions['default_options'][$key] = $value; - } - } - } - - /** - * Set the deprecated contentTypeMemorization option - * - * @param boolean $value value - * @return void - * @deprecated - */ - protected function _setContentTypeMemorization($value) - { - $found = null; - foreach ($this->_specificOptions['memorize_headers'] as $key => $value) { - if (strtolower($value) == 'content-type') { - $found = $key; - } - } - if ($value) { - if (!$found) { - $this->_specificOptions['memorize_headers'][] = 'Content-Type'; - } - } else { - if ($found) { - unset($this->_specificOptions['memorize_headers'][$found]); - } - } - } - - /** - * Specific setter for the 'regexps' option (with some additional tests) - * - * @param array $options Associative array - * @throws Zend_Cache_Exception - * @return void - */ - protected function _setRegexps($regexps) - { - if (!is_array($regexps)) { - Zend_Cache::throwException('regexps option must be an array !'); - } - foreach ($regexps as $regexp=>$conf) { - if (!is_array($conf)) { - Zend_Cache::throwException('regexps option must be an array of arrays !'); - } - $validKeys = array_keys($this->_specificOptions['default_options']); - foreach ($conf as $key=>$value) { - if (!is_string($key)) { - Zend_Cache::throwException("unknown option [$key] !"); - } - $key = strtolower($key); - if (!in_array($key, $validKeys)) { - unset($regexps[$regexp][$key]); - } - } - } - $this->setOption('regexps', $regexps); - } - - /** - * Start the cache - * - * @param string $id (optional) A cache id (if you set a value here, maybe you have to use Output frontend instead) - * @param boolean $doNotDie For unit testing only ! - * @return boolean True if the cache is hit (false else) - */ - public function start($id = false, $doNotDie = false) - { - $this->_cancel = false; - $lastMatchingRegexp = null; - if (isset($_SERVER['REQUEST_URI'])) { - foreach ($this->_specificOptions['regexps'] as $regexp => $conf) { - if (preg_match("`$regexp`", $_SERVER['REQUEST_URI'])) { - $lastMatchingRegexp = $regexp; - } - } - } - $this->_activeOptions = $this->_specificOptions['default_options']; - if ($lastMatchingRegexp !== null) { - $conf = $this->_specificOptions['regexps'][$lastMatchingRegexp]; - foreach ($conf as $key=>$value) { - $this->_activeOptions[$key] = $value; - } - } - if (!($this->_activeOptions['cache'])) { - return false; - } - if (!$id) { - $id = $this->_makeId(); - if (!$id) { - return false; - } - } - $array = $this->load($id); - if ($array !== false) { - $data = $array['data']; - $headers = $array['headers']; - if (!headers_sent()) { - foreach ($headers as $key=>$headerCouple) { - $name = $headerCouple[0]; - $value = $headerCouple[1]; - header("$name: $value"); - } - } - if ($this->_specificOptions['debug_header']) { - echo 'DEBUG HEADER : This is a cached page !'; - } - echo $data; - if ($doNotDie) { - return true; - } - die(); - } - ob_start(array($this, '_flush')); - ob_implicit_flush(false); - return false; - } - - /** - * Cancel the current caching process - */ - public function cancel() - { - $this->_cancel = true; - } - - /** - * callback for output buffering - * (shouldn't really be called manually) - * - * @param string $data Buffered output - * @return string Data to send to browser - */ - public function _flush($data) - { - if ($this->_cancel) { - return $data; - } - $contentType = null; - $storedHeaders = array(); - $headersList = headers_list(); - foreach($this->_specificOptions['memorize_headers'] as $key=>$headerName) { - foreach ($headersList as $headerSent) { - $tmp = explode(':', $headerSent); - $headerSentName = trim(array_shift($tmp)); - if (strtolower($headerName) == strtolower($headerSentName)) { - $headerSentValue = trim(implode(':', $tmp)); - $storedHeaders[] = array($headerSentName, $headerSentValue); - } - } - } - $array = array( - 'data' => $data, - 'headers' => $storedHeaders - ); - $this->save($array, null, $this->_activeOptions['tags'], $this->_activeOptions['specific_lifetime'], $this->_activeOptions['priority']); - return $data; - } - - /** - * Make an id depending on REQUEST_URI and superglobal arrays (depending on options) - * - * @return mixed|false a cache id (string), false if the cache should have not to be used - */ - protected function _makeId() - { - $tmp = $_SERVER['REQUEST_URI']; - $array = explode('?', $tmp, 2); - $tmp = $array[0]; - foreach (array('Get', 'Post', 'Session', 'Files', 'Cookie') as $arrayName) { - $tmp2 = $this->_makePartialId($arrayName, $this->_activeOptions['cache_with_' . strtolower($arrayName) . '_variables'], $this->_activeOptions['make_id_with_' . strtolower($arrayName) . '_variables']); - if ($tmp2===false) { - return false; - } - $tmp = $tmp . $tmp2; - } - return md5($tmp); - } - - /** - * Make a partial id depending on options - * - * @param string $arrayName Superglobal array name - * @param bool $bool1 If true, cache is still on even if there are some variables in the superglobal array - * @param bool $bool2 If true, we have to use the content of the superglobal array to make a partial id - * @return mixed|false Partial id (string) or false if the cache should have not to be used - */ - protected function _makePartialId($arrayName, $bool1, $bool2) - { - switch ($arrayName) { - case 'Get': - $var = $_GET; - break; - case 'Post': - $var = $_POST; - break; - case 'Session': - if (isset($_SESSION)) { - $var = $_SESSION; - } else { - $var = null; - } - break; - case 'Cookie': - if (isset($_COOKIE)) { - $var = $_COOKIE; - } else { - $var = null; - } - break; - case 'Files': - $var = $_FILES; - break; - default: - return false; - } - if ($bool1) { - if ($bool2) { - return serialize($var); - } - return ''; - } - if (count($var) > 0) { - return false; - } - return ''; - } - -} diff --git a/library/Zend/Cache/Manager.php b/library/Zend/Cache/Manager.php deleted file mode 100644 index 8f96e666..00000000 --- a/library/Zend/Cache/Manager.php +++ /dev/null @@ -1,298 +0,0 @@ - array( - 'frontend' => array( - 'name' => 'Core', - 'options' => array( - 'automatic_serialization' => true, - ), - ), - 'backend' => array( - 'name' => 'File', - 'options' => array( - // use system temp dir by default of file backend - // 'cache_dir' => '../cache', - ), - ), - ), - - // Static Page HTML Cache - 'page' => array( - 'frontend' => array( - 'name' => 'Capture', - 'options' => array( - 'ignore_user_abort' => true, - ), - ), - 'backend' => array( - 'name' => 'Static', - 'options' => array( - 'public_dir' => '../public', - ), - ), - ), - - // Tag Cache - 'pagetag' => array( - 'frontend' => array( - 'name' => 'Core', - 'options' => array( - 'automatic_serialization' => true, - 'lifetime' => null - ), - ), - 'backend' => array( - 'name' => 'File', - 'options' => array( - // use system temp dir by default of file backend - // 'cache_dir' => '../cache', - // use default umask of file backend - // 'cache_file_umask' => 0644 - ), - ), - ), - ); - - /** - * Set a new cache for the Cache Manager to contain - * - * @param string $name - * @param Zend_Cache_Core $cache - * @return Zend_Cache_Manager - */ - public function setCache($name, Zend_Cache_Core $cache) - { - $this->_caches[$name] = $cache; - return $this; - } - - /** - * Check if the Cache Manager contains the named cache object, or a named - * configuration template to lazy load the cache object - * - * @param string $name - * @return bool - */ - public function hasCache($name) - { - if (isset($this->_caches[$name]) - || $this->hasCacheTemplate($name) - ) { - return true; - } - return false; - } - - /** - * Fetch the named cache object, or instantiate and return a cache object - * using a named configuration template - * - * @param string $name - * @return Zend_Cache_Core - */ - public function getCache($name) - { - if (isset($this->_caches[$name])) { - return $this->_caches[$name]; - } - if (isset($this->_optionTemplates[$name])) { - if ($name == self::PAGECACHE - && (!isset($this->_optionTemplates[$name]['backend']['options']['tag_cache']) - || !$this->_optionTemplates[$name]['backend']['options']['tag_cache'] instanceof Zend_Cache_Core) - ) { - $this->_optionTemplates[$name]['backend']['options']['tag_cache'] - = $this->getCache(self::PAGETAGCACHE); - } - - $this->_caches[$name] = Zend_Cache::factory( - $this->_optionTemplates[$name]['frontend']['name'], - $this->_optionTemplates[$name]['backend']['name'], - isset($this->_optionTemplates[$name]['frontend']['options']) ? $this->_optionTemplates[$name]['frontend']['options'] : array(), - isset($this->_optionTemplates[$name]['backend']['options']) ? $this->_optionTemplates[$name]['backend']['options'] : array(), - isset($this->_optionTemplates[$name]['frontend']['customFrontendNaming']) ? $this->_optionTemplates[$name]['frontend']['customFrontendNaming'] : false, - isset($this->_optionTemplates[$name]['backend']['customBackendNaming']) ? $this->_optionTemplates[$name]['backend']['customBackendNaming'] : false, - isset($this->_optionTemplates[$name]['frontendBackendAutoload']) ? $this->_optionTemplates[$name]['frontendBackendAutoload'] : false - ); - - return $this->_caches[$name]; - } - } - - /** - * Fetch all available caches - * - * @return array An array of all available caches with it's names as key - */ - public function getCaches() - { - $caches = $this->_caches; - foreach ($this->_optionTemplates as $name => $tmp) { - if (!isset($caches[$name])) { - $caches[$name] = $this->getCache($name); - } - } - return $caches; - } - - /** - * Set a named configuration template from which a cache object can later - * be lazy loaded - * - * @param string $name - * @param array $options - * @return Zend_Cache_Manager - */ - public function setCacheTemplate($name, $options) - { - if ($options instanceof Zend_Config) { - $options = $options->toArray(); - } elseif (!is_array($options)) { - require_once 'Zend/Cache/Exception.php'; - throw new Zend_Cache_Exception('Options passed must be in' - . ' an associative array or instance of Zend_Config'); - } - $this->_optionTemplates[$name] = $options; - return $this; - } - - /** - * Check if the named configuration template - * - * @param string $name - * @return bool - */ - public function hasCacheTemplate($name) - { - if (isset($this->_optionTemplates[$name])) { - return true; - } - return false; - } - - /** - * Get the named configuration template - * - * @param string $name - * @return array - */ - public function getCacheTemplate($name) - { - if (isset($this->_optionTemplates[$name])) { - return $this->_optionTemplates[$name]; - } - } - - /** - * Pass an array containing changes to be applied to a named - * configuration - * template - * - * @param string $name - * @param array $options - * @return Zend_Cache_Manager - * @throws Zend_Cache_Exception for invalid options format or if option templates do not have $name - */ - public function setTemplateOptions($name, $options) - { - if ($options instanceof Zend_Config) { - $options = $options->toArray(); - } elseif (!is_array($options)) { - require_once 'Zend/Cache/Exception.php'; - throw new Zend_Cache_Exception('Options passed must be in' - . ' an associative array or instance of Zend_Config'); - } - if (!isset($this->_optionTemplates[$name])) { - throw new Zend_Cache_Exception('A cache configuration template' - . 'does not exist with the name "' . $name . '"'); - } - $this->_optionTemplates[$name] - = $this->_mergeOptions($this->_optionTemplates[$name], $options); - return $this; - } - - /** - * Simple method to merge two configuration arrays - * - * @param array $current - * @param array $options - * @return array - */ - protected function _mergeOptions(array $current, array $options) - { - if (isset($options['frontend']['name'])) { - $current['frontend']['name'] = $options['frontend']['name']; - } - if (isset($options['backend']['name'])) { - $current['backend']['name'] = $options['backend']['name']; - } - if (isset($options['frontend']['options'])) { - foreach ($options['frontend']['options'] as $key=>$value) { - $current['frontend']['options'][$key] = $value; - } - } - if (isset($options['backend']['options'])) { - foreach ($options['backend']['options'] as $key=>$value) { - $current['backend']['options'][$key] = $value; - } - } - return $current; - } -} diff --git a/library/Zend/Captcha/Adapter.php b/library/Zend/Captcha/Adapter.php deleted file mode 100644 index e5a1df0c..00000000 --- a/library/Zend/Captcha/Adapter.php +++ /dev/null @@ -1,76 +0,0 @@ -_name; - } - - /** - * Set name - * - * @param string $name - */ - public function setName($name) - { - $this->_name = $name; - return $this; - } - - /** - * Constructor - * - * @param array|Zend_Config $options - * @return void - */ - public function __construct($options = null) - { - // Set options - if (is_array($options)) { - $this->setOptions($options); - } else if ($options instanceof Zend_Config) { - $this->setConfig($options); - } - } - - /** - * Set single option for the object - * - * @param string $key - * @param string $value - * @return Zend_Form_Element - */ - public function setOption($key, $value) - { - if (in_array(strtolower($key), $this->_skipOptions)) { - return $this; - } - - $method = 'set' . ucfirst ($key); - if (method_exists ($this, $method)) { - // Setter exists; use it - $this->$method ($value); - $this->_options[$key] = $value; - } elseif (property_exists($this, $key)) { - // Assume it's metadata - $this->$key = $value; - $this->_options[$key] = $value; - } - return $this; - } - - /** - * Set object state from options array - * - * @param array $options - * @return Zend_Form_Element - */ - public function setOptions($options = null) - { - foreach ($options as $key => $value) { - $this->setOption($key, $value); - } - return $this; - } - - /** - * Retrieve options representing object state - * - * @return array - */ - public function getOptions() - { - return $this->_options; - } - - /** - * Set object state from config object - * - * @param Zend_Config $config - * @return Zend_Captcha_Base - */ - public function setConfig(Zend_Config $config) - { - return $this->setOptions($config->toArray()); - } - - /** - * Get optional decorator - * - * By default, return null, indicating no extra decorator needed. - * - * @return null - */ - public function getDecorator() - { - return null; - } -} diff --git a/library/Zend/Captcha/Dumb.php b/library/Zend/Captcha/Dumb.php deleted file mode 100644 index f03dce30..00000000 --- a/library/Zend/Captcha/Dumb.php +++ /dev/null @@ -1,75 +0,0 @@ -_label = $label; - } - - /** - * Retrieve the label for the CAPTCHA - * @return string - */ - public function getLabel() - { - return $this->_label; - } - /** - * Render the captcha - * - * @param Zend_View_Interface $view - * @param mixed $element - * @return string - */ - public function render(Zend_View_Interface $view = null, $element = null) - { - return $this->getLabel() . ': ' - . strrev($this->getWord()) - . ''; - } -} diff --git a/library/Zend/Captcha/Exception.php b/library/Zend/Captcha/Exception.php deleted file mode 100644 index 94be5ba6..00000000 --- a/library/Zend/Captcha/Exception.php +++ /dev/null @@ -1,37 +0,0 @@ -_figlet = new Zend_Text_Figlet($options); - } - - /** - * Generate new captcha - * - * @return string - */ - public function generate() - { - $this->_useNumbers = false; - return parent::generate(); - } - - /** - * Display the captcha - * - * @param Zend_View_Interface $view - * @param mixed $element - * @return string - */ - public function render(Zend_View_Interface $view = null, $element = null) - { - return '
        '
        -             . $this->_figlet->render($this->getWord())
        -             . "
        \n"; - } -} diff --git a/library/Zend/Captcha/Image.php b/library/Zend/Captcha/Image.php deleted file mode 100644 index 0db2cc8e..00000000 --- a/library/Zend/Captcha/Image.php +++ /dev/null @@ -1,609 +0,0 @@ -_imgAlt; - } - /** - * @return string - */ - public function getStartImage () - { - return $this->_startImage; - } - /** - * @return int - */ - public function getDotNoiseLevel () - { - return $this->_dotNoiseLevel; - } - /** - * @return int - */ - public function getLineNoiseLevel () - { - return $this->_lineNoiseLevel; - } - /** - * Get captcha expiration - * - * @return int - */ - public function getExpiration() - { - return $this->_expiration; - } - - /** - * Get garbage collection frequency - * - * @return int - */ - public function getGcFreq() - { - return $this->_gcFreq; - } - /** - * Get font to use when generating captcha - * - * @return string - */ - public function getFont() - { - return $this->_font; - } - - /** - * Get font size - * - * @return int - */ - public function getFontSize() - { - return $this->_fsize; - } - - /** - * Get captcha image height - * - * @return int - */ - public function getHeight() - { - return $this->_height; - } - - /** - * Get captcha image directory - * - * @return string - */ - public function getImgDir() - { - return $this->_imgDir; - } - /** - * Get captcha image base URL - * - * @return string - */ - public function getImgUrl() - { - return $this->_imgUrl; - } - /** - * Get captcha image file suffix - * - * @return string - */ - public function getSuffix() - { - return $this->_suffix; - } - /** - * Get captcha image width - * - * @return int - */ - public function getWidth() - { - return $this->_width; - } - /** - * @param string $startImage - */ - public function setStartImage ($startImage) - { - $this->_startImage = $startImage; - return $this; - } - /** - * @param int $dotNoiseLevel - */ - public function setDotNoiseLevel ($dotNoiseLevel) - { - $this->_dotNoiseLevel = $dotNoiseLevel; - return $this; - } - /** - * @param int $lineNoiseLevel - */ - public function setLineNoiseLevel ($lineNoiseLevel) - { - $this->_lineNoiseLevel = $lineNoiseLevel; - return $this; - } - - /** - * Set captcha expiration - * - * @param int $expiration - * @return Zend_Captcha_Image - */ - public function setExpiration($expiration) - { - $this->_expiration = $expiration; - return $this; - } - - /** - * Set garbage collection frequency - * - * @param int $gcFreq - * @return Zend_Captcha_Image - */ - public function setGcFreq($gcFreq) - { - $this->_gcFreq = $gcFreq; - return $this; - } - - /** - * Set captcha font - * - * @param string $font - * @return Zend_Captcha_Image - */ - public function setFont($font) - { - $this->_font = $font; - return $this; - } - - /** - * Set captcha font size - * - * @param int $fsize - * @return Zend_Captcha_Image - */ - public function setFontSize($fsize) - { - $this->_fsize = $fsize; - return $this; - } - - /** - * Set captcha image height - * - * @param int $height - * @return Zend_Captcha_Image - */ - public function setHeight($height) - { - $this->_height = $height; - return $this; - } - - /** - * Set captcha image storage directory - * - * @param string $imgDir - * @return Zend_Captcha_Image - */ - public function setImgDir($imgDir) - { - $this->_imgDir = rtrim($imgDir, "/\\") . '/'; - return $this; - } - - /** - * Set captcha image base URL - * - * @param string $imgUrl - * @return Zend_Captcha_Image - */ - public function setImgUrl($imgUrl) - { - $this->_imgUrl = rtrim($imgUrl, "/\\") . '/'; - return $this; - } - /** - * @param string $imgAlt - */ - public function setImgAlt ($imgAlt) - { - $this->_imgAlt = $imgAlt; - return $this; - } - - /** - * Set captch image filename suffix - * - * @param string $suffix - * @return Zend_Captcha_Image - */ - public function setSuffix($suffix) - { - $this->_suffix = $suffix; - return $this; - } - - /** - * Set captcha image width - * - * @param int $width - * @return Zend_Captcha_Image - */ - public function setWidth($width) - { - $this->_width = $width; - return $this; - } - - /** - * Generate random frequency - * - * @return float - */ - protected function _randomFreq() - { - return mt_rand(700000, 1000000) / 15000000; - } - - /** - * Generate random phase - * - * @return float - */ - protected function _randomPhase() - { - // random phase from 0 to pi - return mt_rand(0, 3141592) / 1000000; - } - - /** - * Generate random character size - * - * @return int - */ - protected function _randomSize() - { - return mt_rand(300, 700) / 100; - } - - /** - * Generate captcha - * - * @return string captcha ID - */ - public function generate() - { - $id = parent::generate(); - $tries = 5; - // If there's already such file, try creating a new ID - while($tries-- && file_exists($this->getImgDir() . $id . $this->getSuffix())) { - $id = $this->_generateRandomId(); - $this->_setId($id); - } - $this->_generateImage($id, $this->getWord()); - - if (mt_rand(1, $this->getGcFreq()) == 1) { - $this->_gc(); - } - return $id; - } - - /** - * Generate image captcha - * - * Override this function if you want different image generator - * Wave transform from http://www.captcha.ru/captchas/multiwave/ - * - * @param string $id Captcha ID - * @param string $word Captcha word - */ - protected function _generateImage($id, $word) - { - if (!extension_loaded("gd")) { - require_once 'Zend/Captcha/Exception.php'; - throw new Zend_Captcha_Exception("Image CAPTCHA requires GD extension"); - } - - if (!function_exists("imagepng")) { - require_once 'Zend/Captcha/Exception.php'; - throw new Zend_Captcha_Exception("Image CAPTCHA requires PNG support"); - } - - if (!function_exists("imageftbbox")) { - require_once 'Zend/Captcha/Exception.php'; - throw new Zend_Captcha_Exception("Image CAPTCHA requires FT fonts support"); - } - - $font = $this->getFont(); - - if (empty($font)) { - require_once 'Zend/Captcha/Exception.php'; - throw new Zend_Captcha_Exception("Image CAPTCHA requires font"); - } - - $w = $this->getWidth(); - $h = $this->getHeight(); - $fsize = $this->getFontSize(); - - $img_file = $this->getImgDir() . $id . $this->getSuffix(); - if(empty($this->_startImage)) { - $img = imagecreatetruecolor($w, $h); - } else { - $img = imagecreatefrompng($this->_startImage); - if(!$img) { - require_once 'Zend/Captcha/Exception.php'; - throw new Zend_Captcha_Exception("Can not load start image"); - } - $w = imagesx($img); - $h = imagesy($img); - } - $text_color = imagecolorallocate($img, 0, 0, 0); - $bg_color = imagecolorallocate($img, 255, 255, 255); - imagefilledrectangle($img, 0, 0, $w-1, $h-1, $bg_color); - $textbox = imageftbbox($fsize, 0, $font, $word); - $x = ($w - ($textbox[2] - $textbox[0])) / 2; - $y = ($h - ($textbox[7] - $textbox[1])) / 2; - imagefttext($img, $fsize, 0, $x, $y, $text_color, $font, $word); - - // generate noise - for ($i=0; $i<$this->_dotNoiseLevel; $i++) { - imagefilledellipse($img, mt_rand(0,$w), mt_rand(0,$h), 2, 2, $text_color); - } - for($i=0; $i<$this->_lineNoiseLevel; $i++) { - imageline($img, mt_rand(0,$w), mt_rand(0,$h), mt_rand(0,$w), mt_rand(0,$h), $text_color); - } - - // transformed image - $img2 = imagecreatetruecolor($w, $h); - $bg_color = imagecolorallocate($img2, 255, 255, 255); - imagefilledrectangle($img2, 0, 0, $w-1, $h-1, $bg_color); - // apply wave transforms - $freq1 = $this->_randomFreq(); - $freq2 = $this->_randomFreq(); - $freq3 = $this->_randomFreq(); - $freq4 = $this->_randomFreq(); - - $ph1 = $this->_randomPhase(); - $ph2 = $this->_randomPhase(); - $ph3 = $this->_randomPhase(); - $ph4 = $this->_randomPhase(); - - $szx = $this->_randomSize(); - $szy = $this->_randomSize(); - - for ($x = 0; $x < $w; $x++) { - for ($y = 0; $y < $h; $y++) { - $sx = $x + (sin($x*$freq1 + $ph1) + sin($y*$freq3 + $ph3)) * $szx; - $sy = $y + (sin($x*$freq2 + $ph2) + sin($y*$freq4 + $ph4)) * $szy; - - if ($sx < 0 || $sy < 0 || $sx >= $w - 1 || $sy >= $h - 1) { - continue; - } else { - $color = (imagecolorat($img, $sx, $sy) >> 16) & 0xFF; - $color_x = (imagecolorat($img, $sx + 1, $sy) >> 16) & 0xFF; - $color_y = (imagecolorat($img, $sx, $sy + 1) >> 16) & 0xFF; - $color_xy = (imagecolorat($img, $sx + 1, $sy + 1) >> 16) & 0xFF; - } - if ($color == 255 && $color_x == 255 && $color_y == 255 && $color_xy == 255) { - // ignore background - continue; - } elseif ($color == 0 && $color_x == 0 && $color_y == 0 && $color_xy == 0) { - // transfer inside of the image as-is - $newcolor = 0; - } else { - // do antialiasing for border items - $frac_x = $sx-floor($sx); - $frac_y = $sy-floor($sy); - $frac_x1 = 1-$frac_x; - $frac_y1 = 1-$frac_y; - - $newcolor = $color * $frac_x1 * $frac_y1 - + $color_x * $frac_x * $frac_y1 - + $color_y * $frac_x1 * $frac_y - + $color_xy * $frac_x * $frac_y; - } - imagesetpixel($img2, $x, $y, imagecolorallocate($img2, $newcolor, $newcolor, $newcolor)); - } - } - - // generate noise - for ($i=0; $i<$this->_dotNoiseLevel; $i++) { - imagefilledellipse($img2, mt_rand(0,$w), mt_rand(0,$h), 2, 2, $text_color); - } - for ($i=0; $i<$this->_lineNoiseLevel; $i++) { - imageline($img2, mt_rand(0,$w), mt_rand(0,$h), mt_rand(0,$w), mt_rand(0,$h), $text_color); - } - - imagepng($img2, $img_file); - imagedestroy($img); - imagedestroy($img2); - } - - /** - * Remove old files from image directory - * - */ - protected function _gc() - { - $expire = time() - $this->getExpiration(); - $imgdir = $this->getImgDir(); - if(!$imgdir || strlen($imgdir) < 2) { - // safety guard - return; - } - $suffixLength = strlen($this->_suffix); - foreach (new DirectoryIterator($imgdir) as $file) { - if (!$file->isDot() && !$file->isDir()) { - if (file_exists($file->getPathname()) && $file->getMTime() < $expire) { - // only deletes files ending with $this->_suffix - if (substr($file->getFilename(), -($suffixLength)) == $this->_suffix) { - unlink($file->getPathname()); - } - } - } - } - } - - /** - * Display the captcha - * - * @param Zend_View_Interface $view - * @param mixed $element - * @return string - */ - public function render(Zend_View_Interface $view = null, $element = null) - { - $endTag = ' />'; - if (($view instanceof Zend_View_Abstract) && !$view->doctype()->isXhtml()) { - $endTag = '>'; - } - return '' . $this->getImgAlt()
-             . ' 'Missing captcha fields', - self::ERR_CAPTCHA => 'Failed to validate captcha', - self::BAD_CAPTCHA => 'Captcha value is wrong: %value%', - ); - - /** - * Retrieve ReCaptcha Private key - * - * @return string - */ - public function getPrivkey() - { - return $this->getService()->getPrivateKey(); - } - - /** - * Retrieve ReCaptcha Public key - * - * @return string - */ - public function getPubkey() - { - return $this->getService()->getPublicKey(); - } - - /** - * Set ReCaptcha Private key - * - * @param string $privkey - * @return Zend_Captcha_ReCaptcha - */ - public function setPrivkey($privkey) - { - $this->getService()->setPrivateKey($privkey); - return $this; - } - - /** - * Set ReCaptcha public key - * - * @param string $pubkey - * @return Zend_Captcha_ReCaptcha - */ - public function setPubkey($pubkey) - { - $this->getService()->setPublicKey($pubkey); - return $this; - } - - /** - * Constructor - * - * @param array|Zend_Config $options - * @return void - */ - public function __construct($options = null) - { - $this->setService(new Zend_Service_ReCaptcha()); - $this->_serviceParams = $this->getService()->getParams(); - $this->_serviceOptions = $this->getService()->getOptions(); - - parent::__construct($options); - - if ($options instanceof Zend_Config) { - $options = $options->toArray(); - } - if (!empty($options)) { - $this->setOptions($options); - } - } - - /** - * Set service object - * - * @param Zend_Service_ReCaptcha $service - * @return Zend_Captcha_ReCaptcha - */ - public function setService(Zend_Service_ReCaptcha $service) - { - $this->_service = $service; - return $this; - } - - /** - * Retrieve ReCaptcha service object - * - * @return Zend_Service_ReCaptcha - */ - public function getService() - { - return $this->_service; - } - - /** - * Set option - * - * If option is a service parameter, proxies to the service. The same - * goes for any service options (distinct from service params) - * - * @param string $key - * @param mixed $value - * @return Zend_Captcha_ReCaptcha - */ - public function setOption($key, $value) - { - $service = $this->getService(); - if (isset($this->_serviceParams[$key])) { - $service->setParam($key, $value); - return $this; - } - if (isset($this->_serviceOptions[$key])) { - $service->setOption($key, $value); - return $this; - } - return parent::setOption($key, $value); - } - - /** - * Generate captcha - * - * @see Zend_Form_Captcha_Adapter::generate() - * @return string - */ - public function generate() - { - return ""; - } - - /** - * Validate captcha - * - * @see Zend_Validate_Interface::isValid() - * @param mixed $value - * @return boolean - */ - public function isValid($value, $context = null) - { - if (!is_array($value) && !is_array($context)) { - $this->_error(self::MISSING_VALUE); - return false; - } - - if (!is_array($value) && is_array($context)) { - $value = $context; - } - - if (empty($value[$this->_CHALLENGE]) || empty($value[$this->_RESPONSE])) { - $this->_error(self::MISSING_VALUE); - return false; - } - - $service = $this->getService(); - - $res = $service->verify($value[$this->_CHALLENGE], $value[$this->_RESPONSE]); - - if (!$res) { - $this->_error(self::ERR_CAPTCHA); - return false; - } - - if (!$res->isValid()) { - $this->_error(self::BAD_CAPTCHA, $res->getErrorCode()); - $service->setParam('error', $res->getErrorCode()); - return false; - } - - return true; - } - - /** - * Render captcha - * - * @param Zend_View_Interface $view - * @param mixed $element - * @return string - */ - public function render(Zend_View_Interface $view = null, $element = null) - { - $name = null; - if ($element instanceof Zend_Form_Element) { - $name = $element->getBelongsTo(); - } - return $this->getService()->getHTML($name); - } - - /** - * Get captcha decorator - * - * @return string - */ - public function getDecorator() - { - return "Captcha_ReCaptcha"; - } -} diff --git a/library/Zend/Captcha/Word.php b/library/Zend/Captcha/Word.php deleted file mode 100644 index 7bef5efd..00000000 --- a/library/Zend/Captcha/Word.php +++ /dev/null @@ -1,418 +0,0 @@ - 'Empty captcha value', - self::MISSING_ID => 'Captcha ID field is missing', - self::BAD_CAPTCHA => 'Captcha value is wrong', - ); - - /** - * Length of the word to generate - * - * @var integer - */ - protected $_wordlen = 8; - - /** - * Retrieve session class to utilize - * - * @return string - */ - public function getSessionClass() - { - return $this->_sessionClass; - } - - /** - * Set session class for persistence - * - * @param string $_sessionClass - * @return Zend_Captcha_Word - */ - public function setSessionClass($_sessionClass) - { - $this->_sessionClass = $_sessionClass; - return $this; - } - - /** - * Retrieve word length to use when genrating captcha - * - * @return integer - */ - public function getWordlen() - { - return $this->_wordlen; - } - - /** - * Set word length of captcha - * - * @param integer $wordlen - * @return Zend_Captcha_Word - */ - public function setWordlen($wordlen) - { - $this->_wordlen = $wordlen; - return $this; - } - - /** - * Retrieve captcha ID - * - * @return string - */ - public function getId () - { - if (null === $this->_id) { - $this->_setId($this->_generateRandomId()); - } - return $this->_id; - } - - /** - * Set captcha identifier - * - * @param string $id - * return Zend_Captcha_Word - */ - protected function _setId ($id) - { - $this->_id = $id; - return $this; - } - - /** - * Set timeout for session token - * - * @param int $ttl - * @return Zend_Captcha_Word - */ - public function setTimeout($ttl) - { - $this->_timeout = (int) $ttl; - return $this; - } - - /** - * Get session token timeout - * - * @return int - */ - public function getTimeout() - { - return $this->_timeout; - } - - /** - * Sets if session should be preserved on generate() - * - * @param bool $keepSession Should session be kept on generate()? - * @return Zend_Captcha_Word - */ - public function setKeepSession($keepSession) - { - $this->_keepSession = $keepSession; - return $this; - } - - /** - * Numbers should be included in the pattern? - * - * @return bool - */ - public function getUseNumbers() - { - return $this->_useNumbers; - } - - /** - * Set if numbers should be included in the pattern - * - * @param bool $_useNumbers numbers should be included in the pattern? - * @return Zend_Captcha_Word - */ - public function setUseNumbers($_useNumbers) - { - $this->_useNumbers = $_useNumbers; - return $this; - } - - /** - * Get session object - * - * @return Zend_Session_Namespace - */ - public function getSession() - { - if (!isset($this->_session) || (null === $this->_session)) { - $id = $this->getId(); - if (!class_exists($this->_sessionClass)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($this->_sessionClass); - } - $this->_session = new $this->_sessionClass('Zend_Form_Captcha_' . $id); - $this->_session->setExpirationHops(1, null, true); - $this->_session->setExpirationSeconds($this->getTimeout()); - } - return $this->_session; - } - - /** - * Set session namespace object - * - * @param Zend_Session_Namespace $session - * @return Zend_Captcha_Word - */ - public function setSession(Zend_Session_Namespace $session) - { - $this->_session = $session; - if($session) { - $this->_keepSession = true; - } - return $this; - } - - /** - * Get captcha word - * - * @return string - */ - public function getWord() - { - if (empty($this->_word)) { - $session = $this->getSession(); - $this->_word = $session->word; - } - return $this->_word; - } - - /** - * Set captcha word - * - * @param string $word - * @return Zend_Captcha_Word - */ - protected function _setWord($word) - { - $session = $this->getSession(); - $session->word = $word; - $this->_word = $word; - return $this; - } - - /** - * Generate new random word - * - * @return string - */ - protected function _generateWord() - { - $word = ''; - $wordLen = $this->getWordLen(); - $vowels = $this->_useNumbers ? self::$VN : self::$V; - $consonants = $this->_useNumbers ? self::$CN : self::$C; - - for ($i=0; $i < $wordLen; $i = $i + 2) { - // generate word with mix of vowels and consonants - $consonant = $consonants[array_rand($consonants)]; - $vowel = $vowels[array_rand($vowels)]; - $word .= $consonant . $vowel; - } - - if (strlen($word) > $wordLen) { - $word = substr($word, 0, $wordLen); - } - - return $word; - } - - /** - * Generate new session ID and new word - * - * @return string session ID - */ - public function generate() - { - if(!$this->_keepSession) { - $this->_session = null; - } - $id = $this->_generateRandomId(); - $this->_setId($id); - $word = $this->_generateWord(); - $this->_setWord($word); - return $id; - } - - protected function _generateRandomId() - { - return md5(mt_rand(0, 1000) . microtime(true)); - } - - /** - * Validate the word - * - * @see Zend_Validate_Interface::isValid() - * @param mixed $value - * @return boolean - */ - public function isValid($value, $context = null) - { - if (!is_array($value) && !is_array($context)) { - $this->_error(self::MISSING_VALUE); - return false; - } - if (!is_array($value) && is_array($context)) { - $value = $context; - } - - $name = $this->getName(); - - if (isset($value[$name])) { - $value = $value[$name]; - } - - if (!isset($value['input'])) { - $this->_error(self::MISSING_VALUE); - return false; - } - $input = strtolower($value['input']); - $this->_setValue($input); - - if (!isset($value['id'])) { - $this->_error(self::MISSING_ID); - return false; - } - - $this->_id = $value['id']; - if ($input !== $this->getWord()) { - $this->_error(self::BAD_CAPTCHA); - return false; - } - - return true; - } - - /** - * Get captcha decorator - * - * @return string - */ - public function getDecorator() - { - return "Captcha_Word"; - } -} diff --git a/library/Zend/Cloud/AbstractFactory.php b/library/Zend/Cloud/AbstractFactory.php deleted file mode 100644 index ad480a07..00000000 --- a/library/Zend/Cloud/AbstractFactory.php +++ /dev/null @@ -1,67 +0,0 @@ -toArray(); - } - - if (!isset($options[$adapterOption])) { - return null; - } - - $classname = $options[$adapterOption]; - unset($options[$adapterOption]); - if (!class_exists($classname)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($classname); - } - - return new $classname($options); - } -} diff --git a/library/Zend/Cloud/DocumentService/Adapter.php b/library/Zend/Cloud/DocumentService/Adapter.php deleted file mode 100644 index 9479fea3..00000000 --- a/library/Zend/Cloud/DocumentService/Adapter.php +++ /dev/null @@ -1,155 +0,0 @@ -_documentClass = (string) $class; - return $this; - } - - /** - * Get the class for document objects - * - * @return string - */ - public function getDocumentClass() - { - return $this->_documentClass; - } - - /** - * Set the class for document set objects - * - * @param string $class - * @return Zend_Cloud_DocumentService_Adapter_AbstractAdapter - */ - public function setDocumentSetClass($class) - { - $this->_documentSetClass = (string) $class; - return $this; - } - - /** - * Get the class for document set objects - * - * @return string - */ - public function getDocumentSetClass() - { - return $this->_documentSetClass; - } - - /** - * Set the query class for query objects - * - * @param string $class - * @return Zend_Cloud_DocumentService_Adapter_AbstractAdapter - */ - public function setQueryClass($class) - { - $this->_queryClass = (string) $class; - return $this; - } - - /** - * Get the class for query objects - * - * @return string - */ - public function getQueryClass() - { - return $this->_queryClass; - } -} diff --git a/library/Zend/Cloud/DocumentService/Adapter/SimpleDb.php b/library/Zend/Cloud/DocumentService/Adapter/SimpleDb.php deleted file mode 100644 index 1e2ffe0d..00000000 --- a/library/Zend/Cloud/DocumentService/Adapter/SimpleDb.php +++ /dev/null @@ -1,468 +0,0 @@ -toArray(); - } - - if (!is_array($options)) { - throw new Zend_Cloud_DocumentService_Exception('Invalid options provided to constructor'); - } - - $this->_simpleDb = new Zend_Service_Amazon_SimpleDb( - $options[self::AWS_ACCESS_KEY], $options[self::AWS_SECRET_KEY] - ); - - if (isset($options[self::HTTP_ADAPTER])) { - $this->_simpleDb->getHttpClient()->setAdapter($options[self::HTTP_ADAPTER]); - } - - if (isset($options[self::DOCUMENT_CLASS])) { - $this->setDocumentClass($options[self::DOCUMENT_CLASS]); - } - - if (isset($options[self::DOCUMENTSET_CLASS])) { - $this->setDocumentSetClass($options[self::DOCUMENTSET_CLASS]); - } - - if (isset($options[self::QUERY_CLASS])) { - $this->setQueryClass($options[self::QUERY_CLASS]); - } - } - - /** - * Create collection. - * - * @param string $name - * @param array $options - * @return void - */ - public function createCollection($name, $options = null) - { - try { - $this->_simpleDb->createDomain($name); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on domain creation: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Delete collection. - * - * @param string $name - * @param array $options - * @return void - */ - public function deleteCollection($name, $options = null) - { - try { - $this->_simpleDb->deleteDomain($name); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on collection deletion: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * List collections. - * - * @param array $options - * @return array - */ - public function listCollections($options = null) - { - try { - // TODO package this in Pages - $domains = $this->_simpleDb->listDomains()->getData(); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on collection deletion: '.$e->getMessage(), $e->getCode(), $e); - } - - return $domains; - } - - /** - * List documents - * - * Returns a key/value array of document names to document objects. - * - * @param string $collectionName Name of collection for which to list documents - * @param array|null $options - * @return Zend_Cloud_DocumentService_DocumentSet - */ - public function listDocuments($collectionName, array $options = null) - { - $query = $this->select('*')->from($collectionName); - $items = $this->query($collectionName, $query, $options); - return $items; - } - - /** - * Insert document - * - * @param string $collectionName Collection into which to insert document - * @param array|Zend_Cloud_DocumentService_Document $document - * @param array $options - * @return void - */ - public function insertDocument($collectionName, $document, $options = null) - { - if (is_array($document)) { - $document = $this->_getDocumentFromArray($document); - } - - if (!$document instanceof Zend_Cloud_DocumentService_Document) { - throw new Zend_Cloud_DocumentService_Exception('Invalid document supplied'); - } - - try { - $this->_simpleDb->putAttributes( - $collectionName, - $document->getID(), - $this->_makeAttributes($document->getID(), $document->getFields()) - ); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on document insertion: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Replace an existing document with a new version - * - * @param string $collectionName - * @param array|Zend_Cloud_DocumentService_Document $document - * @param array $options - * @return void - */ - public function replaceDocument($collectionName, $document, $options = null) - { - if (is_array($document)) { - $document = $this->_getDocumentFromArray($document); - } - - if (!$document instanceof Zend_Cloud_DocumentService_Document) { - throw new Zend_Cloud_DocumentService_Exception('Invalid document supplied'); - } - - // Delete document first, then insert. PutAttributes always keeps any - // fields not referenced in the payload, but present in the document - $documentId = $document->getId(); - $fields = $document->getFields(); - $docClass = get_class($document); - $this->deleteDocument($collectionName, $document, $options); - - $document = new $docClass($fields, $documentId); - $this->insertDocument($collectionName, $document); - } - - /** - * Update document. The new document replaces the existing document. - * - * Option 'merge' specifies to add all attributes (if true) or - * specific attributes ("attr" => true) instead of replacing them. - * By default, attributes are replaced. - * - * @param string $collectionName - * @param mixed|Zend_Cloud_DocumentService_Document $documentId Document ID, adapter-dependent - * @param array|Zend_Cloud_DocumentService_Document $fieldset Set of fields to update - * @param array $options - * @return boolean - */ - public function updateDocument($collectionName, $documentId, $fieldset = null, $options = null) - { - if (null === $fieldset && $documentId instanceof Zend_Cloud_DocumentService_Document) { - $fieldset = $documentId->getFields(); - if (empty($documentId)) { - $documentId = $documentId->getId(); - } - } elseif ($fieldset instanceof Zend_Cloud_DocumentService_Document) { - if (empty($documentId)) { - $documentId = $fieldset->getId(); - } - $fieldset = $fieldset->getFields(); - } - - $replace = array(); - if (empty($options[self::MERGE_OPTION])) { - // no merge option - we replace all - foreach ($fieldset as $key => $value) { - $replace[$key] = true; - } - } elseif (is_array($options[self::MERGE_OPTION])) { - foreach ($fieldset as $key => $value) { - if (empty($options[self::MERGE_OPTION][$key])) { - // if there's merge key, we add it, otherwise we replace it - $replace[$key] = true; - } - } - } // otherwise $replace is empty - all is merged - - try { - $this->_simpleDb->putAttributes( - $collectionName, - $documentId, - $this->_makeAttributes($documentId, $fieldset), - $replace - ); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on document update: '.$e->getMessage(), $e->getCode(), $e); - } - return true; - } - - /** - * Delete document. - * - * @param string $collectionName Collection from which to delete document - * @param mixed $document Document ID or Document object. - * @param array $options - * @return boolean - */ - public function deleteDocument($collectionName, $document, $options = null) - { - if ($document instanceof Zend_Cloud_DocumentService_Document) { - $document = $document->getId(); - } - try { - $this->_simpleDb->deleteAttributes($collectionName, $document); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on document deletion: '.$e->getMessage(), $e->getCode(), $e); - } - return true; - } - - /** - * Fetch single document by ID - * - * @param string $collectionName Collection name - * @param mixed $documentId Document ID, adapter-dependent - * @param array $options - * @return Zend_Cloud_DocumentService_Document - */ - public function fetchDocument($collectionName, $documentId, $options = null) - { - try { - $attributes = $this->_simpleDb->getAttributes($collectionName, $documentId); - if ($attributes == false || count($attributes) == 0) { - return false; - } - return $this->_resolveAttributes($attributes, true); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on fetching document: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Query for documents stored in the document service. If a string is passed in - * $query, the query string will be passed directly to the service. - * - * @param string $collectionName Collection name - * @param string $query - * @param array $options - * @return array Zend_Cloud_DocumentService_DocumentSet - */ - public function query($collectionName, $query, $options = null) - { - $returnDocs = isset($options[self::RETURN_DOCUMENTS]) - ? (bool) $options[self::RETURN_DOCUMENTS] - : true; - - try { - if ($query instanceof Zend_Cloud_DocumentService_Adapter_SimpleDb_Query) { - $query = $query->assemble($collectionName); - } - $result = $this->_simpleDb->select($query); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on document query: '.$e->getMessage(), $e->getCode(), $e); - } - - return $this->_getDocumentSetFromResultSet($result, $returnDocs); - } - - /** - * Create query statement - * - * @param string $fields - * @return Zend_Cloud_DocumentService_Adapter_SimpleDb_Query - */ - public function select($fields = null) - { - $queryClass = $this->getQueryClass(); - if (!class_exists($queryClass)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($queryClass); - } - - $query = new $queryClass($this); - $defaultClass = self::DEFAULT_QUERY_CLASS; - if (!$query instanceof $defaultClass) { - throw new Zend_Cloud_DocumentService_Exception('Query class must extend ' . self::DEFAULT_QUERY_CLASS); - } - - $query->select($fields); - return $query; - } - - /** - * Get the concrete service client - * - * @return Zend_Service_Amazon_SimpleDb - */ - public function getClient() - { - return $this->_simpleDb; - } - - /** - * Convert array of key-value pairs to array of Amazon attributes - * - * @param string $name - * @param array $attributes - * @return array - */ - protected function _makeAttributes($name, $attributes) - { - $result = array(); - foreach ($attributes as $key => $attr) { - $result[] = new Zend_Service_Amazon_SimpleDb_Attribute($name, $key, $attr); - } - return $result; - } - - /** - * Convert array of Amazon attributes to array of key-value pairs - * - * @param array $attributes - * @return array - */ - protected function _resolveAttributes($attributes, $returnDocument = false) - { - $result = array(); - foreach ($attributes as $attr) { - $value = $attr->getValues(); - if (count($value) == 0) { - $value = null; - } elseif (count($value) == 1) { - $value = $value[0]; - } - $result[$attr->getName()] = $value; - } - - // Return as document object? - if ($returnDocument) { - $documentClass = $this->getDocumentClass(); - return new $documentClass($result, $attr->getItemName()); - } - - return $result; - } - - /** - * Create suitable document from array of fields - * - * @param array $document - * @return Zend_Cloud_DocumentService_Document - */ - protected function _getDocumentFromArray($document) - { - if (!isset($document[Zend_Cloud_DocumentService_Document::KEY_FIELD])) { - if (isset($document[self::ITEM_NAME])) { - $key = $document[self::ITEM_NAME]; - unset($document[self::ITEM_NAME]); - } else { - throw new Zend_Cloud_DocumentService_Exception('Fields array should contain the key field '.Zend_Cloud_DocumentService_Document::KEY_FIELD); - } - } else { - $key = $document[Zend_Cloud_DocumentService_Document::KEY_FIELD]; - unset($document[Zend_Cloud_DocumentService_Document::KEY_FIELD]); - } - - $documentClass = $this->getDocumentClass(); - return new $documentClass($document, $key); - } - - /** - * Create a DocumentSet from a SimpleDb resultset - * - * @param Zend_Service_Amazon_SimpleDb_Page $resultSet - * @param bool $returnDocs - * @return Zend_Cloud_DocumentService_DocumentSet - */ - protected function _getDocumentSetFromResultSet(Zend_Service_Amazon_SimpleDb_Page $resultSet, $returnDocs = true) - { - $docs = array(); - foreach ($resultSet->getData() as $item) { - $docs[] = $this->_resolveAttributes($item, $returnDocs); - } - - $setClass = $this->getDocumentSetClass(); - return new $setClass($docs); - } -} diff --git a/library/Zend/Cloud/DocumentService/Adapter/SimpleDb/Query.php b/library/Zend/Cloud/DocumentService/Adapter/SimpleDb/Query.php deleted file mode 100644 index 89545d87..00000000 --- a/library/Zend/Cloud/DocumentService/Adapter/SimpleDb/Query.php +++ /dev/null @@ -1,175 +0,0 @@ -_adapter = $adapter; - if (null !== $collectionName) { - $this->from($collectionName); - } - } - - /** - * Get adapter - * - * @return Zend_Cloud_DocumentService_Adapter_SimpleDb - */ - public function getAdapter() - { - return $this->_adapter; - } - - /** - * Assemble the query into a format the adapter can utilize - * - * @var string $collectionName Name of collection from which to select - * @return string - */ - public function assemble($collectionName = null) - { - $adapter = $this->getAdapter()->getClient(); - $select = null; - $from = null; - $where = null; - $order = null; - $limit = null; - foreach ($this->getClauses() as $clause) { - list($name, $args) = $clause; - - switch ($name) { - case self::QUERY_SELECT: - $select = $args[0]; - break; - case self::QUERY_FROM: - if (null === $from) { - // Only allow setting FROM clause once - $from = $adapter->quoteName($args); - } - break; - case self::QUERY_WHERE: - $statement = $this->_parseWhere($args[0], $args[1]); - if (null === $where) { - $where = $statement; - } else { - $operator = empty($args[2]) ? 'AND' : $args[2]; - $where .= ' ' . $operator . ' ' . $statement; - } - break; - case self::QUERY_WHEREID: - $statement = $this->_parseWhere('ItemName() = ?', array($args)); - if (null === $where) { - $where = $statement; - } else { - $operator = empty($args[2]) ? 'AND' : $args[2]; - $where .= ' ' . $operator . ' ' . $statement; - } - break; - case self::QUERY_ORDER: - $order = $adapter->quoteName($args[0]); - if (isset($args[1])) { - $order .= ' ' . $args[1]; - } - break; - case self::QUERY_LIMIT: - $limit = $args; - break; - default: - // Ignore unknown clauses - break; - } - } - - if (empty($select)) { - $select = "*"; - } - if (empty($from)) { - if (null === $collectionName) { - require_once 'Zend/Cloud/DocumentService/Exception.php'; - throw new Zend_Cloud_DocumentService_Exception("Query requires a FROM clause"); - } - $from = $adapter->quoteName($collectionName); - } - $query = "select $select from $from"; - if (!empty($where)) { - $query .= " where $where"; - } - if (!empty($order)) { - $query .= " order by $order"; - } - if (!empty($limit)) { - $query .= " limit $limit"; - } - return $query; - } - - /** - * Parse a where statement into service-specific language - * - * @todo Ensure this fulfills the entire SimpleDB query specification for WHERE - * @param string $where - * @param array $args - * @return string - */ - protected function _parseWhere($where, $args) - { - if (!is_array($args)) { - $args = (array) $args; - } - $adapter = $this->getAdapter()->getClient(); - $i = 0; - while (false !== ($pos = strpos($where, '?'))) { - $where = substr_replace($where, $adapter->quote($args[$i]), $pos); - ++$i; - } - if (('(' != $where[0]) || (')' != $where[strlen($where) - 1])) { - $where = '(' . $where . ')'; - } - return $where; - } - } diff --git a/library/Zend/Cloud/DocumentService/Adapter/WindowsAzure.php b/library/Zend/Cloud/DocumentService/Adapter/WindowsAzure.php deleted file mode 100644 index e812f898..00000000 --- a/library/Zend/Cloud/DocumentService/Adapter/WindowsAzure.php +++ /dev/null @@ -1,628 +0,0 @@ -toArray(); - } - - if (empty($options)) { - $options = array(); - } - - if (!is_array($options)) { - throw new Zend_Cloud_DocumentService_Exception('Invalid options provided'); - } - - if (isset($options[self::DOCUMENT_CLASS])) { - $this->setDocumentClass($options[self::DOCUMENT_CLASS]); - } - - if (isset($options[self::DOCUMENTSET_CLASS])) { - $this->setDocumentSetClass($options[self::DOCUMENTSET_CLASS]); - } - - if (isset($options[self::QUERY_CLASS])) { - $this->setQueryClass($options[self::QUERY_CLASS]); - } - - // Build Zend_Service_WindowsAzure_Storage_Blob instance - if (!isset($options[self::HOST])) { - $host = self::DEFAULT_HOST; - } else { - $host = $options[self::HOST]; - } - - if (! isset($options[self::ACCOUNT_NAME])) { - throw new Zend_Cloud_DocumentService_Exception('No Windows Azure account name provided.'); - } - - if (! isset($options[self::ACCOUNT_KEY])) { - throw new Zend_Cloud_DocumentService_Exception('No Windows Azure account key provided.'); - } - - // TODO: support $usePathStyleUri and $retryPolicy - try { - $this->_storageClient = new Zend_Service_WindowsAzure_Storage_Table( - $host, $options[self::ACCOUNT_NAME], $options[self::ACCOUNT_KEY]); - // Parse other options - if (! empty($options[self::PROXY_HOST])) { - $proxyHost = $options[self::PROXY_HOST]; - $proxyPort = isset($options[self::PROXY_PORT]) ? $options[self::PROXY_PORT] : 8080; - $proxyCredentials = isset($options[self::PROXY_CREDENTIALS]) ? $options[self::PROXY_CREDENTIALS] : ''; - $this->_storageClient->setProxy(true, $proxyHost, $proxyPort, $proxyCredentials); - } - if (isset($options[self::HTTP_ADAPTER])) { - $this->_storageClient->setHttpClientChannel($options[self::HTTP_ADAPTER]); - } - } catch(Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on document service creation: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Set the default partition key - * - * @param string $key - * @return Zend_Cloud_DocumentService_Adapter_WindowsAzure - */ - public function setDefaultPartitionKey($key) - { - $this->_validateKey($key); - $this->_defaultPartitionKey = $key; - return $this; - } - - /** - * Retrieve default partition key - * - * @return null|string - */ - public function getDefaultPartitionKey() - { - return $this->_defaultPartitionKey; - } - - /** - * Create collection. - * - * @param string $name - * @param array $options - * @return boolean - */ - public function createCollection($name, $options = null) - { - if (!preg_match('/^[A-Za-z][A-Za-z0-9]{2,}$/', $name)) { - throw new Zend_Cloud_DocumentService_Exception('Invalid collection name; Windows Azure collection names must consist of alphanumeric characters only, and be at least 3 characters long'); - } - try { - $this->_storageClient->createTable($name); - } catch(Zend_Service_WindowsAzure_Exception $e) { - if (strpos($e->getMessage(), "table specified already exists") === false) { - throw new Zend_Cloud_DocumentService_Exception('Error on collection creation: '.$e->getMessage(), $e->getCode(), $e); - } - } - return true; - } - - /** - * Delete collection. - * - * @param string $name - * @param array $options - * @return boolean - */ - public function deleteCollection($name, $options = null) - { - try { - $this->_storageClient->deleteTable($name); - } catch(Zend_Service_WindowsAzure_Exception $e) { - if (strpos($e->getMessage(), "does not exist") === false) { - throw new Zend_Cloud_DocumentService_Exception('Error on collection deletion: '.$e->getMessage(), $e->getCode(), $e); - } - } - return true; - } - - /** - * List collections. - * - * @param array $options - * @return array - */ - public function listCollections($options = null) - { - try { - $tables = $this->_storageClient->listTables(); - $restables = array(); - foreach ($tables as $table) { - $restables[] = $table->name; - } - return $restables; - } catch(Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on collection list: '.$e->getMessage(), $e->getCode(), $e); - } - - return $tables; - } - - /** - * Create suitable document from array of fields - * - * @param array $document - * @param null|string $collectionName Collection to which this document belongs - * @return Zend_Cloud_DocumentService_Document - */ - protected function _getDocumentFromArray($document, $collectionName = null) - { - $key = null; - if (!isset($document[Zend_Cloud_DocumentService_Document::KEY_FIELD])) { - if (isset($document[self::ROW_KEY])) { - $rowKey = $document[self::ROW_KEY]; - unset($document[self::ROW_KEY]); - if (isset($document[self::PARTITION_KEY])) { - $key = array($document[self::PARTITION_KEY], $rowKey); - unset($document[self::PARTITION_KEY]); - } elseif (null !== ($partitionKey = $this->getDefaultPartitionKey())) { - $key = array($partitionKey, $rowKey); - } elseif (null !== $collectionName) { - $key = array($collectionName, $rowKey); - } - } - } else { - $key = $document[Zend_Cloud_DocumentService_Document::KEY_FIELD]; - unset($document[Zend_Cloud_DocumentService_Document::KEY_FIELD]); - } - - $documentClass = $this->getDocumentClass(); - return new $documentClass($document, $key); - } - - /** - * List all documents in a collection - * - * @param string $collectionName - * @param null|array $options - * @return Zend_Cloud_DocumentService_DocumentSet - */ - public function listDocuments($collectionName, array $options = null) - { - $select = $this->select()->from($collectionName); - return $this->query($collectionName, $select); - } - - /** - * Insert document - * - * @param array|Zend_Cloud_DocumentService_Document $document - * @param array $options - * @return boolean - */ - public function insertDocument($collectionName, $document, $options = null) - { - if (is_array($document)) { - $document = $this->_getDocumentFromArray($document, $collectionName); - } - - if (!$document instanceof Zend_Cloud_DocumentService_Document) { - throw new Zend_Cloud_DocumentService_Exception('Invalid document supplied'); - } - - $key = $this->_validateDocumentId($document->getId(), $collectionName); - $document->setId($key); - - $this->_validateCompositeKey($key); - $this->_validateFields($document); - try { - - $entity = new Zend_Service_WindowsAzure_Storage_DynamicTableEntity($key[0], $key[1]); - $entity->setAzureValues($document->getFields(), true); - $this->_storageClient->insertEntity($collectionName, $entity); - } catch(Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on document insertion: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Replace document. - * - * The new document replaces the existing document. - * - * @param Zend_Cloud_DocumentService_Document $document - * @param array $options - * @return boolean - */ - public function replaceDocument($collectionName, $document, $options = null) - { - if (is_array($document)) { - $document = $this->_getDocumentFromArray($document, $collectionName); - } - - if (!$document instanceof Zend_Cloud_DocumentService_Document) { - throw new Zend_Cloud_DocumentService_Exception('Invalid document supplied'); - } - - $key = $this->_validateDocumentId($document->getId(), $collectionName); - $this->_validateFields($document); - try { - $entity = new Zend_Service_WindowsAzure_Storage_DynamicTableEntity($key[0], $key[1]); - $entity->setAzureValues($document->getFields(), true); - if (isset($options[self::VERIFY_ETAG])) { - $entity->setEtag($options[self::VERIFY_ETAG]); - } - - $this->_storageClient->updateEntity($collectionName, $entity, isset($options[self::VERIFY_ETAG])); - } catch(Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on document replace: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Update document. - * - * The new document is merged the existing document. - * - * @param string $collectionName - * @param mixed|Zend_Cloud_DocumentService_Document $documentId Document identifier or document contaiing updates - * @param null|array|Zend_Cloud_DocumentService_Document Fields to update (or new fields)) - * @param array $options - * @return boolean - */ - public function updateDocument($collectionName, $documentId, $fieldset = null, $options = null) - { - if (null === $fieldset && $documentId instanceof Zend_Cloud_DocumentService_Document) { - $fieldset = $documentId->getFields(); - $documentId = $documentId->getId(); - } elseif ($fieldset instanceof Zend_Cloud_DocumentService_Document) { - if ($documentId == null) { - $documentId = $fieldset->getId(); - } - $fieldset = $fieldset->getFields(); - } - - $this->_validateCompositeKey($documentId, $collectionName); - $this->_validateFields($fieldset); - try { - $entity = new Zend_Service_WindowsAzure_Storage_DynamicTableEntity($documentId[0], $documentId[1]); - - // Ensure timestamp is set correctly - if (isset($fieldset[self::TIMESTAMP_KEY])) { - $entity->setTimestamp($fieldset[self::TIMESTAMP_KEY]); - unset($fieldset[self::TIMESTAMP_KEY]); - } - - $entity->setAzureValues($fieldset, true); - if (isset($options[self::VERIFY_ETAG])) { - $entity->setEtag($options[self::VERIFY_ETAG]); - } - - $this->_storageClient->mergeEntity($collectionName, $entity, isset($options[self::VERIFY_ETAG])); - } catch(Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on document update: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Delete document. - * - * @param mixed $document Document ID or Document object. - * @param array $options - * @return void - */ - public function deleteDocument($collectionName, $documentId, $options = null) - { - if ($documentId instanceof Zend_Cloud_DocumentService_Document) { - $documentId = $documentId->getId(); - } - - $documentId = $this->_validateDocumentId($documentId, $collectionName); - - try { - $entity = new Zend_Service_WindowsAzure_Storage_DynamicTableEntity($documentId[0], $documentId[1]); - if (isset($options[self::VERIFY_ETAG])) { - $entity->setEtag($options[self::VERIFY_ETAG]); - } - $this->_storageClient->deleteEntity($collectionName, $entity, isset($options[self::VERIFY_ETAG])); - } catch(Zend_Service_WindowsAzure_Exception $e) { - if (strpos($e->getMessage(), "does not exist") === false) { - throw new Zend_Cloud_DocumentService_Exception('Error on document deletion: '.$e->getMessage(), $e->getCode(), $e); - } - } - } - - /** - * Fetch single document by ID - * - * @param string $collectionName Collection name - * @param mixed $documentId Document ID, adapter-dependent - * @param array $options - * @return Zend_Cloud_DocumentService_Document - */ - public function fetchDocument($collectionName, $documentId, $options = null) - { - $documentId = $this->_validateDocumentId($documentId, $collectionName); - try { - $entity = $this->_storageClient->retrieveEntityById($collectionName, $documentId[0], $documentId[1]); - $documentClass = $this->getDocumentClass(); - return new $documentClass($this->_resolveAttributes($entity), array($entity->getPartitionKey(), $entity->getRowKey())); - } catch (Zend_Service_WindowsAzure_Exception $e) { - if (strpos($e->getMessage(), "does not exist") !== false) { - return false; - } - throw new Zend_Cloud_DocumentService_Exception('Error on document fetch: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Query for documents stored in the document service. If a string is passed in - * $query, the query string will be passed directly to the service. - * - * @param string $collectionName Collection name - * @param string|Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query $query - * @param array $options - * @return array Zend_Cloud_DocumentService_DocumentSet - */ - public function query($collectionName, $query, $options = null) - { - try { - if ($query instanceof Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query) { - $entities = $this->_storageClient->retrieveEntities($query->assemble()); - } else { - $entities = $this->_storageClient->retrieveEntities($collectionName, $query); - } - - $documentClass = $this->getDocumentClass(); - $resultSet = array(); - foreach ($entities as $entity) { - $resultSet[] = new $documentClass( - $this->_resolveAttributes($entity), - array($entity->getPartitionKey(), $entity->getRowKey()) - ); - } - } catch(Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_DocumentService_Exception('Error on document query: '.$e->getMessage(), $e->getCode(), $e); - } - - $setClass = $this->getDocumentSetClass(); - return new $setClass($resultSet); - } - - /** - * Create query statement - * - * @return Zend_Cloud_DocumentService_Query - */ - public function select($fields = null) - { - $queryClass = $this->getQueryClass(); - if (!class_exists($queryClass)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($queryClass); - } - - $query = new $queryClass(); - $defaultClass = self::DEFAULT_QUERY_CLASS; - if (!$query instanceof $defaultClass) { - throw new Zend_Cloud_DocumentService_Exception('Query class must extend ' . self::DEFAULT_QUERY_CLASS); - } - - $query->select($fields); - return $query; - } - - /** - * Get the concrete service client - * - * @return Zend_Service_WindowsAzure_Storage_Table - */ - public function getClient() - { - return $this->_storageClient; - } - - /** - * Resolve table values to attributes - * - * @param Zend_Service_WindowsAzure_Storage_TableEntity $entity - * @return array - */ - protected function _resolveAttributes(Zend_Service_WindowsAzure_Storage_TableEntity $entity) - { - $result = array(); - foreach ($entity->getAzureValues() as $attr) { - $result[$attr->Name] = $attr->Value; - } - return $result; - } - - - /** - * Validate a partition or row key - * - * @param string $key - * @return void - * @throws Zend_Cloud_DocumentService_Exception - */ - protected function _validateKey($key) - { - if (preg_match('@[/#?' . preg_quote('\\') . ']@', $key)) { - throw new Zend_Cloud_DocumentService_Exception('Invalid partition or row key provided; must not contain /, \\, #, or ? characters'); - } - } - - /** - * Validate a composite key - * - * @param array $key - * @return throws Zend_Cloud_DocumentService_Exception - */ - protected function _validateCompositeKey(array $key) - { - if (2 != count($key)) { - throw new Zend_Cloud_DocumentService_Exception('Invalid document key provided; must contain exactly two elements: a PartitionKey and a RowKey'); - } - foreach ($key as $k) { - $this->_validateKey($k); - } - } - - /** - * Validate a document identifier - * - * If the identifier is an array containing a valid partition and row key, - * returns it. If the identifier is a string: - * - if a default partition key is present, it creates an identifier using - * that and the provided document ID - * - if a collection name is provided, it will use that for the partition key - * - otherwise, it's invalid - * - * @param array|string $documentId - * @param null|string $collectionName - * @return array - * @throws Zend_Cloud_DocumentService_Exception - */ - protected function _validateDocumentId($documentId, $collectionName = false) - { - if (is_array($documentId)) { - $this->_validateCompositeKey($documentId); - return $documentId; - } - if (!is_string($documentId)) { - throw new Zend_Cloud_DocumentService_Exception('Invalid document identifier; must be a string or an array'); - } - - $this->_validateKey($documentId); - - if (null !== ($partitionKey = $this->getDefaultPartitionKey())) { - return array($partitionKey, $documentId); - } - if (null !== $collectionName) { - return array($collectionName, $documentId); - } - throw new Zend_Cloud_DocumentService_Exception('Cannot determine partition name; invalid document identifier'); - } - - /** - * Validate a document's fields for well-formedness - * - * Since Azure uses Atom, and fieldnames are included as part of XML - * element tag names, the field names must be valid XML names. - * - * @param Zend_Cloud_DocumentService_Document|array $document - * @return void - * @throws Zend_Cloud_DocumentService_Exception - */ - public function _validateFields($document) - { - if ($document instanceof Zend_Cloud_DocumentService_Document) { - $document = $document->getFields(); - } elseif (!is_array($document)) { - throw new Zend_Cloud_DocumentService_Exception('Cannot inspect fields; invalid type provided'); - } - - foreach (array_keys($document) as $key) { - $this->_validateFieldKey($key); - } - } - - /** - * Validate an individual field name for well-formedness - * - * Since Azure uses Atom, and fieldnames are included as part of XML - * element tag names, the field names must be valid XML names. - * - * While we could potentially normalize names, this could also lead to - * conflict with other field names -- which we should avoid. As such, - * invalid field names will raise an exception. - * - * @param string $key - * @return void - * @throws Zend_Cloud_DocumentService_Exception - */ - public function _validateFieldKey($key) - { - if (!preg_match('/^[_A-Za-z][-._A-Za-z0-9]*$/', $key)) { - throw new Zend_Cloud_DocumentService_Exception('Field keys must conform to XML names (^[_A-Za-z][-._A-Za-z0-9]*$); key "' . $key . '" does not match'); - } - } -} diff --git a/library/Zend/Cloud/DocumentService/Adapter/WindowsAzure/Query.php b/library/Zend/Cloud/DocumentService/Adapter/WindowsAzure/Query.php deleted file mode 100644 index c6fe8c42..00000000 --- a/library/Zend/Cloud/DocumentService/Adapter/WindowsAzure/Query.php +++ /dev/null @@ -1,171 +0,0 @@ -_azureSelect = $select; - } - - /** - * SELECT clause (fields to be selected) - * - * Does nothing for Azure. - * - * @param string $select - * @return Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query - */ - public function select($select) - { - return $this; - } - - /** - * FROM clause (table name) - * - * @param string $from - * @return Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query - */ - public function from($from) - { - $this->_azureSelect->from($from); - return $this; - } - - /** - * WHERE clause (conditions to be used) - * - * @param string $where - * @param mixed $value Value or array of values to be inserted instead of ? - * @param string $op Operation to use to join where clauses (AND/OR) - * @return Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query - */ - public function where($where, $value = null, $op = 'and') - { - if (!empty($value) && !is_array($value)) { - // fix buglet in Azure - numeric values are quoted unless passed as an array - $value = array($value); - } - $this->_azureSelect->where($where, $value, $op); - return $this; - } - - /** - * WHERE clause for item ID - * - * This one should be used when fetching specific rows since some adapters - * have special syntax for primary keys - * - * @param array $value Row ID for the document (PartitionKey, RowKey) - * @return Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query - */ - public function whereId($value) - { - if (!is_array($value)) { - require_once 'Zend/Cloud/DocumentService/Exception.php'; - throw new Zend_Cloud_DocumentService_Exception('Invalid document key'); - } - $this->_azureSelect->wherePartitionKey($value[0])->whereRowKey($value[1]); - return $this; - } - - /** - * LIMIT clause (how many rows to return) - * - * @param int $limit - * @return Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query - */ - public function limit($limit) - { - $this->_azureSelect->top($limit); - return $this; - } - - /** - * ORDER BY clause (sorting) - * - * @todo Azure service doesn't seem to support this yet; emulate? - * @param string $sort Column to sort by - * @param string $direction Direction - asc/desc - * @return Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query - * @throws Zend_Cloud_OperationNotAvailableException - */ - public function order($sort, $direction = 'asc') - { - require_once 'Zend/Cloud/OperationNotAvailableException.php'; - throw new Zend_Cloud_OperationNotAvailableException('No support for sorting for Azure yet'); - } - - /** - * Get Azure select query - * - * @return Zend_Service_WindowsAzure_Storage_TableEntityQuery - */ - public function getAzureSelect() - { - return $this->_azureSelect; - } - - /** - * Assemble query - * - * Simply return the WindowsAzure table entity query object - * - * @return Zend_Service_WindowsAzure_Storage_TableEntityQuery - */ - public function assemble() - { - return $this->getAzureSelect(); - } -} diff --git a/library/Zend/Cloud/DocumentService/Document.php b/library/Zend/Cloud/DocumentService/Document.php deleted file mode 100644 index 9b8c5e57..00000000 --- a/library/Zend/Cloud/DocumentService/Document.php +++ /dev/null @@ -1,248 +0,0 @@ -_fields = $fields; - $this->setId($id); - } - - /** - * Set document identifier - * - * @param mixed $id - * @return Zend_Cloud_DocumentService_Document - */ - public function setId($id) - { - $this->_id = $id; - return $this; - } - - /** - * Get ID name. - * - * @return string - */ - public function getId() - { - return $this->_id; - } - - /** - * Get fields as array. - * - * @return array - */ - public function getFields() - { - return $this->_fields; - } - - /** - * Get field by name. - * - * @param string $name - * @return mixed - */ - public function getField($name) - { - if (isset($this->_fields[$name])) { - return $this->_fields[$name]; - } - return null; - } - - /** - * Set field by name. - * - * @param string $name - * @param mixed $value - * @return Zend_Cloud_DocumentService_Document - */ - public function setField($name, $value) - { - $this->_fields[$name] = $value; - return $this; - } - - /** - * Overloading: get value - * - * @param string $name - * @return mixed - */ - public function __get($name) - { - return $this->getField($name); - } - - /** - * Overloading: set field - * - * @param string $name - * @param mixed $value - * @return void - */ - public function __set($name, $value) - { - $this->setField($name, $value); - } - - /** - * ArrayAccess: does field exist? - * - * @param string $name - * @return bool - */ - public function offsetExists($name) - { - return isset($this->_fields[$name]); - } - - /** - * ArrayAccess: get field by name - * - * @param string $name - * @return mixed - */ - public function offsetGet($name) - { - return $this->getField($name); - } - - /** - * ArrayAccess: set field to value - * - * @param string $name - * @param mixed $value - * @return void - */ - public function offsetSet($name, $value) - { - $this->setField($name, $value); - } - - /** - * ArrayAccess: remove field from document - * - * @param string $name - * @return void - */ - public function offsetUnset($name) - { - if ($this->offsetExists($name)) { - unset($this->_fields[$name]); - } - } - - /** - * Overloading: retrieve and set fields by name - * - * @param string $name - * @param mixed $args - * @return mixed - */ - public function __call($name, $args) - { - $prefix = substr($name, 0, 3); - if ($prefix == 'get') { - // Get value - $option = substr($name, 3); - return $this->getField($option); - } elseif ($prefix == 'set') { - // set value - $option = substr($name, 3); - return $this->setField($option, $args[0]); - } - - require_once 'Zend/Cloud/OperationNotAvailableException.php'; - throw new Zend_Cloud_OperationNotAvailableException("Unknown operation $name"); - } - - /** - * Countable: return count of fields in document - * - * @return int - */ - public function count() - { - return count($this->_fields); - } - - /** - * IteratorAggregate: return iterator for iterating over fields - * - * @return Iterator - */ - public function getIterator() - { - return new ArrayIterator($this->_fields); - } -} diff --git a/library/Zend/Cloud/DocumentService/DocumentSet.php b/library/Zend/Cloud/DocumentService/DocumentSet.php deleted file mode 100644 index 156b2dd3..00000000 --- a/library/Zend/Cloud/DocumentService/DocumentSet.php +++ /dev/null @@ -1,68 +0,0 @@ -_documentCount = count($documents); - $this->_documents = new ArrayIterator($documents); - } - - /** - * Countable: number of documents in set - * - * @return int - */ - public function count() - { - return $this->_documentCount; - } - - /** - * IteratorAggregate: retrieve iterator - * - * @return Traversable - */ - public function getIterator() - { - return $this->_documents; - } -} diff --git a/library/Zend/Cloud/DocumentService/Exception.php b/library/Zend/Cloud/DocumentService/Exception.php deleted file mode 100644 index 0c5b173a..00000000 --- a/library/Zend/Cloud/DocumentService/Exception.php +++ /dev/null @@ -1,38 +0,0 @@ -foo('bar') - * but concrete adapters should be able to recognise it - * - * The call will be iterpreted as clause 'foo' with argument 'bar' - * - * @param string $name Clause/method name - * @param mixed $args - * @return Zend_Cloud_DocumentService_Query - */ - public function __call($name, $args) - { - $this->_clauses[] = array(strtolower($name), $args); - return $this; - } - - /** - * SELECT clause (fields to be selected) - * - * @param null|string|array $select - * @return Zend_Cloud_DocumentService_Query - */ - public function select($select) - { - if (empty($select)) { - return $this; - } - if (!is_string($select) && !is_array($select)) { - require_once 'Zend/Cloud/DocumentService/Exception.php'; - throw new Zend_Cloud_DocumentService_Exception("SELECT argument must be a string or an array of strings"); - } - $this->_clauses[] = array(self::QUERY_SELECT, $select); - return $this; - } - - /** - * FROM clause - * - * @param string $name Field names - * @return Zend_Cloud_DocumentService_Query - */ - public function from($name) - { - if(!is_string($name)) { - require_once 'Zend/Cloud/DocumentService/Exception.php'; - throw new Zend_Cloud_DocumentService_Exception("FROM argument must be a string"); - } - $this->_clauses[] = array(self::QUERY_FROM, $name); - return $this; - } - - /** - * WHERE query - * - * @param string $cond Condition - * @param array $args Arguments to substitute instead of ?'s in condition - * @param string $op relation to other clauses - and/or - * @return Zend_Cloud_DocumentService_Query - */ - public function where($cond, $value = null, $op = 'and') - { - if (!is_string($cond)) { - require_once 'Zend/Cloud/DocumentService/Exception.php'; - throw new Zend_Cloud_DocumentService_Exception("WHERE argument must be a string"); - } - $this->_clauses[] = array(self::QUERY_WHERE, array($cond, $value, $op)); - return $this; - } - - /** - * Select record or fields by ID - * - * @param string|int $value Identifier to select by - * @return Zend_Cloud_DocumentService_Query - */ - public function whereId($value) - { - if (!is_scalar($value)) { - require_once 'Zend/Cloud/DocumentService/Exception.php'; - throw new Zend_Cloud_DocumentService_Exception("WHEREID argument must be a scalar"); - } - $this->_clauses[] = array(self::QUERY_WHEREID, $value); - return $this; - } - - /** - * LIMIT clause (how many items to return) - * - * @param int $limit - * @return Zend_Cloud_DocumentService_Query - */ - public function limit($limit) - { - if ($limit != (int) $limit) { - require_once 'Zend/Cloud/DocumentService/Exception.php'; - throw new Zend_Cloud_DocumentService_Exception("LIMIT argument must be an integer"); - } - $this->_clauses[] = array(self::QUERY_LIMIT, $limit); - return $this; - } - - /** - * ORDER clause; field or fields to sort by, and direction to sort - * - * @param string|int|array $sort - * @param string $direction - * @return Zend_Cloud_DocumentService_Query - */ - public function order($sort, $direction = 'asc') - { - $this->_clauses[] = array(self::QUERY_ORDER, array($sort, $direction)); - return $this; - } - - /** - * "Assemble" the query - * - * Simply returns the clauses present. - * - * @return array - */ - public function assemble() - { - return $this->getClauses(); - } - - /** - * Return query clauses as an array - * - * @return array Clauses in the query - */ - public function getClauses() - { - return $this->_clauses; - } -} diff --git a/library/Zend/Cloud/DocumentService/QueryAdapter.php b/library/Zend/Cloud/DocumentService/QueryAdapter.php deleted file mode 100644 index cfb1c4fb..00000000 --- a/library/Zend/Cloud/DocumentService/QueryAdapter.php +++ /dev/null @@ -1,102 +0,0 @@ -_clientException = $clientException; - parent::__construct($message, $code, $clientException); - } - - public function getClientException() { - return $this->_getPrevious(); - } -} - diff --git a/library/Zend/Cloud/Infrastructure/Adapter.php b/library/Zend/Cloud/Infrastructure/Adapter.php deleted file mode 100644 index b23c7184..00000000 --- a/library/Zend/Cloud/Infrastructure/Adapter.php +++ /dev/null @@ -1,167 +0,0 @@ -adapterResult; - } - - /** - * Wait for status $status with a timeout of $timeout seconds - * - * @param string $id - * @param string $status - * @param integer $timeout - * @return boolean - */ - public function waitStatusInstance($id, $status, $timeout = self::TIMEOUT_STATUS_CHANGE) - { - if (empty($id) || empty($status)) { - return false; - } - - $num = 0; - while (($num<$timeout) && ($this->statusInstance($id) != $status)) { - sleep(self::TIME_STEP_STATUS_CHANGE); - $num += self::TIME_STEP_STATUS_CHANGE; - } - return ($num < $timeout); - } - - /** - * Run arbitrary shell script on an instance - * - * @param string $id - * @param array $param - * @param string|array $cmd - * @return string|array - */ - public function deployInstance($id, $params, $cmd) - { - if (!function_exists("ssh2_connect")) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('Deployment requires the PHP "SSH" extension (ext/ssh2)'); - } - - if (empty($id)) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('You must specify the instance where to deploy'); - } - - if (empty($cmd)) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('You must specify the shell commands to run on the instance'); - } - - if (empty($params) - || empty($params[Zend_Cloud_Infrastructure_Instance::SSH_USERNAME]) - || (empty($params[Zend_Cloud_Infrastructure_Instance::SSH_PASSWORD]) - && empty($params[Zend_Cloud_Infrastructure_Instance::SSH_KEY])) - ) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('You must specify the params for the SSH connection'); - } - - $host = $this->publicDnsInstance($id); - if (empty($host)) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception(sprintf( - 'The instance identified by "%s" does not exist', - $id - )); - } - - $conn = ssh2_connect($host); - if (!ssh2_auth_password($conn, $params[Zend_Cloud_Infrastructure_Instance::SSH_USERNAME], - $params[Zend_Cloud_Infrastructure_Instance::SSH_PASSWORD])) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('SSH authentication failed'); - } - - if (is_array($cmd)) { - $result = array(); - foreach ($cmd as $command) { - $stream = ssh2_exec($conn, $command); - $errorStream = ssh2_fetch_stream($stream, SSH2_STREAM_STDERR); - - stream_set_blocking($errorStream, true); - stream_set_blocking($stream, true); - - $output = stream_get_contents($stream); - $error = stream_get_contents($errorStream); - - if (empty($error)) { - $result[$command] = $output; - } else { - $result[$command] = $error; - } - } - } else { - $stream = ssh2_exec($conn, $cmd); - $result = stream_set_blocking($stream, true); - $errorStream = ssh2_fetch_stream($stream, SSH2_STREAM_STDERR); - - stream_set_blocking($errorStream, true); - stream_set_blocking($stream, true); - - $output = stream_get_contents($stream); - $error = stream_get_contents($errorStream); - - if (empty($error)) { - $result = $output; - } else { - $result = $error; - } - } - return $result; - } -} diff --git a/library/Zend/Cloud/Infrastructure/Adapter/Ec2.php b/library/Zend/Cloud/Infrastructure/Adapter/Ec2.php deleted file mode 100644 index 694bc110..00000000 --- a/library/Zend/Cloud/Infrastructure/Adapter/Ec2.php +++ /dev/null @@ -1,496 +0,0 @@ - Zend_Cloud_Infrastructure_Instance::STATUS_RUNNING, - 'terminated' => Zend_Cloud_Infrastructure_Instance::STATUS_TERMINATED, - 'pending' => Zend_Cloud_Infrastructure_Instance::STATUS_PENDING, - 'shutting-down' => Zend_Cloud_Infrastructure_Instance::STATUS_SHUTTING_DOWN, - 'stopping' => Zend_Cloud_Infrastructure_Instance::STATUS_PENDING, - 'stopped' => Zend_Cloud_Infrastructure_Instance::STATUS_STOPPED, - 'rebooting' => Zend_Cloud_Infrastructure_Instance::STATUS_REBOOTING, - ); - - /** - * Map monitor metrics between Infrastructure and EC2 - * - * @var array - */ - protected $mapMetrics= array ( - Zend_Cloud_Infrastructure_Instance::MONITOR_CPU => 'CPUUtilization', - Zend_Cloud_Infrastructure_Instance::MONITOR_DISK_READ => 'DiskReadBytes', - Zend_Cloud_Infrastructure_Instance::MONITOR_DISK_WRITE => 'DiskWriteBytes', - Zend_Cloud_Infrastructure_Instance::MONITOR_NETWORK_IN => 'NetworkIn', - Zend_Cloud_Infrastructure_Instance::MONITOR_NETWORK_OUT => 'NetworkOut', - ); - - /** - * Constructor - * - * @param array|Zend_Config $options - * @return void - */ - public function __construct($options = array()) - { - if (is_object($options)) { - if (method_exists($options, 'toArray')) { - $options= $options->toArray(); - } elseif ($options instanceof Traversable) { - $options = iterator_to_array($options); - } - } - - if (empty($options) || !is_array($options)) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('Invalid options provided'); - } - - if (!isset($options[self::AWS_ACCESS_KEY]) - || !isset($options[self::AWS_SECRET_KEY]) - ) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('AWS keys not specified!'); - } - - $this->accessKey = $options[self::AWS_ACCESS_KEY]; - $this->accessSecret = $options[self::AWS_SECRET_KEY]; - $this->region = ''; - - if (isset($options[self::AWS_REGION])) { - $this->region= $options[self::AWS_REGION]; - } - - try { - $this->ec2 = new Zend_Service_Amazon_Ec2_Instance($options[self::AWS_ACCESS_KEY], $options[self::AWS_SECRET_KEY], $this->region); - } catch (Exception $e) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('Error on create: ' . $e->getMessage(), $e->getCode(), $e); - } - - if (isset($options[self::HTTP_ADAPTER])) { - $this->ec2->getHttpClient()->setAdapter($options[self::HTTP_ADAPTER]); - } - } - - /** - * Convert the attributes of EC2 into attributes of Infrastructure - * - * @param array $attr - * @return array|boolean - */ - private function convertAttributes($attr) - { - $result = array(); - if (!empty($attr) && is_array($attr)) { - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_ID] = $attr['instanceId']; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_STATUS] = $this->mapStatus[$attr['instanceState']['name']]; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_IMAGEID] = $attr['imageId']; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_ZONE] = $attr['availabilityZone']; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_LAUNCHTIME] = $attr['launchTime']; - - switch ($attr['instanceType']) { - case Zend_Service_Amazon_Ec2_Instance::MICRO: - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_CPU] = '1 virtual core'; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_RAM] = '613MB'; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_STORAGE] = '0GB'; - break; - case Zend_Service_Amazon_Ec2_Instance::SMALL: - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_CPU] = '1 virtual core'; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_RAM] = '1.7GB'; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_STORAGE] = '160GB'; - break; - case Zend_Service_Amazon_Ec2_Instance::LARGE: - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_CPU] = '2 virtual core'; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_RAM] = '7.5GB'; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_STORAGE] = '850GB'; - break; - case Zend_Service_Amazon_Ec2_Instance::XLARGE: - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_CPU] = '4 virtual core'; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_RAM] = '15GB'; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_STORAGE] = '1690GB'; - break; - case Zend_Service_Amazon_Ec2_Instance::HCPU_MEDIUM: - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_CPU] = '2 virtual core'; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_RAM] = '1.7GB'; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_STORAGE] = '350GB'; - break; - case Zend_Service_Amazon_Ec2_Instance::HCPU_XLARGE: - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_CPU] = '8 virtual core'; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_RAM] = '7GB'; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_STORAGE] = '1690GB'; - break; - } - } - return $result; - } - - /** - * Return a list of the available instancies - * - * @return Zend_Cloud_Infrastructure_InstanceList - */ - public function listInstances() - { - $this->adapterResult = $this->ec2->describe(); - - $result = array(); - foreach ($this->adapterResult['instances'] as $instance) { - $result[]= $this->convertAttributes($instance); - } - return new Zend_Cloud_Infrastructure_InstanceList($this, $result); - } - - /** - * Return the status of an instance - * - * @param string - * @return string|boolean - */ - public function statusInstance($id) - { - $this->adapterResult = $this->ec2->describe($id); - if (empty($this->adapterResult['instances'])) { - return false; - } - $result = $this->adapterResult['instances'][0]; - return $this->mapStatus[$result['instanceState']['name']]; - } - - /** - * Return the public DNS name of the instance - * - * @param string $id - * @return string|boolean - */ - public function publicDnsInstance($id) - { - $this->adapterResult = $this->ec2->describe($id); - if (empty($this->adapterResult['instances'])) { - return false; - } - $result = $this->adapterResult['instances'][0]; - return $result['dnsName']; - } - - /** - * Reboot an instance - * - * @param string $id - * @return boolean - */ - public function rebootInstance($id) - { - $this->adapterResult= $this->ec2->reboot($id); - return $this->adapterResult; - } - - /** - * Create a new instance - * - * @param string $name - * @param array $options - * @return Instance|boolean - */ - public function createInstance($name, $options) - { - // @todo instance's name management? - $this->adapterResult = $this->ec2->run($options); - if (empty($this->adapterResult['instances'])) { - return false; - } - $this->error= false; - return new Zend_Cloud_Infrastructure_Instance($this, $this->convertAttributes($this->adapterResult['instances'][0])); - } - - /** - * Stop an instance - * - * @param string $id - * @return boolean - */ - public function stopInstance($id) - { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('The stopInstance method is not implemented in the adapter'); - } - - /** - * Start an instance - * - * @param string $id - * @return boolean - */ - public function startInstance($id) - { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('The startInstance method is not implemented in the adapter'); - } - - /** - * Destroy an instance - * - * @param string $id - * @return boolean - */ - public function destroyInstance($id) - { - $this->adapterResult = $this->ec2->terminate($id); - return (!empty($this->adapterResult)); - } - - /** - * Return a list of all the available instance images - * - * @return ImageList - */ - public function imagesInstance() - { - if (!isset($this->ec2Image)) { - $this->ec2Image = new Zend_Service_Amazon_Ec2_Image($this->accessKey, $this->accessSecret, $this->region); - } - - $this->adapterResult = $this->ec2Image->describe(); - - $images = array(); - - foreach ($this->adapterResult as $result) { - switch (strtolower($result['platform'])) { - case 'windows' : - $platform = Zend_Cloud_Infrastructure_Image::IMAGE_WINDOWS; - break; - default: - $platform = Zend_Cloud_Infrastructure_Image::IMAGE_LINUX; - break; - } - - $images[]= array ( - Zend_Cloud_Infrastructure_Image::IMAGE_ID => $result['imageId'], - Zend_Cloud_Infrastructure_Image::IMAGE_NAME => '', - Zend_Cloud_Infrastructure_Image::IMAGE_DESCRIPTION => $result['imageLocation'], - Zend_Cloud_Infrastructure_Image::IMAGE_OWNERID => $result['imageOwnerId'], - Zend_Cloud_Infrastructure_Image::IMAGE_ARCHITECTURE => $result['architecture'], - Zend_Cloud_Infrastructure_Image::IMAGE_PLATFORM => $platform, - ); - } - return new Zend_Cloud_Infrastructure_ImageList($images,$this->ec2Image); - } - - /** - * Return all the available zones - * - * @return array - */ - public function zonesInstance() - { - if (!isset($this->ec2Zone)) { - $this->ec2Zone = new Zend_Service_Amazon_Ec2_AvailabilityZones($this->accessKey,$this->accessSecret,$this->region); - } - $this->adapterResult = $this->ec2Zone->describe(); - - $zones = array(); - foreach ($this->adapterResult as $zone) { - if (strtolower($zone['zoneState']) === 'available') { - $zones[] = array ( - Zend_Cloud_Infrastructure_Instance::INSTANCE_ZONE => $zone['zoneName'], - ); - } - } - return $zones; - } - - /** - * Return the system information about the $metric of an instance - * - * @param string $id - * @param string $metric - * @param null|array $options - * @return array - */ - public function monitorInstance($id, $metric, $options = null) - { - if (empty($id) || empty($metric)) { - return false; - } - - if (!in_array($metric,$this->validMetrics)) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception(sprintf( - 'The metric "%s" is not valid', - $metric - )); - } - - if (!empty($options) && !is_array($options)) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('The options must be an array'); - } - - if (!empty($options) - && (empty($options[Zend_Cloud_Infrastructure_Instance::MONITOR_START_TIME]) - || empty($options[Zend_Cloud_Infrastructure_Instance::MONITOR_END_TIME])) - ) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception(sprintf( - 'The options array must contain: "%s" and "%s"', - $options[Zend_Cloud_Infrastructure_Instance::MONITOR_START_TIME], - $options[Zend_Cloud_Infrastructure_Instance::MONITOR_END_TIME] - )); - } - - if (!isset($this->ec2Monitor)) { - $this->ec2Monitor = new Zend_Service_Amazon_Ec2_CloudWatch($this->accessKey, $this->accessSecret, $this->region); - } - - $param = array( - 'MeasureName' => $this->mapMetrics[$metric], - 'Statistics' => array('Average'), - 'Dimensions' => array('InstanceId' => $id), - ); - - if (!empty($options)) { - $param['StartTime'] = $options[Zend_Cloud_Infrastructure_Instance::MONITOR_START_TIME]; - $param['EndTime'] = $options[Zend_Cloud_Infrastructure_Instance::MONITOR_END_TIME]; - } - - $this->adapterResult = $this->ec2Monitor->getMetricStatistics($param); - - $monitor = array(); - $num = 0; - $average = 0; - - if (!empty($this->adapterResult['datapoints'])) { - foreach ($this->adapterResult['datapoints'] as $result) { - $monitor['series'][] = array ( - 'timestamp' => $result['Timestamp'], - 'value' => $result['Average'], - ); - $average += $result['Average']; - $num++; - } - } - - if ($num > 0) { - $monitor['average'] = $average / $num; - } - - return $monitor; - } - - /** - * Get the adapter - * - * @return Zend_Service_Amazon_Ec2_Instance - */ - public function getAdapter() - { - return $this->ec2; - } - - /** - * Get last HTTP request - * - * @return string - */ - public function getLastHttpRequest() - { - return $this->ec2->getHttpClient()->getLastRequest(); - } - - /** - * Get the last HTTP response - * - * @return Zend_Http_Response - */ - public function getLastHttpResponse() - { - return $this->ec2->getHttpClient()->getLastResponse(); - } -} diff --git a/library/Zend/Cloud/Infrastructure/Adapter/Rackspace.php b/library/Zend/Cloud/Infrastructure/Adapter/Rackspace.php deleted file mode 100644 index bf00427a..00000000 --- a/library/Zend/Cloud/Infrastructure/Adapter/Rackspace.php +++ /dev/null @@ -1,483 +0,0 @@ - Zend_Cloud_Infrastructure_Instance::STATUS_RUNNING, - 'SUSPENDED' => Zend_Cloud_Infrastructure_Instance::STATUS_STOPPED, - 'BUILD' => Zend_Cloud_Infrastructure_Instance::STATUS_REBUILD, - 'REBUILD' => Zend_Cloud_Infrastructure_Instance::STATUS_REBUILD, - 'QUEUE_RESIZE' => Zend_Cloud_Infrastructure_Instance::STATUS_PENDING, - 'PREP_RESIZE' => Zend_Cloud_Infrastructure_Instance::STATUS_PENDING, - 'RESIZE' => Zend_Cloud_Infrastructure_Instance::STATUS_REBUILD, - 'VERIFY_RESIZE' => Zend_Cloud_Infrastructure_Instance::STATUS_REBUILD, - 'PASSWORD' => Zend_Cloud_Infrastructure_Instance::STATUS_PENDING, - 'RESCUE' => Zend_Cloud_Infrastructure_Instance::STATUS_PENDING, - 'REBOOT' => Zend_Cloud_Infrastructure_Instance::STATUS_REBOOTING, - 'HARD_REBOOT' => Zend_Cloud_Infrastructure_Instance::STATUS_REBOOTING, - 'SHARE_IP' => Zend_Cloud_Infrastructure_Instance::STATUS_PENDING, - 'SHARE_IP_NO_CONFIG' => Zend_Cloud_Infrastructure_Instance::STATUS_PENDING, - 'DELETE_IP' => Zend_Cloud_Infrastructure_Instance::STATUS_PENDING, - 'UNKNOWN' => Zend_Cloud_Infrastructure_Instance::STATUS_PENDING - ); - /** - * Constructor - * - * @param array|Zend_Config $options - * @return void - */ - public function __construct($options = array()) - { - if (is_object($options)) { - if (method_exists($options, 'toArray')) { - $options= $options->toArray(); - } elseif ($options instanceof Traversable) { - $options = iterator_to_array($options); - } - } - - if (empty($options) || !is_array($options)) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('Invalid options provided'); - } - - if (!isset($options[self::RACKSPACE_USER])) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('Rackspace access user not specified!'); - } - - if (!isset($options[self::RACKSPACE_KEY])) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('Rackspace access key not specified!'); - } - - $this->accessUser = $options[self::RACKSPACE_USER]; - $this->accessKey = $options[self::RACKSPACE_KEY]; - - if (isset($options[self::RACKSPACE_REGION])) { - switch ($options[self::RACKSPACE_REGION]) { - case self::RACKSPACE_ZONE_UK: - $this->region= Zend_Service_Rackspace_Servers::UK_AUTH_URL; - break; - case self::RACKSPACE_ZONE_USA: - $this->region = Zend_Service_Rackspace_Servers::US_AUTH_URL; - break; - default: - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('The region is not valid'); - } - } else { - $this->region = Zend_Service_Rackspace_Servers::US_AUTH_URL; - } - - try { - $this->rackspace = new Zend_Service_Rackspace_Servers($this->accessUser,$this->accessKey, $this->region); - } catch (Exception $e) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('Error on create: ' . $e->getMessage(), $e->getCode(), $e); - } - - if (isset($options[self::HTTP_ADAPTER])) { - $this->rackspace->getHttpClient()->setAdapter($options[self::HTTP_ADAPTER]); - } - - } - /** - * Convert the attributes of Rackspace server into attributes of Infrastructure - * - * @param array $attr - * @return array|boolean - */ - protected function convertAttributes($attr) - { - $result = array(); - if (!empty($attr) && is_array($attr)) { - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_ID] = $attr['id']; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_NAME] = $attr['name']; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_STATUS] = $this->mapStatus[$attr['status']]; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_IMAGEID] = $attr['imageId']; - if ($this->region==Zend_Service_Rackspace_Servers::US_AUTH_URL) { - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_ZONE] = self::RACKSPACE_ZONE_USA; - } else { - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_ZONE] = self::RACKSPACE_ZONE_UK; - } - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_RAM] = $this->flavors[$attr['flavorId']]['ram']; - $result[Zend_Cloud_Infrastructure_Instance::INSTANCE_STORAGE] = $this->flavors[$attr['flavorId']]['disk']; - } - return $result; - } - /** - * Return a list of the available instancies - * - * @return InstanceList|boolean - */ - public function listInstances() - { - $this->adapterResult = $this->rackspace->listServers(true); - if ($this->adapterResult===false) { - return false; - } - $array= $this->adapterResult->toArray(); - $result = array(); - foreach ($array as $instance) { - $result[]= $this->convertAttributes($instance); - } - return new Zend_Cloud_Infrastructure_InstanceList($this, $result); - } - /** - * Return the status of an instance - * - * @param string - * @return string|boolean - */ - public function statusInstance($id) - { - $this->adapterResult = $this->rackspace->getServer($id); - if ($this->adapterResult===false) { - return false; - } - $array= $this->adapterResult->toArray(); - return $this->mapStatus[$array['status']]; - } - /** - * Return the public DNS name/Ip address of the instance - * - * @param string $id - * @return string|boolean - */ - public function publicDnsInstance($id) - { - $this->adapterResult = $this->rackspace->getServerPublicIp($id); - if (empty($this->adapterResult)) { - return false; - } - return $this->adapterResult[0]; - } - /** - * Reboot an instance - * - * @param string $id - * @return boolean - */ - public function rebootInstance($id) - { - return $this->rackspace->rebootServer($id,true); - } - /** - * Create a new instance - * - * @param string $name - * @param array $options - * @return Instance|boolean - */ - public function createInstance($name, $options) - { - if (empty($name)) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('You must specify the name of the instance'); - } - if (empty($options) || !is_array($options)) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('The options must be an array'); - } - // @todo create an generic abstract definition for an instance? - $metadata= array(); - if (isset($options['metadata'])) { - $metadata= $options['metadata']; - unset($options['metadata']); - } - $files= array(); - if (isset($options['files'])) { - $files= $options['files']; - unset($options['files']); - } - $options['name']= $name; - $this->adapterResult = $this->rackspace->createServer($options,$metadata,$files); - if ($this->adapterResult===false) { - return false; - } - return new Zend_Cloud_Infrastructure_Instance($this, $this->convertAttributes($this->adapterResult->toArray())); - } - /** - * Stop an instance - * - * @param string $id - * @return boolean - */ - public function stopInstance($id) - { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('The stopInstance method is not implemented in the adapter'); - } - - /** - * Start an instance - * - * @param string $id - * @return boolean - */ - public function startInstance($id) - { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('The startInstance method is not implemented in the adapter'); - } - - /** - * Destroy an instance - * - * @param string $id - * @return boolean - */ - public function destroyInstance($id) - { - $this->adapterResult= $this->rackspace->deleteServer($id); - return $this->adapterResult; - } - /** - * Return a list of all the available instance images - * - * @return ImageList|boolean - */ - public function imagesInstance() - { - $this->adapterResult = $this->rackspace->listImages(true); - if ($this->adapterResult===false) { - return false; - } - - $images= $this->adapterResult->toArray(); - $result= array(); - - foreach ($images as $image) { - if (strtolower($image['status'])==='active') { - if (strpos($image['name'],'Windows')!==false) { - $platform = Zend_Cloud_Infrastructure_Image::IMAGE_WINDOWS; - } else { - $platform = Zend_Cloud_Infrastructure_Image::IMAGE_LINUX; - } - if (strpos($image['name'],'x64')!==false) { - $arch = Zend_Cloud_Infrastructure_Image::ARCH_64BIT; - } else { - $arch = Zend_Cloud_Infrastructure_Image::ARCH_32BIT; - } - $result[]= array ( - Zend_Cloud_Infrastructure_Image::IMAGE_ID => $image['id'], - Zend_Cloud_Infrastructure_Image::IMAGE_NAME => $image['name'], - Zend_Cloud_Infrastructure_Image::IMAGE_DESCRIPTION => $image['name'], - Zend_Cloud_Infrastructure_Image::IMAGE_ARCHITECTURE => $arch, - Zend_Cloud_Infrastructure_Image::IMAGE_PLATFORM => $platform, - ); - } - } - return new Zend_Cloud_Infrastructure_ImageList($result,$this->adapterResult); - } - /** - * Return all the available zones - * - * @return array - */ - public function zonesInstance() - { - return array(self::RACKSPACE_ZONE_USA,self::RACKSPACE_ZONE_UK); - } - /** - * Return the system information about the $metric of an instance - * NOTE: it works only for Linux servers - * - * @param string $id - * @param string $metric - * @param null|array $options - * @return array|boolean - */ - public function monitorInstance($id, $metric, $options = null) - { - if (!function_exists("ssh2_connect")) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('Monitor requires the PHP "SSH" extension (ext/ssh2)'); - } - if (empty($id)) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('You must specify the id of the instance to monitor'); - } - if (empty($metric)) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('You must specify the metric to monitor'); - } - if (!in_array($metric,$this->validMetrics)) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception(sprintf('The metric "%s" is not valid', $metric)); - } - if (!empty($options) && !is_array($options)) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('The options must be an array'); - } - - switch ($metric) { - case Zend_Cloud_Infrastructure_Instance::MONITOR_CPU: - $cmd= 'top -b -n '.self::MONITOR_CPU_SAMPLES.' | grep \'Cpu\''; - break; - case Zend_Cloud_Infrastructure_Instance::MONITOR_RAM: - $cmd= 'top -b -n 1 | grep \'Mem\''; - break; - case Zend_Cloud_Infrastructure_Instance::MONITOR_DISK: - $cmd= 'df --total | grep total'; - break; - } - if (empty($cmd)) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('The metric specified is not supported by the adapter'); - } - - $params= array( - Zend_Cloud_Infrastructure_Instance::SSH_USERNAME => $options['username'], - Zend_Cloud_Infrastructure_Instance::SSH_PASSWORD => $options['password'] - ); - $exec_time= time(); - $result= $this->deployInstance($id,$params,$cmd); - - if (empty($result)) { - return false; - } - - $monitor = array(); - $num = 0; - $average = 0; - - $outputs= explode("\n",$result); - foreach ($outputs as $output) { - if (!empty($output)) { - switch ($metric) { - case Zend_Cloud_Infrastructure_Instance::MONITOR_CPU: - if (preg_match('/(\d+\.\d)%us/', $output,$match)) { - $usage = (float) $match[1]; - } - break; - case Zend_Cloud_Infrastructure_Instance::MONITOR_RAM: - if (preg_match('/(\d+)k total/', $output,$match)) { - $total = (integer) $match[1]; - } - if (preg_match('/(\d+)k used/', $output,$match)) { - $used = (integer) $match[1]; - } - if ($total>0) { - $usage= (float) $used/$total; - } - break; - case Zend_Cloud_Infrastructure_Instance::MONITOR_DISK: - if (preg_match('/(\d+)%/', $output,$match)) { - $usage = (float) $match[1]; - } - break; - } - - $monitor['series'][] = array ( - 'timestamp' => $exec_time, - 'value' => number_format($usage,2).'%' - ); - - $average += $usage; - $exec_time+= 60; // seconds - $num++; - } - } - - if ($num>0) { - $monitor['average'] = number_format($average/$num,2).'%'; - } - return $monitor; - } - /** - * Get the adapter - * - * @return Zend_Service_Rackspace_Servers - */ - public function getAdapter() - { - return $this->rackspace; - } - /** - * Get last HTTP request - * - * @return string - */ - public function getLastHttpRequest() - { - return $this->rackspace->getHttpClient()->getLastRequest(); - } - /** - * Get the last HTTP response - * - * @return Zend_Http_Response - */ - public function getLastHttpResponse() - { - return $this->rackspace->getHttpClient()->getLastResponse(); - } -} diff --git a/library/Zend/Cloud/Infrastructure/Exception.php b/library/Zend/Cloud/Infrastructure/Exception.php deleted file mode 100644 index a7e5da15..00000000 --- a/library/Zend/Cloud/Infrastructure/Exception.php +++ /dev/null @@ -1,25 +0,0 @@ -toArray(); - } elseif ($data instanceof Traversable) { - $data = iterator_to_array($data); - } - } - - if (empty($data) || !is_array($data)) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('You must pass an array of parameters'); - } - - foreach ($this->attributeRequired as $key) { - if (empty($data[$key])) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception(sprintf( - 'The param "%s" is a required parameter for class %s', - $key, - __CLASS__ - )); - } - } - - $this->attributes = $data; - $this->adapter = $adapter; - } - - /** - * Get Attribute with a specific key - * - * @param array $data - * @return misc|boolean - */ - public function getAttribute($key) - { - if (!empty($this->attributes[$key])) { - return $this->attributes[$key]; - } - return false; - } - - /** - * Get all the attributes - * - * @return array - */ - public function getAttributes() - { - return $this->attributes; - } - - /** - * Get the image ID - * - * @return string - */ - public function getId() - { - return $this->attributes[self::IMAGE_ID]; - } - - /** - * Get the Owner ID - * - * @return string - */ - public function getOwnerId() - { - return $this->attributes[self::IMAGE_OWNERID]; - } - - /** - * Get the name - * - * @return string - */ - public function getName() - { - return $this->attributes[self::IMAGE_NAME]; - } - - /** - * Get the description - * - * @return string - */ - public function getDescription() - { - return $this->attributes[self::IMAGE_DESCRIPTION]; - } - - /** - * Get the platform - * - * @return string - */ - public function getPlatform() - { - return $this->attributes[self::IMAGE_PLATFORM]; - } - - /** - * Get the architecture - * - * @return string - */ - public function getArchitecture() - { - return $this->attributes[self::IMAGE_ARCHITECTURE]; - } -} diff --git a/library/Zend/Cloud/Infrastructure/ImageList.php b/library/Zend/Cloud/Infrastructure/ImageList.php deleted file mode 100644 index 7692bde2..00000000 --- a/library/Zend/Cloud/Infrastructure/ImageList.php +++ /dev/null @@ -1,218 +0,0 @@ -adapter = $adapter; - $this->constructFromArray($images); - } - - /** - * Transforms the Array to array of Instances - * - * @param array $list - * @return void - */ - protected function constructFromArray(array $list) - { - foreach ($list as $image) { - $this->addImage(new Zend_Cloud_Infrastructure_Image($image, $this->adapter)); - } - } - - /** - * Add an image - * - * @param Image - * @return ImageList - */ - protected function addImage(Zend_Cloud_Infrastructure_Image $image) - { - $this->images[] = $image; - return $this; - } - - /** - * Return number of images - * - * Implement Countable::count() - * - * @return int - */ - public function count() - { - return count($this->images); - } - - /** - * Return the current element - * - * Implement Iterator::current() - * - * @return Image - */ - public function current() - { - return $this->images[$this->iteratorKey]; - } - - /** - * Return the key of the current element - * - * Implement Iterator::key() - * - * @return int - */ - public function key() - { - return $this->iteratorKey; - } - - /** - * Move forward to next element - * - * Implement Iterator::next() - * - * @return void - */ - public function next() - { - $this->iteratorKey++; - } - - /** - * Rewind the Iterator to the first element - * - * Implement Iterator::rewind() - * - * @return void - */ - public function rewind() - { - $this->iteratorKey = 0; - } - - /** - * Check if there is a current element after calls to rewind() or next() - * - * Implement Iterator::valid() - * - * @return bool - */ - public function valid() - { - $numItems = $this->count(); - if ($numItems > 0 && $this->iteratorKey < $numItems) { - return true; - } - return false; - } - - /** - * Whether the offset exists - * - * Implement ArrayAccess::offsetExists() - * - * @param int $offset - * @return bool - */ - public function offsetExists($offset) - { - return ($offset < $this->count()); - } - - /** - * Return value at given offset - * - * Implement ArrayAccess::offsetGet() - * - * @param int $offset - * @throws Zend_Cloud_Infrastructure_Exception - * @return Image - */ - public function offsetGet($offset) - { - if (!$this->offsetExists($offset)) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('Illegal index'); - } - return $this->images[$offset]; - } - - /** - * Throws exception because all values are read-only - * - * Implement ArrayAccess::offsetSet() - * - * @param int $offset - * @param string $value - * @throws Zend_Cloud_Infrastructure_Exception - */ - public function offsetSet($offset, $value) - { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('You are trying to set read-only property'); - } - - /** - * Throws exception because all values are read-only - * - * Implement ArrayAccess::offsetUnset() - * - * @param int $offset - * @throws Zend_Cloud_Infrastructure_Exception - */ - public function offsetUnset($offset) - { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('You are trying to unset read-only property'); - } -} diff --git a/library/Zend/Cloud/Infrastructure/Instance.php b/library/Zend/Cloud/Infrastructure/Instance.php deleted file mode 100644 index 68309259..00000000 --- a/library/Zend/Cloud/Infrastructure/Instance.php +++ /dev/null @@ -1,320 +0,0 @@ -toArray(); - } elseif ($data instanceof Traversable) { - $data = iterator_to_array($data); - } - } - - if (empty($data) || !is_array($data)) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception("You must pass an array of parameters"); - } - - foreach ($this->attributeRequired as $key) { - if (empty($data[$key])) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception(sprintf( - 'The param "%s" is a required param for %s', - $key, - __CLASS__ - )); - } - } - - $this->adapter = $adapter; - $this->attributes = $data; - } - - /** - * Get Attribute with a specific key - * - * @param array $data - * @return misc|false - */ - public function getAttribute($key) - { - if (!empty($this->attributes[$key])) { - return $this->attributes[$key]; - } - return false; - } - - /** - * Get all the attributes - * - * @return array - */ - public function getAttributes() - { - return $this->attributes; - } - - /** - * Get the instance's id - * - * @return string - */ - public function getId() - { - return $this->attributes[self::INSTANCE_ID]; - } - - /** - * Get the instance's image id - * - * @return string - */ - public function getImageId() - { - return $this->attributes[self::INSTANCE_IMAGEID]; - } - - /** - * Get the instance's name - * - * @return string - */ - public function getName() - { - return $this->attributes[self::INSTANCE_NAME]; - } - - /** - * Get the status of the instance - * - * @return string|boolean - */ - public function getStatus() - { - return $this->adapter->statusInstance($this->attributes[self::INSTANCE_ID]); - } - - /** - * Wait for status $status with a timeout of $timeout seconds - * - * @param string $status - * @param integer $timeout - * @return boolean - */ - public function waitStatus($status, $timeout = Adapter::TIMEOUT_STATUS_CHANGE) - { - return $this->adapter->waitStatusInstance($this->attributes[self::INSTANCE_ID], $status, $timeout); - } - - /** - * Get the public DNS of the instance - * - * @return string - */ - public function getPublicDns() - { - if (!isset($this->attributes[self::INSTANCE_PUBLICDNS])) { - $this->attributes[self::INSTANCE_PUBLICDNS] = $this->adapter->publicDnsInstance($this->attributes[self::INSTANCE_ID]); - } - return $this->attributes[self::INSTANCE_PUBLICDNS]; - } - - /** - * Get the instance's CPU - * - * @return string - */ - public function getCpu() - { - return $this->attributes[self::INSTANCE_CPU]; - } - - /** - * Get the instance's RAM size - * - * @return string - */ - public function getRamSize() - { - return $this->attributes[self::INSTANCE_RAM]; - } - - /** - * Get the instance's storage size - * - * @return string - */ - public function getStorageSize() - { - return $this->attributes[self::INSTANCE_STORAGE]; - } - - /** - * Get the instance's zone - * - * @return string - */ - public function getZone() - { - return $this->attributes[self::INSTANCE_ZONE]; - } - - /** - * Get the instance's launch time - * - * @return string - */ - public function getLaunchTime() - { - return $this->attributes[self::INSTANCE_LAUNCHTIME]; - } - - /** - * Reboot the instance - * - * @return boolean - */ - public function reboot() - { - return $this->adapter->rebootInstance($this->attributes[self::INSTANCE_ID]); - } - - /** - * Stop the instance - * - * @return boolean - */ - public function stop() - { - return $this->adapter->stopInstance($this->attributes[self::INSTANCE_ID]); - } - - /** - * Start the instance - * - * @return boolean - */ - public function start() - { - return $this->adapter->startInstance($this->attributes[self::INSTANCE_ID]); - } - - /** - * Destroy the instance - * - * @return boolean - */ - public function destroy() - { - return $this->adapter->destroyInstance($this->attributes[self::INSTANCE_ID]); - } - - /** - * Return the system informations about the $metric of an instance - * - * @param string $metric - * @param null|array $options - * @return array|boolean - */ - public function monitor($metric, $options = null) - { - return $this->adapter->monitorInstance($this->attributes[self::INSTANCE_ID], $metric, $options); - } - - /** - * Run arbitrary shell script on the instance - * - * @param array $param - * @param string|array $cmd - * @return string|array - */ - public function deploy($params, $cmd) - { - return $this->adapter->deployInstance($this->attributes[self::INSTANCE_ID], $params, $cmd); - } -} diff --git a/library/Zend/Cloud/Infrastructure/InstanceList.php b/library/Zend/Cloud/Infrastructure/InstanceList.php deleted file mode 100644 index 0cda88c2..00000000 --- a/library/Zend/Cloud/Infrastructure/InstanceList.php +++ /dev/null @@ -1,219 +0,0 @@ -adapter = $adapter; - $this->constructFromArray($instances); - } - - /** - * Transforms the Array to array of Instances - * - * @param array $list - * @return void - */ - protected function constructFromArray(array $list) - { - foreach ($list as $instance) { - $this->addInstance(new Zend_Cloud_Infrastructure_Instance($this->adapter,$instance)); - } - } - - /** - * Add an instance - * - * @param Instance - * @return InstanceList - */ - protected function addInstance(Zend_Cloud_Infrastructure_Instance $instance) - { - $this->instances[] = $instance; - return $this; - } - - /** - * Return number of instances - * - * Implement Countable::count() - * - * @return int - */ - public function count() - { - return count($this->instances); - } - - /** - * Return the current element - * - * Implement Iterator::current() - * - * @return Instance - */ - public function current() - { - return $this->instances[$this->iteratorKey]; - } - - /** - * Return the key of the current element - * - * Implement Iterator::key() - * - * @return int - */ - public function key() - { - return $this->iteratorKey; - } - - /** - * Move forward to next element - * - * Implement Iterator::next() - * - * @return void - */ - public function next() - { - $this->iteratorKey++; - } - - /** - * Rewind the Iterator to the first element - * - * Implement Iterator::rewind() - * - * @return void - */ - public function rewind() - { - $this->iteratorKey = 0; - } - - /** - * Check if there is a current element after calls to rewind() or next() - * - * Implement Iterator::valid() - * - * @return bool - */ - public function valid() - { - $numItems = $this->count(); - if ($numItems > 0 && $this->iteratorKey < $numItems) { - return true; - } - return false; - } - - /** - * Whether the offset exists - * - * Implement ArrayAccess::offsetExists() - * - * @param int $offset - * @return bool - */ - public function offsetExists($offset) - { - return ($offset < $this->count()); - } - - /** - * Return value at given offset - * - * Implement ArrayAccess::offsetGet() - * - * @param int $offset - * @return Instance - * @throws Zend_Cloud_Infrastructure_Exception - */ - public function offsetGet($offset) - { - if (!$this->offsetExists($offset)) { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('Illegal index'); - } - return $this->instances[$offset]; - } - - /** - * Throws exception because all values are read-only - * - * Implement ArrayAccess::offsetSet() - * - * @param int $offset - * @param string $value - * @throws Zend_Cloud_Infrastructure_Exception - */ - public function offsetSet($offset, $value) - { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('You are trying to set read-only property'); - } - - /** - * Throws exception because all values are read-only - * - * Implement ArrayAccess::offsetUnset() - * - * @param int $offset - * @throws Zend_Cloud_Infrastructure_Exception - */ - public function offsetUnset($offset) - { - require_once 'Zend/Cloud/Infrastructure/Exception.php'; - throw new Zend_Cloud_Infrastructure_Exception('You are trying to unset read-only property'); - } -} diff --git a/library/Zend/Cloud/OperationNotAvailableException.php b/library/Zend/Cloud/OperationNotAvailableException.php deleted file mode 100644 index 18a14629..00000000 --- a/library/Zend/Cloud/OperationNotAvailableException.php +++ /dev/null @@ -1,34 +0,0 @@ -_messageClass = (string) $class; - return $this; - } - - /** - * Get class to use for message objects - * - * @return string - */ - public function getMessageClass() - { - return $this->_messageClass; - } - - /** - * Set class to use for message collection objects - * - * @param string $class - * @return Zend_Cloud_QueueService_Adapter_AbstractAdapter - */ - public function setMessageSetClass($class) - { - $this->_messageSetClass = (string) $class; - return $this; - } - - /** - * Get class to use for message collection objects - * - * @return string - */ - public function getMessageSetClass() - { - return $this->_messageSetClass; - } -} diff --git a/library/Zend/Cloud/QueueService/Adapter/Sqs.php b/library/Zend/Cloud/QueueService/Adapter/Sqs.php deleted file mode 100644 index 13d05d38..00000000 --- a/library/Zend/Cloud/QueueService/Adapter/Sqs.php +++ /dev/null @@ -1,278 +0,0 @@ -toArray(); - } - - if (!is_array($options)) { - throw new Zend_Cloud_QueueService_Exception('Invalid options provided'); - } - - if (isset($options[self::MESSAGE_CLASS])) { - $this->setMessageClass($options[self::MESSAGE_CLASS]); - } - - if (isset($options[self::MESSAGESET_CLASS])) { - $this->setMessageSetClass($options[self::MESSAGESET_CLASS]); - } - - try { - $this->_sqs = new Zend_Service_Amazon_Sqs( - $options[self::AWS_ACCESS_KEY], $options[self::AWS_SECRET_KEY] - ); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on create: '.$e->getMessage(), $e->getCode(), $e); - } - - if(isset($options[self::HTTP_ADAPTER])) { - $this->_sqs->getHttpClient()->setAdapter($options[self::HTTP_ADAPTER]); - } - } - - /** - * Create a queue. Returns the ID of the created queue (typically the URL). - * It may take some time to create the queue. Check your vendor's - * documentation for details. - * - * @param string $name - * @param array $options - * @return string Queue ID (typically URL) - */ - public function createQueue($name, $options = null) - { - try { - return $this->_sqs->create($name, $options[self::CREATE_TIMEOUT]); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on queue creation: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Delete a queue. All messages in the queue will also be deleted. - * - * @param string $queueId - * @param array $options - * @return boolean true if successful, false otherwise - */ - public function deleteQueue($queueId, $options = null) -{ - try { - return $this->_sqs->delete($queueId); - } catch(Zend_Service_Amazon_Exception $e) { - throw Zend_Cloud_QueueService_Exception('Error on queue deletion: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * List all queues. - * - * @param array $options - * @return array Queue IDs - */ - public function listQueues($options = null) - { - try { - return $this->_sqs->getQueues(); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on listing queues: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Get a key/value array of metadata for the given queue. - * - * @param string $queueId - * @param array $options - * @return array - */ - public function fetchQueueMetadata($queueId, $options = null) - { - try { - // TODO: ZF-9050 Fix the SQS client library in trunk to return all attribute values - $attributes = $this->_sqs->getAttribute($queueId, 'All'); - if(is_array($attributes)) { - return $attributes; - } else { - return array('All' => $this->_sqs->getAttribute($queueId, 'All')); - } - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on fetching queue metadata: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Store a key/value array of metadata for the specified queue. - * WARNING: This operation overwrites any metadata that is located at - * $destinationPath. Some adapters may not support this method. - * - * @param array $metadata - * @param string $queueId - * @param array $options - * @return void - */ - public function storeQueueMetadata($queueId, $metadata, $options = null) - { - // TODO Add support for SetQueueAttributes to client library - require_once 'Zend/Cloud/OperationNotAvailableException.php'; - throw new Zend_Cloud_OperationNotAvailableException('Amazon SQS doesn\'t currently support storing metadata'); - } - - /** - * Send a message to the specified queue. - * - * @param string $message - * @param string $queueId - * @param array $options - * @return string Message ID - */ - public function sendMessage($queueId, $message, $options = null) - { - try { - return $this->_sqs->send($queueId, $message); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on sending message: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Recieve at most $max messages from the specified queue and return the - * message IDs for messages recieved. - * - * @param string $queueId - * @param int $max - * @param array $options - * @return array - */ - public function receiveMessages($queueId, $max = 1, $options = null) - { - try { - return $this->_makeMessages($this->_sqs->receive($queueId, $max, $options[self::VISIBILITY_TIMEOUT])); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on recieving messages: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Create Zend_Cloud_QueueService_Message array for - * Sqs messages. - * - * @param array $messages - * @return Zend_Cloud_QueueService_Message[] - */ - protected function _makeMessages($messages) - { - $messageClass = $this->getMessageClass(); - $setClass = $this->getMessageSetClass(); - $result = array(); - foreach($messages as $message) { - $result[] = new $messageClass($message['body'], $message); - } - return new $setClass($result); - } - - /** - * Delete the specified message from the specified queue. - * - * @param string $queueId - * @param Zend_Cloud_QueueService_Message $message - * @param array $options - * @return void - */ - public function deleteMessage($queueId, $message, $options = null) - { - try { - if($message instanceof Zend_Cloud_QueueService_Message) { - $message = $message->getMessage(); - } - $messageId = $message['handle']; - return $this->_sqs->deleteMessage($queueId, $messageId); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on deleting a message: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Peek at the messages from the specified queue without removing them. - * - * @param string $queueId - * @param int $num How many messages - * @param array $options - * @return Zend_Cloud_QueueService_Message[] - */ - public function peekMessages($queueId, $num = 1, $options = null) - { - try { - return $this->_makeMessages($this->_sqs->receive($queueId, $num, 0)); - } catch(Zend_Service_Amazon_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on peeking messages: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Get SQS implementation - * @return Zend_Service_Amazon_Sqs - */ - public function getClient() - { - return $this->_sqs; - } -} diff --git a/library/Zend/Cloud/QueueService/Adapter/WindowsAzure.php b/library/Zend/Cloud/QueueService/Adapter/WindowsAzure.php deleted file mode 100644 index 3654a96d..00000000 --- a/library/Zend/Cloud/QueueService/Adapter/WindowsAzure.php +++ /dev/null @@ -1,343 +0,0 @@ -toArray(); - } - - if (!is_array($options)) { - throw new Zend_Cloud_QueueService_Exception('Invalid options provided'); - } - - if (isset($options[self::MESSAGE_CLASS])) { - $this->setMessageClass($options[self::MESSAGE_CLASS]); - } - - if (isset($options[self::MESSAGESET_CLASS])) { - $this->setMessageSetClass($options[self::MESSAGESET_CLASS]); - } - - // Build Zend_Service_WindowsAzure_Storage_Blob instance - if (!isset($options[self::HOST])) { - $host = self::DEFAULT_HOST; - } else { - $host = $options[self::HOST]; - } - if (! isset($options[self::ACCOUNT_NAME])) { - throw new Zend_Cloud_Storage_Exception('No Windows Azure account name provided.'); - } - if (! isset($options[self::ACCOUNT_KEY])) { - throw new Zend_Cloud_Storage_Exception('No Windows Azure account key provided.'); - } - try { - // TODO: support $usePathStyleUri and $retryPolicy - $this->_storageClient = new Zend_Service_WindowsAzure_Storage_Queue( - $host, $options[self::ACCOUNT_NAME], $options[self::ACCOUNT_KEY]); - // Parse other options - if (! empty($options[self::PROXY_HOST])) { - $proxyHost = $options[self::PROXY_HOST]; - $proxyPort = isset($options[self::PROXY_PORT]) ? $options[self::PROXY_PORT] : 8080; - $proxyCredentials = isset($options[self::PROXY_CREDENTIALS]) ? $options[self::PROXY_CREDENTIALS] : ''; - $this->_storageClient->setProxy(true, $proxyHost, $proxyPort, $proxyCredentials); - } - if (isset($options[self::HTTP_ADAPTER])) { - $this->_storageClient->setHttpClientChannel($httpAdapter); - } - } catch(Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on create: '.$e->getMessage(), $e->getCode(), $e); - } - - } - - /** - * Create a queue. Returns the ID of the created queue (typically the URL). - * It may take some time to create the queue. Check your vendor's - * documentation for details. - * - * @param string $name - * @param array $options - * @return string Queue ID (typically URL) - */ - public function createQueue($name, $options = null) - { - try { - $queue = $this->_storageClient->createQueue($name, $options); - return $queue->Name; - } catch (Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on queue creation: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Delete a queue. All messages in the queue will also be deleted. - * - * @param string $queueId - * @param array $options - * @return boolean true if successful, false otherwise - */ - public function deleteQueue($queueId, $options = null) - { - try { - if ($queueId instanceof Zend_Service_WindowsAzure_Storage_QueueInstance) { - $queueId = $queueId->Name; - } - return $this->_storageClient->deleteQueue($queueId); - } catch (Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on queue deletion: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * List all queues. - * - * @param array $options - * @return array Queue IDs - */ - public function listQueues($options = null) - { - $prefix = $maxResults = null; - if (is_array($options)) { - isset($options[self::LIST_PREFIX]) ? $prefix = $options[self::LIST_PREFIX] : null; - isset($options[self::LIST_MAX_RESULTS]) ? $maxResults = $options[self::LIST_MAX_RESULTS] : null; - } - try { - $queues = $this->_storageClient->listQueues($prefix, $maxResults); - $result = array(); - foreach ($queues as $queue) { - $result[] = $queue->Name; - } - return $result; - } catch (Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on listing queues: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Get a key/value array of metadata for the given queue. - * - * @param string $queueId - * @param array $options - * @return array - */ - public function fetchQueueMetadata($queueId, $options = null) - { - try { - if ($queueId instanceof Zend_Service_WindowsAzure_Storage_QueueInstance) { - $queueId = $queueId->Name; - } - return $this->_storageClient->getQueueMetadata($queueId); - } catch (Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on fetching queue metadata: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Store a key/value array of metadata for the specified queue. - * WARNING: This operation overwrites any metadata that is located at - * $destinationPath. Some adapters may not support this method. - * - * @param string $queueId - * @param array $metadata - * @param array $options - * @return void - */ - public function storeQueueMetadata($queueId, $metadata, $options = null) - { - try { - if ($queueId instanceof Zend_Service_WindowsAzure_Storage_QueueInstance) { - $queueId = $queueId->Name; - } - return $this->_storageClient->setQueueMetadata($queueId, $metadata); - } catch (Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on setting queue metadata: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Send a message to the specified queue. - * - * @param string $queueId - * @param string $message - * @param array $options - * @return string Message ID - */ - public function sendMessage($queueId, $message, $options = null) - { - try { - if ($queueId instanceof Zend_Service_WindowsAzure_Storage_QueueInstance) { - $queueId = $queueId->Name; - } - return $this->_storageClient->putMessage( - $queueId, $message, $options[self::MESSAGE_TTL] - ); - } catch (Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on sending message: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Recieve at most $max messages from the specified queue and return the - * message IDs for messages recieved. - * - * @param string $queueId - * @param int $max - * @param array $options - * @return Zend_Cloud_QueueService_Message[] - */ - public function receiveMessages($queueId, $max = 1, $options = null) - { - try { - if ($queueId instanceof Zend_Service_WindowsAzure_Storage_QueueInstance) { - $queueId = $queueId->Name; - } - if (isset($options[self::VISIBILITY_TIMEOUT])) { - $visibility = $options[self::VISIBILITY_TIMEOUT]; - } else { - $visibility = self::DEFAULT_TIMEOUT; - } - return $this->_makeMessages($this->_storageClient->getMessages($queueId, $max, $visibility, false)); - } catch (Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on recieving messages: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Create Zend_Cloud_QueueService_Message array for - * Azure messages. - * - * @param array $messages - * @return Zend_Cloud_QueueService_Message[] - */ - protected function _makeMessages($messages) - { - $messageClass = $this->getMessageClass(); - $setClass = $this->getMessageSetClass(); - $result = array(); - foreach ($messages as $message) { - $result[] = new $messageClass($message->MessageText, $message); - } - return new $setClass($result); - } - - /** - * Delete the specified message from the specified queue. - * - * @param string $queueId - * @param Zend_Cloud_QueueService_Message $message Message ID or message - * @param array $options - * @return void - */ - public function deleteMessage($queueId, $message, $options = null) - { - try { - if ($queueId instanceof Zend_Service_WindowsAzure_Storage_QueueInstance) { - $queueId = $queueId->Name; - } - if ($message instanceof Zend_Cloud_QueueService_Message) { - $message = $message->getMessage(); - } - if ($message instanceof Zend_Service_WindowsAzure_Storage_QueueMessage) { - return $this->_storageClient->deleteMessage($queueId, $message); - } else { - throw new Zend_Cloud_QueueService_Exception('Cannot delete the message: message object required'); - } - } catch (Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on deleting a message: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Peek at the messages from the specified queue without removing them. - * - * @param string $queueId - * @param int $num How many messages - * @param array $options - * @return Zend_Cloud_QueueService_Message[] - */ - public function peekMessages($queueId, $num = 1, $options = null) - { - try { - if ($queueId instanceof Zend_Service_WindowsAzure_Storage_QueueInstance) { - $queueId = $queueId->Name; - } - return $this->_makeMessages($this->_storageClient->peekMessages($queueId, $num)); - } catch (Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on peeking messages: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Get Azure implementation - * @return Zend_Service_Azure_Storage_Queue - */ - public function getClient() - { - return $this->_storageClient; - } -} diff --git a/library/Zend/Cloud/QueueService/Adapter/ZendQueue.php b/library/Zend/Cloud/QueueService/Adapter/ZendQueue.php deleted file mode 100644 index 53497752..00000000 --- a/library/Zend/Cloud/QueueService/Adapter/ZendQueue.php +++ /dev/null @@ -1,301 +0,0 @@ -toArray(); - } - - if (!is_array($options)) { - throw new Zend_Cloud_QueueService_Exception('Invalid options provided'); - } - - if (isset($options[self::MESSAGE_CLASS])) { - $this->setMessageClass($options[self::MESSAGE_CLASS]); - } - - if (isset($options[self::MESSAGESET_CLASS])) { - $this->setMessageSetClass($options[self::MESSAGESET_CLASS]); - } - - // Build Zend_Service_WindowsAzure_Storage_Blob instance - if (!isset($options[self::ADAPTER])) { - throw new Zend_Cloud_QueueService_Exception('No Zend_Queue adapter provided'); - } else { - $adapter = $options[self::ADAPTER]; - unset($options[self::ADAPTER]); - } - try { - $this->_queue = new Zend_Queue($adapter, $options); - } catch (Zend_Queue_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on create: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Create a queue. Returns the ID of the created queue (typically the URL). - * It may take some time to create the queue. Check your vendor's - * documentation for details. - * - * @param string $name - * @param array $options - * @return string Queue ID (typically URL) - */ - public function createQueue($name, $options = null) - { - try { - $this->_queues[$name] = $this->_queue->createQueue($name, isset($options[Zend_Queue::TIMEOUT])?$options[Zend_Queue::TIMEOUT]:null); - return $name; - } catch (Zend_Queue_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on queue creation: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Delete a queue. All messages in the queue will also be deleted. - * - * @param string $queueId - * @param array $options - * @return boolean true if successful, false otherwise - */ - public function deleteQueue($queueId, $options = null) - { - if (!isset($this->_queues[$queueId])) { - return false; - } - try { - if ($this->_queues[$queueId]->deleteQueue()) { - unset($this->_queues[$queueId]); - return true; - } - } catch (Zend_Queue_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on queue deletion: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * List all queues. - * - * @param array $options - * @return array Queue IDs - */ - public function listQueues($options = null) - { - try { - return $this->_queue->getQueues(); - } catch (Zend_Queue_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on listing queues: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Get a key/value array of metadata for the given queue. - * - * @param string $queueId - * @param array $options - * @return array - */ - public function fetchQueueMetadata($queueId, $options = null) - { - if (!isset($this->_queues[$queueId])) { - return false; - } - try { - return $this->_queues[$queueId]->getOptions(); - } catch (Zend_Queue_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on fetching queue metadata: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Store a key/value array of metadata for the specified queue. - * WARNING: This operation overwrites any metadata that is located at - * $destinationPath. Some adapters may not support this method. - * - * @param string $queueId - * @param array $metadata - * @param array $options - * @return void - */ - public function storeQueueMetadata($queueId, $metadata, $options = null) - { - if (!isset($this->_queues[$queueId])) { - throw new Zend_Cloud_QueueService_Exception("No such queue: $queueId"); - } - try { - return $this->_queues[$queueId]->setOptions($metadata); - } catch (Zend_Queue_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on setting queue metadata: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Send a message to the specified queue. - * - * @param string $queueId - * @param string $message - * @param array $options - * @return string Message ID - */ - public function sendMessage($queueId, $message, $options = null) - { - if (!isset($this->_queues[$queueId])) { - throw new Zend_Cloud_QueueService_Exception("No such queue: $queueId"); - } - try { - return $this->_queues[$queueId]->send($message); - } catch (Zend_Queue_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on sending message: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Recieve at most $max messages from the specified queue and return the - * message IDs for messages recieved. - * - * @param string $queueId - * @param int $max - * @param array $options - * @return array - */ - public function receiveMessages($queueId, $max = 1, $options = null) - { - if (!isset($this->_queues[$queueId])) { - throw new Zend_Cloud_QueueService_Exception("No such queue: $queueId"); - } - try { - $res = $this->_queues[$queueId]->receive($max, isset($options[Zend_Queue::TIMEOUT])?$options[Zend_Queue::TIMEOUT]:null); - if ($res instanceof Iterator) { - return $this->_makeMessages($res); - } else { - return $this->_makeMessages(array($res)); - } - } catch (Zend_Queue_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on recieving messages: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Create Zend_Cloud_QueueService_Message array for - * Azure messages. - * - * @param array $messages - * @return Zend_Cloud_QueueService_Message[] - */ - protected function _makeMessages($messages) - { - $messageClass = $this->getMessageClass(); - $setClass = $this->getMessageSetClass(); - $result = array(); - foreach ($messages as $message) { - $result[] = new $messageClass($message->body, $message); - } - return new $setClass($result); - } - - /** - * Delete the specified message from the specified queue. - * - * @param string $queueId - * @param Zend_Cloud_QueueService_Message $message Message ID or message - * @param array $options - * @return void - */ - public function deleteMessage($queueId, $message, $options = null) - { - if (!isset($this->_queues[$queueId])) { - throw new Zend_Cloud_QueueService_Exception("No such queue: $queueId"); - } - try { - if ($message instanceof Zend_Cloud_QueueService_Message) { - $message = $message->getMessage(); - } - if (!($message instanceof Zend_Queue_Message)) { - throw new Zend_Cloud_QueueService_Exception('Cannot delete the message: Zend_Queue_Message object required'); - } - - return $this->_queues[$queueId]->deleteMessage($message); - } catch (Zend_Queue_Exception $e) { - throw new Zend_Cloud_QueueService_Exception('Error on deleting a message: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Peek at the messages from the specified queue without removing them. - * - * @param string $queueId - * @param int $num How many messages - * @param array $options - * @return Zend_Cloud_QueueService_Message[] - */ - public function peekMessages($queueId, $num = 1, $options = null) - { - require_once 'Zend/Cloud/OperationNotAvailableException.php'; - throw new Zend_Cloud_OperationNotAvailableException('ZendQueue doesn\'t currently support message peeking'); - } - - /** - * Get Azure implementation - * @return Zend_Queue - */ - public function getClient() - { - return $this->_queue; - } -} diff --git a/library/Zend/Cloud/QueueService/Exception.php b/library/Zend/Cloud/QueueService/Exception.php deleted file mode 100644 index 1e8b9a3e..00000000 --- a/library/Zend/Cloud/QueueService/Exception.php +++ /dev/null @@ -1,37 +0,0 @@ -_body = $body; - $this->_clientMessage = $message; - } - - /** - * Get the message body - * @return string - */ - public function getBody() - { - return $this->_body; - } - - /** - * Get the original adapter-specific message - */ - public function getMessage() - { - return $this->_clientMessage; - } -} diff --git a/library/Zend/Cloud/QueueService/MessageSet.php b/library/Zend/Cloud/QueueService/MessageSet.php deleted file mode 100644 index f6226801..00000000 --- a/library/Zend/Cloud/QueueService/MessageSet.php +++ /dev/null @@ -1,68 +0,0 @@ -_messageCount = count($messages); - $this->_messages = new ArrayIterator($messages); - } - - /** - * Countable: number of messages in collection - * - * @return int - */ - public function count() - { - return $this->_messageCount; - } - - /** - * IteratorAggregate: return iterable object - * - * @return Traversable - */ - public function getIterator() - { - return $this->_messages; - } -} diff --git a/library/Zend/Cloud/StorageService/Adapter.php b/library/Zend/Cloud/StorageService/Adapter.php deleted file mode 100644 index e06d1194..00000000 --- a/library/Zend/Cloud/StorageService/Adapter.php +++ /dev/null @@ -1,145 +0,0 @@ -toArray(); - } - - if (!is_array($options)) { - throw new Zend_Cloud_StorageService_Exception('Invalid options provided'); - } - - if (isset($options[self::LOCAL_DIRECTORY])) { - $this->_directory = $options[self::LOCAL_DIRECTORY]; - } else { - $this->_directory = realpath(sys_get_temp_dir()); - } - } - - /** - * Get an item from the storage service. - * - * TODO: Support streaming - * - * @param string $path - * @param array $options - * @return false|string - */ - public function fetchItem($path, $options = array()) - { - $filepath = $this->_getFullPath($path); - $path = realpath($filepath); - - if (!$path || !file_exists($path)) { - return false; - } - - return file_get_contents($path); - } - - /** - * Store an item in the storage service. - * - * WARNING: This operation overwrites any item that is located at - * $destinationPath. - * - * @TODO Support streams - * - * @param string $destinationPath - * @param mixed $data - * @param array $options - * @return void - */ - public function storeItem($destinationPath, $data, $options = array()) - { - $path = $this->_getFullPath($destinationPath); - file_put_contents($path, $data); - chmod($path, 0777); - } - - /** - * Delete an item in the storage service. - * - * @param string $path - * @param array $options - * @return void - */ - public function deleteItem($path, $options = array()) - { - if (!isset($path)) { - return; - } - - $filepath = $this->_getFullPath($path); - if (file_exists($filepath)) { - unlink($filepath); - } - } - - /** - * Copy an item in the storage service to a given path. - * - * WARNING: This operation is *very* expensive for services that do not - * support copying an item natively. - * - * @TODO Support streams for those services that don't support natively - * - * @param string $sourcePath - * @param string $destination path - * @param array $options - * @return void - */ - public function copyItem($sourcePath, $destinationPath, $options = array()) - { - copy($this->_getFullPath($sourcePath), $this->_getFullPath($destinationPath)); - } - - /** - * Move an item in the storage service to a given path. - * - * WARNING: This operation is *very* expensive for services that do not - * support moving an item natively. - * - * @TODO Support streams for those services that don't support natively - * - * @param string $sourcePath - * @param string $destination path - * @param array $options - * @return void - */ - public function moveItem($sourcePath, $destinationPath, $options = array()) - { - rename($this->_getFullPath($sourcePath), $this->_getFullPath($destinationPath)); - } - - /** - * Rename an item in the storage service to a given name. - * - * - * @param string $path - * @param string $name - * @param array $options - * @return void - */ - public function renameItem($path, $name, $options = null) - { - rename( - $this->_getFullPath($path), - dirname($this->_getFullPath($path)) . DIRECTORY_SEPARATOR . $name - ); - } - - /** - * List items in the given directory in the storage service - * - * The $path must be a directory - * - * - * @param string $path Must be a directory - * @param array $options - * @return array A list of item names - */ - public function listItems($path, $options = null) - { - $listing = scandir($this->_getFullPath($path)); - - // Remove the hidden navigation directories - $listing = array_diff($listing, array('.', '..')); - - return $listing; - } - - /** - * Get a key/value array of metadata for the given path. - * - * @param string $path - * @param array $options - * @return array - */ - public function fetchMetadata($path, $options = array()) - { - $fullPath = $this->_getFullPath($path); - $metadata = null; - if (file_exists($fullPath)) { - $metadata = stat(realpath($fullPath)); - } - - return isset($metadata) ? $metadata : false; - } - - /** - * Store a key/value array of metadata at the given path. - * WARNING: This operation overwrites any metadata that is located at - * $destinationPath. - * - * @param string $destinationPath - * @param array $options - * @return void - */ - public function storeMetadata($destinationPath, $metadata, $options = array()) - { - require_once 'Zend/Cloud/OperationNotAvailableException.php'; - throw new Zend_Cloud_OperationNotAvailableException('Storing metadata not implemented'); - } - - /** - * Delete a key/value array of metadata at the given path. - * - * @param string $path - * @param array $options - * @return void - */ - public function deleteMetadata($path) - { - require_once 'Zend/Cloud/OperationNotAvailableException.php'; - throw new Zend_Cloud_OperationNotAvailableException('Deleting metadata not implemented'); - } - - /** - * Return the full path for the file. - * - * @param string $path - * @return string - */ - private function _getFullPath($path) - { - return $this->_directory . DIRECTORY_SEPARATOR . $path; - } - - /** - * Get the concrete client. - * @return strings - */ - public function getClient() - { - return $this->_directory; - } -} diff --git a/library/Zend/Cloud/StorageService/Adapter/Nirvanix.php b/library/Zend/Cloud/StorageService/Adapter/Nirvanix.php deleted file mode 100644 index b96e33e9..00000000 --- a/library/Zend/Cloud/StorageService/Adapter/Nirvanix.php +++ /dev/null @@ -1,399 +0,0 @@ -toArray(); - } - - if (!is_array($options)) { - throw new Zend_Cloud_StorageService_Exception('Invalid options provided'); - } - - $auth = array( - 'username' => $options[self::USERNAME], - 'password' => $options[self::PASSWORD], - 'appKey' => $options[self::APP_KEY], - ); - $nirvanix_options = array(); - if (isset($options[self::HTTP_ADAPTER])) { - $httpc = new Zend_Http_Client(); - $httpc->setAdapter($options[self::HTTP_ADAPTER]); - $nirvanix_options['httpClient'] = $httpc; - } - try { - $this->_nirvanix = new Zend_Service_Nirvanix($auth, $nirvanix_options); - $this->_remoteDirectory = $options[self::REMOTE_DIRECTORY]; - $this->_imfNs = $this->_nirvanix->getService('IMFS'); - $this->_metadataNs = $this->_nirvanix->getService('Metadata'); - } catch (Zend_Service_Nirvanix_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on create: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Get an item from the storage service. - * - * @param string $path - * @param array $options - * @return mixed - */ - public function fetchItem($path, $options = null) - { - $path = $this->_getFullPath($path); - try { - $item = $this->_imfNs->getContents($path); - } catch (Zend_Service_Nirvanix_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on fetch: '.$e->getMessage(), $e->getCode(), $e); - } - return $item; - } - - /** - * Store an item in the storage service. - * WARNING: This operation overwrites any item that is located at - * $destinationPath. - * @param string $destinationPath - * @param mixed $data - * @param array $options - * @return void - */ - public function storeItem($destinationPath, $data, $options = null) - { - try { - $path = $this->_getFullPath($destinationPath); - $this->_imfNs->putContents($path, $data); - } catch (Zend_Service_Nirvanix_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on store: '.$e->getMessage(), $e->getCode(), $e); - } - return true; - } - - /** - * Delete an item in the storage service. - * - * @param string $path - * @param array $options - * @return void - */ - public function deleteItem($path, $options = null) - { - try { - $path = $this->_getFullPath($path); - $this->_imfNs->unlink($path); - } catch(Zend_Service_Nirvanix_Exception $e) { -// if (trim(strtoupper($e->getMessage())) != 'INVALID PATH') { -// // TODO Differentiate among errors in the Nirvanix adapter - throw new Zend_Cloud_StorageService_Exception('Error on delete: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Copy an item in the storage service to a given path. - * WARNING: This operation is *very* expensive for services that do not - * support copying an item natively. - * - * @param string $sourcePath - * @param string $destination path - * @param array $options - * @return void - */ - public function copyItem($sourcePath, $destinationPath, $options = null) - { - try { - $sourcePath = $this->_getFullPath($sourcePath); - $destinationPath = $this->_getFullPath($destinationPath); - $this->_imfNs->CopyFiles(array('srcFilePath' => $sourcePath, - 'destFolderPath' => $destinationPath)); - } catch (Zend_Service_Nirvanix_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on copy: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Move an item in the storage service to a given path. - * WARNING: This operation is *very* expensive for services that do not - * support moving an item natively. - * - * @param string $sourcePath - * @param string $destination path - * @param array $options - * @return void - */ - public function moveItem($sourcePath, $destinationPath, $options = null) - { - try { - $sourcePath = $this->_getFullPath($sourcePath); - $destinationPath = $this->_getFullPath($destinationPath); - $this->_imfNs->RenameFile(array('filePath' => $sourcePath, - 'newFileName' => $destinationPath)); - // $this->_imfNs->MoveFiles(array('srcFilePath' => $sourcePath, - // 'destFolderPath' => $destinationPath)); - } catch (Zend_Service_Nirvanix_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on move: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Rename an item in the storage service to a given name. - * - * - * @param string $path - * @param string $name - * @param array $options - * @return void - */ - public function renameItem($path, $name, $options = null) - { - require_once 'Zend/Cloud/OperationNotAvailableException.php'; - throw new Zend_Cloud_OperationNotAvailableException('Renaming not implemented'); - } - - /** - * Get a key/value array of metadata for the given path. - * - * @param string $path - * @param array $options - * @return array An associative array of key/value pairs specifying the metadata for this object. - * If no metadata exists, an empty array is returned. - */ - public function fetchMetadata($path, $options = null) - { - $path = $this->_getFullPath($path); - try { - $metadataNode = $this->_metadataNs->getMetadata(array('path' => $path)); - } catch (Zend_Service_Nirvanix_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on fetching metadata: '.$e->getMessage(), $e->getCode(), $e); - } - - $metadata = array(); - $length = count($metadataNode->Metadata); - - // Need to special case this as Nirvanix returns an array if there is - // more than one, but doesn't return an array if there is only one. - if ($length == 1) - { - $metadata[(string)$metadataNode->Metadata->Type->value] = (string)$metadataNode->Metadata->Value; - } - else if ($length > 1) - { - for ($i=0; $i<$length; $i++) - { - $metadata[(string)$metadataNode->Metadata[$i]->Type] = (string)$metadataNode->Metadata[$i]->Value; - } - } - return $metadata; - } - - /** - * Store a key/value array of metadata at the given path. - * WARNING: This operation overwrites any metadata that is located at - * $destinationPath. - * - * @param string $destinationPath - * @param array $metadata associative array specifying the key/value pairs for the metadata. - * @param array $options - * @return void - */ - public function storeMetadata($destinationPath, $metadata, $options = null) - { - $destinationPath = $this->_getFullPath($destinationPath); - if ($metadata != null) { - try { - foreach ($metadata AS $key=>$value) { - $metadataString = $key . ":" . $value; - $this->_metadataNs->SetMetadata(array( - 'path' => $destinationPath, - 'metadata' => $metadataString, - )); - } - } catch (Zend_Service_Nirvanix_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on storing metadata: '.$e->getMessage(), $e->getCode(), $e); - } - } - } - - /** - * Delete a key/value array of metadata at the given path. - * - * @param string $path - * @param array $metadata - An associative array specifying the key/value pairs for the metadata - * to be deleted. If null, all metadata associated with the object will - * be deleted. - * @param array $options - * @return void - */ - public function deleteMetadata($path, $metadata = null, $options = null) - { - $path = $this->_getFullPath($path); - try { - if ($metadata == null) { - $this->_metadataNs->DeleteAllMetadata(array('path' => $path)); - } else { - foreach ($metadata AS $key=>$value) { - $this->_metadataNs->DeleteMetadata(array( - 'path' => $path, - 'metadata' => $key, - )); - } - } - } catch (Zend_Service_Nirvanix_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on deleting metadata: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /* - * Recursively traverse all the folders and build an array that contains - * the path names for each folder. - * - * @param string $path folder path to get the list of folders from. - * @param array& $resultArray reference to the array that contains the path names - * for each folder. - */ - private function getAllFolders($path, &$resultArray) - { - $response = $this->_imfNs->ListFolder(array( - 'folderPath' => $path, - 'pageNumber' => 1, - 'pageSize' => $this->maxPageSize, - )); - $numFolders = $response->ListFolder->TotalFolderCount; - if ($numFolders == 0) { - return; - } else { - //Need to special case this as Nirvanix returns an array if there is - //more than one, but doesn't return an array if there is only one. - if ($numFolders == 1) { - $folderPath = $response->ListFolder->Folder->Path; - array_push($resultArray, $folderPath); - $this->getAllFolders('/' . $folderPath, $resultArray); - } else { - foreach ($response->ListFolder->Folder as $arrayElem) { - $folderPath = $arrayElem->Path; - array_push($resultArray, $folderPath); - $this->getAllFolders('/' . $folderPath, $resultArray); - } - } - } - } - - /** - * Return an array of the items contained in the given path. The items - * returned are the files or objects that in the specified path. - * - * @param string $path - * @param array $options - * @return array - */ - public function listItems($path, $options = null) - { - $path = $this->_getFullPath($path); - $resultArray = array(); - - if (!isset($path)) { - return false; - } else { - try { - $response = $this->_imfNs->ListFolder(array( - 'folderPath' => $path, - 'pageNumber' => 1, - 'pageSize' => $this->maxPageSize, - )); - } catch (Zend_Service_Nirvanix_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on list: '.$e->getMessage(), $e->getCode(), $e); - } - - $numFiles = $response->ListFolder->TotalFileCount; - - //Add the file names to the array - if ($numFiles != 0) { - //Need to special case this as Nirvanix returns an array if there is - //more than one, but doesn't return an array if there is only one. - if ($numFiles == 1) { - $resultArray[] = (string)$response->ListFolder->File->Name; - } - else { - foreach ($response->ListFolder->File as $arrayElem) { - $resultArray[] = (string) $arrayElem->Name; - } - } - } - } - - return $resultArray; - } - - /** - * Get full path to an object - * - * @param string $path - * @return string - */ - private function _getFullPath($path) - { - return $this->_remoteDirectory . $path; - } - - /** - * Get the concrete client. - * @return Zend_Service_Nirvanix - */ - public function getClient() - { - return $this->_nirvanix; - } -} diff --git a/library/Zend/Cloud/StorageService/Adapter/Rackspace.php b/library/Zend/Cloud/StorageService/Adapter/Rackspace.php deleted file mode 100644 index 1f658411..00000000 --- a/library/Zend/Cloud/StorageService/Adapter/Rackspace.php +++ /dev/null @@ -1,332 +0,0 @@ -toArray(); - } - - if (!is_array($options) || empty($options)) { - throw new Zend_Cloud_StorageService_Exception('Invalid options provided'); - } - - try { - $this->_rackspace = new Zend_Service_Rackspace_Files($options[self::USER], $options[self::API_KEY]); - } catch (Zend_Service_Rackspace_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on create: '.$e->getMessage(), $e->getCode(), $e); - } - - if (isset($options[self::HTTP_ADAPTER])) { - $this->_rackspace->getHttpClient()->setAdapter($options[self::HTTP_ADAPTER]); - } - if (!empty($options[self::REMOTE_CONTAINER])) { - $this->_container = $options[self::REMOTE_CONTAINER]; - } - } - - /** - * Get an item from the storage service. - * - * @param string $path - * @param array $options - * @return mixed - */ - public function fetchItem($path, $options = null) - { - $item = $this->_rackspace->getObject($this->_container,$path, $options); - if (!$this->_rackspace->isSuccessful() && ($this->_rackspace->getErrorCode()!='404')) { - throw new Zend_Cloud_StorageService_Exception('Error on fetch: '.$this->_rackspace->getErrorMsg()); - } - if (!empty($item)) { - return $item->getContent(); - } else { - return false; - } - } - - /** - * Store an item in the storage service. - * - * @param string $destinationPath - * @param mixed $data - * @param array $options - * @return void - */ - public function storeItem($destinationPath, $data, $options = null) - { - $this->_rackspace->storeObject($this->_container,$destinationPath,$data,$options); - if (!$this->_rackspace->isSuccessful()) { - throw new Zend_Cloud_StorageService_Exception('Error on store: '.$this->_rackspace->getErrorMsg()); - } - } - - /** - * Delete an item in the storage service. - * - * @param string $path - * @param array $options - * @return void - */ - public function deleteItem($path, $options = null) - { - $this->_rackspace->deleteObject($this->_container,$path); - if (!$this->_rackspace->isSuccessful()) { - throw new Zend_Cloud_StorageService_Exception('Error on delete: '.$this->_rackspace->getErrorMsg()); - } - } - - /** - * Copy an item in the storage service to a given path. - * - * @param string $sourcePath - * @param string $destination path - * @param array $options - * @return void - */ - public function copyItem($sourcePath, $destinationPath, $options = null) - { - $this->_rackspace->copyObject($this->_container,$sourcePath,$this->_container,$destinationPath,$options); - if (!$this->_rackspace->isSuccessful()) { - throw new Zend_Cloud_StorageService_Exception('Error on copy: '.$this->_rackspace->getErrorMsg()); - } - } - - /** - * Move an item in the storage service to a given path. - * WARNING: This operation is *very* expensive for services that do not - * support moving an item natively. - * - * @param string $sourcePath - * @param string $destination path - * @param array $options - * @return void - */ - public function moveItem($sourcePath, $destinationPath, $options = null) - { - try { - $this->copyItem($sourcePath, $destinationPath, $options); - } catch (Zend_Service_Rackspace_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on move: '.$e->getMessage()); - } - try { - $this->deleteItem($sourcePath); - } catch (Zend_Service_Rackspace_Exception $e) { - $this->deleteItem($destinationPath); - throw new Zend_Cloud_StorageService_Exception('Error on move: '.$e->getMessage()); - } - } - - /** - * Rename an item in the storage service to a given name. - * - * @param string $path - * @param string $name - * @param array $options - * @return void - */ - public function renameItem($path, $name, $options = null) - { - require_once 'Zend/Cloud/OperationNotAvailableException.php'; - throw new Zend_Cloud_OperationNotAvailableException('Renaming not implemented'); - } - - /** - * Get a key/value array of metadata for the given path. - * - * @param string $path - * @param array $options - * @return array An associative array of key/value pairs specifying the metadata for this object. - * If no metadata exists, an empty array is returned. - */ - public function fetchMetadata($path, $options = null) - { - $result = $this->_rackspace->getMetadataObject($this->_container,$path); - if (!$this->_rackspace->isSuccessful()) { - throw new Zend_Cloud_StorageService_Exception('Error on fetch metadata: '.$this->_rackspace->getErrorMsg()); - } - $metadata = array(); - if (isset($result['metadata'])) { - $metadata = $result['metadata']; - } - // delete the self::DELETE_METADATA_KEY - this is a trick to remove all - // the metadata information of an object (see deleteMetadata). - // Rackspace doesn't have an API to remove the metadata of an object - unset($metadata[self::DELETE_METADATA_KEY]); - return $metadata; - } - - /** - * Store a key/value array of metadata at the given path. - * WARNING: This operation overwrites any metadata that is located at - * $destinationPath. - * - * @param string $destinationPath - * @param array $metadata associative array specifying the key/value pairs for the metadata. - * @param array $options - * @return void - */ - public function storeMetadata($destinationPath, $metadata, $options = null) - { - $this->_rackspace->setMetadataObject($this->_container, $destinationPath, $metadata); - if (!$this->_rackspace->isSuccessful()) { - throw new Zend_Cloud_StorageService_Exception('Error on store metadata: '.$this->_rackspace->getErrorMsg()); - } - } - - /** - * Delete a key/value array of metadata at the given path. - * - * @param string $path - * @param array $metadata - An associative array specifying the key/value pairs for the metadata - * to be deleted. If null, all metadata associated with the object will - * be deleted. - * @param array $options - * @return void - */ - public function deleteMetadata($path, $metadata = null, $options = null) - { - if (empty($metadata)) { - $newMetadata = array(self::DELETE_METADATA_KEY => true); - try { - $this->storeMetadata($path, $newMetadata); - } catch (Zend_Service_Rackspace_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on delete metadata: '.$e->getMessage()); - } - } else { - try { - $oldMetadata = $this->fetchMetadata($path); - } catch (Zend_Service_Rackspace_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on delete metadata: '.$e->getMessage()); - } - $newMetadata = array_diff_assoc($oldMetadata, $metadata); - try { - $this->storeMetadata($path, $newMetadata); - } catch (Zend_Service_Rackspace_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on delete metadata: '.$e->getMessage()); - } - } - } - - /* - * Recursively traverse all the folders and build an array that contains - * the path names for each folder. - * - * @param string $path folder path to get the list of folders from. - * @param array& $resultArray reference to the array that contains the path names - * for each folder. - * @return void - */ - private function getAllFolders($path, &$resultArray) - { - if (!empty($path)) { - $options = array ( - 'prefix' => $path - ); - } - $files = $this->_rackspace->getObjects($this->_container,$options); - if (!$this->_rackspace->isSuccessful()) { - throw new Zend_Cloud_StorageService_Exception('Error on get all folders: '.$this->_rackspace->getErrorMsg()); - } - $resultArray = array(); - foreach ($files as $file) { - $resultArray[dirname($file->getName())] = true; - } - $resultArray = array_keys($resultArray); - } - - /** - * Return an array of the items contained in the given path. The items - * returned are the files or objects that in the specified path. - * - * @param string $path - * @param array $options - * @return array - */ - public function listItems($path, $options = null) - { - if (!empty($path)) { - $options = array ( - 'prefix' => $path - ); - } - - $files = $this->_rackspace->getObjects($this->_container,$options); - if (!$this->_rackspace->isSuccessful()) { - throw new Zend_Cloud_StorageService_Exception('Error on list items: '.$this->_rackspace->getErrorMsg()); - } - $resultArray = array(); - if (!empty($files)) { - foreach ($files as $file) { - $resultArray[] = $file->getName(); - } - } - return $resultArray; - } - - /** - * Get the concrete client. - * - * @return Zend_Service_Rackspace_File - */ - public function getClient() - { - return $this->_rackspace; - } -} diff --git a/library/Zend/Cloud/StorageService/Adapter/S3.php b/library/Zend/Cloud/StorageService/Adapter/S3.php deleted file mode 100644 index c39b6c5d..00000000 --- a/library/Zend/Cloud/StorageService/Adapter/S3.php +++ /dev/null @@ -1,332 +0,0 @@ -toArray(); - } - - if (!is_array($options)) { - throw new Zend_Cloud_StorageService_Exception('Invalid options provided'); - } - - if (!isset($options[self::AWS_ACCESS_KEY]) || !isset($options[self::AWS_SECRET_KEY])) { - throw new Zend_Cloud_StorageService_Exception('AWS keys not specified!'); - } - - try { - $this->_s3 = new Zend_Service_Amazon_S3($options[self::AWS_ACCESS_KEY], - $options[self::AWS_SECRET_KEY]); - } catch (Zend_Service_Amazon_S3_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on create: '.$e->getMessage(), $e->getCode(), $e); - } - - if (isset($options[self::HTTP_ADAPTER])) { - $this->_s3->getHttpClient()->setAdapter($options[self::HTTP_ADAPTER]); - } - - if (isset($options[self::BUCKET_NAME])) { - $this->_defaultBucketName = $options[self::BUCKET_NAME]; - } - - if (isset($options[self::BUCKET_AS_DOMAIN])) { - $this->_defaultBucketAsDomain = $options[self::BUCKET_AS_DOMAIN]; - } - } - - /** - * Get an item from the storage service. - * - * @TODO Support streams - * - * @param string $path - * @param array $options - * @return string - */ - public function fetchItem($path, $options = array()) - { - $fullPath = $this->_getFullPath($path, $options); - try { - if (!empty($options[self::FETCH_STREAM])) { - return $this->_s3->getObjectStream($fullPath, $options[self::FETCH_STREAM]); - } else { - return $this->_s3->getObject($fullPath); - } - } catch (Zend_Service_Amazon_S3_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on fetch: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Store an item in the storage service. - * - * WARNING: This operation overwrites any item that is located at - * $destinationPath. - * - * @TODO Support streams - * - * @param string $destinationPath - * @param string|resource $data - * @param array $options - * @return void - */ - public function storeItem($destinationPath, $data, $options = array()) - { - try { - $fullPath = $this->_getFullPath($destinationPath, $options); - return $this->_s3->putObject( - $fullPath, - $data, - empty($options[self::METADATA]) ? null : $options[self::METADATA] - ); - } catch (Zend_Service_Amazon_S3_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on store: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Delete an item in the storage service. - * - * @param string $path - * @param array $options - * @return void - */ - public function deleteItem($path, $options = array()) - { - try { - $this->_s3->removeObject($this->_getFullPath($path, $options)); - } catch (Zend_Service_Amazon_S3_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on delete: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Copy an item in the storage service to a given path. - * - * WARNING: This operation is *very* expensive for services that do not - * support copying an item natively. - * - * @TODO Support streams for those services that don't support natively - * - * @param string $sourcePath - * @param string $destination path - * @param array $options - * @return void - */ - public function copyItem($sourcePath, $destinationPath, $options = array()) - { - try { - $fullSourcePath = $this->_getFullPath($sourcePath, $options); - $fullDestPath = $this->_getFullPath($destinationPath, $options); - return $this->_s3->copyObject( - $fullSourcePath, - $fullDestPath, - empty($options[self::METADATA]) ? null : $options[self::METADATA] - ); - - } catch (Zend_Service_Amazon_S3_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on copy: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Move an item in the storage service to a given path. - * - * @TODO Support streams for those services that don't support natively - * - * @param string $sourcePath - * @param string $destination path - * @param array $options - * @return void - */ - public function moveItem($sourcePath, $destinationPath, $options = array()) - { - try { - $fullSourcePath = $this->_getFullPath($sourcePath, $options); - $fullDestPath = $this->_getFullPath($destinationPath, $options); - return $this->_s3->moveObject( - $fullSourcePath, - $fullDestPath, - empty($options[self::METADATA]) ? null : $options[self::METADATA] - ); - } catch (Zend_Service_Amazon_S3_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on move: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Rename an item in the storage service to a given name. - * - * - * @param string $path - * @param string $name - * @param array $options - * @return void - */ - public function renameItem($path, $name, $options = null) - { - require_once 'Zend/Cloud/OperationNotAvailableException.php'; - throw new Zend_Cloud_OperationNotAvailableException('Rename not implemented'); - } - - /** - * List items in the given directory in the storage service - * - * The $path must be a directory - * - * - * @param string $path Must be a directory - * @param array $options - * @return array A list of item names - */ - public function listItems($path, $options = null) - { - try { - // TODO Support 'prefix' parameter for Zend_Service_Amazon_S3::getObjectsByBucket() - return $this->_s3->getObjectsByBucket($this->_defaultBucketName); - } catch (Zend_Service_Amazon_S3_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on list: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Get a key/value array of metadata for the given path. - * - * @param string $path - * @param array $options - * @return array - */ - public function fetchMetadata($path, $options = array()) - { - try { - return $this->_s3->getInfo($this->_getFullPath($path, $options)); - } catch (Zend_Service_Amazon_S3_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on fetch: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Store a key/value array of metadata at the given path. - * WARNING: This operation overwrites any metadata that is located at - * $destinationPath. - * - * @param string $destinationPath - * @param array $options - * @return void - */ - public function storeMetadata($destinationPath, $metadata, $options = array()) - { - require_once 'Zend/Cloud/OperationNotAvailableException.php'; - throw new Zend_Cloud_OperationNotAvailableException('Storing separate metadata is not supported, use storeItem() with \'metadata\' option key'); - } - - /** - * Delete a key/value array of metadata at the given path. - * - * @param string $path - * @param array $options - * @return void - */ - public function deleteMetadata($path) - { - require_once 'Zend/Cloud/OperationNotAvailableException.php'; - throw new Zend_Cloud_OperationNotAvailableException('Deleting metadata not supported'); - } - - /** - * Get full path, including bucket, for an object - * - * @param string $path - * @param array $options - * @return void - */ - protected function _getFullPath($path, $options) - { - if (isset($options[self::BUCKET_NAME])) { - $bucket = $options[self::BUCKET_NAME]; - } else if (isset($this->_defaultBucketName)) { - $bucket = $this->_defaultBucketName; - } else { - require_once 'Zend/Cloud/StorageService/Exception.php'; - throw new Zend_Cloud_StorageService_Exception('Bucket name must be specified for S3 adapter.'); - } - - if (isset($options[self::BUCKET_AS_DOMAIN])) { - // TODO: support bucket domain names - require_once 'Zend/Cloud/StorageService/Exception.php'; - throw new Zend_Cloud_StorageService_Exception('The S3 adapter does not currently support buckets in domain names.'); - } - - return trim($bucket) . '/' . trim($path); - } - - /** - * Get the concrete client. - * @return Zend_Service_Amazon_S3 - */ - public function getClient() - { - return $this->_s3; - } -} diff --git a/library/Zend/Cloud/StorageService/Adapter/WindowsAzure.php b/library/Zend/Cloud/StorageService/Adapter/WindowsAzure.php deleted file mode 100644 index 05ac6bae..00000000 --- a/library/Zend/Cloud/StorageService/Adapter/WindowsAzure.php +++ /dev/null @@ -1,443 +0,0 @@ -toArray(); - } - - if (!is_array($options)) { - throw new Zend_Cloud_StorageService_Exception('Invalid options provided'); - } - - // Build Zend_Service_WindowsAzure_Storage_Blob instance - if (!isset($options[self::HOST])) { - $host = self::DEFAULT_HOST; - } else { - $host = $options[self::HOST]; - } - - if (!isset($options[self::ACCOUNT_NAME])) { - throw new Zend_Cloud_StorageService_Exception('No Windows Azure account name provided.'); - } - if (!isset($options[self::ACCOUNT_KEY])) { - throw new Zend_Cloud_StorageService_Exception('No Windows Azure account key provided.'); - } - - $this->_storageClient = new Zend_Service_WindowsAzure_Storage_Blob($host, - $options[self::ACCOUNT_NAME], $options[self::ACCOUNT_KEY]); - - // Parse other options - if (!empty($options[self::PROXY_HOST])) { - $proxyHost = $options[self::PROXY_HOST]; - $proxyPort = isset($options[self::PROXY_PORT]) ? $options[self::PROXY_PORT] : 8080; - $proxyCredentials = isset($options[self::PROXY_CREDENTIALS]) ? $options[self::PROXY_CREDENTIALS] : ''; - - $this->_storageClient->setProxy(true, $proxyHost, $proxyPort, $proxyCredentials); - } - - if (isset($options[self::HTTP_ADAPTER])) { - $this->_storageClient->setHttpClientChannel($options[self::HTTP_ADAPTER]); - } - - // Set container - $this->_container = $options[self::CONTAINER]; - - // Make sure the container exists - if (!$this->_storageClient->containerExists($this->_container)) { - $this->_storageClient->createContainer($this->_container); - } - } - - /** - * Get an item from the storage service. - * - * @param string $path - * @param array $options - * @return mixed - */ - public function fetchItem($path, $options = null) - { - // Options - $returnType = self::RETURN_STRING; - $returnPath = tempnam('', 'azr'); - $openMode = 'r'; - - // Parse options - if (is_array($options)) { - if (isset($options[self::RETURN_TYPE])) { - $returnType = $options[self::RETURN_TYPE]; - } - - if (isset($options[self::RETURN_PATHNAME])) { - $returnPath = $options[self::RETURN_PATHNAME]; - } - - if (isset($options[self::RETURN_OPENMODE])) { - $openMode = $options[self::RETURN_OPENMODE]; - } - } - - // Fetch the blob - try { - $this->_storageClient->getBlob( - $this->_container, - $path, - $returnPath - ); - } catch (Zend_Service_WindowsAzure_Exception $e) { - if (strpos($e->getMessage(), "does not exist") !== false) { - return false; - } - throw new Zend_Cloud_StorageService_Exception('Error on fetch: '.$e->getMessage(), $e->getCode(), $e); - } - - // Return value - if ($returnType == self::RETURN_PATH) { - return $returnPath; - } - if ($returnType == self::RETURN_STRING) { - return file_get_contents($returnPath); - } - if ($returnType == self::RETURN_STREAM) { - return fopen($returnPath, $openMode); - } - } - - /** - * Store an item in the storage service. - * WARNING: This operation overwrites any item that is located at - * $destinationPath. - * @param string $destinationPath - * @param mixed $data - * @param array $options - * @return boolean - */ - public function storeItem($destinationPath, $data, $options = null) - { - // Create a temporary file that will be uploaded - $temporaryFilePath = ''; - $removeTemporaryFilePath = false; - - if (is_resource($data)) { - $temporaryFilePath = tempnam('', 'azr'); - $fpDestination = fopen($temporaryFilePath, 'w'); - - $fpSource = $data; - rewind($fpSource); - while (!feof($fpSource)) { - fwrite($fpDestination, fread($fpSource, 8192)); - } - - fclose($fpDestination); - - $removeTemporaryFilePath = true; - } elseif (file_exists($data)) { - $temporaryFilePath = $data; - $removeTemporaryFilePath = false; - } else { - $temporaryFilePath = tempnam('', 'azr'); - file_put_contents($temporaryFilePath, $data); - $removeTemporaryFilePath = true; - } - - try { - // Upload data - $this->_storageClient->putBlob( - $this->_container, - $destinationPath, - $temporaryFilePath - ); - } catch(Zend_Service_WindowsAzure_Exception $e) { - @unlink($temporaryFilePath); - throw new Zend_Cloud_StorageService_Exception('Error on store: '.$e->getMessage(), $e->getCode(), $e); - } - if ($removeTemporaryFilePath) { - @unlink($temporaryFilePath); - } - } - - /** - * Delete an item in the storage service. - * - * @param string $path - * @param array $options - * @return void - */ - public function deleteItem($path, $options = null) - { - try { - $this->_storageClient->deleteBlob( - $this->_container, - $path - ); - } catch (Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on delete: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Copy an item in the storage service to a given path. - * - * @param string $sourcePath - * @param string $destinationPath - * @param array $options - * @return void - */ - public function copyItem($sourcePath, $destinationPath, $options = null) - { - try { - $this->_storageClient->copyBlob( - $this->_container, - $sourcePath, - $this->_container, - $destinationPath - ); - } catch (Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on copy: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Move an item in the storage service to a given path. - * - * @param string $sourcePath - * @param string $destinationPath - * @param array $options - * @return void - */ - public function moveItem($sourcePath, $destinationPath, $options = null) - { - try { - $this->_storageClient->copyBlob( - $this->_container, - $sourcePath, - $this->_container, - $destinationPath - ); - - $this->_storageClient->deleteBlob( - $this->_container, - $sourcePath - ); - } catch (Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on move: '.$e->getMessage(), $e->getCode(), $e); - } - - } - - /** - * Rename an item in the storage service to a given name. - * - * - * @param string $path - * @param string $name - * @param array $options - * @return void - */ - public function renameItem($path, $name, $options = null) - { - return $this->moveItem($path, $name, $options); - } - - /** - * List items in the given directory in the storage service - * - * The $path must be a directory - * - * - * @param string $path Must be a directory - * @param array $options - * @return array A list of item names - */ - public function listItems($path, $options = null) - { - // Options - $returnType = self::RETURN_NAMES; // 1: return list of paths, 2: return raw output from underlying provider - - // Parse options - if (is_array($options)&& isset($options[self::RETURN_TYPE])) { - $returnType = $options[self::RETURN_TYPE]; - } - - try { - // Fetch list - $blobList = $this->_storageClient->listBlobs( - $this->_container, - $path - ); - } catch (Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on list: '.$e->getMessage(), $e->getCode(), $e); - } - - // Return - if ($returnType == self::RETURN_LIST) { - return $blobList; - } - - $returnValue = array(); - foreach ($blobList as $blob) { - $returnValue[] = $blob->Name; - } - - return $returnValue; - } - - /** - * Get a key/value array of metadata for the given path. - * - * @param string $path - * @param array $options - * @return array - */ - public function fetchMetadata($path, $options = null) - { - try { - return $this->_storageClient->getBlobMetaData( - $this->_container, - $path - ); - } catch (Zend_Service_WindowsAzure_Exception $e) { - if (strpos($e->getMessage(), "could not be accessed") !== false) { - return false; - } - throw new Zend_Cloud_StorageService_Exception('Error on fetch: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Store a key/value array of metadata at the given path. - * WARNING: This operation overwrites any metadata that is located at - * $destinationPath. - * - * @param string $destinationPath - * @param array $options - * @return void - */ - public function storeMetadata($destinationPath, $metadata, $options = null) - { - try { - $this->_storageClient->setBlobMetadata($this->_container, $destinationPath, $metadata); - } catch (Zend_Service_WindowsAzure_Exception $e) { - if (strpos($e->getMessage(), "could not be accessed") === false) { - throw new Zend_Cloud_StorageService_Exception('Error on store metadata: '.$e->getMessage(), $e->getCode(), $e); - } - } - } - - /** - * Delete a key/value array of metadata at the given path. - * - * @param string $path - * @param array $options - * @return void - */ - public function deleteMetadata($path, $options = null) - { - try { - $this->_storageClient->setBlobMetadata($this->_container, $destinationPath, array()); - } catch (Zend_Service_WindowsAzure_Exception $e) { - if (strpos($e->getMessage(), "could not be accessed") === false) { - throw new Zend_Cloud_StorageService_Exception('Error on delete metadata: '.$e->getMessage(), $e->getCode(), $e); - } - } - } - - /** - * Delete container - * - * @return void - */ - public function deleteContainer() - { - try { - $this->_storageClient->deleteContainer($this->_container); - } catch (Zend_Service_WindowsAzure_Exception $e) { - throw new Zend_Cloud_StorageService_Exception('Error on delete: '.$e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Get the concrete adapter. - * @return Zend_Service_Azure_Storage_Blob - */ - public function getClient() - { - return $this->_storageClient; - } -} diff --git a/library/Zend/Cloud/StorageService/Exception.php b/library/Zend/Cloud/StorageService/Exception.php deleted file mode 100644 index 30ea7aaa..00000000 --- a/library/Zend/Cloud/StorageService/Exception.php +++ /dev/null @@ -1,38 +0,0 @@ -_init(); - if ($options != null) { - // use Zend_Config objects if provided - if ($options instanceof Zend_Config) { - $options = $options->toArray(); - } - // pass arrays to setOptions - if (is_array($options)) { - $this->setOptions($options); - } - } - $this->_prepare(); - } - - /** - * setConfig() - * - * @param Zend_Config $config - * @return Zend_CodeGenerator_Abstract - */ - public function setConfig(Zend_Config $config) - { - $this->setOptions($config->toArray()); - return $this; - } - - /** - * setOptions() - * - * @param array $options - * @return Zend_CodeGenerator_Abstract - */ - public function setOptions(Array $options) - { - foreach ($options as $optionName => $optionValue) { - $methodName = 'set' . $optionName; - if (method_exists($this, $methodName)) { - $this->{$methodName}($optionValue); - } - } - return $this; - } - - /** - * setSourceContent() - * - * @param string $sourceContent - */ - public function setSourceContent($sourceContent) - { - $this->_sourceContent = $sourceContent; - return; - } - - /** - * getSourceContent() - * - * @return string - */ - public function getSourceContent() - { - return $this->_sourceContent; - } - - /** - * _init() - this is called before the constuctor - * - */ - protected function _init() - { - - } - - /** - * _prepare() - this is called at construction completion - * - */ - protected function _prepare() - { - - } - - /** - * generate() - must be implemented by the child - * - */ - abstract public function generate(); - - /** - * __toString() - casting to a string will in turn call generate() - * - * @return string - */ - final public function __toString() - { - return $this->generate(); - } - -} diff --git a/library/Zend/CodeGenerator/Exception.php b/library/Zend/CodeGenerator/Exception.php deleted file mode 100644 index 872790c9..00000000 --- a/library/Zend/CodeGenerator/Exception.php +++ /dev/null @@ -1,35 +0,0 @@ -_isSourceDirty = ($isSourceDirty) ? true : false; - return $this; - } - - /** - * isSourceDirty() - * - * @return bool - */ - public function isSourceDirty() - { - return $this->_isSourceDirty; - } - - /** - * setIndentation() - * - * @param string|int $indentation - * @return Zend_CodeGenerator_Php_Abstract - */ - public function setIndentation($indentation) - { - $this->_indentation = $indentation; - return $this; - } - - /** - * getIndentation() - * - * @return string|int - */ - public function getIndentation() - { - return $this->_indentation; - } - -} diff --git a/library/Zend/CodeGenerator/Php/Body.php b/library/Zend/CodeGenerator/Php/Body.php deleted file mode 100644 index 71e5d564..00000000 --- a/library/Zend/CodeGenerator/Php/Body.php +++ /dev/null @@ -1,73 +0,0 @@ -_content = $content; - return $this; - } - - /** - * getContent() - * - * @return string - */ - public function getContent() - { - return (string) $this->_content; - } - - /** - * generate() - * - * @return string - */ - public function generate() - { - return $this->getContent(); - } -} diff --git a/library/Zend/CodeGenerator/Php/Class.php b/library/Zend/CodeGenerator/Php/Class.php deleted file mode 100644 index beeed63b..00000000 --- a/library/Zend/CodeGenerator/Php/Class.php +++ /dev/null @@ -1,618 +0,0 @@ -setSourceContent($class->getSourceContent()); - $class->setSourceDirty(false); - - if ($reflectionClass->getDocComment() != '') { - $class->setDocblock(Zend_CodeGenerator_Php_Docblock::fromReflection($reflectionClass->getDocblock())); - } - - $class->setAbstract($reflectionClass->isAbstract()); - $class->setName($reflectionClass->getName()); - - if ($parentClass = $reflectionClass->getParentClass()) { - $class->setExtendedClass($parentClass->getName()); - $interfaces = array_diff($reflectionClass->getInterfaces(), $parentClass->getInterfaces()); - } else { - $interfaces = $reflectionClass->getInterfaces(); - } - - $interfaceNames = array(); - foreach($interfaces AS $interface) { - $interfaceNames[] = $interface->getName(); - } - - $class->setImplementedInterfaces($interfaceNames); - - $properties = array(); - foreach ($reflectionClass->getProperties() as $reflectionProperty) { - if ($reflectionProperty->getDeclaringClass()->getName() == $class->getName()) { - $properties[] = Zend_CodeGenerator_Php_Property::fromReflection($reflectionProperty); - } - } - $class->setProperties($properties); - - $methods = array(); - foreach ($reflectionClass->getMethods() as $reflectionMethod) { - if ($reflectionMethod->getDeclaringClass()->getName() == $class->getName()) { - $methods[] = Zend_CodeGenerator_Php_Method::fromReflection($reflectionMethod); - } - } - $class->setMethods($methods); - - return $class; - } - - /** - * setDocblock() Set the docblock - * - * @param Zend_CodeGenerator_Php_Docblock|array|string $docblock - * @return Zend_CodeGenerator_Php_File - */ - public function setDocblock($docblock) - { - if (is_string($docblock)) { - $docblock = array('shortDescription' => $docblock); - } - - if (is_array($docblock)) { - $docblock = new Zend_CodeGenerator_Php_Docblock($docblock); - } elseif ((!is_null($docblock)) && (!$docblock instanceof Zend_CodeGenerator_Php_Docblock)) { - require_once 'Zend/CodeGenerator/Php/Exception.php'; - throw new Zend_CodeGenerator_Php_Exception('setDocblock() is expecting either a string, array or an instance of Zend_CodeGenerator_Php_Docblock'); - } - - $this->_docblock = $docblock; - return $this; - } - - /** - * getDocblock() - * - * @return Zend_CodeGenerator_Php_Docblock - */ - public function getDocblock() - { - return $this->_docblock; - } - - /** - * setName() - * - * @param string $name - * @return Zend_CodeGenerator_Php_Class - */ - public function setName($name) - { - $this->_name = $name; - return $this; - } - - /** - * getName() - * - * @return string - */ - public function getName() - { - return $this->_name; - } - - /** - * setAbstract() - * - * @param bool $isAbstract - * @return Zend_CodeGenerator_Php_Class - */ - public function setAbstract($isAbstract) - { - $this->_isAbstract = ($isAbstract) ? true : false; - return $this; - } - - /** - * isAbstract() - * - * @return bool - */ - public function isAbstract() - { - return $this->_isAbstract; - } - - /** - * setExtendedClass() - * - * @param string $extendedClass - * @return Zend_CodeGenerator_Php_Class - */ - public function setExtendedClass($extendedClass) - { - $this->_extendedClass = $extendedClass; - return $this; - } - - /** - * getExtendedClass() - * - * @return string - */ - public function getExtendedClass() - { - return $this->_extendedClass; - } - - /** - * setImplementedInterfaces() - * - * @param array $implementedInterfaces - * @return Zend_CodeGenerator_Php_Class - */ - public function setImplementedInterfaces(Array $implementedInterfaces) - { - $this->_implementedInterfaces = $implementedInterfaces; - return $this; - } - - /** - * getImplementedInterfaces - * - * @return array - */ - public function getImplementedInterfaces() - { - return $this->_implementedInterfaces; - } - - /** - * setProperties() - * - * @param array $properties - * @return Zend_CodeGenerator_Php_Class - */ - public function setProperties(Array $properties) - { - foreach ($properties as $property) { - $this->setProperty($property); - } - - return $this; - } - - /** - * setConstants() - * - * @param array $constants - * @return Zend_CodeGenerator_Php_Class - */ - public function setConstants(Array $constants) - { - foreach ($constants as $const) { - $this->setConstant($const); - } - - return $this; - } - - /** - * setProperty() - * - * @param array|Zend_CodeGenerator_Php_Property $property - * @return Zend_CodeGenerator_Php_Class - */ - public function setProperty($property) - { - if (is_array($property)) { - $property = new Zend_CodeGenerator_Php_Property($property); - $propertyName = $property->getName(); - } elseif ($property instanceof Zend_CodeGenerator_Php_Property) { - $propertyName = $property->getName(); - } else { - require_once 'Zend/CodeGenerator/Php/Exception.php'; - throw new Zend_CodeGenerator_Php_Exception('setProperty() expects either an array of property options or an instance of Zend_CodeGenerator_Php_Property'); - } - - if ($property->isConst()) { - return $this->setConstant($property); - } - if (isset($this->_properties[$propertyName])) { - require_once 'Zend/CodeGenerator/Php/Exception.php'; - throw new Zend_CodeGenerator_Php_Exception('A property by name ' . $propertyName . ' already exists in this class.'); - } - - $this->_properties[$propertyName] = $property; - return $this; - } - - /** - * setConstant() - * - * @param array|Zend_CodeGenerator_Php_Property $const - * @return Zend_CodeGenerator_Php_Class - */ - public function setConstant($const) - { - if (is_array($const)) { - $const = new Zend_CodeGenerator_Php_Property($const); - $constName = $const->getName(); - } elseif ($const instanceof Zend_CodeGenerator_Php_Property) { - $constName = $const->getName(); - } else { - require_once 'Zend/CodeGenerator/Php/Exception.php'; - throw new Zend_CodeGenerator_Php_Exception('setConstant() expects either an array of property options or an instance of Zend_CodeGenerator_Php_Property'); - } - - if (!$const->isConst()) { - require_once 'Zend/CodeGenerator/Php/Exception.php'; - throw new Zend_CodeGenerator_Php_Exception('setProperty() expects argument to define a constant'); - } - if (isset($this->_constants[$constName])) { - require_once 'Zend/CodeGenerator/Php/Exception.php'; - throw new Zend_CodeGenerator_Php_Exception('A constant by name ' . $constName . ' already exists in this class.'); - } - - $this->_constants[$constName] = $const; - return $this; - } - - /** - * getProperties() - * - * @return array - */ - public function getProperties() - { - return $this->_properties; - } - - /** - * getConstants() - * - * @return array - */ - public function getConstants() - { - return $this->_constants; - } - - /** - * getProperty() - * - * @param string $propertyName - * @return Zend_CodeGenerator_Php_Property - */ - public function getProperty($propertyName) - { - foreach ($this->_properties as $property) { - if ($property->getName() == $propertyName) { - return $property; - } - } - return false; - } - - /** - * getConstant() - * - * @param string $constName - * @return Zend_CodeGenerator_Php_Property - */ - public function getConstant($constName) - { - foreach ($this->_constants as $const) { - if ($const->getName() == $constName) { - return $const; - } - } - return false; - } - - /** - * hasProperty() - * - * @param string $propertyName - * @return bool - */ - public function hasProperty($propertyName) - { - return isset($this->_properties[$propertyName]); - } - - /** - * hasConstant() - * - * @param string $constName - * @return bool - */ - public function hasConstant($constName) - { - return isset($this->_constants[$constName]); - } - - /** - * setMethods() - * - * @param array $methods - * @return Zend_CodeGenerator_Php_Class - */ - public function setMethods(Array $methods) - { - foreach ($methods as $method) { - $this->setMethod($method); - } - return $this; - } - - /** - * setMethod() - * - * @param array|Zend_CodeGenerator_Php_Method $method - * @return Zend_CodeGenerator_Php_Class - */ - public function setMethod($method) - { - if (is_array($method)) { - $method = new Zend_CodeGenerator_Php_Method($method); - $methodName = $method->getName(); - } elseif ($method instanceof Zend_CodeGenerator_Php_Method) { - $methodName = $method->getName(); - } else { - require_once 'Zend/CodeGenerator/Php/Exception.php'; - throw new Zend_CodeGenerator_Php_Exception('setMethod() expects either an array of method options or an instance of Zend_CodeGenerator_Php_Method'); - } - - if (isset($this->_methods[$methodName])) { - require_once 'Zend/CodeGenerator/Php/Exception.php'; - throw new Zend_CodeGenerator_Php_Exception('A method by name ' . $methodName . ' already exists in this class.'); - } - - $this->_methods[$methodName] = $method; - return $this; - } - - /** - * getMethods() - * - * @return array - */ - public function getMethods() - { - return $this->_methods; - } - - /** - * getMethod() - * - * @param string $methodName - * @return Zend_CodeGenerator_Php_Method - */ - public function getMethod($methodName) - { - foreach ($this->_methods as $method) { - if ($method->getName() == $methodName) { - return $method; - } - } - return false; - } - - /** - * hasMethod() - * - * @param string $methodName - * @return bool - */ - public function hasMethod($methodName) - { - return isset($this->_methods[$methodName]); - } - - /** - * isSourceDirty() - * - * @return bool - */ - public function isSourceDirty() - { - if (($docblock = $this->getDocblock()) && $docblock->isSourceDirty()) { - return true; - } - - foreach ($this->_properties as $property) { - if ($property->isSourceDirty()) { - return true; - } - } - - foreach ($this->_constants as $constant) { - if ($constant->isSourceDirty()) { - return true; - } - } - - foreach ($this->_methods as $method) { - if ($method->isSourceDirty()) { - return true; - } - } - - return parent::isSourceDirty(); - } - - /** - * generate() - * - * @return string - */ - public function generate() - { - if (!$this->isSourceDirty()) { - return $this->getSourceContent(); - } - - $output = ''; - - if (null !== ($docblock = $this->getDocblock())) { - $docblock->setIndentation(''); - $output .= $docblock->generate(); - } - - if ($this->isAbstract()) { - $output .= 'abstract '; - } - - $output .= 'class ' . $this->getName(); - - if ( !empty( $this->_extendedClass) ) { - $output .= ' extends ' . $this->_extendedClass; - } - - $implemented = $this->getImplementedInterfaces(); - if (!empty($implemented)) { - $output .= ' implements ' . implode(', ', $implemented); - } - - $output .= self::LINE_FEED . '{' . self::LINE_FEED . self::LINE_FEED; - - $constants = $this->getConstants(); - if (!empty($constants)) { - foreach ($constants as $const) { - $output .= $const->generate() . self::LINE_FEED . self::LINE_FEED; - } - } - - $properties = $this->getProperties(); - if (!empty($properties)) { - foreach ($properties as $property) { - $output .= $property->generate() . self::LINE_FEED . self::LINE_FEED; - } - } - - $methods = $this->getMethods(); - if (!empty($methods)) { - foreach ($methods as $method) { - $output .= $method->generate() . self::LINE_FEED; - } - } - - $output .= self::LINE_FEED . '}' . self::LINE_FEED; - - return $output; - } - - /** - * _init() - is called at construction time - * - */ - protected function _init() - { - $this->_properties = new Zend_CodeGenerator_Php_Member_Container(Zend_CodeGenerator_Php_Member_Container::TYPE_PROPERTY); - $this->_constants = new Zend_CodeGenerator_Php_Member_Container(Zend_CodeGenerator_Php_Member_Container::TYPE_PROPERTY); - $this->_methods = new Zend_CodeGenerator_Php_Member_Container(Zend_CodeGenerator_Php_Member_Container::TYPE_METHOD); - } - -} diff --git a/library/Zend/CodeGenerator/Php/Docblock.php b/library/Zend/CodeGenerator/Php/Docblock.php deleted file mode 100644 index 6c0b16ef..00000000 --- a/library/Zend/CodeGenerator/Php/Docblock.php +++ /dev/null @@ -1,224 +0,0 @@ -setSourceContent($reflectionDocblock->getContents()); - $docblock->setSourceDirty(false); - - $docblock->setShortDescription($reflectionDocblock->getShortDescription()); - $docblock->setLongDescription($reflectionDocblock->getLongDescription()); - - foreach ($reflectionDocblock->getTags() as $tag) { - $docblock->setTag(Zend_CodeGenerator_Php_Docblock_Tag::fromReflection($tag)); - } - - return $docblock; - } - - /** - * setShortDescription() - * - * @param string $shortDescription - * @return Zend_CodeGenerator_Php_Docblock - */ - public function setShortDescription($shortDescription) - { - $this->_shortDescription = $shortDescription; - return $this; - } - - /** - * getShortDescription() - * - * @return string - */ - public function getShortDescription() - { - return $this->_shortDescription; - } - - /** - * setLongDescription() - * - * @param string $longDescription - * @return Zend_CodeGenerator_Php_Docblock - */ - public function setLongDescription($longDescription) - { - $this->_longDescription = $longDescription; - return $this; - } - - /** - * getLongDescription() - * - * @return string - */ - public function getLongDescription() - { - return $this->_longDescription; - } - - /** - * setTags() - * - * @param array $tags - * @return Zend_CodeGenerator_Php_Docblock - */ - public function setTags(Array $tags) - { - foreach ($tags as $tag) { - $this->setTag($tag); - } - - return $this; - } - - /** - * setTag() - * - * @param array|Zend_CodeGenerator_Php_Docblock_Tag $tag - * @return Zend_CodeGenerator_Php_Docblock - */ - public function setTag($tag) - { - if (is_array($tag)) { - $tag = new Zend_CodeGenerator_Php_Docblock_Tag($tag); - } elseif (!$tag instanceof Zend_CodeGenerator_Php_Docblock_Tag) { - require_once 'Zend/CodeGenerator/Php/Exception.php'; - throw new Zend_CodeGenerator_Php_Exception( - 'setTag() expects either an array of method options or an ' - . 'instance of Zend_CodeGenerator_Php_Docblock_Tag' - ); - } - - $this->_tags[] = $tag; - return $this; - } - - /** - * getTags - * - * @return array Array of Zend_CodeGenerator_Php_Docblock_Tag - */ - public function getTags() - { - return $this->_tags; - } - - /** - * generate() - * - * @return string - */ - public function generate() - { - if (!$this->isSourceDirty()) { - return $this->_docCommentize($this->getSourceContent()); - } - - $output = ''; - if (null !== ($sd = $this->getShortDescription())) { - $output .= $sd . self::LINE_FEED . self::LINE_FEED; - } - if (null !== ($ld = $this->getLongDescription())) { - $output .= $ld . self::LINE_FEED . self::LINE_FEED; - } - - foreach ($this->getTags() as $tag) { - $output .= $tag->generate() . self::LINE_FEED; - } - - return $this->_docCommentize(trim($output)); - } - - /** - * _docCommentize() - * - * @param string $content - * @return string - */ - protected function _docCommentize($content) - { - $indent = $this->getIndentation(); - $output = $indent . '/**' . self::LINE_FEED; - $content = wordwrap($content, 80, self::LINE_FEED); - $lines = explode(self::LINE_FEED, $content); - foreach ($lines as $line) { - $output .= $indent . ' *'; - if ($line) { - $output .= " $line"; - } - $output .= self::LINE_FEED; - } - $output .= $indent . ' */' . self::LINE_FEED; - return $output; - } - -} diff --git a/library/Zend/CodeGenerator/Php/Docblock/Tag.php b/library/Zend/CodeGenerator/Php/Docblock/Tag.php deleted file mode 100644 index bea6d16f..00000000 --- a/library/Zend/CodeGenerator/Php/Docblock/Tag.php +++ /dev/null @@ -1,178 +0,0 @@ -getName(); - - $codeGenDocblockTag = self::factory($tagName); - - // transport any properties via accessors and mutators from reflection to codegen object - $reflectionClass = new ReflectionClass($reflectionTag); - foreach ($reflectionClass->getMethods(ReflectionMethod::IS_PUBLIC) as $method) { - if (substr($method->getName(), 0, 3) == 'get') { - $propertyName = substr($method->getName(), 3); - if (method_exists($codeGenDocblockTag, 'set' . $propertyName)) { - $codeGenDocblockTag->{'set' . $propertyName}($reflectionTag->{'get' . $propertyName}()); - } - } - } - - return $codeGenDocblockTag; - } - - /** - * setPluginLoader() - * - * @param Zend_Loader_PluginLoader $pluginLoader - */ - public static function setPluginLoader(Zend_Loader_PluginLoader $pluginLoader) - { - self::$_pluginLoader = $pluginLoader; - return; - } - - /** - * getPluginLoader() - * - * @return Zend_Loader_PluginLoader - */ - public static function getPluginLoader() - { - if (self::$_pluginLoader == null) { - require_once 'Zend/Loader/PluginLoader.php'; - self::setPluginLoader(new Zend_Loader_PluginLoader(array( - 'Zend_CodeGenerator_Php_Docblock_Tag' => dirname(__FILE__) . '/Tag/')) - ); - } - - return self::$_pluginLoader; - } - - public static function factory($tagName) - { - $pluginLoader = self::getPluginLoader(); - - try { - $tagClass = $pluginLoader->load($tagName); - } catch (Zend_Loader_Exception $exception) { - $tagClass = 'Zend_CodeGenerator_Php_Docblock_Tag'; - } - - $tag = new $tagClass(array('name' => $tagName)); - return $tag; - } - - /** - * setName() - * - * @param string $name - * @return Zend_CodeGenerator_Php_Docblock_Tag - */ - public function setName($name) - { - $this->_name = ltrim($name, '@'); - return $this; - } - - /** - * getName() - * - * @return string - */ - public function getName() - { - return $this->_name; - } - - /** - * setDescription() - * - * @param string $description - * @return Zend_CodeGenerator_Php_Docblock_Tag - */ - public function setDescription($description) - { - $this->_description = $description; - return $this; - } - - /** - * getDescription() - * - * @return string - */ - public function getDescription() - { - return $this->_description; - } - - /** - * generate() - * - * @return string - */ - public function generate() - { - $tag = '@' . $this->_name; - if ($this->_description) { - $tag .= ' ' . $this->_description; - } - return $tag; - } - -} diff --git a/library/Zend/CodeGenerator/Php/Docblock/Tag/License.php b/library/Zend/CodeGenerator/Php/Docblock/Tag/License.php deleted file mode 100644 index 3dfb77ed..00000000 --- a/library/Zend/CodeGenerator/Php/Docblock/Tag/License.php +++ /dev/null @@ -1,98 +0,0 @@ -setName('license'); - $returnTag->setUrl($reflectionTagLicense->getUrl()); - $returnTag->setDescription($reflectionTagLicense->getDescription()); - - return $returnTag; - } - - /** - * setUrl() - * - * @param string $url - * @return Zend_CodeGenerator_Php_Docblock_Tag_License - */ - public function setUrl($url) - { - $this->_url = $url; - return $this; - } - - /** - * getUrl() - * - * @return string - */ - public function getUrl() - { - return $this->_url; - } - - - /** - * generate() - * - * @return string - */ - public function generate() - { - $output = '@license ' . $this->_url . ' ' . $this->_description . self::LINE_FEED; - return $output; - } - -} \ No newline at end of file diff --git a/library/Zend/CodeGenerator/Php/Docblock/Tag/Param.php b/library/Zend/CodeGenerator/Php/Docblock/Tag/Param.php deleted file mode 100644 index d1f8e675..00000000 --- a/library/Zend/CodeGenerator/Php/Docblock/Tag/Param.php +++ /dev/null @@ -1,128 +0,0 @@ -setName('param'); - $paramTag->setDatatype($reflectionTagParam->getType()); // @todo rename - $paramTag->setParamName($reflectionTagParam->getVariableName()); - $paramTag->setDescription($reflectionTagParam->getDescription()); - - return $paramTag; - } - - /** - * setDatatype() - * - * @param string $datatype - * @return Zend_CodeGenerator_Php_Docblock_Tag_Param - */ - public function setDatatype($datatype) - { - $this->_datatype = $datatype; - return $this; - } - - /** - * getDatatype - * - * @return string - */ - public function getDatatype() - { - return $this->_datatype; - } - - /** - * setParamName() - * - * @param string $paramName - * @return Zend_CodeGenerator_Php_Docblock_Tag_Param - */ - public function setParamName($paramName) - { - $this->_paramName = $paramName; - return $this; - } - - /** - * getParamName() - * - * @return string - */ - public function getParamName() - { - return $this->_paramName; - } - - /** - * generate() - * - * @return string - */ - public function generate() - { - $output = '@param ' - . (($this->_datatype != null) ? $this->_datatype : 'unknown') - . (($this->_paramName != null) ? ' $' . $this->_paramName : '') - . (($this->_description != null) ? ' ' . $this->_description : ''); - return $output; - } - -} diff --git a/library/Zend/CodeGenerator/Php/Docblock/Tag/Return.php b/library/Zend/CodeGenerator/Php/Docblock/Tag/Return.php deleted file mode 100644 index 2cbf0fa3..00000000 --- a/library/Zend/CodeGenerator/Php/Docblock/Tag/Return.php +++ /dev/null @@ -1,98 +0,0 @@ -setName('return'); - $returnTag->setDatatype($reflectionTagReturn->getType()); // @todo rename - $returnTag->setDescription($reflectionTagReturn->getDescription()); - - return $returnTag; - } - - /** - * setDatatype() - * - * @param string $datatype - * @return Zend_CodeGenerator_Php_Docblock_Tag_Return - */ - public function setDatatype($datatype) - { - $this->_datatype = $datatype; - return $this; - } - - /** - * getDatatype() - * - * @return string - */ - public function getDatatype() - { - return $this->_datatype; - } - - - /** - * generate() - * - * @return string - */ - public function generate() - { - $output = '@return ' . $this->_datatype . ' ' . $this->_description; - return $output; - } - -} \ No newline at end of file diff --git a/library/Zend/CodeGenerator/Php/Exception.php b/library/Zend/CodeGenerator/Php/Exception.php deleted file mode 100644 index 65f0db92..00000000 --- a/library/Zend/CodeGenerator/Php/Exception.php +++ /dev/null @@ -1,37 +0,0 @@ -getFilename(); - } - - if ($fileName == '') { - require_once 'Zend/CodeGenerator/Php/Exception.php'; - throw new Zend_CodeGenerator_Php_Exception('FileName does not exist.'); - } - - // cannot use realpath since the file might not exist, but we do need to have the index - // in the same DIRECTORY_SEPARATOR that realpath would use: - $fileName = str_replace(array('\\', '/'), DIRECTORY_SEPARATOR, $fileName); - - self::$_fileCodeGenerators[$fileName] = $fileCodeGenerator; - - } - - /** - * fromReflectedFileName() - use this if you intend on generating code generation objects based on the same file. - * This will keep previous changes to the file in tact during the same PHP process - * - * @param string $filePath - * @param bool $usePreviousCodeGeneratorIfItExists - * @param bool $includeIfNotAlreadyIncluded - * @return Zend_CodeGenerator_Php_File - */ - public static function fromReflectedFileName($filePath, $usePreviousCodeGeneratorIfItExists = true, $includeIfNotAlreadyIncluded = true) - { - $realpath = realpath($filePath); - - if ($realpath === false) { - if ( ($realpath = Zend_Reflection_File::findRealpathInIncludePath($filePath)) === false) { - require_once 'Zend/CodeGenerator/Php/Exception.php'; - throw new Zend_CodeGenerator_Php_Exception('No file for ' . $realpath . ' was found.'); - } - } - - if ($usePreviousCodeGeneratorIfItExists && isset(self::$_fileCodeGenerators[$realpath])) { - return self::$_fileCodeGenerators[$realpath]; - } - - if ($includeIfNotAlreadyIncluded && !in_array($realpath, get_included_files())) { - include $realpath; - } - - $codeGenerator = self::fromReflection(($fileReflector = new Zend_Reflection_File($realpath))); - - if (!isset(self::$_fileCodeGenerators[$fileReflector->getFileName()])) { - self::$_fileCodeGenerators[$fileReflector->getFileName()] = $codeGenerator; - } - - return $codeGenerator; - } - - /** - * fromReflection() - * - * @param Zend_Reflection_File $reflectionFile - * @return Zend_CodeGenerator_Php_File - */ - public static function fromReflection(Zend_Reflection_File $reflectionFile) - { - $file = new self(); - - $file->setSourceContent($reflectionFile->getContents()); - $file->setSourceDirty(false); - - $body = $reflectionFile->getContents(); - - // @todo this whole area needs to be reworked with respect to how body lines are processed - foreach ($reflectionFile->getClasses() as $class) { - $file->setClass(Zend_CodeGenerator_Php_Class::fromReflection($class)); - $classStartLine = $class->getStartLine(true); - $classEndLine = $class->getEndLine(); - - $bodyLines = explode("\n", $body); - $bodyReturn = array(); - for ($lineNum = 1; $lineNum <= count($bodyLines); $lineNum++) { - if ($lineNum == $classStartLine) { - $bodyReturn[] = str_replace('?', $class->getName(), self::$_markerClass); //'/* Zend_CodeGenerator_Php_File-ClassMarker: {' . $class->getName() . '} */'; - $lineNum = $classEndLine; - } else { - $bodyReturn[] = $bodyLines[$lineNum - 1]; // adjust for index -> line conversion - } - } - $body = implode("\n", $bodyReturn); - unset($bodyLines, $bodyReturn, $classStartLine, $classEndLine); - } - - if (($reflectionFile->getDocComment() != '')) { - $docblock = $reflectionFile->getDocblock(); - $file->setDocblock(Zend_CodeGenerator_Php_Docblock::fromReflection($docblock)); - - $bodyLines = explode("\n", $body); - $bodyReturn = array(); - for ($lineNum = 1; $lineNum <= count($bodyLines); $lineNum++) { - if ($lineNum == $docblock->getStartLine()) { - $bodyReturn[] = str_replace('?', $class->getName(), self::$_markerDocblock); //'/* Zend_CodeGenerator_Php_File-ClassMarker: {' . $class->getName() . '} */'; - $lineNum = $docblock->getEndLine(); - } else { - $bodyReturn[] = $bodyLines[$lineNum - 1]; // adjust for index -> line conversion - } - } - $body = implode("\n", $bodyReturn); - unset($bodyLines, $bodyReturn, $classStartLine, $classEndLine); - } - - $file->setBody($body); - - return $file; - } - - /** - * setDocblock() Set the docblock - * - * @param Zend_CodeGenerator_Php_Docblock|array|string $docblock - * @return Zend_CodeGenerator_Php_File - */ - public function setDocblock($docblock) - { - if (is_string($docblock)) { - $docblock = array('shortDescription' => $docblock); - } - - if (is_array($docblock)) { - $docblock = new Zend_CodeGenerator_Php_Docblock($docblock); - } elseif (!$docblock instanceof Zend_CodeGenerator_Php_Docblock) { - require_once 'Zend/CodeGenerator/Php/Exception.php'; - throw new Zend_CodeGenerator_Php_Exception('setDocblock() is expecting either a string, array or an instance of Zend_CodeGenerator_Php_Docblock'); - } - - $this->_docblock = $docblock; - return $this; - } - - /** - * Get docblock - * - * @return Zend_CodeGenerator_Php_Docblock - */ - public function getDocblock() - { - return $this->_docblock; - } - - /** - * setRequiredFiles - * - * @param array $requiredFiles - * @return Zend_CodeGenerator_Php_File - */ - public function setRequiredFiles($requiredFiles) - { - $this->_requiredFiles = $requiredFiles; - return $this; - } - - /** - * getRequiredFiles() - * - * @return array - */ - public function getRequiredFiles() - { - return $this->_requiredFiles; - } - - /** - * setClasses() - * - * @param array $classes - * @return Zend_CodeGenerator_Php_File - */ - public function setClasses(Array $classes) - { - foreach ($classes as $class) { - $this->setClass($class); - } - return $this; - } - - /** - * getClass() - * - * @param string $name - * @return Zend_CodeGenerator_Php_Class - */ - public function getClass($name = null) - { - if ($name == null) { - reset($this->_classes); - return current($this->_classes); - } - - return $this->_classes[$name]; - } - - /** - * setClass() - * - * @param Zend_CodeGenerator_Php_Class|array $class - * @return Zend_CodeGenerator_Php_File - */ - public function setClass($class) - { - if (is_array($class)) { - $class = new Zend_CodeGenerator_Php_Class($class); - $className = $class->getName(); - } elseif ($class instanceof Zend_CodeGenerator_Php_Class) { - $className = $class->getName(); - } else { - require_once 'Zend/CodeGenerator/Php/Exception.php'; - throw new Zend_CodeGenerator_Php_Exception('Expecting either an array or an instance of Zend_CodeGenerator_Php_Class'); - } - - // @todo check for dup here - - $this->_classes[$className] = $class; - return $this; - } - - /** - * setFilename() - * - * @param string $filename - * @return Zend_CodeGenerator_Php_File - */ - public function setFilename($filename) - { - $this->_filename = $filename; - return $this; - } - - /** - * getFilename() - * - * @return string - */ - public function getFilename() - { - return $this->_filename; - } - - /** - * getClasses() - * - * @return array Array of Zend_CodeGenerator_Php_Class - */ - public function getClasses() - { - return $this->_classes; - } - - /** - * setBody() - * - * @param string $body - * @return Zend_CodeGenerator_Php_File - */ - public function setBody($body) - { - $this->_body = $body; - return $this; - } - - /** - * getBody() - * - * @return string - */ - public function getBody() - { - return $this->_body; - } - - /** - * isSourceDirty() - * - * @return bool - */ - public function isSourceDirty() - { - if (($docblock = $this->getDocblock()) && $docblock->isSourceDirty()) { - return true; - } - - foreach ($this->_classes as $class) { - if ($class->isSourceDirty()) { - return true; - } - } - - return parent::isSourceDirty(); - } - - /** - * generate() - * - * @return string - */ - public function generate() - { - if ($this->isSourceDirty() === false) { - return $this->_sourceContent; - } - - $output = ''; - - // start with the body (if there), or open tag - if (preg_match('#(?:\s*)<\?php#', $this->getBody()) == false) { - $output = 'getBody(); - if (preg_match('#/\* Zend_CodeGenerator_Php_File-(.*?)Marker#', $body)) { - $output .= $body; - $body = ''; - } - - // Add file docblock, if any - if (null !== ($docblock = $this->getDocblock())) { - $docblock->setIndentation(''); - $regex = preg_quote(self::$_markerDocblock, '#'); - if (preg_match('#'.$regex.'#', $output)) { - $output = preg_replace('#'.$regex.'#', $docblock->generate(), $output, 1); - } else { - $output .= $docblock->generate() . self::LINE_FEED; - } - } - - // newline - $output .= self::LINE_FEED; - - // process required files - // @todo marker replacement for required files - $requiredFiles = $this->getRequiredFiles(); - if (!empty($requiredFiles)) { - foreach ($requiredFiles as $requiredFile) { - $output .= 'require_once \'' . $requiredFile . '\';' . self::LINE_FEED; - } - - $output .= self::LINE_FEED; - } - - // process classes - $classes = $this->getClasses(); - if (!empty($classes)) { - foreach ($classes as $class) { - if($this->getDocblock() == $class->getDocblock()) { - $class->setDocblock(null); - } - $regex = str_replace('?', $class->getName(), self::$_markerClass); - $regex = preg_quote($regex, '#'); - if (preg_match('#'.$regex.'#', $output)) { - $output = preg_replace('#'.$regex.'#', $class->generate(), $output, 1); - } else { - $output .= $class->generate() . self::LINE_FEED; - } - } - - } - - if (!empty($body)) { - - // add an extra space betwee clsses and - if (!empty($classes)) { - $output .= self::LINE_FEED; - } - - $output .= $body; - } - - return $output; - } - - public function write() - { - if ($this->_filename == '' || !is_writable(dirname($this->_filename))) { - require_once 'Zend/CodeGenerator/Php/Exception.php'; - throw new Zend_CodeGenerator_Php_Exception('This code generator object is not writable.'); - } - file_put_contents($this->_filename, $this->generate()); - return $this; - } - -} diff --git a/library/Zend/CodeGenerator/Php/Member/Abstract.php b/library/Zend/CodeGenerator/Php/Member/Abstract.php deleted file mode 100644 index 52b2f83b..00000000 --- a/library/Zend/CodeGenerator/Php/Member/Abstract.php +++ /dev/null @@ -1,222 +0,0 @@ - $docblock); - } - - if (is_array($docblock)) { - $docblock = new Zend_CodeGenerator_Php_Docblock($docblock); - } elseif (!$docblock instanceof Zend_CodeGenerator_Php_Docblock) { - require_once 'Zend/CodeGenerator/Php/Exception.php'; - throw new Zend_CodeGenerator_Php_Exception('setDocblock() is expecting either a string, array or an instance of Zend_CodeGenerator_Php_Docblock'); - } - - $this->_docblock = $docblock; - return $this; - } - - /** - * getDocblock() - * - * @return Zend_CodeGenerator_Php_Docblock - */ - public function getDocblock() - { - return $this->_docblock; - } - - /** - * setAbstract() - * - * @param bool $isAbstract - * @return Zend_CodeGenerator_Php_Member_Abstract - */ - public function setAbstract($isAbstract) - { - $this->_isAbstract = ($isAbstract) ? true : false; - return $this; - } - - /** - * isAbstract() - * - * @return bool - */ - public function isAbstract() - { - return $this->_isAbstract; - } - - /** - * setFinal() - * - * @param bool $isFinal - * @return Zend_CodeGenerator_Php_Member_Abstract - */ - public function setFinal($isFinal) - { - $this->_isFinal = ($isFinal) ? true : false; - return $this; - } - - /** - * isFinal() - * - * @return bool - */ - public function isFinal() - { - return $this->_isFinal; - } - - /** - * setStatic() - * - * @param bool $isStatic - * @return Zend_CodeGenerator_Php_Member_Abstract - */ - public function setStatic($isStatic) - { - $this->_isStatic = ($isStatic) ? true : false; - return $this; - } - - /** - * isStatic() - * - * @return bool - */ - public function isStatic() - { - return $this->_isStatic; - } - - /** - * setVisitibility() - * - * @param const $visibility - * @return Zend_CodeGenerator_Php_Member_Abstract - */ - public function setVisibility($visibility) - { - $this->_visibility = $visibility; - return $this; - } - - /** - * getVisibility() - * - * @return const - */ - public function getVisibility() - { - return $this->_visibility; - } - - /** - * setName() - * - * @param string $name - * @return Zend_CodeGenerator_Php_Member_Abstract - */ - public function setName($name) - { - $this->_name = $name; - return $this; - } - - /** - * getName() - * - * @return string - */ - public function getName() - { - return $this->_name; - } -} diff --git a/library/Zend/CodeGenerator/Php/Member/Container.php b/library/Zend/CodeGenerator/Php/Member/Container.php deleted file mode 100644 index 944f6e1c..00000000 --- a/library/Zend/CodeGenerator/Php/Member/Container.php +++ /dev/null @@ -1,55 +0,0 @@ -_type = $type; - parent::__construct(array(), self::ARRAY_AS_PROPS); - } - -} \ No newline at end of file diff --git a/library/Zend/CodeGenerator/Php/Method.php b/library/Zend/CodeGenerator/Php/Method.php deleted file mode 100644 index 2ff4468e..00000000 --- a/library/Zend/CodeGenerator/Php/Method.php +++ /dev/null @@ -1,236 +0,0 @@ -setSourceContent($reflectionMethod->getContents(false)); - $method->setSourceDirty(false); - - if ($reflectionMethod->getDocComment() != '') { - $method->setDocblock(Zend_CodeGenerator_Php_Docblock::fromReflection($reflectionMethod->getDocblock())); - } - - $method->setFinal($reflectionMethod->isFinal()); - - if ($reflectionMethod->isPrivate()) { - $method->setVisibility(self::VISIBILITY_PRIVATE); - } elseif ($reflectionMethod->isProtected()) { - $method->setVisibility(self::VISIBILITY_PROTECTED); - } else { - $method->setVisibility(self::VISIBILITY_PUBLIC); - } - - $method->setStatic($reflectionMethod->isStatic()); - - $method->setName($reflectionMethod->getName()); - - foreach ($reflectionMethod->getParameters() as $reflectionParameter) { - $method->setParameter(Zend_CodeGenerator_Php_Parameter::fromReflection($reflectionParameter)); - } - - $method->setBody($reflectionMethod->getBody()); - - return $method; - } - - /** - * setFinal() - * - * @param bool $isFinal - */ - public function setFinal($isFinal) - { - $this->_isFinal = ($isFinal) ? true : false; - } - - /** - * setParameters() - * - * @param array $parameters - * @return Zend_CodeGenerator_Php_Method - */ - public function setParameters(Array $parameters) - { - foreach ($parameters as $parameter) { - $this->setParameter($parameter); - } - return $this; - } - - /** - * setParameter() - * - * @param Zend_CodeGenerator_Php_Parameter|array $parameter - * @return Zend_CodeGenerator_Php_Method - */ - public function setParameter($parameter) - { - if (is_array($parameter)) { - $parameter = new Zend_CodeGenerator_Php_Parameter($parameter); - $parameterName = $parameter->getName(); - } elseif ($parameter instanceof Zend_CodeGenerator_Php_Parameter) { - $parameterName = $parameter->getName(); - } else { - require_once 'Zend/CodeGenerator/Php/Exception.php'; - throw new Zend_CodeGenerator_Php_Exception('setParameter() expects either an array of method options or an instance of Zend_CodeGenerator_Php_Parameter'); - } - - $this->_parameters[$parameterName] = $parameter; - return $this; - } - - /** - * getParameters() - * - * @return array Array of Zend_CodeGenerator_Php_Parameter - */ - public function getParameters() - { - return $this->_parameters; - } - - /** - * setBody() - * - * @param string $body - * @return Zend_CodeGenerator_Php_Method - */ - public function setBody($body) - { - $this->_body = $body; - return $this; - } - - /** - * getBody() - * - * @return string - */ - public function getBody() - { - return $this->_body; - } - - /** - * generate() - * - * @return string - */ - public function generate() - { - $output = ''; - - $indent = $this->getIndentation(); - - if (($docblock = $this->getDocblock()) !== null) { - $docblock->setIndentation($indent); - $output .= $docblock->generate(); - } - - $output .= $indent; - - if ($this->isAbstract()) { - $output .= 'abstract '; - } else { - $output .= (($this->isFinal()) ? 'final ' : ''); - } - - $output .= $this->getVisibility() - . (($this->isStatic()) ? ' static' : '') - . ' function ' . $this->getName() . '('; - - $parameters = $this->getParameters(); - if (!empty($parameters)) { - foreach ($parameters as $parameter) { - $parameterOuput[] = $parameter->generate(); - } - - $output .= implode(', ', $parameterOuput); - } - - $output .= ')' . self::LINE_FEED . $indent . '{' . self::LINE_FEED; - - if ($this->_body && $this->isSourceDirty()) { - $output .= ' ' - . str_replace(self::LINE_FEED, self::LINE_FEED . $indent . $indent, trim($this->_body)) - . self::LINE_FEED; - } elseif ($this->_body) { - $output .= $this->_body . self::LINE_FEED; - } - - $output .= $indent . '}' . self::LINE_FEED; - - return $output; - } - -} diff --git a/library/Zend/CodeGenerator/Php/Parameter.php b/library/Zend/CodeGenerator/Php/Parameter.php deleted file mode 100644 index 1dc80f36..00000000 --- a/library/Zend/CodeGenerator/Php/Parameter.php +++ /dev/null @@ -1,250 +0,0 @@ -setName($reflectionParameter->getName()); - - if($reflectionParameter->isArray()) { - $param->setType('array'); - } else { - $typeClass = $reflectionParameter->getClass(); - if($typeClass !== null) { - $param->setType($typeClass->getName()); - } - } - - $param->setPosition($reflectionParameter->getPosition()); - - if($reflectionParameter->isOptional()) { - $param->setDefaultValue($reflectionParameter->getDefaultValue()); - } - $param->setPassedByReference($reflectionParameter->isPassedByReference()); - - return $param; - } - - /** - * setType() - * - * @param string $type - * @return Zend_CodeGenerator_Php_Parameter - */ - public function setType($type) - { - $this->_type = $type; - return $this; - } - - /** - * getType() - * - * @return string - */ - public function getType() - { - return $this->_type; - } - - /** - * setName() - * - * @param string $name - * @return Zend_CodeGenerator_Php_Parameter - */ - public function setName($name) - { - $this->_name = $name; - return $this; - } - - /** - * getName() - * - * @return string - */ - public function getName() - { - return $this->_name; - } - - /** - * Set the default value of the parameter. - * - * Certain variables are difficult to expres - * - * @param null|bool|string|int|float|Zend_CodeGenerator_Php_Parameter_DefaultValue $defaultValue - * @return Zend_CodeGenerator_Php_Parameter - */ - public function setDefaultValue($defaultValue) - { - if($defaultValue === null) { - $this->_defaultValue = new Zend_CodeGenerator_Php_Parameter_DefaultValue("null"); - } else if(is_array($defaultValue)) { - $defaultValue = str_replace(array("\r", "\n"), "", var_export($defaultValue, true)); - $this->_defaultValue = new Zend_CodeGenerator_Php_Parameter_DefaultValue($defaultValue); - } else if(is_bool($defaultValue)) { - if($defaultValue == true) { - $this->_defaultValue = new Zend_CodeGenerator_Php_Parameter_DefaultValue("true"); - } else { - $this->_defaultValue = new Zend_CodeGenerator_Php_Parameter_DefaultValue("false"); - } - } else { - $this->_defaultValue = $defaultValue; - } - return $this; - } - - /** - * getDefaultValue() - * - * @return string - */ - public function getDefaultValue() - { - return $this->_defaultValue; - } - - /** - * setPosition() - * - * @param int $position - * @return Zend_CodeGenerator_Php_Parameter - */ - public function setPosition($position) - { - $this->_position = $position; - return $this; - } - - /** - * getPosition() - * - * @return int - */ - public function getPosition() - { - return $this->_position; - } - - /** - * @return bool - */ - public function getPassedByReference() - { - return $this->_passedByReference; - } - - /** - * @param bool $passedByReference - * @return Zend_CodeGenerator_Php_Parameter - */ - public function setPassedByReference($passedByReference) - { - $this->_passedByReference = $passedByReference; - return $this; - } - - /** - * generate() - * - * @return string - */ - public function generate() - { - $output = ''; - - if ($this->_type) { - $output .= $this->_type . ' '; - } - - if($this->_passedByReference === true) { - $output .= '&'; - } - - $output .= '$' . $this->_name; - - if ($this->_defaultValue !== null) { - $output .= ' = '; - if (is_string($this->_defaultValue)) { - $output .= '\'' . $this->_defaultValue . '\''; - } else if($this->_defaultValue instanceof Zend_CodeGenerator_Php_Parameter_DefaultValue) { - $output .= (string)$this->_defaultValue; - } else { - $output .= $this->_defaultValue; - } - } - - return $output; - } - -} \ No newline at end of file diff --git a/library/Zend/CodeGenerator/Php/Parameter/DefaultValue.php b/library/Zend/CodeGenerator/Php/Parameter/DefaultValue.php deleted file mode 100644 index a8708cb1..00000000 --- a/library/Zend/CodeGenerator/Php/Parameter/DefaultValue.php +++ /dev/null @@ -1,60 +0,0 @@ -_defaultValue = $defaultValue; - } - - public function __toString() - { - return $this->_defaultValue; - } -} \ No newline at end of file diff --git a/library/Zend/CodeGenerator/Php/Property.php b/library/Zend/CodeGenerator/Php/Property.php deleted file mode 100644 index 3dc7f3b6..00000000 --- a/library/Zend/CodeGenerator/Php/Property.php +++ /dev/null @@ -1,179 +0,0 @@ -setName($reflectionProperty->getName()); - - $allDefaultProperties = $reflectionProperty->getDeclaringClass()->getDefaultProperties(); - - $property->setDefaultValue($allDefaultProperties[$reflectionProperty->getName()]); - - if ($reflectionProperty->getDocComment() != '') { - $property->setDocblock(Zend_CodeGenerator_Php_Docblock::fromReflection($reflectionProperty->getDocComment())); - } - - if ($reflectionProperty->isStatic()) { - $property->setStatic(true); - } - - if ($reflectionProperty->isPrivate()) { - $property->setVisibility(self::VISIBILITY_PRIVATE); - } elseif ($reflectionProperty->isProtected()) { - $property->setVisibility(self::VISIBILITY_PROTECTED); - } else { - $property->setVisibility(self::VISIBILITY_PUBLIC); - } - - $property->setSourceDirty(false); - - return $property; - } - - /** - * setConst() - * - * @param bool $const - * @return Zend_CodeGenerator_Php_Property - */ - public function setConst($const) - { - $this->_isConst = $const; - return $this; - } - - /** - * isConst() - * - * @return bool - */ - public function isConst() - { - return ($this->_isConst) ? true : false; - } - - /** - * setDefaultValue() - * - * @param Zend_CodeGenerator_Php_Property_DefaultValue|string|array $defaultValue - * @return Zend_CodeGenerator_Php_Property - */ - public function setDefaultValue($defaultValue) - { - // if it looks like - if (is_array($defaultValue) - && array_key_exists('value', $defaultValue) - && array_key_exists('type', $defaultValue)) { - $defaultValue = new Zend_CodeGenerator_Php_Property_DefaultValue($defaultValue); - } - - if (!($defaultValue instanceof Zend_CodeGenerator_Php_Property_DefaultValue)) { - $defaultValue = new Zend_CodeGenerator_Php_Property_DefaultValue(array('value' => $defaultValue)); - } - - $this->_defaultValue = $defaultValue; - return $this; - } - - /** - * getDefaultValue() - * - * @return Zend_CodeGenerator_Php_Property_DefaultValue - */ - public function getDefaultValue() - { - return $this->_defaultValue; - } - - /** - * generate() - * - * @return string - */ - public function generate() - { - $name = $this->getName(); - $defaultValue = $this->getDefaultValue(); - - $output = ''; - - if (($docblock = $this->getDocblock()) !== null) { - $docblock->setIndentation(' '); - $output .= $docblock->generate(); - } - - if ($this->isConst()) { - if ($defaultValue != null && !$defaultValue->isValidConstantType()) { - require_once 'Zend/CodeGenerator/Php/Exception.php'; - throw new Zend_CodeGenerator_Php_Exception('The property ' . $this->_name . ' is said to be ' - . 'constant but does not have a valid constant value.'); - } - $output .= $this->_indentation . 'const ' . $name . ' = ' - . (($defaultValue !== null) ? $defaultValue->generate() : 'null;'); - } else { - $output .= $this->_indentation - . $this->getVisibility() - . (($this->isStatic()) ? ' static' : '') - . ' $' . $name . ' = ' - . (($defaultValue !== null) ? $defaultValue->generate() : 'null;'); - } - return $output; - } - -} diff --git a/library/Zend/CodeGenerator/Php/Property/DefaultValue.php b/library/Zend/CodeGenerator/Php/Property/DefaultValue.php deleted file mode 100644 index 82d85ed1..00000000 --- a/library/Zend/CodeGenerator/Php/Property/DefaultValue.php +++ /dev/null @@ -1,325 +0,0 @@ -getConstants(); - unset($reflect); - } - } - - /** - * isValidConstantType() - * - * @return bool - */ - public function isValidConstantType() - { - if ($this->_type == self::TYPE_AUTO) { - $type = $this->_getAutoDeterminedType($this->_value); - } else { - $type = $this->_type; - } - - // valid types for constants - $scalarTypes = array( - self::TYPE_BOOLEAN, - self::TYPE_BOOL, - self::TYPE_NUMBER, - self::TYPE_INTEGER, - self::TYPE_INT, - self::TYPE_FLOAT, - self::TYPE_DOUBLE, - self::TYPE_STRING, - self::TYPE_CONSTANT, - self::TYPE_NULL - ); - - return in_array($type, $scalarTypes); - } - - /** - * setValue() - * - * @param mixed $value - * @return Zend_CodeGenerator_Php_Property_DefaultValue - */ - public function setValue($value) - { - $this->_value = $value; - return $this; - } - - /** - * getValue() - * - * @return mixed - */ - public function getValue() - { - return $this->_value; - } - - /** - * setType() - * - * @param string $type - * @return Zend_CodeGenerator_Php_Property_DefaultValue - */ - public function setType($type) - { - $this->_type = $type; - return $this; - } - - /** - * getType() - * - * @return string - */ - public function getType() - { - return $this->_type; - } - - /** - * setArrayDepth() - * - * @param int $arrayDepth - * @return Zend_CodeGenerator_Php_Property_DefaultValue - */ - public function setArrayDepth($arrayDepth) - { - $this->_arrayDepth = $arrayDepth; - return $this; - } - - /** - * getArrayDepth() - * - * @return int - */ - public function getArrayDepth() - { - return $this->_arrayDepth; - } - - /** - * _getValidatedType() - * - * @param string $type - * @return string - */ - protected function _getValidatedType($type) - { - if (($constName = array_search($type, self::$_constants)) !== false) { - return $type; - } - - return self::TYPE_AUTO; - } - - /** - * _getAutoDeterminedType() - * - * @param mixed $value - * @return string - */ - public function _getAutoDeterminedType($value) - { - switch (gettype($value)) { - case 'boolean': - return self::TYPE_BOOLEAN; - case 'integer': - return self::TYPE_INT; - case 'string': - return self::TYPE_STRING; - case 'double': - case 'float': - case 'integer': - return self::TYPE_NUMBER; - case 'array': - return self::TYPE_ARRAY; - case 'NULL': - return self::TYPE_NULL; - case 'object': - case 'resource': - case 'unknown type': - default: - return self::TYPE_OTHER; - } - } - - /** - * generate() - * - * @return string - */ - public function generate() - { - $type = $this->_type; - - if ($type != self::TYPE_AUTO) { - $type = $this->_getValidatedType($type); - } - - $value = $this->_value; - - if ($type == self::TYPE_AUTO) { - $type = $this->_getAutoDeterminedType($value); - - if ($type == self::TYPE_ARRAY) { - $rii = new RecursiveIteratorIterator( - $it = new RecursiveArrayIterator($value), - RecursiveIteratorIterator::SELF_FIRST - ); - foreach ($rii as $curKey => $curValue) { - if (!$curValue instanceof Zend_CodeGenerator_Php_Property_DefaultValue) { - $curValue = new self(array('value' => $curValue)); - $rii->getSubIterator()->offsetSet($curKey, $curValue); - } - $curValue->setArrayDepth($rii->getDepth()); - } - $value = $rii->getSubIterator()->getArrayCopy(); - } - - } - - $output = ''; - - switch ($type) { - case self::TYPE_BOOLEAN: - case self::TYPE_BOOL: - $output .= ( $value ? 'true' : 'false' ); - break; - case self::TYPE_STRING: - $output .= "'" . addcslashes($value, "'") . "'"; - break; - case self::TYPE_NULL: - $output .= 'null'; - break; - case self::TYPE_NUMBER: - case self::TYPE_INTEGER: - case self::TYPE_INT: - case self::TYPE_FLOAT: - case self::TYPE_DOUBLE: - case self::TYPE_CONSTANT: - $output .= $value; - break; - case self::TYPE_ARRAY: - $output .= 'array('; - $curArrayMultiblock = false; - if (count($value) > 1) { - $curArrayMultiblock = true; - $output .= PHP_EOL . str_repeat($this->_indentation, $this->_arrayDepth+1); - } - $outputParts = array(); - $noKeyIndex = 0; - foreach ($value as $n => $v) { - $v->setArrayDepth($this->_arrayDepth + 1); - $partV = $v->generate(); - $partV = substr($partV, 0, strlen($partV)-1); - if ($n === $noKeyIndex) { - $outputParts[] = $partV; - $noKeyIndex++; - } else { - $outputParts[] = (is_int($n) ? $n : "'" . addcslashes($n, "'") . "'") . ' => ' . $partV; - } - - } - $output .= implode(',' . PHP_EOL . str_repeat($this->_indentation, $this->_arrayDepth+1), $outputParts); - if ($curArrayMultiblock == true) { - $output .= PHP_EOL . str_repeat($this->_indentation, $this->_arrayDepth+1); - } - $output .= ')'; - break; - case self::TYPE_OTHER: - default: - require_once "Zend/CodeGenerator/Php/Exception.php"; - throw new Zend_CodeGenerator_Php_Exception( - "Type '".get_class($value)."' is unknown or cannot be used as property default value." - ); - } - - $output .= ';'; - - return $output; - } -} diff --git a/library/Zend/Config.php b/library/Zend/Config.php deleted file mode 100644 index a977845f..00000000 --- a/library/Zend/Config.php +++ /dev/null @@ -1,484 +0,0 @@ -_allowModifications = (boolean) $allowModifications; - $this->_loadedSection = null; - $this->_index = 0; - $this->_data = array(); - foreach ($array as $key => $value) { - if (is_array($value)) { - $this->_data[$key] = new self($value, $this->_allowModifications); - } else { - $this->_data[$key] = $value; - } - } - $this->_count = count($this->_data); - } - - /** - * Retrieve a value and return $default if there is no element set. - * - * @param string $name - * @param mixed $default - * @return mixed - */ - public function get($name, $default = null) - { - $result = $default; - if (array_key_exists($name, $this->_data)) { - $result = $this->_data[$name]; - } - return $result; - } - - /** - * Magic function so that $obj->value will work. - * - * @param string $name - * @return mixed - */ - public function __get($name) - { - return $this->get($name); - } - - /** - * Only allow setting of a property if $allowModifications - * was set to true on construction. Otherwise, throw an exception. - * - * @param string $name - * @param mixed $value - * @throws Zend_Config_Exception - * @return void - */ - public function __set($name, $value) - { - if ($this->_allowModifications) { - if (is_array($value)) { - $this->_data[$name] = new self($value, true); - } else { - $this->_data[$name] = $value; - } - $this->_count = count($this->_data); - } else { - /** @see Zend_Config_Exception */ - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception('Zend_Config is read only'); - } - } - - /** - * Deep clone of this instance to ensure that nested Zend_Configs - * are also cloned. - * - * @return void - */ - public function __clone() - { - $array = array(); - foreach ($this->_data as $key => $value) { - if ($value instanceof Zend_Config) { - $array[$key] = clone $value; - } else { - $array[$key] = $value; - } - } - $this->_data = $array; - } - - /** - * Return an associative array of the stored data. - * - * @return array - */ - public function toArray() - { - $array = array(); - $data = $this->_data; - foreach ($data as $key => $value) { - if ($value instanceof Zend_Config) { - $array[$key] = $value->toArray(); - } else { - $array[$key] = $value; - } - } - return $array; - } - - /** - * Support isset() overloading on PHP 5.1 - * - * @param string $name - * @return boolean - */ - public function __isset($name) - { - return isset($this->_data[$name]); - } - - /** - * Support unset() overloading on PHP 5.1 - * - * @param string $name - * @throws Zend_Config_Exception - * @return void - */ - public function __unset($name) - { - if ($this->_allowModifications) { - unset($this->_data[$name]); - $this->_count = count($this->_data); - $this->_skipNextIteration = true; - } else { - /** @see Zend_Config_Exception */ - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception('Zend_Config is read only'); - } - - } - - /** - * Defined by Countable interface - * - * @return int - */ - public function count() - { - return $this->_count; - } - - /** - * Defined by Iterator interface - * - * @return mixed - */ - public function current() - { - $this->_skipNextIteration = false; - return current($this->_data); - } - - /** - * Defined by Iterator interface - * - * @return mixed - */ - public function key() - { - return key($this->_data); - } - - /** - * Defined by Iterator interface - * - */ - public function next() - { - if ($this->_skipNextIteration) { - $this->_skipNextIteration = false; - return; - } - next($this->_data); - $this->_index++; - } - - /** - * Defined by Iterator interface - * - */ - public function rewind() - { - $this->_skipNextIteration = false; - reset($this->_data); - $this->_index = 0; - } - - /** - * Defined by Iterator interface - * - * @return boolean - */ - public function valid() - { - return $this->_index < $this->_count; - } - - /** - * Returns the section name(s) loaded. - * - * @return mixed - */ - public function getSectionName() - { - if(is_array($this->_loadedSection) && count($this->_loadedSection) == 1) { - $this->_loadedSection = $this->_loadedSection[0]; - } - return $this->_loadedSection; - } - - /** - * Returns true if all sections were loaded - * - * @return boolean - */ - public function areAllSectionsLoaded() - { - return $this->_loadedSection === null; - } - - - /** - * Merge another Zend_Config with this one. The items - * in $merge will override the same named items in - * the current config. - * - * @param Zend_Config $merge - * @return Zend_Config - */ - public function merge(Zend_Config $merge) - { - foreach($merge as $key => $item) { - if(array_key_exists($key, $this->_data)) { - if($item instanceof Zend_Config && $this->$key instanceof Zend_Config) { - $this->$key = $this->$key->merge(new Zend_Config($item->toArray(), !$this->readOnly())); - } else { - $this->$key = $item; - } - } else { - if($item instanceof Zend_Config) { - $this->$key = new Zend_Config($item->toArray(), !$this->readOnly()); - } else { - $this->$key = $item; - } - } - } - - return $this; - } - - /** - * Prevent any more modifications being made to this instance. Useful - * after merge() has been used to merge multiple Zend_Config objects - * into one object which should then not be modified again. - * - */ - public function setReadOnly() - { - $this->_allowModifications = false; - foreach ($this->_data as $key => $value) { - if ($value instanceof Zend_Config) { - $value->setReadOnly(); - } - } - } - - /** - * Returns if this Zend_Config object is read only or not. - * - * @return boolean - */ - public function readOnly() - { - return !$this->_allowModifications; - } - - /** - * Get the current extends - * - * @return array - */ - public function getExtends() - { - return $this->_extends; - } - - /** - * Set an extend for Zend_Config_Writer - * - * @param string $extendingSection - * @param string $extendedSection - * @return void - */ - public function setExtend($extendingSection, $extendedSection = null) - { - if ($extendedSection === null && isset($this->_extends[$extendingSection])) { - unset($this->_extends[$extendingSection]); - } else if ($extendedSection !== null) { - $this->_extends[$extendingSection] = $extendedSection; - } - } - - /** - * Throws an exception if $extendingSection may not extend $extendedSection, - * and tracks the section extension if it is valid. - * - * @param string $extendingSection - * @param string $extendedSection - * @throws Zend_Config_Exception - * @return void - */ - protected function _assertValidExtend($extendingSection, $extendedSection) - { - // detect circular section inheritance - $extendedSectionCurrent = $extendedSection; - while (array_key_exists($extendedSectionCurrent, $this->_extends)) { - if ($this->_extends[$extendedSectionCurrent] == $extendingSection) { - /** @see Zend_Config_Exception */ - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception('Illegal circular inheritance detected'); - } - $extendedSectionCurrent = $this->_extends[$extendedSectionCurrent]; - } - // remember that this section extends another section - $this->_extends[$extendingSection] = $extendedSection; - } - - /** - * Handle any errors from simplexml_load_file or parse_ini_file - * - * @param integer $errno - * @param string $errstr - * @param string $errfile - * @param integer $errline - */ - protected function _loadFileErrorHandler($errno, $errstr, $errfile, $errline) - { - if ($this->_loadFileErrorStr === null) { - $this->_loadFileErrorStr = $errstr; - } else { - $this->_loadFileErrorStr .= (PHP_EOL . $errstr); - } - } - - /** - * Merge two arrays recursively, overwriting keys of the same name - * in $firstArray with the value in $secondArray. - * - * @param mixed $firstArray First array - * @param mixed $secondArray Second array to merge into first array - * @return array - */ - protected function _arrayMergeRecursive($firstArray, $secondArray) - { - if (is_array($firstArray) && is_array($secondArray)) { - foreach ($secondArray as $key => $value) { - if (isset($firstArray[$key])) { - $firstArray[$key] = $this->_arrayMergeRecursive($firstArray[$key], $value); - } else { - if($key === 0) { - $firstArray= array(0=>$this->_arrayMergeRecursive($firstArray, $value)); - } else { - $firstArray[$key] = $value; - } - } - } - } else { - $firstArray = $secondArray; - } - - return $firstArray; - } -} \ No newline at end of file diff --git a/library/Zend/Config/Exception.php b/library/Zend/Config/Exception.php deleted file mode 100644 index c3a3b34e..00000000 --- a/library/Zend/Config/Exception.php +++ /dev/null @@ -1,33 +0,0 @@ -hostname === "staging" - * $data->db->connection === "database" - * - * The $options parameter may be provided as either a boolean or an array. - * If provided as a boolean, this sets the $allowModifications option of - * Zend_Config. If provided as an array, there are three configuration - * directives that may be set. For example: - * - * $options = array( - * 'allowModifications' => false, - * 'nestSeparator' => ':', - * 'skipExtends' => false, - * ); - * - * @param string $filename - * @param mixed $section - * @param boolean|array $options - * @throws Zend_Config_Exception - * @return void - */ - public function __construct($filename, $section = null, $options = false) - { - if (empty($filename)) { - /** - * @see Zend_Config_Exception - */ - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception('Filename is not set'); - } - - $allowModifications = false; - if (is_bool($options)) { - $allowModifications = $options; - } elseif (is_array($options)) { - if (isset($options['allowModifications'])) { - $allowModifications = (bool) $options['allowModifications']; - } - if (isset($options['nestSeparator'])) { - $this->_nestSeparator = (string) $options['nestSeparator']; - } - if (isset($options['skipExtends'])) { - $this->_skipExtends = (bool) $options['skipExtends']; - } - } - - $iniArray = $this->_loadIniFile($filename); - - if (null === $section) { - // Load entire file - $dataArray = array(); - foreach ($iniArray as $sectionName => $sectionData) { - if(!is_array($sectionData)) { - $dataArray = $this->_arrayMergeRecursive($dataArray, $this->_processKey(array(), $sectionName, $sectionData)); - } else { - $dataArray[$sectionName] = $this->_processSection($iniArray, $sectionName); - } - } - parent::__construct($dataArray, $allowModifications); - } else { - // Load one or more sections - if (!is_array($section)) { - $section = array($section); - } - $dataArray = array(); - foreach ($section as $sectionName) { - if (!isset($iniArray[$sectionName])) { - /** - * @see Zend_Config_Exception - */ - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception("Section '$sectionName' cannot be found in $filename"); - } - $dataArray = $this->_arrayMergeRecursive($this->_processSection($iniArray, $sectionName), $dataArray); - - } - parent::__construct($dataArray, $allowModifications); - } - - $this->_loadedSection = $section; - } - - /** - * Load the INI file from disk using parse_ini_file(). Use a private error - * handler to convert any loading errors into a Zend_Config_Exception - * - * @param string $filename - * @throws Zend_Config_Exception - * @return array - */ - protected function _parseIniFile($filename) - { - set_error_handler(array($this, '_loadFileErrorHandler')); - $iniArray = parse_ini_file($filename, true); // Warnings and errors are suppressed - restore_error_handler(); - - // Check if there was a error while loading file - if ($this->_loadFileErrorStr !== null) { - /** - * @see Zend_Config_Exception - */ - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception($this->_loadFileErrorStr); - } - - return $iniArray; - } - - /** - * Load the ini file and preprocess the section separator (':' in the - * section name (that is used for section extension) so that the resultant - * array has the correct section names and the extension information is - * stored in a sub-key called ';extends'. We use ';extends' as this can - * never be a valid key name in an INI file that has been loaded using - * parse_ini_file(). - * - * @param string $filename - * @throws Zend_Config_Exception - * @return array - */ - protected function _loadIniFile($filename) - { - $loaded = $this->_parseIniFile($filename); - $iniArray = array(); - foreach ($loaded as $key => $data) - { - $pieces = explode($this->_sectionSeparator, $key); - $thisSection = trim($pieces[0]); - switch (count($pieces)) { - case 1: - $iniArray[$thisSection] = $data; - break; - - case 2: - $extendedSection = trim($pieces[1]); - $iniArray[$thisSection] = array_merge(array(';extends'=>$extendedSection), $data); - break; - - default: - /** - * @see Zend_Config_Exception - */ - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception("Section '$thisSection' may not extend multiple sections in $filename"); - } - } - - return $iniArray; - } - - /** - * Process each element in the section and handle the ";extends" inheritance - * key. Passes control to _processKey() to handle the nest separator - * sub-property syntax that may be used within the key name. - * - * @param array $iniArray - * @param string $section - * @param array $config - * @throws Zend_Config_Exception - * @return array - */ - protected function _processSection($iniArray, $section, $config = array()) - { - $thisSection = $iniArray[$section]; - - foreach ($thisSection as $key => $value) { - if (strtolower($key) == ';extends') { - if (isset($iniArray[$value])) { - $this->_assertValidExtend($section, $value); - - if (!$this->_skipExtends) { - $config = $this->_processSection($iniArray, $value, $config); - } - } else { - /** - * @see Zend_Config_Exception - */ - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception("Parent section '$section' cannot be found"); - } - } else { - $config = $this->_processKey($config, $key, $value); - } - } - return $config; - } - - /** - * Assign the key's value to the property list. Handles the - * nest separator for sub-properties. - * - * @param array $config - * @param string $key - * @param string $value - * @throws Zend_Config_Exception - * @return array - */ - protected function _processKey($config, $key, $value) - { - if (strpos($key, $this->_nestSeparator) !== false) { - $pieces = explode($this->_nestSeparator, $key, 2); - if (strlen($pieces[0]) && strlen($pieces[1])) { - if (!isset($config[$pieces[0]])) { - if ($pieces[0] === '0' && !empty($config)) { - // convert the current values in $config into an array - $config = array($pieces[0] => $config); - } else { - $config[$pieces[0]] = array(); - } - } elseif (!is_array($config[$pieces[0]])) { - /** - * @see Zend_Config_Exception - */ - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception("Cannot create sub-key for '{$pieces[0]}' as key already exists"); - } - $config[$pieces[0]] = $this->_processKey($config[$pieces[0]], $pieces[1], $value); - } else { - /** - * @see Zend_Config_Exception - */ - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception("Invalid key '$key'"); - } - } else { - $config[$key] = $value; - } - return $config; - } -} diff --git a/library/Zend/Config/Json.php b/library/Zend/Config/Json.php deleted file mode 100644 index ee9924f6..00000000 --- a/library/Zend/Config/Json.php +++ /dev/null @@ -1,242 +0,0 @@ - $value) { - switch (strtolower($key)) { - case 'allow_modifications': - case 'allowmodifications': - $allowModifications = (bool) $value; - break; - case 'skip_extends': - case 'skipextends': - $this->_skipExtends = (bool) $value; - break; - case 'ignore_constants': - case 'ignoreconstants': - $this->_ignoreConstants = (bool) $value; - break; - default: - break; - } - } - } - - set_error_handler(array($this, '_loadFileErrorHandler')); // Warnings and errors are suppressed - if ($json[0] != '{') { - $json = file_get_contents($json); - } - restore_error_handler(); - - // Check if there was a error while loading file - if ($this->_loadFileErrorStr !== null) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception($this->_loadFileErrorStr); - } - - // Replace constants - if (!$this->_ignoreConstants) { - $json = $this->_replaceConstants($json); - } - - // Parse/decode - $config = Zend_Json::decode($json); - - if (null === $config) { - // decode failed - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception("Error parsing JSON data"); - } - - if ($section === null) { - $dataArray = array(); - foreach ($config as $sectionName => $sectionData) { - $dataArray[$sectionName] = $this->_processExtends($config, $sectionName); - } - - parent::__construct($dataArray, $allowModifications); - } elseif (is_array($section)) { - $dataArray = array(); - foreach ($section as $sectionName) { - if (!isset($config[$sectionName])) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception(sprintf('Section "%s" cannot be found', $sectionName)); - } - - $dataArray = array_merge($this->_processExtends($config, $sectionName), $dataArray); - } - - parent::__construct($dataArray, $allowModifications); - } else { - if (!isset($config[$section])) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception(sprintf('Section "%s" cannot be found', $section)); - } - - $dataArray = $this->_processExtends($config, $section); - if (!is_array($dataArray)) { - // Section in the JSON data contains just one top level string - $dataArray = array($section => $dataArray); - } - - parent::__construct($dataArray, $allowModifications); - } - - $this->_loadedSection = $section; - } - - /** - * Helper function to process each element in the section and handle - * the "_extends" inheritance attribute. - * - * @param array $data Data array to process - * @param string $section Section to process - * @param array $config Configuration which was parsed yet - * @throws Zend_Config_Exception When $section cannot be found - * @return array - */ - protected function _processExtends(array $data, $section, array $config = array()) - { - if (!isset($data[$section])) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception(sprintf('Section "%s" cannot be found', $section)); - } - - $thisSection = $data[$section]; - - if (is_array($thisSection) && isset($thisSection[self::EXTENDS_NAME])) { - if (is_array($thisSection[self::EXTENDS_NAME])) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception('Invalid extends clause: must be a string; array received'); - } - $this->_assertValidExtend($section, $thisSection[self::EXTENDS_NAME]); - - if (!$this->_skipExtends) { - $config = $this->_processExtends($data, $thisSection[self::EXTENDS_NAME], $config); - } - unset($thisSection[self::EXTENDS_NAME]); - } - - $config = $this->_arrayMergeRecursive($config, $thisSection); - - return $config; - } - - /** - * Replace any constants referenced in a string with their values - * - * @param string $value - * @return string - */ - protected function _replaceConstants($value) - { - foreach ($this->_getConstants() as $constant) { - if (strstr($value, $constant)) { - // handle backslashes that may represent windows path names for instance - $replacement = str_replace('\\', '\\\\', constant($constant)); - $value = str_replace($constant, $replacement, $value); - } - } - return $value; - } - - /** - * Get (reverse) sorted list of defined constant names - * - * @return array - */ - protected function _getConstants() - { - $constants = array_keys(get_defined_constants()); - rsort($constants, SORT_STRING); - return $constants; - } -} diff --git a/library/Zend/Config/Writer.php b/library/Zend/Config/Writer.php deleted file mode 100644 index 20bd0789..00000000 --- a/library/Zend/Config/Writer.php +++ /dev/null @@ -1,101 +0,0 @@ -setOptions($options); - } - } - - /** - * Set options via a Zend_Config instance - * - * @param Zend_Config $config - * @return Zend_Config_Writer - */ - public function setConfig(Zend_Config $config) - { - $this->_config = $config; - - return $this; - } - - /** - * Set options via an array - * - * @param array $options - * @return Zend_Config_Writer - */ - public function setOptions(array $options) - { - foreach ($options as $key => $value) { - if (in_array(strtolower($key), $this->_skipOptions)) { - continue; - } - - $method = 'set' . ucfirst($key); - if (method_exists($this, $method)) { - $this->$method($value); - } - } - - return $this; - } - - /** - * Write a Zend_Config object to it's target - * - * @return void - */ - abstract public function write(); -} diff --git a/library/Zend/Config/Writer/Array.php b/library/Zend/Config/Writer/Array.php deleted file mode 100644 index c98c0041..00000000 --- a/library/Zend/Config/Writer/Array.php +++ /dev/null @@ -1,55 +0,0 @@ -_config->toArray(); - $sectionName = $this->_config->getSectionName(); - - if (is_string($sectionName)) { - $data = array($sectionName => $data); - } - - $arrayString = "_filename = $filename; - - return $this; - } - - /** - * Set wether to exclusively lock the file or not - * - * @param boolean $exclusiveLock - * @return Zend_Config_Writer_Array - */ - public function setExclusiveLock($exclusiveLock) - { - $this->_exclusiveLock = $exclusiveLock; - - return $this; - } - - /** - * Write configuration to file. - * - * @param string $filename - * @param Zend_Config $config - * @param bool $exclusiveLock - * @return void - */ - public function write($filename = null, Zend_Config $config = null, $exclusiveLock = null) - { - if ($filename !== null) { - $this->setFilename($filename); - } - - if ($config !== null) { - $this->setConfig($config); - } - - if ($exclusiveLock !== null) { - $this->setExclusiveLock($exclusiveLock); - } - - if ($this->_filename === null) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception('No filename was set'); - } - - if ($this->_config === null) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception('No config was set'); - } - - $configString = $this->render(); - - $flags = 0; - - if ($this->_exclusiveLock) { - $flags |= LOCK_EX; - } - - $result = @file_put_contents($this->_filename, $configString, $flags); - - if ($result === false) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception('Could not write to file "' . $this->_filename . '"'); - } - } - - /** - * Render a Zend_Config into a config file string. - * - * @since 1.10 - * @todo For 2.0 this should be redone into an abstract method. - * @return string - */ - public function render() - { - return ""; - } -} \ No newline at end of file diff --git a/library/Zend/Config/Writer/Ini.php b/library/Zend/Config/Writer/Ini.php deleted file mode 100644 index f2e5a781..00000000 --- a/library/Zend/Config/Writer/Ini.php +++ /dev/null @@ -1,193 +0,0 @@ -_nestSeparator = $separator; - - return $this; - } - - /** - * Set if rendering should occour without sections or not. - * - * If set to true, the INI file is rendered without sections completely - * into the global namespace of the INI file. - * - * @param bool $withoutSections - * @return Zend_Config_Writer_Ini - */ - public function setRenderWithoutSections($withoutSections=true) - { - $this->_renderWithoutSections = (bool)$withoutSections; - return $this; - } - - /** - * Render a Zend_Config into a INI config string. - * - * @since 1.10 - * @return string - */ - public function render() - { - $iniString = ''; - $extends = $this->_config->getExtends(); - $sectionName = $this->_config->getSectionName(); - - if($this->_renderWithoutSections == true) { - $iniString .= $this->_addBranch($this->_config); - } else if (is_string($sectionName)) { - $iniString .= '[' . $sectionName . ']' . "\n" - . $this->_addBranch($this->_config) - . "\n"; - } else { - $config = $this->_sortRootElements($this->_config); - foreach ($config as $sectionName => $data) { - if (!($data instanceof Zend_Config)) { - $iniString .= $sectionName - . ' = ' - . $this->_prepareValue($data) - . "\n"; - } else { - if (isset($extends[$sectionName])) { - $sectionName .= ' : ' . $extends[$sectionName]; - } - - $iniString .= '[' . $sectionName . ']' . "\n" - . $this->_addBranch($data) - . "\n"; - } - } - } - - return $iniString; - } - - /** - * Add a branch to an INI string recursively - * - * @param Zend_Config $config - * @return void - */ - protected function _addBranch(Zend_Config $config, $parents = array()) - { - $iniString = ''; - - foreach ($config as $key => $value) { - $group = array_merge($parents, array($key)); - - if ($value instanceof Zend_Config) { - $iniString .= $this->_addBranch($value, $group); - } else { - $iniString .= implode($this->_nestSeparator, $group) - . ' = ' - . $this->_prepareValue($value) - . "\n"; - } - } - - return $iniString; - } - - /** - * Prepare a value for INI - * - * @param mixed $value - * @return string - */ - protected function _prepareValue($value) - { - if (is_integer($value) || is_float($value)) { - return $value; - } elseif (is_bool($value)) { - return ($value ? 'true' : 'false'); - } elseif (strpos($value, '"') === false) { - return '"' . $value . '"'; - } else { - /** @see Zend_Config_Exception */ - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception('Value can not contain double quotes "'); - } - } - - /** - * Root elements that are not assigned to any section needs to be - * on the top of config. - * - * @see http://framework.zend.com/issues/browse/ZF-6289 - * @param Zend_Config - * @return Zend_Config - */ - protected function _sortRootElements(Zend_Config $config) - { - $configArray = $config->toArray(); - $sections = array(); - - // remove sections from config array - foreach ($configArray as $key => $value) { - if (is_array($value)) { - $sections[$key] = $value; - unset($configArray[$key]); - } - } - - // readd sections to the end - foreach ($sections as $key => $value) { - $configArray[$key] = $value; - } - - return new Zend_Config($configArray); - } -} diff --git a/library/Zend/Config/Writer/Json.php b/library/Zend/Config/Writer/Json.php deleted file mode 100644 index d05557fa..00000000 --- a/library/Zend/Config/Writer/Json.php +++ /dev/null @@ -1,106 +0,0 @@ -_prettyPrint; - } - - /** - * Set prettyPrint flag - * - * @param bool $prettyPrint PrettyPrint flag - * @return Zend_Config_Writer_Json - */ - public function setPrettyPrint($flag) - { - $this->_prettyPrint = (bool) $flag; - return $this; - } - - /** - * Render a Zend_Config into a JSON config string. - * - * @since 1.10 - * @return string - */ - public function render() - { - $data = $this->_config->toArray(); - $sectionName = $this->_config->getSectionName(); - $extends = $this->_config->getExtends(); - - if (is_string($sectionName)) { - $data = array($sectionName => $data); - } - - foreach ($extends as $section => $parentSection) { - $data[$section][Zend_Config_Json::EXTENDS_NAME] = $parentSection; - } - - // Ensure that each "extends" section actually exists - foreach ($data as $section => $sectionData) { - if (is_array($sectionData) && isset($sectionData[Zend_Config_Json::EXTENDS_NAME])) { - $sectionExtends = $sectionData[Zend_Config_Json::EXTENDS_NAME]; - if (!isset($data[$sectionExtends])) { - // Remove "extends" declaration if section does not exist - unset($data[$section][Zend_Config_Json::EXTENDS_NAME]); - } - } - } - - $out = Zend_Json::encode($data); - if ($this->prettyPrint()) { - $out = Zend_Json::prettyPrint($out); - } - return $out; - } -} diff --git a/library/Zend/Config/Writer/Xml.php b/library/Zend/Config/Writer/Xml.php deleted file mode 100644 index 82463c16..00000000 --- a/library/Zend/Config/Writer/Xml.php +++ /dev/null @@ -1,127 +0,0 @@ -'); - $extends = $this->_config->getExtends(); - $sectionName = $this->_config->getSectionName(); - - if (is_string($sectionName)) { - $child = $xml->addChild($sectionName); - - $this->_addBranch($this->_config, $child, $xml); - } else { - foreach ($this->_config as $sectionName => $data) { - if (!($data instanceof Zend_Config)) { - $xml->addChild($sectionName, (string) $data); - } else { - $child = $xml->addChild($sectionName); - - if (isset($extends[$sectionName])) { - $child->addAttribute('zf:extends', $extends[$sectionName], Zend_Config_Xml::XML_NAMESPACE); - } - - $this->_addBranch($data, $child, $xml); - } - } - } - - $dom = dom_import_simplexml($xml)->ownerDocument; - $dom->formatOutput = true; - - $xmlString = $dom->saveXML(); - - return $xmlString; - } - - /** - * Add a branch to an XML object recursively - * - * @param Zend_Config $config - * @param SimpleXMLElement $xml - * @param SimpleXMLElement $parent - * @return void - */ - protected function _addBranch(Zend_Config $config, SimpleXMLElement $xml, SimpleXMLElement $parent) - { - $branchType = null; - - foreach ($config as $key => $value) { - if ($branchType === null) { - if (is_numeric($key)) { - $branchType = 'numeric'; - $branchName = $xml->getName(); - $xml = $parent; - - unset($parent->{$branchName}); - } else { - $branchType = 'string'; - } - } else if ($branchType !== (is_numeric($key) ? 'numeric' : 'string')) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception('Mixing of string and numeric keys is not allowed'); - } - - if ($branchType === 'numeric') { - if ($value instanceof Zend_Config) { - $child = $parent->addChild($branchName); - - $this->_addBranch($value, $child, $parent); - } else { - $parent->addChild($branchName, (string) $value); - } - } else { - if ($value instanceof Zend_Config) { - $child = $xml->addChild($key); - - $this->_addBranch($value, $child, $xml); - } else { - $xml->addChild($key, (string) $value); - } - } - } - } -} diff --git a/library/Zend/Config/Writer/Yaml.php b/library/Zend/Config/Writer/Yaml.php deleted file mode 100644 index 9d7305c9..00000000 --- a/library/Zend/Config/Writer/Yaml.php +++ /dev/null @@ -1,144 +0,0 @@ -_yamlEncoder; - } - - /** - * Set callback for decoding YAML - * - * @param callable $yamlEncoder the decoder to set - * @return Zend_Config_Yaml - */ - public function setYamlEncoder($yamlEncoder) - { - if (!is_callable($yamlEncoder)) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception('Invalid parameter to setYamlEncoder - must be callable'); - } - - $this->_yamlEncoder = $yamlEncoder; - return $this; - } - - /** - * Render a Zend_Config into a YAML config string. - * - * @since 1.10 - * @return string - */ - public function render() - { - $data = $this->_config->toArray(); - $sectionName = $this->_config->getSectionName(); - $extends = $this->_config->getExtends(); - - if (is_string($sectionName)) { - $data = array($sectionName => $data); - } - - foreach ($extends as $section => $parentSection) { - $data[$section][Zend_Config_Yaml::EXTENDS_NAME] = $parentSection; - } - - // Ensure that each "extends" section actually exists - foreach ($data as $section => $sectionData) { - if (is_array($sectionData) && isset($sectionData[Zend_Config_Yaml::EXTENDS_NAME])) { - $sectionExtends = $sectionData[Zend_Config_Yaml::EXTENDS_NAME]; - if (!isset($data[$sectionExtends])) { - // Remove "extends" declaration if section does not exist - unset($data[$section][Zend_Config_Yaml::EXTENDS_NAME]); - } - } - } - - return call_user_func($this->getYamlEncoder(), $data); - } - - /** - * Very dumb YAML encoder - * - * Until we have Zend_Yaml... - * - * @param array $data YAML data - * @return string - */ - public static function encode($data) - { - return self::_encodeYaml(0, $data); - } - - /** - * Service function for encoding YAML - * - * @param int $indent Current indent level - * @param array $data Data to encode - * @return string - */ - protected static function _encodeYaml($indent, $data) - { - reset($data); - $result = ""; - $numeric = is_numeric(key($data)); - - foreach($data as $key => $value) { - if(is_array($value)) { - $encoded = "\n".self::_encodeYaml($indent+1, $value); - } else { - $encoded = (string)$value."\n"; - } - $result .= str_repeat(" ", $indent).($numeric?"- ":"$key: ").$encoded; - } - return $result; - } -} diff --git a/library/Zend/Config/Xml.php b/library/Zend/Config/Xml.php deleted file mode 100644 index 2a2f0667..00000000 --- a/library/Zend/Config/Xml.php +++ /dev/null @@ -1,296 +0,0 @@ - false, - * 'skipExtends' => false - * ); - * - * @param string $xml XML file or string to process - * @param mixed $section Section to process - * @param array|boolean $options - * @throws Zend_Config_Exception When xml is not set or cannot be loaded - * @throws Zend_Config_Exception When section $sectionName cannot be found in $xml - */ - public function __construct($xml, $section = null, $options = false) - { - if (empty($xml)) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception('Filename is not set'); - } - - $allowModifications = false; - if (is_bool($options)) { - $allowModifications = $options; - } elseif (is_array($options)) { - if (isset($options['allowModifications'])) { - $allowModifications = (bool) $options['allowModifications']; - } - if (isset($options['skipExtends'])) { - $this->_skipExtends = (bool) $options['skipExtends']; - } - } - - set_error_handler(array($this, '_loadFileErrorHandler')); // Warnings and errors are suppressed - if (strstr($xml, '_loadFileErrorStr !== null) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception($this->_loadFileErrorStr); - } - - if ($section === null) { - $dataArray = array(); - foreach ($config as $sectionName => $sectionData) { - $dataArray[$sectionName] = $this->_processExtends($config, $sectionName); - } - - parent::__construct($dataArray, $allowModifications); - } else if (is_array($section)) { - $dataArray = array(); - foreach ($section as $sectionName) { - if (!isset($config->$sectionName)) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception("Section '$sectionName' cannot be found in $xml"); - } - - $dataArray = array_merge($this->_processExtends($config, $sectionName), $dataArray); - } - - parent::__construct($dataArray, $allowModifications); - } else { - if (!isset($config->$section)) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception("Section '$section' cannot be found in $xml"); - } - - $dataArray = $this->_processExtends($config, $section); - if (!is_array($dataArray)) { - // Section in the XML file contains just one top level string - $dataArray = array($section => $dataArray); - } - - parent::__construct($dataArray, $allowModifications); - } - - $this->_loadedSection = $section; - } - - /** - * Helper function to process each element in the section and handle - * the "extends" inheritance attribute. - * - * @param SimpleXMLElement $element XML Element to process - * @param string $section Section to process - * @param array $config Configuration which was parsed yet - * @throws Zend_Config_Exception When $section cannot be found - * @return array - */ - protected function _processExtends(SimpleXMLElement $element, $section, array $config = array()) - { - if (!isset($element->$section)) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception("Section '$section' cannot be found"); - } - - $thisSection = $element->$section; - $nsAttributes = $thisSection->attributes(self::XML_NAMESPACE); - - if (isset($thisSection['extends']) || isset($nsAttributes['extends'])) { - $extendedSection = (string) (isset($nsAttributes['extends']) ? $nsAttributes['extends'] : $thisSection['extends']); - $this->_assertValidExtend($section, $extendedSection); - - if (!$this->_skipExtends) { - $config = $this->_processExtends($element, $extendedSection, $config); - } - } - - $config = $this->_arrayMergeRecursive($config, $this->_toArray($thisSection)); - - return $config; - } - - /** - * Returns a string or an associative and possibly multidimensional array from - * a SimpleXMLElement. - * - * @param SimpleXMLElement $xmlObject Convert a SimpleXMLElement into an array - * @return array|string - */ - protected function _toArray(SimpleXMLElement $xmlObject) - { - $config = array(); - $nsAttributes = $xmlObject->attributes(self::XML_NAMESPACE); - - // Search for parent node values - if (count($xmlObject->attributes()) > 0) { - foreach ($xmlObject->attributes() as $key => $value) { - if ($key === 'extends') { - continue; - } - - $value = (string) $value; - - if (array_key_exists($key, $config)) { - if (!is_array($config[$key])) { - $config[$key] = array($config[$key]); - } - - $config[$key][] = $value; - } else { - $config[$key] = $value; - } - } - } - - // Search for local 'const' nodes and replace them - if (count($xmlObject->children(self::XML_NAMESPACE)) > 0) { - if (count($xmlObject->children()) > 0) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception("A node with a 'const' childnode may not have any other children"); - } - - $dom = dom_import_simplexml($xmlObject); - $namespaceChildNodes = array(); - - // We have to store them in an array, as replacing nodes will - // confuse the DOMNodeList later - foreach ($dom->childNodes as $node) { - if ($node instanceof DOMElement && $node->namespaceURI === self::XML_NAMESPACE) { - $namespaceChildNodes[] = $node; - } - } - - foreach ($namespaceChildNodes as $node) { - switch ($node->localName) { - case 'const': - if (!$node->hasAttributeNS(self::XML_NAMESPACE, 'name')) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception("Misssing 'name' attribute in 'const' node"); - } - - $constantName = $node->getAttributeNS(self::XML_NAMESPACE, 'name'); - - if (!defined($constantName)) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception("Constant with name '$constantName' was not defined"); - } - - $constantValue = constant($constantName); - - $dom->replaceChild($dom->ownerDocument->createTextNode($constantValue), $node); - break; - - default: - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception("Unknown node with name '$node->localName' found"); - } - } - - return (string) simplexml_import_dom($dom); - } - - // Search for children - if (count($xmlObject->children()) > 0) { - foreach ($xmlObject->children() as $key => $value) { - if (count($value->children()) > 0 || count($value->children(self::XML_NAMESPACE)) > 0) { - $value = $this->_toArray($value); - } else if (count($value->attributes()) > 0) { - $attributes = $value->attributes(); - if (isset($attributes['value'])) { - $value = (string) $attributes['value']; - } else { - $value = $this->_toArray($value); - } - } else { - $value = (string) $value; - } - - if (array_key_exists($key, $config)) { - if (!is_array($config[$key]) || !array_key_exists(0, $config[$key])) { - $config[$key] = array($config[$key]); - } - - $config[$key][] = $value; - } else { - $config[$key] = $value; - } - } - } else if (!isset($xmlObject['extends']) && !isset($nsAttributes['extends']) && (count($config) === 0)) { - // Object has no children nor attributes and doesn't use the extends - // attribute: it's a string - $config = (string) $xmlObject; - } - - return $config; - } -} diff --git a/library/Zend/Config/Yaml.php b/library/Zend/Config/Yaml.php deleted file mode 100644 index dea099df..00000000 --- a/library/Zend/Config/Yaml.php +++ /dev/null @@ -1,415 +0,0 @@ -_yamlDecoder; - } - - /** - * Set callback for decoding YAML - * - * @param callable $yamlDecoder the decoder to set - * @return Zend_Config_Yaml - */ - public function setYamlDecoder($yamlDecoder) - { - if (!is_callable($yamlDecoder)) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception('Invalid parameter to setYamlDecoder() - must be callable'); - } - - $this->_yamlDecoder = $yamlDecoder; - return $this; - } - - /** - * Loads the section $section from the config file encoded as YAML - * - * Sections are defined as properties of the main object - * - * In order to extend another section, a section defines the "_extends" - * property having a value of the section name from which the extending - * section inherits values. - * - * Note that the keys in $section will override any keys of the same - * name in the sections that have been included via "_extends". - * - * Options may include: - * - allow_modifications: whether or not the config object is mutable - * - skip_extends: whether or not to skip processing of parent configuration - * - yaml_decoder: a callback to use to decode the Yaml source - * - * @param string $yaml YAML file to process - * @param mixed $section Section to process - * @param array|boolean $options - */ - public function __construct($yaml, $section = null, $options = false) - { - if (empty($yaml)) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception('Filename is not set'); - } - - $ignoreConstants = $staticIgnoreConstants = self::ignoreConstants(); - $allowModifications = false; - if (is_bool($options)) { - $allowModifications = $options; - } elseif (is_array($options)) { - foreach ($options as $key => $value) { - switch (strtolower($key)) { - case 'allow_modifications': - case 'allowmodifications': - $allowModifications = (bool) $value; - break; - case 'skip_extends': - case 'skipextends': - $this->_skipExtends = (bool) $value; - break; - case 'ignore_constants': - case 'ignoreconstants': - $ignoreConstants = (bool) $value; - break; - case 'yaml_decoder': - case 'yamldecoder': - $this->setYamlDecoder($value); - break; - default: - break; - } - } - } - - // Suppress warnings and errors while loading file - set_error_handler(array($this, '_loadFileErrorHandler')); - $yaml = file_get_contents($yaml); - restore_error_handler(); - - // Check if there was a error while loading file - if ($this->_loadFileErrorStr !== null) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception($this->_loadFileErrorStr); - } - - // Override static value for ignore_constants if provided in $options - self::setIgnoreConstants($ignoreConstants); - - // Parse YAML - $config = call_user_func($this->getYamlDecoder(), $yaml); - - // Reset original static state of ignore_constants - self::setIgnoreConstants($staticIgnoreConstants); - - if (null === $config) { - // decode failed - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception("Error parsing YAML data"); - } - - if (null === $section) { - $dataArray = array(); - foreach ($config as $sectionName => $sectionData) { - $dataArray[$sectionName] = $this->_processExtends($config, $sectionName); - } - parent::__construct($dataArray, $allowModifications); - } elseif (is_array($section)) { - $dataArray = array(); - foreach ($section as $sectionName) { - if (!isset($config[$sectionName])) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception(sprintf( - 'Section "%s" cannot be found', - implode(' ', (array)$section) - )); - } - - $dataArray = array_merge($this->_processExtends($config, $sectionName), $dataArray); - } - parent::__construct($dataArray, $allowModifications); - } else { - if (!isset($config[$section])) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception(sprintf( - 'Section "%s" cannot be found', - implode(' ', (array)$section) - )); - } - - $dataArray = $this->_processExtends($config, $section); - if (!is_array($dataArray)) { - // Section in the yaml data contains just one top level string - $dataArray = array($section => $dataArray); - } - parent::__construct($dataArray, $allowModifications); - } - - $this->_loadedSection = $section; - } - - /** - * Helper function to process each element in the section and handle - * the "_extends" inheritance attribute. - * - * @param array $data Data array to process - * @param string $section Section to process - * @param array $config Configuration which was parsed yet - * @return array - * @throws Zend_Config_Exception When $section cannot be found - */ - protected function _processExtends(array $data, $section, array $config = array()) - { - if (!isset($data[$section])) { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception(sprintf('Section "%s" cannot be found', $section)); - } - - $thisSection = $data[$section]; - - if (is_array($thisSection) && isset($thisSection[self::EXTENDS_NAME])) { - $this->_assertValidExtend($section, $thisSection[self::EXTENDS_NAME]); - - if (!$this->_skipExtends) { - $config = $this->_processExtends($data, $thisSection[self::EXTENDS_NAME], $config); - } - unset($thisSection[self::EXTENDS_NAME]); - } - - $config = $this->_arrayMergeRecursive($config, $thisSection); - - return $config; - } - - /** - * Very dumb YAML parser - * - * Until we have Zend_Yaml... - * - * @param string $yaml YAML source - * @return array Decoded data - */ - public static function decode($yaml) - { - $lines = explode("\n", $yaml); - reset($lines); - return self::_decodeYaml(0, $lines); - } - - /** - * Service function to decode YAML - * - * @param int $currentIndent Current indent level - * @param array $lines YAML lines - * @return array|string - */ - protected static function _decodeYaml($currentIndent, &$lines) - { - $config = array(); - $inIndent = false; - while (list($n, $line) = each($lines)) { - $lineno = $n + 1; - - $line = rtrim(preg_replace("/#.*$/", "", $line)); - if (strlen($line) == 0) { - continue; - } - - $indent = strspn($line, " "); - - // line without the spaces - $line = trim($line); - if (strlen($line) == 0) { - continue; - } - - if ($indent < $currentIndent) { - // this level is done - prev($lines); - return $config; - } - - if (!$inIndent) { - $currentIndent = $indent; - $inIndent = true; - } - - if (preg_match("/(?!-)([\w\-]+):\s*(.*)/", $line, $m)) { - // key: value - if (strlen($m[2])) { - // simple key: value - $value = preg_replace("/#.*$/", "", $m[2]); - $value = self::_parseValue($value); - } else { - // key: and then values on new lines - $value = self::_decodeYaml($currentIndent + 1, $lines); - if (is_array($value) && !count($value)) { - $value = ""; - } - } - $config[$m[1]] = $value; - } elseif ($line[0] == "-") { - // item in the list: - // - FOO - if (strlen($line) > 2) { - $value = substr($line, 2); - - $config[] = self::_parseValue($value); - } else { - $config[] = self::_decodeYaml($currentIndent + 1, $lines); - } - } else { - require_once 'Zend/Config/Exception.php'; - throw new Zend_Config_Exception(sprintf( - 'Error parsing YAML at line %d - unsupported syntax: "%s"', - $lineno, $line - )); - } - } - return $config; - } - - /** - * Parse values - * - * @param string $value - * @return string - */ - protected static function _parseValue($value) - { - $value = trim($value); - - // remove quotes from string. - if ('"' == $value['0']) { - if ('"' == $value[count($value) -1]) { - $value = substr($value, 1, -1); - } - } elseif ('\'' == $value['0'] && '\'' == $value[count($value) -1]) { - $value = strtr($value, array("''" => "'", "'" => '')); - } - - // Check for booleans and constants - if (preg_match('/^(t(rue)?|on|y(es)?)$/i', $value)) { - $value = true; - } elseif (preg_match('/^(f(alse)?|off|n(o)?)$/i', $value)) { - $value = false; - } elseif (strcasecmp($value, 'null') === 0) { - $value = null; - } elseif (!self::$_ignoreConstants) { - // test for constants - $value = self::_replaceConstants($value); - } - - return $value; - } - - /** - * Replace any constants referenced in a string with their values - * - * @param string $value - * @return string - */ - protected static function _replaceConstants($value) - { - foreach (self::_getConstants() as $constant) { - if (strstr($value, $constant)) { - $value = str_replace($constant, constant($constant), $value); - } - } - return $value; - } - - /** - * Get (reverse) sorted list of defined constant names - * - * @return array - */ - protected static function _getConstants() - { - $constants = array_keys(get_defined_constants()); - rsort($constants, SORT_STRING); - return $constants; - } -} diff --git a/library/Zend/Console/Getopt.php b/library/Zend/Console/Getopt.php deleted file mode 100644 index cd63dfff..00000000 --- a/library/Zend/Console/Getopt.php +++ /dev/null @@ -1,970 +0,0 @@ - self::MODE_ZEND, - self::CONFIG_DASHDASH => true, - self::CONFIG_IGNORECASE => false, - self::CONFIG_PARSEALL => true, - ); - - /** - * Stores the command-line arguments for the calling applicaion. - * - * @var array - */ - protected $_argv = array(); - - /** - * Stores the name of the calling applicaion. - * - * @var string - */ - protected $_progname = ''; - - /** - * Stores the list of legal options for this application. - * - * @var array - */ - protected $_rules = array(); - - /** - * Stores alternate spellings of legal options. - * - * @var array - */ - protected $_ruleMap = array(); - - /** - * Stores options given by the user in the current invocation - * of the application, as well as parameters given in options. - * - * @var array - */ - protected $_options = array(); - - /** - * Stores the command-line arguments other than options. - * - * @var array - */ - protected $_remainingArgs = array(); - - /** - * State of the options: parsed or not yet parsed? - * - * @var boolean - */ - protected $_parsed = false; - - /** - * The constructor takes one to three parameters. - * - * The first parameter is $rules, which may be a string for - * gnu-style format, or a structured array for Zend-style format. - * - * The second parameter is $argv, and it is optional. If not - * specified, $argv is inferred from the global argv. - * - * The third parameter is an array of configuration parameters - * to control the behavior of this instance of Getopt; it is optional. - * - * @param array $rules - * @param array $argv - * @param array $getoptConfig - * @return void - */ - public function __construct($rules, $argv = null, $getoptConfig = array()) - { - if (!isset($_SERVER['argv'])) { - require_once 'Zend/Console/Getopt/Exception.php'; - if (ini_get('register_argc_argv') == false) { - throw new Zend_Console_Getopt_Exception( - "argv is not available, because ini option 'register_argc_argv' is set Off" - ); - } else { - throw new Zend_Console_Getopt_Exception( - '$_SERVER["argv"] is not set, but Zend_Console_Getopt cannot work without this information.' - ); - } - } - - $this->_progname = $_SERVER['argv'][0]; - $this->setOptions($getoptConfig); - $this->addRules($rules); - if (!is_array($argv)) { - $argv = array_slice($_SERVER['argv'], 1); - } - if (isset($argv)) { - $this->addArguments((array)$argv); - } - } - - /** - * Return the state of the option seen on the command line of the - * current application invocation. This function returns true, or the - * parameter to the option, if any. If the option was not given, - * this function returns null. - * - * The magic __get method works in the context of naming the option - * as a virtual member of this class. - * - * @param string $key - * @return string - */ - public function __get($key) - { - return $this->getOption($key); - } - - /** - * Test whether a given option has been seen. - * - * @param string $key - * @return boolean - */ - public function __isset($key) - { - $this->parse(); - if (isset($this->_ruleMap[$key])) { - $key = $this->_ruleMap[$key]; - return isset($this->_options[$key]); - } - return false; - } - - /** - * Set the value for a given option. - * - * @param string $key - * @param string $value - * @return void - */ - public function __set($key, $value) - { - $this->parse(); - if (isset($this->_ruleMap[$key])) { - $key = $this->_ruleMap[$key]; - $this->_options[$key] = $value; - } - } - - /** - * Return the current set of options and parameters seen as a string. - * - * @return string - */ - public function __toString() - { - return $this->toString(); - } - - /** - * Unset an option. - * - * @param string $key - * @return void - */ - public function __unset($key) - { - $this->parse(); - if (isset($this->_ruleMap[$key])) { - $key = $this->_ruleMap[$key]; - unset($this->_options[$key]); - } - } - - /** - * Define additional command-line arguments. - * These are appended to those defined when the constructor was called. - * - * @param array $argv - * @throws Zend_Console_Getopt_Exception When not given an array as parameter - * @return Zend_Console_Getopt Provides a fluent interface - */ - public function addArguments($argv) - { - if(!is_array($argv)) { - require_once 'Zend/Console/Getopt/Exception.php'; - throw new Zend_Console_Getopt_Exception( - "Parameter #1 to addArguments should be an array"); - } - $this->_argv = array_merge($this->_argv, $argv); - $this->_parsed = false; - return $this; - } - - /** - * Define full set of command-line arguments. - * These replace any currently defined. - * - * @param array $argv - * @throws Zend_Console_Getopt_Exception When not given an array as parameter - * @return Zend_Console_Getopt Provides a fluent interface - */ - public function setArguments($argv) - { - if(!is_array($argv)) { - require_once 'Zend/Console/Getopt/Exception.php'; - throw new Zend_Console_Getopt_Exception( - "Parameter #1 to setArguments should be an array"); - } - $this->_argv = $argv; - $this->_parsed = false; - return $this; - } - - /** - * Define multiple configuration options from an associative array. - * These are not program options, but properties to configure - * the behavior of Zend_Console_Getopt. - * - * @param array $getoptConfig - * @return Zend_Console_Getopt Provides a fluent interface - */ - public function setOptions($getoptConfig) - { - if (isset($getoptConfig)) { - foreach ($getoptConfig as $key => $value) { - $this->setOption($key, $value); - } - } - return $this; - } - - /** - * Define one configuration option as a key/value pair. - * These are not program options, but properties to configure - * the behavior of Zend_Console_Getopt. - * - * @param string $configKey - * @param string $configValue - * @return Zend_Console_Getopt Provides a fluent interface - */ - public function setOption($configKey, $configValue) - { - if ($configKey !== null) { - $this->_getoptConfig[$configKey] = $configValue; - } - return $this; - } - - /** - * Define additional option rules. - * These are appended to the rules defined when the constructor was called. - * - * @param array $rules - * @return Zend_Console_Getopt Provides a fluent interface - */ - public function addRules($rules) - { - $ruleMode = $this->_getoptConfig['ruleMode']; - switch ($this->_getoptConfig['ruleMode']) { - case self::MODE_ZEND: - if (is_array($rules)) { - $this->_addRulesModeZend($rules); - break; - } - // intentional fallthrough - case self::MODE_GNU: - $this->_addRulesModeGnu($rules); - break; - default: - /** - * Call addRulesModeFoo() for ruleMode 'foo'. - * The developer should subclass Getopt and - * provide this method. - */ - $method = '_addRulesMode' . ucfirst($ruleMode); - $this->$method($rules); - } - $this->_parsed = false; - return $this; - } - - /** - * Return the current set of options and parameters seen as a string. - * - * @return string - */ - public function toString() - { - $this->parse(); - $s = array(); - foreach ($this->_options as $flag => $value) { - $s[] = $flag . '=' . ($value === true ? 'true' : $value); - } - return implode(' ', $s); - } - - /** - * Return the current set of options and parameters seen - * as an array of canonical options and parameters. - * - * Clusters have been expanded, and option aliases - * have been mapped to their primary option names. - * - * @return array - */ - public function toArray() - { - $this->parse(); - $s = array(); - foreach ($this->_options as $flag => $value) { - $s[] = $flag; - if ($value !== true) { - $s[] = $value; - } - } - return $s; - } - - /** - * Return the current set of options and parameters seen in Json format. - * - * @return string - */ - public function toJson() - { - $this->parse(); - $j = array(); - foreach ($this->_options as $flag => $value) { - $j['options'][] = array( - 'option' => array( - 'flag' => $flag, - 'parameter' => $value - ) - ); - } - - /** - * @see Zend_Json - */ - require_once 'Zend/Json.php'; - $json = Zend_Json::encode($j); - - return $json; - } - - /** - * Return the current set of options and parameters seen in XML format. - * - * @return string - */ - public function toXml() - { - $this->parse(); - $doc = new DomDocument('1.0', 'utf-8'); - $optionsNode = $doc->createElement('options'); - $doc->appendChild($optionsNode); - foreach ($this->_options as $flag => $value) { - $optionNode = $doc->createElement('option'); - $optionNode->setAttribute('flag', utf8_encode($flag)); - if ($value !== true) { - $optionNode->setAttribute('parameter', utf8_encode($value)); - } - $optionsNode->appendChild($optionNode); - } - $xml = $doc->saveXML(); - return $xml; - } - - /** - * Return a list of options that have been seen in the current argv. - * - * @return array - */ - public function getOptions() - { - $this->parse(); - return array_keys($this->_options); - } - - /** - * Return the state of the option seen on the command line of the - * current application invocation. - * - * This function returns true, or the parameter value to the option, if any. - * If the option was not given, this function returns false. - * - * @param string $flag - * @return mixed - */ - public function getOption($flag) - { - $this->parse(); - if ($this->_getoptConfig[self::CONFIG_IGNORECASE]) { - $flag = strtolower($flag); - } - if (isset($this->_ruleMap[$flag])) { - $flag = $this->_ruleMap[$flag]; - if (isset($this->_options[$flag])) { - return $this->_options[$flag]; - } - } - return null; - } - - /** - * Return the arguments from the command-line following all options found. - * - * @return array - */ - public function getRemainingArgs() - { - $this->parse(); - return $this->_remainingArgs; - } - - /** - * Return a useful option reference, formatted for display in an - * error message. - * - * Note that this usage information is provided in most Exceptions - * generated by this class. - * - * @return string - */ - public function getUsageMessage() - { - $usage = "Usage: {$this->_progname} [ options ]\n"; - $maxLen = 20; - $lines = array(); - foreach ($this->_rules as $rule) { - $flags = array(); - if (is_array($rule['alias'])) { - foreach ($rule['alias'] as $flag) { - $flags[] = (strlen($flag) == 1 ? '-' : '--') . $flag; - } - } - $linepart['name'] = implode('|', $flags); - if (isset($rule['param']) && $rule['param'] != 'none') { - $linepart['name'] .= ' '; - switch ($rule['param']) { - case 'optional': - $linepart['name'] .= "[ <{$rule['paramType']}> ]"; - break; - case 'required': - $linepart['name'] .= "<{$rule['paramType']}>"; - break; - } - } - if (strlen($linepart['name']) > $maxLen) { - $maxLen = strlen($linepart['name']); - } - $linepart['help'] = ''; - if (isset($rule['help'])) { - $linepart['help'] .= $rule['help']; - } - $lines[] = $linepart; - } - foreach ($lines as $linepart) { - $usage .= sprintf("%s %s\n", - str_pad($linepart['name'], $maxLen), - $linepart['help']); - } - return $usage; - } - - /** - * Define aliases for options. - * - * The parameter $aliasMap is an associative array - * mapping option name (short or long) to an alias. - * - * @param array $aliasMap - * @throws Zend_Console_Getopt_Exception - * @return Zend_Console_Getopt Provides a fluent interface - */ - public function setAliases($aliasMap) - { - foreach ($aliasMap as $flag => $alias) - { - if ($this->_getoptConfig[self::CONFIG_IGNORECASE]) { - $flag = strtolower($flag); - $alias = strtolower($alias); - } - if (!isset($this->_ruleMap[$flag])) { - continue; - } - $flag = $this->_ruleMap[$flag]; - if (isset($this->_rules[$alias]) || isset($this->_ruleMap[$alias])) { - $o = (strlen($alias) == 1 ? '-' : '--') . $alias; - require_once 'Zend/Console/Getopt/Exception.php'; - throw new Zend_Console_Getopt_Exception( - "Option \"$o\" is being defined more than once."); - } - $this->_rules[$flag]['alias'][] = $alias; - $this->_ruleMap[$alias] = $flag; - } - return $this; - } - - /** - * Define help messages for options. - * - * The parameter $help_map is an associative array - * mapping option name (short or long) to the help string. - * - * @param array $helpMap - * @return Zend_Console_Getopt Provides a fluent interface - */ - public function setHelp($helpMap) - { - foreach ($helpMap as $flag => $help) - { - if (!isset($this->_ruleMap[$flag])) { - continue; - } - $flag = $this->_ruleMap[$flag]; - $this->_rules[$flag]['help'] = $help; - } - return $this; - } - - /** - * Parse command-line arguments and find both long and short - * options. - * - * Also find option parameters, and remaining arguments after - * all options have been parsed. - * - * @return Zend_Console_Getopt|null Provides a fluent interface - */ - public function parse() - { - if ($this->_parsed === true) { - return; - } - $argv = $this->_argv; - $this->_options = array(); - $this->_remainingArgs = array(); - while (count($argv) > 0) { - if ($argv[0] == '--') { - array_shift($argv); - if ($this->_getoptConfig[self::CONFIG_DASHDASH]) { - $this->_remainingArgs = array_merge($this->_remainingArgs, $argv); - break; - } - } - if (substr($argv[0], 0, 2) == '--') { - $this->_parseLongOption($argv); - } else if (substr($argv[0], 0, 1) == '-' && ('-' != $argv[0] || count($argv) >1)) { - $this->_parseShortOptionCluster($argv); - } else if($this->_getoptConfig[self::CONFIG_PARSEALL]) { - $this->_remainingArgs[] = array_shift($argv); - } else { - /* - * We should put all other arguments in _remainingArgs and stop parsing - * since CONFIG_PARSEALL is false. - */ - $this->_remainingArgs = array_merge($this->_remainingArgs, $argv); - break; - } - } - $this->_parsed = true; - return $this; - } - - /** - * Parse command-line arguments for a single long option. - * A long option is preceded by a double '--' character. - * Long options may not be clustered. - * - * @param mixed &$argv - * @return void - */ - protected function _parseLongOption(&$argv) - { - $optionWithParam = ltrim(array_shift($argv), '-'); - $l = explode('=', $optionWithParam, 2); - $flag = array_shift($l); - $param = array_shift($l); - if (isset($param)) { - array_unshift($argv, $param); - } - $this->_parseSingleOption($flag, $argv); - } - - /** - * Parse command-line arguments for short options. - * Short options are those preceded by a single '-' character. - * Short options may be clustered. - * - * @param mixed &$argv - * @return void - */ - protected function _parseShortOptionCluster(&$argv) - { - $flagCluster = ltrim(array_shift($argv), '-'); - foreach (str_split($flagCluster) as $flag) { - $this->_parseSingleOption($flag, $argv); - } - } - - /** - * Parse command-line arguments for a single option. - * - * @param string $flag - * @param mixed $argv - * @throws Zend_Console_Getopt_Exception - * @return void - */ - protected function _parseSingleOption($flag, &$argv) - { - if ($this->_getoptConfig[self::CONFIG_IGNORECASE]) { - $flag = strtolower($flag); - } - if (!isset($this->_ruleMap[$flag])) { - require_once 'Zend/Console/Getopt/Exception.php'; - throw new Zend_Console_Getopt_Exception( - "Option \"$flag\" is not recognized.", - $this->getUsageMessage()); - } - $realFlag = $this->_ruleMap[$flag]; - switch ($this->_rules[$realFlag]['param']) { - case 'required': - if (count($argv) > 0) { - $param = array_shift($argv); - $this->_checkParameterType($realFlag, $param); - } else { - require_once 'Zend/Console/Getopt/Exception.php'; - throw new Zend_Console_Getopt_Exception( - "Option \"$flag\" requires a parameter.", - $this->getUsageMessage()); - } - break; - case 'optional': - if (count($argv) > 0 && substr($argv[0], 0, 1) != '-') { - $param = array_shift($argv); - $this->_checkParameterType($realFlag, $param); - } else { - $param = true; - } - break; - default: - $param = true; - } - $this->_options[$realFlag] = $param; - } - - /** - * Return true if the parameter is in a valid format for - * the option $flag. - * Throw an exception in most other cases. - * - * @param string $flag - * @param string $param - * @throws Zend_Console_Getopt_Exception - * @return bool - */ - protected function _checkParameterType($flag, $param) - { - $type = 'string'; - if (isset($this->_rules[$flag]['paramType'])) { - $type = $this->_rules[$flag]['paramType']; - } - switch ($type) { - case 'word': - if (preg_match('/\W/', $param)) { - require_once 'Zend/Console/Getopt/Exception.php'; - throw new Zend_Console_Getopt_Exception( - "Option \"$flag\" requires a single-word parameter, but was given \"$param\".", - $this->getUsageMessage()); - } - break; - case 'integer': - if (preg_match('/\D/', $param)) { - require_once 'Zend/Console/Getopt/Exception.php'; - throw new Zend_Console_Getopt_Exception( - "Option \"$flag\" requires an integer parameter, but was given \"$param\".", - $this->getUsageMessage()); - } - break; - case 'string': - default: - break; - } - return true; - } - - /** - * Define legal options using the gnu-style format. - * - * @param string $rules - * @return void - */ - protected function _addRulesModeGnu($rules) - { - $ruleArray = array(); - - /** - * Options may be single alphanumeric characters. - * Options may have a ':' which indicates a required string parameter. - * No long options or option aliases are supported in GNU style. - */ - preg_match_all('/([a-zA-Z0-9]:?)/', $rules, $ruleArray); - foreach ($ruleArray[1] as $rule) { - $r = array(); - $flag = substr($rule, 0, 1); - if ($this->_getoptConfig[self::CONFIG_IGNORECASE]) { - $flag = strtolower($flag); - } - $r['alias'][] = $flag; - if (substr($rule, 1, 1) == ':') { - $r['param'] = 'required'; - $r['paramType'] = 'string'; - } else { - $r['param'] = 'none'; - } - $this->_rules[$flag] = $r; - $this->_ruleMap[$flag] = $flag; - } - } - - /** - * Define legal options using the Zend-style format. - * - * @param array $rules - * @throws Zend_Console_Getopt_Exception - * @return void - */ - protected function _addRulesModeZend($rules) - { - foreach ($rules as $ruleCode => $helpMessage) - { - // this may have to translate the long parm type if there - // are any complaints that =string will not work (even though that use - // case is not documented) - if (in_array(substr($ruleCode, -2, 1), array('-', '='))) { - $flagList = substr($ruleCode, 0, -2); - $delimiter = substr($ruleCode, -2, 1); - $paramType = substr($ruleCode, -1); - } else { - $flagList = $ruleCode; - $delimiter = $paramType = null; - } - if ($this->_getoptConfig[self::CONFIG_IGNORECASE]) { - $flagList = strtolower($flagList); - } - $flags = explode('|', $flagList); - $rule = array(); - $mainFlag = $flags[0]; - foreach ($flags as $flag) { - if (empty($flag)) { - require_once 'Zend/Console/Getopt/Exception.php'; - throw new Zend_Console_Getopt_Exception( - "Blank flag not allowed in rule \"$ruleCode\"."); - } - if (strlen($flag) == 1) { - if (isset($this->_ruleMap[$flag])) { - require_once 'Zend/Console/Getopt/Exception.php'; - throw new Zend_Console_Getopt_Exception( - "Option \"-$flag\" is being defined more than once."); - } - $this->_ruleMap[$flag] = $mainFlag; - $rule['alias'][] = $flag; - } else { - if (isset($this->_rules[$flag]) || isset($this->_ruleMap[$flag])) { - require_once 'Zend/Console/Getopt/Exception.php'; - throw new Zend_Console_Getopt_Exception( - "Option \"--$flag\" is being defined more than once."); - } - $this->_ruleMap[$flag] = $mainFlag; - $rule['alias'][] = $flag; - } - } - if (isset($delimiter)) { - switch ($delimiter) { - case self::PARAM_REQUIRED: - $rule['param'] = 'required'; - break; - case self::PARAM_OPTIONAL: - default: - $rule['param'] = 'optional'; - } - switch (substr($paramType, 0, 1)) { - case self::TYPE_WORD: - $rule['paramType'] = 'word'; - break; - case self::TYPE_INTEGER: - $rule['paramType'] = 'integer'; - break; - case self::TYPE_STRING: - default: - $rule['paramType'] = 'string'; - } - } else { - $rule['param'] = 'none'; - } - $rule['help'] = $helpMessage; - $this->_rules[$mainFlag] = $rule; - } - } - -} diff --git a/library/Zend/Console/Getopt/Exception.php b/library/Zend/Console/Getopt/Exception.php deleted file mode 100644 index 5d07de7a..00000000 --- a/library/Zend/Console/Getopt/Exception.php +++ /dev/null @@ -1,66 +0,0 @@ -usage = $usage; - parent::__construct($message); - } - - /** - * Returns the usage - * - * @return string - */ - public function getUsageMessage() - { - return $this->usage; - } -} diff --git a/library/Zend/Controller/Action.php b/library/Zend/Controller/Action.php deleted file mode 100644 index 5da5226e..00000000 --- a/library/Zend/Controller/Action.php +++ /dev/null @@ -1,798 +0,0 @@ -setRequest($request) - ->setResponse($response) - ->_setInvokeArgs($invokeArgs); - $this->_helper = new Zend_Controller_Action_HelperBroker($this); - $this->init(); - } - - /** - * Initialize object - * - * Called from {@link __construct()} as final step of object instantiation. - * - * @return void - */ - public function init() - { - } - - /** - * Initialize View object - * - * Initializes {@link $view} if not otherwise a Zend_View_Interface. - * - * If {@link $view} is not otherwise set, instantiates a new Zend_View - * object, using the 'views' subdirectory at the same level as the - * controller directory for the current module as the base directory. - * It uses this to set the following: - * - script path = views/scripts/ - * - helper path = views/helpers/ - * - filter path = views/filters/ - * - * @return Zend_View_Interface - * @throws Zend_Controller_Exception if base view directory does not exist - */ - public function initView() - { - if (!$this->getInvokeArg('noViewRenderer') && $this->_helper->hasHelper('viewRenderer')) { - return $this->view; - } - - require_once 'Zend/View/Interface.php'; - if (isset($this->view) && ($this->view instanceof Zend_View_Interface)) { - return $this->view; - } - - $request = $this->getRequest(); - $module = $request->getModuleName(); - $dirs = $this->getFrontController()->getControllerDirectory(); - if (empty($module) || !isset($dirs[$module])) { - $module = $this->getFrontController()->getDispatcher()->getDefaultModule(); - } - $baseDir = dirname($dirs[$module]) . DIRECTORY_SEPARATOR . 'views'; - if (!file_exists($baseDir) || !is_dir($baseDir)) { - require_once 'Zend/Controller/Exception.php'; - throw new Zend_Controller_Exception('Missing base view directory ("' . $baseDir . '")'); - } - - require_once 'Zend/View.php'; - $this->view = new Zend_View(array('basePath' => $baseDir)); - - return $this->view; - } - - /** - * Render a view - * - * Renders a view. By default, views are found in the view script path as - * /.phtml. You may change the script suffix by - * resetting {@link $viewSuffix}. You may omit the controller directory - * prefix by specifying boolean true for $noController. - * - * By default, the rendered contents are appended to the response. You may - * specify the named body content segment to set by specifying a $name. - * - * @see Zend_Controller_Response_Abstract::appendBody() - * @param string|null $action Defaults to action registered in request object - * @param string|null $name Response object named path segment to use; defaults to null - * @param bool $noController Defaults to false; i.e. use controller name as subdir in which to search for view script - * @return void - */ - public function render($action = null, $name = null, $noController = false) - { - if (!$this->getInvokeArg('noViewRenderer') && $this->_helper->hasHelper('viewRenderer')) { - return $this->_helper->viewRenderer->render($action, $name, $noController); - } - - $view = $this->initView(); - $script = $this->getViewScript($action, $noController); - - $this->getResponse()->appendBody( - $view->render($script), - $name - ); - } - - /** - * Render a given view script - * - * Similar to {@link render()}, this method renders a view script. Unlike render(), - * however, it does not autodetermine the view script via {@link getViewScript()}, - * but instead renders the script passed to it. Use this if you know the - * exact view script name and path you wish to use, or if using paths that do not - * conform to the spec defined with getViewScript(). - * - * By default, the rendered contents are appended to the response. You may - * specify the named body content segment to set by specifying a $name. - * - * @param string $script - * @param string $name - * @return void - */ - public function renderScript($script, $name = null) - { - if (!$this->getInvokeArg('noViewRenderer') && $this->_helper->hasHelper('viewRenderer')) { - return $this->_helper->viewRenderer->renderScript($script, $name); - } - - $view = $this->initView(); - $this->getResponse()->appendBody( - $view->render($script), - $name - ); - } - - /** - * Construct view script path - * - * Used by render() to determine the path to the view script. - * - * @param string $action Defaults to action registered in request object - * @param bool $noController Defaults to false; i.e. use controller name as subdir in which to search for view script - * @return string - * @throws Zend_Controller_Exception with bad $action - */ - public function getViewScript($action = null, $noController = null) - { - if (!$this->getInvokeArg('noViewRenderer') && $this->_helper->hasHelper('viewRenderer')) { - $viewRenderer = $this->_helper->getHelper('viewRenderer'); - if (null !== $noController) { - $viewRenderer->setNoController($noController); - } - return $viewRenderer->getViewScript($action); - } - - $request = $this->getRequest(); - if (null === $action) { - $action = $request->getActionName(); - } elseif (!is_string($action)) { - require_once 'Zend/Controller/Exception.php'; - throw new Zend_Controller_Exception('Invalid action specifier for view render'); - } - - if (null === $this->_delimiters) { - $dispatcher = Zend_Controller_Front::getInstance()->getDispatcher(); - $wordDelimiters = $dispatcher->getWordDelimiter(); - $pathDelimiters = $dispatcher->getPathDelimiter(); - $this->_delimiters = array_unique(array_merge($wordDelimiters, (array) $pathDelimiters)); - } - - $action = str_replace($this->_delimiters, '-', $action); - $script = $action . '.' . $this->viewSuffix; - - if (!$noController) { - $controller = $request->getControllerName(); - $controller = str_replace($this->_delimiters, '-', $controller); - $script = $controller . DIRECTORY_SEPARATOR . $script; - } - - return $script; - } - - /** - * Return the Request object - * - * @return Zend_Controller_Request_Abstract - */ - public function getRequest() - { - return $this->_request; - } - - /** - * Set the Request object - * - * @param Zend_Controller_Request_Abstract $request - * @return Zend_Controller_Action - */ - public function setRequest(Zend_Controller_Request_Abstract $request) - { - $this->_request = $request; - return $this; - } - - /** - * Return the Response object - * - * @return Zend_Controller_Response_Abstract - */ - public function getResponse() - { - return $this->_response; - } - - /** - * Set the Response object - * - * @param Zend_Controller_Response_Abstract $response - * @return Zend_Controller_Action - */ - public function setResponse(Zend_Controller_Response_Abstract $response) - { - $this->_response = $response; - return $this; - } - - /** - * Set invocation arguments - * - * @param array $args - * @return Zend_Controller_Action - */ - protected function _setInvokeArgs(array $args = array()) - { - $this->_invokeArgs = $args; - return $this; - } - - /** - * Return the array of constructor arguments (minus the Request object) - * - * @return array - */ - public function getInvokeArgs() - { - return $this->_invokeArgs; - } - - /** - * Return a single invocation argument - * - * @param string $key - * @return mixed - */ - public function getInvokeArg($key) - { - if (isset($this->_invokeArgs[$key])) { - return $this->_invokeArgs[$key]; - } - - return null; - } - - /** - * Get a helper by name - * - * @param string $helperName - * @return Zend_Controller_Action_Helper_Abstract - */ - public function getHelper($helperName) - { - return $this->_helper->{$helperName}; - } - - /** - * Get a clone of a helper by name - * - * @param string $helperName - * @return Zend_Controller_Action_Helper_Abstract - */ - public function getHelperCopy($helperName) - { - return clone $this->_helper->{$helperName}; - } - - /** - * Set the front controller instance - * - * @param Zend_Controller_Front $front - * @return Zend_Controller_Action - */ - public function setFrontController(Zend_Controller_Front $front) - { - $this->_frontController = $front; - return $this; - } - - /** - * Retrieve Front Controller - * - * @return Zend_Controller_Front - */ - public function getFrontController() - { - // Used cache version if found - if (null !== $this->_frontController) { - return $this->_frontController; - } - - // Grab singleton instance, if class has been loaded - if (class_exists('Zend_Controller_Front')) { - $this->_frontController = Zend_Controller_Front::getInstance(); - return $this->_frontController; - } - - // Throw exception in all other cases - require_once 'Zend/Controller/Exception.php'; - throw new Zend_Controller_Exception('Front controller class has not been loaded'); - } - - /** - * Pre-dispatch routines - * - * Called before action method. If using class with - * {@link Zend_Controller_Front}, it may modify the - * {@link $_request Request object} and reset its dispatched flag in order - * to skip processing the current action. - * - * @return void - */ - public function preDispatch() - { - } - - /** - * Post-dispatch routines - * - * Called after action method execution. If using class with - * {@link Zend_Controller_Front}, it may modify the - * {@link $_request Request object} and reset its dispatched flag in order - * to process an additional action. - * - * Common usages for postDispatch() include rendering content in a sitewide - * template, link url correction, setting headers, etc. - * - * @return void - */ - public function postDispatch() - { - } - - /** - * Proxy for undefined methods. Default behavior is to throw an - * exception on undefined methods, however this function can be - * overridden to implement magic (dynamic) actions, or provide run-time - * dispatching. - * - * @param string $methodName - * @param array $args - * @return void - * @throws Zend_Controller_Action_Exception - */ - public function __call($methodName, $args) - { - require_once 'Zend/Controller/Action/Exception.php'; - if ('Action' == substr($methodName, -6)) { - $action = substr($methodName, 0, strlen($methodName) - 6); - throw new Zend_Controller_Action_Exception(sprintf('Action "%s" does not exist and was not trapped in __call()', $action), 404); - } - - throw new Zend_Controller_Action_Exception(sprintf('Method "%s" does not exist and was not trapped in __call()', $methodName), 500); - } - - /** - * Dispatch the requested action - * - * @param string $action Method name of action - * @return void - */ - public function dispatch($action) - { - // Notify helpers of action preDispatch state - $this->_helper->notifyPreDispatch(); - - $this->preDispatch(); - if ($this->getRequest()->isDispatched()) { - if (null === $this->_classMethods) { - $this->_classMethods = get_class_methods($this); - } - - // If pre-dispatch hooks introduced a redirect then stop dispatch - // @see ZF-7496 - if (!($this->getResponse()->isRedirect())) { - // preDispatch() didn't change the action, so we can continue - if ($this->getInvokeArg('useCaseSensitiveActions') || in_array($action, $this->_classMethods)) { - if ($this->getInvokeArg('useCaseSensitiveActions')) { - trigger_error('Using case sensitive actions without word separators is deprecated; please do not rely on this "feature"'); - } - $this->$action(); - } else { - $this->__call($action, array()); - } - } - $this->postDispatch(); - } - - // whats actually important here is that this action controller is - // shutting down, regardless of dispatching; notify the helpers of this - // state - $this->_helper->notifyPostDispatch(); - } - - /** - * Call the action specified in the request object, and return a response - * - * Not used in the Action Controller implementation, but left for usage in - * Page Controller implementations. Dispatches a method based on the - * request. - * - * Returns a Zend_Controller_Response_Abstract object, instantiating one - * prior to execution if none exists in the controller. - * - * {@link preDispatch()} is called prior to the action, - * {@link postDispatch()} is called following it. - * - * @param null|Zend_Controller_Request_Abstract $request Optional request - * object to use - * @param null|Zend_Controller_Response_Abstract $response Optional response - * object to use - * @return Zend_Controller_Response_Abstract - */ - public function run(Zend_Controller_Request_Abstract $request = null, Zend_Controller_Response_Abstract $response = null) - { - if (null !== $request) { - $this->setRequest($request); - } else { - $request = $this->getRequest(); - } - - if (null !== $response) { - $this->setResponse($response); - } - - $action = $request->getActionName(); - if (empty($action)) { - $action = 'index'; - } - $action = $action . 'Action'; - - $request->setDispatched(true); - $this->dispatch($action); - - return $this->getResponse(); - } - - /** - * Gets a parameter from the {@link $_request Request object}. If the - * parameter does not exist, NULL will be returned. - * - * If the parameter does not exist and $default is set, then - * $default will be returned instead of NULL. - * - * @param string $paramName - * @param mixed $default - * @return mixed - */ - protected function _getParam($paramName, $default = null) - { - return $this->getParam($paramName, $default); - } - - /** - * Gets a parameter from the {@link $_request Request object}. If the - * parameter does not exist, NULL will be returned. - * - * If the parameter does not exist and $default is set, then - * $default will be returned instead of NULL. - * - * @param string $paramName - * @param mixed $default - * @return mixed - */ - public function getParam($paramName, $default = null) - { - $value = $this->getRequest()->getParam($paramName); - if ((null === $value || '' === $value) && (null !== $default)) { - $value = $default; - } - - return $value; - } - - /** - * Set a parameter in the {@link $_request Request object}. - * - * @param string $paramName - * @param mixed $value - * @return Zend_Controller_Action - * @deprecated Deprecated as of Zend Framework 1.7. Use - * setParam() instead. - */ - protected function _setParam($paramName, $value) - { - return $this->setParam($paramName, $value); - } - - /** - * Set a parameter in the {@link $_request Request object}. - * - * @param string $paramName - * @param mixed $value - * @return Zend_Controller_Action - */ - public function setParam($paramName, $value) - { - $this->getRequest()->setParam($paramName, $value); - - return $this; - } - - /** - * Determine whether a given parameter exists in the - * {@link $_request Request object}. - * - * @param string $paramName - * @return boolean - * @deprecated Deprecated as of Zend Framework 1.7. Use - * hasParam() instead. - */ - protected function _hasParam($paramName) - { - return $this->hasParam($paramName); - } - - /** - * Determine whether a given parameter exists in the - * {@link $_request Request object}. - * - * @param string $paramName - * @return boolean - */ - public function hasParam($paramName) - { - return null !== $this->getRequest()->getParam($paramName); - } - - /** - * Return all parameters in the {@link $_request Request object} - * as an associative array. - * - * @return array - * @deprecated Deprecated as of Zend Framework 1.7. Use - * getAllParams() instead. - */ - protected function _getAllParams() - { - return $this->getAllParams(); - } - - /** - * Return all parameters in the {@link $_request Request object} - * as an associative array. - * - * @return array - */ - public function getAllParams() - { - return $this->getRequest()->getParams(); - } - - - /** - * Forward to another controller/action. - * - * It is important to supply the unformatted names, i.e. "article" - * rather than "ArticleController". The dispatcher will do the - * appropriate formatting when the request is received. - * - * If only an action name is provided, forwards to that action in this - * controller. - * - * If an action and controller are specified, forwards to that action and - * controller in this module. - * - * Specifying an action, controller, and module is the most specific way to - * forward. - * - * A fourth argument, $params, will be used to set the request parameters. - * If either the controller or module are unnecessary for forwarding, - * simply pass null values for them before specifying the parameters. - * - * @param string $action - * @param string $controller - * @param string $module - * @param array $params - * @return void - * @deprecated Deprecated as of Zend Framework 1.7. Use - * forward() instead. - */ - final protected function _forward($action, $controller = null, $module = null, array $params = null) - { - $this->forward($action, $controller, $module, $params); - } - - /** - * Forward to another controller/action. - * - * It is important to supply the unformatted names, i.e. "article" - * rather than "ArticleController". The dispatcher will do the - * appropriate formatting when the request is received. - * - * If only an action name is provided, forwards to that action in this - * controller. - * - * If an action and controller are specified, forwards to that action and - * controller in this module. - * - * Specifying an action, controller, and module is the most specific way to - * forward. - * - * A fourth argument, $params, will be used to set the request parameters. - * If either the controller or module are unnecessary for forwarding, - * simply pass null values for them before specifying the parameters. - * - * @param string $action - * @param string $controller - * @param string $module - * @param array $params - * @return void - */ - final public function forward($action, $controller = null, $module = null, array $params = null) - { - $request = $this->getRequest(); - - if (null !== $params) { - $request->setParams($params); - } - - if (null !== $controller) { - $request->setControllerName($controller); - - // Module should only be reset if controller has been specified - if (null !== $module) { - $request->setModuleName($module); - } - } - - $request->setActionName($action) - ->setDispatched(false); - } - - /** - * Redirect to another URL - * - * Proxies to {@link Zend_Controller_Action_Helper_Redirector::gotoUrl()}. - * - * @param string $url - * @param array $options Options to be used when redirecting - * @return void - * @deprecated Deprecated as of Zend Framework 1.7. Use - * redirect() instead. - */ - protected function _redirect($url, array $options = array()) - { - $this->redirect($url, $options); - } - - /** - * Redirect to another URL - * - * Proxies to {@link Zend_Controller_Action_Helper_Redirector::gotoUrl()}. - * - * @param string $url - * @param array $options Options to be used when redirecting - * @return void - */ - public function redirect($url, array $options = array()) - { - $this->_helper->redirector->gotoUrl($url, $options); - } -} diff --git a/library/Zend/Controller/Action/Exception.php b/library/Zend/Controller/Action/Exception.php deleted file mode 100644 index 83dda993..00000000 --- a/library/Zend/Controller/Action/Exception.php +++ /dev/null @@ -1,38 +0,0 @@ -_actionController = $actionController; - return $this; - } - - /** - * Retrieve current action controller - * - * @return Zend_Controller_Action - */ - public function getActionController() - { - return $this->_actionController; - } - - /** - * Retrieve front controller instance - * - * @return Zend_Controller_Front - */ - public function getFrontController() - { - return Zend_Controller_Front::getInstance(); - } - - /** - * Hook into action controller initialization - * - * @return void - */ - public function init() - { - } - - /** - * Hook into action controller preDispatch() workflow - * - * @return void - */ - public function preDispatch() - { - } - - /** - * Hook into action controller postDispatch() workflow - * - * @return void - */ - public function postDispatch() - { - } - - /** - * getRequest() - - * - * @return Zend_Controller_Request_Abstract $request - */ - public function getRequest() - { - $controller = $this->getActionController(); - if (null === $controller) { - $controller = $this->getFrontController(); - } - - return $controller->getRequest(); - } - - /** - * getResponse() - - * - * @return Zend_Controller_Response_Abstract $response - */ - public function getResponse() - { - $controller = $this->getActionController(); - if (null === $controller) { - $controller = $this->getFrontController(); - } - - return $controller->getResponse(); - } - - /** - * getName() - * - * @return string - */ - public function getName() - { - $fullClassName = get_class($this); - if (strpos($fullClassName, '_') !== false) { - $helperName = strrchr($fullClassName, '_'); - return ltrim($helperName, '_'); - } elseif (strpos($fullClassName, '\\') !== false) { - $helperName = strrchr($fullClassName, '\\'); - return ltrim($helperName, '\\'); - } else { - return $fullClassName; - } - } -} diff --git a/library/Zend/Controller/Action/Helper/ActionStack.php b/library/Zend/Controller/Action/Helper/ActionStack.php deleted file mode 100644 index 75d02f41..00000000 --- a/library/Zend/Controller/Action/Helper/ActionStack.php +++ /dev/null @@ -1,138 +0,0 @@ -hasPlugin('Zend_Controller_Plugin_ActionStack')) { - /** - * @see Zend_Controller_Plugin_ActionStack - */ - require_once 'Zend/Controller/Plugin/ActionStack.php'; - $this->_actionStack = new Zend_Controller_Plugin_ActionStack(); - $front->registerPlugin($this->_actionStack, 97); - } else { - $this->_actionStack = $front->getPlugin('Zend_Controller_Plugin_ActionStack'); - } - } - - /** - * Push onto the stack - * - * @param Zend_Controller_Request_Abstract $next - * @return Zend_Controller_Action_Helper_ActionStack Provides a fluent interface - */ - public function pushStack(Zend_Controller_Request_Abstract $next) - { - $this->_actionStack->pushStack($next); - return $this; - } - - /** - * Push a new action onto the stack - * - * @param string $action - * @param string $controller - * @param string $module - * @param array $params - * @throws Zend_Controller_Action_Exception - * @return Zend_Controller_Action_Helper_ActionStack - */ - public function actionToStack($action, $controller = null, $module = null, array $params = array()) - { - if ($action instanceof Zend_Controller_Request_Abstract) { - return $this->pushStack($action); - } elseif (!is_string($action)) { - /** - * @see Zend_Controller_Action_Exception - */ - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception('ActionStack requires either a request object or minimally a string action'); - } - - $request = $this->getRequest(); - - if ($request instanceof Zend_Controller_Request_Abstract === false){ - /** - * @see Zend_Controller_Action_Exception - */ - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception('Request object not set yet'); - } - - $controller = (null === $controller) ? $request->getControllerName() : $controller; - $module = (null === $module) ? $request->getModuleName() : $module; - - /** - * @see Zend_Controller_Request_Simple - */ - require_once 'Zend/Controller/Request/Simple.php'; - $newRequest = new Zend_Controller_Request_Simple($action, $controller, $module, $params); - - return $this->pushStack($newRequest); - } - - /** - * Perform helper when called as $this->_helper->actionStack() from an action controller - * - * Proxies to {@link simple()} - * - * @param string $action - * @param string $controller - * @param string $module - * @param array $params - * @return boolean - */ - public function direct($action, $controller = null, $module = null, array $params = array()) - { - return $this->actionToStack($action, $controller, $module, $params); - } -} diff --git a/library/Zend/Controller/Action/Helper/AjaxContext.php b/library/Zend/Controller/Action/Helper/AjaxContext.php deleted file mode 100644 index 83e1e920..00000000 --- a/library/Zend/Controller/Action/Helper/AjaxContext.php +++ /dev/null @@ -1,80 +0,0 @@ -addContext('html', array('suffix' => 'ajax')); - } - - /** - * Initialize AJAX context switching - * - * Checks for XHR requests; if detected, attempts to perform context switch. - * - * @param string $format - * @return void - */ - public function initContext($format = null) - { - $this->_currentContext = null; - - $request = $this->getRequest(); - if (!method_exists($request, 'isXmlHttpRequest') || - !$this->getRequest()->isXmlHttpRequest()) - { - return; - } - - return parent::initContext($format); - } -} diff --git a/library/Zend/Controller/Action/Helper/AutoComplete/Abstract.php b/library/Zend/Controller/Action/Helper/AutoComplete/Abstract.php deleted file mode 100644 index eb3b857b..00000000 --- a/library/Zend/Controller/Action/Helper/AutoComplete/Abstract.php +++ /dev/null @@ -1,149 +0,0 @@ -disableLayout(); - } - - Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer')->setNoRender(true); - - return $this; - } - - /** - * Encode data to JSON - * - * @param mixed $data - * @param bool $keepLayouts - * @throws Zend_Controller_Action_Exception - * @return string - */ - public function encodeJson($data, $keepLayouts = false) - { - if ($this->validateData($data)) { - return Zend_Controller_Action_HelperBroker::getStaticHelper('Json')->encodeJson($data, $keepLayouts); - } - - /** - * @see Zend_Controller_Action_Exception - */ - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception('Invalid data passed for autocompletion'); - } - - /** - * Send autocompletion data - * - * Calls prepareAutoCompletion, populates response body with this - * information, and sends response. - * - * @param mixed $data - * @param bool $keepLayouts - * @return string|void - */ - public function sendAutoCompletion($data, $keepLayouts = false) - { - $data = $this->prepareAutoCompletion($data, $keepLayouts); - - $response = $this->getResponse(); - $response->setBody($data); - - if (!$this->suppressExit) { - $response->sendResponse(); - exit; - } - - return $data; - } - - /** - * Strategy pattern: allow calling helper as broker method - * - * Prepares autocompletion data and, if $sendNow is true, immediately sends - * response. - * - * @param mixed $data - * @param bool $sendNow - * @param bool $keepLayouts - * @return string|void - */ - public function direct($data, $sendNow = true, $keepLayouts = false) - { - if ($sendNow) { - return $this->sendAutoCompletion($data, $keepLayouts); - } - - return $this->prepareAutoCompletion($data, $keepLayouts); - } -} diff --git a/library/Zend/Controller/Action/Helper/AutoCompleteDojo.php b/library/Zend/Controller/Action/Helper/AutoCompleteDojo.php deleted file mode 100644 index e689b012..00000000 --- a/library/Zend/Controller/Action/Helper/AutoCompleteDojo.php +++ /dev/null @@ -1,87 +0,0 @@ - $value) { - $items[] = array('label' => $value, 'name' => $value); - } - $data = new Zend_Dojo_Data('name', $items); - } - - if (!$keepLayouts) { - require_once 'Zend/Controller/Action/HelperBroker.php'; - Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer')->setNoRender(true); - - require_once 'Zend/Layout.php'; - $layout = Zend_Layout::getMvcInstance(); - if ($layout instanceof Zend_Layout) { - $layout->disableLayout(); - } - } - - $response = Zend_Controller_Front::getInstance()->getResponse(); - $response->setHeader('Content-Type', 'application/json'); - - return $data->toJson(); - } -} diff --git a/library/Zend/Controller/Action/Helper/AutoCompleteScriptaculous.php b/library/Zend/Controller/Action/Helper/AutoCompleteScriptaculous.php deleted file mode 100644 index 0243e170..00000000 --- a/library/Zend/Controller/Action/Helper/AutoCompleteScriptaculous.php +++ /dev/null @@ -1,82 +0,0 @@ -validateData($data)) { - /** - * @see Zend_Controller_Action_Exception - */ - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception('Invalid data passed for autocompletion'); - } - - $data = (array) $data; - $data = '
        • ' . implode('
        • ', $data) . '
        '; - - if (!$keepLayouts) { - $this->disableLayouts(); - } - - return $data; - } -} diff --git a/library/Zend/Controller/Action/Helper/Cache.php b/library/Zend/Controller/Action/Helper/Cache.php deleted file mode 100644 index 8199ff7d..00000000 --- a/library/Zend/Controller/Action/Helper/Cache.php +++ /dev/null @@ -1,289 +0,0 @@ -getRequest()->getControllerName(); - $actions = array_unique($actions); - if (!isset($this->_caching[$controller])) { - $this->_caching[$controller] = array(); - } - if (!empty($tags)) { - $tags = array_unique($tags); - if (!isset($this->_tags[$controller])) { - $this->_tags[$controller] = array(); - } - } - foreach ($actions as $action) { - $this->_caching[$controller][] = $action; - if (!empty($tags)) { - $this->_tags[$controller][$action] = array(); - foreach ($tags as $tag) { - $this->_tags[$controller][$action][] = $tag; - } - } - } - if ($extension) { - if (!isset($this->_extensions[$controller])) { - $this->_extensions[$controller] = array(); - } - foreach ($actions as $action) { - $this->_extensions[$controller][$action] = $extension; - } - } - } - - /** - * Remove a specific page cache static file based on its - * relative URL from the application's public directory. - * The file extension is not required here; usually matches - * the original REQUEST_URI that was cached. - * - * @param string $relativeUrl - * @param bool $recursive - * @return mixed - */ - public function removePage($relativeUrl, $recursive = false) - { - $cache = $this->getCache(Zend_Cache_Manager::PAGECACHE); - $encodedCacheId = $this->_encodeCacheId($relativeUrl); - - if ($recursive) { - $backend = $cache->getBackend(); - if (($backend instanceof Zend_Cache_Backend) - && method_exists($backend, 'removeRecursively') - ) { - $result = $backend->removeRecursively($encodedCacheId); - if (is_null($result) ) { - $result = $backend->removeRecursively($relativeUrl); - } - return $result; - } - } - - $result = $cache->remove($encodedCacheId); - if (is_null($result) ) { - $result = $cache->remove($relativeUrl); - } - return $result; - } - - /** - * Remove a specific page cache static file based on its - * relative URL from the application's public directory. - * The file extension is not required here; usually matches - * the original REQUEST_URI that was cached. - * - * @param array $tags - * @return mixed - */ - public function removePagesTagged(array $tags) - { - return $this->getCache(Zend_Cache_Manager::PAGECACHE) - ->clean(Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG, $tags); - } - - /** - * Commence page caching for any cacheable actions - * - * @return void - */ - public function preDispatch() - { - $controller = $this->getRequest()->getControllerName(); - $action = $this->getRequest()->getActionName(); - $stats = ob_get_status(true); - foreach ($stats as $status) { - if ($status['name'] == 'Zend_Cache_Frontend_Page::_flush' - || $status['name'] == 'Zend_Cache_Frontend_Capture::_flush') { - $obStarted = true; - } - } - if (!isset($obStarted) && isset($this->_caching[$controller]) && - in_array($action, $this->_caching[$controller])) { - $reqUri = $this->getRequest()->getRequestUri(); - $tags = array(); - if (isset($this->_tags[$controller][$action]) - && !empty($this->_tags[$controller][$action])) { - $tags = array_unique($this->_tags[$controller][$action]); - } - $extension = null; - if (isset($this->_extensions[$controller][$action])) { - $extension = $this->_extensions[$controller][$action]; - } - $this->getCache(Zend_Cache_Manager::PAGECACHE) - ->start($this->_encodeCacheId($reqUri), $tags, $extension); - } - } - - /** - * Encode a Cache ID as hexadecimal. This is a workaround because Backend ID validation - * is trapped in the Frontend classes. Will try to get this reversed for ZF 2.0 - * because it's a major annoyance to have IDs so restricted! - * - * @return string - * @param string $requestUri - */ - protected function _encodeCacheId($requestUri) - { - return bin2hex($requestUri); - } - - /** - * Set an instance of the Cache Manager for this helper - * - * @param Zend_Cache_Manager $manager - * @return void - */ - public function setManager(Zend_Cache_Manager $manager) - { - $this->_manager = $manager; - return $this; - } - - /** - * Get the Cache Manager instance or instantiate the object if not - * exists. Attempts to load from bootstrap if available. - * - * @return Zend_Cache_Manager - */ - public function getManager() - { - if ($this->_manager !== null) { - return $this->_manager; - } - $front = Zend_Controller_Front::getInstance(); - if ($front->getParam('bootstrap') - && $front->getParam('bootstrap')->getResource('CacheManager')) { - return $front->getParam('bootstrap') - ->getResource('CacheManager'); - } - $this->_manager = new Zend_Cache_Manager; - return $this->_manager; - } - - /** - * Return a list of actions for the current Controller marked for - * caching - * - * @return array - */ - public function getCacheableActions() - { - return $this->_caching; - } - - /** - * Return a list of tags set for all cacheable actions - * - * @return array - */ - public function getCacheableTags() - { - return $this->_tags; - } - - /** - * Proxy non-matched methods back to Zend_Cache_Manager where - * appropriate - * - * @param string $method - * @param array $args - * @return mixed - */ - public function __call($method, $args) - { - if (method_exists($this->getManager(), $method)) { - return call_user_func_array( - array($this->getManager(), $method), $args - ); - } - throw new Zend_Controller_Action_Exception('Method does not exist:' - . $method); - } - -} diff --git a/library/Zend/Controller/Action/Helper/ContextSwitch.php b/library/Zend/Controller/Action/Helper/ContextSwitch.php deleted file mode 100644 index 2940a2b3..00000000 --- a/library/Zend/Controller/Action/Helper/ContextSwitch.php +++ /dev/null @@ -1,1394 +0,0 @@ -setConfig($options); - } elseif (is_array($options)) { - $this->setOptions($options); - } - - if (empty($this->_contexts)) { - $this->addContexts(array( - 'json' => array( - 'suffix' => 'json', - 'headers' => array('Content-Type' => 'application/json'), - 'callbacks' => array( - 'init' => 'initJsonContext', - 'post' => 'postJsonContext' - ) - ), - 'xml' => array( - 'suffix' => 'xml', - 'headers' => array('Content-Type' => 'application/xml'), - ) - )); - } - - $this->init(); - } - - /** - * Initialize at start of action controller - * - * Reset the view script suffix to the original state, or store the - * original state. - * - * @return void - */ - public function init() - { - if (null === $this->_viewSuffixOrig) { - $this->_viewSuffixOrig = $this->_getViewRenderer()->getViewSuffix(); - } else { - $this->_getViewRenderer()->setViewSuffix($this->_viewSuffixOrig); - } - } - - /** - * Configure object from array of options - * - * @param array $options - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function setOptions(array $options) - { - if (isset($options['contexts'])) { - $this->setContexts($options['contexts']); - unset($options['contexts']); - } - - foreach ($options as $key => $value) { - $method = 'set' . ucfirst($key); - if (in_array($method, $this->_unconfigurable)) { - continue; - } - - if (in_array($method, $this->_specialConfig)) { - $method = '_' . $method; - } - - if (method_exists($this, $method)) { - $this->$method($value); - } - } - return $this; - } - - /** - * Set object state from config object - * - * @param Zend_Config $config - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function setConfig(Zend_Config $config) - { - return $this->setOptions($config->toArray()); - } - - /** - * Strategy pattern: return object - * - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function direct() - { - return $this; - } - - /** - * Initialize context detection and switching - * - * @param mixed $format - * @throws Zend_Controller_Action_Exception - * @return void - */ - public function initContext($format = null) - { - $this->_currentContext = null; - - $controller = $this->getActionController(); - $request = $this->getRequest(); - $action = $request->getActionName(); - - // Return if no context switching enabled, or no context switching - // enabled for this action - $contexts = $this->getActionContexts($action); - if (empty($contexts)) { - return; - } - - // Return if no context parameter provided - if (!$context = $request->getParam($this->getContextParam())) { - if ($format === null) { - return; - } - $context = $format; - $format = null; - } - - // Check if context allowed by action controller - if (!$this->hasActionContext($action, $context)) { - return; - } - - // Return if invalid context parameter provided and no format or invalid - // format provided - if (!$this->hasContext($context)) { - if (empty($format) || !$this->hasContext($format)) { - - return; - } - } - - // Use provided format if passed - if (!empty($format) && $this->hasContext($format)) { - $context = $format; - } - - $suffix = $this->getSuffix($context); - - $this->_getViewRenderer()->setViewSuffix($suffix); - - $headers = $this->getHeaders($context); - if (!empty($headers)) { - $response = $this->getResponse(); - foreach ($headers as $header => $content) { - $response->setHeader($header, $content); - } - } - - if ($this->getAutoDisableLayout()) { - /** - * @see Zend_Layout - */ - require_once 'Zend/Layout.php'; - $layout = Zend_Layout::getMvcInstance(); - if (null !== $layout) { - $layout->disableLayout(); - } - } - - if (null !== ($callback = $this->getCallback($context, self::TRIGGER_INIT))) { - if (is_string($callback) && method_exists($this, $callback)) { - $this->$callback(); - } elseif (is_string($callback) && function_exists($callback)) { - $callback(); - } elseif (is_array($callback)) { - call_user_func($callback); - } else { - /** - * @see Zend_Controller_Action_Exception - */ - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception(sprintf('Invalid context callback registered for context "%s"', $context)); - } - } - - $this->_currentContext = $context; - } - - /** - * JSON context extra initialization - * - * Turns off viewRenderer auto-rendering - * - * @return void - */ - public function initJsonContext() - { - if (!$this->getAutoJsonSerialization()) { - return; - } - - $viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer'); - $view = $viewRenderer->view; - if ($view instanceof Zend_View_Interface) { - $viewRenderer->setNoRender(true); - } - } - - /** - * Should JSON contexts auto-serialize? - * - * @param boolean $flag - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function setAutoJsonSerialization($flag) - { - $this->_autoJsonSerialization = (bool) $flag; - return $this; - } - - /** - * Get JSON context auto-serialization flag - * - * @return boolean - */ - public function getAutoJsonSerialization() - { - return $this->_autoJsonSerialization; - } - - /** - * Set suffix from array - * - * @param array $spec - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - protected function _setSuffix(array $spec) - { - foreach ($spec as $context => $suffixInfo) { - if (!is_string($context)) { - $context = null; - } - - if (is_string($suffixInfo)) { - $this->setSuffix($context, $suffixInfo); - continue; - } elseif (is_array($suffixInfo)) { - if (isset($suffixInfo['suffix'])) { - $suffix = $suffixInfo['suffix']; - $prependViewRendererSuffix = true; - - if ((null === $context) && isset($suffixInfo['context'])) { - $context = $suffixInfo['context']; - } - - if (isset($suffixInfo['prependViewRendererSuffix'])) { - $prependViewRendererSuffix = $suffixInfo['prependViewRendererSuffix']; - } - - $this->setSuffix($context, $suffix, $prependViewRendererSuffix); - continue; - } - - $count = count($suffixInfo); - switch (true) { - case (($count < 2) && (null === $context)): - /** - * @see Zend_Controller_Action_Exception - */ - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception('Invalid suffix information provided in config'); - case ($count < 2): - $suffix = array_shift($suffixInfo); - $this->setSuffix($context, $suffix); - break; - case (($count < 3) && (null === $context)): - $context = array_shift($suffixInfo); - $suffix = array_shift($suffixInfo); - $this->setSuffix($context, $suffix); - break; - case (($count == 3) && (null === $context)): - $context = array_shift($suffixInfo); - $suffix = array_shift($suffixInfo); - $prependViewRendererSuffix = array_shift($suffixInfo); - $this->setSuffix($context, $suffix, $prependViewRendererSuffix); - break; - case ($count >= 2): - $suffix = array_shift($suffixInfo); - $prependViewRendererSuffix = array_shift($suffixInfo); - $this->setSuffix($context, $suffix, $prependViewRendererSuffix); - break; - } - } - } - return $this; - } - - /** - * Customize view script suffix to use when switching context. - * - * Passing an empty suffix value to the setters disables the view script - * suffix change. - * - * @param string $context Context type for which to set suffix - * @param string $suffix Suffix to use - * @param boolean $prependViewRendererSuffix Whether or not to prepend the new suffix to the viewrenderer suffix - * @throws Zend_Controller_Action_Exception - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function setSuffix($context, $suffix, $prependViewRendererSuffix = true) - { - if (!isset($this->_contexts[$context])) { - /** - * @see Zend_Controller_Action_Exception - */ - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception(sprintf('Cannot set suffix; invalid context type "%s"', $context)); - } - - if (empty($suffix)) { - $suffix = ''; - } - - if (is_array($suffix)) { - if (isset($suffix['prependViewRendererSuffix'])) { - $prependViewRendererSuffix = $suffix['prependViewRendererSuffix']; - } - if (isset($suffix['suffix'])) { - $suffix = $suffix['suffix']; - } else { - $suffix = ''; - } - } - - $suffix = (string) $suffix; - - if ($prependViewRendererSuffix) { - if (empty($suffix)) { - $suffix = $this->_getViewRenderer()->getViewSuffix(); - } else { - $suffix .= '.' . $this->_getViewRenderer()->getViewSuffix(); - } - } - - $this->_contexts[$context]['suffix'] = $suffix; - return $this; - } - - /** - * Retrieve suffix for given context type - * - * @param string $type Context type - * @throws Zend_Controller_Action_Exception - * @return string - */ - public function getSuffix($type) - { - if (!isset($this->_contexts[$type])) { - /** - * @see Zend_Controller_Action_Exception - */ - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception(sprintf('Cannot retrieve suffix; invalid context type "%s"', $type)); - } - - return $this->_contexts[$type]['suffix']; - } - - /** - * Does the given context exist? - * - * @param string $context - * @param boolean $throwException - * @throws Zend_Controller_Action_Exception if context does not exist and throwException is true - * @return bool - */ - public function hasContext($context, $throwException = false) - { - if (is_string($context)) { - if (isset($this->_contexts[$context])) { - return true; - } - } elseif (is_array($context)) { - $error = false; - foreach ($context as $test) { - if (!isset($this->_contexts[$test])) { - $error = (string) $test; - break; - } - } - if (false === $error) { - return true; - } - $context = $error; - } elseif (true === $context) { - return true; - } - - if ($throwException) { - /** - * @see Zend_Controller_Action_Exception - */ - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception(sprintf('Context "%s" does not exist', $context)); - } - - return false; - } - - /** - * Add header to context - * - * @param string $context - * @param string $header - * @param string $content - * @throws Zend_Controller_Action_Exception - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function addHeader($context, $header, $content) - { - $context = (string) $context; - $this->hasContext($context, true); - - $header = (string) $header; - $content = (string) $content; - - if (isset($this->_contexts[$context]['headers'][$header])) { - /** - * @see Zend_Controller_Action_Exception - */ - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception(sprintf('Cannot add "%s" header to context "%s": already exists', $header, $context)); - } - - $this->_contexts[$context]['headers'][$header] = $content; - return $this; - } - - /** - * Customize response header to use when switching context - * - * Passing an empty header value to the setters disables the response - * header. - * - * @param string $type Context type for which to set suffix - * @param string $header Header to set - * @param string $content Header content - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function setHeader($context, $header, $content) - { - $this->hasContext($context, true); - $context = (string) $context; - $header = (string) $header; - $content = (string) $content; - - $this->_contexts[$context]['headers'][$header] = $content; - return $this; - } - - /** - * Add multiple headers at once for a given context - * - * @param string $context - * @param array $headers - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function addHeaders($context, array $headers) - { - foreach ($headers as $header => $content) { - $this->addHeader($context, $header, $content); - } - - return $this; - } - - /** - * Set headers from context => headers pairs - * - * @param array $options - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - protected function _setHeaders(array $options) - { - foreach ($options as $context => $headers) { - if (!is_array($headers)) { - continue; - } - $this->setHeaders($context, $headers); - } - - return $this; - } - - /** - * Set multiple headers at once for a given context - * - * @param string $context - * @param array $headers - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function setHeaders($context, array $headers) - { - $this->clearHeaders($context); - foreach ($headers as $header => $content) { - $this->setHeader($context, $header, $content); - } - - return $this; - } - - /** - * Retrieve context header - * - * Returns the value of a given header for a given context type - * - * @param string $context - * @param string $header - * @return string|null - */ - public function getHeader($context, $header) - { - $this->hasContext($context, true); - $context = (string) $context; - $header = (string) $header; - if (isset($this->_contexts[$context]['headers'][$header])) { - return $this->_contexts[$context]['headers'][$header]; - } - - return null; - } - - /** - * Retrieve context headers - * - * Returns all headers for a context as key/value pairs - * - * @param string $context - * @return array - */ - public function getHeaders($context) - { - $this->hasContext($context, true); - $context = (string) $context; - return $this->_contexts[$context]['headers']; - } - - /** - * Remove a single header from a context - * - * @param string $context - * @param string $header - * @return boolean - */ - public function removeHeader($context, $header) - { - $this->hasContext($context, true); - $context = (string) $context; - $header = (string) $header; - if (isset($this->_contexts[$context]['headers'][$header])) { - unset($this->_contexts[$context]['headers'][$header]); - return true; - } - - return false; - } - - /** - * Clear all headers for a given context - * - * @param string $context - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function clearHeaders($context) - { - $this->hasContext($context, true); - $context = (string) $context; - $this->_contexts[$context]['headers'] = array(); - return $this; - } - - /** - * Validate trigger and return in normalized form - * - * @param string $trigger - * @throws Zend_Controller_Action_Exception - * @return string - */ - protected function _validateTrigger($trigger) - { - $trigger = strtoupper($trigger); - if ('TRIGGER_' !== substr($trigger, 0, 8)) { - $trigger = 'TRIGGER_' . $trigger; - } - - if (!in_array($trigger, array(self::TRIGGER_INIT, self::TRIGGER_POST))) { - /** - * @see Zend_Controller_Action_Exception - */ - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception(sprintf('Invalid trigger "%s"', $trigger)); - } - - return $trigger; - } - - /** - * Set a callback for a given context and trigger - * - * @param string $context - * @param string $trigger - * @param string|array $callback - * @throws Zend_Controller_Action_Exception - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function setCallback($context, $trigger, $callback) - { - $this->hasContext($context, true); - $trigger = $this->_validateTrigger($trigger); - - if (!is_string($callback)) { - if (!is_array($callback) || (2 != count($callback))) { - /** - * @see Zend_Controller_Action_Exception - */ - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception('Invalid callback specified'); - } - } - - $this->_contexts[$context]['callbacks'][$trigger] = $callback; - return $this; - } - - /** - * Set callbacks from array of context => callbacks pairs - * - * @param array $options - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - protected function _setCallbacks(array $options) - { - foreach ($options as $context => $callbacks) { - if (!is_array($callbacks)) { - continue; - } - - $this->setCallbacks($context, $callbacks); - } - return $this; - } - - /** - * Set callbacks for a given context - * - * Callbacks should be in trigger/callback pairs. - * - * @param string $context - * @param array $callbacks - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function setCallbacks($context, array $callbacks) - { - $this->hasContext($context, true); - $context = (string) $context; - if (!isset($this->_contexts[$context]['callbacks'])) { - $this->_contexts[$context]['callbacks'] = array(); - } - - foreach ($callbacks as $trigger => $callback) { - $this->setCallback($context, $trigger, $callback); - } - return $this; - } - - /** - * Get a single callback for a given context and trigger - * - * @param string $context - * @param string $trigger - * @return string|array|null - */ - public function getCallback($context, $trigger) - { - $this->hasContext($context, true); - $trigger = $this->_validateTrigger($trigger); - if (isset($this->_contexts[$context]['callbacks'][$trigger])) { - return $this->_contexts[$context]['callbacks'][$trigger]; - } - - return null; - } - - /** - * Get all callbacks for a given context - * - * @param string $context - * @return array - */ - public function getCallbacks($context) - { - $this->hasContext($context, true); - return $this->_contexts[$context]['callbacks']; - } - - /** - * Clear a callback for a given context and trigger - * - * @param string $context - * @param string $trigger - * @return boolean - */ - public function removeCallback($context, $trigger) - { - $this->hasContext($context, true); - $trigger = $this->_validateTrigger($trigger); - if (isset($this->_contexts[$context]['callbacks'][$trigger])) { - unset($this->_contexts[$context]['callbacks'][$trigger]); - return true; - } - - return false; - } - - /** - * Clear all callbacks for a given context - * - * @param string $context - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function clearCallbacks($context) - { - $this->hasContext($context, true); - $this->_contexts[$context]['callbacks'] = array(); - return $this; - } - - /** - * Set name of parameter to use when determining context format - * - * @param string $name - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function setContextParam($name) - { - $this->_contextParam = (string) $name; - return $this; - } - - /** - * Return context format request parameter name - * - * @return string - */ - public function getContextParam() - { - return $this->_contextParam; - } - - /** - * Indicate default context to use when no context format provided - * - * @param string $type - * @throws Zend_Controller_Action_Exception - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function setDefaultContext($type) - { - if (!isset($this->_contexts[$type])) { - /** - * @see Zend_Controller_Action_Exception - */ - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception(sprintf('Cannot set default context; invalid context type "%s"', $type)); - } - - $this->_defaultContext = $type; - return $this; - } - - /** - * Return default context - * - * @return string - */ - public function getDefaultContext() - { - return $this->_defaultContext; - } - - /** - * Set flag indicating if layout should be disabled - * - * @param boolean $flag - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function setAutoDisableLayout($flag) - { - $this->_disableLayout = ($flag) ? true : false; - return $this; - } - - /** - * Retrieve auto layout disable flag - * - * @return boolean - */ - public function getAutoDisableLayout() - { - return $this->_disableLayout; - } - - /** - * Add new context - * - * @param string $context Context type - * @param array $spec Context specification - * @throws Zend_Controller_Action_Exception - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function addContext($context, array $spec) - { - if ($this->hasContext($context)) { - /** - * @see Zend_Controller_Action_Exception - */ - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception(sprintf('Cannot add context "%s"; already exists', $context)); - } - $context = (string) $context; - - $this->_contexts[$context] = array(); - - $this->setSuffix($context, (isset($spec['suffix']) ? $spec['suffix'] : '')) - ->setHeaders($context, (isset($spec['headers']) ? $spec['headers'] : array())) - ->setCallbacks($context, (isset($spec['callbacks']) ? $spec['callbacks'] : array())); - return $this; - } - - /** - * Overwrite existing context - * - * @param string $context Context type - * @param array $spec Context specification - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function setContext($context, array $spec) - { - $this->removeContext($context); - return $this->addContext($context, $spec); - } - - /** - * Add multiple contexts - * - * @param array $contexts - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function addContexts(array $contexts) - { - foreach ($contexts as $context => $spec) { - $this->addContext($context, $spec); - } - return $this; - } - - /** - * Set multiple contexts, after first removing all - * - * @param array $contexts - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function setContexts(array $contexts) - { - $this->clearContexts(); - foreach ($contexts as $context => $spec) { - $this->addContext($context, $spec); - } - return $this; - } - - /** - * Retrieve context specification - * - * @param string $context - * @return array|null - */ - public function getContext($context) - { - if ($this->hasContext($context)) { - return $this->_contexts[(string) $context]; - } - return null; - } - - /** - * Retrieve context definitions - * - * @return array - */ - public function getContexts() - { - return $this->_contexts; - } - - /** - * Remove a context - * - * @param string $context - * @return boolean - */ - public function removeContext($context) - { - if ($this->hasContext($context)) { - unset($this->_contexts[(string) $context]); - return true; - } - return false; - } - - /** - * Remove all contexts - * - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function clearContexts() - { - $this->_contexts = array(); - return $this; - } - - /** - * Return current context, if any - * - * @return null|string - */ - public function getCurrentContext() - { - return $this->_currentContext; - } - - /** - * Post dispatch processing - * - * Execute postDispatch callback for current context, if available - * - * @throws Zend_Controller_Action_Exception - * @return void - */ - public function postDispatch() - { - $context = $this->getCurrentContext(); - if (null !== $context) { - if (null !== ($callback = $this->getCallback($context, self::TRIGGER_POST))) { - if (is_string($callback) && method_exists($this, $callback)) { - $this->$callback(); - } elseif (is_string($callback) && function_exists($callback)) { - $callback(); - } elseif (is_array($callback)) { - call_user_func($callback); - } else { - /** - * @see Zend_Controller_Action_Exception - */ - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception(sprintf('Invalid postDispatch context callback registered for context "%s"', $context)); - } - } - } - } - - /** - * JSON post processing - * - * JSON serialize view variables to response body - * - * @return void - */ - public function postJsonContext() - { - if (!$this->getAutoJsonSerialization()) { - return; - } - - $viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer'); - $view = $viewRenderer->view; - if ($view instanceof Zend_View_Interface) { - /** - * @see Zend_Json - */ - if(method_exists($view, 'getVars')) { - require_once 'Zend/Json.php'; - $vars = Zend_Json::encode($view->getVars()); - $this->getResponse()->setBody($vars); - } else { - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception('View does not implement the getVars() method needed to encode the view into JSON'); - } - } - } - - /** - * Add one or more contexts to an action - * - * @param string $action - * @param string|array $context - * @return Zend_Controller_Action_Helper_ContextSwitch|void Provides a fluent interface - */ - public function addActionContext($action, $context) - { - $this->hasContext($context, true); - $controller = $this->getActionController(); - if (null === $controller) { - return; - } - $action = (string) $action; - $contextKey = $this->_contextKey; - - if (!isset($controller->$contextKey)) { - $controller->$contextKey = array(); - } - - if (true === $context) { - $contexts = $this->getContexts(); - $controller->{$contextKey}[$action] = array_keys($contexts); - return $this; - } - - $context = (array) $context; - if (!isset($controller->{$contextKey}[$action])) { - $controller->{$contextKey}[$action] = $context; - } else { - $controller->{$contextKey}[$action] = array_merge( - $controller->{$contextKey}[$action], - $context - ); - } - - return $this; - } - - /** - * Set a context as available for a given controller action - * - * @param string $action - * @param string|array $context - * @return Zend_Controller_Action_Helper_ContextSwitch|void Provides a fluent interface - */ - public function setActionContext($action, $context) - { - $this->hasContext($context, true); - $controller = $this->getActionController(); - if (null === $controller) { - return; - } - $action = (string) $action; - $contextKey = $this->_contextKey; - - if (!isset($controller->$contextKey)) { - $controller->$contextKey = array(); - } - - if (true === $context) { - $contexts = $this->getContexts(); - $controller->{$contextKey}[$action] = array_keys($contexts); - } else { - $controller->{$contextKey}[$action] = (array) $context; - } - - return $this; - } - - /** - * Add multiple action/context pairs at once - * - * @param array $contexts - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function addActionContexts(array $contexts) - { - foreach ($contexts as $action => $context) { - $this->addActionContext($action, $context); - } - return $this; - } - - /** - * Overwrite and set multiple action contexts at once - * - * @param array $contexts - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function setActionContexts(array $contexts) - { - foreach ($contexts as $action => $context) { - $this->setActionContext($action, $context); - } - return $this; - } - - /** - * Does a particular controller action have the given context(s)? - * - * @param string $action - * @param string|array $context - * @throws Zend_Controller_Action_Exception - * @return boolean - */ - public function hasActionContext($action, $context) - { - $this->hasContext($context, true); - $controller = $this->getActionController(); - if (null === $controller) { - return false; - } - $action = (string) $action; - $contextKey = $this->_contextKey; - - if (!isset($controller->{$contextKey})) { - return false; - } - - $allContexts = $controller->{$contextKey}; - - if (!is_array($allContexts)) { - /** - * @see Zend_Controller_Action_Exception - */ - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception("Invalid contexts found for controller"); - } - - if (!isset($allContexts[$action])) { - return false; - } - - if (true === $allContexts[$action]) { - return true; - } - - $contexts = $allContexts[$action]; - - if (!is_array($contexts)) { - /** - * @see Zend_Controller_Action_Exception - */ - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception(sprintf("Invalid contexts found for action '%s'", $action)); - } - - if (is_string($context) && in_array($context, $contexts)) { - return true; - } elseif (is_array($context)) { - $found = true; - foreach ($context as $test) { - if (!in_array($test, $contexts)) { - $found = false; - break; - } - } - return $found; - } - - return false; - } - - /** - * Get contexts for a given action or all actions in the controller - * - * @param string $action - * @return array - */ - public function getActionContexts($action = null) - { - $controller = $this->getActionController(); - if (null === $controller) { - return array(); - } - $contextKey = $this->_contextKey; - - if (!isset($controller->$contextKey)) { - return array(); - } - - if (null !== $action) { - $action = (string) $action; - if (isset($controller->{$contextKey}[$action])) { - return $controller->{$contextKey}[$action]; - } else { - return array(); - } - } - - return $controller->$contextKey; - } - - /** - * Remove one or more contexts for a given controller action - * - * @param string $action - * @param string|array $context - * @return boolean - */ - public function removeActionContext($action, $context) - { - if ($this->hasActionContext($action, $context)) { - $controller = $this->getActionController(); - $contextKey = $this->_contextKey; - $action = (string) $action; - $contexts = $controller->$contextKey; - $actionContexts = $contexts[$action]; - $contexts = (array) $context; - foreach ($contexts as $context) { - $index = array_search($context, $actionContexts); - if (false !== $index) { - unset($controller->{$contextKey}[$action][$index]); - } - } - return true; - } - return false; - } - - /** - * Clear all contexts for a given controller action or all actions - * - * @param string $action - * @return Zend_Controller_Action_Helper_ContextSwitch Provides a fluent interface - */ - public function clearActionContexts($action = null) - { - $controller = $this->getActionController(); - $contextKey = $this->_contextKey; - - if (!isset($controller->$contextKey) || empty($controller->$contextKey)) { - return $this; - } - - if (null === $action) { - $controller->$contextKey = array(); - return $this; - } - - $action = (string) $action; - if (isset($controller->{$contextKey}[$action])) { - unset($controller->{$contextKey}[$action]); - } - - return $this; - } - - /** - * Retrieve ViewRenderer - * - * @return Zend_Controller_Action_Helper_ViewRenderer Provides a fluent interface - */ - protected function _getViewRenderer() - { - if (null === $this->_viewRenderer) { - $this->_viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer'); - } - - return $this->_viewRenderer; - } -} - diff --git a/library/Zend/Controller/Action/Helper/FlashMessenger.php b/library/Zend/Controller/Action/Helper/FlashMessenger.php deleted file mode 100644 index 8ce38075..00000000 --- a/library/Zend/Controller/Action/Helper/FlashMessenger.php +++ /dev/null @@ -1,313 +0,0 @@ -getName()); - foreach (self::$_session as $namespace => $messages) { - self::$_messages[$namespace] = $messages; - unset(self::$_session->{$namespace}); - } - } - } - - /** - * postDispatch() - runs after action is dispatched, in this - * case, it is resetting the namespace in case we have forwarded to a different - * action, Flashmessage will be 'clean' (default namespace) - * - * @return Zend_Controller_Action_Helper_FlashMessenger Provides a fluent interface - */ - public function postDispatch() - { - $this->resetNamespace(); - return $this; - } - - /** - * setNamespace() - change the namespace messages are added to, useful for - * per action controller messaging between requests - * - * @param string $namespace - * @return Zend_Controller_Action_Helper_FlashMessenger Provides a fluent interface - */ - public function setNamespace($namespace = 'default') - { - $this->_namespace = $namespace; - return $this; - } - - /** - * getNamespace() - return the current namepsace - * - * @return string - */ - public function getNamespace() - { - return $this->_namespace; - } - - /** - * resetNamespace() - reset the namespace to the default - * - * @return Zend_Controller_Action_Helper_FlashMessenger Provides a fluent interface - */ - public function resetNamespace() - { - $this->setNamespace(); - return $this; - } - - /** - * addMessage() - Add a message to flash message - * - * @param string $message - * @return Zend_Controller_Action_Helper_FlashMessenger Provides a fluent interface - */ - public function addMessage($message, $namespace = null) - { - if (!is_string($namespace) || $namespace == '') { - $namespace = $this->getNamespace(); - } - - if (self::$_messageAdded === false) { - self::$_session->setExpirationHops(1, null, true); - } - - if (!is_array(self::$_session->{$this->_namespace})) { - self::$_session->{$namespace} = array(); - } - - self::$_session->{$namespace}[] = $message; - self::$_messageAdded = true; - - return $this; - } - - /** - * hasMessages() - Wether a specific namespace has messages - * - * @return boolean - */ - public function hasMessages($namespace = null) - { - if (!is_string($namespace) || $namespace == '') { - $namespace = $this->getNamespace(); - } - - return isset(self::$_messages[$namespace]); - } - - /** - * getMessages() - Get messages from a specific namespace - * - * @return array - */ - public function getMessages($namespace = null) - { - if (!is_string($namespace) || $namespace == '') { - $namespace = $this->getNamespace(); - } - - if ($this->hasMessages($namespace)) { - return self::$_messages[$namespace]; - } - - return array(); - } - - /** - * Clear all messages from the previous request & current namespace - * - * @return boolean True if messages were cleared, false if none existed - */ - public function clearMessages($namespace = null) - { - if (!is_string($namespace) || $namespace == '') { - $namespace = $this->getNamespace(); - } - - if ($this->hasMessages($namespace)) { - unset(self::$_messages[$namespace]); - return true; - } - - return false; - } - - /** - * hasCurrentMessages() - check to see if messages have been added to current - * namespace within this request - * - * @return boolean - */ - public function hasCurrentMessages($namespace = null) - { - if (!is_string($namespace) || $namespace == '') { - $namespace = $this->getNamespace(); - } - - return isset(self::$_session->{$namespace}); - } - - /** - * getCurrentMessages() - get messages that have been added to the current - * namespace within this request - * - * @return array - */ - public function getCurrentMessages($namespace = null) - { - if (!is_string($namespace) || $namespace == '') { - $namespace = $this->getNamespace(); - } - - if ($this->hasCurrentMessages($namespace)) { - return self::$_session->{$namespace}; - } - - return array(); - } - - /** - * clear messages from the current request & current namespace - * - * @return boolean - */ - public function clearCurrentMessages($namespace = null) - { - if (!is_string($namespace) || $namespace == '') { - $namespace = $this->getNamespace(); - } - - if ($this->hasCurrentMessages()) { - unset(self::$_session->{$namespace}); - return true; - } - - return false; - } - - /** - * getIterator() - complete the IteratorAggregate interface, for iterating - * - * @return ArrayObject - */ - public function getIterator($namespace = null) - { - if (!is_string($namespace) || $namespace == '') { - $namespace = $this->getNamespace(); - } - - if ($this->hasMessages($namespace)) { - return new ArrayObject($this->getMessages($namespace)); - } - - return new ArrayObject(); - } - - /** - * count() - Complete the countable interface - * - * @return int - */ - public function count($namespace = null) - { - if (!is_string($namespace) || $namespace == '') { - $namespace = $this->getNamespace(); - } - - if ($this->hasMessages($namespace)) { - return count($this->getMessages($namespace)); - } - - return 0; - } - - /** - * Strategy pattern: proxy to addMessage() - * - * @param string $message - * @return void - */ - public function direct($message, $namespace=NULL) - { - return $this->addMessage($message, $namespace); - } -} diff --git a/library/Zend/Controller/Action/Helper/Json.php b/library/Zend/Controller/Action/Helper/Json.php deleted file mode 100644 index 0615d755..00000000 --- a/library/Zend/Controller/Action/Helper/Json.php +++ /dev/null @@ -1,133 +0,0 @@ -true|false - * if $keepLayouts and parmas for Zend_Json::encode are required - * then, the array can contains a 'keepLayout'=>true|false and/or 'encodeData'=>true|false - * that will not be passed to Zend_Json::encode method but will be passed - * to Zend_View_Helper_Json - * @throws Zend_Controller_Action_Helper_Json - * @return string - */ - public function encodeJson($data, $keepLayouts = false, $encodeData = true) - { - /** - * @see Zend_View_Helper_Json - */ - require_once 'Zend/View/Helper/Json.php'; - $jsonHelper = new Zend_View_Helper_Json(); - $data = $jsonHelper->json($data, $keepLayouts, $encodeData); - - if (!$keepLayouts) { - /** - * @see Zend_Controller_Action_HelperBroker - */ - require_once 'Zend/Controller/Action/HelperBroker.php'; - Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer')->setNoRender(true); - } - - return $data; - } - - /** - * Encode JSON response and immediately send - * - * @param mixed $data - * @param boolean|array $keepLayouts - * @param $encodeData Encode $data as JSON? - * NOTE: if boolean, establish $keepLayouts to true|false - * if array, admit params for Zend_Json::encode as enableJsonExprFinder=>true|false - * if $keepLayouts and parmas for Zend_Json::encode are required - * then, the array can contains a 'keepLayout'=>true|false and/or 'encodeData'=>true|false - * that will not be passed to Zend_Json::encode method but will be passed - * to Zend_View_Helper_Json - * @return string|void - */ - public function sendJson($data, $keepLayouts = false, $encodeData = true) - { - $data = $this->encodeJson($data, $keepLayouts, $encodeData); - $response = $this->getResponse(); - $response->setBody($data); - - if (!$this->suppressExit) { - $response->sendResponse(); - exit; - } - - return $data; - } - - /** - * Strategy pattern: call helper as helper broker method - * - * Allows encoding JSON. If $sendNow is true, immediately sends JSON - * response. - * - * @param mixed $data - * @param boolean $sendNow - * @param boolean $keepLayouts - * @param boolean $encodeData Encode $data as JSON? - * @return string|void - */ - public function direct($data, $sendNow = true, $keepLayouts = false, $encodeData = true) - { - if ($sendNow) { - return $this->sendJson($data, $keepLayouts, $encodeData); - } - return $this->encodeJson($data, $keepLayouts, $encodeData); - } -} diff --git a/library/Zend/Controller/Action/Helper/Redirector.php b/library/Zend/Controller/Action/Helper/Redirector.php deleted file mode 100644 index 0b5a670c..00000000 --- a/library/Zend/Controller/Action/Helper/Redirector.php +++ /dev/null @@ -1,534 +0,0 @@ -_code; - } - - /** - * Validate HTTP status redirect code - * - * @param int $code - * @throws Zend_Controller_Action_Exception on invalid HTTP status code - * @return true - */ - protected function _checkCode($code) - { - $code = (int)$code; - if ((300 > $code) || (307 < $code) || (304 == $code) || (306 == $code)) { - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception('Invalid redirect HTTP status code (' . $code . ')'); - } - - return true; - } - - /** - * Set HTTP status code for {@link _redirect()} behaviour - * - * @param int $code - * @return Zend_Controller_Action_Helper_Redirector Provides a fluent interface - */ - public function setCode($code) - { - $this->_checkCode($code); - $this->_code = $code; - return $this; - } - - /** - * Retrieve flag for whether or not {@link _redirect()} will exit when finished. - * - * @return boolean - */ - public function getExit() - { - return $this->_exit; - } - - /** - * Set exit flag for {@link _redirect()} behaviour - * - * @param boolean $flag - * @return Zend_Controller_Action_Helper_Redirector Provides a fluent interface - */ - public function setExit($flag) - { - $this->_exit = ($flag) ? true : false; - return $this; - } - - /** - * Retrieve flag for whether or not {@link _redirect()} will prepend the - * base URL on relative URLs - * - * @return boolean - */ - public function getPrependBase() - { - return $this->_prependBase; - } - - /** - * Set 'prepend base' flag for {@link _redirect()} behaviour - * - * @param boolean $flag - * @return Zend_Controller_Action_Helper_Redirector Provides a fluent interface - */ - public function setPrependBase($flag) - { - $this->_prependBase = ($flag) ? true : false; - return $this; - } - - /** - * Retrieve flag for whether or not {@link redirectAndExit()} shall close the session before - * exiting. - * - * @return boolean - */ - public function getCloseSessionOnExit() - { - return $this->_closeSessionOnExit; - } - - /** - * Set flag for whether or not {@link redirectAndExit()} shall close the session before exiting. - * - * @param boolean $flag - * @return Zend_Controller_Action_Helper_Redirector Provides a fluent interface - */ - public function setCloseSessionOnExit($flag) - { - $this->_closeSessionOnExit = ($flag) ? true : false; - return $this; - } - - /** - * Return use absolute URI flag - * - * @return boolean - */ - public function getUseAbsoluteUri() - { - return $this->_useAbsoluteUri; - } - - /** - * Set use absolute URI flag - * - * @param boolean $flag - * @return Zend_Controller_Action_Helper_Redirector Provides a fluent interface - */ - public function setUseAbsoluteUri($flag = true) - { - $this->_useAbsoluteUri = ($flag) ? true : false; - return $this; - } - - /** - * Set redirect in response object - * - * @return void - */ - protected function _redirect($url) - { - if ($this->getUseAbsoluteUri() && !preg_match('#^(https?|ftp)://#', $url)) { - $host = (isset($_SERVER['HTTP_HOST'])?$_SERVER['HTTP_HOST']:''); - $proto = (isset($_SERVER['HTTPS'])&&$_SERVER['HTTPS']!=="off") ? 'https' : 'http'; - $port = (isset($_SERVER['SERVER_PORT'])?$_SERVER['SERVER_PORT']:80); - $uri = $proto . '://' . $host; - if ((('http' == $proto) && (80 != $port)) || (('https' == $proto) && (443 != $port))) { - // do not append if HTTP_HOST already contains port - if (strrchr($host, ':') === false) { - $uri .= ':' . $port; - } - } - $url = $uri . '/' . ltrim($url, '/'); - } - $this->_redirectUrl = $url; - $this->getResponse()->setRedirect($url, $this->getCode()); - } - - /** - * Retrieve currently set URL for redirect - * - * @return string - */ - public function getRedirectUrl() - { - return $this->_redirectUrl; - } - - /** - * Determine if the baseUrl should be prepended, and prepend if necessary - * - * @param string $url - * @return string - */ - protected function _prependBase($url) - { - if ($this->getPrependBase()) { - $request = $this->getRequest(); - if ($request instanceof Zend_Controller_Request_Http) { - $base = rtrim($request->getBaseUrl(), '/'); - if (!empty($base) && ('/' != $base)) { - $url = $base . '/' . ltrim($url, '/'); - } else { - $url = '/' . ltrim($url, '/'); - } - } - } - - return $url; - } - - /** - * Set a redirect URL of the form /module/controller/action/params - * - * @param string $action - * @param string $controller - * @param string $module - * @param array $params - * @return void - */ - public function setGotoSimple($action, $controller = null, $module = null, array $params = array()) - { - $dispatcher = $this->getFrontController()->getDispatcher(); - $request = $this->getRequest(); - $curModule = $request->getModuleName(); - $useDefaultController = false; - - if (null === $controller && null !== $module) { - $useDefaultController = true; - } - - if (null === $module) { - $module = $curModule; - } - - if ($module == $dispatcher->getDefaultModule()) { - $module = ''; - } - - if (null === $controller && !$useDefaultController) { - $controller = $request->getControllerName(); - if (empty($controller)) { - $controller = $dispatcher->getDefaultControllerName(); - } - } - - $params[$request->getModuleKey()] = $module; - $params[$request->getControllerKey()] = $controller; - $params[$request->getActionKey()] = $action; - - $router = $this->getFrontController()->getRouter(); - $url = $router->assemble($params, 'default', true); - - $this->_redirect($url); - } - - /** - * Build a URL based on a route - * - * @param array $urlOptions - * @param string $name Route name - * @param boolean $reset - * @param boolean $encode - * @return void - */ - public function setGotoRoute(array $urlOptions = array(), $name = null, $reset = false, $encode = true) - { - $router = $this->getFrontController()->getRouter(); - $url = $router->assemble($urlOptions, $name, $reset, $encode); - - $this->_redirect($url); - } - - /** - * Set a redirect URL string - * - * By default, emits a 302 HTTP status header, prepends base URL as defined - * in request object if url is relative, and halts script execution by - * calling exit(). - * - * $options is an optional associative array that can be used to control - * redirect behaviour. The available option keys are: - * - exit: boolean flag indicating whether or not to halt script execution when done - * - prependBase: boolean flag indicating whether or not to prepend the base URL when a relative URL is provided - * - code: integer HTTP status code to use with redirect. Should be between 300 and 307. - * - * _redirect() sets the Location header in the response object. If you set - * the exit flag to false, you can override this header later in code - * execution. - * - * If the exit flag is true (true by default), _redirect() will write and - * close the current session, if any. - * - * @param string $url - * @param array $options - * @return void - */ - public function setGotoUrl($url, array $options = array()) - { - // prevent header injections - $url = str_replace(array("\n", "\r"), '', $url); - - if (null !== $options) { - if (isset($options['exit'])) { - $this->setExit(($options['exit']) ? true : false); - } - if (isset($options['prependBase'])) { - $this->setPrependBase(($options['prependBase']) ? true : false); - } - if (isset($options['code'])) { - $this->setCode($options['code']); - } - } - - // If relative URL, decide if we should prepend base URL - if (!preg_match('|^[a-z]+://|', $url)) { - $url = $this->_prependBase($url); - } - - $this->_redirect($url); - } - - /** - * Perform a redirect to an action/controller/module with params - * - * @param string $action - * @param string $controller - * @param string $module - * @param array $params - * @return void - */ - public function gotoSimple($action, $controller = null, $module = null, array $params = array()) - { - $this->setGotoSimple($action, $controller, $module, $params); - - if ($this->getExit()) { - $this->redirectAndExit(); - } - } - - /** - * Perform a redirect to an action/controller/module with params, forcing an immdiate exit - * - * @param mixed $action - * @param mixed $controller - * @param mixed $module - * @param array $params - * @return void - */ - public function gotoSimpleAndExit($action, $controller = null, $module = null, array $params = array()) - { - $this->setGotoSimple($action, $controller, $module, $params); - $this->redirectAndExit(); - } - - /** - * Redirect to a route-based URL - * - * Uses route's assemble method tobuild the URL; route is specified by $name; - * default route is used if none provided. - * - * @param array $urlOptions Array of key/value pairs used to assemble URL - * @param string $name - * @param boolean $reset - * @param boolean $encode - * @return void - */ - public function gotoRoute(array $urlOptions = array(), $name = null, $reset = false, $encode = true) - { - $this->setGotoRoute($urlOptions, $name, $reset, $encode); - - if ($this->getExit()) { - $this->redirectAndExit(); - } - } - - /** - * Redirect to a route-based URL, and immediately exit - * - * Uses route's assemble method tobuild the URL; route is specified by $name; - * default route is used if none provided. - * - * @param array $urlOptions Array of key/value pairs used to assemble URL - * @param string $name - * @param boolean $reset - * @return void - */ - public function gotoRouteAndExit(array $urlOptions = array(), $name = null, $reset = false) - { - $this->setGotoRoute($urlOptions, $name, $reset); - $this->redirectAndExit(); - } - - /** - * Perform a redirect to a url - * - * @param string $url - * @param array $options - * @return void - */ - public function gotoUrl($url, array $options = array()) - { - $this->setGotoUrl($url, $options); - - if ($this->getExit()) { - $this->redirectAndExit(); - } - } - - /** - * Set a URL string for a redirect, perform redirect, and immediately exit - * - * @param string $url - * @param array $options - * @return void - */ - public function gotoUrlAndExit($url, array $options = array()) - { - $this->setGotoUrl($url, $options); - $this->redirectAndExit(); - } - - /** - * exit(): Perform exit for redirector - * - * @return void - */ - public function redirectAndExit() - { - if ($this->getCloseSessionOnExit()) { - // Close session, if started - if (class_exists('Zend_Session', false) && Zend_Session::isStarted()) { - Zend_Session::writeClose(); - } elseif (isset($_SESSION)) { - session_write_close(); - } - } - - $this->getResponse()->sendHeaders(); - exit(); - } - - /** - * direct(): Perform helper when called as - * $this->_helper->redirector($action, $controller, $module, $params) - * - * @param string $action - * @param string $controller - * @param string $module - * @param array $params - * @return void - */ - public function direct($action, $controller = null, $module = null, array $params = array()) - { - $this->gotoSimple($action, $controller, $module, $params); - } - - /** - * Overloading - * - * Overloading for old 'goto', 'setGoto', and 'gotoAndExit' methods - * - * @param string $method - * @param array $args - * @return mixed - * @throws Zend_Controller_Action_Exception for invalid methods - */ - public function __call($method, $args) - { - $method = strtolower($method); - if ('goto' == $method) { - return call_user_func_array(array($this, 'gotoSimple'), $args); - } - if ('setgoto' == $method) { - return call_user_func_array(array($this, 'setGotoSimple'), $args); - } - if ('gotoandexit' == $method) { - return call_user_func_array(array($this, 'gotoSimpleAndExit'), $args); - } - - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception(sprintf('Invalid method "%s" called on redirector', $method)); - } -} diff --git a/library/Zend/Controller/Action/Helper/Url.php b/library/Zend/Controller/Action/Helper/Url.php deleted file mode 100644 index 96193ec6..00000000 --- a/library/Zend/Controller/Action/Helper/Url.php +++ /dev/null @@ -1,117 +0,0 @@ -getRequest(); - - if (null === $controller) { - $controller = $request->getControllerName(); - } - - if (null === $module) { - $module = $request->getModuleName(); - } - - $url = $controller . '/' . $action; - if ($module != $this->getFrontController()->getDispatcher()->getDefaultModule()) { - $url = $module . '/' . $url; - } - - if ('' !== ($baseUrl = $this->getFrontController()->getBaseUrl())) { - $url = $baseUrl . '/' . $url; - } - - if (null !== $params) { - $paramPairs = array(); - foreach ($params as $key => $value) { - $paramPairs[] = urlencode($key) . '/' . urlencode($value); - } - $paramString = implode('/', $paramPairs); - $url .= '/' . $paramString; - } - - $url = '/' . ltrim($url, '/'); - - return $url; - } - - /** - * Assembles a URL based on a given route - * - * This method will typically be used for more complex operations, as it - * ties into the route objects registered with the router. - * - * @param array $urlOptions Options passed to the assemble method of the Route object. - * @param mixed $name The name of a Route to use. If null it will use the current Route - * @param boolean $reset - * @param boolean $encode - * @return string Url for the link href attribute. - */ - public function url($urlOptions = array(), $name = null, $reset = false, $encode = true) - { - $router = $this->getFrontController()->getRouter(); - return $router->assemble($urlOptions, $name, $reset, $encode); - } - - /** - * Perform helper when called as $this->_helper->url() from an action controller - * - * Proxies to {@link simple()} - * - * @param string $action - * @param string $controller - * @param string $module - * @param array $params - * @return string - */ - public function direct($action, $controller = null, $module = null, array $params = null) - { - return $this->simple($action, $controller, $module, $params); - } -} diff --git a/library/Zend/Controller/Action/Helper/ViewRenderer.php b/library/Zend/Controller/Action/Helper/ViewRenderer.php deleted file mode 100644 index a8ca52f4..00000000 --- a/library/Zend/Controller/Action/Helper/ViewRenderer.php +++ /dev/null @@ -1,992 +0,0 @@ - - * // In your bootstrap: - * Zend_Controller_Action_HelperBroker::addHelper(new Zend_Controller_Action_Helper_ViewRenderer()); - * - * // In your action controller methods: - * $viewHelper = $this->_helper->getHelper('view'); - * - * // Don't use controller subdirectories - * $viewHelper->setNoController(true); - * - * // Specify a different script to render: - * $this->_helper->viewRenderer('form'); - * - *
        - * - * @uses Zend_Controller_Action_Helper_Abstract - * @package Zend_Controller - * @subpackage Zend_Controller_Action_Helper - * @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com) - * @license http://framework.zend.com/license/new-bsd New BSD License - */ -class Zend_Controller_Action_Helper_ViewRenderer extends Zend_Controller_Action_Helper_Abstract -{ - /** - * @var Zend_View_Interface - */ - public $view; - - /** - * Word delimiters - * @var array - */ - protected $_delimiters; - - /** - * @var Zend_Filter_Inflector - */ - protected $_inflector; - - /** - * Inflector target - * @var string - */ - protected $_inflectorTarget = ''; - - /** - * Current module directory - * @var string - */ - protected $_moduleDir = ''; - - /** - * Whether or not to autorender using controller name as subdirectory; - * global setting (not reset at next invocation) - * @var boolean - */ - protected $_neverController = false; - - /** - * Whether or not to autorender postDispatch; global setting (not reset at - * next invocation) - * @var boolean - */ - protected $_neverRender = false; - - /** - * Whether or not to use a controller name as a subdirectory when rendering - * @var boolean - */ - protected $_noController = false; - - /** - * Whether or not to autorender postDispatch; per controller/action setting (reset - * at next invocation) - * @var boolean - */ - protected $_noRender = false; - - /** - * Characters representing path delimiters in the controller - * @var string|array - */ - protected $_pathDelimiters; - - /** - * Which named segment of the response to utilize - * @var string - */ - protected $_responseSegment = null; - - /** - * Which action view script to render - * @var string - */ - protected $_scriptAction = null; - - /** - * View object basePath - * @var string - */ - protected $_viewBasePathSpec = ':moduleDir/views'; - - /** - * View script path specification string - * @var string - */ - protected $_viewScriptPathSpec = ':controller/:action.:suffix'; - - /** - * View script path specification string, minus controller segment - * @var string - */ - protected $_viewScriptPathNoControllerSpec = ':action.:suffix'; - - /** - * View script suffix - * @var string - */ - protected $_viewSuffix = 'phtml'; - - /** - * Constructor - * - * Optionally set view object and options. - * - * @param Zend_View_Interface $view - * @param array $options - * @return void - */ - public function __construct(Zend_View_Interface $view = null, array $options = array()) - { - if (null !== $view) { - $this->setView($view); - } - - if (!empty($options)) { - $this->_setOptions($options); - } - } - - /** - * Clone - also make sure the view is cloned. - * - * @return void - */ - public function __clone() - { - if (isset($this->view) && $this->view instanceof Zend_View_Interface) { - $this->view = clone $this->view; - - } - } - - /** - * Set the view object - * - * @param Zend_View_Interface $view - * @return Zend_Controller_Action_Helper_ViewRenderer Provides a fluent interface - */ - public function setView(Zend_View_Interface $view) - { - $this->view = $view; - return $this; - } - - /** - * Get current module name - * - * @return string - */ - public function getModule() - { - $request = $this->getRequest(); - $module = $request->getModuleName(); - if (null === $module) { - $module = $this->getFrontController()->getDispatcher()->getDefaultModule(); - } - - return $module; - } - - /** - * Get module directory - * - * @throws Zend_Controller_Action_Exception - * @return string - */ - public function getModuleDirectory() - { - $module = $this->getModule(); - $moduleDir = $this->getFrontController()->getControllerDirectory($module); - if ((null === $moduleDir) || is_array($moduleDir)) { - /** - * @see Zend_Controller_Action_Exception - */ - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception('ViewRenderer cannot locate module directory for module "' . $module . '"'); - } - $this->_moduleDir = dirname($moduleDir); - return $this->_moduleDir; - } - - /** - * Get inflector - * - * @return Zend_Filter_Inflector - */ - public function getInflector() - { - if (null === $this->_inflector) { - /** - * @see Zend_Filter_Inflector - */ - require_once 'Zend/Filter/Inflector.php'; - /** - * @see Zend_Filter_PregReplace - */ - require_once 'Zend/Filter/PregReplace.php'; - /** - * @see Zend_Filter_Word_UnderscoreToSeparator - */ - require_once 'Zend/Filter/Word/UnderscoreToSeparator.php'; - $this->_inflector = new Zend_Filter_Inflector(); - $this->_inflector->setStaticRuleReference('moduleDir', $this->_moduleDir) // moduleDir must be specified before the less specific 'module' - ->addRules(array( - ':module' => array('Word_CamelCaseToDash', 'StringToLower'), - ':controller' => array('Word_CamelCaseToDash', new Zend_Filter_Word_UnderscoreToSeparator('/'), 'StringToLower', new Zend_Filter_PregReplace('/\./', '-')), - ':action' => array('Word_CamelCaseToDash', new Zend_Filter_PregReplace('#[^a-z0-9' . preg_quote('/', '#') . ']+#i', '-'), 'StringToLower'), - )) - ->setStaticRuleReference('suffix', $this->_viewSuffix) - ->setTargetReference($this->_inflectorTarget); - } - - // Ensure that module directory is current - $this->getModuleDirectory(); - - return $this->_inflector; - } - - /** - * Set inflector - * - * @param Zend_Filter_Inflector $inflector - * @param boolean $reference Whether the moduleDir, target, and suffix should be set as references to ViewRenderer properties - * @return Zend_Controller_Action_Helper_ViewRenderer Provides a fluent interface - */ - public function setInflector(Zend_Filter_Inflector $inflector, $reference = false) - { - $this->_inflector = $inflector; - if ($reference) { - $this->_inflector->setStaticRuleReference('suffix', $this->_viewSuffix) - ->setStaticRuleReference('moduleDir', $this->_moduleDir) - ->setTargetReference($this->_inflectorTarget); - } - return $this; - } - - /** - * Set inflector target - * - * @param string $target - * @return void - */ - protected function _setInflectorTarget($target) - { - $this->_inflectorTarget = (string) $target; - } - - /** - * Set internal module directory representation - * - * @param string $dir - * @return void - */ - protected function _setModuleDir($dir) - { - $this->_moduleDir = (string) $dir; - } - - /** - * Get internal module directory representation - * - * @return string - */ - protected function _getModuleDir() - { - return $this->_moduleDir; - } - - /** - * Generate a class prefix for helper and filter classes - * - * @return string - */ - protected function _generateDefaultPrefix() - { - $default = 'Zend_View'; - if (null === $this->_actionController) { - return $default; - } - - $class = get_class($this->_actionController); - - if (!strstr($class, '_')) { - return $default; - } - - $module = $this->getModule(); - if ('default' == $module) { - return $default; - } - - $prefix = substr($class, 0, strpos($class, '_')) . '_View'; - - return $prefix; - } - - /** - * Retrieve base path based on location of current action controller - * - * @return string - */ - protected function _getBasePath() - { - if (null === $this->_actionController) { - return './views'; - } - - $inflector = $this->getInflector(); - $this->_setInflectorTarget($this->getViewBasePathSpec()); - - $dispatcher = $this->getFrontController()->getDispatcher(); - $request = $this->getRequest(); - - $parts = array( - 'module' => (($moduleName = $request->getModuleName()) != '') ? $dispatcher->formatModuleName($moduleName) : $moduleName, - 'controller' => $request->getControllerName(), - 'action' => $dispatcher->formatActionName($request->getActionName()) - ); - - $path = $inflector->filter($parts); - return $path; - } - - /** - * Set options - * - * @param array $options - * @return Zend_Controller_Action_Helper_ViewRenderer Provides a fluent interface - */ - protected function _setOptions(array $options) - { - foreach ($options as $key => $value) - { - switch ($key) { - case 'neverRender': - case 'neverController': - case 'noController': - case 'noRender': - $property = '_' . $key; - $this->{$property} = ($value) ? true : false; - break; - case 'responseSegment': - case 'scriptAction': - case 'viewBasePathSpec': - case 'viewScriptPathSpec': - case 'viewScriptPathNoControllerSpec': - case 'viewSuffix': - $property = '_' . $key; - $this->{$property} = (string) $value; - break; - default: - break; - } - } - - return $this; - } - - /** - * Initialize the view object - * - * $options may contain the following keys: - * - neverRender - flag dis/enabling postDispatch() autorender (affects all subsequent calls) - * - noController - flag indicating whether or not to look for view scripts in subdirectories named after the controller - * - noRender - flag indicating whether or not to autorender postDispatch() - * - responseSegment - which named response segment to render a view script to - * - scriptAction - what action script to render - * - viewBasePathSpec - specification to use for determining view base path - * - viewScriptPathSpec - specification to use for determining view script paths - * - viewScriptPathNoControllerSpec - specification to use for determining view script paths when noController flag is set - * - viewSuffix - what view script filename suffix to use - * - * @param string $path - * @param string $prefix - * @param array $options - * @throws Zend_Controller_Action_Exception - * @return void - */ - public function initView($path = null, $prefix = null, array $options = array()) - { - if (null === $this->view) { - $this->setView(new Zend_View()); - } - - // Reset some flags every time - $options['noController'] = (isset($options['noController'])) ? $options['noController'] : false; - $options['noRender'] = (isset($options['noRender'])) ? $options['noRender'] : false; - $this->_scriptAction = null; - $this->_responseSegment = null; - - // Set options first; may be used to determine other initializations - $this->_setOptions($options); - - // Get base view path - if (empty($path)) { - $path = $this->_getBasePath(); - if (empty($path)) { - /** - * @see Zend_Controller_Action_Exception - */ - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception('ViewRenderer initialization failed: retrieved view base path is empty'); - } - } - - if (null === $prefix) { - $prefix = $this->_generateDefaultPrefix(); - } - - // Determine if this path has already been registered - $currentPaths = $this->view->getScriptPaths(); - $path = str_replace(array('/', '\\'), '/', $path); - $pathExists = false; - foreach ($currentPaths as $tmpPath) { - $tmpPath = str_replace(array('/', '\\'), '/', $tmpPath); - if (strstr($tmpPath, $path)) { - $pathExists = true; - break; - } - } - if (!$pathExists) { - $this->view->addBasePath($path, $prefix); - } - - // Register view with action controller (unless already registered) - if ((null !== $this->_actionController) && (null === $this->_actionController->view)) { - $this->_actionController->view = $this->view; - $this->_actionController->viewSuffix = $this->_viewSuffix; - } - } - - /** - * init - initialize view - * - * @return void - */ - public function init() - { - if ($this->getFrontController()->getParam('noViewRenderer')) { - return; - } - - $this->initView(); - } - - /** - * Set view basePath specification - * - * Specification can contain one or more of the following: - * - :moduleDir - current module directory - * - :controller - name of current controller in the request - * - :action - name of current action in the request - * - :module - name of current module in the request - * - * @param string $path - * @return Zend_Controller_Action_Helper_ViewRenderer Provides a fluent interface - */ - public function setViewBasePathSpec($path) - { - $this->_viewBasePathSpec = (string) $path; - return $this; - } - - /** - * Retrieve the current view basePath specification string - * - * @return string - */ - public function getViewBasePathSpec() - { - return $this->_viewBasePathSpec; - } - - /** - * Set view script path specification - * - * Specification can contain one or more of the following: - * - :moduleDir - current module directory - * - :controller - name of current controller in the request - * - :action - name of current action in the request - * - :module - name of current module in the request - * - * @param string $path - * @return Zend_Controller_Action_Helper_ViewRenderer Provides a fluent interface - */ - public function setViewScriptPathSpec($path) - { - $this->_viewScriptPathSpec = (string) $path; - return $this; - } - - /** - * Retrieve the current view script path specification string - * - * @return string - */ - public function getViewScriptPathSpec() - { - return $this->_viewScriptPathSpec; - } - - /** - * Set view script path specification (no controller variant) - * - * Specification can contain one or more of the following: - * - :moduleDir - current module directory - * - :controller - name of current controller in the request - * - :action - name of current action in the request - * - :module - name of current module in the request - * - * :controller will likely be ignored in this variant. - * - * @param string $path - * @return Zend_Controller_Action_Helper_ViewRenderer Provides a fluent interface - */ - public function setViewScriptPathNoControllerSpec($path) - { - $this->_viewScriptPathNoControllerSpec = (string) $path; - return $this; - } - - /** - * Retrieve the current view script path specification string (no controller variant) - * - * @return string - */ - public function getViewScriptPathNoControllerSpec() - { - return $this->_viewScriptPathNoControllerSpec; - } - - /** - * Get a view script based on an action and/or other variables - * - * Uses values found in current request if no values passed in $vars. - * - * If {@link $_noController} is set, uses {@link $_viewScriptPathNoControllerSpec}; - * otherwise, uses {@link $_viewScriptPathSpec}. - * - * @param string $action - * @param array $vars - * @return string - */ - public function getViewScript($action = null, array $vars = array()) - { - $request = $this->getRequest(); - if ((null === $action) && (!isset($vars['action']))) { - $action = $this->getScriptAction(); - if (null === $action) { - $action = $request->getActionName(); - } - $vars['action'] = $action; - } elseif (null !== $action) { - $vars['action'] = $action; - } - - $replacePattern = array('/[^a-z0-9]+$/i', '/^[^a-z0-9]+/i'); - $vars['action'] = preg_replace($replacePattern, '', $vars['action']); - - $inflector = $this->getInflector(); - if ($this->getNoController() || $this->getNeverController()) { - $this->_setInflectorTarget($this->getViewScriptPathNoControllerSpec()); - } else { - $this->_setInflectorTarget($this->getViewScriptPathSpec()); - } - return $this->_translateSpec($vars); - } - - /** - * Set the neverRender flag (i.e., globally dis/enable autorendering) - * - * @param boolean $flag - * @return Zend_Controller_Action_Helper_ViewRenderer Provides a fluent interface - */ - public function setNeverRender($flag = true) - { - $this->_neverRender = ($flag) ? true : false; - return $this; - } - - /** - * Retrieve neverRender flag value - * - * @return boolean - */ - public function getNeverRender() - { - return $this->_neverRender; - } - - /** - * Set the noRender flag (i.e., whether or not to autorender) - * - * @param boolean $flag - * @return Zend_Controller_Action_Helper_ViewRenderer Provides a fluent interface - */ - public function setNoRender($flag = true) - { - $this->_noRender = ($flag) ? true : false; - return $this; - } - - /** - * Retrieve noRender flag value - * - * @return boolean - */ - public function getNoRender() - { - return $this->_noRender; - } - - /** - * Set the view script to use - * - * @param string $name - * @return Zend_Controller_Action_Helper_ViewRenderer Provides a fluent interface - */ - public function setScriptAction($name) - { - $this->_scriptAction = (string) $name; - return $this; - } - - /** - * Retrieve view script name - * - * @return string - */ - public function getScriptAction() - { - return $this->_scriptAction; - } - - /** - * Set the response segment name - * - * @param string $name - * @return Zend_Controller_Action_Helper_ViewRenderer Provides a fluent interface - */ - public function setResponseSegment($name) - { - if (null === $name) { - $this->_responseSegment = null; - } else { - $this->_responseSegment = (string) $name; - } - - return $this; - } - - /** - * Retrieve named response segment name - * - * @return string - */ - public function getResponseSegment() - { - return $this->_responseSegment; - } - - /** - * Set the noController flag (i.e., whether or not to render into controller subdirectories) - * - * @param boolean $flag - * @return Zend_Controller_Action_Helper_ViewRenderer Provides a fluent interface - */ - public function setNoController($flag = true) - { - $this->_noController = ($flag) ? true : false; - return $this; - } - - /** - * Retrieve noController flag value - * - * @return boolean - */ - public function getNoController() - { - return $this->_noController; - } - - /** - * Set the neverController flag (i.e., whether or not to render into controller subdirectories) - * - * @param boolean $flag - * @return Zend_Controller_Action_Helper_ViewRenderer Provides a fluent interface - */ - public function setNeverController($flag = true) - { - $this->_neverController = ($flag) ? true : false; - return $this; - } - - /** - * Retrieve neverController flag value - * - * @return boolean - */ - public function getNeverController() - { - return $this->_neverController; - } - - /** - * Set view script suffix - * - * @param string $suffix - * @return Zend_Controller_Action_Helper_ViewRenderer Provides a fluent interface - */ - public function setViewSuffix($suffix) - { - $this->_viewSuffix = (string) $suffix; - return $this; - } - - /** - * Get view script suffix - * - * @return string - */ - public function getViewSuffix() - { - return $this->_viewSuffix; - } - - /** - * Set options for rendering a view script - * - * @param string $action View script to render - * @param string $name Response named segment to render to - * @param boolean $noController Whether or not to render within a subdirectory named after the controller - * @return Zend_Controller_Action_Helper_ViewRenderer Provides a fluent interface - */ - public function setRender($action = null, $name = null, $noController = null) - { - if (null !== $action) { - $this->setScriptAction($action); - } - - if (null !== $name) { - $this->setResponseSegment($name); - } - - if (null !== $noController) { - $this->setNoController($noController); - } - - return $this; - } - - /** - * Inflect based on provided vars - * - * Allowed variables are: - * - :moduleDir - current module directory - * - :module - current module name - * - :controller - current controller name - * - :action - current action name - * - :suffix - view script file suffix - * - * @param array $vars - * @return string - */ - protected function _translateSpec(array $vars = array()) - { - $inflector = $this->getInflector(); - $request = $this->getRequest(); - $dispatcher = $this->getFrontController()->getDispatcher(); - $module = $dispatcher->formatModuleName($request->getModuleName()); - $controller = $request->getControllerName(); - $action = $dispatcher->formatActionName($request->getActionName()); - - $params = compact('module', 'controller', 'action'); - foreach ($vars as $key => $value) { - switch ($key) { - case 'module': - case 'controller': - case 'action': - case 'moduleDir': - case 'suffix': - $params[$key] = (string) $value; - break; - default: - break; - } - } - - if (isset($params['suffix'])) { - $origSuffix = $this->getViewSuffix(); - $this->setViewSuffix($params['suffix']); - } - if (isset($params['moduleDir'])) { - $origModuleDir = $this->_getModuleDir(); - $this->_setModuleDir($params['moduleDir']); - } - - $filtered = $inflector->filter($params); - - if (isset($params['suffix'])) { - $this->setViewSuffix($origSuffix); - } - if (isset($params['moduleDir'])) { - $this->_setModuleDir($origModuleDir); - } - - return $filtered; - } - - /** - * Render a view script (optionally to a named response segment) - * - * Sets the noRender flag to true when called. - * - * @param string $script - * @param string $name - * @return void - */ - public function renderScript($script, $name = null) - { - if (null === $name) { - $name = $this->getResponseSegment(); - } - - $this->getResponse()->appendBody( - $this->view->render($script), - $name - ); - - $this->setNoRender(); - } - - /** - * Render a view based on path specifications - * - * Renders a view based on the view script path specifications. - * - * @param string $action - * @param string $name - * @param boolean $noController - * @return void - */ - public function render($action = null, $name = null, $noController = null) - { - $this->setRender($action, $name, $noController); - $path = $this->getViewScript(); - $this->renderScript($path, $name); - } - - /** - * Render a script based on specification variables - * - * Pass an action, and one or more specification variables (view script suffix) - * to determine the view script path, and render that script. - * - * @param string $action - * @param array $vars - * @param string $name - * @return void - */ - public function renderBySpec($action = null, array $vars = array(), $name = null) - { - if (null !== $name) { - $this->setResponseSegment($name); - } - - $path = $this->getViewScript($action, $vars); - - $this->renderScript($path); - } - - /** - * postDispatch - auto render a view - * - * Only autorenders if: - * - _noRender is false - * - action controller is present - * - request has not been re-dispatched (i.e., _forward() has not been called) - * - response is not a redirect - * - * @return void - */ - public function postDispatch() - { - if ($this->_shouldRender()) { - $this->render(); - } - } - - /** - * Should the ViewRenderer render a view script? - * - * @return boolean - */ - protected function _shouldRender() - { - return (!$this->getFrontController()->getParam('noViewRenderer') - && !$this->_neverRender - && !$this->_noRender - && (null !== $this->_actionController) - && $this->getRequest()->isDispatched() - && !$this->getResponse()->isRedirect() - ); - } - - /** - * Use this helper as a method; proxies to setRender() - * - * @param string $action - * @param string $name - * @param boolean $noController - * @return void - */ - public function direct($action = null, $name = null, $noController = null) - { - $this->setRender($action, $name, $noController); - } -} diff --git a/library/Zend/Controller/Action/HelperBroker.php b/library/Zend/Controller/Action/HelperBroker.php deleted file mode 100644 index 88687687..00000000 --- a/library/Zend/Controller/Action/HelperBroker.php +++ /dev/null @@ -1,381 +0,0 @@ - 'Zend/Controller/Action/Helper/', - )); - } - return self::$_pluginLoader; - } - - /** - * addPrefix() - Add repository of helpers by prefix - * - * @param string $prefix - */ - static public function addPrefix($prefix) - { - $prefix = rtrim($prefix, '_'); - $path = str_replace('_', DIRECTORY_SEPARATOR, $prefix); - self::getPluginLoader()->addPrefixPath($prefix, $path); - } - - /** - * addPath() - Add path to repositories where Action_Helpers could be found. - * - * @param string $path - * @param string $prefix Optional; defaults to 'Zend_Controller_Action_Helper' - * @return void - */ - static public function addPath($path, $prefix = 'Zend_Controller_Action_Helper') - { - self::getPluginLoader()->addPrefixPath($prefix, $path); - } - - /** - * addHelper() - Add helper objects - * - * @param Zend_Controller_Action_Helper_Abstract $helper - * @return void - */ - static public function addHelper(Zend_Controller_Action_Helper_Abstract $helper) - { - self::getStack()->push($helper); - return; - } - - /** - * resetHelpers() - * - * @return void - */ - static public function resetHelpers() - { - self::$_stack = null; - return; - } - - /** - * Retrieve or initialize a helper statically - * - * Retrieves a helper object statically, loading on-demand if the helper - * does not already exist in the stack. Always returns a helper, unless - * the helper class cannot be found. - * - * @param string $name - * @return Zend_Controller_Action_Helper_Abstract - */ - public static function getStaticHelper($name) - { - $name = self::_normalizeHelperName($name); - $stack = self::getStack(); - - if (!isset($stack->{$name})) { - self::_loadHelper($name); - } - - return $stack->{$name}; - } - - /** - * getExistingHelper() - get helper by name - * - * Static method to retrieve helper object. Only retrieves helpers already - * initialized with the broker (either via addHelper() or on-demand loading - * via getHelper()). - * - * Throws an exception if the referenced helper does not exist in the - * stack; use {@link hasHelper()} to check if the helper is registered - * prior to retrieving it. - * - * @param string $name - * @return Zend_Controller_Action_Helper_Abstract - * @throws Zend_Controller_Action_Exception - */ - public static function getExistingHelper($name) - { - $name = self::_normalizeHelperName($name); - $stack = self::getStack(); - - if (!isset($stack->{$name})) { - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception('Action helper "' . $name . '" has not been registered with the helper broker'); - } - - return $stack->{$name}; - } - - /** - * Return all registered helpers as helper => object pairs - * - * @return array - */ - public static function getExistingHelpers() - { - return self::getStack()->getHelpersByName(); - } - - /** - * Is a particular helper loaded in the broker? - * - * @param string $name - * @return boolean - */ - public static function hasHelper($name) - { - $name = self::_normalizeHelperName($name); - return isset(self::getStack()->{$name}); - } - - /** - * Remove a particular helper from the broker - * - * @param string $name - * @return boolean - */ - public static function removeHelper($name) - { - $name = self::_normalizeHelperName($name); - $stack = self::getStack(); - if (isset($stack->{$name})) { - unset($stack->{$name}); - } - - return false; - } - - /** - * Lazy load the priority stack and return it - * - * @return Zend_Controller_Action_HelperBroker_PriorityStack - */ - public static function getStack() - { - if (self::$_stack == null) { - self::$_stack = new Zend_Controller_Action_HelperBroker_PriorityStack(); - } - - return self::$_stack; - } - - /** - * Constructor - * - * @param Zend_Controller_Action $actionController - * @return void - */ - public function __construct(Zend_Controller_Action $actionController) - { - $this->_actionController = $actionController; - foreach (self::getStack() as $helper) { - $helper->setActionController($actionController); - $helper->init(); - } - } - - /** - * notifyPreDispatch() - called by action controller dispatch method - * - * @return void - */ - public function notifyPreDispatch() - { - foreach (self::getStack() as $helper) { - $helper->preDispatch(); - } - } - - /** - * notifyPostDispatch() - called by action controller dispatch method - * - * @return void - */ - public function notifyPostDispatch() - { - foreach (self::getStack() as $helper) { - $helper->postDispatch(); - } - } - - /** - * getHelper() - get helper by name - * - * @param string $name - * @return Zend_Controller_Action_Helper_Abstract - */ - public function getHelper($name) - { - $name = self::_normalizeHelperName($name); - $stack = self::getStack(); - - if (!isset($stack->{$name})) { - self::_loadHelper($name); - } - - $helper = $stack->{$name}; - - $initialize = false; - if (null === ($actionController = $helper->getActionController())) { - $initialize = true; - } elseif ($actionController !== $this->_actionController) { - $initialize = true; - } - - if ($initialize) { - $helper->setActionController($this->_actionController) - ->init(); - } - - return $helper; - } - - /** - * Method overloading - * - * @param string $method - * @param array $args - * @return mixed - * @throws Zend_Controller_Action_Exception if helper does not have a direct() method - */ - public function __call($method, $args) - { - $helper = $this->getHelper($method); - if (!method_exists($helper, 'direct')) { - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception('Helper "' . $method . '" does not support overloading via direct()'); - } - return call_user_func_array(array($helper, 'direct'), $args); - } - - /** - * Retrieve helper by name as object property - * - * @param string $name - * @return Zend_Controller_Action_Helper_Abstract - */ - public function __get($name) - { - return $this->getHelper($name); - } - - /** - * Normalize helper name for lookups - * - * @param string $name - * @return string - */ - protected static function _normalizeHelperName($name) - { - if (strpos($name, '_') !== false) { - $name = str_replace(' ', '', ucwords(str_replace('_', ' ', $name))); - } - - return ucfirst($name); - } - - /** - * Load a helper - * - * @param string $name - * @return void - */ - protected static function _loadHelper($name) - { - try { - $class = self::getPluginLoader()->load($name); - } catch (Zend_Loader_PluginLoader_Exception $e) { - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception('Action Helper by name ' . $name . ' not found', 0, $e); - } - - $helper = new $class(); - - if (!$helper instanceof Zend_Controller_Action_Helper_Abstract) { - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception('Helper name ' . $name . ' -> class ' . $class . ' is not of type Zend_Controller_Action_Helper_Abstract'); - } - - self::getStack()->push($helper); - } -} diff --git a/library/Zend/Controller/Action/HelperBroker/PriorityStack.php b/library/Zend/Controller/Action/HelperBroker/PriorityStack.php deleted file mode 100644 index aba21aa4..00000000 --- a/library/Zend/Controller/Action/HelperBroker/PriorityStack.php +++ /dev/null @@ -1,280 +0,0 @@ -_helpersByNameRef)) { - return false; - } - - return $this->_helpersByNameRef[$helperName]; - } - - /** - * Magic property overloading for returning if helper is set by name - * - * @param string $helperName The helper name - * @return Zend_Controller_Action_Helper_Abstract - */ - public function __isset($helperName) - { - return array_key_exists($helperName, $this->_helpersByNameRef); - } - - /** - * Magic property overloading for unsetting if helper is exists by name - * - * @param string $helperName The helper name - * @return Zend_Controller_Action_Helper_Abstract - */ - public function __unset($helperName) - { - return $this->offsetUnset($helperName); - } - - /** - * push helper onto the stack - * - * @param Zend_Controller_Action_Helper_Abstract $helper - * @return Zend_Controller_Action_HelperBroker_PriorityStack - */ - public function push(Zend_Controller_Action_Helper_Abstract $helper) - { - $this->offsetSet($this->getNextFreeHigherPriority(), $helper); - return $this; - } - - /** - * Return something iterable - * - * @return array - */ - public function getIterator() - { - return new ArrayObject($this->_helpersByPriority); - } - - /** - * offsetExists() - * - * @param int|string $priorityOrHelperName - * @return Zend_Controller_Action_HelperBroker_PriorityStack - */ - public function offsetExists($priorityOrHelperName) - { - if (is_string($priorityOrHelperName)) { - return array_key_exists($priorityOrHelperName, $this->_helpersByNameRef); - } else { - return array_key_exists($priorityOrHelperName, $this->_helpersByPriority); - } - } - - /** - * offsetGet() - * - * @param int|string $priorityOrHelperName - * @return Zend_Controller_Action_HelperBroker_PriorityStack - */ - public function offsetGet($priorityOrHelperName) - { - if (!$this->offsetExists($priorityOrHelperName)) { - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception('A helper with priority ' . $priorityOrHelperName . ' does not exist.'); - } - - if (is_string($priorityOrHelperName)) { - return $this->_helpersByNameRef[$priorityOrHelperName]; - } else { - return $this->_helpersByPriority[$priorityOrHelperName]; - } - } - - /** - * offsetSet() - * - * @param int $priority - * @param Zend_Controller_Action_Helper_Abstract $helper - * @return Zend_Controller_Action_HelperBroker_PriorityStack - */ - public function offsetSet($priority, $helper) - { - $priority = (int) $priority; - - if (!$helper instanceof Zend_Controller_Action_Helper_Abstract) { - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception('$helper must extend Zend_Controller_Action_Helper_Abstract.'); - } - - if (array_key_exists($helper->getName(), $this->_helpersByNameRef)) { - // remove any object with the same name to retain BC compailitbility - // @todo At ZF 2.0 time throw an exception here. - $this->offsetUnset($helper->getName()); - } - - if (array_key_exists($priority, $this->_helpersByPriority)) { - $priority = $this->getNextFreeHigherPriority($priority); // ensures LIFO - trigger_error("A helper with the same priority already exists, reassigning to $priority", E_USER_WARNING); - } - - $this->_helpersByPriority[$priority] = $helper; - $this->_helpersByNameRef[$helper->getName()] = $helper; - - if ($priority == ($nextFreeDefault = $this->getNextFreeHigherPriority($this->_nextDefaultPriority))) { - $this->_nextDefaultPriority = $nextFreeDefault; - } - - krsort($this->_helpersByPriority); // always make sure priority and LIFO are both enforced - return $this; - } - - /** - * offsetUnset() - * - * @param int|string $priorityOrHelperName Priority integer or the helper name - * @return Zend_Controller_Action_HelperBroker_PriorityStack - */ - public function offsetUnset($priorityOrHelperName) - { - if (!$this->offsetExists($priorityOrHelperName)) { - require_once 'Zend/Controller/Action/Exception.php'; - throw new Zend_Controller_Action_Exception('A helper with priority or name ' . $priorityOrHelperName . ' does not exist.'); - } - - if (is_string($priorityOrHelperName)) { - $helperName = $priorityOrHelperName; - $helper = $this->_helpersByNameRef[$helperName]; - $priority = array_search($helper, $this->_helpersByPriority, true); - } else { - $priority = $priorityOrHelperName; - $helperName = $this->_helpersByPriority[$priorityOrHelperName]->getName(); - } - - unset($this->_helpersByNameRef[$helperName]); - unset($this->_helpersByPriority[$priority]); - return $this; - } - - /** - * return the count of helpers - * - * @return int - */ - public function count() - { - return count($this->_helpersByPriority); - } - - /** - * Find the next free higher priority. If an index is given, it will - * find the next free highest priority after it. - * - * @param int $indexPriority OPTIONAL - * @return int - */ - public function getNextFreeHigherPriority($indexPriority = null) - { - if ($indexPriority == null) { - $indexPriority = $this->_nextDefaultPriority; - } - - $priorities = array_keys($this->_helpersByPriority); - - while (in_array($indexPriority, $priorities)) { - $indexPriority++; - } - - return $indexPriority; - } - - /** - * Find the next free lower priority. If an index is given, it will - * find the next free lower priority before it. - * - * @param int $indexPriority - * @return int - */ - public function getNextFreeLowerPriority($indexPriority = null) - { - if ($indexPriority == null) { - $indexPriority = $this->_nextDefaultPriority; - } - - $priorities = array_keys($this->_helpersByPriority); - - while (in_array($indexPriority, $priorities)) { - $indexPriority--; - } - - return $indexPriority; - } - - /** - * return the highest priority - * - * @return int - */ - public function getHighestPriority() - { - return max(array_keys($this->_helpersByPriority)); - } - - /** - * return the lowest priority - * - * @return int - */ - public function getLowestPriority() - { - return min(array_keys($this->_helpersByPriority)); - } - - /** - * return the helpers referenced by name - * - * @return array - */ - public function getHelpersByName() - { - return $this->_helpersByNameRef; - } - -} diff --git a/library/Zend/Controller/Action/Interface.php b/library/Zend/Controller/Action/Interface.php deleted file mode 100644 index 871390ca..00000000 --- a/library/Zend/Controller/Action/Interface.php +++ /dev/null @@ -1,69 +0,0 @@ -setParams($params); - } - - /** - * Formats a string into a controller name. This is used to take a raw - * controller name, such as one stored inside a Zend_Controller_Request_Abstract - * object, and reformat it to a proper class name that a class extending - * Zend_Controller_Action would use. - * - * @param string $unformatted - * @return string - */ - public function formatControllerName($unformatted) - { - return ucfirst($this->_formatName($unformatted)) . 'Controller'; - } - - /** - * Formats a string into an action name. This is used to take a raw - * action name, such as one that would be stored inside a Zend_Controller_Request_Abstract - * object, and reformat into a proper method name that would be found - * inside a class extending Zend_Controller_Action. - * - * @param string $unformatted - * @return string - */ - public function formatActionName($unformatted) - { - $formatted = $this->_formatName($unformatted, true); - return strtolower(substr($formatted, 0, 1)) . substr($formatted, 1) . 'Action'; - } - - /** - * Verify delimiter - * - * Verify a delimiter to use in controllers or actions. May be a single - * string or an array of strings. - * - * @param string|array $spec - * @return array - * @throws Zend_Controller_Dispatcher_Exception with invalid delimiters - */ - public function _verifyDelimiter($spec) - { - if (is_string($spec)) { - return (array) $spec; - } elseif (is_array($spec)) { - $allStrings = true; - foreach ($spec as $delim) { - if (!is_string($delim)) { - $allStrings = false; - break; - } - } - - if (!$allStrings) { - require_once 'Zend/Controller/Dispatcher/Exception.php'; - throw new Zend_Controller_Dispatcher_Exception('Word delimiter array must contain only strings'); - } - - return $spec; - } - - require_once 'Zend/Controller/Dispatcher/Exception.php'; - throw new Zend_Controller_Dispatcher_Exception('Invalid word delimiter'); - } - - /** - * Retrieve the word delimiter character(s) used in - * controller or action names - * - * @return array - */ - public function getWordDelimiter() - { - return $this->_wordDelimiter; - } - - /** - * Set word delimiter - * - * Set the word delimiter to use in controllers and actions. May be a - * single string or an array of strings. - * - * @param string|array $spec - * @return Zend_Controller_Dispatcher_Abstract - */ - public function setWordDelimiter($spec) - { - $spec = $this->_verifyDelimiter($spec); - $this->_wordDelimiter = $spec; - - return $this; - } - - /** - * Retrieve the path delimiter character(s) used in - * controller names - * - * @return array - */ - public function getPathDelimiter() - { - return $this->_pathDelimiter; - } - - /** - * Set path delimiter - * - * Set the path delimiter to use in controllers. May be a single string or - * an array of strings. - * - * @param string $spec - * @return Zend_Controller_Dispatcher_Abstract - */ - public function setPathDelimiter($spec) - { - if (!is_string($spec)) { - require_once 'Zend/Controller/Dispatcher/Exception.php'; - throw new Zend_Controller_Dispatcher_Exception('Invalid path delimiter'); - } - $this->_pathDelimiter = $spec; - - return $this; - } - - /** - * Formats a string from a URI into a PHP-friendly name. - * - * By default, replaces words separated by the word separator character(s) - * with camelCaps. If $isAction is false, it also preserves replaces words - * separated by the path separation character with an underscore, making - * the following word Title cased. All non-alphanumeric characters are - * removed. - * - * @param string $unformatted - * @param boolean $isAction Defaults to false - * @return string - */ - protected function _formatName($unformatted, $isAction = false) - { - // preserve directories - if (!$isAction) { - $segments = explode($this->getPathDelimiter(), $unformatted); - } else { - $segments = (array) $unformatted; - } - - foreach ($segments as $key => $segment) { - $segment = str_replace($this->getWordDelimiter(), ' ', strtolower($segment)); - $segment = preg_replace('/[^a-z0-9 ]/', '', $segment); - $segments[$key] = str_replace(' ', '', ucwords($segment)); - } - - return implode('_', $segments); - } - - /** - * Retrieve front controller instance - * - * @return Zend_Controller_Front - */ - public function getFrontController() - { - if (null === $this->_frontController) { - require_once 'Zend/Controller/Front.php'; - $this->_frontController = Zend_Controller_Front::getInstance(); - } - - return $this->_frontController; - } - - /** - * Set front controller instance - * - * @param Zend_Controller_Front $controller - * @return Zend_Controller_Dispatcher_Abstract - */ - public function setFrontController(Zend_Controller_Front $controller) - { - $this->_frontController = $controller; - return $this; - } - - /** - * Add or modify a parameter to use when instantiating an action controller - * - * @param string $name - * @param mixed $value - * @return Zend_Controller_Dispatcher_Abstract - */ - public function setParam($name, $value) - { - $name = (string) $name; - $this->_invokeParams[$name] = $value; - return $this; - } - - /** - * Set parameters to pass to action controller constructors - * - * @param array $params - * @return Zend_Controller_Dispatcher_Abstract - */ - public function setParams(array $params) - { - $this->_invokeParams = array_merge($this->_invokeParams, $params); - return $this; - } - - /** - * Retrieve a single parameter from the controller parameter stack - * - * @param string $name - * @return mixed - */ - public function getParam($name) - { - if(isset($this->_invokeParams[$name])) { - return $this->_invokeParams[$name]; - } - - return null; - } - - /** - * Retrieve action controller instantiation parameters - * - * @return array - */ - public function getParams() - { - return $this->_invokeParams; - } - - /** - * Clear the controller parameter stack - * - * By default, clears all parameters. If a parameter name is given, clears - * only that parameter; if an array of parameter names is provided, clears - * each. - * - * @param null|string|array single key or array of keys for params to clear - * @return Zend_Controller_Dispatcher_Abstract - */ - public function clearParams($name = null) - { - if (null === $name) { - $this->_invokeParams = array(); - } elseif (is_string($name) && isset($this->_invokeParams[$name])) { - unset($this->_invokeParams[$name]); - } elseif (is_array($name)) { - foreach ($name as $key) { - if (is_string($key) && isset($this->_invokeParams[$key])) { - unset($this->_invokeParams[$key]); - } - } - } - - return $this; - } - - /** - * Set response object to pass to action controllers - * - * @param Zend_Controller_Response_Abstract|null $response - * @return Zend_Controller_Dispatcher_Abstract - */ - public function setResponse(Zend_Controller_Response_Abstract $response = null) - { - $this->_response = $response; - return $this; - } - - /** - * Return the registered response object - * - * @return Zend_Controller_Response_Abstract|null - */ - public function getResponse() - { - return $this->_response; - } - - /** - * Set the default controller (minus any formatting) - * - * @param string $controller - * @return Zend_Controller_Dispatcher_Abstract - */ - public function setDefaultControllerName($controller) - { - $this->_defaultController = (string) $controller; - return $this; - } - - /** - * Retrieve the default controller name (minus formatting) - * - * @return string - */ - public function getDefaultControllerName() - { - return $this->_defaultController; - } - - /** - * Set the default action (minus any formatting) - * - * @param string $action - * @return Zend_Controller_Dispatcher_Abstract - */ - public function setDefaultAction($action) - { - $this->_defaultAction = (string) $action; - return $this; - } - - /** - * Retrieve the default action name (minus formatting) - * - * @return string - */ - public function getDefaultAction() - { - return $this->_defaultAction; - } - - /** - * Set the default module - * - * @param string $module - * @return Zend_Controller_Dispatcher_Abstract - */ - public function setDefaultModule($module) - { - $this->_defaultModule = (string) $module; - return $this; - } - - /** - * Retrieve the default module - * - * @return string - */ - public function getDefaultModule() - { - return $this->_defaultModule; - } -} diff --git a/library/Zend/Controller/Dispatcher/Exception.php b/library/Zend/Controller/Dispatcher/Exception.php deleted file mode 100644 index 64140ce8..00000000 --- a/library/Zend/Controller/Dispatcher/Exception.php +++ /dev/null @@ -1,37 +0,0 @@ -_curModule = $this->getDefaultModule(); - } - - /** - * Add a single path to the controller directory stack - * - * @param string $path - * @param string $module - * @return Zend_Controller_Dispatcher_Standard - */ - public function addControllerDirectory($path, $module = null) - { - if (null === $module) { - $module = $this->_defaultModule; - } - - $module = (string) $module; - $path = rtrim((string) $path, '/\\'); - - $this->_controllerDirectory[$module] = $path; - return $this; - } - - /** - * Set controller directory - * - * @param array|string $directory - * @return Zend_Controller_Dispatcher_Standard - */ - public function setControllerDirectory($directory, $module = null) - { - $this->_controllerDirectory = array(); - - if (is_string($directory)) { - $this->addControllerDirectory($directory, $module); - } elseif (is_array($directory)) { - foreach ((array) $directory as $module => $path) { - $this->addControllerDirectory($path, $module); - } - } else { - require_once 'Zend/Controller/Exception.php'; - throw new Zend_Controller_Exception('Controller directory spec must be either a string or an array'); - } - - return $this; - } - - /** - * Return the currently set directories for Zend_Controller_Action class - * lookup - * - * If a module is specified, returns just that directory. - * - * @param string $module Module name - * @return array|string Returns array of all directories by default, single - * module directory if module argument provided - */ - public function getControllerDirectory($module = null) - { - if (null === $module) { - return $this->_controllerDirectory; - } - - $module = (string) $module; - if (array_key_exists($module, $this->_controllerDirectory)) { - return $this->_controllerDirectory[$module]; - } - - return null; - } - - /** - * Remove a controller directory by module name - * - * @param string $module - * @return bool - */ - public function removeControllerDirectory($module) - { - $module = (string) $module; - if (array_key_exists($module, $this->_controllerDirectory)) { - unset($this->_controllerDirectory[$module]); - return true; - } - return false; - } - - /** - * Format the module name. - * - * @param string $unformatted - * @return string - */ - public function formatModuleName($unformatted) - { - if (($this->_defaultModule == $unformatted) && !$this->getParam('prefixDefaultModule')) { - return $unformatted; - } - - return ucfirst($this->_formatName($unformatted)); - } - - /** - * Format action class name - * - * @param string $moduleName Name of the current module - * @param string $className Name of the action class - * @return string Formatted class name - */ - public function formatClassName($moduleName, $className) - { - return $this->formatModuleName($moduleName) . '_' . $className; - } - - /** - * Convert a class name to a filename - * - * @param string $class - * @return string - */ - public function classToFilename($class) - { - return str_replace('_', DIRECTORY_SEPARATOR, $class) . '.php'; - } - - /** - * Returns TRUE if the Zend_Controller_Request_Abstract object can be - * dispatched to a controller. - * - * Use this method wisely. By default, the dispatcher will fall back to the - * default controller (either in the module specified or the global default) - * if a given controller does not exist. This method returning false does - * not necessarily indicate the dispatcher will not still dispatch the call. - * - * @param Zend_Controller_Request_Abstract $action - * @return boolean - */ - public function isDispatchable(Zend_Controller_Request_Abstract $request) - { - $className = $this->getControllerClass($request); - if (!$className) { - return false; - } - - $finalClass = $className; - if (($this->_defaultModule != $this->_curModule) - || $this->getParam('prefixDefaultModule')) - { - $finalClass = $this->formatClassName($this->_curModule, $className); - } - if (class_exists($finalClass, false)) { - return true; - } - - $fileSpec = $this->classToFilename($className); - $dispatchDir = $this->getDispatchDirectory(); - $test = $dispatchDir . DIRECTORY_SEPARATOR . $fileSpec; - return Zend_Loader::isReadable($test); - } - - /** - * Dispatch to a controller/action - * - * By default, if a controller is not dispatchable, dispatch() will throw - * an exception. If you wish to use the default controller instead, set the - * param 'useDefaultControllerAlways' via {@link setParam()}. - * - * @param Zend_Controller_Request_Abstract $request - * @param Zend_Controller_Response_Abstract $response - * @return void - * @throws Zend_Controller_Dispatcher_Exception - */ - public function dispatch(Zend_Controller_Request_Abstract $request, Zend_Controller_Response_Abstract $response) - { - $this->setResponse($response); - - /** - * Get controller class - */ - if (!$this->isDispatchable($request)) { - $controller = $request->getControllerName(); - if (!$this->getParam('useDefaultControllerAlways') && !empty($controller)) { - require_once 'Zend/Controller/Dispatcher/Exception.php'; - throw new Zend_Controller_Dispatcher_Exception('Invalid controller specified (' . $request->getControllerName() . ')'); - } - - $className = $this->getDefaultControllerClass($request); - } else { - $className = $this->getControllerClass($request); - if (!$className) { - $className = $this->getDefaultControllerClass($request); - } - } - - /** - * If we're in a module or prefixDefaultModule is on, we must add the module name - * prefix to the contents of $className, as getControllerClass does not do that automatically. - * We must keep a separate variable because modules are not strictly PSR-0: We need the no-module-prefix - * class name to do the class->file mapping, but the full class name to insantiate the controller - */ - $moduleClassName = $className; - if (($this->_defaultModule != $this->_curModule) - || $this->getParam('prefixDefaultModule')) - { - $moduleClassName = $this->formatClassName($this->_curModule, $className); - } - - /** - * Load the controller class file - */ - $className = $this->loadClass($className); - - /** - * Instantiate controller with request, response, and invocation - * arguments; throw exception if it's not an action controller - */ - $controller = new $moduleClassName($request, $this->getResponse(), $this->getParams()); - if (!($controller instanceof Zend_Controller_Action_Interface) && - !($controller instanceof Zend_Controller_Action)) { - require_once 'Zend/Controller/Dispatcher/Exception.php'; - throw new Zend_Controller_Dispatcher_Exception( - 'Controller "' . $moduleClassName . '" is not an instance of Zend_Controller_Action_Interface' - ); - } - - /** - * Retrieve the action name - */ - $action = $this->getActionMethod($request); - - /** - * Dispatch the method call - */ - $request->setDispatched(true); - - // by default, buffer output - $disableOb = $this->getParam('disableOutputBuffering'); - $obLevel = ob_get_level(); - if (empty($disableOb)) { - ob_start(); - } - - try { - $controller->dispatch($action); - } catch (Exception $e) { - // Clean output buffer on error - $curObLevel = ob_get_level(); - if ($curObLevel > $obLevel) { - do { - ob_get_clean(); - $curObLevel = ob_get_level(); - } while ($curObLevel > $obLevel); - } - throw $e; - } - - if (empty($disableOb)) { - $content = ob_get_clean(); - $response->appendBody($content); - } - - // Destroy the page controller instance and reflection objects - $controller = null; - } - - /** - * Load a controller class - * - * Attempts to load the controller class file from - * {@link getControllerDirectory()}. If the controller belongs to a - * module, looks for the module prefix to the controller class. - * - * @param string $className - * @return string Class name loaded - * @throws Zend_Controller_Dispatcher_Exception if class not loaded - */ - public function loadClass($className) - { - $finalClass = $className; - if (($this->_defaultModule != $this->_curModule) - || $this->getParam('prefixDefaultModule')) - { - $finalClass = $this->formatClassName($this->_curModule, $className); - } - if (class_exists($finalClass, false)) { - return $finalClass; - } - - $dispatchDir = $this->getDispatchDirectory(); - $loadFile = $dispatchDir . DIRECTORY_SEPARATOR . $this->classToFilename($className); - - if (Zend_Loader::isReadable($loadFile)) { - include_once $loadFile; - } else { - require_once 'Zend/Controller/Dispatcher/Exception.php'; - throw new Zend_Controller_Dispatcher_Exception('Cannot load controller class "' . $className . '" from file "' . $loadFile . "'"); - } - - if (!class_exists($finalClass, false)) { - require_once 'Zend/Controller/Dispatcher/Exception.php'; - throw new Zend_Controller_Dispatcher_Exception('Invalid controller class ("' . $finalClass . '")'); - } - - return $finalClass; - } - - /** - * Get controller class name - * - * Try request first; if not found, try pulling from request parameter; - * if still not found, fallback to default - * - * @param Zend_Controller_Request_Abstract $request - * @return string|false Returns class name on success - */ - public function getControllerClass(Zend_Controller_Request_Abstract $request) - { - $controllerName = $request->getControllerName(); - if (empty($controllerName)) { - if (!$this->getParam('useDefaultControllerAlways')) { - return false; - } - $controllerName = $this->getDefaultControllerName(); - $request->setControllerName($controllerName); - } - - $className = $this->formatControllerName($controllerName); - - $controllerDirs = $this->getControllerDirectory(); - $module = $request->getModuleName(); - if ($this->isValidModule($module)) { - $this->_curModule = $module; - $this->_curDirectory = $controllerDirs[$module]; - } elseif ($this->isValidModule($this->_defaultModule)) { - $request->setModuleName($this->_defaultModule); - $this->_curModule = $this->_defaultModule; - $this->_curDirectory = $controllerDirs[$this->_defaultModule]; - } else { - require_once 'Zend/Controller/Exception.php'; - throw new Zend_Controller_Exception('No default module defined for this application'); - } - - return $className; - } - - /** - * Determine if a given module is valid - * - * @param string $module - * @return bool - */ - public function isValidModule($module) - { - if (!is_string($module)) { - return false; - } - - $module = strtolower($module); - $controllerDir = $this->getControllerDirectory(); - foreach (array_keys($controllerDir) as $moduleName) { - if ($module == strtolower($moduleName)) { - return true; - } - } - - return false; - } - - /** - * Retrieve default controller class - * - * Determines whether the default controller to use lies within the - * requested module, or if the global default should be used. - * - * By default, will only use the module default unless that controller does - * not exist; if this is the case, it falls back to the default controller - * in the default module. - * - * @param Zend_Controller_Request_Abstract $request - * @return string - */ - public function getDefaultControllerClass(Zend_Controller_Request_Abstract $request) - { - $controller = $this->getDefaultControllerName(); - $default = $this->formatControllerName($controller); - $request->setControllerName($controller) - ->setActionName(null); - - $module = $request->getModuleName(); - $controllerDirs = $this->getControllerDirectory(); - $this->_curModule = $this->_defaultModule; - $this->_curDirectory = $controllerDirs[$this->_defaultModule]; - if ($this->isValidModule($module)) { - $found = false; - if (class_exists($default, false)) { - $found = true; - } else { - $moduleDir = $controllerDirs[$module]; - $fileSpec = $moduleDir . DIRECTORY_SEPARATOR . $this->classToFilename($default); - if (Zend_Loader::isReadable($fileSpec)) { - $found = true; - $this->_curDirectory = $moduleDir; - } - } - if ($found) { - $request->setModuleName($module); - $this->_curModule = $this->formatModuleName($module); - } - } else { - $request->setModuleName($this->_defaultModule); - } - - return $default; - } - - /** - * Return the value of the currently selected dispatch directory (as set by - * {@link getController()}) - * - * @return string - */ - public function getDispatchDirectory() - { - return $this->_curDirectory; - } - - /** - * Determine the action name - * - * First attempt to retrieve from request; then from request params - * using action key; default to default action - * - * Returns formatted action name - * - * @param Zend_Controller_Request_Abstract $request - * @return string - */ - public function getActionMethod(Zend_Controller_Request_Abstract $request) - { - $action = $request->getActionName(); - if (empty($action)) { - $action = $this->getDefaultAction(); - $request->setActionName($action); - } - - return $this->formatActionName($action); - } -} diff --git a/library/Zend/Controller/Exception.php b/library/Zend/Controller/Exception.php deleted file mode 100644 index 03d8b778..00000000 --- a/library/Zend/Controller/Exception.php +++ /dev/null @@ -1,35 +0,0 @@ -_plugins = new Zend_Controller_Plugin_Broker(); - } - - /** - * Enforce singleton; disallow cloning - * - * @return void - */ - private function __clone() - { - } - - /** - * Singleton instance - * - * @return Zend_Controller_Front - */ - public static function getInstance() - { - if (null === self::$_instance) { - self::$_instance = new self(); - } - - return self::$_instance; - } - - /** - * Resets all object properties of the singleton instance - * - * Primarily used for testing; could be used to chain front controllers. - * - * Also resets action helper broker, clearing all registered helpers. - * - * @return void - */ - public function resetInstance() - { - $reflection = new ReflectionObject($this); - foreach ($reflection->getProperties() as $property) { - $name = $property->getName(); - switch ($name) { - case '_instance': - break; - case '_controllerDir': - case '_invokeParams': - $this->{$name} = array(); - break; - case '_plugins': - $this->{$name} = new Zend_Controller_Plugin_Broker(); - break; - case '_throwExceptions': - case '_returnResponse': - $this->{$name} = false; - break; - case '_moduleControllerDirectoryName': - $this->{$name} = 'controllers'; - break; - default: - $this->{$name} = null; - break; - } - } - Zend_Controller_Action_HelperBroker::resetHelpers(); - } - - /** - * Convenience feature, calls setControllerDirectory()->setRouter()->dispatch() - * - * In PHP 5.1.x, a call to a static method never populates $this -- so run() - * may actually be called after setting up your front controller. - * - * @param string|array $controllerDirectory Path to Zend_Controller_Action - * controller classes or array of such paths - * @return void - * @throws Zend_Controller_Exception if called from an object instance - */ - public static function run($controllerDirectory) - { - self::getInstance() - ->setControllerDirectory($controllerDirectory) - ->dispatch(); - } - - /** - * Add a controller directory to the controller directory stack - * - * If $args is presented and is a string, uses it for the array key mapping - * to the directory specified. - * - * @param string $directory - * @param string $module Optional argument; module with which to associate directory. If none provided, assumes 'default' - * @return Zend_Controller_Front - * @throws Zend_Controller_Exception if directory not found or readable - */ - public function addControllerDirectory($directory, $module = null) - { - $this->getDispatcher()->addControllerDirectory($directory, $module); - return $this; - } - - /** - * Set controller directory - * - * Stores controller directory(ies) in dispatcher. May be an array of - * directories or a string containing a single directory. - * - * @param string|array $directory Path to Zend_Controller_Action controller - * classes or array of such paths - * @param string $module Optional module name to use with string $directory - * @return Zend_Controller_Front - */ - public function setControllerDirectory($directory, $module = null) - { - $this->getDispatcher()->setControllerDirectory($directory, $module); - return $this; - } - - /** - * Retrieve controller directory - * - * Retrieves: - * - Array of all controller directories if no $name passed - * - String path if $name passed and exists as a key in controller directory array - * - null if $name passed but does not exist in controller directory keys - * - * @param string $name Default null - * @return array|string|null - */ - public function getControllerDirectory($name = null) - { - return $this->getDispatcher()->getControllerDirectory($name); - } - - /** - * Remove a controller directory by module name - * - * @param string $module - * @return bool - */ - public function removeControllerDirectory($module) - { - return $this->getDispatcher()->removeControllerDirectory($module); - } - - /** - * Specify a directory as containing modules - * - * Iterates through the directory, adding any subdirectories as modules; - * the subdirectory within each module named after {@link $_moduleControllerDirectoryName} - * will be used as the controller directory path. - * - * @param string $path - * @return Zend_Controller_Front - */ - public function addModuleDirectory($path) - { - try{ - $dir = new DirectoryIterator($path); - } catch(Exception $e) { - require_once 'Zend/Controller/Exception.php'; - throw new Zend_Controller_Exception("Directory $path not readable", 0, $e); - } - foreach ($dir as $file) { - if ($file->isDot() || !$file->isDir()) { - continue; - } - - $module = $file->getFilename(); - - // Don't use SCCS directories as modules - if (preg_match('/^[^a-z]/i', $module) || ('CVS' == $module)) { - continue; - } - - $moduleDir = $file->getPathname() . DIRECTORY_SEPARATOR . $this->getModuleControllerDirectoryName(); - $this->addControllerDirectory($moduleDir, $module); - } - - return $this; - } - - /** - * Return the path to a module directory (but not the controllers directory within) - * - * @param string $module - * @return string|null - */ - public function getModuleDirectory($module = null) - { - if (null === $module) { - $request = $this->getRequest(); - if (null !== $request) { - $module = $this->getRequest()->getModuleName(); - } - if (empty($module)) { - $module = $this->getDispatcher()->getDefaultModule(); - } - } - - $controllerDir = $this->getControllerDirectory($module); - - if ((null === $controllerDir) || !is_string($controllerDir)) { - return null; - } - - return dirname($controllerDir); - } - - /** - * Set the directory name within a module containing controllers - * - * @param string $name - * @return Zend_Controller_Front - */ - public function setModuleControllerDirectoryName($name = 'controllers') - { - $this->_moduleControllerDirectoryName = (string) $name; - - return $this; - } - - /** - * Return the directory name within a module containing controllers - * - * @return string - */ - public function getModuleControllerDirectoryName() - { - return $this->_moduleControllerDirectoryName; - } - - /** - * Set the default controller (unformatted string) - * - * @param string $controller - * @return Zend_Controller_Front - */ - public function setDefaultControllerName($controller) - { - $dispatcher = $this->getDispatcher(); - $dispatcher->setDefaultControllerName($controller); - return $this; - } - - /** - * Retrieve the default controller (unformatted string) - * - * @return string - */ - public function getDefaultControllerName() - { - return $this->getDispatcher()->getDefaultControllerName(); - } - - /** - * Set the default action (unformatted string) - * - * @param string $action - * @return Zend_Controller_Front - */ - public function setDefaultAction($action) - { - $dispatcher = $this->getDispatcher(); - $dispatcher->setDefaultAction($action); - return $this; - } - - /** - * Retrieve the default action (unformatted string) - * - * @return string - */ - public function getDefaultAction() - { - return $this->getDispatcher()->getDefaultAction(); - } - - /** - * Set the default module name - * - * @param string $module - * @return Zend_Controller_Front - */ - public function setDefaultModule($module) - { - $dispatcher = $this->getDispatcher(); - $dispatcher->setDefaultModule($module); - return $this; - } - - /** - * Retrieve the default module - * - * @return string - */ - public function getDefaultModule() - { - return $this->getDispatcher()->getDefaultModule(); - } - - /** - * Set request class/object - * - * Set the request object. The request holds the request environment. - * - * If a class name is provided, it will instantiate it - * - * @param string|Zend_Controller_Request_Abstract $request - * @throws Zend_Controller_Exception if invalid request class - * @return Zend_Controller_Front - */ - public function setRequest($request) - { - if (is_string($request)) { - if (!class_exists($request)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($request); - } - $request = new $request(); - } - if (!$request instanceof Zend_Controller_Request_Abstract) { - require_once 'Zend/Controller/Exception.php'; - throw new Zend_Controller_Exception('Invalid request class'); - } - - $this->_request = $request; - - return $this; - } - - /** - * Return the request object. - * - * @return null|Zend_Controller_Request_Abstract - */ - public function getRequest() - { - return $this->_request; - } - - /** - * Set router class/object - * - * Set the router object. The router is responsible for mapping - * the request to a controller and action. - * - * If a class name is provided, instantiates router with any parameters - * registered via {@link setParam()} or {@link setParams()}. - * - * @param string|Zend_Controller_Router_Interface $router - * @throws Zend_Controller_Exception if invalid router class - * @return Zend_Controller_Front - */ - public function setRouter($router) - { - if (is_string($router)) { - if (!class_exists($router)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($router); - } - $router = new $router(); - } - - if (!$router instanceof Zend_Controller_Router_Interface) { - require_once 'Zend/Controller/Exception.php'; - throw new Zend_Controller_Exception('Invalid router class'); - } - - $router->setFrontController($this); - $this->_router = $router; - - return $this; - } - - /** - * Return the router object. - * - * Instantiates a Zend_Controller_Router_Rewrite object if no router currently set. - * - * @return Zend_Controller_Router_Interface - */ - public function getRouter() - { - if (null == $this->_router) { - require_once 'Zend/Controller/Router/Rewrite.php'; - $this->setRouter(new Zend_Controller_Router_Rewrite()); - } - - return $this->_router; - } - - /** - * Set the base URL used for requests - * - * Use to set the base URL segment of the REQUEST_URI to use when - * determining PATH_INFO, etc. Examples: - * - /admin - * - /myapp - * - /subdir/index.php - * - * Note that the URL should not include the full URI. Do not use: - * - http://example.com/admin - * - http://example.com/myapp - * - http://example.com/subdir/index.php - * - * If a null value is passed, this can be used as well for autodiscovery (default). - * - * @param string $base - * @return Zend_Controller_Front - * @throws Zend_Controller_Exception for non-string $base - */ - public function setBaseUrl($base = null) - { - if (!is_string($base) && (null !== $base)) { - require_once 'Zend/Controller/Exception.php'; - throw new Zend_Controller_Exception('Rewrite base must be a string'); - } - - $this->_baseUrl = $base; - - if ((null !== ($request = $this->getRequest())) && (method_exists($request, 'setBaseUrl'))) { - $request->setBaseUrl($base); - } - - return $this; - } - - /** - * Retrieve the currently set base URL - * - * @return string - */ - public function getBaseUrl() - { - $request = $this->getRequest(); - if ((null !== $request) && method_exists($request, 'getBaseUrl')) { - return $request->getBaseUrl(); - } - - return $this->_baseUrl; - } - - /** - * Set the dispatcher object. The dispatcher is responsible for - * taking a Zend_Controller_Dispatcher_Token object, instantiating the controller, and - * call the action method of the controller. - * - * @param Zend_Controller_Dispatcher_Interface $dispatcher - * @return Zend_Controller_Front - */ - public function setDispatcher(Zend_Controller_Dispatcher_Interface $dispatcher) - { - $this->_dispatcher = $dispatcher; - return $this; - } - - /** - * Return the dispatcher object. - * - * @return Zend_Controller_Dispatcher_Interface - */ - public function getDispatcher() - { - /** - * Instantiate the default dispatcher if one was not set. - */ - if (!$this->_dispatcher instanceof Zend_Controller_Dispatcher_Interface) { - require_once 'Zend/Controller/Dispatcher/Standard.php'; - $this->_dispatcher = new Zend_Controller_Dispatcher_Standard(); - } - return $this->_dispatcher; - } - - /** - * Set response class/object - * - * Set the response object. The response is a container for action - * responses and headers. Usage is optional. - * - * If a class name is provided, instantiates a response object. - * - * @param string|Zend_Controller_Response_Abstract $response - * @throws Zend_Controller_Exception if invalid response class - * @return Zend_Controller_Front - */ - public function setResponse($response) - { - if (is_string($response)) { - if (!class_exists($response)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($response); - } - $response = new $response(); - } - if (!$response instanceof Zend_Controller_Response_Abstract) { - require_once 'Zend/Controller/Exception.php'; - throw new Zend_Controller_Exception('Invalid response class'); - } - - $this->_response = $response; - - return $this; - } - - /** - * Return the response object. - * - * @return null|Zend_Controller_Response_Abstract - */ - public function getResponse() - { - return $this->_response; - } - - /** - * Add or modify a parameter to use when instantiating an action controller - * - * @param string $name - * @param mixed $value - * @return Zend_Controller_Front - */ - public function setParam($name, $value) - { - $name = (string) $name; - $this->_invokeParams[$name] = $value; - return $this; - } - - /** - * Set parameters to pass to action controller constructors - * - * @param array $params - * @return Zend_Controller_Front - */ - public function setParams(array $params) - { - $this->_invokeParams = array_merge($this->_invokeParams, $params); - return $this; - } - - /** - * Retrieve a single parameter from the controller parameter stack - * - * @param string $name - * @return mixed - */ - public function getParam($name) - { - if(isset($this->_invokeParams[$name])) { - return $this->_invokeParams[$name]; - } - - return null; - } - - /** - * Retrieve action controller instantiation parameters - * - * @return array - */ - public function getParams() - { - return $this->_invokeParams; - } - - /** - * Clear the controller parameter stack - * - * By default, clears all parameters. If a parameter name is given, clears - * only that parameter; if an array of parameter names is provided, clears - * each. - * - * @param null|string|array single key or array of keys for params to clear - * @return Zend_Controller_Front - */ - public function clearParams($name = null) - { - if (null === $name) { - $this->_invokeParams = array(); - } elseif (is_string($name) && isset($this->_invokeParams[$name])) { - unset($this->_invokeParams[$name]); - } elseif (is_array($name)) { - foreach ($name as $key) { - if (is_string($key) && isset($this->_invokeParams[$key])) { - unset($this->_invokeParams[$key]); - } - } - } - - return $this; - } - - /** - * Register a plugin. - * - * @param Zend_Controller_Plugin_Abstract $plugin - * @param int $stackIndex Optional; stack index for plugin - * @return Zend_Controller_Front - */ - public function registerPlugin(Zend_Controller_Plugin_Abstract $plugin, $stackIndex = null) - { - $this->_plugins->registerPlugin($plugin, $stackIndex); - return $this; - } - - /** - * Unregister a plugin. - * - * @param string|Zend_Controller_Plugin_Abstract $plugin Plugin class or object to unregister - * @return Zend_Controller_Front - */ - public function unregisterPlugin($plugin) - { - $this->_plugins->unregisterPlugin($plugin); - return $this; - } - - /** - * Is a particular plugin registered? - * - * @param string $class - * @return bool - */ - public function hasPlugin($class) - { - return $this->_plugins->hasPlugin($class); - } - - /** - * Retrieve a plugin or plugins by class - * - * @param string $class - * @return false|Zend_Controller_Plugin_Abstract|array - */ - public function getPlugin($class) - { - return $this->_plugins->getPlugin($class); - } - - /** - * Retrieve all plugins - * - * @return array - */ - public function getPlugins() - { - return $this->_plugins->getPlugins(); - } - - /** - * Set the throwExceptions flag and retrieve current status - * - * Set whether exceptions encounted in the dispatch loop should be thrown - * or caught and trapped in the response object. - * - * Default behaviour is to trap them in the response object; call this - * method to have them thrown. - * - * Passing no value will return the current value of the flag; passing a - * boolean true or false value will set the flag and return the current - * object instance. - * - * @param boolean $flag Defaults to null (return flag state) - * @return boolean|Zend_Controller_Front Used as a setter, returns object; as a getter, returns boolean - */ - public function throwExceptions($flag = null) - { - if ($flag !== null) { - $this->_throwExceptions = (bool) $flag; - return $this; - } - - return $this->_throwExceptions; - } - - /** - * Set whether {@link dispatch()} should return the response without first - * rendering output. By default, output is rendered and dispatch() returns - * nothing. - * - * @param boolean $flag - * @return boolean|Zend_Controller_Front Used as a setter, returns object; as a getter, returns boolean - */ - public function returnResponse($flag = null) - { - if (true === $flag) { - $this->_returnResponse = true; - return $this; - } elseif (false === $flag) { - $this->_returnResponse = false; - return $this; - } - - return $this->_returnResponse; - } - - /** - * Dispatch an HTTP request to a controller/action. - * - * @param Zend_Controller_Request_Abstract|null $request - * @param Zend_Controller_Response_Abstract|null $response - * @return void|Zend_Controller_Response_Abstract Returns response object if returnResponse() is true - */ - public function dispatch(Zend_Controller_Request_Abstract $request = null, Zend_Controller_Response_Abstract $response = null) - { - if (!$this->getParam('noErrorHandler') && !$this->_plugins->hasPlugin('Zend_Controller_Plugin_ErrorHandler')) { - // Register with stack index of 100 - require_once 'Zend/Controller/Plugin/ErrorHandler.php'; - $this->_plugins->registerPlugin(new Zend_Controller_Plugin_ErrorHandler(), 100); - } - - if (!$this->getParam('noViewRenderer') && !Zend_Controller_Action_HelperBroker::hasHelper('viewRenderer')) { - require_once 'Zend/Controller/Action/Helper/ViewRenderer.php'; - Zend_Controller_Action_HelperBroker::getStack()->offsetSet(-80, new Zend_Controller_Action_Helper_ViewRenderer()); - } - - /** - * Instantiate default request object (HTTP version) if none provided - */ - if (null !== $request) { - $this->setRequest($request); - } elseif ((null === $request) && (null === ($request = $this->getRequest()))) { - require_once 'Zend/Controller/Request/Http.php'; - $request = new Zend_Controller_Request_Http(); - $this->setRequest($request); - } - - /** - * Set base URL of request object, if available - */ - if (is_callable(array($this->_request, 'setBaseUrl'))) { - if (null !== $this->_baseUrl) { - $this->_request->setBaseUrl($this->_baseUrl); - } - } - - /** - * Instantiate default response object (HTTP version) if none provided - */ - if (null !== $response) { - $this->setResponse($response); - } elseif ((null === $this->_response) && (null === ($this->_response = $this->getResponse()))) { - require_once 'Zend/Controller/Response/Http.php'; - $response = new Zend_Controller_Response_Http(); - $this->setResponse($response); - } - - /** - * Register request and response objects with plugin broker - */ - $this->_plugins - ->setRequest($this->_request) - ->setResponse($this->_response); - - /** - * Initialize router - */ - $router = $this->getRouter(); - $router->setParams($this->getParams()); - - /** - * Initialize dispatcher - */ - $dispatcher = $this->getDispatcher(); - $dispatcher->setParams($this->getParams()) - ->setResponse($this->_response); - - // Begin dispatch - try { - /** - * Route request to controller/action, if a router is provided - */ - - /** - * Notify plugins of router startup - */ - $this->_plugins->routeStartup($this->_request); - - try { - $router->route($this->_request); - } catch (Exception $e) { - if ($this->throwExceptions()) { - throw $e; - } - - $this->_response->setException($e); - } - - /** - * Notify plugins of router completion - */ - $this->_plugins->routeShutdown($this->_request); - - /** - * Notify plugins of dispatch loop startup - */ - $this->_plugins->dispatchLoopStartup($this->_request); - - /** - * Attempt to dispatch the controller/action. If the $this->_request - * indicates that it needs to be dispatched, move to the next - * action in the request. - */ - do { - $this->_request->setDispatched(true); - - /** - * Notify plugins of dispatch startup - */ - $this->_plugins->preDispatch($this->_request); - - /** - * Skip requested action if preDispatch() has reset it - */ - if (!$this->_request->isDispatched()) { - continue; - } - - /** - * Dispatch request - */ - try { - $dispatcher->dispatch($this->_request, $this->_response); - } catch (Exception $e) { - if ($this->throwExceptions()) { - throw $e; - } - $this->_response->setException($e); - } - - /** - * Notify plugins of dispatch completion - */ - $this->_plugins->postDispatch($this->_request); - } while (!$this->_request->isDispatched()); - } catch (Exception $e) { - if ($this->throwExceptions()) { - throw $e; - } - - $this->_response->setException($e); - } - - /** - * Notify plugins of dispatch loop completion - */ - try { - $this->_plugins->dispatchLoopShutdown(); - } catch (Exception $e) { - if ($this->throwExceptions()) { - throw $e; - } - - $this->_response->setException($e); - } - - if ($this->returnResponse()) { - return $this->_response; - } - - $this->_response->sendResponse(); - } -} diff --git a/library/Zend/Controller/Plugin/Abstract.php b/library/Zend/Controller/Plugin/Abstract.php deleted file mode 100644 index 46dfdcaf..00000000 --- a/library/Zend/Controller/Plugin/Abstract.php +++ /dev/null @@ -1,151 +0,0 @@ -_request = $request; - return $this; - } - - /** - * Get request object - * - * @return Zend_Controller_Request_Abstract $request - */ - public function getRequest() - { - return $this->_request; - } - - /** - * Set response object - * - * @param Zend_Controller_Response_Abstract $response - * @return Zend_Controller_Plugin_Abstract - */ - public function setResponse(Zend_Controller_Response_Abstract $response) - { - $this->_response = $response; - return $this; - } - - /** - * Get response object - * - * @return Zend_Controller_Response_Abstract $response - */ - public function getResponse() - { - return $this->_response; - } - - /** - * Called before Zend_Controller_Front begins evaluating the - * request against its routes. - * - * @param Zend_Controller_Request_Abstract $request - * @return void - */ - public function routeStartup(Zend_Controller_Request_Abstract $request) - {} - - /** - * Called after Zend_Controller_Router exits. - * - * Called after Zend_Controller_Front exits from the router. - * - * @param Zend_Controller_Request_Abstract $request - * @return void - */ - public function routeShutdown(Zend_Controller_Request_Abstract $request) - {} - - /** - * Called before Zend_Controller_Front enters its dispatch loop. - * - * @param Zend_Controller_Request_Abstract $request - * @return void - */ - public function dispatchLoopStartup(Zend_Controller_Request_Abstract $request) - {} - - /** - * Called before an action is dispatched by Zend_Controller_Dispatcher. - * - * This callback allows for proxy or filter behavior. By altering the - * request and resetting its dispatched flag (via - * {@link Zend_Controller_Request_Abstract::setDispatched() setDispatched(false)}), - * the current action may be skipped. - * - * @param Zend_Controller_Request_Abstract $request - * @return void - */ - public function preDispatch(Zend_Controller_Request_Abstract $request) - {} - - /** - * Called after an action is dispatched by Zend_Controller_Dispatcher. - * - * This callback allows for proxy or filter behavior. By altering the - * request and resetting its dispatched flag (via - * {@link Zend_Controller_Request_Abstract::setDispatched() setDispatched(false)}), - * a new action may be specified for dispatching. - * - * @param Zend_Controller_Request_Abstract $request - * @return void - */ - public function postDispatch(Zend_Controller_Request_Abstract $request) - {} - - /** - * Called before Zend_Controller_Front exits its dispatch loop. - * - * @return void - */ - public function dispatchLoopShutdown() - {} -} diff --git a/library/Zend/Controller/Plugin/ActionStack.php b/library/Zend/Controller/Plugin/ActionStack.php deleted file mode 100644 index cf5a5ba5..00000000 --- a/library/Zend/Controller/Plugin/ActionStack.php +++ /dev/null @@ -1,280 +0,0 @@ -setRegistry($registry); - - if (null !== $key) { - $this->setRegistryKey($key); - } else { - $key = $this->getRegistryKey(); - } - - $registry[$key] = array(); - } - - /** - * Set registry object - * - * @param Zend_Registry $registry - * @return Zend_Controller_Plugin_ActionStack - */ - public function setRegistry(Zend_Registry $registry) - { - $this->_registry = $registry; - return $this; - } - - /** - * Retrieve registry object - * - * @return Zend_Registry - */ - public function getRegistry() - { - return $this->_registry; - } - - /** - * Retrieve registry key - * - * @return string - */ - public function getRegistryKey() - { - return $this->_registryKey; - } - - /** - * Set registry key - * - * @param string $key - * @return Zend_Controller_Plugin_ActionStack - */ - public function setRegistryKey($key) - { - $this->_registryKey = (string) $key; - return $this; - } - - /** - * Set clearRequestParams flag - * - * @param bool $clearRequestParams - * @return Zend_Controller_Plugin_ActionStack - */ - public function setClearRequestParams($clearRequestParams) - { - $this->_clearRequestParams = (bool) $clearRequestParams; - return $this; - } - - /** - * Retrieve clearRequestParams flag - * - * @return bool - */ - public function getClearRequestParams() - { - return $this->_clearRequestParams; - } - - /** - * Retrieve action stack - * - * @return array - */ - public function getStack() - { - $registry = $this->getRegistry(); - $stack = $registry[$this->getRegistryKey()]; - return $stack; - } - - /** - * Save stack to registry - * - * @param array $stack - * @return Zend_Controller_Plugin_ActionStack - */ - protected function _saveStack(array $stack) - { - $registry = $this->getRegistry(); - $registry[$this->getRegistryKey()] = $stack; - return $this; - } - - /** - * Push an item onto the stack - * - * @param Zend_Controller_Request_Abstract $next - * @return Zend_Controller_Plugin_ActionStack - */ - public function pushStack(Zend_Controller_Request_Abstract $next) - { - $stack = $this->getStack(); - array_push($stack, $next); - return $this->_saveStack($stack); - } - - /** - * Pop an item off the action stack - * - * @return false|Zend_Controller_Request_Abstract - */ - public function popStack() - { - $stack = $this->getStack(); - if (0 == count($stack)) { - return false; - } - - $next = array_pop($stack); - $this->_saveStack($stack); - - if (!$next instanceof Zend_Controller_Request_Abstract) { - require_once 'Zend/Controller/Exception.php'; - throw new Zend_Controller_Exception('ArrayStack should only contain request objects'); - } - $action = $next->getActionName(); - if (empty($action)) { - return $this->popStack($stack); - } - - $request = $this->getRequest(); - $controller = $next->getControllerName(); - if (empty($controller)) { - $next->setControllerName($request->getControllerName()); - } - - $module = $next->getModuleName(); - if (empty($module)) { - $next->setModuleName($request->getModuleName()); - } - - return $next; - } - - /** - * postDispatch() plugin hook -- check for actions in stack, and dispatch if any found - * - * @param Zend_Controller_Request_Abstract $request - * @return void - */ - public function postDispatch(Zend_Controller_Request_Abstract $request) - { - // Don't move on to next request if this is already an attempt to - // forward - if (!$request->isDispatched()) { - return; - } - - $this->setRequest($request); - $stack = $this->getStack(); - if (empty($stack)) { - return; - } - $next = $this->popStack(); - if (!$next) { - return; - } - - $this->forward($next); - } - - /** - * Forward request with next action - * - * @param array $next - * @return void - */ - public function forward(Zend_Controller_Request_Abstract $next) - { - $request = $this->getRequest(); - if ($this->getClearRequestParams()) { - $request->clearParams(); - } - - $request->setModuleName($next->getModuleName()) - ->setControllerName($next->getControllerName()) - ->setActionName($next->getActionName()) - ->setParams($next->getParams()) - ->setDispatched(false); - } -} diff --git a/library/Zend/Controller/Plugin/Broker.php b/library/Zend/Controller/Plugin/Broker.php deleted file mode 100644 index 34e43e2d..00000000 --- a/library/Zend/Controller/Plugin/Broker.php +++ /dev/null @@ -1,365 +0,0 @@ -_plugins, true)) { - require_once 'Zend/Controller/Exception.php'; - throw new Zend_Controller_Exception('Plugin already registered'); - } - - $stackIndex = (int) $stackIndex; - - if ($stackIndex) { - if (isset($this->_plugins[$stackIndex])) { - require_once 'Zend/Controller/Exception.php'; - throw new Zend_Controller_Exception('Plugin with stackIndex "' . $stackIndex . '" already registered'); - } - $this->_plugins[$stackIndex] = $plugin; - } else { - $stackIndex = count($this->_plugins); - while (isset($this->_plugins[$stackIndex])) { - ++$stackIndex; - } - $this->_plugins[$stackIndex] = $plugin; - } - - $request = $this->getRequest(); - if ($request) { - $this->_plugins[$stackIndex]->setRequest($request); - } - $response = $this->getResponse(); - if ($response) { - $this->_plugins[$stackIndex]->setResponse($response); - } - - ksort($this->_plugins); - - return $this; - } - - /** - * Unregister a plugin. - * - * @param string|Zend_Controller_Plugin_Abstract $plugin Plugin object or class name - * @return Zend_Controller_Plugin_Broker - */ - public function unregisterPlugin($plugin) - { - if ($plugin instanceof Zend_Controller_Plugin_Abstract) { - // Given a plugin object, find it in the array - $key = array_search($plugin, $this->_plugins, true); - if (false === $key) { - require_once 'Zend/Controller/Exception.php'; - throw new Zend_Controller_Exception('Plugin never registered.'); - } - unset($this->_plugins[$key]); - } elseif (is_string($plugin)) { - // Given a plugin class, find all plugins of that class and unset them - foreach ($this->_plugins as $key => $_plugin) { - $type = get_class($_plugin); - if ($plugin == $type) { - unset($this->_plugins[$key]); - } - } - } - return $this; - } - - /** - * Is a plugin of a particular class registered? - * - * @param string $class - * @return bool - */ - public function hasPlugin($class) - { - foreach ($this->_plugins as $plugin) { - $type = get_class($plugin); - if ($class == $type) { - return true; - } - } - - return false; - } - - /** - * Retrieve a plugin or plugins by class - * - * @param string $class Class name of plugin(s) desired - * @return false|Zend_Controller_Plugin_Abstract|array Returns false if none found, plugin if only one found, and array of plugins if multiple plugins of same class found - */ - public function getPlugin($class) - { - $found = array(); - foreach ($this->_plugins as $plugin) { - $type = get_class($plugin); - if ($class == $type) { - $found[] = $plugin; - } - } - - switch (count($found)) { - case 0: - return false; - case 1: - return $found[0]; - default: - return $found; - } - } - - /** - * Retrieve all plugins - * - * @return array - */ - public function getPlugins() - { - return $this->_plugins; - } - - /** - * Set request object, and register with each plugin - * - * @param Zend_Controller_Request_Abstract $request - * @return Zend_Controller_Plugin_Broker - */ - public function setRequest(Zend_Controller_Request_Abstract $request) - { - $this->_request = $request; - - foreach ($this->_plugins as $plugin) { - $plugin->setRequest($request); - } - - return $this; - } - - /** - * Get request object - * - * @return Zend_Controller_Request_Abstract $request - */ - public function getRequest() - { - return $this->_request; - } - - /** - * Set response object - * - * @param Zend_Controller_Response_Abstract $response - * @return Zend_Controller_Plugin_Broker - */ - public function setResponse(Zend_Controller_Response_Abstract $response) - { - $this->_response = $response; - - foreach ($this->_plugins as $plugin) { - $plugin->setResponse($response); - } - - - return $this; - } - - /** - * Get response object - * - * @return Zend_Controller_Response_Abstract $response - */ - public function getResponse() - { - return $this->_response; - } - - - /** - * Called before Zend_Controller_Front begins evaluating the - * request against its routes. - * - * @param Zend_Controller_Request_Abstract $request - * @return void - */ - public function routeStartup(Zend_Controller_Request_Abstract $request) - { - foreach ($this->_plugins as $plugin) { - try { - $plugin->routeStartup($request); - } catch (Exception $e) { - if (Zend_Controller_Front::getInstance()->throwExceptions()) { - throw new Zend_Controller_Exception($e->getMessage() . $e->getTraceAsString(), $e->getCode(), $e); - } else { - $this->getResponse()->setException($e); - } - } - } - } - - - /** - * Called before Zend_Controller_Front exits its iterations over - * the route set. - * - * @param Zend_Controller_Request_Abstract $request - * @return void - */ - public function routeShutdown(Zend_Controller_Request_Abstract $request) - { - foreach ($this->_plugins as $plugin) { - try { - $plugin->routeShutdown($request); - } catch (Exception $e) { - if (Zend_Controller_Front::getInstance()->throwExceptions()) { - throw new Zend_Controller_Exception($e->getMessage() . $e->getTraceAsString(), $e->getCode(), $e); - } else { - $this->getResponse()->setException($e); - } - } - } - } - - - /** - * Called before Zend_Controller_Front enters its dispatch loop. - * - * During the dispatch loop, Zend_Controller_Front keeps a - * Zend_Controller_Request_Abstract object, and uses - * Zend_Controller_Dispatcher to dispatch the - * Zend_Controller_Request_Abstract object to controllers/actions. - * - * @param Zend_Controller_Request_Abstract $request - * @return void - */ - public function dispatchLoopStartup(Zend_Controller_Request_Abstract $request) - { - foreach ($this->_plugins as $plugin) { - try { - $plugin->dispatchLoopStartup($request); - } catch (Exception $e) { - if (Zend_Controller_Front::getInstance()->throwExceptions()) { - throw new Zend_Controller_Exception($e->getMessage() . $e->getTraceAsString(), $e->getCode(), $e); - } else { - $this->getResponse()->setException($e); - } - } - } - } - - - /** - * Called before an action is dispatched by Zend_Controller_Dispatcher. - * - * @param Zend_Controller_Request_Abstract $request - * @return void - */ - public function preDispatch(Zend_Controller_Request_Abstract $request) - { - foreach ($this->_plugins as $plugin) { - try { - $plugin->preDispatch($request); - } catch (Exception $e) { - if (Zend_Controller_Front::getInstance()->throwExceptions()) { - throw new Zend_Controller_Exception($e->getMessage() . $e->getTraceAsString(), $e->getCode(), $e); - } else { - $this->getResponse()->setException($e); - // skip rendering of normal dispatch give the error handler a try - $this->getRequest()->setDispatched(false); - } - } - } - } - - - /** - * Called after an action is dispatched by Zend_Controller_Dispatcher. - * - * @param Zend_Controller_Request_Abstract $request - * @return void - */ - public function postDispatch(Zend_Controller_Request_Abstract $request) - { - foreach ($this->_plugins as $plugin) { - try { - $plugin->postDispatch($request); - } catch (Exception $e) { - if (Zend_Controller_Front::getInstance()->throwExceptions()) { - throw new Zend_Controller_Exception($e->getMessage() . $e->getTraceAsString(), $e->getCode(), $e); - } else { - $this->getResponse()->setException($e); - } - } - } - } - - - /** - * Called before Zend_Controller_Front exits its dispatch loop. - * - * @param Zend_Controller_Request_Abstract $request - * @return void - */ - public function dispatchLoopShutdown() - { - foreach ($this->_plugins as $plugin) { - try { - $plugin->dispatchLoopShutdown(); - } catch (Exception $e) { - if (Zend_Controller_Front::getInstance()->throwExceptions()) { - throw new Zend_Controller_Exception($e->getMessage() . $e->getTraceAsString(), $e->getCode(), $e); - } else { - $this->getResponse()->setException($e); - } - } - } - } -} diff --git a/library/Zend/Controller/Plugin/ErrorHandler.php b/library/Zend/Controller/Plugin/ErrorHandler.php deleted file mode 100644 index ec5c785f..00000000 --- a/library/Zend/Controller/Plugin/ErrorHandler.php +++ /dev/null @@ -1,300 +0,0 @@ -setErrorHandler($options); - } - - /** - * setErrorHandler() - setup the error handling options - * - * @param array $options - * @return Zend_Controller_Plugin_ErrorHandler - */ - public function setErrorHandler(Array $options = array()) - { - if (isset($options['module'])) { - $this->setErrorHandlerModule($options['module']); - } - if (isset($options['controller'])) { - $this->setErrorHandlerController($options['controller']); - } - if (isset($options['action'])) { - $this->setErrorHandlerAction($options['action']); - } - return $this; - } - - /** - * Set the module name for the error handler - * - * @param string $module - * @return Zend_Controller_Plugin_ErrorHandler - */ - public function setErrorHandlerModule($module) - { - $this->_errorModule = (string) $module; - return $this; - } - - /** - * Retrieve the current error handler module - * - * @return string - */ - public function getErrorHandlerModule() - { - if (null === $this->_errorModule) { - $this->_errorModule = Zend_Controller_Front::getInstance()->getDispatcher()->getDefaultModule(); - } - return $this->_errorModule; - } - - /** - * Set the controller name for the error handler - * - * @param string $controller - * @return Zend_Controller_Plugin_ErrorHandler - */ - public function setErrorHandlerController($controller) - { - $this->_errorController = (string) $controller; - return $this; - } - - /** - * Retrieve the current error handler controller - * - * @return string - */ - public function getErrorHandlerController() - { - return $this->_errorController; - } - - /** - * Set the action name for the error handler - * - * @param string $action - * @return Zend_Controller_Plugin_ErrorHandler - */ - public function setErrorHandlerAction($action) - { - $this->_errorAction = (string) $action; - return $this; - } - - /** - * Retrieve the current error handler action - * - * @return string - */ - public function getErrorHandlerAction() - { - return $this->_errorAction; - } - - /** - * Route shutdown hook -- Ccheck for router exceptions - * - * @param Zend_Controller_Request_Abstract $request - */ - public function routeShutdown(Zend_Controller_Request_Abstract $request) - { - $this->_handleError($request); - } - - /** - * Pre dispatch hook -- check for exceptions and dispatch error handler if - * necessary - * - * @param Zend_Controller_Request_Abstract $request - */ - public function preDispatch(Zend_Controller_Request_Abstract $request) - { - $this->_handleError($request); - } - - /** - * Post dispatch hook -- check for exceptions and dispatch error handler if - * necessary - * - * @param Zend_Controller_Request_Abstract $request - */ - public function postDispatch(Zend_Controller_Request_Abstract $request) - { - $this->_handleError($request); - } - - /** - * Handle errors and exceptions - * - * If the 'noErrorHandler' front controller flag has been set, - * returns early. - * - * @param Zend_Controller_Request_Abstract $request - * @return void - */ - protected function _handleError(Zend_Controller_Request_Abstract $request) - { - $frontController = Zend_Controller_Front::getInstance(); - if ($frontController->getParam('noErrorHandler')) { - return; - } - - $response = $this->getResponse(); - - if ($this->_isInsideErrorHandlerLoop) { - $exceptions = $response->getException(); - if (count($exceptions) > $this->_exceptionCountAtFirstEncounter) { - // Exception thrown by error handler; tell the front controller to throw it - $frontController->throwExceptions(true); - throw array_pop($exceptions); - } - } - - // check for an exception AND allow the error handler controller the option to forward - if (($response->isException()) && (!$this->_isInsideErrorHandlerLoop)) { - $this->_isInsideErrorHandlerLoop = true; - - // Get exception information - $error = new ArrayObject(array(), ArrayObject::ARRAY_AS_PROPS); - $exceptions = $response->getException(); - $exception = $exceptions[0]; - $exceptionType = get_class($exception); - $error->exception = $exception; - switch ($exceptionType) { - case 'Zend_Controller_Router_Exception': - if (404 == $exception->getCode()) { - $error->type = self::EXCEPTION_NO_ROUTE; - } else { - $error->type = self::EXCEPTION_OTHER; - } - break; - case 'Zend_Controller_Dispatcher_Exception': - $error->type = self::EXCEPTION_NO_CONTROLLER; - break; - case 'Zend_Controller_Action_Exception': - if (404 == $exception->getCode()) { - $error->type = self::EXCEPTION_NO_ACTION; - } else { - $error->type = self::EXCEPTION_OTHER; - } - break; - default: - $error->type = self::EXCEPTION_OTHER; - break; - } - - // Keep a copy of the original request - $error->request = clone $request; - - // get a count of the number of exceptions encountered - $this->_exceptionCountAtFirstEncounter = count($exceptions); - - // Forward to the error handler - $request->setParam('error_handler', $error) - ->setModuleName($this->getErrorHandlerModule()) - ->setControllerName($this->getErrorHandlerController()) - ->setActionName($this->getErrorHandlerAction()) - ->setDispatched(false); - } - } -} diff --git a/library/Zend/Controller/Plugin/PutHandler.php b/library/Zend/Controller/Plugin/PutHandler.php deleted file mode 100644 index f30c8f4d..00000000 --- a/library/Zend/Controller/Plugin/PutHandler.php +++ /dev/null @@ -1,60 +0,0 @@ -_request->isPut()) { - $putParams = array(); - parse_str($this->_request->getRawBody(), $putParams); - $request->setParams($putParams); - } - } -} diff --git a/library/Zend/Controller/Request/Abstract.php b/library/Zend/Controller/Request/Abstract.php deleted file mode 100644 index 0e8c033b..00000000 --- a/library/Zend/Controller/Request/Abstract.php +++ /dev/null @@ -1,356 +0,0 @@ -_module) { - $this->_module = $this->getParam($this->getModuleKey()); - } - - return $this->_module; - } - - /** - * Set the module name to use - * - * @param string $value - * @return Zend_Controller_Request_Abstract - */ - public function setModuleName($value) - { - $this->_module = $value; - return $this; - } - - /** - * Retrieve the controller name - * - * @return string - */ - public function getControllerName() - { - if (null === $this->_controller) { - $this->_controller = $this->getParam($this->getControllerKey()); - } - - return $this->_controller; - } - - /** - * Set the controller name to use - * - * @param string $value - * @return Zend_Controller_Request_Abstract - */ - public function setControllerName($value) - { - $this->_controller = $value; - return $this; - } - - /** - * Retrieve the action name - * - * @return string - */ - public function getActionName() - { - if (null === $this->_action) { - $this->_action = $this->getParam($this->getActionKey()); - } - - return $this->_action; - } - - /** - * Set the action name - * - * @param string $value - * @return Zend_Controller_Request_Abstract - */ - public function setActionName($value) - { - $this->_action = $value; - /** - * @see ZF-3465 - */ - if (null === $value) { - $this->setParam($this->getActionKey(), $value); - } - return $this; - } - - /** - * Retrieve the module key - * - * @return string - */ - public function getModuleKey() - { - return $this->_moduleKey; - } - - /** - * Set the module key - * - * @param string $key - * @return Zend_Controller_Request_Abstract - */ - public function setModuleKey($key) - { - $this->_moduleKey = (string) $key; - return $this; - } - - /** - * Retrieve the controller key - * - * @return string - */ - public function getControllerKey() - { - return $this->_controllerKey; - } - - /** - * Set the controller key - * - * @param string $key - * @return Zend_Controller_Request_Abstract - */ - public function setControllerKey($key) - { - $this->_controllerKey = (string) $key; - return $this; - } - - /** - * Retrieve the action key - * - * @return string - */ - public function getActionKey() - { - return $this->_actionKey; - } - - /** - * Set the action key - * - * @param string $key - * @return Zend_Controller_Request_Abstract - */ - public function setActionKey($key) - { - $this->_actionKey = (string) $key; - return $this; - } - - /** - * Get an action parameter - * - * @param string $key - * @param mixed $default Default value to use if key not found - * @return mixed - */ - public function getParam($key, $default = null) - { - $key = (string) $key; - if (isset($this->_params[$key])) { - return $this->_params[$key]; - } - - return $default; - } - - /** - * Retrieve only user params (i.e, any param specific to the object and not the environment) - * - * @return array - */ - public function getUserParams() - { - return $this->_params; - } - - /** - * Retrieve a single user param (i.e, a param specific to the object and not the environment) - * - * @param string $key - * @param string $default Default value to use if key not found - * @return mixed - */ - public function getUserParam($key, $default = null) - { - if (isset($this->_params[$key])) { - return $this->_params[$key]; - } - - return $default; - } - - /** - * Set an action parameter - * - * A $value of null will unset the $key if it exists - * - * @param string $key - * @param mixed $value - * @return Zend_Controller_Request_Abstract - */ - public function setParam($key, $value) - { - $key = (string) $key; - - if ((null === $value) && isset($this->_params[$key])) { - unset($this->_params[$key]); - } elseif (null !== $value) { - $this->_params[$key] = $value; - } - - return $this; - } - - /** - * Get all action parameters - * - * @return array - */ - public function getParams() - { - return $this->_params; - } - - /** - * Set action parameters en masse; does not overwrite - * - * Null values will unset the associated key. - * - * @param array $array - * @return Zend_Controller_Request_Abstract - */ - public function setParams(array $array) - { - $this->_params = $this->_params + (array) $array; - - foreach ($array as $key => $value) { - if (null === $value) { - unset($this->_params[$key]); - } - } - - return $this; - } - - /** - * Unset all user parameters - * - * @return Zend_Controller_Request_Abstract - */ - public function clearParams() - { - $this->_params = array(); - return $this; - } - - /** - * Set flag indicating whether or not request has been dispatched - * - * @param boolean $flag - * @return Zend_Controller_Request_Abstract - */ - public function setDispatched($flag = true) - { - $this->_dispatched = $flag ? true : false; - return $this; - } - - /** - * Determine if the request has been dispatched - * - * @return boolean - */ - public function isDispatched() - { - return $this->_dispatched; - } -} diff --git a/library/Zend/Controller/Request/Apache404.php b/library/Zend/Controller/Request/Apache404.php deleted file mode 100644 index 3bb3873f..00000000 --- a/library/Zend/Controller/Request/Apache404.php +++ /dev/null @@ -1,82 +0,0 @@ -_requestUri = $requestUri; - return $this; - } -} diff --git a/library/Zend/Controller/Request/Exception.php b/library/Zend/Controller/Request/Exception.php deleted file mode 100644 index e2c26b7e..00000000 --- a/library/Zend/Controller/Request/Exception.php +++ /dev/null @@ -1,37 +0,0 @@ -valid()) { - $path = $uri->getPath(); - $query = $uri->getQuery(); - if (!empty($query)) { - $path .= '?' . $query; - } - - $this->setRequestUri($path); - } else { - require_once 'Zend/Controller/Request/Exception.php'; - throw new Zend_Controller_Request_Exception('Invalid URI provided to constructor'); - } - } else { - $this->setRequestUri(); - } - } - - /** - * Access values contained in the superglobals as public members - * Order of precedence: 1. GET, 2. POST, 3. COOKIE, 4. SERVER, 5. ENV - * - * @see http://msdn.microsoft.com/en-us/library/system.web.httprequest.item.aspx - * @param string $key - * @return mixed - */ - public function __get($key) - { - switch (true) { - case isset($this->_params[$key]): - return $this->_params[$key]; - case isset($_GET[$key]): - return $_GET[$key]; - case isset($_POST[$key]): - return $_POST[$key]; - case isset($_COOKIE[$key]): - return $_COOKIE[$key]; - case ($key == 'REQUEST_URI'): - return $this->getRequestUri(); - case ($key == 'PATH_INFO'): - return $this->getPathInfo(); - case isset($_SERVER[$key]): - return $_SERVER[$key]; - case isset($_ENV[$key]): - return $_ENV[$key]; - default: - return null; - } - } - - /** - * Alias to __get - * - * @param string $key - * @return mixed - */ - public function get($key) - { - return $this->__get($key); - } - - /** - * Set values - * - * In order to follow {@link __get()}, which operates on a number of - * superglobals, setting values through overloading is not allowed and will - * raise an exception. Use setParam() instead. - * - * @param string $key - * @param mixed $value - * @return void - * @throws Zend_Controller_Request_Exception - */ - public function __set($key, $value) - { - require_once 'Zend/Controller/Request/Exception.php'; - throw new Zend_Controller_Request_Exception('Setting values in superglobals not allowed; please use setParam()'); - } - - /** - * Alias to __set() - * - * @param string $key - * @param mixed $value - * @return void - */ - public function set($key, $value) - { - return $this->__set($key, $value); - } - - /** - * Check to see if a property is set - * - * @param string $key - * @return boolean - */ - public function __isset($key) - { - switch (true) { - case isset($this->_params[$key]): - return true; - case isset($_GET[$key]): - return true; - case isset($_POST[$key]): - return true; - case isset($_COOKIE[$key]): - return true; - case isset($_SERVER[$key]): - return true; - case isset($_ENV[$key]): - return true; - default: - return false; - } - } - - /** - * Alias to __isset() - * - * @param string $key - * @return boolean - */ - public function has($key) - { - return $this->__isset($key); - } - - /** - * Set GET values - * - * @param string|array $spec - * @param null|mixed $value - * @return Zend_Controller_Request_Http - */ - public function setQuery($spec, $value = null) - { - if ((null === $value) && !is_array($spec)) { - require_once 'Zend/Controller/Exception.php'; - throw new Zend_Controller_Exception('Invalid value passed to setQuery(); must be either array of values or key/value pair'); - } - if ((null === $value) && is_array($spec)) { - foreach ($spec as $key => $value) { - $this->setQuery($key, $value); - } - return $this; - } - $_GET[(string) $spec] = $value; - return $this; - } - - /** - * Retrieve a member of the $_GET superglobal - * - * If no $key is passed, returns the entire $_GET array. - * - * @todo How to retrieve from nested arrays - * @param string $key - * @param mixed $default Default value to use if key not found - * @return mixed Returns null if key does not exist - */ - public function getQuery($key = null, $default = null) - { - if (null === $key) { - return $_GET; - } - - return (isset($_GET[$key])) ? $_GET[$key] : $default; - } - - /** - * Set POST values - * - * @param string|array $spec - * @param null|mixed $value - * @return Zend_Controller_Request_Http - */ - public function setPost($spec, $value = null) - { - if ((null === $value) && !is_array($spec)) { - require_once 'Zend/Controller/Exception.php'; - throw new Zend_Controller_Exception('Invalid value passed to setPost(); must be either array of values or key/value pair'); - } - if ((null === $value) && is_array($spec)) { - foreach ($spec as $key => $value) { - $this->setPost($key, $value); - } - return $this; - } - $_POST[(string) $spec] = $value; - return $this; - } - - /** - * Retrieve a member of the $_POST superglobal - * - * If no $key is passed, returns the entire $_POST array. - * - * @todo How to retrieve from nested arrays - * @param string $key - * @param mixed $default Default value to use if key not found - * @return mixed Returns null if key does not exist - */ - public function getPost($key = null, $default = null) - { - if (null === $key) { - return $_POST; - } - - return (isset($_POST[$key])) ? $_POST[$key] : $default; - } - - /** - * Retrieve a member of the $_COOKIE superglobal - * - * If no $key is passed, returns the entire $_COOKIE array. - * - * @todo How to retrieve from nested arrays - * @param string $key - * @param mixed $default Default value to use if key not found - * @return mixed Returns null if key does not exist - */ - public function getCookie($key = null, $default = null) - { - if (null === $key) { - return $_COOKIE; - } - - return (isset($_COOKIE[$key])) ? $_COOKIE[$key] : $default; - } - - /** - * Retrieve a member of the $_SERVER superglobal - * - * If no $key is passed, returns the entire $_SERVER array. - * - * @param string $key - * @param mixed $default Default value to use if key not found - * @return mixed Returns null if key does not exist - */ - public function getServer($key = null, $default = null) - { - if (null === $key) { - return $_SERVER; - } - - return (isset($_SERVER[$key])) ? $_SERVER[$key] : $default; - } - - /** - * Retrieve a member of the $_ENV superglobal - * - * If no $key is passed, returns the entire $_ENV array. - * - * @param string $key - * @param mixed $default Default value to use if key not found - * @return mixed Returns null if key does not exist - */ - public function getEnv($key = null, $default = null) - { - if (null === $key) { - return $_ENV; - } - - return (isset($_ENV[$key])) ? $_ENV[$key] : $default; - } - - /** - * Set the REQUEST_URI on which the instance operates - * - * If no request URI is passed, uses the value in $_SERVER['REQUEST_URI'], - * $_SERVER['HTTP_X_REWRITE_URL'], or $_SERVER['ORIG_PATH_INFO'] + $_SERVER['QUERY_STRING']. - * - * @param string $requestUri - * @return Zend_Controller_Request_Http - */ - public function setRequestUri($requestUri = null) - { - if ($requestUri === null) { - if (isset($_SERVER['HTTP_X_ORIGINAL_URL'])) { - // IIS with Microsoft Rewrite Module - $requestUri = $_SERVER['HTTP_X_ORIGINAL_URL']; - } elseif (isset($_SERVER['HTTP_X_REWRITE_URL'])) { - // IIS with ISAPI_Rewrite - $requestUri = $_SERVER['HTTP_X_REWRITE_URL']; - } elseif ( - // IIS7 with URL Rewrite: make sure we get the unencoded url (double slash problem) - isset($_SERVER['IIS_WasUrlRewritten']) - && $_SERVER['IIS_WasUrlRewritten'] == '1' - && isset($_SERVER['UNENCODED_URL']) - && $_SERVER['UNENCODED_URL'] != '' - ) { - $requestUri = $_SERVER['UNENCODED_URL']; - } elseif (isset($_SERVER['REQUEST_URI'])) { - $requestUri = $_SERVER['REQUEST_URI']; - // Http proxy reqs setup request uri with scheme and host [and port] + the url path, only use url path - $schemeAndHttpHost = $this->getScheme() . '://' . $this->getHttpHost(); - if (strpos($requestUri, $schemeAndHttpHost) === 0) { - $requestUri = substr($requestUri, strlen($schemeAndHttpHost)); - } - } elseif (isset($_SERVER['ORIG_PATH_INFO'])) { // IIS 5.0, PHP as CGI - $requestUri = $_SERVER['ORIG_PATH_INFO']; - if (!empty($_SERVER['QUERY_STRING'])) { - $requestUri .= '?' . $_SERVER['QUERY_STRING']; - } - } else { - return $this; - } - } elseif (!is_string($requestUri)) { - return $this; - } else { - // Set GET items, if available - if (false !== ($pos = strpos($requestUri, '?'))) { - // Get key => value pairs and set $_GET - $query = substr($requestUri, $pos + 1); - parse_str($query, $vars); - $this->setQuery($vars); - } - } - - $this->_requestUri = $requestUri; - return $this; - } - - /** - * Returns the REQUEST_URI taking into account - * platform differences between Apache and IIS - * - * @return string - */ - public function getRequestUri() - { - if (empty($this->_requestUri)) { - $this->setRequestUri(); - } - - return $this->_requestUri; - } - - /** - * Set the base URL of the request; i.e., the segment leading to the script name - * - * E.g.: - * - /admin - * - /myapp - * - /subdir/index.php - * - * Do not use the full URI when providing the base. The following are - * examples of what not to use: - * - http://example.com/admin (should be just /admin) - * - http://example.com/subdir/index.php (should be just /subdir/index.php) - * - * If no $baseUrl is provided, attempts to determine the base URL from the - * environment, using SCRIPT_FILENAME, SCRIPT_NAME, PHP_SELF, and - * ORIG_SCRIPT_NAME in its determination. - * - * @param mixed $baseUrl - * @return Zend_Controller_Request_Http - */ - public function setBaseUrl($baseUrl = null) - { - if ((null !== $baseUrl) && !is_string($baseUrl)) { - return $this; - } - - if ($baseUrl === null) { - $filename = (isset($_SERVER['SCRIPT_FILENAME'])) ? basename($_SERVER['SCRIPT_FILENAME']) : ''; - - if (isset($_SERVER['SCRIPT_NAME']) && basename($_SERVER['SCRIPT_NAME']) === $filename) { - $baseUrl = $_SERVER['SCRIPT_NAME']; - } elseif (isset($_SERVER['PHP_SELF']) && basename($_SERVER['PHP_SELF']) === $filename) { - $baseUrl = $_SERVER['PHP_SELF']; - } elseif (isset($_SERVER['ORIG_SCRIPT_NAME']) && basename($_SERVER['ORIG_SCRIPT_NAME']) === $filename) { - $baseUrl = $_SERVER['ORIG_SCRIPT_NAME']; // 1and1 shared hosting compatibility - } else { - // Backtrack up the script_filename to find the portion matching - // php_self - $path = isset($_SERVER['PHP_SELF']) ? $_SERVER['PHP_SELF'] : ''; - $file = isset($_SERVER['SCRIPT_FILENAME']) ? $_SERVER['SCRIPT_FILENAME'] : ''; - $segs = explode('/', trim($file, '/')); - $segs = array_reverse($segs); - $index = 0; - $last = count($segs); - $baseUrl = ''; - do { - $seg = $segs[$index]; - $baseUrl = '/' . $seg . $baseUrl; - ++$index; - } while (($last > $index) && (false !== ($pos = strpos($path, $baseUrl))) && (0 != $pos)); - } - - // Does the baseUrl have anything in common with the request_uri? - $requestUri = $this->getRequestUri(); - - if (0 === strpos($requestUri, $baseUrl)) { - // full $baseUrl matches - $this->_baseUrl = $baseUrl; - return $this; - } - - if (0 === strpos($requestUri, dirname($baseUrl))) { - // directory portion of $baseUrl matches - $this->_baseUrl = rtrim(dirname($baseUrl), '/'); - return $this; - } - - $truncatedRequestUri = $requestUri; - if (($pos = strpos($requestUri, '?')) !== false) { - $truncatedRequestUri = substr($requestUri, 0, $pos); - } - - $basename = basename($baseUrl); - if (empty($basename) || !strpos($truncatedRequestUri, $basename)) { - // no match whatsoever; set it blank - $this->_baseUrl = ''; - return $this; - } - - // If using mod_rewrite or ISAPI_Rewrite strip the script filename - // out of baseUrl. $pos !== 0 makes sure it is not matching a value - // from PATH_INFO or QUERY_STRING - if ((strlen($requestUri) >= strlen($baseUrl)) - && ((false !== ($pos = strpos($requestUri, $baseUrl))) && ($pos !== 0))) - { - $baseUrl = substr($requestUri, 0, $pos + strlen($baseUrl)); - } - } - - $this->_baseUrl = rtrim($baseUrl, '/'); - return $this; - } - - /** - * Everything in REQUEST_URI before PATH_INFO - *
        - * - * @return string - */ - public function getBaseUrl($raw = false) - { - if (null === $this->_baseUrl) { - $this->setBaseUrl(); - } - - return (($raw == false) ? urldecode($this->_baseUrl) : $this->_baseUrl); - } - - /** - * Set the base path for the URL - * - * @param string|null $basePath - * @return Zend_Controller_Request_Http - */ - public function setBasePath($basePath = null) - { - if ($basePath === null) { - $filename = (isset($_SERVER['SCRIPT_FILENAME'])) - ? basename($_SERVER['SCRIPT_FILENAME']) - : ''; - - $baseUrl = $this->getBaseUrl(); - if (empty($baseUrl)) { - $this->_basePath = ''; - return $this; - } - - if (basename($baseUrl) === $filename) { - $basePath = dirname($baseUrl); - } else { - $basePath = $baseUrl; - } - } - - if (substr(PHP_OS, 0, 3) === 'WIN') { - $basePath = str_replace('\\', '/', $basePath); - } - - $this->_basePath = rtrim($basePath, '/'); - return $this; - } - - /** - * Everything in REQUEST_URI before PATH_INFO not including the filename - * - * - * @return string - */ - public function getBasePath() - { - if (null === $this->_basePath) { - $this->setBasePath(); - } - - return $this->_basePath; - } - - /** - * Set the PATH_INFO string - * - * @param string|null $pathInfo - * @return Zend_Controller_Request_Http - */ - public function setPathInfo($pathInfo = null) - { - if ($pathInfo === null) { - $baseUrl = $this->getBaseUrl(); // this actually calls setBaseUrl() & setRequestUri() - $baseUrlRaw = $this->getBaseUrl(false); - $baseUrlEncoded = urlencode($baseUrlRaw); - - if (null === ($requestUri = $this->getRequestUri())) { - return $this; - } - - // Remove the query string from REQUEST_URI - if ($pos = strpos($requestUri, '?')) { - $requestUri = substr($requestUri, 0, $pos); - } - - if (!empty($baseUrl) || !empty($baseUrlRaw)) { - if (strpos($requestUri, $baseUrl) === 0) { - $pathInfo = substr($requestUri, strlen($baseUrl)); - } elseif (strpos($requestUri, $baseUrlRaw) === 0) { - $pathInfo = substr($requestUri, strlen($baseUrlRaw)); - } elseif (strpos($requestUri, $baseUrlEncoded) === 0) { - $pathInfo = substr($requestUri, strlen($baseUrlEncoded)); - } else { - $pathInfo = $requestUri; - } - } else { - $pathInfo = $requestUri; - } - - } - - $this->_pathInfo = (string) $pathInfo; - return $this; - } - - /** - * Returns everything between the BaseUrl and QueryString. - * This value is calculated instead of reading PATH_INFO - * directly from $_SERVER due to cross-platform differences. - * - * @return string - */ - public function getPathInfo() - { - if (empty($this->_pathInfo)) { - $this->setPathInfo(); - } - - return $this->_pathInfo; - } - - /** - * Set allowed parameter sources - * - * Can be empty array, or contain one or more of '_GET' or '_POST'. - * - * @param array $paramSoures - * @return Zend_Controller_Request_Http - */ - public function setParamSources(array $paramSources = array()) - { - $this->_paramSources = $paramSources; - return $this; - } - - /** - * Get list of allowed parameter sources - * - * @return array - */ - public function getParamSources() - { - return $this->_paramSources; - } - - /** - * Set a userland parameter - * - * Uses $key to set a userland parameter. If $key is an alias, the actual - * key will be retrieved and used to set the parameter. - * - * @param mixed $key - * @param mixed $value - * @return Zend_Controller_Request_Http - */ - public function setParam($key, $value) - { - $key = (null !== ($alias = $this->getAlias($key))) ? $alias : $key; - parent::setParam($key, $value); - return $this; - } - - /** - * Retrieve a parameter - * - * Retrieves a parameter from the instance. Priority is in the order of - * userland parameters (see {@link setParam()}), $_GET, $_POST. If a - * parameter matching the $key is not found, null is returned. - * - * If the $key is an alias, the actual key aliased will be used. - * - * @param mixed $key - * @param mixed $default Default value to use if key not found - * @return mixed - */ - public function getParam($key, $default = null) - { - $keyName = (null !== ($alias = $this->getAlias($key))) ? $alias : $key; - - $paramSources = $this->getParamSources(); - if (isset($this->_params[$keyName])) { - return $this->_params[$keyName]; - } elseif (in_array('_GET', $paramSources) && (isset($_GET[$keyName]))) { - return $_GET[$keyName]; - } elseif (in_array('_POST', $paramSources) && (isset($_POST[$keyName]))) { - return $_POST[$keyName]; - } - - return $default; - } - - /** - * Retrieve an array of parameters - * - * Retrieves a merged array of parameters, with precedence of userland - * params (see {@link setParam()}), $_GET, $_POST (i.e., values in the - * userland params will take precedence over all others). - * - * @return array - */ - public function getParams() - { - $return = $this->_params; - $paramSources = $this->getParamSources(); - if (in_array('_GET', $paramSources) - && isset($_GET) - && is_array($_GET) - ) { - $return += $_GET; - } - if (in_array('_POST', $paramSources) - && isset($_POST) - && is_array($_POST) - ) { - $return += $_POST; - } - return $return; - } - - /** - * Set parameters - * - * Set one or more parameters. Parameters are set as userland parameters, - * using the keys specified in the array. - * - * @param array $params - * @return Zend_Controller_Request_Http - */ - public function setParams(array $params) - { - foreach ($params as $key => $value) { - $this->setParam($key, $value); - } - return $this; - } - - /** - * Set a key alias - * - * Set an alias used for key lookups. $name specifies the alias, $target - * specifies the actual key to use. - * - * @param string $name - * @param string $target - * @return Zend_Controller_Request_Http - */ - public function setAlias($name, $target) - { - $this->_aliases[$name] = $target; - return $this; - } - - /** - * Retrieve an alias - * - * Retrieve the actual key represented by the alias $name. - * - * @param string $name - * @return string|null Returns null when no alias exists - */ - public function getAlias($name) - { - if (isset($this->_aliases[$name])) { - return $this->_aliases[$name]; - } - - return null; - } - - /** - * Retrieve the list of all aliases - * - * @return array - */ - public function getAliases() - { - return $this->_aliases; - } - - /** - * Return the method by which the request was made - * - * @return string - */ - public function getMethod() - { - return $this->getServer('REQUEST_METHOD'); - } - - /** - * Was the request made by POST? - * - * @return boolean - */ - public function isPost() - { - if ('POST' == $this->getMethod()) { - return true; - } - - return false; - } - - /** - * Was the request made by GET? - * - * @return boolean - */ - public function isGet() - { - if ('GET' == $this->getMethod()) { - return true; - } - - return false; - } - - /** - * Was the request made by PUT? - * - * @return boolean - */ - public function isPut() - { - if ('PUT' == $this->getMethod()) { - return true; - } - - return false; - } - - /** - * Was the request made by DELETE? - * - * @return boolean - */ - public function isDelete() - { - if ('DELETE' == $this->getMethod()) { - return true; - } - - return false; - } - - /** - * Was the request made by HEAD? - * - * @return boolean - */ - public function isHead() - { - if ('HEAD' == $this->getMethod()) { - return true; - } - - return false; - } - - /** - * Was the request made by OPTIONS? - * - * @return boolean - */ - public function isOptions() - { - if ('OPTIONS' == $this->getMethod()) { - return true; - } - - return false; - } - - /** - * Is the request a Javascript XMLHttpRequest? - * - * Should work with Prototype/Script.aculo.us, possibly others. - * - * @return boolean - */ - public function isXmlHttpRequest() - { - return ($this->getHeader('X_REQUESTED_WITH') == 'XMLHttpRequest'); - } - - /** - * Is this a Flash request? - * - * @return boolean - */ - public function isFlashRequest() - { - $header = strtolower($this->getHeader('USER_AGENT')); - return (strstr($header, ' flash')) ? true : false; - } - - /** - * Is https secure request - * - * @return boolean - */ - public function isSecure() - { - return ($this->getScheme() === self::SCHEME_HTTPS); - } - - /** - * Return the raw body of the request, if present - * - * @return string|false Raw body, or false if not present - */ - public function getRawBody() - { - if (null === $this->_rawBody) { - $body = file_get_contents('php://input'); - - if (strlen(trim($body)) > 0) { - $this->_rawBody = $body; - } else { - $this->_rawBody = false; - } - } - return $this->_rawBody; - } - - /** - * Return the value of the given HTTP header. Pass the header name as the - * plain, HTTP-specified header name. Ex.: Ask for 'Accept' to get the - * Accept header, 'Accept-Encoding' to get the Accept-Encoding header. - * - * @param string $header HTTP header name - * @return string|false HTTP header value, or false if not found - * @throws Zend_Controller_Request_Exception - */ - public function getHeader($header) - { - if (empty($header)) { - require_once 'Zend/Controller/Request/Exception.php'; - throw new Zend_Controller_Request_Exception('An HTTP header name is required'); - } - - // Try to get it from the $_SERVER array first - $temp = 'HTTP_' . strtoupper(str_replace('-', '_', $header)); - if (isset($_SERVER[$temp])) { - return $_SERVER[$temp]; - } - - // This seems to be the only way to get the Authorization header on - // Apache - if (function_exists('apache_request_headers')) { - $headers = apache_request_headers(); - if (isset($headers[$header])) { - return $headers[$header]; - } - $header = strtolower($header); - foreach ($headers as $key => $value) { - if (strtolower($key) == $header) { - return $value; - } - } - } - - return false; - } - - /** - * Get the request URI scheme - * - * @return string - */ - public function getScheme() - { - return ($this->getServer('HTTPS') == 'on') ? self::SCHEME_HTTPS : self::SCHEME_HTTP; - } - - /** - * Get the HTTP host. - * - * "Host" ":" host [ ":" port ] ; Section 3.2.2 - * Note the HTTP Host header is not the same as the URI host. - * It includes the port while the URI host doesn't. - * - * @return string - */ - public function getHttpHost() - { - $host = $this->getServer('HTTP_HOST'); - if (!empty($host)) { - return $host; - } - - $scheme = $this->getScheme(); - $name = $this->getServer('SERVER_NAME'); - $port = $this->getServer('SERVER_PORT'); - - if(null === $name) { - return ''; - } - elseif (($scheme == self::SCHEME_HTTP && $port == 80) || ($scheme == self::SCHEME_HTTPS && $port == 443)) { - return $name; - } else { - return $name . ':' . $port; - } - } - - /** - * Get the client's IP addres - * - * @param boolean $checkProxy - * @return string - */ - public function getClientIp($checkProxy = true) - { - if ($checkProxy && $this->getServer('HTTP_CLIENT_IP') != null) { - $ip = $this->getServer('HTTP_CLIENT_IP'); - } else if ($checkProxy && $this->getServer('HTTP_X_FORWARDED_FOR') != null) { - $ip = $this->getServer('HTTP_X_FORWARDED_FOR'); - } else { - $ip = $this->getServer('REMOTE_ADDR'); - } - - return $ip; - } -} diff --git a/library/Zend/Controller/Request/HttpTestCase.php b/library/Zend/Controller/Request/HttpTestCase.php deleted file mode 100644 index 80ae00c4..00000000 --- a/library/Zend/Controller/Request/HttpTestCase.php +++ /dev/null @@ -1,276 +0,0 @@ -_rawBody = (string) $content; - return $this; - } - - /** - * Get RAW POST body - * - * @return string|null - */ - public function getRawBody() - { - return $this->_rawBody; - } - - /** - * Clear raw POST body - * - * @return Zend_Controller_Request_HttpTestCase - */ - public function clearRawBody() - { - $this->_rawBody = null; - return $this; - } - - /** - * Set a cookie - * - * @param string $key - * @param mixed $value - * @return Zend_Controller_Request_HttpTestCase - */ - public function setCookie($key, $value) - { - $_COOKIE[(string) $key] = $value; - return $this; - } - - /** - * Set multiple cookies at once - * - * @param array $cookies - * @return void - */ - public function setCookies(array $cookies) - { - foreach ($cookies as $key => $value) { - $_COOKIE[$key] = $value; - } - return $this; - } - - /** - * Clear all cookies - * - * @return Zend_Controller_Request_HttpTestCase - */ - public function clearCookies() - { - $_COOKIE = array(); - return $this; - } - - /** - * Set request method - * - * @param string $type - * @return Zend_Controller_Request_HttpTestCase - */ - public function setMethod($type) - { - $type = strtoupper(trim((string) $type)); - if (!in_array($type, $this->_validMethodTypes)) { - require_once 'Zend/Controller/Exception.php'; - throw new Zend_Controller_Exception('Invalid request method specified'); - } - $this->_method = $type; - return $this; - } - - /** - * Get request method - * - * @return string|null - */ - public function getMethod() - { - return $this->_method; - } - - /** - * Set a request header - * - * @param string $key - * @param string $value - * @return Zend_Controller_Request_HttpTestCase - */ - public function setHeader($key, $value) - { - $key = $this->_normalizeHeaderName($key); - $this->_headers[$key] = (string) $value; - return $this; - } - - /** - * Set request headers - * - * @param array $headers - * @return Zend_Controller_Request_HttpTestCase - */ - public function setHeaders(array $headers) - { - foreach ($headers as $key => $value) { - $this->setHeader($key, $value); - } - return $this; - } - - /** - * Get request header - * - * @param string $header - * @param mixed $default - * @return string|null - */ - public function getHeader($header, $default = null) - { - $header = $this->_normalizeHeaderName($header); - if (array_key_exists($header, $this->_headers)) { - return $this->_headers[$header]; - } - return $default; - } - - /** - * Get all request headers - * - * @return array - */ - public function getHeaders() - { - return $this->_headers; - } - - /** - * Clear request headers - * - * @return Zend_Controller_Request_HttpTestCase - */ - public function clearHeaders() - { - $this->_headers = array(); - return $this; - } - - /** - * Get REQUEST_URI - * - * @return null|string - */ - public function getRequestUri() - { - return $this->_requestUri; - } - - /** - * Normalize a header name for setting and retrieval - * - * @param string $name - * @return string - */ - protected function _normalizeHeaderName($name) - { - $name = strtoupper((string) $name); - $name = str_replace('-', '_', $name); - return $name; - } -} diff --git a/library/Zend/Controller/Request/Simple.php b/library/Zend/Controller/Request/Simple.php deleted file mode 100644 index 4d92a858..00000000 --- a/library/Zend/Controller/Request/Simple.php +++ /dev/null @@ -1,55 +0,0 @@ -setActionName($action); - } - - if ($controller) { - $this->setControllerName($controller); - } - - if ($module) { - $this->setModuleName($module); - } - - if ($params) { - $this->setParams($params); - } - } - -} diff --git a/library/Zend/Controller/Response/Abstract.php b/library/Zend/Controller/Response/Abstract.php deleted file mode 100644 index 393c231a..00000000 --- a/library/Zend/Controller/Response/Abstract.php +++ /dev/null @@ -1,796 +0,0 @@ -canSendHeaders(true); - $name = $this->_normalizeHeader($name); - $value = (string) $value; - - if ($replace) { - foreach ($this->_headers as $key => $header) { - if ($name == $header['name']) { - unset($this->_headers[$key]); - } - } - } - - $this->_headers[] = array( - 'name' => $name, - 'value' => $value, - 'replace' => $replace - ); - - return $this; - } - - /** - * Set redirect URL - * - * Sets Location header and response code. Forces replacement of any prior - * redirects. - * - * @param string $url - * @param int $code - * @return Zend_Controller_Response_Abstract - */ - public function setRedirect($url, $code = 302) - { - $this->canSendHeaders(true); - $this->setHeader('Location', $url, true) - ->setHttpResponseCode($code); - - return $this; - } - - /** - * Is this a redirect? - * - * @return boolean - */ - public function isRedirect() - { - return $this->_isRedirect; - } - - /** - * Return array of headers; see {@link $_headers} for format - * - * @return array - */ - public function getHeaders() - { - return $this->_headers; - } - - /** - * Clear headers - * - * @return Zend_Controller_Response_Abstract - */ - public function clearHeaders() - { - $this->_headers = array(); - - return $this; - } - - /** - * Clears the specified HTTP header - * - * @param string $name - * @return Zend_Controller_Response_Abstract - */ - public function clearHeader($name) - { - if (! count($this->_headers)) { - return $this; - } - - foreach ($this->_headers as $index => $header) { - if ($name == $header['name']) { - unset($this->_headers[$index]); - } - } - - return $this; - } - - /** - * Set raw HTTP header - * - * Allows setting non key => value headers, such as status codes - * - * @param string $value - * @return Zend_Controller_Response_Abstract - */ - public function setRawHeader($value) - { - $this->canSendHeaders(true); - if ('Location' == substr($value, 0, 8)) { - $this->_isRedirect = true; - } - $this->_headersRaw[] = (string) $value; - return $this; - } - - /** - * Retrieve all {@link setRawHeader() raw HTTP headers} - * - * @return array - */ - public function getRawHeaders() - { - return $this->_headersRaw; - } - - /** - * Clear all {@link setRawHeader() raw HTTP headers} - * - * @return Zend_Controller_Response_Abstract - */ - public function clearRawHeaders() - { - $this->_headersRaw = array(); - return $this; - } - - /** - * Clears the specified raw HTTP header - * - * @param string $headerRaw - * @return Zend_Controller_Response_Abstract - */ - public function clearRawHeader($headerRaw) - { - if (! count($this->_headersRaw)) { - return $this; - } - - $key = array_search($headerRaw, $this->_headersRaw); - if ($key !== false) { - unset($this->_headersRaw[$key]); - } - - return $this; - } - - /** - * Clear all headers, normal and raw - * - * @return Zend_Controller_Response_Abstract - */ - public function clearAllHeaders() - { - return $this->clearHeaders() - ->clearRawHeaders(); - } - - /** - * Set HTTP response code to use with headers - * - * @param int $code - * @return Zend_Controller_Response_Abstract - */ - public function setHttpResponseCode($code) - { - if (!is_int($code) || (100 > $code) || (599 < $code)) { - require_once 'Zend/Controller/Response/Exception.php'; - throw new Zend_Controller_Response_Exception('Invalid HTTP response code'); - } - - if ((300 <= $code) && (307 >= $code)) { - $this->_isRedirect = true; - } else { - $this->_isRedirect = false; - } - - $this->_httpResponseCode = $code; - return $this; - } - - /** - * Retrieve HTTP response code - * - * @return int - */ - public function getHttpResponseCode() - { - return $this->_httpResponseCode; - } - - /** - * Can we send headers? - * - * @param boolean $throw Whether or not to throw an exception if headers have been sent; defaults to false - * @return boolean - * @throws Zend_Controller_Response_Exception - */ - public function canSendHeaders($throw = false) - { - $ok = headers_sent($file, $line); - if ($ok && $throw && $this->headersSentThrowsException) { - require_once 'Zend/Controller/Response/Exception.php'; - throw new Zend_Controller_Response_Exception('Cannot send headers; headers already sent in ' . $file . ', line ' . $line); - } - - return !$ok; - } - - /** - * Send all headers - * - * Sends any headers specified. If an {@link setHttpResponseCode() HTTP response code} - * has been specified, it is sent with the first header. - * - * @return Zend_Controller_Response_Abstract - */ - public function sendHeaders() - { - // Only check if we can send headers if we have headers to send - if (count($this->_headersRaw) || count($this->_headers) || (200 != $this->_httpResponseCode)) { - $this->canSendHeaders(true); - } elseif (200 == $this->_httpResponseCode) { - // Haven't changed the response code, and we have no headers - return $this; - } - - $httpCodeSent = false; - - foreach ($this->_headersRaw as $header) { - if (!$httpCodeSent && $this->_httpResponseCode) { - header($header, true, $this->_httpResponseCode); - $httpCodeSent = true; - } else { - header($header); - } - } - - foreach ($this->_headers as $header) { - if (!$httpCodeSent && $this->_httpResponseCode) { - header($header['name'] . ': ' . $header['value'], $header['replace'], $this->_httpResponseCode); - $httpCodeSent = true; - } else { - header($header['name'] . ': ' . $header['value'], $header['replace']); - } - } - - if (!$httpCodeSent) { - header('HTTP/1.1 ' . $this->_httpResponseCode); - $httpCodeSent = true; - } - - return $this; - } - - /** - * Set body content - * - * If $name is not passed, or is not a string, resets the entire body and - * sets the 'default' key to $content. - * - * If $name is a string, sets the named segment in the body array to - * $content. - * - * @param string $content - * @param null|string $name - * @return Zend_Controller_Response_Abstract - */ - public function setBody($content, $name = null) - { - if ((null === $name) || !is_string($name)) { - $this->_body = array('default' => (string) $content); - } else { - $this->_body[$name] = (string) $content; - } - - return $this; - } - - /** - * Append content to the body content - * - * @param string $content - * @param null|string $name - * @return Zend_Controller_Response_Abstract - */ - public function appendBody($content, $name = null) - { - if ((null === $name) || !is_string($name)) { - if (isset($this->_body['default'])) { - $this->_body['default'] .= (string) $content; - } else { - return $this->append('default', $content); - } - } elseif (isset($this->_body[$name])) { - $this->_body[$name] .= (string) $content; - } else { - return $this->append($name, $content); - } - - return $this; - } - - /** - * Clear body array - * - * With no arguments, clears the entire body array. Given a $name, clears - * just that named segment; if no segment matching $name exists, returns - * false to indicate an error. - * - * @param string $name Named segment to clear - * @return boolean - */ - public function clearBody($name = null) - { - if (null !== $name) { - $name = (string) $name; - if (isset($this->_body[$name])) { - unset($this->_body[$name]); - return true; - } - - return false; - } - - $this->_body = array(); - return true; - } - - /** - * Return the body content - * - * If $spec is false, returns the concatenated values of the body content - * array. If $spec is boolean true, returns the body content array. If - * $spec is a string and matches a named segment, returns the contents of - * that segment; otherwise, returns null. - * - * @param boolean $spec - * @return string|array|null - */ - public function getBody($spec = false) - { - if (false === $spec) { - ob_start(); - $this->outputBody(); - return ob_get_clean(); - } elseif (true === $spec) { - return $this->_body; - } elseif (is_string($spec) && isset($this->_body[$spec])) { - return $this->_body[$spec]; - } - - return null; - } - - /** - * Append a named body segment to the body content array - * - * If segment already exists, replaces with $content and places at end of - * array. - * - * @param string $name - * @param string $content - * @return Zend_Controller_Response_Abstract - */ - public function append($name, $content) - { - if (!is_string($name)) { - require_once 'Zend/Controller/Response/Exception.php'; - throw new Zend_Controller_Response_Exception('Invalid body segment key ("' . gettype($name) . '")'); - } - - if (isset($this->_body[$name])) { - unset($this->_body[$name]); - } - $this->_body[$name] = (string) $content; - return $this; - } - - /** - * Prepend a named body segment to the body content array - * - * If segment already exists, replaces with $content and places at top of - * array. - * - * @param string $name - * @param string $content - * @return void - */ - public function prepend($name, $content) - { - if (!is_string($name)) { - require_once 'Zend/Controller/Response/Exception.php'; - throw new Zend_Controller_Response_Exception('Invalid body segment key ("' . gettype($name) . '")'); - } - - if (isset($this->_body[$name])) { - unset($this->_body[$name]); - } - - $new = array($name => (string) $content); - $this->_body = $new + $this->_body; - - return $this; - } - - /** - * Insert a named segment into the body content array - * - * @param string $name - * @param string $content - * @param string $parent - * @param boolean $before Whether to insert the new segment before or - * after the parent. Defaults to false (after) - * @return Zend_Controller_Response_Abstract - */ - public function insert($name, $content, $parent = null, $before = false) - { - if (!is_string($name)) { - require_once 'Zend/Controller/Response/Exception.php'; - throw new Zend_Controller_Response_Exception('Invalid body segment key ("' . gettype($name) . '")'); - } - - if ((null !== $parent) && !is_string($parent)) { - require_once 'Zend/Controller/Response/Exception.php'; - throw new Zend_Controller_Response_Exception('Invalid body segment parent key ("' . gettype($parent) . '")'); - } - - if (isset($this->_body[$name])) { - unset($this->_body[$name]); - } - - if ((null === $parent) || !isset($this->_body[$parent])) { - return $this->append($name, $content); - } - - $ins = array($name => (string) $content); - $keys = array_keys($this->_body); - $loc = array_search($parent, $keys); - if (!$before) { - // Increment location if not inserting before - ++$loc; - } - - if (0 === $loc) { - // If location of key is 0, we're prepending - $this->_body = $ins + $this->_body; - } elseif ($loc >= (count($this->_body))) { - // If location of key is maximal, we're appending - $this->_body = $this->_body + $ins; - } else { - // Otherwise, insert at location specified - $pre = array_slice($this->_body, 0, $loc); - $post = array_slice($this->_body, $loc); - $this->_body = $pre + $ins + $post; - } - - return $this; - } - - /** - * Echo the body segments - * - * @return void - */ - public function outputBody() - { - $body = implode('', $this->_body); - echo $body; - } - - /** - * Register an exception with the response - * - * @param Exception $e - * @return Zend_Controller_Response_Abstract - */ - public function setException(Exception $e) - { - $this->_exceptions[] = $e; - return $this; - } - - /** - * Retrieve the exception stack - * - * @return array - */ - public function getException() - { - return $this->_exceptions; - } - - /** - * Has an exception been registered with the response? - * - * @return boolean - */ - public function isException() - { - return !empty($this->_exceptions); - } - - /** - * Does the response object contain an exception of a given type? - * - * @param string $type - * @return boolean - */ - public function hasExceptionOfType($type) - { - foreach ($this->_exceptions as $e) { - if ($e instanceof $type) { - return true; - } - } - - return false; - } - - /** - * Does the response object contain an exception with a given message? - * - * @param string $message - * @return boolean - */ - public function hasExceptionOfMessage($message) - { - foreach ($this->_exceptions as $e) { - if ($message == $e->getMessage()) { - return true; - } - } - - return false; - } - - /** - * Does the response object contain an exception with a given code? - * - * @param int $code - * @return boolean - */ - public function hasExceptionOfCode($code) - { - $code = (int) $code; - foreach ($this->_exceptions as $e) { - if ($code == $e->getCode()) { - return true; - } - } - - return false; - } - - /** - * Retrieve all exceptions of a given type - * - * @param string $type - * @return false|array - */ - public function getExceptionByType($type) - { - $exceptions = array(); - foreach ($this->_exceptions as $e) { - if ($e instanceof $type) { - $exceptions[] = $e; - } - } - - if (empty($exceptions)) { - $exceptions = false; - } - - return $exceptions; - } - - /** - * Retrieve all exceptions of a given message - * - * @param string $message - * @return false|array - */ - public function getExceptionByMessage($message) - { - $exceptions = array(); - foreach ($this->_exceptions as $e) { - if ($message == $e->getMessage()) { - $exceptions[] = $e; - } - } - - if (empty($exceptions)) { - $exceptions = false; - } - - return $exceptions; - } - - /** - * Retrieve all exceptions of a given code - * - * @param mixed $code - * @return void - */ - public function getExceptionByCode($code) - { - $code = (int) $code; - $exceptions = array(); - foreach ($this->_exceptions as $e) { - if ($code == $e->getCode()) { - $exceptions[] = $e; - } - } - - if (empty($exceptions)) { - $exceptions = false; - } - - return $exceptions; - } - - /** - * Whether or not to render exceptions (off by default) - * - * If called with no arguments or a null argument, returns the value of the - * flag; otherwise, sets it and returns the current value. - * - * @param boolean $flag Optional - * @return boolean - */ - public function renderExceptions($flag = null) - { - if (null !== $flag) { - $this->_renderExceptions = $flag ? true : false; - } - - return $this->_renderExceptions; - } - - /** - * Send the response, including all headers, rendering exceptions if so - * requested. - * - * @return void - */ - public function sendResponse() - { - $this->sendHeaders(); - - if ($this->isException() && $this->renderExceptions()) { - $exceptions = ''; - foreach ($this->getException() as $e) { - $exceptions .= $e->__toString() . "\n"; - } - echo $exceptions; - return; - } - - $this->outputBody(); - } - - /** - * Magic __toString functionality - * - * Proxies to {@link sendResponse()} and returns response value as string - * using output buffering. - * - * @return string - */ - public function __toString() - { - ob_start(); - $this->sendResponse(); - return ob_get_clean(); - } -} diff --git a/library/Zend/Controller/Response/Cli.php b/library/Zend/Controller/Response/Cli.php deleted file mode 100644 index 10d7f05b..00000000 --- a/library/Zend/Controller/Response/Cli.php +++ /dev/null @@ -1,68 +0,0 @@ -isException() && $this->renderExceptions()) { - $exceptions = ''; - foreach ($this->getException() as $e) { - $exceptions .= $e->__toString() . "\n"; - } - return $exceptions; - } - - return $this->_body; - } -} diff --git a/library/Zend/Controller/Response/Exception.php b/library/Zend/Controller/Response/Exception.php deleted file mode 100644 index 80923dd3..00000000 --- a/library/Zend/Controller/Response/Exception.php +++ /dev/null @@ -1,36 +0,0 @@ -_headersRaw as $header) { - $headers[] = $header; - } - foreach ($this->_headers as $header) { - $name = $header['name']; - $key = strtolower($name); - if (array_key_exists($name, $headers)) { - if ($header['replace']) { - $headers[$key] = $header['name'] . ': ' . $header['value']; - } - } else { - $headers[$key] = $header['name'] . ': ' . $header['value']; - } - } - return $headers; - } - - /** - * Can we send headers? - * - * @param bool $throw - * @return void - */ - public function canSendHeaders($throw = false) - { - return true; - } - - /** - * Return the concatenated body segments - * - * @return string - */ - public function outputBody() - { - $fullContent = ''; - foreach ($this->_body as $content) { - $fullContent .= $content; - } - return $fullContent; - } - - /** - * Get body and/or body segments - * - * @param bool|string $spec - * @return string|array|null - */ - public function getBody($spec = false) - { - if (false === $spec) { - return $this->outputBody(); - } elseif (true === $spec) { - return $this->_body; - } elseif (is_string($spec) && isset($this->_body[$spec])) { - return $this->_body[$spec]; - } - - return null; - } - - /** - * "send" Response - * - * Concats all response headers, and then final body (separated by two - * newlines) - * - * @return string - */ - public function sendResponse() - { - $headers = $this->sendHeaders(); - $content = implode("\n", $headers) . "\n\n"; - - if ($this->isException() && $this->renderExceptions()) { - $exceptions = ''; - foreach ($this->getException() as $e) { - $exceptions .= $e->__toString() . "\n"; - } - $content .= $exceptions; - } else { - $content .= $this->outputBody(); - } - - return $content; - } -} diff --git a/library/Zend/Controller/Router/Abstract.php b/library/Zend/Controller/Router/Abstract.php deleted file mode 100644 index 9d52e1c2..00000000 --- a/library/Zend/Controller/Router/Abstract.php +++ /dev/null @@ -1,175 +0,0 @@ -setParams($params); - } - - /** - * Add or modify a parameter to use when instantiating an action controller - * - * @param string $name - * @param mixed $value - * @return Zend_Controller_Router - */ - public function setParam($name, $value) - { - $name = (string) $name; - $this->_invokeParams[$name] = $value; - return $this; - } - - /** - * Set parameters to pass to action controller constructors - * - * @param array $params - * @return Zend_Controller_Router - */ - public function setParams(array $params) - { - $this->_invokeParams = array_merge($this->_invokeParams, $params); - return $this; - } - - /** - * Retrieve a single parameter from the controller parameter stack - * - * @param string $name - * @return mixed - */ - public function getParam($name) - { - if(isset($this->_invokeParams[$name])) { - return $this->_invokeParams[$name]; - } - - return null; - } - - /** - * Retrieve action controller instantiation parameters - * - * @return array - */ - public function getParams() - { - return $this->_invokeParams; - } - - /** - * Clear the controller parameter stack - * - * By default, clears all parameters. If a parameter name is given, clears - * only that parameter; if an array of parameter names is provided, clears - * each. - * - * @param null|string|array single key or array of keys for params to clear - * @return Zend_Controller_Router - */ - public function clearParams($name = null) - { - if (null === $name) { - $this->_invokeParams = array(); - } elseif (is_string($name) && isset($this->_invokeParams[$name])) { - unset($this->_invokeParams[$name]); - } elseif (is_array($name)) { - foreach ($name as $key) { - if (is_string($key) && isset($this->_invokeParams[$key])) { - unset($this->_invokeParams[$key]); - } - } - } - - return $this; - } - - /** - * Retrieve Front Controller - * - * @return Zend_Controller_Front - */ - public function getFrontController() - { - // Used cache version if found - if (null !== $this->_frontController) { - return $this->_frontController; - } - - require_once 'Zend/Controller/Front.php'; - $this->_frontController = Zend_Controller_Front::getInstance(); - return $this->_frontController; - } - - /** - * Set Front Controller - * - * @param Zend_Controller_Front $controller - * @return Zend_Controller_Router_Interface - */ - public function setFrontController(Zend_Controller_Front $controller) - { - $this->_frontController = $controller; - return $this; - } - -} diff --git a/library/Zend/Controller/Router/Exception.php b/library/Zend/Controller/Router/Exception.php deleted file mode 100644 index 98cf556b..00000000 --- a/library/Zend/Controller/Router/Exception.php +++ /dev/null @@ -1,36 +0,0 @@ -hasRoute('default')) { - $dispatcher = $this->getFrontController()->getDispatcher(); - $request = $this->getFrontController()->getRequest(); - - require_once 'Zend/Controller/Router/Route/Module.php'; - $compat = new Zend_Controller_Router_Route_Module(array(), $dispatcher, $request); - - $this->_routes = array('default' => $compat) + $this->_routes; - } - - return $this; - } - - /** - * Add route to the route chain - * - * If route contains method setRequest(), it is initialized with a request object - * - * @param string $name Name of the route - * @param Zend_Controller_Router_Route_Interface $route Instance of the route - * @return Zend_Controller_Router_Rewrite - */ - public function addRoute($name, Zend_Controller_Router_Route_Interface $route) - { - if (method_exists($route, 'setRequest')) { - $route->setRequest($this->getFrontController()->getRequest()); - } - - $this->_routes[$name] = $route; - - return $this; - } - - /** - * Add routes to the route chain - * - * @param array $routes Array of routes with names as keys and routes as values - * @return Zend_Controller_Router_Rewrite - */ - public function addRoutes($routes) { - foreach ($routes as $name => $route) { - $this->addRoute($name, $route); - } - - return $this; - } - - /** - * Create routes out of Zend_Config configuration - * - * Example INI: - * routes.archive.route = "archive/:year/*" - * routes.archive.defaults.controller = archive - * routes.archive.defaults.action = show - * routes.archive.defaults.year = 2000 - * routes.archive.reqs.year = "\d+" - * - * routes.news.type = "Zend_Controller_Router_Route_Static" - * routes.news.route = "news" - * routes.news.defaults.controller = "news" - * routes.news.defaults.action = "list" - * - * And finally after you have created a Zend_Config with above ini: - * $router = new Zend_Controller_Router_Rewrite(); - * $router->addConfig($config, 'routes'); - * - * @param Zend_Config $config Configuration object - * @param string $section Name of the config section containing route's definitions - * @throws Zend_Controller_Router_Exception - * @return Zend_Controller_Router_Rewrite - */ - public function addConfig(Zend_Config $config, $section = null) - { - if ($section !== null) { - if ($config->{$section} === null) { - require_once 'Zend/Controller/Router/Exception.php'; - throw new Zend_Controller_Router_Exception("No route configuration in section '{$section}'"); - } - - $config = $config->{$section}; - } - - foreach ($config as $name => $info) { - $route = $this->_getRouteFromConfig($info); - - if ($route instanceof Zend_Controller_Router_Route_Chain) { - if (!isset($info->chain)) { - require_once 'Zend/Controller/Router/Exception.php'; - throw new Zend_Controller_Router_Exception("No chain defined"); - } - - if ($info->chain instanceof Zend_Config) { - $childRouteNames = $info->chain; - } else { - $childRouteNames = explode(',', $info->chain); - } - - foreach ($childRouteNames as $childRouteName) { - $childRoute = $this->getRoute(trim($childRouteName)); - $route->chain($childRoute); - } - - $this->addRoute($name, $route); - } elseif (isset($info->chains) && $info->chains instanceof Zend_Config) { - $this->_addChainRoutesFromConfig($name, $route, $info->chains); - } else { - $this->addRoute($name, $route); - } - } - - return $this; - } - - /** - * Get a route frm a config instance - * - * @param Zend_Config $info - * @return Zend_Controller_Router_Route_Interface - */ - protected function _getRouteFromConfig(Zend_Config $info) - { - $class = (isset($info->type)) ? $info->type : 'Zend_Controller_Router_Route'; - if (!class_exists($class)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($class); - } - - $route = call_user_func(array($class, 'getInstance'), $info); - - if (isset($info->abstract) && $info->abstract && method_exists($route, 'isAbstract')) { - $route->isAbstract(true); - } - - return $route; - } - - /** - * Add chain routes from a config route - * - * @param string $name - * @param Zend_Controller_Router_Route_Interface $route - * @param Zend_Config $childRoutesInfo - * @return void - */ - protected function _addChainRoutesFromConfig($name, - Zend_Controller_Router_Route_Interface $route, - Zend_Config $childRoutesInfo) - { - foreach ($childRoutesInfo as $childRouteName => $childRouteInfo) { - if (is_string($childRouteInfo)) { - $childRouteName = $childRouteInfo; - $childRoute = $this->getRoute($childRouteName); - } else { - $childRoute = $this->_getRouteFromConfig($childRouteInfo); - } - - if ($route instanceof Zend_Controller_Router_Route_Chain) { - $chainRoute = clone $route; - $chainRoute->chain($childRoute); - } else { - $chainRoute = $route->chain($childRoute); - } - - $chainName = $name . $this->_chainNameSeparator . $childRouteName; - - if (isset($childRouteInfo->chains)) { - $this->_addChainRoutesFromConfig($chainName, $chainRoute, $childRouteInfo->chains); - } else { - $this->addRoute($chainName, $chainRoute); - } - } - } - - /** - * Remove a route from the route chain - * - * @param string $name Name of the route - * @throws Zend_Controller_Router_Exception - * @return Zend_Controller_Router_Rewrite - */ - public function removeRoute($name) - { - if (!isset($this->_routes[$name])) { - require_once 'Zend/Controller/Router/Exception.php'; - throw new Zend_Controller_Router_Exception("Route $name is not defined"); - } - - unset($this->_routes[$name]); - - return $this; - } - - /** - * Remove all standard default routes - * - * @param Zend_Controller_Router_Route_Interface Route - * @return Zend_Controller_Router_Rewrite - */ - public function removeDefaultRoutes() - { - $this->_useDefaultRoutes = false; - - return $this; - } - - /** - * Check if named route exists - * - * @param string $name Name of the route - * @return boolean - */ - public function hasRoute($name) - { - return isset($this->_routes[$name]); - } - - /** - * Retrieve a named route - * - * @param string $name Name of the route - * @throws Zend_Controller_Router_Exception - * @return Zend_Controller_Router_Route_Interface Route object - */ - public function getRoute($name) - { - if (!isset($this->_routes[$name])) { - require_once 'Zend/Controller/Router/Exception.php'; - throw new Zend_Controller_Router_Exception("Route $name is not defined"); - } - - return $this->_routes[$name]; - } - - /** - * Retrieve a currently matched route - * - * @throws Zend_Controller_Router_Exception - * @return Zend_Controller_Router_Route_Interface Route object - */ - public function getCurrentRoute() - { - if (!isset($this->_currentRoute)) { - require_once 'Zend/Controller/Router/Exception.php'; - throw new Zend_Controller_Router_Exception("Current route is not defined"); - } - return $this->getRoute($this->_currentRoute); - } - - /** - * Retrieve a name of currently matched route - * - * @throws Zend_Controller_Router_Exception - * @return Zend_Controller_Router_Route_Interface Route object - */ - public function getCurrentRouteName() - { - if (!isset($this->_currentRoute)) { - require_once 'Zend/Controller/Router/Exception.php'; - throw new Zend_Controller_Router_Exception("Current route is not defined"); - } - return $this->_currentRoute; - } - - /** - * Retrieve an array of routes added to the route chain - * - * @return array All of the defined routes - */ - public function getRoutes() - { - return $this->_routes; - } - - /** - * Find a matching route to the current PATH_INFO and inject - * returning values to the Request object. - * - * @throws Zend_Controller_Router_Exception - * @return Zend_Controller_Request_Abstract Request object - */ - public function route(Zend_Controller_Request_Abstract $request) - { - if (!$request instanceof Zend_Controller_Request_Http) { - require_once 'Zend/Controller/Router/Exception.php'; - throw new Zend_Controller_Router_Exception('Zend_Controller_Router_Rewrite requires a Zend_Controller_Request_Http-based request object'); - } - - if ($this->_useDefaultRoutes) { - $this->addDefaultRoutes(); - } - - // Find the matching route - $routeMatched = false; - - foreach (array_reverse($this->_routes, true) as $name => $route) { - // TODO: Should be an interface method. Hack for 1.0 BC - if (method_exists($route, 'isAbstract') && $route->isAbstract()) { - continue; - } - - // TODO: Should be an interface method. Hack for 1.0 BC - if (!method_exists($route, 'getVersion') || $route->getVersion() == 1) { - $match = $request->getPathInfo(); - } else { - $match = $request; - } - - if ($params = $route->match($match)) { - $this->_setRequestParams($request, $params); - $this->_currentRoute = $name; - $routeMatched = true; - break; - } - } - - if (!$routeMatched) { - require_once 'Zend/Controller/Router/Exception.php'; - throw new Zend_Controller_Router_Exception('No route matched the request', 404); - } - - if($this->_useCurrentParamsAsGlobal) { - $params = $request->getParams(); - foreach($params as $param => $value) { - $this->setGlobalParam($param, $value); - } - } - - return $request; - - } - - protected function _setRequestParams($request, $params) - { - foreach ($params as $param => $value) { - - $request->setParam($param, $value); - - if ($param === $request->getModuleKey()) { - $request->setModuleName($value); - } - if ($param === $request->getControllerKey()) { - $request->setControllerName($value); - } - if ($param === $request->getActionKey()) { - $request->setActionName($value); - } - - } - } - - /** - * Generates a URL path that can be used in URL creation, redirection, etc. - * - * @param array $userParams Options passed by a user used to override parameters - * @param mixed $name The name of a Route to use - * @param bool $reset Whether to reset to the route defaults ignoring URL params - * @param bool $encode Tells to encode URL parts on output - * @throws Zend_Controller_Router_Exception - * @return string Resulting absolute URL path - */ - public function assemble($userParams, $name = null, $reset = false, $encode = true) - { - if (!is_array($userParams)) { - require_once 'Zend/Controller/Router/Exception.php'; - throw new Zend_Controller_Router_Exception('userParams must be an array'); - } - - if ($name == null) { - try { - $name = $this->getCurrentRouteName(); - } catch (Zend_Controller_Router_Exception $e) { - $name = 'default'; - } - } - - // Use UNION (+) in order to preserve numeric keys - $params = $userParams + $this->_globalParams; - - $route = $this->getRoute($name); - $url = $route->assemble($params, $reset, $encode); - - if (!preg_match('|^[a-z]+://|', $url)) { - $url = rtrim($this->getFrontController()->getBaseUrl(), self::URI_DELIMITER) . self::URI_DELIMITER . $url; - } - - return $url; - } - - /** - * Set a global parameter - * - * @param string $name - * @param mixed $value - * @return Zend_Controller_Router_Rewrite - */ - public function setGlobalParam($name, $value) - { - $this->_globalParams[$name] = $value; - - return $this; - } - - /** - * Set the separator to use with chain names - * - * @param string $separator The separator to use - * @return Zend_Controller_Router_Rewrite - */ - public function setChainNameSeparator($separator) { - $this->_chainNameSeparator = $separator; - - return $this; - } - - /** - * Get the separator to use for chain names - * - * @return string - */ - public function getChainNameSeparator() { - return $this->_chainNameSeparator; - } - - /** - * Determines/returns whether to use the request parameters as global parameters. - * - * @param boolean|null $use - * Null/unset when you want to retrieve the current state. - * True when request parameters should be global, false otherwise - * @return boolean|Zend_Controller_Router_Rewrite - * Returns a boolean if first param isn't set, returns an - * instance of Zend_Controller_Router_Rewrite otherwise. - * - */ - public function useRequestParametersAsGlobal($use = null) { - if($use === null) { - return $this->_useCurrentParamsAsGlobal; - } - - $this->_useCurrentParamsAsGlobal = (bool) $use; - - return $this; - } -} diff --git a/library/Zend/Controller/Router/Route.php b/library/Zend/Controller/Router/Route.php deleted file mode 100644 index 61e740a4..00000000 --- a/library/Zend/Controller/Router/Route.php +++ /dev/null @@ -1,562 +0,0 @@ -reqs instanceof Zend_Config) ? $config->reqs->toArray() : array(); - $defs = ($config->defaults instanceof Zend_Config) ? $config->defaults->toArray() : array(); - return new self($config->route, $defs, $reqs); - } - - /** - * Prepares the route for mapping by splitting (exploding) it - * to a corresponding atomic parts. These parts are assigned - * a position which is later used for matching and preparing values. - * - * @param string $route Map used to match with later submitted URL path - * @param array $defaults Defaults for map variables with keys as variable names - * @param array $reqs Regular expression requirements for variables (keys as variable names) - * @param Zend_Translate $translator Translator to use for this instance - */ - public function __construct($route, $defaults = array(), $reqs = array(), Zend_Translate $translator = null, $locale = null) - { - $route = trim($route, $this->_urlDelimiter); - $this->_defaults = (array) $defaults; - $this->_requirements = (array) $reqs; - $this->_translator = $translator; - $this->_locale = $locale; - - if ($route !== '') { - foreach (explode($this->_urlDelimiter, $route) as $pos => $part) { - if (substr($part, 0, 1) == $this->_urlVariable && substr($part, 1, 1) != $this->_urlVariable) { - $name = substr($part, 1); - - if (substr($name, 0, 1) === '@' && substr($name, 1, 1) !== '@') { - $name = substr($name, 1); - $this->_translatable[] = $name; - $this->_isTranslated = true; - } - - $this->_parts[$pos] = (isset($reqs[$name]) ? $reqs[$name] : $this->_defaultRegex); - $this->_variables[$pos] = $name; - } else { - if (substr($part, 0, 1) == $this->_urlVariable) { - $part = substr($part, 1); - } - - if (substr($part, 0, 1) === '@' && substr($part, 1, 1) !== '@') { - $this->_isTranslated = true; - } - - $this->_parts[$pos] = $part; - - if ($part !== '*') { - $this->_staticCount++; - } - } - } - } - } - - /** - * Matches a user submitted path with parts defined by a map. Assigns and - * returns an array of variables on a successful match. - * - * @param string $path Path used to match against this routing map - * @return array|false An array of assigned values or a false on a mismatch - */ - public function match($path, $partial = false) - { - if ($this->_isTranslated) { - $translateMessages = $this->getTranslator()->getMessages(); - } - - $pathStaticCount = 0; - $values = array(); - $matchedPath = ''; - - if (!$partial) { - $path = trim($path, $this->_urlDelimiter); - } - - if ($path !== '') { - $path = explode($this->_urlDelimiter, $path); - - foreach ($path as $pos => $pathPart) { - // Path is longer than a route, it's not a match - if (!array_key_exists($pos, $this->_parts)) { - if ($partial) { - break; - } else { - return false; - } - } - - $matchedPath .= $pathPart . $this->_urlDelimiter; - - // If it's a wildcard, get the rest of URL as wildcard data and stop matching - if ($this->_parts[$pos] == '*') { - $count = count($path); - for($i = $pos; $i < $count; $i+=2) { - $var = urldecode($path[$i]); - if (!isset($this->_wildcardData[$var]) && !isset($this->_defaults[$var]) && !isset($values[$var])) { - $this->_wildcardData[$var] = (isset($path[$i+1])) ? urldecode($path[$i+1]) : null; - } - } - - $matchedPath = implode($this->_urlDelimiter, $path); - break; - } - - $name = isset($this->_variables[$pos]) ? $this->_variables[$pos] : null; - $pathPart = urldecode($pathPart); - - // Translate value if required - $part = $this->_parts[$pos]; - if ($this->_isTranslated && (substr($part, 0, 1) === '@' && substr($part, 1, 1) !== '@' && $name === null) || $name !== null && in_array($name, $this->_translatable)) { - if (substr($part, 0, 1) === '@') { - $part = substr($part, 1); - } - - if (($originalPathPart = array_search($pathPart, $translateMessages)) !== false) { - $pathPart = $originalPathPart; - } - } - - if (substr($part, 0, 2) === '@@') { - $part = substr($part, 1); - } - - // If it's a static part, match directly - if ($name === null && $part != $pathPart) { - return false; - } - - // If it's a variable with requirement, match a regex. If not - everything matches - if ($part !== null && !preg_match($this->_regexDelimiter . '^' . $part . '$' . $this->_regexDelimiter . 'iu', $pathPart)) { - return false; - } - - // If it's a variable store it's value for later - if ($name !== null) { - $values[$name] = $pathPart; - } else { - $pathStaticCount++; - } - } - } - - // Check if all static mappings have been matched - if ($this->_staticCount != $pathStaticCount) { - return false; - } - - $return = $values + $this->_wildcardData + $this->_defaults; - - // Check if all map variables have been initialized - foreach ($this->_variables as $var) { - if (!array_key_exists($var, $return)) { - return false; - } elseif ($return[$var] == '' || $return[$var] === null) { - // Empty variable? Replace with the default value. - $return[$var] = $this->_defaults[$var]; - } - } - - $this->setMatchedPath(rtrim($matchedPath, $this->_urlDelimiter)); - - $this->_values = $values; - - return $return; - - } - - /** - * Assembles user submitted parameters forming a URL path defined by this route - * - * @param array $data An array of variable and value pairs used as parameters - * @param boolean $reset Whether or not to set route defaults with those provided in $data - * @return string Route path with user submitted parameters - */ - public function assemble($data = array(), $reset = false, $encode = false, $partial = false) - { - if ($this->_isTranslated) { - $translator = $this->getTranslator(); - - if (isset($data['@locale'])) { - $locale = $data['@locale']; - unset($data['@locale']); - } else { - $locale = $this->getLocale(); - } - } - - $url = array(); - $flag = false; - - foreach ($this->_parts as $key => $part) { - $name = isset($this->_variables[$key]) ? $this->_variables[$key] : null; - - $useDefault = false; - if (isset($name) && array_key_exists($name, $data) && $data[$name] === null) { - $useDefault = true; - } - - if (isset($name)) { - if (isset($data[$name]) && !$useDefault) { - $value = $data[$name]; - unset($data[$name]); - } elseif (!$reset && !$useDefault && isset($this->_values[$name])) { - $value = $this->_values[$name]; - } elseif (!$reset && !$useDefault && isset($this->_wildcardData[$name])) { - $value = $this->_wildcardData[$name]; - } elseif (array_key_exists($name, $this->_defaults)) { - $value = $this->_defaults[$name]; - } else { - require_once 'Zend/Controller/Router/Exception.php'; - throw new Zend_Controller_Router_Exception($name . ' is not specified'); - } - - if ($this->_isTranslated && in_array($name, $this->_translatable)) { - $url[$key] = $translator->translate($value, $locale); - } else { - $url[$key] = $value; - } - } elseif ($part != '*') { - if ($this->_isTranslated && substr($part, 0, 1) === '@') { - if (substr($part, 1, 1) !== '@') { - $url[$key] = $translator->translate(substr($part, 1), $locale); - } else { - $url[$key] = substr($part, 1); - } - } else { - if (substr($part, 0, 2) === '@@') { - $part = substr($part, 1); - } - - $url[$key] = $part; - } - } else { - if (!$reset) $data += $this->_wildcardData; - $defaults = $this->getDefaults(); - foreach ($data as $var => $value) { - if ($value !== null && (!isset($defaults[$var]) || $value != $defaults[$var])) { - $url[$key++] = $var; - $url[$key++] = $value; - $flag = true; - } - } - } - } - - $return = ''; - - foreach (array_reverse($url, true) as $key => $value) { - $defaultValue = null; - - if (isset($this->_variables[$key])) { - $defaultValue = $this->getDefault($this->_variables[$key]); - - if ($this->_isTranslated && $defaultValue !== null && isset($this->_translatable[$this->_variables[$key]])) { - $defaultValue = $translator->translate($defaultValue, $locale); - } - } - - if ($flag || $value !== $defaultValue || $partial) { - if ($encode) $value = urlencode($value); - $return = $this->_urlDelimiter . $value . $return; - $flag = true; - } - } - - return trim($return, $this->_urlDelimiter); - - } - - /** - * Return a single parameter of route's defaults - * - * @param string $name Array key of the parameter - * @return string Previously set default - */ - public function getDefault($name) { - if (isset($this->_defaults[$name])) { - return $this->_defaults[$name]; - } - return null; - } - - /** - * Return an array of defaults - * - * @return array Route defaults - */ - public function getDefaults() { - return $this->_defaults; - } - - /** - * Get all variables which are used by the route - * - * @return array - */ - public function getVariables() - { - return $this->_variables; - } - - /** - * Set a default translator - * - * @param Zend_Translate $translator - * @return void - */ - public static function setDefaultTranslator(Zend_Translate $translator = null) - { - self::$_defaultTranslator = $translator; - } - - /** - * Get the default translator - * - * @return Zend_Translate - */ - public static function getDefaultTranslator() - { - return self::$_defaultTranslator; - } - - /** - * Set a translator - * - * @param Zend_Translate $translator - * @return void - */ - public function setTranslator(Zend_Translate $translator) - { - $this->_translator = $translator; - } - - /** - * Get the translator - * - * @throws Zend_Controller_Router_Exception When no translator can be found - * @return Zend_Translate - */ - public function getTranslator() - { - if ($this->_translator !== null) { - return $this->_translator; - } else if (($translator = self::getDefaultTranslator()) !== null) { - return $translator; - } else { - try { - $translator = Zend_Registry::get('Zend_Translate'); - } catch (Zend_Exception $e) { - $translator = null; - } - - if ($translator instanceof Zend_Translate) { - return $translator; - } - } - - require_once 'Zend/Controller/Router/Exception.php'; - throw new Zend_Controller_Router_Exception('Could not find a translator'); - } - - /** - * Set a default locale - * - * @param mixed $locale - * @return void - */ - public static function setDefaultLocale($locale = null) - { - self::$_defaultLocale = $locale; - } - - /** - * Get the default locale - * - * @return mixed - */ - public static function getDefaultLocale() - { - return self::$_defaultLocale; - } - - /** - * Set a locale - * - * @param mixed $locale - * @return void - */ - public function setLocale($locale) - { - $this->_locale = $locale; - } - - /** - * Get the locale - * - * @return mixed - */ - public function getLocale() - { - if ($this->_locale !== null) { - return $this->_locale; - } else if (($locale = self::getDefaultLocale()) !== null) { - return $locale; - } else { - try { - $locale = Zend_Registry::get('Zend_Locale'); - } catch (Zend_Exception $e) { - $locale = null; - } - - if ($locale !== null) { - return $locale; - } - } - - return null; - } -} diff --git a/library/Zend/Controller/Router/Route/Abstract.php b/library/Zend/Controller/Router/Route/Abstract.php deleted file mode 100644 index b63a5085..00000000 --- a/library/Zend/Controller/Router/Route/Abstract.php +++ /dev/null @@ -1,122 +0,0 @@ -_matchedPath = $path; - } - - /** - * Get partially matched path - * - * @return string - */ - public function getMatchedPath() - { - return $this->_matchedPath; - } - - /** - * Check or set wether this is an abstract route or not - * - * @param boolean $flag - * @return boolean - */ - public function isAbstract($flag = null) - { - if ($flag !== null) { - $this->_isAbstract = $flag; - } - - return $this->_isAbstract; - } - - /** - * Create a new chain - * - * @param Zend_Controller_Router_Route_Abstract $route - * @param string $separator - * @return Zend_Controller_Router_Route_Chain - */ - public function chain(Zend_Controller_Router_Route_Abstract $route, $separator = '/') - { - require_once 'Zend/Controller/Router/Route/Chain.php'; - - $chain = new Zend_Controller_Router_Route_Chain(); - $chain->chain($this)->chain($route, $separator); - - return $chain; - } - -} diff --git a/library/Zend/Controller/Router/Route/Chain.php b/library/Zend/Controller/Router/Route/Chain.php deleted file mode 100644 index 806099e3..00000000 --- a/library/Zend/Controller/Router/Route/Chain.php +++ /dev/null @@ -1,216 +0,0 @@ -defaults instanceof Zend_Config) ? $config->defaults->toArray() : array(); - return new self($config->route, $defs); - } - - /** - * Add a route to this chain - * - * @param Zend_Controller_Router_Route_Abstract $route - * @param string $separator - * @return Zend_Controller_Router_Route_Chain - */ - public function chain(Zend_Controller_Router_Route_Abstract $route, $separator = self::URI_DELIMITER) - { - $this->_routes[] = $route; - $this->_separators[] = $separator; - - return $this; - - } - - /** - * Matches a user submitted path with a previously defined route. - * Assigns and returns an array of defaults on a successful match. - * - * @param Zend_Controller_Request_Http $request Request to get the path info from - * @param null $partial - * @return array|false An array of assigned values or a false on a mismatch - */ - public function match($request, $partial = null) - { - $path = trim($request->getPathInfo(), self::URI_DELIMITER); - $subPath = $path; - $values = array(); - $numRoutes = count($this->_routes); - $matchedPath = null; - - foreach ($this->_routes as $key => $route) { - if ($key > 0 - && $matchedPath !== null - && $subPath !== '' - && $subPath !== false - ) { - $separator = substr($subPath, 0, strlen($this->_separators[$key])); - - if ($separator !== $this->_separators[$key]) { - return false; - } - - $subPath = substr($subPath, strlen($separator)); - } - - // TODO: Should be an interface method. Hack for 1.0 BC - if (!method_exists($route, 'getVersion') || $route->getVersion() == 1) { - $match = $subPath; - } else { - $request->setPathInfo($subPath); - $match = $request; - } - - $res = $route->match($match, true, ($key == $numRoutes - 1)); - if ($res === false) { - return false; - } - - $matchedPath = $route->getMatchedPath(); - - if ($matchedPath !== null) { - $subPath = substr($subPath, strlen($matchedPath)); - $separator = substr($subPath, 0, strlen($this->_separators[$key])); - } - - $values = $res + $values; - } - - $request->setPathInfo($path); - - if ($subPath !== '' && $subPath !== false) { - return false; - } - - return $values; - } - - /** - * Assembles a URL path defined by this route - * - * @param array $data An array of variable and value pairs used as parameters - * @param bool $reset - * @param bool $encode - * @return string Route path with user submitted parameters - */ - public function assemble($data = array(), $reset = false, $encode = false) - { - $value = ''; - $numRoutes = count($this->_routes); - - foreach ($this->_routes as $key => $route) { - if ($key > 0) { - $value .= $this->_separators[$key]; - } - - $value .= $route->assemble($data, $reset, $encode, (($numRoutes - 1) > $key)); - - if (method_exists($route, 'getVariables')) { - $variables = $route->getVariables(); - - foreach ($variables as $variable) { - $data[$variable] = null; - } - } - } - - return $value; - } - - /** - * Set the request object for this and the child routes - * - * @param Zend_Controller_Request_Abstract|null $request - * @return void - */ - public function setRequest(Zend_Controller_Request_Abstract $request = null) - { - $this->_request = $request; - - foreach ($this->_routes as $route) { - if (method_exists($route, 'setRequest')) { - $route->setRequest($request); - } - } - } - - /** - * Return a single parameter of route's defaults - * - * @param string $name Array key of the parameter - * @return string Previously set default - */ - public function getDefault($name) - { - $default = null; - foreach ($this->_routes as $route) { - if (method_exists($route, 'getDefault')) { - $current = $route->getDefault($name); - if (null !== $current) { - $default = $current; - } - } - } - - return $default; - } - - /** - * Return an array of defaults - * - * @return array Route defaults - */ - public function getDefaults() - { - $defaults = array(); - foreach ($this->_routes as $route) { - if (method_exists($route, 'getDefaults')) { - $defaults = array_merge($defaults, $route->getDefaults()); - } - } - - return $defaults; - } -} \ No newline at end of file diff --git a/library/Zend/Controller/Router/Route/Hostname.php b/library/Zend/Controller/Router/Route/Hostname.php deleted file mode 100644 index 9199875a..00000000 --- a/library/Zend/Controller/Router/Route/Hostname.php +++ /dev/null @@ -1,341 +0,0 @@ -_request = $request; - } - - /** - * Get the request object - * - * @return Zend_Controller_Request_Abstract $request - */ - public function getRequest() - { - if ($this->_request === null) { - require_once 'Zend/Controller/Front.php'; - $this->_request = Zend_Controller_Front::getInstance()->getRequest(); - } - - return $this->_request; - } - - /** - * Instantiates route based on passed Zend_Config structure - * - * @param Zend_Config $config Configuration object - */ - public static function getInstance(Zend_Config $config) - { - $reqs = ($config->reqs instanceof Zend_Config) ? $config->reqs->toArray() : array(); - $defs = ($config->defaults instanceof Zend_Config) ? $config->defaults->toArray() : array(); - $scheme = (isset($config->scheme)) ? $config->scheme : null; - return new self($config->route, $defs, $reqs, $scheme); - } - - /** - * Prepares the route for mapping by splitting (exploding) it - * to a corresponding atomic parts. These parts are assigned - * a position which is later used for matching and preparing values. - * - * @param string $route Map used to match with later submitted hostname - * @param array $defaults Defaults for map variables with keys as variable names - * @param array $reqs Regular expression requirements for variables (keys as variable names) - * @param string $scheme - */ - public function __construct($route, $defaults = array(), $reqs = array(), $scheme = null) - { - $route = trim($route, '.'); - $this->_defaults = (array) $defaults; - $this->_requirements = (array) $reqs; - $this->_scheme = $scheme; - - if ($route != '') { - foreach (explode('.', $route) as $pos => $part) { - if (substr($part, 0, 1) == $this->_hostVariable) { - $name = substr($part, 1); - $this->_parts[$pos] = (isset($reqs[$name]) ? $reqs[$name] : $this->_defaultRegex); - $this->_variables[$pos] = $name; - } else { - $this->_parts[$pos] = $part; - $this->_staticCount++; - } - } - } - } - - /** - * Matches a user submitted path with parts defined by a map. Assigns and - * returns an array of variables on a successful match. - * - * @param Zend_Controller_Request_Http $request Request to get the host from - * @return array|false An array of assigned values or a false on a mismatch - */ - public function match($request) - { - // Check the scheme if required - if ($this->_scheme !== null) { - $scheme = $request->getScheme(); - - if ($scheme !== $this->_scheme) { - return false; - } - } - - // Get the host and remove unnecessary port information - $host = $request->getHttpHost(); - if (preg_match('#:\d+$#', $host, $result) === 1) { - $host = substr($host, 0, -strlen($result[0])); - } - - $hostStaticCount = 0; - $values = array(); - - $host = trim($host, '.'); - - if ($host != '') { - $host = explode('.', $host); - - foreach ($host as $pos => $hostPart) { - // Host is longer than a route, it's not a match - if (!array_key_exists($pos, $this->_parts)) { - return false; - } - - $name = isset($this->_variables[$pos]) ? $this->_variables[$pos] : null; - $hostPart = urldecode($hostPart); - - // If it's a static part, match directly - if ($name === null && $this->_parts[$pos] != $hostPart) { - return false; - } - - // If it's a variable with requirement, match a regex. If not - everything matches - if ($this->_parts[$pos] !== null && !preg_match($this->_regexDelimiter . '^' . $this->_parts[$pos] . '$' . $this->_regexDelimiter . 'iu', $hostPart)) { - return false; - } - - // If it's a variable store it's value for later - if ($name !== null) { - $values[$name] = $hostPart; - } else { - $hostStaticCount++; - } - } - } - - // Check if all static mappings have been matched - if ($this->_staticCount != $hostStaticCount) { - return false; - } - - $return = $values + $this->_defaults; - - // Check if all map variables have been initialized - foreach ($this->_variables as $var) { - if (!array_key_exists($var, $return)) { - return false; - } - } - - $this->_values = $values; - - return $return; - - } - - /** - * Assembles user submitted parameters forming a hostname defined by this route - * - * @param array $data An array of variable and value pairs used as parameters - * @param boolean $reset Whether or not to set route defaults with those provided in $data - * @return string Route path with user submitted parameters - */ - public function assemble($data = array(), $reset = false, $encode = false, $partial = false) - { - $host = array(); - $flag = false; - - foreach ($this->_parts as $key => $part) { - $name = isset($this->_variables[$key]) ? $this->_variables[$key] : null; - - $useDefault = false; - if (isset($name) && array_key_exists($name, $data) && $data[$name] === null) { - $useDefault = true; - } - - if (isset($name)) { - if (isset($data[$name]) && !$useDefault) { - $host[$key] = $data[$name]; - unset($data[$name]); - } elseif (!$reset && !$useDefault && isset($this->_values[$name])) { - $host[$key] = $this->_values[$name]; - } elseif (isset($this->_defaults[$name])) { - $host[$key] = $this->_defaults[$name]; - } else { - require_once 'Zend/Controller/Router/Exception.php'; - throw new Zend_Controller_Router_Exception($name . ' is not specified'); - } - } else { - $host[$key] = $part; - } - } - - $return = ''; - - foreach (array_reverse($host, true) as $key => $value) { - if ($flag || !isset($this->_variables[$key]) || $value !== $this->getDefault($this->_variables[$key]) || $partial) { - if ($encode) $value = urlencode($value); - $return = '.' . $value . $return; - $flag = true; - } - } - - $url = trim($return, '.'); - - if ($this->_scheme !== null) { - $scheme = $this->_scheme; - } else { - $request = $this->getRequest(); - if ($request instanceof Zend_Controller_Request_Http) { - $scheme = $request->getScheme(); - } else { - $scheme = 'http'; - } - } - - $url = $scheme . '://' . $url; - - return $url; - } - - /** - * Return a single parameter of route's defaults - * - * @param string $name Array key of the parameter - * @return string Previously set default - */ - public function getDefault($name) { - if (isset($this->_defaults[$name])) { - return $this->_defaults[$name]; - } - return null; - } - - /** - * Return an array of defaults - * - * @return array Route defaults - */ - public function getDefaults() { - return $this->_defaults; - } - - /** - * Get all variables which are used by the route - * - * @return array - */ - public function getVariables() - { - return $this->_variables; - } -} diff --git a/library/Zend/Controller/Router/Route/Interface.php b/library/Zend/Controller/Router/Route/Interface.php deleted file mode 100644 index 7221d59d..00000000 --- a/library/Zend/Controller/Router/Route/Interface.php +++ /dev/null @@ -1,37 +0,0 @@ -defaults instanceof Zend_Config) ? $config->defaults->toArray() : array(); - $dispatcher = $frontController->getDispatcher(); - $request = $frontController->getRequest(); - - return new self($defs, $dispatcher, $request); - } - - /** - * Constructor - * - * @param array $defaults Defaults for map variables with keys as variable names - * @param Zend_Controller_Dispatcher_Interface $dispatcher Dispatcher object - * @param Zend_Controller_Request_Abstract $request Request object - */ - public function __construct(array $defaults = array(), - Zend_Controller_Dispatcher_Interface $dispatcher = null, - Zend_Controller_Request_Abstract $request = null) - { - $this->_defaults = $defaults; - - if (isset($request)) { - $this->_request = $request; - } - - if (isset($dispatcher)) { - $this->_dispatcher = $dispatcher; - } - } - - /** - * Set request keys based on values in request object - * - * @return void - */ - protected function _setRequestKeys() - { - if (null !== $this->_request) { - $this->_moduleKey = $this->_request->getModuleKey(); - $this->_controllerKey = $this->_request->getControllerKey(); - $this->_actionKey = $this->_request->getActionKey(); - } - - if (null !== $this->_dispatcher) { - $this->_defaults += array( - $this->_controllerKey => $this->_dispatcher->getDefaultControllerName(), - $this->_actionKey => $this->_dispatcher->getDefaultAction(), - $this->_moduleKey => $this->_dispatcher->getDefaultModule() - ); - } - - $this->_keysSet = true; - } - - /** - * Matches a user submitted path. Assigns and returns an array of variables - * on a successful match. - * - * If a request object is registered, it uses its setModuleName(), - * setControllerName(), and setActionName() accessors to set those values. - * Always returns the values as an array. - * - * @param string $path Path used to match against this routing map - * @return array An array of assigned values or a false on a mismatch - */ - public function match($path, $partial = false) - { - $this->_setRequestKeys(); - - $values = array(); - $params = array(); - - if (!$partial) { - $path = trim($path, self::URI_DELIMITER); - } else { - $matchedPath = $path; - } - - if ($path != '') { - $path = explode(self::URI_DELIMITER, $path); - - if ($this->_dispatcher && $this->_dispatcher->isValidModule($path[0])) { - $values[$this->_moduleKey] = array_shift($path); - $this->_moduleValid = true; - } - - if (count($path) && !empty($path[0])) { - $values[$this->_controllerKey] = array_shift($path); - } - - if (count($path) && !empty($path[0])) { - $values[$this->_actionKey] = array_shift($path); - } - - if ($numSegs = count($path)) { - for ($i = 0; $i < $numSegs; $i = $i + 2) { - $key = urldecode($path[$i]); - $val = isset($path[$i + 1]) ? urldecode($path[$i + 1]) : null; - $params[$key] = (isset($params[$key]) ? (array_merge((array) $params[$key], array($val))): $val); - } - } - } - - if ($partial) { - $this->setMatchedPath($matchedPath); - } - - $this->_values = $values + $params; - - return $this->_values + $this->_defaults; - } - - /** - * Assembles user submitted parameters forming a URL path defined by this route - * - * @param array $data An array of variable and value pairs used as parameters - * @param bool $reset Weither to reset the current params - * @return string Route path with user submitted parameters - */ - public function assemble($data = array(), $reset = false, $encode = true, $partial = false) - { - if (!$this->_keysSet) { - $this->_setRequestKeys(); - } - - $params = (!$reset) ? $this->_values : array(); - - foreach ($data as $key => $value) { - if ($value !== null) { - $params[$key] = $value; - } elseif (isset($params[$key])) { - unset($params[$key]); - } - } - - $params += $this->_defaults; - - $url = ''; - - if ($this->_moduleValid || array_key_exists($this->_moduleKey, $data)) { - if ($params[$this->_moduleKey] != $this->_defaults[$this->_moduleKey]) { - $module = $params[$this->_moduleKey]; - } - } - unset($params[$this->_moduleKey]); - - $controller = $params[$this->_controllerKey]; - unset($params[$this->_controllerKey]); - - $action = $params[$this->_actionKey]; - unset($params[$this->_actionKey]); - - foreach ($params as $key => $value) { - $key = ($encode) ? urlencode($key) : $key; - if (is_array($value)) { - foreach ($value as $arrayValue) { - $arrayValue = ($encode) ? urlencode($arrayValue) : $arrayValue; - $url .= self::URI_DELIMITER . $key; - $url .= self::URI_DELIMITER . $arrayValue; - } - } else { - if ($encode) $value = urlencode($value); - $url .= self::URI_DELIMITER . $key; - $url .= self::URI_DELIMITER . $value; - } - } - - if (!empty($url) || $action !== $this->_defaults[$this->_actionKey]) { - if ($encode) $action = urlencode($action); - $url = self::URI_DELIMITER . $action . $url; - } - - if (!empty($url) || $controller !== $this->_defaults[$this->_controllerKey]) { - if ($encode) $controller = urlencode($controller); - $url = self::URI_DELIMITER . $controller . $url; - } - - if (isset($module)) { - if ($encode) $module = urlencode($module); - $url = self::URI_DELIMITER . $module . $url; - } - - return ltrim($url, self::URI_DELIMITER); - } - - /** - * Return a single parameter of route's defaults - * - * @param string $name Array key of the parameter - * @return string Previously set default - */ - public function getDefault($name) { - if (isset($this->_defaults[$name])) { - return $this->_defaults[$name]; - } - } - - /** - * Return an array of defaults - * - * @return array Route defaults - */ - public function getDefaults() { - return $this->_defaults; - } - -} diff --git a/library/Zend/Controller/Router/Route/Regex.php b/library/Zend/Controller/Router/Route/Regex.php deleted file mode 100644 index 32c5ef57..00000000 --- a/library/Zend/Controller/Router/Route/Regex.php +++ /dev/null @@ -1,269 +0,0 @@ -defaults instanceof Zend_Config) ? $config->defaults->toArray() : array(); - $map = ($config->map instanceof Zend_Config) ? $config->map->toArray() : array(); - $reverse = (isset($config->reverse)) ? $config->reverse : null; - return new self($config->route, $defs, $map, $reverse); - } - - public function __construct($route, $defaults = array(), $map = array(), $reverse = null) - { - $this->_regex = $route; - $this->_defaults = (array) $defaults; - $this->_map = (array) $map; - $this->_reverse = $reverse; - } - - public function getVersion() { - return 1; - } - - /** - * Matches a user submitted path with a previously defined route. - * Assigns and returns an array of defaults on a successful match. - * - * @param string $path Path used to match against this routing map - * @return array|false An array of assigned values or a false on a mismatch - */ - public function match($path, $partial = false) - { - if (!$partial) { - $path = trim(urldecode($path), self::URI_DELIMITER); - $regex = '#^' . $this->_regex . '$#i'; - } else { - $regex = '#^' . $this->_regex . '#i'; - } - - $res = preg_match($regex, $path, $values); - - if ($res === 0) { - return false; - } - - if ($partial) { - $this->setMatchedPath($values[0]); - } - - // array_filter_key()? Why isn't this in a standard PHP function set yet? :) - foreach ($values as $i => $value) { - if (!is_int($i) || $i === 0) { - unset($values[$i]); - } - } - - $this->_values = $values; - - $values = $this->_getMappedValues($values); - $defaults = $this->_getMappedValues($this->_defaults, false, true); - $return = $values + $defaults; - - return $return; - } - - /** - * Maps numerically indexed array values to it's associative mapped counterpart. - * Or vice versa. Uses user provided map array which consists of index => name - * parameter mapping. If map is not found, it returns original array. - * - * Method strips destination type of keys form source array. Ie. if source array is - * indexed numerically then every associative key will be stripped. Vice versa if reversed - * is set to true. - * - * @param array $values Indexed or associative array of values to map - * @param boolean $reversed False means translation of index to association. True means reverse. - * @param boolean $preserve Should wrong type of keys be preserved or stripped. - * @return array An array of mapped values - */ - protected function _getMappedValues($values, $reversed = false, $preserve = false) - { - if (count($this->_map) == 0) { - return $values; - } - - $return = array(); - - foreach ($values as $key => $value) { - if (is_int($key) && !$reversed) { - if (array_key_exists($key, $this->_map)) { - $index = $this->_map[$key]; - } elseif (false === ($index = array_search($key, $this->_map))) { - $index = $key; - } - $return[$index] = $values[$key]; - } elseif ($reversed) { - $index = $key; - if (!is_int($key)) { - if (array_key_exists($key, $this->_map)) { - $index = $this->_map[$key]; - } else { - $index = array_search($key, $this->_map, true); - } - } - if (false !== $index) { - $return[$index] = $values[$key]; - } - } elseif ($preserve) { - $return[$key] = $value; - } - } - - return $return; - } - - /** - * Assembles a URL path defined by this route - * - * @param array $data An array of name (or index) and value pairs used as parameters - * @return string Route path with user submitted parameters - */ - public function assemble($data = array(), $reset = false, $encode = false, $partial = false) - { - if ($this->_reverse === null) { - require_once 'Zend/Controller/Router/Exception.php'; - throw new Zend_Controller_Router_Exception('Cannot assemble. Reversed route is not specified.'); - } - - $defaultValuesMapped = $this->_getMappedValues($this->_defaults, true, false); - $matchedValuesMapped = $this->_getMappedValues($this->_values, true, false); - $dataValuesMapped = $this->_getMappedValues($data, true, false); - - // handle resets, if so requested (By null value) to do so - if (($resetKeys = array_search(null, $dataValuesMapped, true)) !== false) { - foreach ((array) $resetKeys as $resetKey) { - if (isset($matchedValuesMapped[$resetKey])) { - unset($matchedValuesMapped[$resetKey]); - unset($dataValuesMapped[$resetKey]); - } - } - } - - // merge all the data together, first defaults, then values matched, then supplied - $mergedData = $defaultValuesMapped; - $mergedData = $this->_arrayMergeNumericKeys($mergedData, $matchedValuesMapped); - $mergedData = $this->_arrayMergeNumericKeys($mergedData, $dataValuesMapped); - - if ($encode) { - foreach ($mergedData as $key => &$value) { - $value = urlencode($value); - } - } - - ksort($mergedData); - - $return = @vsprintf($this->_reverse, $mergedData); - - if ($return === false) { - require_once 'Zend/Controller/Router/Exception.php'; - throw new Zend_Controller_Router_Exception('Cannot assemble. Too few arguments?'); - } - - return $return; - - } - - /** - * Return a single parameter of route's defaults - * - * @param string $name Array key of the parameter - * @return string Previously set default - */ - public function getDefault($name) { - if (isset($this->_defaults[$name])) { - return $this->_defaults[$name]; - } - } - - /** - * Return an array of defaults - * - * @return array Route defaults - */ - public function getDefaults() { - return $this->_defaults; - } - - /** - * Get all variables which are used by the route - * - * @return array - */ - public function getVariables() - { - $variables = array(); - - foreach ($this->_map as $key => $value) { - if (is_numeric($key)) { - $variables[] = $value; - } else { - $variables[] = $key; - } - } - - return $variables; - } - - /** - * _arrayMergeNumericKeys() - allows for a strict key (numeric's included) array_merge. - * php's array_merge() lacks the ability to merge with numeric keys. - * - * @param array $array1 - * @param array $array2 - * @return array - */ - protected function _arrayMergeNumericKeys(Array $array1, Array $array2) - { - $returnArray = $array1; - foreach ($array2 as $array2Index => $array2Value) { - $returnArray[$array2Index] = $array2Value; - } - return $returnArray; - } - - -} diff --git a/library/Zend/Controller/Router/Route/Static.php b/library/Zend/Controller/Router/Route/Static.php deleted file mode 100644 index 6f2a23d3..00000000 --- a/library/Zend/Controller/Router/Route/Static.php +++ /dev/null @@ -1,127 +0,0 @@ -defaults instanceof Zend_Config) ? $config->defaults->toArray() : array(); - return new self($config->route, $defs); - } - - /** - * Prepares the route for mapping. - * - * @param string $route Map used to match with later submitted URL path - * @param array $defaults Defaults for map variables with keys as variable names - */ - public function __construct($route, $defaults = array()) - { - $this->_route = trim($route, self::URI_DELIMITER); - $this->_defaults = (array) $defaults; - } - - /** - * Matches a user submitted path with a previously defined route. - * Assigns and returns an array of defaults on a successful match. - * - * @param string $path Path used to match against this routing map - * @return array|false An array of assigned values or a false on a mismatch - */ - public function match($path, $partial = false) - { - if ($partial) { - if ((empty($path) && empty($this->_route)) - || (substr($path, 0, strlen($this->_route)) === $this->_route) - ) { - $this->setMatchedPath($this->_route); - return $this->_defaults; - } - } else { - if (trim($path, self::URI_DELIMITER) == $this->_route) { - return $this->_defaults; - } - } - - return false; - } - - /** - * Assembles a URL path defined by this route - * - * @param array $data An array of variable and value pairs used as parameters - * @return string Route path with user submitted parameters - */ - public function assemble($data = array(), $reset = false, $encode = false, $partial = false) - { - return $this->_route; - } - - /** - * Return a single parameter of route's defaults - * - * @param string $name Array key of the parameter - * @return string Previously set default - */ - public function getDefault($name) { - if (isset($this->_defaults[$name])) { - return $this->_defaults[$name]; - } - return null; - } - - /** - * Return an array of defaults - * - * @return array Route defaults - */ - public function getDefaults() { - return $this->_defaults; - } - -} diff --git a/library/Zend/Crypt.php b/library/Zend/Crypt.php deleted file mode 100644 index 4ab68d2b..00000000 --- a/library/Zend/Crypt.php +++ /dev/null @@ -1,168 +0,0 @@ -setPrime($prime); - $this->setGenerator($generator); - if ($privateKey !== null) { - $this->setPrivateKey($privateKey, $privateKeyType); - } - $this->setBigIntegerMath(); - } - - /** - * Generate own public key. If a private number has not already been - * set, one will be generated at this stage. - * - * @return Zend_Crypt_DiffieHellman - */ - public function generateKeys() - { - if (function_exists('openssl_dh_compute_key') && self::$useOpenssl !== false) { - $details = array(); - $details['p'] = $this->getPrime(); - $details['g'] = $this->getGenerator(); - if ($this->hasPrivateKey()) { - $details['priv_key'] = $this->getPrivateKey(); - } - $opensslKeyResource = openssl_pkey_new( array('dh' => $details) ); - $data = openssl_pkey_get_details($opensslKeyResource); - $this->setPrivateKey($data['dh']['priv_key'], self::BINARY); - $this->setPublicKey($data['dh']['pub_key'], self::BINARY); - } else { - // Private key is lazy generated in the absence of PHP 5.3's ext/openssl - $publicKey = $this->_math->powmod($this->getGenerator(), $this->getPrivateKey(), $this->getPrime()); - $this->setPublicKey($publicKey); - } - return $this; - } - - /** - * Setter for the value of the public number - * - * @param string $number - * @param string $type - * @return Zend_Crypt_DiffieHellman - */ - public function setPublicKey($number, $type = self::NUMBER) - { - if ($type == self::BINARY) { - $number = $this->_math->fromBinary($number); - } - if (!preg_match("/^\d+$/", $number)) { - require_once('Zend/Crypt/DiffieHellman/Exception.php'); - throw new Zend_Crypt_DiffieHellman_Exception('invalid parameter; not a positive natural number'); - } - $this->_publicKey = (string) $number; - return $this; - } - - /** - * Returns own public key for communication to the second party to this - * transaction. - * - * @param string $type - * @return string - */ - public function getPublicKey($type = self::NUMBER) - { - if ($this->_publicKey === null) { - require_once 'Zend/Crypt/DiffieHellman/Exception.php'; - throw new Zend_Crypt_DiffieHellman_Exception('A public key has not yet been generated using a prior call to generateKeys()'); - } - if ($type == self::BINARY) { - return $this->_math->toBinary($this->_publicKey); - } elseif ($type == self::BTWOC) { - return $this->_math->btwoc($this->_math->toBinary($this->_publicKey)); - } - return $this->_publicKey; - } - - /** - * Compute the shared secret key based on the public key received from the - * the second party to this transaction. This should agree to the secret - * key the second party computes on our own public key. - * Once in agreement, the key is known to only to both parties. - * By default, the function expects the public key to be in binary form - * which is the typical format when being transmitted. - * - * If you need the binary form of the shared secret key, call - * getSharedSecretKey() with the optional parameter for Binary output. - * - * @param string $publicKey - * @param string $type - * @return mixed - */ - public function computeSecretKey($publicKey, $type = self::NUMBER, $output = self::NUMBER) - { - if ($type == self::BINARY) { - $publicKey = $this->_math->fromBinary($publicKey); - } - if (!preg_match("/^\d+$/", $publicKey)) { - require_once('Zend/Crypt/DiffieHellman/Exception.php'); - throw new Zend_Crypt_DiffieHellman_Exception('invalid parameter; not a positive natural number'); - } - if (function_exists('openssl_dh_compute_key') && self::$useOpenssl !== false) { - $this->_secretKey = openssl_dh_compute_key($publicKey, $this->getPublicKey()); - } else { - $this->_secretKey = $this->_math->powmod($publicKey, $this->getPrivateKey(), $this->getPrime()); - } - return $this->getSharedSecretKey($output); - } - - /** - * Return the computed shared secret key from the DiffieHellman transaction - * - * @param string $type - * @return string - */ - public function getSharedSecretKey($type = self::NUMBER) - { - if (!isset($this->_secretKey)) { - require_once('Zend/Crypt/DiffieHellman/Exception.php'); - throw new Zend_Crypt_DiffieHellman_Exception('A secret key has not yet been computed; call computeSecretKey()'); - } - if ($type == self::BINARY) { - return $this->_math->toBinary($this->_secretKey); - } elseif ($type == self::BTWOC) { - return $this->_math->btwoc($this->_math->toBinary($this->_secretKey)); - } - return $this->_secretKey; - } - - /** - * Setter for the value of the prime number - * - * @param string $number - * @return Zend_Crypt_DiffieHellman - */ - public function setPrime($number) - { - if (!preg_match("/^\d+$/", $number) || $number < 11) { - require_once('Zend/Crypt/DiffieHellman/Exception.php'); - throw new Zend_Crypt_DiffieHellman_Exception('invalid parameter; not a positive natural number or too small: should be a large natural number prime'); - } - $this->_prime = (string) $number; - return $this; - } - - /** - * Getter for the value of the prime number - * - * @return string - */ - public function getPrime() - { - if (!isset($this->_prime)) { - require_once('Zend/Crypt/DiffieHellman/Exception.php'); - throw new Zend_Crypt_DiffieHellman_Exception('No prime number has been set'); - } - return $this->_prime; - } - - - /** - * Setter for the value of the generator number - * - * @param string $number - * @return Zend_Crypt_DiffieHellman - */ - public function setGenerator($number) - { - if (!preg_match("/^\d+$/", $number) || $number < 2) { - require_once('Zend/Crypt/DiffieHellman/Exception.php'); - throw new Zend_Crypt_DiffieHellman_Exception('invalid parameter; not a positive natural number greater than 1'); - } - $this->_generator = (string) $number; - return $this; - } - - /** - * Getter for the value of the generator number - * - * @return string - */ - public function getGenerator() - { - if (!isset($this->_generator)) { - require_once('Zend/Crypt/DiffieHellman/Exception.php'); - throw new Zend_Crypt_DiffieHellman_Exception('No generator number has been set'); - } - return $this->_generator; - } - - /** - * Setter for the value of the private number - * - * @param string $number - * @param string $type - * @return Zend_Crypt_DiffieHellman - */ - public function setPrivateKey($number, $type = self::NUMBER) - { - if ($type == self::BINARY) { - $number = $this->_math->fromBinary($number); - } - if (!preg_match("/^\d+$/", $number)) { - require_once('Zend/Crypt/DiffieHellman/Exception.php'); - throw new Zend_Crypt_DiffieHellman_Exception('invalid parameter; not a positive natural number'); - } - $this->_privateKey = (string) $number; - return $this; - } - - /** - * Getter for the value of the private number - * - * @param string $type - * @return string - */ - public function getPrivateKey($type = self::NUMBER) - { - if (!$this->hasPrivateKey()) { - $this->setPrivateKey($this->_generatePrivateKey(), self::BINARY); - } - if ($type == self::BINARY) { - return $this->_math->toBinary($this->_privateKey); - } elseif ($type == self::BTWOC) { - return $this->_math->btwoc($this->_math->toBinary($this->_privateKey)); - } - return $this->_privateKey; - } - - /** - * Check whether a private key currently exists. - * - * @return boolean - */ - public function hasPrivateKey() - { - return isset($this->_privateKey); - } - - /** - * Setter to pass an extension parameter which is used to create - * a specific BigInteger instance for a specific extension type. - * Allows manual setting of the class in case of an extension - * problem or bug. - * - * @param string $extension - * @return void - */ - public function setBigIntegerMath($extension = null) - { - /** - * @see Zend_Crypt_Math - */ - require_once 'Zend/Crypt/Math.php'; - $this->_math = new Zend_Crypt_Math($extension); - } - - /** - * In the event a private number/key has not been set by the user, - * or generated by ext/openssl, a best attempt will be made to - * generate a random key. Having a random number generator installed - * on linux/bsd is highly recommended! The alternative is not recommended - * for production unless without any other option. - * - * @return string - */ - protected function _generatePrivateKey() - { - $rand = $this->_math->rand($this->getGenerator(), $this->getPrime()); - return $rand; - } - -} diff --git a/library/Zend/Crypt/DiffieHellman/Exception.php b/library/Zend/Crypt/DiffieHellman/Exception.php deleted file mode 100644 index 64180bfc..00000000 --- a/library/Zend/Crypt/DiffieHellman/Exception.php +++ /dev/null @@ -1,36 +0,0 @@ -80 using internal algo) - * @todo Check if mhash() is a required alternative (will be PECL-only soon) - * @category Zend - * @package Zend_Crypt - * @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com) - * @license http://framework.zend.com/license/new-bsd New BSD License - */ -class Zend_Crypt_Hmac extends Zend_Crypt -{ - - /** - * The key to use for the hash - * - * @var string - */ - protected static $_key = null; - - /** - * pack() format to be used for current hashing method - * - * @var string - */ - protected static $_packFormat = null; - - /** - * Hashing algorithm; can be the md5/sha1 functions or any algorithm name - * listed in the output of PHP 5.1.2+ hash_algos(). - * - * @var string - */ - protected static $_hashAlgorithm = 'md5'; - - /** - * List of algorithms supported my mhash() - * - * @var array - */ - protected static $_supportedMhashAlgorithms = array('adler32',' crc32', 'crc32b', 'gost', - 'haval128', 'haval160', 'haval192', 'haval256', 'md4', 'md5', 'ripemd160', - 'sha1', 'sha256', 'tiger', 'tiger128', 'tiger160'); - - /** - * Constants representing the output mode of the hash algorithm - */ - const STRING = 'string'; - const BINARY = 'binary'; - - /** - * Performs a HMAC computation given relevant details such as Key, Hashing - * algorithm, the data to compute MAC of, and an output format of String, - * Binary notation or BTWOC. - * - * @param string $key - * @param string $hash - * @param string $data - * @param string $output - * @param boolean $internal - * @return string - */ - public static function compute($key, $hash, $data, $output = self::STRING) - { - // set the key - if (!isset($key) || empty($key)) { - require_once 'Zend/Crypt/Hmac/Exception.php'; - throw new Zend_Crypt_Hmac_Exception('provided key is null or empty'); - } - self::$_key = $key; - - // set the hash - self::_setHashAlgorithm($hash); - - // perform hashing and return - return self::_hash($data, $output); - } - - /** - * Setter for the hash method. - * - * @param string $hash - * @return Zend_Crypt_Hmac - */ - protected static function _setHashAlgorithm($hash) - { - if (!isset($hash) || empty($hash)) { - require_once 'Zend/Crypt/Hmac/Exception.php'; - throw new Zend_Crypt_Hmac_Exception('provided hash string is null or empty'); - } - - $hash = strtolower($hash); - $hashSupported = false; - - if (function_exists('hash_algos') && in_array($hash, hash_algos())) { - $hashSupported = true; - } - - if ($hashSupported === false && function_exists('mhash') && in_array($hash, self::$_supportedAlgosMhash)) { - $hashSupported = true; - } - - if ($hashSupported === false) { - require_once 'Zend/Crypt/Hmac/Exception.php'; - throw new Zend_Crypt_Hmac_Exception('hash algorithm provided is not supported on this PHP installation; please enable the hash or mhash extensions'); - } - self::$_hashAlgorithm = $hash; - } - - /** - * Perform HMAC and return the keyed data - * - * @param string $data - * @param string $output - * @param bool $internal Option to not use hash() functions for testing - * @return string - */ - protected static function _hash($data, $output = self::STRING, $internal = false) - { - if (function_exists('hash_hmac')) { - if ($output == self::BINARY) { - return hash_hmac(self::$_hashAlgorithm, $data, self::$_key, 1); - } - return hash_hmac(self::$_hashAlgorithm, $data, self::$_key); - } - - if (function_exists('mhash')) { - if ($output == self::BINARY) { - return mhash(self::_getMhashDefinition(self::$_hashAlgorithm), $data, self::$_key); - } - $bin = mhash(self::_getMhashDefinition(self::$_hashAlgorithm), $data, self::$_key); - return bin2hex($bin); - } - } - - /** - * Since MHASH accepts an integer constant representing the hash algorithm - * we need to make a small detour to get the correct integer matching our - * algorithm's name. - * - * @param string $hashAlgorithm - * @return integer - */ - protected static function _getMhashDefinition($hashAlgorithm) - { - for ($i = 0; $i <= mhash_count(); $i++) - { - $types[mhash_get_hash_name($i)] = $i; - } - return $types[strtoupper($hashAlgorithm)]; - } - -} \ No newline at end of file diff --git a/library/Zend/Crypt/Hmac/Exception.php b/library/Zend/Crypt/Hmac/Exception.php deleted file mode 100644 index e8e0a094..00000000 --- a/library/Zend/Crypt/Hmac/Exception.php +++ /dev/null @@ -1,36 +0,0 @@ - 127) { - return "\x00" . $long; - } - return $long; - } - - /** - * Translate a binary form into a big integer string - * - * @param string $binary - * @return string - */ - public function fromBinary($binary) { - return $this->_math->binaryToInteger($binary); - } - - /** - * Translate a big integer string into a binary form - * - * @param string $integer - * @return string - */ - public function toBinary($integer) - { - return $this->_math->integerToBinary($integer); - } - -} diff --git a/library/Zend/Crypt/Math/BigInteger.php b/library/Zend/Crypt/Math/BigInteger.php deleted file mode 100644 index 26dbaca3..00000000 --- a/library/Zend/Crypt/Math/BigInteger.php +++ /dev/null @@ -1,117 +0,0 @@ -_loadAdapter($extension); - } - - /** - * Redirect all public method calls to the wrapped extension object. - * - * @param string $methodName - * @param array $args - * @throws Zend_Crypt_Math_BigInteger_Exception - */ - public function __call($methodName, $args) - { - if(!method_exists($this->_math, $methodName)) { - require_once 'Zend/Crypt/Math/BigInteger/Exception.php'; - throw new Zend_Crypt_Math_BigInteger_Exception('invalid method call: ' . get_class($this->_math) . '::' . $methodName . '() does not exist'); - } - return call_user_func_array(array($this->_math, $methodName), $args); - } - - /** - * @param string $extension - * @throws Zend_Crypt_Math_BigInteger_Exception - */ - protected function _loadAdapter($extension = null) - { - if ($extension === null) { - if (extension_loaded('gmp')) { - $extension = 'gmp'; - //} elseif (extension_loaded('big_int')) { - // $extension = 'big_int'; - } else { - $extension = 'bcmath'; - } - } - if($extension == 'gmp' && extension_loaded('gmp')) { - require_once 'Zend/Crypt/Math/BigInteger/Gmp.php'; - $this->_math = new Zend_Crypt_Math_BigInteger_Gmp(); - //} elseif($extension == 'bigint' && extension_loaded('big_int')) { - // require_once 'Zend/Crypt_Math/BigInteger/Bigint.php'; - // $this->_math = new Zend_Crypt_Math_BigInteger_Bigint(); - } elseif ($extension == 'bcmath' && extension_loaded('bcmath')) { - require_once 'Zend/Crypt/Math/BigInteger/Bcmath.php'; - $this->_math = new Zend_Crypt_Math_BigInteger_Bcmath(); - } else { - require_once 'Zend/Crypt/Math/BigInteger/Exception.php'; - throw new Zend_Crypt_Math_BigInteger_Exception($extension . ' big integer precision math support not detected'); - } - } - -} \ No newline at end of file diff --git a/library/Zend/Crypt/Math/BigInteger/Bcmath.php b/library/Zend/Crypt/Math/BigInteger/Bcmath.php deleted file mode 100644 index e115d289..00000000 --- a/library/Zend/Crypt/Math/BigInteger/Bcmath.php +++ /dev/null @@ -1,203 +0,0 @@ - 0) { - $return = chr(bcmod($operand, 256)) . $return; - $operand = bcdiv($operand, 256); - } - if (ord($return[0]) > 127) { - $return = "\0" . $return; - } - return $return; - } - - /**public function integerToBinary($operand) - { - $return = ''; - while(bccomp($operand, '0')) { - $return .= chr(bcmod($operand, '256')); - $operand = bcdiv($operand, '256'); - } - return $return; - }**/ // Prior version for referenced offset - - - public function hexToDecimal($operand) - { - $return = '0'; - while(strlen($hex)) { - $hex = hexdec(substr($operand, 0, 4)); - $dec = bcadd(bcmul($return, 65536), $hex); - $operand = substr($operand, 4); - } - return $return; - } - -} \ No newline at end of file diff --git a/library/Zend/Crypt/Math/BigInteger/Exception.php b/library/Zend/Crypt/Math/BigInteger/Exception.php deleted file mode 100644 index 67ee22d2..00000000 --- a/library/Zend/Crypt/Math/BigInteger/Exception.php +++ /dev/null @@ -1,36 +0,0 @@ - '7') { - $bigInt = '00' . $bigInt; - } - $return = pack("H*", $bigInt); - return $return; - } - - - public function hexToDecimal($operand) - { - $return = '0'; - while(strlen($hex)) { - $hex = hexdec(substr($operand, 0, 4)); - $dec = gmp_add(gmp_mul($return, 65536), $hex); - $operand = substr($operand, 4); - } - return $return; - } - -} \ No newline at end of file diff --git a/library/Zend/Crypt/Math/BigInteger/Interface.php b/library/Zend/Crypt/Math/BigInteger/Interface.php deleted file mode 100644 index 02a4e47e..00000000 --- a/library/Zend/Crypt/Math/BigInteger/Interface.php +++ /dev/null @@ -1,51 +0,0 @@ -_hashAlgorithm = OPENSSL_ALGO_SHA1; - - if (isset($options)) { - $this->setOptions($options); - } - } - - public function setOptions(array $options) - { - if (isset($options['passPhrase'])) { - $this->_passPhrase = $options['passPhrase']; - } - foreach ($options as $option=>$value) { - switch ($option) { - case 'pemString': - $this->setPemString($value); - break; - case 'pemPath': - $this->setPemPath($value); - break; - case 'certificateString': - $this->setCertificateString($value); - break; - case 'certificatePath': - $this->setCertificatePath($value); - break; - case 'hashAlgorithm': - $this->setHashAlgorithm($value); - break; - } - } - } - - public function getPrivateKey() - { - return $this->_privateKey; - } - - public function getPublicKey() - { - return $this->_publicKey; - } - - /** - * @param string $data - * @param Zend_Crypt_Rsa_Key_Private $privateKey - * @param string $format - * @return string - */ - public function sign($data, Zend_Crypt_Rsa_Key_Private $privateKey = null, $format = null) - { - $signature = ''; - if (isset($privateKey)) { - $opensslKeyResource = $privateKey->getOpensslKeyResource(); - } else { - $opensslKeyResource = $this->_privateKey->getOpensslKeyResource(); - } - $result = openssl_sign( - $data, $signature, - $opensslKeyResource, - $this->getHashAlgorithm() - ); - if ($format == self::BASE64) { - return base64_encode($signature); - } - return $signature; - } - - /** - * @param string $data - * @param string $signature - * @param string $format - * @return string - */ - public function verifySignature($data, $signature, $format = null) - { - if ($format == self::BASE64) { - $signature = base64_decode($signature); - } - $result = openssl_verify($data, $signature, - $this->getPublicKey()->getOpensslKeyResource(), - $this->getHashAlgorithm()); - return $result; - } - - /** - * @param string $data - * @param Zend_Crypt_Rsa_Key $key - * @param string $format - * @return string - */ - public function encrypt($data, Zend_Crypt_Rsa_Key $key, $format = null) - { - $encrypted = ''; - $function = 'openssl_public_encrypt'; - if ($key instanceof Zend_Crypt_Rsa_Key_Private) { - $function = 'openssl_private_encrypt'; - } - $function($data, $encrypted, $key->getOpensslKeyResource()); - if ($format == self::BASE64) { - return base64_encode($encrypted); - } - return $encrypted; - } - - /** - * @param string $data - * @param Zend_Crypt_Rsa_Key $key - * @param string $format - * @return string - */ - public function decrypt($data, Zend_Crypt_Rsa_Key $key, $format = null) - { - $decrypted = ''; - if ($format == self::BASE64) { - $data = base64_decode($data); - } - $function = 'openssl_private_decrypt'; - if ($key instanceof Zend_Crypt_Rsa_Key_Public) { - $function = 'openssl_public_decrypt'; - } - $function($data, $decrypted, $key->getOpensslKeyResource()); - return $decrypted; - } - - /** - * @param array $configargs - * - * @throws Zend_Crypt_Rsa_Exception - * - * @return ArrayObject - */ - public function generateKeys(array $configargs = null) - { - $config = null; - $passPhrase = null; - if ($configargs !== null) { - if (isset($configargs['passPhrase'])) { - $passPhrase = $configargs['passPhrase']; - unset($configargs['passPhrase']); - } - $config = $this->_parseConfigArgs($configargs); - } - $privateKey = null; - $publicKey = null; - $resource = openssl_pkey_new($config); - if (!$resource) { - require_once 'Zend/Crypt/Rsa/Exception.php'; - throw new Zend_Crypt_Rsa_Exception('Failed to generate a new private key'); - } - // above fails on PHP 5.3 - openssl_pkey_export($resource, $private, $passPhrase); - $privateKey = new Zend_Crypt_Rsa_Key_Private($private, $passPhrase); - $details = openssl_pkey_get_details($resource); - $publicKey = new Zend_Crypt_Rsa_Key_Public($details['key']); - $return = new ArrayObject(array( - 'privateKey'=>$privateKey, - 'publicKey'=>$publicKey - ), ArrayObject::ARRAY_AS_PROPS); - return $return; - } - - /** - * @param string $value - */ - public function setPemString($value) - { - $this->_pemString = $value; - try { - $this->_privateKey = new Zend_Crypt_Rsa_Key_Private($this->_pemString, $this->_passPhrase); - $this->_publicKey = $this->_privateKey->getPublicKey(); - } catch (Zend_Crypt_Exception $e) { - $this->_privateKey = null; - $this->_publicKey = new Zend_Crypt_Rsa_Key_Public($this->_pemString); - } - } - - public function setPemPath($value) - { - $this->_pemPath = $value; - $this->setPemString(file_get_contents($this->_pemPath)); - } - - public function setCertificateString($value) - { - $this->_certificateString = $value; - $this->_publicKey = new Zend_Crypt_Rsa_Key_Public($this->_certificateString, $this->_passPhrase); - } - - public function setCertificatePath($value) - { - $this->_certificatePath = $value; - $this->setCertificateString(file_get_contents($this->_certificatePath)); - } - - public function setHashAlgorithm($name) - { - switch (strtolower($name)) { - case 'md2': - $this->_hashAlgorithm = OPENSSL_ALGO_MD2; - break; - case 'md4': - $this->_hashAlgorithm = OPENSSL_ALGO_MD4; - break; - case 'md5': - $this->_hashAlgorithm = OPENSSL_ALGO_MD5; - break; - case 'sha1': - $this->_hashAlgorithm = OPENSSL_ALGO_SHA1; - break; - case 'dss1': - $this->_hashAlgorithm = OPENSSL_ALGO_DSS1; - break; - } - } - - /** - * @return string - */ - public function getPemString() - { - return $this->_pemString; - } - - public function getPemPath() - { - return $this->_pemPath; - } - - public function getCertificateString() - { - return $this->_certificateString; - } - - public function getCertificatePath() - { - return $this->_certificatePath; - } - - public function getHashAlgorithm() - { - return $this->_hashAlgorithm; - } - - protected function _parseConfigArgs(array $config = null) - { - $configs = array(); - if (isset($config['private_key_bits'])) { - $configs['private_key_bits'] = $config['private_key_bits']; - } - if (isset($config['privateKeyBits'])) { - $configs['private_key_bits'] = $config['privateKeyBits']; - } - if (!empty($configs)) { - return $configs; - } - return null; - } - -} diff --git a/library/Zend/Crypt/Rsa/Exception.php b/library/Zend/Crypt/Rsa/Exception.php deleted file mode 100644 index 5852842a..00000000 --- a/library/Zend/Crypt/Rsa/Exception.php +++ /dev/null @@ -1,36 +0,0 @@ -_opensslKeyResource; - } - - /** - * @return string - * @throws Zend_Crypt_Exception - */ - public function toString() - { - if (!empty($this->_pemString)) { - return $this->_pemString; - } elseif (!empty($this->_certificateString)) { - return $this->_certificateString; - } - /** - * @see Zend_Crypt_Exception - */ - require_once 'Zend/Crypt/Exception.php'; - throw new Zend_Crypt_Exception('No public key string representation is available'); - } - - /** - * @return string - */ - public function __toString() - { - return $this->toString(); - } - - public function count() - { - return $this->_details['bits']; - } - - public function getType() - { - return $this->_details['type']; - } -} \ No newline at end of file diff --git a/library/Zend/Crypt/Rsa/Key/Private.php b/library/Zend/Crypt/Rsa/Key/Private.php deleted file mode 100644 index 601afecf..00000000 --- a/library/Zend/Crypt/Rsa/Key/Private.php +++ /dev/null @@ -1,75 +0,0 @@ -_pemString = $pemString; - $this->_parse($passPhrase); - } - - /** - * @param string $passPhrase - * @throws Zend_Crypt_Exception - */ - protected function _parse($passPhrase) - { - $result = openssl_get_privatekey($this->_pemString, $passPhrase); - if (!$result) { - /** - * @see Zend_Crypt_Exception - */ - require_once 'Zend/Crypt/Exception.php'; - throw new Zend_Crypt_Exception('Unable to load private key'); - } - $this->_opensslKeyResource = $result; - $this->_details = openssl_pkey_get_details($this->_opensslKeyResource); - } - - public function getPublicKey() - { - if ($this->_publicKey === null) { - /** - * @see Zend_Crypt_Rsa_Key_Public - */ - require_once 'Zend/Crypt/Rsa/Key/Public.php'; - $this->_publicKey = new Zend_Crypt_Rsa_Key_Public($this->_details['key']); - } - return $this->_publicKey; - } - -} \ No newline at end of file diff --git a/library/Zend/Crypt/Rsa/Key/Public.php b/library/Zend/Crypt/Rsa/Key/Public.php deleted file mode 100644 index b77df30a..00000000 --- a/library/Zend/Crypt/Rsa/Key/Public.php +++ /dev/null @@ -1,74 +0,0 @@ -_parse($string); - } - - /** - * @param string $string - * @throws Zend_Crypt_Exception - */ - protected function _parse($string) - { - if (preg_match("/^-----BEGIN CERTIFICATE-----/", $string)) { - $this->_certificateString = $string; - } else { - $this->_pemString = $string; - } - $result = openssl_get_publickey($string); - if (!$result) { - /** - * @see Zend_Crypt_Exception - */ - require_once 'Zend/Crypt/Exception.php'; - throw new Zend_Crypt_Exception('Unable to load public key'); - } - //openssl_pkey_export($result, $public); - //$this->_pemString = $public; - $this->_opensslKeyResource = $result; - $this->_details = openssl_pkey_get_details($this->_opensslKeyResource); - } - - public function getCertificate() - { - return $this->_certificateString; - } - -} \ No newline at end of file diff --git a/library/Zend/Currency.php b/library/Zend/Currency.php deleted file mode 100644 index 05c3a4d9..00000000 --- a/library/Zend/Currency.php +++ /dev/null @@ -1,902 +0,0 @@ - Position for the currency sign - * 'script' => Script for the output - * 'format' => Locale for numeric output - * 'display' => Currency detail to show - * 'precision' => Precision for the currency - * 'name' => Name for this currency - * 'currency' => 3 lettered international abbreviation - * 'symbol' => Currency symbol - * 'locale' => Locale for this currency - * 'value' => Money value - * 'service' => Exchange service to use - * - * @var array - * @see Zend_Locale - */ - protected $_options = array( - 'position' => self::STANDARD, - 'script' => null, - 'format' => null, - 'display' => self::NO_SYMBOL, - 'precision' => 2, - 'name' => null, - 'currency' => null, - 'symbol' => null, - 'locale' => null, - 'value' => 0, - 'service' => null, - 'tag' => 'Zend_Locale' - ); - - /** - * Creates a currency instance. Every supressed parameter is used from the actual or the given locale. - * - * @param string|array $options OPTIONAL Options array or currency short name - * when string is given - * @param string|Zend_Locale $locale OPTIONAL locale name - * @throws Zend_Currency_Exception When currency is invalid - */ - public function __construct($options = null, $locale = null) - { - $calloptions = $options; - if (is_array($options) && isset($options['display'])) { - $this->_options['display'] = $options['display']; - } - - if (is_array($options)) { - $this->setLocale($locale); - $this->setFormat($options); - } else if (Zend_Locale::isLocale($options, false, false)) { - $this->setLocale($options); - $options = $locale; - } else { - $this->setLocale($locale); - } - - // Get currency details - if (!isset($this->_options['currency']) || !is_array($options)) { - $this->_options['currency'] = self::getShortName($options, $this->_options['locale']); - } - - if (!isset($this->_options['name']) || !is_array($options)) { - $this->_options['name'] = self::getName($options, $this->_options['locale']); - } - - if (!isset($this->_options['symbol']) || !is_array($options)) { - $this->_options['symbol'] = self::getSymbol($options, $this->_options['locale']); - } - - if (($this->_options['currency'] === null) and ($this->_options['name'] === null)) { - require_once 'Zend/Currency/Exception.php'; - throw new Zend_Currency_Exception("Currency '$options' not found"); - } - - // Get the format - if ((is_array($calloptions) && !isset($calloptions['display'])) - || (!is_array($calloptions) && $this->_options['display'] == self::NO_SYMBOL)) { - if (!empty($this->_options['symbol'])) { - $this->_options['display'] = self::USE_SYMBOL; - } else if (!empty($this->_options['currency'])) { - $this->_options['display'] = self::USE_SHORTNAME; - } - } - } - - /** - * Returns a localized currency string - * - * @param integer|float $value OPTIONAL Currency value - * @param array $options OPTIONAL options to set temporary - * @throws Zend_Currency_Exception When the value is not a number - * @return string - */ - public function toCurrency($value = null, array $options = array()) - { - if ($value === null) { - if (is_array($options) && isset($options['value'])) { - $value = $options['value']; - } else { - $value = $this->_options['value']; - } - } - - if (is_array($value)) { - $options += $value; - if (isset($options['value'])) { - $value = $options['value']; - } - } - - // Validate the passed number - if (!(isset($value)) or (is_numeric($value) === false)) { - require_once 'Zend/Currency/Exception.php'; - throw new Zend_Currency_Exception("Value '$value' has to be numeric"); - } - - if (isset($options['currency'])) { - if (!isset($options['locale'])) { - $options['locale'] = $this->_options['locale']; - } - - $options['currency'] = self::getShortName($options['currency'], $options['locale']); - $options['name'] = self::getName($options['currency'], $options['locale']); - $options['symbol'] = self::getSymbol($options['currency'], $options['locale']); - } - - $options = $this->_checkOptions($options) + $this->_options; - - // Format the number - $format = $options['format']; - $locale = $options['locale']; - if (empty($format)) { - $format = Zend_Locale_Data::getContent($locale, 'currencynumber'); - } else if (Zend_Locale::isLocale($format, true, false)) { - $locale = $format; - $format = Zend_Locale_Data::getContent($format, 'currencynumber'); - } - - $original = $value; - $value = Zend_Locale_Format::toNumber($value, array('locale' => $locale, - 'number_format' => $format, - 'precision' => $options['precision'])); - - if ($options['position'] !== self::STANDARD) { - $value = str_replace('¤', '', $value); - $space = ''; - if (iconv_strpos($value, ' ') !== false) { - $value = str_replace(' ', '', $value); - $space = ' '; - } - - if ($options['position'] == self::LEFT) { - $value = '¤' . $space . $value; - } else { - $value = $value . $space . '¤'; - } - } - - // Localize the number digits - if (empty($options['script']) === false) { - $value = Zend_Locale_Format::convertNumerals($value, 'Latn', $options['script']); - } - - // Get the sign to be placed next to the number - if (is_numeric($options['display']) === false) { - $sign = $options['display']; - } else { - switch($options['display']) { - case self::USE_SYMBOL: - $sign = $this->_extractPattern($options['symbol'], $original); - break; - - case self::USE_SHORTNAME: - $sign = $options['currency']; - break; - - case self::USE_NAME: - $sign = $options['name']; - break; - - default: - $sign = ''; - $value = str_replace(' ', '', $value); - break; - } - } - - $value = str_replace('¤', $sign, $value); - return $value; - } - - /** - * Internal method to extract the currency pattern - * when a choice is given based on the given value - * - * @param string $pattern - * @param float|integer $value - * @return string - */ - private function _extractPattern($pattern, $value) - { - if (strpos($pattern, '|') === false) { - return $pattern; - } - - $patterns = explode('|', $pattern); - $token = $pattern; - $value = trim(str_replace('¤', '', $value)); - krsort($patterns); - foreach($patterns as $content) { - if (strpos($content, '<') !== false) { - $check = iconv_substr($content, 0, iconv_strpos($content, '<')); - $token = iconv_substr($content, iconv_strpos($content, '<') + 1); - if ($check < $value) { - return $token; - } - } else { - $check = iconv_substr($content, 0, iconv_strpos($content, '≤')); - $token = iconv_substr($content, iconv_strpos($content, '≤') + 1); - if ($check <= $value) { - return $token; - } - } - - } - - return $token; - } - - /** - * Sets the formating options of the localized currency string - * If no parameter is passed, the standard setting of the - * actual set locale will be used - * - * @param array $options (Optional) Options to set - * @return Zend_Currency - */ - public function setFormat(array $options = array()) - { - $this->_options = $this->_checkOptions($options) + $this->_options; - return $this; - } - - /** - * Internal function for checking static given locale parameter - * - * @param string $currency (Optional) Currency name - * @param string|Zend_Locale $locale (Optional) Locale to display informations - * @throws Zend_Currency_Exception When locale contains no region - * @return string The extracted locale representation as string - */ - private function _checkParams($currency = null, $locale = null) - { - // Manage the params - if ((empty($locale)) and (!empty($currency)) and - (Zend_Locale::isLocale($currency, true, false))) { - $locale = $currency; - $currency = null; - } - - // Validate the locale and get the country short name - $country = null; - if ((Zend_Locale::isLocale($locale, true, false)) and (strlen($locale) > 4)) { - $country = substr($locale, (strpos($locale, '_') + 1)); - } else { - require_once 'Zend/Currency/Exception.php'; - throw new Zend_Currency_Exception("No region found within the locale '" . (string) $locale . "'"); - } - - // Get the available currencies for this country - $data = Zend_Locale_Data::getContent($locale, 'currencytoregion', $country); - if ((empty($currency) === false) and (empty($data) === false)) { - $abbreviation = $currency; - } else { - $abbreviation = $data; - } - - return array('locale' => $locale, 'currency' => $currency, 'name' => $abbreviation, 'country' => $country); - } - - /** - * Returns the actual or details of other currency symbols, - * when no symbol is available it returns the currency shortname (f.e. FIM for Finnian Mark) - * - * @param string $currency (Optional) Currency name - * @param string|Zend_Locale $locale (Optional) Locale to display informations - * @return string - */ - public function getSymbol($currency = null, $locale = null) - { - if (($currency === null) and ($locale === null)) { - return $this->_options['symbol']; - } - - $params = self::_checkParams($currency, $locale); - - // Get the symbol - $symbol = Zend_Locale_Data::getContent($params['locale'], 'currencysymbol', $params['currency']); - if (empty($symbol) === true) { - $symbol = Zend_Locale_Data::getContent($params['locale'], 'currencysymbol', $params['name']); - } - - if (empty($symbol) === true) { - return null; - } - - return $symbol; - } - - /** - * Returns the actual or details of other currency shortnames - * - * @param string $currency OPTIONAL Currency's name - * @param string|Zend_Locale $locale OPTIONAL The locale - * @return string - */ - public function getShortName($currency = null, $locale = null) - { - if (($currency === null) and ($locale === null)) { - return $this->_options['currency']; - } - - $params = self::_checkParams($currency, $locale); - - // Get the shortname - if (empty($params['currency']) === true) { - return $params['name']; - } - - $list = Zend_Locale_Data::getContent($params['locale'], 'currencytoname', $params['currency']); - if (empty($list) === true) { - $list = Zend_Locale_Data::getContent($params['locale'], 'nametocurrency', $params['currency']); - if (empty($list) === false) { - $list = $params['currency']; - } - } - - if (empty($list) === true) { - return null; - } - - return $list; - } - - /** - * Returns the actual or details of other currency names - * - * @param string $currency (Optional) Currency's short name - * @param string|Zend_Locale $locale (Optional) The locale - * @return string - */ - public function getName($currency = null, $locale = null) - { - if (($currency === null) and ($locale === null)) { - return $this->_options['name']; - } - - $params = self::_checkParams($currency, $locale); - - // Get the name - $name = Zend_Locale_Data::getContent($params['locale'], 'nametocurrency', $params['currency']); - if (empty($name) === true) { - $name = Zend_Locale_Data::getContent($params['locale'], 'nametocurrency', $params['name']); - } - - if (empty($name) === true) { - return null; - } - - return $name; - } - - /** - * Returns a list of regions where this currency is or was known - * - * @param string $currency OPTIONAL Currency's short name - * @throws Zend_Currency_Exception When no currency was defined - * @return array List of regions - */ - public function getRegionList($currency = null) - { - if ($currency === null) { - $currency = $this->_options['currency']; - } - - if (empty($currency) === true) { - require_once 'Zend/Currency/Exception.php'; - throw new Zend_Currency_Exception('No currency defined'); - } - - $data = Zend_Locale_Data::getContent($this->_options['locale'], 'regiontocurrency', $currency); - - $result = explode(' ', $data); - return $result; - } - - /** - * Returns a list of currencies which are used in this region - * a region name should be 2 charachters only (f.e. EG, DE, US) - * If no region is given, the actual region is used - * - * @param string $region OPTIONAL Region to return the currencies for - * @return array List of currencies - */ - public function getCurrencyList($region = null) - { - if (empty($region) === true) { - if (strlen($this->_options['locale']) > 4) { - $region = substr($this->_options['locale'], (strpos($this->_options['locale'], '_') + 1)); - } - } - - $data = Zend_Locale_Data::getContent($this->_options['locale'], 'currencytoregion', $region); - - $result = explode(' ', $data); - return $result; - } - - /** - * Returns the actual currency name - * - * @return string - */ - public function toString() - { - return $this->toCurrency(); - } - - /** - * Returns the currency name - * - * @return string - */ - public function __toString() - { - return $this->toString(); - } - - /** - * Returns the set cache - * - * @return Zend_Cache_Core The set cache - */ - public static function getCache() - { - return Zend_Locale_Data::getCache(); - } - - /** - * Sets a cache for Zend_Currency - * - * @param Zend_Cache_Core $cache Cache to set - * @return void - */ - public static function setCache(Zend_Cache_Core $cache) - { - Zend_Locale_Data::setCache($cache); - } - - /** - * Returns true when a cache is set - * - * @return boolean - */ - public static function hasCache() - { - return Zend_Locale_Data::hasCache(); - } - - /** - * Removes any set cache - * - * @return void - */ - public static function removeCache() - { - Zend_Locale_Data::removeCache(); - } - - /** - * Clears all set cache data - * - * @param string $tag Tag to clear when the default tag name is not used - * @return void - */ - public static function clearCache($tag = null) - { - Zend_Locale_Data::clearCache($tag); - } - - /** - * Sets a new locale for data retreivement - * Example: 'de_XX' will be set to 'de' because 'de_XX' does not exist - * 'xx_YY' will be set to 'root' because 'xx' does not exist - * - * @param string|Zend_Locale $locale (Optional) Locale for parsing input - * @throws Zend_Currency_Exception When the given locale does not exist - * @return Zend_Currency Provides fluent interface - */ - public function setLocale($locale = null) - { - require_once 'Zend/Locale.php'; - try { - $locale = Zend_Locale::findLocale($locale); - if (strlen($locale) > 4) { - $this->_options['locale'] = $locale; - } else { - require_once 'Zend/Currency/Exception.php'; - throw new Zend_Currency_Exception("No region found within the locale '" . (string) $locale . "'"); - } - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Currency/Exception.php'; - throw new Zend_Currency_Exception($e->getMessage()); - } - - // Get currency details - $this->_options['currency'] = $this->getShortName(null, $this->_options['locale']); - $this->_options['name'] = $this->getName(null, $this->_options['locale']); - $this->_options['symbol'] = $this->getSymbol(null, $this->_options['locale']); - - return $this; - } - - /** - * Returns the actual set locale - * - * @return string - */ - public function getLocale() - { - return $this->_options['locale']; - } - - /** - * Returns the value - * - * @return float - */ - public function getValue() - { - return $this->_options['value']; - } - - /** - * Adds a currency - * - * @param float|integer|Zend_Currency $value Add this value to currency - * @param string|Zend_Currency $currency The currency to add - * @return Zend_Currency - */ - public function setValue($value, $currency = null) - { - $this->_options['value'] = $this->_exchangeCurrency($value, $currency); - return $this; - } - - /** - * Adds a currency - * - * @param float|integer|Zend_Currency $value Add this value to currency - * @param string|Zend_Currency $currency The currency to add - * @return Zend_Currency - */ - public function add($value, $currency = null) - { - $value = $this->_exchangeCurrency($value, $currency); - $this->_options['value'] += (float) $value; - return $this; - } - - /** - * Substracts a currency - * - * @param float|integer|Zend_Currency $value Substracts this value from currency - * @param string|Zend_Currency $currency The currency to substract - * @return Zend_Currency - */ - public function sub($value, $currency = null) - { - $value = $this->_exchangeCurrency($value, $currency); - $this->_options['value'] -= (float) $value; - return $this; - } - - /** - * Divides a currency - * - * @param float|integer|Zend_Currency $value Divides this value from currency - * @param string|Zend_Currency $currency The currency to divide - * @return Zend_Currency - */ - public function div($value, $currency = null) - { - $value = $this->_exchangeCurrency($value, $currency); - $this->_options['value'] /= (float) $value; - return $this; - } - - /** - * Multiplies a currency - * - * @param float|integer|Zend_Currency $value Multiplies this value from currency - * @param string|Zend_Currency $currency The currency to multiply - * @return Zend_Currency - */ - public function mul($value, $currency = null) - { - $value = $this->_exchangeCurrency($value, $currency); - $this->_options['value'] *= (float) $value; - return $this; - } - - /** - * Calculates the modulo from a currency - * - * @param float|integer|Zend_Currency $value Calculate modulo from this value - * @param string|Zend_Currency $currency The currency to calculate the modulo - * @return Zend_Currency - */ - public function mod($value, $currency = null) - { - $value = $this->_exchangeCurrency($value, $currency); - $this->_options['value'] %= (float) $value; - return $this; - } - - /** - * Compares two currencies - * - * @param float|integer|Zend_Currency $value Compares the currency with this value - * @param string|Zend_Currency $currency The currency to compare this value from - * @return Zend_Currency - */ - public function compare($value, $currency = null) - { - $value = $this->_exchangeCurrency($value, $currency); - $value = $this->_options['value'] - $value; - if ($value < 0) { - return -1; - } else if ($value > 0) { - return 1; - } - - return 0; - } - - /** - * Returns true when the two currencies are equal - * - * @param float|integer|Zend_Currency $value Compares the currency with this value - * @param string|Zend_Currency $currency The currency to compare this value from - * @return boolean - */ - public function equals($value, $currency = null) - { - $value = $this->_exchangeCurrency($value, $currency); - if ($this->_options['value'] == $value) { - return true; - } - - return false; - } - - /** - * Returns true when the currency is more than the given value - * - * @param float|integer|Zend_Currency $value Compares the currency with this value - * @param string|Zend_Currency $currency The currency to compare this value from - * @return boolean - */ - public function isMore($value, $currency = null) - { - $value = $this->_exchangeCurrency($value, $currency); - if ($this->_options['value'] > $value) { - return true; - } - - return false; - } - - /** - * Returns true when the currency is less than the given value - * - * @param float|integer|Zend_Currency $value Compares the currency with this value - * @param string|Zend_Currency $currency The currency to compare this value from - * @return boolean - */ - public function isLess($value, $currency = null) - { - $value = $this->_exchangeCurrency($value, $currency); - if ($this->_options['value'] < $value) { - return true; - } - - return false; - - } - - /** - * Internal method which calculates the exchanges currency - * - * @param float|integer|Zend_Currency $value Compares the currency with this value - * @param string|Zend_Currency $currency The currency to compare this value from - * @return unknown - */ - protected function _exchangeCurrency($value, $currency) - { - if ($value instanceof Zend_Currency) { - $currency = $value->getShortName(); - $value = $value->getValue(); - } else { - $currency = $this->getShortName($currency, $this->getLocale()); - } - - $rate = 1; - if ($currency !== $this->getShortName()) { - $service = $this->getService(); - if (!($service instanceof Zend_Currency_CurrencyInterface)) { - require_once 'Zend/Currency/Exception.php'; - throw new Zend_Currency_Exception('No exchange service applied'); - } - - $rate = $service->getRate($currency, $this->getShortName()); - } - - $value *= $rate; - return $value; - } - - /** - * Returns the set service class - * - * @return Zend_Service - */ - public function getService() - { - return $this->_options['service']; - } - - /** - * Sets a new exchange service - * - * @param string|Zend_Currency_CurrencyInterface $service Service class - * @return Zend_Currency - */ - public function setService($service) - { - if (is_string($service)) { - require_once 'Zend/Loader.php'; - if (!class_exists($service)) { - $file = str_replace('_', DIRECTORY_SEPARATOR, $service) . '.php'; - if (Zend_Loader::isReadable($file)) { - Zend_Loader::loadClass($service); - } - } - - $service = new $service; - } - - if (!($service instanceof Zend_Currency_CurrencyInterface)) { - require_once 'Zend/Currency/Exception.php'; - throw new Zend_Currency_Exception('A currency service must implement Zend_Currency_CurrencyInterface'); - } - - $this->_options['service'] = $service; - return $this; - } - - /** - * Internal method for checking the options array - * - * @param array $options Options to check - * @throws Zend_Currency_Exception On unknown position - * @throws Zend_Currency_Exception On unknown locale - * @throws Zend_Currency_Exception On unknown display - * @throws Zend_Currency_Exception On precision not between -1 and 30 - * @throws Zend_Currency_Exception On problem with script conversion - * @throws Zend_Currency_Exception On unknown options - * @return array - */ - protected function _checkOptions(array $options = array()) - { - if (count($options) === 0) { - return $this->_options; - } - - foreach ($options as $name => $value) { - $name = strtolower($name); - if ($name !== 'format') { - if (gettype($value) === 'string') { - $value = strtolower($value); - } - } - - switch($name) { - case 'position': - if (($value !== self::STANDARD) and ($value !== self::RIGHT) and ($value !== self::LEFT)) { - require_once 'Zend/Currency/Exception.php'; - throw new Zend_Currency_Exception("Unknown position '" . $value . "'"); - } - - break; - - case 'format': - if ((empty($value) === false) and (Zend_Locale::isLocale($value, null, false) === false)) { - if (!is_string($value) || (strpos($value, '0') === false)) { - require_once 'Zend/Currency/Exception.php'; - throw new Zend_Currency_Exception("'" . - ((gettype($value) === 'object') ? get_class($value) : $value) - . "' is no format token"); - } - } - break; - - case 'display': - if (is_numeric($value) and ($value !== self::NO_SYMBOL) and ($value !== self::USE_SYMBOL) and - ($value !== self::USE_SHORTNAME) and ($value !== self::USE_NAME)) { - require_once 'Zend/Currency/Exception.php'; - throw new Zend_Currency_Exception("Unknown display '$value'"); - } - break; - - case 'precision': - if ($value === null) { - $value = -1; - } - - if (($value < -1) or ($value > 30)) { - require_once 'Zend/Currency/Exception.php'; - throw new Zend_Currency_Exception("'$value' precision has to be between -1 and 30."); - } - break; - - case 'script': - try { - Zend_Locale_Format::convertNumerals(0, $options['script']); - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Currency/Exception.php'; - throw new Zend_Currency_Exception($e->getMessage()); - } - break; - - default: - break; - } - } - - return $options; - } -} diff --git a/library/Zend/Currency/CurrencyInterface.php b/library/Zend/Currency/CurrencyInterface.php deleted file mode 100644 index 9f5d2fb6..00000000 --- a/library/Zend/Currency/CurrencyInterface.php +++ /dev/null @@ -1,39 +0,0 @@ - 'iso', // format for date strings 'iso' or 'php' - 'fix_dst' => true, // fix dst on summer/winter time change - 'extend_month' => false, // false - addMonth like SQL, true like excel - 'cache' => null, // cache to set - 'timesync' => null // timesync server to set - ); - - // Class wide Date Constants - const DAY = 'dd'; - const DAY_SHORT = 'd'; - const DAY_SUFFIX = 'SS'; - const DAY_OF_YEAR = 'D'; - const WEEKDAY = 'EEEE'; - const WEEKDAY_SHORT = 'EEE'; - const WEEKDAY_NARROW = 'E'; - const WEEKDAY_NAME = 'EE'; - const WEEKDAY_8601 = 'eee'; - const WEEKDAY_DIGIT = 'e'; - const WEEK = 'ww'; - const MONTH = 'MM'; - const MONTH_SHORT = 'M'; - const MONTH_DAYS = 'ddd'; - const MONTH_NAME = 'MMMM'; - const MONTH_NAME_SHORT = 'MMM'; - const MONTH_NAME_NARROW = 'MMMMM'; - const YEAR = 'y'; - const YEAR_SHORT = 'yy'; - const YEAR_8601 = 'Y'; - const YEAR_SHORT_8601 = 'YY'; - const LEAPYEAR = 'l'; - const MERIDIEM = 'a'; - const SWATCH = 'B'; - const HOUR = 'HH'; - const HOUR_SHORT = 'H'; - const HOUR_AM = 'hh'; - const HOUR_SHORT_AM = 'h'; - const MINUTE = 'mm'; - const MINUTE_SHORT = 'm'; - const SECOND = 'ss'; - const SECOND_SHORT = 's'; - const MILLISECOND = 'S'; - const TIMEZONE_NAME = 'zzzz'; - const DAYLIGHT = 'I'; - const GMT_DIFF = 'Z'; - const GMT_DIFF_SEP = 'ZZZZ'; - const TIMEZONE = 'z'; - const TIMEZONE_SECS = 'X'; - const ISO_8601 = 'c'; - const RFC_2822 = 'r'; - const TIMESTAMP = 'U'; - const ERA = 'G'; - const ERA_NAME = 'GGGG'; - const ERA_NARROW = 'GGGGG'; - const DATES = 'F'; - const DATE_FULL = 'FFFFF'; - const DATE_LONG = 'FFFF'; - const DATE_MEDIUM = 'FFF'; - const DATE_SHORT = 'FF'; - const TIMES = 'WW'; - const TIME_FULL = 'TTTTT'; - const TIME_LONG = 'TTTT'; - const TIME_MEDIUM = 'TTT'; - const TIME_SHORT = 'TT'; - const DATETIME = 'K'; - const DATETIME_FULL = 'KKKKK'; - const DATETIME_LONG = 'KKKK'; - const DATETIME_MEDIUM = 'KKK'; - const DATETIME_SHORT = 'KK'; - const ATOM = 'OOO'; - const COOKIE = 'CCC'; - const RFC_822 = 'R'; - const RFC_850 = 'RR'; - const RFC_1036 = 'RRR'; - const RFC_1123 = 'RRRR'; - const RFC_3339 = 'RRRRR'; - const RSS = 'SSS'; - const W3C = 'WWW'; - - /** - * Generates the standard date object, could be a unix timestamp, localized date, - * string, integer, array and so on. Also parts of dates or time are supported - * Always set the default timezone: http://php.net/date_default_timezone_set - * For example, in your bootstrap: date_default_timezone_set('America/Los_Angeles'); - * For detailed instructions please look in the docu. - * - * @param string|integer|Zend_Date|array $date OPTIONAL Date value or value of date part to set - * ,depending on $part. If null the actual time is set - * @param string $part OPTIONAL Defines the input format of $date - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date - * @throws Zend_Date_Exception - */ - public function __construct($date = null, $part = null, $locale = null) - { - if (is_object($date) and !($date instanceof Zend_TimeSync_Protocol) and - !($date instanceof Zend_Date)) { - if ($locale instanceof Zend_Locale) { - $locale = $date; - $date = null; - $part = null; - } else { - $date = (string) $date; - } - } - - if (($date !== null) and !is_array($date) and !($date instanceof Zend_TimeSync_Protocol) and - !($date instanceof Zend_Date) and !defined($date) and Zend_Locale::isLocale($date, true, false)) { - $locale = $date; - $date = null; - $part = null; - } else if (($part !== null) and !defined($part) and Zend_Locale::isLocale($part, true, false)) { - $locale = $part; - $part = null; - } - - $this->setLocale($locale); - if (is_string($date) && ($part === null) && (strlen($date) <= 5)) { - $part = $date; - $date = null; - } - - if ($date === null) { - if ($part === null) { - $date = time(); - } else if ($part !== self::TIMESTAMP) { - $date = self::now($locale); - $date = $date->get($part); - } - } - - if ($date instanceof Zend_TimeSync_Protocol) { - $date = $date->getInfo(); - $date = $this->_getTime($date['offset']); - $part = null; - } else if (parent::$_defaultOffset != 0) { - $date = $this->_getTime(parent::$_defaultOffset); - } - - // set the timezone and offset for $this - $zone = @date_default_timezone_get(); - $this->setTimezone($zone); - - // try to get timezone from date-string - if (!is_int($date)) { - $zone = $this->getTimezoneFromString($date); - $this->setTimezone($zone); - } - - // set datepart - if (($part !== null && $part !== self::TIMESTAMP) or (!is_numeric($date))) { - // switch off dst handling for value setting - $this->setUnixTimestamp($this->getGmtOffset()); - $this->set($date, $part, $this->_locale); - - // DST fix - if (is_array($date) === true) { - if (!isset($date['hour'])) { - $date['hour'] = 0; - } - - $hour = $this->toString('H', 'iso', true); - $hour = $date['hour'] - $hour; - switch ($hour) { - case 1 : - case -23 : - $this->addTimestamp(3600); - break; - case -1 : - case 23 : - $this->subTimestamp(3600); - break; - case 2 : - case -22 : - $this->addTimestamp(7200); - break; - case -2 : - case 22 : - $this->subTimestamp(7200); - break; - } - } - } else { - $this->setUnixTimestamp($date); - } - } - - /** - * Sets class wide options, if no option was given, the actual set options will be returned - * - * @param array $options Options to set - * @throws Zend_Date_Exception - * @return Options array if no option was given - */ - public static function setOptions(array $options = array()) - { - if (empty($options)) { - return self::$_options; - } - - foreach ($options as $name => $value) { - $name = strtolower($name); - - if (array_key_exists($name, self::$_options)) { - switch($name) { - case 'format_type' : - if ((strtolower($value) != 'php') && (strtolower($value) != 'iso')) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("Unknown format type ($value) for dates, only 'iso' and 'php' supported", 0, null, $value); - } - break; - case 'fix_dst' : - if (!is_bool($value)) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("'fix_dst' has to be boolean", 0, null, $value); - } - break; - case 'extend_month' : - if (!is_bool($value)) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("'extend_month' has to be boolean", 0, null, $value); - } - break; - case 'cache' : - if ($value === null) { - parent::$_cache = null; - } else { - if (!$value instanceof Zend_Cache_Core) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("Instance of Zend_Cache expected"); - } - - parent::$_cache = $value; - parent::$_cacheTags = Zend_Date_DateObject::_getTagSupportForCache(); - Zend_Locale_Data::setCache($value); - } - break; - case 'timesync' : - if ($value === null) { - parent::$_defaultOffset = 0; - } else { - if (!$value instanceof Zend_TimeSync_Protocol) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("Instance of Zend_TimeSync expected"); - } - - $date = $value->getInfo(); - parent::$_defaultOffset = $date['offset']; - } - break; - } - self::$_options[$name] = $value; - } - else { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("Unknown option: $name = $value"); - } - } - } - - /** - * Returns this object's internal UNIX timestamp (equivalent to Zend_Date::TIMESTAMP). - * If the timestamp is too large for integers, then the return value will be a string. - * This function does not return the timestamp as an object. - * Use clone() or copyPart() instead. - * - * @return integer|string UNIX timestamp - */ - public function getTimestamp() - { - return $this->getUnixTimestamp(); - } - - /** - * Returns the calculated timestamp - * HINT: timestamps are always GMT - * - * @param string $calc Type of calculation to make - * @param string|integer|array|Zend_Date $stamp Timestamp to calculate, when null the actual timestamp is calculated - * @return Zend_Date|integer - * @throws Zend_Date_Exception - */ - private function _timestamp($calc, $stamp) - { - if ($stamp instanceof Zend_Date) { - // extract timestamp from object - $stamp = $stamp->getTimestamp(); - } - - if (is_array($stamp)) { - if (isset($stamp['timestamp']) === true) { - $stamp = $stamp['timestamp']; - } else { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('no timestamp given in array'); - } - } - - if ($calc === 'set') { - $return = $this->setUnixTimestamp($stamp); - } else { - $return = $this->_calcdetail($calc, $stamp, self::TIMESTAMP, null); - } - if ($calc != 'cmp') { - return $this; - } - return $return; - } - - /** - * Sets a new timestamp - * - * @param integer|string|array|Zend_Date $timestamp Timestamp to set - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function setTimestamp($timestamp) - { - return $this->_timestamp('set', $timestamp); - } - - /** - * Adds a timestamp - * - * @param integer|string|array|Zend_Date $timestamp Timestamp to add - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function addTimestamp($timestamp) - { - return $this->_timestamp('add', $timestamp); - } - - /** - * Subtracts a timestamp - * - * @param integer|string|array|Zend_Date $timestamp Timestamp to sub - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function subTimestamp($timestamp) - { - return $this->_timestamp('sub', $timestamp); - } - - /** - * Compares two timestamps, returning the difference as integer - * - * @param integer|string|array|Zend_Date $timestamp Timestamp to compare - * @return integer 0 = equal, 1 = later, -1 = earlier - * @throws Zend_Date_Exception - */ - public function compareTimestamp($timestamp) - { - return $this->_timestamp('cmp', $timestamp); - } - - /** - * Returns a string representation of the object - * Supported format tokens are: - * G - era, y - year, Y - ISO year, M - month, w - week of year, D - day of year, d - day of month - * E - day of week, e - number of weekday (1-7), h - hour 1-12, H - hour 0-23, m - minute, s - second - * A - milliseconds of day, z - timezone, Z - timezone offset, S - fractional second, a - period of day - * - * Additionally format tokens but non ISO conform are: - * SS - day suffix, eee - php number of weekday(0-6), ddd - number of days per month - * l - Leap year, B - swatch internet time, I - daylight saving time, X - timezone offset in seconds - * r - RFC2822 format, U - unix timestamp - * - * Not supported ISO tokens are - * u - extended year, Q - quarter, q - quarter, L - stand alone month, W - week of month - * F - day of week of month, g - modified julian, c - stand alone weekday, k - hour 0-11, K - hour 1-24 - * v - wall zone - * - * @param string $format OPTIONAL Rule for formatting output. If null the default date format is used - * @param string $type OPTIONAL Type for the format string which overrides the standard setting - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return string - */ - public function toString($format = null, $type = null, $locale = null) - { - if (is_object($format)) { - if ($format instanceof Zend_Locale) { - $locale = $format; - $format = null; - } else { - $format = (string) $format; - } - } - - if (is_object($type)) { - if ($type instanceof Zend_Locale) { - $locale = $type; - $type = null; - } else { - $type = (string) $type; - } - } - - if (($format !== null) && !defined($format) - && ($format != 'ee') && ($format != 'ss') && ($format != 'GG') && ($format != 'MM') && ($format != 'EE') && ($format != 'TT') - && Zend_Locale::isLocale($format, null, false)) { - $locale = $format; - $format = null; - } - - if (($type !== null) and ($type != 'php') and ($type != 'iso') and - Zend_Locale::isLocale($type, null, false)) { - $locale = $type; - $type = null; - } - - if ($locale === null) { - $locale = $this->getLocale(); - } - - if ($format === null) { - $format = Zend_Locale_Format::getDateFormat($locale) . ' ' . Zend_Locale_Format::getTimeFormat($locale); - } else if (((self::$_options['format_type'] == 'php') && ($type === null)) or ($type == 'php')) { - $format = Zend_Locale_Format::convertPhpToIsoFormat($format); - } - - return $this->date($this->_toToken($format, $locale), $this->getUnixTimestamp(), false); - } - - /** - * Returns a string representation of the date which is equal with the timestamp - * - * @return string - */ - public function __toString() - { - return $this->toString(null, $this->_locale); - } - - /** - * Returns a integer representation of the object - * But returns false when the given part is no value f.e. Month-Name - * - * @param string|integer|Zend_Date $part OPTIONAL Defines the date or datepart to return as integer - * @return integer|false - */ - public function toValue($part = null) - { - $result = $this->get($part); - if (is_numeric($result)) { - return intval("$result"); - } else { - return false; - } - } - - /** - * Returns an array representation of the object - * - * @return array - */ - public function toArray() - { - return array('day' => $this->toString(self::DAY_SHORT, 'iso'), - 'month' => $this->toString(self::MONTH_SHORT, 'iso'), - 'year' => $this->toString(self::YEAR, 'iso'), - 'hour' => $this->toString(self::HOUR_SHORT, 'iso'), - 'minute' => $this->toString(self::MINUTE_SHORT, 'iso'), - 'second' => $this->toString(self::SECOND_SHORT, 'iso'), - 'timezone' => $this->toString(self::TIMEZONE, 'iso'), - 'timestamp' => $this->toString(self::TIMESTAMP, 'iso'), - 'weekday' => $this->toString(self::WEEKDAY_8601, 'iso'), - 'dayofyear' => $this->toString(self::DAY_OF_YEAR, 'iso'), - 'week' => $this->toString(self::WEEK, 'iso'), - 'gmtsecs' => $this->toString(self::TIMEZONE_SECS, 'iso')); - } - - /** - * Returns a representation of a date or datepart - * This could be for example a localized monthname, the time without date, - * the era or only the fractional seconds. There are about 50 different supported date parts. - * For a complete list of supported datepart values look into the docu - * - * @param string $part OPTIONAL Part of the date to return, if null the timestamp is returned - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return string date or datepart - */ - public function get($part = null, $locale = null) - { - if ($locale === null) { - $locale = $this->getLocale(); - } - - if (($part !== null) && !defined($part) - && ($part != 'ee') && ($part != 'ss') && ($part != 'GG') && ($part != 'MM') && ($part != 'EE') && ($part != 'TT') - && Zend_Locale::isLocale($part, null, false)) { - $locale = $part; - $part = null; - } - - if ($part === null) { - $part = self::TIMESTAMP; - } else if (self::$_options['format_type'] == 'php') { - $part = Zend_Locale_Format::convertPhpToIsoFormat($part); - } - - return $this->date($this->_toToken($part, $locale), $this->getUnixTimestamp(), false); - } - - /** - * Internal method to apply tokens - * - * @param string $part - * @param string $locale - * @return string - */ - private function _toToken($part, $locale) { - // get format tokens - $comment = false; - $format = ''; - $orig = ''; - for ($i = 0; isset($part[$i]); ++$i) { - if ($part[$i] == "'") { - $comment = $comment ? false : true; - if (isset($part[$i+1]) && ($part[$i+1] == "'")) { - $comment = $comment ? false : true; - $format .= "\\'"; - ++$i; - } - - $orig = ''; - continue; - } - - if ($comment) { - $format .= '\\' . $part[$i]; - $orig = ''; - } else { - $orig .= $part[$i]; - if (!isset($part[$i+1]) || (isset($orig[0]) && ($orig[0] != $part[$i+1]))) { - $format .= $this->_parseIsoToDate($orig, $locale); - $orig = ''; - } - } - } - - return $format; - } - - /** - * Internal parsing method - * - * @param string $token - * @param string $locale - * @return string - */ - private function _parseIsoToDate($token, $locale) { - switch($token) { - case self::DAY : - return 'd'; - break; - - case self::WEEKDAY_SHORT : - $weekday = strtolower($this->date('D', $this->getUnixTimestamp(), false)); - $day = Zend_Locale_Data::getContent($locale, 'day', array('gregorian', 'format', 'wide', $weekday)); - return $this->_toComment(iconv_substr($day, 0, 3, 'UTF-8')); - break; - - case self::DAY_SHORT : - return 'j'; - break; - - case self::WEEKDAY : - $weekday = strtolower($this->date('D', $this->getUnixTimestamp(), false)); - return $this->_toComment(Zend_Locale_Data::getContent($locale, 'day', array('gregorian', 'format', 'wide', $weekday))); - break; - - case self::WEEKDAY_8601 : - return 'N'; - break; - - case 'ee' : - return $this->_toComment(str_pad($this->date('N', $this->getUnixTimestamp(), false), 2, '0', STR_PAD_LEFT)); - break; - - case self::DAY_SUFFIX : - return 'S'; - break; - - case self::WEEKDAY_DIGIT : - return 'w'; - break; - - case self::DAY_OF_YEAR : - return 'z'; - break; - - case 'DDD' : - return $this->_toComment(str_pad($this->date('z', $this->getUnixTimestamp(), false), 3, '0', STR_PAD_LEFT)); - break; - - case 'DD' : - return $this->_toComment(str_pad($this->date('z', $this->getUnixTimestamp(), false), 2, '0', STR_PAD_LEFT)); - break; - - case self::WEEKDAY_NARROW : - case 'EEEEE' : - $weekday = strtolower($this->date('D', $this->getUnixTimestamp(), false)); - $day = Zend_Locale_Data::getContent($locale, 'day', array('gregorian', 'format', 'abbreviated', $weekday)); - return $this->_toComment(iconv_substr($day, 0, 1, 'UTF-8')); - break; - - case self::WEEKDAY_NAME : - $weekday = strtolower($this->date('D', $this->getUnixTimestamp(), false)); - return $this->_toComment(Zend_Locale_Data::getContent($locale, 'day', array('gregorian', 'format', 'abbreviated', $weekday))); - break; - - case 'w' : - $week = $this->date('W', $this->getUnixTimestamp(), false); - return $this->_toComment(($week[0] == '0') ? $week[1] : $week); - break; - - case self::WEEK : - return 'W'; - break; - - case self::MONTH_NAME : - $month = $this->date('n', $this->getUnixTimestamp(), false); - return $this->_toComment(Zend_Locale_Data::getContent($locale, 'month', array('gregorian', 'format', 'wide', $month))); - break; - - case self::MONTH : - return 'm'; - break; - - case self::MONTH_NAME_SHORT : - $month = $this->date('n', $this->getUnixTimestamp(), false); - return $this->_toComment(Zend_Locale_Data::getContent($locale, 'month', array('gregorian', 'format', 'abbreviated', $month))); - break; - - case self::MONTH_SHORT : - return 'n'; - break; - - case self::MONTH_DAYS : - return 't'; - break; - - case self::MONTH_NAME_NARROW : - $month = $this->date('n', $this->getUnixTimestamp(), false); - $mon = Zend_Locale_Data::getContent($locale, 'month', array('gregorian', 'format', 'abbreviated', $month)); - return $this->_toComment(iconv_substr($mon, 0, 1, 'UTF-8')); - break; - - case self::LEAPYEAR : - return 'L'; - break; - - case self::YEAR_8601 : - return 'o'; - break; - - case self::YEAR : - return 'Y'; - break; - - case self::YEAR_SHORT : - return 'y'; - break; - - case self::YEAR_SHORT_8601 : - return $this->_toComment(substr($this->date('o', $this->getUnixTimestamp(), false), -2, 2)); - break; - - case self::MERIDIEM : - $am = $this->date('a', $this->getUnixTimestamp(), false); - if ($am == 'am') { - return $this->_toComment(Zend_Locale_Data::getContent($locale, 'am')); - } - - return $this->_toComment(Zend_Locale_Data::getContent($locale, 'pm')); - break; - - case self::SWATCH : - return 'B'; - break; - - case self::HOUR_SHORT_AM : - return 'g'; - break; - - case self::HOUR_SHORT : - return 'G'; - break; - - case self::HOUR_AM : - return 'h'; - break; - - case self::HOUR : - return 'H'; - break; - - case self::MINUTE : - return $this->_toComment(str_pad($this->date('i', $this->getUnixTimestamp(), false), 2, '0', STR_PAD_LEFT)); - break; - - case self::SECOND : - return $this->_toComment(str_pad($this->date('s', $this->getUnixTimestamp(), false), 2, '0', STR_PAD_LEFT)); - break; - - case self::MINUTE_SHORT : - return 'i'; - break; - - case self::SECOND_SHORT : - return 's'; - break; - - case self::MILLISECOND : - return $this->_toComment($this->getMilliSecond()); - break; - - case self::TIMEZONE_NAME : - case 'vvvv' : - return 'e'; - break; - - case self::DAYLIGHT : - return 'I'; - break; - - case self::GMT_DIFF : - case 'ZZ' : - case 'ZZZ' : - return 'O'; - break; - - case self::GMT_DIFF_SEP : - return 'P'; - break; - - case self::TIMEZONE : - case 'v' : - case 'zz' : - case 'zzz' : - return 'T'; - break; - - case self::TIMEZONE_SECS : - return 'Z'; - break; - - case self::ISO_8601 : - return 'c'; - break; - - case self::RFC_2822 : - return 'r'; - break; - - case self::TIMESTAMP : - return 'U'; - break; - - case self::ERA : - case 'GG' : - case 'GGG' : - $year = $this->date('Y', $this->getUnixTimestamp(), false); - if ($year < 0) { - return $this->_toComment(Zend_Locale_Data::getContent($locale, 'era', array('gregorian', 'Abbr', '0'))); - } - - return $this->_toComment(Zend_Locale_Data::getContent($locale, 'era', array('gregorian', 'Abbr', '1'))); - break; - - case self::ERA_NARROW : - $year = $this->date('Y', $this->getUnixTimestamp(), false); - if ($year < 0) { - return $this->_toComment(iconv_substr(Zend_Locale_Data::getContent($locale, 'era', array('gregorian', 'Abbr', '0')), 0, 1, 'UTF-8')) . '.'; - } - - return $this->_toComment(iconv_substr(Zend_Locale_Data::getContent($locale, 'era', array('gregorian', 'Abbr', '1')), 0, 1, 'UTF-8')) . '.'; - break; - - case self::ERA_NAME : - $year = $this->date('Y', $this->getUnixTimestamp(), false); - if ($year < 0) { - return $this->_toComment(Zend_Locale_Data::getContent($locale, 'era', array('gregorian', 'Names', '0'))); - } - - return $this->_toComment(Zend_Locale_Data::getContent($locale, 'era', array('gregorian', 'Names', '1'))); - break; - - case self::DATES : - return $this->_toToken(Zend_Locale_Format::getDateFormat($locale), $locale); - break; - - case self::DATE_FULL : - return $this->_toToken(Zend_Locale_Data::getContent($locale, 'date', array('gregorian', 'full')), $locale); - break; - - case self::DATE_LONG : - return $this->_toToken(Zend_Locale_Data::getContent($locale, 'date', array('gregorian', 'long')), $locale); - break; - - case self::DATE_MEDIUM : - return $this->_toToken(Zend_Locale_Data::getContent($locale, 'date', array('gregorian', 'medium')), $locale); - break; - - case self::DATE_SHORT : - return $this->_toToken(Zend_Locale_Data::getContent($locale, 'date', array('gregorian', 'short')), $locale); - break; - - case self::TIMES : - return $this->_toToken(Zend_Locale_Format::getTimeFormat($locale), $locale); - break; - - case self::TIME_FULL : - return $this->_toToken(Zend_Locale_Data::getContent($locale, 'time', 'full'), $locale); - break; - - case self::TIME_LONG : - return $this->_toToken(Zend_Locale_Data::getContent($locale, 'time', 'long'), $locale); - break; - - case self::TIME_MEDIUM : - return $this->_toToken(Zend_Locale_Data::getContent($locale, 'time', 'medium'), $locale); - break; - - case self::TIME_SHORT : - return $this->_toToken(Zend_Locale_Data::getContent($locale, 'time', 'short'), $locale); - break; - - case self::DATETIME : - return $this->_toToken(Zend_Locale_Format::getDateTimeFormat($locale), $locale); - break; - - case self::DATETIME_FULL : - return $this->_toToken(Zend_Locale_Data::getContent($locale, 'datetime', array('gregorian', 'full')), $locale); - break; - - case self::DATETIME_LONG : - return $this->_toToken(Zend_Locale_Data::getContent($locale, 'datetime', array('gregorian', 'long')), $locale); - break; - - case self::DATETIME_MEDIUM : - return $this->_toToken(Zend_Locale_Data::getContent($locale, 'datetime', array('gregorian', 'medium')), $locale); - break; - - case self::DATETIME_SHORT : - return $this->_toToken(Zend_Locale_Data::getContent($locale, 'datetime', array('gregorian', 'short')), $locale); - break; - - case self::ATOM : - return 'Y\-m\-d\TH\:i\:sP'; - break; - - case self::COOKIE : - return 'l\, d\-M\-y H\:i\:s e'; - break; - - case self::RFC_822 : - return 'D\, d M y H\:i\:s O'; - break; - - case self::RFC_850 : - return 'l\, d\-M\-y H\:i\:s e'; - break; - - case self::RFC_1036 : - return 'D\, d M y H\:i\:s O'; - break; - - case self::RFC_1123 : - return 'D\, d M Y H\:i\:s O'; - break; - - case self::RFC_3339 : - return 'Y\-m\-d\TH\:i\:sP'; - break; - - case self::RSS : - return 'D\, d M Y H\:i\:s O'; - break; - - case self::W3C : - return 'Y\-m\-d\TH\:i\:sP'; - break; - } - - if ($token == '') { - return ''; - } - - switch ($token[0]) { - case 'y' : - if ((strlen($token) == 4) && (abs($this->getUnixTimestamp()) <= 0x7FFFFFFF)) { - return 'Y'; - } - - $length = iconv_strlen($token, 'UTF-8'); - return $this->_toComment(str_pad($this->date('Y', $this->getUnixTimestamp(), false), $length, '0', STR_PAD_LEFT)); - break; - - case 'Y' : - if ((strlen($token) == 4) && (abs($this->getUnixTimestamp()) <= 0x7FFFFFFF)) { - return 'o'; - } - - $length = iconv_strlen($token, 'UTF-8'); - return $this->_toComment(str_pad($this->date('o', $this->getUnixTimestamp(), false), $length, '0', STR_PAD_LEFT)); - break; - - case 'A' : - $length = iconv_strlen($token, 'UTF-8'); - $result = substr($this->getMilliSecond(), 0, 3); - $result += $this->date('s', $this->getUnixTimestamp(), false) * 1000; - $result += $this->date('i', $this->getUnixTimestamp(), false) * 60000; - $result += $this->date('H', $this->getUnixTimestamp(), false) * 3600000; - - return $this->_toComment(str_pad($result, $length, '0', STR_PAD_LEFT)); - break; - } - - return $this->_toComment($token); - } - - /** - * Private function to make a comment of a token - * - * @param string $token - * @return string - */ - private function _toComment($token) - { - $token = str_split($token); - $result = ''; - foreach ($token as $tok) { - $result .= '\\' . $tok; - } - - return $result; - } - - /** - * Return digit from standard names (english) - * Faster implementation than locale aware searching - * - * @param string $name - * @return integer Number of this month - * @throws Zend_Date_Exception - */ - private function _getDigitFromName($name) - { - switch($name) { - case "Jan": - return 1; - - case "Feb": - return 2; - - case "Mar": - return 3; - - case "Apr": - return 4; - - case "May": - return 5; - - case "Jun": - return 6; - - case "Jul": - return 7; - - case "Aug": - return 8; - - case "Sep": - return 9; - - case "Oct": - return 10; - - case "Nov": - return 11; - - case "Dec": - return 12; - - default: - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('Month ($name) is not a known month'); - } - } - - /** - * Counts the exact year number - * < 70 - 2000 added, >70 < 100 - 1900, others just returned - * - * @param integer $value year number - * @return integer Number of year - */ - public static function getFullYear($value) - { - if ($value >= 0) { - if ($value < 70) { - $value += 2000; - } else if ($value < 100) { - $value += 1900; - } - } - return $value; - } - - /** - * Sets the given date as new date or a given datepart as new datepart returning the new datepart - * This could be for example a localized dayname, the date without time, - * the month or only the seconds. There are about 50 different supported date parts. - * For a complete list of supported datepart values look into the docu - * - * @param string|integer|array|Zend_Date $date Date or datepart to set - * @param string $part OPTIONAL Part of the date to set, if null the timestamp is set - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function set($date, $part = null, $locale = null) - { - if (self::$_options['format_type'] == 'php') { - $part = Zend_Locale_Format::convertPhpToIsoFormat($part); - } - - $zone = $this->getTimezoneFromString($date); - $this->setTimezone($zone); - - $this->_calculate('set', $date, $part, $locale); - return $this; - } - - /** - * Adds a date or datepart to the existing date, by extracting $part from $date, - * and modifying this object by adding that part. The $part is then extracted from - * this object and returned as an integer or numeric string (for large values, or $part's - * corresponding to pre-defined formatted date strings). - * This could be for example a ISO 8601 date, the hour the monthname or only the minute. - * There are about 50 different supported date parts. - * For a complete list of supported datepart values look into the docu. - * - * @param string|integer|array|Zend_Date $date Date or datepart to add - * @param string $part OPTIONAL Part of the date to add, if null the timestamp is added - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function add($date, $part = self::TIMESTAMP, $locale = null) - { - if (self::$_options['format_type'] == 'php') { - $part = Zend_Locale_Format::convertPhpToIsoFormat($part); - } - - $this->_calculate('add', $date, $part, $locale); - return $this; - } - - /** - * Subtracts a date from another date. - * This could be for example a RFC2822 date, the time, - * the year or only the timestamp. There are about 50 different supported date parts. - * For a complete list of supported datepart values look into the docu - * Be aware: Adding -2 Months is not equal to Subtracting 2 Months !!! - * - * @param string|integer|array|Zend_Date $date Date or datepart to subtract - * @param string $part OPTIONAL Part of the date to sub, if null the timestamp is subtracted - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function sub($date, $part = self::TIMESTAMP, $locale = null) - { - if (self::$_options['format_type'] == 'php') { - $part = Zend_Locale_Format::convertPhpToIsoFormat($part); - } - - $this->_calculate('sub', $date, $part, $locale); - return $this; - } - - /** - * Compares a date or datepart with the existing one. - * Returns -1 if earlier, 0 if equal and 1 if later. - * - * @param string|integer|array|Zend_Date $date Date or datepart to compare with the date object - * @param string $part OPTIONAL Part of the date to compare, if null the timestamp is subtracted - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return integer 0 = equal, 1 = later, -1 = earlier - * @throws Zend_Date_Exception - */ - public function compare($date, $part = self::TIMESTAMP, $locale = null) - { - if (self::$_options['format_type'] == 'php') { - $part = Zend_Locale_Format::convertPhpToIsoFormat($part); - } - - $compare = $this->_calculate('cmp', $date, $part, $locale); - - if ($compare > 0) { - return 1; - } else if ($compare < 0) { - return -1; - } - return 0; - } - - /** - * Returns a new instance of Zend_Date with the selected part copied. - * To make an exact copy, use PHP's clone keyword. - * For a complete list of supported date part values look into the docu. - * If a date part is copied, all other date parts are set to standard values. - * For example: If only YEAR is copied, the returned date object is equal to - * 01-01-YEAR 00:00:00 (01-01-1970 00:00:00 is equal to timestamp 0) - * If only HOUR is copied, the returned date object is equal to - * 01-01-1970 HOUR:00:00 (so $this contains a timestamp equal to a timestamp of 0 plus HOUR). - * - * @param string $part Part of the date to compare, if null the timestamp is subtracted - * @param string|Zend_Locale $locale OPTIONAL New object's locale. No adjustments to timezone are made. - * @return Zend_Date New clone with requested part - */ - public function copyPart($part, $locale = null) - { - $clone = clone $this; // copy all instance variables - $clone->setUnixTimestamp(0); // except the timestamp - if ($locale != null) { - $clone->setLocale($locale); // set an other locale if selected - } - $clone->set($this, $part); - return $clone; - } - - /** - * Internal function, returns the offset of a given timezone - * - * @param string $zone - * @return integer - */ - public function getTimezoneFromString($zone) - { - if (is_array($zone)) { - return $this->getTimezone(); - } - - if ($zone instanceof Zend_Date) { - return $zone->getTimezone(); - } - - $match = array(); - preg_match('/\dZ$/', $zone, $match); - if (!empty($match)) { - return "Etc/UTC"; - } - - preg_match('/([+-]\d{2}):{0,1}\d{2}/', $zone, $match); - if (!empty($match) and ($match[count($match) - 1] <= 14) and ($match[count($match) - 1] >= -12)) { - $zone = "Etc/GMT"; - $zone .= ($match[count($match) - 1] < 0) ? "+" : "-"; - $zone .= (int) abs($match[count($match) - 1]); - return $zone; - } - - preg_match('/([[:alpha:]\/]{3,30})(?!.*([[:alpha:]\/]{3,30}))/', $zone, $match); - try { - if (!empty($match) and (!is_int($match[count($match) - 1]))) { - $oldzone = $this->getTimezone(); - $this->setTimezone($match[count($match) - 1]); - $result = $this->getTimezone(); - $this->setTimezone($oldzone); - if ($result !== $oldzone) { - return $match[count($match) - 1]; - } - } - } catch (Exception $e) { - // fall through - } - - return $this->getTimezone(); - } - - /** - * Calculates the date or object - * - * @param string $calc Calculation to make - * @param string|integer $date Date for calculation - * @param string|integer $comp Second date for calculation - * @param boolean|integer $dst Use dst correction if option is set - * @return integer|string|Zend_Date new timestamp or Zend_Date depending on calculation - */ - private function _assign($calc, $date, $comp = 0, $dst = false) - { - switch ($calc) { - case 'set' : - if (!empty($comp)) { - $this->setUnixTimestamp(call_user_func(Zend_Locale_Math::$sub, $this->getUnixTimestamp(), $comp)); - } - $this->setUnixTimestamp(call_user_func(Zend_Locale_Math::$add, $this->getUnixTimestamp(), $date)); - $value = $this->getUnixTimestamp(); - break; - case 'add' : - $this->setUnixTimestamp(call_user_func(Zend_Locale_Math::$add, $this->getUnixTimestamp(), $date)); - $value = $this->getUnixTimestamp(); - break; - case 'sub' : - $this->setUnixTimestamp(call_user_func(Zend_Locale_Math::$sub, $this->getUnixTimestamp(), $date)); - $value = $this->getUnixTimestamp(); - break; - default : - // cmp - compare - return call_user_func(Zend_Locale_Math::$comp, $comp, $date); - break; - } - - // dst-correction if 'fix_dst' = true and dst !== false but only for non UTC and non GMT - if ((self::$_options['fix_dst'] === true) and ($dst !== false) and ($this->_dst === true)) { - $hour = $this->toString(self::HOUR, 'iso'); - if ($hour != $dst) { - if (($dst == ($hour + 1)) or ($dst == ($hour - 23))) { - $value += 3600; - } else if (($dst == ($hour - 1)) or ($dst == ($hour + 23))) { - $value -= 3600; - } - $this->setUnixTimestamp($value); - } - } - return $this->getUnixTimestamp(); - } - - - /** - * Calculates the date or object - * - * @param string $calc Calculation to make, one of: 'add'|'sub'|'cmp'|'copy'|'set' - * @param string|integer|array|Zend_Date $date Date or datepart to calculate with - * @param string $part Part of the date to calculate, if null the timestamp is used - * @param string|Zend_Locale $locale Locale for parsing input - * @return integer|string|Zend_Date new timestamp - * @throws Zend_Date_Exception - */ - private function _calculate($calc, $date, $part, $locale) - { - if ($date === null) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('parameter $date must be set, null is not allowed'); - } - - if (($part !== null) && (strlen($part) !== 2) && (Zend_Locale::isLocale($part, null, false))) { - $locale = $part; - $part = null; - } - - if ($locale === null) { - $locale = $this->getLocale(); - } - - $locale = (string) $locale; - - // Create date parts - $year = $this->toString(self::YEAR, 'iso'); - $month = $this->toString(self::MONTH_SHORT, 'iso'); - $day = $this->toString(self::DAY_SHORT, 'iso'); - $hour = $this->toString(self::HOUR_SHORT, 'iso'); - $minute = $this->toString(self::MINUTE_SHORT, 'iso'); - $second = $this->toString(self::SECOND_SHORT, 'iso'); - // If object extract value - if ($date instanceof Zend_Date) { - $date = $date->toString($part, 'iso', $locale); - } - - if (is_array($date) === true) { - if (empty($part) === false) { - switch($part) { - // Fall through - case self::DAY: - case self::DAY_SHORT: - if (isset($date['day']) === true) { - $date = $date['day']; - } - break; - // Fall through - case self::WEEKDAY_SHORT: - case self::WEEKDAY: - case self::WEEKDAY_8601: - case self::WEEKDAY_DIGIT: - case self::WEEKDAY_NARROW: - case self::WEEKDAY_NAME: - if (isset($date['weekday']) === true) { - $date = $date['weekday']; - $part = self::WEEKDAY_DIGIT; - } - break; - case self::DAY_OF_YEAR: - if (isset($date['day_of_year']) === true) { - $date = $date['day_of_year']; - } - break; - // Fall through - case self::MONTH: - case self::MONTH_SHORT: - case self::MONTH_NAME: - case self::MONTH_NAME_SHORT: - case self::MONTH_NAME_NARROW: - if (isset($date['month']) === true) { - $date = $date['month']; - } - break; - // Fall through - case self::YEAR: - case self::YEAR_SHORT: - case self::YEAR_8601: - case self::YEAR_SHORT_8601: - if (isset($date['year']) === true) { - $date = $date['year']; - } - break; - // Fall through - case self::HOUR: - case self::HOUR_AM: - case self::HOUR_SHORT: - case self::HOUR_SHORT_AM: - if (isset($date['hour']) === true) { - $date = $date['hour']; - } - break; - // Fall through - case self::MINUTE: - case self::MINUTE_SHORT: - if (isset($date['minute']) === true) { - $date = $date['minute']; - } - break; - // Fall through - case self::SECOND: - case self::SECOND_SHORT: - if (isset($date['second']) === true) { - $date = $date['second']; - } - break; - // Fall through - case self::TIMEZONE: - case self::TIMEZONE_NAME: - if (isset($date['timezone']) === true) { - $date = $date['timezone']; - } - break; - case self::TIMESTAMP: - if (isset($date['timestamp']) === true) { - $date = $date['timestamp']; - } - break; - case self::WEEK: - if (isset($date['week']) === true) { - $date = $date['week']; - } - break; - case self::TIMEZONE_SECS: - if (isset($date['gmtsecs']) === true) { - $date = $date['gmtsecs']; - } - break; - default: - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("datepart for part ($part) not found in array"); - break; - } - } else { - $hours = 0; - if (isset($date['hour']) === true) { - $hours = $date['hour']; - } - $minutes = 0; - if (isset($date['minute']) === true) { - $minutes = $date['minute']; - } - $seconds = 0; - if (isset($date['second']) === true) { - $seconds = $date['second']; - } - $months = 0; - if (isset($date['month']) === true) { - $months = $date['month']; - } - $days = 0; - if (isset($date['day']) === true) { - $days = $date['day']; - } - $years = 0; - if (isset($date['year']) === true) { - $years = $date['year']; - } - return $this->_assign($calc, $this->mktime($hours, $minutes, $seconds, $months, $days, $years, true), - $this->mktime($hour, $minute, $second, $month, $day, $year, true), $hour); - } - } - - // $date as object, part of foreign date as own date - switch($part) { - - // day formats - case self::DAY: - if (is_numeric($date)) { - return $this->_assign($calc, $this->mktime(0, 0, 0, 1, 1 + intval($date), 1970, true), - $this->mktime(0, 0, 0, 1, 1 + intval($day), 1970, true), $hour); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, day expected", 0, null, $date); - break; - - case self::WEEKDAY_SHORT: - $daylist = Zend_Locale_Data::getList($locale, 'day'); - $weekday = (int) $this->toString(self::WEEKDAY_DIGIT, 'iso', $locale); - $cnt = 0; - - foreach ($daylist as $key => $value) { - if (strtoupper(iconv_substr($value, 0, 3, 'UTF-8')) == strtoupper($date)) { - $found = $cnt; - break; - } - ++$cnt; - } - - // Weekday found - if ($cnt < 7) { - return $this->_assign($calc, $this->mktime(0, 0, 0, 1, 1 + $found, 1970, true), - $this->mktime(0, 0, 0, 1, 1 + $weekday, 1970, true), $hour); - } - - // Weekday not found - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, weekday expected", 0, null, $date); - break; - - case self::DAY_SHORT: - if (is_numeric($date)) { - return $this->_assign($calc, $this->mktime(0, 0, 0, 1, 1 + intval($date), 1970, true), - $this->mktime(0, 0, 0, 1, 1 + intval($day), 1970, true), $hour); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, day expected", 0, null, $date); - break; - - case self::WEEKDAY: - $daylist = Zend_Locale_Data::getList($locale, 'day'); - $weekday = (int) $this->toString(self::WEEKDAY_DIGIT, 'iso', $locale); - $cnt = 0; - - foreach ($daylist as $key => $value) { - if (strtoupper($value) == strtoupper($date)) { - $found = $cnt; - break; - } - ++$cnt; - } - - // Weekday found - if ($cnt < 7) { - return $this->_assign($calc, $this->mktime(0, 0, 0, 1, 1 + $found, 1970, true), - $this->mktime(0, 0, 0, 1, 1 + $weekday, 1970, true), $hour); - } - - // Weekday not found - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, weekday expected", 0, null, $date); - break; - - case self::WEEKDAY_8601: - $weekday = (int) $this->toString(self::WEEKDAY_8601, 'iso', $locale); - if ((intval($date) > 0) and (intval($date) < 8)) { - return $this->_assign($calc, $this->mktime(0, 0, 0, 1, 1 + intval($date), 1970, true), - $this->mktime(0, 0, 0, 1, 1 + $weekday, 1970, true), $hour); - } - - // Weekday not found - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, weekday expected", 0, null, $date); - break; - - case self::DAY_SUFFIX: - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('day suffix not supported', 0, null, $date); - break; - - case self::WEEKDAY_DIGIT: - $weekday = (int) $this->toString(self::WEEKDAY_DIGIT, 'iso', $locale); - if (is_numeric($date) and (intval($date) >= 0) and (intval($date) < 7)) { - return $this->_assign($calc, $this->mktime(0, 0, 0, 1, 1 + $date, 1970, true), - $this->mktime(0, 0, 0, 1, 1 + $weekday, 1970, true), $hour); - } - - // Weekday not found - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, weekday expected", 0, null, $date); - break; - - case self::DAY_OF_YEAR: - if (is_numeric($date)) { - if (($calc == 'add') || ($calc == 'sub')) { - $year = 1970; - ++$date; - ++$day; - } - - return $this->_assign($calc, $this->mktime(0, 0, 0, 1, $date, $year, true), - $this->mktime(0, 0, 0, $month, $day, $year, true), $hour); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, day expected", 0, null, $date); - break; - - case self::WEEKDAY_NARROW: - $daylist = Zend_Locale_Data::getList($locale, 'day', array('gregorian', 'format', 'abbreviated')); - $weekday = (int) $this->toString(self::WEEKDAY_DIGIT, 'iso', $locale); - $cnt = 0; - foreach ($daylist as $key => $value) { - if (strtoupper(iconv_substr($value, 0, 1, 'UTF-8')) == strtoupper($date)) { - $found = $cnt; - break; - } - ++$cnt; - } - - // Weekday found - if ($cnt < 7) { - return $this->_assign($calc, $this->mktime(0, 0, 0, 1, 1 + $found, 1970, true), - $this->mktime(0, 0, 0, 1, 1 + $weekday, 1970, true), $hour); - } - - // Weekday not found - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, weekday expected", 0, null, $date); - break; - - case self::WEEKDAY_NAME: - $daylist = Zend_Locale_Data::getList($locale, 'day', array('gregorian', 'format', 'abbreviated')); - $weekday = (int) $this->toString(self::WEEKDAY_DIGIT, 'iso', $locale); - $cnt = 0; - foreach ($daylist as $key => $value) { - if (strtoupper($value) == strtoupper($date)) { - $found = $cnt; - break; - } - ++$cnt; - } - - // Weekday found - if ($cnt < 7) { - return $this->_assign($calc, $this->mktime(0, 0, 0, 1, 1 + $found, 1970, true), - $this->mktime(0, 0, 0, 1, 1 + $weekday, 1970, true), $hour); - } - - // Weekday not found - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, weekday expected", 0, null, $date); - break; - - // week formats - case self::WEEK: - if (is_numeric($date)) { - $week = (int) $this->toString(self::WEEK, 'iso', $locale); - return $this->_assign($calc, parent::mktime(0, 0, 0, 1, 1 + ($date * 7), 1970, true), - parent::mktime(0, 0, 0, 1, 1 + ($week * 7), 1970, true), $hour); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, week expected", 0, null, $date); - break; - - // month formats - case self::MONTH_NAME: - $monthlist = Zend_Locale_Data::getList($locale, 'month'); - $cnt = 0; - foreach ($monthlist as $key => $value) { - if (strtoupper($value) == strtoupper($date)) { - $found = $key; - break; - } - ++$cnt; - } - $date = array_search($date, $monthlist); - - // Monthname found - if ($cnt < 12) { - $fixday = 0; - if ($calc == 'add') { - $date += $found; - $calc = 'set'; - if (self::$_options['extend_month'] == false) { - $parts = $this->getDateParts($this->mktime($hour, $minute, $second, $date, $day, $year, false)); - if ($parts['mday'] != $day) { - $fixday = ($parts['mday'] < $day) ? -$parts['mday'] : ($parts['mday'] - $day); - } - } - } else if ($calc == 'sub') { - $date = $month - $found; - $calc = 'set'; - if (self::$_options['extend_month'] == false) { - $parts = $this->getDateParts($this->mktime($hour, $minute, $second, $date, $day, $year, false)); - if ($parts['mday'] != $day) { - $fixday = ($parts['mday'] < $day) ? -$parts['mday'] : ($parts['mday'] - $day); - } - } - } - return $this->_assign($calc, $this->mktime(0, 0, 0, $date, $day + $fixday, $year, true), - $this->mktime(0, 0, 0, $month, $day, $year, true), $hour); - } - - // Monthname not found - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, month expected", 0, null, $date); - break; - - case self::MONTH: - if (is_numeric($date)) { - $fixday = 0; - if ($calc == 'add') { - $date += $month; - $calc = 'set'; - if (self::$_options['extend_month'] == false) { - $parts = $this->getDateParts($this->mktime($hour, $minute, $second, $date, $day, $year, false)); - if ($parts['mday'] != $day) { - $fixday = ($parts['mday'] < $day) ? -$parts['mday'] : ($parts['mday'] - $day); - } - } - } else if ($calc == 'sub') { - $date = $month - $date; - $calc = 'set'; - if (self::$_options['extend_month'] == false) { - $parts = $this->getDateParts($this->mktime($hour, $minute, $second, $date, $day, $year, false)); - if ($parts['mday'] != $day) { - $fixday = ($parts['mday'] < $day) ? -$parts['mday'] : ($parts['mday'] - $day); - } - } - } - return $this->_assign($calc, $this->mktime(0, 0, 0, $date, $day + $fixday, $year, true), - $this->mktime(0, 0, 0, $month, $day, $year, true), $hour); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, month expected", 0, null, $date); - break; - - case self::MONTH_NAME_SHORT: - $monthlist = Zend_Locale_Data::getList($locale, 'month', array('gregorian', 'format', 'abbreviated')); - $cnt = 0; - foreach ($monthlist as $key => $value) { - if (strtoupper($value) == strtoupper($date)) { - $found = $key; - break; - } - ++$cnt; - } - $date = array_search($date, $monthlist); - - // Monthname found - if ($cnt < 12) { - $fixday = 0; - if ($calc == 'add') { - $date += $found; - $calc = 'set'; - if (self::$_options['extend_month'] === false) { - $parts = $this->getDateParts($this->mktime($hour, $minute, $second, $date, $day, $year, false)); - if ($parts['mday'] != $day) { - $fixday = ($parts['mday'] < $day) ? -$parts['mday'] : ($parts['mday'] - $day); - } - } - } else if ($calc == 'sub') { - $date = $month - $found; - $calc = 'set'; - if (self::$_options['extend_month'] === false) { - $parts = $this->getDateParts($this->mktime($hour, $minute, $second, $date, $day, $year, false)); - if ($parts['mday'] != $day) { - $fixday = ($parts['mday'] < $day) ? -$parts['mday'] : ($parts['mday'] - $day); - } - } - } - return $this->_assign($calc, $this->mktime(0, 0, 0, $date, $day + $fixday, $year, true), - $this->mktime(0, 0, 0, $month, $day, $year, true), $hour); - } - - // Monthname not found - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, month expected", 0, null, $date); - break; - - case self::MONTH_SHORT: - if (is_numeric($date) === true) { - $fixday = 0; - if ($calc === 'add') { - $date += $month; - $calc = 'set'; - if (self::$_options['extend_month'] === false) { - $parts = $this->getDateParts($this->mktime($hour, $minute, $second, $date, $day, $year, false)); - if ($parts['mday'] != $day) { - $fixday = ($parts['mday'] < $day) ? -$parts['mday'] : ($parts['mday'] - $day); - } - } - } else if ($calc === 'sub') { - $date = $month - $date; - $calc = 'set'; - if (self::$_options['extend_month'] === false) { - $parts = $this->getDateParts($this->mktime($hour, $minute, $second, $date, $day, $year, false)); - if ($parts['mday'] != $day) { - $fixday = ($parts['mday'] < $day) ? -$parts['mday'] : ($parts['mday'] - $day); - } - } - } - - return $this->_assign($calc, $this->mktime(0, 0, 0, $date, $day + $fixday, $year, true), - $this->mktime(0, 0, 0, $month, $day, $year, true), $hour); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, month expected", 0, null, $date); - break; - - case self::MONTH_DAYS: - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('month days not supported', 0, null, $date); - break; - - case self::MONTH_NAME_NARROW: - $monthlist = Zend_Locale_Data::getList($locale, 'month', array('gregorian', 'stand-alone', 'narrow')); - $cnt = 0; - foreach ($monthlist as $key => $value) { - if (strtoupper($value) === strtoupper($date)) { - $found = $key; - break; - } - ++$cnt; - } - $date = array_search($date, $monthlist); - - // Monthname found - if ($cnt < 12) { - $fixday = 0; - if ($calc === 'add') { - $date += $found; - $calc = 'set'; - if (self::$_options['extend_month'] === false) { - $parts = $this->getDateParts($this->mktime($hour, $minute, $second, $date, $day, $year, false)); - if ($parts['mday'] != $day) { - $fixday = ($parts['mday'] < $day) ? -$parts['mday'] : ($parts['mday'] - $day); - } - } - } else if ($calc === 'sub') { - $date = $month - $found; - $calc = 'set'; - if (self::$_options['extend_month'] === false) { - $parts = $this->getDateParts($this->mktime($hour, $minute, $second, $date, $day, $year, false)); - if ($parts['mday'] != $day) { - $fixday = ($parts['mday'] < $day) ? -$parts['mday'] : ($parts['mday'] - $day); - } - } - } - return $this->_assign($calc, $this->mktime(0, 0, 0, $date, $day + $fixday, $year, true), - $this->mktime(0, 0, 0, $month, $day, $year, true), $hour); - } - - // Monthname not found - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, month expected", 0, null, $date); - break; - - // year formats - case self::LEAPYEAR: - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('leap year not supported', 0, null, $date); - break; - - case self::YEAR_8601: - if (is_numeric($date)) { - if ($calc === 'add') { - $date += $year; - $calc = 'set'; - } else if ($calc === 'sub') { - $date = $year - $date; - $calc = 'set'; - } - - return $this->_assign($calc, $this->mktime(0, 0, 0, $month, $day, intval($date), true), - $this->mktime(0, 0, 0, $month, $day, $year, true), false); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, year expected", 0, null, $date); - break; - - case self::YEAR: - if (is_numeric($date)) { - if ($calc === 'add') { - $date += $year; - $calc = 'set'; - } else if ($calc === 'sub') { - $date = $year - $date; - $calc = 'set'; - } - - return $this->_assign($calc, $this->mktime(0, 0, 0, $month, $day, intval($date), true), - $this->mktime(0, 0, 0, $month, $day, $year, true), false); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, year expected", 0, null, $date); - break; - - case self::YEAR_SHORT: - if (is_numeric($date)) { - $date = intval($date); - if (($calc == 'set') || ($calc == 'cmp')) { - $date = self::getFullYear($date); - } - if ($calc === 'add') { - $date += $year; - $calc = 'set'; - } else if ($calc === 'sub') { - $date = $year - $date; - $calc = 'set'; - } - - return $this->_assign($calc, $this->mktime(0, 0, 0, $month, $day, $date, true), - $this->mktime(0, 0, 0, $month, $day, $year, true), false); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, year expected", 0, null, $date); - break; - - case self::YEAR_SHORT_8601: - if (is_numeric($date)) { - $date = intval($date); - if (($calc === 'set') || ($calc === 'cmp')) { - $date = self::getFullYear($date); - } - if ($calc === 'add') { - $date += $year; - $calc = 'set'; - } else if ($calc === 'sub') { - $date = $year - $date; - $calc = 'set'; - } - - return $this->_assign($calc, $this->mktime(0, 0, 0, $month, $day, $date, true), - $this->mktime(0, 0, 0, $month, $day, $year, true), false); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, year expected", 0, null, $date); - break; - - // time formats - case self::MERIDIEM: - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('meridiem not supported', 0, null, $date); - break; - - case self::SWATCH: - if (is_numeric($date)) { - $rest = intval($date); - $hours = floor($rest * 24 / 1000); - $rest = $rest - ($hours * 1000 / 24); - $minutes = floor($rest * 1440 / 1000); - $rest = $rest - ($minutes * 1000 / 1440); - $seconds = floor($rest * 86400 / 1000); - return $this->_assign($calc, $this->mktime($hours, $minutes, $seconds, 1, 1, 1970, true), - $this->mktime($hour, $minute, $second, 1, 1, 1970, true), false); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, swatchstamp expected", 0, null, $date); - break; - - case self::HOUR_SHORT_AM: - if (is_numeric($date)) { - return $this->_assign($calc, $this->mktime(intval($date), 0, 0, 1, 1, 1970, true), - $this->mktime($hour, 0, 0, 1, 1, 1970, true), false); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, hour expected", 0, null, $date); - break; - - case self::HOUR_SHORT: - if (is_numeric($date)) { - return $this->_assign($calc, $this->mktime(intval($date), 0, 0, 1, 1, 1970, true), - $this->mktime($hour, 0, 0, 1, 1, 1970, true), false); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, hour expected", 0, null, $date); - break; - - case self::HOUR_AM: - if (is_numeric($date)) { - return $this->_assign($calc, $this->mktime(intval($date), 0, 0, 1, 1, 1970, true), - $this->mktime($hour, 0, 0, 1, 1, 1970, true), false); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, hour expected", 0, null, $date); - break; - - case self::HOUR: - if (is_numeric($date)) { - return $this->_assign($calc, $this->mktime(intval($date), 0, 0, 1, 1, 1970, true), - $this->mktime($hour, 0, 0, 1, 1, 1970, true), false); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, hour expected", 0, null, $date); - break; - - case self::MINUTE: - if (is_numeric($date)) { - return $this->_assign($calc, $this->mktime(0, intval($date), 0, 1, 1, 1970, true), - $this->mktime(0, $minute, 0, 1, 1, 1970, true), false); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, minute expected", 0, null, $date); - break; - - case self::SECOND: - if (is_numeric($date)) { - return $this->_assign($calc, $this->mktime(0, 0, intval($date), 1, 1, 1970, true), - $this->mktime(0, 0, $second, 1, 1, 1970, true), false); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, second expected", 0, null, $date); - break; - - case self::MILLISECOND: - if (is_numeric($date)) { - switch($calc) { - case 'set' : - return $this->setMillisecond($date); - break; - case 'add' : - return $this->addMillisecond($date); - break; - case 'sub' : - return $this->subMillisecond($date); - break; - } - - return $this->compareMillisecond($date); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, milliseconds expected", 0, null, $date); - break; - - case self::MINUTE_SHORT: - if (is_numeric($date)) { - return $this->_assign($calc, $this->mktime(0, intval($date), 0, 1, 1, 1970, true), - $this->mktime(0, $minute, 0, 1, 1, 1970, true), false); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, minute expected", 0, null, $date); - break; - - case self::SECOND_SHORT: - if (is_numeric($date)) { - return $this->_assign($calc, $this->mktime(0, 0, intval($date), 1, 1, 1970, true), - $this->mktime(0, 0, $second, 1, 1, 1970, true), false); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, second expected", 0, null, $date); - break; - - // timezone formats - // break intentionally omitted - case self::TIMEZONE_NAME: - case self::TIMEZONE: - case self::TIMEZONE_SECS: - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('timezone not supported', 0, null, $date); - break; - - case self::DAYLIGHT: - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('daylight not supported', 0, null, $date); - break; - - case self::GMT_DIFF: - case self::GMT_DIFF_SEP: - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('gmtdiff not supported', 0, null, $date); - break; - - // date strings - case self::ISO_8601: - // (-)YYYY-MM-dd - preg_match('/^(-{0,1}\d{4})-(\d{2})-(\d{2})/', $date, $datematch); - // (-)YY-MM-dd - if (empty($datematch)) { - preg_match('/^(-{0,1}\d{2})-(\d{2})-(\d{2})/', $date, $datematch); - } - // (-)YYYYMMdd - if (empty($datematch)) { - preg_match('/^(-{0,1}\d{4})(\d{2})(\d{2})/', $date, $datematch); - } - // (-)YYMMdd - if (empty($datematch)) { - preg_match('/^(-{0,1}\d{2})(\d{2})(\d{2})/', $date, $datematch); - } - $tmpdate = $date; - if (!empty($datematch)) { - $dateMatchCharCount = iconv_strlen($datematch[0], 'UTF-8'); - $tmpdate = iconv_substr($date, - $dateMatchCharCount, - iconv_strlen($date, 'UTF-8') - $dateMatchCharCount, - 'UTF-8'); - } - // (T)hh:mm:ss - preg_match('/[T,\s]{0,1}(\d{2}):(\d{2}):(\d{2})/', $tmpdate, $timematch); - if (empty($timematch)) { - preg_match('/[T,\s]{0,1}(\d{2})(\d{2})(\d{2})/', $tmpdate, $timematch); - } - if (empty($datematch) and empty($timematch)) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("unsupported ISO8601 format ($date)", 0, null, $date); - } - if (!empty($timematch)) { - $timeMatchCharCount = iconv_strlen($timematch[0], 'UTF-8'); - $tmpdate = iconv_substr($tmpdate, - $timeMatchCharCount, - iconv_strlen($tmpdate, 'UTF-8') - $timeMatchCharCount, - 'UTF-8'); - } - if (empty($datematch)) { - $datematch[1] = 1970; - $datematch[2] = 1; - $datematch[3] = 1; - } else if (iconv_strlen($datematch[1], 'UTF-8') == 2) { - $datematch[1] = self::getFullYear($datematch[1]); - } - if (empty($timematch)) { - $timematch[1] = 0; - $timematch[2] = 0; - $timematch[3] = 0; - } - - if (($calc == 'set') || ($calc == 'cmp')) { - --$datematch[2]; - --$month; - --$datematch[3]; - --$day; - $datematch[1] -= 1970; - $year -= 1970; - } - return $this->_assign($calc, $this->mktime($timematch[1], $timematch[2], $timematch[3], 1 + $datematch[2], 1 + $datematch[3], 1970 + $datematch[1], false), - $this->mktime($hour, $minute, $second, 1 + $month, 1 + $day, 1970 + $year, false), false); - break; - - case self::RFC_2822: - $result = preg_match('/^\w{3},\s(\d{1,2})\s(\w{3})\s(\d{4})\s' - . '(\d{2}):(\d{2}):{0,1}(\d{0,2})\s([+-]' - . '{1}\d{4}|\w{1,20})$/', $date, $match); - - if (!$result) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("no RFC 2822 format ($date)", 0, null, $date); - } - - $months = $this->_getDigitFromName($match[2]); - - if (($calc == 'set') || ($calc == 'cmp')) { - --$months; - --$month; - --$match[1]; - --$day; - $match[3] -= 1970; - $year -= 1970; - } - return $this->_assign($calc, $this->mktime($match[4], $match[5], $match[6], 1 + $months, 1 + $match[1], 1970 + $match[3], false), - $this->mktime($hour, $minute, $second, 1 + $month, 1 + $day, 1970 + $year, false), false); - break; - - case self::TIMESTAMP: - if (is_numeric($date)) { - return $this->_assign($calc, $date, $this->getUnixTimestamp()); - } - - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, timestamp expected", 0, null, $date); - break; - - // additional formats - // break intentionally omitted - case self::ERA: - case self::ERA_NAME: - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('era not supported', 0, null, $date); - break; - - case self::DATES: - try { - $parsed = Zend_Locale_Format::getDate($date, array('locale' => $locale, 'format_type' => 'iso', 'fix_date' => true)); - - if (($calc == 'set') || ($calc == 'cmp')) { - --$parsed['month']; - --$month; - --$parsed['day']; - --$day; - $parsed['year'] -= 1970; - $year -= 1970; - } - - return $this->_assign($calc, $this->mktime(0, 0, 0, 1 + $parsed['month'], 1 + $parsed['day'], 1970 + $parsed['year'], true), - $this->mktime(0, 0, 0, 1 + $month, 1 + $day, 1970 + $year, true), $hour); - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception($e->getMessage(), 0, $e, $date); - } - break; - - case self::DATE_FULL: - try { - $format = Zend_Locale_Data::getContent($locale, 'date', array('gregorian', 'full')); - $parsed = Zend_Locale_Format::getDate($date, array('date_format' => $format, 'format_type' => 'iso', 'locale' => $locale)); - - if (($calc == 'set') || ($calc == 'cmp')) { - --$parsed['month']; - --$month; - --$parsed['day']; - --$day; - $parsed['year'] -= 1970; - $year -= 1970; - } - return $this->_assign($calc, $this->mktime(0, 0, 0, 1 + $parsed['month'], 1 + $parsed['day'], 1970 + $parsed['year'], true), - $this->mktime(0, 0, 0, 1 + $month, 1 + $day, 1970 + $year, true), $hour); - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception($e->getMessage(), 0, $e, $date); - } - break; - - case self::DATE_LONG: - try { - $format = Zend_Locale_Data::getContent($locale, 'date', array('gregorian', 'long')); - $parsed = Zend_Locale_Format::getDate($date, array('date_format' => $format, 'format_type' => 'iso', 'locale' => $locale)); - - if (($calc == 'set') || ($calc == 'cmp')){ - --$parsed['month']; - --$month; - --$parsed['day']; - --$day; - $parsed['year'] -= 1970; - $year -= 1970; - } - return $this->_assign($calc, $this->mktime(0, 0, 0, 1 + $parsed['month'], 1 + $parsed['day'], 1970 + $parsed['year'], true), - $this->mktime(0, 0, 0, 1 + $month, 1 + $day, 1970 + $year, true), $hour); - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception($e->getMessage(), 0, $e, $date); - } - break; - - case self::DATE_MEDIUM: - try { - $format = Zend_Locale_Data::getContent($locale, 'date', array('gregorian', 'medium')); - $parsed = Zend_Locale_Format::getDate($date, array('date_format' => $format, 'format_type' => 'iso', 'locale' => $locale)); - - if (($calc == 'set') || ($calc == 'cmp')) { - --$parsed['month']; - --$month; - --$parsed['day']; - --$day; - $parsed['year'] -= 1970; - $year -= 1970; - } - return $this->_assign($calc, $this->mktime(0, 0, 0, 1 + $parsed['month'], 1 + $parsed['day'], 1970 + $parsed['year'], true), - $this->mktime(0, 0, 0, 1 + $month, 1 + $day, 1970 + $year, true), $hour); - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception($e->getMessage(), 0, $e, $date); - } - break; - - case self::DATE_SHORT: - try { - $format = Zend_Locale_Data::getContent($locale, 'date', array('gregorian', 'short')); - $parsed = Zend_Locale_Format::getDate($date, array('date_format' => $format, 'format_type' => 'iso', 'locale' => $locale)); - - $parsed['year'] = self::getFullYear($parsed['year']); - - if (($calc == 'set') || ($calc == 'cmp')) { - --$parsed['month']; - --$month; - --$parsed['day']; - --$day; - $parsed['year'] -= 1970; - $year -= 1970; - } - return $this->_assign($calc, $this->mktime(0, 0, 0, 1 + $parsed['month'], 1 + $parsed['day'], 1970 + $parsed['year'], true), - $this->mktime(0, 0, 0, 1 + $month, 1 + $day, 1970 + $year, true), $hour); - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception($e->getMessage(), 0, $e, $date); - } - break; - - case self::TIMES: - try { - if ($calc != 'set') { - $month = 1; - $day = 1; - $year = 1970; - } - $parsed = Zend_Locale_Format::getTime($date, array('locale' => $locale, 'format_type' => 'iso', 'fix_date' => true)); - return $this->_assign($calc, $this->mktime($parsed['hour'], $parsed['minute'], $parsed['second'], $month, $day, $year, true), - $this->mktime($hour, $minute, $second, $month, $day, $year, true), false); - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception($e->getMessage(), 0, $e, $date); - } - break; - - case self::TIME_FULL: - try { - $format = Zend_Locale_Data::getContent($locale, 'time', array('gregorian', 'full')); - $parsed = Zend_Locale_Format::getTime($date, array('date_format' => $format, 'format_type' => 'iso', 'locale' => $locale)); - if ($calc != 'set') { - $month = 1; - $day = 1; - $year = 1970; - } - - if (!isset($parsed['second'])) { - $parsed['second'] = 0; - } - - return $this->_assign($calc, $this->mktime($parsed['hour'], $parsed['minute'], $parsed['second'], $month, $day, $year, true), - $this->mktime($hour, $minute, $second, $month, $day, $year, true), false); - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception($e->getMessage(), 0, $e, $date); - } - break; - - case self::TIME_LONG: - try { - $format = Zend_Locale_Data::getContent($locale, 'time', array('gregorian', 'long')); - $parsed = Zend_Locale_Format::getTime($date, array('date_format' => $format, 'format_type' => 'iso', 'locale' => $locale)); - if ($calc != 'set') { - $month = 1; - $day = 1; - $year = 1970; - } - return $this->_assign($calc, $this->mktime($parsed['hour'], $parsed['minute'], $parsed['second'], $month, $day, $year, true), - $this->mktime($hour, $minute, $second, $month, $day, $year, true), false); - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception($e->getMessage(), 0, $e, $date); - } - break; - - case self::TIME_MEDIUM: - try { - $format = Zend_Locale_Data::getContent($locale, 'time', array('gregorian', 'medium')); - $parsed = Zend_Locale_Format::getTime($date, array('date_format' => $format, 'format_type' => 'iso', 'locale' => $locale)); - if ($calc != 'set') { - $month = 1; - $day = 1; - $year = 1970; - } - return $this->_assign($calc, $this->mktime($parsed['hour'], $parsed['minute'], $parsed['second'], $month, $day, $year, true), - $this->mktime($hour, $minute, $second, $month, $day, $year, true), false); - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception($e->getMessage(), 0, $e, $date); - } - break; - - case self::TIME_SHORT: - try { - $format = Zend_Locale_Data::getContent($locale, 'time', array('gregorian', 'short')); - $parsed = Zend_Locale_Format::getTime($date, array('date_format' => $format, 'format_type' => 'iso', 'locale' => $locale)); - if ($calc != 'set') { - $month = 1; - $day = 1; - $year = 1970; - } - - if (!isset($parsed['second'])) { - $parsed['second'] = 0; - } - - return $this->_assign($calc, $this->mktime($parsed['hour'], $parsed['minute'], $parsed['second'], $month, $day, $year, true), - $this->mktime($hour, $minute, $second, $month, $day, $year, true), false); - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception($e->getMessage(), 0, $e, $date); - } - break; - - case self::DATETIME: - try { - $parsed = Zend_Locale_Format::getDateTime($date, array('locale' => $locale, 'format_type' => 'iso', 'fix_date' => true)); - if (($calc == 'set') || ($calc == 'cmp')) { - --$parsed['month']; - --$month; - --$parsed['day']; - --$day; - $parsed['year'] -= 1970; - $year -= 1970; - } - return $this->_assign($calc, $this->mktime($parsed['hour'], $parsed['minute'], $parsed['second'], 1 + $parsed['month'], 1 + $parsed['day'], 1970 + $parsed['year'], true), - $this->mktime($hour, $minute, $second, 1 + $month, 1 + $day, 1970 + $year, true), $hour); - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception($e->getMessage(), 0, $e, $date); - } - break; - - case self::DATETIME_FULL: - try { - $format = Zend_Locale_Data::getContent($locale, 'datetime', array('gregorian', 'full')); - $parsed = Zend_Locale_Format::getDateTime($date, array('date_format' => $format, 'format_type' => 'iso', 'locale' => $locale)); - - if (($calc == 'set') || ($calc == 'cmp')) { - --$parsed['month']; - --$month; - --$parsed['day']; - --$day; - $parsed['year'] -= 1970; - $year -= 1970; - } - - if (!isset($parsed['second'])) { - $parsed['second'] = 0; - } - - return $this->_assign($calc, $this->mktime($parsed['hour'], $parsed['minute'], $parsed['second'], 1 + $parsed['month'], 1 + $parsed['day'], 1970 + $parsed['year'], true), - $this->mktime($hour, $minute, $second, 1 + $month, 1 + $day, 1970 + $year, true), $hour); - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception($e->getMessage(), 0, $e, $date); - } - break; - - case self::DATETIME_LONG: - try { - $format = Zend_Locale_Data::getContent($locale, 'datetime', array('gregorian', 'long')); - $parsed = Zend_Locale_Format::getDateTime($date, array('date_format' => $format, 'format_type' => 'iso', 'locale' => $locale)); - - if (($calc == 'set') || ($calc == 'cmp')){ - --$parsed['month']; - --$month; - --$parsed['day']; - --$day; - $parsed['year'] -= 1970; - $year -= 1970; - } - return $this->_assign($calc, $this->mktime($parsed['hour'], $parsed['minute'], $parsed['second'], 1 + $parsed['month'], 1 + $parsed['day'], 1970 + $parsed['year'], true), - $this->mktime($hour, $minute, $second, 1 + $month, 1 + $day, 1970 + $year, true), $hour); - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception($e->getMessage(), 0, $e, $date); - } - break; - - case self::DATETIME_MEDIUM: - try { - $format = Zend_Locale_Data::getContent($locale, 'datetime', array('gregorian', 'medium')); - $parsed = Zend_Locale_Format::getDateTime($date, array('date_format' => $format, 'format_type' => 'iso', 'locale' => $locale)); - if (($calc == 'set') || ($calc == 'cmp')) { - --$parsed['month']; - --$month; - --$parsed['day']; - --$day; - $parsed['year'] -= 1970; - $year -= 1970; - } - return $this->_assign($calc, $this->mktime($parsed['hour'], $parsed['minute'], $parsed['second'], 1 + $parsed['month'], 1 + $parsed['day'], 1970 + $parsed['year'], true), - $this->mktime($hour, $minute, $second, 1 + $month, 1 + $day, 1970 + $year, true), $hour); - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception($e->getMessage(), 0, $e, $date); - } - break; - - case self::DATETIME_SHORT: - try { - $format = Zend_Locale_Data::getContent($locale, 'datetime', array('gregorian', 'short')); - $parsed = Zend_Locale_Format::getDateTime($date, array('date_format' => $format, 'format_type' => 'iso', 'locale' => $locale)); - - $parsed['year'] = self::getFullYear($parsed['year']); - - if (($calc == 'set') || ($calc == 'cmp')) { - --$parsed['month']; - --$month; - --$parsed['day']; - --$day; - $parsed['year'] -= 1970; - $year -= 1970; - } - - if (!isset($parsed['second'])) { - $parsed['second'] = 0; - } - - return $this->_assign($calc, $this->mktime($parsed['hour'], $parsed['minute'], $parsed['second'], 1 + $parsed['month'], 1 + $parsed['day'], 1970 + $parsed['year'], true), - $this->mktime($hour, $minute, $second, 1 + $month, 1 + $day, 1970 + $year, true), $hour); - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception($e->getMessage(), 0, $e, $date); - } - break; - - // ATOM and RFC_3339 are identical - case self::ATOM: - case self::RFC_3339: - $result = preg_match('/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})\d{0,4}([+-]{1}\d{2}:\d{2}|Z)$/', $date, $match); - if (!$result) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, ATOM format expected", 0, null, $date); - } - - if (($calc == 'set') || ($calc == 'cmp')) { - --$match[2]; - --$month; - --$match[3]; - --$day; - $match[1] -= 1970; - $year -= 1970; - } - return $this->_assign($calc, $this->mktime($match[4], $match[5], $match[6], 1 + $match[2], 1 + $match[3], 1970 + $match[1], true), - $this->mktime($hour, $minute, $second, 1 + $month, 1 + $day, 1970 + $year, true), false); - break; - - case self::COOKIE: - $result = preg_match("/^\w{6,9},\s(\d{2})-(\w{3})-(\d{2})\s(\d{2}):(\d{2}):(\d{2})\s.{3,20}$/", $date, $match); - if (!$result) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, COOKIE format expected", 0, null, $date); - } - $matchStartPos = iconv_strpos($match[0], ' ', 0, 'UTF-8') + 1; - $match[0] = iconv_substr($match[0], - $matchStartPos, - iconv_strlen($match[0], 'UTF-8') - $matchStartPos, - 'UTF-8'); - - $months = $this->_getDigitFromName($match[2]); - $match[3] = self::getFullYear($match[3]); - - if (($calc == 'set') || ($calc == 'cmp')) { - --$months; - --$month; - --$match[1]; - --$day; - $match[3] -= 1970; - $year -= 1970; - } - return $this->_assign($calc, $this->mktime($match[4], $match[5], $match[6], 1 + $months, 1 + $match[1], 1970 + $match[3], true), - $this->mktime($hour, $minute, $second, 1 + $month, 1 + $day, 1970 + $year, true), false); - break; - - case self::RFC_822: - case self::RFC_1036: - // new RFC 822 format, identical to RFC 1036 standard - $result = preg_match('/^\w{0,3},{0,1}\s{0,1}(\d{1,2})\s(\w{3})\s(\d{2})\s(\d{2}):(\d{2}):{0,1}(\d{0,2})\s([+-]{1}\d{4}|\w{1,20})$/', $date, $match); - if (!$result) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, RFC 822 date format expected", 0, null, $date); - } - - $months = $this->_getDigitFromName($match[2]); - $match[3] = self::getFullYear($match[3]); - - if (($calc == 'set') || ($calc == 'cmp')) { - --$months; - --$month; - --$match[1]; - --$day; - $match[3] -= 1970; - $year -= 1970; - } - return $this->_assign($calc, $this->mktime($match[4], $match[5], $match[6], 1 + $months, 1 + $match[1], 1970 + $match[3], false), - $this->mktime($hour, $minute, $second, 1 + $month, 1 + $day, 1970 + $year, false), false); - break; - - case self::RFC_850: - $result = preg_match('/^\w{6,9},\s(\d{2})-(\w{3})-(\d{2})\s(\d{2}):(\d{2}):(\d{2})\s.{3,21}$/', $date, $match); - if (!$result) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, RFC 850 date format expected", 0, null, $date); - } - - $months = $this->_getDigitFromName($match[2]); - $match[3] = self::getFullYear($match[3]); - - if (($calc == 'set') || ($calc == 'cmp')) { - --$months; - --$month; - --$match[1]; - --$day; - $match[3] -= 1970; - $year -= 1970; - } - return $this->_assign($calc, $this->mktime($match[4], $match[5], $match[6], 1 + $months, 1 + $match[1], 1970 + $match[3], true), - $this->mktime($hour, $minute, $second, 1 + $month, 1 + $day, 1970 + $year, true), false); - break; - - case self::RFC_1123: - $result = preg_match('/^\w{0,3},{0,1}\s{0,1}(\d{1,2})\s(\w{3})\s(\d{2,4})\s(\d{2}):(\d{2}):{0,1}(\d{0,2})\s([+-]{1}\d{4}|\w{1,20})$/', $date, $match); - if (!$result) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, RFC 1123 date format expected", 0, null, $date); - } - - $months = $this->_getDigitFromName($match[2]); - - if (($calc == 'set') || ($calc == 'cmp')) { - --$months; - --$month; - --$match[1]; - --$day; - $match[3] -= 1970; - $year -= 1970; - } - return $this->_assign($calc, $this->mktime($match[4], $match[5], $match[6], 1 + $months, 1 + $match[1], 1970 + $match[3], true), - $this->mktime($hour, $minute, $second, 1 + $month, 1 + $day, 1970 + $year, true), false); - break; - - case self::RSS: - $result = preg_match('/^\w{3},\s(\d{2})\s(\w{3})\s(\d{2,4})\s(\d{1,2}):(\d{2}):(\d{2})\s.{1,21}$/', $date, $match); - if (!$result) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, RSS date format expected", 0, null, $date); - } - - $months = $this->_getDigitFromName($match[2]); - $match[3] = self::getFullYear($match[3]); - - if (($calc == 'set') || ($calc == 'cmp')) { - --$months; - --$month; - --$match[1]; - --$day; - $match[3] -= 1970; - $year -= 1970; - } - return $this->_assign($calc, $this->mktime($match[4], $match[5], $match[6], 1 + $months, 1 + $match[1], 1970 + $match[3], true), - $this->mktime($hour, $minute, $second, 1 + $month, 1 + $day, 1970 + $year, true), false); - break; - - case self::W3C: - $result = preg_match('/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})[+-]{1}\d{2}:\d{2}$/', $date, $match); - if (!$result) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid date ($date) operand, W3C date format expected", 0, null, $date); - } - - if (($calc == 'set') || ($calc == 'cmp')) { - --$match[2]; - --$month; - --$match[3]; - --$day; - $match[1] -= 1970; - $year -= 1970; - } - return $this->_assign($calc, $this->mktime($match[4], $match[5], $match[6], 1 + $match[2], 1 + $match[3], 1970 + $match[1], true), - $this->mktime($hour, $minute, $second, 1 + $month, 1 + $day, 1970 + $year, true), false); - break; - - default: - if (!is_numeric($date) || !empty($part)) { - try { - if (empty($part)) { - $part = Zend_Locale_Format::getDateFormat($locale) . " "; - $part .= Zend_Locale_Format::getTimeFormat($locale); - } - - $parsed = Zend_Locale_Format::getDate($date, array('date_format' => $part, 'locale' => $locale, 'fix_date' => true, 'format_type' => 'iso')); - if ((strpos(strtoupper($part), 'YY') !== false) and (strpos(strtoupper($part), 'YYYY') === false)) { - $parsed['year'] = self::getFullYear($parsed['year']); - } - - if (($calc == 'set') || ($calc == 'cmp')) { - if (isset($parsed['month'])) { - --$parsed['month']; - } else { - $parsed['month'] = 0; - } - - if (isset($parsed['day'])) { - --$parsed['day']; - } else { - $parsed['day'] = 0; - } - - if (!isset($parsed['year'])) { - $parsed['year'] = 1970; - } - } - - return $this->_assign($calc, $this->mktime( - isset($parsed['hour']) ? $parsed['hour'] : 0, - isset($parsed['minute']) ? $parsed['minute'] : 0, - isset($parsed['second']) ? $parsed['second'] : 0, - isset($parsed['month']) ? (1 + $parsed['month']) : 1, - isset($parsed['day']) ? (1 + $parsed['day']) : 1, - $parsed['year'], - false), $this->getUnixTimestamp(), false); - } catch (Zend_Locale_Exception $e) { - if (!is_numeric($date)) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception($e->getMessage(), 0, $e, $date); - } - } - } - - return $this->_assign($calc, $date, $this->getUnixTimestamp(), false); - break; - } - } - - /** - * Returns true when both date objects or date parts are equal. - * For example: - * 15.May.2000 <-> 15.June.2000 Equals only for Day or Year... all other will return false - * - * @param string|integer|array|Zend_Date $date Date or datepart to equal with - * @param string $part OPTIONAL Part of the date to compare, if null the timestamp is used - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return boolean - * @throws Zend_Date_Exception - */ - public function equals($date, $part = self::TIMESTAMP, $locale = null) - { - $result = $this->compare($date, $part, $locale); - - if ($result == 0) { - return true; - } - - return false; - } - - /** - * Returns if the given date or datepart is earlier - * For example: - * 15.May.2000 <-> 13.June.1999 will return true for day, year and date, but not for month - * - * @param string|integer|array|Zend_Date $date Date or datepart to compare with - * @param string $part OPTIONAL Part of the date to compare, if null the timestamp is used - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return boolean - * @throws Zend_Date_Exception - */ - public function isEarlier($date, $part = null, $locale = null) - { - $result = $this->compare($date, $part, $locale); - - if ($result == -1) { - return true; - } - - return false; - } - - /** - * Returns if the given date or datepart is later - * For example: - * 15.May.2000 <-> 13.June.1999 will return true for month but false for day, year and date - * Returns if the given date is later - * - * @param string|integer|array|Zend_Date $date Date or datepart to compare with - * @param string $part OPTIONAL Part of the date to compare, if null the timestamp is used - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return boolean - * @throws Zend_Date_Exception - */ - public function isLater($date, $part = null, $locale = null) - { - $result = $this->compare($date, $part, $locale); - - if ($result == 1) { - return true; - } - - return false; - } - - /** - * Returns only the time of the date as new Zend_Date object - * For example: - * 15.May.2000 10:11:23 will return a dateobject equal to 01.Jan.1970 10:11:23 - * - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date - */ - public function getTime($locale = null) - { - if (self::$_options['format_type'] == 'php') { - $format = 'H:i:s'; - } else { - $format = self::TIME_MEDIUM; - } - - return $this->copyPart($format, $locale); - } - - /** - * Returns the calculated time - * - * @param string $calc Calculation to make - * @param string|integer|array|Zend_Date $time Time to calculate with, if null the actual time is taken - * @param string $format Timeformat for parsing input - * @param string|Zend_Locale $locale Locale for parsing input - * @return integer|Zend_Date new time - * @throws Zend_Date_Exception - */ - private function _time($calc, $time, $format, $locale) - { - if ($time === null) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('parameter $time must be set, null is not allowed'); - } - - if ($time instanceof Zend_Date) { - // extract time from object - $time = $time->toString('HH:mm:ss', 'iso'); - } else { - if (is_array($time)) { - if ((isset($time['hour']) === true) or (isset($time['minute']) === true) or - (isset($time['second']) === true)) { - $parsed = $time; - } else { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("no hour, minute or second given in array"); - } - } else { - if (self::$_options['format_type'] == 'php') { - $format = Zend_Locale_Format::convertPhpToIsoFormat($format); - } - try { - if ($locale === null) { - $locale = $this->getLocale(); - } - - $parsed = Zend_Locale_Format::getTime($time, array('date_format' => $format, 'locale' => $locale, 'format_type' => 'iso')); - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception($e->getMessage(), 0, $e); - } - } - - if (!array_key_exists('hour', $parsed)) { - $parsed['hour'] = 0; - } - - if (!array_key_exists('minute', $parsed)) { - $parsed['minute'] = 0; - } - - if (!array_key_exists('second', $parsed)) { - $parsed['second'] = 0; - } - - $time = str_pad($parsed['hour'], 2, '0', STR_PAD_LEFT) . ":"; - $time .= str_pad($parsed['minute'], 2, '0', STR_PAD_LEFT) . ":"; - $time .= str_pad($parsed['second'], 2, '0', STR_PAD_LEFT); - } - - $return = $this->_calcdetail($calc, $time, self::TIMES, 'de'); - if ($calc != 'cmp') { - return $this; - } - - return $return; - } - - - /** - * Sets a new time for the date object. Format defines how to parse the time string. - * Also a complete date can be given, but only the time is used for setting. - * For example: dd.MMMM.yyTHH:mm' and 'ss sec'-> 10.May.07T25:11 and 44 sec => 1h11min44sec + 1 day - * Returned is the new date object and the existing date is left as it was before - * - * @param string|integer|array|Zend_Date $time Time to set - * @param string $format OPTIONAL Timeformat for parsing input - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function setTime($time, $format = null, $locale = null) - { - return $this->_time('set', $time, $format, $locale); - } - - - /** - * Adds a time to the existing date. Format defines how to parse the time string. - * If only parts are given the other parts are set to 0. - * If no format is given, the standardformat of this locale is used. - * For example: HH:mm:ss -> 10 -> +10 hours - * - * @param string|integer|array|Zend_Date $time Time to add - * @param string $format OPTIONAL Timeformat for parsing input - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function addTime($time, $format = null, $locale = null) - { - return $this->_time('add', $time, $format, $locale); - } - - - /** - * Subtracts a time from the existing date. Format defines how to parse the time string. - * If only parts are given the other parts are set to 0. - * If no format is given, the standardformat of this locale is used. - * For example: HH:mm:ss -> 10 -> -10 hours - * - * @param string|integer|array|Zend_Date $time Time to sub - * @param string $format OPTIONAL Timeformat for parsing input - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid inteface - * @throws Zend_Date_Exception - */ - public function subTime($time, $format = null, $locale = null) - { - return $this->_time('sub', $time, $format, $locale); - } - - - /** - * Compares the time from the existing date. Format defines how to parse the time string. - * If only parts are given the other parts are set to default. - * If no format us given, the standardformat of this locale is used. - * For example: HH:mm:ss -> 10 -> 10 hours - * - * @param string|integer|array|Zend_Date $time Time to compare - * @param string $format OPTIONAL Timeformat for parsing input - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return integer 0 = equal, 1 = later, -1 = earlier - * @throws Zend_Date_Exception - */ - public function compareTime($time, $format = null, $locale = null) - { - return $this->_time('cmp', $time, $format, $locale); - } - - /** - * Returns a clone of $this, with the time part set to 00:00:00. - * - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date - */ - public function getDate($locale = null) - { - $orig = self::$_options['format_type']; - if (self::$_options['format_type'] == 'php') { - self::$_options['format_type'] = 'iso'; - } - - $date = $this->copyPart(self::DATE_MEDIUM, $locale); - $date->addTimestamp($this->getGmtOffset()); - self::$_options['format_type'] = $orig; - - return $date; - } - - /** - * Returns the calculated date - * - * @param string $calc Calculation to make - * @param string|integer|array|Zend_Date $date Date to calculate with, if null the actual date is taken - * @param string $format Date format for parsing - * @param string|Zend_Locale $locale Locale for parsing input - * @return integer|Zend_Date new date - * @throws Zend_Date_Exception - */ - private function _date($calc, $date, $format, $locale) - { - if ($date === null) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('parameter $date must be set, null is not allowed'); - } - - if ($date instanceof Zend_Date) { - // extract date from object - $date = $date->toString('d.M.y', 'iso'); - } else { - if (is_array($date)) { - if ((isset($date['year']) === true) or (isset($date['month']) === true) or - (isset($date['day']) === true)) { - $parsed = $date; - } else { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("no day,month or year given in array"); - } - } else { - if ((self::$_options['format_type'] == 'php') && !defined($format)) { - $format = Zend_Locale_Format::convertPhpToIsoFormat($format); - } - try { - if ($locale === null) { - $locale = $this->getLocale(); - } - - $parsed = Zend_Locale_Format::getDate($date, array('date_format' => $format, 'locale' => $locale, 'format_type' => 'iso')); - if ((strpos(strtoupper($format), 'YY') !== false) and (strpos(strtoupper($format), 'YYYY') === false)) { - $parsed['year'] = self::getFullYear($parsed['year']); - } - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception($e->getMessage(), 0, $e); - } - } - - if (!array_key_exists('day', $parsed)) { - $parsed['day'] = 1; - } - - if (!array_key_exists('month', $parsed)) { - $parsed['month'] = 1; - } - - if (!array_key_exists('year', $parsed)) { - $parsed['year'] = 0; - } - - $date = $parsed['day'] . "." . $parsed['month'] . "." . $parsed['year']; - } - - $return = $this->_calcdetail($calc, $date, self::DATE_MEDIUM, 'de'); - if ($calc != 'cmp') { - return $this; - } - return $return; - } - - - /** - * Sets a new date for the date object. Format defines how to parse the date string. - * Also a complete date with time can be given, but only the date is used for setting. - * For example: MMMM.yy HH:mm-> May.07 22:11 => 01.May.07 00:00 - * Returned is the new date object and the existing time is left as it was before - * - * @param string|integer|array|Zend_Date $date Date to set - * @param string $format OPTIONAL Date format for parsing - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function setDate($date, $format = null, $locale = null) - { - return $this->_date('set', $date, $format, $locale); - } - - - /** - * Adds a date to the existing date object. Format defines how to parse the date string. - * If only parts are given the other parts are set to 0. - * If no format is given, the standardformat of this locale is used. - * For example: MM.dd.YYYY -> 10 -> +10 months - * - * @param string|integer|array|Zend_Date $date Date to add - * @param string $format OPTIONAL Date format for parsing input - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function addDate($date, $format = null, $locale = null) - { - return $this->_date('add', $date, $format, $locale); - } - - - /** - * Subtracts a date from the existing date object. Format defines how to parse the date string. - * If only parts are given the other parts are set to 0. - * If no format is given, the standardformat of this locale is used. - * For example: MM.dd.YYYY -> 10 -> -10 months - * Be aware: Subtracting 2 months is not equal to Adding -2 months !!! - * - * @param string|integer|array|Zend_Date $date Date to sub - * @param string $format OPTIONAL Date format for parsing input - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function subDate($date, $format = null, $locale = null) - { - return $this->_date('sub', $date, $format, $locale); - } - - - /** - * Compares the date from the existing date object, ignoring the time. - * Format defines how to parse the date string. - * If only parts are given the other parts are set to 0. - * If no format is given, the standardformat of this locale is used. - * For example: 10.01.2000 => 10.02.1999 -> false - * - * @param string|integer|array|Zend_Date $date Date to compare - * @param string $format OPTIONAL Date format for parsing input - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return integer 0 = equal, 1 = later, -1 = earlier - * @throws Zend_Date_Exception - */ - public function compareDate($date, $format = null, $locale = null) - { - return $this->_date('cmp', $date, $format, $locale); - } - - - /** - * Returns the full ISO 8601 date from the date object. - * Always the complete ISO 8601 specifiction is used. If an other ISO date is needed - * (ISO 8601 defines several formats) use toString() instead. - * This function does not return the ISO date as object. Use copy() instead. - * - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return string - */ - public function getIso($locale = null) - { - return $this->toString(self::ISO_8601, 'iso', $locale); - } - - - /** - * Sets a new date for the date object. Not given parts are set to default. - * Only supported ISO 8601 formats are accepted. - * For example: 050901 -> 01.Sept.2005 00:00:00, 20050201T10:00:30 -> 01.Feb.2005 10h00m30s - * Returned is the new date object - * - * @param string|integer|Zend_Date $date ISO Date to set - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function setIso($date, $locale = null) - { - return $this->_calcvalue('set', $date, 'iso', self::ISO_8601, $locale); - } - - - /** - * Adds a ISO date to the date object. Not given parts are set to default. - * Only supported ISO 8601 formats are accepted. - * For example: 050901 -> + 01.Sept.2005 00:00:00, 10:00:00 -> +10h - * Returned is the new date object - * - * @param string|integer|Zend_Date $date ISO Date to add - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function addIso($date, $locale = null) - { - return $this->_calcvalue('add', $date, 'iso', self::ISO_8601, $locale); - } - - - /** - * Subtracts a ISO date from the date object. Not given parts are set to default. - * Only supported ISO 8601 formats are accepted. - * For example: 050901 -> - 01.Sept.2005 00:00:00, 10:00:00 -> -10h - * Returned is the new date object - * - * @param string|integer|Zend_Date $date ISO Date to sub - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function subIso($date, $locale = null) - { - return $this->_calcvalue('sub', $date, 'iso', self::ISO_8601, $locale); - } - - - /** - * Compares a ISO date with the date object. Not given parts are set to default. - * Only supported ISO 8601 formats are accepted. - * For example: 050901 -> - 01.Sept.2005 00:00:00, 10:00:00 -> -10h - * Returns if equal, earlier or later - * - * @param string|integer|Zend_Date $date ISO Date to sub - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return integer 0 = equal, 1 = later, -1 = earlier - * @throws Zend_Date_Exception - */ - public function compareIso($date, $locale = null) - { - return $this->_calcvalue('cmp', $date, 'iso', self::ISO_8601, $locale); - } - - - /** - * Returns a RFC 822 compilant datestring from the date object. - * This function does not return the RFC date as object. Use copy() instead. - * - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return string - */ - public function getArpa($locale = null) - { - if (self::$_options['format_type'] == 'php') { - $format = 'D\, d M y H\:i\:s O'; - } else { - $format = self::RFC_822; - } - - return $this->toString($format, 'iso', $locale); - } - - - /** - * Sets a RFC 822 date as new date for the date object. - * Only RFC 822 compilant date strings are accepted. - * For example: Sat, 14 Feb 09 00:31:30 +0100 - * Returned is the new date object - * - * @param string|integer|Zend_Date $date RFC 822 to set - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function setArpa($date, $locale = null) - { - return $this->_calcvalue('set', $date, 'arpa', self::RFC_822, $locale); - } - - - /** - * Adds a RFC 822 date to the date object. - * ARPA messages are used in emails or HTTP Headers. - * Only RFC 822 compilant date strings are accepted. - * For example: Sat, 14 Feb 09 00:31:30 +0100 - * Returned is the new date object - * - * @param string|integer|Zend_Date $date RFC 822 Date to add - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function addArpa($date, $locale = null) - { - return $this->_calcvalue('add', $date, 'arpa', self::RFC_822, $locale); - } - - - /** - * Subtracts a RFC 822 date from the date object. - * ARPA messages are used in emails or HTTP Headers. - * Only RFC 822 compilant date strings are accepted. - * For example: Sat, 14 Feb 09 00:31:30 +0100 - * Returned is the new date object - * - * @param string|integer|Zend_Date $date RFC 822 Date to sub - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function subArpa($date, $locale = null) - { - return $this->_calcvalue('sub', $date, 'arpa', self::RFC_822, $locale); - } - - - /** - * Compares a RFC 822 compilant date with the date object. - * ARPA messages are used in emails or HTTP Headers. - * Only RFC 822 compilant date strings are accepted. - * For example: Sat, 14 Feb 09 00:31:30 +0100 - * Returns if equal, earlier or later - * - * @param string|integer|Zend_Date $date RFC 822 Date to sub - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return integer 0 = equal, 1 = later, -1 = earlier - * @throws Zend_Date_Exception - */ - public function compareArpa($date, $locale = null) - { - return $this->_calcvalue('cmp', $date, 'arpa', self::RFC_822, $locale); - } - - - /** - * Check if location is supported - * - * @param array $location locations array - * @return $horizon float - */ - private function _checkLocation($location) - { - if (!isset($location['longitude']) or !isset($location['latitude'])) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('Location must include \'longitude\' and \'latitude\'', 0, null, $location); - } - if (($location['longitude'] > 180) or ($location['longitude'] < -180)) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('Longitude must be between -180 and 180', 0, null, $location); - } - if (($location['latitude'] > 90) or ($location['latitude'] < -90)) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('Latitude must be between -90 and 90', 0, null, $location); - } - - if (!isset($location['horizon'])){ - $location['horizon'] = 'effective'; - } - - switch ($location['horizon']) { - case 'civil' : - return -0.104528; - break; - case 'nautic' : - return -0.207912; - break; - case 'astronomic' : - return -0.309017; - break; - default : - return -0.0145439; - break; - } - } - - - /** - * Returns the time of sunrise for this date and a given location as new date object - * For a list of cities and correct locations use the class Zend_Date_Cities - * - * @param array $location location of sunrise - * ['horizon'] -> civil, nautic, astronomical, effective (default) - * ['longitude'] -> longitude of location - * ['latitude'] -> latitude of location - * @return Zend_Date - * @throws Zend_Date_Exception - */ - public function getSunrise($location) - { - $horizon = $this->_checkLocation($location); - $result = clone $this; - $result->set($this->calcSun($location, $horizon, true), self::TIMESTAMP); - return $result; - } - - - /** - * Returns the time of sunset for this date and a given location as new date object - * For a list of cities and correct locations use the class Zend_Date_Cities - * - * @param array $location location of sunset - * ['horizon'] -> civil, nautic, astronomical, effective (default) - * ['longitude'] -> longitude of location - * ['latitude'] -> latitude of location - * @return Zend_Date - * @throws Zend_Date_Exception - */ - public function getSunset($location) - { - $horizon = $this->_checkLocation($location); - $result = clone $this; - $result->set($this->calcSun($location, $horizon, false), self::TIMESTAMP); - return $result; - } - - - /** - * Returns an array with the sunset and sunrise dates for all horizon types - * For a list of cities and correct locations use the class Zend_Date_Cities - * - * @param array $location location of suninfo - * ['horizon'] -> civil, nautic, astronomical, effective (default) - * ['longitude'] -> longitude of location - * ['latitude'] -> latitude of location - * @return array - [sunset|sunrise][effective|civil|nautic|astronomic] - * @throws Zend_Date_Exception - */ - public function getSunInfo($location) - { - $suninfo = array(); - for ($i = 0; $i < 4; ++$i) { - switch ($i) { - case 0 : - $location['horizon'] = 'effective'; - break; - case 1 : - $location['horizon'] = 'civil'; - break; - case 2 : - $location['horizon'] = 'nautic'; - break; - case 3 : - $location['horizon'] = 'astronomic'; - break; - } - $horizon = $this->_checkLocation($location); - $result = clone $this; - $result->set($this->calcSun($location, $horizon, true), self::TIMESTAMP); - $suninfo['sunrise'][$location['horizon']] = $result; - $result = clone $this; - $result->set($this->calcSun($location, $horizon, false), self::TIMESTAMP); - $suninfo['sunset'][$location['horizon']] = $result; - } - return $suninfo; - } - - - /** - * Check a given year for leap year. - * - * @param integer|array|Zend_Date $year Year to check - * @return boolean - */ - public static function checkLeapYear($year) - { - if ($year instanceof Zend_Date) { - $year = (int) $year->toString(self::YEAR, 'iso'); - } - - if (is_array($year)) { - if (isset($year['year']) === true) { - $year = $year['year']; - } else { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("no year given in array"); - } - } - - if (!is_numeric($year)) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("year ($year) has to be integer for checkLeapYear()", 0, null, $year); - } - - return (bool) parent::isYearLeapYear($year); - } - - - /** - * Returns true, if the year is a leap year. - * - * @return boolean - */ - public function isLeapYear() - { - return self::checkLeapYear($this); - } - - - /** - * Returns if the set date is todays date - * - * @return boolean - */ - public function isToday() - { - $today = $this->date('Ymd', $this->_getTime()); - $day = $this->date('Ymd', $this->getUnixTimestamp()); - return ($today == $day); - } - - - /** - * Returns if the set date is yesterdays date - * - * @return boolean - */ - public function isYesterday() - { - list($year, $month, $day) = explode('-', $this->date('Y-m-d', $this->_getTime())); - // adjusts for leap days and DST changes that are timezone specific - $yesterday = $this->date('Ymd', $this->mktime(0, 0, 0, $month, $day -1, $year)); - $day = $this->date('Ymd', $this->getUnixTimestamp()); - return $day == $yesterday; - } - - - /** - * Returns if the set date is tomorrows date - * - * @return boolean - */ - public function isTomorrow() - { - list($year, $month, $day) = explode('-', $this->date('Y-m-d', $this->_getTime())); - // adjusts for leap days and DST changes that are timezone specific - $tomorrow = $this->date('Ymd', $this->mktime(0, 0, 0, $month, $day +1, $year)); - $day = $this->date('Ymd', $this->getUnixTimestamp()); - return $day == $tomorrow; - } - - /** - * Returns the actual date as new date object - * - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date - */ - public static function now($locale = null) - { - return new Zend_Date(time(), self::TIMESTAMP, $locale); - } - - /** - * Calculate date details - * - * @param string $calc Calculation to make - * @param string|integer|array|Zend_Date $date Date or Part to calculate - * @param string $part Datepart for Calculation - * @param string|Zend_Locale $locale Locale for parsing input - * @return integer|string new date - * @throws Zend_Date_Exception - */ - private function _calcdetail($calc, $date, $type, $locale) - { - $old = false; - if (self::$_options['format_type'] == 'php') { - self::$_options['format_type'] = 'iso'; - $old = true; - } - - switch($calc) { - case 'set' : - $return = $this->set($date, $type, $locale); - break; - case 'add' : - $return = $this->add($date, $type, $locale); - break; - case 'sub' : - $return = $this->sub($date, $type, $locale); - break; - default : - $return = $this->compare($date, $type, $locale); - break; - } - - if ($old) { - self::$_options['format_type'] = 'php'; - } - - return $return; - } - - /** - * Internal calculation, returns the requested date type - * - * @param string $calc Calculation to make - * @param string|integer|Zend_Date $value Datevalue to calculate with, if null the actual value is taken - * @param string|Zend_Locale $locale Locale for parsing input - * @return integer|Zend_Date new date - * @throws Zend_Date_Exception - */ - private function _calcvalue($calc, $value, $type, $parameter, $locale) - { - if ($value === null) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("parameter $type must be set, null is not allowed"); - } - - if ($locale === null) { - $locale = $this->getLocale(); - } - - if ($value instanceof Zend_Date) { - // extract value from object - $value = $value->toString($parameter, 'iso', $locale); - } else if (!is_array($value) && !is_numeric($value) && ($type != 'iso') && ($type != 'arpa')) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid $type ($value) operand", 0, null, $value); - } - - $return = $this->_calcdetail($calc, $value, $parameter, $locale); - if ($calc != 'cmp') { - return $this; - } - return $return; - } - - - /** - * Returns only the year from the date object as new object. - * For example: 10.May.2000 10:30:00 -> 01.Jan.2000 00:00:00 - * - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date - */ - public function getYear($locale = null) - { - if (self::$_options['format_type'] == 'php') { - $format = 'Y'; - } else { - $format = self::YEAR; - } - - return $this->copyPart($format, $locale); - } - - - /** - * Sets a new year - * If the year is between 0 and 69, 2000 will be set (2000-2069) - * If the year if between 70 and 99, 1999 will be set (1970-1999) - * 3 or 4 digit years are set as expected. If you need to set year 0-99 - * use set() instead. - * Returned is the new date object - * - * @param string|integer|array|Zend_Date $date Year to set - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function setYear($year, $locale = null) - { - return $this->_calcvalue('set', $year, 'year', self::YEAR, $locale); - } - - - /** - * Adds the year to the existing date object - * If the year is between 0 and 69, 2000 will be added (2000-2069) - * If the year if between 70 and 99, 1999 will be added (1970-1999) - * 3 or 4 digit years are added as expected. If you need to add years from 0-99 - * use add() instead. - * Returned is the new date object - * - * @param string|integer|array|Zend_Date $date Year to add - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function addYear($year, $locale = null) - { - return $this->_calcvalue('add', $year, 'year', self::YEAR, $locale); - } - - - /** - * Subs the year from the existing date object - * If the year is between 0 and 69, 2000 will be subtracted (2000-2069) - * If the year if between 70 and 99, 1999 will be subtracted (1970-1999) - * 3 or 4 digit years are subtracted as expected. If you need to subtract years from 0-99 - * use sub() instead. - * Returned is the new date object - * - * @param string|integer|array|Zend_Date $date Year to sub - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function subYear($year, $locale = null) - { - return $this->_calcvalue('sub', $year, 'year', self::YEAR, $locale); - } - - - /** - * Compares the year with the existing date object, ignoring other date parts. - * For example: 10.03.2000 -> 15.02.2000 -> true - * Returns if equal, earlier or later - * - * @param string|integer|array|Zend_Date $year Year to compare - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return integer 0 = equal, 1 = later, -1 = earlier - * @throws Zend_Date_Exception - */ - public function compareYear($year, $locale = null) - { - return $this->_calcvalue('cmp', $year, 'year', self::YEAR, $locale); - } - - - /** - * Returns only the month from the date object as new object. - * For example: 10.May.2000 10:30:00 -> 01.May.1970 00:00:00 - * - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date - */ - public function getMonth($locale = null) - { - if (self::$_options['format_type'] == 'php') { - $format = 'm'; - } else { - $format = self::MONTH; - } - - return $this->copyPart($format, $locale); - } - - - /** - * Returns the calculated month - * - * @param string $calc Calculation to make - * @param string|integer|array|Zend_Date $month Month to calculate with, if null the actual month is taken - * @param string|Zend_Locale $locale Locale for parsing input - * @return integer|Zend_Date new time - * @throws Zend_Date_Exception - */ - private function _month($calc, $month, $locale) - { - if ($month === null) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('parameter $month must be set, null is not allowed'); - } - - if ($locale === null) { - $locale = $this->getLocale(); - } - - if ($month instanceof Zend_Date) { - // extract month from object - $found = $month->toString(self::MONTH_SHORT, 'iso', $locale); - } else { - if (is_numeric($month)) { - $found = $month; - } else if (is_array($month)) { - if (isset($month['month']) === true) { - $month = $month['month']; - } else { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("no month given in array"); - } - } else { - $monthlist = Zend_Locale_Data::getList($locale, 'month'); - $monthlist2 = Zend_Locale_Data::getList($locale, 'month', array('gregorian', 'format', 'abbreviated')); - - $monthlist = array_merge($monthlist, $monthlist2); - $found = 0; - $cnt = 0; - foreach ($monthlist as $key => $value) { - if (strtoupper($value) == strtoupper($month)) { - $found = ($key % 12) + 1; - break; - } - ++$cnt; - } - if ($found == 0) { - foreach ($monthlist2 as $key => $value) { - if (strtoupper(iconv_substr($value, 0, 1, 'UTF-8')) == strtoupper($month)) { - $found = $key + 1; - break; - } - ++$cnt; - } - } - if ($found == 0) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("unknown month name ($month)", 0, null, $month); - } - } - } - $return = $this->_calcdetail($calc, $found, self::MONTH_SHORT, $locale); - if ($calc != 'cmp') { - return $this; - } - return $return; - } - - - /** - * Sets a new month - * The month can be a number or a string. Setting months lower then 0 and greater then 12 - * will result in adding or subtracting the relevant year. (12 months equal one year) - * If a localized monthname is given it will be parsed with the default locale or the optional - * set locale. - * Returned is the new date object - * - * @param string|integer|array|Zend_Date $month Month to set - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function setMonth($month, $locale = null) - { - return $this->_month('set', $month, $locale); - } - - - /** - * Adds months to the existing date object. - * The month can be a number or a string. Adding months lower then 0 and greater then 12 - * will result in adding or subtracting the relevant year. (12 months equal one year) - * If a localized monthname is given it will be parsed with the default locale or the optional - * set locale. - * Returned is the new date object - * - * @param string|integer|array|Zend_Date $month Month to add - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function addMonth($month, $locale = null) - { - return $this->_month('add', $month, $locale); - } - - - /** - * Subtracts months from the existing date object. - * The month can be a number or a string. Subtracting months lower then 0 and greater then 12 - * will result in adding or subtracting the relevant year. (12 months equal one year) - * If a localized monthname is given it will be parsed with the default locale or the optional - * set locale. - * Returned is the new date object - * - * @param string|integer|array|Zend_Date $month Month to sub - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function subMonth($month, $locale = null) - { - return $this->_month('sub', $month, $locale); - } - - - /** - * Compares the month with the existing date object, ignoring other date parts. - * For example: 10.03.2000 -> 15.03.1950 -> true - * Returns if equal, earlier or later - * - * @param string|integer|array|Zend_Date $month Month to compare - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return integer 0 = equal, 1 = later, -1 = earlier - * @throws Zend_Date_Exception - */ - public function compareMonth($month, $locale = null) - { - return $this->_month('cmp', $month, $locale); - } - - - /** - * Returns the day as new date object - * Example: 20.May.1986 -> 20.Jan.1970 00:00:00 - * - * @param Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date - */ - public function getDay($locale = null) - { - return $this->copyPart(self::DAY_SHORT, $locale); - } - - - /** - * Returns the calculated day - * - * @param string $calc Type of calculation to make - * @param Zend_Date $day Day to calculate, when null the actual day is calculated - * @param Zend_Locale $locale Locale for parsing input - * @return Zend_Date|integer - */ - private function _day($calc, $day, $locale) - { - if ($day === null) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('parameter $day must be set, null is not allowed'); - } - - if ($locale === null) { - $locale = $this->getLocale(); - } - - if ($day instanceof Zend_Date) { - $day = $day->toString(self::DAY_SHORT, 'iso', $locale); - } - - if (is_numeric($day)) { - $type = self::DAY_SHORT; - } else if (is_array($day)) { - if (isset($day['day']) === true) { - $day = $day['day']; - $type = self::WEEKDAY; - } else { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("no day given in array"); - } - } else { - switch (iconv_strlen($day, 'UTF-8')) { - case 1 : - $type = self::WEEKDAY_NARROW; - break; - case 2: - $type = self::WEEKDAY_NAME; - break; - case 3: - $type = self::WEEKDAY_SHORT; - break; - default: - $type = self::WEEKDAY; - break; - } - } - $return = $this->_calcdetail($calc, $day, $type, $locale); - if ($calc != 'cmp') { - return $this; - } - return $return; - } - - - /** - * Sets a new day - * The day can be a number or a string. Setting days lower then 0 or greater than the number of this months days - * will result in adding or subtracting the relevant month. - * If a localized dayname is given it will be parsed with the default locale or the optional - * set locale. - * Returned is the new date object - * Example: setDay('Montag', 'de_AT'); will set the monday of this week as day. - * - * @param string|integer|array|Zend_Date $month Day to set - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function setDay($day, $locale = null) - { - return $this->_day('set', $day, $locale); - } - - - /** - * Adds days to the existing date object. - * The day can be a number or a string. Adding days lower then 0 or greater than the number of this months days - * will result in adding or subtracting the relevant month. - * If a localized dayname is given it will be parsed with the default locale or the optional - * set locale. - * - * @param string|integer|array|Zend_Date $month Day to add - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function addDay($day, $locale = null) - { - return $this->_day('add', $day, $locale); - } - - - /** - * Subtracts days from the existing date object. - * The day can be a number or a string. Subtracting days lower then 0 or greater than the number of this months days - * will result in adding or subtracting the relevant month. - * If a localized dayname is given it will be parsed with the default locale or the optional - * set locale. - * - * @param string|integer|array|Zend_Date $month Day to sub - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function subDay($day, $locale = null) - { - return $this->_day('sub', $day, $locale); - } - - - /** - * Compares the day with the existing date object, ignoring other date parts. - * For example: 'Monday', 'en' -> 08.Jan.2007 -> 0 - * Returns if equal, earlier or later - * - * @param string|integer|array|Zend_Date $day Day to compare - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return integer 0 = equal, 1 = later, -1 = earlier - * @throws Zend_Date_Exception - */ - public function compareDay($day, $locale = null) - { - return $this->_day('cmp', $day, $locale); - } - - - /** - * Returns the weekday as new date object - * Weekday is always from 1-7 - * Example: 09-Jan-2007 -> 2 = Tuesday -> 02-Jan-1970 (when 02.01.1970 is also Tuesday) - * - * @param Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date - */ - public function getWeekday($locale = null) - { - if (self::$_options['format_type'] == 'php') { - $format = 'l'; - } else { - $format = self::WEEKDAY; - } - - return $this->copyPart($format, $locale); - } - - - /** - * Returns the calculated weekday - * - * @param string $calc Type of calculation to make - * @param Zend_Date $weekday Weekday to calculate, when null the actual weekday is calculated - * @param Zend_Locale $locale Locale for parsing input - * @return Zend_Date|integer - * @throws Zend_Date_Exception - */ - private function _weekday($calc, $weekday, $locale) - { - if ($weekday === null) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('parameter $weekday must be set, null is not allowed'); - } - - if ($locale === null) { - $locale = $this->getLocale(); - } - - if ($weekday instanceof Zend_Date) { - $weekday = $weekday->toString(self::WEEKDAY_8601, 'iso', $locale); - } - - if (is_numeric($weekday)) { - $type = self::WEEKDAY_8601; - } else if (is_array($weekday)) { - if (isset($weekday['weekday']) === true) { - $weekday = $weekday['weekday']; - $type = self::WEEKDAY; - } else { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("no weekday given in array"); - } - } else { - switch(iconv_strlen($weekday, 'UTF-8')) { - case 1: - $type = self::WEEKDAY_NARROW; - break; - case 2: - $type = self::WEEKDAY_NAME; - break; - case 3: - $type = self::WEEKDAY_SHORT; - break; - default: - $type = self::WEEKDAY; - break; - } - } - $return = $this->_calcdetail($calc, $weekday, $type, $locale); - if ($calc != 'cmp') { - return $this; - } - return $return; - } - - - /** - * Sets a new weekday - * The weekday can be a number or a string. If a localized weekday name is given, - * then it will be parsed as a date in $locale (defaults to the same locale as $this). - * Returned is the new date object. - * Example: setWeekday(3); will set the wednesday of this week as day. - * - * @param string|integer|array|Zend_Date $month Weekday to set - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function setWeekday($weekday, $locale = null) - { - return $this->_weekday('set', $weekday, $locale); - } - - - /** - * Adds weekdays to the existing date object. - * The weekday can be a number or a string. - * If a localized dayname is given it will be parsed with the default locale or the optional - * set locale. - * Returned is the new date object - * Example: addWeekday(3); will add the difference of days from the begining of the month until - * wednesday. - * - * @param string|integer|array|Zend_Date $month Weekday to add - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function addWeekday($weekday, $locale = null) - { - return $this->_weekday('add', $weekday, $locale); - } - - - /** - * Subtracts weekdays from the existing date object. - * The weekday can be a number or a string. - * If a localized dayname is given it will be parsed with the default locale or the optional - * set locale. - * Returned is the new date object - * Example: subWeekday(3); will subtract the difference of days from the begining of the month until - * wednesday. - * - * @param string|integer|array|Zend_Date $month Weekday to sub - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function subWeekday($weekday, $locale = null) - { - return $this->_weekday('sub', $weekday, $locale); - } - - - /** - * Compares the weekday with the existing date object, ignoring other date parts. - * For example: 'Monday', 'en' -> 08.Jan.2007 -> 0 - * Returns if equal, earlier or later - * - * @param string|integer|array|Zend_Date $weekday Weekday to compare - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return integer 0 = equal, 1 = later, -1 = earlier - * @throws Zend_Date_Exception - */ - public function compareWeekday($weekday, $locale = null) - { - return $this->_weekday('cmp', $weekday, $locale); - } - - - /** - * Returns the day of year as new date object - * Example: 02.Feb.1986 10:00:00 -> 02.Feb.1970 00:00:00 - * - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date - */ - public function getDayOfYear($locale = null) - { - if (self::$_options['format_type'] == 'php') { - $format = 'D'; - } else { - $format = self::DAY_OF_YEAR; - } - - return $this->copyPart($format, $locale); - } - - - /** - * Sets a new day of year - * The day of year is always a number. - * Returned is the new date object - * Example: 04.May.2004 -> setDayOfYear(10) -> 10.Jan.2004 - * - * @param string|integer|array|Zend_Date $day Day of Year to set - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function setDayOfYear($day, $locale = null) - { - return $this->_calcvalue('set', $day, 'day of year', self::DAY_OF_YEAR, $locale); - } - - - /** - * Adds a day of year to the existing date object. - * The day of year is always a number. - * Returned is the new date object - * Example: addDayOfYear(10); will add 10 days to the existing date object. - * - * @param string|integer|array|Zend_Date $day Day of Year to add - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function addDayOfYear($day, $locale = null) - { - return $this->_calcvalue('add', $day, 'day of year', self::DAY_OF_YEAR, $locale); - } - - - /** - * Subtracts a day of year from the existing date object. - * The day of year is always a number. - * Returned is the new date object - * Example: subDayOfYear(10); will subtract 10 days from the existing date object. - * - * @param string|integer|array|Zend_Date $day Day of Year to sub - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function subDayOfYear($day, $locale = null) - { - return $this->_calcvalue('sub', $day, 'day of year', self::DAY_OF_YEAR, $locale); - } - - - /** - * Compares the day of year with the existing date object. - * For example: compareDayOfYear(33) -> 02.Feb.2007 -> 0 - * Returns if equal, earlier or later - * - * @param string|integer|array|Zend_Date $day Day of Year to compare - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return integer 0 = equal, 1 = later, -1 = earlier - * @throws Zend_Date_Exception - */ - public function compareDayOfYear($day, $locale = null) - { - return $this->_calcvalue('cmp', $day, 'day of year', self::DAY_OF_YEAR, $locale); - } - - - /** - * Returns the hour as new date object - * Example: 02.Feb.1986 10:30:25 -> 01.Jan.1970 10:00:00 - * - * @param Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date - */ - public function getHour($locale = null) - { - return $this->copyPart(self::HOUR, $locale); - } - - - /** - * Sets a new hour - * The hour is always a number. - * Returned is the new date object - * Example: 04.May.1993 13:07:25 -> setHour(7); -> 04.May.1993 07:07:25 - * - * @param string|integer|array|Zend_Date $hour Hour to set - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function setHour($hour, $locale = null) - { - return $this->_calcvalue('set', $hour, 'hour', self::HOUR_SHORT, $locale); - } - - - /** - * Adds hours to the existing date object. - * The hour is always a number. - * Returned is the new date object - * Example: 04.May.1993 13:07:25 -> addHour(12); -> 05.May.1993 01:07:25 - * - * @param string|integer|array|Zend_Date $hour Hour to add - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function addHour($hour, $locale = null) - { - return $this->_calcvalue('add', $hour, 'hour', self::HOUR_SHORT, $locale); - } - - - /** - * Subtracts hours from the existing date object. - * The hour is always a number. - * Returned is the new date object - * Example: 04.May.1993 13:07:25 -> subHour(6); -> 05.May.1993 07:07:25 - * - * @param string|integer|array|Zend_Date $hour Hour to sub - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function subHour($hour, $locale = null) - { - return $this->_calcvalue('sub', $hour, 'hour', self::HOUR_SHORT, $locale); - } - - - /** - * Compares the hour with the existing date object. - * For example: 10:30:25 -> compareHour(10) -> 0 - * Returns if equal, earlier or later - * - * @param string|integer|array|Zend_Date $hour Hour to compare - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return integer 0 = equal, 1 = later, -1 = earlier - * @throws Zend_Date_Exception - */ - public function compareHour($hour, $locale = null) - { - return $this->_calcvalue('cmp', $hour, 'hour', self::HOUR_SHORT, $locale); - } - - - /** - * Returns the minute as new date object - * Example: 02.Feb.1986 10:30:25 -> 01.Jan.1970 00:30:00 - * - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date - */ - public function getMinute($locale = null) - { - if (self::$_options['format_type'] == 'php') { - $format = 'i'; - } else { - $format = self::MINUTE; - } - - return $this->copyPart($format, $locale); - } - - - /** - * Sets a new minute - * The minute is always a number. - * Returned is the new date object - * Example: 04.May.1993 13:07:25 -> setMinute(29); -> 04.May.1993 13:29:25 - * - * @param string|integer|array|Zend_Date $minute Minute to set - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function setMinute($minute, $locale = null) - { - return $this->_calcvalue('set', $minute, 'minute', self::MINUTE_SHORT, $locale); - } - - - /** - * Adds minutes to the existing date object. - * The minute is always a number. - * Returned is the new date object - * Example: 04.May.1993 13:07:25 -> addMinute(65); -> 04.May.1993 13:12:25 - * - * @param string|integer|array|Zend_Date $minute Minute to add - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function addMinute($minute, $locale = null) - { - return $this->_calcvalue('add', $minute, 'minute', self::MINUTE_SHORT, $locale); - } - - - /** - * Subtracts minutes from the existing date object. - * The minute is always a number. - * Returned is the new date object - * Example: 04.May.1993 13:07:25 -> subMinute(9); -> 04.May.1993 12:58:25 - * - * @param string|integer|array|Zend_Date $minute Minute to sub - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function subMinute($minute, $locale = null) - { - return $this->_calcvalue('sub', $minute, 'minute', self::MINUTE_SHORT, $locale); - } - - - /** - * Compares the minute with the existing date object. - * For example: 10:30:25 -> compareMinute(30) -> 0 - * Returns if equal, earlier or later - * - * @param string|integer|array|Zend_Date $minute Hour to compare - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return integer 0 = equal, 1 = later, -1 = earlier - * @throws Zend_Date_Exception - */ - public function compareMinute($minute, $locale = null) - { - return $this->_calcvalue('cmp', $minute, 'minute', self::MINUTE_SHORT, $locale); - } - - - /** - * Returns the second as new date object - * Example: 02.Feb.1986 10:30:25 -> 01.Jan.1970 00:00:25 - * - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date - */ - public function getSecond($locale = null) - { - if (self::$_options['format_type'] == 'php') { - $format = 's'; - } else { - $format = self::SECOND; - } - - return $this->copyPart($format, $locale); - } - - - /** - * Sets new seconds to the existing date object. - * The second is always a number. - * Returned is the new date object - * Example: 04.May.1993 13:07:25 -> setSecond(100); -> 04.May.1993 13:08:40 - * - * @param string|integer|array|Zend_Date $second Second to set - * @param string|Zend_Locale $locale (Optional) Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function setSecond($second, $locale = null) - { - return $this->_calcvalue('set', $second, 'second', self::SECOND_SHORT, $locale); - } - - - /** - * Adds seconds to the existing date object. - * The second is always a number. - * Returned is the new date object - * Example: 04.May.1993 13:07:25 -> addSecond(65); -> 04.May.1993 13:08:30 - * - * @param string|integer|array|Zend_Date $second Second to add - * @param string|Zend_Locale $locale (Optional) Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function addSecond($second, $locale = null) - { - return $this->_calcvalue('add', $second, 'second', self::SECOND_SHORT, $locale); - } - - - /** - * Subtracts seconds from the existing date object. - * The second is always a number. - * Returned is the new date object - * Example: 04.May.1993 13:07:25 -> subSecond(10); -> 04.May.1993 13:07:15 - * - * @param string|integer|array|Zend_Date $second Second to sub - * @param string|Zend_Locale $locale (Optional) Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function subSecond($second, $locale = null) - { - return $this->_calcvalue('sub', $second, 'second', self::SECOND_SHORT, $locale); - } - - - /** - * Compares the second with the existing date object. - * For example: 10:30:25 -> compareSecond(25) -> 0 - * Returns if equal, earlier or later - * - * @param string|integer|array|Zend_Date $second Second to compare - * @param string|Zend_Locale $locale (Optional) Locale for parsing input - * @return integer 0 = equal, 1 = later, -1 = earlier - * @throws Zend_Date_Exception - */ - public function compareSecond($second, $locale = null) - { - return $this->_calcvalue('cmp', $second, 'second', self::SECOND_SHORT, $locale); - } - - - /** - * Returns the precision for fractional seconds - * - * @return integer - */ - public function getFractionalPrecision() - { - return $this->_precision; - } - - - /** - * Sets a new precision for fractional seconds - * - * @param integer $precision Precision for the fractional datepart 3 = milliseconds - * @throws Zend_Date_Exception - * @return Zend_Date Provides fluid interface - */ - public function setFractionalPrecision($precision) - { - if (!intval($precision) or ($precision < 0) or ($precision > 9)) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("precision ($precision) must be a positive integer less than 10", 0, null, $precision); - } - - $this->_precision = (int) $precision; - if ($this->_precision < strlen($this->_fractional)) { - $this->_fractional = substr($this->_fractional, 0, $this->_precision); - } else { - $this->_fractional = str_pad($this->_fractional, $this->_precision, '0', STR_PAD_RIGHT); - } - - return $this; - } - - - /** - * Returns the milliseconds of the date object - * - * @return string - */ - public function getMilliSecond() - { - return $this->_fractional; - } - - - /** - * Sets new milliseconds for the date object - * Example: setMilliSecond(550, 2) -> equals +5 Sec +50 MilliSec - * - * @param integer|Zend_Date $milli (Optional) Millisecond to set, when null the actual millisecond is set - * @param integer $precision (Optional) Fraction precision of the given milliseconds - * @return Zend_Date Provides fluid interface - */ - public function setMilliSecond($milli = null, $precision = null) - { - if ($milli === null) { - list($milli, $time) = explode(" ", microtime()); - $milli = intval($milli); - $precision = 6; - } else if (!is_numeric($milli)) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid milli second ($milli) operand", 0, null, $milli); - } - - if ($precision === null) { - $precision = $this->_precision; - } - - if (!is_int($precision) || $precision < 1 || $precision > 9) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("precision ($precision) must be a positive integer less than 10", 0, null, $precision); - } - - $this->_fractional = 0; - $this->addMilliSecond($milli, $precision); - return $this; - } - - - /** - * Adds milliseconds to the date object - * - * @param integer|Zend_Date $milli (Optional) Millisecond to add, when null the actual millisecond is added - * @param integer $precision (Optional) Fractional precision for the given milliseconds - * @return Zend_Date Provides fluid interface - */ - public function addMilliSecond($milli = null, $precision = null) - { - if ($milli === null) { - list($milli, $time) = explode(" ", microtime()); - $milli = intval($milli); - } else if (!is_numeric($milli)) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid milli second ($milli) operand", 0, null, $milli); - } - - if ($precision === null) { - $precision = strlen($milli); - if ($milli < 0) { - --$precision; - } - } - - if (!is_int($precision) || $precision < 1 || $precision > 9) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("precision ($precision) must be a positive integer less than 10", 0, null, $precision); - } - - $this->_fractional += $milli; - - // Add/sub milliseconds + add/sub seconds - $max = pow(10, $this->_precision); - // Milli includes seconds - if ($this->_fractional >= $max) { - while ($this->_fractional >= $max) { - $this->addSecond(1); - $this->_fractional -= $max; - } - } - - if ($this->_fractional < 0) { - while ($this->_fractional < 0) { - $this->subSecond(1); - $this->_fractional += $max; - } - } - - if ($this->_precision > strlen($this->_fractional)) { - $this->_fractional = str_pad($this->_fractional, $this->_precision, '0', STR_PAD_LEFT); - } - - return $this; - } - - - /** - * Subtracts a millisecond - * - * @param integer|Zend_Date $milli (Optional) Millisecond to sub, when null the actual millisecond is subtracted - * @param integer $precision (Optional) Fractional precision for the given milliseconds - * @return Zend_Date Provides fluid interface - */ - public function subMilliSecond($milli = null, $precision = null) - { - $this->addMilliSecond(0 - $milli, $precision); - return $this; - } - - /** - * Compares only the millisecond part, returning the difference - * - * @param integer|Zend_Date $milli OPTIONAL Millisecond to compare, when null the actual millisecond is compared - * @param integer $precision OPTIONAL Fractional precision for the given milliseconds - * @throws Zend_Date_Exception On invalid input - * @return integer 0 = equal, 1 = later, -1 = earlier - */ - public function compareMilliSecond($milli = null, $precision = null) - { - if ($milli === null) { - list($milli, $time) = explode(" ", microtime()); - $milli = intval($milli); - } else if (is_numeric($milli) === false) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("invalid milli second ($milli) operand", 0, null, $milli); - } - - if ($precision === null) { - $precision = strlen($milli); - } else if (!is_int($precision) || $precision < 1 || $precision > 9) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("precision ($precision) must be a positive integer less than 10", 0, null, $precision); - } - - if ($precision === 0) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('precision is 0'); - } - - if ($precision != $this->_precision) { - if ($precision > $this->_precision) { - $diff = $precision - $this->_precision; - $milli = (int) ($milli / (10 * $diff)); - } else { - $diff = $this->_precision - $precision; - $milli = (int) ($milli * (10 * $diff)); - } - } - - $comp = $this->_fractional - $milli; - if ($comp < 0) { - return -1; - } else if ($comp > 0) { - return 1; - } - return 0; - } - - /** - * Returns the week as new date object using monday as begining of the week - * Example: 12.Jan.2007 -> 08.Jan.1970 00:00:00 - * - * @param Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date - */ - public function getWeek($locale = null) - { - if (self::$_options['format_type'] == 'php') { - $format = 'W'; - } else { - $format = self::WEEK; - } - - return $this->copyPart($format, $locale); - } - - /** - * Sets a new week. The week is always a number. The day of week is not changed. - * Returned is the new date object - * Example: 09.Jan.2007 13:07:25 -> setWeek(1); -> 02.Jan.2007 13:07:25 - * - * @param string|integer|array|Zend_Date $week Week to set - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function setWeek($week, $locale = null) - { - return $this->_calcvalue('set', $week, 'week', self::WEEK, $locale); - } - - /** - * Adds a week. The week is always a number. The day of week is not changed. - * Returned is the new date object - * Example: 09.Jan.2007 13:07:25 -> addWeek(1); -> 16.Jan.2007 13:07:25 - * - * @param string|integer|array|Zend_Date $week Week to add - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function addWeek($week, $locale = null) - { - return $this->_calcvalue('add', $week, 'week', self::WEEK, $locale); - } - - /** - * Subtracts a week. The week is always a number. The day of week is not changed. - * Returned is the new date object - * Example: 09.Jan.2007 13:07:25 -> subWeek(1); -> 02.Jan.2007 13:07:25 - * - * @param string|integer|array|Zend_Date $week Week to sub - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return Zend_Date Provides fluid interface - * @throws Zend_Date_Exception - */ - public function subWeek($week, $locale = null) - { - return $this->_calcvalue('sub', $week, 'week', self::WEEK, $locale); - } - - /** - * Compares only the week part, returning the difference - * Returned is the new date object - * Returns if equal, earlier or later - * Example: 09.Jan.2007 13:07:25 -> compareWeek(2); -> 0 - * - * @param string|integer|array|Zend_Date $week Week to compare - * @param string|Zend_Locale $locale OPTIONAL Locale for parsing input - * @return integer 0 = equal, 1 = later, -1 = earlier - */ - public function compareWeek($week, $locale = null) - { - return $this->_calcvalue('cmp', $week, 'week', self::WEEK, $locale); - } - - /** - * Sets a new standard locale for the date object. - * This locale will be used for all functions - * Returned is the really set locale. - * Example: 'de_XX' will be set to 'de' because 'de_XX' does not exist - * 'xx_YY' will be set to 'root' because 'xx' does not exist - * - * @param string|Zend_Locale $locale (Optional) Locale for parsing input - * @throws Zend_Date_Exception When the given locale does not exist - * @return Zend_Date Provides fluent interface - */ - public function setLocale($locale = null) - { - try { - $this->_locale = Zend_Locale::findLocale($locale); - } catch (Zend_Locale_Exception $e) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception($e->getMessage(), 0, $e); - } - - return $this; - } - - /** - * Returns the actual set locale - * - * @return string - */ - public function getLocale() - { - return $this->_locale; - } - - /** - * Checks if the given date is a real date or datepart. - * Returns false if a expected datepart is missing or a datepart exceeds its possible border. - * But the check will only be done for the expected dateparts which are given by format. - * If no format is given the standard dateformat for the actual locale is used. - * f.e. 30.February.2007 will return false if format is 'dd.MMMM.YYYY' - * - * @param string|array|Zend_Date $date Date to parse for correctness - * @param string $format (Optional) Format for parsing the date string - * @param string|Zend_Locale $locale (Optional) Locale for parsing date parts - * @return boolean True when all date parts are correct - */ - public static function isDate($date, $format = null, $locale = null) - { - if (!is_string($date) && !is_numeric($date) && !($date instanceof Zend_Date) && - !is_array($date)) { - return false; - } - - if (($format !== null) && ($format != 'ee') && ($format != 'ss') && ($format != 'GG') && ($format != 'MM') && ($format != 'EE') && ($format != 'TT') - && (Zend_Locale::isLocale($format, null, false))) { - $locale = $format; - $format = null; - } - - $locale = Zend_Locale::findLocale($locale); - - if ($format === null) { - $format = Zend_Locale_Format::getDateFormat($locale); - } else if ((self::$_options['format_type'] == 'php') && !defined($format)) { - $format = Zend_Locale_Format::convertPhpToIsoFormat($format); - } - - $format = self::_getLocalizedToken($format, $locale); - if (!is_array($date)) { - try { - $parsed = Zend_Locale_Format::getDate($date, array('locale' => $locale, - 'date_format' => $format, 'format_type' => 'iso', - 'fix_date' => false)); - } catch (Zend_Locale_Exception $e) { - // Date can not be parsed - return false; - } - } else { - $parsed = $date; - } - - if (((strpos($format, 'Y') !== false) or (strpos($format, 'y') !== false)) and - (!isset($parsed['year']))) { - // Year expected but not found - return false; - } - - if ((strpos($format, 'M') !== false) and (!isset($parsed['month']))) { - // Month expected but not found - return false; - } - - if ((strpos($format, 'd') !== false) and (!isset($parsed['day']))) { - // Day expected but not found - return false; - } - - if (((strpos($format, 'H') !== false) or (strpos($format, 'h') !== false)) and - (!isset($parsed['hour']))) { - // Hour expected but not found - return false; - } - - if ((strpos($format, 'm') !== false) and (!isset($parsed['minute']))) { - // Minute expected but not found - return false; - } - - if ((strpos($format, 's') !== false) and (!isset($parsed['second']))) { - // Second expected but not found - return false; - } - - // Set not given dateparts - if (isset($parsed['hour']) === false) { - $parsed['hour'] = 12; - } - - if (isset($parsed['minute']) === false) { - $parsed['minute'] = 0; - } - - if (isset($parsed['second']) === false) { - $parsed['second'] = 0; - } - - if (isset($parsed['month']) === false) { - $parsed['month'] = 1; - } - - if (isset($parsed['day']) === false) { - $parsed['day'] = 1; - } - - if (isset($parsed['year']) === false) { - $parsed['year'] = 1970; - } - - if (self::isYearLeapYear($parsed['year'])) { - $parsed['year'] = 1972; - } else { - $parsed['year'] = 1971; - } - - $date = new self($parsed, null, $locale); - $timestamp = $date->mktime($parsed['hour'], $parsed['minute'], $parsed['second'], - $parsed['month'], $parsed['day'], $parsed['year']); - - if ($parsed['year'] != $date->date('Y', $timestamp)) { - // Given year differs from parsed year - return false; - } - - if ($parsed['month'] != $date->date('n', $timestamp)) { - // Given month differs from parsed month - return false; - } - - if ($parsed['day'] != $date->date('j', $timestamp)) { - // Given day differs from parsed day - return false; - } - - if ($parsed['hour'] != $date->date('G', $timestamp)) { - // Given hour differs from parsed hour - return false; - } - - if ($parsed['minute'] != $date->date('i', $timestamp)) { - // Given minute differs from parsed minute - return false; - } - - if ($parsed['second'] != $date->date('s', $timestamp)) { - // Given second differs from parsed second - return false; - } - - return true; - } - - /** - * Returns the ISO Token for all localized constants - * - * @param string $token Token to normalize - * @param string $locale Locale to search - * @return string - */ - protected static function _getLocalizedToken($token, $locale) - { - switch($token) { - case self::ISO_8601 : - return "yyyy-MM-ddThh:mm:ss"; - break; - case self::RFC_2822 : - return "EEE, dd MMM yyyy HH:mm:ss"; - break; - case self::DATES : - return Zend_Locale_Data::getContent($locale, 'date'); - break; - case self::DATE_FULL : - return Zend_Locale_Data::getContent($locale, 'date', array('gregorian', 'full')); - break; - case self::DATE_LONG : - return Zend_Locale_Data::getContent($locale, 'date', array('gregorian', 'long')); - break; - case self::DATE_MEDIUM : - return Zend_Locale_Data::getContent($locale, 'date', array('gregorian', 'medium')); - break; - case self::DATE_SHORT : - return Zend_Locale_Data::getContent($locale, 'date', array('gregorian', 'short')); - break; - case self::TIMES : - return Zend_Locale_Data::getContent($locale, 'time'); - break; - case self::TIME_FULL : - return Zend_Locale_Data::getContent($locale, 'time', array('gregorian', 'full')); - break; - case self::TIME_LONG : - return Zend_Locale_Data::getContent($locale, 'time', array('gregorian', 'long')); - break; - case self::TIME_MEDIUM : - return Zend_Locale_Data::getContent($locale, 'time', array('gregorian', 'medium')); - break; - case self::TIME_SHORT : - return Zend_Locale_Data::getContent($locale, 'time', array('gregorian', 'short')); - break; - case self::DATETIME : - return Zend_Locale_Data::getContent($locale, 'datetime'); - break; - case self::DATETIME_FULL : - return Zend_Locale_Data::getContent($locale, 'datetime', array('gregorian', 'full')); - break; - case self::DATETIME_LONG : - return Zend_Locale_Data::getContent($locale, 'datetime', array('gregorian', 'long')); - break; - case self::DATETIME_MEDIUM : - return Zend_Locale_Data::getContent($locale, 'datetime', array('gregorian', 'medium')); - break; - case self::DATETIME_SHORT : - return Zend_Locale_Data::getContent($locale, 'datetime', array('gregorian', 'short')); - break; - case self::ATOM : - case self::RFC_3339 : - case self::W3C : - return "yyyy-MM-DD HH:mm:ss"; - break; - case self::COOKIE : - case self::RFC_850 : - return "EEEE, dd-MM-yyyy HH:mm:ss"; - break; - case self::RFC_822 : - case self::RFC_1036 : - case self::RFC_1123 : - case self::RSS : - return "EEE, dd MM yyyy HH:mm:ss"; - break; - } - - return $token; - } -} diff --git a/library/Zend/Date/Cities.php b/library/Zend/Date/Cities.php deleted file mode 100644 index 8f9145ac..00000000 --- a/library/Zend/Date/Cities.php +++ /dev/null @@ -1,322 +0,0 @@ - array('latitude' => 5.3411111, 'longitude' => -4.0280556), - 'Abu Dhabi' => array('latitude' => 24.4666667, 'longitude' => 54.3666667), - 'Abuja' => array('latitude' => 9.1758333, 'longitude' => 7.1808333), - 'Accra' => array('latitude' => 5.55, 'longitude' => -0.2166667), - 'Adamstown' => array('latitude' => -25.0666667, 'longitude' => -130.0833333), - 'Addis Ababa' => array('latitude' => 9.0333333, 'longitude' => 38.7), - 'Adelaide' => array('latitude' => -34.9333333, 'longitude' => 138.6), - 'Algiers' => array('latitude' => 36.7630556, 'longitude' => 3.0505556), - 'Alofi' => array('latitude' => -19.0166667, 'longitude' => -169.9166667), - 'Amman' => array('latitude' => 31.95, 'longitude' => 35.9333333), - 'Amsterdam' => array('latitude' => 52.35, 'longitude' => 4.9166667), - 'Andorra la Vella' => array('latitude' => 42.5, 'longitude' => 1.5166667), - 'Ankara' => array('latitude' => 39.9272222, 'longitude' => 32.8644444), - 'Antananarivo' => array('latitude' => -18.9166667, 'longitude' => 47.5166667), - 'Apia' => array('latitude' => -13.8333333, 'longitude' => -171.7333333), - 'Ashgabat' => array('latitude' => 37.95, 'longitude' => 58.3833333), - 'Asmara' => array('latitude' => 15.3333333, 'longitude' => 38.9333333), - 'Astana' => array('latitude' => 51.1811111, 'longitude' => 71.4277778), - 'Asunción' => array('latitude' => -25.2666667, 'longitude' => -57.6666667), - 'Athens' => array('latitude' => 37.9833333, 'longitude' => 23.7333333), - 'Auckland' => array('latitude' => -36.8666667, 'longitude' => 174.7666667), - 'Avarua' => array('latitude' => -21.2, 'longitude' => -159.7666667), - 'Baghdad' => array('latitude' => 33.3386111, 'longitude' => 44.3938889), - 'Baku' => array('latitude' => 40.3952778, 'longitude' => 49.8822222), - 'Bamako' => array('latitude' => 12.65, 'longitude' => -8), - 'Bandar Seri Begawan' => array('latitude' => 4.8833333, 'longitude' => 114.9333333), - 'Bankok' => array('latitude' => 13.5833333, 'longitude' => 100.2166667), - 'Bangui' => array('latitude' => 4.3666667, 'longitude' => 18.5833333), - 'Banjul' => array('latitude' => 13.4530556, 'longitude' => -16.5775), - 'Basel' => array('latitude' => 47.5666667, 'longitude' => 7.6), - 'Basseterre' => array('latitude' => 17.3, 'longitude' => -62.7166667), - 'Beijing' => array('latitude' => 39.9288889, 'longitude' => 116.3883333), - 'Beirut' => array('latitude' => 33.8719444, 'longitude' => 35.5097222), - 'Belgrade' => array('latitude' => 44.8186111, 'longitude' => 20.4680556), - 'Belmopan' => array('latitude' => 17.25, 'longitude' => -88.7666667), - 'Berlin' => array('latitude' => 52.5166667, 'longitude' => 13.4), - 'Bern' => array('latitude' => 46.9166667, 'longitude' => 7.4666667), - 'Bishkek' => array('latitude' => 42.8730556, 'longitude' => 74.6002778), - 'Bissau' => array('latitude' => 11.85, 'longitude' => -15.5833333), - 'Bloemfontein' => array('latitude' => -29.1333333, 'longitude' => 26.2), - 'Bogotá' => array('latitude' => 4.6, 'longitude' => -74.0833333), - 'Brasilia' => array('latitude' => -15.7833333, 'longitude' => -47.9166667), - 'Bratislava' => array('latitude' => 48.15, 'longitude' => 17.1166667), - 'Brazzaville' => array('latitude' => -4.2591667, 'longitude' => 15.2847222), - 'Bridgetown' => array('latitude' => 13.1, 'longitude' => -59.6166667), - 'Brisbane' => array('latitude' => -27.5, 'longitude' => 153.0166667), - 'Brussels' => array('latitude' => 50.8333333, 'longitude' => 4.3333333), - 'Bucharest' => array('latitude' => 44.4333333, 'longitude' => 26.1), - 'Budapest' => array('latitude' => 47.5, 'longitude' => 19.0833333), - 'Buenos Aires' => array('latitude' => -34.5875, 'longitude' => -58.6725), - 'Bujumbura' => array('latitude' => -3.3761111, 'longitude' => 29.36), - 'Cairo' => array('latitude' => 30.05, 'longitude' => 31.25), - 'Calgary' => array('latitude' => 51.0833333, 'longitude' => -114.0833333), - 'Canberra' => array('latitude' => -35.2833333, 'longitude' => 149.2166667), - 'Cape Town' => array('latitude' => -33.9166667, 'longitude' => 18.4166667), - 'Caracas' => array('latitude' => 10.5, 'longitude' => -66.9166667), - 'Castries' => array('latitude' => 14, 'longitude' => -61), - 'Charlotte Amalie' => array('latitude' => 18.34389, 'longitude' => -64.93111), - 'Chicago' => array('latitude' => 41.85, 'longitude' => -87.65), - 'Chisinau' => array('latitude' => 47.055556, 'longitude' => 28.8575), - 'Cockburn Town' => array('latitude' => 21.4666667, 'longitude' => -71.1333333), - 'Colombo' => array('latitude' => 6.9319444, 'longitude' => 79.8477778), - 'Conakry' => array('latitude' => 9.5091667, 'longitude' => -13.7122222), - 'Copenhagen' => array('latitude' => 55.6666667, 'longitude' => 12.5833333), - 'Cotonou' => array('latitude' => 6.35, 'longitude' => 2.4333333), - 'Dakar' => array('latitude' => 14.6708333, 'longitude' => -17.4380556), - 'Damascus' => array('latitude' => 33.5, 'longitude' => 36.3), - 'Dar es Salaam' => array('latitude' => -6.8, 'longitude' => 39.2833333), - 'Dhaka' => array('latitude' => 23.7230556, 'longitude' => 90.4086111), - 'Dili' => array('latitude' => -8.5586111, 'longitude' => 125.5736111), - 'Djibouti' => array('latitude' => 11.595, 'longitude' => 43.1480556), - 'Dodoma' => array('latitude' => -6.1833333, 'longitude' => 35.75), - 'Doha' => array('latitude' => 25.2866667, 'longitude' => 51.5333333), - 'Dubai' => array('latitude' => 25.2522222, 'longitude' => 55.28), - 'Dublin' => array('latitude' => 53.3330556, 'longitude' => -6.2488889), - 'Dushanbe' => array('latitude' => 38.56, 'longitude' => 68.7738889 ), - 'Fagatogo' => array('latitude' => -14.2825, 'longitude' => -170.69), - 'Fongafale' => array('latitude' => -8.5166667, 'longitude' => 179.2166667), - 'Freetown' => array('latitude' => 8.49, 'longitude' => -13.2341667), - 'Gaborone' => array('latitude' => -24.6463889, 'longitude' => 25.9119444), - 'Geneva' => array('latitude' => 46.2, 'longitude' => 6.1666667), - 'George Town' => array('latitude' => 19.3, 'longitude' => -81.3833333), - 'Georgetown' => array('latitude' => 6.8, 'longitude' => -58.1666667), - 'Gibraltar' => array('latitude' => 36.1333333, 'longitude' => -5.35), - 'Glasgow' => array('latitude' => 55.8333333, 'longitude' => -4.25), - 'Guatemala la Nueva' => array('latitude' => 14.6211111, 'longitude' => -90.5269444), - 'Hagatna' => array('latitude' => 13.47417, 'longitude' => 144.74778), - 'The Hague' => array('latitude' => 52.0833333, 'longitude' => 4.3), - 'Hamilton' => array('latitude' => 32.2941667, 'longitude' => -64.7838889), - 'Hanoi' => array('latitude' => 21.0333333, 'longitude' => 105.85), - 'Harare' => array('latitude' => -17.8177778, 'longitude' => 31.0447222), - 'Havana' => array('latitude' => 23.1319444, 'longitude' => -82.3641667), - 'Helsinki' => array('latitude' => 60.1755556, 'longitude' => 24.9341667), - 'Honiara' => array('latitude' => -9.4333333, 'longitude' => 159.95), - 'Islamabad' => array('latitude' => 30.8486111, 'longitude' => 72.4944444), - 'Istanbul' => array('latitude' => 41.0186111, 'longitude' => 28.9647222), - 'Jakarta' => array('latitude' => -6.1744444, 'longitude' => 106.8294444), - 'Jamestown' => array('latitude' => -15.9333333, 'longitude' => -5.7166667), - 'Jerusalem' => array('latitude' => 31.7666667, 'longitude' => 35.2333333), - 'Johannesburg' => array('latitude' => -26.2, 'longitude' => 28.0833333), - 'Kabul' => array('latitude' => 34.5166667, 'longitude' => 69.1833333), - 'Kampala' => array('latitude' => 0.3155556, 'longitude' => 32.5655556), - 'Kathmandu' => array('latitude' => 27.7166667, 'longitude' => 85.3166667), - 'Khartoum' => array('latitude' => 15.5880556, 'longitude' => 32.5341667), - 'Kigali' => array('latitude' => -1.9536111, 'longitude' => 30.0605556), - 'Kingston' => array('latitude' => -29.05, 'longitude' => 167.95), - 'Kingstown' => array('latitude' => 13.1333333, 'longitude' => -61.2166667), - 'Kinshasa' => array('latitude' => -4.3, 'longitude' => 15.3), - 'Kolkata' => array('latitude' => 22.5697222, 'longitude' => 88.3697222), - 'Kuala Lumpur' => array('latitude' => 3.1666667, 'longitude' => 101.7), - 'Kuwait City' => array('latitude' => 29.3697222, 'longitude' => 47.9783333), - 'Kiev' => array('latitude' => 50.4333333, 'longitude' => 30.5166667), - 'La Paz' => array('latitude' => -16.5, 'longitude' => -68.15), - 'Libreville' => array('latitude' => 0.3833333, 'longitude' => 9.45), - 'Lilongwe' => array('latitude' => -13.9833333, 'longitude' => 33.7833333), - 'Lima' => array('latitude' => -12.05, 'longitude' => -77.05), - 'Lisbon' => array('latitude' => 38.7166667, 'longitude' => -9.1333333), - 'Ljubljana' => array('latitude' => 46.0552778, 'longitude' => 14.5144444), - 'Lobamba' => array('latitude' => -26.4666667, 'longitude' => 31.2), - 'Lomé' => array('latitude' => 9.7166667, 'longitude' => 38.3), - 'London' => array('latitude' => 51.5, 'longitude' => -0.1166667), - 'Los Angeles' => array('latitude' => 34.05222, 'longitude' => -118.24278), - 'Luanda' => array('latitude' => -8.8383333, 'longitude' => 13.2344444), - 'Lusaka' => array('latitude' => -15.4166667, 'longitude' => 28.2833333), - 'Luxembourg' => array('latitude' => 49.6116667, 'longitude' => 6.13), - 'Madrid' => array('latitude' => 40.4, 'longitude' => -3.6833333), - 'Majuro' => array('latitude' => 7.1, 'longitude' => 171.3833333), - 'Malabo' => array('latitude' => 3.75, 'longitude' => 8.7833333), - 'Managua' => array('latitude' => 12.1508333, 'longitude' => -86.2683333), - 'Manama' => array('latitude' => 26.2361111, 'longitude' => 50.5830556), - 'Manila' => array('latitude' => 14.6041667, 'longitude' => 120.9822222), - 'Maputo' => array('latitude' => -25.9652778, 'longitude' => 32.5891667), - 'Maseru' => array('latitude' => -29.3166667, 'longitude' => 27.4833333), - 'Mbabane' => array('latitude' => -26.3166667, 'longitude' => 31.1333333), - 'Melbourne' => array('latitude' => -37.8166667, 'longitude' => 144.9666667), - 'Melekeok' => array('latitude' => 7.4933333, 'longitude' => 134.6341667), - 'Mexiko City' => array('latitude' => 19.4341667, 'longitude' => -99.1386111), - 'Minsk' => array('latitude' => 53.9, 'longitude' => 27.5666667), - 'Mogadishu' => array('latitude' => 2.0666667, 'longitude' => 45.3666667), - 'Monaco' => array('latitude' => 43.7333333, 'longitude' => 7.4166667), - 'Monrovia' => array('latitude' => 6.3105556, 'longitude' => -10.8047222), - 'Montevideo' => array('latitude' => -34.8580556, 'longitude' => -56.1708333), - 'Montreal' => array('latitude' => 45.5, 'longitude' => -73.5833333), - 'Moroni' => array('latitude' => -11.7041667, 'longitude' => 43.2402778), - 'Moscow' => array('latitude' => 55.7522222, 'longitude' => 37.6155556), - 'Muscat' => array('latitude' => 23.6133333, 'longitude' => 58.5933333), - 'Nairobi' => array('latitude' => -1.3166667, 'longitude' => 36.8333333), - 'Nassau' => array('latitude' => 25.0833333, 'longitude' => -77.35), - 'N´Djamena' => array('latitude' => 12.1130556, 'longitude' => 15.0491667), - 'New Dehli' => array('latitude' => 28.6, 'longitude' => 77.2), - 'New York' => array('latitude' => 40.71417, 'longitude' => -74.00639), - 'Newcastle' => array('latitude' => -32.9166667, 'longitude' => 151.75), - 'Niamey' => array('latitude' => 13.6666667, 'longitude' => 1.7833333), - 'Nicosia' => array('latitude' => 35.1666667, 'longitude' => 33.3666667), - 'Nouakchott' => array('latitude' => 18.0863889, 'longitude' => -15.9752778), - 'Noumea' => array('latitude' => -22.2666667, 'longitude' => 166.45), - 'Nuku´alofa' => array('latitude' => -21.1333333, 'longitude' => -175.2), - 'Nuuk' => array('latitude' => 64.1833333, 'longitude' => -51.75), - 'Oranjestad' => array('latitude' => 12.5166667, 'longitude' => -70.0333333), - 'Oslo' => array('latitude' => 59.9166667, 'longitude' => 10.75), - 'Ouagadougou' => array('latitude' => 12.3702778, 'longitude' => -1.5247222), - 'Palikir' => array('latitude' => 6.9166667, 'longitude' => 158.15), - 'Panama City' => array('latitude' => 8.9666667, 'longitude' => -79.5333333), - 'Papeete' => array('latitude' => -17.5333333, 'longitude' => -149.5666667), - 'Paramaribo' => array('latitude' => 5.8333333, 'longitude' => -55.1666667), - 'Paris' => array('latitude' => 48.8666667, 'longitude' => 2.3333333), - 'Perth' => array('latitude' => -31.9333333, 'longitude' => 115.8333333), - 'Phnom Penh' => array('latitude' => 11.55, 'longitude' => 104.9166667), - 'Podgorica' => array('latitude' => 43.7752778, 'longitude' => 19.6827778), - 'Port Louis' => array('latitude' => -20.1666667, 'longitude' => 57.5), - 'Port Moresby' => array('latitude' => -9.4647222, 'longitude' => 147.1925), - 'Port-au-Prince' => array('latitude' => 18.5391667, 'longitude' => -72.335), - 'Port of Spain' => array('latitude' => 10.6666667, 'longitude' => -61.5), - 'Porto-Novo' => array('latitude' => 6.4833333, 'longitude' => 2.6166667), - 'Prague' => array('latitude' => 50.0833333, 'longitude' => 14.4666667), - 'Praia' => array('latitude' => 14.9166667, 'longitude' => -23.5166667), - 'Pretoria' => array('latitude' => -25.7069444, 'longitude' => 28.2294444), - 'Pyongyang' => array('latitude' => 39.0194444, 'longitude' => 125.7547222), - 'Quito' => array('latitude' => -0.2166667, 'longitude' => -78.5), - 'Rabat' => array('latitude' => 34.0252778, 'longitude' => -6.8361111), - 'Reykjavik' => array('latitude' => 64.15, 'longitude' => -21.95), - 'Riga' => array('latitude' => 56.95, 'longitude' => 24.1), - 'Rio de Janero' => array('latitude' => -22.9, 'longitude' => -43.2333333), - 'Road Town' => array('latitude' => 18.4166667, 'longitude' => -64.6166667), - 'Rome' => array('latitude' => 41.9, 'longitude' => 12.4833333), - 'Roseau' => array('latitude' => 15.3, 'longitude' => -61.4), - 'Rotterdam' => array('latitude' => 51.9166667, 'longitude' => 4.5), - 'Salvador' => array('latitude' => -12.9833333, 'longitude' => -38.5166667), - 'San José' => array('latitude' => 9.9333333, 'longitude' => -84.0833333), - 'San Juan' => array('latitude' => 18.46833, 'longitude' => -66.10611), - 'San Marino' => array('latitude' => 43.5333333, 'longitude' => 12.9666667), - 'San Salvador' => array('latitude' => 13.7086111, 'longitude' => -89.2030556), - 'Sanaá' => array('latitude' => 15.3547222, 'longitude' => 44.2066667), - 'Santa Cruz' => array('latitude' => -17.8, 'longitude' => -63.1666667), - 'Santiago' => array('latitude' => -33.45, 'longitude' => -70.6666667), - 'Santo Domingo' => array('latitude' => 18.4666667, 'longitude' => -69.9), - 'Sao Paulo' => array('latitude' => -23.5333333, 'longitude' => -46.6166667), - 'Sarajevo' => array('latitude' => 43.85, 'longitude' => 18.3833333), - 'Seoul' => array('latitude' => 37.5663889, 'longitude' => 126.9997222), - 'Shanghai' => array('latitude' => 31.2222222, 'longitude' => 121.4580556), - 'Sydney' => array('latitude' => -33.8833333, 'longitude' => 151.2166667), - 'Singapore' => array('latitude' => 1.2930556, 'longitude' => 103.8558333), - 'Skopje' => array('latitude' => 42, 'longitude' => 21.4333333), - 'Sofia' => array('latitude' => 42.6833333, 'longitude' => 23.3166667), - 'St. George´s' => array('latitude' => 12.05, 'longitude' => -61.75), - 'St. John´s' => array('latitude' => 17.1166667, 'longitude' => -61.85), - 'Stanley' => array('latitude' => -51.7, 'longitude' => -57.85), - 'Stockholm' => array('latitude' => 59.3333333, 'longitude' => 18.05), - 'Suva' => array('latitude' => -18.1333333, 'longitude' => 178.4166667), - 'Taipei' => array('latitude' => 25.0166667, 'longitude' => 121.45), - 'Tallinn' => array('latitude' => 59.4338889, 'longitude' => 24.7280556), - 'Tashkent' => array('latitude' => 41.3166667, 'longitude' => 69.25), - 'Tbilisi' => array('latitude' => 41.725, 'longitude' => 44.7908333), - 'Tegucigalpa' => array('latitude' => 14.1, 'longitude' => -87.2166667), - 'Tehran' => array('latitude' => 35.6719444, 'longitude' => 51.4244444), - 'The Hague' => array('latitude' => 52.0833333, 'longitude' => 4.3), - 'Thimphu' => array('latitude' => 27.4833333, 'longitude' => 89.6), - 'Tirana' => array('latitude' => 41.3275, 'longitude' => 19.8188889), - 'Tiraspol' => array('latitude' => 46.8402778, 'longitude' => 29.6433333), - 'Tokyo' => array('latitude' => 35.685, 'longitude' => 139.7513889), - 'Toronto' => array('latitude' => 43.6666667, 'longitude' => -79.4166667), - 'Tórshavn' => array('latitude' => 62.0166667, 'longitude' => -6.7666667), - 'Tripoli' => array('latitude' => 32.8925, 'longitude' => 13.18), - 'Tunis' => array('latitude' => 36.8027778, 'longitude' => 10.1797222), - 'Ulaanbaatar' => array('latitude' => 47.9166667, 'longitude' => 106.9166667), - 'Vaduz' => array('latitude' => 47.1333333, 'longitude' => 9.5166667), - 'Valletta' => array('latitude' => 35.8997222, 'longitude' => 14.5147222), - 'Valparaiso' => array('latitude' => -33.0477778, 'longitude' => -71.6011111), - 'Vancouver' => array('latitude' => 49.25, 'longitude' => -123.1333333), - 'Vatican City' => array('latitude' => 41.9, 'longitude' => 12.4833333), - 'Victoria' => array('latitude' => -4.6166667, 'longitude' => 55.45), - 'Vienna' => array('latitude' => 48.2, 'longitude' => 16.3666667), - 'Vientaine' => array('latitude' => 17.9666667, 'longitude' => 102.6), - 'Vilnius' => array('latitude' => 54.6833333, 'longitude' => 25.3166667), - 'Warsaw' => array('latitude' => 52.25, 'longitude' => 21), - 'Washington dc' => array('latitude' => 38.895, 'longitude' => -77.03667), - 'Wellington' => array('latitude' => -41.3, 'longitude' => 174.7833333), - 'Willemstad' => array('latitude' => 12.1, 'longitude' => -68.9166667), - 'Windhoek' => array('latitude' => -22.57, 'longitude' => 17.0836111), - 'Yamoussoukro' => array('latitude' => 6.8166667, 'longitude' => -5.2833333), - 'Yaoundé' => array('latitude' => 3.8666667, 'longitude' => 11.5166667), - 'Yerevan' => array('latitude' => 40.1811111, 'longitude' => 44.5136111), - 'Zürich' => array('latitude' => 47.3666667, 'longitude' => 8.55), - 'Zagreb' => array('latitude' => 45.8, 'longitude' => 16) - ); - - /** - * Returns the location from the selected city - * - * @param string $city City to get location for - * @param string $horizon Horizon to use : - * default: effective - * others are civil, nautic, astronomic - * @return array - * @throws Zend_Date_Exception When city is unknown - */ - public static function City($city, $horizon = false) - { - foreach (self::$cities as $key => $value) { - if (strtolower($key) === strtolower($city)) { - $return = $value; - $return['horizon'] = $horizon; - return $return; - } - } - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('unknown city'); - } - - /** - * Return a list with all known cities - * - * @return array - */ - public static function getCityList() - { - return array_keys(self::$cities); - } -} diff --git a/library/Zend/Date/DateObject.php b/library/Zend/Date/DateObject.php deleted file mode 100644 index c966cd12..00000000 --- a/library/Zend/Date/DateObject.php +++ /dev/null @@ -1,1096 +0,0 @@ - 0, 1960 => -315619200, 1950 => -631152000, - 1940 => -946771200, 1930 => -1262304000, 1920 => -1577923200, - 1910 => -1893456000, 1900 => -2208988800, 1890 => -2524521600, - 1880 => -2840140800, 1870 => -3155673600, 1860 => -3471292800, - 1850 => -3786825600, 1840 => -4102444800, 1830 => -4417977600, - 1820 => -4733596800, 1810 => -5049129600, 1800 => -5364662400, - 1790 => -5680195200, 1780 => -5995814400, 1770 => -6311347200, - 1760 => -6626966400, 1750 => -6942499200, 1740 => -7258118400, - 1730 => -7573651200, 1720 => -7889270400, 1710 => -8204803200, - 1700 => -8520336000, 1690 => -8835868800, 1680 => -9151488000, - 1670 => -9467020800, 1660 => -9782640000, 1650 => -10098172800, - 1640 => -10413792000, 1630 => -10729324800, 1620 => -11044944000, - 1610 => -11360476800, 1600 => -11676096000); - - /** - * Set this object to have a new UNIX timestamp. - * - * @param string|integer $timestamp OPTIONAL timestamp; defaults to local time using time() - * @return string|integer old timestamp - * @throws Zend_Date_Exception - */ - protected function setUnixTimestamp($timestamp = null) - { - $old = $this->_unixTimestamp; - - if (is_numeric($timestamp)) { - $this->_unixTimestamp = $timestamp; - } else if ($timestamp === null) { - $this->_unixTimestamp = time(); - } else { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception('\'' . $timestamp . '\' is not a valid UNIX timestamp', 0, null, $timestamp); - } - - return $old; - } - - /** - * Returns this object's UNIX timestamp - * A timestamp greater then the integer range will be returned as string - * This function does not return the timestamp as object. Use copy() instead. - * - * @return integer|string timestamp - */ - protected function getUnixTimestamp() - { - if ($this->_unixTimestamp === intval($this->_unixTimestamp)) { - return (int) $this->_unixTimestamp; - } else { - return (string) $this->_unixTimestamp; - } - } - - /** - * Internal function. - * Returns time(). This method exists to allow unit tests to work-around methods that might otherwise - * be hard-coded to use time(). For example, this makes it possible to test isYesterday() in Date.php. - * - * @param integer $sync OPTIONAL time syncronisation value - * @return integer timestamp - */ - protected function _getTime($sync = null) - { - if ($sync !== null) { - $this->_syncronised = round($sync); - } - return (time() + $this->_syncronised); - } - - /** - * Internal mktime function used by Zend_Date. - * The timestamp returned by mktime() can exceed the precision of traditional UNIX timestamps, - * by allowing PHP to auto-convert to using a float value. - * - * Returns a timestamp relative to 1970/01/01 00:00:00 GMT/UTC. - * DST (Summer/Winter) is depriciated since php 5.1.0. - * Year has to be 4 digits otherwise it would be recognised as - * year 70 AD instead of 1970 AD as expected !! - * - * @param integer $hour - * @param integer $minute - * @param integer $second - * @param integer $month - * @param integer $day - * @param integer $year - * @param boolean $gmt OPTIONAL true = other arguments are for UTC time, false = arguments are for local time/date - * @return integer|float timestamp (number of seconds elapsed relative to 1970/01/01 00:00:00 GMT/UTC) - */ - protected function mktime($hour, $minute, $second, $month, $day, $year, $gmt = false) - { - // complete date but in 32bit timestamp - use PHP internal - if ((1901 < $year) and ($year < 2038)) { - - $oldzone = @date_default_timezone_get(); - // Timezone also includes DST settings, therefor substracting the GMT offset is not enough - // We have to set the correct timezone to get the right value - if (($this->_timezone != $oldzone) and ($gmt === false)) { - date_default_timezone_set($this->_timezone); - } - $result = ($gmt) ? @gmmktime($hour, $minute, $second, $month, $day, $year) - : @mktime($hour, $minute, $second, $month, $day, $year); - date_default_timezone_set($oldzone); - - return $result; - } - - if ($gmt !== true) { - $second += $this->_offset; - } - - if (isset(self::$_cache)) { - $id = strtr('Zend_DateObject_mkTime_' . $this->_offset . '_' . $year.$month.$day.'_'.$hour.$minute.$second . '_'.(int)$gmt, '-','_'); - if ($result = self::$_cache->load($id)) { - return unserialize($result); - } - } - - // date to integer - $day = intval($day); - $month = intval($month); - $year = intval($year); - - // correct months > 12 and months < 1 - if ($month > 12) { - $overlap = floor($month / 12); - $year += $overlap; - $month -= $overlap * 12; - } else { - $overlap = ceil((1 - $month) / 12); - $year -= $overlap; - $month += $overlap * 12; - } - - $date = 0; - if ($year >= 1970) { - - // Date is after UNIX epoch - // go through leapyears - // add months from latest given year - for ($count = 1970; $count <= $year; $count++) { - - $leapyear = self::isYearLeapYear($count); - if ($count < $year) { - - $date += 365; - if ($leapyear === true) { - $date++; - } - - } else { - - for ($mcount = 0; $mcount < ($month - 1); $mcount++) { - $date += self::$_monthTable[$mcount]; - if (($leapyear === true) and ($mcount == 1)) { - $date++; - } - - } - } - } - - $date += $day - 1; - $date = (($date * 86400) + ($hour * 3600) + ($minute * 60) + $second); - } else { - - // Date is before UNIX epoch - // go through leapyears - // add months from latest given year - for ($count = 1969; $count >= $year; $count--) { - - $leapyear = self::isYearLeapYear($count); - if ($count > $year) - { - $date += 365; - if ($leapyear === true) - $date++; - } else { - - for ($mcount = 11; $mcount > ($month - 1); $mcount--) { - $date += self::$_monthTable[$mcount]; - if (($leapyear === true) and ($mcount == 2)) { - $date++; - } - - } - } - } - - $date += (self::$_monthTable[$month - 1] - $day); - $date = -(($date * 86400) + (86400 - (($hour * 3600) + ($minute * 60) + $second))); - - // gregorian correction for 5.Oct.1582 - if ($date < -12220185600) { - $date += 864000; - } else if ($date < -12219321600) { - $date = -12219321600; - } - } - - if (isset(self::$_cache)) { - if (self::$_cacheTags) { - self::$_cache->save( serialize($date), $id, array('Zend_Date')); - } else { - self::$_cache->save( serialize($date), $id); - } - } - - return $date; - } - - /** - * Returns true, if given $year is a leap year. - * - * @param integer $year - * @return boolean true, if year is leap year - */ - protected static function isYearLeapYear($year) - { - // all leapyears can be divided through 4 - if (($year % 4) != 0) { - return false; - } - - // all leapyears can be divided through 400 - if ($year % 400 == 0) { - return true; - } else if (($year > 1582) and ($year % 100 == 0)) { - return false; - } - - return true; - } - - /** - * Internal mktime function used by Zend_Date for handling 64bit timestamps. - * - * Returns a formatted date for a given timestamp. - * - * @param string $format format for output - * @param mixed $timestamp - * @param boolean $gmt OPTIONAL true = other arguments are for UTC time, false = arguments are for local time/date - * @return string - */ - protected function date($format, $timestamp = null, $gmt = false) - { - $oldzone = @date_default_timezone_get(); - if ($this->_timezone != $oldzone) { - date_default_timezone_set($this->_timezone); - } - - if ($timestamp === null) { - $result = ($gmt) ? @gmdate($format) : @date($format); - date_default_timezone_set($oldzone); - return $result; - } - - if (abs($timestamp) <= 0x7FFFFFFF) { - // See ZF-11992 - // "o" will sometimes resolve to the previous year (see - // http://php.net/date ; it's part of the ISO 8601 - // standard). However, this is not desired, so replacing - // all occurrences of "o" not preceded by a backslash - // with "Y" - $format = preg_replace('/(?_offset . '_'. $timestamp . '_'.(int)$gmt, '-','_'); - if ($result2 = self::$_cache->load($idstamp)) { - $timestamp = unserialize($result2); - $jump = true; - } - } - - // check on false or null alone fails - if (empty($gmt) and empty($jump)) { - $tempstamp = $timestamp; - if ($tempstamp > 0) { - while (abs($tempstamp) > 0x7FFFFFFF) { - $tempstamp -= (86400 * 23376); - } - - $dst = date("I", $tempstamp); - if ($dst === 1) { - $timestamp += 3600; - } - - $temp = date('Z', $tempstamp); - $timestamp += $temp; - } - - if (isset(self::$_cache)) { - if (self::$_cacheTags) { - self::$_cache->save( serialize($timestamp), $idstamp, array('Zend_Date')); - } else { - self::$_cache->save( serialize($timestamp), $idstamp); - } - } - } - - if (($timestamp < 0) and ($gmt !== true)) { - $timestamp -= $this->_offset; - } - - date_default_timezone_set($oldzone); - $date = $this->getDateParts($timestamp, true); - $length = strlen($format); - $output = ''; - - for ($i = 0; $i < $length; $i++) { - switch($format[$i]) { - // day formats - case 'd': // day of month, 2 digits, with leading zero, 01 - 31 - $output .= (($date['mday'] < 10) ? '0' . $date['mday'] : $date['mday']); - break; - - case 'D': // day of week, 3 letters, Mon - Sun - $output .= date('D', 86400 * (3 + self::dayOfWeek($date['year'], $date['mon'], $date['mday']))); - break; - - case 'j': // day of month, without leading zero, 1 - 31 - $output .= $date['mday']; - break; - - case 'l': // day of week, full string name, Sunday - Saturday - $output .= date('l', 86400 * (3 + self::dayOfWeek($date['year'], $date['mon'], $date['mday']))); - break; - - case 'N': // ISO 8601 numeric day of week, 1 - 7 - $day = self::dayOfWeek($date['year'], $date['mon'], $date['mday']); - if ($day == 0) { - $day = 7; - } - $output .= $day; - break; - - case 'S': // english suffix for day of month, st nd rd th - if (($date['mday'] % 10) == 1) { - $output .= 'st'; - } else if ((($date['mday'] % 10) == 2) and ($date['mday'] != 12)) { - $output .= 'nd'; - } else if (($date['mday'] % 10) == 3) { - $output .= 'rd'; - } else { - $output .= 'th'; - } - break; - - case 'w': // numeric day of week, 0 - 6 - $output .= self::dayOfWeek($date['year'], $date['mon'], $date['mday']); - break; - - case 'z': // day of year, 0 - 365 - $output .= $date['yday']; - break; - - - // week formats - case 'W': // ISO 8601, week number of year - $output .= $this->weekNumber($date['year'], $date['mon'], $date['mday']); - break; - - - // month formats - case 'F': // string month name, january - december - $output .= date('F', mktime(0, 0, 0, $date['mon'], 2, 1971)); - break; - - case 'm': // number of month, with leading zeros, 01 - 12 - $output .= (($date['mon'] < 10) ? '0' . $date['mon'] : $date['mon']); - break; - - case 'M': // 3 letter month name, Jan - Dec - $output .= date('M',mktime(0, 0, 0, $date['mon'], 2, 1971)); - break; - - case 'n': // number of month, without leading zeros, 1 - 12 - $output .= $date['mon']; - break; - - case 't': // number of day in month - $output .= self::$_monthTable[$date['mon'] - 1]; - break; - - - // year formats - case 'L': // is leap year ? - $output .= (self::isYearLeapYear($date['year'])) ? '1' : '0'; - break; - - case 'o': // ISO 8601 year number - $week = $this->weekNumber($date['year'], $date['mon'], $date['mday']); - if (($week > 50) and ($date['mon'] == 1)) { - $output .= ($date['year'] - 1); - } else { - $output .= $date['year']; - } - break; - - case 'Y': // year number, 4 digits - $output .= $date['year']; - break; - - case 'y': // year number, 2 digits - $output .= substr($date['year'], strlen($date['year']) - 2, 2); - break; - - - // time formats - case 'a': // lower case am/pm - $output .= (($date['hours'] >= 12) ? 'pm' : 'am'); - break; - - case 'A': // upper case am/pm - $output .= (($date['hours'] >= 12) ? 'PM' : 'AM'); - break; - - case 'B': // swatch internet time - $dayseconds = ($date['hours'] * 3600) + ($date['minutes'] * 60) + $date['seconds']; - if ($gmt === true) { - $dayseconds += 3600; - } - $output .= (int) (($dayseconds % 86400) / 86.4); - break; - - case 'g': // hours without leading zeros, 12h format - if ($date['hours'] > 12) { - $hour = $date['hours'] - 12; - } else { - if ($date['hours'] == 0) { - $hour = '12'; - } else { - $hour = $date['hours']; - } - } - $output .= $hour; - break; - - case 'G': // hours without leading zeros, 24h format - $output .= $date['hours']; - break; - - case 'h': // hours with leading zeros, 12h format - if ($date['hours'] > 12) { - $hour = $date['hours'] - 12; - } else { - if ($date['hours'] == 0) { - $hour = '12'; - } else { - $hour = $date['hours']; - } - } - $output .= (($hour < 10) ? '0'.$hour : $hour); - break; - - case 'H': // hours with leading zeros, 24h format - $output .= (($date['hours'] < 10) ? '0' . $date['hours'] : $date['hours']); - break; - - case 'i': // minutes with leading zeros - $output .= (($date['minutes'] < 10) ? '0' . $date['minutes'] : $date['minutes']); - break; - - case 's': // seconds with leading zeros - $output .= (($date['seconds'] < 10) ? '0' . $date['seconds'] : $date['seconds']); - break; - - - // timezone formats - case 'e': // timezone identifier - if ($gmt === true) { - $output .= gmdate('e', mktime($date['hours'], $date['minutes'], $date['seconds'], - $date['mon'], $date['mday'], 2000)); - } else { - $output .= date('e', mktime($date['hours'], $date['minutes'], $date['seconds'], - $date['mon'], $date['mday'], 2000)); - } - break; - - case 'I': // daylight saving time or not - if ($gmt === true) { - $output .= gmdate('I', mktime($date['hours'], $date['minutes'], $date['seconds'], - $date['mon'], $date['mday'], 2000)); - } else { - $output .= date('I', mktime($date['hours'], $date['minutes'], $date['seconds'], - $date['mon'], $date['mday'], 2000)); - } - break; - - case 'O': // difference to GMT in hours - $gmtstr = ($gmt === true) ? 0 : $this->getGmtOffset(); - $output .= sprintf('%s%04d', ($gmtstr <= 0) ? '+' : '-', abs($gmtstr) / 36); - break; - - case 'P': // difference to GMT with colon - $gmtstr = ($gmt === true) ? 0 : $this->getGmtOffset(); - $gmtstr = sprintf('%s%04d', ($gmtstr <= 0) ? '+' : '-', abs($gmtstr) / 36); - $output = $output . substr($gmtstr, 0, 3) . ':' . substr($gmtstr, 3); - break; - - case 'T': // timezone settings - if ($gmt === true) { - $output .= gmdate('T', mktime($date['hours'], $date['minutes'], $date['seconds'], - $date['mon'], $date['mday'], 2000)); - } else { - $output .= date('T', mktime($date['hours'], $date['minutes'], $date['seconds'], - $date['mon'], $date['mday'], 2000)); - } - break; - - case 'Z': // timezone offset in seconds - $output .= ($gmt === true) ? 0 : -$this->getGmtOffset(); - break; - - - // complete time formats - case 'c': // ISO 8601 date format - $difference = $this->getGmtOffset(); - $difference = sprintf('%s%04d', ($difference <= 0) ? '+' : '-', abs($difference) / 36); - $difference = substr($difference, 0, 3) . ':' . substr($difference, 3); - $output .= $date['year'] . '-' - . (($date['mon'] < 10) ? '0' . $date['mon'] : $date['mon']) . '-' - . (($date['mday'] < 10) ? '0' . $date['mday'] : $date['mday']) . 'T' - . (($date['hours'] < 10) ? '0' . $date['hours'] : $date['hours']) . ':' - . (($date['minutes'] < 10) ? '0' . $date['minutes'] : $date['minutes']) . ':' - . (($date['seconds'] < 10) ? '0' . $date['seconds'] : $date['seconds']) - . $difference; - break; - - case 'r': // RFC 2822 date format - $difference = $this->getGmtOffset(); - $difference = sprintf('%s%04d', ($difference <= 0) ? '+' : '-', abs($difference) / 36); - $output .= gmdate('D', 86400 * (3 + self::dayOfWeek($date['year'], $date['mon'], $date['mday']))) . ', ' - . (($date['mday'] < 10) ? '0' . $date['mday'] : $date['mday']) . ' ' - . date('M', mktime(0, 0, 0, $date['mon'], 2, 1971)) . ' ' - . $date['year'] . ' ' - . (($date['hours'] < 10) ? '0' . $date['hours'] : $date['hours']) . ':' - . (($date['minutes'] < 10) ? '0' . $date['minutes'] : $date['minutes']) . ':' - . (($date['seconds'] < 10) ? '0' . $date['seconds'] : $date['seconds']) . ' ' - . $difference; - break; - - case 'U': // Unix timestamp - $output .= $origstamp; - break; - - - // special formats - case "\\": // next letter to print with no format - $i++; - if ($i < $length) { - $output .= $format[$i]; - } - break; - - default: // letter is no format so add it direct - $output .= $format[$i]; - break; - } - } - - return (string) $output; - } - - /** - * Returns the day of week for a Gregorian calendar date. - * 0 = sunday, 6 = saturday - * - * @param integer $year - * @param integer $month - * @param integer $day - * @return integer dayOfWeek - */ - protected static function dayOfWeek($year, $month, $day) - { - if ((1901 < $year) and ($year < 2038)) { - return (int) date('w', mktime(0, 0, 0, $month, $day, $year)); - } - - // gregorian correction - $correction = 0; - if (($year < 1582) or (($year == 1582) and (($month < 10) or (($month == 10) && ($day < 15))))) { - $correction = 3; - } - - if ($month > 2) { - $month -= 2; - } else { - $month += 10; - $year--; - } - - $day = floor((13 * $month - 1) / 5) + $day + ($year % 100) + floor(($year % 100) / 4); - $day += floor(($year / 100) / 4) - 2 * floor($year / 100) + 77 + $correction; - - return (int) ($day - 7 * floor($day / 7)); - } - - /** - * Internal getDateParts function for handling 64bit timestamps, similar to: - * http://www.php.net/getdate - * - * Returns an array of date parts for $timestamp, relative to 1970/01/01 00:00:00 GMT/UTC. - * - * $fast specifies ALL date parts should be returned (slower) - * Default is false, and excludes $dayofweek, weekday, month and timestamp from parts returned. - * - * @param mixed $timestamp - * @param boolean $fast OPTIONAL defaults to fast (false), resulting in fewer date parts - * @return array - */ - protected function getDateParts($timestamp = null, $fast = null) - { - - // actual timestamp - if (!is_numeric($timestamp)) { - return getdate(); - } - - // 32bit timestamp - if (abs($timestamp) <= 0x7FFFFFFF) { - return @getdate((int) $timestamp); - } - - if (isset(self::$_cache)) { - $id = strtr('Zend_DateObject_getDateParts_' . $timestamp.'_'.(int)$fast, '-','_'); - if ($result = self::$_cache->load($id)) { - return unserialize($result); - } - } - - $otimestamp = $timestamp; - $numday = 0; - $month = 0; - // gregorian correction - if ($timestamp < -12219321600) { - $timestamp -= 864000; - } - - // timestamp lower 0 - if ($timestamp < 0) { - $sec = 0; - $act = 1970; - - // iterate through 10 years table, increasing speed - foreach(self::$_yearTable as $year => $seconds) { - if ($timestamp >= $seconds) { - $i = $act; - break; - } - $sec = $seconds; - $act = $year; - } - - $timestamp -= $sec; - if (!isset($i)) { - $i = $act; - } - - // iterate the max last 10 years - do { - --$i; - $day = $timestamp; - - $timestamp += 31536000; - $leapyear = self::isYearLeapYear($i); - if ($leapyear === true) { - $timestamp += 86400; - } - - if ($timestamp >= 0) { - $year = $i; - break; - } - } while ($timestamp < 0); - - $secondsPerYear = 86400 * ($leapyear ? 366 : 365) + $day; - - $timestamp = $day; - // iterate through months - for ($i = 12; --$i >= 0;) { - $day = $timestamp; - - $timestamp += self::$_monthTable[$i] * 86400; - if (($leapyear === true) and ($i == 1)) { - $timestamp += 86400; - } - - if ($timestamp >= 0) { - $month = $i; - $numday = self::$_monthTable[$i]; - if (($leapyear === true) and ($i == 1)) { - ++$numday; - } - break; - } - } - - $timestamp = $day; - $numberdays = $numday + ceil(($timestamp + 1) / 86400); - - $timestamp += ($numday - $numberdays + 1) * 86400; - $hours = floor($timestamp / 3600); - } else { - - // iterate through years - for ($i = 1970;;$i++) { - $day = $timestamp; - - $timestamp -= 31536000; - $leapyear = self::isYearLeapYear($i); - if ($leapyear === true) { - $timestamp -= 86400; - } - - if ($timestamp < 0) { - $year = $i; - break; - } - } - - $secondsPerYear = $day; - - $timestamp = $day; - // iterate through months - for ($i = 0; $i <= 11; $i++) { - $day = $timestamp; - $timestamp -= self::$_monthTable[$i] * 86400; - - if (($leapyear === true) and ($i == 1)) { - $timestamp -= 86400; - } - - if ($timestamp < 0) { - $month = $i; - $numday = self::$_monthTable[$i]; - if (($leapyear === true) and ($i == 1)) { - ++$numday; - } - break; - } - } - - $timestamp = $day; - $numberdays = ceil(($timestamp + 1) / 86400); - $timestamp = $timestamp - ($numberdays - 1) * 86400; - $hours = floor($timestamp / 3600); - } - - $timestamp -= $hours * 3600; - - $month += 1; - $minutes = floor($timestamp / 60); - $seconds = $timestamp - $minutes * 60; - - if ($fast === true) { - $array = array( - 'seconds' => $seconds, - 'minutes' => $minutes, - 'hours' => $hours, - 'mday' => $numberdays, - 'mon' => $month, - 'year' => $year, - 'yday' => floor($secondsPerYear / 86400), - ); - } else { - - $dayofweek = self::dayOfWeek($year, $month, $numberdays); - $array = array( - 'seconds' => $seconds, - 'minutes' => $minutes, - 'hours' => $hours, - 'mday' => $numberdays, - 'wday' => $dayofweek, - 'mon' => $month, - 'year' => $year, - 'yday' => floor($secondsPerYear / 86400), - 'weekday' => gmdate('l', 86400 * (3 + $dayofweek)), - 'month' => gmdate('F', mktime(0, 0, 0, $month, 1, 1971)), - 0 => $otimestamp - ); - } - - if (isset(self::$_cache)) { - if (self::$_cacheTags) { - self::$_cache->save( serialize($array), $id, array('Zend_Date')); - } else { - self::$_cache->save( serialize($array), $id); - } - } - - return $array; - } - - /** - * Internal getWeekNumber function for handling 64bit timestamps - * - * Returns the ISO 8601 week number of a given date - * - * @param integer $year - * @param integer $month - * @param integer $day - * @return integer - */ - protected function weekNumber($year, $month, $day) - { - if ((1901 < $year) and ($year < 2038)) { - return (int) date('W', mktime(0, 0, 0, $month, $day, $year)); - } - - $dayofweek = self::dayOfWeek($year, $month, $day); - $firstday = self::dayOfWeek($year, 1, 1); - if (($month == 1) and (($firstday < 1) or ($firstday > 4)) and ($day < 4)) { - $firstday = self::dayOfWeek($year - 1, 1, 1); - $month = 12; - $day = 31; - - } else if (($month == 12) and ((self::dayOfWeek($year + 1, 1, 1) < 5) and - (self::dayOfWeek($year + 1, 1, 1) > 0))) { - return 1; - } - - return intval (((self::dayOfWeek($year, 1, 1) < 5) and (self::dayOfWeek($year, 1, 1) > 0)) + - 4 * ($month - 1) + (2 * ($month - 1) + ($day - 1) + $firstday - $dayofweek + 6) * 36 / 256); - } - - /** - * Internal _range function - * Sets the value $a to be in the range of [0, $b] - * - * @param float $a - value to correct - * @param float $b - maximum range to set - */ - private function _range($a, $b) { - while ($a < 0) { - $a += $b; - } - while ($a >= $b) { - $a -= $b; - } - return $a; - } - - /** - * Calculates the sunrise or sunset based on a location - * - * @param array $location Location for calculation MUST include 'latitude', 'longitude', 'horizon' - * @param bool $horizon true: sunrise; false: sunset - * @return mixed - false: midnight sun, integer: - */ - protected function calcSun($location, $horizon, $rise = false) - { - // timestamp within 32bit - if (abs($this->_unixTimestamp) <= 0x7FFFFFFF) { - if ($rise === false) { - return date_sunset($this->_unixTimestamp, SUNFUNCS_RET_TIMESTAMP, $location['latitude'], - $location['longitude'], 90 + $horizon, $this->getGmtOffset() / 3600); - } - return date_sunrise($this->_unixTimestamp, SUNFUNCS_RET_TIMESTAMP, $location['latitude'], - $location['longitude'], 90 + $horizon, $this->getGmtOffset() / 3600); - } - - // self calculation - timestamp bigger than 32bit - // fix circle values - $quarterCircle = 0.5 * M_PI; - $halfCircle = M_PI; - $threeQuarterCircle = 1.5 * M_PI; - $fullCircle = 2 * M_PI; - - // radiant conversion for coordinates - $radLatitude = $location['latitude'] * $halfCircle / 180; - $radLongitude = $location['longitude'] * $halfCircle / 180; - - // get solar coordinates - $tmpRise = $rise ? $quarterCircle : $threeQuarterCircle; - $radDay = $this->date('z',$this->_unixTimestamp) + ($tmpRise - $radLongitude) / $fullCircle; - - // solar anomoly and longitude - $solAnomoly = $radDay * 0.017202 - 0.0574039; - $solLongitude = $solAnomoly + 0.0334405 * sin($solAnomoly); - $solLongitude += 4.93289 + 3.49066E-4 * sin(2 * $solAnomoly); - - // get quadrant - $solLongitude = $this->_range($solLongitude, $fullCircle); - - if (($solLongitude / $quarterCircle) - intval($solLongitude / $quarterCircle) == 0) { - $solLongitude += 4.84814E-6; - } - - // solar ascension - $solAscension = sin($solLongitude) / cos($solLongitude); - $solAscension = atan2(0.91746 * $solAscension, 1); - - // adjust quadrant - if ($solLongitude > $threeQuarterCircle) { - $solAscension += $fullCircle; - } else if ($solLongitude > $quarterCircle) { - $solAscension += $halfCircle; - } - - // solar declination - $solDeclination = 0.39782 * sin($solLongitude); - $solDeclination /= sqrt(-$solDeclination * $solDeclination + 1); - $solDeclination = atan2($solDeclination, 1); - - $solHorizon = $horizon - sin($solDeclination) * sin($radLatitude); - $solHorizon /= cos($solDeclination) * cos($radLatitude); - - // midnight sun, always night - if (abs($solHorizon) > 1) { - return false; - } - - $solHorizon /= sqrt(-$solHorizon * $solHorizon + 1); - $solHorizon = $quarterCircle - atan2($solHorizon, 1); - - if ($rise) { - $solHorizon = $fullCircle - $solHorizon; - } - - // time calculation - $localTime = $solHorizon + $solAscension - 0.0172028 * $radDay - 1.73364; - $universalTime = $localTime - $radLongitude; - - // determinate quadrant - $universalTime = $this->_range($universalTime, $fullCircle); - - // radiant to hours - $universalTime *= 24 / $fullCircle; - - // convert to time - $hour = intval($universalTime); - $universalTime = ($universalTime - $hour) * 60; - $min = intval($universalTime); - $universalTime = ($universalTime - $min) * 60; - $sec = intval($universalTime); - - return $this->mktime($hour, $min, $sec, $this->date('m', $this->_unixTimestamp), - $this->date('j', $this->_unixTimestamp), $this->date('Y', $this->_unixTimestamp), - -1, true); - } - - /** - * Sets a new timezone for calculation of $this object's gmt offset. - * For a list of supported timezones look here: http://php.net/timezones - * If no timezone can be detected or the given timezone is wrong UTC will be set. - * - * @param string $zone OPTIONAL timezone for date calculation; defaults to date_default_timezone_get() - * @return Zend_Date_DateObject Provides fluent interface - * @throws Zend_Date_Exception - */ - public function setTimezone($zone = null) - { - $oldzone = @date_default_timezone_get(); - if ($zone === null) { - $zone = $oldzone; - } - - // throw an error on false input, but only if the new date extension is available - if (function_exists('timezone_open')) { - if (!@timezone_open($zone)) { - require_once 'Zend/Date/Exception.php'; - throw new Zend_Date_Exception("timezone ($zone) is not a known timezone", 0, null, $zone); - } - } - // this can generate an error if the date extension is not available and a false timezone is given - $result = @date_default_timezone_set($zone); - if ($result === true) { - $this->_offset = mktime(0, 0, 0, 1, 2, 1970) - gmmktime(0, 0, 0, 1, 2, 1970); - $this->_timezone = $zone; - } - date_default_timezone_set($oldzone); - - if (($zone == 'UTC') or ($zone == 'GMT')) { - $this->_dst = false; - } else { - $this->_dst = true; - } - - return $this; - } - - /** - * Return the timezone of $this object. - * The timezone is initially set when the object is instantiated. - * - * @return string actual set timezone string - */ - public function getTimezone() - { - return $this->_timezone; - } - - /** - * Return the offset to GMT of $this object's timezone. - * The offset to GMT is initially set when the object is instantiated using the currently, - * in effect, default timezone for PHP functions. - * - * @return integer seconds difference between GMT timezone and timezone when object was instantiated - */ - public function getGmtOffset() - { - $date = $this->getDateParts($this->getUnixTimestamp(), true); - $zone = @date_default_timezone_get(); - $result = @date_default_timezone_set($this->_timezone); - if ($result === true) { - $offset = $this->mktime($date['hours'], $date['minutes'], $date['seconds'], - $date['mon'], $date['mday'], $date['year'], false) - - $this->mktime($date['hours'], $date['minutes'], $date['seconds'], - $date['mon'], $date['mday'], $date['year'], true); - } - date_default_timezone_set($zone); - - return $offset; - } - - /** - * Internal method to check if the given cache supports tags - * - * @param Zend_Cache $cache - */ - protected static function _getTagSupportForCache() - { - $backend = self::$_cache->getBackend(); - if ($backend instanceof Zend_Cache_Backend_ExtendedInterface) { - $cacheOptions = $backend->getCapabilities(); - self::$_cacheTags = $cacheOptions['tags']; - } else { - self::$_cacheTags = false; - } - - return self::$_cacheTags; - } -} diff --git a/library/Zend/Date/Exception.php b/library/Zend/Date/Exception.php deleted file mode 100644 index 98a555bb..00000000 --- a/library/Zend/Date/Exception.php +++ /dev/null @@ -1,49 +0,0 @@ -operand = $op; - parent::__construct($message, $code, $e); - } - - public function getOperand() - { - return $this->operand; - } -} diff --git a/library/Zend/Db.php b/library/Zend/Db.php deleted file mode 100644 index 3a57fcc8..00000000 --- a/library/Zend/Db.php +++ /dev/null @@ -1,286 +0,0 @@ -toArray(); - } - - /* - * Convert Zend_Config argument to plain string - * adapter name and separate config object. - */ - if ($adapter instanceof Zend_Config) { - if (isset($adapter->params)) { - $config = $adapter->params->toArray(); - } - if (isset($adapter->adapter)) { - $adapter = (string) $adapter->adapter; - } else { - $adapter = null; - } - } - - /* - * Verify that adapter parameters are in an array. - */ - if (!is_array($config)) { - /** - * @see Zend_Db_Exception - */ - require_once 'Zend/Db/Exception.php'; - throw new Zend_Db_Exception('Adapter parameters must be in an array or a Zend_Config object'); - } - - /* - * Verify that an adapter name has been specified. - */ - if (!is_string($adapter) || empty($adapter)) { - /** - * @see Zend_Db_Exception - */ - require_once 'Zend/Db/Exception.php'; - throw new Zend_Db_Exception('Adapter name must be specified in a string'); - } - - /* - * Form full adapter class name - */ - $adapterNamespace = 'Zend_Db_Adapter'; - if (isset($config['adapterNamespace'])) { - if ($config['adapterNamespace'] != '') { - $adapterNamespace = $config['adapterNamespace']; - } - unset($config['adapterNamespace']); - } - - // Adapter no longer normalized- see http://framework.zend.com/issues/browse/ZF-5606 - $adapterName = $adapterNamespace . '_'; - $adapterName .= str_replace(' ', '_', ucwords(str_replace('_', ' ', strtolower($adapter)))); - - /* - * Load the adapter class. This throws an exception - * if the specified class cannot be loaded. - */ - if (!class_exists($adapterName)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($adapterName); - } - - /* - * Create an instance of the adapter class. - * Pass the config to the adapter class constructor. - */ - $dbAdapter = new $adapterName($config); - - /* - * Verify that the object created is a descendent of the abstract adapter type. - */ - if (! $dbAdapter instanceof Zend_Db_Adapter_Abstract) { - /** - * @see Zend_Db_Exception - */ - require_once 'Zend/Db/Exception.php'; - throw new Zend_Db_Exception("Adapter class '$adapterName' does not extend Zend_Db_Adapter_Abstract"); - } - - return $dbAdapter; - } - -} diff --git a/library/Zend/Db/Adapter/Abstract.php b/library/Zend/Db/Adapter/Abstract.php deleted file mode 100644 index 9bb1265a..00000000 --- a/library/Zend/Db/Adapter/Abstract.php +++ /dev/null @@ -1,1281 +0,0 @@ - Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE - ); - - /** Weither or not that object can get serialized - * - * @var bool - */ - protected $_allowSerialization = true; - - /** - * Weither or not the database should be reconnected - * to that adapter when waking up - * - * @var bool - */ - protected $_autoReconnectOnUnserialize = false; - - /** - * Constructor. - * - * $config is an array of key/value pairs or an instance of Zend_Config - * containing configuration options. These options are common to most adapters: - * - * dbname => (string) The name of the database to user - * username => (string) Connect to the database as this username. - * password => (string) Password associated with the username. - * host => (string) What host to connect to, defaults to localhost - * - * Some options are used on a case-by-case basis by adapters: - * - * port => (string) The port of the database - * persistent => (boolean) Whether to use a persistent connection or not, defaults to false - * protocol => (string) The network protocol, defaults to TCPIP - * caseFolding => (int) style of case-alteration used for identifiers - * socket => (string) The socket or named pipe that should be used - * - * @param array|Zend_Config $config An array or instance of Zend_Config having configuration data - * @throws Zend_Db_Adapter_Exception - */ - public function __construct($config) - { - /* - * Verify that adapter parameters are in an array. - */ - if (!is_array($config)) { - /* - * Convert Zend_Config argument to a plain array. - */ - if ($config instanceof Zend_Config) { - $config = $config->toArray(); - } else { - /** - * @see Zend_Db_Adapter_Exception - */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception('Adapter parameters must be in an array or a Zend_Config object'); - } - } - - $this->_checkRequiredOptions($config); - - $options = array( - Zend_Db::CASE_FOLDING => $this->_caseFolding, - Zend_Db::AUTO_QUOTE_IDENTIFIERS => $this->_autoQuoteIdentifiers, - Zend_Db::FETCH_MODE => $this->_fetchMode, - ); - $driverOptions = array(); - - /* - * normalize the config and merge it with the defaults - */ - if (array_key_exists('options', $config)) { - // can't use array_merge() because keys might be integers - foreach ((array) $config['options'] as $key => $value) { - $options[$key] = $value; - } - } - if (array_key_exists('driver_options', $config)) { - if (!empty($config['driver_options'])) { - // can't use array_merge() because keys might be integers - foreach ((array) $config['driver_options'] as $key => $value) { - $driverOptions[$key] = $value; - } - } - } - - if (!isset($config['charset'])) { - $config['charset'] = null; - } - - if (!isset($config['persistent'])) { - $config['persistent'] = false; - } - - $this->_config = array_merge($this->_config, $config); - $this->_config['options'] = $options; - $this->_config['driver_options'] = $driverOptions; - - - // obtain the case setting, if there is one - if (array_key_exists(Zend_Db::CASE_FOLDING, $options)) { - $case = (int) $options[Zend_Db::CASE_FOLDING]; - switch ($case) { - case Zend_Db::CASE_LOWER: - case Zend_Db::CASE_UPPER: - case Zend_Db::CASE_NATURAL: - $this->_caseFolding = $case; - break; - default: - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception('Case must be one of the following constants: ' - . 'Zend_Db::CASE_NATURAL, Zend_Db::CASE_LOWER, Zend_Db::CASE_UPPER'); - } - } - - if (array_key_exists(Zend_Db::FETCH_MODE, $options)) { - if (is_string($options[Zend_Db::FETCH_MODE])) { - $constant = 'Zend_Db::FETCH_' . strtoupper($options[Zend_Db::FETCH_MODE]); - if(defined($constant)) { - $options[Zend_Db::FETCH_MODE] = constant($constant); - } - } - $this->setFetchMode((int) $options[Zend_Db::FETCH_MODE]); - } - - // obtain quoting property if there is one - if (array_key_exists(Zend_Db::AUTO_QUOTE_IDENTIFIERS, $options)) { - $this->_autoQuoteIdentifiers = (bool) $options[Zend_Db::AUTO_QUOTE_IDENTIFIERS]; - } - - // obtain allow serialization property if there is one - if (array_key_exists(Zend_Db::ALLOW_SERIALIZATION, $options)) { - $this->_allowSerialization = (bool) $options[Zend_Db::ALLOW_SERIALIZATION]; - } - - // obtain auto reconnect on unserialize property if there is one - if (array_key_exists(Zend_Db::AUTO_RECONNECT_ON_UNSERIALIZE, $options)) { - $this->_autoReconnectOnUnserialize = (bool) $options[Zend_Db::AUTO_RECONNECT_ON_UNSERIALIZE]; - } - - // create a profiler object - $profiler = false; - if (array_key_exists(Zend_Db::PROFILER, $this->_config)) { - $profiler = $this->_config[Zend_Db::PROFILER]; - unset($this->_config[Zend_Db::PROFILER]); - } - $this->setProfiler($profiler); - } - - /** - * Check for config options that are mandatory. - * Throw exceptions if any are missing. - * - * @param array $config - * @throws Zend_Db_Adapter_Exception - */ - protected function _checkRequiredOptions(array $config) - { - // we need at least a dbname - if (! array_key_exists('dbname', $config)) { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("Configuration array must have a key for 'dbname' that names the database instance"); - } - - if (! array_key_exists('password', $config)) { - /** - * @see Zend_Db_Adapter_Exception - */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("Configuration array must have a key for 'password' for login credentials"); - } - - if (! array_key_exists('username', $config)) { - /** - * @see Zend_Db_Adapter_Exception - */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("Configuration array must have a key for 'username' for login credentials"); - } - } - - /** - * Returns the underlying database connection object or resource. - * If not presently connected, this initiates the connection. - * - * @return object|resource|null - */ - public function getConnection() - { - $this->_connect(); - return $this->_connection; - } - - /** - * Returns the configuration variables in this adapter. - * - * @return array - */ - public function getConfig() - { - return $this->_config; - } - - /** - * Set the adapter's profiler object. - * - * The argument may be a boolean, an associative array, an instance of - * Zend_Db_Profiler, or an instance of Zend_Config. - * - * A boolean argument sets the profiler to enabled if true, or disabled if - * false. The profiler class is the adapter's default profiler class, - * Zend_Db_Profiler. - * - * An instance of Zend_Db_Profiler sets the adapter's instance to that - * object. The profiler is enabled and disabled separately. - * - * An associative array argument may contain any of the keys 'enabled', - * 'class', and 'instance'. The 'enabled' and 'instance' keys correspond to the - * boolean and object types documented above. The 'class' key is used to name a - * class to use for a custom profiler. The class must be Zend_Db_Profiler or a - * subclass. The class is instantiated with no constructor arguments. The 'class' - * option is ignored when the 'instance' option is supplied. - * - * An object of type Zend_Config may contain the properties 'enabled', 'class', and - * 'instance', just as if an associative array had been passed instead. - * - * @param Zend_Db_Profiler|Zend_Config|array|boolean $profiler - * @return Zend_Db_Adapter_Abstract Provides a fluent interface - * @throws Zend_Db_Profiler_Exception if the object instance or class specified - * is not Zend_Db_Profiler or an extension of that class. - */ - public function setProfiler($profiler) - { - $enabled = null; - $profilerClass = $this->_defaultProfilerClass; - $profilerInstance = null; - - if ($profilerIsObject = is_object($profiler)) { - if ($profiler instanceof Zend_Db_Profiler) { - $profilerInstance = $profiler; - } else if ($profiler instanceof Zend_Config) { - $profiler = $profiler->toArray(); - } else { - /** - * @see Zend_Db_Profiler_Exception - */ - require_once 'Zend/Db/Profiler/Exception.php'; - throw new Zend_Db_Profiler_Exception('Profiler argument must be an instance of either Zend_Db_Profiler' - . ' or Zend_Config when provided as an object'); - } - } - - if (is_array($profiler)) { - if (isset($profiler['enabled'])) { - $enabled = (bool) $profiler['enabled']; - } - if (isset($profiler['class'])) { - $profilerClass = $profiler['class']; - } - if (isset($profiler['instance'])) { - $profilerInstance = $profiler['instance']; - } - } else if (!$profilerIsObject) { - $enabled = (bool) $profiler; - } - - if ($profilerInstance === null) { - if (!class_exists($profilerClass)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($profilerClass); - } - $profilerInstance = new $profilerClass(); - } - - if (!$profilerInstance instanceof Zend_Db_Profiler) { - /** @see Zend_Db_Profiler_Exception */ - require_once 'Zend/Db/Profiler/Exception.php'; - throw new Zend_Db_Profiler_Exception('Class ' . get_class($profilerInstance) . ' does not extend ' - . 'Zend_Db_Profiler'); - } - - if (null !== $enabled) { - $profilerInstance->setEnabled($enabled); - } - - $this->_profiler = $profilerInstance; - - return $this; - } - - - /** - * Returns the profiler for this adapter. - * - * @return Zend_Db_Profiler - */ - public function getProfiler() - { - return $this->_profiler; - } - - /** - * Get the default statement class. - * - * @return string - */ - public function getStatementClass() - { - return $this->_defaultStmtClass; - } - - /** - * Set the default statement class. - * - * @return Zend_Db_Adapter_Abstract Fluent interface - */ - public function setStatementClass($class) - { - $this->_defaultStmtClass = $class; - return $this; - } - - /** - * Prepares and executes an SQL statement with bound data. - * - * @param mixed $sql The SQL statement with placeholders. - * May be a string or Zend_Db_Select. - * @param mixed $bind An array of data to bind to the placeholders. - * @return Zend_Db_Statement_Interface - */ - public function query($sql, $bind = array()) - { - // connect to the database if needed - $this->_connect(); - - // is the $sql a Zend_Db_Select object? - if ($sql instanceof Zend_Db_Select) { - if (empty($bind)) { - $bind = $sql->getBind(); - } - - $sql = $sql->assemble(); - } - - // make sure $bind to an array; - // don't use (array) typecasting because - // because $bind may be a Zend_Db_Expr object - if (!is_array($bind)) { - $bind = array($bind); - } - - // prepare and execute the statement with profiling - $stmt = $this->prepare($sql); - $stmt->execute($bind); - - // return the results embedded in the prepared statement object - $stmt->setFetchMode($this->_fetchMode); - return $stmt; - } - - /** - * Leave autocommit mode and begin a transaction. - * - * @return Zend_Db_Adapter_Abstract - */ - public function beginTransaction() - { - $this->_connect(); - $q = $this->_profiler->queryStart('begin', Zend_Db_Profiler::TRANSACTION); - $this->_beginTransaction(); - $this->_profiler->queryEnd($q); - return $this; - } - - /** - * Commit a transaction and return to autocommit mode. - * - * @return Zend_Db_Adapter_Abstract - */ - public function commit() - { - $this->_connect(); - $q = $this->_profiler->queryStart('commit', Zend_Db_Profiler::TRANSACTION); - $this->_commit(); - $this->_profiler->queryEnd($q); - return $this; - } - - /** - * Roll back a transaction and return to autocommit mode. - * - * @return Zend_Db_Adapter_Abstract - */ - public function rollBack() - { - $this->_connect(); - $q = $this->_profiler->queryStart('rollback', Zend_Db_Profiler::TRANSACTION); - $this->_rollBack(); - $this->_profiler->queryEnd($q); - return $this; - } - - /** - * Inserts a table row with specified data. - * - * @param mixed $table The table to insert data into. - * @param array $bind Column-value pairs. - * @return int The number of affected rows. - * @throws Zend_Db_Adapter_Exception - */ - public function insert($table, array $bind) - { - // extract and quote col names from the array keys - $cols = array(); - $vals = array(); - $i = 0; - foreach ($bind as $col => $val) { - $cols[] = $this->quoteIdentifier($col, true); - if ($val instanceof Zend_Db_Expr) { - $vals[] = $val->__toString(); - unset($bind[$col]); - } else { - if ($this->supportsParameters('positional')) { - $vals[] = '?'; - } else { - if ($this->supportsParameters('named')) { - unset($bind[$col]); - $bind[':col'.$i] = $val; - $vals[] = ':col'.$i; - $i++; - } else { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception(get_class($this) ." doesn't support positional or named binding"); - } - } - } - } - - // build the statement - $sql = "INSERT INTO " - . $this->quoteIdentifier($table, true) - . ' (' . implode(', ', $cols) . ') ' - . 'VALUES (' . implode(', ', $vals) . ')'; - - // execute the statement and return the number of affected rows - if ($this->supportsParameters('positional')) { - $bind = array_values($bind); - } - $stmt = $this->query($sql, $bind); - $result = $stmt->rowCount(); - return $result; - } - - /** - * Updates table rows with specified data based on a WHERE clause. - * - * @param mixed $table The table to update. - * @param array $bind Column-value pairs. - * @param mixed $where UPDATE WHERE clause(s). - * @return int The number of affected rows. - * @throws Zend_Db_Adapter_Exception - */ - public function update($table, array $bind, $where = '') - { - /** - * Build "col = ?" pairs for the statement, - * except for Zend_Db_Expr which is treated literally. - */ - $set = array(); - $i = 0; - foreach ($bind as $col => $val) { - if ($val instanceof Zend_Db_Expr) { - $val = $val->__toString(); - unset($bind[$col]); - } else { - if ($this->supportsParameters('positional')) { - $val = '?'; - } else { - if ($this->supportsParameters('named')) { - unset($bind[$col]); - $bind[':col'.$i] = $val; - $val = ':col'.$i; - $i++; - } else { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception(get_class($this) ." doesn't support positional or named binding"); - } - } - } - $set[] = $this->quoteIdentifier($col, true) . ' = ' . $val; - } - - $where = $this->_whereExpr($where); - - /** - * Build the UPDATE statement - */ - $sql = "UPDATE " - . $this->quoteIdentifier($table, true) - . ' SET ' . implode(', ', $set) - . (($where) ? " WHERE $where" : ''); - - /** - * Execute the statement and return the number of affected rows - */ - if ($this->supportsParameters('positional')) { - $stmt = $this->query($sql, array_values($bind)); - } else { - $stmt = $this->query($sql, $bind); - } - $result = $stmt->rowCount(); - return $result; - } - - /** - * Deletes table rows based on a WHERE clause. - * - * @param mixed $table The table to update. - * @param mixed $where DELETE WHERE clause(s). - * @return int The number of affected rows. - */ - public function delete($table, $where = '') - { - $where = $this->_whereExpr($where); - - /** - * Build the DELETE statement - */ - $sql = "DELETE FROM " - . $this->quoteIdentifier($table, true) - . (($where) ? " WHERE $where" : ''); - - /** - * Execute the statement and return the number of affected rows - */ - $stmt = $this->query($sql); - $result = $stmt->rowCount(); - return $result; - } - - /** - * Convert an array, string, or Zend_Db_Expr object - * into a string to put in a WHERE clause. - * - * @param mixed $where - * @return string - */ - protected function _whereExpr($where) - { - if (empty($where)) { - return $where; - } - if (!is_array($where)) { - $where = array($where); - } - foreach ($where as $cond => &$term) { - // is $cond an int? (i.e. Not a condition) - if (is_int($cond)) { - // $term is the full condition - if ($term instanceof Zend_Db_Expr) { - $term = $term->__toString(); - } - } else { - // $cond is the condition with placeholder, - // and $term is quoted into the condition - $term = $this->quoteInto($cond, $term); - } - $term = '(' . $term . ')'; - } - - $where = implode(' AND ', $where); - return $where; - } - - /** - * Creates and returns a new Zend_Db_Select object for this adapter. - * - * @return Zend_Db_Select - */ - public function select() - { - return new Zend_Db_Select($this); - } - - /** - * Get the fetch mode. - * - * @return int - */ - public function getFetchMode() - { - return $this->_fetchMode; - } - - /** - * Fetches all SQL result rows as a sequential array. - * Uses the current fetchMode for the adapter. - * - * @param string|Zend_Db_Select $sql An SQL SELECT statement. - * @param mixed $bind Data to bind into SELECT placeholders. - * @param mixed $fetchMode Override current fetch mode. - * @return array - */ - public function fetchAll($sql, $bind = array(), $fetchMode = null) - { - if ($fetchMode === null) { - $fetchMode = $this->_fetchMode; - } - $stmt = $this->query($sql, $bind); - $result = $stmt->fetchAll($fetchMode); - return $result; - } - - /** - * Fetches the first row of the SQL result. - * Uses the current fetchMode for the adapter. - * - * @param string|Zend_Db_Select $sql An SQL SELECT statement. - * @param mixed $bind Data to bind into SELECT placeholders. - * @param mixed $fetchMode Override current fetch mode. - * @return mixed Array, object, or scalar depending on fetch mode. - */ - public function fetchRow($sql, $bind = array(), $fetchMode = null) - { - if ($fetchMode === null) { - $fetchMode = $this->_fetchMode; - } - $stmt = $this->query($sql, $bind); - $result = $stmt->fetch($fetchMode); - return $result; - } - - /** - * Fetches all SQL result rows as an associative array. - * - * The first column is the key, the entire row array is the - * value. You should construct the query to be sure that - * the first column contains unique values, or else - * rows with duplicate values in the first column will - * overwrite previous data. - * - * @param string|Zend_Db_Select $sql An SQL SELECT statement. - * @param mixed $bind Data to bind into SELECT placeholders. - * @return array - */ - public function fetchAssoc($sql, $bind = array()) - { - $stmt = $this->query($sql, $bind); - $data = array(); - while ($row = $stmt->fetch(Zend_Db::FETCH_ASSOC)) { - $tmp = array_values(array_slice($row, 0, 1)); - $data[$tmp[0]] = $row; - } - return $data; - } - - /** - * Fetches the first column of all SQL result rows as an array. - * - * @param string|Zend_Db_Select $sql An SQL SELECT statement. - * @param mixed $bind Data to bind into SELECT placeholders. - * @return array - */ - public function fetchCol($sql, $bind = array()) - { - $stmt = $this->query($sql, $bind); - $result = $stmt->fetchAll(Zend_Db::FETCH_COLUMN, 0); - return $result; - } - - /** - * Fetches all SQL result rows as an array of key-value pairs. - * - * The first column is the key, the second column is the - * value. - * - * @param string|Zend_Db_Select $sql An SQL SELECT statement. - * @param mixed $bind Data to bind into SELECT placeholders. - * @return array - */ - public function fetchPairs($sql, $bind = array()) - { - $stmt = $this->query($sql, $bind); - $data = array(); - while ($row = $stmt->fetch(Zend_Db::FETCH_NUM)) { - $data[$row[0]] = $row[1]; - } - return $data; - } - - /** - * Fetches the first column of the first row of the SQL result. - * - * @param string|Zend_Db_Select $sql An SQL SELECT statement. - * @param mixed $bind Data to bind into SELECT placeholders. - * @return string - */ - public function fetchOne($sql, $bind = array()) - { - $stmt = $this->query($sql, $bind); - $result = $stmt->fetchColumn(0); - return $result; - } - - /** - * Quote a raw string. - * - * @param string $value Raw string - * @return string Quoted string - */ - protected function _quote($value) - { - if (is_int($value)) { - return $value; - } elseif (is_float($value)) { - return sprintf('%F', $value); - } - return "'" . addcslashes($value, "\000\n\r\\'\"\032") . "'"; - } - - /** - * Safely quotes a value for an SQL statement. - * - * If an array is passed as the value, the array values are quoted - * and then returned as a comma-separated string. - * - * @param mixed $value The value to quote. - * @param mixed $type OPTIONAL the SQL datatype name, or constant, or null. - * @return mixed An SQL-safe quoted value (or string of separated values). - */ - public function quote($value, $type = null) - { - $this->_connect(); - - if ($value instanceof Zend_Db_Select) { - return '(' . $value->assemble() . ')'; - } - - if ($value instanceof Zend_Db_Expr) { - return $value->__toString(); - } - - if (is_array($value)) { - foreach ($value as &$val) { - $val = $this->quote($val, $type); - } - return implode(', ', $value); - } - - if ($type !== null && array_key_exists($type = strtoupper($type), $this->_numericDataTypes)) { - $quotedValue = '0'; - switch ($this->_numericDataTypes[$type]) { - case Zend_Db::INT_TYPE: // 32-bit integer - $quotedValue = (string) intval($value); - break; - case Zend_Db::BIGINT_TYPE: // 64-bit integer - // ANSI SQL-style hex literals (e.g. x'[\dA-F]+') - // are not supported here, because these are string - // literals, not numeric literals. - if (preg_match('/^( - [+-]? # optional sign - (?: - 0[Xx][\da-fA-F]+ # ODBC-style hexadecimal - |\d+ # decimal or octal, or MySQL ZEROFILL decimal - (?:[eE][+-]?\d+)? # optional exponent on decimals or octals - ) - )/x', - (string) $value, $matches)) { - $quotedValue = $matches[1]; - } - break; - case Zend_Db::FLOAT_TYPE: // float or decimal - $quotedValue = sprintf('%F', $value); - } - return $quotedValue; - } - - return $this->_quote($value); - } - - /** - * Quotes a value and places into a piece of text at a placeholder. - * - * The placeholder is a question-mark; all placeholders will be replaced - * with the quoted value. For example: - * - * - * $text = "WHERE date < ?"; - * $date = "2005-01-02"; - * $safe = $sql->quoteInto($text, $date); - * // $safe = "WHERE date < '2005-01-02'" - * - * - * @param string $text The text with a placeholder. - * @param mixed $value The value to quote. - * @param string $type OPTIONAL SQL datatype - * @param integer $count OPTIONAL count of placeholders to replace - * @return string An SQL-safe quoted value placed into the original text. - */ - public function quoteInto($text, $value, $type = null, $count = null) - { - if ($count === null) { - return str_replace('?', $this->quote($value, $type), $text); - } else { - while ($count > 0) { - if (strpos($text, '?') !== false) { - $text = substr_replace($text, $this->quote($value, $type), strpos($text, '?'), 1); - } - --$count; - } - return $text; - } - } - - /** - * Quotes an identifier. - * - * Accepts a string representing a qualified indentifier. For Example: - * - * $adapter->quoteIdentifier('myschema.mytable') - * - * Returns: "myschema"."mytable" - * - * Or, an array of one or more identifiers that may form a qualified identifier: - * - * $adapter->quoteIdentifier(array('myschema','my.table')) - * - * Returns: "myschema"."my.table" - * - * The actual quote character surrounding the identifiers may vary depending on - * the adapter. - * - * @param string|array|Zend_Db_Expr $ident The identifier. - * @param boolean $auto If true, heed the AUTO_QUOTE_IDENTIFIERS config option. - * @return string The quoted identifier. - */ - public function quoteIdentifier($ident, $auto=false) - { - return $this->_quoteIdentifierAs($ident, null, $auto); - } - - /** - * Quote a column identifier and alias. - * - * @param string|array|Zend_Db_Expr $ident The identifier or expression. - * @param string $alias An alias for the column. - * @param boolean $auto If true, heed the AUTO_QUOTE_IDENTIFIERS config option. - * @return string The quoted identifier and alias. - */ - public function quoteColumnAs($ident, $alias, $auto=false) - { - return $this->_quoteIdentifierAs($ident, $alias, $auto); - } - - /** - * Quote a table identifier and alias. - * - * @param string|array|Zend_Db_Expr $ident The identifier or expression. - * @param string $alias An alias for the table. - * @param boolean $auto If true, heed the AUTO_QUOTE_IDENTIFIERS config option. - * @return string The quoted identifier and alias. - */ - public function quoteTableAs($ident, $alias = null, $auto = false) - { - return $this->_quoteIdentifierAs($ident, $alias, $auto); - } - - /** - * Quote an identifier and an optional alias. - * - * @param string|array|Zend_Db_Expr $ident The identifier or expression. - * @param string $alias An optional alias. - * @param boolean $auto If true, heed the AUTO_QUOTE_IDENTIFIERS config option. - * @param string $as The string to add between the identifier/expression and the alias. - * @return string The quoted identifier and alias. - */ - protected function _quoteIdentifierAs($ident, $alias = null, $auto = false, $as = ' AS ') - { - if ($ident instanceof Zend_Db_Expr) { - $quoted = $ident->__toString(); - } elseif ($ident instanceof Zend_Db_Select) { - $quoted = '(' . $ident->assemble() . ')'; - } else { - if (is_string($ident)) { - $ident = explode('.', $ident); - } - if (is_array($ident)) { - $segments = array(); - foreach ($ident as $segment) { - if ($segment instanceof Zend_Db_Expr) { - $segments[] = $segment->__toString(); - } else { - $segments[] = $this->_quoteIdentifier($segment, $auto); - } - } - if ($alias !== null && end($ident) == $alias) { - $alias = null; - } - $quoted = implode('.', $segments); - } else { - $quoted = $this->_quoteIdentifier($ident, $auto); - } - } - if ($alias !== null) { - $quoted .= $as . $this->_quoteIdentifier($alias, $auto); - } - return $quoted; - } - - /** - * Quote an identifier. - * - * @param string $value The identifier or expression. - * @param boolean $auto If true, heed the AUTO_QUOTE_IDENTIFIERS config option. - * @return string The quoted identifier and alias. - */ - protected function _quoteIdentifier($value, $auto=false) - { - if ($auto === false || $this->_autoQuoteIdentifiers === true) { - $q = $this->getQuoteIdentifierSymbol(); - return ($q . str_replace("$q", "$q$q", $value) . $q); - } - return $value; - } - - /** - * Returns the symbol the adapter uses for delimited identifiers. - * - * @return string - */ - public function getQuoteIdentifierSymbol() - { - return '"'; - } - - /** - * Return the most recent value from the specified sequence in the database. - * This is supported only on RDBMS brands that support sequences - * (e.g. Oracle, PostgreSQL, DB2). Other RDBMS brands return null. - * - * @param string $sequenceName - * @return string - */ - public function lastSequenceId($sequenceName) - { - return null; - } - - /** - * Generate a new value from the specified sequence in the database, and return it. - * This is supported only on RDBMS brands that support sequences - * (e.g. Oracle, PostgreSQL, DB2). Other RDBMS brands return null. - * - * @param string $sequenceName - * @return string - */ - public function nextSequenceId($sequenceName) - { - return null; - } - - /** - * Helper method to change the case of the strings used - * when returning result sets in FETCH_ASSOC and FETCH_BOTH - * modes. - * - * This is not intended to be used by application code, - * but the method must be public so the Statement class - * can invoke it. - * - * @param string $key - * @return string - */ - public function foldCase($key) - { - switch ($this->_caseFolding) { - case Zend_Db::CASE_LOWER: - $value = strtolower((string) $key); - break; - case Zend_Db::CASE_UPPER: - $value = strtoupper((string) $key); - break; - case Zend_Db::CASE_NATURAL: - default: - $value = (string) $key; - } - return $value; - } - - /** - * called when object is getting serialized - * This disconnects the DB object that cant be serialized - * - * @throws Zend_Db_Adapter_Exception - * @return array - */ - public function __sleep() - { - if ($this->_allowSerialization == false) { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception(get_class($this) ." is not allowed to be serialized"); - } - $this->_connection = false; - return array_keys(array_diff_key(get_object_vars($this), array('_connection'=>false))); - } - - /** - * called when object is getting unserialized - * - * @return void - */ - public function __wakeup() - { - if ($this->_autoReconnectOnUnserialize == true) { - $this->getConnection(); - } - } - - /** - * Abstract Methods - */ - - /** - * Returns a list of the tables in the database. - * - * @return array - */ - abstract public function listTables(); - - /** - * Returns the column descriptions for a table. - * - * The return value is an associative array keyed by the column name, - * as returned by the RDBMS. - * - * The value of each array element is an associative array - * with the following keys: - * - * SCHEMA_NAME => string; name of database or schema - * TABLE_NAME => string; - * COLUMN_NAME => string; column name - * COLUMN_POSITION => number; ordinal position of column in table - * DATA_TYPE => string; SQL datatype name of column - * DEFAULT => string; default expression of column, null if none - * NULLABLE => boolean; true if column can have nulls - * LENGTH => number; length of CHAR/VARCHAR - * SCALE => number; scale of NUMERIC/DECIMAL - * PRECISION => number; precision of NUMERIC/DECIMAL - * UNSIGNED => boolean; unsigned property of an integer type - * PRIMARY => boolean; true if column is part of the primary key - * PRIMARY_POSITION => integer; position of column in primary key - * - * @param string $tableName - * @param string $schemaName OPTIONAL - * @return array - */ - abstract public function describeTable($tableName, $schemaName = null); - - /** - * Creates a connection to the database. - * - * @return void - */ - abstract protected function _connect(); - - /** - * Test if a connection is active - * - * @return boolean - */ - abstract public function isConnected(); - - /** - * Force the connection to close. - * - * @return void - */ - abstract public function closeConnection(); - - /** - * Prepare a statement and return a PDOStatement-like object. - * - * @param string|Zend_Db_Select $sql SQL query - * @return Zend_Db_Statement|PDOStatement - */ - abstract public function prepare($sql); - - /** - * Gets the last ID generated automatically by an IDENTITY/AUTOINCREMENT column. - * - * As a convention, on RDBMS brands that support sequences - * (e.g. Oracle, PostgreSQL, DB2), this method forms the name of a sequence - * from the arguments and returns the last id generated by that sequence. - * On RDBMS brands that support IDENTITY/AUTOINCREMENT columns, this method - * returns the last value generated for such a column, and the table name - * argument is disregarded. - * - * @param string $tableName OPTIONAL Name of table. - * @param string $primaryKey OPTIONAL Name of primary key column. - * @return string - */ - abstract public function lastInsertId($tableName = null, $primaryKey = null); - - /** - * Begin a transaction. - */ - abstract protected function _beginTransaction(); - - /** - * Commit a transaction. - */ - abstract protected function _commit(); - - /** - * Roll-back a transaction. - */ - abstract protected function _rollBack(); - - /** - * Set the fetch mode. - * - * @param integer $mode - * @return void - * @throws Zend_Db_Adapter_Exception - */ - abstract public function setFetchMode($mode); - - /** - * Adds an adapter-specific LIMIT clause to the SELECT statement. - * - * @param mixed $sql - * @param integer $count - * @param integer $offset - * @return string - */ - abstract public function limit($sql, $count, $offset = 0); - - /** - * Check if the adapter supports real SQL parameters. - * - * @param string $type 'positional' or 'named' - * @return bool - */ - abstract public function supportsParameters($type); - - /** - * Retrieve server version in PHP style - * - * @return string - */ - abstract public function getServerVersion(); -} diff --git a/library/Zend/Db/Adapter/Db2.php b/library/Zend/Db/Adapter/Db2.php deleted file mode 100644 index 7d9864b5..00000000 --- a/library/Zend/Db/Adapter/Db2.php +++ /dev/null @@ -1,840 +0,0 @@ - (string) Connect to the database as this username. - * password => (string) Password associated with the username. - * host => (string) What host to connect to (default 127.0.0.1) - * dbname => (string) The name of the database to user - * protocol => (string) Protocol to use, defaults to "TCPIP" - * port => (integer) Port number to use for TCP/IP if protocol is "TCPIP" - * persistent => (boolean) Set TRUE to use a persistent connection (db2_pconnect) - * os => (string) This should be set to 'i5' if the db is on an os400/i5 - * schema => (string) The default schema the connection should use - * - * @var array - */ - protected $_config = array( - 'dbname' => null, - 'username' => null, - 'password' => null, - 'host' => 'localhost', - 'port' => '50000', - 'protocol' => 'TCPIP', - 'persistent' => false, - 'os' => null, - 'schema' => null - ); - - /** - * Execution mode - * - * @var int execution flag (DB2_AUTOCOMMIT_ON or DB2_AUTOCOMMIT_OFF) - */ - protected $_execute_mode = DB2_AUTOCOMMIT_ON; - - /** - * Default class name for a DB statement. - * - * @var string - */ - protected $_defaultStmtClass = 'Zend_Db_Statement_Db2'; - protected $_isI5 = false; - - /** - * Keys are UPPERCASE SQL datatypes or the constants - * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, or Zend_Db::FLOAT_TYPE. - * - * Values are: - * 0 = 32-bit integer - * 1 = 64-bit integer - * 2 = float or decimal - * - * @var array Associative array of datatypes to values 0, 1, or 2. - */ - protected $_numericDataTypes = array( - Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, - 'INTEGER' => Zend_Db::INT_TYPE, - 'SMALLINT' => Zend_Db::INT_TYPE, - 'BIGINT' => Zend_Db::BIGINT_TYPE, - 'DECIMAL' => Zend_Db::FLOAT_TYPE, - 'NUMERIC' => Zend_Db::FLOAT_TYPE - ); - - /** - * Creates a connection resource. - * - * @return void - */ - protected function _connect() - { - if (is_resource($this->_connection)) { - // connection already exists - return; - } - - if (!extension_loaded('ibm_db2')) { - /** - * @see Zend_Db_Adapter_Db2_Exception - */ - require_once 'Zend/Db/Adapter/Db2/Exception.php'; - throw new Zend_Db_Adapter_Db2_Exception('The IBM DB2 extension is required for this adapter but the extension is not loaded'); - } - - $this->_determineI5(); - if ($this->_config['persistent']) { - // use persistent connection - $conn_func_name = 'db2_pconnect'; - } else { - // use "normal" connection - $conn_func_name = 'db2_connect'; - } - - if (!isset($this->_config['driver_options']['autocommit'])) { - // set execution mode - $this->_config['driver_options']['autocommit'] = &$this->_execute_mode; - } - - if (isset($this->_config['options'][Zend_Db::CASE_FOLDING])) { - $caseAttrMap = array( - Zend_Db::CASE_NATURAL => DB2_CASE_NATURAL, - Zend_Db::CASE_UPPER => DB2_CASE_UPPER, - Zend_Db::CASE_LOWER => DB2_CASE_LOWER - ); - $this->_config['driver_options']['DB2_ATTR_CASE'] = $caseAttrMap[$this->_config['options'][Zend_Db::CASE_FOLDING]]; - } - - if ($this->_isI5 && isset($this->_config['driver_options']['i5_naming'])) { - if ($this->_config['driver_options']['i5_naming']) { - $this->_config['driver_options']['i5_naming'] = DB2_I5_NAMING_ON; - } else { - $this->_config['driver_options']['i5_naming'] = DB2_I5_NAMING_OFF; - } - } - - if ($this->_config['host'] !== 'localhost' && !$this->_isI5) { - // if the host isn't localhost, use extended connection params - $dbname = 'DRIVER={IBM DB2 ODBC DRIVER}' . - ';DATABASE=' . $this->_config['dbname'] . - ';HOSTNAME=' . $this->_config['host'] . - ';PORT=' . $this->_config['port'] . - ';PROTOCOL=' . $this->_config['protocol'] . - ';UID=' . $this->_config['username'] . - ';PWD=' . $this->_config['password'] .';'; - $this->_connection = $conn_func_name( - $dbname, - null, - null, - $this->_config['driver_options'] - ); - } else { - // host is localhost, so use standard connection params - $this->_connection = $conn_func_name( - $this->_config['dbname'], - $this->_config['username'], - $this->_config['password'], - $this->_config['driver_options'] - ); - } - - // check the connection - if (!$this->_connection) { - /** - * @see Zend_Db_Adapter_Db2_Exception - */ - require_once 'Zend/Db/Adapter/Db2/Exception.php'; - throw new Zend_Db_Adapter_Db2_Exception(db2_conn_errormsg(), db2_conn_error()); - } - } - - /** - * Test if a connection is active - * - * @return boolean - */ - public function isConnected() - { - return ((bool) (is_resource($this->_connection) - && get_resource_type($this->_connection) == 'DB2 Connection')); - } - - /** - * Force the connection to close. - * - * @return void - */ - public function closeConnection() - { - if ($this->isConnected()) { - db2_close($this->_connection); - } - $this->_connection = null; - } - - /** - * Returns an SQL statement for preparation. - * - * @param string $sql The SQL statement with placeholders. - * @return Zend_Db_Statement_Db2 - */ - public function prepare($sql) - { - $this->_connect(); - $stmtClass = $this->_defaultStmtClass; - if (!class_exists($stmtClass)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($stmtClass); - } - $stmt = new $stmtClass($this, $sql); - $stmt->setFetchMode($this->_fetchMode); - return $stmt; - } - - /** - * Gets the execution mode - * - * @return int the execution mode (DB2_AUTOCOMMIT_ON or DB2_AUTOCOMMIT_OFF) - */ - public function _getExecuteMode() - { - return $this->_execute_mode; - } - - /** - * @param integer $mode - * @return void - */ - public function _setExecuteMode($mode) - { - switch ($mode) { - case DB2_AUTOCOMMIT_OFF: - case DB2_AUTOCOMMIT_ON: - $this->_execute_mode = $mode; - db2_autocommit($this->_connection, $mode); - break; - default: - /** - * @see Zend_Db_Adapter_Db2_Exception - */ - require_once 'Zend/Db/Adapter/Db2/Exception.php'; - throw new Zend_Db_Adapter_Db2_Exception("execution mode not supported"); - break; - } - } - - /** - * Quote a raw string. - * - * @param string $value Raw string - * @return string Quoted string - */ - protected function _quote($value) - { - if (is_int($value) || is_float($value)) { - return $value; - } - /** - * Use db2_escape_string() if it is present in the IBM DB2 extension. - * But some supported versions of PHP do not include this function, - * so fall back to default quoting in the parent class. - */ - if (function_exists('db2_escape_string')) { - return "'" . db2_escape_string($value) . "'"; - } - return parent::_quote($value); - } - - /** - * @return string - */ - public function getQuoteIdentifierSymbol() - { - $this->_connect(); - $info = db2_server_info($this->_connection); - if ($info) { - $identQuote = $info->IDENTIFIER_QUOTE_CHAR; - } else { - // db2_server_info() does not return result on some i5 OS version - if ($this->_isI5) { - $identQuote ="'"; - } - } - return $identQuote; - } - - /** - * Returns a list of the tables in the database. - * @param string $schema OPTIONAL - * @return array - */ - public function listTables($schema = null) - { - $this->_connect(); - - if ($schema === null && $this->_config['schema'] != null) { - $schema = $this->_config['schema']; - } - - $tables = array(); - - if (!$this->_isI5) { - if ($schema) { - $stmt = db2_tables($this->_connection, null, $schema); - } else { - $stmt = db2_tables($this->_connection); - } - while ($row = db2_fetch_assoc($stmt)) { - $tables[] = $row['TABLE_NAME']; - } - } else { - $tables = $this->_i5listTables($schema); - } - - return $tables; - } - - - /** - * Returns the column descriptions for a table. - * - * The return value is an associative array keyed by the column name, - * as returned by the RDBMS. - * - * The value of each array element is an associative array - * with the following keys: - * - * SCHEMA_NAME => string; name of database or schema - * TABLE_NAME => string; - * COLUMN_NAME => string; column name - * COLUMN_POSITION => number; ordinal position of column in table - * DATA_TYPE => string; SQL datatype name of column - * DEFAULT => string; default expression of column, null if none - * NULLABLE => boolean; true if column can have nulls - * LENGTH => number; length of CHAR/VARCHAR - * SCALE => number; scale of NUMERIC/DECIMAL - * PRECISION => number; precision of NUMERIC/DECIMAL - * UNSIGNED => boolean; unsigned property of an integer type - * DB2 not supports UNSIGNED integer. - * PRIMARY => boolean; true if column is part of the primary key - * PRIMARY_POSITION => integer; position of column in primary key - * IDENTITY => integer; true if column is auto-generated with unique values - * - * @param string $tableName - * @param string $schemaName OPTIONAL - * @return array - */ - public function describeTable($tableName, $schemaName = null) - { - // Ensure the connection is made so that _isI5 is set - $this->_connect(); - - if ($schemaName === null && $this->_config['schema'] != null) { - $schemaName = $this->_config['schema']; - } - - if (!$this->_isI5) { - - $sql = "SELECT DISTINCT c.tabschema, c.tabname, c.colname, c.colno, - c.typename, c.default, c.nulls, c.length, c.scale, - c.identity, tc.type AS tabconsttype, k.colseq - FROM syscat.columns c - LEFT JOIN (syscat.keycoluse k JOIN syscat.tabconst tc - ON (k.tabschema = tc.tabschema - AND k.tabname = tc.tabname - AND tc.type = 'P')) - ON (c.tabschema = k.tabschema - AND c.tabname = k.tabname - AND c.colname = k.colname) - WHERE " - . $this->quoteInto('UPPER(c.tabname) = UPPER(?)', $tableName); - - if ($schemaName) { - $sql .= $this->quoteInto(' AND UPPER(c.tabschema) = UPPER(?)', $schemaName); - } - - $sql .= " ORDER BY c.colno"; - - } else { - - // DB2 On I5 specific query - $sql = "SELECT DISTINCT C.TABLE_SCHEMA, C.TABLE_NAME, C.COLUMN_NAME, C.ORDINAL_POSITION, - C.DATA_TYPE, C.COLUMN_DEFAULT, C.NULLS ,C.LENGTH, C.SCALE, LEFT(C.IDENTITY,1), - LEFT(tc.TYPE, 1) AS tabconsttype, k.COLSEQ - FROM QSYS2.SYSCOLUMNS C - LEFT JOIN (QSYS2.syskeycst k JOIN QSYS2.SYSCST tc - ON (k.TABLE_SCHEMA = tc.TABLE_SCHEMA - AND k.TABLE_NAME = tc.TABLE_NAME - AND LEFT(tc.type,1) = 'P')) - ON (C.TABLE_SCHEMA = k.TABLE_SCHEMA - AND C.TABLE_NAME = k.TABLE_NAME - AND C.COLUMN_NAME = k.COLUMN_NAME) - WHERE " - . $this->quoteInto('UPPER(C.TABLE_NAME) = UPPER(?)', $tableName); - - if ($schemaName) { - $sql .= $this->quoteInto(' AND UPPER(C.TABLE_SCHEMA) = UPPER(?)', $schemaName); - } - - $sql .= " ORDER BY C.ORDINAL_POSITION FOR FETCH ONLY"; - } - - $desc = array(); - $stmt = $this->query($sql); - - /** - * To avoid case issues, fetch using FETCH_NUM - */ - $result = $stmt->fetchAll(Zend_Db::FETCH_NUM); - - /** - * The ordering of columns is defined by the query so we can map - * to variables to improve readability - */ - $tabschema = 0; - $tabname = 1; - $colname = 2; - $colno = 3; - $typename = 4; - $default = 5; - $nulls = 6; - $length = 7; - $scale = 8; - $identityCol = 9; - $tabconstType = 10; - $colseq = 11; - - foreach ($result as $key => $row) { - list ($primary, $primaryPosition, $identity) = array(false, null, false); - if ($row[$tabconstType] == 'P') { - $primary = true; - $primaryPosition = $row[$colseq]; - } - /** - * In IBM DB2, an column can be IDENTITY - * even if it is not part of the PRIMARY KEY. - */ - if ($row[$identityCol] == 'Y') { - $identity = true; - } - - // only colname needs to be case adjusted - $desc[$this->foldCase($row[$colname])] = array( - 'SCHEMA_NAME' => $this->foldCase($row[$tabschema]), - 'TABLE_NAME' => $this->foldCase($row[$tabname]), - 'COLUMN_NAME' => $this->foldCase($row[$colname]), - 'COLUMN_POSITION' => (!$this->_isI5) ? $row[$colno]+1 : $row[$colno], - 'DATA_TYPE' => $row[$typename], - 'DEFAULT' => $row[$default], - 'NULLABLE' => (bool) ($row[$nulls] == 'Y'), - 'LENGTH' => $row[$length], - 'SCALE' => $row[$scale], - 'PRECISION' => ($row[$typename] == 'DECIMAL' ? $row[$length] : 0), - 'UNSIGNED' => false, - 'PRIMARY' => $primary, - 'PRIMARY_POSITION' => $primaryPosition, - 'IDENTITY' => $identity - ); - } - - return $desc; - } - - /** - * Return the most recent value from the specified sequence in the database. - * This is supported only on RDBMS brands that support sequences - * (e.g. Oracle, PostgreSQL, DB2). Other RDBMS brands return null. - * - * @param string $sequenceName - * @return string - */ - public function lastSequenceId($sequenceName) - { - $this->_connect(); - - if (!$this->_isI5) { - $quotedSequenceName = $this->quoteIdentifier($sequenceName, true); - $sql = 'SELECT PREVVAL FOR ' . $quotedSequenceName . ' AS VAL FROM SYSIBM.SYSDUMMY1'; - } else { - $quotedSequenceName = $sequenceName; - $sql = 'SELECT PREVVAL FOR ' . $this->quoteIdentifier($sequenceName, true) . ' AS VAL FROM QSYS2.QSQPTABL'; - } - - $value = $this->fetchOne($sql); - return (string) $value; - } - - /** - * Generate a new value from the specified sequence in the database, and return it. - * This is supported only on RDBMS brands that support sequences - * (e.g. Oracle, PostgreSQL, DB2). Other RDBMS brands return null. - * - * @param string $sequenceName - * @return string - */ - public function nextSequenceId($sequenceName) - { - $this->_connect(); - $sql = 'SELECT NEXTVAL FOR '.$this->quoteIdentifier($sequenceName, true).' AS VAL FROM SYSIBM.SYSDUMMY1'; - $value = $this->fetchOne($sql); - return (string) $value; - } - - /** - * Gets the last ID generated automatically by an IDENTITY/AUTOINCREMENT column. - * - * As a convention, on RDBMS brands that support sequences - * (e.g. Oracle, PostgreSQL, DB2), this method forms the name of a sequence - * from the arguments and returns the last id generated by that sequence. - * On RDBMS brands that support IDENTITY/AUTOINCREMENT columns, this method - * returns the last value generated for such a column, and the table name - * argument is disregarded. - * - * The IDENTITY_VAL_LOCAL() function gives the last generated identity value - * in the current process, even if it was for a GENERATED column. - * - * @param string $tableName OPTIONAL - * @param string $primaryKey OPTIONAL - * @param string $idType OPTIONAL used for i5 platform to define sequence/idenity unique value - * @return string - */ - - public function lastInsertId($tableName = null, $primaryKey = null, $idType = null) - { - $this->_connect(); - - if ($this->_isI5) { - return (string) $this->_i5LastInsertId($tableName, $idType); - } - - if ($tableName !== null) { - $sequenceName = $tableName; - if ($primaryKey) { - $sequenceName .= "_$primaryKey"; - } - $sequenceName .= '_seq'; - return $this->lastSequenceId($sequenceName); - } - - $sql = 'SELECT IDENTITY_VAL_LOCAL() AS VAL FROM SYSIBM.SYSDUMMY1'; - $value = $this->fetchOne($sql); - return (string) $value; - } - - /** - * Begin a transaction. - * - * @return void - */ - protected function _beginTransaction() - { - $this->_setExecuteMode(DB2_AUTOCOMMIT_OFF); - } - - /** - * Commit a transaction. - * - * @return void - */ - protected function _commit() - { - if (!db2_commit($this->_connection)) { - /** - * @see Zend_Db_Adapter_Db2_Exception - */ - require_once 'Zend/Db/Adapter/Db2/Exception.php'; - throw new Zend_Db_Adapter_Db2_Exception( - db2_conn_errormsg($this->_connection), - db2_conn_error($this->_connection)); - } - - $this->_setExecuteMode(DB2_AUTOCOMMIT_ON); - } - - /** - * Rollback a transaction. - * - * @return void - */ - protected function _rollBack() - { - if (!db2_rollback($this->_connection)) { - /** - * @see Zend_Db_Adapter_Db2_Exception - */ - require_once 'Zend/Db/Adapter/Db2/Exception.php'; - throw new Zend_Db_Adapter_Db2_Exception( - db2_conn_errormsg($this->_connection), - db2_conn_error($this->_connection)); - } - $this->_setExecuteMode(DB2_AUTOCOMMIT_ON); - } - - /** - * Set the fetch mode. - * - * @param integer $mode - * @return void - * @throws Zend_Db_Adapter_Db2_Exception - */ - public function setFetchMode($mode) - { - switch ($mode) { - case Zend_Db::FETCH_NUM: // seq array - case Zend_Db::FETCH_ASSOC: // assoc array - case Zend_Db::FETCH_BOTH: // seq+assoc array - case Zend_Db::FETCH_OBJ: // object - $this->_fetchMode = $mode; - break; - case Zend_Db::FETCH_BOUND: // bound to PHP variable - /** - * @see Zend_Db_Adapter_Db2_Exception - */ - require_once 'Zend/Db/Adapter/Db2/Exception.php'; - throw new Zend_Db_Adapter_Db2_Exception('FETCH_BOUND is not supported yet'); - break; - default: - /** - * @see Zend_Db_Adapter_Db2_Exception - */ - require_once 'Zend/Db/Adapter/Db2/Exception.php'; - throw new Zend_Db_Adapter_Db2_Exception("Invalid fetch mode '$mode' specified"); - break; - } - } - - /** - * Adds an adapter-specific LIMIT clause to the SELECT statement. - * - * @param string $sql - * @param integer $count - * @param integer $offset OPTIONAL - * @return string - */ - public function limit($sql, $count, $offset = 0) - { - $count = intval($count); - if ($count <= 0) { - /** - * @see Zend_Db_Adapter_Db2_Exception - */ - require_once 'Zend/Db/Adapter/Db2/Exception.php'; - throw new Zend_Db_Adapter_Db2_Exception("LIMIT argument count=$count is not valid"); - } - - $offset = intval($offset); - if ($offset < 0) { - /** - * @see Zend_Db_Adapter_Db2_Exception - */ - require_once 'Zend/Db/Adapter/Db2/Exception.php'; - throw new Zend_Db_Adapter_Db2_Exception("LIMIT argument offset=$offset is not valid"); - } - - if ($offset == 0) { - $limit_sql = $sql . " FETCH FIRST $count ROWS ONLY"; - return $limit_sql; - } - - /** - * DB2 does not implement the LIMIT clause as some RDBMS do. - * We have to simulate it with subqueries and ROWNUM. - * Unfortunately because we use the column wildcard "*", - * this puts an extra column into the query result set. - */ - $limit_sql = "SELECT z2.* - FROM ( - SELECT ROW_NUMBER() OVER() AS \"ZEND_DB_ROWNUM\", z1.* - FROM ( - " . $sql . " - ) z1 - ) z2 - WHERE z2.zend_db_rownum BETWEEN " . ($offset+1) . " AND " . ($offset+$count); - return $limit_sql; - } - - /** - * Check if the adapter supports real SQL parameters. - * - * @param string $type 'positional' or 'named' - * @return bool - */ - public function supportsParameters($type) - { - if ($type == 'positional') { - return true; - } - - // if its 'named' or anything else - return false; - } - - /** - * Retrieve server version in PHP style - * - * @return string - */ - public function getServerVersion() - { - $this->_connect(); - $server_info = db2_server_info($this->_connection); - if ($server_info !== false) { - $version = $server_info->DBMS_VER; - if ($this->_isI5) { - $version = (int) substr($version, 0, 2) . '.' . (int) substr($version, 2, 2) . '.' . (int) substr($version, 4); - } - return $version; - } else { - return null; - } - } - - /** - * Return whether or not this is running on i5 - * - * @return bool - */ - public function isI5() - { - if ($this->_isI5 === null) { - $this->_determineI5(); - } - - return (bool) $this->_isI5; - } - - /** - * Check the connection parameters according to verify - * type of used OS - * - * @return void - */ - protected function _determineI5() - { - // first us the compiled flag. - $this->_isI5 = (php_uname('s') == 'OS400') ? true : false; - - // if this is set, then us it - if (isset($this->_config['os'])){ - if (strtolower($this->_config['os']) === 'i5') { - $this->_isI5 = true; - } else { - // any other value passed in, its null - $this->_isI5 = false; - } - } - - } - - /** - * Db2 On I5 specific method - * - * Returns a list of the tables in the database . - * Used only for DB2/400. - * - * @return array - */ - protected function _i5listTables($schema = null) - { - //list of i5 libraries. - $tables = array(); - if ($schema) { - $tablesStatement = db2_tables($this->_connection, null, $schema); - while ($rowTables = db2_fetch_assoc($tablesStatement) ) { - if ($rowTables['TABLE_NAME'] !== null) { - $tables[] = $rowTables['TABLE_NAME']; - } - } - } else { - $schemaStatement = db2_tables($this->_connection); - while ($schema = db2_fetch_assoc($schemaStatement)) { - if ($schema['TABLE_SCHEM'] !== null) { - // list of the tables which belongs to the selected library - $tablesStatement = db2_tables($this->_connection, NULL, $schema['TABLE_SCHEM']); - if (is_resource($tablesStatement)) { - while ($rowTables = db2_fetch_assoc($tablesStatement) ) { - if ($rowTables['TABLE_NAME'] !== null) { - $tables[] = $rowTables['TABLE_NAME']; - } - } - } - } - } - } - - return $tables; - } - - protected function _i5LastInsertId($objectName = null, $idType = null) - { - - if ($objectName === null) { - $sql = 'SELECT IDENTITY_VAL_LOCAL() AS VAL FROM QSYS2.QSQPTABL'; - $value = $this->fetchOne($sql); - return $value; - } - - if (strtoupper($idType) === 'S'){ - //check i5_lib option - $sequenceName = $objectName; - return $this->lastSequenceId($sequenceName); - } - - //returns last identity value for the specified table - //if (strtoupper($idType) === 'I') { - $tableName = $objectName; - return $this->fetchOne('SELECT IDENTITY_VAL_LOCAL() from ' . $this->quoteIdentifier($tableName)); - } - -} - - diff --git a/library/Zend/Db/Adapter/Db2/Exception.php b/library/Zend/Db/Adapter/Db2/Exception.php deleted file mode 100644 index 49620703..00000000 --- a/library/Zend/Db/Adapter/Db2/Exception.php +++ /dev/null @@ -1,45 +0,0 @@ -getCode(); - } - parent::__construct($message, $code, $e); - } - - public function hasChainedException() - { - return ($this->_previous !== null); - } - - public function getChainedException() - { - return $this->getPrevious(); - } - -} diff --git a/library/Zend/Db/Adapter/Mysqli.php b/library/Zend/Db/Adapter/Mysqli.php deleted file mode 100644 index ac79cf4a..00000000 --- a/library/Zend/Db/Adapter/Mysqli.php +++ /dev/null @@ -1,556 +0,0 @@ - Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, - 'INT' => Zend_Db::INT_TYPE, - 'INTEGER' => Zend_Db::INT_TYPE, - 'MEDIUMINT' => Zend_Db::INT_TYPE, - 'SMALLINT' => Zend_Db::INT_TYPE, - 'TINYINT' => Zend_Db::INT_TYPE, - 'BIGINT' => Zend_Db::BIGINT_TYPE, - 'SERIAL' => Zend_Db::BIGINT_TYPE, - 'DEC' => Zend_Db::FLOAT_TYPE, - 'DECIMAL' => Zend_Db::FLOAT_TYPE, - 'DOUBLE' => Zend_Db::FLOAT_TYPE, - 'DOUBLE PRECISION' => Zend_Db::FLOAT_TYPE, - 'FIXED' => Zend_Db::FLOAT_TYPE, - 'FLOAT' => Zend_Db::FLOAT_TYPE - ); - - /** - * @var Zend_Db_Statement_Mysqli - */ - protected $_stmt = null; - - /** - * Default class name for a DB statement. - * - * @var string - */ - protected $_defaultStmtClass = 'Zend_Db_Statement_Mysqli'; - - /** - * Quote a raw string. - * - * @param mixed $value Raw string - * - * @return string Quoted string - */ - protected function _quote($value) - { - if (is_int($value) || is_float($value)) { - return $value; - } - $this->_connect(); - return "'" . $this->_connection->real_escape_string($value) . "'"; - } - - /** - * Returns the symbol the adapter uses for delimiting identifiers. - * - * @return string - */ - public function getQuoteIdentifierSymbol() - { - return "`"; - } - - /** - * Returns a list of the tables in the database. - * - * @return array - */ - public function listTables() - { - $result = array(); - // Use mysqli extension API, because SHOW doesn't work - // well as a prepared statement on MySQL 4.1. - $sql = 'SHOW TABLES'; - if ($queryResult = $this->getConnection()->query($sql)) { - while ($row = $queryResult->fetch_row()) { - $result[] = $row[0]; - } - $queryResult->close(); - } else { - /** - * @see Zend_Db_Adapter_Mysqli_Exception - */ - require_once 'Zend/Db/Adapter/Mysqli/Exception.php'; - throw new Zend_Db_Adapter_Mysqli_Exception($this->getConnection()->error); - } - return $result; - } - - /** - * Returns the column descriptions for a table. - * - * The return value is an associative array keyed by the column name, - * as returned by the RDBMS. - * - * The value of each array element is an associative array - * with the following keys: - * - * SCHEMA_NAME => string; name of database or schema - * TABLE_NAME => string; - * COLUMN_NAME => string; column name - * COLUMN_POSITION => number; ordinal position of column in table - * DATA_TYPE => string; SQL datatype name of column - * DEFAULT => string; default expression of column, null if none - * NULLABLE => boolean; true if column can have nulls - * LENGTH => number; length of CHAR/VARCHAR - * SCALE => number; scale of NUMERIC/DECIMAL - * PRECISION => number; precision of NUMERIC/DECIMAL - * UNSIGNED => boolean; unsigned property of an integer type - * PRIMARY => boolean; true if column is part of the primary key - * PRIMARY_POSITION => integer; position of column in primary key - * IDENTITY => integer; true if column is auto-generated with unique values - * - * @param string $tableName - * @param string $schemaName OPTIONAL - * @return array - */ - public function describeTable($tableName, $schemaName = null) - { - /** - * @todo use INFORMATION_SCHEMA someday when - * MySQL's implementation isn't too slow. - */ - - if ($schemaName) { - $sql = 'DESCRIBE ' . $this->quoteIdentifier("$schemaName.$tableName", true); - } else { - $sql = 'DESCRIBE ' . $this->quoteIdentifier($tableName, true); - } - - /** - * Use mysqli extension API, because DESCRIBE doesn't work - * well as a prepared statement on MySQL 4.1. - */ - if ($queryResult = $this->getConnection()->query($sql)) { - while ($row = $queryResult->fetch_assoc()) { - $result[] = $row; - } - $queryResult->close(); - } else { - /** - * @see Zend_Db_Adapter_Mysqli_Exception - */ - require_once 'Zend/Db/Adapter/Mysqli/Exception.php'; - throw new Zend_Db_Adapter_Mysqli_Exception($this->getConnection()->error); - } - - $desc = array(); - - $row_defaults = array( - 'Length' => null, - 'Scale' => null, - 'Precision' => null, - 'Unsigned' => null, - 'Primary' => false, - 'PrimaryPosition' => null, - 'Identity' => false - ); - $i = 1; - $p = 1; - foreach ($result as $key => $row) { - $row = array_merge($row_defaults, $row); - if (preg_match('/unsigned/', $row['Type'])) { - $row['Unsigned'] = true; - } - if (preg_match('/^((?:var)?char)\((\d+)\)/', $row['Type'], $matches)) { - $row['Type'] = $matches[1]; - $row['Length'] = $matches[2]; - } else if (preg_match('/^decimal\((\d+),(\d+)\)/', $row['Type'], $matches)) { - $row['Type'] = 'decimal'; - $row['Precision'] = $matches[1]; - $row['Scale'] = $matches[2]; - } else if (preg_match('/^float\((\d+),(\d+)\)/', $row['Type'], $matches)) { - $row['Type'] = 'float'; - $row['Precision'] = $matches[1]; - $row['Scale'] = $matches[2]; - } else if (preg_match('/^((?:big|medium|small|tiny)?int)\((\d+)\)/', $row['Type'], $matches)) { - $row['Type'] = $matches[1]; - /** - * The optional argument of a MySQL int type is not precision - * or length; it is only a hint for display width. - */ - } - if (strtoupper($row['Key']) == 'PRI') { - $row['Primary'] = true; - $row['PrimaryPosition'] = $p; - if ($row['Extra'] == 'auto_increment') { - $row['Identity'] = true; - } else { - $row['Identity'] = false; - } - ++$p; - } - $desc[$this->foldCase($row['Field'])] = array( - 'SCHEMA_NAME' => null, // @todo - 'TABLE_NAME' => $this->foldCase($tableName), - 'COLUMN_NAME' => $this->foldCase($row['Field']), - 'COLUMN_POSITION' => $i, - 'DATA_TYPE' => $row['Type'], - 'DEFAULT' => $row['Default'], - 'NULLABLE' => (bool) ($row['Null'] == 'YES'), - 'LENGTH' => $row['Length'], - 'SCALE' => $row['Scale'], - 'PRECISION' => $row['Precision'], - 'UNSIGNED' => $row['Unsigned'], - 'PRIMARY' => $row['Primary'], - 'PRIMARY_POSITION' => $row['PrimaryPosition'], - 'IDENTITY' => $row['Identity'] - ); - ++$i; - } - return $desc; - } - - /** - * Creates a connection to the database. - * - * @return void - * @throws Zend_Db_Adapter_Mysqli_Exception - */ - protected function _connect() - { - if ($this->_connection) { - return; - } - - if (!extension_loaded('mysqli')) { - /** - * @see Zend_Db_Adapter_Mysqli_Exception - */ - require_once 'Zend/Db/Adapter/Mysqli/Exception.php'; - throw new Zend_Db_Adapter_Mysqli_Exception('The Mysqli extension is required for this adapter but the extension is not loaded'); - } - - if (isset($this->_config['port'])) { - $port = (integer) $this->_config['port']; - } else { - $port = null; - } - - if (isset($this->_config['socket'])) { - $socket = $this->_config['socket']; - } else { - $socket = null; - } - - $this->_connection = mysqli_init(); - - if(!empty($this->_config['driver_options'])) { - foreach($this->_config['driver_options'] as $option=>$value) { - if(is_string($option)) { - // Suppress warnings here - // Ignore it if it's not a valid constant - $option = @constant(strtoupper($option)); - if($option === null) - continue; - } - mysqli_options($this->_connection, $option, $value); - } - } - - // Suppress connection warnings here. - // Throw an exception instead. - $_isConnected = @mysqli_real_connect( - $this->_connection, - $this->_config['host'], - $this->_config['username'], - $this->_config['password'], - $this->_config['dbname'], - $port, - $socket - ); - - if ($_isConnected === false || mysqli_connect_errno()) { - - $this->closeConnection(); - /** - * @see Zend_Db_Adapter_Mysqli_Exception - */ - require_once 'Zend/Db/Adapter/Mysqli/Exception.php'; - throw new Zend_Db_Adapter_Mysqli_Exception(mysqli_connect_error()); - } - - if (!empty($this->_config['charset'])) { - mysqli_set_charset($this->_connection, $this->_config['charset']); - } - } - - /** - * Test if a connection is active - * - * @return boolean - */ - public function isConnected() - { - return ((bool) ($this->_connection instanceof mysqli)); - } - - /** - * Force the connection to close. - * - * @return void - */ - public function closeConnection() - { - if ($this->isConnected()) { - $this->_connection->close(); - } - $this->_connection = null; - } - - /** - * Prepare a statement and return a PDOStatement-like object. - * - * @param string $sql SQL query - * @return Zend_Db_Statement_Mysqli - */ - public function prepare($sql) - { - $this->_connect(); - if ($this->_stmt) { - $this->_stmt->close(); - } - $stmtClass = $this->_defaultStmtClass; - if (!class_exists($stmtClass)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($stmtClass); - } - $stmt = new $stmtClass($this, $sql); - if ($stmt === false) { - return false; - } - $stmt->setFetchMode($this->_fetchMode); - $this->_stmt = $stmt; - return $stmt; - } - - /** - * Gets the last ID generated automatically by an IDENTITY/AUTOINCREMENT column. - * - * As a convention, on RDBMS brands that support sequences - * (e.g. Oracle, PostgreSQL, DB2), this method forms the name of a sequence - * from the arguments and returns the last id generated by that sequence. - * On RDBMS brands that support IDENTITY/AUTOINCREMENT columns, this method - * returns the last value generated for such a column, and the table name - * argument is disregarded. - * - * MySQL does not support sequences, so $tableName and $primaryKey are ignored. - * - * @param string $tableName OPTIONAL Name of table. - * @param string $primaryKey OPTIONAL Name of primary key column. - * @return string - * @todo Return value should be int? - */ - public function lastInsertId($tableName = null, $primaryKey = null) - { - $mysqli = $this->_connection; - return (string) $mysqli->insert_id; - } - - /** - * Begin a transaction. - * - * @return void - */ - protected function _beginTransaction() - { - $this->_connect(); - $this->_connection->autocommit(false); - } - - /** - * Commit a transaction. - * - * @return void - */ - protected function _commit() - { - $this->_connect(); - $this->_connection->commit(); - $this->_connection->autocommit(true); - } - - /** - * Roll-back a transaction. - * - * @return void - */ - protected function _rollBack() - { - $this->_connect(); - $this->_connection->rollback(); - $this->_connection->autocommit(true); - } - - /** - * Set the fetch mode. - * - * @param int $mode - * @return void - * @throws Zend_Db_Adapter_Mysqli_Exception - */ - public function setFetchMode($mode) - { - switch ($mode) { - case Zend_Db::FETCH_LAZY: - case Zend_Db::FETCH_ASSOC: - case Zend_Db::FETCH_NUM: - case Zend_Db::FETCH_BOTH: - case Zend_Db::FETCH_NAMED: - case Zend_Db::FETCH_OBJ: - $this->_fetchMode = $mode; - break; - case Zend_Db::FETCH_BOUND: // bound to PHP variable - /** - * @see Zend_Db_Adapter_Mysqli_Exception - */ - require_once 'Zend/Db/Adapter/Mysqli/Exception.php'; - throw new Zend_Db_Adapter_Mysqli_Exception('FETCH_BOUND is not supported yet'); - break; - default: - /** - * @see Zend_Db_Adapter_Mysqli_Exception - */ - require_once 'Zend/Db/Adapter/Mysqli/Exception.php'; - throw new Zend_Db_Adapter_Mysqli_Exception("Invalid fetch mode '$mode' specified"); - } - } - - /** - * Adds an adapter-specific LIMIT clause to the SELECT statement. - * - * @param string $sql - * @param int $count - * @param int $offset OPTIONAL - * @return string - */ - public function limit($sql, $count, $offset = 0) - { - $count = intval($count); - if ($count <= 0) { - /** - * @see Zend_Db_Adapter_Mysqli_Exception - */ - require_once 'Zend/Db/Adapter/Mysqli/Exception.php'; - throw new Zend_Db_Adapter_Mysqli_Exception("LIMIT argument count=$count is not valid"); - } - - $offset = intval($offset); - if ($offset < 0) { - /** - * @see Zend_Db_Adapter_Mysqli_Exception - */ - require_once 'Zend/Db/Adapter/Mysqli/Exception.php'; - throw new Zend_Db_Adapter_Mysqli_Exception("LIMIT argument offset=$offset is not valid"); - } - - $sql .= " LIMIT $count"; - if ($offset > 0) { - $sql .= " OFFSET $offset"; - } - - return $sql; - } - - /** - * Check if the adapter supports real SQL parameters. - * - * @param string $type 'positional' or 'named' - * @return bool - */ - public function supportsParameters($type) - { - switch ($type) { - case 'positional': - return true; - case 'named': - default: - return false; - } - } - - /** - * Retrieve server version in PHP style - * - *@return string - */ - public function getServerVersion() - { - $this->_connect(); - $version = $this->_connection->server_version; - $major = (int) ($version / 10000); - $minor = (int) ($version % 10000 / 100); - $revision = (int) ($version % 100); - return $major . '.' . $minor . '.' . $revision; - } -} diff --git a/library/Zend/Db/Adapter/Mysqli/Exception.php b/library/Zend/Db/Adapter/Mysqli/Exception.php deleted file mode 100644 index 6805e04d..00000000 --- a/library/Zend/Db/Adapter/Mysqli/Exception.php +++ /dev/null @@ -1,40 +0,0 @@ - (string) Connect to the database as this username. - * password => (string) Password associated with the username. - * dbname => Either the name of the local Oracle instance, or the - * name of the entry in tnsnames.ora to which you want to connect. - * persistent => (boolean) Set TRUE to use a persistent connection - * @var array - */ - protected $_config = array( - 'dbname' => null, - 'username' => null, - 'password' => null, - 'persistent' => false - ); - - /** - * Keys are UPPERCASE SQL datatypes or the constants - * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, or Zend_Db::FLOAT_TYPE. - * - * Values are: - * 0 = 32-bit integer - * 1 = 64-bit integer - * 2 = float or decimal - * - * @var array Associative array of datatypes to values 0, 1, or 2. - */ - protected $_numericDataTypes = array( - Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, - 'BINARY_DOUBLE' => Zend_Db::FLOAT_TYPE, - 'BINARY_FLOAT' => Zend_Db::FLOAT_TYPE, - 'NUMBER' => Zend_Db::FLOAT_TYPE, - ); - - /** - * @var integer - */ - protected $_execute_mode = null; - - /** - * Default class name for a DB statement. - * - * @var string - */ - protected $_defaultStmtClass = 'Zend_Db_Statement_Oracle'; - - /** - * Check if LOB field are returned as string - * instead of OCI-Lob object - * - * @var boolean - */ - protected $_lobAsString = null; - - /** - * Creates a connection resource. - * - * @return void - * @throws Zend_Db_Adapter_Oracle_Exception - */ - protected function _connect() - { - if (is_resource($this->_connection)) { - // connection already exists - return; - } - - if (!extension_loaded('oci8')) { - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Adapter/Oracle/Exception.php'; - throw new Zend_Db_Adapter_Oracle_Exception('The OCI8 extension is required for this adapter but the extension is not loaded'); - } - - $this->_setExecuteMode(OCI_COMMIT_ON_SUCCESS); - - $connectionFuncName = ($this->_config['persistent'] == true) ? 'oci_pconnect' : 'oci_connect'; - - $this->_connection = @$connectionFuncName( - $this->_config['username'], - $this->_config['password'], - $this->_config['dbname'], - $this->_config['charset']); - - // check the connection - if (!$this->_connection) { - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Adapter/Oracle/Exception.php'; - throw new Zend_Db_Adapter_Oracle_Exception(oci_error()); - } - } - - /** - * Test if a connection is active - * - * @return boolean - */ - public function isConnected() - { - return ((bool) (is_resource($this->_connection) - && (get_resource_type($this->_connection) == 'oci8 connection' - || get_resource_type($this->_connection) == 'oci8 persistent connection'))); - } - - /** - * Force the connection to close. - * - * @return void - */ - public function closeConnection() - { - if ($this->isConnected()) { - oci_close($this->_connection); - } - $this->_connection = null; - } - - /** - * Activate/deactivate return of LOB as string - * - * @param string $lob_as_string - * @return Zend_Db_Adapter_Oracle - */ - public function setLobAsString($lobAsString) - { - $this->_lobAsString = (bool) $lobAsString; - return $this; - } - - /** - * Return whether or not LOB are returned as string - * - * @return boolean - */ - public function getLobAsString() - { - if ($this->_lobAsString === null) { - // if never set by user, we use driver option if it exists otherwise false - if (isset($this->_config['driver_options']) && - isset($this->_config['driver_options']['lob_as_string'])) { - $this->_lobAsString = (bool) $this->_config['driver_options']['lob_as_string']; - } else { - $this->_lobAsString = false; - } - } - return $this->_lobAsString; - } - - /** - * Returns an SQL statement for preparation. - * - * @param string $sql The SQL statement with placeholders. - * @return Zend_Db_Statement_Oracle - */ - public function prepare($sql) - { - $this->_connect(); - $stmtClass = $this->_defaultStmtClass; - if (!class_exists($stmtClass)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($stmtClass); - } - $stmt = new $stmtClass($this, $sql); - if ($stmt instanceof Zend_Db_Statement_Oracle) { - $stmt->setLobAsString($this->getLobAsString()); - } - $stmt->setFetchMode($this->_fetchMode); - return $stmt; - } - - /** - * Quote a raw string. - * - * @param string $value Raw string - * @return string Quoted string - */ - protected function _quote($value) - { - if (is_int($value) || is_float($value)) { - return $value; - } - $value = str_replace("'", "''", $value); - return "'" . addcslashes($value, "\000\n\r\\\032") . "'"; - } - - /** - * Quote a table identifier and alias. - * - * @param string|array|Zend_Db_Expr $ident The identifier or expression. - * @param string $alias An alias for the table. - * @param boolean $auto If true, heed the AUTO_QUOTE_IDENTIFIERS config option. - * @return string The quoted identifier and alias. - */ - public function quoteTableAs($ident, $alias = null, $auto = false) - { - // Oracle doesn't allow the 'AS' keyword between the table identifier/expression and alias. - return $this->_quoteIdentifierAs($ident, $alias, $auto, ' '); - } - - /** - * Return the most recent value from the specified sequence in the database. - * This is supported only on RDBMS brands that support sequences - * (e.g. Oracle, PostgreSQL, DB2). Other RDBMS brands return null. - * - * @param string $sequenceName - * @return string - */ - public function lastSequenceId($sequenceName) - { - $this->_connect(); - $sql = 'SELECT '.$this->quoteIdentifier($sequenceName, true).'.CURRVAL FROM dual'; - $value = $this->fetchOne($sql); - return $value; - } - - /** - * Generate a new value from the specified sequence in the database, and return it. - * This is supported only on RDBMS brands that support sequences - * (e.g. Oracle, PostgreSQL, DB2). Other RDBMS brands return null. - * - * @param string $sequenceName - * @return string - */ - public function nextSequenceId($sequenceName) - { - $this->_connect(); - $sql = 'SELECT '.$this->quoteIdentifier($sequenceName, true).'.NEXTVAL FROM dual'; - $value = $this->fetchOne($sql); - return $value; - } - - /** - * Gets the last ID generated automatically by an IDENTITY/AUTOINCREMENT column. - * - * As a convention, on RDBMS brands that support sequences - * (e.g. Oracle, PostgreSQL, DB2), this method forms the name of a sequence - * from the arguments and returns the last id generated by that sequence. - * On RDBMS brands that support IDENTITY/AUTOINCREMENT columns, this method - * returns the last value generated for such a column, and the table name - * argument is disregarded. - * - * Oracle does not support IDENTITY columns, so if the sequence is not - * specified, this method returns null. - * - * @param string $tableName OPTIONAL Name of table. - * @param string $primaryKey OPTIONAL Name of primary key column. - * @return string - */ - public function lastInsertId($tableName = null, $primaryKey = null) - { - if ($tableName !== null) { - $sequenceName = $tableName; - if ($primaryKey) { - $sequenceName .= "_$primaryKey"; - } - $sequenceName .= '_seq'; - return $this->lastSequenceId($sequenceName); - } - - // No support for IDENTITY columns; return null - return null; - } - - /** - * Returns a list of the tables in the database. - * - * @return array - */ - public function listTables() - { - $this->_connect(); - $data = $this->fetchCol('SELECT table_name FROM all_tables'); - return $data; - } - - /** - * Returns the column descriptions for a table. - * - * The return value is an associative array keyed by the column name, - * as returned by the RDBMS. - * - * The value of each array element is an associative array - * with the following keys: - * - * SCHEMA_NAME => string; name of schema - * TABLE_NAME => string; - * COLUMN_NAME => string; column name - * COLUMN_POSITION => number; ordinal position of column in table - * DATA_TYPE => string; SQL datatype name of column - * DEFAULT => string; default expression of column, null if none - * NULLABLE => boolean; true if column can have nulls - * LENGTH => number; length of CHAR/VARCHAR - * SCALE => number; scale of NUMERIC/DECIMAL - * PRECISION => number; precision of NUMERIC/DECIMAL - * UNSIGNED => boolean; unsigned property of an integer type - * PRIMARY => boolean; true if column is part of the primary key - * PRIMARY_POSITION => integer; position of column in primary key - * IDENTITY => integer; true if column is auto-generated with unique values - * - * @todo Discover integer unsigned property. - * - * @param string $tableName - * @param string $schemaName OPTIONAL - * @return array - */ - public function describeTable($tableName, $schemaName = null) - { - $version = $this->getServerVersion(); - if (($version === null) || version_compare($version, '9.0.0', '>=')) { - $sql = "SELECT TC.TABLE_NAME, TC.OWNER, TC.COLUMN_NAME, TC.DATA_TYPE, - TC.DATA_DEFAULT, TC.NULLABLE, TC.COLUMN_ID, TC.DATA_LENGTH, - TC.DATA_SCALE, TC.DATA_PRECISION, C.CONSTRAINT_TYPE, CC.POSITION - FROM ALL_TAB_COLUMNS TC - LEFT JOIN (ALL_CONS_COLUMNS CC JOIN ALL_CONSTRAINTS C - ON (CC.CONSTRAINT_NAME = C.CONSTRAINT_NAME AND CC.TABLE_NAME = C.TABLE_NAME AND CC.OWNER = C.OWNER AND C.CONSTRAINT_TYPE = 'P')) - ON TC.TABLE_NAME = CC.TABLE_NAME AND TC.COLUMN_NAME = CC.COLUMN_NAME - WHERE UPPER(TC.TABLE_NAME) = UPPER(:TBNAME)"; - $bind[':TBNAME'] = $tableName; - if ($schemaName) { - $sql .= ' AND UPPER(TC.OWNER) = UPPER(:SCNAME)'; - $bind[':SCNAME'] = $schemaName; - } - $sql .= ' ORDER BY TC.COLUMN_ID'; - } else { - $subSql="SELECT AC.OWNER, AC.TABLE_NAME, ACC.COLUMN_NAME, AC.CONSTRAINT_TYPE, ACC.POSITION - from ALL_CONSTRAINTS AC, ALL_CONS_COLUMNS ACC - WHERE ACC.CONSTRAINT_NAME = AC.CONSTRAINT_NAME - AND ACC.TABLE_NAME = AC.TABLE_NAME - AND ACC.OWNER = AC.OWNER - AND AC.CONSTRAINT_TYPE = 'P' - AND UPPER(AC.TABLE_NAME) = UPPER(:TBNAME)"; - $bind[':TBNAME'] = $tableName; - if ($schemaName) { - $subSql .= ' AND UPPER(ACC.OWNER) = UPPER(:SCNAME)'; - $bind[':SCNAME'] = $schemaName; - } - $sql="SELECT TC.TABLE_NAME, TC.OWNER, TC.COLUMN_NAME, TC.DATA_TYPE, - TC.DATA_DEFAULT, TC.NULLABLE, TC.COLUMN_ID, TC.DATA_LENGTH, - TC.DATA_SCALE, TC.DATA_PRECISION, CC.CONSTRAINT_TYPE, CC.POSITION - FROM ALL_TAB_COLUMNS TC, ($subSql) CC - WHERE UPPER(TC.TABLE_NAME) = UPPER(:TBNAME) - AND TC.OWNER = CC.OWNER(+) AND TC.TABLE_NAME = CC.TABLE_NAME(+) AND TC.COLUMN_NAME = CC.COLUMN_NAME(+)"; - if ($schemaName) { - $sql .= ' AND UPPER(TC.OWNER) = UPPER(:SCNAME)'; - } - $sql .= ' ORDER BY TC.COLUMN_ID'; - } - - $stmt = $this->query($sql, $bind); - - /** - * Use FETCH_NUM so we are not dependent on the CASE attribute of the PDO connection - */ - $result = $stmt->fetchAll(Zend_Db::FETCH_NUM); - - $table_name = 0; - $owner = 1; - $column_name = 2; - $data_type = 3; - $data_default = 4; - $nullable = 5; - $column_id = 6; - $data_length = 7; - $data_scale = 8; - $data_precision = 9; - $constraint_type = 10; - $position = 11; - - $desc = array(); - foreach ($result as $key => $row) { - list ($primary, $primaryPosition, $identity) = array(false, null, false); - if ($row[$constraint_type] == 'P') { - $primary = true; - $primaryPosition = $row[$position]; - /** - * Oracle does not support auto-increment keys. - */ - $identity = false; - } - $desc[$this->foldCase($row[$column_name])] = array( - 'SCHEMA_NAME' => $this->foldCase($row[$owner]), - 'TABLE_NAME' => $this->foldCase($row[$table_name]), - 'COLUMN_NAME' => $this->foldCase($row[$column_name]), - 'COLUMN_POSITION' => $row[$column_id], - 'DATA_TYPE' => $row[$data_type], - 'DEFAULT' => $row[$data_default], - 'NULLABLE' => (bool) ($row[$nullable] == 'Y'), - 'LENGTH' => $row[$data_length], - 'SCALE' => $row[$data_scale], - 'PRECISION' => $row[$data_precision], - 'UNSIGNED' => null, // @todo - 'PRIMARY' => $primary, - 'PRIMARY_POSITION' => $primaryPosition, - 'IDENTITY' => $identity - ); - } - return $desc; - } - - /** - * Leave autocommit mode and begin a transaction. - * - * @return void - */ - protected function _beginTransaction() - { - $this->_setExecuteMode(OCI_DEFAULT); - } - - /** - * Commit a transaction and return to autocommit mode. - * - * @return void - * @throws Zend_Db_Adapter_Oracle_Exception - */ - protected function _commit() - { - if (!oci_commit($this->_connection)) { - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Adapter/Oracle/Exception.php'; - throw new Zend_Db_Adapter_Oracle_Exception(oci_error($this->_connection)); - } - $this->_setExecuteMode(OCI_COMMIT_ON_SUCCESS); - } - - /** - * Roll back a transaction and return to autocommit mode. - * - * @return void - * @throws Zend_Db_Adapter_Oracle_Exception - */ - protected function _rollBack() - { - if (!oci_rollback($this->_connection)) { - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Adapter/Oracle/Exception.php'; - throw new Zend_Db_Adapter_Oracle_Exception(oci_error($this->_connection)); - } - $this->_setExecuteMode(OCI_COMMIT_ON_SUCCESS); - } - - /** - * Set the fetch mode. - * - * @todo Support FETCH_CLASS and FETCH_INTO. - * - * @param integer $mode A fetch mode. - * @return void - * @throws Zend_Db_Adapter_Oracle_Exception - */ - public function setFetchMode($mode) - { - switch ($mode) { - case Zend_Db::FETCH_NUM: // seq array - case Zend_Db::FETCH_ASSOC: // assoc array - case Zend_Db::FETCH_BOTH: // seq+assoc array - case Zend_Db::FETCH_OBJ: // object - $this->_fetchMode = $mode; - break; - case Zend_Db::FETCH_BOUND: // bound to PHP variable - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Adapter/Oracle/Exception.php'; - throw new Zend_Db_Adapter_Oracle_Exception('FETCH_BOUND is not supported yet'); - break; - default: - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Adapter/Oracle/Exception.php'; - throw new Zend_Db_Adapter_Oracle_Exception("Invalid fetch mode '$mode' specified"); - break; - } - } - - /** - * Adds an adapter-specific LIMIT clause to the SELECT statement. - * - * @param string $sql - * @param integer $count - * @param integer $offset OPTIONAL - * @return string - * @throws Zend_Db_Adapter_Oracle_Exception - */ - public function limit($sql, $count, $offset = 0) - { - $count = intval($count); - if ($count <= 0) { - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Adapter/Oracle/Exception.php'; - throw new Zend_Db_Adapter_Oracle_Exception("LIMIT argument count=$count is not valid"); - } - - $offset = intval($offset); - if ($offset < 0) { - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Adapter/Oracle/Exception.php'; - throw new Zend_Db_Adapter_Oracle_Exception("LIMIT argument offset=$offset is not valid"); - } - - /** - * Oracle does not implement the LIMIT clause as some RDBMS do. - * We have to simulate it with subqueries and ROWNUM. - * Unfortunately because we use the column wildcard "*", - * this puts an extra column into the query result set. - */ - $limit_sql = "SELECT z2.* - FROM ( - SELECT z1.*, ROWNUM AS \"zend_db_rownum\" - FROM ( - " . $sql . " - ) z1 - ) z2 - WHERE z2.\"zend_db_rownum\" BETWEEN " . ($offset+1) . " AND " . ($offset+$count); - return $limit_sql; - } - - /** - * @param integer $mode - * @throws Zend_Db_Adapter_Oracle_Exception - */ - private function _setExecuteMode($mode) - { - switch($mode) { - case OCI_COMMIT_ON_SUCCESS: - case OCI_DEFAULT: - case OCI_DESCRIBE_ONLY: - $this->_execute_mode = $mode; - break; - default: - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Adapter/Oracle/Exception.php'; - throw new Zend_Db_Adapter_Oracle_Exception("Invalid execution mode '$mode' specified"); - break; - } - } - - /** - * @return int - */ - public function _getExecuteMode() - { - return $this->_execute_mode; - } - - /** - * Check if the adapter supports real SQL parameters. - * - * @param string $type 'positional' or 'named' - * @return bool - */ - public function supportsParameters($type) - { - switch ($type) { - case 'named': - return true; - case 'positional': - default: - return false; - } - } - - /** - * Retrieve server version in PHP style - * - * @return string - */ - public function getServerVersion() - { - $this->_connect(); - $version = oci_server_version($this->_connection); - if ($version !== false) { - $matches = null; - if (preg_match('/((?:[0-9]{1,2}\.){1,3}[0-9]{1,2})/', $version, $matches)) { - return $matches[1]; - } else { - return null; - } - } else { - return null; - } - } -} diff --git a/library/Zend/Db/Adapter/Oracle/Exception.php b/library/Zend/Db/Adapter/Oracle/Exception.php deleted file mode 100644 index c04aa585..00000000 --- a/library/Zend/Db/Adapter/Oracle/Exception.php +++ /dev/null @@ -1,60 +0,0 @@ -message = $error['code'] .' '. $error['message']; - } else { - $this->message = $error['code'] .' '. $error['message']." " - . substr($error['sqltext'], 0, $error['offset']) - . "*" - . substr($error['sqltext'], $error['offset']); - } - $this->code = $error['code']; - } else if (is_string($error)) { - $this->message = $error; - } - if (!$this->code && $code) { - $this->code = $code; - } - } -} diff --git a/library/Zend/Db/Adapter/Pdo/Abstract.php b/library/Zend/Db/Adapter/Pdo/Abstract.php deleted file mode 100644 index fe6f5f9f..00000000 --- a/library/Zend/Db/Adapter/Pdo/Abstract.php +++ /dev/null @@ -1,401 +0,0 @@ -_config settings. - * - * @return string - */ - protected function _dsn() - { - // baseline of DSN parts - $dsn = $this->_config; - - // don't pass the username, password, charset, persistent and driver_options in the DSN - unset($dsn['username']); - unset($dsn['password']); - unset($dsn['options']); - unset($dsn['charset']); - unset($dsn['persistent']); - unset($dsn['driver_options']); - - // use all remaining parts in the DSN - foreach ($dsn as $key => $val) { - $dsn[$key] = "$key=$val"; - } - - return $this->_pdoType . ':' . implode(';', $dsn); - } - - /** - * Creates a PDO object and connects to the database. - * - * @return void - * @throws Zend_Db_Adapter_Exception - */ - protected function _connect() - { - // if we already have a PDO object, no need to re-connect. - if ($this->_connection) { - return; - } - - // get the dsn first, because some adapters alter the $_pdoType - $dsn = $this->_dsn(); - - // check for PDO extension - if (!extension_loaded('pdo')) { - /** - * @see Zend_Db_Adapter_Exception - */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception('The PDO extension is required for this adapter but the extension is not loaded'); - } - - // check the PDO driver is available - if (!in_array($this->_pdoType, PDO::getAvailableDrivers())) { - /** - * @see Zend_Db_Adapter_Exception - */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception('The ' . $this->_pdoType . ' driver is not currently installed'); - } - - // create PDO connection - $q = $this->_profiler->queryStart('connect', Zend_Db_Profiler::CONNECT); - - // add the persistence flag if we find it in our config array - if (isset($this->_config['persistent']) && ($this->_config['persistent'] == true)) { - $this->_config['driver_options'][PDO::ATTR_PERSISTENT] = true; - } - - try { - $this->_connection = new PDO( - $dsn, - $this->_config['username'], - $this->_config['password'], - $this->_config['driver_options'] - ); - - $this->_profiler->queryEnd($q); - - // set the PDO connection to perform case-folding on array keys, or not - $this->_connection->setAttribute(PDO::ATTR_CASE, $this->_caseFolding); - - // always use exceptions. - $this->_connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); - - } catch (PDOException $e) { - /** - * @see Zend_Db_Adapter_Exception - */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception($e->getMessage(), $e->getCode(), $e); - } - - } - - /** - * Test if a connection is active - * - * @return boolean - */ - public function isConnected() - { - return ((bool) ($this->_connection instanceof PDO)); - } - - /** - * Force the connection to close. - * - * @return void - */ - public function closeConnection() - { - $this->_connection = null; - } - - /** - * Prepares an SQL statement. - * - * @param string $sql The SQL statement with placeholders. - * @param array $bind An array of data to bind to the placeholders. - * @return PDOStatement - */ - public function prepare($sql) - { - $this->_connect(); - $stmtClass = $this->_defaultStmtClass; - if (!class_exists($stmtClass)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($stmtClass); - } - $stmt = new $stmtClass($this, $sql); - $stmt->setFetchMode($this->_fetchMode); - return $stmt; - } - - /** - * Gets the last ID generated automatically by an IDENTITY/AUTOINCREMENT column. - * - * As a convention, on RDBMS brands that support sequences - * (e.g. Oracle, PostgreSQL, DB2), this method forms the name of a sequence - * from the arguments and returns the last id generated by that sequence. - * On RDBMS brands that support IDENTITY/AUTOINCREMENT columns, this method - * returns the last value generated for such a column, and the table name - * argument is disregarded. - * - * On RDBMS brands that don't support sequences, $tableName and $primaryKey - * are ignored. - * - * @param string $tableName OPTIONAL Name of table. - * @param string $primaryKey OPTIONAL Name of primary key column. - * @return string - */ - public function lastInsertId($tableName = null, $primaryKey = null) - { - $this->_connect(); - return $this->_connection->lastInsertId(); - } - - /** - * Special handling for PDO query(). - * All bind parameter names must begin with ':' - * - * @param string|Zend_Db_Select $sql The SQL statement with placeholders. - * @param array $bind An array of data to bind to the placeholders. - * @return Zend_Db_Statement_Pdo - * @throws Zend_Db_Adapter_Exception To re-throw PDOException. - */ - public function query($sql, $bind = array()) - { - if (empty($bind) && $sql instanceof Zend_Db_Select) { - $bind = $sql->getBind(); - } - - if (is_array($bind)) { - foreach ($bind as $name => $value) { - if (!is_int($name) && !preg_match('/^:/', $name)) { - $newName = ":$name"; - unset($bind[$name]); - $bind[$newName] = $value; - } - } - } - - try { - return parent::query($sql, $bind); - } catch (PDOException $e) { - /** - * @see Zend_Db_Statement_Exception - */ - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Executes an SQL statement and return the number of affected rows - * - * @param mixed $sql The SQL statement with placeholders. - * May be a string or Zend_Db_Select. - * @return integer Number of rows that were modified - * or deleted by the SQL statement - */ - public function exec($sql) - { - if ($sql instanceof Zend_Db_Select) { - $sql = $sql->assemble(); - } - - try { - $affected = $this->getConnection()->exec($sql); - - if ($affected === false) { - $errorInfo = $this->getConnection()->errorInfo(); - /** - * @see Zend_Db_Adapter_Exception - */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception($errorInfo[2]); - } - - return $affected; - } catch (PDOException $e) { - /** - * @see Zend_Db_Adapter_Exception - */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Quote a raw string. - * - * @param string $value Raw string - * @return string Quoted string - */ - protected function _quote($value) - { - if (is_int($value) || is_float($value)) { - return $value; - } - $this->_connect(); - return $this->_connection->quote($value); - } - - /** - * Begin a transaction. - */ - protected function _beginTransaction() - { - $this->_connect(); - $this->_connection->beginTransaction(); - } - - /** - * Commit a transaction. - */ - protected function _commit() - { - $this->_connect(); - $this->_connection->commit(); - } - - /** - * Roll-back a transaction. - */ - protected function _rollBack() { - $this->_connect(); - $this->_connection->rollBack(); - } - - /** - * Set the PDO fetch mode. - * - * @todo Support FETCH_CLASS and FETCH_INTO. - * - * @param int $mode A PDO fetch mode. - * @return void - * @throws Zend_Db_Adapter_Exception - */ - public function setFetchMode($mode) - { - //check for PDO extension - if (!extension_loaded('pdo')) { - /** - * @see Zend_Db_Adapter_Exception - */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception('The PDO extension is required for this adapter but the extension is not loaded'); - } - switch ($mode) { - case PDO::FETCH_LAZY: - case PDO::FETCH_ASSOC: - case PDO::FETCH_NUM: - case PDO::FETCH_BOTH: - case PDO::FETCH_NAMED: - case PDO::FETCH_OBJ: - $this->_fetchMode = $mode; - break; - default: - /** - * @see Zend_Db_Adapter_Exception - */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("Invalid fetch mode '$mode' specified"); - break; - } - } - - /** - * Check if the adapter supports real SQL parameters. - * - * @param string $type 'positional' or 'named' - * @return bool - */ - public function supportsParameters($type) - { - switch ($type) { - case 'positional': - case 'named': - default: - return true; - } - } - - /** - * Retrieve server version in PHP style - * - * @return string - */ - public function getServerVersion() - { - $this->_connect(); - try { - $version = $this->_connection->getAttribute(PDO::ATTR_SERVER_VERSION); - } catch (PDOException $e) { - // In case of the driver doesn't support getting attributes - return null; - } - $matches = null; - if (preg_match('/((?:[0-9]{1,2}\.){1,3}[0-9]{1,2})/', $version, $matches)) { - return $matches[1]; - } else { - return null; - } - } -} - diff --git a/library/Zend/Db/Adapter/Pdo/Ibm.php b/library/Zend/Db/Adapter/Pdo/Ibm.php deleted file mode 100644 index b4898b8f..00000000 --- a/library/Zend/Db/Adapter/Pdo/Ibm.php +++ /dev/null @@ -1,360 +0,0 @@ - Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, - 'INTEGER' => Zend_Db::INT_TYPE, - 'SMALLINT' => Zend_Db::INT_TYPE, - 'BIGINT' => Zend_Db::BIGINT_TYPE, - 'DECIMAL' => Zend_Db::FLOAT_TYPE, - 'DEC' => Zend_Db::FLOAT_TYPE, - 'REAL' => Zend_Db::FLOAT_TYPE, - 'NUMERIC' => Zend_Db::FLOAT_TYPE, - 'DOUBLE PRECISION' => Zend_Db::FLOAT_TYPE, - 'FLOAT' => Zend_Db::FLOAT_TYPE - ); - - /** - * Creates a PDO object and connects to the database. - * - * The IBM data server is set. - * Current options are DB2 or IDS - * @todo also differentiate between z/OS and i/5 - * - * @return void - * @throws Zend_Db_Adapter_Exception - */ - public function _connect() - { - if ($this->_connection) { - return; - } - parent::_connect(); - - $this->getConnection()->setAttribute(Zend_Db::ATTR_STRINGIFY_FETCHES, true); - - try { - if ($this->_serverType === null) { - $server = substr($this->getConnection()->getAttribute(PDO::ATTR_SERVER_INFO), 0, 3); - - switch ($server) { - case 'DB2': - $this->_serverType = new Zend_Db_Adapter_Pdo_Ibm_Db2($this); - - // Add DB2-specific numeric types - $this->_numericDataTypes['DECFLOAT'] = Zend_Db::FLOAT_TYPE; - $this->_numericDataTypes['DOUBLE'] = Zend_Db::FLOAT_TYPE; - $this->_numericDataTypes['NUM'] = Zend_Db::FLOAT_TYPE; - - break; - case 'IDS': - $this->_serverType = new Zend_Db_Adapter_Pdo_Ibm_Ids($this); - - // Add IDS-specific numeric types - $this->_numericDataTypes['SERIAL'] = Zend_Db::INT_TYPE; - $this->_numericDataTypes['SERIAL8'] = Zend_Db::BIGINT_TYPE; - $this->_numericDataTypes['INT8'] = Zend_Db::BIGINT_TYPE; - $this->_numericDataTypes['SMALLFLOAT'] = Zend_Db::FLOAT_TYPE; - $this->_numericDataTypes['MONEY'] = Zend_Db::FLOAT_TYPE; - - break; - } - } - } catch (PDOException $e) { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - $error = strpos($e->getMessage(), 'driver does not support that attribute'); - if ($error) { - throw new Zend_Db_Adapter_Exception("PDO_IBM driver extension is downlevel. Please use driver release version 1.2.1 or later", 0, $e); - } else { - throw new Zend_Db_Adapter_Exception($e->getMessage(), $e->getCode(), $e); - } - } - } - - /** - * Creates a PDO DSN for the adapter from $this->_config settings. - * - * @return string - */ - protected function _dsn() - { - $this->_checkRequiredOptions($this->_config); - - // check if using full connection string - if (array_key_exists('host', $this->_config)) { - $dsn = ';DATABASE=' . $this->_config['dbname'] - . ';HOSTNAME=' . $this->_config['host'] - . ';PORT=' . $this->_config['port'] - // PDO_IBM supports only DB2 TCPIP protocol - . ';PROTOCOL=' . 'TCPIP;'; - } else { - // catalogued connection - $dsn = $this->_config['dbname']; - } - return $this->_pdoType . ': ' . $dsn; - } - - /** - * Checks required options - * - * @param array $config - * @throws Zend_Db_Adapter_Exception - * @return void - */ - protected function _checkRequiredOptions(array $config) - { - parent::_checkRequiredOptions($config); - - if (array_key_exists('host', $this->_config) && - !array_key_exists('port', $config)) { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("Configuration must have a key for 'port' when 'host' is specified"); - } - } - - /** - * Prepares an SQL statement. - * - * @param string $sql The SQL statement with placeholders. - * @param array $bind An array of data to bind to the placeholders. - * @return PDOStatement - */ - public function prepare($sql) - { - $this->_connect(); - $stmtClass = $this->_defaultStmtClass; - $stmt = new $stmtClass($this, $sql); - $stmt->setFetchMode($this->_fetchMode); - return $stmt; - } - - /** - * Returns a list of the tables in the database. - * - * @return array - */ - public function listTables() - { - $this->_connect(); - return $this->_serverType->listTables(); - } - - /** - * Returns the column descriptions for a table. - * - * The return value is an associative array keyed by the column name, - * as returned by the RDBMS. - * - * The value of each array element is an associative array - * with the following keys: - * - * SCHEMA_NAME => string; name of database or schema - * TABLE_NAME => string; - * COLUMN_NAME => string; column name - * COLUMN_POSITION => number; ordinal position of column in table - * DATA_TYPE => string; SQL datatype name of column - * DEFAULT => string; default expression of column, null if none - * NULLABLE => boolean; true if column can have nulls - * LENGTH => number; length of CHAR/VARCHAR - * SCALE => number; scale of NUMERIC/DECIMAL - * PRECISION => number; precision of NUMERIC/DECIMAL - * UNSIGNED => boolean; unsigned property of an integer type - * PRIMARY => boolean; true if column is part of the primary key - * PRIMARY_POSITION => integer; position of column in primary key - * - * @todo Discover integer unsigned property. - * - * @param string $tableName - * @param string $schemaName OPTIONAL - * @return array - */ - public function describeTable($tableName, $schemaName = null) - { - $this->_connect(); - return $this->_serverType->describeTable($tableName, $schemaName); - } - - /** - * Inserts a table row with specified data. - * Special handling for PDO_IBM - * remove empty slots - * - * @param mixed $table The table to insert data into. - * @param array $bind Column-value pairs. - * @return int The number of affected rows. - */ - public function insert($table, array $bind) - { - $this->_connect(); - $newbind = array(); - if (is_array($bind)) { - foreach ($bind as $name => $value) { - if($value !== null) { - $newbind[$name] = $value; - } - } - } - - return parent::insert($table, $newbind); - } - - /** - * Adds an adapter-specific LIMIT clause to the SELECT statement. - * - * @param string $sql - * @param integer $count - * @param integer $offset OPTIONAL - * @return string - */ - public function limit($sql, $count, $offset = 0) - { - $this->_connect(); - return $this->_serverType->limit($sql, $count, $offset); - } - - /** - * Gets the last ID generated automatically by an IDENTITY/AUTOINCREMENT - * column. - * - * @param string $tableName OPTIONAL - * @param string $primaryKey OPTIONAL - * @return integer - */ - public function lastInsertId($tableName = null, $primaryKey = null) - { - $this->_connect(); - - if ($tableName !== null) { - $sequenceName = $tableName; - if ($primaryKey) { - $sequenceName .= "_$primaryKey"; - } - $sequenceName .= '_seq'; - return $this->lastSequenceId($sequenceName); - } - - $id = $this->getConnection()->lastInsertId(); - - return $id; - } - - /** - * Return the most recent value from the specified sequence in the database. - * - * @param string $sequenceName - * @return integer - */ - public function lastSequenceId($sequenceName) - { - $this->_connect(); - return $this->_serverType->lastSequenceId($sequenceName); - } - - /** - * Generate a new value from the specified sequence in the database, - * and return it. - * - * @param string $sequenceName - * @return integer - */ - public function nextSequenceId($sequenceName) - { - $this->_connect(); - return $this->_serverType->nextSequenceId($sequenceName); - } - - /** - * Retrieve server version in PHP style - * Pdo_Idm doesn't support getAttribute(PDO::ATTR_SERVER_VERSION) - * @return string - */ - public function getServerVersion() - { - try { - $stmt = $this->query('SELECT service_level, fixpack_num FROM TABLE (sysproc.env_get_inst_info()) as INSTANCEINFO'); - $result = $stmt->fetchAll(Zend_Db::FETCH_NUM); - if (count($result)) { - $matches = null; - if (preg_match('/((?:[0-9]{1,2}\.){1,3}[0-9]{1,2})/', $result[0][0], $matches)) { - return $matches[1]; - } else { - return null; - } - } - return null; - } catch (PDOException $e) { - return null; - } - } -} diff --git a/library/Zend/Db/Adapter/Pdo/Ibm/Db2.php b/library/Zend/Db/Adapter/Pdo/Ibm/Db2.php deleted file mode 100644 index 07b4d290..00000000 --- a/library/Zend/Db/Adapter/Pdo/Ibm/Db2.php +++ /dev/null @@ -1,228 +0,0 @@ -_adapter = $adapter; - } - - /** - * Returns a list of the tables in the database. - * - * @return array - */ - public function listTables() - { - $sql = "SELECT tabname " - . "FROM SYSCAT.TABLES "; - return $this->_adapter->fetchCol($sql); - } - - /** - * DB2 catalog lookup for describe table - * - * @param string $tableName - * @param string $schemaName OPTIONAL - * @return array - */ - public function describeTable($tableName, $schemaName = null) - { - $sql = "SELECT DISTINCT c.tabschema, c.tabname, c.colname, c.colno, - c.typename, c.default, c.nulls, c.length, c.scale, - c.identity, tc.type AS tabconsttype, k.colseq - FROM syscat.columns c - LEFT JOIN (syscat.keycoluse k JOIN syscat.tabconst tc - ON (k.tabschema = tc.tabschema - AND k.tabname = tc.tabname - AND tc.type = 'P')) - ON (c.tabschema = k.tabschema - AND c.tabname = k.tabname - AND c.colname = k.colname) - WHERE " - . $this->_adapter->quoteInto('UPPER(c.tabname) = UPPER(?)', $tableName); - if ($schemaName) { - $sql .= $this->_adapter->quoteInto(' AND UPPER(c.tabschema) = UPPER(?)', $schemaName); - } - $sql .= " ORDER BY c.colno"; - - $desc = array(); - $stmt = $this->_adapter->query($sql); - - /** - * To avoid case issues, fetch using FETCH_NUM - */ - $result = $stmt->fetchAll(Zend_Db::FETCH_NUM); - - /** - * The ordering of columns is defined by the query so we can map - * to variables to improve readability - */ - $tabschema = 0; - $tabname = 1; - $colname = 2; - $colno = 3; - $typename = 4; - $default = 5; - $nulls = 6; - $length = 7; - $scale = 8; - $identityCol = 9; - $tabconstype = 10; - $colseq = 11; - - foreach ($result as $key => $row) { - list ($primary, $primaryPosition, $identity) = array(false, null, false); - if ($row[$tabconstype] == 'P') { - $primary = true; - $primaryPosition = $row[$colseq]; - } - /** - * In IBM DB2, an column can be IDENTITY - * even if it is not part of the PRIMARY KEY. - */ - if ($row[$identityCol] == 'Y') { - $identity = true; - } - - $desc[$this->_adapter->foldCase($row[$colname])] = array( - 'SCHEMA_NAME' => $this->_adapter->foldCase($row[$tabschema]), - 'TABLE_NAME' => $this->_adapter->foldCase($row[$tabname]), - 'COLUMN_NAME' => $this->_adapter->foldCase($row[$colname]), - 'COLUMN_POSITION' => $row[$colno]+1, - 'DATA_TYPE' => $row[$typename], - 'DEFAULT' => $row[$default], - 'NULLABLE' => (bool) ($row[$nulls] == 'Y'), - 'LENGTH' => $row[$length], - 'SCALE' => $row[$scale], - 'PRECISION' => ($row[$typename] == 'DECIMAL' ? $row[$length] : 0), - 'UNSIGNED' => false, - 'PRIMARY' => $primary, - 'PRIMARY_POSITION' => $primaryPosition, - 'IDENTITY' => $identity - ); - } - - return $desc; - } - - /** - * Adds a DB2-specific LIMIT clause to the SELECT statement. - * - * @param string $sql - * @param integer $count - * @param integer $offset OPTIONAL - * @throws Zend_Db_Adapter_Exception - * @return string - */ - public function limit($sql, $count, $offset = 0) - { - $count = intval($count); - if ($count < 0) { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("LIMIT argument count=$count is not valid"); - } else { - $offset = intval($offset); - if ($offset < 0) { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("LIMIT argument offset=$offset is not valid"); - } - - if ($offset == 0 && $count > 0) { - $limit_sql = $sql . " FETCH FIRST $count ROWS ONLY"; - return $limit_sql; - } - /** - * DB2 does not implement the LIMIT clause as some RDBMS do. - * We have to simulate it with subqueries and ROWNUM. - * Unfortunately because we use the column wildcard "*", - * this puts an extra column into the query result set. - */ - $limit_sql = "SELECT z2.* - FROM ( - SELECT ROW_NUMBER() OVER() AS \"ZEND_DB_ROWNUM\", z1.* - FROM ( - " . $sql . " - ) z1 - ) z2 - WHERE z2.zend_db_rownum BETWEEN " . ($offset+1) . " AND " . ($offset+$count); - } - return $limit_sql; - } - - /** - * DB2-specific last sequence id - * - * @param string $sequenceName - * @return integer - */ - public function lastSequenceId($sequenceName) - { - $sql = 'SELECT PREVVAL FOR '.$this->_adapter->quoteIdentifier($sequenceName).' AS VAL FROM SYSIBM.SYSDUMMY1'; - $value = $this->_adapter->fetchOne($sql); - return $value; - } - - /** - * DB2-specific sequence id value - * - * @param string $sequenceName - * @return integer - */ - public function nextSequenceId($sequenceName) - { - $sql = 'SELECT NEXTVAL FOR '.$this->_adapter->quoteIdentifier($sequenceName).' AS VAL FROM SYSIBM.SYSDUMMY1'; - $value = $this->_adapter->fetchOne($sql); - return $value; - } -} diff --git a/library/Zend/Db/Adapter/Pdo/Ibm/Ids.php b/library/Zend/Db/Adapter/Pdo/Ibm/Ids.php deleted file mode 100644 index ef357ce0..00000000 --- a/library/Zend/Db/Adapter/Pdo/Ibm/Ids.php +++ /dev/null @@ -1,301 +0,0 @@ -_adapter = $adapter; - } - - /** - * Returns a list of the tables in the database. - * - * @return array - */ - public function listTables() - { - $sql = "SELECT tabname " - . "FROM systables "; - - return $this->_adapter->fetchCol($sql); - } - - /** - * IDS catalog lookup for describe table - * - * @param string $tableName - * @param string $schemaName OPTIONAL - * @return array - */ - public function describeTable($tableName, $schemaName = null) - { - // this is still a work in progress - - $sql= "SELECT DISTINCT t.owner, t.tabname, c.colname, c.colno, c.coltype, - d.default, c.collength, t.tabid - FROM syscolumns c - JOIN systables t ON c.tabid = t.tabid - LEFT JOIN sysdefaults d ON c.tabid = d.tabid AND c.colno = d.colno - WHERE " - . $this->_adapter->quoteInto('UPPER(t.tabname) = UPPER(?)', $tableName); - if ($schemaName) { - $sql .= $this->_adapter->quoteInto(' AND UPPER(t.owner) = UPPER(?)', $schemaName); - } - $sql .= " ORDER BY c.colno"; - - $desc = array(); - $stmt = $this->_adapter->query($sql); - - $result = $stmt->fetchAll(Zend_Db::FETCH_NUM); - - /** - * The ordering of columns is defined by the query so we can map - * to variables to improve readability - */ - $tabschema = 0; - $tabname = 1; - $colname = 2; - $colno = 3; - $typename = 4; - $default = 5; - $length = 6; - $tabid = 7; - - $primaryCols = null; - - foreach ($result as $key => $row) { - $primary = false; - $primaryPosition = null; - - if (!$primaryCols) { - $primaryCols = $this->_getPrimaryInfo($row[$tabid]); - } - - if (array_key_exists($row[$colno], $primaryCols)) { - $primary = true; - $primaryPosition = $primaryCols[$row[$colno]]; - } - - $identity = false; - if ($row[$typename] == 6 + 256 || - $row[$typename] == 18 + 256) { - $identity = true; - } - - $desc[$this->_adapter->foldCase($row[$colname])] = array ( - 'SCHEMA_NAME' => $this->_adapter->foldCase($row[$tabschema]), - 'TABLE_NAME' => $this->_adapter->foldCase($row[$tabname]), - 'COLUMN_NAME' => $this->_adapter->foldCase($row[$colname]), - 'COLUMN_POSITION' => $row[$colno], - 'DATA_TYPE' => $this->_getDataType($row[$typename]), - 'DEFAULT' => $row[$default], - 'NULLABLE' => (bool) !($row[$typename] - 256 >= 0), - 'LENGTH' => $row[$length], - 'SCALE' => ($row[$typename] == 5 ? $row[$length]&255 : 0), - 'PRECISION' => ($row[$typename] == 5 ? (int)($row[$length]/256) : 0), - 'UNSIGNED' => false, - 'PRIMARY' => $primary, - 'PRIMARY_POSITION' => $primaryPosition, - 'IDENTITY' => $identity - ); - } - - return $desc; - } - - /** - * Map number representation of a data type - * to a string - * - * @param int $typeNo - * @return string - */ - protected function _getDataType($typeNo) - { - $typemap = array( - 0 => "CHAR", - 1 => "SMALLINT", - 2 => "INTEGER", - 3 => "FLOAT", - 4 => "SMALLFLOAT", - 5 => "DECIMAL", - 6 => "SERIAL", - 7 => "DATE", - 8 => "MONEY", - 9 => "NULL", - 10 => "DATETIME", - 11 => "BYTE", - 12 => "TEXT", - 13 => "VARCHAR", - 14 => "INTERVAL", - 15 => "NCHAR", - 16 => "NVARCHAR", - 17 => "INT8", - 18 => "SERIAL8", - 19 => "SET", - 20 => "MULTISET", - 21 => "LIST", - 22 => "Unnamed ROW", - 40 => "Variable-length opaque type", - 4118 => "Named ROW" - ); - - if ($typeNo - 256 >= 0) { - $typeNo = $typeNo - 256; - } - - return $typemap[$typeNo]; - } - - /** - * Helper method to retrieve primary key column - * and column location - * - * @param int $tabid - * @return array - */ - protected function _getPrimaryInfo($tabid) - { - $sql = "SELECT i.part1, i.part2, i.part3, i.part4, i.part5, i.part6, - i.part7, i.part8, i.part9, i.part10, i.part11, i.part12, - i.part13, i.part14, i.part15, i.part16 - FROM sysindexes i - JOIN sysconstraints c ON c.idxname = i.idxname - WHERE i.tabid = " . $tabid . " AND c.constrtype = 'P'"; - - $stmt = $this->_adapter->query($sql); - $results = $stmt->fetchAll(); - - $cols = array(); - - // this should return only 1 row - // unless there is no primary key, - // in which case, the empty array is returned - if ($results) { - $row = $results[0]; - } else { - return $cols; - } - - $position = 0; - foreach ($row as $key => $colno) { - $position++; - if ($colno == 0) { - return $cols; - } else { - $cols[$colno] = $position; - } - } - } - - /** - * Adds an IDS-specific LIMIT clause to the SELECT statement. - * - * @param string $sql - * @param integer $count - * @param integer $offset OPTIONAL - * @throws Zend_Db_Adapter_Exception - * @return string - */ - public function limit($sql, $count, $offset = 0) - { - $count = intval($count); - if ($count < 0) { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("LIMIT argument count=$count is not valid"); - } else if ($count == 0) { - $limit_sql = str_ireplace("SELECT", "SELECT * FROM (SELECT", $sql); - $limit_sql .= ") WHERE 0 = 1"; - } else { - $offset = intval($offset); - if ($offset < 0) { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("LIMIT argument offset=$offset is not valid"); - } - if ($offset == 0) { - $limit_sql = str_ireplace("SELECT", "SELECT FIRST $count", $sql); - } else { - $limit_sql = str_ireplace("SELECT", "SELECT SKIP $offset LIMIT $count", $sql); - } - } - return $limit_sql; - } - - /** - * IDS-specific last sequence id - * - * @param string $sequenceName - * @return integer - */ - public function lastSequenceId($sequenceName) - { - $sql = 'SELECT '.$this->_adapter->quoteIdentifier($sequenceName).'.CURRVAL FROM ' - .'systables WHERE tabid = 1'; - $value = $this->_adapter->fetchOne($sql); - return $value; - } - - /** - * IDS-specific sequence id value - * - * @param string $sequenceName - * @return integer - */ - public function nextSequenceId($sequenceName) - { - $sql = 'SELECT '.$this->_adapter->quoteIdentifier($sequenceName).'.NEXTVAL FROM ' - .'systables WHERE tabid = 1'; - $value = $this->_adapter->fetchOne($sql); - return $value; - } -} diff --git a/library/Zend/Db/Adapter/Pdo/Mssql.php b/library/Zend/Db/Adapter/Pdo/Mssql.php deleted file mode 100644 index d654d815..00000000 --- a/library/Zend/Db/Adapter/Pdo/Mssql.php +++ /dev/null @@ -1,423 +0,0 @@ - Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, - 'INT' => Zend_Db::INT_TYPE, - 'SMALLINT' => Zend_Db::INT_TYPE, - 'TINYINT' => Zend_Db::INT_TYPE, - 'BIGINT' => Zend_Db::BIGINT_TYPE, - 'DECIMAL' => Zend_Db::FLOAT_TYPE, - 'FLOAT' => Zend_Db::FLOAT_TYPE, - 'MONEY' => Zend_Db::FLOAT_TYPE, - 'NUMERIC' => Zend_Db::FLOAT_TYPE, - 'REAL' => Zend_Db::FLOAT_TYPE, - 'SMALLMONEY' => Zend_Db::FLOAT_TYPE - ); - - /** - * Creates a PDO DSN for the adapter from $this->_config settings. - * - * @return string - */ - protected function _dsn() - { - // baseline of DSN parts - $dsn = $this->_config; - - // don't pass the username and password in the DSN - unset($dsn['username']); - unset($dsn['password']); - unset($dsn['options']); - unset($dsn['persistent']); - unset($dsn['driver_options']); - - if (isset($dsn['port'])) { - $seperator = ':'; - if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') { - $seperator = ','; - } - $dsn['host'] .= $seperator . $dsn['port']; - unset($dsn['port']); - } - - // this driver supports multiple DSN prefixes - // @see http://www.php.net/manual/en/ref.pdo-dblib.connection.php - if (isset($dsn['pdoType'])) { - switch (strtolower($dsn['pdoType'])) { - case 'freetds': - case 'sybase': - $this->_pdoType = 'sybase'; - break; - case 'mssql': - $this->_pdoType = 'mssql'; - break; - case 'dblib': - default: - $this->_pdoType = 'dblib'; - break; - } - unset($dsn['pdoType']); - } - - // use all remaining parts in the DSN - foreach ($dsn as $key => $val) { - $dsn[$key] = "$key=$val"; - } - - $dsn = $this->_pdoType . ':' . implode(';', $dsn); - return $dsn; - } - - /** - * @return void - */ - protected function _connect() - { - if ($this->_connection) { - return; - } - parent::_connect(); - $this->_connection->exec('SET QUOTED_IDENTIFIER ON'); - } - - /** - * Begin a transaction. - * - * It is necessary to override the abstract PDO transaction functions here, as - * the PDO driver for MSSQL does not support transactions. - */ - protected function _beginTransaction() - { - $this->_connect(); - $this->_connection->exec('BEGIN TRANSACTION'); - return true; - } - - /** - * Commit a transaction. - * - * It is necessary to override the abstract PDO transaction functions here, as - * the PDO driver for MSSQL does not support transactions. - */ - protected function _commit() - { - $this->_connect(); - $this->_connection->exec('COMMIT TRANSACTION'); - return true; - } - - /** - * Roll-back a transaction. - * - * It is necessary to override the abstract PDO transaction functions here, as - * the PDO driver for MSSQL does not support transactions. - */ - protected function _rollBack() { - $this->_connect(); - $this->_connection->exec('ROLLBACK TRANSACTION'); - return true; - } - - /** - * Returns a list of the tables in the database. - * - * @return array - */ - public function listTables() - { - $sql = "SELECT name FROM sysobjects WHERE type = 'U' ORDER BY name"; - return $this->fetchCol($sql); - } - - /** - * Returns the column descriptions for a table. - * - * The return value is an associative array keyed by the column name, - * as returned by the RDBMS. - * - * The value of each array element is an associative array - * with the following keys: - * - * SCHEMA_NAME => string; name of database or schema - * TABLE_NAME => string; - * COLUMN_NAME => string; column name - * COLUMN_POSITION => number; ordinal position of column in table - * DATA_TYPE => string; SQL datatype name of column - * DEFAULT => string; default expression of column, null if none - * NULLABLE => boolean; true if column can have nulls - * LENGTH => number; length of CHAR/VARCHAR - * SCALE => number; scale of NUMERIC/DECIMAL - * PRECISION => number; precision of NUMERIC/DECIMAL - * UNSIGNED => boolean; unsigned property of an integer type - * PRIMARY => boolean; true if column is part of the primary key - * PRIMARY_POSITION => integer; position of column in primary key - * PRIMARY_AUTO => integer; position of auto-generated column in primary key - * - * @todo Discover column primary key position. - * @todo Discover integer unsigned property. - * - * @param string $tableName - * @param string $schemaName OPTIONAL - * @return array - */ - public function describeTable($tableName, $schemaName = null) - { - if ($schemaName != null) { - if (strpos($schemaName, '.') !== false) { - $result = explode('.', $schemaName); - $schemaName = $result[1]; - } - } - /** - * Discover metadata information about this table. - */ - $sql = "exec sp_columns @table_name = " . $this->quoteIdentifier($tableName, true); - if ($schemaName != null) { - $sql .= ", @table_owner = " . $this->quoteIdentifier($schemaName, true); - } - - $stmt = $this->query($sql); - $result = $stmt->fetchAll(Zend_Db::FETCH_NUM); - - $table_name = 2; - $column_name = 3; - $type_name = 5; - $precision = 6; - $length = 7; - $scale = 8; - $nullable = 10; - $column_def = 12; - $column_position = 16; - - /** - * Discover primary key column(s) for this table. - */ - $sql = "exec sp_pkeys @table_name = " . $this->quoteIdentifier($tableName, true); - if ($schemaName != null) { - $sql .= ", @table_owner = " . $this->quoteIdentifier($schemaName, true); - } - - $stmt = $this->query($sql); - $primaryKeysResult = $stmt->fetchAll(Zend_Db::FETCH_NUM); - $primaryKeyColumn = array(); - $pkey_column_name = 3; - $pkey_key_seq = 4; - foreach ($primaryKeysResult as $pkeysRow) { - $primaryKeyColumn[$pkeysRow[$pkey_column_name]] = $pkeysRow[$pkey_key_seq]; - } - - $desc = array(); - $p = 1; - foreach ($result as $key => $row) { - $identity = false; - $words = explode(' ', $row[$type_name], 2); - if (isset($words[0])) { - $type = $words[0]; - if (isset($words[1])) { - $identity = (bool) preg_match('/identity/', $words[1]); - } - } - - $isPrimary = array_key_exists($row[$column_name], $primaryKeyColumn); - if ($isPrimary) { - $primaryPosition = $primaryKeyColumn[$row[$column_name]]; - } else { - $primaryPosition = null; - } - - $desc[$this->foldCase($row[$column_name])] = array( - 'SCHEMA_NAME' => null, // @todo - 'TABLE_NAME' => $this->foldCase($row[$table_name]), - 'COLUMN_NAME' => $this->foldCase($row[$column_name]), - 'COLUMN_POSITION' => (int) $row[$column_position], - 'DATA_TYPE' => $type, - 'DEFAULT' => $row[$column_def], - 'NULLABLE' => (bool) $row[$nullable], - 'LENGTH' => $row[$length], - 'SCALE' => $row[$scale], - 'PRECISION' => $row[$precision], - 'UNSIGNED' => null, // @todo - 'PRIMARY' => $isPrimary, - 'PRIMARY_POSITION' => $primaryPosition, - 'IDENTITY' => $identity - ); - } - return $desc; - } - - /** - * Adds an adapter-specific LIMIT clause to the SELECT statement. - * - * @link http://lists.bestpractical.com/pipermail/rt-devel/2005-June/007339.html - * - * @param string $sql - * @param integer $count - * @param integer $offset OPTIONAL - * @throws Zend_Db_Adapter_Exception - * @return string - */ - public function limit($sql, $count, $offset = 0) - { - $count = intval($count); - if ($count <= 0) { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("LIMIT argument count=$count is not valid"); - } - - $offset = intval($offset); - if ($offset < 0) { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("LIMIT argument offset=$offset is not valid"); - } - - $sql = preg_replace( - '/^SELECT\s+(DISTINCT\s)?/i', - 'SELECT $1TOP ' . ($count+$offset) . ' ', - $sql - ); - - if ($offset > 0) { - $orderby = stristr($sql, 'ORDER BY'); - - if ($orderby !== false) { - $orderParts = explode(',', substr($orderby, 8)); - $pregReplaceCount = null; - $orderbyInverseParts = array(); - foreach ($orderParts as $orderPart) { - $orderPart = rtrim($orderPart); - $inv = preg_replace('/\s+desc$/i', ' ASC', $orderPart, 1, $pregReplaceCount); - if ($pregReplaceCount) { - $orderbyInverseParts[] = $inv; - continue; - } - $inv = preg_replace('/\s+asc$/i', ' DESC', $orderPart, 1, $pregReplaceCount); - if ($pregReplaceCount) { - $orderbyInverseParts[] = $inv; - continue; - } else { - $orderbyInverseParts[] = $orderPart . ' DESC'; - } - } - - $orderbyInverse = 'ORDER BY ' . implode(', ', $orderbyInverseParts); - } - - - - - $sql = 'SELECT * FROM (SELECT TOP ' . $count . ' * FROM (' . $sql . ') AS inner_tbl'; - if ($orderby !== false) { - $sql .= ' ' . $orderbyInverse . ' '; - } - $sql .= ') AS outer_tbl'; - if ($orderby !== false) { - $sql .= ' ' . $orderby; - } - } - - return $sql; - } - - /** - * Gets the last ID generated automatically by an IDENTITY/AUTOINCREMENT column. - * - * As a convention, on RDBMS brands that support sequences - * (e.g. Oracle, PostgreSQL, DB2), this method forms the name of a sequence - * from the arguments and returns the last id generated by that sequence. - * On RDBMS brands that support IDENTITY/AUTOINCREMENT columns, this method - * returns the last value generated for such a column, and the table name - * argument is disregarded. - * - * Microsoft SQL Server does not support sequences, so the arguments to - * this method are ignored. - * - * @param string $tableName OPTIONAL Name of table. - * @param string $primaryKey OPTIONAL Name of primary key column. - * @return string - * @throws Zend_Db_Adapter_Exception - */ - public function lastInsertId($tableName = null, $primaryKey = null) - { - $sql = 'SELECT SCOPE_IDENTITY()'; - return (int)$this->fetchOne($sql); - } - - /** - * Retrieve server version in PHP style - * Pdo_Mssql doesn't support getAttribute(PDO::ATTR_SERVER_VERSION) - * @return string - */ - public function getServerVersion() - { - try { - $stmt = $this->query("SELECT SERVERPROPERTY('productversion')"); - $result = $stmt->fetchAll(Zend_Db::FETCH_NUM); - if (count($result)) { - return $result[0][0]; - } - return null; - } catch (PDOException $e) { - return null; - } - } -} \ No newline at end of file diff --git a/library/Zend/Db/Adapter/Pdo/Mysql.php b/library/Zend/Db/Adapter/Pdo/Mysql.php deleted file mode 100644 index 45636e54..00000000 --- a/library/Zend/Db/Adapter/Pdo/Mysql.php +++ /dev/null @@ -1,270 +0,0 @@ - Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, - 'INT' => Zend_Db::INT_TYPE, - 'INTEGER' => Zend_Db::INT_TYPE, - 'MEDIUMINT' => Zend_Db::INT_TYPE, - 'SMALLINT' => Zend_Db::INT_TYPE, - 'TINYINT' => Zend_Db::INT_TYPE, - 'BIGINT' => Zend_Db::BIGINT_TYPE, - 'SERIAL' => Zend_Db::BIGINT_TYPE, - 'DEC' => Zend_Db::FLOAT_TYPE, - 'DECIMAL' => Zend_Db::FLOAT_TYPE, - 'DOUBLE' => Zend_Db::FLOAT_TYPE, - 'DOUBLE PRECISION' => Zend_Db::FLOAT_TYPE, - 'FIXED' => Zend_Db::FLOAT_TYPE, - 'FLOAT' => Zend_Db::FLOAT_TYPE - ); - - /** - * Override _dsn() and ensure that charset is incorporated in mysql - * @see Zend_Db_Adapter_Pdo_Abstract::_dsn() - */ - protected function _dsn() - { - $dsn = parent::_dsn(); - if (isset($this->_config['charset'])) { - $dsn .= ';charset=' . $this->_config['charset']; - } - return $dsn; - } - - /** - * Creates a PDO object and connects to the database. - * - * @return void - * @throws Zend_Db_Adapter_Exception - */ - protected function _connect() - { - if ($this->_connection) { - return; - } - - if (!empty($this->_config['charset'])) { - $initCommand = "SET NAMES '" . $this->_config['charset'] . "'"; - $this->_config['driver_options'][1002] = $initCommand; // 1002 = PDO::MYSQL_ATTR_INIT_COMMAND - } - - parent::_connect(); - } - - /** - * @return string - */ - public function getQuoteIdentifierSymbol() - { - return "`"; - } - - /** - * Returns a list of the tables in the database. - * - * @return array - */ - public function listTables() - { - return $this->fetchCol('SHOW TABLES'); - } - - /** - * Returns the column descriptions for a table. - * - * The return value is an associative array keyed by the column name, - * as returned by the RDBMS. - * - * The value of each array element is an associative array - * with the following keys: - * - * SCHEMA_NAME => string; name of database or schema - * TABLE_NAME => string; - * COLUMN_NAME => string; column name - * COLUMN_POSITION => number; ordinal position of column in table - * DATA_TYPE => string; SQL datatype name of column - * DEFAULT => string; default expression of column, null if none - * NULLABLE => boolean; true if column can have nulls - * LENGTH => number; length of CHAR/VARCHAR - * SCALE => number; scale of NUMERIC/DECIMAL - * PRECISION => number; precision of NUMERIC/DECIMAL - * UNSIGNED => boolean; unsigned property of an integer type - * PRIMARY => boolean; true if column is part of the primary key - * PRIMARY_POSITION => integer; position of column in primary key - * IDENTITY => integer; true if column is auto-generated with unique values - * - * @param string $tableName - * @param string $schemaName OPTIONAL - * @return array - */ - public function describeTable($tableName, $schemaName = null) - { - // @todo use INFORMATION_SCHEMA someday when MySQL's - // implementation has reasonably good performance and - // the version with this improvement is in wide use. - - if ($schemaName) { - $sql = 'DESCRIBE ' . $this->quoteIdentifier("$schemaName.$tableName", true); - } else { - $sql = 'DESCRIBE ' . $this->quoteIdentifier($tableName, true); - } - $stmt = $this->query($sql); - - // Use FETCH_NUM so we are not dependent on the CASE attribute of the PDO connection - $result = $stmt->fetchAll(Zend_Db::FETCH_NUM); - - $field = 0; - $type = 1; - $null = 2; - $key = 3; - $default = 4; - $extra = 5; - - $desc = array(); - $i = 1; - $p = 1; - foreach ($result as $row) { - list($length, $scale, $precision, $unsigned, $primary, $primaryPosition, $identity) - = array(null, null, null, null, false, null, false); - if (preg_match('/unsigned/', $row[$type])) { - $unsigned = true; - } - if (preg_match('/^((?:var)?char)\((\d+)\)/', $row[$type], $matches)) { - $row[$type] = $matches[1]; - $length = $matches[2]; - } else if (preg_match('/^decimal\((\d+),(\d+)\)/', $row[$type], $matches)) { - $row[$type] = 'decimal'; - $precision = $matches[1]; - $scale = $matches[2]; - } else if (preg_match('/^float\((\d+),(\d+)\)/', $row[$type], $matches)) { - $row[$type] = 'float'; - $precision = $matches[1]; - $scale = $matches[2]; - } else if (preg_match('/^((?:big|medium|small|tiny)?int)\((\d+)\)/', $row[$type], $matches)) { - $row[$type] = $matches[1]; - // The optional argument of a MySQL int type is not precision - // or length; it is only a hint for display width. - } - if (strtoupper($row[$key]) == 'PRI') { - $primary = true; - $primaryPosition = $p; - if ($row[$extra] == 'auto_increment') { - $identity = true; - } else { - $identity = false; - } - ++$p; - } - $desc[$this->foldCase($row[$field])] = array( - 'SCHEMA_NAME' => null, // @todo - 'TABLE_NAME' => $this->foldCase($tableName), - 'COLUMN_NAME' => $this->foldCase($row[$field]), - 'COLUMN_POSITION' => $i, - 'DATA_TYPE' => $row[$type], - 'DEFAULT' => $row[$default], - 'NULLABLE' => (bool) ($row[$null] == 'YES'), - 'LENGTH' => $length, - 'SCALE' => $scale, - 'PRECISION' => $precision, - 'UNSIGNED' => $unsigned, - 'PRIMARY' => $primary, - 'PRIMARY_POSITION' => $primaryPosition, - 'IDENTITY' => $identity - ); - ++$i; - } - return $desc; - } - - /** - * Adds an adapter-specific LIMIT clause to the SELECT statement. - * - * @param string $sql - * @param integer $count - * @param integer $offset OPTIONAL - * @throws Zend_Db_Adapter_Exception - * @return string - */ - public function limit($sql, $count, $offset = 0) - { - $count = intval($count); - if ($count <= 0) { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("LIMIT argument count=$count is not valid"); - } - - $offset = intval($offset); - if ($offset < 0) { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("LIMIT argument offset=$offset is not valid"); - } - - $sql .= " LIMIT $count"; - if ($offset > 0) { - $sql .= " OFFSET $offset"; - } - - return $sql; - } - -} diff --git a/library/Zend/Db/Adapter/Pdo/Oci.php b/library/Zend/Db/Adapter/Pdo/Oci.php deleted file mode 100644 index 8411dd93..00000000 --- a/library/Zend/Db/Adapter/Pdo/Oci.php +++ /dev/null @@ -1,378 +0,0 @@ - Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, - 'BINARY_DOUBLE' => Zend_Db::FLOAT_TYPE, - 'BINARY_FLOAT' => Zend_Db::FLOAT_TYPE, - 'NUMBER' => Zend_Db::FLOAT_TYPE - ); - - /** - * Creates a PDO DSN for the adapter from $this->_config settings. - * - * @return string - */ - protected function _dsn() - { - // baseline of DSN parts - $dsn = $this->_config; - - if (isset($dsn['host'])) { - $tns = 'dbname=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)' . - '(HOST=' . $dsn['host'] . ')'; - - if (isset($dsn['port'])) { - $tns .= '(PORT=' . $dsn['port'] . ')'; - } else { - $tns .= '(PORT=1521)'; - } - - $tns .= '))(CONNECT_DATA=(SID=' . $dsn['dbname'] . ')))'; - } else { - $tns = 'dbname=' . $dsn['dbname']; - } - - if (isset($dsn['charset'])) { - $tns .= ';charset=' . $dsn['charset']; - } - - return $this->_pdoType . ':' . $tns; - } - - /** - * Quote a raw string. - * Most PDO drivers have an implementation for the quote() method, - * but the Oracle OCI driver must use the same implementation as the - * Zend_Db_Adapter_Abstract class. - * - * @param string $value Raw string - * @return string Quoted string - */ - protected function _quote($value) - { - if (is_int($value) || is_float($value)) { - return $value; - } - $value = str_replace("'", "''", $value); - return "'" . addcslashes($value, "\000\n\r\\\032") . "'"; - } - - /** - * Quote a table identifier and alias. - * - * @param string|array|Zend_Db_Expr $ident The identifier or expression. - * @param string $alias An alias for the table. - * @return string The quoted identifier and alias. - */ - public function quoteTableAs($ident, $alias = null, $auto = false) - { - // Oracle doesn't allow the 'AS' keyword between the table identifier/expression and alias. - return $this->_quoteIdentifierAs($ident, $alias, $auto, ' '); - } - - /** - * Returns a list of the tables in the database. - * - * @return array - */ - public function listTables() - { - $data = $this->fetchCol('SELECT table_name FROM all_tables'); - return $data; - } - - /** - * Returns the column descriptions for a table. - * - * The return value is an associative array keyed by the column name, - * as returned by the RDBMS. - * - * The value of each array element is an associative array - * with the following keys: - * - * SCHEMA_NAME => string; name of schema - * TABLE_NAME => string; - * COLUMN_NAME => string; column name - * COLUMN_POSITION => number; ordinal position of column in table - * DATA_TYPE => string; SQL datatype name of column - * DEFAULT => string; default expression of column, null if none - * NULLABLE => boolean; true if column can have nulls - * LENGTH => number; length of CHAR/VARCHAR - * SCALE => number; scale of NUMERIC/DECIMAL - * PRECISION => number; precision of NUMERIC/DECIMAL - * UNSIGNED => boolean; unsigned property of an integer type - * PRIMARY => boolean; true if column is part of the primary key - * PRIMARY_POSITION => integer; position of column in primary key - * IDENTITY => integer; true if column is auto-generated with unique values - * - * @todo Discover integer unsigned property. - * - * @param string $tableName - * @param string $schemaName OPTIONAL - * @return array - */ - public function describeTable($tableName, $schemaName = null) - { - $version = $this->getServerVersion(); - if (($version === null) || version_compare($version, '9.0.0', '>=')) { - $sql = "SELECT TC.TABLE_NAME, TC.OWNER, TC.COLUMN_NAME, TC.DATA_TYPE, - TC.DATA_DEFAULT, TC.NULLABLE, TC.COLUMN_ID, TC.DATA_LENGTH, - TC.DATA_SCALE, TC.DATA_PRECISION, C.CONSTRAINT_TYPE, CC.POSITION - FROM ALL_TAB_COLUMNS TC - LEFT JOIN (ALL_CONS_COLUMNS CC JOIN ALL_CONSTRAINTS C - ON (CC.CONSTRAINT_NAME = C.CONSTRAINT_NAME AND CC.TABLE_NAME = C.TABLE_NAME AND CC.OWNER = C.OWNER AND C.CONSTRAINT_TYPE = 'P')) - ON TC.TABLE_NAME = CC.TABLE_NAME AND TC.COLUMN_NAME = CC.COLUMN_NAME - WHERE UPPER(TC.TABLE_NAME) = UPPER(:TBNAME)"; - $bind[':TBNAME'] = $tableName; - if ($schemaName) { - $sql .= ' AND UPPER(TC.OWNER) = UPPER(:SCNAME)'; - $bind[':SCNAME'] = $schemaName; - } - $sql .= ' ORDER BY TC.COLUMN_ID'; - } else { - $subSql="SELECT AC.OWNER, AC.TABLE_NAME, ACC.COLUMN_NAME, AC.CONSTRAINT_TYPE, ACC.POSITION - from ALL_CONSTRAINTS AC, ALL_CONS_COLUMNS ACC - WHERE ACC.CONSTRAINT_NAME = AC.CONSTRAINT_NAME - AND ACC.TABLE_NAME = AC.TABLE_NAME - AND ACC.OWNER = AC.OWNER - AND AC.CONSTRAINT_TYPE = 'P' - AND UPPER(AC.TABLE_NAME) = UPPER(:TBNAME)"; - $bind[':TBNAME'] = $tableName; - if ($schemaName) { - $subSql .= ' AND UPPER(ACC.OWNER) = UPPER(:SCNAME)'; - $bind[':SCNAME'] = $schemaName; - } - $sql="SELECT TC.TABLE_NAME, TC.OWNER, TC.COLUMN_NAME, TC.DATA_TYPE, - TC.DATA_DEFAULT, TC.NULLABLE, TC.COLUMN_ID, TC.DATA_LENGTH, - TC.DATA_SCALE, TC.DATA_PRECISION, CC.CONSTRAINT_TYPE, CC.POSITION - FROM ALL_TAB_COLUMNS TC, ($subSql) CC - WHERE UPPER(TC.TABLE_NAME) = UPPER(:TBNAME) - AND TC.OWNER = CC.OWNER(+) AND TC.TABLE_NAME = CC.TABLE_NAME(+) AND TC.COLUMN_NAME = CC.COLUMN_NAME(+)"; - if ($schemaName) { - $sql .= ' AND UPPER(TC.OWNER) = UPPER(:SCNAME)'; - } - $sql .= ' ORDER BY TC.COLUMN_ID'; - } - - $stmt = $this->query($sql, $bind); - - /** - * Use FETCH_NUM so we are not dependent on the CASE attribute of the PDO connection - */ - $result = $stmt->fetchAll(Zend_Db::FETCH_NUM); - - $table_name = 0; - $owner = 1; - $column_name = 2; - $data_type = 3; - $data_default = 4; - $nullable = 5; - $column_id = 6; - $data_length = 7; - $data_scale = 8; - $data_precision = 9; - $constraint_type = 10; - $position = 11; - - $desc = array(); - foreach ($result as $key => $row) { - list ($primary, $primaryPosition, $identity) = array(false, null, false); - if ($row[$constraint_type] == 'P') { - $primary = true; - $primaryPosition = $row[$position]; - /** - * Oracle does not support auto-increment keys. - */ - $identity = false; - } - $desc[$this->foldCase($row[$column_name])] = array( - 'SCHEMA_NAME' => $this->foldCase($row[$owner]), - 'TABLE_NAME' => $this->foldCase($row[$table_name]), - 'COLUMN_NAME' => $this->foldCase($row[$column_name]), - 'COLUMN_POSITION' => $row[$column_id], - 'DATA_TYPE' => $row[$data_type], - 'DEFAULT' => $row[$data_default], - 'NULLABLE' => (bool) ($row[$nullable] == 'Y'), - 'LENGTH' => $row[$data_length], - 'SCALE' => $row[$data_scale], - 'PRECISION' => $row[$data_precision], - 'UNSIGNED' => null, // @todo - 'PRIMARY' => $primary, - 'PRIMARY_POSITION' => $primaryPosition, - 'IDENTITY' => $identity - ); - } - return $desc; - } - - /** - * Return the most recent value from the specified sequence in the database. - * This is supported only on RDBMS brands that support sequences - * (e.g. Oracle, PostgreSQL, DB2). Other RDBMS brands return null. - * - * @param string $sequenceName - * @return integer - */ - public function lastSequenceId($sequenceName) - { - $this->_connect(); - $value = $this->fetchOne('SELECT '.$this->quoteIdentifier($sequenceName, true).'.CURRVAL FROM dual'); - return $value; - } - - /** - * Generate a new value from the specified sequence in the database, and return it. - * This is supported only on RDBMS brands that support sequences - * (e.g. Oracle, PostgreSQL, DB2). Other RDBMS brands return null. - * - * @param string $sequenceName - * @return integer - */ - public function nextSequenceId($sequenceName) - { - $this->_connect(); - $value = $this->fetchOne('SELECT '.$this->quoteIdentifier($sequenceName, true).'.NEXTVAL FROM dual'); - return $value; - } - - /** - * Gets the last ID generated automatically by an IDENTITY/AUTOINCREMENT column. - * - * As a convention, on RDBMS brands that support sequences - * (e.g. Oracle, PostgreSQL, DB2), this method forms the name of a sequence - * from the arguments and returns the last id generated by that sequence. - * On RDBMS brands that support IDENTITY/AUTOINCREMENT columns, this method - * returns the last value generated for such a column, and the table name - * argument is disregarded. - * - * Oracle does not support IDENTITY columns, so if the sequence is not - * specified, this method returns null. - * - * @param string $tableName OPTIONAL Name of table. - * @param string $primaryKey OPTIONAL Name of primary key column. - * @return string - * @throws Zend_Db_Adapter_Oracle_Exception - */ - public function lastInsertId($tableName = null, $primaryKey = null) - { - if ($tableName !== null) { - $sequenceName = $tableName; - if ($primaryKey) { - $sequenceName .= $this->foldCase("_$primaryKey"); - } - $sequenceName .= $this->foldCase('_seq'); - return $this->lastSequenceId($sequenceName); - } - // No support for IDENTITY columns; return null - return null; - } - - /** - * Adds an adapter-specific LIMIT clause to the SELECT statement. - * - * @param string $sql - * @param integer $count - * @param integer $offset - * @throws Zend_Db_Adapter_Exception - * @return string - */ - public function limit($sql, $count, $offset = 0) - { - $count = intval($count); - if ($count <= 0) { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("LIMIT argument count=$count is not valid"); - } - - $offset = intval($offset); - if ($offset < 0) { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("LIMIT argument offset=$offset is not valid"); - } - - /** - * Oracle does not implement the LIMIT clause as some RDBMS do. - * We have to simulate it with subqueries and ROWNUM. - * Unfortunately because we use the column wildcard "*", - * this puts an extra column into the query result set. - */ - $limit_sql = "SELECT z2.* - FROM ( - SELECT z1.*, ROWNUM AS \"zend_db_rownum\" - FROM ( - " . $sql . " - ) z1 - ) z2 - WHERE z2.\"zend_db_rownum\" BETWEEN " . ($offset+1) . " AND " . ($offset+$count); - return $limit_sql; - } - -} diff --git a/library/Zend/Db/Adapter/Pdo/Pgsql.php b/library/Zend/Db/Adapter/Pdo/Pgsql.php deleted file mode 100644 index 6551ed1e..00000000 --- a/library/Zend/Db/Adapter/Pdo/Pgsql.php +++ /dev/null @@ -1,336 +0,0 @@ - Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, - 'INTEGER' => Zend_Db::INT_TYPE, - 'SERIAL' => Zend_Db::INT_TYPE, - 'SMALLINT' => Zend_Db::INT_TYPE, - 'BIGINT' => Zend_Db::BIGINT_TYPE, - 'BIGSERIAL' => Zend_Db::BIGINT_TYPE, - 'DECIMAL' => Zend_Db::FLOAT_TYPE, - 'DOUBLE PRECISION' => Zend_Db::FLOAT_TYPE, - 'NUMERIC' => Zend_Db::FLOAT_TYPE, - 'REAL' => Zend_Db::FLOAT_TYPE - ); - - /** - * Creates a PDO object and connects to the database. - * - * @return void - * @throws Zend_Db_Adapter_Exception - */ - protected function _connect() - { - if ($this->_connection) { - return; - } - - parent::_connect(); - - if (!empty($this->_config['charset'])) { - $sql = "SET NAMES '" . $this->_config['charset'] . "'"; - $this->_connection->exec($sql); - } - } - - /** - * Returns a list of the tables in the database. - * - * @return array - */ - public function listTables() - { - // @todo use a better query with joins instead of subqueries - $sql = "SELECT c.relname AS table_name " - . "FROM pg_class c, pg_user u " - . "WHERE c.relowner = u.usesysid AND c.relkind = 'r' " - . "AND NOT EXISTS (SELECT 1 FROM pg_views WHERE viewname = c.relname) " - . "AND c.relname !~ '^(pg_|sql_)' " - . "UNION " - . "SELECT c.relname AS table_name " - . "FROM pg_class c " - . "WHERE c.relkind = 'r' " - . "AND NOT EXISTS (SELECT 1 FROM pg_views WHERE viewname = c.relname) " - . "AND NOT EXISTS (SELECT 1 FROM pg_user WHERE usesysid = c.relowner) " - . "AND c.relname !~ '^pg_'"; - - return $this->fetchCol($sql); - } - - /** - * Returns the column descriptions for a table. - * - * The return value is an associative array keyed by the column name, - * as returned by the RDBMS. - * - * The value of each array element is an associative array - * with the following keys: - * - * SCHEMA_NAME => string; name of database or schema - * TABLE_NAME => string; - * COLUMN_NAME => string; column name - * COLUMN_POSITION => number; ordinal position of column in table - * DATA_TYPE => string; SQL datatype name of column - * DEFAULT => string; default expression of column, null if none - * NULLABLE => boolean; true if column can have nulls - * LENGTH => number; length of CHAR/VARCHAR - * SCALE => number; scale of NUMERIC/DECIMAL - * PRECISION => number; precision of NUMERIC/DECIMAL - * UNSIGNED => boolean; unsigned property of an integer type - * PRIMARY => boolean; true if column is part of the primary key - * PRIMARY_POSITION => integer; position of column in primary key - * IDENTITY => integer; true if column is auto-generated with unique values - * - * @todo Discover integer unsigned property. - * - * @param string $tableName - * @param string $schemaName OPTIONAL - * @return array - */ - public function describeTable($tableName, $schemaName = null) - { - $sql = "SELECT - a.attnum, - n.nspname, - c.relname, - a.attname AS colname, - t.typname AS type, - a.atttypmod, - FORMAT_TYPE(a.atttypid, a.atttypmod) AS complete_type, - d.adsrc AS default_value, - a.attnotnull AS notnull, - a.attlen AS length, - co.contype, - ARRAY_TO_STRING(co.conkey, ',') AS conkey - FROM pg_attribute AS a - JOIN pg_class AS c ON a.attrelid = c.oid - JOIN pg_namespace AS n ON c.relnamespace = n.oid - JOIN pg_type AS t ON a.atttypid = t.oid - LEFT OUTER JOIN pg_constraint AS co ON (co.conrelid = c.oid - AND a.attnum = ANY(co.conkey) AND co.contype = 'p') - LEFT OUTER JOIN pg_attrdef AS d ON d.adrelid = c.oid AND d.adnum = a.attnum - WHERE a.attnum > 0 AND c.relname = ".$this->quote($tableName); - if ($schemaName) { - $sql .= " AND n.nspname = ".$this->quote($schemaName); - } - $sql .= ' ORDER BY a.attnum'; - - $stmt = $this->query($sql); - - // Use FETCH_NUM so we are not dependent on the CASE attribute of the PDO connection - $result = $stmt->fetchAll(Zend_Db::FETCH_NUM); - - $attnum = 0; - $nspname = 1; - $relname = 2; - $colname = 3; - $type = 4; - $atttypemod = 5; - $complete_type = 6; - $default_value = 7; - $notnull = 8; - $length = 9; - $contype = 10; - $conkey = 11; - - $desc = array(); - foreach ($result as $key => $row) { - $defaultValue = $row[$default_value]; - if ($row[$type] == 'varchar' || $row[$type] == 'bpchar' ) { - if (preg_match('/character(?: varying)?(?:\((\d+)\))?/', $row[$complete_type], $matches)) { - if (isset($matches[1])) { - $row[$length] = $matches[1]; - } else { - $row[$length] = null; // unlimited - } - } - if (preg_match("/^'(.*?)'::(?:character varying|bpchar)$/", $defaultValue, $matches)) { - $defaultValue = $matches[1]; - } - } - list($primary, $primaryPosition, $identity) = array(false, null, false); - if ($row[$contype] == 'p') { - $primary = true; - $primaryPosition = array_search($row[$attnum], explode(',', $row[$conkey])) + 1; - $identity = (bool) (preg_match('/^nextval/', $row[$default_value])); - } - $desc[$this->foldCase($row[$colname])] = array( - 'SCHEMA_NAME' => $this->foldCase($row[$nspname]), - 'TABLE_NAME' => $this->foldCase($row[$relname]), - 'COLUMN_NAME' => $this->foldCase($row[$colname]), - 'COLUMN_POSITION' => $row[$attnum], - 'DATA_TYPE' => $row[$type], - 'DEFAULT' => $defaultValue, - 'NULLABLE' => (bool) ($row[$notnull] != 't'), - 'LENGTH' => $row[$length], - 'SCALE' => null, // @todo - 'PRECISION' => null, // @todo - 'UNSIGNED' => null, // @todo - 'PRIMARY' => $primary, - 'PRIMARY_POSITION' => $primaryPosition, - 'IDENTITY' => $identity - ); - } - return $desc; - } - - - /** - * Adds an adapter-specific LIMIT clause to the SELECT statement. - * - * @param string $sql - * @param integer $count - * @param integer $offset OPTIONAL - * @return string - */ - public function limit($sql, $count, $offset = 0) - { - $count = intval($count); - if ($count <= 0) { - /** - * @see Zend_Db_Adapter_Exception - */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("LIMIT argument count=$count is not valid"); - } - - $offset = intval($offset); - if ($offset < 0) { - /** - * @see Zend_Db_Adapter_Exception - */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("LIMIT argument offset=$offset is not valid"); - } - - $sql .= " LIMIT $count"; - if ($offset > 0) { - $sql .= " OFFSET $offset"; - } - - return $sql; - } - - /** - * Return the most recent value from the specified sequence in the database. - * This is supported only on RDBMS brands that support sequences - * (e.g. Oracle, PostgreSQL, DB2). Other RDBMS brands return null. - * - * @param string $sequenceName - * @return string - */ - public function lastSequenceId($sequenceName) - { - $this->_connect(); - $sequenceName = str_replace($this->getQuoteIdentifierSymbol(), '', (string) $sequenceName); - $value = $this->fetchOne("SELECT CURRVAL(" - . $this->quote($this->quoteIdentifier($sequenceName, true)) - . ")"); - return $value; - } - - /** - * Generate a new value from the specified sequence in the database, and return it. - * This is supported only on RDBMS brands that support sequences - * (e.g. Oracle, PostgreSQL, DB2). Other RDBMS brands return null. - * - * @param string $sequenceName - * @return string - */ - public function nextSequenceId($sequenceName) - { - $this->_connect(); - $sequenceName = str_replace($this->getQuoteIdentifierSymbol(), '', (string) $sequenceName); - $value = $this->fetchOne("SELECT NEXTVAL(" - . $this->quote($this->quoteIdentifier($sequenceName, true)) - . ")"); - return $value; - } - - /** - * Gets the last ID generated automatically by an IDENTITY/AUTOINCREMENT column. - * - * As a convention, on RDBMS brands that support sequences - * (e.g. Oracle, PostgreSQL, DB2), this method forms the name of a sequence - * from the arguments and returns the last id generated by that sequence. - * On RDBMS brands that support IDENTITY/AUTOINCREMENT columns, this method - * returns the last value generated for such a column, and the table name - * argument is disregarded. - * - * @param string $tableName OPTIONAL Name of table. - * @param string $primaryKey OPTIONAL Name of primary key column. - * @return string - */ - public function lastInsertId($tableName = null, $primaryKey = null) - { - if ($tableName !== null) { - $sequenceName = $tableName; - if ($primaryKey) { - $sequenceName .= "_$primaryKey"; - } - $sequenceName .= '_seq'; - return $this->lastSequenceId($sequenceName); - } - return $this->_connection->lastInsertId($tableName); - } - -} diff --git a/library/Zend/Db/Adapter/Pdo/Sqlite.php b/library/Zend/Db/Adapter/Pdo/Sqlite.php deleted file mode 100644 index a51aae94..00000000 --- a/library/Zend/Db/Adapter/Pdo/Sqlite.php +++ /dev/null @@ -1,297 +0,0 @@ - Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, - 'INTEGER' => Zend_Db::BIGINT_TYPE, - 'REAL' => Zend_Db::FLOAT_TYPE - ); - - /** - * Constructor. - * - * $config is an array of key/value pairs containing configuration - * options. Note that the SQLite options are different than most of - * the other PDO adapters in that no username or password are needed. - * Also, an extra config key "sqlite2" specifies compatibility mode. - * - * dbname => (string) The name of the database to user (required, - * use :memory: for memory-based database) - * - * sqlite2 => (boolean) PDO_SQLITE defaults to SQLite 3. For compatibility - * with an older SQLite 2 database, set this to TRUE. - * - * @param array $config An array of configuration keys. - */ - public function __construct(array $config = array()) - { - if (isset($config['sqlite2']) && $config['sqlite2']) { - $this->_pdoType = 'sqlite2'; - } - - // SQLite uses no username/password. Stub to satisfy parent::_connect() - $this->_config['username'] = null; - $this->_config['password'] = null; - - return parent::__construct($config); - } - - /** - * Check for config options that are mandatory. - * Throw exceptions if any are missing. - * - * @param array $config - * @throws Zend_Db_Adapter_Exception - */ - protected function _checkRequiredOptions(array $config) - { - // we need at least a dbname - if (! array_key_exists('dbname', $config)) { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("Configuration array must have a key for 'dbname' that names the database instance"); - } - } - - /** - * DSN builder - */ - protected function _dsn() - { - return $this->_pdoType .':'. $this->_config['dbname']; - } - - /** - * Special configuration for SQLite behavior: make sure that result sets - * contain keys like 'column' instead of 'table.column'. - * - * @throws Zend_Db_Adapter_Exception - */ - protected function _connect() - { - /** - * if we already have a PDO object, no need to re-connect. - */ - if ($this->_connection) { - return; - } - - parent::_connect(); - - $retval = $this->_connection->exec('PRAGMA full_column_names=0'); - if ($retval === false) { - $error = $this->_connection->errorInfo(); - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception($error[2]); - } - - $retval = $this->_connection->exec('PRAGMA short_column_names=1'); - if ($retval === false) { - $error = $this->_connection->errorInfo(); - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception($error[2]); - } - } - - /** - * Returns a list of the tables in the database. - * - * @return array - */ - public function listTables() - { - $sql = "SELECT name FROM sqlite_master WHERE type='table' " - . "UNION ALL SELECT name FROM sqlite_temp_master " - . "WHERE type='table' ORDER BY name"; - - return $this->fetchCol($sql); - } - - /** - * Returns the column descriptions for a table. - * - * The return value is an associative array keyed by the column name, - * as returned by the RDBMS. - * - * The value of each array element is an associative array - * with the following keys: - * - * SCHEMA_NAME => string; name of database or schema - * TABLE_NAME => string; - * COLUMN_NAME => string; column name - * COLUMN_POSITION => number; ordinal position of column in table - * DATA_TYPE => string; SQL datatype name of column - * DEFAULT => string; default expression of column, null if none - * NULLABLE => boolean; true if column can have nulls - * LENGTH => number; length of CHAR/VARCHAR - * SCALE => number; scale of NUMERIC/DECIMAL - * PRECISION => number; precision of NUMERIC/DECIMAL - * UNSIGNED => boolean; unsigned property of an integer type - * PRIMARY => boolean; true if column is part of the primary key - * PRIMARY_POSITION => integer; position of column in primary key - * IDENTITY => integer; true if column is auto-generated with unique values - * - * @param string $tableName - * @param string $schemaName OPTIONAL - * @return array - */ - public function describeTable($tableName, $schemaName = null) - { - $sql = 'PRAGMA '; - - if ($schemaName) { - $sql .= $this->quoteIdentifier($schemaName) . '.'; - } - - $sql .= 'table_info('.$this->quoteIdentifier($tableName).')'; - - $stmt = $this->query($sql); - - /** - * Use FETCH_NUM so we are not dependent on the CASE attribute of the PDO connection - */ - $result = $stmt->fetchAll(Zend_Db::FETCH_NUM); - - $cid = 0; - $name = 1; - $type = 2; - $notnull = 3; - $dflt_value = 4; - $pk = 5; - - $desc = array(); - - $p = 1; - foreach ($result as $key => $row) { - list($length, $scale, $precision, $primary, $primaryPosition, $identity) = - array(null, null, null, false, null, false); - if (preg_match('/^((?:var)?char)\((\d+)\)/i', $row[$type], $matches)) { - $row[$type] = $matches[1]; - $length = $matches[2]; - } else if (preg_match('/^decimal\((\d+),(\d+)\)/i', $row[$type], $matches)) { - $row[$type] = 'DECIMAL'; - $precision = $matches[1]; - $scale = $matches[2]; - } - if ((bool) $row[$pk]) { - $primary = true; - $primaryPosition = $p; - /** - * SQLite INTEGER primary key is always auto-increment. - */ - $identity = (bool) ($row[$type] == 'INTEGER'); - ++$p; - } - $desc[$this->foldCase($row[$name])] = array( - 'SCHEMA_NAME' => $this->foldCase($schemaName), - 'TABLE_NAME' => $this->foldCase($tableName), - 'COLUMN_NAME' => $this->foldCase($row[$name]), - 'COLUMN_POSITION' => $row[$cid]+1, - 'DATA_TYPE' => $row[$type], - 'DEFAULT' => $row[$dflt_value], - 'NULLABLE' => ! (bool) $row[$notnull], - 'LENGTH' => $length, - 'SCALE' => $scale, - 'PRECISION' => $precision, - 'UNSIGNED' => null, // Sqlite3 does not support unsigned data - 'PRIMARY' => $primary, - 'PRIMARY_POSITION' => $primaryPosition, - 'IDENTITY' => $identity - ); - } - return $desc; - } - - /** - * Adds an adapter-specific LIMIT clause to the SELECT statement. - * - * @param string $sql - * @param integer $count - * @param integer $offset OPTIONAL - * @return string - */ - public function limit($sql, $count, $offset = 0) - { - $count = intval($count); - if ($count <= 0) { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("LIMIT argument count=$count is not valid"); - } - - $offset = intval($offset); - if ($offset < 0) { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("LIMIT argument offset=$offset is not valid"); - } - - $sql .= " LIMIT $count"; - if ($offset > 0) { - $sql .= " OFFSET $offset"; - } - - return $sql; - } - -} diff --git a/library/Zend/Db/Adapter/Sqlsrv.php b/library/Zend/Db/Adapter/Sqlsrv.php deleted file mode 100644 index e7d5a8eb..00000000 --- a/library/Zend/Db/Adapter/Sqlsrv.php +++ /dev/null @@ -1,678 +0,0 @@ - (string) Connect to the database as this username. - * password => (string) Password associated with the username. - * dbname => The name of the local SQL Server instance - * - * @var array - */ - protected $_config = array( - 'dbname' => null, - 'username' => null, - 'password' => null, - ); - - /** - * Last insert id from INSERT query - * - * @var int - */ - protected $_lastInsertId; - - /** - * Query used to fetch last insert id - * - * @var string - */ - protected $_lastInsertSQL = 'SELECT SCOPE_IDENTITY() as Current_Identity'; - - /** - * Keys are UPPERCASE SQL datatypes or the constants - * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, or Zend_Db::FLOAT_TYPE. - * - * Values are: - * 0 = 32-bit integer - * 1 = 64-bit integer - * 2 = float or decimal - * - * @var array Associative array of datatypes to values 0, 1, or 2. - */ - protected $_numericDataTypes = array( - Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, - 'INT' => Zend_Db::INT_TYPE, - 'SMALLINT' => Zend_Db::INT_TYPE, - 'TINYINT' => Zend_Db::INT_TYPE, - 'BIGINT' => Zend_Db::BIGINT_TYPE, - 'DECIMAL' => Zend_Db::FLOAT_TYPE, - 'FLOAT' => Zend_Db::FLOAT_TYPE, - 'MONEY' => Zend_Db::FLOAT_TYPE, - 'NUMERIC' => Zend_Db::FLOAT_TYPE, - 'REAL' => Zend_Db::FLOAT_TYPE, - 'SMALLMONEY' => Zend_Db::FLOAT_TYPE, - ); - - /** - * Default class name for a DB statement. - * - * @var string - */ - protected $_defaultStmtClass = 'Zend_Db_Statement_Sqlsrv'; - - /** - * Creates a connection resource. - * - * @return void - * @throws Zend_Db_Adapter_Sqlsrv_Exception - */ - protected function _connect() - { - if (is_resource($this->_connection)) { - // connection already exists - return; - } - - if (!extension_loaded('sqlsrv')) { - /** - * @see Zend_Db_Adapter_Sqlsrv_Exception - */ - require_once 'Zend/Db/Adapter/Sqlsrv/Exception.php'; - throw new Zend_Db_Adapter_Sqlsrv_Exception('The Sqlsrv extension is required for this adapter but the extension is not loaded'); - } - - $serverName = $this->_config['host']; - if (isset($this->_config['port'])) { - $port = (integer) $this->_config['port']; - $serverName .= ', ' . $port; - } - - $connectionInfo = array( - 'Database' => $this->_config['dbname'], - ); - - if (isset($this->_config['username']) && isset($this->_config['password'])) - { - $connectionInfo += array( - 'UID' => $this->_config['username'], - 'PWD' => $this->_config['password'], - ); - } - // else - windows authentication - - if (!empty($this->_config['driver_options'])) { - foreach ($this->_config['driver_options'] as $option => $value) { - // A value may be a constant. - if (is_string($value)) { - $constantName = strtoupper($value); - if (defined($constantName)) { - $connectionInfo[$option] = constant($constantName); - } else { - $connectionInfo[$option] = $value; - } - } - } - } - - $this->_connection = sqlsrv_connect($serverName, $connectionInfo); - - if (!$this->_connection) { - /** - * @see Zend_Db_Adapter_Sqlsrv_Exception - */ - require_once 'Zend/Db/Adapter/Sqlsrv/Exception.php'; - throw new Zend_Db_Adapter_Sqlsrv_Exception(sqlsrv_errors()); - } - } - - /** - * Check for config options that are mandatory. - * Throw exceptions if any are missing. - * - * @param array $config - * @throws Zend_Db_Adapter_Exception - */ - protected function _checkRequiredOptions(array $config) - { - // we need at least a dbname - if (! array_key_exists('dbname', $config)) { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("Configuration array must have a key for 'dbname' that names the database instance"); - } - - if (! array_key_exists('password', $config) && array_key_exists('username', $config)) { - /** - * @see Zend_Db_Adapter_Exception - */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("Configuration array must have a key for 'password' for login credentials. - If Windows Authentication is desired, both keys 'username' and 'password' should be ommited from config."); - } - - if (array_key_exists('password', $config) && !array_key_exists('username', $config)) { - /** - * @see Zend_Db_Adapter_Exception - */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("Configuration array must have a key for 'username' for login credentials. - If Windows Authentication is desired, both keys 'username' and 'password' should be ommited from config."); - } - } - - /** - * Set the transaction isoltion level. - * - * @param integer|null $level A fetch mode from SQLSRV_TXN_*. - * @return true - * @throws Zend_Db_Adapter_Sqlsrv_Exception - */ - public function setTransactionIsolationLevel($level = null) - { - $this->_connect(); - $sql = null; - - // Default transaction level in sql server - if ($level === null) - { - $level = SQLSRV_TXN_READ_COMMITTED; - } - - switch ($level) { - case SQLSRV_TXN_READ_UNCOMMITTED: - $sql = "READ UNCOMMITTED"; - break; - case SQLSRV_TXN_READ_COMMITTED: - $sql = "READ COMMITTED"; - break; - case SQLSRV_TXN_REPEATABLE_READ: - $sql = "REPEATABLE READ"; - break; - case SQLSRV_TXN_SNAPSHOT: - $sql = "SNAPSHOT"; - break; - case SQLSRV_TXN_SERIALIZABLE: - $sql = "SERIALIZABLE"; - break; - default: - require_once 'Zend/Db/Adapter/Sqlsrv/Exception.php'; - throw new Zend_Db_Adapter_Sqlsrv_Exception("Invalid transaction isolation level mode '$level' specified"); - } - - if (!sqlsrv_query($this->_connection, "SET TRANSACTION ISOLATION LEVEL $sql;")) { - require_once 'Zend/Db/Adapter/Sqlsrv/Exception.php'; - throw new Zend_Db_Adapter_Sqlsrv_Exception("Transaction cannot be changed to '$level'"); - } - - return true; - } - - /** - * Test if a connection is active - * - * @return boolean - */ - public function isConnected() - { - return (is_resource($this->_connection) - && (get_resource_type($this->_connection) == 'SQL Server Connection') - ); - } - - /** - * Force the connection to close. - * - * @return void - */ - public function closeConnection() - { - if ($this->isConnected()) { - sqlsrv_close($this->_connection); - } - $this->_connection = null; - } - - /** - * Returns an SQL statement for preparation. - * - * @param string $sql The SQL statement with placeholders. - * @return Zend_Db_Statement_Sqlsrv - */ - public function prepare($sql) - { - $this->_connect(); - $stmtClass = $this->_defaultStmtClass; - - if (!class_exists($stmtClass)) { - /** - * @see Zend_Loader - */ - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($stmtClass); - } - - $stmt = new $stmtClass($this, $sql); - $stmt->setFetchMode($this->_fetchMode); - return $stmt; - } - - /** - * Quote a raw string. - * - * @param string $value Raw string - * @return string Quoted string - */ - protected function _quote($value) - { - if (is_int($value)) { - return $value; - } elseif (is_float($value)) { - return sprintf('%F', $value); - } - - return "'" . str_replace("'", "''", $value) . "'"; - } - - /** - * Gets the last ID generated automatically by an IDENTITY/AUTOINCREMENT column. - * - * As a convention, on RDBMS brands that support sequences - * (e.g. Oracle, PostgreSQL, DB2), this method forms the name of a sequence - * from the arguments and returns the last id generated by that sequence. - * On RDBMS brands that support IDENTITY/AUTOINCREMENT columns, this method - * returns the last value generated for such a column, and the table name - * argument is disregarded. - * - * @param string $tableName OPTIONAL Name of table. - * @param string $primaryKey OPTIONAL Name of primary key column. - * @return string - */ - public function lastInsertId($tableName = null, $primaryKey = null) - { - if ($tableName) { - $tableName = $this->quote($tableName); - $sql = 'SELECT IDENT_CURRENT (' . $tableName . ') as Current_Identity'; - return (string) $this->fetchOne($sql); - } - - if ($this->_lastInsertId > 0) { - return (string) $this->_lastInsertId; - } - - $sql = $this->_lastInsertSQL; - return (string) $this->fetchOne($sql); - } - - /** - * Inserts a table row with specified data. - * - * @param mixed $table The table to insert data into. - * @param array $bind Column-value pairs. - * @return int The number of affected rows. - */ - public function insert($table, array $bind) - { - // extract and quote col names from the array keys - $cols = array(); - $vals = array(); - foreach ($bind as $col => $val) { - $cols[] = $this->quoteIdentifier($col, true); - if ($val instanceof Zend_Db_Expr) { - $vals[] = $val->__toString(); - unset($bind[$col]); - } else { - $vals[] = '?'; - } - } - - // build the statement - $sql = "INSERT INTO " - . $this->quoteIdentifier($table, true) - . ' (' . implode(', ', $cols) . ') ' - . 'VALUES (' . implode(', ', $vals) . ')' - . ' ' . $this->_lastInsertSQL; - - // execute the statement and return the number of affected rows - $stmt = $this->query($sql, array_values($bind)); - $result = $stmt->rowCount(); - - $stmt->nextRowset(); - - $this->_lastInsertId = $stmt->fetchColumn(); - - return $result; - } - - /** - * Returns a list of the tables in the database. - * - * @return array - */ - public function listTables() - { - $this->_connect(); - $sql = "SELECT name FROM sysobjects WHERE type = 'U' ORDER BY name"; - return $this->fetchCol($sql); - } - - /** - * Returns the column descriptions for a table. - * - * The return value is an associative array keyed by the column name, - * as returned by the RDBMS. - * - * The value of each array element is an associative array - * with the following keys: - * - * SCHEMA_NAME => string; name of schema - * TABLE_NAME => string; - * COLUMN_NAME => string; column name - * COLUMN_POSITION => number; ordinal position of column in table - * DATA_TYPE => string; SQL datatype name of column - * DEFAULT => string; default expression of column, null if none - * NULLABLE => boolean; true if column can have nulls - * LENGTH => number; length of CHAR/VARCHAR - * SCALE => number; scale of NUMERIC/DECIMAL - * PRECISION => number; precision of NUMERIC/DECIMAL - * UNSIGNED => boolean; unsigned property of an integer type - * PRIMARY => boolean; true if column is part of the primary key - * PRIMARY_POSITION => integer; position of column in primary key - * IDENTITY => integer; true if column is auto-generated with unique values - * - * @todo Discover integer unsigned property. - * - * @param string $tableName - * @param string $schemaName OPTIONAL - * @return array - */ - public function describeTable($tableName, $schemaName = null) - { - /** - * Discover metadata information about this table. - */ - $sql = "exec sp_columns @table_name = " . $this->quoteIdentifier($tableName, true); - $stmt = $this->query($sql); - $result = $stmt->fetchAll(Zend_Db::FETCH_NUM); - - // ZF-7698 - $stmt->closeCursor(); - - if (count($result) == 0) { - return array(); - } - - $owner = 1; - $table_name = 2; - $column_name = 3; - $type_name = 5; - $precision = 6; - $length = 7; - $scale = 8; - $nullable = 10; - $column_def = 12; - $column_position = 16; - - /** - * Discover primary key column(s) for this table. - */ - $tableOwner = $result[0][$owner]; - $sql = "exec sp_pkeys @table_owner = " . $tableOwner - . ", @table_name = " . $this->quoteIdentifier($tableName, true); - $stmt = $this->query($sql); - - $primaryKeysResult = $stmt->fetchAll(Zend_Db::FETCH_NUM); - $primaryKeyColumn = array(); - - // Per http://msdn.microsoft.com/en-us/library/ms189813.aspx, - // results from sp_keys stored procedure are: - // 0=TABLE_QUALIFIER 1=TABLE_OWNER 2=TABLE_NAME 3=COLUMN_NAME 4=KEY_SEQ 5=PK_NAME - - $pkey_column_name = 3; - $pkey_key_seq = 4; - foreach ($primaryKeysResult as $pkeysRow) { - $primaryKeyColumn[$pkeysRow[$pkey_column_name]] = $pkeysRow[$pkey_key_seq]; - } - - $desc = array(); - $p = 1; - foreach ($result as $key => $row) { - $identity = false; - $words = explode(' ', $row[$type_name], 2); - if (isset($words[0])) { - $type = $words[0]; - if (isset($words[1])) { - $identity = (bool) preg_match('/identity/', $words[1]); - } - } - - $isPrimary = array_key_exists($row[$column_name], $primaryKeyColumn); - if ($isPrimary) { - $primaryPosition = $primaryKeyColumn[$row[$column_name]]; - } else { - $primaryPosition = null; - } - - $desc[$this->foldCase($row[$column_name])] = array( - 'SCHEMA_NAME' => null, // @todo - 'TABLE_NAME' => $this->foldCase($row[$table_name]), - 'COLUMN_NAME' => $this->foldCase($row[$column_name]), - 'COLUMN_POSITION' => (int) $row[$column_position], - 'DATA_TYPE' => $type, - 'DEFAULT' => $row[$column_def], - 'NULLABLE' => (bool) $row[$nullable], - 'LENGTH' => $row[$length], - 'SCALE' => $row[$scale], - 'PRECISION' => $row[$precision], - 'UNSIGNED' => null, // @todo - 'PRIMARY' => $isPrimary, - 'PRIMARY_POSITION' => $primaryPosition, - 'IDENTITY' => $identity, - ); - } - - return $desc; - } - - /** - * Leave autocommit mode and begin a transaction. - * - * @return void - * @throws Zend_Db_Adapter_Sqlsrv_Exception - */ - protected function _beginTransaction() - { - if (!sqlsrv_begin_transaction($this->_connection)) { - require_once 'Zend/Db/Adapter/Sqlsrv/Exception.php'; - throw new Zend_Db_Adapter_Sqlsrv_Exception(sqlsrv_errors()); - } - } - - /** - * Commit a transaction and return to autocommit mode. - * - * @return void - * @throws Zend_Db_Adapter_Sqlsrv_Exception - */ - protected function _commit() - { - if (!sqlsrv_commit($this->_connection)) { - require_once 'Zend/Db/Adapter/Sqlsrv/Exception.php'; - throw new Zend_Db_Adapter_Sqlsrv_Exception(sqlsrv_errors()); - } - } - - /** - * Roll back a transaction and return to autocommit mode. - * - * @return void - * @throws Zend_Db_Adapter_Sqlsrv_Exception - */ - protected function _rollBack() - { - if (!sqlsrv_rollback($this->_connection)) { - require_once 'Zend/Db/Adapter/Sqlsrv/Exception.php'; - throw new Zend_Db_Adapter_Sqlsrv_Exception(sqlsrv_errors()); - } - } - - /** - * Set the fetch mode. - * - * @todo Support FETCH_CLASS and FETCH_INTO. - * - * @param integer $mode A fetch mode. - * @return void - * @throws Zend_Db_Adapter_Sqlsrv_Exception - */ - public function setFetchMode($mode) - { - switch ($mode) { - case Zend_Db::FETCH_NUM: // seq array - case Zend_Db::FETCH_ASSOC: // assoc array - case Zend_Db::FETCH_BOTH: // seq+assoc array - case Zend_Db::FETCH_OBJ: // object - $this->_fetchMode = $mode; - break; - case Zend_Db::FETCH_BOUND: // bound to PHP variable - require_once 'Zend/Db/Adapter/Sqlsrv/Exception.php'; - throw new Zend_Db_Adapter_Sqlsrv_Exception('FETCH_BOUND is not supported yet'); - break; - default: - require_once 'Zend/Db/Adapter/Sqlsrv/Exception.php'; - throw new Zend_Db_Adapter_Sqlsrv_Exception("Invalid fetch mode '$mode' specified"); - break; - } - } - - /** - * Adds an adapter-specific LIMIT clause to the SELECT statement. - * - * @param string $sql - * @param integer $count - * @param integer $offset OPTIONAL - * @return string - * @throws Zend_Db_Adapter_Sqlsrv_Exception - */ - public function limit($sql, $count, $offset = 0) - { - $count = intval($count); - if ($count <= 0) { - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("LIMIT argument count=$count is not valid"); - } - - $offset = intval($offset); - if ($offset < 0) { - /** @see Zend_Db_Adapter_Exception */ - require_once 'Zend/Db/Adapter/Exception.php'; - throw new Zend_Db_Adapter_Exception("LIMIT argument offset=$offset is not valid"); - } - - if ($offset == 0) { - $sql = preg_replace('/^SELECT\s/i', 'SELECT TOP ' . $count . ' ', $sql); - } else { - $orderby = stristr($sql, 'ORDER BY'); - - if (!$orderby) { - $over = 'ORDER BY (SELECT 0)'; - } else { - $over = preg_replace('/\"[^,]*\".\"([^,]*)\"/i', '"inner_tbl"."$1"', $orderby); - } - - // Remove ORDER BY clause from $sql - $sql = preg_replace('/\s+ORDER BY(.*)/', '', $sql); - - // Add ORDER BY clause as an argument for ROW_NUMBER() - $sql = "SELECT ROW_NUMBER() OVER ($over) AS \"ZEND_DB_ROWNUM\", * FROM ($sql) AS inner_tbl"; - - $start = $offset + 1; - - if ($count == PHP_INT_MAX) { - $sql = "WITH outer_tbl AS ($sql) SELECT * FROM outer_tbl WHERE \"ZEND_DB_ROWNUM\" >= $start"; - } - else { - $end = $offset + $count; - $sql = "WITH outer_tbl AS ($sql) SELECT * FROM outer_tbl WHERE \"ZEND_DB_ROWNUM\" BETWEEN $start AND $end"; - } - } - - return $sql; - } - - /** - * Check if the adapter supports real SQL parameters. - * - * @param string $type 'positional' or 'named' - * @return bool - */ - public function supportsParameters($type) - { - if ($type == 'positional') { - return true; - } - - // if its 'named' or anything else - return false; - } - - /** - * Retrieve server version in PHP style - * - * @return string - */ - public function getServerVersion() - { - $this->_connect(); - $serverInfo = sqlsrv_server_info($this->_connection); - - if ($serverInfo !== false) { - return $serverInfo['SQLServerVersion']; - } - - return null; - } -} diff --git a/library/Zend/Db/Adapter/Sqlsrv/Exception.php b/library/Zend/Db/Adapter/Sqlsrv/Exception.php deleted file mode 100644 index dc358db3..00000000 --- a/library/Zend/Db/Adapter/Sqlsrv/Exception.php +++ /dev/null @@ -1,63 +0,0 @@ -_expression = (string) $expression; - } - - /** - * @return string The string of the SQL expression stored in this object. - */ - public function __toString() - { - return $this->_expression; - } - -} diff --git a/library/Zend/Db/Profiler.php b/library/Zend/Db/Profiler.php deleted file mode 100644 index 31993aaf..00000000 --- a/library/Zend/Db/Profiler.php +++ /dev/null @@ -1,473 +0,0 @@ -setEnabled($enabled); - } - - /** - * Enable or disable the profiler. If $enable is false, the profiler - * is disabled and will not log any queries sent to it. - * - * @param boolean $enable - * @return Zend_Db_Profiler Provides a fluent interface - */ - public function setEnabled($enable) - { - $this->_enabled = (boolean) $enable; - - return $this; - } - - /** - * Get the current state of enable. If True is returned, - * the profiler is enabled. - * - * @return boolean - */ - public function getEnabled() - { - return $this->_enabled; - } - - /** - * Sets a minimum number of seconds for saving query profiles. If this - * is set, only those queries whose elapsed time is equal or greater than - * $minimumSeconds will be saved. To save all queries regardless of - * elapsed time, set $minimumSeconds to null. - * - * @param integer $minimumSeconds OPTIONAL - * @return Zend_Db_Profiler Provides a fluent interface - */ - public function setFilterElapsedSecs($minimumSeconds = null) - { - if (null === $minimumSeconds) { - $this->_filterElapsedSecs = null; - } else { - $this->_filterElapsedSecs = (integer) $minimumSeconds; - } - - return $this; - } - - /** - * Returns the minimum number of seconds for saving query profiles, or null if - * query profiles are saved regardless of elapsed time. - * - * @return integer|null - */ - public function getFilterElapsedSecs() - { - return $this->_filterElapsedSecs; - } - - /** - * Sets the types of query profiles to save. Set $queryType to one of - * the Zend_Db_Profiler::* constants to only save profiles for that type of - * query. To save more than one type, logical OR them together. To - * save all queries regardless of type, set $queryType to null. - * - * @param integer $queryTypes OPTIONAL - * @return Zend_Db_Profiler Provides a fluent interface - */ - public function setFilterQueryType($queryTypes = null) - { - $this->_filterTypes = $queryTypes; - - return $this; - } - - /** - * Returns the types of query profiles saved, or null if queries are saved regardless - * of their types. - * - * @return integer|null - * @see Zend_Db_Profiler::setFilterQueryType() - */ - public function getFilterQueryType() - { - return $this->_filterTypes; - } - - /** - * Clears the history of any past query profiles. This is relentless - * and will even clear queries that were started and may not have - * been marked as ended. - * - * @return Zend_Db_Profiler Provides a fluent interface - */ - public function clear() - { - $this->_queryProfiles = array(); - - return $this; - } - - /** - * Clone a profiler query - * - * @param Zend_Db_Profiler_Query $query - * @return integer or null - */ - public function queryClone(Zend_Db_Profiler_Query $query) - { - $this->_queryProfiles[] = clone $query; - - end($this->_queryProfiles); - - return key($this->_queryProfiles); - } - - /** - * Starts a query. Creates a new query profile object (Zend_Db_Profiler_Query) - * and returns the "query profiler handle". Run the query, then call - * queryEnd() and pass it this handle to make the query as ended and - * record the time. If the profiler is not enabled, this takes no - * action and immediately returns null. - * - * @param string $queryText SQL statement - * @param integer $queryType OPTIONAL Type of query, one of the Zend_Db_Profiler::* constants - * @return integer|null - */ - public function queryStart($queryText, $queryType = null) - { - if (!$this->_enabled) { - return null; - } - - // make sure we have a query type - if (null === $queryType) { - switch (strtolower(substr(ltrim($queryText), 0, 6))) { - case 'insert': - $queryType = self::INSERT; - break; - case 'update': - $queryType = self::UPDATE; - break; - case 'delete': - $queryType = self::DELETE; - break; - case 'select': - $queryType = self::SELECT; - break; - default: - $queryType = self::QUERY; - break; - } - } - - /** - * @see Zend_Db_Profiler_Query - */ - require_once 'Zend/Db/Profiler/Query.php'; - $this->_queryProfiles[] = new Zend_Db_Profiler_Query($queryText, $queryType); - - end($this->_queryProfiles); - - return key($this->_queryProfiles); - } - - /** - * Ends a query. Pass it the handle that was returned by queryStart(). - * This will mark the query as ended and save the time. - * - * @param integer $queryId - * @throws Zend_Db_Profiler_Exception - * @return string Inform that a query is stored or ignored. - */ - public function queryEnd($queryId) - { - // Don't do anything if the Zend_Db_Profiler is not enabled. - if (!$this->_enabled) { - return self::IGNORED; - } - - // Check for a valid query handle. - if (!isset($this->_queryProfiles[$queryId])) { - /** - * @see Zend_Db_Profiler_Exception - */ - require_once 'Zend/Db/Profiler/Exception.php'; - throw new Zend_Db_Profiler_Exception("Profiler has no query with handle '$queryId'."); - } - - $qp = $this->_queryProfiles[$queryId]; - - // Ensure that the query profile has not already ended - if ($qp->hasEnded()) { - /** - * @see Zend_Db_Profiler_Exception - */ - require_once 'Zend/Db/Profiler/Exception.php'; - throw new Zend_Db_Profiler_Exception("Query with profiler handle '$queryId' has already ended."); - } - - // End the query profile so that the elapsed time can be calculated. - $qp->end(); - - /** - * If filtering by elapsed time is enabled, only keep the profile if - * it ran for the minimum time. - */ - if (null !== $this->_filterElapsedSecs && $qp->getElapsedSecs() < $this->_filterElapsedSecs) { - unset($this->_queryProfiles[$queryId]); - return self::IGNORED; - } - - /** - * If filtering by query type is enabled, only keep the query if - * it was one of the allowed types. - */ - if (null !== $this->_filterTypes && !($qp->getQueryType() & $this->_filterTypes)) { - unset($this->_queryProfiles[$queryId]); - return self::IGNORED; - } - - return self::STORED; - } - - /** - * Get a profile for a query. Pass it the same handle that was returned - * by queryStart() and it will return a Zend_Db_Profiler_Query object. - * - * @param integer $queryId - * @throws Zend_Db_Profiler_Exception - * @return Zend_Db_Profiler_Query - */ - public function getQueryProfile($queryId) - { - if (!array_key_exists($queryId, $this->_queryProfiles)) { - /** - * @see Zend_Db_Profiler_Exception - */ - require_once 'Zend/Db/Profiler/Exception.php'; - throw new Zend_Db_Profiler_Exception("Query handle '$queryId' not found in profiler log."); - } - - return $this->_queryProfiles[$queryId]; - } - - /** - * Get an array of query profiles (Zend_Db_Profiler_Query objects). If $queryType - * is set to one of the Zend_Db_Profiler::* constants then only queries of that - * type will be returned. Normally, queries that have not yet ended will - * not be returned unless $showUnfinished is set to True. If no - * queries were found, False is returned. The returned array is indexed by the query - * profile handles. - * - * @param integer $queryType - * @param boolean $showUnfinished - * @return array|false - */ - public function getQueryProfiles($queryType = null, $showUnfinished = false) - { - $queryProfiles = array(); - foreach ($this->_queryProfiles as $key => $qp) { - if ($queryType === null) { - $condition = true; - } else { - $condition = ($qp->getQueryType() & $queryType); - } - - if (($qp->hasEnded() || $showUnfinished) && $condition) { - $queryProfiles[$key] = $qp; - } - } - - if (empty($queryProfiles)) { - $queryProfiles = false; - } - - return $queryProfiles; - } - - /** - * Get the total elapsed time (in seconds) of all of the profiled queries. - * Only queries that have ended will be counted. If $queryType is set to - * one or more of the Zend_Db_Profiler::* constants, the elapsed time will be calculated - * only for queries of the given type(s). - * - * @param integer $queryType OPTIONAL - * @return float - */ - public function getTotalElapsedSecs($queryType = null) - { - $elapsedSecs = 0; - foreach ($this->_queryProfiles as $key => $qp) { - if (null === $queryType) { - $condition = true; - } else { - $condition = ($qp->getQueryType() & $queryType); - } - if (($qp->hasEnded()) && $condition) { - $elapsedSecs += $qp->getElapsedSecs(); - } - } - return $elapsedSecs; - } - - /** - * Get the total number of queries that have been profiled. Only queries that have ended will - * be counted. If $queryType is set to one of the Zend_Db_Profiler::* constants, only queries of - * that type will be counted. - * - * @param integer $queryType OPTIONAL - * @return integer - */ - public function getTotalNumQueries($queryType = null) - { - if (null === $queryType) { - return count($this->_queryProfiles); - } - - $numQueries = 0; - foreach ($this->_queryProfiles as $qp) { - if ($qp->hasEnded() && ($qp->getQueryType() & $queryType)) { - $numQueries++; - } - } - - return $numQueries; - } - - /** - * Get the Zend_Db_Profiler_Query object for the last query that was run, regardless if it has - * ended or not. If the query has not ended, its end time will be null. If no queries have - * been profiled, false is returned. - * - * @return Zend_Db_Profiler_Query|false - */ - public function getLastQueryProfile() - { - if (empty($this->_queryProfiles)) { - return false; - } - - end($this->_queryProfiles); - - return current($this->_queryProfiles); - } - -} - diff --git a/library/Zend/Db/Profiler/Exception.php b/library/Zend/Db/Profiler/Exception.php deleted file mode 100644 index 14186eb3..00000000 --- a/library/Zend/Db/Profiler/Exception.php +++ /dev/null @@ -1,40 +0,0 @@ -_label = $label; - if(!$this->_label) { - $this->_label = 'Zend_Db_Profiler_Firebug'; - } - } - - /** - * Enable or disable the profiler. If $enable is false, the profiler - * is disabled and will not log any queries sent to it. - * - * @param boolean $enable - * @return Zend_Db_Profiler Provides a fluent interface - */ - public function setEnabled($enable) - { - parent::setEnabled($enable); - - if ($this->getEnabled()) { - - if (!$this->_message) { - $this->_message = new Zend_Wildfire_Plugin_FirePhp_TableMessage($this->_label); - $this->_message->setBuffered(true); - $this->_message->setHeader(array('Time','Event','Parameters')); - $this->_message->setDestroy(true); - $this->_message->setOption('includeLineNumbers', false); - Zend_Wildfire_Plugin_FirePhp::getInstance()->send($this->_message); - } - - } else { - - if ($this->_message) { - $this->_message->setDestroy(true); - $this->_message = null; - } - - } - - return $this; - } - - /** - * Intercept the query end and log the profiling data. - * - * @param integer $queryId - * @throws Zend_Db_Profiler_Exception - * @return void - */ - public function queryEnd($queryId) - { - $state = parent::queryEnd($queryId); - - if (!$this->getEnabled() || $state == self::IGNORED) { - return; - } - - $this->_message->setDestroy(false); - - $profile = $this->getQueryProfile($queryId); - - $this->_totalElapsedTime += $profile->getElapsedSecs(); - - $this->_message->addRow(array((string)round($profile->getElapsedSecs(),5), - $profile->getQuery(), - ($params=$profile->getQueryParams())?$params:null)); - - $this->updateMessageLabel(); - } - - /** - * Update the label of the message holding the profile info. - * - * @return void - */ - protected function updateMessageLabel() - { - if (!$this->_message) { - return; - } - $this->_message->setLabel(str_replace(array('%label%', - '%totalCount%', - '%totalDuration%'), - array($this->_label, - $this->getTotalNumQueries(), - (string)round($this->_totalElapsedTime,5)), - $this->_label_template)); - } -} diff --git a/library/Zend/Db/Profiler/Query.php b/library/Zend/Db/Profiler/Query.php deleted file mode 100644 index 3420e8b7..00000000 --- a/library/Zend/Db/Profiler/Query.php +++ /dev/null @@ -1,213 +0,0 @@ -_query = $query; - $this->_queryType = $queryType; - // by default, and for backward-compatibility, start the click ticking - $this->start(); - } - - /** - * Clone handler for the query object. - * @return void - */ - public function __clone() - { - $this->_boundParams = array(); - $this->_endedMicrotime = null; - $this->start(); - } - - /** - * Starts the elapsed time click ticking. - * This can be called subsequent to object creation, - * to restart the clock. For instance, this is useful - * right before executing a prepared query. - * - * @return void - */ - public function start() - { - $this->_startedMicrotime = microtime(true); - } - - /** - * Ends the query and records the time so that the elapsed time can be determined later. - * - * @return void - */ - public function end() - { - $this->_endedMicrotime = microtime(true); - } - - /** - * Returns true if and only if the query has ended. - * - * @return boolean - */ - public function hasEnded() - { - return $this->_endedMicrotime !== null; - } - - /** - * Get the original SQL text of the query. - * - * @return string - */ - public function getQuery() - { - return $this->_query; - } - - /** - * Get the type of this query (one of the Zend_Db_Profiler::* constants) - * - * @return integer - */ - public function getQueryType() - { - return $this->_queryType; - } - - /** - * @param string $param - * @param mixed $variable - * @return void - */ - public function bindParam($param, $variable) - { - $this->_boundParams[$param] = $variable; - } - - /** - * @param array $param - * @return void - */ - public function bindParams(array $params) - { - if (array_key_exists(0, $params)) { - array_unshift($params, null); - unset($params[0]); - } - foreach ($params as $param => $value) { - $this->bindParam($param, $value); - } - } - - /** - * @return array - */ - public function getQueryParams() - { - return $this->_boundParams; - } - - /** - * Get the elapsed time (in seconds) that the query ran. - * If the query has not yet ended, false is returned. - * - * @return float|false - */ - public function getElapsedSecs() - { - if (null === $this->_endedMicrotime) { - return false; - } - - return $this->_endedMicrotime - $this->_startedMicrotime; - } - - /** - * Get the time (in seconds) when the profiler started running. - * - * @return bool|float - */ - public function getStartedMicrotime() - { - if(null === $this->_startedMicrotime) { - return false; - } - - return $this->_startedMicrotime; - } -} - diff --git a/library/Zend/Db/Select.php b/library/Zend/Db/Select.php deleted file mode 100644 index 717e45d5..00000000 --- a/library/Zend/Db/Select.php +++ /dev/null @@ -1,1356 +0,0 @@ - false, - self::COLUMNS => array(), - self::UNION => array(), - self::FROM => array(), - self::WHERE => array(), - self::GROUP => array(), - self::HAVING => array(), - self::ORDER => array(), - self::LIMIT_COUNT => null, - self::LIMIT_OFFSET => null, - self::FOR_UPDATE => false - ); - - /** - * Specify legal join types. - * - * @var array - */ - protected static $_joinTypes = array( - self::INNER_JOIN, - self::LEFT_JOIN, - self::RIGHT_JOIN, - self::FULL_JOIN, - self::CROSS_JOIN, - self::NATURAL_JOIN, - ); - - /** - * Specify legal union types. - * - * @var array - */ - protected static $_unionTypes = array( - self::SQL_UNION, - self::SQL_UNION_ALL - ); - - /** - * The component parts of a SELECT statement. - * Initialized to the $_partsInit array in the constructor. - * - * @var array - */ - protected $_parts = array(); - - /** - * Tracks which columns are being select from each table and join. - * - * @var array - */ - protected $_tableCols = array(); - - /** - * Class constructor - * - * @param Zend_Db_Adapter_Abstract $adapter - */ - public function __construct(Zend_Db_Adapter_Abstract $adapter) - { - $this->_adapter = $adapter; - $this->_parts = self::$_partsInit; - } - - /** - * Get bind variables - * - * @return array - */ - public function getBind() - { - return $this->_bind; - } - - /** - * Set bind variables - * - * @param mixed $bind - * @return Zend_Db_Select - */ - public function bind($bind) - { - $this->_bind = $bind; - - return $this; - } - - /** - * Makes the query SELECT DISTINCT. - * - * @param bool $flag Whether or not the SELECT is DISTINCT (default true). - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function distinct($flag = true) - { - $this->_parts[self::DISTINCT] = (bool) $flag; - return $this; - } - - /** - * Adds a FROM table and optional columns to the query. - * - * The first parameter $name can be a simple string, in which case the - * correlation name is generated automatically. If you want to specify - * the correlation name, the first parameter must be an associative - * array in which the key is the correlation name, and the value is - * the physical table name. For example, array('alias' => 'table'). - * The correlation name is prepended to all columns fetched for this - * table. - * - * The second parameter can be a single string or Zend_Db_Expr object, - * or else an array of strings or Zend_Db_Expr objects. - * - * The first parameter can be null or an empty string, in which case - * no correlation name is generated or prepended to the columns named - * in the second parameter. - * - * @param array|string|Zend_Db_Expr $name The table name or an associative array - * relating correlation name to table name. - * @param array|string|Zend_Db_Expr $cols The columns to select from this table. - * @param string $schema The schema name to specify, if any. - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function from($name, $cols = '*', $schema = null) - { - return $this->_join(self::FROM, $name, null, $cols, $schema); - } - - /** - * Specifies the columns used in the FROM clause. - * - * The parameter can be a single string or Zend_Db_Expr object, - * or else an array of strings or Zend_Db_Expr objects. - * - * @param array|string|Zend_Db_Expr $cols The columns to select from this table. - * @param string $correlationName Correlation name of target table. OPTIONAL - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function columns($cols = '*', $correlationName = null) - { - if ($correlationName === null && count($this->_parts[self::FROM])) { - $correlationNameKeys = array_keys($this->_parts[self::FROM]); - $correlationName = current($correlationNameKeys); - } - - if (!array_key_exists($correlationName, $this->_parts[self::FROM])) { - /** - * @see Zend_Db_Select_Exception - */ - require_once 'Zend/Db/Select/Exception.php'; - throw new Zend_Db_Select_Exception("No table has been specified for the FROM clause"); - } - - $this->_tableCols($correlationName, $cols); - - return $this; - } - - /** - * Adds a UNION clause to the query. - * - * The first parameter has to be an array of Zend_Db_Select or - * sql query strings. - * - * - * $sql1 = $db->select(); - * $sql2 = "SELECT ..."; - * $select = $db->select() - * ->union(array($sql1, $sql2)) - * ->order("id"); - * - * - * @param array $select Array of select clauses for the union. - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function union($select = array(), $type = self::SQL_UNION) - { - if (!is_array($select)) { - require_once 'Zend/Db/Select/Exception.php'; - throw new Zend_Db_Select_Exception( - "union() only accepts an array of Zend_Db_Select instances of sql query strings." - ); - } - - if (!in_array($type, self::$_unionTypes)) { - require_once 'Zend/Db/Select/Exception.php'; - throw new Zend_Db_Select_Exception("Invalid union type '{$type}'"); - } - - foreach ($select as $target) { - $this->_parts[self::UNION][] = array($target, $type); - } - - return $this; - } - - /** - * Adds a JOIN table and columns to the query. - * - * The $name and $cols parameters follow the same logic - * as described in the from() method. - * - * @param array|string|Zend_Db_Expr $name The table name. - * @param string $cond Join on this condition. - * @param array|string $cols The columns to select from the joined table. - * @param string $schema The database name to specify, if any. - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function join($name, $cond, $cols = self::SQL_WILDCARD, $schema = null) - { - return $this->joinInner($name, $cond, $cols, $schema); - } - - /** - * Add an INNER JOIN table and colums to the query - * Rows in both tables are matched according to the expression - * in the $cond argument. The result set is comprised - * of all cases where rows from the left table match - * rows from the right table. - * - * The $name and $cols parameters follow the same logic - * as described in the from() method. - * - * @param array|string|Zend_Db_Expr $name The table name. - * @param string $cond Join on this condition. - * @param array|string $cols The columns to select from the joined table. - * @param string $schema The database name to specify, if any. - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function joinInner($name, $cond, $cols = self::SQL_WILDCARD, $schema = null) - { - return $this->_join(self::INNER_JOIN, $name, $cond, $cols, $schema); - } - - /** - * Add a LEFT OUTER JOIN table and colums to the query - * All rows from the left operand table are included, - * matching rows from the right operand table included, - * and the columns from the right operand table are filled - * with NULLs if no row exists matching the left table. - * - * The $name and $cols parameters follow the same logic - * as described in the from() method. - * - * @param array|string|Zend_Db_Expr $name The table name. - * @param string $cond Join on this condition. - * @param array|string $cols The columns to select from the joined table. - * @param string $schema The database name to specify, if any. - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function joinLeft($name, $cond, $cols = self::SQL_WILDCARD, $schema = null) - { - return $this->_join(self::LEFT_JOIN, $name, $cond, $cols, $schema); - } - - /** - * Add a RIGHT OUTER JOIN table and colums to the query. - * Right outer join is the complement of left outer join. - * All rows from the right operand table are included, - * matching rows from the left operand table included, - * and the columns from the left operand table are filled - * with NULLs if no row exists matching the right table. - * - * The $name and $cols parameters follow the same logic - * as described in the from() method. - * - * @param array|string|Zend_Db_Expr $name The table name. - * @param string $cond Join on this condition. - * @param array|string $cols The columns to select from the joined table. - * @param string $schema The database name to specify, if any. - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function joinRight($name, $cond, $cols = self::SQL_WILDCARD, $schema = null) - { - return $this->_join(self::RIGHT_JOIN, $name, $cond, $cols, $schema); - } - - /** - * Add a FULL OUTER JOIN table and colums to the query. - * A full outer join is like combining a left outer join - * and a right outer join. All rows from both tables are - * included, paired with each other on the same row of the - * result set if they satisfy the join condition, and otherwise - * paired with NULLs in place of columns from the other table. - * - * The $name and $cols parameters follow the same logic - * as described in the from() method. - * - * @param array|string|Zend_Db_Expr $name The table name. - * @param string $cond Join on this condition. - * @param array|string $cols The columns to select from the joined table. - * @param string $schema The database name to specify, if any. - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function joinFull($name, $cond, $cols = self::SQL_WILDCARD, $schema = null) - { - return $this->_join(self::FULL_JOIN, $name, $cond, $cols, $schema); - } - - /** - * Add a CROSS JOIN table and colums to the query. - * A cross join is a cartesian product; there is no join condition. - * - * The $name and $cols parameters follow the same logic - * as described in the from() method. - * - * @param array|string|Zend_Db_Expr $name The table name. - * @param array|string $cols The columns to select from the joined table. - * @param string $schema The database name to specify, if any. - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function joinCross($name, $cols = self::SQL_WILDCARD, $schema = null) - { - return $this->_join(self::CROSS_JOIN, $name, null, $cols, $schema); - } - - /** - * Add a NATURAL JOIN table and colums to the query. - * A natural join assumes an equi-join across any column(s) - * that appear with the same name in both tables. - * Only natural inner joins are supported by this API, - * even though SQL permits natural outer joins as well. - * - * The $name and $cols parameters follow the same logic - * as described in the from() method. - * - * @param array|string|Zend_Db_Expr $name The table name. - * @param array|string $cols The columns to select from the joined table. - * @param string $schema The database name to specify, if any. - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function joinNatural($name, $cols = self::SQL_WILDCARD, $schema = null) - { - return $this->_join(self::NATURAL_JOIN, $name, null, $cols, $schema); - } - - /** - * Adds a WHERE condition to the query by AND. - * - * If a value is passed as the second param, it will be quoted - * and replaced into the condition wherever a question-mark - * appears. Array values are quoted and comma-separated. - * - * - * // simplest but non-secure - * $select->where("id = $id"); - * - * // secure (ID is quoted but matched anyway) - * $select->where('id = ?', $id); - * - * // alternatively, with named binding - * $select->where('id = :id'); - * - * - * Note that it is more correct to use named bindings in your - * queries for values other than strings. When you use named - * bindings, don't forget to pass the values when actually - * making a query: - * - * - * $db->fetchAll($select, array('id' => 5)); - * - * - * @param string $cond The WHERE condition. - * @param mixed $value OPTIONAL The value to quote into the condition. - * @param int $type OPTIONAL The type of the given value - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function where($cond, $value = null, $type = null) - { - $this->_parts[self::WHERE][] = $this->_where($cond, $value, $type, true); - - return $this; - } - - /** - * Adds a WHERE condition to the query by OR. - * - * Otherwise identical to where(). - * - * @param string $cond The WHERE condition. - * @param mixed $value OPTIONAL The value to quote into the condition. - * @param int $type OPTIONAL The type of the given value - * @return Zend_Db_Select This Zend_Db_Select object. - * - * @see where() - */ - public function orWhere($cond, $value = null, $type = null) - { - $this->_parts[self::WHERE][] = $this->_where($cond, $value, $type, false); - - return $this; - } - - /** - * Adds grouping to the query. - * - * @param array|string $spec The column(s) to group by. - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function group($spec) - { - if (!is_array($spec)) { - $spec = array($spec); - } - - foreach ($spec as $val) { - if (preg_match('/\(.*\)/', (string) $val)) { - $val = new Zend_Db_Expr($val); - } - $this->_parts[self::GROUP][] = $val; - } - - return $this; - } - - /** - * Adds a HAVING condition to the query by AND. - * - * If a value is passed as the second param, it will be quoted - * and replaced into the condition wherever a question-mark - * appears. See {@link where()} for an example - * - * @param string $cond The HAVING condition. - * @param mixed $value OPTIONAL The value to quote into the condition. - * @param int $type OPTIONAL The type of the given value - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function having($cond, $value = null, $type = null) - { - if ($value !== null) { - $cond = $this->_adapter->quoteInto($cond, $value, $type); - } - - if ($this->_parts[self::HAVING]) { - $this->_parts[self::HAVING][] = self::SQL_AND . " ($cond)"; - } else { - $this->_parts[self::HAVING][] = "($cond)"; - } - - return $this; - } - - /** - * Adds a HAVING condition to the query by OR. - * - * Otherwise identical to orHaving(). - * - * @param string $cond The HAVING condition. - * @param mixed $value OPTIONAL The value to quote into the condition. - * @param int $type OPTIONAL The type of the given value - * @return Zend_Db_Select This Zend_Db_Select object. - * - * @see having() - */ - public function orHaving($cond, $value = null, $type = null) - { - if ($value !== null) { - $cond = $this->_adapter->quoteInto($cond, $value, $type); - } - - if ($this->_parts[self::HAVING]) { - $this->_parts[self::HAVING][] = self::SQL_OR . " ($cond)"; - } else { - $this->_parts[self::HAVING][] = "($cond)"; - } - - return $this; - } - - /** - * Adds a row order to the query. - * - * @param mixed $spec The column(s) and direction to order by. - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function order($spec) - { - if (!is_array($spec)) { - $spec = array($spec); - } - - // force 'ASC' or 'DESC' on each order spec, default is ASC. - foreach ($spec as $val) { - if ($val instanceof Zend_Db_Expr) { - $expr = $val->__toString(); - if (empty($expr)) { - continue; - } - $this->_parts[self::ORDER][] = $val; - } else { - if (empty($val)) { - continue; - } - $direction = self::SQL_ASC; - if (preg_match('/(.*\W)(' . self::SQL_ASC . '|' . self::SQL_DESC . ')\b/si', $val, $matches)) { - $val = trim($matches[1]); - $direction = $matches[2]; - } - if (preg_match('/\(.*\)/', $val)) { - $val = new Zend_Db_Expr($val); - } - $this->_parts[self::ORDER][] = array($val, $direction); - } - } - - return $this; - } - - /** - * Sets a limit count and offset to the query. - * - * @param int $count OPTIONAL The number of rows to return. - * @param int $offset OPTIONAL Start returning after this many rows. - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function limit($count = null, $offset = null) - { - $this->_parts[self::LIMIT_COUNT] = (int) $count; - $this->_parts[self::LIMIT_OFFSET] = (int) $offset; - return $this; - } - - /** - * Sets the limit and count by page number. - * - * @param int $page Limit results to this page number. - * @param int $rowCount Use this many rows per page. - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function limitPage($page, $rowCount) - { - $page = ($page > 0) ? $page : 1; - $rowCount = ($rowCount > 0) ? $rowCount : 1; - $this->_parts[self::LIMIT_COUNT] = (int) $rowCount; - $this->_parts[self::LIMIT_OFFSET] = (int) $rowCount * ($page - 1); - return $this; - } - - /** - * Makes the query SELECT FOR UPDATE. - * - * @param bool $flag Whether or not the SELECT is FOR UPDATE (default true). - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function forUpdate($flag = true) - { - $this->_parts[self::FOR_UPDATE] = (bool) $flag; - return $this; - } - - /** - * Get part of the structured information for the currect query. - * - * @param string $part - * @return mixed - * @throws Zend_Db_Select_Exception - */ - public function getPart($part) - { - $part = strtolower($part); - if (!array_key_exists($part, $this->_parts)) { - require_once 'Zend/Db/Select/Exception.php'; - throw new Zend_Db_Select_Exception("Invalid Select part '$part'"); - } - return $this->_parts[$part]; - } - - /** - * Executes the current select object and returns the result - * - * @param integer $fetchMode OPTIONAL - * @param mixed $bind An array of data to bind to the placeholders. - * @return PDO_Statement|Zend_Db_Statement - */ - public function query($fetchMode = null, $bind = array()) - { - if (!empty($bind)) { - $this->bind($bind); - } - - $stmt = $this->_adapter->query($this); - if ($fetchMode == null) { - $fetchMode = $this->_adapter->getFetchMode(); - } - $stmt->setFetchMode($fetchMode); - return $stmt; - } - - /** - * Converts this object to an SQL SELECT string. - * - * @return string|null This object as a SELECT string. (or null if a string cannot be produced.) - */ - public function assemble() - { - $sql = self::SQL_SELECT; - foreach (array_keys(self::$_partsInit) as $part) { - $method = '_render' . ucfirst($part); - if (method_exists($this, $method)) { - $sql = $this->$method($sql); - } - } - return $sql; - } - - /** - * Clear parts of the Select object, or an individual part. - * - * @param string $part OPTIONAL - * @return Zend_Db_Select - */ - public function reset($part = null) - { - if ($part == null) { - $this->_parts = self::$_partsInit; - } else if (array_key_exists($part, self::$_partsInit)) { - $this->_parts[$part] = self::$_partsInit[$part]; - } - return $this; - } - - /** - * Gets the Zend_Db_Adapter_Abstract for this - * particular Zend_Db_Select object. - * - * @return Zend_Db_Adapter_Abstract - */ - public function getAdapter() - { - return $this->_adapter; - } - - /** - * Populate the {@link $_parts} 'join' key - * - * Does the dirty work of populating the join key. - * - * The $name and $cols parameters follow the same logic - * as described in the from() method. - * - * @param null|string $type Type of join; inner, left, and null are currently supported - * @param array|string|Zend_Db_Expr $name Table name - * @param string $cond Join on this condition - * @param array|string $cols The columns to select from the joined table - * @param string $schema The database name to specify, if any. - * @return Zend_Db_Select This Zend_Db_Select object - * @throws Zend_Db_Select_Exception - */ - protected function _join($type, $name, $cond, $cols, $schema = null) - { - if (!in_array($type, self::$_joinTypes) && $type != self::FROM) { - /** - * @see Zend_Db_Select_Exception - */ - require_once 'Zend/Db/Select/Exception.php'; - throw new Zend_Db_Select_Exception("Invalid join type '$type'"); - } - - if (count($this->_parts[self::UNION])) { - require_once 'Zend/Db/Select/Exception.php'; - throw new Zend_Db_Select_Exception("Invalid use of table with " . self::SQL_UNION); - } - - if (empty($name)) { - $correlationName = $tableName = ''; - } else if (is_array($name)) { - // Must be array($correlationName => $tableName) or array($ident, ...) - foreach ($name as $_correlationName => $_tableName) { - if (is_string($_correlationName)) { - // We assume the key is the correlation name and value is the table name - $tableName = $_tableName; - $correlationName = $_correlationName; - } else { - // We assume just an array of identifiers, with no correlation name - $tableName = $_tableName; - $correlationName = $this->_uniqueCorrelation($tableName); - } - break; - } - } else if ($name instanceof Zend_Db_Expr|| $name instanceof Zend_Db_Select) { - $tableName = $name; - $correlationName = $this->_uniqueCorrelation('t'); - } else if (preg_match('/^(.+)\s+AS\s+(.+)$/i', $name, $m)) { - $tableName = $m[1]; - $correlationName = $m[2]; - } else { - $tableName = $name; - $correlationName = $this->_uniqueCorrelation($tableName); - } - - // Schema from table name overrides schema argument - if (!is_object($tableName) && false !== strpos($tableName, '.')) { - list($schema, $tableName) = explode('.', $tableName); - } - - $lastFromCorrelationName = null; - if (!empty($correlationName)) { - if (array_key_exists($correlationName, $this->_parts[self::FROM])) { - /** - * @see Zend_Db_Select_Exception - */ - require_once 'Zend/Db/Select/Exception.php'; - throw new Zend_Db_Select_Exception("You cannot define a correlation name '$correlationName' more than once"); - } - - if ($type == self::FROM) { - // append this from after the last from joinType - $tmpFromParts = $this->_parts[self::FROM]; - $this->_parts[self::FROM] = array(); - // move all the froms onto the stack - while ($tmpFromParts) { - $currentCorrelationName = key($tmpFromParts); - if ($tmpFromParts[$currentCorrelationName]['joinType'] != self::FROM) { - break; - } - $lastFromCorrelationName = $currentCorrelationName; - $this->_parts[self::FROM][$currentCorrelationName] = array_shift($tmpFromParts); - } - } else { - $tmpFromParts = array(); - } - $this->_parts[self::FROM][$correlationName] = array( - 'joinType' => $type, - 'schema' => $schema, - 'tableName' => $tableName, - 'joinCondition' => $cond - ); - while ($tmpFromParts) { - $currentCorrelationName = key($tmpFromParts); - $this->_parts[self::FROM][$currentCorrelationName] = array_shift($tmpFromParts); - } - } - - // add to the columns from this joined table - if ($type == self::FROM && $lastFromCorrelationName == null) { - $lastFromCorrelationName = true; - } - $this->_tableCols($correlationName, $cols, $lastFromCorrelationName); - - return $this; - } - - /** - * Handle JOIN... USING... syntax - * - * This is functionality identical to the existing JOIN methods, however - * the join condition can be passed as a single column name. This method - * then completes the ON condition by using the same field for the FROM - * table and the JOIN table. - * - * - * $select = $db->select()->from('table1') - * ->joinUsing('table2', 'column1'); - * - * // SELECT * FROM table1 JOIN table2 ON table1.column1 = table2.column2 - * - * - * These joins are called by the developer simply by adding 'Using' to the - * method name. E.g. - * * joinUsing - * * joinInnerUsing - * * joinFullUsing - * * joinRightUsing - * * joinLeftUsing - * - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function _joinUsing($type, $name, $cond, $cols = '*', $schema = null) - { - if (empty($this->_parts[self::FROM])) { - require_once 'Zend/Db/Select/Exception.php'; - throw new Zend_Db_Select_Exception("You can only perform a joinUsing after specifying a FROM table"); - } - - $join = $this->_adapter->quoteIdentifier(key($this->_parts[self::FROM]), true); - $from = $this->_adapter->quoteIdentifier($this->_uniqueCorrelation($name), true); - - $joinCond = array(); - foreach ((array)$cond as $fieldName) { - $cond1 = $from . '.' . $fieldName; - $cond2 = $join . '.' . $fieldName; - $joinCond[] = $cond1 . ' = ' . $cond2; - } - $cond = implode(' '.self::SQL_AND.' ', $joinCond); - - return $this->_join($type, $name, $cond, $cols, $schema); - } - - /** - * Generate a unique correlation name - * - * @param string|array $name A qualified identifier. - * @return string A unique correlation name. - */ - private function _uniqueCorrelation($name) - { - if (is_array($name)) { - $k = key($name); - $c = is_string($k) ? $k : end($name); - } else { - // Extract just the last name of a qualified table name - $dot = strrpos($name,'.'); - $c = ($dot === false) ? $name : substr($name, $dot+1); - } - for ($i = 2; array_key_exists($c, $this->_parts[self::FROM]); ++$i) { - $c = $name . '_' . (string) $i; - } - return $c; - } - - /** - * Adds to the internal table-to-column mapping array. - * - * @param string $tbl The table/join the columns come from. - * @param array|string $cols The list of columns; preferably as - * an array, but possibly as a string containing one column. - * @param bool|string True if it should be prepended, a correlation name if it should be inserted - * @return void - */ - protected function _tableCols($correlationName, $cols, $afterCorrelationName = null) - { - if (!is_array($cols)) { - $cols = array($cols); - } - - if ($correlationName == null) { - $correlationName = ''; - } - - $columnValues = array(); - - foreach (array_filter($cols) as $alias => $col) { - $currentCorrelationName = $correlationName; - if (is_string($col)) { - // Check for a column matching " AS " and extract the alias name - if (preg_match('/^(.+)\s+' . self::SQL_AS . '\s+(.+)$/i', $col, $m)) { - $col = $m[1]; - $alias = $m[2]; - } - // Check for columns that look like functions and convert to Zend_Db_Expr - if (preg_match('/\(.*\)/', $col)) { - $col = new Zend_Db_Expr($col); - } elseif (preg_match('/(.+)\.(.+)/', $col, $m)) { - $currentCorrelationName = $m[1]; - $col = $m[2]; - } - } - $columnValues[] = array($currentCorrelationName, $col, is_string($alias) ? $alias : null); - } - - if ($columnValues) { - - // should we attempt to prepend or insert these values? - if ($afterCorrelationName === true || is_string($afterCorrelationName)) { - $tmpColumns = $this->_parts[self::COLUMNS]; - $this->_parts[self::COLUMNS] = array(); - } else { - $tmpColumns = array(); - } - - // find the correlation name to insert after - if (is_string($afterCorrelationName)) { - while ($tmpColumns) { - $this->_parts[self::COLUMNS][] = $currentColumn = array_shift($tmpColumns); - if ($currentColumn[0] == $afterCorrelationName) { - break; - } - } - } - - // apply current values to current stack - foreach ($columnValues as $columnValue) { - array_push($this->_parts[self::COLUMNS], $columnValue); - } - - // finish ensuring that all previous values are applied (if they exist) - while ($tmpColumns) { - array_push($this->_parts[self::COLUMNS], array_shift($tmpColumns)); - } - } - } - - /** - * Internal function for creating the where clause - * - * @param string $condition - * @param mixed $value optional - * @param string $type optional - * @param boolean $bool true = AND, false = OR - * @return string clause - */ - protected function _where($condition, $value = null, $type = null, $bool = true) - { - if (count($this->_parts[self::UNION])) { - require_once 'Zend/Db/Select/Exception.php'; - throw new Zend_Db_Select_Exception("Invalid use of where clause with " . self::SQL_UNION); - } - - if ($value !== null) { - $condition = $this->_adapter->quoteInto($condition, $value, $type); - } - - $cond = ""; - if ($this->_parts[self::WHERE]) { - if ($bool === true) { - $cond = self::SQL_AND . ' '; - } else { - $cond = self::SQL_OR . ' '; - } - } - - return $cond . "($condition)"; - } - - /** - * @return array - */ - protected function _getDummyTable() - { - return array(); - } - - /** - * Return a quoted schema name - * - * @param string $schema The schema name OPTIONAL - * @return string|null - */ - protected function _getQuotedSchema($schema = null) - { - if ($schema === null) { - return null; - } - return $this->_adapter->quoteIdentifier($schema, true) . '.'; - } - - /** - * Return a quoted table name - * - * @param string $tableName The table name - * @param string $correlationName The correlation name OPTIONAL - * @return string - */ - protected function _getQuotedTable($tableName, $correlationName = null) - { - return $this->_adapter->quoteTableAs($tableName, $correlationName, true); - } - - /** - * Render DISTINCT clause - * - * @param string $sql SQL query - * @return string - */ - protected function _renderDistinct($sql) - { - if ($this->_parts[self::DISTINCT]) { - $sql .= ' ' . self::SQL_DISTINCT; - } - - return $sql; - } - - /** - * Render DISTINCT clause - * - * @param string $sql SQL query - * @return string|null - */ - protected function _renderColumns($sql) - { - if (!count($this->_parts[self::COLUMNS])) { - return null; - } - - $columns = array(); - foreach ($this->_parts[self::COLUMNS] as $columnEntry) { - list($correlationName, $column, $alias) = $columnEntry; - if ($column instanceof Zend_Db_Expr) { - $columns[] = $this->_adapter->quoteColumnAs($column, $alias, true); - } else { - if ($column == self::SQL_WILDCARD) { - $column = new Zend_Db_Expr(self::SQL_WILDCARD); - $alias = null; - } - if (empty($correlationName)) { - $columns[] = $this->_adapter->quoteColumnAs($column, $alias, true); - } else { - $columns[] = $this->_adapter->quoteColumnAs(array($correlationName, $column), $alias, true); - } - } - } - - return $sql .= ' ' . implode(', ', $columns); - } - - /** - * Render FROM clause - * - * @param string $sql SQL query - * @return string - */ - protected function _renderFrom($sql) - { - /* - * If no table specified, use RDBMS-dependent solution - * for table-less query. e.g. DUAL in Oracle. - */ - if (empty($this->_parts[self::FROM])) { - $this->_parts[self::FROM] = $this->_getDummyTable(); - } - - $from = array(); - - foreach ($this->_parts[self::FROM] as $correlationName => $table) { - $tmp = ''; - - $joinType = ($table['joinType'] == self::FROM) ? self::INNER_JOIN : $table['joinType']; - - // Add join clause (if applicable) - if (! empty($from)) { - $tmp .= ' ' . strtoupper($joinType) . ' '; - } - - $tmp .= $this->_getQuotedSchema($table['schema']); - $tmp .= $this->_getQuotedTable($table['tableName'], $correlationName); - - // Add join conditions (if applicable) - if (!empty($from) && ! empty($table['joinCondition'])) { - $tmp .= ' ' . self::SQL_ON . ' ' . $table['joinCondition']; - } - - // Add the table name and condition add to the list - $from[] = $tmp; - } - - // Add the list of all joins - if (!empty($from)) { - $sql .= ' ' . self::SQL_FROM . ' ' . implode("\n", $from); - } - - return $sql; - } - - /** - * Render UNION query - * - * @param string $sql SQL query - * @return string - */ - protected function _renderUnion($sql) - { - if ($this->_parts[self::UNION]) { - $parts = count($this->_parts[self::UNION]); - foreach ($this->_parts[self::UNION] as $cnt => $union) { - list($target, $type) = $union; - if ($target instanceof Zend_Db_Select) { - $target = $target->assemble(); - } - $sql .= $target; - if ($cnt < $parts - 1) { - $sql .= ' ' . $type . ' '; - } - } - } - - return $sql; - } - - /** - * Render WHERE clause - * - * @param string $sql SQL query - * @return string - */ - protected function _renderWhere($sql) - { - if ($this->_parts[self::FROM] && $this->_parts[self::WHERE]) { - $sql .= ' ' . self::SQL_WHERE . ' ' . implode(' ', $this->_parts[self::WHERE]); - } - - return $sql; - } - - /** - * Render GROUP clause - * - * @param string $sql SQL query - * @return string - */ - protected function _renderGroup($sql) - { - if ($this->_parts[self::FROM] && $this->_parts[self::GROUP]) { - $group = array(); - foreach ($this->_parts[self::GROUP] as $term) { - $group[] = $this->_adapter->quoteIdentifier($term, true); - } - $sql .= ' ' . self::SQL_GROUP_BY . ' ' . implode(",\n\t", $group); - } - - return $sql; - } - - /** - * Render HAVING clause - * - * @param string $sql SQL query - * @return string - */ - protected function _renderHaving($sql) - { - if ($this->_parts[self::FROM] && $this->_parts[self::HAVING]) { - $sql .= ' ' . self::SQL_HAVING . ' ' . implode(' ', $this->_parts[self::HAVING]); - } - - return $sql; - } - - /** - * Render ORDER clause - * - * @param string $sql SQL query - * @return string - */ - protected function _renderOrder($sql) - { - if ($this->_parts[self::ORDER]) { - $order = array(); - foreach ($this->_parts[self::ORDER] as $term) { - if (is_array($term)) { - if(is_numeric($term[0]) && strval(intval($term[0])) == $term[0]) { - $order[] = (int)trim($term[0]) . ' ' . $term[1]; - } else { - $order[] = $this->_adapter->quoteIdentifier($term[0], true) . ' ' . $term[1]; - } - } else if (is_numeric($term) && strval(intval($term)) == $term) { - $order[] = (int)trim($term); - } else { - $order[] = $this->_adapter->quoteIdentifier($term, true); - } - } - $sql .= ' ' . self::SQL_ORDER_BY . ' ' . implode(', ', $order); - } - - return $sql; - } - - /** - * Render LIMIT OFFSET clause - * - * @param string $sql SQL query - * @return string - */ - protected function _renderLimitoffset($sql) - { - $count = 0; - $offset = 0; - - if (!empty($this->_parts[self::LIMIT_OFFSET])) { - $offset = (int) $this->_parts[self::LIMIT_OFFSET]; - $count = PHP_INT_MAX; - } - - if (!empty($this->_parts[self::LIMIT_COUNT])) { - $count = (int) $this->_parts[self::LIMIT_COUNT]; - } - - /* - * Add limits clause - */ - if ($count > 0) { - $sql = trim($this->_adapter->limit($sql, $count, $offset)); - } - - return $sql; - } - - /** - * Render FOR UPDATE clause - * - * @param string $sql SQL query - * @return string - */ - protected function _renderForupdate($sql) - { - if ($this->_parts[self::FOR_UPDATE]) { - $sql .= ' ' . self::SQL_FOR_UPDATE; - } - - return $sql; - } - - /** - * Turn magic function calls into non-magic function calls - * for joinUsing syntax - * - * @param string $method - * @param array $args OPTIONAL Zend_Db_Table_Select query modifier - * @return Zend_Db_Select - * @throws Zend_Db_Select_Exception If an invalid method is called. - */ - public function __call($method, array $args) - { - $matches = array(); - - /** - * Recognize methods for Has-Many cases: - * findParent() - * findParentBy() - * Use the non-greedy pattern repeat modifier e.g. \w+? - */ - if (preg_match('/^join([a-zA-Z]*?)Using$/', $method, $matches)) { - $type = strtolower($matches[1]); - if ($type) { - $type .= ' join'; - if (!in_array($type, self::$_joinTypes)) { - require_once 'Zend/Db/Select/Exception.php'; - throw new Zend_Db_Select_Exception("Unrecognized method '$method()'"); - } - if (in_array($type, array(self::CROSS_JOIN, self::NATURAL_JOIN))) { - require_once 'Zend/Db/Select/Exception.php'; - throw new Zend_Db_Select_Exception("Cannot perform a joinUsing with method '$method()'"); - } - } else { - $type = self::INNER_JOIN; - } - array_unshift($args, $type); - return call_user_func_array(array($this, '_joinUsing'), $args); - } - - require_once 'Zend/Db/Select/Exception.php'; - throw new Zend_Db_Select_Exception("Unrecognized method '$method()'"); - } - - /** - * Implements magic method. - * - * @return string This object as a SELECT string. - */ - public function __toString() - { - try { - $sql = $this->assemble(); - } catch (Exception $e) { - trigger_error($e->getMessage(), E_USER_WARNING); - $sql = ''; - } - return (string)$sql; - } - -} diff --git a/library/Zend/Db/Select/Exception.php b/library/Zend/Db/Select/Exception.php deleted file mode 100644 index deb046c9..00000000 --- a/library/Zend/Db/Select/Exception.php +++ /dev/null @@ -1,39 +0,0 @@ -_adapter = $adapter; - if ($sql instanceof Zend_Db_Select) { - $sql = $sql->assemble(); - } - $this->_parseParameters($sql); - $this->_prepare($sql); - - $this->_queryId = $this->_adapter->getProfiler()->queryStart($sql); - } - - /** - * Internal method called by abstract statment constructor to setup - * the driver level statement - * - * @return void - */ - protected function _prepare($sql) - { - return; - } - - /** - * @param string $sql - * @return void - */ - protected function _parseParameters($sql) - { - $sql = $this->_stripQuoted($sql); - - // split into text and params - $this->_sqlSplit = preg_split('/(\?|\:[a-zA-Z0-9_]+)/', - $sql, -1, PREG_SPLIT_DELIM_CAPTURE|PREG_SPLIT_NO_EMPTY); - - // map params - $this->_sqlParam = array(); - foreach ($this->_sqlSplit as $key => $val) { - if ($val == '?') { - if ($this->_adapter->supportsParameters('positional') === false) { - /** - * @see Zend_Db_Statement_Exception - */ - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception("Invalid bind-variable position '$val'"); - } - } else if ($val[0] == ':') { - if ($this->_adapter->supportsParameters('named') === false) { - /** - * @see Zend_Db_Statement_Exception - */ - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception("Invalid bind-variable name '$val'"); - } - } - $this->_sqlParam[] = $val; - } - - // set up for binding - $this->_bindParam = array(); - } - - /** - * Remove parts of a SQL string that contain quoted strings - * of values or identifiers. - * - * @param string $sql - * @return string - */ - protected function _stripQuoted($sql) - { - - // get the character for value quoting - // this should be ' - $q = $this->_adapter->quote('a'); - $q = $q[0]; - // get the value used as an escaped quote, - // e.g. \' or '' - $qe = $this->_adapter->quote($q); - $qe = substr($qe, 1, 2); - $qe = preg_quote($qe); - $escapeChar = substr($qe,0,1); - // remove 'foo\'bar' - if (!empty($q)) { - $escapeChar = preg_quote($escapeChar); - // this segfaults only after 65,000 characters instead of 9,000 - $sql = preg_replace("/$q([^$q{$escapeChar}]*|($qe)*)*$q/s", '', $sql); - } - - // get a version of the SQL statement with all quoted - // values and delimited identifiers stripped out - // remove "foo\"bar" - $sql = preg_replace("/\"(\\\\\"|[^\"])*\"/Us", '', $sql); - - // get the character for delimited id quotes, - // this is usually " but in MySQL is ` - $d = $this->_adapter->quoteIdentifier('a'); - $d = $d[0]; - // get the value used as an escaped delimited id quote, - // e.g. \" or "" or \` - $de = $this->_adapter->quoteIdentifier($d); - $de = substr($de, 1, 2); - $de = preg_quote($de); - // Note: $de and $d where never used..., now they are: - $sql = preg_replace("/$d($de|\\\\{2}|[^$d])*$d/Us", '', $sql); - return $sql; - } - - /** - * Bind a column of the statement result set to a PHP variable. - * - * @param string $column Name the column in the result set, either by - * position or by name. - * @param mixed $param Reference to the PHP variable containing the value. - * @param mixed $type OPTIONAL - * @return bool - */ - public function bindColumn($column, &$param, $type = null) - { - $this->_bindColumn[$column] =& $param; - return true; - } - - /** - * Binds a parameter to the specified variable name. - * - * @param mixed $parameter Name the parameter, either integer or string. - * @param mixed $variable Reference to PHP variable containing the value. - * @param mixed $type OPTIONAL Datatype of SQL parameter. - * @param mixed $length OPTIONAL Length of SQL parameter. - * @param mixed $options OPTIONAL Other options. - * @return bool - */ - public function bindParam($parameter, &$variable, $type = null, $length = null, $options = null) - { - if (!is_int($parameter) && !is_string($parameter)) { - /** - * @see Zend_Db_Statement_Exception - */ - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception('Invalid bind-variable position'); - } - - $position = null; - if (($intval = (int) $parameter) > 0 && $this->_adapter->supportsParameters('positional')) { - if ($intval >= 1 || $intval <= count($this->_sqlParam)) { - $position = $intval; - } - } else if ($this->_adapter->supportsParameters('named')) { - if ($parameter[0] != ':') { - $parameter = ':' . $parameter; - } - if (in_array($parameter, $this->_sqlParam) !== false) { - $position = $parameter; - } - } - - if ($position === null) { - /** - * @see Zend_Db_Statement_Exception - */ - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception("Invalid bind-variable position '$parameter'"); - } - - // Finally we are assured that $position is valid - $this->_bindParam[$position] =& $variable; - return $this->_bindParam($position, $variable, $type, $length, $options); - } - - /** - * Binds a value to a parameter. - * - * @param mixed $parameter Name the parameter, either integer or string. - * @param mixed $value Scalar value to bind to the parameter. - * @param mixed $type OPTIONAL Datatype of the parameter. - * @return bool - */ - public function bindValue($parameter, $value, $type = null) - { - return $this->bindParam($parameter, $value, $type); - } - - /** - * Executes a prepared statement. - * - * @param array $params OPTIONAL Values to bind to parameter placeholders. - * @return bool - */ - public function execute(array $params = null) - { - /* - * Simple case - no query profiler to manage. - */ - if ($this->_queryId === null) { - return $this->_execute($params); - } - - /* - * Do the same thing, but with query profiler - * management before and after the execute. - */ - $prof = $this->_adapter->getProfiler(); - $qp = $prof->getQueryProfile($this->_queryId); - if ($qp->hasEnded()) { - $this->_queryId = $prof->queryClone($qp); - $qp = $prof->getQueryProfile($this->_queryId); - } - if ($params !== null) { - $qp->bindParams($params); - } else { - $qp->bindParams($this->_bindParam); - } - $qp->start($this->_queryId); - - $retval = $this->_execute($params); - - $prof->queryEnd($this->_queryId); - - return $retval; - } - - /** - * Returns an array containing all of the result set rows. - * - * @param int $style OPTIONAL Fetch mode. - * @param int $col OPTIONAL Column number, if fetch mode is by column. - * @return array Collection of rows, each in a format by the fetch mode. - */ - public function fetchAll($style = null, $col = null) - { - $data = array(); - if ($style === Zend_Db::FETCH_COLUMN && $col === null) { - $col = 0; - } - if ($col === null) { - while ($row = $this->fetch($style)) { - $data[] = $row; - } - } else { - while (false !== ($val = $this->fetchColumn($col))) { - $data[] = $val; - } - } - return $data; - } - - /** - * Returns a single column from the next row of a result set. - * - * @param int $col OPTIONAL Position of the column to fetch. - * @return string One value from the next row of result set, or false. - */ - public function fetchColumn($col = 0) - { - $data = array(); - $col = (int) $col; - $row = $this->fetch(Zend_Db::FETCH_NUM); - if (!is_array($row)) { - return false; - } - return $row[$col]; - } - - /** - * Fetches the next row and returns it as an object. - * - * @param string $class OPTIONAL Name of the class to create. - * @param array $config OPTIONAL Constructor arguments for the class. - * @return mixed One object instance of the specified class, or false. - */ - public function fetchObject($class = 'stdClass', array $config = array()) - { - $obj = new $class($config); - $row = $this->fetch(Zend_Db::FETCH_ASSOC); - if (!is_array($row)) { - return false; - } - foreach ($row as $key => $val) { - $obj->$key = $val; - } - return $obj; - } - - /** - * Retrieve a statement attribute. - * - * @param string $key Attribute name. - * @return mixed Attribute value. - */ - public function getAttribute($key) - { - if (array_key_exists($key, $this->_attribute)) { - return $this->_attribute[$key]; - } - } - - /** - * Set a statement attribute. - * - * @param string $key Attribute name. - * @param mixed $val Attribute value. - * @return bool - */ - public function setAttribute($key, $val) - { - $this->_attribute[$key] = $val; - } - - /** - * Set the default fetch mode for this statement. - * - * @param int $mode The fetch mode. - * @return bool - * @throws Zend_Db_Statement_Exception - */ - public function setFetchMode($mode) - { - switch ($mode) { - case Zend_Db::FETCH_NUM: - case Zend_Db::FETCH_ASSOC: - case Zend_Db::FETCH_BOTH: - case Zend_Db::FETCH_OBJ: - $this->_fetchMode = $mode; - break; - case Zend_Db::FETCH_BOUND: - default: - $this->closeCursor(); - /** - * @see Zend_Db_Statement_Exception - */ - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception('invalid fetch mode'); - break; - } - } - - /** - * Helper function to map retrieved row - * to bound column variables - * - * @param array $row - * @return bool True - */ - public function _fetchBound($row) - { - foreach ($row as $key => $value) { - // bindColumn() takes 1-based integer positions - // but fetch() returns 0-based integer indexes - if (is_int($key)) { - $key++; - } - // set results only to variables that were bound previously - if (isset($this->_bindColumn[$key])) { - $this->_bindColumn[$key] = $value; - } - } - return true; - } - - /** - * Gets the Zend_Db_Adapter_Abstract for this - * particular Zend_Db_Statement object. - * - * @return Zend_Db_Adapter_Abstract - */ - public function getAdapter() - { - return $this->_adapter; - } - - /** - * Gets the resource or object setup by the - * _parse - * @return unknown_type - */ - public function getDriverStatement() - { - return $this->_stmt; - } -} diff --git a/library/Zend/Db/Statement/Db2.php b/library/Zend/Db/Statement/Db2.php deleted file mode 100644 index c53d1b68..00000000 --- a/library/Zend/Db/Statement/Db2.php +++ /dev/null @@ -1,360 +0,0 @@ -_adapter->getConnection(); - - // db2_prepare on i5 emits errors, these need to be - // suppressed so that proper exceptions can be thrown - $this->_stmt = @db2_prepare($connection, $sql); - - if (!$this->_stmt) { - /** - * @see Zend_Db_Statement_Db2_Exception - */ - require_once 'Zend/Db/Statement/Db2/Exception.php'; - throw new Zend_Db_Statement_Db2_Exception( - db2_stmt_errormsg(), - db2_stmt_error() - ); - } - } - - /** - * Binds a parameter to the specified variable name. - * - * @param mixed $parameter Name the parameter, either integer or string. - * @param mixed $variable Reference to PHP variable containing the value. - * @param mixed $type OPTIONAL Datatype of SQL parameter. - * @param mixed $length OPTIONAL Length of SQL parameter. - * @param mixed $options OPTIONAL Other options. - * @return bool - * @throws Zend_Db_Statement_Db2_Exception - */ - public function _bindParam($parameter, &$variable, $type = null, $length = null, $options = null) - { - if ($type === null) { - $type = DB2_PARAM_IN; - } - - if (isset($options['data-type'])) { - $datatype = $options['data-type']; - } else { - $datatype = DB2_CHAR; - } - - if (!db2_bind_param($this->_stmt, $parameter, "variable", $type, $datatype)) { - /** - * @see Zend_Db_Statement_Db2_Exception - */ - require_once 'Zend/Db/Statement/Db2/Exception.php'; - throw new Zend_Db_Statement_Db2_Exception( - db2_stmt_errormsg(), - db2_stmt_error() - ); - } - - return true; - } - - /** - * Closes the cursor, allowing the statement to be executed again. - * - * @return bool - */ - public function closeCursor() - { - if (!$this->_stmt) { - return false; - } - db2_free_stmt($this->_stmt); - $this->_stmt = false; - return true; - } - - - /** - * Returns the number of columns in the result set. - * Returns null if the statement has no result set metadata. - * - * @return int The number of columns. - */ - public function columnCount() - { - if (!$this->_stmt) { - return false; - } - return db2_num_fields($this->_stmt); - } - - /** - * Retrieves the error code, if any, associated with the last operation on - * the statement handle. - * - * @return string error code. - */ - public function errorCode() - { - if (!$this->_stmt) { - return false; - } - - $error = db2_stmt_error(); - if ($error === '') { - return false; - } - - return $error; - } - - /** - * Retrieves an array of error information, if any, associated with the - * last operation on the statement handle. - * - * @return array - */ - public function errorInfo() - { - $error = $this->errorCode(); - if ($error === false){ - return false; - } - - /* - * Return three-valued array like PDO. But DB2 does not distinguish - * between SQLCODE and native RDBMS error code, so repeat the SQLCODE. - */ - return array( - $error, - $error, - db2_stmt_errormsg() - ); - } - - /** - * Executes a prepared statement. - * - * @param array $params OPTIONAL Values to bind to parameter placeholders. - * @return bool - * @throws Zend_Db_Statement_Db2_Exception - */ - public function _execute(array $params = null) - { - if (!$this->_stmt) { - return false; - } - - $retval = true; - if ($params !== null) { - $retval = @db2_execute($this->_stmt, $params); - } else { - $retval = @db2_execute($this->_stmt); - } - - if ($retval === false) { - /** - * @see Zend_Db_Statement_Db2_Exception - */ - require_once 'Zend/Db/Statement/Db2/Exception.php'; - throw new Zend_Db_Statement_Db2_Exception( - db2_stmt_errormsg(), - db2_stmt_error()); - } - - $this->_keys = array(); - if ($field_num = $this->columnCount()) { - for ($i = 0; $i < $field_num; $i++) { - $name = db2_field_name($this->_stmt, $i); - $this->_keys[] = $name; - } - } - - $this->_values = array(); - if ($this->_keys) { - $this->_values = array_fill(0, count($this->_keys), null); - } - - return $retval; - } - - /** - * Fetches a row from the result set. - * - * @param int $style OPTIONAL Fetch mode for this fetch operation. - * @param int $cursor OPTIONAL Absolute, relative, or other. - * @param int $offset OPTIONAL Number for absolute or relative cursors. - * @return mixed Array, object, or scalar depending on fetch mode. - * @throws Zend_Db_Statement_Db2_Exception - */ - public function fetch($style = null, $cursor = null, $offset = null) - { - if (!$this->_stmt) { - return false; - } - - if ($style === null) { - $style = $this->_fetchMode; - } - - switch ($style) { - case Zend_Db::FETCH_NUM : - $row = db2_fetch_array($this->_stmt); - break; - case Zend_Db::FETCH_ASSOC : - $row = db2_fetch_assoc($this->_stmt); - break; - case Zend_Db::FETCH_BOTH : - $row = db2_fetch_both($this->_stmt); - break; - case Zend_Db::FETCH_OBJ : - $row = db2_fetch_object($this->_stmt); - break; - case Zend_Db::FETCH_BOUND: - $row = db2_fetch_both($this->_stmt); - if ($row !== false) { - return $this->_fetchBound($row); - } - break; - default: - /** - * @see Zend_Db_Statement_Db2_Exception - */ - require_once 'Zend/Db/Statement/Db2/Exception.php'; - throw new Zend_Db_Statement_Db2_Exception("Invalid fetch mode '$style' specified"); - break; - } - - return $row; - } - - /** - * Fetches the next row and returns it as an object. - * - * @param string $class OPTIONAL Name of the class to create. - * @param array $config OPTIONAL Constructor arguments for the class. - * @return mixed One object instance of the specified class. - */ - public function fetchObject($class = 'stdClass', array $config = array()) - { - $obj = $this->fetch(Zend_Db::FETCH_OBJ); - return $obj; - } - - /** - * Retrieves the next rowset (result set) for a SQL statement that has - * multiple result sets. An example is a stored procedure that returns - * the results of multiple queries. - * - * @return bool - * @throws Zend_Db_Statement_Db2_Exception - */ - public function nextRowset() - { - /** - * @see Zend_Db_Statement_Db2_Exception - */ - require_once 'Zend/Db/Statement/Db2/Exception.php'; - throw new Zend_Db_Statement_Db2_Exception(__FUNCTION__ . '() is not implemented'); - } - - /** - * Returns the number of rows affected by the execution of the - * last INSERT, DELETE, or UPDATE statement executed by this - * statement object. - * - * @return int The number of rows affected. - */ - public function rowCount() - { - if (!$this->_stmt) { - return false; - } - - $num = @db2_num_rows($this->_stmt); - - if ($num === false) { - return 0; - } - - return $num; - } - - /** - * Returns an array containing all of the result set rows. - * - * @param int $style OPTIONAL Fetch mode. - * @param int $col OPTIONAL Column number, if fetch mode is by column. - * @return array Collection of rows, each in a format by the fetch mode. - * - * Behaves like parent, but if limit() - * is used, the final result removes the extra column - * 'zend_db_rownum' - */ - public function fetchAll($style = null, $col = null) - { - $data = parent::fetchAll($style, $col); - $results = array(); - $remove = $this->_adapter->foldCase('ZEND_DB_ROWNUM'); - - foreach ($data as $row) { - if (is_array($row) && array_key_exists($remove, $row)) { - unset($row[$remove]); - } - $results[] = $row; - } - return $results; - } -} diff --git a/library/Zend/Db/Statement/Db2/Exception.php b/library/Zend/Db/Statement/Db2/Exception.php deleted file mode 100644 index bab24244..00000000 --- a/library/Zend/Db/Statement/Db2/Exception.php +++ /dev/null @@ -1,58 +0,0 @@ -message = $msg; - $this->code = $state; - } - -} - diff --git a/library/Zend/Db/Statement/Exception.php b/library/Zend/Db/Statement/Exception.php deleted file mode 100644 index 8fc60130..00000000 --- a/library/Zend/Db/Statement/Exception.php +++ /dev/null @@ -1,56 +0,0 @@ -getPrevious() !== null); - } - - /** - * @return Exception|null - */ - public function getChainedException() - { - return $this->getPrevious(); - } -} diff --git a/library/Zend/Db/Statement/Interface.php b/library/Zend/Db/Statement/Interface.php deleted file mode 100644 index bb0540c2..00000000 --- a/library/Zend/Db/Statement/Interface.php +++ /dev/null @@ -1,203 +0,0 @@ -_adapter->getConnection(); - - $this->_stmt = $mysqli->prepare($sql); - - if ($this->_stmt === false || $mysqli->errno) { - /** - * @see Zend_Db_Statement_Mysqli_Exception - */ - require_once 'Zend/Db/Statement/Mysqli/Exception.php'; - throw new Zend_Db_Statement_Mysqli_Exception("Mysqli prepare error: " . $mysqli->error, $mysqli->errno); - } - } - - /** - * Binds a parameter to the specified variable name. - * - * @param mixed $parameter Name the parameter, either integer or string. - * @param mixed $variable Reference to PHP variable containing the value. - * @param mixed $type OPTIONAL Datatype of SQL parameter. - * @param mixed $length OPTIONAL Length of SQL parameter. - * @param mixed $options OPTIONAL Other options. - * @return bool - * @throws Zend_Db_Statement_Mysqli_Exception - */ - protected function _bindParam($parameter, &$variable, $type = null, $length = null, $options = null) - { - return true; - } - - /** - * Closes the cursor and the statement. - * - * @return bool - */ - public function close() - { - if ($this->_stmt) { - $r = $this->_stmt->close(); - $this->_stmt = null; - return $r; - } - return false; - } - - /** - * Closes the cursor, allowing the statement to be executed again. - * - * @return bool - */ - public function closeCursor() - { - if ($stmt = $this->_stmt) { - $mysqli = $this->_adapter->getConnection(); - while ($mysqli->more_results()) { - $mysqli->next_result(); - } - $this->_stmt->free_result(); - return $this->_stmt->reset(); - } - return false; - } - - /** - * Returns the number of columns in the result set. - * Returns null if the statement has no result set metadata. - * - * @return int The number of columns. - */ - public function columnCount() - { - if (isset($this->_meta) && $this->_meta) { - return $this->_meta->field_count; - } - return 0; - } - - /** - * Retrieves the error code, if any, associated with the last operation on - * the statement handle. - * - * @return string error code. - */ - public function errorCode() - { - if (!$this->_stmt) { - return false; - } - return substr($this->_stmt->sqlstate, 0, 5); - } - - /** - * Retrieves an array of error information, if any, associated with the - * last operation on the statement handle. - * - * @return array - */ - public function errorInfo() - { - if (!$this->_stmt) { - return false; - } - return array( - substr($this->_stmt->sqlstate, 0, 5), - $this->_stmt->errno, - $this->_stmt->error, - ); - } - - /** - * Executes a prepared statement. - * - * @param array $params OPTIONAL Values to bind to parameter placeholders. - * @return bool - * @throws Zend_Db_Statement_Mysqli_Exception - */ - public function _execute(array $params = null) - { - if (!$this->_stmt) { - return false; - } - - // if no params were given as an argument to execute(), - // then default to the _bindParam array - if ($params === null) { - $params = $this->_bindParam; - } - // send $params as input parameters to the statement - if ($params) { - array_unshift($params, str_repeat('s', count($params))); - $stmtParams = array(); - foreach ($params as $k => &$value) { - $stmtParams[$k] = &$value; - } - call_user_func_array( - array($this->_stmt, 'bind_param'), - $stmtParams - ); - } - - // execute the statement - $retval = $this->_stmt->execute(); - if ($retval === false) { - /** - * @see Zend_Db_Statement_Mysqli_Exception - */ - require_once 'Zend/Db/Statement/Mysqli/Exception.php'; - throw new Zend_Db_Statement_Mysqli_Exception("Mysqli statement execute error : " . $this->_stmt->error, $this->_stmt->errno); - } - - - // retain metadata - if ($this->_meta === null) { - $this->_meta = $this->_stmt->result_metadata(); - if ($this->_stmt->errno) { - /** - * @see Zend_Db_Statement_Mysqli_Exception - */ - require_once 'Zend/Db/Statement/Mysqli/Exception.php'; - throw new Zend_Db_Statement_Mysqli_Exception("Mysqli statement metadata error: " . $this->_stmt->error, $this->_stmt->errno); - } - } - - // statements that have no result set do not return metadata - if ($this->_meta !== false) { - - // get the column names that will result - $this->_keys = array(); - foreach ($this->_meta->fetch_fields() as $col) { - $this->_keys[] = $this->_adapter->foldCase($col->name); - } - - // set up a binding space for result variables - $this->_values = array_fill(0, count($this->_keys), null); - - // set up references to the result binding space. - // just passing $this->_values in the call_user_func_array() - // below won't work, you need references. - $refs = array(); - foreach ($this->_values as $i => &$f) { - $refs[$i] = &$f; - } - - $this->_stmt->store_result(); - // bind to the result variables - call_user_func_array( - array($this->_stmt, 'bind_result'), - $this->_values - ); - } - return $retval; - } - - - /** - * Fetches a row from the result set. - * - * @param int $style OPTIONAL Fetch mode for this fetch operation. - * @param int $cursor OPTIONAL Absolute, relative, or other. - * @param int $offset OPTIONAL Number for absolute or relative cursors. - * @return mixed Array, object, or scalar depending on fetch mode. - * @throws Zend_Db_Statement_Mysqli_Exception - */ - public function fetch($style = null, $cursor = null, $offset = null) - { - if (!$this->_stmt) { - return false; - } - // fetch the next result - $retval = $this->_stmt->fetch(); - switch ($retval) { - case null: // end of data - case false: // error occurred - $this->_stmt->reset(); - return false; - default: - // fallthrough - } - - // make sure we have a fetch mode - if ($style === null) { - $style = $this->_fetchMode; - } - - // dereference the result values, otherwise things like fetchAll() - // return the same values for every entry (because of the reference). - $values = array(); - foreach ($this->_values as $key => $val) { - $values[] = $val; - } - - $row = false; - switch ($style) { - case Zend_Db::FETCH_NUM: - $row = $values; - break; - case Zend_Db::FETCH_ASSOC: - $row = array_combine($this->_keys, $values); - break; - case Zend_Db::FETCH_BOTH: - $assoc = array_combine($this->_keys, $values); - $row = array_merge($values, $assoc); - break; - case Zend_Db::FETCH_OBJ: - $row = (object) array_combine($this->_keys, $values); - break; - case Zend_Db::FETCH_BOUND: - $assoc = array_combine($this->_keys, $values); - $row = array_merge($values, $assoc); - return $this->_fetchBound($row); - break; - default: - /** - * @see Zend_Db_Statement_Mysqli_Exception - */ - require_once 'Zend/Db/Statement/Mysqli/Exception.php'; - throw new Zend_Db_Statement_Mysqli_Exception("Invalid fetch mode '$style' specified"); - break; - } - return $row; - } - - /** - * Retrieves the next rowset (result set) for a SQL statement that has - * multiple result sets. An example is a stored procedure that returns - * the results of multiple queries. - * - * @return bool - * @throws Zend_Db_Statement_Mysqli_Exception - */ - public function nextRowset() - { - /** - * @see Zend_Db_Statement_Mysqli_Exception - */ - require_once 'Zend/Db/Statement/Mysqli/Exception.php'; - throw new Zend_Db_Statement_Mysqli_Exception(__FUNCTION__.'() is not implemented'); - } - - /** - * Returns the number of rows affected by the execution of the - * last INSERT, DELETE, or UPDATE statement executed by this - * statement object. - * - * @return int The number of rows affected. - */ - public function rowCount() - { - if (!$this->_adapter) { - return false; - } - $mysqli = $this->_adapter->getConnection(); - return $mysqli->affected_rows; - } - -} \ No newline at end of file diff --git a/library/Zend/Db/Statement/Mysqli/Exception.php b/library/Zend/Db/Statement/Mysqli/Exception.php deleted file mode 100644 index bebcd436..00000000 --- a/library/Zend/Db/Statement/Mysqli/Exception.php +++ /dev/null @@ -1,38 +0,0 @@ -_lobAsString = (bool) $lob_as_string; - return $this; - } - - /** - * Return whether or not LOB are returned as string - * - * @return boolean - */ - public function getLobAsString() - { - return $this->_lobAsString; - } - - /** - * Prepares statement handle - * - * @param string $sql - * @return void - * @throws Zend_Db_Statement_Oracle_Exception - */ - protected function _prepare($sql) - { - $connection = $this->_adapter->getConnection(); - $this->_stmt = @oci_parse($connection, $sql); - if (!$this->_stmt) { - /** - * @see Zend_Db_Statement_Oracle_Exception - */ - require_once 'Zend/Db/Statement/Oracle/Exception.php'; - throw new Zend_Db_Statement_Oracle_Exception(oci_error($connection)); - } - } - - /** - * Binds a parameter to the specified variable name. - * - * @param mixed $parameter Name the parameter, either integer or string. - * @param mixed $variable Reference to PHP variable containing the value. - * @param mixed $type OPTIONAL Datatype of SQL parameter. - * @param mixed $length OPTIONAL Length of SQL parameter. - * @param mixed $options OPTIONAL Other options. - * @return bool - * @throws Zend_Db_Statement_Exception - */ - protected function _bindParam($parameter, &$variable, $type = null, $length = null, $options = null) - { - // default value - if ($type === NULL) { - $type = SQLT_CHR; - } - - // default value - if ($length === NULL) { - $length = -1; - } - - $retval = @oci_bind_by_name($this->_stmt, $parameter, $variable, $length, $type); - if ($retval === false) { - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Statement/Oracle/Exception.php'; - throw new Zend_Db_Statement_Oracle_Exception(oci_error($this->_stmt)); - } - - return true; - } - - /** - * Closes the cursor, allowing the statement to be executed again. - * - * @return bool - */ - public function closeCursor() - { - if (!$this->_stmt) { - return false; - } - - oci_free_statement($this->_stmt); - $this->_stmt = false; - return true; - } - - /** - * Returns the number of columns in the result set. - * Returns null if the statement has no result set metadata. - * - * @return int The number of columns. - */ - public function columnCount() - { - if (!$this->_stmt) { - return false; - } - - return oci_num_fields($this->_stmt); - } - - - /** - * Retrieves the error code, if any, associated with the last operation on - * the statement handle. - * - * @return string error code. - */ - public function errorCode() - { - if (!$this->_stmt) { - return false; - } - - $error = oci_error($this->_stmt); - - if (!$error) { - return false; - } - - return $error['code']; - } - - - /** - * Retrieves an array of error information, if any, associated with the - * last operation on the statement handle. - * - * @return array - */ - public function errorInfo() - { - if (!$this->_stmt) { - return false; - } - - $error = oci_error($this->_stmt); - if (!$error) { - return false; - } - - if (isset($error['sqltext'])) { - return array( - $error['code'], - $error['message'], - $error['offset'], - $error['sqltext'], - ); - } else { - return array( - $error['code'], - $error['message'], - ); - } - } - - - /** - * Executes a prepared statement. - * - * @param array $params OPTIONAL Values to bind to parameter placeholders. - * @return bool - * @throws Zend_Db_Statement_Exception - */ - public function _execute(array $params = null) - { - $connection = $this->_adapter->getConnection(); - - if (!$this->_stmt) { - return false; - } - - if ($params !== null) { - if (!is_array($params)) { - $params = array($params); - } - $error = false; - foreach (array_keys($params) as $name) { - if (!$this->bindParam($name, $params[$name], null, -1)) { - $error = true; - break; - } - } - if ($error) { - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Statement/Oracle/Exception.php'; - throw new Zend_Db_Statement_Oracle_Exception(oci_error($this->_stmt)); - } - } - - $retval = @oci_execute($this->_stmt, $this->_adapter->_getExecuteMode()); - if ($retval === false) { - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Statement/Oracle/Exception.php'; - throw new Zend_Db_Statement_Oracle_Exception(oci_error($this->_stmt)); - } - - $this->_keys = Array(); - if ($field_num = oci_num_fields($this->_stmt)) { - for ($i = 1; $i <= $field_num; $i++) { - $name = oci_field_name($this->_stmt, $i); - $this->_keys[] = $name; - } - } - - $this->_values = Array(); - if ($this->_keys) { - $this->_values = array_fill(0, count($this->_keys), null); - } - - return $retval; - } - - /** - * Fetches a row from the result set. - * - * @param int $style OPTIONAL Fetch mode for this fetch operation. - * @param int $cursor OPTIONAL Absolute, relative, or other. - * @param int $offset OPTIONAL Number for absolute or relative cursors. - * @return mixed Array, object, or scalar depending on fetch mode. - * @throws Zend_Db_Statement_Exception - */ - public function fetch($style = null, $cursor = null, $offset = null) - { - if (!$this->_stmt) { - return false; - } - - if ($style === null) { - $style = $this->_fetchMode; - } - - $lob_as_string = $this->getLobAsString() ? OCI_RETURN_LOBS : 0; - - switch ($style) { - case Zend_Db::FETCH_NUM: - $row = oci_fetch_array($this->_stmt, OCI_NUM | OCI_RETURN_NULLS | $lob_as_string); - break; - case Zend_Db::FETCH_ASSOC: - $row = oci_fetch_array($this->_stmt, OCI_ASSOC | OCI_RETURN_NULLS | $lob_as_string); - break; - case Zend_Db::FETCH_BOTH: - $row = oci_fetch_array($this->_stmt, OCI_BOTH | OCI_RETURN_NULLS | $lob_as_string); - break; - case Zend_Db::FETCH_OBJ: - $row = oci_fetch_object($this->_stmt); - break; - case Zend_Db::FETCH_BOUND: - $row = oci_fetch_array($this->_stmt, OCI_BOTH | OCI_RETURN_NULLS | $lob_as_string); - if ($row !== false) { - return $this->_fetchBound($row); - } - break; - default: - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Statement/Oracle/Exception.php'; - throw new Zend_Db_Statement_Oracle_Exception( - array( - 'code' => 'HYC00', - 'message' => "Invalid fetch mode '$style' specified" - ) - ); - break; - } - - if (! $row && $error = oci_error($this->_stmt)) { - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Statement/Oracle/Exception.php'; - throw new Zend_Db_Statement_Oracle_Exception($error); - } - - if (is_array($row) && array_key_exists('zend_db_rownum', $row)) { - unset($row['zend_db_rownum']); - } - - return $row; - } - - /** - * Returns an array containing all of the result set rows. - * - * @param int $style OPTIONAL Fetch mode. - * @param int $col OPTIONAL Column number, if fetch mode is by column. - * @return array Collection of rows, each in a format by the fetch mode. - * @throws Zend_Db_Statement_Exception - */ - public function fetchAll($style = null, $col = 0) - { - if (!$this->_stmt) { - return false; - } - - // make sure we have a fetch mode - if ($style === null) { - $style = $this->_fetchMode; - } - - $flags = OCI_FETCHSTATEMENT_BY_ROW; - - switch ($style) { - case Zend_Db::FETCH_BOTH: - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Statement/Oracle/Exception.php'; - throw new Zend_Db_Statement_Oracle_Exception( - array( - 'code' => 'HYC00', - 'message' => "OCI8 driver does not support fetchAll(FETCH_BOTH), use fetch() in a loop instead" - ) - ); - // notreached - $flags |= OCI_NUM; - $flags |= OCI_ASSOC; - break; - case Zend_Db::FETCH_NUM: - $flags |= OCI_NUM; - break; - case Zend_Db::FETCH_ASSOC: - $flags |= OCI_ASSOC; - break; - case Zend_Db::FETCH_OBJ: - break; - case Zend_Db::FETCH_COLUMN: - $flags = $flags &~ OCI_FETCHSTATEMENT_BY_ROW; - $flags |= OCI_FETCHSTATEMENT_BY_COLUMN; - $flags |= OCI_NUM; - break; - default: - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Statement/Oracle/Exception.php'; - throw new Zend_Db_Statement_Oracle_Exception( - array( - 'code' => 'HYC00', - 'message' => "Invalid fetch mode '$style' specified" - ) - ); - break; - } - - $result = Array(); - if ($flags != OCI_FETCHSTATEMENT_BY_ROW) { /* not Zend_Db::FETCH_OBJ */ - if (! ($rows = oci_fetch_all($this->_stmt, $result, 0, -1, $flags) )) { - if ($error = oci_error($this->_stmt)) { - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Statement/Oracle/Exception.php'; - throw new Zend_Db_Statement_Oracle_Exception($error); - } - if (!$rows) { - return array(); - } - } - if ($style == Zend_Db::FETCH_COLUMN) { - $result = $result[$col]; - } - foreach ($result as &$row) { - if (is_array($row) && array_key_exists('zend_db_rownum', $row)) { - unset($row['zend_db_rownum']); - } - } - } else { - while (($row = oci_fetch_object($this->_stmt)) !== false) { - $result [] = $row; - } - if ($error = oci_error($this->_stmt)) { - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Statement/Oracle/Exception.php'; - throw new Zend_Db_Statement_Oracle_Exception($error); - } - } - - return $result; - } - - - /** - * Returns a single column from the next row of a result set. - * - * @param int $col OPTIONAL Position of the column to fetch. - * @return string - * @throws Zend_Db_Statement_Exception - */ - public function fetchColumn($col = 0) - { - if (!$this->_stmt) { - return false; - } - - if (!oci_fetch($this->_stmt)) { - // if no error, there is simply no record - if (!$error = oci_error($this->_stmt)) { - return false; - } - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Statement/Oracle/Exception.php'; - throw new Zend_Db_Statement_Oracle_Exception($error); - } - - $data = oci_result($this->_stmt, $col+1); //1-based - if ($data === false) { - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Statement/Oracle/Exception.php'; - throw new Zend_Db_Statement_Oracle_Exception(oci_error($this->_stmt)); - } - - if ($this->getLobAsString()) { - // instanceof doesn't allow '-', we must use a temporary string - $type = 'OCI-Lob'; - if ($data instanceof $type) { - $data = $data->read($data->size()); - } - } - - return $data; - } - - /** - * Fetches the next row and returns it as an object. - * - * @param string $class OPTIONAL Name of the class to create. - * @param array $config OPTIONAL Constructor arguments for the class. - * @return mixed One object instance of the specified class. - * @throws Zend_Db_Statement_Exception - */ - public function fetchObject($class = 'stdClass', array $config = array()) - { - if (!$this->_stmt) { - return false; - } - - $obj = oci_fetch_object($this->_stmt); - - if ($error = oci_error($this->_stmt)) { - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Statement/Oracle/Exception.php'; - throw new Zend_Db_Statement_Oracle_Exception($error); - } - - /* @todo XXX handle parameters */ - - return $obj; - } - - /** - * Retrieves the next rowset (result set) for a SQL statement that has - * multiple result sets. An example is a stored procedure that returns - * the results of multiple queries. - * - * @return bool - * @throws Zend_Db_Statement_Exception - */ - public function nextRowset() - { - /** - * @see Zend_Db_Statement_Oracle_Exception - */ - require_once 'Zend/Db/Statement/Oracle/Exception.php'; - throw new Zend_Db_Statement_Oracle_Exception( - array( - 'code' => 'HYC00', - 'message' => 'Optional feature not implemented' - ) - ); - } - - /** - * Returns the number of rows affected by the execution of the - * last INSERT, DELETE, or UPDATE statement executed by this - * statement object. - * - * @return int The number of rows affected. - * @throws Zend_Db_Statement_Exception - */ - public function rowCount() - { - if (!$this->_stmt) { - return false; - } - - $num_rows = oci_num_rows($this->_stmt); - - if ($num_rows === false) { - /** - * @see Zend_Db_Adapter_Oracle_Exception - */ - require_once 'Zend/Db/Statement/Oracle/Exception.php'; - throw new Zend_Db_Statement_Oracle_Exception(oci_error($this->_stmt)); - } - - return $num_rows; - } - -} diff --git a/library/Zend/Db/Statement/Oracle/Exception.php b/library/Zend/Db/Statement/Oracle/Exception.php deleted file mode 100644 index 4183f18f..00000000 --- a/library/Zend/Db/Statement/Oracle/Exception.php +++ /dev/null @@ -1,59 +0,0 @@ -message = $error['code']." ".$error['message']; - } else { - $this->message = $error['code']." ".$error['message']." "; - $this->message .= substr($error['sqltext'], 0, $error['offset']); - $this->message .= "*"; - $this->message .= substr($error['sqltext'], $error['offset']); - } - $this->code = $error['code']; - } - if (!$this->code && $code) { - $this->code = $code; - } - } -} - diff --git a/library/Zend/Db/Statement/Pdo.php b/library/Zend/Db/Statement/Pdo.php deleted file mode 100644 index 6127f171..00000000 --- a/library/Zend/Db/Statement/Pdo.php +++ /dev/null @@ -1,439 +0,0 @@ -_stmt = $this->_adapter->getConnection()->prepare($sql); - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Bind a column of the statement result set to a PHP variable. - * - * @param string $column Name the column in the result set, either by - * position or by name. - * @param mixed $param Reference to the PHP variable containing the value. - * @param mixed $type OPTIONAL - * @return bool - * @throws Zend_Db_Statement_Exception - */ - public function bindColumn($column, &$param, $type = null) - { - try { - if ($type === null) { - return $this->_stmt->bindColumn($column, $param); - } else { - return $this->_stmt->bindColumn($column, $param, $type); - } - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Binds a parameter to the specified variable name. - * - * @param mixed $parameter Name the parameter, either integer or string. - * @param mixed $variable Reference to PHP variable containing the value. - * @param mixed $type OPTIONAL Datatype of SQL parameter. - * @param mixed $length OPTIONAL Length of SQL parameter. - * @param mixed $options OPTIONAL Other options. - * @return bool - * @throws Zend_Db_Statement_Exception - */ - protected function _bindParam($parameter, &$variable, $type = null, $length = null, $options = null) - { - try { - if ($type === null) { - if (is_bool($variable)) { - $type = PDO::PARAM_BOOL; - } elseif ($variable === null) { - $type = PDO::PARAM_NULL; - } elseif (is_integer($variable)) { - $type = PDO::PARAM_INT; - } else { - $type = PDO::PARAM_STR; - } - } - return $this->_stmt->bindParam($parameter, $variable, $type, $length, $options); - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Binds a value to a parameter. - * - * @param mixed $parameter Name the parameter, either integer or string. - * @param mixed $value Scalar value to bind to the parameter. - * @param mixed $type OPTIONAL Datatype of the parameter. - * @return bool - * @throws Zend_Db_Statement_Exception - */ - public function bindValue($parameter, $value, $type = null) - { - if (is_string($parameter) && $parameter[0] != ':') { - $parameter = ":$parameter"; - } - - $this->_bindParam[$parameter] = $value; - - try { - if ($type === null) { - return $this->_stmt->bindValue($parameter, $value); - } else { - return $this->_stmt->bindValue($parameter, $value, $type); - } - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Closes the cursor, allowing the statement to be executed again. - * - * @return bool - * @throws Zend_Db_Statement_Exception - */ - public function closeCursor() - { - try { - return $this->_stmt->closeCursor(); - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Returns the number of columns in the result set. - * Returns null if the statement has no result set metadata. - * - * @return int The number of columns. - * @throws Zend_Db_Statement_Exception - */ - public function columnCount() - { - try { - return $this->_stmt->columnCount(); - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Retrieves the error code, if any, associated with the last operation on - * the statement handle. - * - * @return string error code. - * @throws Zend_Db_Statement_Exception - */ - public function errorCode() - { - try { - return $this->_stmt->errorCode(); - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Retrieves an array of error information, if any, associated with the - * last operation on the statement handle. - * - * @return array - * @throws Zend_Db_Statement_Exception - */ - public function errorInfo() - { - try { - return $this->_stmt->errorInfo(); - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Executes a prepared statement. - * - * @param array $params OPTIONAL Values to bind to parameter placeholders. - * @return bool - * @throws Zend_Db_Statement_Exception - */ - public function _execute(array $params = null) - { - try { - if ($params !== null) { - return $this->_stmt->execute($params); - } else { - return $this->_stmt->execute(); - } - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), (int) $e->getCode(), $e); - } - } - - /** - * Fetches a row from the result set. - * - * @param int $style OPTIONAL Fetch mode for this fetch operation. - * @param int $cursor OPTIONAL Absolute, relative, or other. - * @param int $offset OPTIONAL Number for absolute or relative cursors. - * @return mixed Array, object, or scalar depending on fetch mode. - * @throws Zend_Db_Statement_Exception - */ - public function fetch($style = null, $cursor = null, $offset = null) - { - if ($style === null) { - $style = $this->_fetchMode; - } - try { - return $this->_stmt->fetch($style, $cursor, $offset); - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Required by IteratorAggregate interface - * - * @return IteratorIterator - */ - public function getIterator() - { - return new IteratorIterator($this->_stmt); - } - - /** - * Returns an array containing all of the result set rows. - * - * @param int $style OPTIONAL Fetch mode. - * @param int $col OPTIONAL Column number, if fetch mode is by column. - * @return array Collection of rows, each in a format by the fetch mode. - * @throws Zend_Db_Statement_Exception - */ - public function fetchAll($style = null, $col = null) - { - if ($style === null) { - $style = $this->_fetchMode; - } - try { - if ($style == PDO::FETCH_COLUMN) { - if ($col === null) { - $col = 0; - } - return $this->_stmt->fetchAll($style, $col); - } else { - return $this->_stmt->fetchAll($style); - } - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Returns a single column from the next row of a result set. - * - * @param int $col OPTIONAL Position of the column to fetch. - * @return string - * @throws Zend_Db_Statement_Exception - */ - public function fetchColumn($col = 0) - { - try { - return $this->_stmt->fetchColumn($col); - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Fetches the next row and returns it as an object. - * - * @param string $class OPTIONAL Name of the class to create. - * @param array $config OPTIONAL Constructor arguments for the class. - * @return mixed One object instance of the specified class. - * @throws Zend_Db_Statement_Exception - */ - public function fetchObject($class = 'stdClass', array $config = array()) - { - try { - return $this->_stmt->fetchObject($class, $config); - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Retrieve a statement attribute. - * - * @param integer $key Attribute name. - * @return mixed Attribute value. - * @throws Zend_Db_Statement_Exception - */ - public function getAttribute($key) - { - try { - return $this->_stmt->getAttribute($key); - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Returns metadata for a column in a result set. - * - * @param int $column - * @return mixed - * @throws Zend_Db_Statement_Exception - */ - public function getColumnMeta($column) - { - try { - return $this->_stmt->getColumnMeta($column); - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Retrieves the next rowset (result set) for a SQL statement that has - * multiple result sets. An example is a stored procedure that returns - * the results of multiple queries. - * - * @return bool - * @throws Zend_Db_Statement_Exception - */ - public function nextRowset() - { - try { - return $this->_stmt->nextRowset(); - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Returns the number of rows affected by the execution of the - * last INSERT, DELETE, or UPDATE statement executed by this - * statement object. - * - * @return int The number of rows affected. - * @throws Zend_Db_Statement_Exception - */ - public function rowCount() - { - try { - return $this->_stmt->rowCount(); - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Set a statement attribute. - * - * @param string $key Attribute name. - * @param mixed $val Attribute value. - * @return bool - * @throws Zend_Db_Statement_Exception - */ - public function setAttribute($key, $val) - { - try { - return $this->_stmt->setAttribute($key, $val); - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - /** - * Set the default fetch mode for this statement. - * - * @param int $mode The fetch mode. - * @return bool - * @throws Zend_Db_Statement_Exception - */ - public function setFetchMode($mode) - { - $this->_fetchMode = $mode; - try { - return $this->_stmt->setFetchMode($mode); - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - -} diff --git a/library/Zend/Db/Statement/Pdo/Ibm.php b/library/Zend/Db/Statement/Pdo/Ibm.php deleted file mode 100644 index bfdf76c3..00000000 --- a/library/Zend/Db/Statement/Pdo/Ibm.php +++ /dev/null @@ -1,94 +0,0 @@ -_adapter->foldCase('ZEND_DB_ROWNUM'); - - foreach ($data as $row) { - if (is_array($row) && array_key_exists($remove, $row)) { - unset($row[$remove]); - } - $results[] = $row; - } - return $results; - } - - /** - * Binds a parameter to the specified variable name. - * - * @param mixed $parameter Name the parameter, either integer or string. - * @param mixed $variable Reference to PHP variable containing the value. - * @param mixed $type OPTIONAL Datatype of SQL parameter. - * @param mixed $length OPTIONAL Length of SQL parameter. - * @param mixed $options OPTIONAL Other options. - * @return bool - * @throws Zend_Db_Statement_Exception - */ - public function _bindParam($parameter, &$variable, $type = null, $length = null, $options = null) - { - try { - if (($type === null) && ($length === null) && ($options === null)) { - return $this->_stmt->bindParam($parameter, $variable); - } else { - return $this->_stmt->bindParam($parameter, $variable, $type, $length, $options); - } - } catch (PDOException $e) { - require_once 'Zend/Db/Statement/Exception.php'; - throw new Zend_Db_Statement_Exception($e->getMessage(), $e->getCode(), $e); - } - } - -} \ No newline at end of file diff --git a/library/Zend/Db/Statement/Pdo/Oci.php b/library/Zend/Db/Statement/Pdo/Oci.php deleted file mode 100644 index 2a2d4581..00000000 --- a/library/Zend/Db/Statement/Pdo/Oci.php +++ /dev/null @@ -1,91 +0,0 @@ -_adapter->foldCase('zend_db_rownum'); - - foreach ($data as $row) { - if (is_array($row) && array_key_exists($remove, $row)) { - unset($row[$remove]); - } - $results[] = $row; - } - return $results; - } - - - /** - * Fetches a row from the result set. - * - * @param int $style OPTIONAL Fetch mode for this fetch operation. - * @param int $cursor OPTIONAL Absolute, relative, or other. - * @param int $offset OPTIONAL Number for absolute or relative cursors. - * @return mixed Array, object, or scalar depending on fetch mode. - * @throws Zend_Db_Statement_Exception - */ - public function fetch($style = null, $cursor = null, $offset = null) - { - $row = parent::fetch($style, $cursor, $offset); - - $remove = $this->_adapter->foldCase('zend_db_rownum'); - if (is_array($row) && array_key_exists($remove, $row)) { - unset($row[$remove]); - } - - return $row; - } -} \ No newline at end of file diff --git a/library/Zend/Db/Statement/Sqlsrv.php b/library/Zend/Db/Statement/Sqlsrv.php deleted file mode 100644 index f3e5193d..00000000 --- a/library/Zend/Db/Statement/Sqlsrv.php +++ /dev/null @@ -1,440 +0,0 @@ -_adapter->getConnection(); - - $this->_stmt = sqlsrv_prepare($connection, $sql); - - if (!$this->_stmt) { - require_once 'Zend/Db/Statement/Sqlsrv/Exception.php'; - throw new Zend_Db_Statement_Sqlsrv_Exception(sqlsrv_errors()); - } - - $this->_originalSQL = $sql; - } - - /** - * Binds a parameter to the specified variable name. - * - * @param mixed $parameter Name the parameter, either integer or string. - * @param mixed $variable Reference to PHP variable containing the value. - * @param mixed $type OPTIONAL Datatype of SQL parameter. - * @param mixed $length OPTIONAL Length of SQL parameter. - * @param mixed $options OPTIONAL Other options. - * @return bool - * @throws Zend_Db_Statement_Exception - */ - protected function _bindParam($parameter, &$variable, $type = null, $length = null, $options = null) - { - //Sql server doesn't support bind by name - return true; - } - - /** - * Closes the cursor, allowing the statement to be executed again. - * - * @return bool - */ - public function closeCursor() - { - if (!$this->_stmt) { - return false; - } - - sqlsrv_free_stmt($this->_stmt); - $this->_stmt = false; - return true; - } - - /** - * Returns the number of columns in the result set. - * Returns null if the statement has no result set metadata. - * - * @return int The number of columns. - */ - public function columnCount() - { - if ($this->_stmt && $this->_executed) { - return sqlsrv_num_fields($this->_stmt); - } - - return 0; - } - - - /** - * Retrieves the error code, if any, associated with the last operation on - * the statement handle. - * - * @return string error code. - */ - public function errorCode() - { - if (!$this->_stmt) { - return false; - } - - $error = sqlsrv_errors(); - if (!$error) { - return false; - } - - return $error[0]['code']; - } - - - /** - * Retrieves an array of error information, if any, associated with the - * last operation on the statement handle. - * - * @return array - */ - public function errorInfo() - { - if (!$this->_stmt) { - return false; - } - - $error = sqlsrv_errors(); - if (!$error) { - return false; - } - - return array( - $error[0]['code'], - $error[0]['message'], - ); - } - - - /** - * Executes a prepared statement. - * - * @param array $params OPTIONAL Values to bind to parameter placeholders. - * @return bool - * @throws Zend_Db_Statement_Exception - */ - public function _execute(array $params = null) - { - $connection = $this->_adapter->getConnection(); - if (!$this->_stmt) { - return false; - } - - if ($params !== null) { - if (!is_array($params)) { - $params = array($params); - } - $error = false; - - // make all params passed by reference - $params_ = array(); - $temp = array(); - $i = 1; - foreach ($params as $param) { - $temp[$i] = $param; - $params_[] = &$temp[$i]; - $i++; - } - $params = $params_; - } - - $this->_stmt = sqlsrv_query($connection, $this->_originalSQL, $params); - - if (!$this->_stmt) { - require_once 'Zend/Db/Statement/Sqlsrv/Exception.php'; - throw new Zend_Db_Statement_Sqlsrv_Exception(sqlsrv_errors()); - } - - $this->_executed = true; - - return (!$this->_stmt); - } - - /** - * Fetches a row from the result set. - * - * @param int $style OPTIONAL Fetch mode for this fetch operation. - * @param int $cursor OPTIONAL Absolute, relative, or other. - * @param int $offset OPTIONAL Number for absolute or relative cursors. - * @return mixed Array, object, or scalar depending on fetch mode. - * @throws Zend_Db_Statement_Exception - */ - public function fetch($style = null, $cursor = null, $offset = null) - { - if (!$this->_stmt) { - return false; - } - - if (null === $style) { - $style = $this->_fetchMode; - } - - $values = sqlsrv_fetch_array($this->_stmt, SQLSRV_FETCH_ASSOC); - - if (!$values && (null !== $error = sqlsrv_errors())) { - require_once 'Zend/Db/Statement/Sqlsrv/Exception.php'; - throw new Zend_Db_Statement_Sqlsrv_Exception($error); - } - - if (null === $values) { - return null; - } - - if (!$this->_keys) { - foreach ($values as $key => $value) { - $this->_keys[] = $this->_adapter->foldCase($key); - } - } - - $values = array_values($values); - - $row = false; - switch ($style) { - case Zend_Db::FETCH_NUM: - $row = $values; - break; - case Zend_Db::FETCH_ASSOC: - $row = array_combine($this->_keys, $values); - break; - case Zend_Db::FETCH_BOTH: - $assoc = array_combine($this->_keys, $values); - $row = array_merge($values, $assoc); - break; - case Zend_Db::FETCH_OBJ: - $row = (object) array_combine($this->_keys, $values); - break; - case Zend_Db::FETCH_BOUND: - $assoc = array_combine($this->_keys, $values); - $row = array_merge($values, $assoc); - $row = $this->_fetchBound($row); - break; - default: - require_once 'Zend/Db/Statement/Sqlsrv/Exception.php'; - throw new Zend_Db_Statement_Sqlsrv_Exception("Invalid fetch mode '$style' specified"); - break; - } - - return $row; - } - - /** - * Returns a single column from the next row of a result set. - * - * @param int $col OPTIONAL Position of the column to fetch. - * @return string - * @throws Zend_Db_Statement_Exception - */ - public function fetchColumn($col = 0) - { - if (!$this->_stmt) { - return false; - } - - if (!sqlsrv_fetch($this->_stmt)) { - if (null !== $error = sqlsrv_errors()) { - require_once 'Zend/Db/Statement/Sqlsrv/Exception.php'; - throw new Zend_Db_Statement_Sqlsrv_Exception($error); - } - - // If no error, there is simply no record - return false; - } - - $data = sqlsrv_get_field($this->_stmt, $col); //0-based - if ($data === false) { - require_once 'Zend/Db/Statement/Sqlsrv/Exception.php'; - throw new Zend_Db_Statement_Sqlsrv_Exception(sqlsrv_errors()); - } - - return $data; - } - - /** - * Fetches the next row and returns it as an object. - * - * @param string $class OPTIONAL Name of the class to create. - * @param array $config OPTIONAL Constructor arguments for the class. - * @return mixed One object instance of the specified class. - * @throws Zend_Db_Statement_Exception - */ - public function fetchObject($class = 'stdClass', array $config = array()) - { - if (!$this->_stmt) { - return false; - } - - $obj = sqlsrv_fetch_object($this->_stmt); - - if ($error = sqlsrv_errors()) { - require_once 'Zend/Db/Statement/Sqlsrv/Exception.php'; - throw new Zend_Db_Statement_Sqlsrv_Exception($error); - } - - /* @todo XXX handle parameters */ - - if (null === $obj) { - return false; - } - - return $obj; - } - - /** - * Returns metadata for a column in a result set. - * - * @param int $column - * @return mixed - * @throws Zend_Db_Statement_Sqlsrv_Exception - */ - public function getColumnMeta($column) - { - $fields = sqlsrv_field_metadata($this->_stmt); - - if (!$fields) { - throw new Zend_Db_Statement_Sqlsrv_Exception('Column metadata can not be fetched'); - } - - if (!isset($fields[$column])) { - throw new Zend_Db_Statement_Sqlsrv_Exception('Column index does not exist in statement'); - } - - return $fields[$column]; - } - - /** - * Retrieves the next rowset (result set) for a SQL statement that has - * multiple result sets. An example is a stored procedure that returns - * the results of multiple queries. - * - * @return bool - * @throws Zend_Db_Statement_Exception - */ - public function nextRowset() - { - if (sqlsrv_next_result($this->_stmt) === false) { - require_once 'Zend/Db/Statement/Sqlsrv/Exception.php'; - throw new Zend_Db_Statement_Sqlsrv_Exception(sqlsrv_errors()); - } - - // reset column keys - $this->_keys = null; - - return true; - } - - /** - * Returns the number of rows affected by the execution of the - * last INSERT, DELETE, or UPDATE statement executed by this - * statement object. - * - * @return int The number of rows affected. - * @throws Zend_Db_Statement_Exception - */ - public function rowCount() - { - if (!$this->_stmt) { - return false; - } - - if (!$this->_executed) { - return 0; - } - - $num_rows = sqlsrv_rows_affected($this->_stmt); - - // Strict check is necessary; 0 is a valid return value - if ($num_rows === false) { - require_once 'Zend/Db/Statement/Sqlsrv/Exception.php'; - throw new Zend_Db_Statement_Sqlsrv_Exception(sqlsrv_errors()); - } - - return $num_rows; - } - - /** - * Returns an array containing all of the result set rows. - * - * @param int $style OPTIONAL Fetch mode. - * @param int $col OPTIONAL Column number, if fetch mode is by column. - * @return array Collection of rows, each in a format by the fetch mode. - * - * Behaves like parent, but if limit() - * is used, the final result removes the extra column - * 'zend_db_rownum' - */ - public function fetchAll($style = null, $col = null) - { - $data = parent::fetchAll($style, $col); - $results = array(); - $remove = $this->_adapter->foldCase('ZEND_DB_ROWNUM'); - - foreach ($data as $row) { - if (is_array($row) && array_key_exists($remove, $row)) { - unset($row[$remove]); - } - $results[] = $row; - } - return $results; - } -} diff --git a/library/Zend/Db/Statement/Sqlsrv/Exception.php b/library/Zend/Db/Statement/Sqlsrv/Exception.php deleted file mode 100644 index ac1fced6..00000000 --- a/library/Zend/Db/Statement/Sqlsrv/Exception.php +++ /dev/null @@ -1,61 +0,0 @@ - $config); - } else { - // process this as table with or without a definition - if ($definition instanceof Zend_Db_Table_Definition - && $definition->hasTableConfig($config)) { - // this will have DEFINITION_CONFIG_NAME & DEFINITION - $config = $definition->getTableConfig($config); - } else { - $config = array(self::NAME => $config); - } - } - } - - parent::__construct($config); - } -} diff --git a/library/Zend/Db/Table/Abstract.php b/library/Zend/Db/Table/Abstract.php deleted file mode 100644 index a10cfdda..00000000 --- a/library/Zend/Db/Table/Abstract.php +++ /dev/null @@ -1,1614 +0,0 @@ - $config); - } - - if ($config) { - $this->setOptions($config); - } - - $this->_setup(); - $this->init(); - } - - /** - * setOptions() - * - * @param array $options - * @return Zend_Db_Table_Abstract - */ - public function setOptions(Array $options) - { - foreach ($options as $key => $value) { - switch ($key) { - case self::ADAPTER: - $this->_setAdapter($value); - break; - case self::DEFINITION: - $this->setDefinition($value); - break; - case self::DEFINITION_CONFIG_NAME: - $this->setDefinitionConfigName($value); - break; - case self::SCHEMA: - $this->_schema = (string) $value; - break; - case self::NAME: - $this->_name = (string) $value; - break; - case self::PRIMARY: - $this->_primary = (array) $value; - break; - case self::ROW_CLASS: - $this->setRowClass($value); - break; - case self::ROWSET_CLASS: - $this->setRowsetClass($value); - break; - case self::REFERENCE_MAP: - $this->setReferences($value); - break; - case self::DEPENDENT_TABLES: - $this->setDependentTables($value); - break; - case self::METADATA_CACHE: - $this->_setMetadataCache($value); - break; - case self::METADATA_CACHE_IN_CLASS: - $this->setMetadataCacheInClass($value); - break; - case self::SEQUENCE: - $this->_setSequence($value); - break; - default: - // ignore unrecognized configuration directive - break; - } - } - - return $this; - } - - /** - * setDefinition() - * - * @param Zend_Db_Table_Definition $definition - * @return Zend_Db_Table_Abstract - */ - public function setDefinition(Zend_Db_Table_Definition $definition) - { - $this->_definition = $definition; - return $this; - } - - /** - * getDefinition() - * - * @return Zend_Db_Table_Definition|null - */ - public function getDefinition() - { - return $this->_definition; - } - - /** - * setDefinitionConfigName() - * - * @param string $definition - * @return Zend_Db_Table_Abstract - */ - public function setDefinitionConfigName($definitionConfigName) - { - $this->_definitionConfigName = $definitionConfigName; - return $this; - } - - /** - * getDefinitionConfigName() - * - * @return string - */ - public function getDefinitionConfigName() - { - return $this->_definitionConfigName; - } - - /** - * @param string $classname - * @return Zend_Db_Table_Abstract Provides a fluent interface - */ - public function setRowClass($classname) - { - $this->_rowClass = (string) $classname; - - return $this; - } - - /** - * @return string - */ - public function getRowClass() - { - return $this->_rowClass; - } - - /** - * @param string $classname - * @return Zend_Db_Table_Abstract Provides a fluent interface - */ - public function setRowsetClass($classname) - { - $this->_rowsetClass = (string) $classname; - - return $this; - } - - /** - * @return string - */ - public function getRowsetClass() - { - return $this->_rowsetClass; - } - - /** - * Add a reference to the reference map - * - * @param string $ruleKey - * @param string|array $columns - * @param string $refTableClass - * @param string|array $refColumns - * @param string $onDelete - * @param string $onUpdate - * @return Zend_Db_Table_Abstract - */ - public function addReference($ruleKey, $columns, $refTableClass, $refColumns, - $onDelete = null, $onUpdate = null) - { - $reference = array(self::COLUMNS => (array) $columns, - self::REF_TABLE_CLASS => $refTableClass, - self::REF_COLUMNS => (array) $refColumns); - - if (!empty($onDelete)) { - $reference[self::ON_DELETE] = $onDelete; - } - - if (!empty($onUpdate)) { - $reference[self::ON_UPDATE] = $onUpdate; - } - - $this->_referenceMap[$ruleKey] = $reference; - - return $this; - } - - /** - * @param array $referenceMap - * @return Zend_Db_Table_Abstract Provides a fluent interface - */ - public function setReferences(array $referenceMap) - { - $this->_referenceMap = $referenceMap; - - return $this; - } - - /** - * @param string $tableClassname - * @param string $ruleKey OPTIONAL - * @return array - * @throws Zend_Db_Table_Exception - */ - public function getReference($tableClassname, $ruleKey = null) - { - $thisClass = get_class($this); - if ($thisClass === 'Zend_Db_Table') { - $thisClass = $this->_definitionConfigName; - } - $refMap = $this->_getReferenceMapNormalized(); - if ($ruleKey !== null) { - if (!isset($refMap[$ruleKey])) { - require_once "Zend/Db/Table/Exception.php"; - throw new Zend_Db_Table_Exception("No reference rule \"$ruleKey\" from table $thisClass to table $tableClassname"); - } - if ($refMap[$ruleKey][self::REF_TABLE_CLASS] != $tableClassname) { - require_once "Zend/Db/Table/Exception.php"; - throw new Zend_Db_Table_Exception("Reference rule \"$ruleKey\" does not reference table $tableClassname"); - } - return $refMap[$ruleKey]; - } - foreach ($refMap as $reference) { - if ($reference[self::REF_TABLE_CLASS] == $tableClassname) { - return $reference; - } - } - require_once "Zend/Db/Table/Exception.php"; - throw new Zend_Db_Table_Exception("No reference from table $thisClass to table $tableClassname"); - } - - /** - * @param array $dependentTables - * @return Zend_Db_Table_Abstract Provides a fluent interface - */ - public function setDependentTables(array $dependentTables) - { - $this->_dependentTables = $dependentTables; - - return $this; - } - - /** - * @return array - */ - public function getDependentTables() - { - return $this->_dependentTables; - } - - /** - * set the defaultSource property - this tells the table class where to find default values - * - * @param string $defaultSource - * @return Zend_Db_Table_Abstract - */ - public function setDefaultSource($defaultSource = self::DEFAULT_NONE) - { - if (!in_array($defaultSource, array(self::DEFAULT_CLASS, self::DEFAULT_DB, self::DEFAULT_NONE))) { - $defaultSource = self::DEFAULT_NONE; - } - - $this->_defaultSource = $defaultSource; - return $this; - } - - /** - * returns the default source flag that determines where defaultSources come from - * - * @return unknown - */ - public function getDefaultSource() - { - return $this->_defaultSource; - } - - /** - * set the default values for the table class - * - * @param array $defaultValues - * @return Zend_Db_Table_Abstract - */ - public function setDefaultValues(Array $defaultValues) - { - foreach ($defaultValues as $defaultName => $defaultValue) { - if (array_key_exists($defaultName, $this->_metadata)) { - $this->_defaultValues[$defaultName] = $defaultValue; - } - } - return $this; - } - - public function getDefaultValues() - { - return $this->_defaultValues; - } - - - /** - * Sets the default Zend_Db_Adapter_Abstract for all Zend_Db_Table objects. - * - * @param mixed $db Either an Adapter object, or a string naming a Registry key - * @return void - */ - public static function setDefaultAdapter($db = null) - { - self::$_defaultDb = self::_setupAdapter($db); - } - - /** - * Gets the default Zend_Db_Adapter_Abstract for all Zend_Db_Table objects. - * - * @return Zend_Db_Adapter_Abstract or null - */ - public static function getDefaultAdapter() - { - return self::$_defaultDb; - } - - /** - * @param mixed $db Either an Adapter object, or a string naming a Registry key - * @return Zend_Db_Table_Abstract Provides a fluent interface - */ - protected function _setAdapter($db) - { - $this->_db = self::_setupAdapter($db); - return $this; - } - - /** - * Gets the Zend_Db_Adapter_Abstract for this particular Zend_Db_Table object. - * - * @return Zend_Db_Adapter_Abstract - */ - public function getAdapter() - { - return $this->_db; - } - - /** - * @param mixed $db Either an Adapter object, or a string naming a Registry key - * @return Zend_Db_Adapter_Abstract - * @throws Zend_Db_Table_Exception - */ - protected static function _setupAdapter($db) - { - if ($db === null) { - return null; - } - if (is_string($db)) { - require_once 'Zend/Registry.php'; - $db = Zend_Registry::get($db); - } - if (!$db instanceof Zend_Db_Adapter_Abstract) { - require_once 'Zend/Db/Table/Exception.php'; - throw new Zend_Db_Table_Exception('Argument must be of type Zend_Db_Adapter_Abstract, or a Registry key where a Zend_Db_Adapter_Abstract object is stored'); - } - return $db; - } - - /** - * Sets the default metadata cache for information returned by Zend_Db_Adapter_Abstract::describeTable(). - * - * If $defaultMetadataCache is null, then no metadata cache is used by default. - * - * @param mixed $metadataCache Either a Cache object, or a string naming a Registry key - * @return void - */ - public static function setDefaultMetadataCache($metadataCache = null) - { - self::$_defaultMetadataCache = self::_setupMetadataCache($metadataCache); - } - - /** - * Gets the default metadata cache for information returned by Zend_Db_Adapter_Abstract::describeTable(). - * - * @return Zend_Cache_Core or null - */ - public static function getDefaultMetadataCache() - { - return self::$_defaultMetadataCache; - } - - /** - * Sets the metadata cache for information returned by Zend_Db_Adapter_Abstract::describeTable(). - * - * If $metadataCache is null, then no metadata cache is used. Since there is no opportunity to reload metadata - * after instantiation, this method need not be public, particularly because that it would have no effect - * results in unnecessary API complexity. To configure the metadata cache, use the metadataCache configuration - * option for the class constructor upon instantiation. - * - * @param mixed $metadataCache Either a Cache object, or a string naming a Registry key - * @return Zend_Db_Table_Abstract Provides a fluent interface - */ - protected function _setMetadataCache($metadataCache) - { - $this->_metadataCache = self::_setupMetadataCache($metadataCache); - return $this; - } - - /** - * Gets the metadata cache for information returned by Zend_Db_Adapter_Abstract::describeTable(). - * - * @return Zend_Cache_Core or null - */ - public function getMetadataCache() - { - return $this->_metadataCache; - } - - /** - * Indicate whether metadata should be cached in the class for the duration - * of the instance - * - * @param bool $flag - * @return Zend_Db_Table_Abstract - */ - public function setMetadataCacheInClass($flag) - { - $this->_metadataCacheInClass = (bool) $flag; - return $this; - } - - /** - * Retrieve flag indicating if metadata should be cached for duration of - * instance - * - * @return bool - */ - public function metadataCacheInClass() - { - return $this->_metadataCacheInClass; - } - - /** - * @param mixed $metadataCache Either a Cache object, or a string naming a Registry key - * @return Zend_Cache_Core - * @throws Zend_Db_Table_Exception - */ - protected static function _setupMetadataCache($metadataCache) - { - if ($metadataCache === null) { - return null; - } - if (is_string($metadataCache)) { - require_once 'Zend/Registry.php'; - $metadataCache = Zend_Registry::get($metadataCache); - } - if (!$metadataCache instanceof Zend_Cache_Core) { - require_once 'Zend/Db/Table/Exception.php'; - throw new Zend_Db_Table_Exception('Argument must be of type Zend_Cache_Core, or a Registry key where a Zend_Cache_Core object is stored'); - } - return $metadataCache; - } - - /** - * Sets the sequence member, which defines the behavior for generating - * primary key values in new rows. - * - If this is a string, then the string names the sequence object. - * - If this is boolean true, then the key uses an auto-incrementing - * or identity mechanism. - * - If this is boolean false, then the key is user-defined. - * Use this for natural keys, for example. - * - * @param mixed $sequence - * @return Zend_Db_Table_Adapter_Abstract Provides a fluent interface - */ - protected function _setSequence($sequence) - { - $this->_sequence = $sequence; - - return $this; - } - - /** - * Turnkey for initialization of a table object. - * Calls other protected methods for individual tasks, to make it easier - * for a subclass to override part of the setup logic. - * - * @return void - */ - protected function _setup() - { - $this->_setupDatabaseAdapter(); - $this->_setupTableName(); - } - - /** - * Initialize database adapter. - * - * @return void - * @throws Zend_Db_Table_Exception - */ - protected function _setupDatabaseAdapter() - { - if (! $this->_db) { - $this->_db = self::getDefaultAdapter(); - if (!$this->_db instanceof Zend_Db_Adapter_Abstract) { - require_once 'Zend/Db/Table/Exception.php'; - throw new Zend_Db_Table_Exception('No adapter found for ' . get_class($this)); - } - } - } - - /** - * Initialize table and schema names. - * - * If the table name is not set in the class definition, - * use the class name itself as the table name. - * - * A schema name provided with the table name (e.g., "schema.table") overrides - * any existing value for $this->_schema. - * - * @return void - */ - protected function _setupTableName() - { - if (! $this->_name) { - $this->_name = get_class($this); - } else if (strpos($this->_name, '.')) { - list($this->_schema, $this->_name) = explode('.', $this->_name); - } - } - - /** - * Initializes metadata. - * - * If metadata cannot be loaded from cache, adapter's describeTable() method is called to discover metadata - * information. Returns true if and only if the metadata are loaded from cache. - * - * @return boolean - * @throws Zend_Db_Table_Exception - */ - protected function _setupMetadata() - { - if ($this->metadataCacheInClass() && (count($this->_metadata) > 0)) { - return true; - } - - // Assume that metadata will be loaded from cache - $isMetadataFromCache = true; - - // If $this has no metadata cache but the class has a default metadata cache - if (null === $this->_metadataCache && null !== self::$_defaultMetadataCache) { - // Make $this use the default metadata cache of the class - $this->_setMetadataCache(self::$_defaultMetadataCache); - } - - // If $this has a metadata cache - if (null !== $this->_metadataCache) { - // Define the cache identifier where the metadata are saved - - //get db configuration - $dbConfig = $this->_db->getConfig(); - - $port = isset($dbConfig['options']['port']) - ? ':'.$dbConfig['options']['port'] - : (isset($dbConfig['port']) - ? ':'.$dbConfig['port'] - : null); - - $host = isset($dbConfig['options']['host']) - ? ':'.$dbConfig['options']['host'] - : (isset($dbConfig['host']) - ? ':'.$dbConfig['host'] - : null); - - // Define the cache identifier where the metadata are saved - $cacheId = md5( // port:host/dbname:schema.table (based on availabilty) - $port . $host . '/'. $dbConfig['dbname'] . ':' - . $this->_schema. '.' . $this->_name - ); - } - - // If $this has no metadata cache or metadata cache misses - if (null === $this->_metadataCache || !($metadata = $this->_metadataCache->load($cacheId))) { - // Metadata are not loaded from cache - $isMetadataFromCache = false; - // Fetch metadata from the adapter's describeTable() method - $metadata = $this->_db->describeTable($this->_name, $this->_schema); - // If $this has a metadata cache, then cache the metadata - if (null !== $this->_metadataCache && !$this->_metadataCache->save($metadata, $cacheId)) { - trigger_error('Failed saving metadata to metadataCache', E_USER_NOTICE); - } - } - - // Assign the metadata to $this - $this->_metadata = $metadata; - - // Return whether the metadata were loaded from cache - return $isMetadataFromCache; - } - - /** - * Retrieve table columns - * - * @return array - */ - protected function _getCols() - { - if (null === $this->_cols) { - $this->_setupMetadata(); - $this->_cols = array_keys($this->_metadata); - } - return $this->_cols; - } - - /** - * Initialize primary key from metadata. - * If $_primary is not defined, discover primary keys - * from the information returned by describeTable(). - * - * @return void - * @throws Zend_Db_Table_Exception - */ - protected function _setupPrimaryKey() - { - if (!$this->_primary) { - $this->_setupMetadata(); - $this->_primary = array(); - foreach ($this->_metadata as $col) { - if ($col['PRIMARY']) { - $this->_primary[ $col['PRIMARY_POSITION'] ] = $col['COLUMN_NAME']; - if ($col['IDENTITY']) { - $this->_identity = $col['PRIMARY_POSITION']; - } - } - } - // if no primary key was specified and none was found in the metadata - // then throw an exception. - if (empty($this->_primary)) { - require_once 'Zend/Db/Table/Exception.php'; - throw new Zend_Db_Table_Exception("A table must have a primary key, but none was found for table '{$this->_name}'"); - } - } else if (!is_array($this->_primary)) { - $this->_primary = array(1 => $this->_primary); - } else if (isset($this->_primary[0])) { - array_unshift($this->_primary, null); - unset($this->_primary[0]); - } - - $cols = $this->_getCols(); - if (! array_intersect((array) $this->_primary, $cols) == (array) $this->_primary) { - require_once 'Zend/Db/Table/Exception.php'; - throw new Zend_Db_Table_Exception("Primary key column(s) (" - . implode(',', (array) $this->_primary) - . ") are not columns in this table (" - . implode(',', $cols) - . ")"); - } - - $primary = (array) $this->_primary; - $pkIdentity = $primary[(int) $this->_identity]; - - /** - * Special case for PostgreSQL: a SERIAL key implicitly uses a sequence - * object whose name is "__seq". - */ - if ($this->_sequence === true && $this->_db instanceof Zend_Db_Adapter_Pdo_Pgsql) { - $this->_sequence = $this->_db->quoteIdentifier("{$this->_name}_{$pkIdentity}_seq"); - if ($this->_schema) { - $this->_sequence = $this->_db->quoteIdentifier($this->_schema) . '.' . $this->_sequence; - } - } - } - - /** - * Returns a normalized version of the reference map - * - * @return array - */ - protected function _getReferenceMapNormalized() - { - $referenceMapNormalized = array(); - - foreach ($this->_referenceMap as $rule => $map) { - - $referenceMapNormalized[$rule] = array(); - - foreach ($map as $key => $value) { - switch ($key) { - - // normalize COLUMNS and REF_COLUMNS to arrays - case self::COLUMNS: - case self::REF_COLUMNS: - if (!is_array($value)) { - $referenceMapNormalized[$rule][$key] = array($value); - } else { - $referenceMapNormalized[$rule][$key] = $value; - } - break; - - // other values are copied as-is - default: - $referenceMapNormalized[$rule][$key] = $value; - break; - } - } - } - - return $referenceMapNormalized; - } - - /** - * Initialize object - * - * Called from {@link __construct()} as final step of object instantiation. - * - * @return void - */ - public function init() - { - } - - /** - * Returns table information. - * - * You can elect to return only a part of this information by supplying its key name, - * otherwise all information is returned as an array. - * - * @param string $key The specific info part to return OPTIONAL - * @return mixed - * @throws Zend_Db_Table_Exception - */ - public function info($key = null) - { - $this->_setupPrimaryKey(); - - $info = array( - self::SCHEMA => $this->_schema, - self::NAME => $this->_name, - self::COLS => $this->_getCols(), - self::PRIMARY => (array) $this->_primary, - self::METADATA => $this->_metadata, - self::ROW_CLASS => $this->getRowClass(), - self::ROWSET_CLASS => $this->getRowsetClass(), - self::REFERENCE_MAP => $this->_referenceMap, - self::DEPENDENT_TABLES => $this->_dependentTables, - self::SEQUENCE => $this->_sequence - ); - - if ($key === null) { - return $info; - } - - if (!array_key_exists($key, $info)) { - require_once 'Zend/Db/Table/Exception.php'; - throw new Zend_Db_Table_Exception('There is no table information for the key "' . $key . '"'); - } - - return $info[$key]; - } - - /** - * Returns an instance of a Zend_Db_Table_Select object. - * - * @param bool $withFromPart Whether or not to include the from part of the select based on the table - * @return Zend_Db_Table_Select - */ - public function select($withFromPart = self::SELECT_WITHOUT_FROM_PART) - { - require_once 'Zend/Db/Table/Select.php'; - $select = new Zend_Db_Table_Select($this); - if ($withFromPart == self::SELECT_WITH_FROM_PART) { - $select->from($this->info(self::NAME), Zend_Db_Table_Select::SQL_WILDCARD, $this->info(self::SCHEMA)); - } - return $select; - } - - /** - * Inserts a new row. - * - * @param array $data Column-value pairs. - * @return mixed The primary key of the row inserted. - */ - public function insert(array $data) - { - $this->_setupPrimaryKey(); - - /** - * Zend_Db_Table assumes that if you have a compound primary key - * and one of the columns in the key uses a sequence, - * it's the _first_ column in the compound key. - */ - $primary = (array) $this->_primary; - $pkIdentity = $primary[(int)$this->_identity]; - - /** - * If this table uses a database sequence object and the data does not - * specify a value, then get the next ID from the sequence and add it - * to the row. We assume that only the first column in a compound - * primary key takes a value from a sequence. - */ - if (is_string($this->_sequence) && !isset($data[$pkIdentity])) { - $data[$pkIdentity] = $this->_db->nextSequenceId($this->_sequence); - $pkSuppliedBySequence = true; - } - - /** - * If the primary key can be generated automatically, and no value was - * specified in the user-supplied data, then omit it from the tuple. - * - * Note: this checks for sensible values in the supplied primary key - * position of the data. The following values are considered empty: - * null, false, true, '', array() - */ - if (!isset($pkSuppliedBySequence) && array_key_exists($pkIdentity, $data)) { - if ($data[$pkIdentity] === null // null - || $data[$pkIdentity] === '' // empty string - || is_bool($data[$pkIdentity]) // boolean - || (is_array($data[$pkIdentity]) && empty($data[$pkIdentity]))) { // empty array - unset($data[$pkIdentity]); - } - } - - /** - * INSERT the new row. - */ - $tableSpec = ($this->_schema ? $this->_schema . '.' : '') . $this->_name; - $this->_db->insert($tableSpec, $data); - - /** - * Fetch the most recent ID generated by an auto-increment - * or IDENTITY column, unless the user has specified a value, - * overriding the auto-increment mechanism. - */ - if ($this->_sequence === true && !isset($data[$pkIdentity])) { - $data[$pkIdentity] = $this->_db->lastInsertId(); - } - - /** - * Return the primary key value if the PK is a single column, - * else return an associative array of the PK column/value pairs. - */ - $pkData = array_intersect_key($data, array_flip($primary)); - if (count($primary) == 1) { - reset($pkData); - return current($pkData); - } - - return $pkData; - } - - /** - * Check if the provided column is an identity of the table - * - * @param string $column - * @throws Zend_Db_Table_Exception - * @return boolean - */ - public function isIdentity($column) - { - $this->_setupPrimaryKey(); - - if (!isset($this->_metadata[$column])) { - /** - * @see Zend_Db_Table_Exception - */ - require_once 'Zend/Db/Table/Exception.php'; - - throw new Zend_Db_Table_Exception('Column "' . $column . '" not found in table.'); - } - - return (bool) $this->_metadata[$column]['IDENTITY']; - } - - /** - * Updates existing rows. - * - * @param array $data Column-value pairs. - * @param array|string $where An SQL WHERE clause, or an array of SQL WHERE clauses. - * @return int The number of rows updated. - */ - public function update(array $data, $where) - { - $tableSpec = ($this->_schema ? $this->_schema . '.' : '') . $this->_name; - return $this->_db->update($tableSpec, $data, $where); - } - - /** - * Called by a row object for the parent table's class during save() method. - * - * @param string $parentTableClassname - * @param array $oldPrimaryKey - * @param array $newPrimaryKey - * @return int - */ - public function _cascadeUpdate($parentTableClassname, array $oldPrimaryKey, array $newPrimaryKey) - { - $this->_setupMetadata(); - $rowsAffected = 0; - foreach ($this->_getReferenceMapNormalized() as $map) { - if ($map[self::REF_TABLE_CLASS] == $parentTableClassname && isset($map[self::ON_UPDATE])) { - switch ($map[self::ON_UPDATE]) { - case self::CASCADE: - $newRefs = array(); - $where = array(); - for ($i = 0; $i < count($map[self::COLUMNS]); ++$i) { - $col = $this->_db->foldCase($map[self::COLUMNS][$i]); - $refCol = $this->_db->foldCase($map[self::REF_COLUMNS][$i]); - if (array_key_exists($refCol, $newPrimaryKey)) { - $newRefs[$col] = $newPrimaryKey[$refCol]; - } - $type = $this->_metadata[$col]['DATA_TYPE']; - $where[] = $this->_db->quoteInto( - $this->_db->quoteIdentifier($col, true) . ' = ?', - $oldPrimaryKey[$refCol], $type); - } - $rowsAffected += $this->update($newRefs, $where); - break; - default: - // no action - break; - } - } - } - return $rowsAffected; - } - - /** - * Deletes existing rows. - * - * @param array|string $where SQL WHERE clause(s). - * @return int The number of rows deleted. - */ - public function delete($where) - { - $depTables = $this->getDependentTables(); - if (!empty($depTables)) { - $resultSet = $this->fetchAll($where); - if (count($resultSet) > 0 ) { - foreach ($resultSet as $row) { - /** - * Execute cascading deletes against dependent tables - */ - foreach ($depTables as $tableClass) { - $t = self::getTableFromString($tableClass, $this); - $t->_cascadeDelete($tableClass, $row->getPrimaryKey()); - } - } - } - } - - $tableSpec = ($this->_schema ? $this->_schema . '.' : '') . $this->_name; - return $this->_db->delete($tableSpec, $where); - } - - /** - * Called by parent table's class during delete() method. - * - * @param string $parentTableClassname - * @param array $primaryKey - * @return int Number of affected rows - */ - public function _cascadeDelete($parentTableClassname, array $primaryKey) - { - // setup metadata - $this->_setupMetadata(); - - // get this class name - $thisClass = get_class($this); - if ($thisClass === 'Zend_Db_Table') { - $thisClass = $this->_definitionConfigName; - } - - $rowsAffected = 0; - - foreach ($this->_getReferenceMapNormalized() as $map) { - if ($map[self::REF_TABLE_CLASS] == $parentTableClassname && isset($map[self::ON_DELETE])) { - - $where = array(); - - // CASCADE or CASCADE_RECURSE - if (in_array($map[self::ON_DELETE], array(self::CASCADE, self::CASCADE_RECURSE))) { - for ($i = 0; $i < count($map[self::COLUMNS]); ++$i) { - $col = $this->_db->foldCase($map[self::COLUMNS][$i]); - $refCol = $this->_db->foldCase($map[self::REF_COLUMNS][$i]); - $type = $this->_metadata[$col]['DATA_TYPE']; - $where[] = $this->_db->quoteInto( - $this->_db->quoteIdentifier($col, true) . ' = ?', - $primaryKey[$refCol], $type); - } - } - - // CASCADE_RECURSE - if ($map[self::ON_DELETE] == self::CASCADE_RECURSE) { - - /** - * Execute cascading deletes against dependent tables - */ - $depTables = $this->getDependentTables(); - if (!empty($depTables)) { - foreach ($depTables as $tableClass) { - $t = self::getTableFromString($tableClass, $this); - foreach ($this->fetchAll($where) as $depRow) { - $rowsAffected += $t->_cascadeDelete($thisClass, $depRow->getPrimaryKey()); - } - } - } - } - - // CASCADE or CASCADE_RECURSE - if (in_array($map[self::ON_DELETE], array(self::CASCADE, self::CASCADE_RECURSE))) { - $rowsAffected += $this->delete($where); - } - - } - } - return $rowsAffected; - } - - /** - * Fetches rows by primary key. The argument specifies one or more primary - * key value(s). To find multiple rows by primary key, the argument must - * be an array. - * - * This method accepts a variable number of arguments. If the table has a - * multi-column primary key, the number of arguments must be the same as - * the number of columns in the primary key. To find multiple rows in a - * table with a multi-column primary key, each argument must be an array - * with the same number of elements. - * - * The find() method always returns a Rowset object, even if only one row - * was found. - * - * @param mixed $key The value(s) of the primary keys. - * @return Zend_Db_Table_Rowset_Abstract Row(s) matching the criteria. - * @throws Zend_Db_Table_Exception - */ - public function find() - { - $this->_setupPrimaryKey(); - $args = func_get_args(); - $keyNames = array_values((array) $this->_primary); - - if (count($args) < count($keyNames)) { - require_once 'Zend/Db/Table/Exception.php'; - throw new Zend_Db_Table_Exception("Too few columns for the primary key"); - } - - if (count($args) > count($keyNames)) { - require_once 'Zend/Db/Table/Exception.php'; - throw new Zend_Db_Table_Exception("Too many columns for the primary key"); - } - - $whereList = array(); - $numberTerms = 0; - foreach ($args as $keyPosition => $keyValues) { - $keyValuesCount = count($keyValues); - // Coerce the values to an array. - // Don't simply typecast to array, because the values - // might be Zend_Db_Expr objects. - if (!is_array($keyValues)) { - $keyValues = array($keyValues); - } - if ($numberTerms == 0) { - $numberTerms = $keyValuesCount; - } else if ($keyValuesCount != $numberTerms) { - require_once 'Zend/Db/Table/Exception.php'; - throw new Zend_Db_Table_Exception("Missing value(s) for the primary key"); - } - $keyValues = array_values($keyValues); - for ($i = 0; $i < $keyValuesCount; ++$i) { - if (!isset($whereList[$i])) { - $whereList[$i] = array(); - } - $whereList[$i][$keyPosition] = $keyValues[$i]; - } - } - - $whereClause = null; - if (count($whereList)) { - $whereOrTerms = array(); - $tableName = $this->_db->quoteTableAs($this->_name, null, true); - foreach ($whereList as $keyValueSets) { - $whereAndTerms = array(); - foreach ($keyValueSets as $keyPosition => $keyValue) { - $type = $this->_metadata[$keyNames[$keyPosition]]['DATA_TYPE']; - $columnName = $this->_db->quoteIdentifier($keyNames[$keyPosition], true); - $whereAndTerms[] = $this->_db->quoteInto( - $tableName . '.' . $columnName . ' = ?', - $keyValue, $type); - } - $whereOrTerms[] = '(' . implode(' AND ', $whereAndTerms) . ')'; - } - $whereClause = '(' . implode(' OR ', $whereOrTerms) . ')'; - } - - // issue ZF-5775 (empty where clause should return empty rowset) - if ($whereClause == null) { - $rowsetClass = $this->getRowsetClass(); - if (!class_exists($rowsetClass)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($rowsetClass); - } - return new $rowsetClass(array('table' => $this, 'rowClass' => $this->getRowClass(), 'stored' => true)); - } - - return $this->fetchAll($whereClause); - } - - /** - * Fetches all rows. - * - * Honors the Zend_Db_Adapter fetch mode. - * - * @param string|array|Zend_Db_Table_Select $where OPTIONAL An SQL WHERE clause or Zend_Db_Table_Select object. - * @param string|array $order OPTIONAL An SQL ORDER clause. - * @param int $count OPTIONAL An SQL LIMIT count. - * @param int $offset OPTIONAL An SQL LIMIT offset. - * @return Zend_Db_Table_Rowset_Abstract The row results per the Zend_Db_Adapter fetch mode. - */ - public function fetchAll($where = null, $order = null, $count = null, $offset = null) - { - if (!($where instanceof Zend_Db_Table_Select)) { - $select = $this->select(); - - if ($where !== null) { - $this->_where($select, $where); - } - - if ($order !== null) { - $this->_order($select, $order); - } - - if ($count !== null || $offset !== null) { - $select->limit($count, $offset); - } - - } else { - $select = $where; - } - - $rows = $this->_fetch($select); - - $data = array( - 'table' => $this, - 'data' => $rows, - 'readOnly' => $select->isReadOnly(), - 'rowClass' => $this->getRowClass(), - 'stored' => true - ); - - $rowsetClass = $this->getRowsetClass(); - if (!class_exists($rowsetClass)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($rowsetClass); - } - return new $rowsetClass($data); - } - - /** - * Fetches one row in an object of type Zend_Db_Table_Row_Abstract, - * or returns null if no row matches the specified criteria. - * - * @param string|array|Zend_Db_Table_Select $where OPTIONAL An SQL WHERE clause or Zend_Db_Table_Select object. - * @param string|array $order OPTIONAL An SQL ORDER clause. - * @param int $offset OPTIONAL An SQL OFFSET value. - * @return Zend_Db_Table_Row_Abstract|null The row results per the - * Zend_Db_Adapter fetch mode, or null if no row found. - */ - public function fetchRow($where = null, $order = null, $offset = null) - { - if (!($where instanceof Zend_Db_Table_Select)) { - $select = $this->select(); - - if ($where !== null) { - $this->_where($select, $where); - } - - if ($order !== null) { - $this->_order($select, $order); - } - - $select->limit(1, ((is_numeric($offset)) ? (int) $offset : null)); - - } else { - $select = $where->limit(1, $where->getPart(Zend_Db_Select::LIMIT_OFFSET)); - } - - $rows = $this->_fetch($select); - - if (count($rows) == 0) { - return null; - } - - $data = array( - 'table' => $this, - 'data' => $rows[0], - 'readOnly' => $select->isReadOnly(), - 'stored' => true - ); - - $rowClass = $this->getRowClass(); - if (!class_exists($rowClass)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($rowClass); - } - return new $rowClass($data); - } - - /** - * Fetches a new blank row (not from the database). - * - * @return Zend_Db_Table_Row_Abstract - * @deprecated since 0.9.3 - use createRow() instead. - */ - public function fetchNew() - { - return $this->createRow(); - } - - /** - * Fetches a new blank row (not from the database). - * - * @param array $data OPTIONAL data to populate in the new row. - * @param string $defaultSource OPTIONAL flag to force default values into new row - * @return Zend_Db_Table_Row_Abstract - */ - public function createRow(array $data = array(), $defaultSource = null) - { - $cols = $this->_getCols(); - $defaults = array_combine($cols, array_fill(0, count($cols), null)); - - // nothing provided at call-time, take the class value - if ($defaultSource == null) { - $defaultSource = $this->_defaultSource; - } - - if (!in_array($defaultSource, array(self::DEFAULT_CLASS, self::DEFAULT_DB, self::DEFAULT_NONE))) { - $defaultSource = self::DEFAULT_NONE; - } - - if ($defaultSource == self::DEFAULT_DB) { - foreach ($this->_metadata as $metadataName => $metadata) { - if (($metadata['DEFAULT'] != null) && - ($metadata['NULLABLE'] !== true || ($metadata['NULLABLE'] === true && isset($this->_defaultValues[$metadataName]) && $this->_defaultValues[$metadataName] === true)) && - (!(isset($this->_defaultValues[$metadataName]) && $this->_defaultValues[$metadataName] === false))) { - $defaults[$metadataName] = $metadata['DEFAULT']; - } - } - } elseif ($defaultSource == self::DEFAULT_CLASS && $this->_defaultValues) { - foreach ($this->_defaultValues as $defaultName => $defaultValue) { - if (array_key_exists($defaultName, $defaults)) { - $defaults[$defaultName] = $defaultValue; - } - } - } - - $config = array( - 'table' => $this, - 'data' => $defaults, - 'readOnly' => false, - 'stored' => false - ); - - $rowClass = $this->getRowClass(); - if (!class_exists($rowClass)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($rowClass); - } - $row = new $rowClass($config); - $row->setFromArray($data); - return $row; - } - - /** - * Generate WHERE clause from user-supplied string or array - * - * @param string|array $where OPTIONAL An SQL WHERE clause. - * @return Zend_Db_Table_Select - */ - protected function _where(Zend_Db_Table_Select $select, $where) - { - $where = (array) $where; - - foreach ($where as $key => $val) { - // is $key an int? - if (is_int($key)) { - // $val is the full condition - $select->where($val); - } else { - // $key is the condition with placeholder, - // and $val is quoted into the condition - $select->where($key, $val); - } - } - - return $select; - } - - /** - * Generate ORDER clause from user-supplied string or array - * - * @param string|array $order OPTIONAL An SQL ORDER clause. - * @return Zend_Db_Table_Select - */ - protected function _order(Zend_Db_Table_Select $select, $order) - { - if (!is_array($order)) { - $order = array($order); - } - - foreach ($order as $val) { - $select->order($val); - } - - return $select; - } - - /** - * Support method for fetching rows. - * - * @param Zend_Db_Table_Select $select query options. - * @return array An array containing the row results in FETCH_ASSOC mode. - */ - protected function _fetch(Zend_Db_Table_Select $select) - { - $stmt = $this->_db->query($select); - $data = $stmt->fetchAll(Zend_Db::FETCH_ASSOC); - return $data; - } - - public static function getTableFromString($tableName, Zend_Db_Table_Abstract $referenceTable = null) - { - if ($referenceTable instanceof Zend_Db_Table_Abstract) { - $tableDefinition = $referenceTable->getDefinition(); - - if ($tableDefinition !== null && $tableDefinition->hasTableConfig($tableName)) { - return new Zend_Db_Table($tableName, $tableDefinition); - } - } - - // assume the tableName is the class name - if (!class_exists($tableName)) { - try { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($tableName); - } catch (Zend_Exception $e) { - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception($e->getMessage(), $e->getCode(), $e); - } - } - - $options = array(); - - if ($referenceTable instanceof Zend_Db_Table_Abstract) { - $options['db'] = $referenceTable->getAdapter(); - } - - if (isset($tableDefinition) && $tableDefinition !== null) { - $options[Zend_Db_Table_Abstract::DEFINITION] = $tableDefinition; - } - - return new $tableName($options); - } - -} diff --git a/library/Zend/Db/Table/Definition.php b/library/Zend/Db/Table/Definition.php deleted file mode 100644 index 6019c7ea..00000000 --- a/library/Zend/Db/Table/Definition.php +++ /dev/null @@ -1,131 +0,0 @@ -setConfig($options); - } elseif (is_array($options)) { - $this->setOptions($options); - } - } - - /** - * setConfig() - * - * @param Zend_Config $config - * @return Zend_Db_Table_Definition - */ - public function setConfig(Zend_Config $config) - { - $this->setOptions($config->toArray()); - return $this; - } - - /** - * setOptions() - * - * @param array $options - * @return Zend_Db_Table_Definition - */ - public function setOptions(Array $options) - { - foreach ($options as $optionName => $optionValue) { - $this->setTableConfig($optionName, $optionValue); - } - return $this; - } - - /** - * @param string $tableName - * @param array $tableConfig - * @return Zend_Db_Table_Definition - */ - public function setTableConfig($tableName, array $tableConfig) - { - // @todo logic here - $tableConfig[Zend_Db_Table::DEFINITION_CONFIG_NAME] = $tableName; - $tableConfig[Zend_Db_Table::DEFINITION] = $this; - - if (!isset($tableConfig[Zend_Db_Table::NAME])) { - $tableConfig[Zend_Db_Table::NAME] = $tableName; - } - - $this->_tableConfigs[$tableName] = $tableConfig; - return $this; - } - - /** - * getTableConfig() - * - * @param string $tableName - * @return array - */ - public function getTableConfig($tableName) - { - return $this->_tableConfigs[$tableName]; - } - - /** - * removeTableConfig() - * - * @param string $tableName - */ - public function removeTableConfig($tableName) - { - unset($this->_tableConfigs[$tableName]); - } - - /** - * hasTableConfig() - * - * @param string $tableName - * @return bool - */ - public function hasTableConfig($tableName) - { - return (isset($this->_tableConfigs[$tableName])); - } - -} diff --git a/library/Zend/Db/Table/Exception.php b/library/Zend/Db/Table/Exception.php deleted file mode 100644 index c74aec79..00000000 --- a/library/Zend/Db/Table/Exception.php +++ /dev/null @@ -1,38 +0,0 @@ - value). - * The keys must match the physical names of columns in the - * table for which this row is defined. - * - * @var array - */ - protected $_data = array(); - - /** - * This is set to a copy of $_data when the data is fetched from - * a database, specified as a new tuple in the constructor, or - * when dirty data is posted to the database with save(). - * - * @var array - */ - protected $_cleanData = array(); - - /** - * Tracks columns where data has been updated. Allows more specific insert and - * update operations. - * - * @var array - */ - protected $_modifiedFields = array(); - - /** - * Zend_Db_Table_Abstract parent class or instance. - * - * @var Zend_Db_Table_Abstract - */ - protected $_table = null; - - /** - * Connected is true if we have a reference to a live - * Zend_Db_Table_Abstract object. - * This is false after the Rowset has been deserialized. - * - * @var boolean - */ - protected $_connected = true; - - /** - * A row is marked read only if it contains columns that are not physically represented within - * the database schema (e.g. evaluated columns/Zend_Db_Expr columns). This can also be passed - * as a run-time config options as a means of protecting row data. - * - * @var boolean - */ - protected $_readOnly = false; - - /** - * Name of the class of the Zend_Db_Table_Abstract object. - * - * @var string - */ - protected $_tableClass = null; - - /** - * Primary row key(s). - * - * @var array - */ - protected $_primary; - - /** - * Constructor. - * - * Supported params for $config are:- - * - table = class name or object of type Zend_Db_Table_Abstract - * - data = values of columns in this row. - * - * @param array $config OPTIONAL Array of user-specified config options. - * @return void - * @throws Zend_Db_Table_Row_Exception - */ - public function __construct(array $config = array()) - { - if (isset($config['table']) && $config['table'] instanceof Zend_Db_Table_Abstract) { - $this->_table = $config['table']; - $this->_tableClass = get_class($this->_table); - } elseif ($this->_tableClass !== null) { - $this->_table = $this->_getTableFromString($this->_tableClass); - } - - if (isset($config['data'])) { - if (!is_array($config['data'])) { - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception('Data must be an array'); - } - $this->_data = $config['data']; - } - if (isset($config['stored']) && $config['stored'] === true) { - $this->_cleanData = $this->_data; - } - - if (isset($config['readOnly']) && $config['readOnly'] === true) { - $this->setReadOnly(true); - } - - // Retrieve primary keys from table schema - if (($table = $this->_getTable())) { - $info = $table->info(); - $this->_primary = (array) $info['primary']; - } - - $this->init(); - } - - /** - * Transform a column name from the user-specified form - * to the physical form used in the database. - * You can override this method in a custom Row class - * to implement column name mappings, for example inflection. - * - * @param string $columnName Column name given. - * @return string The column name after transformation applied (none by default). - * @throws Zend_Db_Table_Row_Exception if the $columnName is not a string. - */ - protected function _transformColumn($columnName) - { - if (!is_string($columnName)) { - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception('Specified column is not a string'); - } - // Perform no transformation by default - return $columnName; - } - - /** - * Retrieve row field value - * - * @param string $columnName The user-specified column name. - * @return string The corresponding column value. - * @throws Zend_Db_Table_Row_Exception if the $columnName is not a column in the row. - */ - public function __get($columnName) - { - $columnName = $this->_transformColumn($columnName); - if (!array_key_exists($columnName, $this->_data)) { - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception("Specified column \"$columnName\" is not in the row"); - } - return $this->_data[$columnName]; - } - - /** - * Set row field value - * - * @param string $columnName The column key. - * @param mixed $value The value for the property. - * @return void - * @throws Zend_Db_Table_Row_Exception - */ - public function __set($columnName, $value) - { - $columnName = $this->_transformColumn($columnName); - if (!array_key_exists($columnName, $this->_data)) { - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception("Specified column \"$columnName\" is not in the row"); - } - $this->_data[$columnName] = $value; - $this->_modifiedFields[$columnName] = true; - } - - /** - * Unset row field value - * - * @param string $columnName The column key. - * @return Zend_Db_Table_Row_Abstract - * @throws Zend_Db_Table_Row_Exception - */ - public function __unset($columnName) - { - $columnName = $this->_transformColumn($columnName); - if (!array_key_exists($columnName, $this->_data)) { - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception("Specified column \"$columnName\" is not in the row"); - } - if ($this->isConnected() && in_array($columnName, $this->_table->info('primary'))) { - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception("Specified column \"$columnName\" is a primary key and should not be unset"); - } - unset($this->_data[$columnName]); - return $this; - } - - /** - * Test existence of row field - * - * @param string $columnName The column key. - * @return boolean - */ - public function __isset($columnName) - { - $columnName = $this->_transformColumn($columnName); - return array_key_exists($columnName, $this->_data); - } - - /** - * Store table, primary key and data in serialized object - * - * @return array - */ - public function __sleep() - { - return array('_tableClass', '_primary', '_data', '_cleanData', '_readOnly' ,'_modifiedFields'); - } - - /** - * Setup to do on wakeup. - * A de-serialized Row should not be assumed to have access to a live - * database connection, so set _connected = false. - * - * @return void - */ - public function __wakeup() - { - $this->_connected = false; - } - - /** - * Proxy to __isset - * Required by the ArrayAccess implementation - * - * @param string $offset - * @return boolean - */ - public function offsetExists($offset) - { - return $this->__isset($offset); - } - - /** - * Proxy to __get - * Required by the ArrayAccess implementation - * - * @param string $offset - * @return string - */ - public function offsetGet($offset) - { - return $this->__get($offset); - } - - /** - * Proxy to __set - * Required by the ArrayAccess implementation - * - * @param string $offset - * @param mixed $value - */ - public function offsetSet($offset, $value) - { - $this->__set($offset, $value); - } - - /** - * Proxy to __unset - * Required by the ArrayAccess implementation - * - * @param string $offset - */ - public function offsetUnset($offset) - { - return $this->__unset($offset); - } - - /** - * Initialize object - * - * Called from {@link __construct()} as final step of object instantiation. - * - * @return void - */ - public function init() - { - } - - /** - * Returns the table object, or null if this is disconnected row - * - * @return Zend_Db_Table_Abstract|null - */ - public function getTable() - { - return $this->_table; - } - - /** - * Set the table object, to re-establish a live connection - * to the database for a Row that has been de-serialized. - * - * @param Zend_Db_Table_Abstract $table - * @return boolean - * @throws Zend_Db_Table_Row_Exception - */ - public function setTable(Zend_Db_Table_Abstract $table = null) - { - if ($table == null) { - $this->_table = null; - $this->_connected = false; - return false; - } - - $tableClass = get_class($table); - if (! $table instanceof $this->_tableClass) { - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception("The specified Table is of class $tableClass, expecting class to be instance of $this->_tableClass"); - } - - $this->_table = $table; - $this->_tableClass = $tableClass; - - $info = $this->_table->info(); - - if ($info['cols'] != array_keys($this->_data)) { - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception('The specified Table does not have the same columns as the Row'); - } - - if (! array_intersect((array) $this->_primary, $info['primary']) == (array) $this->_primary) { - - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception("The specified Table '$tableClass' does not have the same primary key as the Row"); - } - - $this->_connected = true; - return true; - } - - /** - * Query the class name of the Table object for which this - * Row was created. - * - * @return string - */ - public function getTableClass() - { - return $this->_tableClass; - } - - /** - * Test the connected status of the row. - * - * @return boolean - */ - public function isConnected() - { - return $this->_connected; - } - - /** - * Test the read-only status of the row. - * - * @return boolean - */ - public function isReadOnly() - { - return $this->_readOnly; - } - - /** - * Set the read-only status of the row. - * - * @param boolean $flag - * @return boolean - */ - public function setReadOnly($flag) - { - $this->_readOnly = (bool) $flag; - } - - /** - * Returns an instance of the parent table's Zend_Db_Table_Select object. - * - * @return Zend_Db_Table_Select - */ - public function select() - { - return $this->getTable()->select(); - } - - /** - * Saves the properties to the database. - * - * This performs an intelligent insert/update, and reloads the - * properties with fresh data from the table on success. - * - * @return mixed The primary key value(s), as an associative array if the - * key is compound, or a scalar if the key is single-column. - */ - public function save() - { - /** - * If the _cleanData array is empty, - * this is an INSERT of a new row. - * Otherwise it is an UPDATE. - */ - if (empty($this->_cleanData)) { - return $this->_doInsert(); - } else { - return $this->_doUpdate(); - } - } - - /** - * @return mixed The primary key value(s), as an associative array if the - * key is compound, or a scalar if the key is single-column. - */ - protected function _doInsert() - { - /** - * A read-only row cannot be saved. - */ - if ($this->_readOnly === true) { - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception('This row has been marked read-only'); - } - - /** - * Run pre-INSERT logic - */ - $this->_insert(); - - /** - * Execute the INSERT (this may throw an exception) - */ - $data = array_intersect_key($this->_data, $this->_modifiedFields); - $primaryKey = $this->_getTable()->insert($data); - - /** - * Normalize the result to an array indexed by primary key column(s). - * The table insert() method may return a scalar. - */ - if (is_array($primaryKey)) { - $newPrimaryKey = $primaryKey; - } else { - //ZF-6167 Use tempPrimaryKey temporary to avoid that zend encoding fails. - $tempPrimaryKey = (array) $this->_primary; - $newPrimaryKey = array(current($tempPrimaryKey) => $primaryKey); - } - - /** - * Save the new primary key value in _data. The primary key may have - * been generated by a sequence or auto-increment mechanism, and this - * merge should be done before the _postInsert() method is run, so the - * new values are available for logging, etc. - */ - $this->_data = array_merge($this->_data, $newPrimaryKey); - - /** - * Run post-INSERT logic - */ - $this->_postInsert(); - - /** - * Update the _cleanData to reflect that the data has been inserted. - */ - $this->_refresh(); - - return $primaryKey; - } - - /** - * @return mixed The primary key value(s), as an associative array if the - * key is compound, or a scalar if the key is single-column. - */ - protected function _doUpdate() - { - /** - * A read-only row cannot be saved. - */ - if ($this->_readOnly === true) { - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception('This row has been marked read-only'); - } - - /** - * Get expressions for a WHERE clause - * based on the primary key value(s). - */ - $where = $this->_getWhereQuery(false); - - /** - * Run pre-UPDATE logic - */ - $this->_update(); - - /** - * Compare the data to the modified fields array to discover - * which columns have been changed. - */ - $diffData = array_intersect_key($this->_data, $this->_modifiedFields); - - /** - * Were any of the changed columns part of the primary key? - */ - $pkDiffData = array_intersect_key($diffData, array_flip((array)$this->_primary)); - - /** - * Execute cascading updates against dependent tables. - * Do this only if primary key value(s) were changed. - */ - if (count($pkDiffData) > 0) { - $depTables = $this->_getTable()->getDependentTables(); - if (!empty($depTables)) { - $pkNew = $this->_getPrimaryKey(true); - $pkOld = $this->_getPrimaryKey(false); - foreach ($depTables as $tableClass) { - $t = $this->_getTableFromString($tableClass); - $t->_cascadeUpdate($this->getTableClass(), $pkOld, $pkNew); - } - } - } - - /** - * Execute the UPDATE (this may throw an exception) - * Do this only if data values were changed. - * Use the $diffData variable, so the UPDATE statement - * includes SET terms only for data values that changed. - */ - if (count($diffData) > 0) { - $this->_getTable()->update($diffData, $where); - } - - /** - * Run post-UPDATE logic. Do this before the _refresh() - * so the _postUpdate() function can tell the difference - * between changed data and clean (pre-changed) data. - */ - $this->_postUpdate(); - - /** - * Refresh the data just in case triggers in the RDBMS changed - * any columns. Also this resets the _cleanData. - */ - $this->_refresh(); - - /** - * Return the primary key value(s) as an array - * if the key is compound or a scalar if the key - * is a scalar. - */ - $primaryKey = $this->_getPrimaryKey(true); - if (count($primaryKey) == 1) { - return current($primaryKey); - } - - return $primaryKey; - } - - /** - * Deletes existing rows. - * - * @return int The number of rows deleted. - */ - public function delete() - { - /** - * A read-only row cannot be deleted. - */ - if ($this->_readOnly === true) { - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception('This row has been marked read-only'); - } - - $where = $this->_getWhereQuery(); - - /** - * Execute pre-DELETE logic - */ - $this->_delete(); - - /** - * Execute cascading deletes against dependent tables - */ - $depTables = $this->_getTable()->getDependentTables(); - if (!empty($depTables)) { - $pk = $this->_getPrimaryKey(); - foreach ($depTables as $tableClass) { - $t = $this->_getTableFromString($tableClass); - $t->_cascadeDelete($this->getTableClass(), $pk); - } - } - - /** - * Execute the DELETE (this may throw an exception) - */ - $result = $this->_getTable()->delete($where); - - /** - * Execute post-DELETE logic - */ - $this->_postDelete(); - - /** - * Reset all fields to null to indicate that the row is not there - */ - $this->_data = array_combine( - array_keys($this->_data), - array_fill(0, count($this->_data), null) - ); - - return $result; - } - - public function getIterator() - { - return new ArrayIterator((array) $this->_data); - } - - /** - * Returns the column/value data as an array. - * - * @return array - */ - public function toArray() - { - return (array)$this->_data; - } - - /** - * Sets all data in the row from an array. - * - * @param array $data - * @return Zend_Db_Table_Row_Abstract Provides a fluent interface - */ - public function setFromArray(array $data) - { - $data = array_intersect_key($data, $this->_data); - - foreach ($data as $columnName => $value) { - $this->__set($columnName, $value); - } - - return $this; - } - - /** - * Refreshes properties from the database. - * - * @return void - */ - public function refresh() - { - return $this->_refresh(); - } - - /** - * Retrieves an instance of the parent table. - * - * @return Zend_Db_Table_Abstract - */ - protected function _getTable() - { - if (!$this->_connected) { - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception('Cannot save a Row unless it is connected'); - } - return $this->_table; - } - - /** - * Retrieves an associative array of primary keys. - * - * @param bool $useDirty - * @return array - */ - protected function _getPrimaryKey($useDirty = true) - { - if (!is_array($this->_primary)) { - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception("The primary key must be set as an array"); - } - - $primary = array_flip($this->_primary); - if ($useDirty) { - $array = array_intersect_key($this->_data, $primary); - } else { - $array = array_intersect_key($this->_cleanData, $primary); - } - if (count($primary) != count($array)) { - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception("The specified Table '$this->_tableClass' does not have the same primary key as the Row"); - } - return $array; - } - - /** - * Retrieves an associative array of primary keys. - * - * @param bool $useDirty - * @return array - */ - public function getPrimaryKey($useDirty = true) - { - return $this->_getPrimaryKey($useDirty); - } - - /** - * Constructs where statement for retrieving row(s). - * - * @param bool $useDirty - * @return array - */ - protected function _getWhereQuery($useDirty = true) - { - $where = array(); - $db = $this->_getTable()->getAdapter(); - $primaryKey = $this->_getPrimaryKey($useDirty); - $info = $this->_getTable()->info(); - $metadata = $info[Zend_Db_Table_Abstract::METADATA]; - - // retrieve recently updated row using primary keys - $where = array(); - foreach ($primaryKey as $column => $value) { - $tableName = $db->quoteIdentifier($info[Zend_Db_Table_Abstract::NAME], true); - $type = $metadata[$column]['DATA_TYPE']; - $columnName = $db->quoteIdentifier($column, true); - $where[] = $db->quoteInto("{$tableName}.{$columnName} = ?", $value, $type); - } - return $where; - } - - /** - * Refreshes properties from the database. - * - * @return void - */ - protected function _refresh() - { - $where = $this->_getWhereQuery(); - $row = $this->_getTable()->fetchRow($where); - - if (null === $row) { - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception('Cannot refresh row as parent is missing'); - } - - $this->_data = $row->toArray(); - $this->_cleanData = $this->_data; - $this->_modifiedFields = array(); - } - - /** - * Allows pre-insert logic to be applied to row. - * Subclasses may override this method. - * - * @return void - */ - protected function _insert() - { - } - - /** - * Allows post-insert logic to be applied to row. - * Subclasses may override this method. - * - * @return void - */ - protected function _postInsert() - { - } - - /** - * Allows pre-update logic to be applied to row. - * Subclasses may override this method. - * - * @return void - */ - protected function _update() - { - } - - /** - * Allows post-update logic to be applied to row. - * Subclasses may override this method. - * - * @return void - */ - protected function _postUpdate() - { - } - - /** - * Allows pre-delete logic to be applied to row. - * Subclasses may override this method. - * - * @return void - */ - protected function _delete() - { - } - - /** - * Allows post-delete logic to be applied to row. - * Subclasses may override this method. - * - * @return void - */ - protected function _postDelete() - { - } - - /** - * Prepares a table reference for lookup. - * - * Ensures all reference keys are set and properly formatted. - * - * @param Zend_Db_Table_Abstract $dependentTable - * @param Zend_Db_Table_Abstract $parentTable - * @param string $ruleKey - * @return array - */ - protected function _prepareReference(Zend_Db_Table_Abstract $dependentTable, Zend_Db_Table_Abstract $parentTable, $ruleKey) - { - $parentTableName = (get_class($parentTable) === 'Zend_Db_Table') ? $parentTable->getDefinitionConfigName() : get_class($parentTable); - $map = $dependentTable->getReference($parentTableName, $ruleKey); - - if (!isset($map[Zend_Db_Table_Abstract::REF_COLUMNS])) { - $parentInfo = $parentTable->info(); - $map[Zend_Db_Table_Abstract::REF_COLUMNS] = array_values((array) $parentInfo['primary']); - } - - $map[Zend_Db_Table_Abstract::COLUMNS] = (array) $map[Zend_Db_Table_Abstract::COLUMNS]; - $map[Zend_Db_Table_Abstract::REF_COLUMNS] = (array) $map[Zend_Db_Table_Abstract::REF_COLUMNS]; - - return $map; - } - - /** - * Query a dependent table to retrieve rows matching the current row. - * - * @param string|Zend_Db_Table_Abstract $dependentTable - * @param string OPTIONAL $ruleKey - * @param Zend_Db_Table_Select OPTIONAL $select - * @return Zend_Db_Table_Rowset_Abstract Query result from $dependentTable - * @throws Zend_Db_Table_Row_Exception If $dependentTable is not a table or is not loadable. - */ - public function findDependentRowset($dependentTable, $ruleKey = null, Zend_Db_Table_Select $select = null) - { - $db = $this->_getTable()->getAdapter(); - - if (is_string($dependentTable)) { - $dependentTable = $this->_getTableFromString($dependentTable); - } - - if (!$dependentTable instanceof Zend_Db_Table_Abstract) { - $type = gettype($dependentTable); - if ($type == 'object') { - $type = get_class($dependentTable); - } - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception("Dependent table must be a Zend_Db_Table_Abstract, but it is $type"); - } - - // even if we are interacting between a table defined in a class and a - // table via extension, ensure to persist the definition - if (($tableDefinition = $this->_table->getDefinition()) !== null - && ($dependentTable->getDefinition() == null)) { - $dependentTable->setOptions(array(Zend_Db_Table_Abstract::DEFINITION => $tableDefinition)); - } - - if ($select === null) { - $select = $dependentTable->select(); - } else { - $select->setTable($dependentTable); - } - - $map = $this->_prepareReference($dependentTable, $this->_getTable(), $ruleKey); - - for ($i = 0; $i < count($map[Zend_Db_Table_Abstract::COLUMNS]); ++$i) { - $parentColumnName = $db->foldCase($map[Zend_Db_Table_Abstract::REF_COLUMNS][$i]); - $value = $this->_data[$parentColumnName]; - // Use adapter from dependent table to ensure correct query construction - $dependentDb = $dependentTable->getAdapter(); - $dependentColumnName = $dependentDb->foldCase($map[Zend_Db_Table_Abstract::COLUMNS][$i]); - $dependentColumn = $dependentDb->quoteIdentifier($dependentColumnName, true); - $dependentInfo = $dependentTable->info(); - $type = $dependentInfo[Zend_Db_Table_Abstract::METADATA][$dependentColumnName]['DATA_TYPE']; - $select->where("$dependentColumn = ?", $value, $type); - } - - return $dependentTable->fetchAll($select); - } - - /** - * Query a parent table to retrieve the single row matching the current row. - * - * @param string|Zend_Db_Table_Abstract $parentTable - * @param string OPTIONAL $ruleKey - * @param Zend_Db_Table_Select OPTIONAL $select - * @return Zend_Db_Table_Row_Abstract Query result from $parentTable - * @throws Zend_Db_Table_Row_Exception If $parentTable is not a table or is not loadable. - */ - public function findParentRow($parentTable, $ruleKey = null, Zend_Db_Table_Select $select = null) - { - $db = $this->_getTable()->getAdapter(); - - if (is_string($parentTable)) { - $parentTable = $this->_getTableFromString($parentTable); - } - - if (!$parentTable instanceof Zend_Db_Table_Abstract) { - $type = gettype($parentTable); - if ($type == 'object') { - $type = get_class($parentTable); - } - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception("Parent table must be a Zend_Db_Table_Abstract, but it is $type"); - } - - // even if we are interacting between a table defined in a class and a - // table via extension, ensure to persist the definition - if (($tableDefinition = $this->_table->getDefinition()) !== null - && ($parentTable->getDefinition() == null)) { - $parentTable->setOptions(array(Zend_Db_Table_Abstract::DEFINITION => $tableDefinition)); - } - - if ($select === null) { - $select = $parentTable->select(); - } else { - $select->setTable($parentTable); - } - - $map = $this->_prepareReference($this->_getTable(), $parentTable, $ruleKey); - - // iterate the map, creating the proper wheres - for ($i = 0; $i < count($map[Zend_Db_Table_Abstract::COLUMNS]); ++$i) { - $dependentColumnName = $db->foldCase($map[Zend_Db_Table_Abstract::COLUMNS][$i]); - $value = $this->_data[$dependentColumnName]; - // Use adapter from parent table to ensure correct query construction - $parentDb = $parentTable->getAdapter(); - $parentColumnName = $parentDb->foldCase($map[Zend_Db_Table_Abstract::REF_COLUMNS][$i]); - $parentColumn = $parentDb->quoteIdentifier($parentColumnName, true); - $parentInfo = $parentTable->info(); - - // determine where part - $type = $parentInfo[Zend_Db_Table_Abstract::METADATA][$parentColumnName]['DATA_TYPE']; - $nullable = $parentInfo[Zend_Db_Table_Abstract::METADATA][$parentColumnName]['NULLABLE']; - if ($value === null && $nullable == true) { - $select->where("$parentColumn IS NULL"); - } elseif ($value === null && $nullable == false) { - return null; - } else { - $select->where("$parentColumn = ?", $value, $type); - } - - } - - return $parentTable->fetchRow($select); - } - - /** - * @param string|Zend_Db_Table_Abstract $matchTable - * @param string|Zend_Db_Table_Abstract $intersectionTable - * @param string OPTIONAL $callerRefRule - * @param string OPTIONAL $matchRefRule - * @param Zend_Db_Table_Select OPTIONAL $select - * @return Zend_Db_Table_Rowset_Abstract Query result from $matchTable - * @throws Zend_Db_Table_Row_Exception If $matchTable or $intersectionTable is not a table class or is not loadable. - */ - public function findManyToManyRowset($matchTable, $intersectionTable, $callerRefRule = null, - $matchRefRule = null, Zend_Db_Table_Select $select = null) - { - $db = $this->_getTable()->getAdapter(); - - if (is_string($intersectionTable)) { - $intersectionTable = $this->_getTableFromString($intersectionTable); - } - - if (!$intersectionTable instanceof Zend_Db_Table_Abstract) { - $type = gettype($intersectionTable); - if ($type == 'object') { - $type = get_class($intersectionTable); - } - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception("Intersection table must be a Zend_Db_Table_Abstract, but it is $type"); - } - - // even if we are interacting between a table defined in a class and a - // table via extension, ensure to persist the definition - if (($tableDefinition = $this->_table->getDefinition()) !== null - && ($intersectionTable->getDefinition() == null)) { - $intersectionTable->setOptions(array(Zend_Db_Table_Abstract::DEFINITION => $tableDefinition)); - } - - if (is_string($matchTable)) { - $matchTable = $this->_getTableFromString($matchTable); - } - - if (! $matchTable instanceof Zend_Db_Table_Abstract) { - $type = gettype($matchTable); - if ($type == 'object') { - $type = get_class($matchTable); - } - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception("Match table must be a Zend_Db_Table_Abstract, but it is $type"); - } - - // even if we are interacting between a table defined in a class and a - // table via extension, ensure to persist the definition - if (($tableDefinition = $this->_table->getDefinition()) !== null - && ($matchTable->getDefinition() == null)) { - $matchTable->setOptions(array(Zend_Db_Table_Abstract::DEFINITION => $tableDefinition)); - } - - if ($select === null) { - $select = $matchTable->select(); - } else { - $select->setTable($matchTable); - } - - // Use adapter from intersection table to ensure correct query construction - $interInfo = $intersectionTable->info(); - $interDb = $intersectionTable->getAdapter(); - $interName = $interInfo['name']; - $interSchema = isset($interInfo['schema']) ? $interInfo['schema'] : null; - $matchInfo = $matchTable->info(); - $matchName = $matchInfo['name']; - $matchSchema = isset($matchInfo['schema']) ? $matchInfo['schema'] : null; - - $matchMap = $this->_prepareReference($intersectionTable, $matchTable, $matchRefRule); - - for ($i = 0; $i < count($matchMap[Zend_Db_Table_Abstract::COLUMNS]); ++$i) { - $interCol = $interDb->quoteIdentifier('i' . '.' . $matchMap[Zend_Db_Table_Abstract::COLUMNS][$i], true); - $matchCol = $interDb->quoteIdentifier('m' . '.' . $matchMap[Zend_Db_Table_Abstract::REF_COLUMNS][$i], true); - $joinCond[] = "$interCol = $matchCol"; - } - $joinCond = implode(' AND ', $joinCond); - - $select->from(array('i' => $interName), array(), $interSchema) - ->joinInner(array('m' => $matchName), $joinCond, Zend_Db_Select::SQL_WILDCARD, $matchSchema) - ->setIntegrityCheck(false); - - $callerMap = $this->_prepareReference($intersectionTable, $this->_getTable(), $callerRefRule); - - for ($i = 0; $i < count($callerMap[Zend_Db_Table_Abstract::COLUMNS]); ++$i) { - $callerColumnName = $db->foldCase($callerMap[Zend_Db_Table_Abstract::REF_COLUMNS][$i]); - $value = $this->_data[$callerColumnName]; - $interColumnName = $interDb->foldCase($callerMap[Zend_Db_Table_Abstract::COLUMNS][$i]); - $interCol = $interDb->quoteIdentifier("i.$interColumnName", true); - $interInfo = $intersectionTable->info(); - $type = $interInfo[Zend_Db_Table_Abstract::METADATA][$interColumnName]['DATA_TYPE']; - $select->where($interDb->quoteInto("$interCol = ?", $value, $type)); - } - - $stmt = $select->query(); - - $config = array( - 'table' => $matchTable, - 'data' => $stmt->fetchAll(Zend_Db::FETCH_ASSOC), - 'rowClass' => $matchTable->getRowClass(), - 'readOnly' => false, - 'stored' => true - ); - - $rowsetClass = $matchTable->getRowsetClass(); - if (!class_exists($rowsetClass)) { - try { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($rowsetClass); - } catch (Zend_Exception $e) { - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception($e->getMessage(), $e->getCode(), $e); - } - } - $rowset = new $rowsetClass($config); - return $rowset; - } - - /** - * Turn magic function calls into non-magic function calls - * to the above methods. - * - * @param string $method - * @param array $args OPTIONAL Zend_Db_Table_Select query modifier - * @return Zend_Db_Table_Row_Abstract|Zend_Db_Table_Rowset_Abstract - * @throws Zend_Db_Table_Row_Exception If an invalid method is called. - */ - public function __call($method, array $args) - { - $matches = array(); - - if (count($args) && $args[0] instanceof Zend_Db_Table_Select) { - $select = $args[0]; - } else { - $select = null; - } - - /** - * Recognize methods for Has-Many cases: - * findParent() - * findParentBy() - * Use the non-greedy pattern repeat modifier e.g. \w+? - */ - if (preg_match('/^findParent(\w+?)(?:By(\w+))?$/', $method, $matches)) { - $class = $matches[1]; - $ruleKey1 = isset($matches[2]) ? $matches[2] : null; - return $this->findParentRow($class, $ruleKey1, $select); - } - - /** - * Recognize methods for Many-to-Many cases: - * findVia() - * findViaBy() - * findViaByAnd() - * Use the non-greedy pattern repeat modifier e.g. \w+? - */ - if (preg_match('/^find(\w+?)Via(\w+?)(?:By(\w+?)(?:And(\w+))?)?$/', $method, $matches)) { - $class = $matches[1]; - $viaClass = $matches[2]; - $ruleKey1 = isset($matches[3]) ? $matches[3] : null; - $ruleKey2 = isset($matches[4]) ? $matches[4] : null; - return $this->findManyToManyRowset($class, $viaClass, $ruleKey1, $ruleKey2, $select); - } - - /** - * Recognize methods for Belongs-To cases: - * find() - * findBy() - * Use the non-greedy pattern repeat modifier e.g. \w+? - */ - if (preg_match('/^find(\w+?)(?:By(\w+))?$/', $method, $matches)) { - $class = $matches[1]; - $ruleKey1 = isset($matches[2]) ? $matches[2] : null; - return $this->findDependentRowset($class, $ruleKey1, $select); - } - - require_once 'Zend/Db/Table/Row/Exception.php'; - throw new Zend_Db_Table_Row_Exception("Unrecognized method '$method()'"); - } - - - /** - * _getTableFromString - * - * @param string $tableName - * @return Zend_Db_Table_Abstract - */ - protected function _getTableFromString($tableName) - { - return Zend_Db_Table_Abstract::getTableFromString($tableName, $this->_table); - } - -} diff --git a/library/Zend/Db/Table/Row/Exception.php b/library/Zend/Db/Table/Row/Exception.php deleted file mode 100644 index f407190d..00000000 --- a/library/Zend/Db/Table/Row/Exception.php +++ /dev/null @@ -1,38 +0,0 @@ -_table = $config['table']; - $this->_tableClass = get_class($this->_table); - } - if (isset($config['rowClass'])) { - $this->_rowClass = $config['rowClass']; - } - if (!class_exists($this->_rowClass)) { - require_once 'Zend/Loader.php'; - Zend_Loader::loadClass($this->_rowClass); - } - if (isset($config['data'])) { - $this->_data = $config['data']; - } - if (isset($config['readOnly'])) { - $this->_readOnly = $config['readOnly']; - } - if (isset($config['stored'])) { - $this->_stored = $config['stored']; - } - - // set the count of rows - $this->_count = count($this->_data); - - $this->init(); - } - - /** - * Store data, class names, and state in serialized object - * - * @return array - */ - public function __sleep() - { - return array('_data', '_tableClass', '_rowClass', '_pointer', '_count', '_rows', '_stored', - '_readOnly'); - } - - /** - * Setup to do on wakeup. - * A de-serialized Rowset should not be assumed to have access to a live - * database connection, so set _connected = false. - * - * @return void - */ - public function __wakeup() - { - $this->_connected = false; - } - - /** - * Initialize object - * - * Called from {@link __construct()} as final step of object instantiation. - * - * @return void - */ - public function init() - { - } - - /** - * Return the connected state of the rowset. - * - * @return boolean - */ - public function isConnected() - { - return $this->_connected; - } - - /** - * Returns the table object, or null if this is disconnected rowset - * - * @return Zend_Db_Table_Abstract - */ - public function getTable() - { - return $this->_table; - } - - /** - * Set the table object, to re-establish a live connection - * to the database for a Rowset that has been de-serialized. - * - * @param Zend_Db_Table_Abstract $table - * @return boolean - * @throws Zend_Db_Table_Row_Exception - */ - public function setTable(Zend_Db_Table_Abstract $table) - { - $this->_table = $table; - $this->_connected = false; - // @todo This works only if we have iterated through - // the result set once to instantiate the rows. - foreach ($this as $row) { - $connected = $row->setTable($table); - if ($connected == true) { - $this->_connected = true; - } - } - return $this->_connected; - } - - /** - * Query the class name of the Table object for which this - * Rowset was created. - * - * @return string - */ - public function getTableClass() - { - return $this->_tableClass; - } - - /** - * Rewind the Iterator to the first element. - * Similar to the reset() function for arrays in PHP. - * Required by interface Iterator. - * - * @return Zend_Db_Table_Rowset_Abstract Fluent interface. - */ - public function rewind() - { - $this->_pointer = 0; - return $this; - } - - /** - * Return the current element. - * Similar to the current() function for arrays in PHP - * Required by interface Iterator. - * - * @return Zend_Db_Table_Row_Abstract current element from the collection - */ - public function current() - { - if ($this->valid() === false) { - return null; - } - - // return the row object - return $this->_loadAndReturnRow($this->_pointer); - } - - /** - * Return the identifying key of the current element. - * Similar to the key() function for arrays in PHP. - * Required by interface Iterator. - * - * @return int - */ - public function key() - { - return $this->_pointer; - } - - /** - * Move forward to next element. - * Similar to the next() function for arrays in PHP. - * Required by interface Iterator. - * - * @return void - */ - public function next() - { - ++$this->_pointer; - } - - /** - * Check if there is a current element after calls to rewind() or next(). - * Used to check if we've iterated to the end of the collection. - * Required by interface Iterator. - * - * @return bool False if there's nothing more to iterate over - */ - public function valid() - { - return $this->_pointer >= 0 && $this->_pointer < $this->_count; - } - - /** - * Returns the number of elements in the collection. - * - * Implements Countable::count() - * - * @return int - */ - public function count() - { - return $this->_count; - } - - /** - * Take the Iterator to position $position - * Required by interface SeekableIterator. - * - * @param int $position the position to seek to - * @return Zend_Db_Table_Rowset_Abstract - * @throws Zend_Db_Table_Rowset_Exception - */ - public function seek($position) - { - $position = (int) $position; - if ($position < 0 || $position >= $this->_count) { - require_once 'Zend/Db/Table/Rowset/Exception.php'; - throw new Zend_Db_Table_Rowset_Exception("Illegal index $position"); - } - $this->_pointer = $position; - return $this; - } - - /** - * Check if an offset exists - * Required by the ArrayAccess implementation - * - * @param string $offset - * @return boolean - */ - public function offsetExists($offset) - { - return isset($this->_data[(int) $offset]); - } - - /** - * Get the row for the given offset - * Required by the ArrayAccess implementation - * - * @param string $offset - * @return Zend_Db_Table_Row_Abstract - */ - public function offsetGet($offset) - { - $offset = (int) $offset; - if ($offset < 0 || $offset >= $this->_count) { - require_once 'Zend/Db/Table/Rowset/Exception.php'; - throw new Zend_Db_Table_Rowset_Exception("Illegal index $offset"); - } - $this->_pointer = $offset; - - return $this->current(); - } - - /** - * Does nothing - * Required by the ArrayAccess implementation - * - * @param string $offset - * @param mixed $value - */ - public function offsetSet($offset, $value) - { - } - - /** - * Does nothing - * Required by the ArrayAccess implementation - * - * @param string $offset - */ - public function offsetUnset($offset) - { - } - - /** - * Returns a Zend_Db_Table_Row from a known position into the Iterator - * - * @param int $position the position of the row expected - * @param bool $seek wether or not seek the iterator to that position after - * @return Zend_Db_Table_Row - * @throws Zend_Db_Table_Rowset_Exception - */ - public function getRow($position, $seek = false) - { - try { - $row = $this->_loadAndReturnRow($position); - } catch (Zend_Db_Table_Rowset_Exception $e) { - require_once 'Zend/Db/Table/Rowset/Exception.php'; - throw new Zend_Db_Table_Rowset_Exception('No row could be found at position ' . (int) $position, 0, $e); - } - - if ($seek == true) { - $this->seek($position); - } - - return $row; - } - - /** - * Returns all data as an array. - * - * Updates the $_data property with current row object values. - * - * @return array - */ - public function toArray() - { - // @todo This works only if we have iterated through - // the result set once to instantiate the rows. - foreach ($this->_rows as $i => $row) { - $this->_data[$i] = $row->toArray(); - } - return $this->_data; - } - - protected function _loadAndReturnRow($position) - { - if (!isset($this->_data[$position])) { - require_once 'Zend/Db/Table/Rowset/Exception.php'; - throw new Zend_Db_Table_Rowset_Exception("Data for provided position does not exist"); - } - - // do we already have a row object for this position? - if (empty($this->_rows[$position])) { - $this->_rows[$position] = new $this->_rowClass( - array( - 'table' => $this->_table, - 'data' => $this->_data[$position], - 'stored' => $this->_stored, - 'readOnly' => $this->_readOnly - ) - ); - } - - // return the row object - return $this->_rows[$position]; - } - -} diff --git a/library/Zend/Db/Table/Rowset/Exception.php b/library/Zend/Db/Table/Rowset/Exception.php deleted file mode 100644 index 5e4990bc..00000000 --- a/library/Zend/Db/Table/Rowset/Exception.php +++ /dev/null @@ -1,37 +0,0 @@ -getAdapter()); - - $this->setTable($table); - } - - /** - * Return the table that created this select object - * - * @return Zend_Db_Table_Abstract - */ - public function getTable() - { - return $this->_table; - } - - /** - * Sets the primary table name and retrieves the table schema. - * - * @param Zend_Db_Table_Abstract $adapter - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function setTable(Zend_Db_Table_Abstract $table) - { - $this->_adapter = $table->getAdapter(); - $this->_info = $table->info(); - $this->_table = $table; - - return $this; - } - - /** - * Sets the integrity check flag. - * - * Setting this flag to false skips the checks for table joins, allowing - * 'hybrid' table rows to be created. - * - * @param Zend_Db_Table_Abstract $adapter - * @return Zend_Db_Select This Zend_Db_Select object. - */ - public function setIntegrityCheck($flag = true) - { - $this->_integrityCheck = $flag; - return $this; - } - - /** - * Tests query to determine if expressions or aliases columns exist. - * - * @return boolean - */ - public function isReadOnly() - { - $readOnly = false; - $fields = $this->getPart(Zend_Db_Table_Select::COLUMNS); - $cols = $this->_info[Zend_Db_Table_Abstract::COLS]; - - if (!count($fields)) { - return $readOnly; - } - - foreach ($fields as $columnEntry) { - $column = $columnEntry[1]; - $alias = $columnEntry[2]; - - if ($alias !== null) { - $column = $alias; - } - - switch (true) { - case ($column == self::SQL_WILDCARD): - break; - - case ($column instanceof Zend_Db_Expr): - case (!in_array($column, $cols)): - $readOnly = true; - break 2; - } - } - - return $readOnly; - } - - /** - * Adds a FROM table and optional columns to the query. - * - * The table name can be expressed - * - * @param array|string|Zend_Db_Expr|Zend_Db_Table_Abstract $name The table name or an - associative array relating - table name to correlation - name. - * @param array|string|Zend_Db_Expr $cols The columns to select from this table. - * @param string $schema The schema name to specify, if any. - * @return Zend_Db_Table_Select This Zend_Db_Table_Select object. - */ - public function from($name, $cols = self::SQL_WILDCARD, $schema = null) - { - if ($name instanceof Zend_Db_Table_Abstract) { - $info = $name->info(); - $name = $info[Zend_Db_Table_Abstract::NAME]; - if (isset($info[Zend_Db_Table_Abstract::SCHEMA])) { - $schema = $info[Zend_Db_Table_Abstract::SCHEMA]; - } - } - - return $this->joinInner($name, null, $cols, $schema); - } - - /** - * Performs a validation on the select query before passing back to the parent class. - * Ensures that only columns from the primary Zend_Db_Table are returned in the result. - * - * @return string|null This object as a SELECT string (or null if a string cannot be produced) - */ - public function assemble() - { - $fields = $this->getPart(Zend_Db_Table_Select::COLUMNS); - $primary = $this->_info[Zend_Db_Table_Abstract::NAME]; - $schema = $this->_info[Zend_Db_Table_Abstract::SCHEMA]; - - - if (count($this->_parts[self::UNION]) == 0) { - - // If no fields are specified we assume all fields from primary table - if (!count($fields)) { - $this->from($primary, self::SQL_WILDCARD, $schema); - $fields = $this->getPart(Zend_Db_Table_Select::COLUMNS); - } - - $from = $this->getPart(Zend_Db_Table_Select::FROM); - - if ($this->_integrityCheck !== false) { - foreach ($fields as $columnEntry) { - list($table, $column) = $columnEntry; - - // Check each column to ensure it only references the primary table - if ($column) { - if (!isset($from[$table]) || $from[$table]['tableName'] != $primary) { - require_once 'Zend/Db/Table/Select/Exception.php'; - throw new Zend_Db_Table_Select_Exception('Select query cannot join with another table'); - } - } - } - } - } - - return parent::assemble(); - } -} \ No newline at end of file diff --git a/library/Zend/Db/Table/Select/Exception.php b/library/Zend/Db/Table/Select/Exception.php deleted file mode 100644 index 3acb88bd..00000000 --- a/library/Zend/Db/Table/Select/Exception.php +++ /dev/null @@ -1,39 +0,0 @@ - tags, cleans up newlines and indents, and runs - * htmlentities() before output. - * - * @param mixed $var The variable to dump. - * @param string $label OPTIONAL Label to prepend to output. - * @param bool $echo OPTIONAL Echo output if true. - * @return string - */ - public static function dump($var, $label=null, $echo=true) - { - // format the label - $label = ($label===null) ? '' : rtrim($label) . ' '; - - // var_dump the variable into a buffer and keep the output - ob_start(); - var_dump($var); - $output = ob_get_clean(); - - // neaten the newlines and indents - $output = preg_replace("/\]\=\>\n(\s+)/m", "] => ", $output); - if (self::getSapi() == 'cli') { - $output = PHP_EOL . $label - . PHP_EOL . $output - . PHP_EOL; - } else { - if(!extension_loaded('xdebug')) { - $flags = ENT_QUOTES; - // PHP 5.4.0+ - if (defined('ENT_SUBSTITUTE')) { - $flags = ENT_QUOTES | ENT_SUBSTITUTE; - } - $output = htmlspecialchars($output, $flags); - } - - $output = '
        '
        -                    . $label
        -                    . $output
        -                    . '
        '; - } - - if ($echo) { - echo($output); - } - return $output; - } - -} diff --git a/library/Zend/Dojo.php b/library/Zend/Dojo.php deleted file mode 100644 index ba010ad4..00000000 --- a/library/Zend/Dojo.php +++ /dev/null @@ -1,87 +0,0 @@ -addPrefixPath('Zend_Dojo_Form_Decorator', 'Zend/Dojo/Form/Decorator', 'decorator') - ->addPrefixPath('Zend_Dojo_Form_Element', 'Zend/Dojo/Form/Element', 'element') - ->addElementPrefixPath('Zend_Dojo_Form_Decorator', 'Zend/Dojo/Form/Decorator', 'decorator') - ->addDisplayGroupPrefixPath('Zend_Dojo_Form_Decorator', 'Zend/Dojo/Form/Decorator') - ->setDefaultDisplayGroupClass('Zend_Dojo_Form_DisplayGroup'); - - foreach ($form->getSubForms() as $subForm) { - self::enableForm($subForm); - } - - if (null !== ($view = $form->getView())) { - self::enableView($view); - } - } - - /** - * Dojo-enable a view instance - * - * @param Zend_View_Interface $view - * @return void - */ - public static function enableView(Zend_View_Interface $view) - { - if (false === $view->getPluginLoader('helper')->getPaths('Zend_Dojo_View_Helper')) { - $view->addHelperPath('Zend/Dojo/View/Helper', 'Zend_Dojo_View_Helper'); - } - } -} - diff --git a/library/Zend/Dojo/BuildLayer.php b/library/Zend/Dojo/BuildLayer.php deleted file mode 100644 index 49d56262..00000000 --- a/library/Zend/Dojo/BuildLayer.php +++ /dev/null @@ -1,536 +0,0 @@ - 'release', - 'optimize' => 'shrinksafe', - 'layerOptimize' => 'shrinksafe', - 'copyTests' => false, - 'loader' => 'default', - 'cssOptimize' => 'comments', - ); - - /** - * Associative array of module/path pairs for the build profile - * @var array - */ - protected $_profilePrefixes = array(); - - /** - * Zend_View reference - * @var Zend_View_Interface - */ - protected $_view; - - /** - * Constructor - * - * @param array|Zend_Config $options - * @return void - * @throws Zend_Dojo_Exception for invalid option argument - */ - public function __construct($options = null) - { - if (null !== $options) { - if ($options instanceof Zend_Config) { - $options = $options->toArray(); - } elseif (!is_array($options)) { - require_once 'Zend/Dojo/Exception.php'; - throw new Zend_Dojo_Exception('Invalid options provided to constructor'); - } - $this->setOptions($options); - } - } - - /** - * Set options - * - * Proxies to any setter that matches an option key. - * - * @param array $options - * @return Zend_Dojo_BuildLayer - */ - public function setOptions(array $options) - { - $methods = get_class_methods($this); - foreach ($options as $key => $value) { - $method = 'set' . ucfirst($key); - if (in_array($method, $methods)) { - $this->$method($value); - } - } - return $this; - } - - /** - * Set View object - * - * @param Zend_View_Interface $view - * @return Zend_Dojo_BuildLayer - */ - public function setView(Zend_View_Interface $view) - { - $this->_view = $view; - return $this; - } - - /** - * Retrieve view object - * - * @return Zend_View_Interface|null - */ - public function getView() - { - return $this->_view; - } - - /** - * Set dojo() view helper instance - * - * @param Zend_Dojo_View_Helper_Dojo_Container $helper - * @return Zend_Dojo_BuildLayer - */ - public function setDojoHelper(Zend_Dojo_View_Helper_Dojo_Container $helper) - { - $this->_dojo = $helper; - return $this; - } - - /** - * Retrieve dojo() view helper instance - * - * Will retrieve it from the view object if not registered. - * - * @return Zend_Dojo_View_Helper_Dojo_Container - * @throws Zend_Dojo_Exception if not registered and no view object found - */ - public function getDojoHelper() - { - if (null === $this->_dojo) { - if (null === ($view = $this->getView())) { - require_once 'Zend/Dojo/Exception.php'; - throw new Zend_Dojo_Exception('View object not registered; cannot retrieve dojo helper'); - } - $helper = $view->getHelper('dojo'); - $this->setDojoHelper($view->dojo()); - } - return $this->_dojo; - } - - /** - * Set custom layer name; e.g. "custom.main" - * - * @param string $name - * @return Zend_Dojo_BuildLayer - */ - public function setLayerName($name) - { - if (!preg_match('/^[a-z][a-z0-9_]*(\.[a-z][a-z0-9_]*)+$/i', $name)) { - require_once 'Zend/Dojo/Exception.php'; - throw new Zend_Dojo_Exception('Invalid layer name provided; must be of form[a-z][a-z0-9_](\.[a-z][a-z0-9_])+'); - } - $this->_layerName = $name; - return $this; - } - - /** - * Retrieve custom layer name - * - * @return string|null - */ - public function getLayerName() - { - return $this->_layerName; - } - - /** - * Set the path to the custom layer script - * - * Should be a path relative to dojo.js - * - * @param string $path - * @return Zend_Dojo_BuildLayer - */ - public function setLayerScriptPath($path) - { - $this->_layerScriptPath = (string) $path; - return $this; - } - - /** - * Get custom layer script path - * - * @return string|null - */ - public function getLayerScriptPath() - { - return $this->_layerScriptPath; - } - - /** - * Set flag indicating whether or not to consume JS aggregated in dojo() - * view helper - * - * @param bool $flag - * @return Zend_Dojo_BuildLayer - */ - public function setConsumeJavascript($flag) - { - $this->_consumeJavascript = (bool) $flag; - return $this; - } - - /** - * Get flag indicating whether or not to consume JS aggregated in dojo() - * view helper - * - * @return bool - */ - public function consumeJavascript() - { - return $this->_consumeJavascript; - } - - /** - * Set flag indicating whether or not to consume dojo.addOnLoad events - * aggregated in dojo() view helper - * - * @param bool $flag - * @return Zend_Dojo_BuildLayer - */ - public function setConsumeOnLoad($flag) - { - $this->_consumeOnLoad = (bool) $flag; - return $this; - } - - /** - * Get flag indicating whether or not to consume dojo.addOnLoad events aggregated in dojo() view helper - * - * @return bool - */ - public function consumeOnLoad() - { - return $this->_consumeOnLoad; - } - - /** - * Set many build profile options at once - * - * @param array $options - * @return Zend_Dojo_BuildLayer - */ - public function setProfileOptions(array $options) - { - $this->_profileOptions += $options; - return $this; - } - - /** - * Add many build profile options at once - * - * @param array $options - * @return Zend_Dojo_BuildLayer - */ - public function addProfileOptions(array $options) - { - $this->_profileOptions = $this->_profileOptions + $options; - return $this; - } - - /** - * Add a single build profile option - * - * @param string $key - * @param value $value - * @return Zend_Dojo_BuildLayer - */ - public function addProfileOption($key, $value) - { - $this->_profileOptions[(string) $key] = $value; - return $this; - } - - /** - * Is a given build profile option set? - * - * @param string $key - * @return bool - */ - public function hasProfileOption($key) - { - return array_key_exists((string) $key, $this->_profileOptions); - } - - /** - * Retrieve a single build profile option - * - * Returns null if profile option does not exist. - * - * @param string $key - * @return mixed - */ - public function getProfileOption($key) - { - if ($this->hasProfileOption($key)) { - return $this->_profileOptions[(string) $key]; - } - return null; - } - - /** - * Get all build profile options - * - * @return array - */ - public function getProfileOptions() - { - return $this->_profileOptions; - } - - /** - * Remove a build profile option - * - * @param string $name - * @return Zend_Dojo_BuildLayer - */ - public function removeProfileOption($name) - { - if ($this->hasProfileOption($name)) { - unset($this->_profileOptions[(string) $name]); - } - return $this; - } - - /** - * Remove all build profile options - * - * @return Zend_Dojo_BuildLayer - */ - public function clearProfileOptions() - { - $this->_profileOptions = array(); - return $this; - } - - /** - * Add a build profile dependency prefix - * - * If just the prefix is passed, sets path to "../$prefix". - * - * @param string $prefix - * @param null|string $path - * @return Zend_Dojo_BuildLayer - */ - public function addProfilePrefix($prefix, $path = null) - { - if (null === $path) { - $path = '../' . $prefix; - } - $this->_profilePrefixes[$prefix] = array($prefix, $path); - return $this; - } - - /** - * Set multiple dependency prefixes for bulid profile - * - * @param array $prefixes - * @return Zend_Dojo_BuildLayer - */ - public function setProfilePrefixes(array $prefixes) - { - foreach ($prefixes as $prefix => $path) { - $this->addProfilePrefix($prefix, $path); - } - return $this; - } - - /** - * Get build profile dependency prefixes - * - * @return array - */ - public function getProfilePrefixes() - { - $layerName = $this->getLayerName(); - if (null !== $layerName) { - $prefix = $this->_getPrefix($layerName); - if (!array_key_exists($prefix, $this->_profilePrefixes)) { - $this->addProfilePrefix($prefix); - } - } - $view = $this->getView(); - if (!empty($view)) { - $helper = $this->getDojoHelper(); - if ($helper) { - $modules = $helper->getModules(); - foreach ($modules as $module) { - $prefix = $this->_getPrefix($module); - if (!array_key_exists($prefix, $this->_profilePrefixes)) { - $this->addProfilePrefix($prefix); - } - } - } - } - return $this->_profilePrefixes; - } - - /** - * Generate module layer script - * - * @return string - */ - public function generateLayerScript() - { - $helper = $this->getDojoHelper(); - $layerName = $this->getLayerName(); - $modulePaths = $helper->getModulePaths(); - $modules = $helper->getModules(); - $onLoadActions = $helper->getOnLoadActions(); - $javascript = $helper->getJavascript(); - - $content = 'dojo.provide("' . $layerName . '");' . "\n\n(function(){\n"; - - foreach ($modulePaths as $module => $path) { - $content .= sprintf("dojo.registerModulePath(\"%s\", \"%s\");\n", $module, $path); - } - foreach ($modules as $module) { - $content .= sprintf("dojo.require(\"%s\");\n", $module); - } - - if ($this->consumeOnLoad()) { - foreach ($helper->getOnLoadActions() as $callback) { - $content .= sprintf("dojo.addOnLoad(%s);\n", $callback); - } - } - if ($this->consumeJavascript()) { - $javascript = implode("\n", $helper->getJavascript()); - if (!empty($javascript)) { - $content .= "\n" . $javascript . "\n"; - } - } - - $content .= "})();"; - - return $content; - } - - /** - * Generate build profile - * - * @return string - */ - public function generateBuildProfile() - { - $profileOptions = $this->getProfileOptions(); - $layerName = $this->getLayerName(); - $layerScriptPath = $this->getLayerScriptPath(); - $profilePrefixes = $this->getProfilePrefixes(); - - if (!array_key_exists('releaseName', $profileOptions)) { - $profileOptions['releaseName'] = substr($layerName, 0, strpos($layerName, '.')); - } - - $profile = $profileOptions; - $profile['layers'] = array(array( - 'name' => $layerScriptPath, - 'layerDependencies' => array(), - 'dependencies' => array($layerName), - )); - $profile['prefixes'] = array_values($profilePrefixes); - - return 'dependencies = ' . $this->_filterJsonProfileToJavascript($profile) . ';'; - } - - /** - * Retrieve module prefix - * - * @param string $module - * @return void - */ - protected function _getPrefix($module) - { - $segments = explode('.', $module, 2); - return $segments[0]; - } - - /** - * Filter a JSON build profile to JavaScript - * - * @param string $profile - * @return string - */ - protected function _filterJsonProfileToJavascript($profile) - { - require_once 'Zend/Json.php'; - $profile = Zend_Json::encode($profile); - $profile = trim($profile, '"'); - $profile = preg_replace('/' . preg_quote('\\') . '/', '', $profile); - return $profile; - } -} diff --git a/library/Zend/Dojo/Data.php b/library/Zend/Dojo/Data.php deleted file mode 100644 index 9315b0c4..00000000 --- a/library/Zend/Dojo/Data.php +++ /dev/null @@ -1,563 +0,0 @@ -setIdentifier($identifier); - } - if (null !== $items) { - $this->setItems($items); - } - if (null !== $label) { - $this->setLabel($label); - } - } - - /** - * Set the items to collect - * - * @param array|Traversable $items - * @return Zend_Dojo_Data - */ - public function setItems($items) - { - $this->clearItems(); - return $this->addItems($items); - } - - /** - * Set an individual item, optionally by identifier (overwrites) - * - * @param array|object $item - * @param string|null $identifier - * @return Zend_Dojo_Data - */ - public function setItem($item, $id = null) - { - $item = $this->_normalizeItem($item, $id); - $this->_items[$item['id']] = $item['data']; - return $this; - } - - /** - * Add an individual item, optionally by identifier - * - * @param array|object $item - * @param string|null $id - * @return Zend_Dojo_Data - */ - public function addItem($item, $id = null) - { - $item = $this->_normalizeItem($item, $id); - - if ($this->hasItem($item['id'])) { - require_once 'Zend/Dojo/Exception.php'; - throw new Zend_Dojo_Exception('Overwriting items using addItem() is not allowed'); - } - - $this->_items[$item['id']] = $item['data']; - - return $this; - } - - /** - * Add multiple items at once - * - * @param array|Traversable $items - * @return Zend_Dojo_Data - */ - public function addItems($items) - { - if (!is_array($items) && (!is_object($items) || !($items instanceof Traversable))) { - require_once 'Zend/Dojo/Exception.php'; - throw new Zend_Dojo_Exception('Only arrays and Traversable objects may be added to ' . __CLASS__); - } - - foreach ($items as $item) { - $this->addItem($item); - } - - return $this; - } - - /** - * Get all items as an array - * - * Serializes items to arrays. - * - * @return array - */ - public function getItems() - { - return $this->_items; - } - - /** - * Does an item with the given identifier exist? - * - * @param string|int $id - * @return bool - */ - public function hasItem($id) - { - return array_key_exists($id, $this->_items); - } - - /** - * Retrieve an item by identifier - * - * Item retrieved will be flattened to an array. - * - * @param string $id - * @return array - */ - public function getItem($id) - { - if (!$this->hasItem($id)) { - return null; - } - - return $this->_items[$id]; - } - - /** - * Remove item by identifier - * - * @param string $id - * @return Zend_Dojo_Data - */ - public function removeItem($id) - { - if ($this->hasItem($id)) { - unset($this->_items[$id]); - } - - return $this; - } - - /** - * Remove all items at once - * - * @return Zend_Dojo_Data - */ - public function clearItems() - { - $this->_items = array(); - return $this; - } - - - /** - * Set identifier for item lookups - * - * @param string|int|null $identifier - * @return Zend_Dojo_Data - */ - public function setIdentifier($identifier) - { - if (null === $identifier) { - $this->_identifier = null; - } elseif (is_string($identifier)) { - $this->_identifier = $identifier; - } elseif (is_numeric($identifier)) { - $this->_identifier = (int) $identifier; - } else { - require_once 'Zend/Dojo/Exception.php'; - throw new Zend_Dojo_Exception('Invalid identifier; please use a string or integer'); - } - - return $this; - } - - /** - * Retrieve current item identifier - * - * @return string|int|null - */ - public function getIdentifier() - { - return $this->_identifier; - } - - - /** - * Set label to use for displaying item associations - * - * @param string|null $label - * @return Zend_Dojo_Data - */ - public function setLabel($label) - { - if (null === $label) { - $this->_label = null; - } else { - $this->_label = (string) $label; - } - return $this; - } - - /** - * Retrieve item association label - * - * @return string|null - */ - public function getLabel() - { - return $this->_label; - } - - /** - * Set metadata by key or en masse - * - * @param string|array $spec - * @param mixed $value - * @return Zend_Dojo_Data - */ - public function setMetadata($spec, $value = null) - { - if (is_string($spec) && (null !== $value)) { - $this->_metadata[$spec] = $value; - } elseif (is_array($spec)) { - foreach ($spec as $key => $value) { - $this->setMetadata($key, $value); - } - } - return $this; - } - - /** - * Get metadata item or all metadata - * - * @param null|string $key Metadata key when pulling single metadata item - * @return mixed - */ - public function getMetadata($key = null) - { - if (null === $key) { - return $this->_metadata; - } - - if (array_key_exists($key, $this->_metadata)) { - return $this->_metadata[$key]; - } - - return null; - } - - /** - * Clear individual or all metadata item(s) - * - * @param null|string $key - * @return Zend_Dojo_Data - */ - public function clearMetadata($key = null) - { - if (null === $key) { - $this->_metadata = array(); - } elseif (array_key_exists($key, $this->_metadata)) { - unset($this->_metadata[$key]); - } - return $this; - } - - /** - * Load object from array - * - * @param array $data - * @return Zend_Dojo_Data - */ - public function fromArray(array $data) - { - if (array_key_exists('identifier', $data)) { - $this->setIdentifier($data['identifier']); - } - if (array_key_exists('label', $data)) { - $this->setLabel($data['label']); - } - if (array_key_exists('items', $data) && is_array($data['items'])) { - $this->setItems($data['items']); - } else { - $this->clearItems(); - } - return $this; - } - - /** - * Load object from JSON - * - * @param string $json - * @return Zend_Dojo_Data - */ - public function fromJson($json) - { - if (!is_string($json)) { - require_once 'Zend/Dojo/Exception.php'; - throw new Zend_Dojo_Exception('fromJson() expects JSON input'); - } - require_once 'Zend/Json.php'; - $data = Zend_Json::decode($json); - return $this->fromArray($data); - } - - /** - * Seralize entire data structure, including identifier and label, to array - * - * @return array - */ - public function toArray() - { - if (null === ($identifier = $this->getIdentifier())) { - require_once 'Zend/Dojo/Exception.php'; - throw new Zend_Dojo_Exception('Serialization requires that an identifier be present in the object; first call setIdentifier()'); - } - - $array = array( - 'identifier' => $identifier, - 'items' => array_values($this->getItems()), - ); - - $metadata = $this->getMetadata(); - if (!empty($metadata)) { - foreach ($metadata as $key => $value) { - $array[$key] = $value; - } - } - - if (null !== ($label = $this->getLabel())) { - $array['label'] = $label; - } - - return $array; - } - - /** - * Serialize to JSON (dojo.data format) - * - * @return string - */ - public function toJson() - { - require_once 'Zend/Json.php'; - return Zend_Json::encode($this->toArray()); - } - - /** - * Serialize to string (proxy to {@link toJson()}) - * - * @return string - */ - public function __toString() - { - return $this->toJson(); - } - - /** - * ArrayAccess: does offset exist? - * - * @param string|int $offset - * @return bool - */ - public function offsetExists($offset) - { - return (null !== $this->getItem($offset)); - } - - /** - * ArrayAccess: retrieve by offset - * - * @param string|int $offset - * @return array - */ - public function offsetGet($offset) - { - return $this->getItem($offset); - } - - /** - * ArrayAccess: set value by offset - * - * @param string $offset - * @param array|object|null $value - * @return void - */ - public function offsetSet($offset, $value) - { - $this->setItem($value, $offset); - } - - /** - * ArrayAccess: unset value by offset - * - * @param string $offset - * @return void - */ - public function offsetUnset($offset) - { - $this->removeItem($offset); - } - - /** - * Iterator: get current value - * - * @return array - */ - public function current() - { - return current($this->_items); - } - - /** - * Iterator: get current key - * - * @return string|int - */ - public function key() - { - return key($this->_items); - } - - /** - * Iterator: get next item - * - * @return void - */ - public function next() - { - return next($this->_items); - } - - /** - * Iterator: rewind to first value in collection - * - * @return void - */ - public function rewind() - { - return reset($this->_items); - } - - /** - * Iterator: is item valid? - * - * @return bool - */ - public function valid() - { - return (bool) $this->current(); - } - - /** - * Countable: how many items are present - * - * @return int - */ - public function count() - { - return count($this->_items); - } - - /** - * Normalize an item to attach to the collection - * - * @param array|object $item - * @param string|int|null $id - * @return array - */ - protected function _normalizeItem($item, $id) - { - if (null === ($identifier = $this->getIdentifier())) { - require_once 'Zend/Dojo/Exception.php'; - throw new Zend_Dojo_Exception('You must set an identifier prior to adding items'); - } - - if (!is_object($item) && !is_array($item)) { - require_once 'Zend/Dojo/Exception.php'; - throw new Zend_Dojo_Exception('Only arrays and objects may be attached'); - } - - if (is_object($item)) { - if (method_exists($item, 'toArray')) { - $item = $item->toArray(); - } else { - $item = get_object_vars($item); - } - } - - if ((null === $id) && !array_key_exists($identifier, $item)) { - require_once 'Zend/Dojo/Exception.php'; - throw new Zend_Dojo_Exception('Item must contain a column matching the currently set identifier'); - } elseif (null === $id) { - $id = $item[$identifier]; - } else { - $item[$identifier] = $id; - } - - return array( - 'id' => $id, - 'data' => $item, - ); - } -} diff --git a/library/Zend/Dojo/Exception.php b/library/Zend/Dojo/Exception.php deleted file mode 100644 index 471d6e52..00000000 --- a/library/Zend/Dojo/Exception.php +++ /dev/null @@ -1,35 +0,0 @@ -addPrefixPath('Zend_Dojo_Form_Decorator', 'Zend/Dojo/Form/Decorator', 'decorator') - ->addPrefixPath('Zend_Dojo_Form_Element', 'Zend/Dojo/Form/Element', 'element') - ->addElementPrefixPath('Zend_Dojo_Form_Decorator', 'Zend/Dojo/Form/Decorator', 'decorator') - ->addDisplayGroupPrefixPath('Zend_Dojo_Form_Decorator', 'Zend/Dojo/Form/Decorator') - ->setDefaultDisplayGroupClass('Zend_Dojo_Form_DisplayGroup'); - parent::__construct($options); - } - - /** - * Load the default decorators - * - * @return void - */ - public function loadDefaultDecorators() - { - if ($this->loadDefaultDecoratorsIsDisabled()) { - return; - } - - $decorators = $this->getDecorators(); - if (empty($decorators)) { - $this->addDecorator('FormElements') - ->addDecorator('HtmlTag', array('tag' => 'dl', 'class' => 'zend_form_dojo')) - ->addDecorator('DijitForm'); - } - } - - /** - * Set the view object - * - * Ensures that the view object has the dojo view helper path set. - * - * @param Zend_View_Interface $view - * @return Zend_Dojo_Form_Element_Dijit - */ - public function setView(Zend_View_Interface $view = null) - { - if (null !== $view) { - if (false === $view->getPluginLoader('helper')->getPaths('Zend_Dojo_View_Helper')) { - $view->addHelperPath('Zend/Dojo/View/Helper', 'Zend_Dojo_View_Helper'); - } - } - return parent::setView($view); - } -} diff --git a/library/Zend/Dojo/Form/Decorator/AccordionContainer.php b/library/Zend/Dojo/Form/Decorator/AccordionContainer.php deleted file mode 100644 index f776d037..00000000 --- a/library/Zend/Dojo/Form/Decorator/AccordionContainer.php +++ /dev/null @@ -1,43 +0,0 @@ -_helper) { - require_once 'Zend/Form/Decorator/Exception.php'; - throw new Zend_Form_Decorator_Exception('No view helper specified fo DijitContainer decorator'); - } - return $this->_helper; - } - - /** - * Get element attributes - * - * @return array - */ - public function getAttribs() - { - if (null === $this->_attribs) { - $attribs = $this->getElement()->getAttribs(); - if (array_key_exists('dijitParams', $attribs)) { - unset($attribs['dijitParams']); - } - $this->_attribs = $attribs; - } - return $this->_attribs; - } - - /** - * Get dijit option parameters - * - * @return array - */ - public function getDijitParams() - { - if (null === $this->_dijitParams) { - $attribs = $this->getElement()->getAttribs(); - if (array_key_exists('dijitParams', $attribs)) { - $this->_dijitParams = $attribs['dijitParams']; - } else { - $this->_dijitParams = array(); - } - - $options = $this->getOptions(); - if (array_key_exists('dijitParams', $options)) { - $this->_dijitParams = array_merge($this->_dijitParams, $options['dijitParams']); - $this->removeOption('dijitParams'); - } - } - - // Ensure we have a title param - if (!array_key_exists('title', $this->_dijitParams)) { - $this->_dijitParams['title'] = $this->getTitle(); - } - - return $this->_dijitParams; - } - - /** - * Get title - * - * @return string - */ - public function getTitle() - { - if (null === $this->_title) { - $title = null; - if (null !== ($element = $this->getElement())) { - if (method_exists($element, 'getLegend')) { - $title = $element->getLegend(); - } - } - if (empty($title) && (null !== ($title = $this->getOption('legend')))) { - $this->removeOption('legend'); - } - if (empty($title) && (null !== ($title = $this->getOption('title')))) { - $this->removeOption('title'); - } - - if (!empty($title)) { - if (null !== ($translator = $element->getTranslator())) { - $title = $translator->translate($title); - } - $this->_title = $title; - } - } - - return (empty($this->_title) ? '' : $this->_title); - } - - /** - * Render a dijit layout container - * - * Replaces $content entirely from currently set element. - * - * @param string $content - * @return string - */ - public function render($content) - { - $element = $this->getElement(); - $view = $element->getView(); - if (null === $view) { - return $content; - } - - $dijitParams = $this->getDijitParams(); - $attribs = array_merge($this->getAttribs(), $this->getOptions()); - - if (array_key_exists('legend', $attribs)) { - if (!array_key_exists('title', $dijitParams) || empty($dijitParams['title'])) { - $dijitParams['title'] = $attribs['legend']; - } - unset($attribs['legend']); - } - - $helper = $this->getHelper(); - $id = $element->getId() . '-' . $helper; - - if ($view->dojo()->hasDijit($id)) { - trigger_error(sprintf('Duplicate dijit ID detected for id "%s; temporarily generating uniqid"', $id), E_USER_WARNING); - $base = $id; - do { - $id = $base . '-' . uniqid(); - } while ($view->dojo()->hasDijit($id)); - } - - return $view->$helper($id, $content, $dijitParams, $attribs); - } -} diff --git a/library/Zend/Dojo/Form/Decorator/DijitElement.php b/library/Zend/Dojo/Form/Decorator/DijitElement.php deleted file mode 100644 index 73f2c33d..00000000 --- a/library/Zend/Dojo/Form/Decorator/DijitElement.php +++ /dev/null @@ -1,193 +0,0 @@ -_attribs) { - $this->_attribs = parent::getElementAttribs(); - if (array_key_exists('dijitParams', $this->_attribs)) { - $this->setDijitParams($this->_attribs['dijitParams']); - unset($this->_attribs['dijitParams']); - } - } - - return $this->_attribs; - } - - /** - * Set a single dijit option parameter - * - * @param string $key - * @param mixed $value - * @return Zend_Dojo_Form_Decorator_DijitContainer - */ - public function setDijitParam($key, $value) - { - $this->_dijitParams[(string) $key] = $value; - return $this; - } - - /** - * Set dijit option parameters - * - * @param array $params - * @return Zend_Dojo_Form_Decorator_DijitContainer - */ - public function setDijitParams(array $params) - { - $this->_dijitParams = array_merge($this->_dijitParams, $params); - return $this; - } - - /** - * Retrieve a single dijit option parameter - * - * @param string $key - * @return mixed|null - */ - public function getDijitParam($key) - { - $this->getElementAttribs(); - $key = (string) $key; - if (array_key_exists($key, $this->_dijitParams)) { - return $this->_dijitParams[$key]; - } - - return null; - } - - /** - * Get dijit option parameters - * - * @return array - */ - public function getDijitParams() - { - $this->getElementAttribs(); - return $this->_dijitParams; - } - - /** - * Render an element using a view helper - * - * Determine view helper from 'helper' option, or, if none set, from - * the element type. Then call as - * helper($element->getName(), $element->getValue(), $element->getAttribs()) - * - * @param string $content - * @return string - * @throws Zend_Form_Decorator_Exception if element or view are not registered - */ - public function render($content) - { - $element = $this->getElement(); - $view = $element->getView(); - if (null === $view) { - require_once 'Zend/Form/Decorator/Exception.php'; - throw new Zend_Form_Decorator_Exception('DijitElement decorator cannot render without a registered view object'); - } - - $options = null; - $helper = $this->getHelper(); - $separator = $this->getSeparator(); - $value = $this->getValue($element); - $attribs = $this->getElementAttribs(); - $name = $element->getFullyQualifiedName(); - - $dijitParams = $this->getDijitParams(); - $dijitParams['required'] = $element->isRequired(); - - $id = $element->getId(); - if ($view->dojo()->hasDijit($id)) { - trigger_error(sprintf('Duplicate dijit ID detected for id "%s; temporarily generating uniqid"', $id), E_USER_NOTICE); - $base = $id; - do { - $id = $base . '-' . uniqid(); - } while ($view->dojo()->hasDijit($id)); - } - $attribs['id'] = $id; - - if (array_key_exists('options', $attribs)) { - $options = $attribs['options']; - } - - $elementContent = $view->$helper($name, $value, $dijitParams, $attribs, $options); - switch ($this->getPlacement()) { - case self::APPEND: - return $content . $separator . $elementContent; - case self::PREPEND: - return $elementContent . $separator . $content; - default: - return $elementContent; - } - } -} diff --git a/library/Zend/Dojo/Form/Decorator/DijitForm.php b/library/Zend/Dojo/Form/Decorator/DijitForm.php deleted file mode 100644 index 9fd42182..00000000 --- a/library/Zend/Dojo/Form/Decorator/DijitForm.php +++ /dev/null @@ -1,66 +0,0 @@ -getElement(); - $view = $element->getView(); - if (null === $view) { - return $content; - } - - $dijitParams = $this->getDijitParams(); - $attribs = array_merge($this->getAttribs(), $this->getOptions()); - - // Enforce id attribute of form for dojo events - if (!isset($attribs['name']) || !$attribs['name']) { - $element->setName(get_class($element) . '_' . uniqid()); - } - - return $view->form($element->getName(), $attribs, $content); - } -} diff --git a/library/Zend/Dojo/Form/Decorator/SplitContainer.php b/library/Zend/Dojo/Form/Decorator/SplitContainer.php deleted file mode 100644 index 64d8a01b..00000000 --- a/library/Zend/Dojo/Form/Decorator/SplitContainer.php +++ /dev/null @@ -1,43 +0,0 @@ -addPrefixPath('Zend_Dojo_Form_Decorator', 'Zend/Dojo/Form/Decorator'); - } - - /** - * Set the view object - * - * Ensures that the view object has the dojo view helper path set. - * - * @param Zend_View_Interface $view - * @return Zend_Dojo_Form_Element_Dijit - */ - public function setView(Zend_View_Interface $view = null) - { - if (null !== $view) { - if (false === $view->getPluginLoader('helper')->getPaths('Zend_Dojo_View_Helper')) { - $view->addHelperPath('Zend/Dojo/View/Helper', 'Zend_Dojo_View_Helper'); - } - } - return parent::setView($view); - } -} diff --git a/library/Zend/Dojo/Form/Element/Button.php b/library/Zend/Dojo/Form/Element/Button.php deleted file mode 100644 index a0ddee24..00000000 --- a/library/Zend/Dojo/Form/Element/Button.php +++ /dev/null @@ -1,121 +0,0 @@ - $options); - } - - parent::__construct($spec, $options); - } - - /** - * Return label - * - * If no label is present, returns the currently set name. - * - * If a translator is present, returns the translated label. - * - * @return string - */ - public function getLabel() - { - $value = parent::getLabel(); - - if (null === $value) { - $value = $this->getName(); - } - - if (null !== ($translator = $this->getTranslator())) { - return $translator->translate($value); - } - - return $value; - } - - /** - * Has this submit button been selected? - * - * @return bool - */ - public function isChecked() - { - $value = $this->getValue(); - - if (empty($value)) { - return false; - } - if ($value != $this->getLabel()) { - return false; - } - - return true; - } - - /** - * Default decorators - * - * Uses only 'DijitElement' and 'DtDdWrapper' decorators by default. - * - * @return void - */ - public function loadDefaultDecorators() - { - if ($this->loadDefaultDecoratorsIsDisabled()) { - return; - } - - $decorators = $this->getDecorators(); - if (empty($decorators)) { - $this->addDecorator('DijitElement') - ->addDecorator('DtDdWrapper'); - } - } -} diff --git a/library/Zend/Dojo/Form/Element/CheckBox.php b/library/Zend/Dojo/Form/Element/CheckBox.php deleted file mode 100644 index 565b23a3..00000000 --- a/library/Zend/Dojo/Form/Element/CheckBox.php +++ /dev/null @@ -1,206 +0,0 @@ - '1', - 'uncheckedValue' => '0', - ); - - /** - * Value when checked - * @var string - */ - protected $_checkedValue = '1'; - - /** - * Value when not checked - * @var string - */ - protected $_uncheckedValue = '0'; - - /** - * Current value - * @var string 0 or 1 - */ - protected $_value = '0'; - - /** - * Set options - * - * Intercept checked and unchecked values and set them early; test stored - * value against checked and unchecked values after configuration. - * - * @param array $options - * @return Zend_Form_Element_Checkbox - */ - public function setOptions(array $options) - { - if (array_key_exists('checkedValue', $options)) { - $this->setCheckedValue($options['checkedValue']); - unset($options['checkedValue']); - } - if (array_key_exists('uncheckedValue', $options)) { - $this->setUncheckedValue($options['uncheckedValue']); - unset($options['uncheckedValue']); - } - parent::setOptions($options); - - $curValue = $this->getValue(); - $test = array($this->getCheckedValue(), $this->getUncheckedValue()); - if (!in_array($curValue, $test)) { - $this->setValue($curValue); - } - - return $this; - } - - /** - * Set value - * - * If value matches checked value, sets to that value, and sets the checked - * flag to true. - * - * Any other value causes the unchecked value to be set as the current - * value, and the checked flag to be set as false. - * - * - * @param mixed $value - * @return Zend_Form_Element_Checkbox - */ - public function setValue($value) - { - if ($value == $this->getCheckedValue()) { - parent::setValue($value); - $this->checked = true; - } else { - parent::setValue($this->getUncheckedValue()); - $this->checked = false; - } - return $this; - } - - /** - * Set checked value - * - * @param string $value - * @return Zend_Form_Element_Checkbox - */ - public function setCheckedValue($value) - { - $this->_checkedValue = (string) $value; - $this->options['checkedValue'] = $value; - return $this; - } - - /** - * Get value when checked - * - * @return string - */ - public function getCheckedValue() - { - return $this->_checkedValue; - } - - /** - * Set unchecked value - * - * @param string $value - * @return Zend_Form_Element_Checkbox - */ - public function setUncheckedValue($value) - { - $this->_uncheckedValue = (string) $value; - $this->options['uncheckedValue'] = $value; - return $this; - } - - /** - * Get value when not checked - * - * @return string - */ - public function getUncheckedValue() - { - return $this->_uncheckedValue; - } - - /** - * Set checked flag - * - * @param bool $flag - * @return Zend_Form_Element_Checkbox - */ - public function setChecked($flag) - { - $this->checked = (bool) $flag; - if ($this->checked) { - $this->setValue($this->getCheckedValue()); - } else { - $this->setValue($this->getUncheckedValue()); - } - return $this; - } - - /** - * Get checked flag - * - * @return bool - */ - public function isChecked() - { - return $this->checked; - } -} - diff --git a/library/Zend/Dojo/Form/Element/ComboBox.php b/library/Zend/Dojo/Form/Element/ComboBox.php deleted file mode 100644 index c61f2f6d..00000000 --- a/library/Zend/Dojo/Form/Element/ComboBox.php +++ /dev/null @@ -1,186 +0,0 @@ -hasDijitParam('store')) { - $this->dijitParams['store'] = array(); - } - return $this->dijitParams['store']; - } - - /** - * Set datastore identifier - * - * @param string $identifier - * @return Zend_Dojo_Form_Element_ComboBox - */ - public function setStoreId($identifier) - { - $store = $this->getStoreInfo(); - $store['store'] = (string) $identifier; - $this->setDijitParam('store', $store); - return $this; - } - - /** - * Get datastore identifier - * - * @return string|null - */ - public function getStoreId() - { - $store = $this->getStoreInfo(); - if (array_key_exists('store', $store)) { - return $store['store']; - } - return null; - } - - /** - * Set datastore dijit type - * - * @param string $dojoType - * @return Zend_Dojo_Form_Element_ComboBox - */ - public function setStoreType($dojoType) - { - $store = $this->getStoreInfo(); - $store['type'] = (string) $dojoType; - $this->setDijitParam('store', $store); - return $this; - } - - /** - * Get datastore dijit type - * - * @return string|null - */ - public function getStoreType() - { - $store = $this->getStoreInfo(); - if (array_key_exists('type', $store)) { - return $store['type']; - } - return null; - } - - /** - * Set datastore parameters - * - * @param array $params - * @return Zend_Dojo_Form_Element_ComboBox - */ - public function setStoreParams(array $params) - { - $store = $this->getStoreInfo(); - $store['params'] = $params; - $this->setDijitParam('store', $store); - return $this; - } - - /** - * Get datastore params - * - * @return array - */ - public function getStoreParams() - { - $store = $this->getStoreInfo(); - if (array_key_exists('params', $store)) { - return $store['params']; - } - return array(); - } - - /** - * Set autocomplete flag - * - * @param bool $flag - * @return Zend_Dojo_Form_Element_ComboBox - */ - public function setAutocomplete($flag) - { - $this->setDijitParam('autocomplete', (bool) $flag); - return $this; - } - - /** - * Get autocomplete flag - * - * @return bool - */ - public function getAutocomplete() - { - if (!$this->hasDijitParam('autocomplete')) { - return false; - } - return $this->getDijitParam('autocomplete'); - } - - /** - * Is the value valid? - * - * @param string $value - * @param mixed $context - * @return bool - */ - public function isValid($value, $context = null) - { - $storeInfo = $this->getStoreInfo(); - if (!empty($storeInfo)) { - $this->setRegisterInArrayValidator(false); - } - return parent::isValid($value, $context); - } -} diff --git a/library/Zend/Dojo/Form/Element/CurrencyTextBox.php b/library/Zend/Dojo/Form/Element/CurrencyTextBox.php deleted file mode 100644 index 854ac70c..00000000 --- a/library/Zend/Dojo/Form/Element/CurrencyTextBox.php +++ /dev/null @@ -1,120 +0,0 @@ -setDijitParam('currency', (string) $currency); - return $this; - } - - /** - * Retrieve currency - * - * @return string|null - */ - public function getCurrency() - { - return $this->getDijitParam('currency'); - } - - /** - * Set currency symbol - * - * Casts to string, uppercases, and trims to three characters. - * - * @param string $symbol - * @return Zend_Dojo_Form_Element_CurrencyTextBox - */ - public function setSymbol($symbol) - { - $symbol = strtoupper((string) $symbol); - $length = strlen($symbol); - if (3 > $length) { - require_once 'Zend/Form/Element/Exception.php'; - throw new Zend_Form_Element_Exception('Invalid symbol provided; please provide ISO 4217 alphabetic currency code'); - } - if (3 < $length) { - $symbol = substr($symbol, 0, 3); - } - - $this->setConstraint('symbol', $symbol); - return $this; - } - - /** - * Retrieve symbol - * - * @return string|null - */ - public function getSymbol() - { - return $this->getConstraint('symbol'); - } - - /** - * Set whether currency is fractional - * - * @param bool $flag - * @return Zend_Dojo_Form_Element_CurrencyTextBox - */ - public function setFractional($flag) - { - $this->setConstraint('fractional', (bool) $flag); - return $this; - } - - /** - * Get whether or not to present fractional values - * - * @return bool - */ - public function getFractional() - { - return ('true' == $this->getConstraint('fractional')); - } -} diff --git a/library/Zend/Dojo/Form/Element/DateTextBox.php b/library/Zend/Dojo/Form/Element/DateTextBox.php deleted file mode 100644 index dd13d139..00000000 --- a/library/Zend/Dojo/Form/Element/DateTextBox.php +++ /dev/null @@ -1,214 +0,0 @@ -setConstraint('am,pm', (bool) $flag); - return $this; - } - - /** - * Retrieve am,pm flag - * - * @return bool - */ - public function getAmPm() - { - if (!$this->hasConstraint('am,pm')) { - return false; - } - return ('true' ==$this->getConstraint('am,pm')); - } - - /** - * Set strict flag - * - * @param bool $strict - * @return Zend_Dojo_Form_Element_DateTextBox - */ - public function setStrict($flag) - { - $this->setConstraint('strict', (bool) $flag); - return $this; - } - - /** - * Retrieve strict flag - * - * @return bool - */ - public function getStrict() - { - if (!$this->hasConstraint('strict')) { - return false; - } - return ('true' == $this->getConstraint('strict')); - } - - /** - * Set locale - * - * @param string $locale - * @return Zend_Dojo_Form_Element_DateTextBox - */ - public function setLocale($locale) - { - $this->setConstraint('locale', (string) $locale); - return $this; - } - - /** - * Retrieve locale - * - * @return string|null - */ - public function getLocale() - { - return $this->getConstraint('locale'); - } - - /** - * Set date format pattern - * - * @param string $pattern - * @return Zend_Dojo_Form_Element_NumberTextBox - */ - public function setDatePattern($pattern) - { - $this->setConstraint('datePattern', (string) $pattern); - return $this; - } - - /** - * Retrieve date format pattern - * - * @return string|null - */ - public function getDatePattern() - { - return $this->getConstraint('datePattern'); - } - - /** - * Set numeric format formatLength - * - * @see $_allowedFormatTypes - * @param string $formatLength - * @return Zend_Dojo_Form_Element_NumberTextBox - */ - public function setFormatLength($formatLength) - { - $formatLength = strtolower($formatLength); - if (!in_array($formatLength, $this->_allowedFormatTypes)) { - require_once 'Zend/Form/Element/Exception.php'; - throw new Zend_Form_Element_Exception(sprintf('Invalid formatLength "%s" specified', $formatLength)); - } - - $this->setConstraint('formatLength', $formatLength); - return $this; - } - - /** - * Retrieve formatLength - * - * @return string|null - */ - public function getFormatLength() - { - return $this->getConstraint('formatLength'); - } - - /** - * Set numeric format Selector - * - * @see $_allowedSelectorTypes - * @param string $selector - * @return Zend_Dojo_Form_Element_NumberTextBox - */ - public function setSelector($selector) - { - $selector = strtolower($selector); - if (!in_array($selector, $this->_allowedSelectorTypes)) { - require_once 'Zend/Form/Element/Exception.php'; - throw new Zend_Form_Element_Exception(sprintf('Invalid Selector "%s" specified', $selector)); - } - - $this->setConstraint('selector', $selector); - return $this; - } - - /** - * Retrieve selector - * - * @return string|null - */ - public function getSelector() - { - return $this->getConstraint('selector'); - } -} diff --git a/library/Zend/Dojo/Form/Element/Dijit.php b/library/Zend/Dojo/Form/Element/Dijit.php deleted file mode 100644 index a3b24cb5..00000000 --- a/library/Zend/Dojo/Form/Element/Dijit.php +++ /dev/null @@ -1,189 +0,0 @@ -addPrefixPath('Zend_Dojo_Form_Decorator', 'Zend/Dojo/Form/Decorator', 'decorator'); - parent::__construct($spec, $options); - } - - /** - * Set a dijit parameter - * - * @param string $key - * @param mixed $value - * @return Zend_Dojo_Form_Element_Dijit - */ - public function setDijitParam($key, $value) - { - $key = (string) $key; - $this->dijitParams[$key] = $value; - return $this; - } - - /** - * Set multiple dijit params at once - * - * @param array $params - * @return Zend_Dojo_Form_Element_Dijit - */ - public function setDijitParams(array $params) - { - $this->dijitParams = array_merge($this->dijitParams, $params); - return $this; - } - - /** - * Does the given dijit parameter exist? - * - * @param string $key - * @return bool - */ - public function hasDijitParam($key) - { - return array_key_exists($key, $this->dijitParams); - } - - /** - * Get a single dijit parameter - * - * @param string $key - * @return mixed - */ - public function getDijitParam($key) - { - $key = (string) $key; - if ($this->hasDijitParam($key)) { - return $this->dijitParams[$key]; - } - return null; - } - - /** - * Retrieve all dijit parameters - * - * @return array - */ - public function getDijitParams() - { - return $this->dijitParams; - } - - /** - * Remove a single dijit parameter - * - * @param string $key - * @return Zend_Dojo_Form_Element_Dijit - */ - public function removeDijitParam($key) - { - $key = (string) $key; - if (array_key_exists($key, $this->dijitParams)) { - unset($this->dijitParams[$key]); - } - return $this; - } - - /** - * Clear all dijit parameters - * - * @return Zend_Dojo_Form_Element_Dijit - */ - public function clearDijitParams() - { - $this->dijitParams = array(); - return $this; - } - - /** - * Load default decorators - * - * @return void - */ - public function loadDefaultDecorators() - { - if ($this->loadDefaultDecoratorsIsDisabled()) { - return; - } - - $decorators = $this->getDecorators(); - if (empty($decorators)) { - $this->addDecorator('DijitElement') - ->addDecorator('Errors') - ->addDecorator('Description', array('tag' => 'p', 'class' => 'description')) - ->addDecorator('HtmlTag', array('tag' => 'dd')) - ->addDecorator('Label', array('tag' => 'dt')); - } - } - - /** - * Set the view object - * - * Ensures that the view object has the dojo view helper path set. - * - * @param Zend_View_Interface $view - * @return Zend_Dojo_Form_Element_Dijit - */ - public function setView(Zend_View_Interface $view = null) - { - if (null !== $view) { - if (false === $view->getPluginLoader('helper')->getPaths('Zend_Dojo_View_Helper')) { - $view->addHelperPath('Zend/Dojo/View/Helper', 'Zend_Dojo_View_Helper'); - } - } - return parent::setView($view); - } -} diff --git a/library/Zend/Dojo/Form/Element/DijitMulti.php b/library/Zend/Dojo/Form/Element/DijitMulti.php deleted file mode 100644 index b7e4d483..00000000 --- a/library/Zend/Dojo/Form/Element/DijitMulti.php +++ /dev/null @@ -1,303 +0,0 @@ -'. - * @var string - */ - protected $_separator = '
        '; - - /** - * Which values are translated already? - * @var array - */ - protected $_translated = array(); - - /** - * Retrieve separator - * - * @return mixed - */ - public function getSeparator() - { - return $this->_separator; - } - - /** - * Set separator - * - * @param mixed $separator - * @return self - */ - public function setSeparator($separator) - { - $this->_separator = $separator; - return $this; - } - - /** - * Retrieve options array - * - * @return array - */ - protected function _getMultiOptions() - { - if (null === $this->options || !is_array($this->options)) { - $this->options = array(); - } - - return $this->options; - } - - /** - * Add an option - * - * @param string $option - * @param string $value - * @return Zend_Form_Element_Multi - */ - public function addMultiOption($option, $value = '') - { - $option = (string) $option; - $this->_getMultiOptions(); - if (!$this->_translateOption($option, $value)) { - $this->options[$option] = $value; - } - - return $this; - } - - /** - * Add many options at once - * - * @param array $options - * @return Zend_Form_Element_Multi - */ - public function addMultiOptions(array $options) - { - foreach ($options as $option => $value) { - if (is_array($value) - && array_key_exists('key', $value) - && array_key_exists('value', $value) - ) { - $this->addMultiOption($value['key'], $value['value']); - } else { - $this->addMultiOption($option, $value); - } - } - return $this; - } - - /** - * Set all options at once (overwrites) - * - * @param array $options - * @return Zend_Form_Element_Multi - */ - public function setMultiOptions(array $options) - { - $this->clearMultiOptions(); - return $this->addMultiOptions($options); - } - - /** - * Retrieve single multi option - * - * @param string $option - * @return mixed - */ - public function getMultiOption($option) - { - $option = (string) $option; - $this->_getMultiOptions(); - if (isset($this->options[$option])) { - $this->_translateOption($option, $this->options[$option]); - return $this->options[$option]; - } - - return null; - } - - /** - * Retrieve options - * - * @return array - */ - public function getMultiOptions() - { - $this->_getMultiOptions(); - foreach ($this->options as $option => $value) { - $this->_translateOption($option, $value); - } - return $this->options; - } - - /** - * Remove a single multi option - * - * @param string $option - * @return bool - */ - public function removeMultiOption($option) - { - $option = (string) $option; - $this->_getMultiOptions(); - if (isset($this->options[$option])) { - unset($this->options[$option]); - if (isset($this->_translated[$option])) { - unset($this->_translated[$option]); - } - return true; - } - - return false; - } - - /** - * Clear all options - * - * @return Zend_Form_Element_Multi - */ - public function clearMultiOptions() - { - $this->options = array(); - $this->_translated = array(); - return $this; - } - - /** - * Set flag indicating whether or not to auto-register inArray validator - * - * @param bool $flag - * @return Zend_Form_Element_Multi - */ - public function setRegisterInArrayValidator($flag) - { - $this->_registerInArrayValidator = (bool) $flag; - return $this; - } - - /** - * Get status of auto-register inArray validator flag - * - * @return bool - */ - public function registerInArrayValidator() - { - return $this->_registerInArrayValidator; - } - - /** - * Is the value provided valid? - * - * Autoregisters InArray validator if necessary. - * - * @param string $value - * @param mixed $context - * @return bool - */ - public function isValid($value, $context = null) - { - if ($this->registerInArrayValidator()) { - if (!$this->getValidator('InArray')) { - $options = $this->getMultiOptions(); - $this->addValidator( - 'InArray', - true, - array(array_keys($options)) - ); - } - } - return parent::isValid($value, $context); - } - - /** - * Translate an option - * - * @param string $option - * @param string $value - * @return bool - */ - protected function _translateOption($option, $value) - { - if (!isset($this->_translated[$option])) { - $this->options[$option] = $this->_translateValue($value); - if ($this->options[$option] === $value) { - return false; - } - $this->_translated[$option] = true; - return true; - } - - return false; - } - - /** - * Translate a value - * - * @param array|string $value - * @return array|string - */ - protected function _translateValue($value) - { - if (is_array($value)) { - foreach ($value as $key => $val) { - $value[$key] = $this->_translateValue($val); - } - return $value; - } else { - if (null !== ($translator = $this->getTranslator())) { - return $translator->translate($value); - } - - return $value; - } - } -} diff --git a/library/Zend/Dojo/Form/Element/Editor.php b/library/Zend/Dojo/Form/Element/Editor.php deleted file mode 100644 index 68eb2026..00000000 --- a/library/Zend/Dojo/Form/Element/Editor.php +++ /dev/null @@ -1,697 +0,0 @@ -getCaptureEvents(); - if (in_array($event, $captureEvents)) { - return $this; - } - - $captureEvents[] = (string) $event; - $this->setDijitParam('captureEvents', $captureEvents); - return $this; - } - - /** - * Add multiple capture events - * - * @param array $events - * @return Zend_Dojo_Form_Element_Editor - */ - public function addCaptureEvents(array $events) - { - foreach ($events as $event) { - $this->addCaptureEvent($event); - } - return $this; - } - - /** - * Overwrite many capture events at once - * - * @param array $events - * @return Zend_Dojo_Form_Element_Editor - */ - public function setCaptureEvents(array $events) - { - $this->clearCaptureEvents(); - $this->addCaptureEvents($events); - return $this; - } - - /** - * Get all capture events - * - * @return array - */ - public function getCaptureEvents() - { - if (!$this->hasDijitParam('captureEvents')) { - return array(); - } - return $this->getDijitParam('captureEvents'); - } - - /** - * Is a given capture event registered? - * - * @param string $event - * @return bool - */ - public function hasCaptureEvent($event) - { - $captureEvents = $this->getCaptureEvents(); - return in_array((string) $event, $captureEvents); - } - - /** - * Remove a given capture event - * - * @param string $event - * @return Zend_Dojo_Form_Element_Editor - */ - public function removeCaptureEvent($event) - { - $event = (string) $event; - $captureEvents = $this->getCaptureEvents(); - if (false === ($index = array_search($event, $captureEvents))) { - return $this; - } - unset($captureEvents[$index]); - $this->setDijitParam('captureEvents', $captureEvents); - return $this; - } - - /** - * Clear all capture events - * - * @return Zend_Dojo_Form_Element_Editor - */ - public function clearCaptureEvents() - { - return $this->removeDijitParam('captureEvents'); - } - - /** - * Add a single event to the dijit - * - * @param string $event - * @return Zend_Dojo_Form_Element_Editor - */ - public function addEvent($event) - { - $event = (string) $event; - $events = $this->getEvents(); - if (in_array($event, $events)) { - return $this; - } - - $events[] = (string) $event; - $this->setDijitParam('events', $events); - return $this; - } - - /** - * Add multiple events - * - * @param array $events - * @return Zend_Dojo_Form_Element_Editor - */ - public function addEvents(array $events) - { - foreach ($events as $event) { - $this->addEvent($event); - } - return $this; - } - - /** - * Overwrite many events at once - * - * @param array $events - * @return Zend_Dojo_Form_Element_Editor - */ - public function setEvents(array $events) - { - $this->clearEvents(); - $this->addEvents($events); - return $this; - } - - /** - * Get all events - * - * @return array - */ - public function getEvents() - { - if (!$this->hasDijitParam('events')) { - return array(); - } - return $this->getDijitParam('events'); - } - - /** - * Is a given event registered? - * - * @param string $event - * @return bool - */ - public function hasEvent($event) - { - $events = $this->getEvents(); - return in_array((string) $event, $events); - } - - /** - * Remove a given event - * - * @param string $event - * @return Zend_Dojo_Form_Element_Editor - */ - public function removeEvent($event) - { - $events = $this->getEvents(); - if (false === ($index = array_search($event, $events))) { - return $this; - } - unset($events[$index]); - $this->setDijitParam('events', $events); - return $this; - } - - /** - * Clear all events - * - * @return Zend_Dojo_Form_Element_Editor - */ - public function clearEvents() - { - return $this->removeDijitParam('events'); - } - - /** - * Add a single editor plugin - * - * @param string $plugin - * @return Zend_Dojo_Form_Element_Editor - */ - public function addPlugin($plugin) - { - $plugin = (string) $plugin; - $plugins = $this->getPlugins(); - if (in_array($plugin, $plugins) && $plugin !== '|') { - return $this; - } - - $plugins[] = (string) $plugin; - $this->setDijitParam('plugins', $plugins); - return $this; - } - - /** - * Add multiple plugins - * - * @param array $plugins - * @return Zend_Dojo_Form_Element_Editor - */ - public function addPlugins(array $plugins) - { - foreach ($plugins as $plugin) { - $this->addPlugin($plugin); - } - return $this; - } - - /** - * Overwrite many plugins at once - * - * @param array $plugins - * @return Zend_Dojo_Form_Element_Editor - */ - public function setPlugins(array $plugins) - { - $this->clearPlugins(); - $this->addPlugins($plugins); - return $this; - } - - /** - * Get all plugins - * - * @return array - */ - public function getPlugins() - { - if (!$this->hasDijitParam('plugins')) { - return array(); - } - return $this->getDijitParam('plugins'); - } - - /** - * Is a given plugin registered? - * - * @param string $plugin - * @return bool - */ - public function hasPlugin($plugin) - { - $plugins = $this->getPlugins(); - return in_array((string) $plugin, $plugins); - } - - /** - * Remove a given plugin - * - * @param string $plugin - * @return Zend_Dojo_Form_Element_Editor - */ - public function removePlugin($plugin) - { - $plugins = $this->getPlugins(); - if (false === ($index = array_search($plugin, $plugins))) { - return $this; - } - unset($plugins[$index]); - $this->setDijitParam('plugins', $plugins); - return $this; - } - - /** - * Clear all plugins - * - * @return Zend_Dojo_Form_Element_Editor - */ - public function clearPlugins() - { - return $this->removeDijitParam('plugins'); - } - - /** - * Set edit action interval - * - * @param int $interval - * @return Zend_Dojo_Form_Element_Editor - */ - public function setEditActionInterval($interval) - { - return $this->setDijitParam('editActionInterval', (int) $interval); - } - - /** - * Get edit action interval; defaults to 3 - * - * @return int - */ - public function getEditActionInterval() - { - if (!$this->hasDijitParam('editActionInterval')) { - $this->setEditActionInterval(3); - } - return $this->getDijitParam('editActionInterval'); - } - - /** - * Set focus on load flag - * - * @param bool $flag - * @return Zend_Dojo_Form_Element_Editor - */ - public function setFocusOnLoad($flag) - { - return $this->setDijitParam('focusOnLoad', (bool) $flag); - } - - /** - * Retrieve focus on load flag - * - * @return bool - */ - public function getFocusOnLoad() - { - if (!$this->hasDijitParam('focusOnLoad')) { - return false; - } - return $this->getDijitParam('focusOnLoad'); - } - - /** - * Set editor height - * - * @param string|int $height - * @return Zend_Dojo_Form_Element_Editor - */ - public function setHeight($height) - { - if (!preg_match('/^\d+(em|px|%)?$/i', $height)) { - require_once 'Zend/Form/Element/Exception.php'; - throw new Zend_Form_Element_Exception('Invalid height provided; must be integer or CSS measurement'); - } - if (!preg_match('/(em|px|%)$/', $height)) { - $height .= 'px'; - } - return $this->setDijitParam('height', $height); - } - - /** - * Retrieve height - * - * @return string - */ - public function getHeight() - { - if (!$this->hasDijitParam('height')) { - return '300px'; - } - return $this->getDijitParam('height'); - } - - /** - * Set whether or not to inherit parent's width - * - * @param bool $flag - * @return Zend_Dojo_Form_Element_Editor - */ - public function setInheritWidth($flag) - { - return $this->setDijitParam('inheritWidth', (bool) $flag); - } - - /** - * Whether or not to inherit the parent's width - * - * @return bool - */ - public function getInheritWidth() - { - if (!$this->hasDijitParam('inheritWidth')) { - return false; - } - return $this->getDijitParam('inheritWidth'); - } - - /** - * Set minimum height of editor - * - * @param string|int $minHeight - * @return Zend_Dojo_Form_Element_Editor - */ - public function setMinHeight($minHeight) - { - if (!preg_match('/^\d+(em|px|%)?$/i', $minHeight)) { - require_once 'Zend/Form/Element/Exception.php'; - throw new Zend_Form_Element_Exception('Invalid minHeight provided; must be integer or CSS measurement'); - } - if (!preg_match('/(em|px|%)$/', $minHeight)) { - $minHeight .= 'em'; - } - return $this->setDijitParam('minHeight', $minHeight); - } - - /** - * Get minimum height of editor - * - * @return string - */ - public function getMinHeight() - { - if (!$this->hasDijitParam('minHeight')) { - return '1em'; - } - return $this->getDijitParam('minHeight'); - } - - /** - * Add a custom stylesheet - * - * @param string $styleSheet - * @return Zend_Dojo_Form_Element_Editor - */ - public function addStyleSheet($styleSheet) - { - $stylesheets = $this->getStyleSheets(); - if (strstr($stylesheets, ';')) { - $stylesheets = explode(';', $stylesheets); - } elseif (!empty($stylesheets)) { - $stylesheets = (array) $stylesheets; - } else { - $stylesheets = array(); - } - if (!in_array($styleSheet, $stylesheets)) { - $stylesheets[] = (string) $styleSheet; - } - return $this->setDijitParam('styleSheets', implode(';', $stylesheets)); - } - - /** - * Add multiple custom stylesheets - * - * @param array $styleSheets - * @return Zend_Dojo_Form_Element_Editor - */ - public function addStyleSheets(array $styleSheets) - { - foreach ($styleSheets as $styleSheet) { - $this->addStyleSheet($styleSheet); - } - return $this; - } - - /** - * Overwrite all stylesheets - * - * @param array $styleSheets - * @return Zend_Dojo_Form_Element_Editor - */ - public function setStyleSheets(array $styleSheets) - { - $this->clearStyleSheets(); - return $this->addStyleSheets($styleSheets); - } - - /** - * Get all stylesheets - * - * @return string - */ - public function getStyleSheets() - { - if (!$this->hasDijitParam('styleSheets')) { - return ''; - } - return $this->getDijitParam('styleSheets'); - } - - /** - * Is a given stylesheet registered? - * - * @param string $styleSheet - * @return bool - */ - public function hasStyleSheet($styleSheet) - { - $styleSheets = $this->getStyleSheets(); - $styleSheets = explode(';', $styleSheets); - return in_array($styleSheet, $styleSheets); - } - - /** - * Remove a single stylesheet - * - * @param string $styleSheet - * @return Zend_Dojo_Form_Element_Editor - */ - public function removeStyleSheet($styleSheet) - { - $styleSheets = $this->getStyleSheets(); - $styleSheets = explode(';', $styleSheets); - if (false !== ($index = array_search($styleSheet, $styleSheets))) { - unset($styleSheets[$index]); - $this->setDijitParam('styleSheets', implode(';', $styleSheets)); - } - return $this; - } - - /** - * Clear all stylesheets - * - * @return Zend_Dojo_Form_Element_Editor - */ - public function clearStyleSheets() - { - if ($this->hasDijitParam('styleSheets')) { - $this->removeDijitParam('styleSheets'); - } - return $this; - } - - /** - * Set update interval - * - * @param int $interval - * @return Zend_Dojo_Form_Element_Editor - */ - public function setUpdateInterval($interval) - { - return $this->setDijitParam('updateInterval', (int) $interval); - } - - /** - * Get update interval - * - * @return int - */ - public function getUpdateInterval() - { - if (!$this->hasDijitParam('updateInterval')) { - return 200; - } - return $this->getDijitParam('updateInterval'); - } - - /** - * Add a single editor extra plugin. - * - * @param string $plugin - * @return Zend_Dojo_Form_Element_Editor - */ - public function addExtraPlugin($plugin) - { - $plugin = (string) $plugin; - $extraPlugins = $this->getExtraPlugins(); - if (in_array($plugin, $extraPlugins)) { - return $this; - } - - $extraPlugins[] = (string) $plugin; - $this->setDijitParam('extraPlugins', $extraPlugins); - return $this; - } - - /** - * Add multiple extra plugins. - * - * @param array $extraPlugins - * @return Zend_Dojo_Form_Element_Editor - */ - public function addExtraPlugins(array $plugins) - { - foreach ($plugins as $plugin) { - $this->addExtraPlugin($plugin); - } - return $this; - } - - /** - * Overwrite many extra plugins at once. - * - * @param array $plugins - * @return Zend_Dojo_Form_Element_Editor - */ - public function setExtraPlugins(array $plugins) - { - $this->clearExtraPlugins(); - $this->addExtraPlugins($plugins); - return $this; - } - - /** - * Get all extra plugins. - * - * @return array - */ - public function getExtraPlugins() - { - if (!$this->hasDijitParam('extraPlugins')) { - return array(); - } - return $this->getDijitParam('extraPlugins'); - } - - /** - * Is a given extra plugin registered? - * - * @param string $plugin - * @return bool - */ - public function hasExtraPlugin($plugin) - { - $extraPlugins = $this->getExtraPlugins(); - return in_array((string) $plugin, $extraPlugins); - } - - /** - * Remove a given extra plugin. - * - * @param string $plugin - * @return Zend_Dojo_Form_Element_Editor - */ - public function removeExtraPlugin($plugin) - { - $extraPlugins = $this->getExtraPlugins(); - if (false === ($index = array_search($plugin, $extraPlugins))) { - return $this; - } - unset($extraPlugins[$index]); - $this->setDijitParam('extraPlugins', $extraPlugins); - return $this; - } - - /** - * Clear all extra plugins. - * - * @return Zend_Dojo_Form_Element_Editor - */ - public function clearExtraPlugins() - { - return $this->removeDijitParam('extraPlugins'); - } -} diff --git a/library/Zend/Dojo/Form/Element/FilteringSelect.php b/library/Zend/Dojo/Form/Element/FilteringSelect.php deleted file mode 100644 index 44bec174..00000000 --- a/library/Zend/Dojo/Form/Element/FilteringSelect.php +++ /dev/null @@ -1,48 +0,0 @@ -hasDijitParam('topDecoration')) { - return $this->getDijitParam('topDecoration'); - } - return array(); - } - - /** - * Set dijit to use with top decoration - * - * @param mixed $dijit - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setTopDecorationDijit($dijit) - { - $decoration = $this->getTopDecoration(); - $decoration['dijit'] = (string) $dijit; - $this->setDijitParam('topDecoration', $decoration); - return $this; - } - - /** - * Set container to use with top decoration - * - * @param mixed $container - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setTopDecorationContainer($container) - { - $decoration = $this->getTopDecoration(); - $decoration['container'] = (string) $container; - $this->setDijitParam('topDecoration', $decoration); - return $this; - } - - /** - * Set labels to use with top decoration - * - * @param array $labels - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setTopDecorationLabels(array $labels) - { - $decoration = $this->getTopDecoration(); - $decoration['labels'] = array_values($labels); - $this->setDijitParam('topDecoration', $decoration); - return $this; - } - - /** - * Set params to use with top decoration - * - * @param array $params - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setTopDecorationParams(array $params) - { - $decoration = $this->getTopDecoration(); - $decoration['params'] = $params; - $this->setDijitParam('topDecoration', $decoration); - return $this; - } - - /** - * Set attribs to use with top decoration - * - * @param array $attribs - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setTopDecorationAttribs(array $attribs) - { - $decoration = $this->getTopDecoration(); - $decoration['attribs'] = $attribs; - $this->setDijitParam('topDecoration', $decoration); - return $this; - } - - /** - * Get bottom decoration data - * - * @return array - */ - public function getBottomDecoration() - { - if ($this->hasDijitParam('bottomDecoration')) { - return $this->getDijitParam('bottomDecoration'); - } - return array(); - } - - /** - * Set dijit to use with bottom decoration - * - * @param mixed $dijit - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setBottomDecorationDijit($dijit) - { - $decoration = $this->getBottomDecoration(); - $decoration['dijit'] = (string) $dijit; - $this->setDijitParam('bottomDecoration', $decoration); - return $this; - } - - /** - * Set container to use with bottom decoration - * - * @param mixed $container - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setBottomDecorationContainer($container) - { - $decoration = $this->getBottomDecoration(); - $decoration['container'] = (string) $container; - $this->setDijitParam('bottomDecoration', $decoration); - return $this; - } - - /** - * Set labels to use with bottom decoration - * - * @param array $labels - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setBottomDecorationLabels(array $labels) - { - $decoration = $this->getBottomDecoration(); - $decoration['labels'] = array_values($labels); - $this->setDijitParam('bottomDecoration', $decoration); - return $this; - } - - /** - * Set params to use with bottom decoration - * - * @param array $params - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setBottomDecorationParams(array $params) - { - $decoration = $this->getBottomDecoration(); - $decoration['params'] = $params; - $this->setDijitParam('bottomDecoration', $decoration); - return $this; - } - - /** - * Set attribs to use with bottom decoration - * - * @param array $attribs - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setBottomDecorationAttribs(array $attribs) - { - $decoration = $this->getBottomDecoration(); - $decoration['attribs'] = $attribs; - $this->setDijitParam('bottomDecoration', $decoration); - return $this; - } -} diff --git a/library/Zend/Dojo/Form/Element/NumberSpinner.php b/library/Zend/Dojo/Form/Element/NumberSpinner.php deleted file mode 100644 index db3f74d2..00000000 --- a/library/Zend/Dojo/Form/Element/NumberSpinner.php +++ /dev/null @@ -1,245 +0,0 @@ -setDijitParam('defaultTimeout', (int) $timeout); - return $this; - } - - /** - * Retrieve defaultTimeout - * - * @return int|null - */ - public function getDefaultTimeout() - { - return $this->getDijitParam('defaultTimeout'); - } - - /** - * Set timeoutChangeRate - * - * @param int $rate - * @return Zend_Dojo_Form_Element_NumberSpinner - */ - public function setTimeoutChangeRate($rate) - { - $this->setDijitParam('timeoutChangeRate', (int) $rate); - return $this; - } - - /** - * Retrieve timeoutChangeRate - * - * @return int|null - */ - public function getTimeoutChangeRate() - { - return $this->getDijitParam('timeoutChangeRate'); - } - - /** - * Set largeDelta - * - * @param int $delta - * @return Zend_Dojo_Form_Element_NumberSpinner - */ - public function setLargeDelta($delta) - { - $this->setDijitParam('largeDelta', (float) $delta); - return $this; - } - - /** - * Retrieve largeDelta - * - * @return int|null - */ - public function getLargeDelta() - { - return $this->getDijitParam('largeDelta'); - } - - /** - * Set smallDelta - * - * @param int $delta - * @return Zend_Dojo_Form_Element_NumberSpinner - */ - public function setSmallDelta($delta) - { - $this->setDijitParam('smallDelta', (float) $delta); - return $this; - } - - /** - * Retrieve smallDelta - * - * @return int|null - */ - public function getSmallDelta() - { - return $this->getDijitParam('smallDelta'); - } - - /** - * Set intermediateChanges flag - * - * @param bool $flag - * @return Zend_Dojo_Form_Element_TextBox - */ - public function setIntermediateChanges($flag) - { - $this->setDijitParam('intermediateChanges', (bool) $flag); - return $this; - } - - /** - * Retrieve intermediateChanges flag - * - * @return bool - */ - public function getIntermediateChanges() - { - if (!$this->hasDijitParam('intermediateChanges')) { - return false; - } - return $this->getDijitParam('intermediateChanges'); - } - - /** - * Set rangeMessage - * - * @param string $message - * @return Zend_Dojo_Form_Element_NumberSpinner - */ - public function setRangeMessage($message) - { - $this->setDijitParam('rangeMessage', (string) $message); - return $this; - } - - /** - * Retrieve rangeMessage - * - * @return string|null - */ - public function getRangeMessage() - { - return $this->getDijitParam('rangeMessage'); - } - - /** - * Set minimum value - * - * @param int $value - * @return Zend_Dojo_Form_Element_NumberSpinner - */ - public function setMin($value) - { - $constraints = array(); - if ($this->hasDijitParam('constraints')) { - $constraints = $this->getDijitParam('constraints'); - } - $constraints['min'] = (float) $value; - $this->setDijitParam('constraints', $constraints); - return $this; - } - - /** - * Get minimum value - * - * @return null|int - */ - public function getMin() - { - if (!$this->hasDijitParam('constraints')) { - return null; - } - $constraints = $this->getDijitParam('constraints'); - if (!array_key_exists('min', $constraints)) { - return null; - } - return $constraints['min']; - } - - /** - * Set maximum value - * - * @param int $value - * @return Zend_Dojo_Form_Element_NumberSpinner - */ - public function setMax($value) - { - $constraints = array(); - if ($this->hasDijitParam('constraints')) { - $constraints = $this->getDijitParam('constraints'); - } - $constraints['max'] = (float) $value; - $this->setDijitParam('constraints', $constraints); - return $this; - } - - /** - * Get maximum value - * - * @return null|int - */ - public function getMax() - { - if (!$this->hasDijitParam('constraints')) { - return null; - } - $constraints = $this->getDijitParam('constraints'); - if (!array_key_exists('max', $constraints)) { - return null; - } - return $constraints['max']; - } -} diff --git a/library/Zend/Dojo/Form/Element/NumberTextBox.php b/library/Zend/Dojo/Form/Element/NumberTextBox.php deleted file mode 100644 index 0c81f5c1..00000000 --- a/library/Zend/Dojo/Form/Element/NumberTextBox.php +++ /dev/null @@ -1,173 +0,0 @@ -setConstraint('locale', (string) $locale); - return $this; - } - - /** - * Retrieve locale - * - * @return string|null - */ - public function getLocale() - { - return $this->getConstraint('locale'); - } - - /** - * Set numeric format pattern - * - * @param string $pattern - * @return Zend_Dojo_Form_Element_NumberTextBox - */ - public function setPattern($pattern) - { - $this->setConstraint('pattern', (string) $pattern); - return $this; - } - - /** - * Retrieve numeric format pattern - * - * @return string|null - */ - public function getPattern() - { - return $this->getConstraint('pattern'); - } - - /** - * Set numeric format type - * - * @see $_allowedTypes - * @param string $type - * @return Zend_Dojo_Form_Element_NumberTextBox - */ - public function setType($type) - { - $type = strtolower($type); - if (!in_array($type, $this->_allowedTypes)) { - require_once 'Zend/Form/Element/Exception.php'; - throw new Zend_Form_Element_Exception(sprintf('Invalid numeric type "%s" specified', $type)); - } - - $this->setConstraint('type', $type); - return $this; - } - - /** - * Retrieve type - * - * @return string|null - */ - public function getType() - { - return $this->getConstraint('type'); - } - - /** - * Set decimal places - * - * @param int $places - * @return Zend_Dojo_Form_Element_NumberTextBox - */ - public function setPlaces($places) - { - $this->setConstraint('places', (int) $places); - return $this; - } - - /** - * Retrieve decimal places - * - * @return int|null - */ - public function getPlaces() - { - return $this->getConstraint('places'); - } - - /** - * Set strict flag - * - * @param bool $strict - * @return Zend_Dojo_Form_Element_NumberTextBox - */ - public function setStrict($flag) - { - $this->setConstraint('strict', (bool) $flag); - return $this; - } - - /** - * Retrieve strict flag - * - * @return bool - */ - public function getStrict() - { - if (!$this->hasConstraint('strict')) { - return false; - } - return ('true' == $this->getConstraint('strict')); - } -} diff --git a/library/Zend/Dojo/Form/Element/PasswordTextBox.php b/library/Zend/Dojo/Form/Element/PasswordTextBox.php deleted file mode 100644 index 81794e37..00000000 --- a/library/Zend/Dojo/Form/Element/PasswordTextBox.php +++ /dev/null @@ -1,42 +0,0 @@ -setDijitParam('clickSelect', (bool) $flag); - return $this; - } - - /** - * Retrieve clickSelect flag - * - * @return bool - */ - public function getClickSelect() - { - if (!$this->hasDijitParam('clickSelect')) { - return false; - } - return $this->getDijitParam('clickSelect'); - } - - /** - * Set intermediateChanges flag - * - * @param bool $intermediateChanges - * @return Zend_Dojo_Form_Element_TextBox - */ - public function setIntermediateChanges($flag) - { - $this->setDijitParam('intermediateChanges', (bool) $flag); - return $this; - } - - /** - * Retrieve intermediateChanges flag - * - * @return bool - */ - public function getIntermediateChanges() - { - if (!$this->hasDijitParam('intermediateChanges')) { - return false; - } - return $this->getDijitParam('intermediateChanges'); - } - - /** - * Set showButtons flag - * - * @param bool $showButtons - * @return Zend_Dojo_Form_Element_TextBox - */ - public function setShowButtons($flag) - { - $this->setDijitParam('showButtons', (bool) $flag); - return $this; - } - - /** - * Retrieve showButtons flag - * - * @return bool - */ - public function getShowButtons() - { - if (!$this->hasDijitParam('showButtons')) { - return false; - } - return $this->getDijitParam('showButtons'); - } - - /** - * Set discreteValues - * - * @param int $value - * @return Zend_Dojo_Form_Element_TextBox - */ - public function setDiscreteValues($value) - { - $this->setDijitParam('discreteValues', (int) $value); - return $this; - } - - /** - * Retrieve discreteValues - * - * @return int|null - */ - public function getDiscreteValues() - { - return $this->getDijitParam('discreteValues'); - } - - /** - * Set maximum - * - * @param int $value - * @return Zend_Dojo_Form_Element_TextBox - */ - public function setMaximum($value) - { - $this->setDijitParam('maximum', (int) $value); - return $this; - } - - /** - * Retrieve maximum - * - * @return int|null - */ - public function getMaximum() - { - return $this->getDijitParam('maximum'); - } - - /** - * Set minimum - * - * @param int $value - * @return Zend_Dojo_Form_Element_TextBox - */ - public function setMinimum($value) - { - $this->setDijitParam('minimum', (int) $value); - return $this; - } - - /** - * Retrieve minimum - * - * @return int|null - */ - public function getMinimum() - { - return $this->getDijitParam('minimum'); - } - - /** - * Set pageIncrement - * - * @param int $value - * @return Zend_Dojo_Form_Element_TextBox - */ - public function setPageIncrement($value) - { - $this->setDijitParam('pageIncrement', (int) $value); - return $this; - } - - /** - * Retrieve pageIncrement - * - * @return int|null - */ - public function getPageIncrement() - { - return $this->getDijitParam('pageIncrement'); - } -} diff --git a/library/Zend/Dojo/Form/Element/SubmitButton.php b/library/Zend/Dojo/Form/Element/SubmitButton.php deleted file mode 100644 index 706e7393..00000000 --- a/library/Zend/Dojo/Form/Element/SubmitButton.php +++ /dev/null @@ -1,42 +0,0 @@ -setDijitParam('lowercase', (bool) $flag); - return $this; - } - - /** - * Retrieve lowercase flag - * - * @return bool - */ - public function getLowercase() - { - if (!$this->hasDijitParam('lowercase')) { - return false; - } - return $this->getDijitParam('lowercase'); - } - - /** - * Set propercase flag - * - * @param bool $propercase - * @return Zend_Dojo_Form_Element_TextBox - */ - public function setPropercase($flag) - { - $this->setDijitParam('propercase', (bool) $flag); - return $this; - } - - /** - * Retrieve propercase flag - * - * @return bool - */ - public function getPropercase() - { - if (!$this->hasDijitParam('propercase')) { - return false; - } - return $this->getDijitParam('propercase'); - } - - /** - * Set uppercase flag - * - * @param bool $uppercase - * @return Zend_Dojo_Form_Element_TextBox - */ - public function setUppercase($flag) - { - $this->setDijitParam('uppercase', (bool) $flag); - return $this; - } - - /** - * Retrieve uppercase flag - * - * @return bool - */ - public function getUppercase() - { - if (!$this->hasDijitParam('uppercase')) { - return false; - } - return $this->getDijitParam('uppercase'); - } - - /** - * Set trim flag - * - * @param bool $trim - * @return Zend_Dojo_Form_Element_TextBox - */ - public function setTrim($flag) - { - $this->setDijitParam('trim', (bool) $flag); - return $this; - } - - /** - * Retrieve trim flag - * - * @return bool - */ - public function getTrim() - { - if (!$this->hasDijitParam('trim')) { - return false; - } - return $this->getDijitParam('trim'); - } - - /** - * Set maxLength - * - * @param int $length - * @return Zend_Dojo_Form_Element_TextBox - */ - public function setMaxLength($length) - { - $this->setDijitParam('maxLength', (int) $length); - return $this; - } - - /** - * Retrieve maxLength - * - * @return int|null - */ - public function getMaxLength() - { - return $this->getDijitParam('maxLength'); - } -} diff --git a/library/Zend/Dojo/Form/Element/Textarea.php b/library/Zend/Dojo/Form/Element/Textarea.php deleted file mode 100644 index 6e15404f..00000000 --- a/library/Zend/Dojo/Form/Element/Textarea.php +++ /dev/null @@ -1,42 +0,0 @@ -setConstraint('timePattern', (string) $pattern); - return $this; - } - - /** - * Retrieve time format pattern - * - * @return string|null - */ - public function getTimePattern() - { - return $this->getConstraint('timePattern'); - } - - /** - * Set clickableIncrement - * - * @param string $format - * @return Zend_Dojo_Form_Element_NumberTextBox - */ - public function setClickableIncrement($format) - { - $format = (string) $format; - $this->_validateIso8601($format); - $this->setConstraint('clickableIncrement', $format); - return $this; - } - - /** - * Retrieve clickableIncrement - * - * @return string|null - */ - public function getClickableIncrement() - { - return $this->getConstraint('clickableIncrement'); - } - - /** - * Set visibleIncrement - * - * @param string $format - * @return Zend_Dojo_Form_Element_NumberTextBox - */ - public function setVisibleIncrement($format) - { - $format = (string) $format; - $this->_validateIso8601($format); - $this->setConstraint('visibleIncrement', $format); - return $this; - } - - /** - * Retrieve visibleIncrement - * - * @return string|null - */ - public function getVisibleIncrement() - { - return $this->getConstraint('visibleIncrement'); - } - - /** - * Set visibleRange - * - * @param string $format - * @return Zend_Dojo_Form_Element_NumberTextBox - */ - public function setVisibleRange($format) - { - $format = (string) $format; - $this->_validateIso8601($format); - $this->setConstraint('visibleRange', $format); - return $this; - } - - /** - * Retrieve visibleRange - * - * @return string|null - */ - public function getVisibleRange() - { - return $this->getConstraint('visibleRange'); - } -} diff --git a/library/Zend/Dojo/Form/Element/ValidationTextBox.php b/library/Zend/Dojo/Form/Element/ValidationTextBox.php deleted file mode 100644 index a243ef4a..00000000 --- a/library/Zend/Dojo/Form/Element/ValidationTextBox.php +++ /dev/null @@ -1,220 +0,0 @@ -setDijitParam('invalidMessage', (string) $message); - return $this; - } - - /** - * Retrieve invalidMessage - * - * @return string|null - */ - public function getInvalidMessage() - { - return $this->getDijitParam('invalidMessage'); - } - - /** - * Set promptMessage - * - * @param string $message - * @return Zend_Dojo_Form_Element_ValidationTextBox - */ - public function setPromptMessage($message) - { - $this->setDijitParam('promptMessage', (string) $message); - return $this; - } - - /** - * Retrieve promptMessage - * - * @return string|null - */ - public function getPromptMessage() - { - return $this->getDijitParam('promptMessage'); - } - - /** - * Set regExp - * - * @param string $regexp - * @return Zend_Dojo_Form_Element_ValidationTextBox - */ - public function setRegExp($regexp) - { - $this->setDijitParam('regExp', (string) $regexp); - return $this; - } - - /** - * Retrieve regExp - * - * @return string|null - */ - public function getRegExp() - { - return $this->getDijitParam('regExp'); - } - - /** - * Set an individual constraint - * - * @param string $key - * @param mixed $value - * @return Zend_Dojo_Form_Element_ValidationTextBox - */ - public function setConstraint($key, $value) - { - $constraints = $this->getConstraints(); - $constraints[(string) $key] = $value; - $this->setConstraints($constraints); - return $this; - } - - /** - * Set validation constraints - * - * Refer to Dojo dijit.form.ValidationTextBox documentation for valid - * structure. - * - * @param array $constraints - * @return Zend_Dojo_Form_Element_ValidationTextBox - */ - public function setConstraints(array $constraints) - { - $tmp = $this->getConstraints(); - $constraints = array_merge($tmp, $constraints); - array_walk_recursive($constraints, array($this, '_castBoolToString')); - $this->setDijitParam('constraints', $constraints); - return $this; - } - - /** - * Is the given constraint set? - * - * @param string $key - * @return bool - */ - public function hasConstraint($key) - { - $constraints = $this->getConstraints(); - return array_key_exists((string)$key, $constraints); - } - - /** - * Get an individual constraint - * - * @param string $key - * @return mixed - */ - public function getConstraint($key) - { - $key = (string) $key; - if (!$this->hasConstraint($key)) { - return null; - } - return $this->dijitParams['constraints'][$key]; - } - - /** - * Get constraints - * - * @return array - */ - public function getConstraints() - { - if ($this->hasDijitParam('constraints')) { - return $this->getDijitParam('constraints'); - } - return array(); - } - - /** - * Remove a single constraint - * - * @param string $key - * @return Zend_Dojo_Form_Element_ValidationTextBox - */ - public function removeConstraint($key) - { - $key = (string) $key; - if ($this->hasConstraint($key)) { - unset($this->dijitParams['constraints'][$key]); - } - return $this; - } - - /** - * Clear all constraints - * - * @return Zend_Dojo_Form_Element_ValidationTextBox - */ - public function clearConstraints() - { - return $this->removeDijitParam('constraints'); - } - - /** - * Cast a boolean value to a string - * - * @param mixed $item - * @param string $key - * @return void - */ - protected function _castBoolToString(&$item, $key) - { - if (is_bool($item)) { - $item = ($item) ? 'true' : 'false'; - } - } -} diff --git a/library/Zend/Dojo/Form/Element/VerticalSlider.php b/library/Zend/Dojo/Form/Element/VerticalSlider.php deleted file mode 100644 index a33ad8a3..00000000 --- a/library/Zend/Dojo/Form/Element/VerticalSlider.php +++ /dev/null @@ -1,208 +0,0 @@ -hasDijitParam('leftDecoration')) { - return $this->getDijitParam('leftDecoration'); - } - return array(); - } - - /** - * Set dijit to use with left decoration - * - * @param mixed $dijit - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setLeftDecorationDijit($dijit) - { - $decoration = $this->getLeftDecoration(); - $decoration['dijit'] = (string) $dijit; - $this->setDijitParam('leftDecoration', $decoration); - return $this; - } - - /** - * Set container to use with left decoration - * - * @param mixed $container - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setLeftDecorationContainer($container) - { - $decoration = $this->getLeftDecoration(); - $decoration['container'] = (string) $container; - $this->setDijitParam('leftDecoration', $decoration); - return $this; - } - - /** - * Set labels to use with left decoration - * - * @param array $labels - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setLeftDecorationLabels(array $labels) - { - $decoration = $this->getLeftDecoration(); - $decoration['labels'] = array_values($labels); - $this->setDijitParam('leftDecoration', $decoration); - return $this; - } - - /** - * Set params to use with left decoration - * - * @param array $params - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setLeftDecorationParams(array $params) - { - $decoration = $this->getLeftDecoration(); - $decoration['params'] = $params; - $this->setDijitParam('leftDecoration', $decoration); - return $this; - } - - /** - * Set attribs to use with left decoration - * - * @param array $attribs - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setLeftDecorationAttribs(array $attribs) - { - $decoration = $this->getLeftDecoration(); - $decoration['attribs'] = $attribs; - $this->setDijitParam('leftDecoration', $decoration); - return $this; - } - - /** - * Get right decoration data - * - * @return array - */ - public function getRightDecoration() - { - if ($this->hasDijitParam('rightDecoration')) { - return $this->getDijitParam('rightDecoration'); - } - return array(); - } - - /** - * Set dijit to use with right decoration - * - * @param mixed $dijit - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setRightDecorationDijit($dijit) - { - $decoration = $this->getRightDecoration(); - $decoration['dijit'] = (string) $dijit; - $this->setDijitParam('rightDecoration', $decoration); - return $this; - } - - /** - * Set container to use with right decoration - * - * @param mixed $container - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setRightDecorationContainer($container) - { - $decoration = $this->getRightDecoration(); - $decoration['container'] = (string) $container; - $this->setDijitParam('rightDecoration', $decoration); - return $this; - } - - /** - * Set labels to use with right decoration - * - * @param array $labels - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setRightDecorationLabels(array $labels) - { - $decoration = $this->getRightDecoration(); - $decoration['labels'] = array_values($labels); - $this->setDijitParam('rightDecoration', $decoration); - return $this; - } - - /** - * Set params to use with right decoration - * - * @param array $params - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setRightDecorationParams(array $params) - { - $decoration = $this->getRightDecoration(); - $decoration['params'] = $params; - $this->setDijitParam('rightDecoration', $decoration); - return $this; - } - - /** - * Set attribs to use with right decoration - * - * @param array $attribs - * @return Zend_Dojo_Form_Element_HorizontalSlider - */ - public function setRightDecorationAttribs(array $attribs) - { - $decoration = $this->getRightDecoration(); - $decoration['attribs'] = $attribs; - $this->setDijitParam('rightDecoration', $decoration); - return $this; - } -} diff --git a/library/Zend/Dojo/Form/SubForm.php b/library/Zend/Dojo/Form/SubForm.php deleted file mode 100644 index 5f3f1a54..00000000 --- a/library/Zend/Dojo/Form/SubForm.php +++ /dev/null @@ -1,94 +0,0 @@ -addPrefixPath('Zend_Dojo_Form_Decorator', 'Zend/Dojo/Form/Decorator', 'decorator') - ->addPrefixPath('Zend_Dojo_Form_Element', 'Zend/Dojo/Form/Element', 'element') - ->addElementPrefixPath('Zend_Dojo_Form_Decorator', 'Zend/Dojo/Form/Decorator', 'decorator') - ->addDisplayGroupPrefixPath('Zend_Dojo_Form_Decorator', 'Zend/Dojo/Form/Decorator') - ->setDefaultDisplayGroupClass('Zend_Dojo_Form_DisplayGroup'); - parent::__construct($options); - } - - /** - * Load the default decorators - * - * @return void - */ - public function loadDefaultDecorators() - { - if ($this->loadDefaultDecoratorsIsDisabled()) { - return; - } - - $decorators = $this->getDecorators(); - if (empty($decorators)) { - $this->addDecorator('FormElements') - ->addDecorator('HtmlTag', array('tag' => 'dl')) - ->addDecorator('ContentPane'); - } - } - - /** - * Get view - * - * @return Zend_View_Interface - */ - public function getView() - { - $view = parent::getView(); - if (!$this->_dojoViewPathRegistered) { - if (false === $view->getPluginLoader('helper')->getPaths('Zend_Dojo_View_Helper')) { - $view->addHelperPath('Zend/Dojo/View/Helper', 'Zend_Dojo_View_Helper'); - } - $this->_dojoViewPathRegistered = true; - } - return $view; - } -} diff --git a/library/Zend/Dojo/View/Exception.php b/library/Zend/Dojo/View/Exception.php deleted file mode 100644 index 6c4c2545..00000000 --- a/library/Zend/Dojo/View/Exception.php +++ /dev/null @@ -1,37 +0,0 @@ -_createLayoutContainer($id, $content, $params, $attribs); - } -} diff --git a/library/Zend/Dojo/View/Helper/AccordionPane.php b/library/Zend/Dojo/View/Helper/AccordionPane.php deleted file mode 100644 index 4619932c..00000000 --- a/library/Zend/Dojo/View/Helper/AccordionPane.php +++ /dev/null @@ -1,66 +0,0 @@ -_createLayoutContainer($id, $content, $params, $attribs); - } -} diff --git a/library/Zend/Dojo/View/Helper/BorderContainer.php b/library/Zend/Dojo/View/Helper/BorderContainer.php deleted file mode 100644 index d531abc2..00000000 --- a/library/Zend/Dojo/View/Helper/BorderContainer.php +++ /dev/null @@ -1,79 +0,0 @@ -_styleIsRegistered) { - $this->view->headStyle()->appendStyle('html, body { height: 100%; width: 100%; margin: 0; padding: 0; }'); - $this->_styleIsRegistered = true; - } - - // and now we create it: - return $this->_createLayoutContainer($id, $content, $params, $attribs); - } -} diff --git a/library/Zend/Dojo/View/Helper/Button.php b/library/Zend/Dojo/View/Helper/Button.php deleted file mode 100644 index 56a232b6..00000000 --- a/library/Zend/Dojo/View/Helper/Button.php +++ /dev/null @@ -1,68 +0,0 @@ -_prepareDijit($attribs, $params, 'element'); - - return $this->view->formButton($id, $value, $attribs); - } -} diff --git a/library/Zend/Dojo/View/Helper/CheckBox.php b/library/Zend/Dojo/View/Helper/CheckBox.php deleted file mode 100644 index aefd4820..00000000 --- a/library/Zend/Dojo/View/Helper/CheckBox.php +++ /dev/null @@ -1,100 +0,0 @@ -_prepareDijit($attribs, $params, 'element'); - - // strip options so they don't show up in markup - if (array_key_exists('options', $attribs)) { - unset($attribs['options']); - } - - // and now we create it: - $html = ''; - if (!strstr($id, '[]')) { - // hidden element for unchecked value - $html .= $this->_renderHiddenElement($id, $checkboxInfo['uncheckedValue']); - } - - // and final element - $html .= $this->_createFormElement($id, $checkboxInfo['checkedValue'], $params, $attribs); - - return $html; - } -} diff --git a/library/Zend/Dojo/View/Helper/ComboBox.php b/library/Zend/Dojo/View/Helper/ComboBox.php deleted file mode 100644 index 0fc9ce1a..00000000 --- a/library/Zend/Dojo/View/Helper/ComboBox.php +++ /dev/null @@ -1,155 +0,0 @@ -_renderStore($params['store'], $id))) { - $params['store'] = $params['store']['store']; - if (is_string($store)) { - $html .= $store; - } - $html .= $this->_createFormElement($id, $value, $params, $attribs); - return $html; - } - unset($params['store']); - } elseif (array_key_exists('store', $params)) { - if (array_key_exists('storeType', $params)) { - $storeParams = array( - 'store' => $params['store'], - 'type' => $params['storeType'], - ); - unset($params['storeType']); - if (array_key_exists('storeParams', $params)) { - $storeParams['params'] = $params['storeParams']; - unset($params['storeParams']); - } - if (false !== ($store = $this->_renderStore($storeParams, $id))) { - if (is_string($store)) { - $html .= $store; - } - } - } - $html .= $this->_createFormElement($id, $value, $params, $attribs); - return $html; - } - - // required for correct type casting in declerative mode - if (isset($params['autocomplete'])) { - $params['autocomplete'] = ($params['autocomplete']) ? 'true' : 'false'; - } - // do as normal select - $attribs = $this->_prepareDijit($attribs, $params, 'element'); - return $this->view->formSelect($id, $value, $attribs, $options); - } - - /** - * Render data store element - * - * Renders to dojo view helper - * - * @param array $params - * @return string|false - */ - protected function _renderStore(array $params, $id) - { - if (!array_key_exists('store', $params) || !array_key_exists('type', $params)) { - return false; - } - - $this->dojo->requireModule($params['type']); - - $extraParams = array(); - $storeParams = array( - 'dojoType' => $params['type'], - 'jsId' => $params['store'], - ); - - if (array_key_exists('params', $params)) { - $storeParams = array_merge($storeParams, $params['params']); - $extraParams = $params['params']; - } - - if ($this->_useProgrammatic()) { - if (!$this->_useProgrammaticNoScript()) { - require_once 'Zend/Json.php'; - $this->dojo->addJavascript('var ' . $storeParams['jsId'] . ";\n"); - $js = $storeParams['jsId'] . ' = ' - . 'new ' . $storeParams['dojoType'] . '(' - . Zend_Json::encode($extraParams) - . ");\n"; - $js = "function() {\n$js\n}"; - $this->dojo->_addZendLoad($js); - } - return true; - } - - return '_htmlAttribs($storeParams) . '>'; - } -} diff --git a/library/Zend/Dojo/View/Helper/ContentPane.php b/library/Zend/Dojo/View/Helper/ContentPane.php deleted file mode 100644 index f57ea6a4..00000000 --- a/library/Zend/Dojo/View/Helper/ContentPane.php +++ /dev/null @@ -1,66 +0,0 @@ -_createLayoutContainer($id, $content, $params, $attribs); - } -} diff --git a/library/Zend/Dojo/View/Helper/CurrencyTextBox.php b/library/Zend/Dojo/View/Helper/CurrencyTextBox.php deleted file mode 100644 index f886362f..00000000 --- a/library/Zend/Dojo/View/Helper/CurrencyTextBox.php +++ /dev/null @@ -1,68 +0,0 @@ -_createFormElement($id, $value, $params, $attribs); - } -} diff --git a/library/Zend/Dojo/View/Helper/CustomDijit.php b/library/Zend/Dojo/View/Helper/CustomDijit.php deleted file mode 100644 index 29f17ea3..00000000 --- a/library/Zend/Dojo/View/Helper/CustomDijit.php +++ /dev/null @@ -1,112 +0,0 @@ -_defaultDojoType) - ) { - require_once 'Zend/Dojo/View/Exception.php'; - throw new Zend_Dojo_View_Exception('No dojoType specified; cannot create dijit'); - } elseif (array_key_exists('dojoType', $params)) { - $this->_dijit = $params['dojoType']; - $this->_module = $params['dojoType']; - unset($params['dojoType']); - } else { - $this->_dijit = $this->_defaultDojoType; - $this->_module = $this->_defaultDojoType; - } - - if (array_key_exists('rootNode', $params)) { - $this->setRootNode($params['rootNode']); - unset($params['rootNode']); - } - - return $this->_createLayoutContainer($id, $value, $params, $attribs); - } - - /** - * Begin capturing content. - * - * Requires that either the {@link $_defaultDojotype} property is set, or - * that you pass a value to the "dojoType" key of the $params argument. - * - * @param string $id - * @param array $params - * @param array $attribs - * @return void - */ - public function captureStart($id, array $params = array(), array $attribs = array()) - { - if (!array_key_exists('dojoType', $params) - && (null === $this->_defaultDojoType) - ) { - require_once 'Zend/Dojo/View/Exception.php'; - throw new Zend_Dojo_View_Exception('No dojoType specified; cannot create dijit'); - } elseif (array_key_exists('dojoType', $params)) { - $this->_dijit = $params['dojoType']; - $this->_module = $params['dojoType']; - unset($params['dojoType']); - } else { - $this->_dijit = $this->_defaultDojoType; - $this->_module = $this->_defaultDojoType; - } - - return parent::captureStart($id, $params, $attribs); - } -} diff --git a/library/Zend/Dojo/View/Helper/DateTextBox.php b/library/Zend/Dojo/View/Helper/DateTextBox.php deleted file mode 100644 index 111ea566..00000000 --- a/library/Zend/Dojo/View/Helper/DateTextBox.php +++ /dev/null @@ -1,68 +0,0 @@ -_createFormElement($id, $value, $params, $attribs); - } -} diff --git a/library/Zend/Dojo/View/Helper/Dijit.php b/library/Zend/Dojo/View/Helper/Dijit.php deleted file mode 100644 index 76cd8df8..00000000 --- a/library/Zend/Dojo/View/Helper/Dijit.php +++ /dev/null @@ -1,344 +0,0 @@ -dojo = $this->view->dojo(); - $this->dojo->enable(); - return $this; - } - - - /** - * Get root node type - * - * @return string - */ - public function getRootNode() - { - return $this->_rootNode; - } - - /** - * Set root node type - * - * @param string $value - * @return Zend_Dojo_View_Helper_Dijit - */ - public function setRootNode($value) - { - $this->_rootNode = $value; - return $this; - } - - /** - * Whether or not to use declarative dijit creation - * - * @return bool - */ - protected function _useDeclarative() - { - return Zend_Dojo_View_Helper_Dojo::useDeclarative(); - } - - /** - * Whether or not to use programmatic dijit creation - * - * @return bool - */ - protected function _useProgrammatic() - { - return Zend_Dojo_View_Helper_Dojo::useProgrammatic(); - } - - /** - * Whether or not to use programmatic dijit creation w/o script creation - * - * @return bool - */ - protected function _useProgrammaticNoScript() - { - return Zend_Dojo_View_Helper_Dojo::useProgrammaticNoScript(); - } - - /** - * Create a layout container - * - * @param int $id - * @param string $content - * @param array $params - * @param array $attribs - * @param string|null $dijit - * @return string - */ - protected function _createLayoutContainer($id, $content, array $params, array $attribs, $dijit = null) - { - $attribs['id'] = $id; - $attribs = $this->_prepareDijit($attribs, $params, 'layout', $dijit); - - $nodeType = $this->getRootNode(); - $html = '<' . $nodeType . $this->_htmlAttribs($attribs) . '>' - . $content - . "\n"; - - return $html; - } - - /** - * Create HTML representation of a dijit form element - * - * @param string $id - * @param string $value - * @param array $params - * @param array $attribs - * @param string|null $dijit - * @return string - */ - public function _createFormElement($id, $value, array $params, array $attribs, $dijit = null) - { - if (!array_key_exists('id', $attribs)) { - $attribs['id'] = $id; - } - $attribs['name'] = $id; - $attribs['value'] = (string) $value; - $attribs['type'] = $this->_elementType; - - $attribs = $this->_prepareDijit($attribs, $params, 'element', $dijit); - - $html = '_htmlAttribs($attribs) - . $this->getClosingBracket(); - return $html; - } - - /** - * Merge attributes and parameters - * - * Also sets up requires - * - * @param array $attribs - * @param array $params - * @param string $type - * @param string $dijit Dijit type to use (otherwise, pull from $_dijit) - * @return array - */ - protected function _prepareDijit(array $attribs, array $params, $type, $dijit = null) - { - $this->dojo->requireModule($this->_module); - - switch ($type) { - case 'layout': - $stripParams = array('id'); - break; - case 'element': - $stripParams = array('id', 'name', 'value', 'type'); - foreach (array('checked', 'disabled', 'readonly') as $attrib) { - if (array_key_exists($attrib, $attribs)) { - if ($attribs[$attrib]) { - $attribs[$attrib] = $attrib; - } else { - unset($attribs[$attrib]); - } - } - } - break; - case 'textarea': - $stripParams = array('id', 'name', 'type', 'degrade'); - break; - default: - } - - foreach ($stripParams as $param) { - if (array_key_exists($param, $params)) { - unset($params[$param]); - } - } - - // Normalize constraints, if present - foreach ($this->_jsonParams as $param) { - if (array_key_exists($param, $params)) { - require_once 'Zend/Json.php'; - - if (is_array($params[$param])) { - $values = array(); - foreach ($params[$param] as $key => $value) { - if (!is_scalar($value)) { - continue; - } - $values[$key] = $value; - } - } elseif (is_string($params[$param])) { - $values = (array) $params[$param]; - } else { - $values = array(); - } - $values = Zend_Json::encode($values); - if ($this->_useDeclarative()) { - $values = str_replace('"', "'", $values); - } - $params[$param] = $values; - } - } - - $dijit = (null === $dijit) ? $this->_dijit : $dijit; - if ($this->_useDeclarative()) { - $attribs = array_merge($attribs, $params); - if (isset($attribs['required'])) { - $attribs['required'] = ($attribs['required']) ? 'true' : 'false'; - } - $attribs['dojoType'] = $dijit; - } elseif (!$this->_useProgrammaticNoScript()) { - $this->_createDijit($dijit, $attribs['id'], $params); - } - - return $attribs; - } - - /** - * Create a dijit programmatically - * - * @param string $dijit - * @param string $id - * @param array $params - * @return void - */ - protected function _createDijit($dijit, $id, array $params) - { - $params['dojoType'] = $dijit; - - array_walk_recursive($params, array($this, '_castBoolToString')); - - $this->dojo->setDijit($id, $params); - } - - /** - * Cast a boolean to a string value - * - * @param mixed $item - * @param string $key - * @return void - */ - protected function _castBoolToString(&$item, $key) - { - if (!is_bool($item)) { - return; - } - $item = ($item) ? "true" : "false"; - } - - /** - * Render a hidden element to hold a value - * - * @param string $id - * @param string|int|float $value - * @return string - */ - protected function _renderHiddenElement($id, $value) - { - $hiddenAttribs = array( - 'name' => $id, - 'value' => (string) $value, - 'type' => 'hidden', - ); - return '_htmlAttribs($hiddenAttribs) . $this->getClosingBracket(); - } - - /** - * Create JS function for retrieving parent form - * - * @return void - */ - protected function _createGetParentFormFunction() - { - $function =<<dojo->addJavascript($function); - } -} diff --git a/library/Zend/Dojo/View/Helper/DijitContainer.php b/library/Zend/Dojo/View/Helper/DijitContainer.php deleted file mode 100644 index 48a6199b..00000000 --- a/library/Zend/Dojo/View/Helper/DijitContainer.php +++ /dev/null @@ -1,92 +0,0 @@ -_captureLock)) { - require_once 'Zend/Dojo/View/Exception.php'; - throw new Zend_Dojo_View_Exception(sprintf('Lock already exists for id "%s"', $id)); - } - - $this->_captureLock[$id] = true; - $this->_captureInfo[$id] = array( - 'params' => $params, - 'attribs' => $attribs, - ); - - ob_start(); - return; - } - - /** - * Finish capturing content for layout container - * - * @param string $id - * @return string - */ - public function captureEnd($id) - { - if (!array_key_exists($id, $this->_captureLock)) { - require_once 'Zend/Dojo/View/Exception.php'; - throw new Zend_Dojo_View_Exception(sprintf('No capture lock exists for id "%s"; nothing to capture', $id)); - } - - $content = ob_get_clean(); - extract($this->_captureInfo[$id]); - unset($this->_captureLock[$id], $this->_captureInfo[$id]); - return $this->_createLayoutContainer($id, $content, $params, $attribs); - } -} diff --git a/library/Zend/Dojo/View/Helper/Dojo.php b/library/Zend/Dojo/View/Helper/Dojo.php deleted file mode 100644 index f4346a76..00000000 --- a/library/Zend/Dojo/View/Helper/Dojo.php +++ /dev/null @@ -1,176 +0,0 @@ -_container = $registry[__CLASS__]; - } - - /** - * Set view object - * - * @param Zend_Dojo_View_Interface $view - * @return void - */ - public function setView(Zend_View_Interface $view) - { - $this->view = $view; - $this->_container->setView($view); - } - - /** - * Return dojo container - * - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function dojo() - { - return $this->_container; - } - - /** - * Proxy to container methods - * - * @param string $method - * @param array $args - * @return mixed - * @throws Zend_Dojo_View_Exception For invalid method calls - */ - public function __call($method, $args) - { - if (!method_exists($this->_container, $method)) { - require_once 'Zend/Dojo/View/Exception.php'; - throw new Zend_Dojo_View_Exception(sprintf('Invalid method "%s" called on dojo view helper', $method)); - } - - return call_user_func_array(array($this->_container, $method), $args); - } - - /** - * Set whether or not dijits should be created declaratively - * - * @return void - */ - public static function setUseDeclarative() - { - self::$_useProgrammatic = false; - } - - /** - * Set whether or not dijits should be created programmatically - * - * Optionally, specifiy whether or not dijit helpers should generate the - * programmatic dojo. - * - * @param int $style - * @return void - */ - public static function setUseProgrammatic($style = self::PROGRAMMATIC_SCRIPT) - { - if (!in_array($style, array(self::PROGRAMMATIC_SCRIPT, self::PROGRAMMATIC_NOSCRIPT))) { - $style = self::PROGRAMMATIC_SCRIPT; - } - self::$_useProgrammatic = $style; - } - - /** - * Should dijits be created declaratively? - * - * @return bool - */ - public static function useDeclarative() - { - return (false === self::$_useProgrammatic); - } - - /** - * Should dijits be created programmatically? - * - * @return bool - */ - public static function useProgrammatic() - { - return (false !== self::$_useProgrammatic); - } - - /** - * Should dijits be created programmatically but without scripts? - * - * @return bool - */ - public static function useProgrammaticNoScript() - { - return (self::PROGRAMMATIC_NOSCRIPT === self::$_useProgrammatic); - } -} diff --git a/library/Zend/Dojo/View/Helper/Dojo/Container.php b/library/Zend/Dojo/View/Helper/Dojo/Container.php deleted file mode 100644 index 41c462a3..00000000 --- a/library/Zend/Dojo/View/Helper/Dojo/Container.php +++ /dev/null @@ -1,1205 +0,0 @@ -view = $view; - } - - /** - * Enable dojo - * - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function enable() - { - $this->_enabled = true; - return $this; - } - - /** - * Disable dojo - * - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function disable() - { - $this->_enabled = false; - return $this; - } - - /** - * Is dojo enabled? - * - * @return bool - */ - public function isEnabled() - { - return $this->_enabled; - } - - /** - * Add options for the Dojo Container to use - * - * @param array|Zend_Config Array or Zend_Config object with options to use - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function setOptions($options) - { - if($options instanceof Zend_Config) { - $options = $options->toArray(); - } - - foreach($options as $key => $value) { - $key = strtolower($key); - switch($key) { - case 'requiremodules': - $this->requireModule($value); - break; - case 'modulepaths': - foreach($value as $module => $path) { - $this->registerModulePath($module, $path); - } - break; - case 'layers': - $value = (array) $value; - foreach($value as $layer) { - $this->addLayer($layer); - } - break; - case 'cdnbase': - $this->setCdnBase($value); - break; - case 'cdnversion': - $this->setCdnVersion($value); - break; - case 'cdndojopath': - $this->setCdnDojoPath($value); - break; - case 'localpath': - $this->setLocalPath($value); - break; - case 'djconfig': - $this->setDjConfig($value); - break; - case 'stylesheetmodules': - $value = (array) $value; - foreach($value as $module) { - $this->addStylesheetModule($module); - } - break; - case 'stylesheets': - $value = (array) $value; - foreach($value as $stylesheet) { - $this->addStylesheet($stylesheet); - } - break; - case 'registerdojostylesheet': - $this->registerDojoStylesheet($value); - break; - case 'enable': - if($value) { - $this->enable(); - } else { - $this->disable(); - } - } - } - - return $this; - } - - /** - * Specify one or multiple modules to require - * - * @param string|array $modules - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function requireModule($modules) - { - if (!is_string($modules) && !is_array($modules)) { - require_once 'Zend/Dojo/View/Exception.php'; - throw new Zend_Dojo_View_Exception('Invalid module name specified; must be a string or an array of strings'); - } - - $modules = (array) $modules; - - foreach ($modules as $mod) { - if (!preg_match('/^[a-z][a-z0-9._-]+$/i', $mod)) { - require_once 'Zend/Dojo/View/Exception.php'; - throw new Zend_Dojo_View_Exception(sprintf('Module name specified, "%s", contains invalid characters', (string) $mod)); - } - - if (!in_array($mod, $this->_modules)) { - $this->_modules[] = $mod; - } - } - - return $this; - } - - /** - * Retrieve list of modules to require - * - * @return array - */ - public function getModules() - { - return $this->_modules; - } - - /** - * Register a module path - * - * @param string $module The module to register a path for - * @param string $path The path to register for the module - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function registerModulePath($module, $path) - { - $path = (string) $path; - if (!in_array($module, $this->_modulePaths)) { - $this->_modulePaths[$module] = $path; - } - - return $this; - } - - /** - * List registered module paths - * - * @return array - */ - public function getModulePaths() - { - return $this->_modulePaths; - } - - /** - * Add layer (custom build) path - * - * @param string $path - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function addLayer($path) - { - $path = (string) $path; - if (!in_array($path, $this->_layers)) { - $this->_layers[] = $path; - } - - return $this; - } - - /** - * Get registered layers - * - * @return array - */ - public function getLayers() - { - return $this->_layers; - } - - /** - * Remove a registered layer - * - * @param string $path - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function removeLayer($path) - { - $path = (string) $path; - $layers = array_flip($this->_layers); - if (array_key_exists($path, $layers)) { - unset($layers[$path]); - $this->_layers = array_keys($layers); - } - return $this; - } - - /** - * Clear all registered layers - * - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function clearLayers() - { - $this->_layers = array(); - return $this; - } - - /** - * Set CDN base path - * - * @param string $url - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function setCdnBase($url) - { - $this->_cdnBase = (string) $url; - return $this; - } - - /** - * Return CDN base URL - * - * @return string - */ - public function getCdnBase() - { - return $this->_cdnBase; - } - - /** - * Use CDN, using version specified - * - * @param string $version - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function setCdnVersion($version = null) - { - $this->enable(); - if (preg_match('/^[1-9]\.[0-9](\.[0-9])?$/', $version)) { - $this->_cdnVersion = $version; - } - return $this; - } - - /** - * Get CDN version - * - * @return string - */ - public function getCdnVersion() - { - return $this->_cdnVersion; - } - - /** - * Set CDN path to dojo (relative to CDN base + version) - * - * @param string $path - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function setCdnDojoPath($path) - { - $this->_cdnDojoPath = (string) $path; - return $this; - } - - /** - * Get CDN path to dojo (relative to CDN base + version) - * - * @return string - */ - public function getCdnDojoPath() - { - return $this->_cdnDojoPath; - } - - /** - * Are we using the CDN? - * - * @return bool - */ - public function useCdn() - { - return !$this->useLocalPath(); - } - - /** - * Set path to local dojo - * - * @param string $path - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function setLocalPath($path) - { - $this->enable(); - $this->_localPath = (string) $path; - return $this; - } - - /** - * Get local path to dojo - * - * @return string - */ - public function getLocalPath() - { - return $this->_localPath; - } - - /** - * Are we using a local path? - * - * @return bool - */ - public function useLocalPath() - { - return (null === $this->_localPath) ? false : true; - } - - /** - * Set Dojo configuration - * - * @param string $option - * @param mixed $value - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function setDjConfig(array $config) - { - $this->_djConfig = $config; - return $this; - } - - /** - * Set Dojo configuration option - * - * @param string $option - * @param mixed $value - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function setDjConfigOption($option, $value) - { - $option = (string) $option; - $this->_djConfig[$option] = $value; - return $this; - } - - /** - * Retrieve dojo configuration values - * - * @return array - */ - public function getDjConfig() - { - return $this->_djConfig; - } - - /** - * Get dojo configuration value - * - * @param string $option - * @param mixed $default - * @return mixed - */ - public function getDjConfigOption($option, $default = null) - { - $option = (string) $option; - if (array_key_exists($option, $this->_djConfig)) { - return $this->_djConfig[$option]; - } - return $default; - } - - /** - * Add a stylesheet by module name - * - * @param string $module - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function addStylesheetModule($module) - { - if (!preg_match('/^[a-z0-9]+\.[a-z0-9_-]+(\.[a-z0-9_-]+)*$/i', $module)) { - require_once 'Zend/Dojo/View/Exception.php'; - throw new Zend_Dojo_View_Exception('Invalid stylesheet module specified'); - } - if (!in_array($module, $this->_stylesheetModules)) { - $this->_stylesheetModules[] = $module; - } - return $this; - } - - /** - * Get all stylesheet modules currently registered - * - * @return array - */ - public function getStylesheetModules() - { - return $this->_stylesheetModules; - } - - /** - * Add a stylesheet - * - * @param string $path - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function addStylesheet($path) - { - $path = (string) $path; - if (!in_array($path, $this->_stylesheets)) { - $this->_stylesheets[] = (string) $path; - } - return $this; - } - - /** - * Register the dojo.css stylesheet? - * - * With no arguments, returns the status of the flag; with arguments, sets - * the flag and returns the object. - * - * @param null|bool $flag - * @return Zend_Dojo_View_Helper_Dojo_Container|bool - */ - public function registerDojoStylesheet($flag = null) - { - if (null === $flag) { - return $this->_registerDojoStylesheet; - } - - $this->_registerDojoStylesheet = (bool) $flag; - return $this; - } - - /** - * Retrieve registered stylesheets - * - * @return array - */ - public function getStylesheets() - { - return $this->_stylesheets; - } - - /** - * Add a script to execute onLoad - * - * dojo.addOnLoad accepts: - * - function name - * - lambda - * - * @param string $callback Lambda - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function addOnLoad($callback) - { - if (!in_array($callback, $this->_onLoadActions, true)) { - $this->_onLoadActions[] = $callback; - } - return $this; - } - - /** - * Prepend an onLoad event to the list of onLoad actions - * - * @param string $callback Lambda - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function prependOnLoad($callback) - { - if (!in_array($callback, $this->_onLoadActions, true)) { - array_unshift($this->_onLoadActions, $callback); - } - return $this; - } - - /** - * Retrieve all registered onLoad actions - * - * @return array - */ - public function getOnLoadActions() - { - return $this->_onLoadActions; - } - - /** - * Start capturing routines to run onLoad - * - * @return bool - */ - public function onLoadCaptureStart() - { - if ($this->_captureLock) { - require_once 'Zend/Dojo/View/Exception.php'; - throw new Zend_Dojo_View_Exception('Cannot nest onLoad captures'); - } - - $this->_captureLock = true; - ob_start(); - return; - } - - /** - * Stop capturing routines to run onLoad - * - * @return bool - */ - public function onLoadCaptureEnd() - { - $data = ob_get_clean(); - $this->_captureLock = false; - - $this->addOnLoad($data); - return true; - } - - /** - * Add a programmatic dijit - * - * @param string $id - * @param array $params - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function addDijit($id, array $params) - { - if (array_key_exists($id, $this->_dijits)) { - require_once 'Zend/Dojo/View/Exception.php'; - throw new Zend_Dojo_View_Exception(sprintf('Duplicate dijit with id "%s" already registered', $id)); - } - - $this->_dijits[$id] = array( - 'id' => $id, - 'params' => $params, - ); - - return $this; - } - - /** - * Set a programmatic dijit (overwrites) - * - * @param string $id - * @param array $params - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function setDijit($id, array $params) - { - $this->removeDijit($id); - return $this->addDijit($id, $params); - } - - /** - * Add multiple dijits at once - * - * Expects an array of id => array $params pairs - * - * @param array $dijits - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function addDijits(array $dijits) - { - foreach ($dijits as $id => $params) { - $this->addDijit($id, $params); - } - return $this; - } - - /** - * Set multiple dijits at once (overwrites) - * - * Expects an array of id => array $params pairs - * - * @param array $dijits - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function setDijits(array $dijits) - { - $this->clearDijits(); - return $this->addDijits($dijits); - } - - /** - * Is the given programmatic dijit already registered? - * - * @param string $id - * @return bool - */ - public function hasDijit($id) - { - return array_key_exists($id, $this->_dijits); - } - - /** - * Retrieve a dijit by id - * - * @param string $id - * @return array|null - */ - public function getDijit($id) - { - if ($this->hasDijit($id)) { - return $this->_dijits[$id]['params']; - } - return null; - } - - /** - * Retrieve all dijits - * - * Returns dijits as an array of assoc arrays - * - * @return array - */ - public function getDijits() - { - return array_values($this->_dijits); - } - - /** - * Remove a programmatic dijit if it exists - * - * @param string $id - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function removeDijit($id) - { - if (array_key_exists($id, $this->_dijits)) { - unset($this->_dijits[$id]); - } - - return $this; - } - - /** - * Clear all dijits - * - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function clearDijits() - { - $this->_dijits = array(); - return $this; - } - - /** - * Render dijits as JSON structure - * - * @return string - */ - public function dijitsToJson() - { - require_once 'Zend/Json.php'; - return Zend_Json::encode($this->getDijits(), false, array('enableJsonExprFinder' => true)); - } - - /** - * Create dijit loader functionality - * - * @return void - */ - public function registerDijitLoader() - { - if (!$this->_dijitLoaderRegistered) { - $js =<<requireModule('dojo.parser'); - $this->_addZendLoad($js); - $this->addJavascript('var zendDijits = ' . $this->dijitsToJson() . ';'); - $this->_dijitLoaderRegistered = true; - } - } - - /** - * Add arbitrary javascript to execute in dojo JS container - * - * @param string $js - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function addJavascript($js) - { - $js = trim($js); - if (!in_array(substr($js, -1), array(';', '}'))) { - $js .= ';'; - } - - if (in_array($js, $this->_javascriptStatements)) { - return $this; - } - - $this->_javascriptStatements[] = $js; - return $this; - } - - /** - * Return all registered javascript statements - * - * @return array - */ - public function getJavascript() - { - return $this->_javascriptStatements; - } - - /** - * Clear arbitrary javascript stack - * - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function clearJavascript() - { - $this->_javascriptStatements = array(); - return $this; - } - - /** - * Capture arbitrary javascript to include in dojo script - * - * @return void - */ - public function javascriptCaptureStart() - { - if ($this->_captureLock) { - require_once 'Zend/Dojo/View/Exception.php'; - throw new Zend_Dojo_View_Exception('Cannot nest captures'); - } - - $this->_captureLock = true; - ob_start(); - return; - } - - /** - * Finish capturing arbitrary javascript to include in dojo script - * - * @return true - */ - public function javascriptCaptureEnd() - { - $data = ob_get_clean(); - $this->_captureLock = false; - - $this->addJavascript($data); - return true; - } - - /** - * String representation of dojo environment - * - * @return string - */ - public function __toString() - { - if (!$this->isEnabled()) { - return ''; - } - - $this->_isXhtml = $this->view->doctype()->isXhtml(); - - if (Zend_Dojo_View_Helper_Dojo::useDeclarative()) { - if (null === $this->getDjConfigOption('parseOnLoad')) { - $this->setDjConfigOption('parseOnLoad', true); - } - } - - if (!empty($this->_dijits)) { - $this->registerDijitLoader(); - } - - $html = $this->_renderStylesheets() . PHP_EOL - . $this->_renderDjConfig() . PHP_EOL - . $this->_renderDojoScriptTag() . PHP_EOL - . $this->_renderLayers() . PHP_EOL - . $this->_renderExtras(); - return $html; - } - - /** - * Retrieve local path to dojo resources for building relative paths - * - * @return string - */ - protected function _getLocalRelativePath() - { - if (null === $this->_localRelativePath) { - $localPath = $this->getLocalPath(); - $localPath = preg_replace('|[/\\\\]dojo[/\\\\]dojo.js[^/\\\\]*$|i', '', $localPath); - $this->_localRelativePath = $localPath; - } - return $this->_localRelativePath; - } - - /** - * Render dojo stylesheets - * - * @return string - */ - protected function _renderStylesheets() - { - if ($this->useCdn()) { - $base = $this->getCdnBase() - . $this->getCdnVersion(); - } else { - $base = $this->_getLocalRelativePath(); - } - - $registeredStylesheets = $this->getStylesheetModules(); - foreach ($registeredStylesheets as $stylesheet) { - $themeName = substr($stylesheet, strrpos($stylesheet, '.') + 1); - $stylesheet = str_replace('.', '/', $stylesheet); - $stylesheets[] = $base . '/' . $stylesheet . '/' . $themeName . '.css'; - } - - foreach ($this->getStylesheets() as $stylesheet) { - $stylesheets[] = $stylesheet; - } - - if ($this->_registerDojoStylesheet) { - $stylesheets[] = $base . '/dojo/resources/dojo.css'; - } - - if (empty($stylesheets)) { - return ''; - } - - array_reverse($stylesheets); - $style = ''; - - return $style; - } - - /** - * Render DjConfig values - * - * @return string - */ - protected function _renderDjConfig() - { - $djConfigValues = $this->getDjConfig(); - if (empty($djConfigValues)) { - return ''; - } - - require_once 'Zend/Json.php'; - $scriptTag = ''; - - return $scriptTag; - } - - /** - * Render dojo script tag - * - * Renders Dojo script tag by utilizing either local path provided or the - * CDN. If any djConfig values were set, they will be serialized and passed - * with that attribute. - * - * @return string - */ - protected function _renderDojoScriptTag() - { - if ($this->useCdn()) { - $source = $this->getCdnBase() - . $this->getCdnVersion() - . $this->getCdnDojoPath(); - } else { - $source = $this->getLocalPath(); - } - - $scriptTag = ''; - return $scriptTag; - } - - /** - * Render layers (custom builds) as script tags - * - * @return string - */ - protected function _renderLayers() - { - $layers = $this->getLayers(); - if (empty($layers)) { - return ''; - } - - $enc = 'UTF-8'; - if ($this->view instanceof Zend_View_Interface - && method_exists($this->view, 'getEncoding') - ) { - $enc = $this->view->getEncoding(); - } - - $html = array(); - foreach ($layers as $path) { - $html[] = sprintf( - '', - htmlspecialchars($path, ENT_QUOTES, $enc) - ); - } - - return implode("\n", $html); - } - - /** - * Render dojo module paths and requires - * - * @return string - */ - protected function _renderExtras() - { - $js = array(); - $modulePaths = $this->getModulePaths(); - if (!empty($modulePaths)) { - foreach ($modulePaths as $module => $path) { - $js[] = 'dojo.registerModulePath("' . $this->view->escape($module) . '", "' . $this->view->escape($path) . '");'; - } - } - - $modules = $this->getModules(); - if (!empty($modules)) { - foreach ($modules as $module) { - $js[] = 'dojo.require("' . $this->view->escape($module) . '");'; - } - } - - $onLoadActions = array(); - // Get Zend specific onLoad actions; these will always be first to - // ensure that dijits are created in the correct order - foreach ($this->_getZendLoadActions() as $callback) { - $onLoadActions[] = 'dojo.addOnLoad(' . $callback . ');'; - } - - // Get all other onLoad actions - foreach ($this->getOnLoadActions() as $callback) { - $onLoadActions[] = 'dojo.addOnLoad(' . $callback . ');'; - } - - $javascript = implode("\n ", $this->getJavascript()); - - $content = ''; - if (!empty($js)) { - $content .= implode("\n ", $js) . "\n"; - } - - if (!empty($onLoadActions)) { - $content .= implode("\n ", $onLoadActions) . "\n"; - } - - if (!empty($javascript)) { - $content .= $javascript . "\n"; - } - - if (preg_match('/^\s*$/s', $content)) { - return ''; - } - - $html = ''; - return $html; - } - - /** - * Add an onLoad action related to ZF dijit creation - * - * This method is public, but prefixed with an underscore to indicate that - * it should not normally be called by userland code. It is pertinent to - * ensuring that the correct order of operations occurs during dijit - * creation. - * - * @param string $callback - * @return Zend_Dojo_View_Helper_Dojo_Container - */ - public function _addZendLoad($callback) - { - if (!in_array($callback, $this->_zendLoadActions, true)) { - $this->_zendLoadActions[] = $callback; - } - return $this; - } - - /** - * Retrieve all ZF dijit callbacks - * - * @return array - */ - public function _getZendLoadActions() - { - return $this->_zendLoadActions; - } -} diff --git a/library/Zend/Dojo/View/Helper/Editor.php b/library/Zend/Dojo/View/Helper/Editor.php deleted file mode 100644 index 208081ba..00000000 --- a/library/Zend/Dojo/View/Helper/Editor.php +++ /dev/null @@ -1,199 +0,0 @@ - 'LinkDialog', - 'insertImage' => 'LinkDialog', - 'fontName' => 'FontChoice', - 'fontSize' => 'FontChoice', - 'formatBlock' => 'FontChoice', - 'foreColor' => 'TextColor', - 'hiliteColor' => 'TextColor', - 'enterKeyHandling' => 'EnterKeyHandling', - 'fullScreen' => 'FullScreen', - 'newPage' => 'NewPage', - 'print' => 'Print', - 'tabIndent' => 'TabIndent', - 'toggleDir' => 'ToggleDir', - 'viewSource' => 'ViewSource' - ); - - /** - * JSON-encoded parameters - * @var array - */ - protected $_jsonParams = array('captureEvents', 'events', 'plugins', 'extraPlugins'); - - /** - * dijit.Editor - * - * @param string $id - * @param string $value - * @param array $params - * @param array $attribs - * @return string - */ - public function editor($id, $value = null, $params = array(), $attribs = array()) - { - if (isset($params['plugins'])) { - foreach ($this->_getRequiredModules($params['plugins']) as $module) { - $this->dojo->requireModule($module); - } - } - - // Previous versions allowed specifying "degrade" to allow using a - // textarea instead of a div -- but this is insecure. Removing the - // parameter if set to prevent its injection in the dijit. - if (isset($params['degrade'])) { - unset($params['degrade']); - } - - $hiddenName = $id; - if (array_key_exists('id', $attribs)) { - $hiddenId = $attribs['id']; - } else { - $hiddenId = $hiddenName; - } - $hiddenId = $this->_normalizeId($hiddenId); - - $textareaName = $this->_normalizeEditorName($hiddenName); - $textareaId = $hiddenId . '-Editor'; - - $hiddenAttribs = array( - 'id' => $hiddenId, - 'name' => $hiddenName, - 'value' => $value, - 'type' => 'hidden', - ); - $attribs['id'] = $textareaId; - - $this->_createGetParentFormFunction(); - $this->_createEditorOnSubmit($hiddenId, $textareaId); - - $attribs = $this->_prepareDijit($attribs, $params, 'textarea'); - - $html = '_htmlAttribs($attribs) . '>' - . $value - . "\n"; - - // Embed a textarea in a
        '); - } - //print_r(curl_getinfo($ch)); - curl_close($ch); - return $response; -} - -/** Recherche un texte dans une page HTML - ** - **/ -function getTextInHtml($pageHtml, $strToFind, $strDeb, $strEnd, $include_strDeb=false, $include_strEnd=false, $ltrim=true, $rtrim=true, &$fin, $nbOcc=1) { - $tabRet=array(); - $deb=$nbOccTrouve=0; - while( is_int(($deb=strpos($pageHtml,$strToFind,$fin))) ) { - $deb++; - $deb2 = strpos($pageHtml,$strDeb, $deb); - $fin = strpos($pageHtml,$strEnd, $deb2); - if (!$include_strDeb) - $deb2+=strlen($strDeb); - $s_temp = substr($pageHtml, $deb2, ($fin-$deb2)); - - if ($ltrim) $s_temp=ltrim($s_temp); - if ($rtrim) $s_temp=rtrim($s_temp); - - if ($nbOcc==1) return $s_temp; - //echo $s_temp."\r\n"; - //$a_temp = explode('" class="basic">', $s_temp); - $tabUrl[$nbOccTrouve]=$s_temp; - $nbOccTrouve++; - - if ($nbOcc==$nbOccTrouve) { - // echo "j'ai trouvé le nb demandé, je sort\r\n"; - break; - }; - } - - return $tabUrl; - /* -
      1. Le type de voie a été modifié
        -
      2. L'orthographe du mot directeur a été modifiée
        -
      3. Le code postal a été forcé à partir du département et de la localité
        -*/ -} - -function getPdfInfo($f){ - $tabInfo=array( 'file'=>$f, - 'fileName'=>basename($f)); - $handle = @fopen($f, 'r'); - if ($handle) { - //echo '1'.EOL; - $i=$nbPages=$buffer=0; - while (!feof($handle)) { - $prev_buffer=$buffer; - $buffer = fgets($handle, 4096); - if ($i==0 && preg_match("/^\%PDF\-(.*)\s/U", $buffer, $matches)) - $tabInfo['version']=$matches[1]; - elseif (preg_match("/Type\s*\/Page[^s]/", $buffer) ) - ++$nbPages; - $i++; - } - //echo '2'.EOL; - if (preg_match("/\%\%EOF$/", $prev_buffer) || preg_match("/\%\%EOF/", $prev_buffer) || preg_match("/\%\%EOF/", $buffer)) { - //echo '3'.EOL; - $tabInfo['pdfEOF']=true; - } else { - /*echo '4 prev:'.$prev_buffer.EOL; - echo '4 last:'.$buffer.EOL;*/ - $tabInfo['debugBuffer']=$prev_buffer; - return false; - } - fclose($handle); - } else { - //echo '5'.EOL; - return false; - } - - $tabInfo['pdfSize']=filesize($f); - $tabInfo['nbPages']=0+$nbPages; - //$tabInfo['debugBuffer']=$prev_buffer; - return $tabInfo; -} - - -function simpleWhois($domain, $tdl, $debug=false) { - // Fonction de traitement - // ----------------------------------------------- - // 0 => Info, le nom est pris - // 1 => Info, le nom est libre - // 2 => Info, le nom est en pending - // 3 => Avertissement, trop de requêtes - // 4 => Erreur, il faut spécifier une chaine à rechercher (regexp) - // 5 => Erreur, la requête retournée était vide - // ----------------------------------------------- - - // Informations spécifiques aux extensions - $info = array( - 'fr' => array( - 'host' => 'whois.nic.fr', - 'regexp' => 'No[s]*entries[s]*found', - 'pending' => 'status[s]*:[s]*REDEMPTION' - ), - 'com' => array( - 'host' => 'whois.crsnic.net', - 'regexp' => 'No[s]*match[s]*for' - ), - 'net' => array( - 'host' => 'whois.crsnic.net', - 'regexp' => 'No[s]*match[s]*for' - ), - ); - - // Initialisation de la sortie - $output = ''; - // Initialisation de la requête - $req = fsockopen($info[$tdl]['host'], 43, $errno, $errstr, 5); // le 5 permet de stopper la requete si aucune réponse au bout de 5 secondes - // Récupération de la requête - if($req){ - fputs($req, $domain.'.'.$tdl."rn"); - while(!feof($req)) $output .= fgets($req, 4096); - fclose($req); - }else unset($req); - // mode debug - if($debug) return $output; - // Sortie vide - if(empty($output)) return 5; - // Trop de requêtes - if(preg_match("/(Too[s]+many[s]+requests|Your[s]+connection[s]+limit[s]+exceeded|daily[s]+whois[s]+limit[s]+exceeded|Maximum[s]+queries|WHOIS[s]+LIMIT[s]+EXCEEDED|referral[s]+host[s]+not[s]+responding|Excessive[s]+querying)/i", $output)) return 3; - // Pending - if(isset($info[$tdl]['pending']) && !empty($info[$tdl]['pending']) && preg_match("/".$info[$tdl]['pending']."/i", $output)) return 2; - // Info de recheche manquant - if(!isset($info[$tdl]['regexp']) || empty($info[$tdl]['regexp'])) return 4; - // Libre - if(preg_match("/".$info[$tdl]['regexp']."/i", $output)) return 1; - // Pris - return 0; - } - -?> \ No newline at end of file diff --git a/library/framework/common/dates.php b/library/framework/common/dates.php deleted file mode 100644 index a9da2afe..00000000 --- a/library/framework/common/dates.php +++ /dev/null @@ -1,205 +0,0 @@ -détail de la classe

        - * - * @name nom de la classe - * @author Nom de l'auteur - * @link - * @copyright Prénom Nom Année - * @version 1.0.0 - * @package Nom du package - */ - - class WDate { - - private static $tabMoisEnLettres = array( 1=>'Janvier', - 2=>'Février', - 3=>'Mars', - 4=>'Avril', - 5=>'Mai', - 6=>'Juin', - 7=>'Juillet', - 8=>'Août', - 9=>'Septembre', - 10=>'Octobre', - 11=>'Novembre', - 12=>'Décembre'); - - /** Retourne le numéro du mois donné au format texte (janvier, mars, etc...) - * @param string Mois en toute lettres (janvier, mars, etc...) - * @return string Mois en Chiffe (1, 3, 12) / false en cas d'erreur - */ - public function getNumMois($moisEnLettres) { - foreach (self::$tabMoisEnLettres as $num=>$mois) - $tabMoisSansAccents[$num]=strtr($mois, 'ééûÉÉÛ','eeueeu'); - return array_search(ucfirst(strtolower(strtr($moisEnLettres, 'ééûÉÉÛ','eeuEEU'))), $tabMoisSansAccents); - } - - /** Retourne le libellé nu numéro du mois passé en paramètre - * @param int $moisEnChiffre - * @return string Libellé du mois / false si le mois passé en paramètre est invalide - */ - public function getLibelleMois($moisEnChiffre) { - if ($moisEnChiffre>0 && $moisEnChiffre<13) - return self::$tabMoisEnLettres[$moisEnChiffre]; - - return false; - } - - /** Retourne le nombre de mois entre 2 dates au format Ymd - ** - ** @param int $dateDeb Date de début au format Ymd - ** @param int $dateFin Date de fin (ultérieur à la date de début) au format Ymd - ** @return int Nombre de mois - **/ - function nbMoisEntre($dateDeb, $dateFin=TODAY) { - $dDeb=explode('-', Wdate::dateT('Ymd','Y-m-d', $dateDeb)); - $dFin=explode('-', Wdate::dateT('Ymd','Y-m-d', $dateFin)); - return ($dFin[0]*12+$dFin[1])-($dDeb[0]*12+$dDeb[1]); - } - - /** - * Conversion de formats de dates selon les formats de dates définits en php - * @param string Format de la date d'entrée - * @param string Format de la date de sortie - * @param string Date d'entrée - * @return string Date formatée - */ - public function dateT($formatIN, $formatOUT, $date) { - $M=''; - switch ($formatIN) { - case 'd M Y': $tmp=explode(' ', $date); $d=str_replace('1er', '1', $tmp[0]); $m=self::getNumMois($tmp[1]); $Y=$tmp[2]; break; - case 'dMY': $Y=substr($date,-4); - if (substr($date,0,3)=='1er') { $d=1; $posM=3; } - elseif (is_numeric(substr($date,1,1))) { $d=substr($date,0,2); $posM=2; } - else { $d=substr($date,0,1); $posM=1; } - $M=trim(substr($date, $posM, strlen($date)-4-$posM)); - //echo "$date:$posM:$M".EOL; - $m=self::getNumMois($M); - break; - case 'Ymd': $d=substr($date,6,2); $m=substr($date,4,2); $Y=substr($date,0,4); break; - case 'ymd': $d=substr($date,4,2); $m=substr($date,2,2); $Y=substr($date,0,2); - if ($Y<50) $Y='20'.$Y; else $Y='19'.$Y; break; - case 'Y-m-d': $d=substr($date,8,2); $m=substr($date,5,2); $Y=substr($date,0,4); break; - case 'Y-m': $d=1; $m=substr($date,5,2); $Y=substr($date,0,4); break; - case 'd/m/Y': $tmp=explode('/', $date); $d=$tmp[0]; $m=$tmp[1]; $Y=$tmp[2]; break; - case 'd.m.Y': $tmp=explode('.', $date); $d=$tmp[0]; $m=$tmp[1]; $Y=$tmp[2]; break; - case 'd/m/y': $tmp=explode('/', $date); $d=$tmp[0]; $m=$tmp[1]; - if ($tmp[2]0 && $m*1<10) $m='0'.($m*1); if ($d*1>0 && $d*1<10) $d='0'.($d*1); - - switch ($formatOUT) { - case 'd/m/Y': return $d.'/'.$m.'/'.$Y; break; - case 'm/Y': return $m.'/'.$Y; break; - case 'd M Y': return $d.' '.self::$tabMoisEnLettres[$m*1].' '.$Y; break; - case 'M Y': return self::$tabMoisEnLettres[$m*1].' '.$Y; break; - case 'Y': return $Y; break; - case 'm': return $m; break; - case 'd': return $d; break; - case 'Ym': return $Y.$m; break; - case 'Ymd': return $Y.$m.$d; break; - case 'Y-m-d': return $Y.'-'.$m.'-'.$d; break; - case 'Y/m/d': return $Y.'/'.$m.'/'.$d; break; - default: return $date; - } - } - - /** Calcul de la date après application de la période textuelle (deux ans, six mois, quinze jours, etc...) - * @todo Fonction ne fonctionnant qu'avec un chiffre en un seul mot du genre dix mais pas quatre vingt dix !!! - * @param date $dateIN au format Ymd - * @param string $period (ex : cinq mois, six ans, un jour, 3 mois) - * @return date - */ - function period2Days($dateIN, $period, $inThePast=false) { - $dateV=self::dateT('Ymd', 'Ymd', $dateIN); - if ($dateV<>$dateIN) return NULL; - $d=substr($dateIN,6,2); - $m=substr($dateIN,4,2); - $Y=substr($dateIN,0,4); - $period=strtolower(trim(strtr($period, "-.,", ' '))); - if ($period=='') return NULL; - $tabP=explode(' ', $period); - if ($tabP[0]*1>0) $chiffre=$tabP[0]*1*1; - else $chiffre=WChiffes::ChiffresEnLettres($tabP[0]); - if ($inThePast) $chiffre=-1*$chiffre; - switch (end($tabP)) { - case 'mois': $dateOUT=date('Ymd', mktime(0, 0, 0, $m+$chiffre, $d, $Y)); break; - case 'an': - case 'ans': $dateOUT=date('Ymd', mktime(0, 0, 0, $m, $d, $Y+$chiffre)); break; - case 'jour': - case 'jours': $dateOUT=date('Ymd', mktime(0, 0, 0, $m, $d+$chiffre, $Y)); break; - default: $dateOUT=NULL; - } - return $dateOUT; - } - - -/** le jour est il ferié - * @param date $date Date au format SSAA-MM-JJ ou SSAAMMJJ - * @param bool $weekend Considérer les WeekEnd comme feriés ? 1=Oui - * @return bool - **/ -function jourFerie($date, $weekend=false) { - $date =str_replace('-','',strtr($date, '/.:','---')); - $jour =self::dateT('Ymd', 'd', $date); - $mois =self::dateT('Ymd', 'm', $date); - $annee=self::dateT('Ymd', 'Y', $date); - $ferie=false; - - // Jours feriées fixes - if($jour == 1 && $mois == 1) $ferie = true; // 1er janvier - if($jour == 1 && $mois == 5) $ferie = true; // 1er mai - if($jour == 8 && $mois == 5) $ferie = true; // 8 mai - if($jour == 14 && $mois == 7) $ferie = true; // 14 juillet - if($jour == 15 && $mois == 8) $ferie = true; // 15 aout - if($jour == 1 && $mois == 11) $ferie = true; // 1 novembre - if($jour == 11 && $mois == 11) $ferie = true; // 11 novembre - if($jour == 25 && $mois == 12) $ferie = true; // 25 décembre - - // fêtes religieuses mobiles - $pak = @easter_date($annee); - $jp = date("d", $pak); - $mp = date("m", $pak); - if($jp == $jour && $mp == $mois){ $ferie = true;} // Pâques - $lpk = mktime(date("H", $pak), date("i", $pak), date("s", $pak), date("m", $pak), date("d", $pak) +1, date("Y", $pak) ); - $jp = date("d", $lpk); - $mp = date("m", $lpk); - if($jp == $jour && $mp == $mois){ $ferie = true; }// Lundi de Pâques - $asc = mktime(date("H", $pak), date("i", $pak), date("s", $pak), date("m", $pak), date("d", $pak) + 39, date("Y", $pak) ); - $jp = date("d", $asc); - $mp = date("m", $asc); - if($jp == $jour && $mp == $mois){ $ferie = true;}//ascension - $pe = mktime(date("H", $pak), date("i", $pak), date("s", $pak), date("m", $pak), date("d", $pak) + 49, date("Y", $pak) ); - $jp = date("d", $pe); - $mp = date("m", $pe); - if($jp == $jour && $mp == $mois) {$ferie = true;}// Pentecôte - $lp = mktime(date("H", $asc), date("i", $pak), date("s", $pak), date("m", $pak), date("d", $pak) + 50, date("Y", $pak) ); - $jp = date("d", $lp); - $mp = date("m", $lp); - if($jp == $jour && $mp == $mois) {$ferie = true;}// lundi Pentecôte - - // Samedis et Dimanches - if ($weekend) { - $jour_sem = date('N',mktime(0,0,0, $mois, $jour, $annee)); - if($jour_sem>5) $ferie = true; - } - - return $ferie; -} -} - - ?> \ No newline at end of file diff --git a/library/framework/common/ftp.php b/library/framework/common/ftp.php deleted file mode 100644 index f38faa92..00000000 --- a/library/framework/common/ftp.php +++ /dev/null @@ -1,135 +0,0 @@ -null) echo date ('Y/m/d - H:i:s')." - ERREUR : Impossible de se connecter au serveur FTP ($ftp_url) !".EOL; - return false; - } - - $login_result = @ftp_login($conn_id, $ftp_user, $ftp_pass); - if (!$login_result) { - if ($debug<>null) echo date ('Y/m/d - H:i:s')." - ERREUR : Impossible de s'authentifier sur le serveur FTP (user=$ftp_user)!".EOL; - return false; - } - // Récupération du contenu d'un dossier - $contents = ftp_nlist($conn_id, $ftp_dir); -// print_r($contents); -// print_r(ftp_rawlist($conn_id, $ftp_dir)); - $nbFic=0; // Nombre de fichiers récupérés - if (is_array($contents)) - foreach($contents as $k => $server_file) { - $tailleDist = ftp_size($conn_id, $server_file); - $dateDist = ftp_mdtm($conn_id, $server_file); - $tailleLoc=0; - if ($dateDist != -1) { - $tabFichiers[$server_file]['dateDispo']=date('Y-m-d H:i:s', $dateDist); - // echo date ('Y/m/d - H:i:s') ." - Le fichier distant $server_file a été modifié le ".date("d/m/Y à H:i:s.",$dateDist)."\n"; - } else { - $tabFichiers[$server_file]['dateDispo']=NULL; - // echo date ('Y/m/d - H:i:s')." - ERREUR : Impossible de récupérer l'heure de modification du fichier distant $server_file !\n"; - } - $tabFichiers[$server_file]['taille']=$tailleDist; - if ($tailleDist != -1) { - //echo date ('Y/m/d - H:i:s') ." - Taille du fichier distant $server_file est de $tailleDist octets\n"; - } - if (file_exists($local_dir . $server_file)) { - $dateLoc=filemtime($local_dir . $server_file); - $tabFichiers[$server_file]['dateDownload']=date('Y-m-d H:i:s', $dateLoc); - $tailleLoc=filesize($local_dir . $server_file); - //echo date ('Y/m/d - H:i:s') ." - Taille du fichier local $server_file = $tailleLoc octets\n"; - } - if ($tailleDist<>$tailleLoc) { - if (ftp_get($conn_id, $local_dir. $server_file, $server_file, FTP_BINARY)) - //echo date ('Y/m/d - H:i:s')." - Fichier distant $server_file téléchargé avec succès".EOL; - $nbFic++; - else { - if ($debug<>null) echo date ('Y/m/d - H:i:s')." - ERREUR : Fichier distant $server_file non téléchargé !".EOL; - return false; - } - } - } - - // Fermeture de la connexion - ftp_close($conn_id); - return $nbFic; -} - -/** - * ftpRecursiveFileListing - * - * Get a recursive listing of all files in all subfolders given an ftp handle and path - * - * @param resource $ftpConnection the ftp connection handle - * @param string $path the folder/directory path - * @return array $allFiles the list of files in the format: directory => $filename - */ -/*function ftp_rlist($conn_id, $path) { - static $allFiles = array(); - $contents = ftp_nlist($conn_id, $path); - - foreach($contents as $currentFile) { - // assuming its a folder if there's no dot in the name - echo $currentFile.EOL; - //if (strpos($currentFile, '.') === false) { - if(ftp_is_dir($conn_id, $currentFile)) { - ftp_rlist($conn_id, $path.'/'.$currentFile); - } - $allFiles[$path][] = substr($currentFile, strlen($path) + 1); - } - return $allFiles; -} -*/ -//identify directories - -function ftp_is_dir($conn_id, $dir) { - if (@ftp_chdir($conn_id, $dir)) { - ftp_chdir($conn_id, '../'); - return true; - } else { - return false; - } -} -/* -function list_all_files($conn_id, $path){ - $buff = ftp_rawlist($conn_id, $path); - $res = parse_rawlist( $buff) ; - static $flist = array(); - if(count($res)>0){ - foreach($res as $result){ - // verify if is dir , if not add to the list of files - if($result['size']== 0){ - // recursively call the function if this file is a folder - list_all_files($conn_id, $path.'/'.$result['name']); - } - else{ - // this is a file, add to final list - $flist[] = $result; - } - } - } - return $flist; -}*/ - -function ftp_rlist($conn_id, $path, $suffixes=array('gif','png','jpeg','pdf','php','txt','csv'), $files=array()) { - ftp_pasv($conn_id, true); - // = explode(",", $suffix); - $list = ftp_rawlist($conn_id, $path); - $anzlist = count($list); - $i = 0; - while ($i < $anzlist): - $split = preg_split("/[\s]+/", $list[$i], 9, PREG_SPLIT_NO_EMPTY); - $ItemName = $split[8]; - $endung = strtolower(substr(strrchr($ItemName,"."),1)); - $path = "$path/$ItemName"; - if (substr($list[$i],0,1) === "d" AND substr($ItemName,0,1) != "."): - // array_push($files, $path); # write directory in array if desired - ftp_rlist($conn_id,$path, $suffixes, $files); - elseif (substr($ItemName,0,2) != "._" AND in_array($endung,$suffixes)): - array_push($files, $path); - endif; - $i++; - endwhile; - return $files; - } - ?> \ No newline at end of file diff --git a/library/framework/common/mail.php b/library/framework/common/mail.php deleted file mode 100644 index 399ddc3c..00000000 --- a/library/framework/common/mail.php +++ /dev/null @@ -1,3 +0,0 @@ - \ No newline at end of file diff --git a/library/framework/common/mysql.php b/library/framework/common/mysql.php deleted file mode 100644 index 2d693af7..00000000 --- a/library/framework/common/mysql.php +++ /dev/null @@ -1,228 +0,0 @@ -host=MYSQL_HOST; - else $this->host=$host; - if ($user=='') $this->user=MYSQL_USER; - else $this->user=$user; - if ($password=='') $this->password=MYSQL_PASS; - else $this->password=$password; - if ($database=='') $this->database=MYSQL_DEFAULT_DB; - else $this->database=$database; - - $this->con_id = mysql_pconnect($this->host, $this->user, $this->password); - if (!($this->con_id === false)) { - if (mysql_select_db($this->database, $this->con_id) === false) { - echo date('Y/m/d - H:i:s') ." - ERREUR ".mysql_errno()." : Connection à la base de données impossible !".EOL; - echo date ('Y/m/d - H:i:s'). mysql_error(); - die(); - } - } - return mysql_query("SET NAMES 'utf8';", $this->con_id); - } - - public function setCharSet($charSet) { - return (mysql_query("SET CHARACTER SET $charSet;", $this->con_id)); - } - - private function setDB() { - return (mysql_query("USE $this->database;", $this->con_id)); - } - - /** INSERTION d'un tableau dans une table. - ** Les index doivent avoir les mêmes noms que les champs. - ** @param string Table - ** @param array Valeurs insérer - ** @return int Dernière valeur de l'auto-incrément, 1 si pas d'auto-incrément et 0 si erreur - **/ -public function insert($table, $toAdd, $debug=false, $low_priority=false){ - $this->setDB(); - $fields = implode(array_keys($toAdd), '`,`'); - foreach (array_values($toAdd) as $key=>$array_values) - $tmp[$key]=checkaddslashes($array_values); - - $values = "'".implode(array_values($tmp), "','")."'"; # better - $values = str_replace("'NULL'", 'NULL', $values); - - if ($low_priority) - $query = 'INSERT DELAYED INTO `'.$table.'` (`'.$fields.'`) VALUES ('.$values.');'; - else - $query = 'INSERT INTO `'.$table.'` (`'.$fields.'`) VALUES ('.$values.');'; - - - if ($debug) $tdeb=microtime_float(); - $res = mysql_query($query, $this->con_id); - if ($res!==false) - { - if (mysql_insert_id()>0) - $res=mysql_insert_id(); - else - $res=true; - } - if ($debug) $this->trace($query, $res, $tdeb); - return $res; - } - -public function update($table, $update, $where, $debug=false, $limit=0, $low_priority=false){ - $this->setDB(); - $fields = array_keys($update); - $values = array_values($update); - $i=0; - if ($low_priority) - $query='UPDATE LOW_PRIORITY `'.$table.'` SET '; - else - $query='UPDATE `'.$table.'` SET '; - while(isset($fields[$i])){ - if($i>0) { $query.=', '; } - $query.=' `'.$fields[$i]."`='".checkaddslashes($values[$i])."'"; - $i++; - } - $query = str_replace("'NULL'", 'NULL', $query); - $query.=' WHERE '.$where; - if ($limit>0) $query.=" LIMIT $limit"; - if ($debug) $tdeb=microtime_float(); - $res=mysql_query($query, $this->con_id); - if ($debug) $this->trace($query, $res, $tdeb); - return $res; - } - -public function delete($table, $where, $debug=false, $low_priority=false) { - $this->setDB(); - if ($low_priority) - $query='DELETE LOW_PRIORITY QUICK FROM `'.$table.'` WHERE '.$where.' LIMIT 1;'; - else - $query='DELETE FROM `'.$table.'` WHERE '.$where.' LIMIT 1;'; - if ($debug) $tdeb=microtime_float(); - $res=mysql_query($query, $this->con_id); - if ($debug) $this->trace($query, $res, $tdeb); - return $res; - } - - public function select($table, $fields, $where, $debug=false, $assoc=MYSQL_BOTH, $huge=false) { - $this->setDB(); - if (mysql_select_db($this->database, $this->con_id) === false) { - echo date('Y/m/d - H:i:s') ." - ERREUR ".mysql_errno()." : Connection à la base de données impossible !".EOL; - echo date ('Y/m/d - H:i:s'). mysql_error(); - die(); - } - $query="SELECT $fields FROM $table WHERE $where;"; - if ($debug) $tdeb=microtime_float(); - $this->result=mysql_query($query, $this->con_id);// or die(mysql_error()); - if (mysql_errno()) { - $fpErr=fopen(LOG_PATH.'/sqlerror.log','a'); - fwrite($fpErr, date('YmdHis'). ' - '.$query .EOL); - fwrite($fpErr, date('YmdHis'). ' - '.mysql_errno() .' - '. mysql_error().EOL); - return false; - } - // echo ; - if (!$huge) { - $tab=array(); - while ($ligne = mysql_fetch_array($this->result, $assoc)) - $tab[]=$ligne; - - if ($debug) $this->trace($query, sizeof($tab), $tdeb); - return $tab; - } else { - $nbRows=mysql_num_rows($this->result); - if ($debug) $this->trace($query, $nbRows, $tdeb); - return $nbRows; - } - } - - public function fetch($assoc=MYSQL_BOTH) { - return mysql_fetch_array($this->result, $assoc); - } - - public function trace($query, $res='', $tdeb=-1) { - if (!$fp=fopen(LOG_PATH.'/mysql_insert.log', 'a')) - return false; - $errnum=mysql_errno($this->con_id); - if ($tdeb>-1) $duree=substr(''.microtime_float()-$tdeb, 0, 5); - else $duree='N/D'; - if (!fwrite($fp, date('Y/m/d - H:i:s') ." - $errnum - $res - $duree - $query\n")) - return false; - if (!fclose($fp)) - return false; - return true; - } - - /** Exécute la requête passé en paramètre **/ - public function query($query, $debug=false){ - $this->setDB(); - $this->result=mysql_query($query, $this->con_id); - return $this->result; - } - - /** Retourne le nombre de records de la dernière requête de sélection ** - public function getNumRows() { - return mysql_num_rows($this->con_id); - } - */ - /** Retourne le libellé de la dernière erreur **/ - public function getLastErrorMsg() { - return mysql_error($this->con_id); - } - /** Retourne le numéro de la dernière erreur **/ - public function getLastErrorNum() { - return mysql_errno($this->con_id); - } - - /** Retourne le libellé et le numéro de la dernière erreur **/ - public function getLastError() { - return mysql_error($this->con_id).' ('.mysql_errno($this->con_id).')'; - } - - /** Retourne le nombre de lignes modifiées par la dernière requête **/ - public function getAffectedRows() { - return mysql_affected_rows($this->con_id); - } - - /** Génère le fichier CSV pour la requete SQL - ** - ** @param string $query - ** @param string $fileCsv - ** @return bool - */ - public function exportCSV($query, $fileCsv, $sep=',', $eol=EOL) { - $i=$c=0; - $fp = fopen($fileCsv, 'w'); - if (!$fp) return false; - - $res=$this->query($query); - $nbLignes=mysql_num_rows($res); - - while ($ligne=$this->fetch(MYSQL_ASSOC)) { - if ($i==0) { - $nbCols=count($ligne); - foreach ($ligne as $libCol=>$col) { - $c++; - if ($c<$nbCols) fwrite($fp, str_replace($sep,' ', $libCol).$sep); - else fwrite($fp, str_replace($sep,' ', $libCol)); - } - fwrite($fp, $eol); - } - $c=0; - foreach ($ligne as $libCol=>$col) { - $c++; - if ($c<$nbCols) fwrite($fp, str_replace($sep,' ', $col).$sep); - else fwrite($fp, str_replace($sep,' ', $col)); - } - fwrite($fp, $eol); - $i++; - } - fclose($fp); - return $nbLignes;//$this->getAffectedRows(); - } - -} -?> \ No newline at end of file diff --git a/library/framework/common/rss.php b/library/framework/common/rss.php deleted file mode 100644 index cb3f2bf0..00000000 --- a/library/framework/common/rss.php +++ /dev/null @@ -1,215 +0,0 @@ -getElementsByTagName("title")->item(0)->firstChild->data; - $y["link"] = $item->getElementsByTagName("link")->item(0)->firstChild->data; - $y["description"] = $item->getElementsByTagName("description")->item(0)->firstChild->data; - - $tnl = $item->getElementsByTagName("pubDate"); - if($tnl->length == 0) - { - $tnl = $item->getElementsByTagName("lastBuildDate"); - } - if($tnl->length != 0) - { - $tnl =$tnl->item(0)->firstChild->data; - } - else - $tnl = false; - - $y["updated"] = $tnl; - $y["type"] = $type; - - array_push($this->Common_Content, $y); - } - - - function RSS_Channel($channel) - { - $items = $channel->getElementsByTagName("item"); - - // Processing channel - - $this->RSS_Tags($channel, 0); // get description of channel, type 0 - - // Processing articles - - foreach($items as $item) - { - $this->RSS_Tags($item, 1); // get description of article, type 1 - } - } - - function RSS_Retrieve($url) - { - $doc = new DOMDocument(); - $ret = $doc->load($url); - if ($ret===false) { - $page=getUrl($url,'','','',false,'','',3); - $this->codeErreurHtml=$page['code']; - if ($this->codeErreurHttp==302) { - $url=$page['header']['Location']; - $ret = $doc->load($url); - } - } - - $channels = $doc->getElementsByTagName("channel"); - - $this->Common_Content = array(); - - foreach($channels as $channel) - { - $this->RSS_Channel($channel); - } - - return ( count($this->Common_Content) > 0); - } - - - - function Atom_Tags($item) - { - $y = array(); - $y["title"] = $item->getElementsByTagName("title")->item(0)->firstChild->data; - $y["link"] = $item->getElementsByTagName("link")->item(0)->getAttribute("href"); - $y["description"] = $item->getElementsByTagName("summary")->item(0)->firstChild->data; - $y["updated"] = $item->getElementsByTagName("updated")->item(0)->firstChild->data; - $y["type"] = 1; - - array_push($this->Common_Content, $y); - } - - function Atom_Feed($doc) - { - $entries = $doc->getElementsByTagName("entry"); - - if($entries->length == 0) return false; - - // Processing feed - - $y = array(); - $y["title"] = $doc->getElementsByTagName("title")->item(0)->firstChild->data; - $y["link"] = $doc->getElementsByTagName("link")->item(0)->getAttribute("href"); - $y["description"] = $doc->getElementsByTagName("subtitle")->item(0)->firstChild->data; - $y["updated"] = $doc->getElementsByTagName("updated")->item(0)->firstChild->data; - $y["type"] = 0; - - array_push($this->Common_Content, $y); - - // Processing articles - - foreach($entries as $entry) - { - $this->Atom_Tags($entry); // get description of article, type 1 - } - - return true; - } - - - function Atom_Retrieve($url) - { - $doc = new DOMDocument(); - $doc->load($url); - - $this->Common_Content = array(); - - return $this->Atom_Feed($doc); - - } - - - function loadRss($url, $size=200, $chanopt=true, $descopt=true, $dateopt=true) - { - $opened = false; - $page = ""; - - if($this->Atom_Retrieve($url) === false) - { - if($this->RSS_Retrieve($url) === false) - { - return false; - } - } - if($size > 0) - { - $size += 1; // add one for the channel - $recents = array_slice($this->Common_Content, 0, $size); - } - //$tabFlux=array(); - return $recents; - /* - - foreach($recents as $article) - { - $type = $article["type"]; - - if($type == 0) - { - if($chanopt != true) continue; - if($opened == true) - { - $page .="\n"; - $opened = false; - } - //$page .=""; - } - else - { - if($opened == false && $chanopt == true) - { - $page .= "
          \n"; - $opened = true; - } - } - $title = $article["title"]; - $link = $article["link"]; - $page .= "<".$Common_Style.">$title"; - - if($descopt != false) - { - $description = $article["description"]; - if($description != false) - { - $page .= "
          $description"; - } - } - if($dateopt != false) - { - $updated = $article["updated"]; - if($updated != false) - { - $page .= "
          $updated"; - } - } - $page .= "\n"; - - /* - if($type == 0) - { - $page .="
          "; - } - * - } - - if($opened == true) - { - $page .="
        \n"; - } - return $page."\n"; - */ - } -} - -?> \ No newline at end of file diff --git a/library/framework/common/strings.php b/library/framework/common/strings.php deleted file mode 100644 index fd1aab84..00000000 --- a/library/framework/common/strings.php +++ /dev/null @@ -1,424 +0,0 @@ -=$taille) - return substr($chaine,0,$taille); - $str=$chaine; - for ($i=strlen($chaine);$i<$taille;$i++) - $str = $str . $caractere_pour_combler; - } - return $str; - } - - /** - * Ajout d'anti-slashs s'il y a lieu en vu d'une insertion en BDD - * - * @param string $str Chaine de caractère - * @return unknown - */ - - function checkaddslashes($str){ - return addslashes(preg_replace('/\\[^nrt\']/i', '\\', $str)); - } - - function checkaddslashes2($str){ - if(strpos(str_replace("\'",''," $str"),"'")!=false) - return addslashes($str); - else - return $str; - } - - function trimAccent ($strWithAccent) { - $strWithAccent = htmlentities(strtolower($strWithAccent )); - $strWithAccent = preg_replace("/&(.)(acute|cedil|circ|ring|tilde|uml|grave);/", "$1", $strWithAccent ); - $strWithAccent = preg_replace("/([^a-z0-9]+)/", " ", html_entity_decode($strWithAccent )); - $strWithAccent = trim($strWithAccent , "-"); - return $strWithAccent; - } - - //function SRSaufVoyelle ($strIn, $mot1, $mot2) { - function str_replace_except_voy($mot1, $mot2, $strIn, $rule=0) { - $Voyelle=array('a','e','i','o','u','y', '1', '2', '3', '4'); - if ($mot1==$mot2) return $strIn; - if (strpos($mot2,$mot1)===false) - { - //foreach ($Voyelle as $k => $voy) - $posMot1=strpos($strIn, $mot1); - while ($posMot1!==false) { - $lettreAV=$strIn[$posMot1-1]; - $lettreAP=$strIn[$posMot1+strlen($mot1)]; - //echo "Lettre AV=$lettreAV
        "; - //echo "Lettre AP=$lettreAP
        "; - if ( ( $rule==0 && !in_array($lettreAV, $Voyelle) ) || - ( $rule==1 && !in_array($lettreAP, $Voyelle) ) || - ( $rule==2 && !in_array($lettreAV, $Voyelle) && !in_array($lettreAP, $Voyelle) )) - $strIn=substr($strIn,0,$posMot1) . $mot2 . substr($strIn,$posMot1+strlen($mot1),strlen($strIn)); - //echo "Le Mot devient : $strIn
        "; - $posMot1=strpos($strIn, $mot1, $posMot1+strlen($mot1)); - } - return $strIn; - } - //echo "Erreur : $mot2 contient $mot1 !
        "; - return $strIn; - } - - /** Retourne le phonex d'un mot - **/ - function phonex($strIn) { - if ($strIn=='') return 0.0; - $tabSonAIA=array('aina', 'eina', 'aima', 'eima'); - $tabSonAIE=array('ainr', 'eine', 'aime', 'eime'); - $tabSonAII=array('aini', 'eini', 'aimi', 'eimi'); - $tabSonAIO=array('aino', 'eino', 'aimo', 'eimo'); - $tabSonAIU=array('ainu', 'einu', 'aimu', 'eimu'); - $tabCarPhon=array('1', '2', '3', '4', '5', 'e', 'f', 'g', 'h', 'i', 'k', 'l', 'n', 'o', 'r', 's', 't', 'u', 'w', 'x', 'y', 'z'); - - /** On traite tout en minuscule **/ - $strIn=strtolower($strIn); - /** On remplace les 'Y' par des 'I' **/ - $strIn=str_replace('y', 'i', $strIn); - /** On supprime les accents **/ - $strIn=trimAccent($strIn); - /** On retire les 'H' muets sauf ceux précédés par 'C' ou 'S' **/ - $strIn = preg_replace ('/(?4; $i++) { - $strIn=str_replace($tabSonAIA[$i], 'yna', $strIn); - $strIn=str_replace($tabSonAIE[$i], 'yne', $strIn); - $strIn=str_replace($tabSonAII[$i], 'yni', $strIn); - $strIn=str_replace($tabSonAIO[$i], 'yno', $strIn); - $strIn=str_replace($tabSonAIU[$i], 'ynu', $strIn); - } - /** Remplacement des groupes de 3 lettres **/ - $strIn=str_replace('eau', 'o', $strIn); - $strIn=str_replace('oua', '2', $strIn); - $strIn=str_replace('ein', '4', $strIn); - $strIn=str_replace('ain', '4', $strIn); - /** Remplacement du son 'é' **/ - $strIn=str_replace('ai', 'y', $strIn); - $strIn=str_replace('ei', 'y', $strIn); - $strIn=str_replace('er', 'yr', $strIn); - $strIn=str_replace('ess', 'yss', $strIn); - $strIn=str_replace('et', 'yt', $strIn); - $strIn=str_replace('ez', 'yz', $strIn); - /** Remplacement des groupes de 2 lettres sauf si voyelle ou son (1 à 4) AVANT **/ - $strIn=str_replace_except_voy('an', '1', $strIn, BEFORE); - $strIn=str_replace_except_voy('am', '1', $strIn, BEFORE); - $strIn=str_replace_except_voy('en', '1', $strIn, BEFORE); - $strIn=str_replace_except_voy('em', '1', $strIn, BEFORE); - $strIn=str_replace_except_voy('in', '4', $strIn, BEFORE); - /** Remplacement du son 'SCH' **/ - $strIn=str_replace('sch', '5', $strIn); - /** Remplacement du 'S' sauf si voyelle ou son (1 à 4) avant ou après **/ - $strIn=str_replace_except_voy('in', '4', $strIn, BOTH); - /** Remplacement de groupe de 2 lettres diverses **/ - $strIn=str_replace('oe', 'e', $strIn); - $strIn=str_replace('eu', 'e', $strIn); - $strIn=str_replace('au', 'o', $strIn); - $strIn=str_replace('oi', '2', $strIn); - $strIn=str_replace('oy', '2', $strIn); - $strIn=str_replace('ou', '3', $strIn); - $strIn=str_replace('ch', '5', $strIn); - $strIn=str_replace('sh', '5', $strIn); - $strIn=str_replace('ss', 's', $strIn); - $strIn=str_replace('sc', 's', $strIn); - /** Remplacement du 'C' par 'S' s'il est suivi d'un 'E' ou d'un 'I' **/ - $strIn=str_replace('ce', 'se', $strIn); - $strIn=str_replace('ci', 'si', $strIn); - /** Remplacement divers **/ - $strIn=str_replace('c', 'k', $strIn); - $strIn=str_replace('q', 'k', $strIn); - $strIn=str_replace('qu', 'k', $strIn); - - $strIn=str_replace('ga', 'ka', $strIn); - $strIn=str_replace('go', 'ko', $strIn); - $strIn=str_replace('gu', 'ku', $strIn); - $strIn=str_replace('gy', 'ky', $strIn); - $strIn=str_replace('g2', 'k2', $strIn); - $strIn=str_replace('g1', 'k1', $strIn); - $strIn=str_replace('g3', 'k3', $strIn); - - $strIn=str_replace('a', 'o', $strIn); - $strIn=str_replace('d', 't', $strIn); - $strIn=str_replace('p', 't', $strIn); - $strIn=str_replace('j', 'g', $strIn); - $strIn=str_replace('b', 'f', $strIn); - $strIn=str_replace('v', 'f', $strIn); - $strIn=str_replace('m', 'n', $strIn); - - /** Supression des lettres dupliquées **/ - $let=$strIn[0]; - $strIn2=$let; - for ($i=1; $i0; $j--) - $result+=$sout[$j]*pow($j-1,10); - - return $result; - } - -/** -* CLASS soundex2 -* soundex2 French version -* based on the algorithm described here : http://sqlpro.developpez.com/cours/soundex/ by Frédéric BROUARD -* -* author Johan Barbier -*/ -class csoundex2 { - - /** - * public sString - * main string we work on - */ - var $sString = ''; - - /** - * vowels replacement array - */ - var $aReplaceVoy1 = array ( - 'E' => 'A', - 'I' => 'A', - 'O' => 'A', - 'U' => 'A' - ); - - /** - * consonnants replacement array - */ - var $aReplaceGrp1 = array ( - 'GUI' => 'KI', - 'GUE' => 'KE', - 'GA' => 'KA', - 'GO' => 'KO', - 'GU' => 'K', - 'CA' => 'KA', - 'CO' => 'KO', - 'CU' => 'KU', - 'Q' => 'K', - 'CC' => 'K', - 'CK' => 'K' - ); - - /** - * other replacement array - */ - var $aReplaceGrp2 = array ( - 'ASA' => 'AZA', - 'KN' => 'NN', - 'PF' => 'FF', - 'PH' => 'FF', - 'SCH' => 'SSS' - ); - - /** - * endings replacement array - */ - var $aEnd = array ( - 'A', - 'T', - 'D', - 'S' - ); - - /** - * public function build - * core function of the class, go through the whole process - * @Param string sString : the string we want to check - */ - function build ($sString) { - /** - * let's check it's a real string... - */ - if (is_string ($sString) && !empty ($sString)) { - $this -> sString = $sString; - } else { - trigger_error ('Parameter string must not be empty', E_USER_ERROR); - } - /** - * remove starting and ending spaces - */ - $this -> sString = trim ($this -> sString); - /** - * remove special french characters - */ - $this -> trimAccent (); - /** - * string to upper case - */ - $this -> sString = strtoupper ($this -> sString ); - /** - * let's remove every space in the string - */ - $this -> sString = str_replace (' ', '', $this -> sString); - /** - * let's remove every '-' in the string - */ - $this -> sString = str_replace ('-', '', $this -> sString); - /** - * let's process through the first replacement array - */ - $this -> arrReplace ($this -> aReplaceGrp1); - /** - * let's process through th vowels replacement - */ - $sChar = substr ($this -> sString, 0, 1); - $this -> sString = substr ($this -> sString, 1, strlen ($this -> sString) - 1); - $this -> arrReplace ($this -> aReplaceVoy1); - $this -> sString = $sChar.$this -> sString; - /** - * let's process through the second replacement array - */ - $this -> arrReplace ($this -> aReplaceGrp2, true); - /** - * let's remove every 'H' but those prededed by a 'C' or an 'S' - */ - $this -> sString = preg_replace ('/(? sString); - /** - * let's remove every 'Y' but those preceded by an 'A' - */ - $this -> sString = preg_replace ('/(? sString); - /** - * remove endings in aEnd - */ - $length = strlen ($this -> sString) - 1; - if (in_array ($this -> sString{$length}, $this -> aEnd)) { - $this -> sString = substr ($this -> sString, 0, $length); - } - /** - * let's remove every 'A', but the one at the beginning of the string, if any. - */ - $sChar = ''; - if ($this -> sString{0} === 'A') { - $sChar = 'A'; - } - $this -> sString = str_replace ('A', '', $this -> sString); - $this -> sString = $sChar.$this -> sString; - /** - * let's have only 1 occurence of each letter - */ - $this -> sString = preg_replace( '/(.)\1/', '$1', $this -> sString ); - /** - * let's have the final code : a 4 letters string - */ - $this -> getFinal (); - } - - /** - * private function getFinal - * gets the first 4 letters, pads the string with white space if the string length < 4 - */ - function getFinal () { - if (strlen ($this -> sString) < 4) { - $this -> sString = str_pad ($this -> sString, 4, ' ', STR_PAD_RIGHT); - } else { - $this -> sString = substr ($this -> sString, 0, 4); - } - } - - /** - * private function trimAccent - * remove every special French letters - */ - function trimAccent () { - $this -> sString = htmlentities(strtolower($this -> sString )); - $this -> sString = preg_replace("/&(.)(acute|cedil|circ|ring|tilde|uml|grave);/", "$1", $this -> sString ); - $this -> sString = preg_replace("/([^a-z0-9]+)/", "-", html_entity_decode($this -> sString )); - $this -> sString = trim($this -> sString , "-"); - } - - /** - * private function arrReplace - * replacement method, given an array - * @Param array tab : the replacement array to be used - * @Param bool pref : if false, just replace keys by values; if true, do the same but only with prefix - */ - function arrReplace (array $tab, $pref = false) { - $fromRep = array_keys ($tab); - $toRep = array_values ($tab); - if (false === $pref) { - $this -> sString = str_replace ($fromRep, $toRep, $this -> sString); - } else { - foreach ($fromRep as $clef => $val) { - $length = strlen ($val); - if (substr ($this -> sString, 0, $length) === $val) { - $this -> sString = substr_replace ($this -> sString, $toRep[$clef], 0, $length); - } - } - } - } - -} - -function soundex2($str) { - $soundex2 = new csoundex2(); - - $soundex2 -> build ($str); - return $soundex2 -> sString; -} - -function htm2txt($str) { - return trim(strip_tags( str_replace(chr(160), ' ', - str_replace('œ', 'oe', - str_replace('’', '\'', html_entity_decode($str, ENT_QUOTES)))))); -} -?> \ No newline at end of file diff --git a/library/framework/common/xml_parser.php b/library/framework/common/xml_parser.php deleted file mode 100644 index f421bd59..00000000 --- a/library/framework/common/xml_parser.php +++ /dev/null @@ -1,111 +0,0 @@ -GetXMLTree('/path/to/xmlfile.xml'); - -echo "
        ";
        -print_r($xml);
        -echo "
        "; -?> - -The path to the XML file may be a local file or a URL. -Returns the elements of the XML file into an array with -it's subelements as keys and subarrays. - -*/ - -class ParseXML{ - function GetChildren($vals, &$i) { - $children = array(); // Contains node data - if (isset($vals[$i]['value'])){ - $children['VALUE'] = $vals[$i]['value']; - } - - while (++$i < count($vals)){ - switch ($vals[$i]['type']){ - - case 'cdata': - if (isset($children['VALUE'])){ - $children['VALUE'] .= $vals[$i]['value']; - } else { - $children['VALUE'] = $vals[$i]['value']; - } - break; - - case 'complete': - if (isset($vals[$i]['attributes'])) { - $children[$vals[$i]['tag']][]['ATTRIBUTES'] = $vals[$i]['attributes']; - $index = count($children[$vals[$i]['tag']])-1; - - if (isset($vals[$i]['value'])){ - $children[$vals[$i]['tag']][$index]['VALUE'] = $vals[$i]['value']; - } else { - $children[$vals[$i]['tag']][$index]['VALUE'] = ''; - } - } else { - if (isset($vals[$i]['value'])){ - $children[$vals[$i]['tag']][]['VALUE'] = $vals[$i]['value']; - } else { - $children[$vals[$i]['tag']][]['VALUE'] = ''; - } - } - break; - - case 'open': - if (isset($vals[$i]['attributes'])) { - $children[$vals[$i]['tag']][]['ATTRIBUTES'] = $vals[$i]['attributes']; - $index = count($children[$vals[$i]['tag']])-1; - $children[$vals[$i]['tag']][$index] = array_merge($children[$vals[$i]['tag']][$index],$this->GetChildren($vals, $i)); - } else { - $children[$vals[$i]['tag']][] = $this->GetChildren($vals, $i); - } - break; - - case 'close': - return $children; - } - } - } - - function GetXMLTree($xmlloc){ - if (file_exists($xmlloc)){ - $data = implode('', file($xmlloc)); - } else { - $fp = fopen($xmlloc,'r'); - while(!feof($fp)){ - $data = $data . fread($fp, 1024); - } - - fclose($fp); - } - - $parser = xml_parser_create('ISO-8859-1'); - xml_parser_set_option($parser, XML_OPTION_SKIP_WHITE, 1); - xml_parse_into_struct($parser, $data, $vals, $index); - xml_parser_free($parser); - - $tree = array(); - $i = 0; - - if (isset($vals[$i]['attributes'])) { - $tree[$vals[$i]['tag']][]['ATTRIBUTES'] = $vals[$i]['attributes']; - $index = count($tree[$vals[$i]['tag']])-1; - $tree[$vals[$i]['tag']][$index] = array_merge($tree[$vals[$i]['tag']][$index], $this->GetChildren($vals, $i)); - } else { - $tree[$vals[$i]['tag']][] = $this->GetChildren($vals, $i); - } - return $tree; - } -} \ No newline at end of file diff --git a/library/framework/fwk.php b/library/framework/fwk.php deleted file mode 100644 index 0357c577..00000000 --- a/library/framework/fwk.php +++ /dev/null @@ -1,278 +0,0 @@ -0) define('MODE_EXEC', MODE_CLI); - else define('MODE_EXEC', MODE_WS); -/** @todo Gérer la distinction du mode WWW du WS - else define('MODE_EXEC', MODE_WWW); - */ - - /** TimeStamp Unix - ** Si $onlyMiliSec=true, retourne juste les milisec du timestamp - **/ - function microtime_float($onlyMiliSec=false) { - list($usec, $sec) = explode(' ', microtime()); - if (!$onlyMiliSec) - return ((float)$usec + (float)$sec); - else - return $usec; - } - - /** Fait une pause aléatoire entre 0 et 15 secondes par défaut - **/ - function randsleep($min_sec=0, $max_sec=15) { - sleep(rand($min_sec, $max_sec)); - } - - /** Retourne la factorielle d'un nombre : 4! = 1*2*3*4 = 24 - **/ - function factorielle($nbr) { - if($nbr === 0) // condition d'arret - return 1; - else - return $nbr*factorielle($nbr-1); - } - - /** Vérification que la variable demandé respecte bien les règles passées en paramètres - * @param mixed Variable à tester - * @param int Longueur minimum en caractère de la variable - * @param int Longueur mximum - * @param char(1) Type de variable A:Alphanumérique / N:Numérique - * @param mixed Message textuel d'erreur à afficher en cas d'erreur ou false - * @return mixed true, false ou Message d'erreur passé en paramètre - */ - function valideData($variable, $taille_min, $taille_max, $type_variable, $erreur=false){ - if ( strlen((string)$variable) < $taille_min ) - return $erreur; - - if ( strlen((string)$variable) > $taille_max ) - return $erreur; - - if ( $type_variable == 'A' ) - if ( is_string($variable) == true ) - return true; - else - return $erreur; - - elseif ( $type_variable == 'N') - { - for ($i=0; $i < strlen((string)$variable); $i++) - { - $car = substr((string)$variable,$i,1); - if ($car<'0' || $car>'9') - return $erreur; - } - return true; - } - - return $erreur; -} - - function adapteOCtets($size) { - $kb = 1024; // Kilobyte - $mb = 1024 * $kb; // Megabyte - $gb = 1024 * $mb; // Gigabyte - $tb = 1024 * $gb; // Terabyte - if($size==0) return '0'; - else if($size < $kb) return $size.'o'; - else if($size < $mb) return round($size/$kb,2).'ko'; - else if($size < $gb) return round($size/$mb,2).'Mo'; - else if($size < $tb) return round($size/$gb,2).'Go'; - else return round($size/$tb,2).'To'; - } - - /** - ** Enregistrer une information dans la log - ** - ** @param string $debugLevel E=Error, W=Warning, N=Notice, I=Info, D=Debug - ** @param string $message Message d'erreur à inscrire dans la log - ** @param integer $line __LINE__ - ** @param string $file __FILE__ - ** @param string $function __FUNCTION__ - ** @param string $class __CLASS___ - **/ - function debugLog($debugLevel, $message, $line, $file, $function, $class) { - if (!file_exists(LOG_PATH.'/debug.log')) { - $fp=@fopen(LOG_PATH.'/debug.log', 'a'); - @fwrite($fp, 'Date/Heure;Niveau;Script;Login;Password;Adresse IP;Action SOAP;Ligne;Fichier;Fonction;Classe;Domaine;POST DATA;Memory;Message'.EOL); - } else - $fp=@fopen(LOG_PATH.'/debug.log', 'a'); - @fwrite($fp, date('Y/m/d-H:i:s') .';'. $debugLevel .';'. $_SERVER['PHP_SELF'] .';'. $_SERVER['PHP_AUTH_USER'] .';'. $_SERVER['PHP_AUTH_PW'] .';'. - $_SERVER['REMOTE_ADDR'] .';'. $_SERVER['HTTP_SOAPACTION'] .';'.$line.';'. $file.';'. $function.';'. $class .';'. - @gethostbyaddr($_SERVER['REMOTE_ADDR']) .';'. $HTTP_RAW_POST_DATA .';'. @memory_get_usage().';'. $message . EOL); - @fclose($fp); - if ($debugLevel=='E'){ - if (!file_exists(LOG_PATH.'/debugError.log')) { - $fp=@fopen(LOG_PATH.'/debugError.log', 'a'); - @fwrite($fp, 'Date/Heure;Niveau;Script;Login;Password;Adresse IP;Action SOAP;Ligne;Fichier;Fonction;Classe;Domaine;POST DATA;Message'.EOL); - } else - $fp=fopen(LOG_PATH.'/debugError.log', 'a'); - @fwrite($fp, date('Y/m/d-H:i:s') .';'. $debugLevel .';'. $_SERVER['PHP_SELF'] .';'. $_SERVER['PHP_AUTH_USER'] .';'. $_SERVER['PHP_AUTH_PW'] .';'. - $_SERVER['REMOTE_ADDR'] .';'. $_SERVER['HTTP_SOAPACTION'] .';'.$line.';'. $file.';'. $function.';'. $class .';'. - @gethostbyaddr($_SERVER['REMOTE_ADDR']) .';'. $HTTP_RAW_POST_DATA .';'. @memory_get_usage().';'. $message . EOL); - @fclose($fp); - //die($message); - } - } - - function prepareString($str) { - $tabReplace = array( - 'œ' => "oe", - ''.chr(160) => '', - ); - - $str = utf8_decode($str); - $str = strtr($str,$tabReplace); - return utf8_encode($str); - //require_once 'i18n/cleanchar.php'; - //return fixEncoding($str); - } - - - /** - ** Déplacement d'un fichier. Retourne false en cas d'erreur. - ** - ** @param string $from - ** @param string $to - ** @return bool - **/ - function move($from, $to) { - return (copy($from, $to) and unlink($from)); - } - - /** Converti une IP en nombre - ** - ** @param string $ip Adresse IP - ** @return integer - **/ - function getIpNumber($ip) { - $tab=explode('.', $ip); - return (($tab[0]*256*256*256) + ($tab[1]*256*256) + ($tab[2]*256) + ($tab[3])); - } - - /** Vérifie si une IP est dans une plage du type 192.168.3.1-192.168.3.10 - ** - ** @param string $plage_1 Plage IP de début - ** @param string $plage_2 Plage IP de fin - ** @param string $ip Adresse IP à tester - ** @return boolean - **/ - function in_plage($plage_1,$plage_2,$ip){ - $ip2=getIpNumber($ip); - if ($ip2>=getIpNumber($plage_1) && $ip2<=getIpNumber($plage_2)) - return true; - else - return false; - } - - /** Controle si une adresse IP est dans une liste des IP communiquées sous la forme 192.168.3.5-192.68.3.10;192.168.3.*;192.168.3.10 - ** - ** @param string $strPlageIP La plage d'adresses IP - ** @param string $adresseIP L'adresse IP à tester - ** @return boolean - **/ - function checkPlagesIp($strPlageIP, $adresseIP) { - $connected=false; - $tabIpAllowed=explode(';', trim($strPlageIP)); - if (count($tabIpAllowed)==1 && $tabIpAllowed[0]=='') - $tabIpAllowed=array(); - - foreach ($tabIpAllowed as $ip) { - $tabPlages=explode('-', $ip); - // C'est une plage d'adresse '-' - if (isset($tabPlages[1])) - $connected=in_plage($tabPlages[0],$tabPlages[1],$adresseIP); - else { - // C'est une adresse avec ou sans masque '*' - if (preg_match('/^'.str_replace('*','.*',str_replace('.','\.',$ip)).'$/', $adresseIP) ) - $connected=true; - } - if ($connected) break; - } - if (count($tabIpAllowed)==0) return false; - elseif (!$connected) { - return false; - } - return true; - } - - -/** - * @return bool - * @param string $in - * @param string $out - * @desc compressing the file with the bzip2-extension -*/ -function bzip2 ($in, $out) -{ - if (!file_exists ($in) || !is_readable ($in)) - return false; - if ((!file_exists ($out) && !is_writeable (dirname ($out)) || (file_exists($out) && !is_writable($out)) )) - return false; - - $in_file = fopen ($in, 'rb'); - $out_file = bzopen ($out.'.bz2', 'wb'); - - while (!feof ($in_file)) { - $buffer = fgets ($in_file, 4096); - bzwrite ($out_file, $buffer, 4096); - } - - fclose ($in_file); - bzclose ($out_file); - - return true; -} - -/** - * @return bool - * @param string $in - * @param string $out - * @desc uncompressing the file with the bzip2-extension -*/ -function bunzip2 ($in, $out) -{ - if (!file_exists ($in) || !is_readable ($in)) - return false; - if ((!file_exists ($out) && !is_writeable (dirname ($out)) || (file_exists($out) && !is_writable($out)) )) - return false; - - $in_file = bzopen ($in, "rb"); - $out_file = fopen ($out, "wb"); - - while ($buffer = bzread ($in_file, 4096)) { - fwrite ($out_file, $buffer, 4096); - } - - bzclose ($in_file); - fclose ($out_file); - - return true; -} - - - -class DomDocument2 extends DOMDocument { - - function getValueFromTag($tagName) { - $items=$this->getElementsByTagName($tagName); - foreach ($items as $item) { - - return utf8_decode($item->nodeValue); - } - } - -} - - ?> \ No newline at end of file diff --git a/library/framework/mail/RFC822.php b/library/framework/mail/RFC822.php deleted file mode 100644 index bfd701c8..00000000 --- a/library/framework/mail/RFC822.php +++ /dev/null @@ -1,878 +0,0 @@ - (A comment), ted@example.com (Ted Bloggs), Barney;'; -* $structure = Mail_RFC822::parseAddressList($address_string, 'example.com', TRUE) -* print_r($structure); -*/ - -class Mail_RFC822 -{ - /** - * The address being parsed by the RFC822 object. - * @private string $address - */ - private $address = ''; - - /** - * The default domain to use for unqualified addresses. - * @private string $default_domain - */ - private $default_domain = 'localhost'; - - /** - * Should we return a nested array showing groups, or flatten everything? - * @private boolean $nestGroups - */ - private $nestGroups = true; - - /** - * Whether or not to validate atoms for non-ascii characters. - * @private boolean $validate - */ - private $validate = true; - - /** - * The array of raw addresses built up as we parse. - * @private array $addresses - */ - private $addresses = array(); - - /** - * The final array of parsed address information that we build up. - * @private array $structure - */ - private $structure = array(); - - /** - * The current error message, if any. - * @private string $error - */ - private $error = null; - - /** - * An internal counter/pointer. - * @private integer $index - */ - private $index = null; - - /** - * The number of groups that have been found in the address list. - * @private integer $num_groups - * @access public - */ - private $num_groups = 0; - - /** - * A variable so that we can tell whether or not we're inside a - * Mail_RFC822 object. - * @private boolean $mailRFC822 - */ - private $mailRFC822 = true; - - /** - * A limit after which processing stops - * @private int $limit - */ - private $limit = null; - - - /** - * Sets up the object. The address must either be set here or when - * calling parseAddressList(). One or the other. - * - * @access public - * @param string $address The address(es) to validate. - * @param string $default_domain Default domain/host etc. If not supplied, will be set to localhost. - * @param boolean $nest_groups Whether to return the structure with groups nested for easier viewing. - * @param boolean $validate Whether to validate atoms. Turn this off if you need to run addresses through before encoding the personal names, for instance. - * - * @return object Mail_RFC822 A new Mail_RFC822 object. - */ - function __construct($address = null, $default_domain = null, $nest_groups = null, $validate = null, $limit = null) - { - if (isset($address)) $this->address = $address; - if (isset($default_domain)) $this->default_domain = $default_domain; - if (isset($nest_groups)) $this->nestGroups = $nest_groups; - if (isset($validate)) $this->validate = $validate; - if (isset($limit)) $this->limit = $limit; - } - - - /** - * Starts the whole process. The address must either be set here - * or when creating the object. One or the other. - * - * @access public - * @param string $address The address(es) to validate. - * @param string $default_domain Default domain/host etc. - * @param boolean $nest_groups Whether to return the structure with groups nested for easier viewing. - * @param boolean $validate Whether to validate atoms. Turn this off if you need to run addresses through before encoding the personal names, for instance. - * - * @return array A structured array of addresses. - */ - function parseAddressList($address = null, $default_domain = null, $nest_groups = null, $validate = null, $limit = null) - { - - if (!isset($this->mailRFC822)) { - $obj = new Mail_RFC822($address, $default_domain, $nest_groups, $validate, $limit); - return $obj->parseAddressList(); - } - - if (isset($address)) $this->address = $address; - if (isset($default_domain)) $this->default_domain = $default_domain; - if (isset($nest_groups)) $this->nestGroups = $nest_groups; - if (isset($validate)) $this->validate = $validate; - if (isset($limit)) $this->limit = $limit; - - $this->structure = array(); - $this->addresses = array(); - $this->error = null; - $this->index = null; - - while ($this->address = $this->_splitAddresses($this->address)) { - continue; - } - - if ($this->address === false || isset($this->error)) { - return false; - } - - // Reset timer since large amounts of addresses can take a long time to - // get here - set_time_limit(30); - - // Loop through all the addresses - for ($i = 0; $i < count($this->addresses); $i++){ - - if (($return = $this->_validateAddress($this->addresses[$i])) === false - || isset($this->error)) { - return false; - } - - if (!$this->nestGroups) { - $this->structure = array_merge($this->structure, $return); - } else { - $this->structure[] = $return; - } - } - - return $this->structure; - } - - /** - * Splits an address into seperate addresses. - * - * @access private - * @param string $address The addresses to split. - * @return boolean Success or failure. - */ - function _splitAddresses($address) - { - - if (!empty($this->limit) AND count($this->addresses) == $this->limit) { - return ''; - } - - if ($this->_isGroup($address) && !isset($this->error)) { - $split_char = ';'; - $is_group = true; - } elseif (!isset($this->error)) { - $split_char = ','; - $is_group = false; - } elseif (isset($this->error)) { - return false; - } - - // Split the string based on the above ten or so lines. - $parts = explode($split_char, $address); - $string = $this->_splitCheck($parts, $split_char); - - // If a group... - if ($is_group) { - // If $string does not contain a colon outside of - // brackets/quotes etc then something's fubar. - - // First check there's a colon at all: - if (strpos($string, ':') === false) { - $this->error = 'Invalid address: ' . $string; - return false; - } - - // Now check it's outside of brackets/quotes: - if (!$this->_splitCheck(explode(':', $string), ':')) - return false; - - // We must have a group at this point, so increase the counter: - $this->num_groups++; - } - - // $string now contains the first full address/group. - // Add to the addresses array. - $this->addresses[] = array( - 'address' => trim($string), - 'group' => $is_group - ); - - // Remove the now stored address from the initial line, the +1 - // is to account for the explode character. - $address = trim(substr($address, strlen($string) + 1)); - - // If the next char is a comma and this was a group, then - // there are more addresses, otherwise, if there are any more - // chars, then there is another address. - if ($is_group && substr($address, 0, 1) == ','){ - $address = trim(substr($address, 1)); - return $address; - - } elseif (strlen($address) > 0) { - return $address; - - } else { - return ''; - } - - // If you got here then something's off - return false; - } - - /** - * Checks for a group at the start of the string. - * - * @access private - * @param string $address The address to check. - * @return boolean Whether or not there is a group at the start of the string. - */ - function _isGroup($address) - { - // First comma not in quotes, angles or escaped: - $parts = explode(',', $address); - $string = $this->_splitCheck($parts, ','); - - // Now we have the first address, we can reliably check for a - // group by searching for a colon that's not escaped or in - // quotes or angle brackets. - if (count($parts = explode(':', $string)) > 1) { - $string2 = $this->_splitCheck($parts, ':'); - return ($string2 !== $string); - } else { - return false; - } - } - - /** - * A common function that will check an exploded string. - * - * @access private - * @param array $parts The exloded string. - * @param string $char The char that was exploded on. - * @return mixed False if the string contains unclosed quotes/brackets, or the string on success. - */ - function _splitCheck($parts, $char) - { - $string = $parts[0]; - - for ($i = 0; $i < count($parts); $i++) { - if ($this->_hasUnclosedQuotes($string) - || $this->_hasUnclosedBrackets($string, '<>') - || $this->_hasUnclosedBrackets($string, '[]') - || $this->_hasUnclosedBrackets($string, '()') - || substr($string, -1) == '\\') { - if (isset($parts[$i + 1])) { - $string = $string . $char . $parts[$i + 1]; - } else { - $this->error = 'Invalid address spec. Unclosed bracket or quotes'; - return false; - } - } else { - $this->index = $i; - break; - } - } - - return $string; - } - - /** - * Checks if a string has an unclosed quotes or not. - * - * @access private - * @param string $string The string to check. - * @return boolean True if there are unclosed quotes inside the string, false otherwise. - */ - function _hasUnclosedQuotes($string) - { - $string = explode('"', $string); - $string_cnt = count($string); - - for ($i = 0; $i < (count($string) - 1); $i++) - if (substr($string[$i], -1) == '\\') - $string_cnt--; - - return ($string_cnt % 2 === 0); - } - - /** - * Checks if a string has an unclosed brackets or not. IMPORTANT: - * This function handles both angle brackets and square brackets; - * - * @access private - * @param string $string The string to check. - * @param string $chars The characters to check for. - * @return boolean True if there are unclosed brackets inside the string, false otherwise. - */ - function _hasUnclosedBrackets($string, $chars) - { - $num_angle_start = substr_count($string, $chars[0]); - $num_angle_end = substr_count($string, $chars[1]); - - $this->_hasUnclosedBracketsSub($string, $num_angle_start, $chars[0]); - $this->_hasUnclosedBracketsSub($string, $num_angle_end, $chars[1]); - - if ($num_angle_start < $num_angle_end) { - $this->error = 'Invalid address spec. Unmatched quote or bracket (' . $chars . ')'; - return false; - } else { - return ($num_angle_start > $num_angle_end); - } - } - - /** - * Sub function that is used only by hasUnclosedBrackets(). - * - * @access private - * @param string $string The string to check. - * @param integer &$num The number of occurences. - * @param string $char The character to count. - * @return integer The number of occurences of $char in $string, adjusted for backslashes. - */ - function _hasUnclosedBracketsSub($string, &$num, $char) - { - $parts = explode($char, $string); - for ($i = 0; $i < count($parts); $i++){ - if (substr($parts[$i], -1) == '\\' || $this->_hasUnclosedQuotes($parts[$i])) - $num--; - if (isset($parts[$i + 1])) - $parts[$i + 1] = $parts[$i] . $char . $parts[$i + 1]; - } - - return $num; - } - - /** - * Function to begin checking the address. - * - * @access private - * @param string $address The address to validate. - * @return mixed False on failure, or a structured array of address information on success. - */ - function _validateAddress($address) - { - $is_group = false; - - if ($address['group']) { - $is_group = true; - - // Get the group part of the name - $parts = explode(':', $address['address']); - $groupname = $this->_splitCheck($parts, ':'); - $structure = array(); - - // And validate the group part of the name. - if (!$this->_validatePhrase($groupname)){ - $this->error = 'Group name did not validate.'; - return false; - } else { - // Don't include groups if we are not nesting - // them. This avoids returning invalid addresses. - if ($this->nestGroups) { - $structure = new stdClass; - $structure->groupname = $groupname; - } - } - - $address['address'] = ltrim(substr($address['address'], strlen($groupname . ':'))); - } - - // If a group then split on comma and put into an array. - // Otherwise, Just put the whole address in an array. - if ($is_group) { - while (strlen($address['address']) > 0) { - $parts = explode(',', $address['address']); - $addresses[] = $this->_splitCheck($parts, ','); - $address['address'] = trim(substr($address['address'], strlen(end($addresses) . ','))); - } - } else { - $addresses[] = $address['address']; - } - - // Check that $addresses is set, if address like this: - // Groupname:; - // Then errors were appearing. - if (!isset($addresses)){ - $this->error = 'Empty group.'; - return false; - } - - for ($i = 0; $i < count($addresses); $i++) { - $addresses[$i] = trim($addresses[$i]); - } - - // Validate each mailbox. - // Format could be one of: name - // geezer@domain.com - // geezer - // ... or any other format valid by RFC 822. - array_walk($addresses, array($this, 'validateMailbox')); - - // Nested format - if ($this->nestGroups) { - if ($is_group) { - $structure->addresses = $addresses; - } else { - $structure = $addresses[0]; - } - - // Flat format - } else { - if ($is_group) { - $structure = array_merge($structure, $addresses); - } else { - $structure = $addresses; - } - } - - return $structure; - } - - /** - * Function to validate a phrase. - * - * @access private - * @param string $phrase The phrase to check. - * @return boolean Success or failure. - */ - function _validatePhrase($phrase) - { - // Splits on one or more Tab or space. - $parts = preg_split('/[ \\x09]+/', $phrase, -1, PREG_SPLIT_NO_EMPTY); - - $phrase_parts = array(); - while (count($parts) > 0){ - $phrase_parts[] = $this->_splitCheck($parts, ' '); - for ($i = 0; $i < $this->index + 1; $i++) - array_shift($parts); - } - - for ($i = 0; $i < count($phrase_parts); $i++) { - // If quoted string: - if (substr($phrase_parts[$i], 0, 1) == '"') { - if (!$this->_validateQuotedString($phrase_parts[$i])) - return false; - continue; - } - - // Otherwise it's an atom: - if (!$this->_validateAtom($phrase_parts[$i])) return false; - } - - return true; - } - - /** - * Function to validate an atom which from rfc822 is: - * atom = 1* - * - * If validation ($this->validate) has been turned off, then - * validateAtom() doesn't actually check anything. This is so that you - * can split a list of addresses up before encoding personal names - * (umlauts, etc.), for example. - * - * @access private - * @param string $atom The string to check. - * @return boolean Success or failure. - */ - function _validateAtom($atom) - { - if (!$this->validate) { - // Validation has been turned off; assume the atom is okay. - return true; - } - - // Check for any char from ASCII 0 - ASCII 127 - if (!preg_match('/^[\\x00-\\x7E]+$/i', $atom, $matches)) { - return false; - } - - // Check for specials: - if (preg_match('/[][()<>@,;\\:". ]/', $atom)) { - return false; - } - - // Check for control characters (ASCII 0-31): - if (preg_match('/[\\x00-\\x1F]+/', $atom)) { - return false; - } - - return true; - } - - /** - * Function to validate quoted string, which is: - * quoted-string = <"> *(qtext/quoted-pair) <"> - * - * @access private - * @param string $qstring The string to check - * @return boolean Success or failure. - */ - function _validateQuotedString($qstring) - { - // Leading and trailing " - $qstring = substr($qstring, 1, -1); - - // Perform check. - return !(preg_match('/(.)[\x0D\\\\"]/', $qstring, $matches) && $matches[1] != '\\'); - } - - /** - * Function to validate a mailbox, which is: - * mailbox = addr-spec ; simple address - * / phrase route-addr ; name and route-addr - * - * @access public - * @param string &$mailbox The string to check. - * @return boolean Success or failure. - */ - function validateMailbox(&$mailbox) - { - // A couple of defaults. - $phrase = ''; - $comment = ''; - - // Catch any RFC822 comments and store them separately - $_mailbox = $mailbox; - while (strlen(trim($_mailbox)) > 0) { - $parts = explode('(', $_mailbox); - $before_comment = $this->_splitCheck($parts, '('); - if ($before_comment != $_mailbox) { - // First char should be a ( - $comment = substr(str_replace($before_comment, '', $_mailbox), 1); - $parts = explode(')', $comment); - $comment = $this->_splitCheck($parts, ')'); - $comments[] = $comment; - - // +1 is for the trailing ) - $_mailbox = substr($_mailbox, strpos($_mailbox, $comment)+strlen($comment)+1); - } else { - break; - } - } - - for($i=0; $i' && substr($mailbox, 0, 1) != '<') { - $parts = explode('<', $mailbox); - $name = $this->_splitCheck($parts, '<'); - - $phrase = trim($name); - $route_addr = trim(substr($mailbox, strlen($name.'<'), -1)); - - if ($this->_validatePhrase($phrase) === false || ($route_addr = $this->_validateRouteAddr($route_addr)) === false) - return false; - - // Only got addr-spec - } else { - // First snip angle brackets if present. - if (substr($mailbox,0,1) == '<' && substr($mailbox,-1) == '>') - $addr_spec = substr($mailbox,1,-1); - else - $addr_spec = $mailbox; - - if (($addr_spec = $this->_validateAddrSpec($addr_spec)) === false) - return false; - } - - // Construct the object that will be returned. - $mbox = new stdClass(); - - // Add the phrase (even if empty) and comments - $mbox->personal = $phrase; - $mbox->comment = isset($comments) ? $comments : array(); - - if (isset($route_addr)) { - $mbox->mailbox = $route_addr['local_part']; - $mbox->host = $route_addr['domain']; - $route_addr['adl'] !== '' ? $mbox->adl = $route_addr['adl'] : ''; - } else { - $mbox->mailbox = $addr_spec['local_part']; - $mbox->host = $addr_spec['domain']; - } - - $mailbox = $mbox; - return true; - } - - /** - * This function validates a route-addr which is: - * route-addr = "<" [route] addr-spec ">" - * - * Angle brackets have already been removed at the point of - * getting to this function. - * - * @access private - * @param string $route_addr The string to check. - * @return mixed False on failure, or an array containing validated address/route information on success. - */ - function _validateRouteAddr($route_addr) - { - // Check for colon. - if (strpos($route_addr, ':') !== false) { - $parts = explode(':', $route_addr); - $route = $this->_splitCheck($parts, ':'); - } else { - $route = $route_addr; - } - - // If $route is same as $route_addr then the colon was in - // quotes or brackets or, of course, non existent. - if ($route === $route_addr){ - unset($route); - $addr_spec = $route_addr; - if (($addr_spec = $this->_validateAddrSpec($addr_spec)) === false) { - return false; - } - } else { - // Validate route part. - if (($route = $this->_validateRoute($route)) === false) { - return false; - } - - $addr_spec = substr($route_addr, strlen($route . ':')); - - // Validate addr-spec part. - if (($addr_spec = $this->_validateAddrSpec($addr_spec)) === false) { - return false; - } - } - - if (isset($route)) { - $return['adl'] = $route; - } else { - $return['adl'] = ''; - } - - $return = array_merge($return, $addr_spec); - return $return; - } - - /** - * Function to validate a route, which is: - * route = 1#("@" domain) ":" - * - * @access private - * @param string $route The string to check. - * @return mixed False on failure, or the validated $route on success. - */ - function _validateRoute($route) - { - // Split on comma. - $domains = explode(',', trim($route)); - - for ($i = 0; $i < count($domains); $i++) { - $domains[$i] = str_replace('@', '', trim($domains[$i])); - if (!$this->_validateDomain($domains[$i])) return false; - } - - return $route; - } - - /** - * Function to validate a domain, though this is not quite what - * you expect of a strict internet domain. - * - * domain = sub-domain *("." sub-domain) - * - * @access private - * @param string $domain The string to check. - * @return mixed False on failure, or the validated domain on success. - */ - function _validateDomain($domain) - { - // Note the different use of $subdomains and $sub_domains - $subdomains = explode('.', $domain); - - while (count($subdomains) > 0) { - $sub_domains[] = $this->_splitCheck($subdomains, '.'); - for ($i = 0; $i < $this->index + 1; $i++) - array_shift($subdomains); - } - - for ($i = 0; $i < count($sub_domains); $i++) { - if (!$this->_validateSubdomain(trim($sub_domains[$i]))) - return false; - } - - // Managed to get here, so return input. - return $domain; - } - - /** - * Function to validate a subdomain: - * subdomain = domain-ref / domain-literal - * - * @access private - * @param string $subdomain The string to check. - * @return boolean Success or failure. - */ - function _validateSubdomain($subdomain) - { - if (preg_match('|^\[(.*)]$|', $subdomain, $arr)){ - if (!$this->_validateDliteral($arr[1])) return false; - } else { - if (!$this->_validateAtom($subdomain)) return false; - } - - // Got here, so return successful. - return true; - } - - /** - * Function to validate a domain literal: - * domain-literal = "[" *(dtext / quoted-pair) "]" - * - * @access private - * @param string $dliteral The string to check. - * @return boolean Success or failure. - */ - function _validateDliteral($dliteral) - { - return !preg_match('/(.)[][\x0D\\\\]/', $dliteral, $matches) && $matches[1] != '\\'; - } - - /** - * Function to validate an addr-spec. - * - * addr-spec = local-part "@" domain - * - * @access private - * @param string $addr_spec The string to check. - * @return mixed False on failure, or the validated addr-spec on success. - */ - function _validateAddrSpec($addr_spec) - { - $addr_spec = trim($addr_spec); - - // Split on @ sign if there is one. - if (strpos($addr_spec, '@') !== false) { - $parts = explode('@', $addr_spec); - $local_part = $this->_splitCheck($parts, '@'); - $domain = substr($addr_spec, strlen($local_part . '@')); - - // No @ sign so assume the default domain. - } else { - $local_part = $addr_spec; - $domain = $this->default_domain; - } - - if (($local_part = $this->_validateLocalPart($local_part)) === false) return false; - if (($domain = $this->_validateDomain($domain)) === false) return false; - - // Got here so return successful. - return array('local_part' => $local_part, 'domain' => $domain); - } - - /** - * Function to validate the local part of an address: - * local-part = word *("." word) - * - * @access private - * @param string $local_part - * @return mixed False on failure, or the validated local part on success. - */ - function _validateLocalPart($local_part) - { - $parts = explode('.', $local_part); - - // Split the local_part into words. - while (count($parts) > 0){ - $words[] = $this->_splitCheck($parts, '.'); - for ($i = 0; $i < $this->index + 1; $i++) { - array_shift($parts); - } - } - - // Validate each word. - for ($i = 0; $i < count($words); $i++) { - if ($this->_validatePhrase(trim($words[$i])) === false) return false; - } - - // Managed to get here, so return the input. - return $local_part; - } - - /** - * Returns an approximate count of how many addresses are - * in the given string. This is APPROXIMATE as it only splits - * based on a comma which has no preceding backslash. Could be - * useful as large amounts of addresses will end up producing - * *large* structures when used with parseAddressList(). - * - * @param string $data Addresses to count - * @return int Approximate count - */ - function approximateCount($data) - { - return count(preg_split('/(?@. This can be - * sufficient for most people. Optional stricter mode can - * be utilised which restricts mailbox characters allowed - * to alphanumeric, full stop, hyphen and underscore. - * - * @param string $data Address to check - * @param boolean $strict Optional stricter mode - * @return mixed False if it fails, an indexed array - * username/domain if it matches - */ - function isValidInetAddress($data, $strict = false) - { - $regex = $strict ? '/^([.0-9a-z_-]+)@(([0-9a-z-]+\.)+[0-9a-z]{2,4})$/i' : '/^([*+!.&#$|\'\\%\/0-9a-z^_`{}=?~:-]+)@(([0-9a-z-]+\.)+[0-9a-z]{2,4})$/i'; - if (preg_match($regex, trim($data), $matches)) { - return array($matches[1], $matches[2]); - } else { - return false; - } - } -} - -?> \ No newline at end of file diff --git a/library/framework/mail/htmlMimeMail5.php b/library/framework/mail/htmlMimeMail5.php deleted file mode 100644 index 5830e954..00000000 --- a/library/framework/mail/htmlMimeMail5.php +++ /dev/null @@ -1,1111 +0,0 @@ -attachments = array(); - $this->html_images = array(); - $this->headers = array(); - $this->is_built = false; - $this->text = ''; - $this->sendmail_path = '/usr/lib/sendmail -ti'; - - /** - * If you want the auto load functionality - * to find other image/file types, add the - * extension and content type here. - */ - $this->image_types = array('gif' => 'image/gif', - 'jpg' => 'image/jpeg', - 'jpeg' => 'image/jpeg', - 'jpe' => 'image/jpeg', - 'bmp' => 'image/bmp', - 'png' => 'image/png', - 'tif' => 'image/tiff', - 'tiff' => 'image/tiff', - 'swf' => 'application/x-shockwave-flash'); - - /** - * Set these up - */ - $this->build_params['html_encoding'] = new QPrintEncoding(); - $this->build_params['text_encoding'] = new SevenBitEncoding(); - $this->build_params['html_charset'] = 'ISO-8859-1'; - $this->build_params['text_charset'] = 'ISO-8859-1'; - $this->build_params['head_charset'] = 'ISO-8859-1'; - $this->build_params['text_wrap'] = 998; - - /** - * Defaults for smtp sending - */ - if (!empty($_SERVER['HTTP_HOST'])) { - $helo = $_SERVER['HTTP_HOST']; - - } elseif (!empty($_SERVER['SERVER_NAME'])) { - $helo = $_SERVER['SERVER_NAME']; - - } else { - $helo = 'localhost'; - } - - $this->smtp_params['host'] = 'localhost'; - $this->smtp_params['port'] = 25; - $this->smtp_params['helo'] = $helo; - $this->smtp_params['auth'] = false; - $this->smtp_params['user'] = ''; - $this->smtp_params['pass'] = ''; - - /** - * Make sure the MIME version header is first. - */ - $this->headers['MIME-Version'] = '1.0'; - $this->headers['X-Mailer'] = 'htmlMimeMail5 '; - } - - /** - * Accessor to set the CRLF style - * - * @param string $crlf CRLF style to use. - * Use \r\n for SMTP, and \n - * for normal. - */ - public function setCRLF($crlf = "\n") - { - if (!defined('CRLF')) { - define('CRLF', $crlf, true); - } - - if (!defined('MAIL_MIMEPART_CRLF')) { - define('MAIL_MIMEPART_CRLF', $crlf, true); - } - } - - /** - * Accessor to set the SMTP parameters - * - * @param string $host Hostname - * @param string $port Port - * @param string $helo HELO string to use - * @param bool $auth User authentication or not - * @param string $user Username - * @param string $pass Password - */ - public function setSMTPParams($host = null, $port = null, $helo = null, $auth = null, $user = null, $pass = null) - { - if (!is_null($host)) $this->smtp_params['host'] = $host; - if (!is_null($port)) $this->smtp_params['port'] = $port; - if (!is_null($helo)) $this->smtp_params['helo'] = $helo; - if (!is_null($auth)) $this->smtp_params['auth'] = $auth; - if (!is_null($user)) $this->smtp_params['user'] = $user; - if (!is_null($pass)) $this->smtp_params['pass'] = $pass; - } - - /** - * Sets sendmail path and options (optionally) (when directly piping to sendmail) - * - * @param string $path Path and options for sendmail command - */ - public function setSendmailPath($path) - { - $this->sendmail_path = $path; - } - - /** - * Accessor function to set the text encoding - * - * @param object $encoding Text encoding to use - */ - public function setTextEncoding(iEncoding $encoding) - { - $this->build_params['text_encoding'] = $encoding; - } - - /** - * Accessor function to set the HTML encoding - * - * @param object $encoding HTML encoding to use - */ - public function setHTMLEncoding(iEncoding $encoding) - { - $this->build_params['html_encoding'] = $encoding; - } - - /** - * Accessor function to set the text charset - * - * @param string $charset Character set to use - */ - public function setTextCharset($charset = 'ISO-8859-1') - { - $this->build_params['text_charset'] = $charset; - } - - /** - * Accessor function to set the HTML charset - * - * @param string $charset Character set to use - */ - public function setHTMLCharset($charset = 'ISO-8859-1') - { - $this->build_params['html_charset'] = $charset; - } - - /** - * Accessor function to set the header encoding charset - * - * @param string $charset Character set to use - */ - public function setHeadCharset($charset = 'ISO-8859-1') - { - $this->build_params['head_charset'] = $charset; - } - - /** - * Accessor function to set the text wrap count - * - * @param integer $count Point at which to wrap text - */ - public function setTextWrap($count = 998) - { - $this->build_params['text_wrap'] = $count; - } - - /** - * Accessor to set a header - * - * @param string $name Name of header - * @param string $value Value of header - */ - public function setHeader($name, $value) - { - $this->headers[$name] = $value; - } - - /** - * Accessor to add a Subject: header - * - * @param string $subject Subject to set - */ - public function setSubject($subject) - { - $this->headers['Subject'] = $subject; - } - - /** - * Accessor to add a From: header - * - * @param string $from From address - */ - public function setFrom($from) - { - $this->headers['From'] = $from; - } - - /** - * Accessor to set priority. Priority given should be either - * high, normal or low. Can also be specified numerically, - * being 1, 3 or 5 (respectively). - * - * @param mixed $priority The priority to use. - */ - public function setPriority($priority = 'normal') - { - switch (strtolower($priority)) { - case 'high': - case '1': - $this->headers['X-Priority'] = '1'; - $this->headers['X-MSMail-Priority'] = 'High'; - break; - - case 'normal': - case '3': - $this->headers['X-Priority'] = '3'; - $this->headers['X-MSMail-Priority'] = 'Normal'; - break; - - case 'low': - case '5': - $this->headers['X-Priority'] = '5'; - $this->headers['X-MSMail-Priority'] = 'Low'; - break; - } - } - - /** - * Accessor to set the return path - * - * @param string $return_path Return path to use - */ - public function setReturnPath($return_path) - { - $this->return_path = $return_path; - } - - /** - * Accessor to add a Cc: header - * - * @param string $cc Carbon Copy address - */ - public function setCc($cc) - { - $this->headers['Cc'] = $cc; - } - - /** - * Accessor to add a Bcc: header - * - * @param string $bcc Blind Carbon Copy address - */ - public function setBcc($bcc) - { - $this->headers['Bcc'] = $bcc; - } - - /** - * Adds plain text. Use this function - * when NOT sending html email - * - * @param string $text Plain text of email - */ - public function setText($text) - { - $this->text = $text; - } - - /** - * Adds HTML to the emails, with an associated text part. - * If third part is given, images in the email will be loaded - * from this directory. - * - * @param string $html HTML part of email - * @param string $images_dir Images directory - */ - function setHTML($html, $images_dir = null) - { - $this->html = $html; - - if (!empty($images_dir)) { - $this->findHtmlImages($images_dir); - } - } - - /** - * Function for extracting images from - * html source. This function will look - * through the html code supplied by setHTML() - * and find any file that ends in one of the - * extensions defined in $obj->image_types. - * If the file exists it will read it in and - * embed it, (not an attachment). - * - * @param string $images_dir Images directory to look in - */ - private function findHtmlImages($images_dir) - { - // Build the list of image extensions - $extensions = array_keys($this->image_types); - - preg_match_all('/(?:"|\')([^"\']+\.('.implode('|', $extensions).'))(?:"|\')/Ui', $this->html, $matches); - - foreach ($matches[1] as $m) { - if (file_exists($images_dir . $m)) { - $html_images[] = $m; - $this->html = str_replace($m, basename($m), $this->html); - } - } - - /** - * Go thru found images - */ - if (!empty($html_images)) { - - // If duplicate images are embedded, they may show up as attachments, so remove them. - $html_images = array_unique($html_images); - sort($html_images); - - foreach ($html_images as $img) { - if ($image = file_get_contents($images_dir . $img)) { - $ext = preg_replace('#^.*\.(\w{3,4})$#e', 'strtolower("$1")', $img); - $content_type = $this->image_types[$ext]; - $this->addEmbeddedImage(new stringEmbeddedImage($image, basename($img), $content_type)); - } - } - } - } - - /** - * Adds an image to the list of embedded - * images. - * - * @param string $object Embedded image object - */ - public function addEmbeddedImage($embeddedImage) - { - $embeddedImage->cid = md5(uniqid(time())); - - $this->html_images[] = $embeddedImage; - } - - - /** - * Adds a file to the list of attachments. - * - * @param string $attachment Attachment object - */ - public function addAttachment($attachment) - { - $this->attachments[] = $attachment; - } - - /** - * Adds a text subpart to a mime_part object - * - * @param object $obj - * @return object Mime part object - */ - private function addTextPart(&$message) - { - $params['content_type'] = 'text/plain'; - $params['encoding'] = $this->build_params['text_encoding']->getType(); - $params['charset'] = $this->build_params['text_charset']; - - if (!empty($message)) { - $message->addSubpart($this->text, $params); - } else { - $message = new Mail_mimePart($this->text, $params); - } - } - - /** - * Adds a html subpart to a mime_part object - * - * @param object $obj - * @return object Mime part object - */ - private function addHtmlPart(&$message) - { - $params['content_type'] = 'text/html'; - $params['encoding'] = $this->build_params['html_encoding']->getType(); - $params['charset'] = $this->build_params['html_charset']; - - if (!empty($message)) { - $message->addSubpart($this->html, $params); - } else { - $message = new Mail_mimePart($this->html, $params); - } - } - - /** - * Starts a message with a mixed part - * - * @return object Mime part object - */ - private function addMixedPart(&$message) - { - $params['content_type'] = 'multipart/mixed'; - - $message = new Mail_mimePart('', $params); - } - - /** - * Adds an alternative part to a mime_part object - * - * @param object $obj - * @return object Mime part object - */ - private function addAlternativePart(&$message) - { - $params['content_type'] = 'multipart/alternative'; - - if (!empty($message)) { - return $message->addSubpart('', $params); - } else { - $message = new Mail_mimePart('', $params); - } - } - - /** - * Adds a html subpart to a mime_part object - * - * @param object $obj - * @return object Mime part object - */ - private function addRelatedPart(&$message) - { - $params['content_type'] = 'multipart/related'; - - if (!empty($message)) { - return $message->addSubpart('', $params); - } else { - $message = new Mail_mimePart('', $params); - } - } - - /** - * Adds all html images to a mime_part object - * - * @param object $obj Message object - */ - private function addHtmlImageParts(&$message) - { - foreach ($this->html_images as $value) { - $params['content_type'] = $value->contentType; - $params['encoding'] = $value->encoding->getType(); - $params['disposition'] = 'inline'; - $params['dfilename'] = $value->name; - $params['cid'] = $value->cid; - - $message->addSubpart($value->data, $params); - } - } - - /** - * Adds all attachments to a mime_part object - * - * @param object $obj Message object - */ - private function addAttachmentParts(&$message) - { - foreach ($this->attachments as $value) { - $params['content_type'] = $value->contentType; - $params['encoding'] = $value->encoding->getType(); - $params['disposition'] = 'attachment'; - $params['dfilename'] = $value->name; - - $message->addSubpart($value->data, $params); - } - } - - /** - * Builds the multipart message. - */ - private function build() - { - if (!empty($this->html_images)) { - foreach ($this->html_images as $value) { - $quoted = preg_quote($value->name); - $cid = preg_quote($value->cid); - - $this->html = preg_replace("#src=\"$quoted\"|src='$quoted'#", "src=\"cid:$cid\"", $this->html); - $this->html = preg_replace("#background=\"$quoted\"|background='$quoted'#", "background=\"cid:$cid\"", $this->html); - } - } - - $message = null; - $attachments = !empty($this->attachments); - $html_images = !empty($this->html_images); - $html = !empty($this->html); - $text = !$html; - - switch (true) { - case $text: - $message = null; - if ($attachments) { - $this->addMixedPart($message); - } - - $this->addTextPart($message); - - // Attachments - $this->addAttachmentParts($message); - break; - - case $html AND !$attachments AND !$html_images: - $this->addAlternativePart($message); - - $this->addTextPart($message); - $this->addHtmlPart($message); - break; - - case $html AND !$attachments AND $html_images: - $this->addRelatedPart($message); - $alt = $this->addAlternativePart($message); - - $this->addTextPart($alt); - $this->addHtmlPart($alt); - - // HTML images - $this->addHtmlImageParts($message); - break; - - case $html AND $attachments AND !$html_images: - $this->addMixedPart($message); - $alt = $this->addAlternativePart($message); - - $this->addTextPart($alt); - $this->addHtmlPart($alt); - - // Attachments - $this->addAttachmentParts($message); - break; - - case $html AND $attachments AND $html_images: - $this->addMixedPart($message); - $rel = $this->addRelatedPart($message); - $alt = $this->addAlternativePart($rel); - - $this->addTextPart($alt); - $this->addHtmlPart($alt); - - // HTML images - $this->addHtmlImageParts($rel); - - // Attachments - $this->addAttachmentParts($message); - break; - - } - - if (isset($message)) { - $output = $message->encode(); - $this->output = $output['body']; - $this->headers = array_merge($this->headers, $output['headers']); - - // Figure out hostname - if (!empty($_SERVER['HTTP_HOST'])) { - $hostname = $_SERVER['HTTP_HOST']; - - } else if (!empty($_SERVER['SERVER_NAME'])) { - $hostname = $_SERVER['SERVER_NAME']; - - } else if (!empty($_ENV['HOSTNAME'])) { - $hostname = $_ENV['HOSTNAME']; - - } else { - $hostname = 'localhost'; - } - - $message_id = sprintf('<%s.%s@%s>', base_convert(time(), 10, 36), base_convert(rand(), 10, 36), $hostname); - $this->headers['Message-ID'] = $message_id; - - $this->is_built = true; - return true; - } else { - return false; - } - } - - /** - * Function to encode a header if necessary - * according to RFC2047 - * - * @param string $input Value to encode - * @param string $charset Character set to use - * @return string Encoded value - */ - private function encodeHeader($input, $charset = 'ISO-8859-1') - { - preg_match_all('/(\w*[\x80-\xFF]+\w*)/', $input, $matches); - foreach ($matches[1] as $value) { - $replacement = preg_replace('/([\x80-\xFF])/e', '"=" . strtoupper(dechex(ord("\1")))', $value); - $input = str_replace($value, '=?' . $charset . '?Q?' . $replacement . '?=', $input); - } - - return $input; - } - - /** - * Sends the mail. - * - * @param array $recipients Array of receipients to send the mail to - * @param string $type How to send the mail ('mail' or 'sendmail' or 'smtp') - * @return mixed - */ - public function send($recipients, $type = 'mail') - { - if (!defined('CRLF')) { - $this->setCRLF( ($type == 'mail' OR $type == 'sendmail') ? "\n" : "\r\n"); - } - - if (!$this->is_built) { - $this->build(); - } - - switch ($type) { - case 'mail': - $subject = ''; - if (!empty($this->headers['Subject'])) { - $subject = $this->encodeHeader($this->headers['Subject'], $this->build_params['head_charset']); - unset($this->headers['Subject']); - } - - // Get flat representation of headers - foreach ($this->headers as $name => $value) { - $headers[] = $name . ': ' . $this->encodeHeader($value, $this->build_params['head_charset']); - } - - $to = $this->encodeHeader(implode(', ', $recipients), $this->build_params['head_charset']); - - if (!empty($this->return_path)) { - $result = mail($to, $subject, $this->output, implode(CRLF, $headers), '-f' . $this->return_path); - } else { - $result = mail($to, $subject, $this->output, implode(CRLF, $headers)); - } - - // Reset the subject in case mail is resent - if ($subject !== '') { - $this->headers['Subject'] = $subject; - } - - - // Return - return $result; - break; - - case 'sendmail': - // Get flat representation of headers - foreach ($this->headers as $name => $value) { - $headers[] = $name . ': ' . $this->encodeHeader($value, $this->build_params['head_charset']); - } - - // Encode To: - $headers[] = 'To: ' . $this->encodeHeader(implode(', ', $recipients), $this->build_params['head_charset']); - - // Get return path arg for sendmail command if necessary - $returnPath = ''; - if (!empty($this->return_path)) { - $returnPath = '-f' . $this->return_path; - } - - $pipe = popen($this->sendmail_path . " " . $returnPath, 'w'); - $bytes = fputs($pipe, implode(CRLF, $headers) . CRLF . CRLF . $this->output); - $r = pclose($pipe); - - return $r; - break; - - case 'smtp': - require_once(dirname(__FILE__) . '/smtp.php'); - require_once(dirname(__FILE__) . '/RFC822.php'); - $smtp = &smtp::connect($this->smtp_params); - - // Parse recipients argument for internet addresses - foreach ($recipients as $recipient) { - $addresses = Mail_RFC822::parseAddressList($recipient, $this->smtp_params['helo'], null, false); - foreach ($addresses as $address) { - $smtp_recipients[] = sprintf('%s@%s', $address->mailbox, $address->host); - } - } - unset($addresses); // These are reused - unset($address); // These are reused - - // Get flat representation of headers, parsing - // Cc and Bcc as we go - foreach ($this->headers as $name => $value) { - if ($name == 'Cc' OR $name == 'Bcc') { - $addresses = Mail_RFC822::parseAddressList($value, $this->smtp_params['helo'], null, false); - foreach ($addresses as $address) { - $smtp_recipients[] = sprintf('%s@%s', $address->mailbox, $address->host); - } - } - if ($name == 'Bcc') { - continue; - } - $headers[] = $name . ': ' . $this->encodeHeader($value, $this->build_params['head_charset']); - } - // Add To header based on $recipients argument - $headers[] = 'To: ' . $this->encodeHeader(implode(', ', $recipients), $this->build_params['head_charset']); - - // Add headers to send_params - $send_params['headers'] = $headers; - $send_params['recipients'] = array_values(array_unique($smtp_recipients)); - $send_params['body'] = $this->output; - - // Setup return path - if (isset($this->return_path)) { - $send_params['from'] = $this->return_path; - } elseif (!empty($this->headers['From'])) { - $from = Mail_RFC822::parseAddressList($this->headers['From']); - $send_params['from'] = sprintf('%s@%s', $from[0]->mailbox, $from[0]->host); - } else { - $send_params['from'] = 'postmaster@' . $this->smtp_params['helo']; - } - - // Send it - if (!$smtp->send($send_params)) { - $this->errors = $smtp->getErrors(); - return false; - } - return true; - break; - } - } - - /** - * Use this method to return the email - * in message/rfc822 format. Useful for - * adding an email to another email as - * an attachment. there's a commented - * out example in example.php. - * - * @param array $recipients Array of recipients - * @param string $type Method to be used to send the mail. - * Used to determine the line ending type. - */ - public function getRFC822($recipients, $type = 'mail') - { - // Make up the date header as according to RFC822 - $this->setHeader('Date', date('D, d M y H:i:s O')); - - if (!defined('CRLF')) { - $this->setCRLF($type == 'mail' ? "\n" : "\r\n"); - } - - if (!$this->is_built) { - $this->build(); - } - - // Return path ? - if (isset($this->return_path)) { - $headers[] = 'Return-Path: ' . $this->return_path; - } - - // Get flat representation of headers - foreach ($this->headers as $name => $value) { - $headers[] = $name . ': ' . $value; - } - $headers[] = 'To: ' . implode(', ', $recipients); - - return implode(CRLF, $headers) . CRLF . CRLF . $this->output; - } -} // End of class. - - -/** -* Attachment classes -*/ -class attachment -{ - /** - * Data of attachment - * @var string - */ - public $data; - - /** - * Name of attachment (filename) - * @var string - */ - public $name; - - /** - * Content type of attachment - * @var string - */ - public $contentType; - - /** - * Encoding type of attachment - * @var object - */ - public $encoding; - - /** - * Constructor - * - * @param string $data File data - * @param string $name Name of attachment (filename) - * @param string $contentType Content type of attachment - * @param object $encoding Encoding type to use - */ - public function __construct($data, $name, $contentType, iEncoding $encoding) - { - $this->data = $data; - $this->name = $name; - $this->contentType = $contentType; - $this->encoding = $encoding; - } -} - - -/** -* File based attachment class -*/ -class fileAttachment extends attachment -{ - /** - * Constructor - * - * @param string $filename Name of file - * @param string $contentType Content type of file - * @param string $encoding What encoding to use - */ - public function __construct($filename, $contentType = 'application/octet-stream', $encoding = null) - { - $encoding = is_null($encoding) ? new Base64Encoding() : $encoding; - - parent::__construct(file_get_contents($filename), basename($filename), $contentType, $encoding); - } -} - - -/** -* Attachment class to handle attachments which are contained -* in a variable. -*/ -class stringAttachment extends attachment -{ - /** - * Constructor - * - * @param string $data File data - * @param string $name Name of attachment (filename) - * @param string $contentType Content type of file - * @param string $encoding What encoding to use - */ - public function __construct($data, $name = '', $contentType = 'application/octet-stream', $encoding = null) - { - $encoding = is_null($encoding) ? new Base64Encoding() : $encoding; - - parent::__construct($data, $name, $contentType, $encoding); - } -} - - -/** -* File based embedded image class -*/ -class fileEmbeddedImage extends fileAttachment -{ -} - - -/** -* String based embedded image class -*/ -class stringEmbeddedImage extends stringAttachment -{ -} - - -/** -* -*/ -/** -* Encoding interface -*/ -interface iEncoding -{ - public function encode($input); - public function getType(); -} - - -/** -* Base64 Encoding class -*/ -class Base64Encoding implements iEncoding -{ - /* - * Function to encode data using - * base64 encoding. - * - * @param string $input Data to encode - */ - public function encode($input) - { - return rtrim(chunk_split(base64_encode($input), 76, defined('MAIL_MIME_PART_CRLF') ? MAIL_MIME_PART_CRLF : "\r\n")); - } - - /** - * Returns type - */ - public function getType() - { - return 'base64'; - } -} - - -/** -* Quoted Printable Encoding class -*/ -class QPrintEncoding implements iEncoding -{ - /* - * Function to encode data using - * quoted-printable encoding. - * - * @param string $input Data to encode - */ - public function encode($input) - { - // Replace non printables - $input = preg_replace('/([^\x20\x21-\x3C\x3E-\x7E\x0A\x0D])/e', 'sprintf("=%02X", ord("\1"))', $input); - $inputLen = strlen($input); - $outLines = array(); - $output = ''; - - $lines = preg_split('/\r?\n/', $input); - - // Walk through each line - for ($i=0; $i $lineMax) { - $outLines[] = substr($lines[$i], 0, $lineMax - 1) . "="; // \r\n Gets added when lines are imploded - $lines[$i] = substr($lines[$i], $lineMax - 1); - $i--; // Ensure this line gets redone as we just changed it - } else { - $outLines[] = $lines[$i]; - } - } - - // Convert trailing whitespace - $output = preg_replace('/(\x20+)$/me', 'str_replace(" ", "=20", "\1")', $outLines); - - return implode("\r\n", $output); - } - - /** - * Returns type - */ - public function getType() - { - return 'quoted-printable'; - } -} - - -/** -* 7Bit Encoding class -*/ -class SevenBitEncoding implements iEncoding -{ - /* - * Function to "encode" data using - * 7bit encoding. - * - * @param string $input Data to encode - */ - public function encode($input) - { - return $input; - } - - /** - * Returns type - */ - public function getType() - { - return '7bit'; - } -} - - -/** -* 8Bit Encoding class -*/ -class EightBitEncoding implements iEncoding -{ - /* - * Function to "encode" data using - * 8bit encoding. - * - * @param string $input Data to encode - */ - public function encode($input) - { - return $input; - } - - /** - * Returns type - */ - public function getType() - { - return '8bit'; - } -} -?> \ No newline at end of file diff --git a/library/framework/mail/mimePart.php b/library/framework/mail/mimePart.php deleted file mode 100644 index 3fa702c6..00000000 --- a/library/framework/mail/mimePart.php +++ /dev/null @@ -1,311 +0,0 @@ -addSubPart($body, $params); -* -* // Now add an attachment. Assume $attach is -* the contents of the attachment -* -* $params['content_type'] = 'application/zip'; -* $params['encoding'] = 'base64'; -* $params['disposition'] = 'attachment'; -* $params['dfilename'] = 'example.zip'; -* $attach =& $email->addSubPart($body, $params); -* -* // Now build the email. Note that the encode -* // function returns an associative array containing two -* // elements, body and headers. You will need to add extra -* // headers, (eg. Mime-Version) before sending. -* -* $email = $message->encode(); -* $email['headers'][] = 'Mime-Version: 1.0'; -* -* -* Further examples are available at http://www.phpguru.org -* -* TODO: -* - Set encode() to return the $obj->encoded if encode() -* has already been run. Unless a flag is passed to specifically -* re-build the message. -* -* @author Richard Heyes -* @version $Revision: 1.3 $ -* @package Mail -*/ - -class Mail_MIMEPart -{ - /** - * The encoding type of this part - * @var string - */ - private $encoding; - - /** - * An array of subparts - * @var array - */ - private $subparts; - - /** - * The output of this part after being built - * @var string - */ - private $encoded; - - /** - * Headers for this part - * @var array - */ - private $headers; - - /** - * The body of this part (not encoded) - * @var string - */ - private $body; - - /** - * Constructor. - * - * Sets up the object. - * - * @param $body - The body of the mime part if any. - * @param $params - An associative array of parameters: - * content_type - The content type for this part eg multipart/mixed - * encoding - The encoding to use, 7bit, 8bit, base64, or quoted-printable - * cid - Content ID to apply - * disposition - Content disposition, inline or attachment - * dfilename - Optional filename parameter for content disposition - * description - Content description - * charset - Character set to use - * @access public - */ - public function __construct($body = '', $params = array()) - { - if (!defined('MAIL_MIMEPART_CRLF')) { - define('MAIL_MIMEPART_CRLF', defined('MAIL_MIME_CRLF') ? MAIL_MIME_CRLF : "\r\n", true); - } - - foreach ($params as $key => $value) { - switch ($key) { - case 'content_type': - $headers['Content-Type'] = $value . (isset($charset) ? '; charset="' . $charset . '"' : ''); - break; - - case 'encoding': - $this->encoding = $value; - $headers['Content-Transfer-Encoding'] = $value; - break; - - case 'cid': - $headers['Content-ID'] = '<' . $value . '>'; - break; - - case 'disposition': - $headers['Content-Disposition'] = $value . (isset($dfilename) ? '; filename="' . $dfilename . '"' : ''); - break; - - case 'dfilename': - if (isset($headers['Content-Disposition'])) { - $headers['Content-Disposition'] .= '; filename="' . $value . '"'; - } else { - $dfilename = $value; - } - break; - - case 'description': - $headers['Content-Description'] = $value; - break; - - case 'charset': - if (isset($headers['Content-Type'])) { - $headers['Content-Type'] .= '; charset="' . $value . '"'; - } else { - $charset = $value; - } - break; - } - } - - // Default content-type - if (!isset($headers['Content-Type'])) { - $headers['Content-Type'] = 'text/plain'; - } - - // Default encoding - if (!isset($this->encoding)) { - $this->encoding = '7bit'; - } - - // Assign stuff to member variables - $this->encoded = array(); - $this->headers = $headers; - $this->body = $body; - } - - /** - * Encodes and returns the email. Also stores - * it in the encoded member variable - * - * @return An associative array containing two elements, - * body and headers. The headers element is itself - * an indexed array. - */ - public function encode() - { - $encoded =& $this->encoded; - - if (!empty($this->subparts)) { - srand((double)microtime()*1000000); - $boundary = '=_' . md5(uniqid(rand()) . microtime()); - $this->headers['Content-Type'] .= ';' . MAIL_MIMEPART_CRLF . "\t" . 'boundary="' . $boundary . '"'; - - // Add body parts to $subparts - for ($i = 0; $i < count($this->subparts); $i++) { - $headers = array(); - $tmp = $this->subparts[$i]->encode(); - foreach ($tmp['headers'] as $key => $value) { - $headers[] = $key . ': ' . $value; - } - $subparts[] = implode(MAIL_MIMEPART_CRLF, $headers) . MAIL_MIMEPART_CRLF . MAIL_MIMEPART_CRLF . $tmp['body']; - } - - $encoded['body'] = '--' . $boundary . MAIL_MIMEPART_CRLF . - implode('--' . $boundary . MAIL_MIMEPART_CRLF, $subparts) . - '--' . $boundary.'--' . MAIL_MIMEPART_CRLF; - } else { - $encoded['body'] = $this->getEncodedData($this->body, $this->encoding) . MAIL_MIMEPART_CRLF; - } - - // Add headers to $encoded - $encoded['headers'] =& $this->headers; - - return $encoded; - } - - /** - * Adds a subpart to current mime part and returns - * a reference to it - * - * @param $body The body of the subpart, if any. - * @param $params The parameters for the subpart, same - * as the $params argument for constructor. - * @return A reference to the part you just added. - */ - public function addSubPart($body, $params) - { - $this->subparts[] = new Mail_MIMEPart($body, $params); - - return $this->subparts[count($this->subparts) - 1]; - } - - /** - * Returns encoded data based upon encoding passed to it - * - * @param $data The data to encode. - * @param $encoding The encoding type to use, 7bit, base64, - * or quoted-printable. - */ - private function getEncodedData($data, $encoding) - { - switch ($encoding) { - case '8bit': - case '7bit': - return $data; - break; - - case 'quoted-printable': - return $this->quotedPrintableEncode($data); - break; - - case 'base64': - return rtrim(chunk_split(base64_encode($data), 76, MAIL_MIMEPART_CRLF)); - break; - - default: - return $data; - } - } - - /** - * Encodes data to quoted-printable standard. - * - * @param $input The data to encode - * @param $line_max Optional max line length. Should - * not be more than 76 chars - */ - private function quotedPrintableEncode($input , $line_max = 76) - { - $lines = preg_split("/\r?\n/", $input); - $eol = MAIL_MIMEPART_CRLF; - $escape = '='; - $output = ''; - - while(list(, $line) = each($lines)){ - - $linlen = strlen($line); - $newline = ''; - - for ($i = 0; $i < $linlen; $i++) { - $char = substr($line, $i, 1); - $dec = ord($char); - - if (($dec == 32) AND ($i == ($linlen - 1))){ // convert space at eol only - $char = '=20'; - - } elseif($dec == 9) { - ; // Do nothing if a tab. - } elseif(($dec == 61) OR ($dec < 32 ) OR ($dec > 126)) { - $char = $escape . strtoupper(sprintf('%02s', dechex($dec))); - } - - if ((strlen($newline) + strlen($char)) >= $line_max) { // MAIL_MIMEPART_CRLF is not counted - $output .= $newline . $escape . $eol; // soft line break; " =\r\n" is okay - $newline = ''; - } - $newline .= $char; - } // end of for - $output .= $newline . $eol; - } - $output = substr($output, 0, -1 * strlen($eol)); // Don't want last crlf - return $output; - } -} // End of class -?> \ No newline at end of file diff --git a/library/framework/mail/sendMail.php b/library/framework/mail/sendMail.php deleted file mode 100644 index 15adfd33..00000000 --- a/library/framework/mail/sendMail.php +++ /dev/null @@ -1,103 +0,0 @@ -$from, - 'To'=>$to, - 'Subject'=>$subject, -// 'Reply-To'=>$from, -// 'Return-Path'=>$from, - 'Content-Transfer-Encoding'=>'8bit', - 'MIME-Version'=>'1.0', - 'Date'=>date('D, d M Y H:i:s O'), - 'Message-ID'=>'<'.md5(date('YmdHis')).'@mail.scores-decisions.com>', - 'X-Priority'=>3, - 'X-Mailer'=>'PHP v'.phpversion(), - ); -/* -# Boundry for marking the split & Multitype Headers -$mime_boundary=md5(time()); -$headers .= ''.$eol; -$headers .= "Content-Type: multipart/related; boundary=\"".$mime_boundary."\"".$eol; -$msg = ""; - */ - $mime = new Mail_mime(); - $footer="";/* - -_______________________________________________________________________ -Ce message et toutes les pièces jointes (ci-après le \"message\") sont établis a l'intention exclusive de ses destinataires.Si vous recevez ce message par erreur, merci de le détruire et d'en avertir immédiatement l'expéditeur par e-mail. Toute utilisation de ce message non conforme a sa destination, toute diffusion ou toute publication, totale ou partielle, est interdite, sauf autorisation expresse. Les communications sur Internet n'étant pas sécurisées, SCORES & DECISIONS S.A.S. informe qu'elle ne peut accepter aucune responsabilite quant au contenu de ce message. -This mail message and attachments (the \"message\") are solely intended for the addressees. It is confidential in nature . If you receive this message in error, please delete it and immediately notify the sender by e-mail. Any use other than its intended purpose, dissemination or disclosure, either whole or partial, is prohibited except if formal approval is granted. As communication on the Internet is not secure, SCORES & DECISIONS S.A.S. does not accept responsability for the content of this message. - - -";*/ - - if ($text<>'') $mime->setTXTBody($text.$footer); - if ($html<>'') $mime->setHTMLBody($html); - - foreach ($tabAttachedFiles as $file) - $mime->addAttachment($file); - - //do not ever try to call these lines in reverse order - $body = $mime->get(); - $headers = $mime->headers($headers); - - $params=array( 'host'=>'smtpauth.online.net', // SMTP_HOST - 'port'=>25, //SMTP_PORT, - ); - $params=array( 'host'=>SMTP_HOST, - 'port'=>SMTP_PORT, - //'debug'=>true, - //'persist'=>true, - ); - - if (SMTP_USER=='' && SMTP_PASS=='') - $params['auth'] = false; - else { - $params['username'] = SMTP_USER; - $params['password'] = SMTP_PASS; - }/* - $params['auth'] = true; - $params['username'] = 'buzuk@scores-decisions.com'; - $params['password'] = 'catsysyo92'; - */ - - $nbEssais=0; - while (1) { - // Create the mail object using the Mail::factory method - $mail_object = Mail::factory('smtp', $params); - // Trying to send the mail - $send = $mail_object->send($to, $headers, $body); - $nbEssais++; - if (PEAR::isError($send)) { - /** @todo tester les différents codes erreur **/ - echo date('Y-m-d H:i:s'). " sendMail.php - essai #$nbEssais : ".$send->getMessage().EOL; - if (preg_match('/too many connections|421/i', $send->getMessage())) - sleep($nbEssais); - else { - $strTo=implode(';', $to); - file_put_contents( LOG_PATH.'/sendMailError.log', - date('Y-m-d H:i:s')."\t#$nbEssais\t$strTo\t".$send->getMessage().EOL, - FILE_APPEND); - break; - } - - } else { - /** Si nous sommes en mode CLI, alors on fait en sorte de ne pas atteindre - la limite des 25 mails par minute (ramené à 100 / minute) - **/ - if (MODE_EXEC==MODE_CLI) usleep(500000); - break; - } - } - - return true; - } - - ?> \ No newline at end of file diff --git a/library/framework/mail/sendMailOld.php b/library/framework/mail/sendMailOld.php deleted file mode 100644 index 7d657edd..00000000 --- a/library/framework/mail/sendMailOld.php +++ /dev/null @@ -1,33 +0,0 @@ -send($to, $headers, $body); - - if (PEAR::isError($mail_object)) - return $mail_object->getMessage(); - - return true; - } - ?> \ No newline at end of file diff --git a/library/framework/mail/smtp.php b/library/framework/mail/smtp.php deleted file mode 100644 index 6e10dd7a..00000000 --- a/library/framework/mail/smtp.php +++ /dev/null @@ -1,369 +0,0 @@ - - * pass - Password for authentication Default: - * timeout - The timeout in seconds for the call Default: 5 - * to fsockopen() - */ - public function __construct($params = array()) - { - - if(!defined('CRLF')) - define('CRLF', "\r\n", TRUE); - - $this->authenticated = FALSE; - $this->timeout = 5; - $this->status = SMTP_STATUS_NOT_CONNECTED; - $this->host = 'smtp.free.fr'; - $this->port = 25; - $this->helo = 'srvsd01'; - $this->auth = FALSE; - $this->user = ''; - $this->pass = ''; - $this->errors = array(); - - foreach($params as $key => $value){ - $this->$key = $value; - } - } - - /** - * Connect function. This will, when called - * statically, create a new smtp object, - * call the connect function (ie this function) - * and return it. When not called statically, - * it will connect to the server and send - * the HELO command. - */ - public function connect($params = array()) - { - if (!isset($this->status)) { - $obj = new smtp($params); - if($obj->connect()){ - $obj->status = SMTP_STATUS_CONNECTED; - } - - return $obj; - - } else { - $this->connection = fsockopen($this->host, $this->port, $errno, $errstr, $this->timeout); - if (function_exists('socket_set_timeout')) { - @socket_set_timeout($this->connection, 5, 0); - } - - $greeting = $this->get_data(); - if (is_resource($this->connection)) { - return $this->auth ? $this->ehlo() : $this->helo(); - } else { - $this->errors[] = 'Failed to connect to server: '.$errstr; - return FALSE; - } - } - } - - /** - * Function which handles sending the mail. - * Arguments: - * $params - Optional assoc array of parameters. - * Can contain: - * recipients - Indexed array of recipients - * from - The from address. (used in MAIL FROM:), - * this will be the return path - * headers - Indexed array of headers, one header per array entry - * body - The body of the email - * It can also contain any of the parameters from the connect() - * function - */ - public function send($params = array()) - { - foreach ($params as $key => $value) { - $this->set($key, $value); - } - - if ($this->is_connected()) { - - // Do we auth or not? Note the distinction between the auth variable and auth() function - if ($this->auth AND !$this->authenticated) { - if(!$this->auth()) - return false; - } - - $this->mail($this->from); - - if (is_array($this->recipients)) { - foreach ($this->recipients as $value) { - $this->rcpt($value); - } - } else { - $this->rcpt($this->recipients); - } - - if (!$this->data()) { - return false; - } - - // Transparency - $headers = str_replace(CRLF.'.', CRLF.'..', trim(implode(CRLF, $this->headers))); - $body = str_replace(CRLF.'.', CRLF.'..', $this->body); - $body = substr($body, 0, 1) == '.' ? '.'.$body : $body; - - $this->send_data($headers); - $this->send_data(''); - $this->send_data($body); - $this->send_data('.'); - - $result = (substr(trim($this->get_data()), 0, 3) === '250'); - //$this->rset(); - return $result; - } else { - $this->errors[] = 'Not connected!'; - return FALSE; - } - } - - /** - * Function to implement HELO cmd - */ - private function helo() - { - if(is_resource($this->connection) - AND $this->send_data('HELO '.$this->helo) - AND substr(trim($error = $this->get_data()), 0, 3) === '250' ){ - - return true; - - } else { - $this->errors[] = 'HELO command failed, output: ' . trim(substr(trim($error),3)); - return false; - } - } - - /** - * Function to implement EHLO cmd - */ - private function ehlo() - { - if (is_resource($this->connection) - AND $this->send_data('EHLO '.$this->helo) - AND substr(trim($error = $this->get_data()), 0, 3) === '250' ){ - - return true; - - } else { - $this->errors[] = 'EHLO command failed, output: ' . trim(substr(trim($error),3)); - return false; - } - } - - /** - * Function to implement RSET cmd - */ - private function rset() - { - if (is_resource($this->connection) - AND $this->send_data('RSET') - AND substr(trim($error = $this->get_data()), 0, 3) === '250' ){ - - return true; - - } else { - $this->errors[] = 'RSET command failed, output: ' . trim(substr(trim($error),3)); - return false; - } - } - - /** - * Function to implement QUIT cmd - */ - private function quit() - { - if(is_resource($this->connection) - AND $this->send_data('QUIT') - AND substr(trim($error = $this->get_data()), 0, 3) === '221' ){ - - fclose($this->connection); - $this->status = SMTP_STATUS_NOT_CONNECTED; - return true; - - } else { - $this->errors[] = 'QUIT command failed, output: ' . trim(substr(trim($error),3)); - return false; - } - } - - /** - * Function to implement AUTH cmd - */ - private function auth() - { - if (is_resource($this->connection) - AND $this->send_data('AUTH LOGIN') - AND substr(trim($error = $this->get_data()), 0, 3) === '334' - AND $this->send_data(base64_encode($this->user)) // Send username - AND substr(trim($error = $this->get_data()),0,3) === '334' - AND $this->send_data(base64_encode($this->pass)) // Send password - AND substr(trim($error = $this->get_data()),0,3) === '235' ){ - - $this->authenticated = true; - return true; - - } else { - $this->errors[] = 'AUTH command failed: ' . trim(substr(trim($error),3)); - return false; - } - } - - /** - * Function that handles the MAIL FROM: cmd - */ - private function mail($from) - { - if ($this->is_connected() - AND $this->send_data('MAIL FROM:<'.$from.'>') - AND substr(trim($this->get_data()), 0, 2) === '250' ) { - - return true; - - } else { - return false; - } - } - - /** - * Function that handles the RCPT TO: cmd - */ - private function rcpt($to) - { - if($this->is_connected() - AND $this->send_data('RCPT TO:<'.$to.'>') - AND substr(trim($error = $this->get_data()), 0, 2) === '25' ){ - - return true; - - } else { - $this->errors[] = trim(substr(trim($error), 3)); - return false; - } - } - - /** - * Function that sends the DATA cmd - */ - private function data() - { - if($this->is_connected() - AND $this->send_data('DATA') - AND substr(trim($error = $this->get_data()), 0, 3) === '354' ) { - - return true; - - } else { - $this->errors[] = trim(substr(trim($error), 3)); - return false; - } - } - - /** - * Function to determine if this object - * is connected to the server or not. - */ - private function is_connected() - { - return (is_resource($this->connection) AND ($this->status === SMTP_STATUS_CONNECTED)); - } - - /** - * Function to send a bit of data - */ - private function send_data($data) - { - if(is_resource($this->connection)){ - return fwrite($this->connection, $data.CRLF, strlen($data)+2); - - } else { - return false; - } - } - - /** - * Function to get data. - */ - private function get_data() - { - $return = ''; - $line = ''; - $loops = 0; - - if(is_resource($this->connection)){ - while((strpos($return, CRLF) === FALSE OR substr($line,3,1) !== ' ') AND $loops < 100){ - $line = fgets($this->connection, 512); - $return .= $line; - $loops++; - } - return $return; - - }else - return false; - } - - /** - * Sets a variable - */ - public function set($var, $value) - { - $this->$var = $value; - return true; - } - - /** - * Function to return the errors array - */ - public function getErrors() - { - return $this->errors; - } - - -} // End of class -?> \ No newline at end of file diff --git a/library/i18n/cleanchar.php b/library/i18n/cleanchar.php deleted file mode 100644 index 1e83b272..00000000 --- a/library/i18n/cleanchar.php +++ /dev/null @@ -1,92 +0,0 @@ - \ No newline at end of file diff --git a/library/i18n/i18n-ascii.txt b/library/i18n/i18n-ascii.txt deleted file mode 100644 index e94d74bd..00000000 --- a/library/i18n/i18n-ascii.txt +++ /dev/null @@ -1,564 +0,0 @@ -; global transliteration -[default] -À = "A" -Á = "A" - = "A" -à = "A" -Ä = "Ae" -Å = "A" -Æ = "A" -Ā = "A" -Ą = "A" -Ă = "A" -Ç = "C" -Ć = "C" -Č = "C" -Ĉ = "C" -Ċ = "C" -Ď = "D" -Đ = "D" -È = "E" -É = "E" -Ê = "E" -Ë = "E" -Ē = "E" -Ę = "E" -Ě = "E" -Ĕ = "E" -Ė = "E" -Ĝ = "G" -Ğ = "G" -Ġ = "G" -Ģ = "G" -Ĥ = "H" -Ħ = "H" -Ì = "I" -Í = "I" -Î = "I" -Ï = "I" -Ī = "I" -Ĩ = "I" -Ĭ = "I" -Į = "I" -İ = "I" -IJ = "IJ" -Ĵ = "J" -Ķ = "K" -Ľ = "K" -Ĺ = "K" -Ļ = "K" -Ŀ = "K" -Ł = "L" -Ñ = "N" -Ń = "N" -Ň = "N" -Ņ = "N" -Ŋ = "N" -Ò = "O" -Ó = "O" -Ô = "O" -Õ = "O" -Ö = "Oe" -Ø = "O" -Ō = "O" -Ő = "O" -Ŏ = "O" -Œ = "OE" -Ŕ = "R" -Ř = "R" -Ŗ = "R" -Ś = "S" -Ş = "S" -Ŝ = "S" -Ș = "S" -Š = "S" -Ť = "T" -Ţ = "T" -Ŧ = "T" -Ț = "T" -Ù = "U" -Ú = "U" -Û = "U" -Ü = "Ue" -Ū = "U" -Ů = "U" -Ű = "U" -Ŭ = "U" -Ũ = "U" -Ų = "U" -Ŵ = "W" -Ŷ = "Y" -Ÿ = "Y" -Ý = "Y" -Ź = "Z" -Ż = "Z" -Ž = "Z" -à = "a" -á = "a" -â = "a" -ã = "a" -ä = "ae" -ā = "a" -ą = "a" -ă = "a" -å = "a" -æ = "ae" -ç = "c" -ć = "c" -č = "c" -ĉ = "c" -ċ = "c" -ď = "d" -đ = "d" -è = "e" -é = "e" -ê = "e" -ë = "e" -ē = "e" -ę = "e" -ě = "e" -ĕ = "e" -ė = "e" -ƒ = "f" -ĝ = "g" -ğ = "g" -ġ = "g" -ģ = "g" -ĥ = "h" -ħ = "h" -ì = "i" -í = "i" -î = "i" -ï = "i" -ī = "i" -ĩ = "i" -ĭ = "i" -į = "i" -ı = "i" -ij = "ij" -ĵ = "j" -ķ = "k" -ĸ = "k" -ł = "l" -ľ = "l" -ĺ = "l" -ļ = "l" -ŀ = "l" -ñ = "n" -ń = "n" -ň = "n" -ņ = "n" -ʼn = "n" -ŋ = "n" -ò = "o" -ó = "o" -ô = "o" -õ = "o" -ö = "oe" -ø = "o" -ō = "o" -ő = "o" -ŏ = "o" -œ = "oe" -ŕ = "r" -ř = "r" -ŗ = "r" -ś = "s" -š = "s" -ş = "s" -ť = "t" -ţ = "t" -ù = "u" -ú = "u" -û = "u" -ü = "ue" -ū = "u" -ů = "u" -ű = "u" -ŭ = "u" -ũ = "u" -ų = "u" -ŵ = "w" -ÿ = "y" -ý = "y" -ŷ = "y" -ż = "z" -ź = "z" -ž = "z" -ß = "ss" -ſ = "ss" -Α = "A" -Ά = "A" -Ἀ = "A" -Ἁ = "A" -Ἂ = "A" -Ἃ = "A" -Ἄ = "A" -Ἅ = "A" -Ἆ = "A" -Ἇ = "A" -ᾈ = "A" -ᾉ = "A" -ᾊ = "A" -ᾋ = "A" -ᾌ = "A" -ᾍ = "A" -ᾎ = "A" -ᾏ = "A" -Ᾰ = "A" -Ᾱ = "A" -Ὰ = "A" -Ά = "A" -ᾼ = "A" -Β = "B" -Γ = "G" -Δ = "D" -Ε = "E" -Έ = "E" -Ἐ = "E" -Ἑ = "E" -Ἒ = "E" -Ἓ = "E" -Ἔ = "E" -Ἕ = "E" -Έ = "E" -Ὲ = "E" -Ζ = "Z" -Η = "I" -Ή = "I" -Ἠ = "I" -Ἡ = "I" -Ἢ = "I" -Ἣ = "I" -Ἤ = "I" -Ἥ = "I" -Ἦ = "I" -Ἧ = "I" -ᾘ = "I" -ᾙ = "I" -ᾚ = "I" -ᾛ = "I" -ᾜ = "I" -ᾝ = "I" -ᾞ = "I" -ᾟ = "I" -Ὴ = "I" -Ή = "I" -ῌ = "I" -Θ = "TH" -Ι = "I" -Ί = "I" -Ϊ = "I" -Ἰ = "I" -Ἱ = "I" -Ἲ = "I" -Ἳ = "I" -Ἴ = "I" -Ἵ = "I" -Ἶ = "I" -Ἷ = "I" -Ῐ = "I" -Ῑ = "I" -Ὶ = "I" -Ί = "I" -Κ = "K" -Λ = "L" -Μ = "M" -Ν = "N" -Ξ = "KS" -Ο = "O" -Ό = "O" -Ὀ = "O" -Ὁ = "O" -Ὂ = "O" -Ὃ = "O" -Ὄ = "O" -Ὅ = "O" -Ὸ = "O" -Ό = "O" -Π = "P" -Ρ = "R" -Ῥ = "R" -Σ = "S" -Τ = "T" -Υ = "Y" -Ύ = "Y" -Ϋ = "Y" -Ὑ = "Y" -Ὓ = "Y" -Ὕ = "Y" -Ὗ = "Y" -Ῠ = "Y" -Ῡ = "Y" -Ὺ = "Y" -Ύ = "Y" -Φ = "F" -Χ = "X" -Ψ = "PS" -Ω = "O" -Ώ = "O" -Ὠ = "O" -Ὡ = "O" -Ὢ = "O" -Ὣ = "O" -Ὤ = "O" -Ὥ = "O" -Ὦ = "O" -Ὧ = "O" -ᾨ = "O" -ᾩ = "O" -ᾪ = "O" -ᾫ = "O" -ᾬ = "O" -ᾭ = "O" -ᾮ = "O" -ᾯ = "O" -Ὼ = "O" -Ώ = "O" -ῼ = "O" -α = "a" -ά = "a" -ἀ = "a" -ἁ = "a" -ἂ = "a" -ἃ = "a" -ἄ = "a" -ἅ = "a" -ἆ = "a" -ἇ = "a" -ᾀ = "a" -ᾁ = "a" -ᾂ = "a" -ᾃ = "a" -ᾄ = "a" -ᾅ = "a" -ᾆ = "a" -ᾇ = "a" -ὰ = "a" -ά = "a" -ᾰ = "a" -ᾱ = "a" -ᾲ = "a" -ᾳ = "a" -ᾴ = "a" -ᾶ = "a" -ᾷ = "a" -β = "b" -γ = "g" -δ = "d" -ε = "e" -έ = "e" -ἐ = "e" -ἑ = "e" -ἒ = "e" -ἓ = "e" -ἔ = "e" -ἕ = "e" -ὲ = "e" -έ = "e" -ζ = "z" -η = "i" -ή = "i" -ἠ = "i" -ἡ = "i" -ἢ = "i" -ἣ = "i" -ἤ = "i" -ἥ = "i" -ἦ = "i" -ἧ = "i" -ᾐ = "i" -ᾑ = "i" -ᾒ = "i" -ᾓ = "i" -ᾔ = "i" -ᾕ = "i" -ᾖ = "i" -ᾗ = "i" -ὴ = "i" -ή = "i" -ῂ = "i" -ῃ = "i" -ῄ = "i" -ῆ = "i" -ῇ = "i" -θ = "th" -ι = "i" -ί = "i" -ϊ = "i" -ΐ = "i" -ἰ = "i" -ἱ = "i" -ἲ = "i" -ἳ = "i" -ἴ = "i" -ἵ = "i" -ἶ = "i" -ἷ = "i" -ὶ = "i" -ί = "i" -ῐ = "i" -ῑ = "i" -ῒ = "i" -ΐ = "i" -ῖ = "i" -ῗ = "i" -κ = "k" -λ = "l" -μ = "m" -ν = "n" -ξ = "ks" -ο = "o" -ό = "o" -ὀ = "o" -ὁ = "o" -ὂ = "o" -ὃ = "o" -ὄ = "o" -ὅ = "o" -ὸ = "o" -ό = "o" -π = "p" -ρ = "r" -ῤ = "r" -ῥ = "r" -σ = "s" -ς = "s" -τ = "t" -υ = "y" -ύ = "y" -ϋ = "y" -ΰ = "y" -ὐ = "y" -ὑ = "y" -ὒ = "y" -ὓ = "y" -ὔ = "y" -ὕ = "y" -ὖ = "y" -ὗ = "y" -ὺ = "y" -ύ = "y" -ῠ = "y" -ῡ = "y" -ῢ = "y" -ΰ = "y" -ῦ = "y" -ῧ = "y" -φ = "f" -χ = "x" -ψ = "ps" -ω = "o" -ώ = "o" -ὠ = "o" -ὡ = "o" -ὢ = "o" -ὣ = "o" -ὤ = "o" -ὥ = "o" -ὦ = "o" -ὧ = "o" -ᾠ = "o" -ᾡ = "o" -ᾢ = "o" -ᾣ = "o" -ᾤ = "o" -ᾥ = "o" -ᾦ = "o" -ᾧ = "o" -ὼ = "o" -ώ = "o" -ῲ = "o" -ῳ = "o" -ῴ = "o" -ῶ = "o" -ῷ = "o" -¨ = "" -΅ = "" -᾿ = "" -῾ = "" -῍ = "" -῝ = "" -῎ = "" -῞ = "" -῏ = "" -῟ = "" -῀ = "" -῁ = "" -΄ = "" -΅ = "" -` = "" -῭ = "" -ͺ = "" -᾽ = "" -А = "A" -Б = "B" -В = "V" -Г = "G" -Д = "D" -Е = "E" -Ё = "E" -Ж = "ZH" -З = "Z" -И = "I" -Й = "I" -К = "K" -Л = "L" -М = "M" -Н = "N" -О = "O" -П = "P" -Р = "R" -С = "S" -Т = "T" -У = "U" -Ф = "F" -Х = "KH" -Ц = "TS" -Ч = "CH" -Ш = "SH" -Щ = "SHCH" -Ы = "Y" -Э = "E" -Ю = "YU" -Я = "YA" -а = "A" -б = "B" -в = "V" -г = "G" -д = "D" -е = "E" -ё = "E" -ж = "ZH" -з = "Z" -и = "I" -й = "I" -к = "K" -л = "L" -м = "M" -н = "N" -о = "O" -п = "P" -р = "R" -с = "S" -т = "T" -у = "U" -ф = "F" -х = "KH" -ц = "TS" -ч = "CH" -ш = "SH" -щ = "SHCH" -ы = "Y" -э = "E" -ю = "YU" -я = "YA" -Ъ = "" -ъ = "" -Ь = "" -ь = "" - -ð = "d" -Ð = "D" -þ = "th" -Þ = "TH" diff --git a/library/i18n/special.txt b/library/i18n/special.txt deleted file mode 100644 index 5c4c6d15..00000000 --- a/library/i18n/special.txt +++ /dev/null @@ -1,2 +0,0 @@ -[default] -№ = "N°" \ No newline at end of file diff --git a/library/sphinxapi/sphinxapi-0.9.9.php b/library/sphinxapi/sphinxapi-0.9.9.php deleted file mode 100644 index c623d446..00000000 --- a/library/sphinxapi/sphinxapi-0.9.9.php +++ /dev/null @@ -1,1626 +0,0 @@ -=8 ) - { - $v = (int)$v; - return pack ( "NN", $v>>32, $v&0xFFFFFFFF ); - } - - // x32, int - if ( is_int($v) ) - return pack ( "NN", $v < 0 ? -1 : 0, $v ); - - // x32, bcmath - if ( function_exists("bcmul") ) - { - if ( bccomp ( $v, 0 ) == -1 ) - $v = bcadd ( "18446744073709551616", $v ); - $h = bcdiv ( $v, "4294967296", 0 ); - $l = bcmod ( $v, "4294967296" ); - return pack ( "NN", (float)$h, (float)$l ); // conversion to float is intentional; int would lose 31st bit - } - - // x32, no-bcmath - $p = max(0, strlen($v) - 13); - $lo = abs((float)substr($v, $p)); - $hi = abs((float)substr($v, 0, $p)); - - $m = $lo + $hi*1316134912.0; // (10 ^ 13) % (1 << 32) = 1316134912 - $q = floor($m/4294967296.0); - $l = $m - ($q*4294967296.0); - $h = $hi*2328.0 + $q; // (10 ^ 13) / (1 << 32) = 2328 - - if ( $v<0 ) - { - if ( $l==0 ) - $h = 4294967296.0 - $h; - else - { - $h = 4294967295.0 - $h; - $l = 4294967296.0 - $l; - } - } - return pack ( "NN", $h, $l ); -} - -/// pack 64-bit unsigned -function sphPackU64 ( $v ) -{ - assert ( is_numeric($v) ); - - // x64 - if ( PHP_INT_SIZE>=8 ) - { - assert ( $v>=0 ); - - // x64, int - if ( is_int($v) ) - return pack ( "NN", $v>>32, $v&0xFFFFFFFF ); - - // x64, bcmath - if ( function_exists("bcmul") ) - { - $h = bcdiv ( $v, 4294967296, 0 ); - $l = bcmod ( $v, 4294967296 ); - return pack ( "NN", $h, $l ); - } - - // x64, no-bcmath - $p = max ( 0, strlen($v) - 13 ); - $lo = (int)substr ( $v, $p ); - $hi = (int)substr ( $v, 0, $p ); - - $m = $lo + $hi*1316134912; - $l = $m % 4294967296; - $h = $hi*2328 + (int)($m/4294967296); - - return pack ( "NN", $h, $l ); - } - - // x32, int - if ( is_int($v) ) - return pack ( "NN", 0, $v ); - - // x32, bcmath - if ( function_exists("bcmul") ) - { - $h = bcdiv ( $v, "4294967296", 0 ); - $l = bcmod ( $v, "4294967296" ); - return pack ( "NN", (float)$h, (float)$l ); // conversion to float is intentional; int would lose 31st bit - } - - // x32, no-bcmath - $p = max(0, strlen($v) - 13); - $lo = (float)substr($v, $p); - $hi = (float)substr($v, 0, $p); - - $m = $lo + $hi*1316134912.0; - $q = floor($m / 4294967296.0); - $l = $m - ($q * 4294967296.0); - $h = $hi*2328.0 + $q; - - return pack ( "NN", $h, $l ); -} - -// unpack 64-bit unsigned -function sphUnpackU64 ( $v ) -{ - list ( $hi, $lo ) = array_values ( unpack ( "N*N*", $v ) ); - - if ( PHP_INT_SIZE>=8 ) - { - if ( $hi<0 ) $hi += (1<<32); // because php 5.2.2 to 5.2.5 is totally fucked up again - if ( $lo<0 ) $lo += (1<<32); - - // x64, int - if ( $hi<=2147483647 ) - return ($hi<<32) + $lo; - - // x64, bcmath - if ( function_exists("bcmul") ) - return bcadd ( $lo, bcmul ( $hi, "4294967296" ) ); - - // x64, no-bcmath - $C = 100000; - $h = ((int)($hi / $C) << 32) + (int)($lo / $C); - $l = (($hi % $C) << 32) + ($lo % $C); - if ( $l>$C ) - { - $h += (int)($l / $C); - $l = $l % $C; - } - - if ( $h==0 ) - return $l; - return sprintf ( "%d%05d", $h, $l ); - } - - // x32, int - if ( $hi==0 ) - { - if ( $lo>0 ) - return $lo; - return sprintf ( "%u", $lo ); - } - - $hi = sprintf ( "%u", $hi ); - $lo = sprintf ( "%u", $lo ); - - // x32, bcmath - if ( function_exists("bcmul") ) - return bcadd ( $lo, bcmul ( $hi, "4294967296" ) ); - - // x32, no-bcmath - $hi = (float)$hi; - $lo = (float)$lo; - - $q = floor($hi/10000000.0); - $r = $hi - $q*10000000.0; - $m = $lo + $r*4967296.0; - $mq = floor($m/10000000.0); - $l = $m - $mq*10000000.0; - $h = $q*4294967296.0 + $r*429.0 + $mq; - - $h = sprintf ( "%.0f", $h ); - $l = sprintf ( "%07.0f", $l ); - if ( $h=="0" ) - return sprintf( "%.0f", (float)$l ); - return $h . $l; -} - -// unpack 64-bit signed -function sphUnpackI64 ( $v ) -{ - list ( $hi, $lo ) = array_values ( unpack ( "N*N*", $v ) ); - - // x64 - if ( PHP_INT_SIZE>=8 ) - { - if ( $hi<0 ) $hi += (1<<32); // because php 5.2.2 to 5.2.5 is totally fucked up again - if ( $lo<0 ) $lo += (1<<32); - - return ($hi<<32) + $lo; - } - - // x32, int - if ( $hi==0 ) - { - if ( $lo>0 ) - return $lo; - return sprintf ( "%u", $lo ); - } - // x32, int - elseif ( $hi==-1 ) - { - if ( $lo<0 ) - return $lo; - return sprintf ( "%.0f", $lo - 4294967296.0 ); - } - - $neg = ""; - $c = 0; - if ( $hi<0 ) - { - $hi = ~$hi; - $lo = ~$lo; - $c = 1; - $neg = "-"; - } - - $hi = sprintf ( "%u", $hi ); - $lo = sprintf ( "%u", $lo ); - - // x32, bcmath - if ( function_exists("bcmul") ) - return $neg . bcadd ( bcadd ( $lo, bcmul ( $hi, "4294967296" ) ), $c ); - - // x32, no-bcmath - $hi = (float)$hi; - $lo = (float)$lo; - - $q = floor($hi/10000000.0); - $r = $hi - $q*10000000.0; - $m = $lo + $r*4967296.0; - $mq = floor($m/10000000.0); - $l = $m - $mq*10000000.0 + $c; - $h = $q*4294967296.0 + $r*429.0 + $mq; - if ( $l==10000000 ) - { - $l = 0; - $h += 1; - } - - $h = sprintf ( "%.0f", $h ); - $l = sprintf ( "%07.0f", $l ); - if ( $h=="0" ) - return $neg . sprintf( "%.0f", (float)$l ); - return $neg . $h . $l; -} - - -function sphFixUint ( $value ) -{ - if ( PHP_INT_SIZE>=8 ) - { - // x64 route, workaround broken unpack() in 5.2.2+ - if ( $value<0 ) $value += (1<<32); - return $value; - } - else - { - // x32 route, workaround php signed/unsigned braindamage - return sprintf ( "%u", $value ); - } -} - - -/// sphinx searchd client class -class SphinxClient -{ - var $_host; ///< searchd host (default is "localhost") - var $_port; ///< searchd port (default is 9312) - var $_offset; ///< how many records to seek from result-set start (default is 0) - var $_limit; ///< how many records to return from result-set starting at offset (default is 20) - var $_mode; ///< query matching mode (default is SPH_MATCH_ALL) - var $_weights; ///< per-field weights (default is 1 for all fields) - var $_sort; ///< match sorting mode (default is SPH_SORT_RELEVANCE) - var $_sortby; ///< attribute to sort by (defualt is "") - var $_min_id; ///< min ID to match (default is 0, which means no limit) - var $_max_id; ///< max ID to match (default is 0, which means no limit) - var $_filters; ///< search filters - var $_groupby; ///< group-by attribute name - var $_groupfunc; ///< group-by function (to pre-process group-by attribute value with) - var $_groupsort; ///< group-by sorting clause (to sort groups in result set with) - var $_groupdistinct;///< group-by count-distinct attribute - var $_maxmatches; ///< max matches to retrieve - var $_cutoff; ///< cutoff to stop searching at (default is 0) - var $_retrycount; ///< distributed retries count - var $_retrydelay; ///< distributed retries delay - var $_anchor; ///< geographical anchor point - var $_indexweights; ///< per-index weights - var $_ranker; ///< ranking mode (default is SPH_RANK_PROXIMITY_BM25) - var $_maxquerytime; ///< max query time, milliseconds (default is 0, do not limit) - var $_fieldweights; ///< per-field-name weights - var $_overrides; ///< per-query attribute values overrides - var $_select; ///< select-list (attributes or expressions, with optional aliases) - - var $_error; ///< last error message - var $_warning; ///< last warning message - var $_connerror; ///< connection error vs remote error flag - - var $_reqs; ///< requests array for multi-query - var $_mbenc; ///< stored mbstring encoding - var $_arrayresult; ///< whether $result["matches"] should be a hash or an array - var $_timeout; ///< connect timeout - - ///////////////////////////////////////////////////////////////////////////// - // common stuff - ///////////////////////////////////////////////////////////////////////////// - - /// create a new client object and fill defaults - function SphinxClient () - { - // per-client-object settings - $this->_host = "localhost"; - $this->_port = 9312; - $this->_path = false; - $this->_socket = false; - - // per-query settings - $this->_offset = 0; - $this->_limit = 20; - $this->_mode = SPH_MATCH_ALL; - $this->_weights = array (); - $this->_sort = SPH_SORT_RELEVANCE; - $this->_sortby = ""; - $this->_min_id = 0; - $this->_max_id = 0; - $this->_filters = array (); - $this->_groupby = ""; - $this->_groupfunc = SPH_GROUPBY_DAY; - $this->_groupsort = "@group desc"; - $this->_groupdistinct= ""; - $this->_maxmatches = 1000; - $this->_cutoff = 0; - $this->_retrycount = 0; - $this->_retrydelay = 0; - $this->_anchor = array (); - $this->_indexweights= array (); - $this->_ranker = SPH_RANK_PROXIMITY_BM25; - $this->_maxquerytime= 0; - $this->_fieldweights= array(); - $this->_overrides = array(); - $this->_select = "*"; - - $this->_error = ""; // per-reply fields (for single-query case) - $this->_warning = ""; - $this->_connerror = false; - - $this->_reqs = array (); // requests storage (for multi-query case) - $this->_mbenc = ""; - $this->_arrayresult = false; - $this->_timeout = 0; - } - - function __destruct() - { - if ( $this->_socket !== false ) - fclose ( $this->_socket ); - } - - /// get last error message (string) - function GetLastError () - { - return $this->_error; - } - - /// get last warning message (string) - function GetLastWarning () - { - return $this->_warning; - } - - /// get last error flag (to tell network connection errors from searchd errors or broken responses) - function IsConnectError() - { - return $this->_connerror; - } - - /// set searchd host name (string) and port (integer) - function SetServer ( $host, $port = 0 ) - { - assert ( is_string($host) ); - if ( $host[0] == '/') - { - $this->_path = 'unix://' . $host; - return; - } - if ( substr ( $host, 0, 7 )=="unix://" ) - { - $this->_path = $host; - return; - } - - assert ( is_int($port) ); - $this->_host = $host; - $this->_port = $port; - $this->_path = ''; - - } - - /// set server connection timeout (0 to remove) - function SetConnectTimeout ( $timeout ) - { - assert ( is_numeric($timeout) ); - $this->_timeout = $timeout; - } - - - function _Send ( $handle, $data, $length ) - { - if ( feof($handle) || fwrite ( $handle, $data, $length ) !== $length ) - { - $this->_error = 'connection unexpectedly closed (timed out?)'; - $this->_connerror = true; - return false; - } - return true; - } - - ///////////////////////////////////////////////////////////////////////////// - - /// enter mbstring workaround mode - function _MBPush () - { - $this->_mbenc = ""; - if ( ini_get ( "mbstring.func_overload" ) & 2 ) - { - $this->_mbenc = mb_internal_encoding(); - mb_internal_encoding ( "latin1" ); - } - } - - /// leave mbstring workaround mode - function _MBPop () - { - if ( $this->_mbenc ) - mb_internal_encoding ( $this->_mbenc ); - } - - /// connect to searchd server - function _Connect () - { - if ( $this->_socket!==false ) - { - // we are in persistent connection mode, so we have a socket - // however, need to check whether it's still alive - if ( !@feof ( $this->_socket ) ) - return $this->_socket; - - // force reopen - $this->_socket = false; - } - - $errno = 0; - $errstr = ""; - $this->_connerror = false; - - if ( $this->_path ) - { - $host = $this->_path; - $port = 0; - } - else - { - $host = $this->_host; - $port = $this->_port; - } - - if ( $this->_timeout<=0 ) - $fp = @fsockopen ( $host, $port, $errno, $errstr ); - else - $fp = @fsockopen ( $host, $port, $errno, $errstr, $this->_timeout ); - - if ( !$fp ) - { - if ( $this->_path ) - $location = $this->_path; - else - $location = "{$this->_host}:{$this->_port}"; - - $errstr = trim ( $errstr ); - $this->_error = "connection to $location failed (errno=$errno, msg=$errstr)"; - $this->_connerror = true; - return false; - } - - // send my version - // this is a subtle part. we must do it before (!) reading back from searchd. - // because otherwise under some conditions (reported on FreeBSD for instance) - // TCP stack could throttle write-write-read pattern because of Nagle. - if ( !$this->_Send ( $fp, pack ( "N", 1 ), 4 ) ) - { - fclose ( $fp ); - $this->_error = "failed to send client protocol version"; - return false; - } - - // check version - list(,$v) = unpack ( "N*", fread ( $fp, 4 ) ); - $v = (int)$v; - if ( $v<1 ) - { - fclose ( $fp ); - $this->_error = "expected searchd protocol version 1+, got version '$v'"; - return false; - } - - return $fp; - } - - /// get and check response packet from searchd server - function _GetResponse ( $fp, $client_ver ) - { - $response = ""; - $len = 0; - - $header = fread ( $fp, 8 ); - if ( strlen($header)==8 ) - { - list ( $status, $ver, $len ) = array_values ( unpack ( "n2a/Nb", $header ) ); - $left = $len; - while ( $left>0 && !feof($fp) ) - { - $chunk = fread ( $fp, $left ); - if ( $chunk ) - { - $response .= $chunk; - $left -= strlen($chunk); - } - } - } - if ( $this->_socket === false ) - fclose ( $fp ); - - // check response - $read = strlen ( $response ); - if ( !$response || $read!=$len ) - { - $this->_error = $len - ? "failed to read searchd response (status=$status, ver=$ver, len=$len, read=$read)" - : "received zero-sized searchd response"; - return false; - } - - // check status - if ( $status==SEARCHD_WARNING ) - { - list(,$wlen) = unpack ( "N*", substr ( $response, 0, 4 ) ); - $this->_warning = substr ( $response, 4, $wlen ); - return substr ( $response, 4+$wlen ); - } - if ( $status==SEARCHD_ERROR ) - { - $this->_error = "searchd error: " . substr ( $response, 4 ); - return false; - } - if ( $status==SEARCHD_RETRY ) - { - $this->_error = "temporary searchd error: " . substr ( $response, 4 ); - return false; - } - if ( $status!=SEARCHD_OK ) - { - $this->_error = "unknown status code '$status'"; - return false; - } - - // check version - if ( $ver<$client_ver ) - { - $this->_warning = sprintf ( "searchd command v.%d.%d older than client's v.%d.%d, some options might not work", - $ver>>8, $ver&0xff, $client_ver>>8, $client_ver&0xff ); - } - - return $response; - } - - ///////////////////////////////////////////////////////////////////////////// - // searching - ///////////////////////////////////////////////////////////////////////////// - - /// set offset and count into result set, - /// and optionally set max-matches and cutoff limits - function SetLimits ( $offset, $limit, $max=0, $cutoff=0 ) - { - assert ( is_int($offset) ); - assert ( is_int($limit) ); - assert ( $offset>=0 ); - assert ( $limit>0 ); - assert ( $max>=0 ); - $this->_offset = $offset; - $this->_limit = $limit; - if ( $max>0 ) - $this->_maxmatches = $max; - if ( $cutoff>0 ) - $this->_cutoff = $cutoff; - } - - /// set maximum query time, in milliseconds, per-index - /// integer, 0 means "do not limit" - function SetMaxQueryTime ( $max ) - { - assert ( is_int($max) ); - assert ( $max>=0 ); - $this->_maxquerytime = $max; - } - - /// set matching mode - function SetMatchMode ( $mode ) - { - assert ( $mode==SPH_MATCH_ALL - || $mode==SPH_MATCH_ANY - || $mode==SPH_MATCH_PHRASE - || $mode==SPH_MATCH_BOOLEAN - || $mode==SPH_MATCH_EXTENDED - || $mode==SPH_MATCH_FULLSCAN - || $mode==SPH_MATCH_EXTENDED2 ); - $this->_mode = $mode; - } - - /// set ranking mode - function SetRankingMode ( $ranker ) - { - assert ( $ranker==SPH_RANK_PROXIMITY_BM25 - || $ranker==SPH_RANK_BM25 - || $ranker==SPH_RANK_NONE - || $ranker==SPH_RANK_WORDCOUNT - || $ranker==SPH_RANK_PROXIMITY ); - $this->_ranker = $ranker; - } - - /// set matches sorting mode - function SetSortMode ( $mode, $sortby="" ) - { - assert ( - $mode==SPH_SORT_RELEVANCE || - $mode==SPH_SORT_ATTR_DESC || - $mode==SPH_SORT_ATTR_ASC || - $mode==SPH_SORT_TIME_SEGMENTS || - $mode==SPH_SORT_EXTENDED || - $mode==SPH_SORT_EXPR ); - assert ( is_string($sortby) ); - assert ( $mode==SPH_SORT_RELEVANCE || strlen($sortby)>0 ); - - $this->_sort = $mode; - $this->_sortby = $sortby; - } - - /// bind per-field weights by order - /// DEPRECATED; use SetFieldWeights() instead - function SetWeights ( $weights ) - { - assert ( is_array($weights) ); - foreach ( $weights as $weight ) - assert ( is_int($weight) ); - - $this->_weights = $weights; - } - - /// bind per-field weights by name - function SetFieldWeights ( $weights ) - { - assert ( is_array($weights) ); - foreach ( $weights as $name=>$weight ) - { - assert ( is_string($name) ); - assert ( is_int($weight) ); - } - $this->_fieldweights = $weights; - } - - /// bind per-index weights by name - function SetIndexWeights ( $weights ) - { - assert ( is_array($weights) ); - foreach ( $weights as $index=>$weight ) - { - assert ( is_string($index) ); - assert ( is_int($weight) ); - } - $this->_indexweights = $weights; - } - - /// set IDs range to match - /// only match records if document ID is beetwen $min and $max (inclusive) - function SetIDRange ( $min, $max ) - { - assert ( is_numeric($min) ); - assert ( is_numeric($max) ); - assert ( $min<=$max ); - $this->_min_id = $min; - $this->_max_id = $max; - } - - /// set values set filter - /// only match records where $attribute value is in given set - function SetFilter ( $attribute, $values, $exclude=false ) - { - assert ( is_string($attribute) ); - assert ( is_array($values) ); - assert ( count($values) ); - - if ( is_array($values) && count($values) ) - { - foreach ( $values as $value ) - assert ( is_numeric($value) ); - - $this->_filters[] = array ( "type"=>SPH_FILTER_VALUES, "attr"=>$attribute, "exclude"=>$exclude, "values"=>$values ); - } - } - - /// set range filter - /// only match records if $attribute value is beetwen $min and $max (inclusive) - function SetFilterRange ( $attribute, $min, $max, $exclude=false ) - { - assert ( is_string($attribute) ); - assert ( is_numeric($min) ); - assert ( is_numeric($max) ); - assert ( $min<=$max ); - - $this->_filters[] = array ( "type"=>SPH_FILTER_RANGE, "attr"=>$attribute, "exclude"=>$exclude, "min"=>$min, "max"=>$max ); - } - - /// set float range filter - /// only match records if $attribute value is beetwen $min and $max (inclusive) - function SetFilterFloatRange ( $attribute, $min, $max, $exclude=false ) - { - assert ( is_string($attribute) ); - assert ( is_float($min) ); - assert ( is_float($max) ); - assert ( $min<=$max ); - - $this->_filters[] = array ( "type"=>SPH_FILTER_FLOATRANGE, "attr"=>$attribute, "exclude"=>$exclude, "min"=>$min, "max"=>$max ); - } - - /// setup anchor point for geosphere distance calculations - /// required to use @geodist in filters and sorting - /// latitude and longitude must be in radians - function SetGeoAnchor ( $attrlat, $attrlong, $lat, $long ) - { - assert ( is_string($attrlat) ); - assert ( is_string($attrlong) ); - assert ( is_float($lat) ); - assert ( is_float($long) ); - - $this->_anchor = array ( "attrlat"=>$attrlat, "attrlong"=>$attrlong, "lat"=>$lat, "long"=>$long ); - } - - /// set grouping attribute and function - function SetGroupBy ( $attribute, $func, $groupsort="@group desc" ) - { - assert ( is_string($attribute) ); - assert ( is_string($groupsort) ); - assert ( $func==SPH_GROUPBY_DAY - || $func==SPH_GROUPBY_WEEK - || $func==SPH_GROUPBY_MONTH - || $func==SPH_GROUPBY_YEAR - || $func==SPH_GROUPBY_ATTR - || $func==SPH_GROUPBY_ATTRPAIR ); - - $this->_groupby = $attribute; - $this->_groupfunc = $func; - $this->_groupsort = $groupsort; - } - - /// set count-distinct attribute for group-by queries - function SetGroupDistinct ( $attribute ) - { - assert ( is_string($attribute) ); - $this->_groupdistinct = $attribute; - } - - /// set distributed retries count and delay - function SetRetries ( $count, $delay=0 ) - { - assert ( is_int($count) && $count>=0 ); - assert ( is_int($delay) && $delay>=0 ); - $this->_retrycount = $count; - $this->_retrydelay = $delay; - } - - /// set result set format (hash or array; hash by default) - /// PHP specific; needed for group-by-MVA result sets that may contain duplicate IDs - function SetArrayResult ( $arrayresult ) - { - assert ( is_bool($arrayresult) ); - $this->_arrayresult = $arrayresult; - } - - /// set attribute values override - /// there can be only one override per attribute - /// $values must be a hash that maps document IDs to attribute values - function SetOverride ( $attrname, $attrtype, $values ) - { - assert ( is_string ( $attrname ) ); - assert ( in_array ( $attrtype, array ( SPH_ATTR_INTEGER, SPH_ATTR_TIMESTAMP, SPH_ATTR_BOOL, SPH_ATTR_FLOAT, SPH_ATTR_BIGINT ) ) ); - assert ( is_array ( $values ) ); - - $this->_overrides[$attrname] = array ( "attr"=>$attrname, "type"=>$attrtype, "values"=>$values ); - } - - /// set select-list (attributes or expressions), SQL-like syntax - function SetSelect ( $select ) - { - assert ( is_string ( $select ) ); - $this->_select = $select; - } - - ////////////////////////////////////////////////////////////////////////////// - - /// clear all filters (for multi-queries) - function ResetFilters () - { - $this->_filters = array(); - $this->_anchor = array(); - } - - /// clear groupby settings (for multi-queries) - function ResetGroupBy () - { - $this->_groupby = ""; - $this->_groupfunc = SPH_GROUPBY_DAY; - $this->_groupsort = "@group desc"; - $this->_groupdistinct= ""; - } - - /// clear all attribute value overrides (for multi-queries) - function ResetOverrides () - { - $this->_overrides = array (); - } - - ////////////////////////////////////////////////////////////////////////////// - - /// connect to searchd server, run given search query through given indexes, - /// and return the search results - function Query ( $query, $index="*", $comment="" ) - { - assert ( empty($this->_reqs) ); - - $this->AddQuery ( $query, $index, $comment ); - $results = $this->RunQueries (); - $this->_reqs = array (); // just in case it failed too early - - if ( !is_array($results) ) - return false; // probably network error; error message should be already filled - - $this->_error = $results[0]["error"]; - $this->_warning = $results[0]["warning"]; - if ( $results[0]["status"]==SEARCHD_ERROR ) - return false; - else - return $results[0]; - } - - /// helper to pack floats in network byte order - function _PackFloat ( $f ) - { - $t1 = pack ( "f", $f ); // machine order - list(,$t2) = unpack ( "L*", $t1 ); // int in machine order - return pack ( "N", $t2 ); - } - - /// add query to multi-query batch - /// returns index into results array from RunQueries() call - function AddQuery ( $query, $index="*", $comment="" ) - { - // mbstring workaround - $this->_MBPush (); - - // build request - $req = pack ( "NNNNN", $this->_offset, $this->_limit, $this->_mode, $this->_ranker, $this->_sort ); // mode and limits - $req .= pack ( "N", strlen($this->_sortby) ) . $this->_sortby; - $req .= pack ( "N", strlen($query) ) . $query; // query itself - $req .= pack ( "N", count($this->_weights) ); // weights - foreach ( $this->_weights as $weight ) - $req .= pack ( "N", (int)$weight ); - $req .= pack ( "N", strlen($index) ) . $index; // indexes - $req .= pack ( "N", 1 ); // id64 range marker - $req .= sphPackU64 ( $this->_min_id ) . sphPackU64 ( $this->_max_id ); // id64 range - - // filters - $req .= pack ( "N", count($this->_filters) ); - foreach ( $this->_filters as $filter ) - { - $req .= pack ( "N", strlen($filter["attr"]) ) . $filter["attr"]; - $req .= pack ( "N", $filter["type"] ); - switch ( $filter["type"] ) - { - case SPH_FILTER_VALUES: - $req .= pack ( "N", count($filter["values"]) ); - foreach ( $filter["values"] as $value ) - $req .= sphPackI64 ( $value ); - break; - - case SPH_FILTER_RANGE: - $req .= sphPackI64 ( $filter["min"] ) . sphPackI64 ( $filter["max"] ); - break; - - case SPH_FILTER_FLOATRANGE: - $req .= $this->_PackFloat ( $filter["min"] ) . $this->_PackFloat ( $filter["max"] ); - break; - - default: - assert ( 0 && "internal error: unhandled filter type" ); - } - $req .= pack ( "N", $filter["exclude"] ); - } - - // group-by clause, max-matches count, group-sort clause, cutoff count - $req .= pack ( "NN", $this->_groupfunc, strlen($this->_groupby) ) . $this->_groupby; - $req .= pack ( "N", $this->_maxmatches ); - $req .= pack ( "N", strlen($this->_groupsort) ) . $this->_groupsort; - $req .= pack ( "NNN", $this->_cutoff, $this->_retrycount, $this->_retrydelay ); - $req .= pack ( "N", strlen($this->_groupdistinct) ) . $this->_groupdistinct; - - // anchor point - if ( empty($this->_anchor) ) - { - $req .= pack ( "N", 0 ); - } else - { - $a =& $this->_anchor; - $req .= pack ( "N", 1 ); - $req .= pack ( "N", strlen($a["attrlat"]) ) . $a["attrlat"]; - $req .= pack ( "N", strlen($a["attrlong"]) ) . $a["attrlong"]; - $req .= $this->_PackFloat ( $a["lat"] ) . $this->_PackFloat ( $a["long"] ); - } - - // per-index weights - $req .= pack ( "N", count($this->_indexweights) ); - foreach ( $this->_indexweights as $idx=>$weight ) - $req .= pack ( "N", strlen($idx) ) . $idx . pack ( "N", $weight ); - - // max query time - $req .= pack ( "N", $this->_maxquerytime ); - - // per-field weights - $req .= pack ( "N", count($this->_fieldweights) ); - foreach ( $this->_fieldweights as $field=>$weight ) - $req .= pack ( "N", strlen($field) ) . $field . pack ( "N", $weight ); - - // comment - $req .= pack ( "N", strlen($comment) ) . $comment; - - // attribute overrides - $req .= pack ( "N", count($this->_overrides) ); - foreach ( $this->_overrides as $key => $entry ) - { - $req .= pack ( "N", strlen($entry["attr"]) ) . $entry["attr"]; - $req .= pack ( "NN", $entry["type"], count($entry["values"]) ); - foreach ( $entry["values"] as $id=>$val ) - { - assert ( is_numeric($id) ); - assert ( is_numeric($val) ); - - $req .= sphPackU64 ( $id ); - switch ( $entry["type"] ) - { - case SPH_ATTR_FLOAT: $req .= $this->_PackFloat ( $val ); break; - case SPH_ATTR_BIGINT: $req .= sphPackI64 ( $val ); break; - default: $req .= pack ( "N", $val ); break; - } - } - } - - // select-list - $req .= pack ( "N", strlen($this->_select) ) . $this->_select; - - // mbstring workaround - $this->_MBPop (); - - // store request to requests array - $this->_reqs[] = $req; - return count($this->_reqs)-1; - } - - /// connect to searchd, run queries batch, and return an array of result sets - function RunQueries () - { - if ( empty($this->_reqs) ) - { - $this->_error = "no queries defined, issue AddQuery() first"; - return false; - } - - // mbstring workaround - $this->_MBPush (); - - if (!( $fp = $this->_Connect() )) - { - $this->_MBPop (); - return false; - } - - // send query, get response - $nreqs = count($this->_reqs); - $req = join ( "", $this->_reqs ); - $len = 4+strlen($req); - $req = pack ( "nnNN", SEARCHD_COMMAND_SEARCH, VER_COMMAND_SEARCH, $len, $nreqs ) . $req; // add header - - if ( !( $this->_Send ( $fp, $req, $len+8 ) ) || - !( $response = $this->_GetResponse ( $fp, VER_COMMAND_SEARCH ) ) ) - { - $this->_MBPop (); - return false; - } - - // query sent ok; we can reset reqs now - $this->_reqs = array (); - - // parse and return response - return $this->_ParseSearchResponse ( $response, $nreqs ); - } - - /// parse and return search query (or queries) response - function _ParseSearchResponse ( $response, $nreqs ) - { - $p = 0; // current position - $max = strlen($response); // max position for checks, to protect against broken responses - - $results = array (); - for ( $ires=0; $ires<$nreqs && $p<$max; $ires++ ) - { - $results[] = array(); - $result =& $results[$ires]; - - $result["error"] = ""; - $result["warning"] = ""; - - // extract status - list(,$status) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $result["status"] = $status; - if ( $status!=SEARCHD_OK ) - { - list(,$len) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $message = substr ( $response, $p, $len ); $p += $len; - - if ( $status==SEARCHD_WARNING ) - { - $result["warning"] = $message; - } else - { - $result["error"] = $message; - continue; - } - } - - // read schema - $fields = array (); - $attrs = array (); - - list(,$nfields) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - while ( $nfields-->0 && $p<$max ) - { - list(,$len) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $fields[] = substr ( $response, $p, $len ); $p += $len; - } - $result["fields"] = $fields; - - list(,$nattrs) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - while ( $nattrs-->0 && $p<$max ) - { - list(,$len) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $attr = substr ( $response, $p, $len ); $p += $len; - list(,$type) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $attrs[$attr] = $type; - } - $result["attrs"] = $attrs; - - // read match count - list(,$count) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - list(,$id64) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - - // read matches - $idx = -1; - while ( $count-->0 && $p<$max ) - { - // index into result array - $idx++; - - // parse document id and weight - if ( $id64 ) - { - $doc = sphUnpackU64 ( substr ( $response, $p, 8 ) ); $p += 8; - list(,$weight) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - } - else - { - list ( $doc, $weight ) = array_values ( unpack ( "N*N*", - substr ( $response, $p, 8 ) ) ); - $p += 8; - $doc = sphFixUint($doc); - } - $weight = sprintf ( "%u", $weight ); - - // create match entry - if ( $this->_arrayresult ) - $result["matches"][$idx] = array ( "id"=>$doc, "weight"=>$weight ); - else - $result["matches"][$doc]["weight"] = $weight; - - // parse and create attributes - $attrvals = array (); - foreach ( $attrs as $attr=>$type ) - { - // handle 64bit ints - if ( $type==SPH_ATTR_BIGINT ) - { - $attrvals[$attr] = sphUnpackI64 ( substr ( $response, $p, 8 ) ); $p += 8; - continue; - } - - // handle floats - if ( $type==SPH_ATTR_FLOAT ) - { - list(,$uval) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - list(,$fval) = unpack ( "f*", pack ( "L", $uval ) ); - $attrvals[$attr] = $fval; - continue; - } - - // handle everything else as unsigned ints - list(,$val) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - if ( $type & SPH_ATTR_MULTI ) - { - $attrvals[$attr] = array (); - $nvalues = $val; - while ( $nvalues-->0 && $p<$max ) - { - list(,$val) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $attrvals[$attr][] = sphFixUint($val); - } - } else - { - $attrvals[$attr] = sphFixUint($val); - } - } - - if ( $this->_arrayresult ) - $result["matches"][$idx]["attrs"] = $attrvals; - else - $result["matches"][$doc]["attrs"] = $attrvals; - } - - list ( $total, $total_found, $msecs, $words ) = - array_values ( unpack ( "N*N*N*N*", substr ( $response, $p, 16 ) ) ); - $result["total"] = sprintf ( "%u", $total ); - $result["total_found"] = sprintf ( "%u", $total_found ); - $result["time"] = sprintf ( "%.3f", $msecs/1000 ); - $p += 16; - - while ( $words-->0 && $p<$max ) - { - list(,$len) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $word = substr ( $response, $p, $len ); $p += $len; - list ( $docs, $hits ) = array_values ( unpack ( "N*N*", substr ( $response, $p, 8 ) ) ); $p += 8; - $result["words"][$word] = array ( - "docs"=>sprintf ( "%u", $docs ), - "hits"=>sprintf ( "%u", $hits ) ); - } - } - - $this->_MBPop (); - return $results; - } - - ///////////////////////////////////////////////////////////////////////////// - // excerpts generation - ///////////////////////////////////////////////////////////////////////////// - - /// connect to searchd server, and generate exceprts (snippets) - /// of given documents for given query. returns false on failure, - /// an array of snippets on success - function BuildExcerpts ( $docs, $index, $words, $opts=array() ) - { - assert ( is_array($docs) ); - assert ( is_string($index) ); - assert ( is_string($words) ); - assert ( is_array($opts) ); - - $this->_MBPush (); - - if (!( $fp = $this->_Connect() )) - { - $this->_MBPop(); - return false; - } - - ///////////////// - // fixup options - ///////////////// - - if ( !isset($opts["before_match"]) ) $opts["before_match"] = ""; - if ( !isset($opts["after_match"]) ) $opts["after_match"] = ""; - if ( !isset($opts["chunk_separator"]) ) $opts["chunk_separator"] = " ... "; - if ( !isset($opts["limit"]) ) $opts["limit"] = 256; - if ( !isset($opts["around"]) ) $opts["around"] = 5; - if ( !isset($opts["exact_phrase"]) ) $opts["exact_phrase"] = false; - if ( !isset($opts["single_passage"]) ) $opts["single_passage"] = false; - if ( !isset($opts["use_boundaries"]) ) $opts["use_boundaries"] = false; - if ( !isset($opts["weight_order"]) ) $opts["weight_order"] = false; - - ///////////////// - // build request - ///////////////// - - // v.1.0 req - $flags = 1; // remove spaces - if ( $opts["exact_phrase"] ) $flags |= 2; - if ( $opts["single_passage"] ) $flags |= 4; - if ( $opts["use_boundaries"] ) $flags |= 8; - if ( $opts["weight_order"] ) $flags |= 16; - $req = pack ( "NN", 0, $flags ); // mode=0, flags=$flags - $req .= pack ( "N", strlen($index) ) . $index; // req index - $req .= pack ( "N", strlen($words) ) . $words; // req words - - // options - $req .= pack ( "N", strlen($opts["before_match"]) ) . $opts["before_match"]; - $req .= pack ( "N", strlen($opts["after_match"]) ) . $opts["after_match"]; - $req .= pack ( "N", strlen($opts["chunk_separator"]) ) . $opts["chunk_separator"]; - $req .= pack ( "N", (int)$opts["limit"] ); - $req .= pack ( "N", (int)$opts["around"] ); - - // documents - $req .= pack ( "N", count($docs) ); - foreach ( $docs as $doc ) - { - assert ( is_string($doc) ); - $req .= pack ( "N", strlen($doc) ) . $doc; - } - - //////////////////////////// - // send query, get response - //////////////////////////// - - $len = strlen($req); - $req = pack ( "nnN", SEARCHD_COMMAND_EXCERPT, VER_COMMAND_EXCERPT, $len ) . $req; // add header - if ( !( $this->_Send ( $fp, $req, $len+8 ) ) || - !( $response = $this->_GetResponse ( $fp, VER_COMMAND_EXCERPT ) ) ) - { - $this->_MBPop (); - return false; - } - - ////////////////// - // parse response - ////////////////// - - $pos = 0; - $res = array (); - $rlen = strlen($response); - for ( $i=0; $i $rlen ) - { - $this->_error = "incomplete reply"; - $this->_MBPop (); - return false; - } - $res[] = $len ? substr ( $response, $pos, $len ) : ""; - $pos += $len; - } - - $this->_MBPop (); - return $res; - } - - - ///////////////////////////////////////////////////////////////////////////// - // keyword generation - ///////////////////////////////////////////////////////////////////////////// - - /// connect to searchd server, and generate keyword list for a given query - /// returns false on failure, - /// an array of words on success - function BuildKeywords ( $query, $index, $hits ) - { - assert ( is_string($query) ); - assert ( is_string($index) ); - assert ( is_bool($hits) ); - - $this->_MBPush (); - - if (!( $fp = $this->_Connect() )) - { - $this->_MBPop(); - return false; - } - - ///////////////// - // build request - ///////////////// - - // v.1.0 req - $req = pack ( "N", strlen($query) ) . $query; // req query - $req .= pack ( "N", strlen($index) ) . $index; // req index - $req .= pack ( "N", (int)$hits ); - - //////////////////////////// - // send query, get response - //////////////////////////// - - $len = strlen($req); - $req = pack ( "nnN", SEARCHD_COMMAND_KEYWORDS, VER_COMMAND_KEYWORDS, $len ) . $req; // add header - if ( !( $this->_Send ( $fp, $req, $len+8 ) ) || - !( $response = $this->_GetResponse ( $fp, VER_COMMAND_KEYWORDS ) ) ) - { - $this->_MBPop (); - return false; - } - - ////////////////// - // parse response - ////////////////// - - $pos = 0; - $res = array (); - $rlen = strlen($response); - list(,$nwords) = unpack ( "N*", substr ( $response, $pos, 4 ) ); - $pos += 4; - for ( $i=0; $i<$nwords; $i++ ) - { - list(,$len) = unpack ( "N*", substr ( $response, $pos, 4 ) ); $pos += 4; - $tokenized = $len ? substr ( $response, $pos, $len ) : ""; - $pos += $len; - - list(,$len) = unpack ( "N*", substr ( $response, $pos, 4 ) ); $pos += 4; - $normalized = $len ? substr ( $response, $pos, $len ) : ""; - $pos += $len; - - $res[] = array ( "tokenized"=>$tokenized, "normalized"=>$normalized ); - - if ( $hits ) - { - list($ndocs,$nhits) = array_values ( unpack ( "N*N*", substr ( $response, $pos, 8 ) ) ); - $pos += 8; - $res [$i]["docs"] = $ndocs; - $res [$i]["hits"] = $nhits; - } - - if ( $pos > $rlen ) - { - $this->_error = "incomplete reply"; - $this->_MBPop (); - return false; - } - } - - $this->_MBPop (); - return $res; - } - - function EscapeString ( $string ) - { - $from = array ( '\\', '(',')','|','-','!','@','~','"','&', '/', '^', '$', '=' ); - $to = array ( '\\\\', '\(','\)','\|','\-','\!','\@','\~','\"', '\&', '\/', '\^', '\$', '\=' ); - - return str_replace ( $from, $to, $string ); - } - - ///////////////////////////////////////////////////////////////////////////// - // attribute updates - ///////////////////////////////////////////////////////////////////////////// - - /// batch update given attributes in given rows in given indexes - /// returns amount of updated documents (0 or more) on success, or -1 on failure - function UpdateAttributes ( $index, $attrs, $values, $mva=false ) - { - // verify everything - assert ( is_string($index) ); - assert ( is_bool($mva) ); - - assert ( is_array($attrs) ); - foreach ( $attrs as $attr ) - assert ( is_string($attr) ); - - assert ( is_array($values) ); - foreach ( $values as $id=>$entry ) - { - assert ( is_numeric($id) ); - assert ( is_array($entry) ); - assert ( count($entry)==count($attrs) ); - foreach ( $entry as $v ) - { - if ( $mva ) - { - assert ( is_array($v) ); - foreach ( $v as $vv ) - assert ( is_int($vv) ); - } else - assert ( is_int($v) ); - } - } - - // build request - $req = pack ( "N", strlen($index) ) . $index; - - $req .= pack ( "N", count($attrs) ); - foreach ( $attrs as $attr ) - { - $req .= pack ( "N", strlen($attr) ) . $attr; - $req .= pack ( "N", $mva ? 1 : 0 ); - } - - $req .= pack ( "N", count($values) ); - foreach ( $values as $id=>$entry ) - { - $req .= sphPackU64 ( $id ); - foreach ( $entry as $v ) - { - $req .= pack ( "N", $mva ? count($v) : $v ); - if ( $mva ) - foreach ( $v as $vv ) - $req .= pack ( "N", $vv ); - } - } - - // connect, send query, get response - if (!( $fp = $this->_Connect() )) - return -1; - - $len = strlen($req); - $req = pack ( "nnN", SEARCHD_COMMAND_UPDATE, VER_COMMAND_UPDATE, $len ) . $req; // add header - if ( !$this->_Send ( $fp, $req, $len+8 ) ) - return -1; - - if (!( $response = $this->_GetResponse ( $fp, VER_COMMAND_UPDATE ) )) - return -1; - - // parse response - list(,$updated) = unpack ( "N*", substr ( $response, 0, 4 ) ); - return $updated; - } - - ///////////////////////////////////////////////////////////////////////////// - // persistent connections - ///////////////////////////////////////////////////////////////////////////// - - function Open() - { - if ( $this->_socket !== false ) - { - $this->_error = 'already connected'; - return false; - } - if ( !$fp = $this->_Connect() ) - return false; - - // command, command version = 0, body length = 4, body = 1 - $req = pack ( "nnNN", SEARCHD_COMMAND_PERSIST, 0, 4, 1 ); - if ( !$this->_Send ( $fp, $req, 12 ) ) - return false; - - $this->_socket = $fp; - return true; - } - - function Close() - { - if ( $this->_socket === false ) - { - $this->_error = 'not connected'; - return false; - } - - fclose ( $this->_socket ); - $this->_socket = false; - - return true; - } - - ////////////////////////////////////////////////////////////////////////// - // status - ////////////////////////////////////////////////////////////////////////// - - function Status () - { - $this->_MBPush (); - if (!( $fp = $this->_Connect() )) - { - $this->_MBPop(); - return false; - } - - $req = pack ( "nnNN", SEARCHD_COMMAND_STATUS, VER_COMMAND_STATUS, 4, 1 ); // len=4, body=1 - if ( !( $this->_Send ( $fp, $req, 12 ) ) || - !( $response = $this->_GetResponse ( $fp, VER_COMMAND_STATUS ) ) ) - { - $this->_MBPop (); - return false; - } - - $res = substr ( $response, 4 ); // just ignore length, error handling, etc - $p = 0; - list ( $rows, $cols ) = array_values ( unpack ( "N*N*", substr ( $response, $p, 8 ) ) ); $p += 8; - - $res = array(); - for ( $i=0; $i<$rows; $i++ ) - for ( $j=0; $j<$cols; $j++ ) - { - list(,$len) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $res[$i][] = substr ( $response, $p, $len ); $p += $len; - } - - $this->_MBPop (); - return $res; - } -} - -// -// $Id: sphinxapi.php 2055 2009-11-06 23:09:58Z shodan $ -// diff --git a/library/sphinxapi/sphinxapi-2.0.8.php b/library/sphinxapi/sphinxapi-2.0.8.php deleted file mode 100644 index 71c84ec9..00000000 --- a/library/sphinxapi/sphinxapi-2.0.8.php +++ /dev/null @@ -1,1712 +0,0 @@ -=8 ) - { - $v = (int)$v; - return pack ( "NN", $v>>32, $v&0xFFFFFFFF ); - } - - // x32, int - if ( is_int($v) ) - return pack ( "NN", $v < 0 ? -1 : 0, $v ); - - // x32, bcmath - if ( function_exists("bcmul") ) - { - if ( bccomp ( $v, 0 ) == -1 ) - $v = bcadd ( "18446744073709551616", $v ); - $h = bcdiv ( $v, "4294967296", 0 ); - $l = bcmod ( $v, "4294967296" ); - return pack ( "NN", (float)$h, (float)$l ); // conversion to float is intentional; int would lose 31st bit - } - - // x32, no-bcmath - $p = max(0, strlen($v) - 13); - $lo = abs((float)substr($v, $p)); - $hi = abs((float)substr($v, 0, $p)); - - $m = $lo + $hi*1316134912.0; // (10 ^ 13) % (1 << 32) = 1316134912 - $q = floor($m/4294967296.0); - $l = $m - ($q*4294967296.0); - $h = $hi*2328.0 + $q; // (10 ^ 13) / (1 << 32) = 2328 - - if ( $v<0 ) - { - if ( $l==0 ) - $h = 4294967296.0 - $h; - else - { - $h = 4294967295.0 - $h; - $l = 4294967296.0 - $l; - } - } - return pack ( "NN", $h, $l ); -} - -/// pack 64-bit unsigned -function sphPackU64 ( $v ) -{ - assert ( is_numeric($v) ); - - // x64 - if ( PHP_INT_SIZE>=8 ) - { - assert ( $v>=0 ); - - // x64, int - if ( is_int($v) ) - return pack ( "NN", $v>>32, $v&0xFFFFFFFF ); - - // x64, bcmath - if ( function_exists("bcmul") ) - { - $h = bcdiv ( $v, 4294967296, 0 ); - $l = bcmod ( $v, 4294967296 ); - return pack ( "NN", $h, $l ); - } - - // x64, no-bcmath - $p = max ( 0, strlen($v) - 13 ); - $lo = (int)substr ( $v, $p ); - $hi = (int)substr ( $v, 0, $p ); - - $m = $lo + $hi*1316134912; - $l = $m % 4294967296; - $h = $hi*2328 + (int)($m/4294967296); - - return pack ( "NN", $h, $l ); - } - - // x32, int - if ( is_int($v) ) - return pack ( "NN", 0, $v ); - - // x32, bcmath - if ( function_exists("bcmul") ) - { - $h = bcdiv ( $v, "4294967296", 0 ); - $l = bcmod ( $v, "4294967296" ); - return pack ( "NN", (float)$h, (float)$l ); // conversion to float is intentional; int would lose 31st bit - } - - // x32, no-bcmath - $p = max(0, strlen($v) - 13); - $lo = (float)substr($v, $p); - $hi = (float)substr($v, 0, $p); - - $m = $lo + $hi*1316134912.0; - $q = floor($m / 4294967296.0); - $l = $m - ($q * 4294967296.0); - $h = $hi*2328.0 + $q; - - return pack ( "NN", $h, $l ); -} - -// unpack 64-bit unsigned -function sphUnpackU64 ( $v ) -{ - list ( $hi, $lo ) = array_values ( unpack ( "N*N*", $v ) ); - - if ( PHP_INT_SIZE>=8 ) - { - if ( $hi<0 ) $hi += (1<<32); // because php 5.2.2 to 5.2.5 is totally fucked up again - if ( $lo<0 ) $lo += (1<<32); - - // x64, int - if ( $hi<=2147483647 ) - return ($hi<<32) + $lo; - - // x64, bcmath - if ( function_exists("bcmul") ) - return bcadd ( $lo, bcmul ( $hi, "4294967296" ) ); - - // x64, no-bcmath - $C = 100000; - $h = ((int)($hi / $C) << 32) + (int)($lo / $C); - $l = (($hi % $C) << 32) + ($lo % $C); - if ( $l>$C ) - { - $h += (int)($l / $C); - $l = $l % $C; - } - - if ( $h==0 ) - return $l; - return sprintf ( "%d%05d", $h, $l ); - } - - // x32, int - if ( $hi==0 ) - { - if ( $lo>0 ) - return $lo; - return sprintf ( "%u", $lo ); - } - - $hi = sprintf ( "%u", $hi ); - $lo = sprintf ( "%u", $lo ); - - // x32, bcmath - if ( function_exists("bcmul") ) - return bcadd ( $lo, bcmul ( $hi, "4294967296" ) ); - - // x32, no-bcmath - $hi = (float)$hi; - $lo = (float)$lo; - - $q = floor($hi/10000000.0); - $r = $hi - $q*10000000.0; - $m = $lo + $r*4967296.0; - $mq = floor($m/10000000.0); - $l = $m - $mq*10000000.0; - $h = $q*4294967296.0 + $r*429.0 + $mq; - - $h = sprintf ( "%.0f", $h ); - $l = sprintf ( "%07.0f", $l ); - if ( $h=="0" ) - return sprintf( "%.0f", (float)$l ); - return $h . $l; -} - -// unpack 64-bit signed -function sphUnpackI64 ( $v ) -{ - list ( $hi, $lo ) = array_values ( unpack ( "N*N*", $v ) ); - - // x64 - if ( PHP_INT_SIZE>=8 ) - { - if ( $hi<0 ) $hi += (1<<32); // because php 5.2.2 to 5.2.5 is totally fucked up again - if ( $lo<0 ) $lo += (1<<32); - - return ($hi<<32) + $lo; - } - - // x32, int - if ( $hi==0 ) - { - if ( $lo>0 ) - return $lo; - return sprintf ( "%u", $lo ); - } - // x32, int - elseif ( $hi==-1 ) - { - if ( $lo<0 ) - return $lo; - return sprintf ( "%.0f", $lo - 4294967296.0 ); - } - - $neg = ""; - $c = 0; - if ( $hi<0 ) - { - $hi = ~$hi; - $lo = ~$lo; - $c = 1; - $neg = "-"; - } - - $hi = sprintf ( "%u", $hi ); - $lo = sprintf ( "%u", $lo ); - - // x32, bcmath - if ( function_exists("bcmul") ) - return $neg . bcadd ( bcadd ( $lo, bcmul ( $hi, "4294967296" ) ), $c ); - - // x32, no-bcmath - $hi = (float)$hi; - $lo = (float)$lo; - - $q = floor($hi/10000000.0); - $r = $hi - $q*10000000.0; - $m = $lo + $r*4967296.0; - $mq = floor($m/10000000.0); - $l = $m - $mq*10000000.0 + $c; - $h = $q*4294967296.0 + $r*429.0 + $mq; - if ( $l==10000000 ) - { - $l = 0; - $h += 1; - } - - $h = sprintf ( "%.0f", $h ); - $l = sprintf ( "%07.0f", $l ); - if ( $h=="0" ) - return $neg . sprintf( "%.0f", (float)$l ); - return $neg . $h . $l; -} - - -function sphFixUint ( $value ) -{ - if ( PHP_INT_SIZE>=8 ) - { - // x64 route, workaround broken unpack() in 5.2.2+ - if ( $value<0 ) $value += (1<<32); - return $value; - } - else - { - // x32 route, workaround php signed/unsigned braindamage - return sprintf ( "%u", $value ); - } -} - - -/// sphinx searchd client class -class SphinxClient -{ - var $_host; ///< searchd host (default is "localhost") - var $_port; ///< searchd port (default is 9312) - var $_offset; ///< how many records to seek from result-set start (default is 0) - var $_limit; ///< how many records to return from result-set starting at offset (default is 20) - var $_mode; ///< query matching mode (default is SPH_MATCH_ALL) - var $_weights; ///< per-field weights (default is 1 for all fields) - var $_sort; ///< match sorting mode (default is SPH_SORT_RELEVANCE) - var $_sortby; ///< attribute to sort by (defualt is "") - var $_min_id; ///< min ID to match (default is 0, which means no limit) - var $_max_id; ///< max ID to match (default is 0, which means no limit) - var $_filters; ///< search filters - var $_groupby; ///< group-by attribute name - var $_groupfunc; ///< group-by function (to pre-process group-by attribute value with) - var $_groupsort; ///< group-by sorting clause (to sort groups in result set with) - var $_groupdistinct;///< group-by count-distinct attribute - var $_maxmatches; ///< max matches to retrieve - var $_cutoff; ///< cutoff to stop searching at (default is 0) - var $_retrycount; ///< distributed retries count - var $_retrydelay; ///< distributed retries delay - var $_anchor; ///< geographical anchor point - var $_indexweights; ///< per-index weights - var $_ranker; ///< ranking mode (default is SPH_RANK_PROXIMITY_BM25) - var $_rankexpr; ///< ranking mode expression (for SPH_RANK_EXPR) - var $_maxquerytime; ///< max query time, milliseconds (default is 0, do not limit) - var $_fieldweights; ///< per-field-name weights - var $_overrides; ///< per-query attribute values overrides - var $_select; ///< select-list (attributes or expressions, with optional aliases) - - var $_error; ///< last error message - var $_warning; ///< last warning message - var $_connerror; ///< connection error vs remote error flag - - var $_reqs; ///< requests array for multi-query - var $_mbenc; ///< stored mbstring encoding - var $_arrayresult; ///< whether $result["matches"] should be a hash or an array - var $_timeout; ///< connect timeout - - ///////////////////////////////////////////////////////////////////////////// - // common stuff - ///////////////////////////////////////////////////////////////////////////// - - /// create a new client object and fill defaults - function SphinxClient () - { - // per-client-object settings - $this->_host = "localhost"; - $this->_port = 9312; - $this->_path = false; - $this->_socket = false; - - // per-query settings - $this->_offset = 0; - $this->_limit = 20; - $this->_mode = SPH_MATCH_ALL; - $this->_weights = array (); - $this->_sort = SPH_SORT_RELEVANCE; - $this->_sortby = ""; - $this->_min_id = 0; - $this->_max_id = 0; - $this->_filters = array (); - $this->_groupby = ""; - $this->_groupfunc = SPH_GROUPBY_DAY; - $this->_groupsort = "@group desc"; - $this->_groupdistinct= ""; - $this->_maxmatches = 1000; - $this->_cutoff = 0; - $this->_retrycount = 0; - $this->_retrydelay = 0; - $this->_anchor = array (); - $this->_indexweights= array (); - $this->_ranker = SPH_RANK_PROXIMITY_BM25; - $this->_rankexpr = ""; - $this->_maxquerytime= 0; - $this->_fieldweights= array(); - $this->_overrides = array(); - $this->_select = "*"; - - $this->_error = ""; // per-reply fields (for single-query case) - $this->_warning = ""; - $this->_connerror = false; - - $this->_reqs = array (); // requests storage (for multi-query case) - $this->_mbenc = ""; - $this->_arrayresult = false; - $this->_timeout = 0; - } - - function __destruct() - { - if ( $this->_socket !== false ) - fclose ( $this->_socket ); - } - - /// get last error message (string) - function GetLastError () - { - return $this->_error; - } - - /// get last warning message (string) - function GetLastWarning () - { - return $this->_warning; - } - - /// get last error flag (to tell network connection errors from searchd errors or broken responses) - function IsConnectError() - { - return $this->_connerror; - } - - /// set searchd host name (string) and port (integer) - function SetServer ( $host, $port = 0 ) - { - assert ( is_string($host) ); - if ( $host[0] == '/') - { - $this->_path = 'unix://' . $host; - return; - } - if ( substr ( $host, 0, 7 )=="unix://" ) - { - $this->_path = $host; - return; - } - - $this->_host = $host; - $port = intval($port); - assert ( 0<=$port && $port<65536 ); - $this->_port = ( $port==0 ) ? 9312 : $port; - $this->_path = ''; - } - - /// set server connection timeout (0 to remove) - function SetConnectTimeout ( $timeout ) - { - assert ( is_numeric($timeout) ); - $this->_timeout = $timeout; - } - - - function _Send ( $handle, $data, $length ) - { - if ( feof($handle) || fwrite ( $handle, $data, $length ) !== $length ) - { - $this->_error = 'connection unexpectedly closed (timed out?)'; - $this->_connerror = true; - return false; - } - return true; - } - - ///////////////////////////////////////////////////////////////////////////// - - /// enter mbstring workaround mode - function _MBPush () - { - $this->_mbenc = ""; - if ( ini_get ( "mbstring.func_overload" ) & 2 ) - { - $this->_mbenc = mb_internal_encoding(); - mb_internal_encoding ( "latin1" ); - } - } - - /// leave mbstring workaround mode - function _MBPop () - { - if ( $this->_mbenc ) - mb_internal_encoding ( $this->_mbenc ); - } - - /// connect to searchd server - function _Connect () - { - if ( $this->_socket!==false ) - { - // we are in persistent connection mode, so we have a socket - // however, need to check whether it's still alive - if ( !@feof ( $this->_socket ) ) - return $this->_socket; - - // force reopen - $this->_socket = false; - } - - $errno = 0; - $errstr = ""; - $this->_connerror = false; - - if ( $this->_path ) - { - $host = $this->_path; - $port = 0; - } - else - { - $host = $this->_host; - $port = $this->_port; - } - - if ( $this->_timeout<=0 ) - $fp = @fsockopen ( $host, $port, $errno, $errstr ); - else - $fp = @fsockopen ( $host, $port, $errno, $errstr, $this->_timeout ); - - if ( !$fp ) - { - if ( $this->_path ) - $location = $this->_path; - else - $location = "{$this->_host}:{$this->_port}"; - - $errstr = trim ( $errstr ); - $this->_error = "connection to $location failed (errno=$errno, msg=$errstr)"; - $this->_connerror = true; - return false; - } - - // send my version - // this is a subtle part. we must do it before (!) reading back from searchd. - // because otherwise under some conditions (reported on FreeBSD for instance) - // TCP stack could throttle write-write-read pattern because of Nagle. - if ( !$this->_Send ( $fp, pack ( "N", 1 ), 4 ) ) - { - fclose ( $fp ); - $this->_error = "failed to send client protocol version"; - return false; - } - - // check version - list(,$v) = unpack ( "N*", fread ( $fp, 4 ) ); - $v = (int)$v; - if ( $v<1 ) - { - fclose ( $fp ); - $this->_error = "expected searchd protocol version 1+, got version '$v'"; - return false; - } - - return $fp; - } - - /// get and check response packet from searchd server - function _GetResponse ( $fp, $client_ver ) - { - $response = ""; - $len = 0; - - $header = fread ( $fp, 8 ); - if ( strlen($header)==8 ) - { - list ( $status, $ver, $len ) = array_values ( unpack ( "n2a/Nb", $header ) ); - $left = $len; - while ( $left>0 && !feof($fp) ) - { - $chunk = fread ( $fp, min ( 8192, $left ) ); - if ( $chunk ) - { - $response .= $chunk; - $left -= strlen($chunk); - } - } - } - if ( $this->_socket === false ) - fclose ( $fp ); - - // check response - $read = strlen ( $response ); - if ( !$response || $read!=$len ) - { - $this->_error = $len - ? "failed to read searchd response (status=$status, ver=$ver, len=$len, read=$read)" - : "received zero-sized searchd response"; - return false; - } - - // check status - if ( $status==SEARCHD_WARNING ) - { - list(,$wlen) = unpack ( "N*", substr ( $response, 0, 4 ) ); - $this->_warning = substr ( $response, 4, $wlen ); - return substr ( $response, 4+$wlen ); - } - if ( $status==SEARCHD_ERROR ) - { - $this->_error = "searchd error: " . substr ( $response, 4 ); - return false; - } - if ( $status==SEARCHD_RETRY ) - { - $this->_error = "temporary searchd error: " . substr ( $response, 4 ); - return false; - } - if ( $status!=SEARCHD_OK ) - { - $this->_error = "unknown status code '$status'"; - return false; - } - - // check version - if ( $ver<$client_ver ) - { - $this->_warning = sprintf ( "searchd command v.%d.%d older than client's v.%d.%d, some options might not work", - $ver>>8, $ver&0xff, $client_ver>>8, $client_ver&0xff ); - } - - return $response; - } - - ///////////////////////////////////////////////////////////////////////////// - // searching - ///////////////////////////////////////////////////////////////////////////// - - /// set offset and count into result set, - /// and optionally set max-matches and cutoff limits - function SetLimits ( $offset, $limit, $max=0, $cutoff=0 ) - { - assert ( is_int($offset) ); - assert ( is_int($limit) ); - assert ( $offset>=0 ); - assert ( $limit>0 ); - assert ( $max>=0 ); - $this->_offset = $offset; - $this->_limit = $limit; - if ( $max>0 ) - $this->_maxmatches = $max; - if ( $cutoff>0 ) - $this->_cutoff = $cutoff; - } - - /// set maximum query time, in milliseconds, per-index - /// integer, 0 means "do not limit" - function SetMaxQueryTime ( $max ) - { - assert ( is_int($max) ); - assert ( $max>=0 ); - $this->_maxquerytime = $max; - } - - /// set matching mode - function SetMatchMode ( $mode ) - { - assert ( $mode==SPH_MATCH_ALL - || $mode==SPH_MATCH_ANY - || $mode==SPH_MATCH_PHRASE - || $mode==SPH_MATCH_BOOLEAN - || $mode==SPH_MATCH_EXTENDED - || $mode==SPH_MATCH_FULLSCAN - || $mode==SPH_MATCH_EXTENDED2 ); - $this->_mode = $mode; - } - - /// set ranking mode - function SetRankingMode ( $ranker, $rankexpr="" ) - { - assert ( $ranker===0 || $ranker>=1 && $ranker_ranker = $ranker; - $this->_rankexpr = $rankexpr; - } - - /// set matches sorting mode - function SetSortMode ( $mode, $sortby="" ) - { - assert ( - $mode==SPH_SORT_RELEVANCE || - $mode==SPH_SORT_ATTR_DESC || - $mode==SPH_SORT_ATTR_ASC || - $mode==SPH_SORT_TIME_SEGMENTS || - $mode==SPH_SORT_EXTENDED || - $mode==SPH_SORT_EXPR ); - assert ( is_string($sortby) ); - assert ( $mode==SPH_SORT_RELEVANCE || strlen($sortby)>0 ); - - $this->_sort = $mode; - $this->_sortby = $sortby; - } - - /// bind per-field weights by order - /// DEPRECATED; use SetFieldWeights() instead - function SetWeights ( $weights ) - { - assert ( is_array($weights) ); - foreach ( $weights as $weight ) - assert ( is_int($weight) ); - - $this->_weights = $weights; - } - - /// bind per-field weights by name - function SetFieldWeights ( $weights ) - { - assert ( is_array($weights) ); - foreach ( $weights as $name=>$weight ) - { - assert ( is_string($name) ); - assert ( is_int($weight) ); - } - $this->_fieldweights = $weights; - } - - /// bind per-index weights by name - function SetIndexWeights ( $weights ) - { - assert ( is_array($weights) ); - foreach ( $weights as $index=>$weight ) - { - assert ( is_string($index) ); - assert ( is_int($weight) ); - } - $this->_indexweights = $weights; - } - - /// set IDs range to match - /// only match records if document ID is beetwen $min and $max (inclusive) - function SetIDRange ( $min, $max ) - { - assert ( is_numeric($min) ); - assert ( is_numeric($max) ); - assert ( $min<=$max ); - $this->_min_id = $min; - $this->_max_id = $max; - } - - /// set values set filter - /// only match records where $attribute value is in given set - function SetFilter ( $attribute, $values, $exclude=false ) - { - assert ( is_string($attribute) ); - assert ( is_array($values) ); - assert ( count($values) ); - - if ( is_array($values) && count($values) ) - { - foreach ( $values as $value ) - assert ( is_numeric($value) ); - - $this->_filters[] = array ( "type"=>SPH_FILTER_VALUES, "attr"=>$attribute, "exclude"=>$exclude, "values"=>$values ); - } - } - - /// set range filter - /// only match records if $attribute value is beetwen $min and $max (inclusive) - function SetFilterRange ( $attribute, $min, $max, $exclude=false ) - { - assert ( is_string($attribute) ); - assert ( is_numeric($min) ); - assert ( is_numeric($max) ); - assert ( $min<=$max ); - - $this->_filters[] = array ( "type"=>SPH_FILTER_RANGE, "attr"=>$attribute, "exclude"=>$exclude, "min"=>$min, "max"=>$max ); - } - - /// set float range filter - /// only match records if $attribute value is beetwen $min and $max (inclusive) - function SetFilterFloatRange ( $attribute, $min, $max, $exclude=false ) - { - assert ( is_string($attribute) ); - assert ( is_float($min) ); - assert ( is_float($max) ); - assert ( $min<=$max ); - - $this->_filters[] = array ( "type"=>SPH_FILTER_FLOATRANGE, "attr"=>$attribute, "exclude"=>$exclude, "min"=>$min, "max"=>$max ); - } - - /// setup anchor point for geosphere distance calculations - /// required to use @geodist in filters and sorting - /// latitude and longitude must be in radians - function SetGeoAnchor ( $attrlat, $attrlong, $lat, $long ) - { - assert ( is_string($attrlat) ); - assert ( is_string($attrlong) ); - assert ( is_float($lat) ); - assert ( is_float($long) ); - - $this->_anchor = array ( "attrlat"=>$attrlat, "attrlong"=>$attrlong, "lat"=>$lat, "long"=>$long ); - } - - /// set grouping attribute and function - function SetGroupBy ( $attribute, $func, $groupsort="@group desc" ) - { - assert ( is_string($attribute) ); - assert ( is_string($groupsort) ); - assert ( $func==SPH_GROUPBY_DAY - || $func==SPH_GROUPBY_WEEK - || $func==SPH_GROUPBY_MONTH - || $func==SPH_GROUPBY_YEAR - || $func==SPH_GROUPBY_ATTR - || $func==SPH_GROUPBY_ATTRPAIR ); - - $this->_groupby = $attribute; - $this->_groupfunc = $func; - $this->_groupsort = $groupsort; - } - - /// set count-distinct attribute for group-by queries - function SetGroupDistinct ( $attribute ) - { - assert ( is_string($attribute) ); - $this->_groupdistinct = $attribute; - } - - /// set distributed retries count and delay - function SetRetries ( $count, $delay=0 ) - { - assert ( is_int($count) && $count>=0 ); - assert ( is_int($delay) && $delay>=0 ); - $this->_retrycount = $count; - $this->_retrydelay = $delay; - } - - /// set result set format (hash or array; hash by default) - /// PHP specific; needed for group-by-MVA result sets that may contain duplicate IDs - function SetArrayResult ( $arrayresult ) - { - assert ( is_bool($arrayresult) ); - $this->_arrayresult = $arrayresult; - } - - /// set attribute values override - /// there can be only one override per attribute - /// $values must be a hash that maps document IDs to attribute values - function SetOverride ( $attrname, $attrtype, $values ) - { - assert ( is_string ( $attrname ) ); - assert ( in_array ( $attrtype, array ( SPH_ATTR_INTEGER, SPH_ATTR_TIMESTAMP, SPH_ATTR_BOOL, SPH_ATTR_FLOAT, SPH_ATTR_BIGINT ) ) ); - assert ( is_array ( $values ) ); - - $this->_overrides[$attrname] = array ( "attr"=>$attrname, "type"=>$attrtype, "values"=>$values ); - } - - /// set select-list (attributes or expressions), SQL-like syntax - function SetSelect ( $select ) - { - assert ( is_string ( $select ) ); - $this->_select = $select; - } - - ////////////////////////////////////////////////////////////////////////////// - - /// clear all filters (for multi-queries) - function ResetFilters () - { - $this->_filters = array(); - $this->_anchor = array(); - } - - /// clear groupby settings (for multi-queries) - function ResetGroupBy () - { - $this->_groupby = ""; - $this->_groupfunc = SPH_GROUPBY_DAY; - $this->_groupsort = "@group desc"; - $this->_groupdistinct= ""; - } - - /// clear all attribute value overrides (for multi-queries) - function ResetOverrides () - { - $this->_overrides = array (); - } - - ////////////////////////////////////////////////////////////////////////////// - - /// connect to searchd server, run given search query through given indexes, - /// and return the search results - function Query ( $query, $index="*", $comment="" ) - { - assert ( empty($this->_reqs) ); - - $this->AddQuery ( $query, $index, $comment ); - $results = $this->RunQueries (); - $this->_reqs = array (); // just in case it failed too early - - if ( !is_array($results) ) - return false; // probably network error; error message should be already filled - - $this->_error = $results[0]["error"]; - $this->_warning = $results[0]["warning"]; - if ( $results[0]["status"]==SEARCHD_ERROR ) - return false; - else - return $results[0]; - } - - /// helper to pack floats in network byte order - function _PackFloat ( $f ) - { - $t1 = pack ( "f", $f ); // machine order - list(,$t2) = unpack ( "L*", $t1 ); // int in machine order - return pack ( "N", $t2 ); - } - - /// add query to multi-query batch - /// returns index into results array from RunQueries() call - function AddQuery ( $query, $index="*", $comment="" ) - { - // mbstring workaround - $this->_MBPush (); - - // build request - $req = pack ( "NNNN", $this->_offset, $this->_limit, $this->_mode, $this->_ranker ); - if ( $this->_ranker==SPH_RANK_EXPR ) - $req .= pack ( "N", strlen($this->_rankexpr) ) . $this->_rankexpr; - $req .= pack ( "N", $this->_sort ); // (deprecated) sort mode - $req .= pack ( "N", strlen($this->_sortby) ) . $this->_sortby; - $req .= pack ( "N", strlen($query) ) . $query; // query itself - $req .= pack ( "N", count($this->_weights) ); // weights - foreach ( $this->_weights as $weight ) - $req .= pack ( "N", (int)$weight ); - $req .= pack ( "N", strlen($index) ) . $index; // indexes - $req .= pack ( "N", 1 ); // id64 range marker - $req .= sphPackU64 ( $this->_min_id ) . sphPackU64 ( $this->_max_id ); // id64 range - - // filters - $req .= pack ( "N", count($this->_filters) ); - foreach ( $this->_filters as $filter ) - { - $req .= pack ( "N", strlen($filter["attr"]) ) . $filter["attr"]; - $req .= pack ( "N", $filter["type"] ); - switch ( $filter["type"] ) - { - case SPH_FILTER_VALUES: - $req .= pack ( "N", count($filter["values"]) ); - foreach ( $filter["values"] as $value ) - $req .= sphPackI64 ( $value ); - break; - - case SPH_FILTER_RANGE: - $req .= sphPackI64 ( $filter["min"] ) . sphPackI64 ( $filter["max"] ); - break; - - case SPH_FILTER_FLOATRANGE: - $req .= $this->_PackFloat ( $filter["min"] ) . $this->_PackFloat ( $filter["max"] ); - break; - - default: - assert ( 0 && "internal error: unhandled filter type" ); - } - $req .= pack ( "N", $filter["exclude"] ); - } - - // group-by clause, max-matches count, group-sort clause, cutoff count - $req .= pack ( "NN", $this->_groupfunc, strlen($this->_groupby) ) . $this->_groupby; - $req .= pack ( "N", $this->_maxmatches ); - $req .= pack ( "N", strlen($this->_groupsort) ) . $this->_groupsort; - $req .= pack ( "NNN", $this->_cutoff, $this->_retrycount, $this->_retrydelay ); - $req .= pack ( "N", strlen($this->_groupdistinct) ) . $this->_groupdistinct; - - // anchor point - if ( empty($this->_anchor) ) - { - $req .= pack ( "N", 0 ); - } else - { - $a =& $this->_anchor; - $req .= pack ( "N", 1 ); - $req .= pack ( "N", strlen($a["attrlat"]) ) . $a["attrlat"]; - $req .= pack ( "N", strlen($a["attrlong"]) ) . $a["attrlong"]; - $req .= $this->_PackFloat ( $a["lat"] ) . $this->_PackFloat ( $a["long"] ); - } - - // per-index weights - $req .= pack ( "N", count($this->_indexweights) ); - foreach ( $this->_indexweights as $idx=>$weight ) - $req .= pack ( "N", strlen($idx) ) . $idx . pack ( "N", $weight ); - - // max query time - $req .= pack ( "N", $this->_maxquerytime ); - - // per-field weights - $req .= pack ( "N", count($this->_fieldweights) ); - foreach ( $this->_fieldweights as $field=>$weight ) - $req .= pack ( "N", strlen($field) ) . $field . pack ( "N", $weight ); - - // comment - $req .= pack ( "N", strlen($comment) ) . $comment; - - // attribute overrides - $req .= pack ( "N", count($this->_overrides) ); - foreach ( $this->_overrides as $key => $entry ) - { - $req .= pack ( "N", strlen($entry["attr"]) ) . $entry["attr"]; - $req .= pack ( "NN", $entry["type"], count($entry["values"]) ); - foreach ( $entry["values"] as $id=>$val ) - { - assert ( is_numeric($id) ); - assert ( is_numeric($val) ); - - $req .= sphPackU64 ( $id ); - switch ( $entry["type"] ) - { - case SPH_ATTR_FLOAT: $req .= $this->_PackFloat ( $val ); break; - case SPH_ATTR_BIGINT: $req .= sphPackI64 ( $val ); break; - default: $req .= pack ( "N", $val ); break; - } - } - } - - // select-list - $req .= pack ( "N", strlen($this->_select) ) . $this->_select; - - // mbstring workaround - $this->_MBPop (); - - // store request to requests array - $this->_reqs[] = $req; - return count($this->_reqs)-1; - } - - /// connect to searchd, run queries batch, and return an array of result sets - function RunQueries () - { - if ( empty($this->_reqs) ) - { - $this->_error = "no queries defined, issue AddQuery() first"; - return false; - } - - // mbstring workaround - $this->_MBPush (); - - if (!( $fp = $this->_Connect() )) - { - $this->_MBPop (); - return false; - } - - // send query, get response - $nreqs = count($this->_reqs); - $req = join ( "", $this->_reqs ); - $len = 8+strlen($req); - $req = pack ( "nnNNN", SEARCHD_COMMAND_SEARCH, VER_COMMAND_SEARCH, $len, 0, $nreqs ) . $req; // add header - - if ( !( $this->_Send ( $fp, $req, $len+8 ) ) || - !( $response = $this->_GetResponse ( $fp, VER_COMMAND_SEARCH ) ) ) - { - $this->_MBPop (); - return false; - } - - // query sent ok; we can reset reqs now - $this->_reqs = array (); - - // parse and return response - return $this->_ParseSearchResponse ( $response, $nreqs ); - } - - /// parse and return search query (or queries) response - function _ParseSearchResponse ( $response, $nreqs ) - { - $p = 0; // current position - $max = strlen($response); // max position for checks, to protect against broken responses - - $results = array (); - for ( $ires=0; $ires<$nreqs && $p<$max; $ires++ ) - { - $results[] = array(); - $result =& $results[$ires]; - - $result["error"] = ""; - $result["warning"] = ""; - - // extract status - list(,$status) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $result["status"] = $status; - if ( $status!=SEARCHD_OK ) - { - list(,$len) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $message = substr ( $response, $p, $len ); $p += $len; - - if ( $status==SEARCHD_WARNING ) - { - $result["warning"] = $message; - } else - { - $result["error"] = $message; - continue; - } - } - - // read schema - $fields = array (); - $attrs = array (); - - list(,$nfields) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - while ( $nfields-->0 && $p<$max ) - { - list(,$len) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $fields[] = substr ( $response, $p, $len ); $p += $len; - } - $result["fields"] = $fields; - - list(,$nattrs) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - while ( $nattrs-->0 && $p<$max ) - { - list(,$len) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $attr = substr ( $response, $p, $len ); $p += $len; - list(,$type) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $attrs[$attr] = $type; - } - $result["attrs"] = $attrs; - - // read match count - list(,$count) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - list(,$id64) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - - // read matches - $idx = -1; - while ( $count-->0 && $p<$max ) - { - // index into result array - $idx++; - - // parse document id and weight - if ( $id64 ) - { - $doc = sphUnpackU64 ( substr ( $response, $p, 8 ) ); $p += 8; - list(,$weight) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - } - else - { - list ( $doc, $weight ) = array_values ( unpack ( "N*N*", - substr ( $response, $p, 8 ) ) ); - $p += 8; - $doc = sphFixUint($doc); - } - $weight = sprintf ( "%u", $weight ); - - // create match entry - if ( $this->_arrayresult ) - $result["matches"][$idx] = array ( "id"=>$doc, "weight"=>$weight ); - else - $result["matches"][$doc]["weight"] = $weight; - - // parse and create attributes - $attrvals = array (); - foreach ( $attrs as $attr=>$type ) - { - // handle 64bit ints - if ( $type==SPH_ATTR_BIGINT ) - { - $attrvals[$attr] = sphUnpackI64 ( substr ( $response, $p, 8 ) ); $p += 8; - continue; - } - - // handle floats - if ( $type==SPH_ATTR_FLOAT ) - { - list(,$uval) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - list(,$fval) = unpack ( "f*", pack ( "L", $uval ) ); - $attrvals[$attr] = $fval; - continue; - } - - // handle everything else as unsigned ints - list(,$val) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - if ( $type==SPH_ATTR_MULTI ) - { - $attrvals[$attr] = array (); - $nvalues = $val; - while ( $nvalues-->0 && $p<$max ) - { - list(,$val) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $attrvals[$attr][] = sphFixUint($val); - } - } else if ( $type==SPH_ATTR_MULTI64 ) - { - $attrvals[$attr] = array (); - $nvalues = $val; - while ( $nvalues>0 && $p<$max ) - { - $attrvals[$attr][] = sphUnpackI64 ( substr ( $response, $p, 8 ) ); $p += 8; - $nvalues -= 2; - } - } else if ( $type==SPH_ATTR_STRING ) - { - $attrvals[$attr] = substr ( $response, $p, $val ); - $p += $val; - } else - { - $attrvals[$attr] = sphFixUint($val); - } - } - - if ( $this->_arrayresult ) - $result["matches"][$idx]["attrs"] = $attrvals; - else - $result["matches"][$doc]["attrs"] = $attrvals; - } - - list ( $total, $total_found, $msecs, $words ) = - array_values ( unpack ( "N*N*N*N*", substr ( $response, $p, 16 ) ) ); - $result["total"] = sprintf ( "%u", $total ); - $result["total_found"] = sprintf ( "%u", $total_found ); - $result["time"] = sprintf ( "%.3f", $msecs/1000 ); - $p += 16; - - while ( $words-->0 && $p<$max ) - { - list(,$len) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $word = substr ( $response, $p, $len ); $p += $len; - list ( $docs, $hits ) = array_values ( unpack ( "N*N*", substr ( $response, $p, 8 ) ) ); $p += 8; - $result["words"][$word] = array ( - "docs"=>sprintf ( "%u", $docs ), - "hits"=>sprintf ( "%u", $hits ) ); - } - } - - $this->_MBPop (); - return $results; - } - - ///////////////////////////////////////////////////////////////////////////// - // excerpts generation - ///////////////////////////////////////////////////////////////////////////// - - /// connect to searchd server, and generate exceprts (snippets) - /// of given documents for given query. returns false on failure, - /// an array of snippets on success - function BuildExcerpts ( $docs, $index, $words, $opts=array() ) - { - assert ( is_array($docs) ); - assert ( is_string($index) ); - assert ( is_string($words) ); - assert ( is_array($opts) ); - - $this->_MBPush (); - - if (!( $fp = $this->_Connect() )) - { - $this->_MBPop(); - return false; - } - - ///////////////// - // fixup options - ///////////////// - - if ( !isset($opts["before_match"]) ) $opts["before_match"] = ""; - if ( !isset($opts["after_match"]) ) $opts["after_match"] = ""; - if ( !isset($opts["chunk_separator"]) ) $opts["chunk_separator"] = " ... "; - if ( !isset($opts["limit"]) ) $opts["limit"] = 256; - if ( !isset($opts["limit_passages"]) ) $opts["limit_passages"] = 0; - if ( !isset($opts["limit_words"]) ) $opts["limit_words"] = 0; - if ( !isset($opts["around"]) ) $opts["around"] = 5; - if ( !isset($opts["exact_phrase"]) ) $opts["exact_phrase"] = false; - if ( !isset($opts["single_passage"]) ) $opts["single_passage"] = false; - if ( !isset($opts["use_boundaries"]) ) $opts["use_boundaries"] = false; - if ( !isset($opts["weight_order"]) ) $opts["weight_order"] = false; - if ( !isset($opts["query_mode"]) ) $opts["query_mode"] = false; - if ( !isset($opts["force_all_words"]) ) $opts["force_all_words"] = false; - if ( !isset($opts["start_passage_id"]) ) $opts["start_passage_id"] = 1; - if ( !isset($opts["load_files"]) ) $opts["load_files"] = false; - if ( !isset($opts["html_strip_mode"]) ) $opts["html_strip_mode"] = "index"; - if ( !isset($opts["allow_empty"]) ) $opts["allow_empty"] = false; - if ( !isset($opts["passage_boundary"]) ) $opts["passage_boundary"] = "none"; - if ( !isset($opts["emit_zones"]) ) $opts["emit_zones"] = false; - if ( !isset($opts["load_files_scattered"]) ) $opts["load_files_scattered"] = false; - - - ///////////////// - // build request - ///////////////// - - // v.1.2 req - $flags = 1; // remove spaces - if ( $opts["exact_phrase"] ) $flags |= 2; - if ( $opts["single_passage"] ) $flags |= 4; - if ( $opts["use_boundaries"] ) $flags |= 8; - if ( $opts["weight_order"] ) $flags |= 16; - if ( $opts["query_mode"] ) $flags |= 32; - if ( $opts["force_all_words"] ) $flags |= 64; - if ( $opts["load_files"] ) $flags |= 128; - if ( $opts["allow_empty"] ) $flags |= 256; - if ( $opts["emit_zones"] ) $flags |= 512; - if ( $opts["load_files_scattered"] ) $flags |= 1024; - $req = pack ( "NN", 0, $flags ); // mode=0, flags=$flags - $req .= pack ( "N", strlen($index) ) . $index; // req index - $req .= pack ( "N", strlen($words) ) . $words; // req words - - // options - $req .= pack ( "N", strlen($opts["before_match"]) ) . $opts["before_match"]; - $req .= pack ( "N", strlen($opts["after_match"]) ) . $opts["after_match"]; - $req .= pack ( "N", strlen($opts["chunk_separator"]) ) . $opts["chunk_separator"]; - $req .= pack ( "NN", (int)$opts["limit"], (int)$opts["around"] ); - $req .= pack ( "NNN", (int)$opts["limit_passages"], (int)$opts["limit_words"], (int)$opts["start_passage_id"] ); // v.1.2 - $req .= pack ( "N", strlen($opts["html_strip_mode"]) ) . $opts["html_strip_mode"]; - $req .= pack ( "N", strlen($opts["passage_boundary"]) ) . $opts["passage_boundary"]; - - // documents - $req .= pack ( "N", count($docs) ); - foreach ( $docs as $doc ) - { - assert ( is_string($doc) ); - $req .= pack ( "N", strlen($doc) ) . $doc; - } - - //////////////////////////// - // send query, get response - //////////////////////////// - - $len = strlen($req); - $req = pack ( "nnN", SEARCHD_COMMAND_EXCERPT, VER_COMMAND_EXCERPT, $len ) . $req; // add header - if ( !( $this->_Send ( $fp, $req, $len+8 ) ) || - !( $response = $this->_GetResponse ( $fp, VER_COMMAND_EXCERPT ) ) ) - { - $this->_MBPop (); - return false; - } - - ////////////////// - // parse response - ////////////////// - - $pos = 0; - $res = array (); - $rlen = strlen($response); - for ( $i=0; $i $rlen ) - { - $this->_error = "incomplete reply"; - $this->_MBPop (); - return false; - } - $res[] = $len ? substr ( $response, $pos, $len ) : ""; - $pos += $len; - } - - $this->_MBPop (); - return $res; - } - - - ///////////////////////////////////////////////////////////////////////////// - // keyword generation - ///////////////////////////////////////////////////////////////////////////// - - /// connect to searchd server, and generate keyword list for a given query - /// returns false on failure, - /// an array of words on success - function BuildKeywords ( $query, $index, $hits ) - { - assert ( is_string($query) ); - assert ( is_string($index) ); - assert ( is_bool($hits) ); - - $this->_MBPush (); - - if (!( $fp = $this->_Connect() )) - { - $this->_MBPop(); - return false; - } - - ///////////////// - // build request - ///////////////// - - // v.1.0 req - $req = pack ( "N", strlen($query) ) . $query; // req query - $req .= pack ( "N", strlen($index) ) . $index; // req index - $req .= pack ( "N", (int)$hits ); - - //////////////////////////// - // send query, get response - //////////////////////////// - - $len = strlen($req); - $req = pack ( "nnN", SEARCHD_COMMAND_KEYWORDS, VER_COMMAND_KEYWORDS, $len ) . $req; // add header - if ( !( $this->_Send ( $fp, $req, $len+8 ) ) || - !( $response = $this->_GetResponse ( $fp, VER_COMMAND_KEYWORDS ) ) ) - { - $this->_MBPop (); - return false; - } - - ////////////////// - // parse response - ////////////////// - - $pos = 0; - $res = array (); - $rlen = strlen($response); - list(,$nwords) = unpack ( "N*", substr ( $response, $pos, 4 ) ); - $pos += 4; - for ( $i=0; $i<$nwords; $i++ ) - { - list(,$len) = unpack ( "N*", substr ( $response, $pos, 4 ) ); $pos += 4; - $tokenized = $len ? substr ( $response, $pos, $len ) : ""; - $pos += $len; - - list(,$len) = unpack ( "N*", substr ( $response, $pos, 4 ) ); $pos += 4; - $normalized = $len ? substr ( $response, $pos, $len ) : ""; - $pos += $len; - - $res[] = array ( "tokenized"=>$tokenized, "normalized"=>$normalized ); - - if ( $hits ) - { - list($ndocs,$nhits) = array_values ( unpack ( "N*N*", substr ( $response, $pos, 8 ) ) ); - $pos += 8; - $res [$i]["docs"] = $ndocs; - $res [$i]["hits"] = $nhits; - } - - if ( $pos > $rlen ) - { - $this->_error = "incomplete reply"; - $this->_MBPop (); - return false; - } - } - - $this->_MBPop (); - return $res; - } - - function EscapeString ( $string ) - { - $from = array ( '\\', '(',')','|','-','!','@','~','"','&', '/', '^', '$', '=' ); - $to = array ( '\\\\', '\(','\)','\|','\-','\!','\@','\~','\"', '\&', '\/', '\^', '\$', '\=' ); - - return str_replace ( $from, $to, $string ); - } - - ///////////////////////////////////////////////////////////////////////////// - // attribute updates - ///////////////////////////////////////////////////////////////////////////// - - /// batch update given attributes in given rows in given indexes - /// returns amount of updated documents (0 or more) on success, or -1 on failure - function UpdateAttributes ( $index, $attrs, $values, $mva=false ) - { - // verify everything - assert ( is_string($index) ); - assert ( is_bool($mva) ); - - assert ( is_array($attrs) ); - foreach ( $attrs as $attr ) - assert ( is_string($attr) ); - - assert ( is_array($values) ); - foreach ( $values as $id=>$entry ) - { - assert ( is_numeric($id) ); - assert ( is_array($entry) ); - assert ( count($entry)==count($attrs) ); - foreach ( $entry as $v ) - { - if ( $mva ) - { - assert ( is_array($v) ); - foreach ( $v as $vv ) - assert ( is_int($vv) ); - } else - assert ( is_int($v) ); - } - } - - // build request - $this->_MBPush (); - $req = pack ( "N", strlen($index) ) . $index; - - $req .= pack ( "N", count($attrs) ); - foreach ( $attrs as $attr ) - { - $req .= pack ( "N", strlen($attr) ) . $attr; - $req .= pack ( "N", $mva ? 1 : 0 ); - } - - $req .= pack ( "N", count($values) ); - foreach ( $values as $id=>$entry ) - { - $req .= sphPackU64 ( $id ); - foreach ( $entry as $v ) - { - $req .= pack ( "N", $mva ? count($v) : $v ); - if ( $mva ) - foreach ( $v as $vv ) - $req .= pack ( "N", $vv ); - } - } - - // connect, send query, get response - if (!( $fp = $this->_Connect() )) - { - $this->_MBPop (); - return -1; - } - - $len = strlen($req); - $req = pack ( "nnN", SEARCHD_COMMAND_UPDATE, VER_COMMAND_UPDATE, $len ) . $req; // add header - if ( !$this->_Send ( $fp, $req, $len+8 ) ) - { - $this->_MBPop (); - return -1; - } - - if (!( $response = $this->_GetResponse ( $fp, VER_COMMAND_UPDATE ) )) - { - $this->_MBPop (); - return -1; - } - - // parse response - list(,$updated) = unpack ( "N*", substr ( $response, 0, 4 ) ); - $this->_MBPop (); - return $updated; - } - - ///////////////////////////////////////////////////////////////////////////// - // persistent connections - ///////////////////////////////////////////////////////////////////////////// - - function Open() - { - if ( $this->_socket !== false ) - { - $this->_error = 'already connected'; - return false; - } - if ( !$fp = $this->_Connect() ) - return false; - - // command, command version = 0, body length = 4, body = 1 - $req = pack ( "nnNN", SEARCHD_COMMAND_PERSIST, 0, 4, 1 ); - if ( !$this->_Send ( $fp, $req, 12 ) ) - return false; - - $this->_socket = $fp; - return true; - } - - function Close() - { - if ( $this->_socket === false ) - { - $this->_error = 'not connected'; - return false; - } - - fclose ( $this->_socket ); - $this->_socket = false; - - return true; - } - - ////////////////////////////////////////////////////////////////////////// - // status - ////////////////////////////////////////////////////////////////////////// - - function Status () - { - $this->_MBPush (); - if (!( $fp = $this->_Connect() )) - { - $this->_MBPop(); - return false; - } - - $req = pack ( "nnNN", SEARCHD_COMMAND_STATUS, VER_COMMAND_STATUS, 4, 1 ); // len=4, body=1 - if ( !( $this->_Send ( $fp, $req, 12 ) ) || - !( $response = $this->_GetResponse ( $fp, VER_COMMAND_STATUS ) ) ) - { - $this->_MBPop (); - return false; - } - - $res = substr ( $response, 4 ); // just ignore length, error handling, etc - $p = 0; - list ( $rows, $cols ) = array_values ( unpack ( "N*N*", substr ( $response, $p, 8 ) ) ); $p += 8; - - $res = array(); - for ( $i=0; $i<$rows; $i++ ) - for ( $j=0; $j<$cols; $j++ ) - { - list(,$len) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $res[$i][] = substr ( $response, $p, $len ); $p += $len; - } - - $this->_MBPop (); - return $res; - } - - ////////////////////////////////////////////////////////////////////////// - // flush - ////////////////////////////////////////////////////////////////////////// - - function FlushAttributes () - { - $this->_MBPush (); - if (!( $fp = $this->_Connect() )) - { - $this->_MBPop(); - return -1; - } - - $req = pack ( "nnN", SEARCHD_COMMAND_FLUSHATTRS, VER_COMMAND_FLUSHATTRS, 0 ); // len=0 - if ( !( $this->_Send ( $fp, $req, 8 ) ) || - !( $response = $this->_GetResponse ( $fp, VER_COMMAND_FLUSHATTRS ) ) ) - { - $this->_MBPop (); - return -1; - } - - $tag = -1; - if ( strlen($response)==4 ) - list(,$tag) = unpack ( "N*", $response ); - else - $this->_error = "unexpected response length"; - - $this->_MBPop (); - return $tag; - } -} - -// -// $Id: sphinxapi.php 3782 2013-04-06 18:22:58Z kevg $ -// diff --git a/library/sphinxapi/sphinxapi-2.1.2.php b/library/sphinxapi/sphinxapi-2.1.2.php deleted file mode 100644 index 67a42351..00000000 --- a/library/sphinxapi/sphinxapi-2.1.2.php +++ /dev/null @@ -1,1810 +0,0 @@ -=8 ) - { - $v = (int)$v; - return pack ( "NN", $v>>32, $v&0xFFFFFFFF ); - } - - // x32, int - if ( is_int($v) ) - return pack ( "NN", $v < 0 ? -1 : 0, $v ); - - // x32, bcmath - if ( function_exists("bcmul") ) - { - if ( bccomp ( $v, 0 ) == -1 ) - $v = bcadd ( "18446744073709551616", $v ); - $h = bcdiv ( $v, "4294967296", 0 ); - $l = bcmod ( $v, "4294967296" ); - return pack ( "NN", (float)$h, (float)$l ); // conversion to float is intentional; int would lose 31st bit - } - - // x32, no-bcmath - $p = max(0, strlen($v) - 13); - $lo = abs((float)substr($v, $p)); - $hi = abs((float)substr($v, 0, $p)); - - $m = $lo + $hi*1316134912.0; // (10 ^ 13) % (1 << 32) = 1316134912 - $q = floor($m/4294967296.0); - $l = $m - ($q*4294967296.0); - $h = $hi*2328.0 + $q; // (10 ^ 13) / (1 << 32) = 2328 - - if ( $v<0 ) - { - if ( $l==0 ) - $h = 4294967296.0 - $h; - else - { - $h = 4294967295.0 - $h; - $l = 4294967296.0 - $l; - } - } - return pack ( "NN", $h, $l ); -} - -/// pack 64-bit unsigned -function sphPackU64 ( $v ) -{ - assert ( is_numeric($v) ); - - // x64 - if ( PHP_INT_SIZE>=8 ) - { - assert ( $v>=0 ); - - // x64, int - if ( is_int($v) ) - return pack ( "NN", $v>>32, $v&0xFFFFFFFF ); - - // x64, bcmath - if ( function_exists("bcmul") ) - { - $h = bcdiv ( $v, 4294967296, 0 ); - $l = bcmod ( $v, 4294967296 ); - return pack ( "NN", $h, $l ); - } - - // x64, no-bcmath - $p = max ( 0, strlen($v) - 13 ); - $lo = (int)substr ( $v, $p ); - $hi = (int)substr ( $v, 0, $p ); - - $m = $lo + $hi*1316134912; - $l = $m % 4294967296; - $h = $hi*2328 + (int)($m/4294967296); - - return pack ( "NN", $h, $l ); - } - - // x32, int - if ( is_int($v) ) - return pack ( "NN", 0, $v ); - - // x32, bcmath - if ( function_exists("bcmul") ) - { - $h = bcdiv ( $v, "4294967296", 0 ); - $l = bcmod ( $v, "4294967296" ); - return pack ( "NN", (float)$h, (float)$l ); // conversion to float is intentional; int would lose 31st bit - } - - // x32, no-bcmath - $p = max(0, strlen($v) - 13); - $lo = (float)substr($v, $p); - $hi = (float)substr($v, 0, $p); - - $m = $lo + $hi*1316134912.0; - $q = floor($m / 4294967296.0); - $l = $m - ($q * 4294967296.0); - $h = $hi*2328.0 + $q; - - return pack ( "NN", $h, $l ); -} - -// unpack 64-bit unsigned -function sphUnpackU64 ( $v ) -{ - list ( $hi, $lo ) = array_values ( unpack ( "N*N*", $v ) ); - - if ( PHP_INT_SIZE>=8 ) - { - if ( $hi<0 ) $hi += (1<<32); // because php 5.2.2 to 5.2.5 is totally fucked up again - if ( $lo<0 ) $lo += (1<<32); - - // x64, int - if ( $hi<=2147483647 ) - return ($hi<<32) + $lo; - - // x64, bcmath - if ( function_exists("bcmul") ) - return bcadd ( $lo, bcmul ( $hi, "4294967296" ) ); - - // x64, no-bcmath - $C = 100000; - $h = ((int)($hi / $C) << 32) + (int)($lo / $C); - $l = (($hi % $C) << 32) + ($lo % $C); - if ( $l>$C ) - { - $h += (int)($l / $C); - $l = $l % $C; - } - - if ( $h==0 ) - return $l; - return sprintf ( "%d%05d", $h, $l ); - } - - // x32, int - if ( $hi==0 ) - { - if ( $lo>0 ) - return $lo; - return sprintf ( "%u", $lo ); - } - - $hi = sprintf ( "%u", $hi ); - $lo = sprintf ( "%u", $lo ); - - // x32, bcmath - if ( function_exists("bcmul") ) - return bcadd ( $lo, bcmul ( $hi, "4294967296" ) ); - - // x32, no-bcmath - $hi = (float)$hi; - $lo = (float)$lo; - - $q = floor($hi/10000000.0); - $r = $hi - $q*10000000.0; - $m = $lo + $r*4967296.0; - $mq = floor($m/10000000.0); - $l = $m - $mq*10000000.0; - $h = $q*4294967296.0 + $r*429.0 + $mq; - - $h = sprintf ( "%.0f", $h ); - $l = sprintf ( "%07.0f", $l ); - if ( $h=="0" ) - return sprintf( "%.0f", (float)$l ); - return $h . $l; -} - -// unpack 64-bit signed -function sphUnpackI64 ( $v ) -{ - list ( $hi, $lo ) = array_values ( unpack ( "N*N*", $v ) ); - - // x64 - if ( PHP_INT_SIZE>=8 ) - { - if ( $hi<0 ) $hi += (1<<32); // because php 5.2.2 to 5.2.5 is totally fucked up again - if ( $lo<0 ) $lo += (1<<32); - - return ($hi<<32) + $lo; - } - - // x32, int - if ( $hi==0 ) - { - if ( $lo>0 ) - return $lo; - return sprintf ( "%u", $lo ); - } - // x32, int - elseif ( $hi==-1 ) - { - if ( $lo<0 ) - return $lo; - return sprintf ( "%.0f", $lo - 4294967296.0 ); - } - - $neg = ""; - $c = 0; - if ( $hi<0 ) - { - $hi = ~$hi; - $lo = ~$lo; - $c = 1; - $neg = "-"; - } - - $hi = sprintf ( "%u", $hi ); - $lo = sprintf ( "%u", $lo ); - - // x32, bcmath - if ( function_exists("bcmul") ) - return $neg . bcadd ( bcadd ( $lo, bcmul ( $hi, "4294967296" ) ), $c ); - - // x32, no-bcmath - $hi = (float)$hi; - $lo = (float)$lo; - - $q = floor($hi/10000000.0); - $r = $hi - $q*10000000.0; - $m = $lo + $r*4967296.0; - $mq = floor($m/10000000.0); - $l = $m - $mq*10000000.0 + $c; - $h = $q*4294967296.0 + $r*429.0 + $mq; - if ( $l==10000000 ) - { - $l = 0; - $h += 1; - } - - $h = sprintf ( "%.0f", $h ); - $l = sprintf ( "%07.0f", $l ); - if ( $h=="0" ) - return $neg . sprintf( "%.0f", (float)$l ); - return $neg . $h . $l; -} - - -function sphFixUint ( $value ) -{ - if ( PHP_INT_SIZE>=8 ) - { - // x64 route, workaround broken unpack() in 5.2.2+ - if ( $value<0 ) $value += (1<<32); - return $value; - } - else - { - // x32 route, workaround php signed/unsigned braindamage - return sprintf ( "%u", $value ); - } -} - -function SetBit ( $flag, $bit, $on ) -{ - if ( $on ) - { - $flag += ( 1<<$bit ); - } else - { - $reset = 255 ^ ( 1<<$bit ); - $flag = $flag & $reset; - } - return $flag; -} - - -/// sphinx searchd client class -class SphinxClient -{ - var $_host; ///< searchd host (default is "localhost") - var $_port; ///< searchd port (default is 9312) - var $_offset; ///< how many records to seek from result-set start (default is 0) - var $_limit; ///< how many records to return from result-set starting at offset (default is 20) - var $_mode; ///< query matching mode (default is SPH_MATCH_ALL) - var $_weights; ///< per-field weights (default is 1 for all fields) - var $_sort; ///< match sorting mode (default is SPH_SORT_RELEVANCE) - var $_sortby; ///< attribute to sort by (defualt is "") - var $_min_id; ///< min ID to match (default is 0, which means no limit) - var $_max_id; ///< max ID to match (default is 0, which means no limit) - var $_filters; ///< search filters - var $_groupby; ///< group-by attribute name - var $_groupfunc; ///< group-by function (to pre-process group-by attribute value with) - var $_groupsort; ///< group-by sorting clause (to sort groups in result set with) - var $_groupdistinct;///< group-by count-distinct attribute - var $_maxmatches; ///< max matches to retrieve - var $_cutoff; ///< cutoff to stop searching at (default is 0) - var $_retrycount; ///< distributed retries count - var $_retrydelay; ///< distributed retries delay - var $_anchor; ///< geographical anchor point - var $_indexweights; ///< per-index weights - var $_ranker; ///< ranking mode (default is SPH_RANK_PROXIMITY_BM25) - var $_rankexpr; ///< ranking mode expression (for SPH_RANK_EXPR) - var $_maxquerytime; ///< max query time, milliseconds (default is 0, do not limit) - var $_fieldweights; ///< per-field-name weights - var $_overrides; ///< per-query attribute values overrides - var $_select; ///< select-list (attributes or expressions, with optional aliases) - var $_query_flags; ///< per-query various flags - var $_predictedtime; ///< per-query max_predicted_time - var $_outerorderby; ///< outer match sort by - var $_outeroffset; ///< outer offset - var $_outerlimit; ///< outer limit - var $_hasouter; - - var $_error; ///< last error message - var $_warning; ///< last warning message - var $_connerror; ///< connection error vs remote error flag - - var $_reqs; ///< requests array for multi-query - var $_mbenc; ///< stored mbstring encoding - var $_arrayresult; ///< whether $result["matches"] should be a hash or an array - var $_timeout; ///< connect timeout - - ///////////////////////////////////////////////////////////////////////////// - // common stuff - ///////////////////////////////////////////////////////////////////////////// - - /// create a new client object and fill defaults - function SphinxClient () - { - // per-client-object settings - $this->_host = "localhost"; - $this->_port = 9312; - $this->_path = false; - $this->_socket = false; - - // per-query settings - $this->_offset = 0; - $this->_limit = 20; - $this->_mode = SPH_MATCH_ALL; - $this->_weights = array (); - $this->_sort = SPH_SORT_RELEVANCE; - $this->_sortby = ""; - $this->_min_id = 0; - $this->_max_id = 0; - $this->_filters = array (); - $this->_groupby = ""; - $this->_groupfunc = SPH_GROUPBY_DAY; - $this->_groupsort = "@group desc"; - $this->_groupdistinct= ""; - $this->_maxmatches = 1000; - $this->_cutoff = 0; - $this->_retrycount = 0; - $this->_retrydelay = 0; - $this->_anchor = array (); - $this->_indexweights= array (); - $this->_ranker = SPH_RANK_PROXIMITY_BM25; - $this->_rankexpr = ""; - $this->_maxquerytime= 0; - $this->_fieldweights= array(); - $this->_overrides = array(); - $this->_select = "*"; - $this->_query_flags = 0; - $this->_predictedtime = 0; - $this->_outerorderby = ""; - $this->_outeroffset = 0; - $this->_outerlimit = 0; - $this->_hasouter = false; - - $this->_error = ""; // per-reply fields (for single-query case) - $this->_warning = ""; - $this->_connerror = false; - - $this->_reqs = array (); // requests storage (for multi-query case) - $this->_mbenc = ""; - $this->_arrayresult = false; - $this->_timeout = 0; - } - - function __destruct() - { - if ( $this->_socket !== false ) - fclose ( $this->_socket ); - } - - /// get last error message (string) - function GetLastError () - { - return $this->_error; - } - - /// get last warning message (string) - function GetLastWarning () - { - return $this->_warning; - } - - /// get last error flag (to tell network connection errors from searchd errors or broken responses) - function IsConnectError() - { - return $this->_connerror; - } - - /// set searchd host name (string) and port (integer) - function SetServer ( $host, $port = 0 ) - { - assert ( is_string($host) ); - if ( $host[0] == '/') - { - $this->_path = 'unix://' . $host; - return; - } - if ( substr ( $host, 0, 7 )=="unix://" ) - { - $this->_path = $host; - return; - } - - $this->_host = $host; - $port = intval($port); - assert ( 0<=$port && $port<65536 ); - $this->_port = ( $port==0 ) ? 9312 : $port; - $this->_path = ''; - } - - /// set server connection timeout (0 to remove) - function SetConnectTimeout ( $timeout ) - { - assert ( is_numeric($timeout) ); - $this->_timeout = $timeout; - } - - - function _Send ( $handle, $data, $length ) - { - if ( feof($handle) || fwrite ( $handle, $data, $length ) !== $length ) - { - $this->_error = 'connection unexpectedly closed (timed out?)'; - $this->_connerror = true; - return false; - } - return true; - } - - ///////////////////////////////////////////////////////////////////////////// - - /// enter mbstring workaround mode - function _MBPush () - { - $this->_mbenc = ""; - if ( ini_get ( "mbstring.func_overload" ) & 2 ) - { - $this->_mbenc = mb_internal_encoding(); - mb_internal_encoding ( "latin1" ); - } - } - - /// leave mbstring workaround mode - function _MBPop () - { - if ( $this->_mbenc ) - mb_internal_encoding ( $this->_mbenc ); - } - - /// connect to searchd server - function _Connect () - { - if ( $this->_socket!==false ) - { - // we are in persistent connection mode, so we have a socket - // however, need to check whether it's still alive - if ( !@feof ( $this->_socket ) ) - return $this->_socket; - - // force reopen - $this->_socket = false; - } - - $errno = 0; - $errstr = ""; - $this->_connerror = false; - - if ( $this->_path ) - { - $host = $this->_path; - $port = 0; - } - else - { - $host = $this->_host; - $port = $this->_port; - } - - if ( $this->_timeout<=0 ) - $fp = @fsockopen ( $host, $port, $errno, $errstr ); - else - $fp = @fsockopen ( $host, $port, $errno, $errstr, $this->_timeout ); - - if ( !$fp ) - { - if ( $this->_path ) - $location = $this->_path; - else - $location = "{$this->_host}:{$this->_port}"; - - $errstr = trim ( $errstr ); - $this->_error = "connection to $location failed (errno=$errno, msg=$errstr)"; - $this->_connerror = true; - return false; - } - - // send my version - // this is a subtle part. we must do it before (!) reading back from searchd. - // because otherwise under some conditions (reported on FreeBSD for instance) - // TCP stack could throttle write-write-read pattern because of Nagle. - if ( !$this->_Send ( $fp, pack ( "N", 1 ), 4 ) ) - { - fclose ( $fp ); - $this->_error = "failed to send client protocol version"; - return false; - } - - // check version - list(,$v) = unpack ( "N*", fread ( $fp, 4 ) ); - $v = (int)$v; - if ( $v<1 ) - { - fclose ( $fp ); - $this->_error = "expected searchd protocol version 1+, got version '$v'"; - return false; - } - - return $fp; - } - - /// get and check response packet from searchd server - function _GetResponse ( $fp, $client_ver ) - { - $response = ""; - $len = 0; - - $header = fread ( $fp, 8 ); - if ( strlen($header)==8 ) - { - list ( $status, $ver, $len ) = array_values ( unpack ( "n2a/Nb", $header ) ); - $left = $len; - while ( $left>0 && !feof($fp) ) - { - $chunk = fread ( $fp, min ( 8192, $left ) ); - if ( $chunk ) - { - $response .= $chunk; - $left -= strlen($chunk); - } - } - } - if ( $this->_socket === false ) - fclose ( $fp ); - - // check response - $read = strlen ( $response ); - if ( !$response || $read!=$len ) - { - $this->_error = $len - ? "failed to read searchd response (status=$status, ver=$ver, len=$len, read=$read)" - : "received zero-sized searchd response"; - return false; - } - - // check status - if ( $status==SEARCHD_WARNING ) - { - list(,$wlen) = unpack ( "N*", substr ( $response, 0, 4 ) ); - $this->_warning = substr ( $response, 4, $wlen ); - return substr ( $response, 4+$wlen ); - } - if ( $status==SEARCHD_ERROR ) - { - $this->_error = "searchd error: " . substr ( $response, 4 ); - return false; - } - if ( $status==SEARCHD_RETRY ) - { - $this->_error = "temporary searchd error: " . substr ( $response, 4 ); - return false; - } - if ( $status!=SEARCHD_OK ) - { - $this->_error = "unknown status code '$status'"; - return false; - } - - // check version - if ( $ver<$client_ver ) - { - $this->_warning = sprintf ( "searchd command v.%d.%d older than client's v.%d.%d, some options might not work", - $ver>>8, $ver&0xff, $client_ver>>8, $client_ver&0xff ); - } - - return $response; - } - - ///////////////////////////////////////////////////////////////////////////// - // searching - ///////////////////////////////////////////////////////////////////////////// - - /// set offset and count into result set, - /// and optionally set max-matches and cutoff limits - function SetLimits ( $offset, $limit, $max=0, $cutoff=0 ) - { - assert ( is_int($offset) ); - assert ( is_int($limit) ); - assert ( $offset>=0 ); - assert ( $limit>0 ); - assert ( $max>=0 ); - $this->_offset = $offset; - $this->_limit = $limit; - if ( $max>0 ) - $this->_maxmatches = $max; - if ( $cutoff>0 ) - $this->_cutoff = $cutoff; - } - - /// set maximum query time, in milliseconds, per-index - /// integer, 0 means "do not limit" - function SetMaxQueryTime ( $max ) - { - assert ( is_int($max) ); - assert ( $max>=0 ); - $this->_maxquerytime = $max; - } - - /// set matching mode - function SetMatchMode ( $mode ) - { - assert ( $mode==SPH_MATCH_ALL - || $mode==SPH_MATCH_ANY - || $mode==SPH_MATCH_PHRASE - || $mode==SPH_MATCH_BOOLEAN - || $mode==SPH_MATCH_EXTENDED - || $mode==SPH_MATCH_FULLSCAN - || $mode==SPH_MATCH_EXTENDED2 ); - $this->_mode = $mode; - } - - /// set ranking mode - function SetRankingMode ( $ranker, $rankexpr="" ) - { - assert ( $ranker===0 || $ranker>=1 && $ranker_ranker = $ranker; - $this->_rankexpr = $rankexpr; - } - - /// set matches sorting mode - function SetSortMode ( $mode, $sortby="" ) - { - assert ( - $mode==SPH_SORT_RELEVANCE || - $mode==SPH_SORT_ATTR_DESC || - $mode==SPH_SORT_ATTR_ASC || - $mode==SPH_SORT_TIME_SEGMENTS || - $mode==SPH_SORT_EXTENDED || - $mode==SPH_SORT_EXPR ); - assert ( is_string($sortby) ); - assert ( $mode==SPH_SORT_RELEVANCE || strlen($sortby)>0 ); - - $this->_sort = $mode; - $this->_sortby = $sortby; - } - - /// bind per-field weights by order - /// DEPRECATED; use SetFieldWeights() instead - function SetWeights ( $weights ) - { - assert ( is_array($weights) ); - foreach ( $weights as $weight ) - assert ( is_int($weight) ); - - $this->_weights = $weights; - } - - /// bind per-field weights by name - function SetFieldWeights ( $weights ) - { - assert ( is_array($weights) ); - foreach ( $weights as $name=>$weight ) - { - assert ( is_string($name) ); - assert ( is_int($weight) ); - } - $this->_fieldweights = $weights; - } - - /// bind per-index weights by name - function SetIndexWeights ( $weights ) - { - assert ( is_array($weights) ); - foreach ( $weights as $index=>$weight ) - { - assert ( is_string($index) ); - assert ( is_int($weight) ); - } - $this->_indexweights = $weights; - } - - /// set IDs range to match - /// only match records if document ID is beetwen $min and $max (inclusive) - function SetIDRange ( $min, $max ) - { - assert ( is_numeric($min) ); - assert ( is_numeric($max) ); - assert ( $min<=$max ); - $this->_min_id = $min; - $this->_max_id = $max; - } - - /// set values set filter - /// only match records where $attribute value is in given set - function SetFilter ( $attribute, $values, $exclude=false ) - { - assert ( is_string($attribute) ); - assert ( is_array($values) ); - assert ( count($values) ); - - if ( is_array($values) && count($values) ) - { - foreach ( $values as $value ) - assert ( is_numeric($value) ); - - $this->_filters[] = array ( "type"=>SPH_FILTER_VALUES, "attr"=>$attribute, "exclude"=>$exclude, "values"=>$values ); - } - } - - /// set range filter - /// only match records if $attribute value is beetwen $min and $max (inclusive) - function SetFilterRange ( $attribute, $min, $max, $exclude=false ) - { - assert ( is_string($attribute) ); - assert ( is_numeric($min) ); - assert ( is_numeric($max) ); - assert ( $min<=$max ); - - $this->_filters[] = array ( "type"=>SPH_FILTER_RANGE, "attr"=>$attribute, "exclude"=>$exclude, "min"=>$min, "max"=>$max ); - } - - /// set float range filter - /// only match records if $attribute value is beetwen $min and $max (inclusive) - function SetFilterFloatRange ( $attribute, $min, $max, $exclude=false ) - { - assert ( is_string($attribute) ); - assert ( is_float($min) ); - assert ( is_float($max) ); - assert ( $min<=$max ); - - $this->_filters[] = array ( "type"=>SPH_FILTER_FLOATRANGE, "attr"=>$attribute, "exclude"=>$exclude, "min"=>$min, "max"=>$max ); - } - - /// setup anchor point for geosphere distance calculations - /// required to use @geodist in filters and sorting - /// latitude and longitude must be in radians - function SetGeoAnchor ( $attrlat, $attrlong, $lat, $long ) - { - assert ( is_string($attrlat) ); - assert ( is_string($attrlong) ); - assert ( is_float($lat) ); - assert ( is_float($long) ); - - $this->_anchor = array ( "attrlat"=>$attrlat, "attrlong"=>$attrlong, "lat"=>$lat, "long"=>$long ); - } - - /// set grouping attribute and function - function SetGroupBy ( $attribute, $func, $groupsort="@group desc" ) - { - assert ( is_string($attribute) ); - assert ( is_string($groupsort) ); - assert ( $func==SPH_GROUPBY_DAY - || $func==SPH_GROUPBY_WEEK - || $func==SPH_GROUPBY_MONTH - || $func==SPH_GROUPBY_YEAR - || $func==SPH_GROUPBY_ATTR - || $func==SPH_GROUPBY_ATTRPAIR ); - - $this->_groupby = $attribute; - $this->_groupfunc = $func; - $this->_groupsort = $groupsort; - } - - /// set count-distinct attribute for group-by queries - function SetGroupDistinct ( $attribute ) - { - assert ( is_string($attribute) ); - $this->_groupdistinct = $attribute; - } - - /// set distributed retries count and delay - function SetRetries ( $count, $delay=0 ) - { - assert ( is_int($count) && $count>=0 ); - assert ( is_int($delay) && $delay>=0 ); - $this->_retrycount = $count; - $this->_retrydelay = $delay; - } - - /// set result set format (hash or array; hash by default) - /// PHP specific; needed for group-by-MVA result sets that may contain duplicate IDs - function SetArrayResult ( $arrayresult ) - { - assert ( is_bool($arrayresult) ); - $this->_arrayresult = $arrayresult; - } - - /// set attribute values override - /// there can be only one override per attribute - /// $values must be a hash that maps document IDs to attribute values - function SetOverride ( $attrname, $attrtype, $values ) - { - assert ( is_string ( $attrname ) ); - assert ( in_array ( $attrtype, array ( SPH_ATTR_INTEGER, SPH_ATTR_TIMESTAMP, SPH_ATTR_BOOL, SPH_ATTR_FLOAT, SPH_ATTR_BIGINT ) ) ); - assert ( is_array ( $values ) ); - - $this->_overrides[$attrname] = array ( "attr"=>$attrname, "type"=>$attrtype, "values"=>$values ); - } - - /// set select-list (attributes or expressions), SQL-like syntax - function SetSelect ( $select ) - { - assert ( is_string ( $select ) ); - $this->_select = $select; - } - - function SetQueryFlag ( $flag_name, $flag_value ) - { - $known_names = array ( "reverse_scan", "sort_method", "max_predicted_time", "boolean_simplify", "idf" ); - $flags = array ( - "reverse_scan" => array ( 0, 1 ), - "sort_method" => array ( "pq", "kbuffer" ), - "max_predicted_time" => array ( 0 ), - "boolean_simplify" => array ( true, false ), - "idf" => array ("normalized", "plain" ) - ); - - assert ( isset ( $flag_name, $known_names ) ); - assert ( in_array( $flag_value, $flags[$flag_name], true ) || ( $flag_name=="max_predicted_time" && is_int ( $flag_value ) && $flag_value>=0 ) ); - - if ( $flag_name=="reverse_scan" ) $this->_query_flags = SetBit ( $this->_query_flags, 0, $flag_value==1 ); - if ( $flag_name=="sort_method" ) $this->_query_flags = SetBit ( $this->_query_flags, 1, $flag_value=="kbuffer" ); - if ( $flag_name=="max_predicted_time" ) - { - $this->_query_flags = SetBit ( $this->_query_flags, 2, $flag_value>0 ); - $this->_predictedtime = (int)$flag_value; - } - if ( $flag_name=="boolean_simplify" ) $this->_query_flags = SetBit ( $this->_query_flags, 3, $flag_value ); - if ( $flag_name=="idf" ) $this->_query_flags = SetBit ( $this->_query_flags, 4, $flag_value=="plain" ); - } - - /// set outer order by parameters - function SetOuterSelect ( $orderby, $offset, $limit ) - { - assert ( is_string($orderby) ); - assert ( is_int($offset) ); - assert ( is_int($limit) ); - assert ( $offset>=0 ); - assert ( $limit>0 ); - - $this->_outerorderby = $orderby; - $this->_outeroffset = $offset; - $this->_outerlimit = $limit; - $this->_hasouter = true; - } - - - ////////////////////////////////////////////////////////////////////////////// - - /// clear all filters (for multi-queries) - function ResetFilters () - { - $this->_filters = array(); - $this->_anchor = array(); - } - - /// clear groupby settings (for multi-queries) - function ResetGroupBy () - { - $this->_groupby = ""; - $this->_groupfunc = SPH_GROUPBY_DAY; - $this->_groupsort = "@group desc"; - $this->_groupdistinct= ""; - } - - /// clear all attribute value overrides (for multi-queries) - function ResetOverrides () - { - $this->_overrides = array (); - } - - function ResetQueryFlag () - { - $this->_query_flags = 0; - $this->_predictedtime = 0; - } - - function ResetOuterSelect () - { - $this->_outerorderby = ''; - $this->_outeroffset = 0; - $this->_outerlimit = 0; - $this->_hasouter = false; - } - - ////////////////////////////////////////////////////////////////////////////// - - /// connect to searchd server, run given search query through given indexes, - /// and return the search results - function Query ( $query, $index="*", $comment="" ) - { - assert ( empty($this->_reqs) ); - - $this->AddQuery ( $query, $index, $comment ); - $results = $this->RunQueries (); - $this->_reqs = array (); // just in case it failed too early - - if ( !is_array($results) ) - return false; // probably network error; error message should be already filled - - $this->_error = $results[0]["error"]; - $this->_warning = $results[0]["warning"]; - if ( $results[0]["status"]==SEARCHD_ERROR ) - return false; - else - return $results[0]; - } - - /// helper to pack floats in network byte order - function _PackFloat ( $f ) - { - $t1 = pack ( "f", $f ); // machine order - list(,$t2) = unpack ( "L*", $t1 ); // int in machine order - return pack ( "N", $t2 ); - } - - /// add query to multi-query batch - /// returns index into results array from RunQueries() call - function AddQuery ( $query, $index="*", $comment="" ) - { - // mbstring workaround - $this->_MBPush (); - - // build request - $req = pack ( "NNNNN", $this->_query_flags, $this->_offset, $this->_limit, $this->_mode, $this->_ranker ); - if ( $this->_ranker==SPH_RANK_EXPR ) - $req .= pack ( "N", strlen($this->_rankexpr) ) . $this->_rankexpr; - $req .= pack ( "N", $this->_sort ); // (deprecated) sort mode - $req .= pack ( "N", strlen($this->_sortby) ) . $this->_sortby; - $req .= pack ( "N", strlen($query) ) . $query; // query itself - $req .= pack ( "N", count($this->_weights) ); // weights - foreach ( $this->_weights as $weight ) - $req .= pack ( "N", (int)$weight ); - $req .= pack ( "N", strlen($index) ) . $index; // indexes - $req .= pack ( "N", 1 ); // id64 range marker - $req .= sphPackU64 ( $this->_min_id ) . sphPackU64 ( $this->_max_id ); // id64 range - - // filters - $req .= pack ( "N", count($this->_filters) ); - foreach ( $this->_filters as $filter ) - { - $req .= pack ( "N", strlen($filter["attr"]) ) . $filter["attr"]; - $req .= pack ( "N", $filter["type"] ); - switch ( $filter["type"] ) - { - case SPH_FILTER_VALUES: - $req .= pack ( "N", count($filter["values"]) ); - foreach ( $filter["values"] as $value ) - $req .= sphPackI64 ( $value ); - break; - - case SPH_FILTER_RANGE: - $req .= sphPackI64 ( $filter["min"] ) . sphPackI64 ( $filter["max"] ); - break; - - case SPH_FILTER_FLOATRANGE: - $req .= $this->_PackFloat ( $filter["min"] ) . $this->_PackFloat ( $filter["max"] ); - break; - - default: - assert ( 0 && "internal error: unhandled filter type" ); - } - $req .= pack ( "N", $filter["exclude"] ); - } - - // group-by clause, max-matches count, group-sort clause, cutoff count - $req .= pack ( "NN", $this->_groupfunc, strlen($this->_groupby) ) . $this->_groupby; - $req .= pack ( "N", $this->_maxmatches ); - $req .= pack ( "N", strlen($this->_groupsort) ) . $this->_groupsort; - $req .= pack ( "NNN", $this->_cutoff, $this->_retrycount, $this->_retrydelay ); - $req .= pack ( "N", strlen($this->_groupdistinct) ) . $this->_groupdistinct; - - // anchor point - if ( empty($this->_anchor) ) - { - $req .= pack ( "N", 0 ); - } else - { - $a =& $this->_anchor; - $req .= pack ( "N", 1 ); - $req .= pack ( "N", strlen($a["attrlat"]) ) . $a["attrlat"]; - $req .= pack ( "N", strlen($a["attrlong"]) ) . $a["attrlong"]; - $req .= $this->_PackFloat ( $a["lat"] ) . $this->_PackFloat ( $a["long"] ); - } - - // per-index weights - $req .= pack ( "N", count($this->_indexweights) ); - foreach ( $this->_indexweights as $idx=>$weight ) - $req .= pack ( "N", strlen($idx) ) . $idx . pack ( "N", $weight ); - - // max query time - $req .= pack ( "N", $this->_maxquerytime ); - - // per-field weights - $req .= pack ( "N", count($this->_fieldweights) ); - foreach ( $this->_fieldweights as $field=>$weight ) - $req .= pack ( "N", strlen($field) ) . $field . pack ( "N", $weight ); - - // comment - $req .= pack ( "N", strlen($comment) ) . $comment; - - // attribute overrides - $req .= pack ( "N", count($this->_overrides) ); - foreach ( $this->_overrides as $key => $entry ) - { - $req .= pack ( "N", strlen($entry["attr"]) ) . $entry["attr"]; - $req .= pack ( "NN", $entry["type"], count($entry["values"]) ); - foreach ( $entry["values"] as $id=>$val ) - { - assert ( is_numeric($id) ); - assert ( is_numeric($val) ); - - $req .= sphPackU64 ( $id ); - switch ( $entry["type"] ) - { - case SPH_ATTR_FLOAT: $req .= $this->_PackFloat ( $val ); break; - case SPH_ATTR_BIGINT: $req .= sphPackI64 ( $val ); break; - default: $req .= pack ( "N", $val ); break; - } - } - } - - // select-list - $req .= pack ( "N", strlen($this->_select) ) . $this->_select; - - // max_predicted_time - if ( $this->_predictedtime>0 ) - $req .= pack ( "N", (int)$this->_predictedtime ); - - $req .= pack ( "N", strlen($this->_outerorderby) ) . $this->_outerorderby; - $req .= pack ( "NN", $this->_outeroffset, $this->_outerlimit ); - if ( $this->_hasouter ) - $req .= pack ( "N", 1 ); - else - $req .= pack ( "N", 0 ); - - // mbstring workaround - $this->_MBPop (); - - // store request to requests array - $this->_reqs[] = $req; - return count($this->_reqs)-1; - } - - /// connect to searchd, run queries batch, and return an array of result sets - function RunQueries () - { - if ( empty($this->_reqs) ) - { - $this->_error = "no queries defined, issue AddQuery() first"; - return false; - } - - // mbstring workaround - $this->_MBPush (); - - if (!( $fp = $this->_Connect() )) - { - $this->_MBPop (); - return false; - } - - // send query, get response - $nreqs = count($this->_reqs); - $req = join ( "", $this->_reqs ); - $len = 8+strlen($req); - $req = pack ( "nnNNN", SEARCHD_COMMAND_SEARCH, VER_COMMAND_SEARCH, $len, 0, $nreqs ) . $req; // add header - - if ( !( $this->_Send ( $fp, $req, $len+8 ) ) || - !( $response = $this->_GetResponse ( $fp, VER_COMMAND_SEARCH ) ) ) - { - $this->_MBPop (); - return false; - } - - // query sent ok; we can reset reqs now - $this->_reqs = array (); - - // parse and return response - return $this->_ParseSearchResponse ( $response, $nreqs ); - } - - /// parse and return search query (or queries) response - function _ParseSearchResponse ( $response, $nreqs ) - { - $p = 0; // current position - $max = strlen($response); // max position for checks, to protect against broken responses - - $results = array (); - for ( $ires=0; $ires<$nreqs && $p<$max; $ires++ ) - { - $results[] = array(); - $result =& $results[$ires]; - - $result["error"] = ""; - $result["warning"] = ""; - - // extract status - list(,$status) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $result["status"] = $status; - if ( $status!=SEARCHD_OK ) - { - list(,$len) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $message = substr ( $response, $p, $len ); $p += $len; - - if ( $status==SEARCHD_WARNING ) - { - $result["warning"] = $message; - } else - { - $result["error"] = $message; - continue; - } - } - - // read schema - $fields = array (); - $attrs = array (); - - list(,$nfields) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - while ( $nfields-->0 && $p<$max ) - { - list(,$len) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $fields[] = substr ( $response, $p, $len ); $p += $len; - } - $result["fields"] = $fields; - - list(,$nattrs) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - while ( $nattrs-->0 && $p<$max ) - { - list(,$len) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $attr = substr ( $response, $p, $len ); $p += $len; - list(,$type) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $attrs[$attr] = $type; - } - $result["attrs"] = $attrs; - - // read match count - list(,$count) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - list(,$id64) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - - // read matches - $idx = -1; - while ( $count-->0 && $p<$max ) - { - // index into result array - $idx++; - - // parse document id and weight - if ( $id64 ) - { - $doc = sphUnpackU64 ( substr ( $response, $p, 8 ) ); $p += 8; - list(,$weight) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - } - else - { - list ( $doc, $weight ) = array_values ( unpack ( "N*N*", - substr ( $response, $p, 8 ) ) ); - $p += 8; - $doc = sphFixUint($doc); - } - $weight = sprintf ( "%u", $weight ); - - // create match entry - if ( $this->_arrayresult ) - $result["matches"][$idx] = array ( "id"=>$doc, "weight"=>$weight ); - else - $result["matches"][$doc]["weight"] = $weight; - - // parse and create attributes - $attrvals = array (); - foreach ( $attrs as $attr=>$type ) - { - // handle 64bit ints - if ( $type==SPH_ATTR_BIGINT ) - { - $attrvals[$attr] = sphUnpackI64 ( substr ( $response, $p, 8 ) ); $p += 8; - continue; - } - - // handle floats - if ( $type==SPH_ATTR_FLOAT ) - { - list(,$uval) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - list(,$fval) = unpack ( "f*", pack ( "L", $uval ) ); - $attrvals[$attr] = $fval; - continue; - } - - // handle everything else as unsigned ints - list(,$val) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - if ( $type==SPH_ATTR_MULTI ) - { - $attrvals[$attr] = array (); - $nvalues = $val; - while ( $nvalues-->0 && $p<$max ) - { - list(,$val) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $attrvals[$attr][] = sphFixUint($val); - } - } else if ( $type==SPH_ATTR_MULTI64 ) - { - $attrvals[$attr] = array (); - $nvalues = $val; - while ( $nvalues>0 && $p<$max ) - { - $attrvals[$attr][] = sphUnpackI64 ( substr ( $response, $p, 8 ) ); $p += 8; - $nvalues -= 2; - } - } else if ( $type==SPH_ATTR_STRING ) - { - $attrvals[$attr] = substr ( $response, $p, $val ); - $p += $val; - } else if ( $type==SPH_ATTR_FACTORS ) - { - $attrvals[$attr] = substr ( $response, $p, $val-4 ); - $p += $val-4; - } else - { - $attrvals[$attr] = sphFixUint($val); - } - } - - if ( $this->_arrayresult ) - $result["matches"][$idx]["attrs"] = $attrvals; - else - $result["matches"][$doc]["attrs"] = $attrvals; - } - - list ( $total, $total_found, $msecs, $words ) = - array_values ( unpack ( "N*N*N*N*", substr ( $response, $p, 16 ) ) ); - $result["total"] = sprintf ( "%u", $total ); - $result["total_found"] = sprintf ( "%u", $total_found ); - $result["time"] = sprintf ( "%.3f", $msecs/1000 ); - $p += 16; - - while ( $words-->0 && $p<$max ) - { - list(,$len) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $word = substr ( $response, $p, $len ); $p += $len; - list ( $docs, $hits ) = array_values ( unpack ( "N*N*", substr ( $response, $p, 8 ) ) ); $p += 8; - $result["words"][$word] = array ( - "docs"=>sprintf ( "%u", $docs ), - "hits"=>sprintf ( "%u", $hits ) ); - } - } - - $this->_MBPop (); - return $results; - } - - ///////////////////////////////////////////////////////////////////////////// - // excerpts generation - ///////////////////////////////////////////////////////////////////////////// - - /// connect to searchd server, and generate exceprts (snippets) - /// of given documents for given query. returns false on failure, - /// an array of snippets on success - function BuildExcerpts ( $docs, $index, $words, $opts=array() ) - { - assert ( is_array($docs) ); - assert ( is_string($index) ); - assert ( is_string($words) ); - assert ( is_array($opts) ); - - $this->_MBPush (); - - if (!( $fp = $this->_Connect() )) - { - $this->_MBPop(); - return false; - } - - ///////////////// - // fixup options - ///////////////// - - if ( !isset($opts["before_match"]) ) $opts["before_match"] = ""; - if ( !isset($opts["after_match"]) ) $opts["after_match"] = ""; - if ( !isset($opts["chunk_separator"]) ) $opts["chunk_separator"] = " ... "; - if ( !isset($opts["limit"]) ) $opts["limit"] = 256; - if ( !isset($opts["limit_passages"]) ) $opts["limit_passages"] = 0; - if ( !isset($opts["limit_words"]) ) $opts["limit_words"] = 0; - if ( !isset($opts["around"]) ) $opts["around"] = 5; - if ( !isset($opts["exact_phrase"]) ) $opts["exact_phrase"] = false; - if ( !isset($opts["single_passage"]) ) $opts["single_passage"] = false; - if ( !isset($opts["use_boundaries"]) ) $opts["use_boundaries"] = false; - if ( !isset($opts["weight_order"]) ) $opts["weight_order"] = false; - if ( !isset($opts["query_mode"]) ) $opts["query_mode"] = false; - if ( !isset($opts["force_all_words"]) ) $opts["force_all_words"] = false; - if ( !isset($opts["start_passage_id"]) ) $opts["start_passage_id"] = 1; - if ( !isset($opts["load_files"]) ) $opts["load_files"] = false; - if ( !isset($opts["html_strip_mode"]) ) $opts["html_strip_mode"] = "index"; - if ( !isset($opts["allow_empty"]) ) $opts["allow_empty"] = false; - if ( !isset($opts["passage_boundary"]) ) $opts["passage_boundary"] = "none"; - if ( !isset($opts["emit_zones"]) ) $opts["emit_zones"] = false; - if ( !isset($opts["load_files_scattered"]) ) $opts["load_files_scattered"] = false; - - - ///////////////// - // build request - ///////////////// - - // v.1.2 req - $flags = 1; // remove spaces - if ( $opts["exact_phrase"] ) $flags |= 2; - if ( $opts["single_passage"] ) $flags |= 4; - if ( $opts["use_boundaries"] ) $flags |= 8; - if ( $opts["weight_order"] ) $flags |= 16; - if ( $opts["query_mode"] ) $flags |= 32; - if ( $opts["force_all_words"] ) $flags |= 64; - if ( $opts["load_files"] ) $flags |= 128; - if ( $opts["allow_empty"] ) $flags |= 256; - if ( $opts["emit_zones"] ) $flags |= 512; - if ( $opts["load_files_scattered"] ) $flags |= 1024; - $req = pack ( "NN", 0, $flags ); // mode=0, flags=$flags - $req .= pack ( "N", strlen($index) ) . $index; // req index - $req .= pack ( "N", strlen($words) ) . $words; // req words - - // options - $req .= pack ( "N", strlen($opts["before_match"]) ) . $opts["before_match"]; - $req .= pack ( "N", strlen($opts["after_match"]) ) . $opts["after_match"]; - $req .= pack ( "N", strlen($opts["chunk_separator"]) ) . $opts["chunk_separator"]; - $req .= pack ( "NN", (int)$opts["limit"], (int)$opts["around"] ); - $req .= pack ( "NNN", (int)$opts["limit_passages"], (int)$opts["limit_words"], (int)$opts["start_passage_id"] ); // v.1.2 - $req .= pack ( "N", strlen($opts["html_strip_mode"]) ) . $opts["html_strip_mode"]; - $req .= pack ( "N", strlen($opts["passage_boundary"]) ) . $opts["passage_boundary"]; - - // documents - $req .= pack ( "N", count($docs) ); - foreach ( $docs as $doc ) - { - assert ( is_string($doc) ); - $req .= pack ( "N", strlen($doc) ) . $doc; - } - - //////////////////////////// - // send query, get response - //////////////////////////// - - $len = strlen($req); - $req = pack ( "nnN", SEARCHD_COMMAND_EXCERPT, VER_COMMAND_EXCERPT, $len ) . $req; // add header - if ( !( $this->_Send ( $fp, $req, $len+8 ) ) || - !( $response = $this->_GetResponse ( $fp, VER_COMMAND_EXCERPT ) ) ) - { - $this->_MBPop (); - return false; - } - - ////////////////// - // parse response - ////////////////// - - $pos = 0; - $res = array (); - $rlen = strlen($response); - for ( $i=0; $i $rlen ) - { - $this->_error = "incomplete reply"; - $this->_MBPop (); - return false; - } - $res[] = $len ? substr ( $response, $pos, $len ) : ""; - $pos += $len; - } - - $this->_MBPop (); - return $res; - } - - - ///////////////////////////////////////////////////////////////////////////// - // keyword generation - ///////////////////////////////////////////////////////////////////////////// - - /// connect to searchd server, and generate keyword list for a given query - /// returns false on failure, - /// an array of words on success - function BuildKeywords ( $query, $index, $hits ) - { - assert ( is_string($query) ); - assert ( is_string($index) ); - assert ( is_bool($hits) ); - - $this->_MBPush (); - - if (!( $fp = $this->_Connect() )) - { - $this->_MBPop(); - return false; - } - - ///////////////// - // build request - ///////////////// - - // v.1.0 req - $req = pack ( "N", strlen($query) ) . $query; // req query - $req .= pack ( "N", strlen($index) ) . $index; // req index - $req .= pack ( "N", (int)$hits ); - - //////////////////////////// - // send query, get response - //////////////////////////// - - $len = strlen($req); - $req = pack ( "nnN", SEARCHD_COMMAND_KEYWORDS, VER_COMMAND_KEYWORDS, $len ) . $req; // add header - if ( !( $this->_Send ( $fp, $req, $len+8 ) ) || - !( $response = $this->_GetResponse ( $fp, VER_COMMAND_KEYWORDS ) ) ) - { - $this->_MBPop (); - return false; - } - - ////////////////// - // parse response - ////////////////// - - $pos = 0; - $res = array (); - $rlen = strlen($response); - list(,$nwords) = unpack ( "N*", substr ( $response, $pos, 4 ) ); - $pos += 4; - for ( $i=0; $i<$nwords; $i++ ) - { - list(,$len) = unpack ( "N*", substr ( $response, $pos, 4 ) ); $pos += 4; - $tokenized = $len ? substr ( $response, $pos, $len ) : ""; - $pos += $len; - - list(,$len) = unpack ( "N*", substr ( $response, $pos, 4 ) ); $pos += 4; - $normalized = $len ? substr ( $response, $pos, $len ) : ""; - $pos += $len; - - $res[] = array ( "tokenized"=>$tokenized, "normalized"=>$normalized ); - - if ( $hits ) - { - list($ndocs,$nhits) = array_values ( unpack ( "N*N*", substr ( $response, $pos, 8 ) ) ); - $pos += 8; - $res [$i]["docs"] = $ndocs; - $res [$i]["hits"] = $nhits; - } - - if ( $pos > $rlen ) - { - $this->_error = "incomplete reply"; - $this->_MBPop (); - return false; - } - } - - $this->_MBPop (); - return $res; - } - - function EscapeString ( $string ) - { - $from = array ( '\\', '(',')','|','-','!','@','~','"','&', '/', '^', '$', '=' ); - $to = array ( '\\\\', '\(','\)','\|','\-','\!','\@','\~','\"', '\&', '\/', '\^', '\$', '\=' ); - - return str_replace ( $from, $to, $string ); - } - - ///////////////////////////////////////////////////////////////////////////// - // attribute updates - ///////////////////////////////////////////////////////////////////////////// - - /// batch update given attributes in given rows in given indexes - /// returns amount of updated documents (0 or more) on success, or -1 on failure - function UpdateAttributes ( $index, $attrs, $values, $mva=false, $ignorenonexistent=false ) - { - // verify everything - assert ( is_string($index) ); - assert ( is_bool($mva) ); - assert ( is_bool($ignorenonexistent) ); - - assert ( is_array($attrs) ); - foreach ( $attrs as $attr ) - assert ( is_string($attr) ); - - assert ( is_array($values) ); - foreach ( $values as $id=>$entry ) - { - assert ( is_numeric($id) ); - assert ( is_array($entry) ); - assert ( count($entry)==count($attrs) ); - foreach ( $entry as $v ) - { - if ( $mva ) - { - assert ( is_array($v) ); - foreach ( $v as $vv ) - assert ( is_int($vv) ); - } else - assert ( is_int($v) ); - } - } - - // build request - $this->_MBPush (); - $req = pack ( "N", strlen($index) ) . $index; - - $req .= pack ( "N", count($attrs) ); - $req .= pack ( "N", $ignorenonexistent ? 1 : 0 ); - foreach ( $attrs as $attr ) - { - $req .= pack ( "N", strlen($attr) ) . $attr; - $req .= pack ( "N", $mva ? 1 : 0 ); - } - - $req .= pack ( "N", count($values) ); - foreach ( $values as $id=>$entry ) - { - $req .= sphPackU64 ( $id ); - foreach ( $entry as $v ) - { - $req .= pack ( "N", $mva ? count($v) : $v ); - if ( $mva ) - foreach ( $v as $vv ) - $req .= pack ( "N", $vv ); - } - } - - // connect, send query, get response - if (!( $fp = $this->_Connect() )) - { - $this->_MBPop (); - return -1; - } - - $len = strlen($req); - $req = pack ( "nnN", SEARCHD_COMMAND_UPDATE, VER_COMMAND_UPDATE, $len ) . $req; // add header - if ( !$this->_Send ( $fp, $req, $len+8 ) ) - { - $this->_MBPop (); - return -1; - } - - if (!( $response = $this->_GetResponse ( $fp, VER_COMMAND_UPDATE ) )) - { - $this->_MBPop (); - return -1; - } - - // parse response - list(,$updated) = unpack ( "N*", substr ( $response, 0, 4 ) ); - $this->_MBPop (); - return $updated; - } - - ///////////////////////////////////////////////////////////////////////////// - // persistent connections - ///////////////////////////////////////////////////////////////////////////// - - function Open() - { - if ( $this->_socket !== false ) - { - $this->_error = 'already connected'; - return false; - } - if ( !$fp = $this->_Connect() ) - return false; - - // command, command version = 0, body length = 4, body = 1 - $req = pack ( "nnNN", SEARCHD_COMMAND_PERSIST, 0, 4, 1 ); - if ( !$this->_Send ( $fp, $req, 12 ) ) - return false; - - $this->_socket = $fp; - return true; - } - - function Close() - { - if ( $this->_socket === false ) - { - $this->_error = 'not connected'; - return false; - } - - fclose ( $this->_socket ); - $this->_socket = false; - - return true; - } - - ////////////////////////////////////////////////////////////////////////// - // status - ////////////////////////////////////////////////////////////////////////// - - function Status () - { - $this->_MBPush (); - if (!( $fp = $this->_Connect() )) - { - $this->_MBPop(); - return false; - } - - $req = pack ( "nnNN", SEARCHD_COMMAND_STATUS, VER_COMMAND_STATUS, 4, 1 ); // len=4, body=1 - if ( !( $this->_Send ( $fp, $req, 12 ) ) || - !( $response = $this->_GetResponse ( $fp, VER_COMMAND_STATUS ) ) ) - { - $this->_MBPop (); - return false; - } - - $res = substr ( $response, 4 ); // just ignore length, error handling, etc - $p = 0; - list ( $rows, $cols ) = array_values ( unpack ( "N*N*", substr ( $response, $p, 8 ) ) ); $p += 8; - - $res = array(); - for ( $i=0; $i<$rows; $i++ ) - for ( $j=0; $j<$cols; $j++ ) - { - list(,$len) = unpack ( "N*", substr ( $response, $p, 4 ) ); $p += 4; - $res[$i][] = substr ( $response, $p, $len ); $p += $len; - } - - $this->_MBPop (); - return $res; - } - - ////////////////////////////////////////////////////////////////////////// - // flush - ////////////////////////////////////////////////////////////////////////// - - function FlushAttributes () - { - $this->_MBPush (); - if (!( $fp = $this->_Connect() )) - { - $this->_MBPop(); - return -1; - } - - $req = pack ( "nnN", SEARCHD_COMMAND_FLUSHATTRS, VER_COMMAND_FLUSHATTRS, 0 ); // len=0 - if ( !( $this->_Send ( $fp, $req, 8 ) ) || - !( $response = $this->_GetResponse ( $fp, VER_COMMAND_FLUSHATTRS ) ) ) - { - $this->_MBPop (); - return -1; - } - - $tag = -1; - if ( strlen($response)==4 ) - list(,$tag) = unpack ( "N*", $response ); - else - $this->_error = "unexpected response length"; - - $this->_MBPop (); - return $tag; - } -} - -// -// $Id: sphinxapi.php 3802 2013-04-10 12:49:42Z tomat $ -// diff --git a/library/wkhtmltopdf/wkhtmltopdf.php b/library/wkhtmltopdf/wkhtmltopdf.php deleted file mode 100644 index 04b148cd..00000000 --- a/library/wkhtmltopdf/wkhtmltopdf.php +++ /dev/null @@ -1,53 +0,0 @@ -wkhtml = $c->profil->wkhtmltopdf->path; - } - - /** - * Défini les options supplémentaires à l'execution de wkhtmltopdf - * -n, --disable-javascript Do not allow webpages to run javascript. - * --disable-internal-links Do no make local links - * --disable-external-links Do no make links to remote web pages - * --user-style-sheet Specify a user style sheet, to load with every page. - * --print-media-type Use print media-type instead of screen. - * --header-left|right - * @param string $name - * @param string $value - */ - public function setOptions($name, $value = '') - { - $this->options[$name] = $value; - } - - /** - * Imprime un fichier HTML en PDF avec l'utilitaire wkhtmltopdf - * @param string $fileIn - * @param string $fileOut - * @return string Nom du fichier - */ - public function exec($fileIn, $fileOut = '') - { - if (empty($fileOut)) {$fileOut = str_replace('.html', '.pdf', $fileIn); } - if(file_exists($fileOut)){ unlink($fileOut); } - - $options = '--disable-internal-links'; - if ( count($this->options) ) - { - foreach ( $this->options as $name => $value ) - { - $options.= ' --'.$name; - if ($value!= '') $options.= ' "'.$value.'"'; - } - } - - $cmd = $this->wkhtml.' '.$options.' "'.$fileIn.'" "'.$fileOut.'"'; - exec( $cmd ); - return $fileOut; - } -} \ No newline at end of file diff --git a/public/assets/code/authentication-csharp.txt b/public/assets/code/authentication-csharp.txt deleted file mode 100644 index 64e919e4..00000000 --- a/public/assets/code/authentication-csharp.txt +++ /dev/null @@ -1,51 +0,0 @@ -/* -Ajouter votre référence web puis ajouter cette fonction dans la référence - -protected override System.Net.WebRequest GetWebRequest(Uri uri) -{ - HttpWebRequest request; - request = (HttpWebRequest)base.GetWebRequest(uri); - - if (PreAuthenticate) - { - NetworkCredential networkCredentials = Credentials.GetCredential(uri, "Basic"); - - if (networkCredentials != null) - { - byte[] credentialBuffer = new UTF8Encoding().GetBytes(networkCredentials.UserName + ':' + networkCredentials.Password); - request.Headers["Authorization"] = "Basic " + Convert.ToBase64String(credentialBuffer); - } - else - { - throw new ApplicationException("No network credentials"); - } - } - return request; -} -*/ - -string login = ""; -string password = ""; - -// Create a new instance of the MD5CryptoServiceProvider object. -MD5CryptoServiceProvider md5Hasher = new MD5CryptoServiceProvider(); - -// Convert the input string to a byte array and compute the hash. -byte[] data = md5Hasher.ComputeHash(Encoding.Default.GetBytes(login + "|" + password)); -StringBuilder sBuilder = new StringBuilder(); -for (int i = 0; i < data.Length; i++) -{ - sBuilder.Append(data[i].ToString("x2")); -} -string hash = sBuilder.ToString(); - - -EntrepriseService service = new EntrepriseService(); - -NetworkCredential Auth = new NetworkCredential(login, hash); - -Uri uri = new Uri(service.Url); -ICredentials credentials = Auth.GetCredential(uri, "Basic"); -service.Credentials = credentials; - -service.PreAuthenticate = true; diff --git a/public/assets/code/authentication-java.txt b/public/assets/code/authentication-java.txt deleted file mode 100644 index 63af2363..00000000 --- a/public/assets/code/authentication-java.txt +++ /dev/null @@ -1,21 +0,0 @@ -/* -Librairie JAX-WS -Générer les classes d'accès au webservice grâce à l'utilitaire "wsimport" -*/ - -String login = "login"; -String password = "password"; -String hash = ""; -hash = LMD5Gen.md5(login+"|"+password); - -WsEntrepriseService service = new WsEntrepriseService(); -try { - WsEntreprisePort port = service.getWsEntreprisePort(); - ((BindingProvider)port).getRequestContext().put(BindingProvider.USERNAME_PROPERTY, login); - ((BindingProvider)port).getRequestContext().put(BindingProvider.PASSWORD_PROPERTY, hash); - // ... - //Opération - // ... -} catch(Exception e) { - e.printStackTrace(); -} \ No newline at end of file diff --git a/public/assets/code/authentication-perl.txt b/public/assets/code/authentication-perl.txt deleted file mode 100644 index f35a1cba..00000000 --- a/public/assets/code/authentication-perl.txt +++ /dev/null @@ -1,8 +0,0 @@ -# Générer les méthodes à partir du WSDL grâce à l'utilitaire wsdl2perl -# wsdl2perl -p Entreprise -b . http://hostname/entreprise/v0.2?wsdl -# Modifier le proxy pour inclure l'authentification http basique -# Voir http://conf.soaplite.com/p2p/30.html - --> proxy('http://login:md5(login|password)@hostname/entreprise/v0.2') - -# Puis intérroger le service \ No newline at end of file diff --git a/public/assets/code/authentication-php.txt b/public/assets/code/authentication-php.txt deleted file mode 100644 index 0b795458..00000000 --- a/public/assets/code/authentication-php.txt +++ /dev/null @@ -1,12 +0,0 @@ -//Charger le WSDL soit en appelant l'URL ou soit depuis le système de fichier après l'avoir téléchargé -$wsdl = 'http://hostname/entreprise/v0.2?wsdl'; - -//Intéger l'authentification basique dans les options du client -$options = array( - 'login' => $login, - 'password' => md5($login.'|'.$password) -); - -//Connexion au serveur -$client = new SoapClient($wsdl, $options); -//.... Executer une requête ... \ No newline at end of file diff --git a/public/assets/code/getIdentite-csharp.txt b/public/assets/code/getIdentite-csharp.txt deleted file mode 100644 index 5859ff58..00000000 --- a/public/assets/code/getIdentite-csharp.txt +++ /dev/null @@ -1,3 +0,0 @@ -string siret = "552144503"; -Identite result = service.getIdentite(siret, 0); -Console.WriteLine("Raison Sociale : " + result.Nom); \ No newline at end of file diff --git a/public/assets/code/getIdentite-java.txt b/public/assets/code/getIdentite-java.txt deleted file mode 100644 index 88cd665a..00000000 --- a/public/assets/code/getIdentite-java.txt +++ /dev/null @@ -1,3 +0,0 @@ -Identite identite = new Identite(); -identite = port.getIdentite("552144503", 0); -System.out.println(identite.getNom()); \ No newline at end of file diff --git a/public/assets/code/getIdentite-perl.txt b/public/assets/code/getIdentite-perl.txt deleted file mode 100644 index e3ba14fc..00000000 --- a/public/assets/code/getIdentite-perl.txt +++ /dev/null @@ -1,9 +0,0 @@ -use EntrepriseInterfaces::EntrepriseService::EntreprisePort; -my $service = EntrepriseInterfaces::EntrepriseService::EntreprisePort->new(); -$service->proxy('http://login:hash@webservice.sd.lan/entreprise/v0.2'); -my $params = EntrepriseElements::IdentiteRequest->new({ - siret => '552144503', -}); -my $result = $service->getIdentite($params); -die $result if not $result; -print $result; \ No newline at end of file diff --git a/public/assets/code/getIdentite-php.txt b/public/assets/code/getIdentite-php.txt deleted file mode 100644 index 891922d0..00000000 --- a/public/assets/code/getIdentite-php.txt +++ /dev/null @@ -1,8 +0,0 @@ -$parameters = new stdClass(); -$parameters->siret = '552144503'; -$parameters->id = 0; -$parameters->forceVerif = false; -$result = $client->getIdentite($parameters); -echo "
        ";
        -print_r($result);
        -echo "
        "; \ No newline at end of file diff --git a/public/assets/code/python b/public/assets/code/python deleted file mode 100644 index 0619689d..00000000 --- a/public/assets/code/python +++ /dev/null @@ -1,58 +0,0 @@ -from SOAPpy import Config, HTTPTransport, SOAPAddress, WSDL - -class myHTTPTransport(HTTPTransport): - username = None - passwd = None - - @classmethod - def setAuthentication(cls,u,p): - cls.username = u - cls.passwd = p - - def call(self, addr, data, namespace, soapaction=None, encoding=None, - http_proxy=None, config=Config): - - if not isinstance(addr, SOAPAddress): - addr=SOAPAddress(addr, config) - - if self.username != None: - addr.user = self.username+":"+self.passwd - - return HTTPTransport.call(self, addr, data, namespace, soapaction, - encoding, http_proxy, config) - - -if __name__ == '__main__': - wsdlFile = 'http://localhost/soap/wsdl/' - myHTTPTransport.setAuthentication('USERNAME', 'PASSWORD') - server = WSDL.Proxy(wsdlFile, transport=myHTTPTransport) - print server.ApiVersion() - - - -from SOAPpy import WSDL -wsdlFile = 'http://hostname/service?wsdl' -server = WSDL.Proxy(wsdlFile) -server.methods.keys() -[u'status', u'getIdentite', u'rechercheEntreprise'] - -callInfo = server.methods['getTemp'] -callInfo.inparams -[] -callInfo.inparams[0].name -u'parameters' -callInfo.inparams[0].type -(u'http://wse.scores-decisions.com:8081/service', u'status') - - - -server.soapproxy.config.dumpSOAPOut = 1 -server.soapproxy.config.dumpSOAPIn = 1 - - - - - - - - \ No newline at end of file diff --git a/public/assets/fichiers/devises.csv b/public/assets/fichiers/devises.csv deleted file mode 100644 index dae8a090..00000000 --- a/public/assets/fichiers/devises.csv +++ /dev/null @@ -1,181 +0,0 @@ -"devIso","devNom" -"AED","Dirham des AE" -"AFN","Afghani" -"ALL","Lek" -"AMD","Dram" -"ANG","Florin des Antilles nerlandaises" -"AOA","Kwanza" -"ARS","Peso argentin" -"AUD","Dollar australien" -"AWG","Florin dAruba" -"AZM","Manat" -"BAM","Mark convertible" -"BBD","Dollar de la Barbade" -"BDT","Taka" -"BEF","FRANC BELGE" -"BGN","Leva" -"BHD","Dinar bahreini" -"BIF","Franc du Burundi" -"BMD","Dollar des Bermudes" -"BND","Dollar de Brunei" -"BOB","Boliviano" -"BOV","Mvdol" -"BRC","Cruzeiro" -"BRL","Ral brsilien" -"BSD","Dollar des Bahamas" -"BTN","Ngultrum" -"BWP","Pula" -"BYR","Rouble du Blarus" -"BZD","Dollar de Belize" -"CAD","Dollar canadien" -"CDF","Franc congolais" -"CHE","WIR Euro" -"CHF","Franc suisse" -"CHW","WIR Franc" -"CLF","Unit dinvestissement" -"CLP","Peso chilien" -"CNY","Yuan (Renminbi)" -"COP","Peso colombien" -"COU","Unidad de Valor Real" -"CRC","Colon du Costa Rica" -"CSD","Dinar serbe" -"CUP","Peso cubain" -"CVE","Escudo du Cap-Vert" -"CYP","Livre chypriote" -"CZK","Couronne tchque" -"DEM","Deutsche Mark" -"DJF","Franc djiboutien" -"DKK","Couronne danoise" -"DOP","Peso dominicain" -"DZD","Dinar algrien" -"EEK","Couronne estonienne" -"EGP","Livre gyptienne" -"ERN","Nakfa" -"ETB","Nouveau birr" -"EUR","Euro" -"FJD","Dollar fidjien" -"FKP","Livre des les Malouines" -"FRF","Franc franais" -"GBP","Livre sterling" -"GEL","Lari" -"GHC","Cedi" -"GIP","Livre de Gibraltar" -"GMD","Dalasi" -"GNF","Franc guinen" -"GTQ","Quetzal" -"GWP","Peso de Guine-Bissau" -"GYD","Dollar de Guyana" -"HKD","Dollar de Hong-Kong" -"HNL","Lempira" -"HRK","Kuna" -"HTG","Gourde" -"HUF","Forint" -"IDR","Rupiah" -"ILS","Nouveau sheqel" -"INR","Roupie indienne" -"IQD","Dinar irakien" -"IRR","Rial iranien" -"ISK","Couronne islandaise" -"JMD","Dollar de la Jamaque" -"JOD","Dinar jordanien" -"JPY","Yen" -"KES","Shilling du Kenya" -"KGS","Som" -"KHR","Riel" -"KMF","Franc comorien" -"KPW","Won nord-coren" -"KRW","Won" -"KWD","Dinar kowetien" -"KYD","Dollar des les Camans" -"KZT","Tengue" -"LAK","Kip" -"LBP","Livre libanaise" -"LKR","Roupie sri-lankaise" -"LRD","Dollar librien" -"LSL","Loti" -"LTL","Litas" -"LVL","Lat" -"LYD","Dinar lybien" -"MAD","Dirham marocain" -"MDL","Leu" -"MGA","Ariary malgache" -"MGF","Franc Malgache" -"MKD","Dinar macdonien" -"MMK","Kyat" -"MNT","Tugrik" -"MOP","Pataca" -"MRO","Ouguiya" -"MTL","Lire maltaise" -"MUR","Roupie mauricienne" -"MVR","Rufiyaa des Maldives" -"MWK","Kwacha" -"MXN","Nouveau peso mexicain" -"MXV","Unidad de inversion" -"MYR","Ringgit malaisien" -"MZM","Metical" -"NAD","Dollar namibien" -"NGN","Naira" -"NIO","Cordoba dor" -"NOK","Couronne norvgienne" -"NPR","Roupie npalaise" -"NZD","Dollar no-zlandais" -"OMR","Riyal omanais" -"PAB","Balboa" -"PEN","Nouveau sol" -"PGK","Kina" -"PHP","Peso philippin" -"PKR","Roupie pakistanaise" -"PLN","Zloty" -"PYG","Guarani" -"QAR","Riyal qatari" -"ROL","Leu" -"RON","Leu (nouveau)" -"RUB","Rouble russe" -"RWF","Franc rwandais" -"SAR","Riyal saoudien" -"SBD","Dollar des les Salomon" -"SCR","Roupie seychelloise" -"SDD","Dinar soudanais" -"SEK","Couronne sudoise" -"SGD","Dollar de Singapour" -"SHP","Livre de Sainte-Hlne" -"SIT","Tolar" -"SKK","Couronne slovaque" -"SLL","Leone" -"SOS","Shilling somalien" -"SRD","Dollar de Surinam" -"STD","Dobra" -"SVC","Colon du Salvador" -"SYP","Livre syrienne" -"SZL","Lilangeni" -"THB","Baht" -"TJS","Somoni" -"TMM","Manat" -"TND","Dinar tunisien" -"TOP","Pa'anga" -"TRL","Livre turque" -"TRY","Nouvelle livre turque" -"TTD","Dollar de Trinit-et-Tobago" -"TWD","Nouveau dollar tawanais" -"TZS","Shilling tanzanien" -"UAH","Grivna" -"UGX","Shilling ougandais" -"USD","Dollar amricain" -"UYU","Peso uruguayen" -"UZS","Soum" -"VEB","Bolivar" -"VND","Dong" -"VUV","Vatu" -"WST","Tala" -"XAF","Franc CFA - BEAC Communaut financire africaine" -"XCD","Dollar des Carabes orientales" -"XDR","Droits de tirage spciaux" -"XFO","Franc or" -"XFU","Franc UIC" -"XOF","Franc CFA - BCEAO" -"XPF","Franc CFP" -"YER","Riyal ymnite" -"ZAR","Rand" -"ZMK","Kwacha" -"ZRN","Zaire" -"ZWD","Dollar zimbabwen" \ No newline at end of file diff --git a/public/assets/fichiers/listeSourcesAnnonces.csv b/public/assets/fichiers/listeSourcesAnnonces.csv deleted file mode 100644 index ae8009ce..00000000 --- a/public/assets/fichiers/listeSourcesAnnonces.csv +++ /dev/null @@ -1,10 +0,0 @@ -Code,Libell Court,Libell Long de la Source Annonce -BODA,BODACC A,JO Bodacc A - Crations - Ventes et procdures collectives -BODB,BODACC B,JO Bodacc B - Radiations et Modifications Diverses -BODC,BODACC C,JO Bodacc C - Dpts des comptes -BOMP A,BOAMP A,Marchs Publics - Appels d'Offres (type A) -BOMP B,BOAMP B,Marchs Publics - Appels d'Offres (type B) -BOMP C,BOAMP C,Marchs Publics - Avis d'attribution -MAPA,MAPA,Marchs Publics Procdure Adapte -ASSO,JO Association,Journal Officiel des Associations -BALO,JO BALO,Bulletin des Annonces Lgales Obligatoires \ No newline at end of file diff --git a/public/assets/sql/tabDevises.sql b/public/assets/sql/tabDevises.sql deleted file mode 100644 index 27544171..00000000 --- a/public/assets/sql/tabDevises.sql +++ /dev/null @@ -1,2 +0,0 @@ -SELECT devIso AS codDevise, devNom AS libDevise -FROM jo.tabDevises; \ No newline at end of file diff --git a/public/assets/sql/tabDirigeants.sql b/public/assets/sql/tabDirigeants.sql deleted file mode 100644 index bae45b32..00000000 --- a/public/assets/sql/tabDirigeants.sql +++ /dev/null @@ -1,2 +0,0 @@ -SELECT codeFct AS dirCode, libelle AS dirLibelle, triCode AS dirType -FROM jo.bodacc_fonctions; \ No newline at end of file diff --git a/public/assets/sql/tabEvenements.sql b/public/assets/sql/tabEvenements.sql deleted file mode 100644 index c4524790..00000000 --- a/public/assets/sql/tabEvenements.sql +++ /dev/null @@ -1,2 +0,0 @@ -SELECT codEven, libEven, Bodacc_Code AS pubEven, Rubrique as rubEven, version AS verEven -FROM jo.tabEvenements; \ No newline at end of file diff --git a/public/assets/sql/tabFJur.sql b/public/assets/sql/tabFJur.sql deleted file mode 100644 index e856e205..00000000 --- a/public/assets/sql/tabFJur.sql +++ /dev/null @@ -1,2 +0,0 @@ -SELECT code AS fjCode, libelle AS fjLibelle, cjOfficielle AS fjInsee -FROM jo.tabFJur; \ No newline at end of file diff --git a/public/assets/sql/tabNaf.sql b/public/assets/sql/tabNaf.sql deleted file mode 100644 index d2f49ec7..00000000 --- a/public/assets/sql/tabNaf.sql +++ /dev/null @@ -1,5 +0,0 @@ -SELECT codNaf5 AS codNaf, libNaf5 AS libNaf -FROM jo.tabNaf5 -UNION SELECT codNaf700 AS codNaf, libNaf700 AS libNaf -FROM jo.tabNaf4 -ORDER BY codNaf \ No newline at end of file diff --git a/public/assets/sql/tabPaysIso2.sql b/public/assets/sql/tabPaysIso2.sql deleted file mode 100644 index dc1e8061..00000000 --- a/public/assets/sql/tabPaysIso2.sql +++ /dev/null @@ -1,2 +0,0 @@ -SELECT codPays AS paysCodeIso2, libPays AS paysLibelle -FROM jo.tabPays; \ No newline at end of file diff --git a/public/assets/sql/tabPaysIso3.sql b/public/assets/sql/tabPaysIso3.sql deleted file mode 100644 index 65ed3e2e..00000000 --- a/public/assets/sql/tabPaysIso3.sql +++ /dev/null @@ -1,2 +0,0 @@ -SELECT codPays3 AS paysCodeIso3, libPays AS paysLibelle -FROM jo.tabPays; \ No newline at end of file diff --git a/public/assets/sql/tabTribunaux.sql b/public/assets/sql/tabTribunaux.sql deleted file mode 100644 index 141cf6b0..00000000 --- a/public/assets/sql/tabTribunaux.sql +++ /dev/null @@ -1,4 +0,0 @@ -SELECT triCode AS codTribunal, triNom AS libTribunal -FROM jo.tribunaux -WHERE triType IN ('C','I','G','J','P','M','S','A','B') -ORDER BY codTribunal; \ No newline at end of file diff --git a/public/index.php b/public/index.php deleted file mode 100644 index f787e95d..00000000 --- a/public/index.php +++ /dev/null @@ -1,29 +0,0 @@ -bootstrap()->run(); \ No newline at end of file diff --git a/public/libs/bootstrap-v3.0.0/css/bootstrap-theme.css b/public/libs/bootstrap-v3.0.0/css/bootstrap-theme.css deleted file mode 100644 index ad117356..00000000 --- a/public/libs/bootstrap-v3.0.0/css/bootstrap-theme.css +++ /dev/null @@ -1,384 +0,0 @@ -.btn-default, -.btn-primary, -.btn-success, -.btn-info, -.btn-warning, -.btn-danger { - text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2); - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075); -} - -.btn-default:active, -.btn-primary:active, -.btn-success:active, -.btn-info:active, -.btn-warning:active, -.btn-danger:active, -.btn-default.active, -.btn-primary.active, -.btn-success.active, -.btn-info.active, -.btn-warning.active, -.btn-danger.active { - -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); - box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); -} - -.btn:active, -.btn.active { - background-image: none; -} - -.btn-default { - text-shadow: 0 1px 0 #fff; - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#ffffff), to(#e6e6e6)); - background-image: -webkit-linear-gradient(top, #ffffff, 0%, #e6e6e6, 100%); - background-image: -moz-linear-gradient(top, #ffffff 0%, #e6e6e6 100%); - background-image: linear-gradient(to bottom, #ffffff 0%, #e6e6e6 100%); - background-repeat: repeat-x; - border-color: #e0e0e0; - border-color: #ccc; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0); -} - -.btn-default:active, -.btn-default.active { - background-color: #e6e6e6; - border-color: #e0e0e0; -} - -.btn-primary { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#428bca), to(#3071a9)); - background-image: -webkit-linear-gradient(top, #428bca, 0%, #3071a9, 100%); - background-image: -moz-linear-gradient(top, #428bca 0%, #3071a9 100%); - background-image: linear-gradient(to bottom, #428bca 0%, #3071a9 100%); - background-repeat: repeat-x; - border-color: #2d6ca2; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3071a9', GradientType=0); -} - -.btn-primary:active, -.btn-primary.active { - background-color: #3071a9; - border-color: #2d6ca2; -} - -.btn-success { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#5cb85c), to(#449d44)); - background-image: -webkit-linear-gradient(top, #5cb85c, 0%, #449d44, 100%); - background-image: -moz-linear-gradient(top, #5cb85c 0%, #449d44 100%); - background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%); - background-repeat: repeat-x; - border-color: #419641; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0); -} - -.btn-success:active, -.btn-success.active { - background-color: #449d44; - border-color: #419641; -} - -.btn-warning { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#f0ad4e), to(#ec971f)); - background-image: -webkit-linear-gradient(top, #f0ad4e, 0%, #ec971f, 100%); - background-image: -moz-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); - background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%); - background-repeat: repeat-x; - border-color: #eb9316; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0); -} - -.btn-warning:active, -.btn-warning.active { - background-color: #ec971f; - border-color: #eb9316; -} - -.btn-danger { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#d9534f), to(#c9302c)); - background-image: -webkit-linear-gradient(top, #d9534f, 0%, #c9302c, 100%); - background-image: -moz-linear-gradient(top, #d9534f 0%, #c9302c 100%); - background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%); - background-repeat: repeat-x; - border-color: #c12e2a; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0); -} - -.btn-danger:active, -.btn-danger.active { - background-color: #c9302c; - border-color: #c12e2a; -} - -.btn-info { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#5bc0de), to(#31b0d5)); - background-image: -webkit-linear-gradient(top, #5bc0de, 0%, #31b0d5, 100%); - background-image: -moz-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); - background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%); - background-repeat: repeat-x; - border-color: #2aabd2; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0); -} - -.btn-info:active, -.btn-info.active { - background-color: #31b0d5; - border-color: #2aabd2; -} - -.thumbnail, -.img-thumbnail { - -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075); - box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075); -} - -.dropdown-menu > li > a:hover, -.dropdown-menu > li > a:focus, -.dropdown-menu > .active > a, -.dropdown-menu > .active > a:hover, -.dropdown-menu > .active > a:focus { - background-color: #357ebd; - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#428bca), to(#357ebd)); - background-image: -webkit-linear-gradient(top, #428bca, 0%, #357ebd, 100%); - background-image: -moz-linear-gradient(top, #428bca 0%, #357ebd 100%); - background-image: linear-gradient(to bottom, #428bca 0%, #357ebd 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0); -} - -.navbar { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#ffffff), to(#f8f8f8)); - background-image: -webkit-linear-gradient(top, #ffffff, 0%, #f8f8f8, 100%); - background-image: -moz-linear-gradient(top, #ffffff 0%, #f8f8f8 100%); - background-image: linear-gradient(to bottom, #ffffff 0%, #f8f8f8 100%); - background-repeat: repeat-x; - border-radius: 4px; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0); - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075); -} - -.navbar .navbar-nav > .active > a { - background-color: #f8f8f8; -} - -.navbar-brand, -.navbar-nav > li > a { - text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25); -} - -.navbar-inverse { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#3c3c3c), to(#222222)); - background-image: -webkit-linear-gradient(top, #3c3c3c, 0%, #222222, 100%); - background-image: -moz-linear-gradient(top, #3c3c3c 0%, #222222 100%); - background-image: linear-gradient(to bottom, #3c3c3c 0%, #222222 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0); -} - -.navbar-inverse .navbar-nav > .active > a { - background-color: #222222; -} - -.navbar-inverse .navbar-brand, -.navbar-inverse .navbar-nav > li > a { - text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); -} - -.navbar-static-top, -.navbar-fixed-top, -.navbar-fixed-bottom { - border-radius: 0; -} - -.alert { - text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2); - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05); -} - -.alert-success { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#dff0d8), to(#c8e5bc)); - background-image: -webkit-linear-gradient(top, #dff0d8, 0%, #c8e5bc, 100%); - background-image: -moz-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); - background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%); - background-repeat: repeat-x; - border-color: #b2dba1; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0); -} - -.alert-info { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#d9edf7), to(#b9def0)); - background-image: -webkit-linear-gradient(top, #d9edf7, 0%, #b9def0, 100%); - background-image: -moz-linear-gradient(top, #d9edf7 0%, #b9def0 100%); - background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%); - background-repeat: repeat-x; - border-color: #9acfea; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0); -} - -.alert-warning { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#fcf8e3), to(#f8efc0)); - background-image: -webkit-linear-gradient(top, #fcf8e3, 0%, #f8efc0, 100%); - background-image: -moz-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); - background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%); - background-repeat: repeat-x; - border-color: #f5e79e; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0); -} - -.alert-danger { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#f2dede), to(#e7c3c3)); - background-image: -webkit-linear-gradient(top, #f2dede, 0%, #e7c3c3, 100%); - background-image: -moz-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); - background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%); - background-repeat: repeat-x; - border-color: #dca7a7; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0); -} - -.progress { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#ebebeb), to(#f5f5f5)); - background-image: -webkit-linear-gradient(top, #ebebeb, 0%, #f5f5f5, 100%); - background-image: -moz-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); - background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0); -} - -.progress-bar { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#428bca), to(#3071a9)); - background-image: -webkit-linear-gradient(top, #428bca, 0%, #3071a9, 100%); - background-image: -moz-linear-gradient(top, #428bca 0%, #3071a9 100%); - background-image: linear-gradient(to bottom, #428bca 0%, #3071a9 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3071a9', GradientType=0); -} - -.progress-bar-success { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#5cb85c), to(#449d44)); - background-image: -webkit-linear-gradient(top, #5cb85c, 0%, #449d44, 100%); - background-image: -moz-linear-gradient(top, #5cb85c 0%, #449d44 100%); - background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0); -} - -.progress-bar-info { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#5bc0de), to(#31b0d5)); - background-image: -webkit-linear-gradient(top, #5bc0de, 0%, #31b0d5, 100%); - background-image: -moz-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); - background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0); -} - -.progress-bar-warning { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#f0ad4e), to(#ec971f)); - background-image: -webkit-linear-gradient(top, #f0ad4e, 0%, #ec971f, 100%); - background-image: -moz-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); - background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0); -} - -.progress-bar-danger { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#d9534f), to(#c9302c)); - background-image: -webkit-linear-gradient(top, #d9534f, 0%, #c9302c, 100%); - background-image: -moz-linear-gradient(top, #d9534f 0%, #c9302c 100%); - background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0); -} - -.list-group { - border-radius: 4px; - -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075); - box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075); -} - -.list-group-item.active, -.list-group-item.active:hover, -.list-group-item.active:focus { - text-shadow: 0 -1px 0 #3071a9; - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#428bca), to(#3278b3)); - background-image: -webkit-linear-gradient(top, #428bca, 0%, #3278b3, 100%); - background-image: -moz-linear-gradient(top, #428bca 0%, #3278b3 100%); - background-image: linear-gradient(to bottom, #428bca 0%, #3278b3 100%); - background-repeat: repeat-x; - border-color: #3278b3; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3278b3', GradientType=0); -} - -.panel { - -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); - box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); -} - -.panel-default > .panel-heading { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#f5f5f5), to(#e8e8e8)); - background-image: -webkit-linear-gradient(top, #f5f5f5, 0%, #e8e8e8, 100%); - background-image: -moz-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); - background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); -} - -.panel-primary > .panel-heading { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#428bca), to(#357ebd)); - background-image: -webkit-linear-gradient(top, #428bca, 0%, #357ebd, 100%); - background-image: -moz-linear-gradient(top, #428bca 0%, #357ebd 100%); - background-image: linear-gradient(to bottom, #428bca 0%, #357ebd 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0); -} - -.panel-success > .panel-heading { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#dff0d8), to(#d0e9c6)); - background-image: -webkit-linear-gradient(top, #dff0d8, 0%, #d0e9c6, 100%); - background-image: -moz-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); - background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0); -} - -.panel-info > .panel-heading { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#d9edf7), to(#c4e3f3)); - background-image: -webkit-linear-gradient(top, #d9edf7, 0%, #c4e3f3, 100%); - background-image: -moz-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); - background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0); -} - -.panel-warning > .panel-heading { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#fcf8e3), to(#faf2cc)); - background-image: -webkit-linear-gradient(top, #fcf8e3, 0%, #faf2cc, 100%); - background-image: -moz-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); - background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0); -} - -.panel-danger > .panel-heading { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#f2dede), to(#ebcccc)); - background-image: -webkit-linear-gradient(top, #f2dede, 0%, #ebcccc, 100%); - background-image: -moz-linear-gradient(top, #f2dede 0%, #ebcccc 100%); - background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0); -} - -.well { - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#e8e8e8), to(#f5f5f5)); - background-image: -webkit-linear-gradient(top, #e8e8e8, 0%, #f5f5f5, 100%); - background-image: -moz-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); - background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%); - background-repeat: repeat-x; - border-color: #dcdcdc; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0); - -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1); - box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1); -} \ No newline at end of file diff --git a/public/libs/bootstrap-v3.0.0/css/bootstrap-theme.min.css b/public/libs/bootstrap-v3.0.0/css/bootstrap-theme.min.css deleted file mode 100644 index cad36b4e..00000000 --- a/public/libs/bootstrap-v3.0.0/css/bootstrap-theme.min.css +++ /dev/null @@ -1 +0,0 @@ -.btn-default,.btn-primary,.btn-success,.btn-info,.btn-warning,.btn-danger{text-shadow:0 -1px 0 rgba(0,0,0,0.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.15),0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 0 rgba(255,255,255,0.15),0 1px 1px rgba(0,0,0,0.075)}.btn-default:active,.btn-primary:active,.btn-success:active,.btn-info:active,.btn-warning:active,.btn-danger:active,.btn-default.active,.btn-primary.active,.btn-success.active,.btn-info.active,.btn-warning.active,.btn-danger.active{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn:active,.btn.active{background-image:none}.btn-default{text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left 0,left 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,0%,#e6e6e6,100%);background-image:-moz-linear-gradient(top,#fff 0,#e6e6e6 100%);background-image:linear-gradient(to bottom,#fff 0,#e6e6e6 100%);background-repeat:repeat-x;border-color:#e0e0e0;border-color:#ccc;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffe6e6e6',GradientType=0)}.btn-default:active,.btn-default.active{background-color:#e6e6e6;border-color:#e0e0e0}.btn-primary{background-image:-webkit-gradient(linear,left 0,left 100%,from(#428bca),to(#3071a9));background-image:-webkit-linear-gradient(top,#428bca,0%,#3071a9,100%);background-image:-moz-linear-gradient(top,#428bca 0,#3071a9 100%);background-image:linear-gradient(to bottom,#428bca 0,#3071a9 100%);background-repeat:repeat-x;border-color:#2d6ca2;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff3071a9',GradientType=0)}.btn-primary:active,.btn-primary.active{background-color:#3071a9;border-color:#2d6ca2}.btn-success{background-image:-webkit-gradient(linear,left 0,left 100%,from(#5cb85c),to(#449d44));background-image:-webkit-linear-gradient(top,#5cb85c,0%,#449d44,100%);background-image:-moz-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);background-repeat:repeat-x;border-color:#419641;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c',endColorstr='#ff449d44',GradientType=0)}.btn-success:active,.btn-success.active{background-color:#449d44;border-color:#419641}.btn-warning{background-image:-webkit-gradient(linear,left 0,left 100%,from(#f0ad4e),to(#ec971f));background-image:-webkit-linear-gradient(top,#f0ad4e,0%,#ec971f,100%);background-image:-moz-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);background-repeat:repeat-x;border-color:#eb9316;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e',endColorstr='#ffec971f',GradientType=0)}.btn-warning:active,.btn-warning.active{background-color:#ec971f;border-color:#eb9316}.btn-danger{background-image:-webkit-gradient(linear,left 0,left 100%,from(#d9534f),to(#c9302c));background-image:-webkit-linear-gradient(top,#d9534f,0%,#c9302c,100%);background-image:-moz-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);background-repeat:repeat-x;border-color:#c12e2a;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f',endColorstr='#ffc9302c',GradientType=0)}.btn-danger:active,.btn-danger.active{background-color:#c9302c;border-color:#c12e2a}.btn-info{background-image:-webkit-gradient(linear,left 0,left 100%,from(#5bc0de),to(#31b0d5));background-image:-webkit-linear-gradient(top,#5bc0de,0%,#31b0d5,100%);background-image:-moz-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);background-repeat:repeat-x;border-color:#2aabd2;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff31b0d5',GradientType=0)}.btn-info:active,.btn-info.active{background-color:#31b0d5;border-color:#2aabd2}.thumbnail,.img-thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.075);box-shadow:0 1px 2px rgba(0,0,0,0.075)}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus,.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{background-color:#357ebd;background-image:-webkit-gradient(linear,left 0,left 100%,from(#428bca),to(#357ebd));background-image:-webkit-linear-gradient(top,#428bca,0%,#357ebd,100%);background-image:-moz-linear-gradient(top,#428bca 0,#357ebd 100%);background-image:linear-gradient(to bottom,#428bca 0,#357ebd 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff357ebd',GradientType=0)}.navbar{background-image:-webkit-gradient(linear,left 0,left 100%,from(#fff),to(#f8f8f8));background-image:-webkit-linear-gradient(top,#fff,0%,#f8f8f8,100%);background-image:-moz-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:linear-gradient(to bottom,#fff 0,#f8f8f8 100%);background-repeat:repeat-x;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#fff8f8f8',GradientType=0);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.15),0 1px 5px rgba(0,0,0,0.075);box-shadow:inset 0 1px 0 rgba(255,255,255,0.15),0 1px 5px rgba(0,0,0,0.075)}.navbar .navbar-nav>.active>a{background-color:#f8f8f8}.navbar-brand,.navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,0.25)}.navbar-inverse{background-image:-webkit-gradient(linear,left 0,left 100%,from(#3c3c3c),to(#222));background-image:-webkit-linear-gradient(top,#3c3c3c,0%,#222,100%);background-image:-moz-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:linear-gradient(to bottom,#3c3c3c 0,#222 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c',endColorstr='#ff222222',GradientType=0)}.navbar-inverse .navbar-nav>.active>a{background-color:#222}.navbar-inverse .navbar-brand,.navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.navbar-static-top,.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}.alert{text-shadow:0 1px 0 rgba(255,255,255,0.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.25),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.25),0 1px 2px rgba(0,0,0,0.05)}.alert-success{background-image:-webkit-gradient(linear,left 0,left 100%,from(#dff0d8),to(#c8e5bc));background-image:-webkit-linear-gradient(top,#dff0d8,0%,#c8e5bc,100%);background-image:-moz-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);background-repeat:repeat-x;border-color:#b2dba1;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8',endColorstr='#ffc8e5bc',GradientType=0)}.alert-info{background-image:-webkit-gradient(linear,left 0,left 100%,from(#d9edf7),to(#b9def0));background-image:-webkit-linear-gradient(top,#d9edf7,0%,#b9def0,100%);background-image:-moz-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:linear-gradient(to bottom,#d9edf7 0,#b9def0 100%);background-repeat:repeat-x;border-color:#9acfea;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7',endColorstr='#ffb9def0',GradientType=0)}.alert-warning{background-image:-webkit-gradient(linear,left 0,left 100%,from(#fcf8e3),to(#f8efc0));background-image:-webkit-linear-gradient(top,#fcf8e3,0%,#f8efc0,100%);background-image:-moz-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:linear-gradient(to bottom,#fcf8e3 0,#f8efc0 100%);background-repeat:repeat-x;border-color:#f5e79e;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3',endColorstr='#fff8efc0',GradientType=0)}.alert-danger{background-image:-webkit-gradient(linear,left 0,left 100%,from(#f2dede),to(#e7c3c3));background-image:-webkit-linear-gradient(top,#f2dede,0%,#e7c3c3,100%);background-image:-moz-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:linear-gradient(to bottom,#f2dede 0,#e7c3c3 100%);background-repeat:repeat-x;border-color:#dca7a7;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede',endColorstr='#ffe7c3c3',GradientType=0)}.progress{background-image:-webkit-gradient(linear,left 0,left 100%,from(#ebebeb),to(#f5f5f5));background-image:-webkit-linear-gradient(top,#ebebeb,0%,#f5f5f5,100%);background-image:-moz-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:linear-gradient(to bottom,#ebebeb 0,#f5f5f5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb',endColorstr='#fff5f5f5',GradientType=0)}.progress-bar{background-image:-webkit-gradient(linear,left 0,left 100%,from(#428bca),to(#3071a9));background-image:-webkit-linear-gradient(top,#428bca,0%,#3071a9,100%);background-image:-moz-linear-gradient(top,#428bca 0,#3071a9 100%);background-image:linear-gradient(to bottom,#428bca 0,#3071a9 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff3071a9',GradientType=0)}.progress-bar-success{background-image:-webkit-gradient(linear,left 0,left 100%,from(#5cb85c),to(#449d44));background-image:-webkit-linear-gradient(top,#5cb85c,0%,#449d44,100%);background-image:-moz-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c',endColorstr='#ff449d44',GradientType=0)}.progress-bar-info{background-image:-webkit-gradient(linear,left 0,left 100%,from(#5bc0de),to(#31b0d5));background-image:-webkit-linear-gradient(top,#5bc0de,0%,#31b0d5,100%);background-image:-moz-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff31b0d5',GradientType=0)}.progress-bar-warning{background-image:-webkit-gradient(linear,left 0,left 100%,from(#f0ad4e),to(#ec971f));background-image:-webkit-linear-gradient(top,#f0ad4e,0%,#ec971f,100%);background-image:-moz-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e',endColorstr='#ffec971f',GradientType=0)}.progress-bar-danger{background-image:-webkit-gradient(linear,left 0,left 100%,from(#d9534f),to(#c9302c));background-image:-webkit-linear-gradient(top,#d9534f,0%,#c9302c,100%);background-image:-moz-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f',endColorstr='#ffc9302c',GradientType=0)}.list-group{border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.075);box-shadow:0 1px 2px rgba(0,0,0,0.075)}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{text-shadow:0 -1px 0 #3071a9;background-image:-webkit-gradient(linear,left 0,left 100%,from(#428bca),to(#3278b3));background-image:-webkit-linear-gradient(top,#428bca,0%,#3278b3,100%);background-image:-moz-linear-gradient(top,#428bca 0,#3278b3 100%);background-image:linear-gradient(to bottom,#428bca 0,#3278b3 100%);background-repeat:repeat-x;border-color:#3278b3;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff3278b3',GradientType=0)}.panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.05);box-shadow:0 1px 2px rgba(0,0,0,0.05)}.panel-default>.panel-heading{background-image:-webkit-gradient(linear,left 0,left 100%,from(#f5f5f5),to(#e8e8e8));background-image:-webkit-linear-gradient(top,#f5f5f5,0%,#e8e8e8,100%);background-image:-moz-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#ffe8e8e8',GradientType=0)}.panel-primary>.panel-heading{background-image:-webkit-gradient(linear,left 0,left 100%,from(#428bca),to(#357ebd));background-image:-webkit-linear-gradient(top,#428bca,0%,#357ebd,100%);background-image:-moz-linear-gradient(top,#428bca 0,#357ebd 100%);background-image:linear-gradient(to bottom,#428bca 0,#357ebd 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff357ebd',GradientType=0)}.panel-success>.panel-heading{background-image:-webkit-gradient(linear,left 0,left 100%,from(#dff0d8),to(#d0e9c6));background-image:-webkit-linear-gradient(top,#dff0d8,0%,#d0e9c6,100%);background-image:-moz-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:linear-gradient(to bottom,#dff0d8 0,#d0e9c6 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8',endColorstr='#ffd0e9c6',GradientType=0)}.panel-info>.panel-heading{background-image:-webkit-gradient(linear,left 0,left 100%,from(#d9edf7),to(#c4e3f3));background-image:-webkit-linear-gradient(top,#d9edf7,0%,#c4e3f3,100%);background-image:-moz-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:linear-gradient(to bottom,#d9edf7 0,#c4e3f3 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7',endColorstr='#ffc4e3f3',GradientType=0)}.panel-warning>.panel-heading{background-image:-webkit-gradient(linear,left 0,left 100%,from(#fcf8e3),to(#faf2cc));background-image:-webkit-linear-gradient(top,#fcf8e3,0%,#faf2cc,100%);background-image:-moz-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:linear-gradient(to bottom,#fcf8e3 0,#faf2cc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3',endColorstr='#fffaf2cc',GradientType=0)}.panel-danger>.panel-heading{background-image:-webkit-gradient(linear,left 0,left 100%,from(#f2dede),to(#ebcccc));background-image:-webkit-linear-gradient(top,#f2dede,0%,#ebcccc,100%);background-image:-moz-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:linear-gradient(to bottom,#f2dede 0,#ebcccc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede',endColorstr='#ffebcccc',GradientType=0)}.well{background-image:-webkit-gradient(linear,left 0,left 100%,from(#e8e8e8),to(#f5f5f5));background-image:-webkit-linear-gradient(top,#e8e8e8,0%,#f5f5f5,100%);background-image:-moz-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:linear-gradient(to bottom,#e8e8e8 0,#f5f5f5 100%);background-repeat:repeat-x;border-color:#dcdcdc;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8',endColorstr='#fff5f5f5',GradientType=0);-webkit-box-shadow:inset 0 1px 3px rgba(0,0,0,0.05),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 3px rgba(0,0,0,0.05),0 1px 0 rgba(255,255,255,0.1)} \ No newline at end of file diff --git a/public/libs/bootstrap-v3.0.0/css/bootstrap.css b/public/libs/bootstrap-v3.0.0/css/bootstrap.css deleted file mode 100644 index bbda4eed..00000000 --- a/public/libs/bootstrap-v3.0.0/css/bootstrap.css +++ /dev/null @@ -1,6805 +0,0 @@ -/*! - * Bootstrap v3.0.0 - * - * Copyright 2013 Twitter, Inc - * Licensed under the Apache License v2.0 - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Designed and built with all the love in the world by @mdo and @fat. - */ - -/*! normalize.css v2.1.0 | MIT License | git.io/normalize */ - -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -nav, -section, -summary { - display: block; -} - -audio, -canvas, -video { - display: inline-block; -} - -audio:not([controls]) { - display: none; - height: 0; -} - -[hidden] { - display: none; -} - -html { - font-family: sans-serif; - -webkit-text-size-adjust: 100%; - -ms-text-size-adjust: 100%; -} - -body { - margin: 0; -} - -a:focus { - outline: thin dotted; -} - -a:active, -a:hover { - outline: 0; -} - -h1 { - margin: 0.67em 0; - font-size: 2em; -} - -abbr[title] { - border-bottom: 1px dotted; -} - -b, -strong { - font-weight: bold; -} - -dfn { - font-style: italic; -} - -hr { - height: 0; - -moz-box-sizing: content-box; - box-sizing: content-box; -} - -mark { - color: #000; - background: #ff0; -} - -code, -kbd, -pre, -samp { - font-family: monospace, serif; - font-size: 1em; -} - -pre { - white-space: pre-wrap; -} - -q { - quotes: "\201C" "\201D" "\2018" "\2019"; -} - -small { - font-size: 80%; -} - -sub, -sup { - position: relative; - font-size: 75%; - line-height: 0; - vertical-align: baseline; -} - -sup { - top: -0.5em; -} - -sub { - bottom: -0.25em; -} - -img { - border: 0; -} - -svg:not(:root) { - overflow: hidden; -} - -figure { - margin: 0; -} - -fieldset { - padding: 0.35em 0.625em 0.75em; - margin: 0 2px; - border: 1px solid #c0c0c0; -} - -legend { - padding: 0; - border: 0; -} - -button, -input, -select, -textarea { - margin: 0; - font-family: inherit; - font-size: 100%; -} - -button, -input { - line-height: normal; -} - -button, -select { - text-transform: none; -} - -button, -html input[type="button"], -input[type="reset"], -input[type="submit"] { - cursor: pointer; - -webkit-appearance: button; -} - -button[disabled], -html input[disabled] { - cursor: default; -} - -input[type="checkbox"], -input[type="radio"] { - padding: 0; - box-sizing: border-box; -} - -input[type="search"] { - -webkit-box-sizing: content-box; - -moz-box-sizing: content-box; - box-sizing: content-box; - -webkit-appearance: textfield; -} - -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} - -button::-moz-focus-inner, -input::-moz-focus-inner { - padding: 0; - border: 0; -} - -textarea { - overflow: auto; - vertical-align: top; -} - -table { - border-collapse: collapse; - border-spacing: 0; -} - -@media print { - * { - color: #000 !important; - text-shadow: none !important; - background: transparent !important; - box-shadow: none !important; - } - a, - a:visited { - text-decoration: underline; - } - a[href]:after { - content: " (" attr(href) ")"; - } - abbr[title]:after { - content: " (" attr(title) ")"; - } - .ir a:after, - a[href^="javascript:"]:after, - a[href^="#"]:after { - content: ""; - } - pre, - blockquote { - border: 1px solid #999; - page-break-inside: avoid; - } - thead { - display: table-header-group; - } - tr, - img { - page-break-inside: avoid; - } - img { - max-width: 100% !important; - } - @page { - margin: 2cm .5cm; - } - p, - h2, - h3 { - orphans: 3; - widows: 3; - } - h2, - h3 { - page-break-after: avoid; - } - .navbar { - display: none; - } - .table td, - .table th { - background-color: #fff !important; - } - .btn > .caret, - .dropup > .btn > .caret { - border-top-color: #000 !important; - } - .label { - border: 1px solid #000; - } - .table { - border-collapse: collapse !important; - } - .table-bordered th, - .table-bordered td { - border: 1px solid #ddd !important; - } -} - -*, -*:before, -*:after { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; -} - -html { - font-size: 62.5%; - -webkit-tap-highlight-color: rgba(0, 0, 0, 0); -} - -body { - font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; - font-size: 14px; - line-height: 1.428571429; - color: #333333; - background-color: #ffffff; -} - -input, -button, -select, -textarea { - font-family: inherit; - font-size: inherit; - line-height: inherit; -} - -button, -input, -select[multiple], -textarea { - background-image: none; -} - -a { - color: #428bca; - text-decoration: none; -} - -a:hover, -a:focus { - color: #2a6496; - text-decoration: underline; -} - -a:focus { - outline: thin dotted #333; - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; -} - -img { - vertical-align: middle; -} - -.img-responsive { - display: block; - height: auto; - max-width: 100%; -} - -.img-rounded { - border-radius: 6px; -} - -.img-thumbnail { - display: inline-block; - height: auto; - max-width: 100%; - padding: 4px; - line-height: 1.428571429; - background-color: #ffffff; - border: 1px solid #dddddd; - border-radius: 4px; - -webkit-transition: all 0.2s ease-in-out; - transition: all 0.2s ease-in-out; -} - -.img-circle { - border-radius: 50%; -} - -hr { - margin-top: 20px; - margin-bottom: 20px; - border: 0; - border-top: 1px solid #eeeeee; -} - -.sr-only { - position: absolute; - width: 1px; - height: 1px; - padding: 0; - margin: -1px; - overflow: hidden; - clip: rect(0 0 0 0); - border: 0; -} - -p { - margin: 0 0 10px; -} - -.lead { - margin-bottom: 20px; - font-size: 16.099999999999998px; - font-weight: 200; - line-height: 1.4; -} - -@media (min-width: 768px) { - .lead { - font-size: 21px; - } -} - -small { - font-size: 85%; -} - -cite { - font-style: normal; -} - -.text-muted { - color: #999999; -} - -.text-primary { - color: #428bca; -} - -.text-warning { - color: #c09853; -} - -.text-danger { - color: #b94a48; -} - -.text-success { - color: #468847; -} - -.text-info { - color: #3a87ad; -} - -.text-left { - text-align: left; -} - -.text-right { - text-align: right; -} - -.text-center { - text-align: center; -} - -h1, -h2, -h3, -h4, -h5, -h6, -.h1, -.h2, -.h3, -.h4, -.h5, -.h6 { - font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; - font-weight: 500; - line-height: 1.1; -} - -h1 small, -h2 small, -h3 small, -h4 small, -h5 small, -h6 small, -.h1 small, -.h2 small, -.h3 small, -.h4 small, -.h5 small, -.h6 small { - font-weight: normal; - line-height: 1; - color: #999999; -} - -h1, -h2, -h3 { - margin-top: 20px; - margin-bottom: 10px; -} - -h4, -h5, -h6 { - margin-top: 10px; - margin-bottom: 10px; -} - -h1, -.h1 { - font-size: 36px; -} - -h2, -.h2 { - font-size: 30px; -} - -h3, -.h3 { - font-size: 24px; -} - -h4, -.h4 { - font-size: 18px; -} - -h5, -.h5 { - font-size: 14px; -} - -h6, -.h6 { - font-size: 12px; -} - -h1 small, -.h1 small { - font-size: 24px; -} - -h2 small, -.h2 small { - font-size: 18px; -} - -h3 small, -.h3 small, -h4 small, -.h4 small { - font-size: 14px; -} - -.page-header { - padding-bottom: 9px; - margin: 40px 0 20px; - border-bottom: 1px solid #eeeeee; -} - -ul, -ol { - margin-top: 0; - margin-bottom: 10px; -} - -ul ul, -ol ul, -ul ol, -ol ol { - margin-bottom: 0; -} - -.list-unstyled { - padding-left: 0; - list-style: none; -} - -.list-inline { - padding-left: 0; - list-style: none; -} - -.list-inline > li { - display: inline-block; - padding-right: 5px; - padding-left: 5px; -} - -dl { - margin-bottom: 20px; -} - -dt, -dd { - line-height: 1.428571429; -} - -dt { - font-weight: bold; -} - -dd { - margin-left: 0; -} - -@media (min-width: 768px) { - .dl-horizontal dt { - float: left; - width: 160px; - overflow: hidden; - clear: left; - text-align: right; - text-overflow: ellipsis; - white-space: nowrap; - } - .dl-horizontal dd { - margin-left: 180px; - } - .dl-horizontal dd:before, - .dl-horizontal dd:after { - display: table; - content: " "; - } - .dl-horizontal dd:after { - clear: both; - } - .dl-horizontal dd:before, - .dl-horizontal dd:after { - display: table; - content: " "; - } - .dl-horizontal dd:after { - clear: both; - } -} - -abbr[title], -abbr[data-original-title] { - cursor: help; - border-bottom: 1px dotted #999999; -} - -abbr.initialism { - font-size: 90%; - text-transform: uppercase; -} - -blockquote { - padding: 10px 20px; - margin: 0 0 20px; - border-left: 5px solid #eeeeee; -} - -blockquote p { - font-size: 17.5px; - font-weight: 300; - line-height: 1.25; -} - -blockquote p:last-child { - margin-bottom: 0; -} - -blockquote small { - display: block; - line-height: 1.428571429; - color: #999999; -} - -blockquote small:before { - content: '\2014 \00A0'; -} - -blockquote.pull-right { - padding-right: 15px; - padding-left: 0; - border-right: 5px solid #eeeeee; - border-left: 0; -} - -blockquote.pull-right p, -blockquote.pull-right small { - text-align: right; -} - -blockquote.pull-right small:before { - content: ''; -} - -blockquote.pull-right small:after { - content: '\00A0 \2014'; -} - -q:before, -q:after, -blockquote:before, -blockquote:after { - content: ""; -} - -address { - display: block; - margin-bottom: 20px; - font-style: normal; - line-height: 1.428571429; -} - -code, -pre { - font-family: Monaco, Menlo, Consolas, "Courier New", monospace; -} - -code { - padding: 2px 4px; - font-size: 90%; - color: #c7254e; - white-space: nowrap; - background-color: #f9f2f4; - border-radius: 4px; -} - -pre { - display: block; - padding: 9.5px; - margin: 0 0 10px; - font-size: 13px; - line-height: 1.428571429; - color: #333333; - word-break: break-all; - word-wrap: break-word; - background-color: #f5f5f5; - border: 1px solid #cccccc; - border-radius: 4px; -} - -pre.prettyprint { - margin-bottom: 20px; -} - -pre code { - padding: 0; - font-size: inherit; - color: inherit; - white-space: pre-wrap; - background-color: transparent; - border: 0; -} - -.pre-scrollable { - max-height: 340px; - overflow-y: scroll; -} - -.container { - padding-right: 15px; - padding-left: 15px; - margin-right: auto; - margin-left: auto; -} - -.container:before, -.container:after { - display: table; - content: " "; -} - -.container:after { - clear: both; -} - -.container:before, -.container:after { - display: table; - content: " "; -} - -.container:after { - clear: both; -} - -.row { - margin-right: -15px; - margin-left: -15px; -} - -.row:before, -.row:after { - display: table; - content: " "; -} - -.row:after { - clear: both; -} - -.row:before, -.row:after { - display: table; - content: " "; -} - -.row:after { - clear: both; -} - -.col-xs-1, -.col-xs-2, -.col-xs-3, -.col-xs-4, -.col-xs-5, -.col-xs-6, -.col-xs-7, -.col-xs-8, -.col-xs-9, -.col-xs-10, -.col-xs-11, -.col-xs-12, -.col-sm-1, -.col-sm-2, -.col-sm-3, -.col-sm-4, -.col-sm-5, -.col-sm-6, -.col-sm-7, -.col-sm-8, -.col-sm-9, -.col-sm-10, -.col-sm-11, -.col-sm-12, -.col-md-1, -.col-md-2, -.col-md-3, -.col-md-4, -.col-md-5, -.col-md-6, -.col-md-7, -.col-md-8, -.col-md-9, -.col-md-10, -.col-md-11, -.col-md-12, -.col-lg-1, -.col-lg-2, -.col-lg-3, -.col-lg-4, -.col-lg-5, -.col-lg-6, -.col-lg-7, -.col-lg-8, -.col-lg-9, -.col-lg-10, -.col-lg-11, -.col-lg-12 { - position: relative; - min-height: 1px; - padding-right: 15px; - padding-left: 15px; -} - -.col-xs-1, -.col-xs-2, -.col-xs-3, -.col-xs-4, -.col-xs-5, -.col-xs-6, -.col-xs-7, -.col-xs-8, -.col-xs-9, -.col-xs-10, -.col-xs-11 { - float: left; -} - -.col-xs-1 { - width: 8.333333333333332%; -} - -.col-xs-2 { - width: 16.666666666666664%; -} - -.col-xs-3 { - width: 25%; -} - -.col-xs-4 { - width: 33.33333333333333%; -} - -.col-xs-5 { - width: 41.66666666666667%; -} - -.col-xs-6 { - width: 50%; -} - -.col-xs-7 { - width: 58.333333333333336%; -} - -.col-xs-8 { - width: 66.66666666666666%; -} - -.col-xs-9 { - width: 75%; -} - -.col-xs-10 { - width: 83.33333333333334%; -} - -.col-xs-11 { - width: 91.66666666666666%; -} - -.col-xs-12 { - width: 100%; -} - -@media (min-width: 768px) { - .container { - max-width: 750px; - } - .col-sm-1, - .col-sm-2, - .col-sm-3, - .col-sm-4, - .col-sm-5, - .col-sm-6, - .col-sm-7, - .col-sm-8, - .col-sm-9, - .col-sm-10, - .col-sm-11 { - float: left; - } - .col-sm-1 { - width: 8.333333333333332%; - } - .col-sm-2 { - width: 16.666666666666664%; - } - .col-sm-3 { - width: 25%; - } - .col-sm-4 { - width: 33.33333333333333%; - } - .col-sm-5 { - width: 41.66666666666667%; - } - .col-sm-6 { - width: 50%; - } - .col-sm-7 { - width: 58.333333333333336%; - } - .col-sm-8 { - width: 66.66666666666666%; - } - .col-sm-9 { - width: 75%; - } - .col-sm-10 { - width: 83.33333333333334%; - } - .col-sm-11 { - width: 91.66666666666666%; - } - .col-sm-12 { - width: 100%; - } - .col-sm-push-1 { - left: 8.333333333333332%; - } - .col-sm-push-2 { - left: 16.666666666666664%; - } - .col-sm-push-3 { - left: 25%; - } - .col-sm-push-4 { - left: 33.33333333333333%; - } - .col-sm-push-5 { - left: 41.66666666666667%; - } - .col-sm-push-6 { - left: 50%; - } - .col-sm-push-7 { - left: 58.333333333333336%; - } - .col-sm-push-8 { - left: 66.66666666666666%; - } - .col-sm-push-9 { - left: 75%; - } - .col-sm-push-10 { - left: 83.33333333333334%; - } - .col-sm-push-11 { - left: 91.66666666666666%; - } - .col-sm-pull-1 { - right: 8.333333333333332%; - } - .col-sm-pull-2 { - right: 16.666666666666664%; - } - .col-sm-pull-3 { - right: 25%; - } - .col-sm-pull-4 { - right: 33.33333333333333%; - } - .col-sm-pull-5 { - right: 41.66666666666667%; - } - .col-sm-pull-6 { - right: 50%; - } - .col-sm-pull-7 { - right: 58.333333333333336%; - } - .col-sm-pull-8 { - right: 66.66666666666666%; - } - .col-sm-pull-9 { - right: 75%; - } - .col-sm-pull-10 { - right: 83.33333333333334%; - } - .col-sm-pull-11 { - right: 91.66666666666666%; - } - .col-sm-offset-1 { - margin-left: 8.333333333333332%; - } - .col-sm-offset-2 { - margin-left: 16.666666666666664%; - } - .col-sm-offset-3 { - margin-left: 25%; - } - .col-sm-offset-4 { - margin-left: 33.33333333333333%; - } - .col-sm-offset-5 { - margin-left: 41.66666666666667%; - } - .col-sm-offset-6 { - margin-left: 50%; - } - .col-sm-offset-7 { - margin-left: 58.333333333333336%; - } - .col-sm-offset-8 { - margin-left: 66.66666666666666%; - } - .col-sm-offset-9 { - margin-left: 75%; - } - .col-sm-offset-10 { - margin-left: 83.33333333333334%; - } - .col-sm-offset-11 { - margin-left: 91.66666666666666%; - } -} - -@media (min-width: 992px) { - .container { - max-width: 970px; - } - .col-md-1, - .col-md-2, - .col-md-3, - .col-md-4, - .col-md-5, - .col-md-6, - .col-md-7, - .col-md-8, - .col-md-9, - .col-md-10, - .col-md-11 { - float: left; - } - .col-md-1 { - width: 8.333333333333332%; - } - .col-md-2 { - width: 16.666666666666664%; - } - .col-md-3 { - width: 25%; - } - .col-md-4 { - width: 33.33333333333333%; - } - .col-md-5 { - width: 41.66666666666667%; - } - .col-md-6 { - width: 50%; - } - .col-md-7 { - width: 58.333333333333336%; - } - .col-md-8 { - width: 66.66666666666666%; - } - .col-md-9 { - width: 75%; - } - .col-md-10 { - width: 83.33333333333334%; - } - .col-md-11 { - width: 91.66666666666666%; - } - .col-md-12 { - width: 100%; - } - .col-md-push-0 { - left: auto; - } - .col-md-push-1 { - left: 8.333333333333332%; - } - .col-md-push-2 { - left: 16.666666666666664%; - } - .col-md-push-3 { - left: 25%; - } - .col-md-push-4 { - left: 33.33333333333333%; - } - .col-md-push-5 { - left: 41.66666666666667%; - } - .col-md-push-6 { - left: 50%; - } - .col-md-push-7 { - left: 58.333333333333336%; - } - .col-md-push-8 { - left: 66.66666666666666%; - } - .col-md-push-9 { - left: 75%; - } - .col-md-push-10 { - left: 83.33333333333334%; - } - .col-md-push-11 { - left: 91.66666666666666%; - } - .col-md-pull-0 { - right: auto; - } - .col-md-pull-1 { - right: 8.333333333333332%; - } - .col-md-pull-2 { - right: 16.666666666666664%; - } - .col-md-pull-3 { - right: 25%; - } - .col-md-pull-4 { - right: 33.33333333333333%; - } - .col-md-pull-5 { - right: 41.66666666666667%; - } - .col-md-pull-6 { - right: 50%; - } - .col-md-pull-7 { - right: 58.333333333333336%; - } - .col-md-pull-8 { - right: 66.66666666666666%; - } - .col-md-pull-9 { - right: 75%; - } - .col-md-pull-10 { - right: 83.33333333333334%; - } - .col-md-pull-11 { - right: 91.66666666666666%; - } - .col-md-offset-0 { - margin-left: 0; - } - .col-md-offset-1 { - margin-left: 8.333333333333332%; - } - .col-md-offset-2 { - margin-left: 16.666666666666664%; - } - .col-md-offset-3 { - margin-left: 25%; - } - .col-md-offset-4 { - margin-left: 33.33333333333333%; - } - .col-md-offset-5 { - margin-left: 41.66666666666667%; - } - .col-md-offset-6 { - margin-left: 50%; - } - .col-md-offset-7 { - margin-left: 58.333333333333336%; - } - .col-md-offset-8 { - margin-left: 66.66666666666666%; - } - .col-md-offset-9 { - margin-left: 75%; - } - .col-md-offset-10 { - margin-left: 83.33333333333334%; - } - .col-md-offset-11 { - margin-left: 91.66666666666666%; - } -} - -@media (min-width: 1200px) { - .container { - max-width: 1170px; - } - .col-lg-1, - .col-lg-2, - .col-lg-3, - .col-lg-4, - .col-lg-5, - .col-lg-6, - .col-lg-7, - .col-lg-8, - .col-lg-9, - .col-lg-10, - .col-lg-11 { - float: left; - } - .col-lg-1 { - width: 8.333333333333332%; - } - .col-lg-2 { - width: 16.666666666666664%; - } - .col-lg-3 { - width: 25%; - } - .col-lg-4 { - width: 33.33333333333333%; - } - .col-lg-5 { - width: 41.66666666666667%; - } - .col-lg-6 { - width: 50%; - } - .col-lg-7 { - width: 58.333333333333336%; - } - .col-lg-8 { - width: 66.66666666666666%; - } - .col-lg-9 { - width: 75%; - } - .col-lg-10 { - width: 83.33333333333334%; - } - .col-lg-11 { - width: 91.66666666666666%; - } - .col-lg-12 { - width: 100%; - } - .col-lg-push-0 { - left: auto; - } - .col-lg-push-1 { - left: 8.333333333333332%; - } - .col-lg-push-2 { - left: 16.666666666666664%; - } - .col-lg-push-3 { - left: 25%; - } - .col-lg-push-4 { - left: 33.33333333333333%; - } - .col-lg-push-5 { - left: 41.66666666666667%; - } - .col-lg-push-6 { - left: 50%; - } - .col-lg-push-7 { - left: 58.333333333333336%; - } - .col-lg-push-8 { - left: 66.66666666666666%; - } - .col-lg-push-9 { - left: 75%; - } - .col-lg-push-10 { - left: 83.33333333333334%; - } - .col-lg-push-11 { - left: 91.66666666666666%; - } - .col-lg-pull-0 { - right: auto; - } - .col-lg-pull-1 { - right: 8.333333333333332%; - } - .col-lg-pull-2 { - right: 16.666666666666664%; - } - .col-lg-pull-3 { - right: 25%; - } - .col-lg-pull-4 { - right: 33.33333333333333%; - } - .col-lg-pull-5 { - right: 41.66666666666667%; - } - .col-lg-pull-6 { - right: 50%; - } - .col-lg-pull-7 { - right: 58.333333333333336%; - } - .col-lg-pull-8 { - right: 66.66666666666666%; - } - .col-lg-pull-9 { - right: 75%; - } - .col-lg-pull-10 { - right: 83.33333333333334%; - } - .col-lg-pull-11 { - right: 91.66666666666666%; - } - .col-lg-offset-0 { - margin-left: 0; - } - .col-lg-offset-1 { - margin-left: 8.333333333333332%; - } - .col-lg-offset-2 { - margin-left: 16.666666666666664%; - } - .col-lg-offset-3 { - margin-left: 25%; - } - .col-lg-offset-4 { - margin-left: 33.33333333333333%; - } - .col-lg-offset-5 { - margin-left: 41.66666666666667%; - } - .col-lg-offset-6 { - margin-left: 50%; - } - .col-lg-offset-7 { - margin-left: 58.333333333333336%; - } - .col-lg-offset-8 { - margin-left: 66.66666666666666%; - } - .col-lg-offset-9 { - margin-left: 75%; - } - .col-lg-offset-10 { - margin-left: 83.33333333333334%; - } - .col-lg-offset-11 { - margin-left: 91.66666666666666%; - } -} - -table { - max-width: 100%; - background-color: transparent; -} - -th { - text-align: left; -} - -.table { - width: 100%; - margin-bottom: 20px; -} - -.table thead > tr > th, -.table tbody > tr > th, -.table tfoot > tr > th, -.table thead > tr > td, -.table tbody > tr > td, -.table tfoot > tr > td { - padding: 8px; - line-height: 1.428571429; - vertical-align: top; - border-top: 1px solid #dddddd; -} - -.table thead > tr > th { - vertical-align: bottom; - border-bottom: 2px solid #dddddd; -} - -.table caption + thead tr:first-child th, -.table colgroup + thead tr:first-child th, -.table thead:first-child tr:first-child th, -.table caption + thead tr:first-child td, -.table colgroup + thead tr:first-child td, -.table thead:first-child tr:first-child td { - border-top: 0; -} - -.table tbody + tbody { - border-top: 2px solid #dddddd; -} - -.table .table { - background-color: #ffffff; -} - -.table-condensed thead > tr > th, -.table-condensed tbody > tr > th, -.table-condensed tfoot > tr > th, -.table-condensed thead > tr > td, -.table-condensed tbody > tr > td, -.table-condensed tfoot > tr > td { - padding: 5px; -} - -.table-bordered { - border: 1px solid #dddddd; -} - -.table-bordered > thead > tr > th, -.table-bordered > tbody > tr > th, -.table-bordered > tfoot > tr > th, -.table-bordered > thead > tr > td, -.table-bordered > tbody > tr > td, -.table-bordered > tfoot > tr > td { - border: 1px solid #dddddd; -} - -.table-bordered > thead > tr > th, -.table-bordered > thead > tr > td { - border-bottom-width: 2px; -} - -.table-striped > tbody > tr:nth-child(odd) > td, -.table-striped > tbody > tr:nth-child(odd) > th { - background-color: #f9f9f9; -} - -.table-hover > tbody > tr:hover > td, -.table-hover > tbody > tr:hover > th { - background-color: #f5f5f5; -} - -table col[class*="col-"] { - display: table-column; - float: none; -} - -table td[class*="col-"], -table th[class*="col-"] { - display: table-cell; - float: none; -} - -.table > thead > tr > td.active, -.table > tbody > tr > td.active, -.table > tfoot > tr > td.active, -.table > thead > tr > th.active, -.table > tbody > tr > th.active, -.table > tfoot > tr > th.active, -.table > thead > tr.active > td, -.table > tbody > tr.active > td, -.table > tfoot > tr.active > td, -.table > thead > tr.active > th, -.table > tbody > tr.active > th, -.table > tfoot > tr.active > th { - background-color: #f5f5f5; -} - -.table > thead > tr > td.success, -.table > tbody > tr > td.success, -.table > tfoot > tr > td.success, -.table > thead > tr > th.success, -.table > tbody > tr > th.success, -.table > tfoot > tr > th.success, -.table > thead > tr.success > td, -.table > tbody > tr.success > td, -.table > tfoot > tr.success > td, -.table > thead > tr.success > th, -.table > tbody > tr.success > th, -.table > tfoot > tr.success > th { - background-color: #dff0d8; - border-color: #d6e9c6; -} - -.table-hover > tbody > tr > td.success:hover, -.table-hover > tbody > tr > th.success:hover, -.table-hover > tbody > tr.success:hover > td { - background-color: #d0e9c6; - border-color: #c9e2b3; -} - -.table > thead > tr > td.danger, -.table > tbody > tr > td.danger, -.table > tfoot > tr > td.danger, -.table > thead > tr > th.danger, -.table > tbody > tr > th.danger, -.table > tfoot > tr > th.danger, -.table > thead > tr.danger > td, -.table > tbody > tr.danger > td, -.table > tfoot > tr.danger > td, -.table > thead > tr.danger > th, -.table > tbody > tr.danger > th, -.table > tfoot > tr.danger > th { - background-color: #f2dede; - border-color: #eed3d7; -} - -.table-hover > tbody > tr > td.danger:hover, -.table-hover > tbody > tr > th.danger:hover, -.table-hover > tbody > tr.danger:hover > td { - background-color: #ebcccc; - border-color: #e6c1c7; -} - -.table > thead > tr > td.warning, -.table > tbody > tr > td.warning, -.table > tfoot > tr > td.warning, -.table > thead > tr > th.warning, -.table > tbody > tr > th.warning, -.table > tfoot > tr > th.warning, -.table > thead > tr.warning > td, -.table > tbody > tr.warning > td, -.table > tfoot > tr.warning > td, -.table > thead > tr.warning > th, -.table > tbody > tr.warning > th, -.table > tfoot > tr.warning > th { - background-color: #fcf8e3; - border-color: #fbeed5; -} - -.table-hover > tbody > tr > td.warning:hover, -.table-hover > tbody > tr > th.warning:hover, -.table-hover > tbody > tr.warning:hover > td { - background-color: #faf2cc; - border-color: #f8e5be; -} - -@media (max-width: 768px) { - .table-responsive { - width: 100%; - margin-bottom: 15px; - overflow-x: scroll; - overflow-y: hidden; - border: 1px solid #dddddd; - } - .table-responsive > .table { - margin-bottom: 0; - background-color: #fff; - } - .table-responsive > .table > thead > tr > th, - .table-responsive > .table > tbody > tr > th, - .table-responsive > .table > tfoot > tr > th, - .table-responsive > .table > thead > tr > td, - .table-responsive > .table > tbody > tr > td, - .table-responsive > .table > tfoot > tr > td { - white-space: nowrap; - } - .table-responsive > .table-bordered { - border: 0; - } - .table-responsive > .table-bordered > thead > tr > th:first-child, - .table-responsive > .table-bordered > tbody > tr > th:first-child, - .table-responsive > .table-bordered > tfoot > tr > th:first-child, - .table-responsive > .table-bordered > thead > tr > td:first-child, - .table-responsive > .table-bordered > tbody > tr > td:first-child, - .table-responsive > .table-bordered > tfoot > tr > td:first-child { - border-left: 0; - } - .table-responsive > .table-bordered > thead > tr > th:last-child, - .table-responsive > .table-bordered > tbody > tr > th:last-child, - .table-responsive > .table-bordered > tfoot > tr > th:last-child, - .table-responsive > .table-bordered > thead > tr > td:last-child, - .table-responsive > .table-bordered > tbody > tr > td:last-child, - .table-responsive > .table-bordered > tfoot > tr > td:last-child { - border-right: 0; - } - .table-responsive > .table-bordered > thead > tr:last-child > th, - .table-responsive > .table-bordered > tbody > tr:last-child > th, - .table-responsive > .table-bordered > tfoot > tr:last-child > th, - .table-responsive > .table-bordered > thead > tr:last-child > td, - .table-responsive > .table-bordered > tbody > tr:last-child > td, - .table-responsive > .table-bordered > tfoot > tr:last-child > td { - border-bottom: 0; - } -} - -fieldset { - padding: 0; - margin: 0; - border: 0; -} - -legend { - display: block; - width: 100%; - padding: 0; - margin-bottom: 20px; - font-size: 21px; - line-height: inherit; - color: #333333; - border: 0; - border-bottom: 1px solid #e5e5e5; -} - -label { - display: inline-block; - margin-bottom: 5px; - font-weight: bold; -} - -input[type="search"] { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; -} - -input[type="radio"], -input[type="checkbox"] { - margin: 4px 0 0; - margin-top: 1px \9; - /* IE8-9 */ - - line-height: normal; -} - -input[type="file"] { - display: block; -} - -select[multiple], -select[size] { - height: auto; -} - -select optgroup { - font-family: inherit; - font-size: inherit; - font-style: inherit; -} - -input[type="file"]:focus, -input[type="radio"]:focus, -input[type="checkbox"]:focus { - outline: thin dotted #333; - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; -} - -input[type="number"]::-webkit-outer-spin-button, -input[type="number"]::-webkit-inner-spin-button { - height: auto; -} - -.form-control:-moz-placeholder { - color: #999999; -} - -.form-control::-moz-placeholder { - color: #999999; -} - -.form-control:-ms-input-placeholder { - color: #999999; -} - -.form-control::-webkit-input-placeholder { - color: #999999; -} - -.form-control { - display: block; - width: 100%; - height: 34px; - padding: 6px 12px; - font-size: 14px; - line-height: 1.428571429; - color: #555555; - vertical-align: middle; - background-color: #ffffff; - border: 1px solid #cccccc; - border-radius: 4px; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); - -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; - transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; -} - -.form-control:focus { - border-color: #66afe9; - outline: 0; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); -} - -.form-control[disabled], -.form-control[readonly], -fieldset[disabled] .form-control { - cursor: not-allowed; - background-color: #eeeeee; -} - -textarea.form-control { - height: auto; -} - -.form-group { - margin-bottom: 15px; -} - -.radio, -.checkbox { - display: block; - min-height: 20px; - padding-left: 20px; - margin-top: 10px; - margin-bottom: 10px; - vertical-align: middle; -} - -.radio label, -.checkbox label { - display: inline; - margin-bottom: 0; - font-weight: normal; - cursor: pointer; -} - -.radio input[type="radio"], -.radio-inline input[type="radio"], -.checkbox input[type="checkbox"], -.checkbox-inline input[type="checkbox"] { - float: left; - margin-left: -20px; -} - -.radio + .radio, -.checkbox + .checkbox { - margin-top: -5px; -} - -.radio-inline, -.checkbox-inline { - display: inline-block; - padding-left: 20px; - margin-bottom: 0; - font-weight: normal; - vertical-align: middle; - cursor: pointer; -} - -.radio-inline + .radio-inline, -.checkbox-inline + .checkbox-inline { - margin-top: 0; - margin-left: 10px; -} - -input[type="radio"][disabled], -input[type="checkbox"][disabled], -.radio[disabled], -.radio-inline[disabled], -.checkbox[disabled], -.checkbox-inline[disabled], -fieldset[disabled] input[type="radio"], -fieldset[disabled] input[type="checkbox"], -fieldset[disabled] .radio, -fieldset[disabled] .radio-inline, -fieldset[disabled] .checkbox, -fieldset[disabled] .checkbox-inline { - cursor: not-allowed; -} - -.input-sm { - height: 30px; - padding: 5px 10px; - font-size: 12px; - line-height: 1.5; - border-radius: 3px; -} - -select.input-sm { - height: 30px; - line-height: 30px; -} - -textarea.input-sm { - height: auto; -} - -.input-lg { - height: 45px; - padding: 10px 16px; - font-size: 18px; - line-height: 1.33; - border-radius: 6px; -} - -select.input-lg { - height: 45px; - line-height: 45px; -} - -textarea.input-lg { - height: auto; -} - -.has-warning .help-block, -.has-warning .control-label { - color: #c09853; -} - -.has-warning .form-control { - border-color: #c09853; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -} - -.has-warning .form-control:focus { - border-color: #a47e3c; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; -} - -.has-warning .input-group-addon { - color: #c09853; - background-color: #fcf8e3; - border-color: #c09853; -} - -.has-error .help-block, -.has-error .control-label { - color: #b94a48; -} - -.has-error .form-control { - border-color: #b94a48; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -} - -.has-error .form-control:focus { - border-color: #953b39; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; -} - -.has-error .input-group-addon { - color: #b94a48; - background-color: #f2dede; - border-color: #b94a48; -} - -.has-success .help-block, -.has-success .control-label { - color: #468847; -} - -.has-success .form-control { - border-color: #468847; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -} - -.has-success .form-control:focus { - border-color: #356635; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; -} - -.has-success .input-group-addon { - color: #468847; - background-color: #dff0d8; - border-color: #468847; -} - -.form-control-static { - padding-top: 7px; - margin-bottom: 0; -} - -.help-block { - display: block; - margin-top: 5px; - margin-bottom: 10px; - color: #737373; -} - -@media (min-width: 768px) { - .form-inline .form-group { - display: inline-block; - margin-bottom: 0; - vertical-align: middle; - } - .form-inline .form-control { - display: inline-block; - } - .form-inline .radio, - .form-inline .checkbox { - display: inline-block; - padding-left: 0; - margin-top: 0; - margin-bottom: 0; - } - .form-inline .radio input[type="radio"], - .form-inline .checkbox input[type="checkbox"] { - float: none; - margin-left: 0; - } -} - -.form-horizontal .control-label, -.form-horizontal .radio, -.form-horizontal .checkbox, -.form-horizontal .radio-inline, -.form-horizontal .checkbox-inline { - padding-top: 7px; - margin-top: 0; - margin-bottom: 0; -} - -.form-horizontal .form-group { - margin-right: -15px; - margin-left: -15px; -} - -.form-horizontal .form-group:before, -.form-horizontal .form-group:after { - display: table; - content: " "; -} - -.form-horizontal .form-group:after { - clear: both; -} - -.form-horizontal .form-group:before, -.form-horizontal .form-group:after { - display: table; - content: " "; -} - -.form-horizontal .form-group:after { - clear: both; -} - -@media (min-width: 768px) { - .form-horizontal .control-label { - text-align: right; - } -} - -.btn { - display: inline-block; - padding: 6px 12px; - margin-bottom: 0; - font-size: 14px; - font-weight: normal; - line-height: 1.428571429; - text-align: center; - white-space: nowrap; - vertical-align: middle; - cursor: pointer; - border: 1px solid transparent; - border-radius: 4px; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - -o-user-select: none; - user-select: none; -} - -.btn:focus { - outline: thin dotted #333; - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; -} - -.btn:hover, -.btn:focus { - color: #333333; - text-decoration: none; -} - -.btn:active, -.btn.active { - background-image: none; - outline: 0; - -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); - box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); -} - -.btn.disabled, -.btn[disabled], -fieldset[disabled] .btn { - pointer-events: none; - cursor: not-allowed; - opacity: 0.65; - filter: alpha(opacity=65); - -webkit-box-shadow: none; - box-shadow: none; -} - -.btn-default { - color: #333333; - background-color: #ffffff; - border-color: #cccccc; -} - -.btn-default:hover, -.btn-default:focus, -.btn-default:active, -.btn-default.active, -.open .dropdown-toggle.btn-default { - color: #333333; - background-color: #ebebeb; - border-color: #adadad; -} - -.btn-default:active, -.btn-default.active, -.open .dropdown-toggle.btn-default { - background-image: none; -} - -.btn-default.disabled, -.btn-default[disabled], -fieldset[disabled] .btn-default, -.btn-default.disabled:hover, -.btn-default[disabled]:hover, -fieldset[disabled] .btn-default:hover, -.btn-default.disabled:focus, -.btn-default[disabled]:focus, -fieldset[disabled] .btn-default:focus, -.btn-default.disabled:active, -.btn-default[disabled]:active, -fieldset[disabled] .btn-default:active, -.btn-default.disabled.active, -.btn-default[disabled].active, -fieldset[disabled] .btn-default.active { - background-color: #ffffff; - border-color: #cccccc; -} - -.btn-primary { - color: #ffffff; - background-color: #428bca; - border-color: #357ebd; -} - -.btn-primary:hover, -.btn-primary:focus, -.btn-primary:active, -.btn-primary.active, -.open .dropdown-toggle.btn-primary { - color: #ffffff; - background-color: #3276b1; - border-color: #285e8e; -} - -.btn-primary:active, -.btn-primary.active, -.open .dropdown-toggle.btn-primary { - background-image: none; -} - -.btn-primary.disabled, -.btn-primary[disabled], -fieldset[disabled] .btn-primary, -.btn-primary.disabled:hover, -.btn-primary[disabled]:hover, -fieldset[disabled] .btn-primary:hover, -.btn-primary.disabled:focus, -.btn-primary[disabled]:focus, -fieldset[disabled] .btn-primary:focus, -.btn-primary.disabled:active, -.btn-primary[disabled]:active, -fieldset[disabled] .btn-primary:active, -.btn-primary.disabled.active, -.btn-primary[disabled].active, -fieldset[disabled] .btn-primary.active { - background-color: #428bca; - border-color: #357ebd; -} - -.btn-warning { - color: #ffffff; - background-color: #f0ad4e; - border-color: #eea236; -} - -.btn-warning:hover, -.btn-warning:focus, -.btn-warning:active, -.btn-warning.active, -.open .dropdown-toggle.btn-warning { - color: #ffffff; - background-color: #ed9c28; - border-color: #d58512; -} - -.btn-warning:active, -.btn-warning.active, -.open .dropdown-toggle.btn-warning { - background-image: none; -} - -.btn-warning.disabled, -.btn-warning[disabled], -fieldset[disabled] .btn-warning, -.btn-warning.disabled:hover, -.btn-warning[disabled]:hover, -fieldset[disabled] .btn-warning:hover, -.btn-warning.disabled:focus, -.btn-warning[disabled]:focus, -fieldset[disabled] .btn-warning:focus, -.btn-warning.disabled:active, -.btn-warning[disabled]:active, -fieldset[disabled] .btn-warning:active, -.btn-warning.disabled.active, -.btn-warning[disabled].active, -fieldset[disabled] .btn-warning.active { - background-color: #f0ad4e; - border-color: #eea236; -} - -.btn-danger { - color: #ffffff; - background-color: #d9534f; - border-color: #d43f3a; -} - -.btn-danger:hover, -.btn-danger:focus, -.btn-danger:active, -.btn-danger.active, -.open .dropdown-toggle.btn-danger { - color: #ffffff; - background-color: #d2322d; - border-color: #ac2925; -} - -.btn-danger:active, -.btn-danger.active, -.open .dropdown-toggle.btn-danger { - background-image: none; -} - -.btn-danger.disabled, -.btn-danger[disabled], -fieldset[disabled] .btn-danger, -.btn-danger.disabled:hover, -.btn-danger[disabled]:hover, -fieldset[disabled] .btn-danger:hover, -.btn-danger.disabled:focus, -.btn-danger[disabled]:focus, -fieldset[disabled] .btn-danger:focus, -.btn-danger.disabled:active, -.btn-danger[disabled]:active, -fieldset[disabled] .btn-danger:active, -.btn-danger.disabled.active, -.btn-danger[disabled].active, -fieldset[disabled] .btn-danger.active { - background-color: #d9534f; - border-color: #d43f3a; -} - -.btn-success { - color: #ffffff; - background-color: #5cb85c; - border-color: #4cae4c; -} - -.btn-success:hover, -.btn-success:focus, -.btn-success:active, -.btn-success.active, -.open .dropdown-toggle.btn-success { - color: #ffffff; - background-color: #47a447; - border-color: #398439; -} - -.btn-success:active, -.btn-success.active, -.open .dropdown-toggle.btn-success { - background-image: none; -} - -.btn-success.disabled, -.btn-success[disabled], -fieldset[disabled] .btn-success, -.btn-success.disabled:hover, -.btn-success[disabled]:hover, -fieldset[disabled] .btn-success:hover, -.btn-success.disabled:focus, -.btn-success[disabled]:focus, -fieldset[disabled] .btn-success:focus, -.btn-success.disabled:active, -.btn-success[disabled]:active, -fieldset[disabled] .btn-success:active, -.btn-success.disabled.active, -.btn-success[disabled].active, -fieldset[disabled] .btn-success.active { - background-color: #5cb85c; - border-color: #4cae4c; -} - -.btn-info { - color: #ffffff; - background-color: #5bc0de; - border-color: #46b8da; -} - -.btn-info:hover, -.btn-info:focus, -.btn-info:active, -.btn-info.active, -.open .dropdown-toggle.btn-info { - color: #ffffff; - background-color: #39b3d7; - border-color: #269abc; -} - -.btn-info:active, -.btn-info.active, -.open .dropdown-toggle.btn-info { - background-image: none; -} - -.btn-info.disabled, -.btn-info[disabled], -fieldset[disabled] .btn-info, -.btn-info.disabled:hover, -.btn-info[disabled]:hover, -fieldset[disabled] .btn-info:hover, -.btn-info.disabled:focus, -.btn-info[disabled]:focus, -fieldset[disabled] .btn-info:focus, -.btn-info.disabled:active, -.btn-info[disabled]:active, -fieldset[disabled] .btn-info:active, -.btn-info.disabled.active, -.btn-info[disabled].active, -fieldset[disabled] .btn-info.active { - background-color: #5bc0de; - border-color: #46b8da; -} - -.btn-link { - font-weight: normal; - color: #428bca; - cursor: pointer; - border-radius: 0; -} - -.btn-link, -.btn-link:active, -.btn-link[disabled], -fieldset[disabled] .btn-link { - background-color: transparent; - -webkit-box-shadow: none; - box-shadow: none; -} - -.btn-link, -.btn-link:hover, -.btn-link:focus, -.btn-link:active { - border-color: transparent; -} - -.btn-link:hover, -.btn-link:focus { - color: #2a6496; - text-decoration: underline; - background-color: transparent; -} - -.btn-link[disabled]:hover, -fieldset[disabled] .btn-link:hover, -.btn-link[disabled]:focus, -fieldset[disabled] .btn-link:focus { - color: #999999; - text-decoration: none; -} - -.btn-lg { - padding: 10px 16px; - font-size: 18px; - line-height: 1.33; - border-radius: 6px; -} - -.btn-sm, -.btn-xs { - padding: 5px 10px; - font-size: 12px; - line-height: 1.5; - border-radius: 3px; -} - -.btn-xs { - padding: 1px 5px; -} - -.btn-block { - display: block; - width: 100%; - padding-right: 0; - padding-left: 0; -} - -.btn-block + .btn-block { - margin-top: 5px; -} - -input[type="submit"].btn-block, -input[type="reset"].btn-block, -input[type="button"].btn-block { - width: 100%; -} - -.fade { - opacity: 0; - -webkit-transition: opacity 0.15s linear; - transition: opacity 0.15s linear; -} - -.fade.in { - opacity: 1; -} - -.collapse { - display: none; -} - -.collapse.in { - display: block; -} - -.collapsing { - position: relative; - height: 0; - overflow: hidden; - -webkit-transition: height 0.35s ease; - transition: height 0.35s ease; -} - -@font-face { - font-family: 'Glyphicons Halflings'; - src: url('../fonts/glyphicons-halflings-regular.eot'); - src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular') format('svg'); -} - -.glyphicon { - position: relative; - top: 1px; - display: inline-block; - font-family: 'Glyphicons Halflings'; - -webkit-font-smoothing: antialiased; - font-style: normal; - font-weight: normal; - line-height: 1; -} - -.glyphicon-asterisk:before { - content: "\2a"; -} - -.glyphicon-plus:before { - content: "\2b"; -} - -.glyphicon-euro:before { - content: "\20ac"; -} - -.glyphicon-minus:before { - content: "\2212"; -} - -.glyphicon-cloud:before { - content: "\2601"; -} - -.glyphicon-envelope:before { - content: "\2709"; -} - -.glyphicon-pencil:before { - content: "\270f"; -} - -.glyphicon-glass:before { - content: "\e001"; -} - -.glyphicon-music:before { - content: "\e002"; -} - -.glyphicon-search:before { - content: "\e003"; -} - -.glyphicon-heart:before { - content: "\e005"; -} - -.glyphicon-star:before { - content: "\e006"; -} - -.glyphicon-star-empty:before { - content: "\e007"; -} - -.glyphicon-user:before { - content: "\e008"; -} - -.glyphicon-film:before { - content: "\e009"; -} - -.glyphicon-th-large:before { - content: "\e010"; -} - -.glyphicon-th:before { - content: "\e011"; -} - -.glyphicon-th-list:before { - content: "\e012"; -} - -.glyphicon-ok:before { - content: "\e013"; -} - -.glyphicon-remove:before { - content: "\e014"; -} - -.glyphicon-zoom-in:before { - content: "\e015"; -} - -.glyphicon-zoom-out:before { - content: "\e016"; -} - -.glyphicon-off:before { - content: "\e017"; -} - -.glyphicon-signal:before { - content: "\e018"; -} - -.glyphicon-cog:before { - content: "\e019"; -} - -.glyphicon-trash:before { - content: "\e020"; -} - -.glyphicon-home:before { - content: "\e021"; -} - -.glyphicon-file:before { - content: "\e022"; -} - -.glyphicon-time:before { - content: "\e023"; -} - -.glyphicon-road:before { - content: "\e024"; -} - -.glyphicon-download-alt:before { - content: "\e025"; -} - -.glyphicon-download:before { - content: "\e026"; -} - -.glyphicon-upload:before { - content: "\e027"; -} - -.glyphicon-inbox:before { - content: "\e028"; -} - -.glyphicon-play-circle:before { - content: "\e029"; -} - -.glyphicon-repeat:before { - content: "\e030"; -} - -.glyphicon-refresh:before { - content: "\e031"; -} - -.glyphicon-list-alt:before { - content: "\e032"; -} - -.glyphicon-flag:before { - content: "\e034"; -} - -.glyphicon-headphones:before { - content: "\e035"; -} - -.glyphicon-volume-off:before { - content: "\e036"; -} - -.glyphicon-volume-down:before { - content: "\e037"; -} - -.glyphicon-volume-up:before { - content: "\e038"; -} - -.glyphicon-qrcode:before { - content: "\e039"; -} - -.glyphicon-barcode:before { - content: "\e040"; -} - -.glyphicon-tag:before { - content: "\e041"; -} - -.glyphicon-tags:before { - content: "\e042"; -} - -.glyphicon-book:before { - content: "\e043"; -} - -.glyphicon-print:before { - content: "\e045"; -} - -.glyphicon-font:before { - content: "\e047"; -} - -.glyphicon-bold:before { - content: "\e048"; -} - -.glyphicon-italic:before { - content: "\e049"; -} - -.glyphicon-text-height:before { - content: "\e050"; -} - -.glyphicon-text-width:before { - content: "\e051"; -} - -.glyphicon-align-left:before { - content: "\e052"; -} - -.glyphicon-align-center:before { - content: "\e053"; -} - -.glyphicon-align-right:before { - content: "\e054"; -} - -.glyphicon-align-justify:before { - content: "\e055"; -} - -.glyphicon-list:before { - content: "\e056"; -} - -.glyphicon-indent-left:before { - content: "\e057"; -} - -.glyphicon-indent-right:before { - content: "\e058"; -} - -.glyphicon-facetime-video:before { - content: "\e059"; -} - -.glyphicon-picture:before { - content: "\e060"; -} - -.glyphicon-map-marker:before { - content: "\e062"; -} - -.glyphicon-adjust:before { - content: "\e063"; -} - -.glyphicon-tint:before { - content: "\e064"; -} - -.glyphicon-edit:before { - content: "\e065"; -} - -.glyphicon-share:before { - content: "\e066"; -} - -.glyphicon-check:before { - content: "\e067"; -} - -.glyphicon-move:before { - content: "\e068"; -} - -.glyphicon-step-backward:before { - content: "\e069"; -} - -.glyphicon-fast-backward:before { - content: "\e070"; -} - -.glyphicon-backward:before { - content: "\e071"; -} - -.glyphicon-play:before { - content: "\e072"; -} - -.glyphicon-pause:before { - content: "\e073"; -} - -.glyphicon-stop:before { - content: "\e074"; -} - -.glyphicon-forward:before { - content: "\e075"; -} - -.glyphicon-fast-forward:before { - content: "\e076"; -} - -.glyphicon-step-forward:before { - content: "\e077"; -} - -.glyphicon-eject:before { - content: "\e078"; -} - -.glyphicon-chevron-left:before { - content: "\e079"; -} - -.glyphicon-chevron-right:before { - content: "\e080"; -} - -.glyphicon-plus-sign:before { - content: "\e081"; -} - -.glyphicon-minus-sign:before { - content: "\e082"; -} - -.glyphicon-remove-sign:before { - content: "\e083"; -} - -.glyphicon-ok-sign:before { - content: "\e084"; -} - -.glyphicon-question-sign:before { - content: "\e085"; -} - -.glyphicon-info-sign:before { - content: "\e086"; -} - -.glyphicon-screenshot:before { - content: "\e087"; -} - -.glyphicon-remove-circle:before { - content: "\e088"; -} - -.glyphicon-ok-circle:before { - content: "\e089"; -} - -.glyphicon-ban-circle:before { - content: "\e090"; -} - -.glyphicon-arrow-left:before { - content: "\e091"; -} - -.glyphicon-arrow-right:before { - content: "\e092"; -} - -.glyphicon-arrow-up:before { - content: "\e093"; -} - -.glyphicon-arrow-down:before { - content: "\e094"; -} - -.glyphicon-share-alt:before { - content: "\e095"; -} - -.glyphicon-resize-full:before { - content: "\e096"; -} - -.glyphicon-resize-small:before { - content: "\e097"; -} - -.glyphicon-exclamation-sign:before { - content: "\e101"; -} - -.glyphicon-gift:before { - content: "\e102"; -} - -.glyphicon-leaf:before { - content: "\e103"; -} - -.glyphicon-eye-open:before { - content: "\e105"; -} - -.glyphicon-eye-close:before { - content: "\e106"; -} - -.glyphicon-warning-sign:before { - content: "\e107"; -} - -.glyphicon-plane:before { - content: "\e108"; -} - -.glyphicon-random:before { - content: "\e110"; -} - -.glyphicon-comment:before { - content: "\e111"; -} - -.glyphicon-magnet:before { - content: "\e112"; -} - -.glyphicon-chevron-up:before { - content: "\e113"; -} - -.glyphicon-chevron-down:before { - content: "\e114"; -} - -.glyphicon-retweet:before { - content: "\e115"; -} - -.glyphicon-shopping-cart:before { - content: "\e116"; -} - -.glyphicon-folder-close:before { - content: "\e117"; -} - -.glyphicon-folder-open:before { - content: "\e118"; -} - -.glyphicon-resize-vertical:before { - content: "\e119"; -} - -.glyphicon-resize-horizontal:before { - content: "\e120"; -} - -.glyphicon-hdd:before { - content: "\e121"; -} - -.glyphicon-bullhorn:before { - content: "\e122"; -} - -.glyphicon-certificate:before { - content: "\e124"; -} - -.glyphicon-thumbs-up:before { - content: "\e125"; -} - -.glyphicon-thumbs-down:before { - content: "\e126"; -} - -.glyphicon-hand-right:before { - content: "\e127"; -} - -.glyphicon-hand-left:before { - content: "\e128"; -} - -.glyphicon-hand-up:before { - content: "\e129"; -} - -.glyphicon-hand-down:before { - content: "\e130"; -} - -.glyphicon-circle-arrow-right:before { - content: "\e131"; -} - -.glyphicon-circle-arrow-left:before { - content: "\e132"; -} - -.glyphicon-circle-arrow-up:before { - content: "\e133"; -} - -.glyphicon-circle-arrow-down:before { - content: "\e134"; -} - -.glyphicon-globe:before { - content: "\e135"; -} - -.glyphicon-tasks:before { - content: "\e137"; -} - -.glyphicon-filter:before { - content: "\e138"; -} - -.glyphicon-fullscreen:before { - content: "\e140"; -} - -.glyphicon-dashboard:before { - content: "\e141"; -} - -.glyphicon-heart-empty:before { - content: "\e143"; -} - -.glyphicon-link:before { - content: "\e144"; -} - -.glyphicon-phone:before { - content: "\e145"; -} - -.glyphicon-usd:before { - content: "\e148"; -} - -.glyphicon-gbp:before { - content: "\e149"; -} - -.glyphicon-sort:before { - content: "\e150"; -} - -.glyphicon-sort-by-alphabet:before { - content: "\e151"; -} - -.glyphicon-sort-by-alphabet-alt:before { - content: "\e152"; -} - -.glyphicon-sort-by-order:before { - content: "\e153"; -} - -.glyphicon-sort-by-order-alt:before { - content: "\e154"; -} - -.glyphicon-sort-by-attributes:before { - content: "\e155"; -} - -.glyphicon-sort-by-attributes-alt:before { - content: "\e156"; -} - -.glyphicon-unchecked:before { - content: "\e157"; -} - -.glyphicon-expand:before { - content: "\e158"; -} - -.glyphicon-collapse-down:before { - content: "\e159"; -} - -.glyphicon-collapse-up:before { - content: "\e160"; -} - -.glyphicon-log-in:before { - content: "\e161"; -} - -.glyphicon-flash:before { - content: "\e162"; -} - -.glyphicon-log-out:before { - content: "\e163"; -} - -.glyphicon-new-window:before { - content: "\e164"; -} - -.glyphicon-record:before { - content: "\e165"; -} - -.glyphicon-save:before { - content: "\e166"; -} - -.glyphicon-open:before { - content: "\e167"; -} - -.glyphicon-saved:before { - content: "\e168"; -} - -.glyphicon-import:before { - content: "\e169"; -} - -.glyphicon-export:before { - content: "\e170"; -} - -.glyphicon-send:before { - content: "\e171"; -} - -.glyphicon-floppy-disk:before { - content: "\e172"; -} - -.glyphicon-floppy-saved:before { - content: "\e173"; -} - -.glyphicon-floppy-remove:before { - content: "\e174"; -} - -.glyphicon-floppy-save:before { - content: "\e175"; -} - -.glyphicon-floppy-open:before { - content: "\e176"; -} - -.glyphicon-credit-card:before { - content: "\e177"; -} - -.glyphicon-transfer:before { - content: "\e178"; -} - -.glyphicon-cutlery:before { - content: "\e179"; -} - -.glyphicon-header:before { - content: "\e180"; -} - -.glyphicon-compressed:before { - content: "\e181"; -} - -.glyphicon-earphone:before { - content: "\e182"; -} - -.glyphicon-phone-alt:before { - content: "\e183"; -} - -.glyphicon-tower:before { - content: "\e184"; -} - -.glyphicon-stats:before { - content: "\e185"; -} - -.glyphicon-sd-video:before { - content: "\e186"; -} - -.glyphicon-hd-video:before { - content: "\e187"; -} - -.glyphicon-subtitles:before { - content: "\e188"; -} - -.glyphicon-sound-stereo:before { - content: "\e189"; -} - -.glyphicon-sound-dolby:before { - content: "\e190"; -} - -.glyphicon-sound-5-1:before { - content: "\e191"; -} - -.glyphicon-sound-6-1:before { - content: "\e192"; -} - -.glyphicon-sound-7-1:before { - content: "\e193"; -} - -.glyphicon-copyright-mark:before { - content: "\e194"; -} - -.glyphicon-registration-mark:before { - content: "\e195"; -} - -.glyphicon-cloud-download:before { - content: "\e197"; -} - -.glyphicon-cloud-upload:before { - content: "\e198"; -} - -.glyphicon-tree-conifer:before { - content: "\e199"; -} - -.glyphicon-tree-deciduous:before { - content: "\e200"; -} - -.glyphicon-briefcase:before { - content: "\1f4bc"; -} - -.glyphicon-calendar:before { - content: "\1f4c5"; -} - -.glyphicon-pushpin:before { - content: "\1f4cc"; -} - -.glyphicon-paperclip:before { - content: "\1f4ce"; -} - -.glyphicon-camera:before { - content: "\1f4f7"; -} - -.glyphicon-lock:before { - content: "\1f512"; -} - -.glyphicon-bell:before { - content: "\1f514"; -} - -.glyphicon-bookmark:before { - content: "\1f516"; -} - -.glyphicon-fire:before { - content: "\1f525"; -} - -.glyphicon-wrench:before { - content: "\1f527"; -} - -.caret { - display: inline-block; - width: 0; - height: 0; - margin-left: 2px; - vertical-align: middle; - border-top: 4px solid #000000; - border-right: 4px solid transparent; - border-bottom: 0 dotted; - border-left: 4px solid transparent; - content: ""; -} - -.dropdown { - position: relative; -} - -.dropdown-toggle:focus { - outline: 0; -} - -.dropdown-menu { - position: absolute; - top: 100%; - left: 0; - z-index: 1000; - display: none; - float: left; - min-width: 160px; - padding: 5px 0; - margin: 2px 0 0; - font-size: 14px; - list-style: none; - background-color: #ffffff; - border: 1px solid #cccccc; - border: 1px solid rgba(0, 0, 0, 0.15); - border-radius: 4px; - -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); - box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); - background-clip: padding-box; -} - -.dropdown-menu.pull-right { - right: 0; - left: auto; -} - -.dropdown-menu .divider { - height: 1px; - margin: 9px 0; - overflow: hidden; - background-color: #e5e5e5; -} - -.dropdown-menu > li > a { - display: block; - padding: 3px 20px; - clear: both; - font-weight: normal; - line-height: 1.428571429; - color: #333333; - white-space: nowrap; -} - -.dropdown-menu > li > a:hover, -.dropdown-menu > li > a:focus { - color: #ffffff; - text-decoration: none; - background-color: #428bca; -} - -.dropdown-menu > .active > a, -.dropdown-menu > .active > a:hover, -.dropdown-menu > .active > a:focus { - color: #ffffff; - text-decoration: none; - background-color: #428bca; - outline: 0; -} - -.dropdown-menu > .disabled > a, -.dropdown-menu > .disabled > a:hover, -.dropdown-menu > .disabled > a:focus { - color: #999999; -} - -.dropdown-menu > .disabled > a:hover, -.dropdown-menu > .disabled > a:focus { - text-decoration: none; - cursor: not-allowed; - background-color: transparent; - background-image: none; - filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); -} - -.open > .dropdown-menu { - display: block; -} - -.open > a { - outline: 0; -} - -.dropdown-header { - display: block; - padding: 3px 20px; - font-size: 12px; - line-height: 1.428571429; - color: #999999; -} - -.dropdown-backdrop { - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 990; -} - -.pull-right > .dropdown-menu { - right: 0; - left: auto; -} - -.dropup .caret, -.navbar-fixed-bottom .dropdown .caret { - border-top: 0 dotted; - border-bottom: 4px solid #000000; - content: ""; -} - -.dropup .dropdown-menu, -.navbar-fixed-bottom .dropdown .dropdown-menu { - top: auto; - bottom: 100%; - margin-bottom: 1px; -} - -@media (min-width: 768px) { - .navbar-right .dropdown-menu { - right: 0; - left: auto; - } -} - -.btn-default .caret { - border-top-color: #333333; -} - -.btn-primary .caret, -.btn-success .caret, -.btn-warning .caret, -.btn-danger .caret, -.btn-info .caret { - border-top-color: #fff; -} - -.dropup .btn-default .caret { - border-bottom-color: #333333; -} - -.dropup .btn-primary .caret, -.dropup .btn-success .caret, -.dropup .btn-warning .caret, -.dropup .btn-danger .caret, -.dropup .btn-info .caret { - border-bottom-color: #fff; -} - -.btn-group, -.btn-group-vertical { - position: relative; - display: inline-block; - vertical-align: middle; -} - -.btn-group > .btn, -.btn-group-vertical > .btn { - position: relative; - float: left; -} - -.btn-group > .btn:hover, -.btn-group-vertical > .btn:hover, -.btn-group > .btn:focus, -.btn-group-vertical > .btn:focus, -.btn-group > .btn:active, -.btn-group-vertical > .btn:active, -.btn-group > .btn.active, -.btn-group-vertical > .btn.active { - z-index: 2; -} - -.btn-group > .btn:focus, -.btn-group-vertical > .btn:focus { - outline: none; -} - -.btn-group .btn + .btn, -.btn-group .btn + .btn-group, -.btn-group .btn-group + .btn, -.btn-group .btn-group + .btn-group { - margin-left: -1px; -} - -.btn-toolbar:before, -.btn-toolbar:after { - display: table; - content: " "; -} - -.btn-toolbar:after { - clear: both; -} - -.btn-toolbar:before, -.btn-toolbar:after { - display: table; - content: " "; -} - -.btn-toolbar:after { - clear: both; -} - -.btn-toolbar .btn-group { - float: left; -} - -.btn-toolbar > .btn + .btn, -.btn-toolbar > .btn-group + .btn, -.btn-toolbar > .btn + .btn-group, -.btn-toolbar > .btn-group + .btn-group { - margin-left: 5px; -} - -.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { - border-radius: 0; -} - -.btn-group > .btn:first-child { - margin-left: 0; -} - -.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} - -.btn-group > .btn:last-child:not(:first-child), -.btn-group > .dropdown-toggle:not(:first-child) { - border-bottom-left-radius: 0; - border-top-left-radius: 0; -} - -.btn-group > .btn-group { - float: left; -} - -.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { - border-radius: 0; -} - -.btn-group > .btn-group:first-child > .btn:last-child, -.btn-group > .btn-group:first-child > .dropdown-toggle { - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} - -.btn-group > .btn-group:last-child > .btn:first-child { - border-bottom-left-radius: 0; - border-top-left-radius: 0; -} - -.btn-group .dropdown-toggle:active, -.btn-group.open .dropdown-toggle { - outline: 0; -} - -.btn-group-xs > .btn { - padding: 5px 10px; - padding: 1px 5px; - font-size: 12px; - line-height: 1.5; - border-radius: 3px; -} - -.btn-group-sm > .btn { - padding: 5px 10px; - font-size: 12px; - line-height: 1.5; - border-radius: 3px; -} - -.btn-group-lg > .btn { - padding: 10px 16px; - font-size: 18px; - line-height: 1.33; - border-radius: 6px; -} - -.btn-group > .btn + .dropdown-toggle { - padding-right: 8px; - padding-left: 8px; -} - -.btn-group > .btn-lg + .dropdown-toggle { - padding-right: 12px; - padding-left: 12px; -} - -.btn-group.open .dropdown-toggle { - -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); - box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); -} - -.btn .caret { - margin-left: 0; -} - -.btn-lg .caret { - border-width: 5px 5px 0; - border-bottom-width: 0; -} - -.dropup .btn-lg .caret { - border-width: 0 5px 5px; -} - -.btn-group-vertical > .btn, -.btn-group-vertical > .btn-group { - display: block; - float: none; - width: 100%; - max-width: 100%; -} - -.btn-group-vertical > .btn-group:before, -.btn-group-vertical > .btn-group:after { - display: table; - content: " "; -} - -.btn-group-vertical > .btn-group:after { - clear: both; -} - -.btn-group-vertical > .btn-group:before, -.btn-group-vertical > .btn-group:after { - display: table; - content: " "; -} - -.btn-group-vertical > .btn-group:after { - clear: both; -} - -.btn-group-vertical > .btn-group > .btn { - float: none; -} - -.btn-group-vertical > .btn + .btn, -.btn-group-vertical > .btn + .btn-group, -.btn-group-vertical > .btn-group + .btn, -.btn-group-vertical > .btn-group + .btn-group { - margin-top: -1px; - margin-left: 0; -} - -.btn-group-vertical > .btn:not(:first-child):not(:last-child) { - border-radius: 0; -} - -.btn-group-vertical > .btn:first-child:not(:last-child) { - border-top-right-radius: 4px; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} - -.btn-group-vertical > .btn:last-child:not(:first-child) { - border-top-right-radius: 0; - border-bottom-left-radius: 4px; - border-top-left-radius: 0; -} - -.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { - border-radius: 0; -} - -.btn-group-vertical > .btn-group:first-child > .btn:last-child, -.btn-group-vertical > .btn-group:first-child > .dropdown-toggle { - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} - -.btn-group-vertical > .btn-group:last-child > .btn:first-child { - border-top-right-radius: 0; - border-top-left-radius: 0; -} - -.btn-group-justified { - display: table; - width: 100%; - border-collapse: separate; - table-layout: fixed; -} - -.btn-group-justified .btn { - display: table-cell; - float: none; - width: 1%; -} - -[data-toggle="buttons"] > .btn > input[type="radio"], -[data-toggle="buttons"] > .btn > input[type="checkbox"] { - display: none; -} - -.input-group { - position: relative; - display: table; - border-collapse: separate; -} - -.input-group.col { - float: none; - padding-right: 0; - padding-left: 0; -} - -.input-group .form-control { - width: 100%; - margin-bottom: 0; -} - -.input-group-lg > .form-control, -.input-group-lg > .input-group-addon, -.input-group-lg > .input-group-btn > .btn { - height: 45px; - padding: 10px 16px; - font-size: 18px; - line-height: 1.33; - border-radius: 6px; -} - -select.input-group-lg > .form-control, -select.input-group-lg > .input-group-addon, -select.input-group-lg > .input-group-btn > .btn { - height: 45px; - line-height: 45px; -} - -textarea.input-group-lg > .form-control, -textarea.input-group-lg > .input-group-addon, -textarea.input-group-lg > .input-group-btn > .btn { - height: auto; -} - -.input-group-sm > .form-control, -.input-group-sm > .input-group-addon, -.input-group-sm > .input-group-btn > .btn { - height: 30px; - padding: 5px 10px; - font-size: 12px; - line-height: 1.5; - border-radius: 3px; -} - -select.input-group-sm > .form-control, -select.input-group-sm > .input-group-addon, -select.input-group-sm > .input-group-btn > .btn { - height: 30px; - line-height: 30px; -} - -textarea.input-group-sm > .form-control, -textarea.input-group-sm > .input-group-addon, -textarea.input-group-sm > .input-group-btn > .btn { - height: auto; -} - -.input-group-addon, -.input-group-btn, -.input-group .form-control { - display: table-cell; -} - -.input-group-addon:not(:first-child):not(:last-child), -.input-group-btn:not(:first-child):not(:last-child), -.input-group .form-control:not(:first-child):not(:last-child) { - border-radius: 0; -} - -.input-group-addon, -.input-group-btn { - width: 1%; - white-space: nowrap; - vertical-align: middle; -} - -.input-group-addon { - padding: 6px 12px; - font-size: 14px; - font-weight: normal; - line-height: 1; - text-align: center; - background-color: #eeeeee; - border: 1px solid #cccccc; - border-radius: 4px; -} - -.input-group-addon.input-sm { - padding: 5px 10px; - font-size: 12px; - border-radius: 3px; -} - -.input-group-addon.input-lg { - padding: 10px 16px; - font-size: 18px; - border-radius: 6px; -} - -.input-group-addon input[type="radio"], -.input-group-addon input[type="checkbox"] { - margin-top: 0; -} - -.input-group .form-control:first-child, -.input-group-addon:first-child, -.input-group-btn:first-child > .btn, -.input-group-btn:first-child > .dropdown-toggle, -.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle) { - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} - -.input-group-addon:first-child { - border-right: 0; -} - -.input-group .form-control:last-child, -.input-group-addon:last-child, -.input-group-btn:last-child > .btn, -.input-group-btn:last-child > .dropdown-toggle, -.input-group-btn:first-child > .btn:not(:first-child) { - border-bottom-left-radius: 0; - border-top-left-radius: 0; -} - -.input-group-addon:last-child { - border-left: 0; -} - -.input-group-btn { - position: relative; - white-space: nowrap; -} - -.input-group-btn > .btn { - position: relative; -} - -.input-group-btn > .btn + .btn { - margin-left: -4px; -} - -.input-group-btn > .btn:hover, -.input-group-btn > .btn:active { - z-index: 2; -} - -.nav { - padding-left: 0; - margin-bottom: 0; - list-style: none; -} - -.nav:before, -.nav:after { - display: table; - content: " "; -} - -.nav:after { - clear: both; -} - -.nav:before, -.nav:after { - display: table; - content: " "; -} - -.nav:after { - clear: both; -} - -.nav > li { - position: relative; - display: block; -} - -.nav > li > a { - position: relative; - display: block; - padding: 10px 15px; -} - -.nav > li > a:hover, -.nav > li > a:focus { - text-decoration: none; - background-color: #eeeeee; -} - -.nav > li.disabled > a { - color: #999999; -} - -.nav > li.disabled > a:hover, -.nav > li.disabled > a:focus { - color: #999999; - text-decoration: none; - cursor: not-allowed; - background-color: transparent; -} - -.nav .open > a, -.nav .open > a:hover, -.nav .open > a:focus { - background-color: #eeeeee; - border-color: #428bca; -} - -.nav .nav-divider { - height: 1px; - margin: 9px 0; - overflow: hidden; - background-color: #e5e5e5; -} - -.nav > li > a > img { - max-width: none; -} - -.nav-tabs { - border-bottom: 1px solid #dddddd; -} - -.nav-tabs > li { - float: left; - margin-bottom: -1px; -} - -.nav-tabs > li > a { - margin-right: 2px; - line-height: 1.428571429; - border: 1px solid transparent; - border-radius: 4px 4px 0 0; -} - -.nav-tabs > li > a:hover { - border-color: #eeeeee #eeeeee #dddddd; -} - -.nav-tabs > li.active > a, -.nav-tabs > li.active > a:hover, -.nav-tabs > li.active > a:focus { - color: #555555; - cursor: default; - background-color: #ffffff; - border: 1px solid #dddddd; - border-bottom-color: transparent; -} - -.nav-tabs.nav-justified { - width: 100%; - border-bottom: 0; -} - -.nav-tabs.nav-justified > li { - float: none; -} - -.nav-tabs.nav-justified > li > a { - text-align: center; -} - -@media (min-width: 768px) { - .nav-tabs.nav-justified > li { - display: table-cell; - width: 1%; - } -} - -.nav-tabs.nav-justified > li > a { - margin-right: 0; - border-bottom: 1px solid #dddddd; -} - -.nav-tabs.nav-justified > .active > a { - border-bottom-color: #ffffff; -} - -.nav-pills > li { - float: left; -} - -.nav-pills > li > a { - border-radius: 5px; -} - -.nav-pills > li + li { - margin-left: 2px; -} - -.nav-pills > li.active > a, -.nav-pills > li.active > a:hover, -.nav-pills > li.active > a:focus { - color: #ffffff; - background-color: #428bca; -} - -.nav-stacked > li { - float: none; -} - -.nav-stacked > li + li { - margin-top: 2px; - margin-left: 0; -} - -.nav-justified { - width: 100%; -} - -.nav-justified > li { - float: none; -} - -.nav-justified > li > a { - text-align: center; -} - -@media (min-width: 768px) { - .nav-justified > li { - display: table-cell; - width: 1%; - } -} - -.nav-tabs-justified { - border-bottom: 0; -} - -.nav-tabs-justified > li > a { - margin-right: 0; - border-bottom: 1px solid #dddddd; -} - -.nav-tabs-justified > .active > a { - border-bottom-color: #ffffff; -} - -.tabbable:before, -.tabbable:after { - display: table; - content: " "; -} - -.tabbable:after { - clear: both; -} - -.tabbable:before, -.tabbable:after { - display: table; - content: " "; -} - -.tabbable:after { - clear: both; -} - -.tab-content > .tab-pane, -.pill-content > .pill-pane { - display: none; -} - -.tab-content > .active, -.pill-content > .active { - display: block; -} - -.nav .caret { - border-top-color: #428bca; - border-bottom-color: #428bca; -} - -.nav a:hover .caret { - border-top-color: #2a6496; - border-bottom-color: #2a6496; -} - -.nav-tabs .dropdown-menu { - margin-top: -1px; - border-top-right-radius: 0; - border-top-left-radius: 0; -} - -.navbar { - position: relative; - z-index: 1000; - min-height: 50px; - margin-bottom: 20px; - border: 1px solid transparent; -} - -.navbar:before, -.navbar:after { - display: table; - content: " "; -} - -.navbar:after { - clear: both; -} - -.navbar:before, -.navbar:after { - display: table; - content: " "; -} - -.navbar:after { - clear: both; -} - -@media (min-width: 768px) { - .navbar { - border-radius: 4px; - } -} - -.navbar-header:before, -.navbar-header:after { - display: table; - content: " "; -} - -.navbar-header:after { - clear: both; -} - -.navbar-header:before, -.navbar-header:after { - display: table; - content: " "; -} - -.navbar-header:after { - clear: both; -} - -@media (min-width: 768px) { - .navbar-header { - float: left; - } -} - -.navbar-collapse { - max-height: 340px; - padding-right: 15px; - padding-left: 15px; - overflow-x: visible; - border-top: 1px solid transparent; - box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1); - -webkit-overflow-scrolling: touch; -} - -.navbar-collapse:before, -.navbar-collapse:after { - display: table; - content: " "; -} - -.navbar-collapse:after { - clear: both; -} - -.navbar-collapse:before, -.navbar-collapse:after { - display: table; - content: " "; -} - -.navbar-collapse:after { - clear: both; -} - -.navbar-collapse.in { - overflow-y: auto; -} - -@media (min-width: 768px) { - .navbar-collapse { - width: auto; - border-top: 0; - box-shadow: none; - } - .navbar-collapse.collapse { - display: block !important; - height: auto !important; - padding-bottom: 0; - overflow: visible !important; - } - .navbar-collapse.in { - overflow-y: visible; - } - .navbar-collapse .navbar-nav.navbar-left:first-child { - margin-left: -15px; - } - .navbar-collapse .navbar-nav.navbar-right:last-child { - margin-right: -15px; - } - .navbar-collapse .navbar-text:last-child { - margin-right: 0; - } -} - -.container > .navbar-header, -.container > .navbar-collapse { - margin-right: -15px; - margin-left: -15px; -} - -@media (min-width: 768px) { - .container > .navbar-header, - .container > .navbar-collapse { - margin-right: 0; - margin-left: 0; - } -} - -.navbar-static-top { - border-width: 0 0 1px; -} - -@media (min-width: 768px) { - .navbar-static-top { - border-radius: 0; - } -} - -.navbar-fixed-top, -.navbar-fixed-bottom { - position: fixed; - right: 0; - left: 0; - border-width: 0 0 1px; -} - -@media (min-width: 768px) { - .navbar-fixed-top, - .navbar-fixed-bottom { - border-radius: 0; - } -} - -.navbar-fixed-top { - top: 0; - z-index: 1030; -} - -.navbar-fixed-bottom { - bottom: 0; - margin-bottom: 0; -} - -.navbar-brand { - float: left; - padding: 15px 15px; - font-size: 18px; - line-height: 20px; -} - -.navbar-brand:hover, -.navbar-brand:focus { - text-decoration: none; -} - -@media (min-width: 768px) { - .navbar > .container .navbar-brand { - margin-left: -15px; - } -} - -.navbar-toggle { - position: relative; - float: right; - padding: 9px 10px; - margin-top: 8px; - margin-right: 15px; - margin-bottom: 8px; - background-color: transparent; - border: 1px solid transparent; - border-radius: 4px; -} - -.navbar-toggle .icon-bar { - display: block; - width: 22px; - height: 2px; - border-radius: 1px; -} - -.navbar-toggle .icon-bar + .icon-bar { - margin-top: 4px; -} - -@media (min-width: 768px) { - .navbar-toggle { - display: none; - } -} - -.navbar-nav { - margin: 7.5px -15px; -} - -.navbar-nav > li > a { - padding-top: 10px; - padding-bottom: 10px; - line-height: 20px; -} - -@media (max-width: 767px) { - .navbar-nav .open .dropdown-menu { - position: static; - float: none; - width: auto; - margin-top: 0; - background-color: transparent; - border: 0; - box-shadow: none; - } - .navbar-nav .open .dropdown-menu > li > a, - .navbar-nav .open .dropdown-menu .dropdown-header { - padding: 5px 15px 5px 25px; - } - .navbar-nav .open .dropdown-menu > li > a { - line-height: 20px; - } - .navbar-nav .open .dropdown-menu > li > a:hover, - .navbar-nav .open .dropdown-menu > li > a:focus { - background-image: none; - } -} - -@media (min-width: 768px) { - .navbar-nav { - float: left; - margin: 0; - } - .navbar-nav > li { - float: left; - } - .navbar-nav > li > a { - padding-top: 15px; - padding-bottom: 15px; - } -} - -@media (min-width: 768px) { - .navbar-left { - float: left !important; - } - .navbar-right { - float: right !important; - } -} - -.navbar-form { - padding: 10px 15px; - margin-top: 8px; - margin-right: -15px; - margin-bottom: 8px; - margin-left: -15px; - border-top: 1px solid transparent; - border-bottom: 1px solid transparent; - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); -} - -@media (min-width: 768px) { - .navbar-form .form-group { - display: inline-block; - margin-bottom: 0; - vertical-align: middle; - } - .navbar-form .form-control { - display: inline-block; - } - .navbar-form .radio, - .navbar-form .checkbox { - display: inline-block; - padding-left: 0; - margin-top: 0; - margin-bottom: 0; - } - .navbar-form .radio input[type="radio"], - .navbar-form .checkbox input[type="checkbox"] { - float: none; - margin-left: 0; - } -} - -@media (max-width: 767px) { - .navbar-form .form-group { - margin-bottom: 5px; - } -} - -@media (min-width: 768px) { - .navbar-form { - width: auto; - padding-top: 0; - padding-bottom: 0; - margin-right: 0; - margin-left: 0; - border: 0; - -webkit-box-shadow: none; - box-shadow: none; - } -} - -.navbar-nav > li > .dropdown-menu { - margin-top: 0; - border-top-right-radius: 0; - border-top-left-radius: 0; -} - -.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} - -.navbar-nav.pull-right > li > .dropdown-menu, -.navbar-nav > li > .dropdown-menu.pull-right { - right: 0; - left: auto; -} - -.navbar-btn { - margin-top: 8px; - margin-bottom: 8px; -} - -.navbar-text { - float: left; - margin-top: 15px; - margin-bottom: 15px; -} - -@media (min-width: 768px) { - .navbar-text { - margin-right: 15px; - margin-left: 15px; - } -} - -.navbar-default { - background-color: #f8f8f8; - border-color: #e7e7e7; -} - -.navbar-default .navbar-brand { - color: #777777; -} - -.navbar-default .navbar-brand:hover, -.navbar-default .navbar-brand:focus { - color: #5e5e5e; - background-color: transparent; -} - -.navbar-default .navbar-text { - color: #777777; -} - -.navbar-default .navbar-nav > li > a { - color: #777777; -} - -.navbar-default .navbar-nav > li > a:hover, -.navbar-default .navbar-nav > li > a:focus { - color: #333333; - background-color: transparent; -} - -.navbar-default .navbar-nav > .active > a, -.navbar-default .navbar-nav > .active > a:hover, -.navbar-default .navbar-nav > .active > a:focus { - color: #555555; - background-color: #e7e7e7; -} - -.navbar-default .navbar-nav > .disabled > a, -.navbar-default .navbar-nav > .disabled > a:hover, -.navbar-default .navbar-nav > .disabled > a:focus { - color: #cccccc; - background-color: transparent; -} - -.navbar-default .navbar-toggle { - border-color: #dddddd; -} - -.navbar-default .navbar-toggle:hover, -.navbar-default .navbar-toggle:focus { - background-color: #dddddd; -} - -.navbar-default .navbar-toggle .icon-bar { - background-color: #cccccc; -} - -.navbar-default .navbar-collapse, -.navbar-default .navbar-form { - border-color: #e6e6e6; -} - -.navbar-default .navbar-nav > .dropdown > a:hover .caret, -.navbar-default .navbar-nav > .dropdown > a:focus .caret { - border-top-color: #333333; - border-bottom-color: #333333; -} - -.navbar-default .navbar-nav > .open > a, -.navbar-default .navbar-nav > .open > a:hover, -.navbar-default .navbar-nav > .open > a:focus { - color: #555555; - background-color: #e7e7e7; -} - -.navbar-default .navbar-nav > .open > a .caret, -.navbar-default .navbar-nav > .open > a:hover .caret, -.navbar-default .navbar-nav > .open > a:focus .caret { - border-top-color: #555555; - border-bottom-color: #555555; -} - -.navbar-default .navbar-nav > .dropdown > a .caret { - border-top-color: #777777; - border-bottom-color: #777777; -} - -@media (max-width: 767px) { - .navbar-default .navbar-nav .open .dropdown-menu > li > a { - color: #777777; - } - .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, - .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { - color: #333333; - background-color: transparent; - } - .navbar-default .navbar-nav .open .dropdown-menu > .active > a, - .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, - .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { - color: #555555; - background-color: #e7e7e7; - } - .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, - .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, - .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { - color: #cccccc; - background-color: transparent; - } -} - -.navbar-default .navbar-link { - color: #777777; -} - -.navbar-default .navbar-link:hover { - color: #333333; -} - -.navbar-inverse { - background-color: #222222; - border-color: #080808; -} - -.navbar-inverse .navbar-brand { - color: #999999; -} - -.navbar-inverse .navbar-brand:hover, -.navbar-inverse .navbar-brand:focus { - color: #ffffff; - background-color: transparent; -} - -.navbar-inverse .navbar-text { - color: #999999; -} - -.navbar-inverse .navbar-nav > li > a { - color: #999999; -} - -.navbar-inverse .navbar-nav > li > a:hover, -.navbar-inverse .navbar-nav > li > a:focus { - color: #ffffff; - background-color: transparent; -} - -.navbar-inverse .navbar-nav > .active > a, -.navbar-inverse .navbar-nav > .active > a:hover, -.navbar-inverse .navbar-nav > .active > a:focus { - color: #ffffff; - background-color: #080808; -} - -.navbar-inverse .navbar-nav > .disabled > a, -.navbar-inverse .navbar-nav > .disabled > a:hover, -.navbar-inverse .navbar-nav > .disabled > a:focus { - color: #444444; - background-color: transparent; -} - -.navbar-inverse .navbar-toggle { - border-color: #333333; -} - -.navbar-inverse .navbar-toggle:hover, -.navbar-inverse .navbar-toggle:focus { - background-color: #333333; -} - -.navbar-inverse .navbar-toggle .icon-bar { - background-color: #ffffff; -} - -.navbar-inverse .navbar-collapse, -.navbar-inverse .navbar-form { - border-color: #101010; -} - -.navbar-inverse .navbar-nav > .open > a, -.navbar-inverse .navbar-nav > .open > a:hover, -.navbar-inverse .navbar-nav > .open > a:focus { - color: #ffffff; - background-color: #080808; -} - -.navbar-inverse .navbar-nav > .dropdown > a:hover .caret { - border-top-color: #ffffff; - border-bottom-color: #ffffff; -} - -.navbar-inverse .navbar-nav > .dropdown > a .caret { - border-top-color: #999999; - border-bottom-color: #999999; -} - -.navbar-inverse .navbar-nav > .open > a .caret, -.navbar-inverse .navbar-nav > .open > a:hover .caret, -.navbar-inverse .navbar-nav > .open > a:focus .caret { - border-top-color: #ffffff; - border-bottom-color: #ffffff; -} - -@media (max-width: 767px) { - .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { - border-color: #080808; - } - .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { - color: #999999; - } - .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, - .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { - color: #ffffff; - background-color: transparent; - } - .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, - .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, - .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { - color: #ffffff; - background-color: #080808; - } - .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, - .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, - .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { - color: #444444; - background-color: transparent; - } -} - -.navbar-inverse .navbar-link { - color: #999999; -} - -.navbar-inverse .navbar-link:hover { - color: #ffffff; -} - -.breadcrumb { - padding: 8px 15px; - margin-bottom: 20px; - list-style: none; - background-color: #f5f5f5; - border-radius: 4px; -} - -.breadcrumb > li { - display: inline-block; -} - -.breadcrumb > li + li:before { - padding: 0 5px; - color: #cccccc; - content: "/\00a0"; -} - -.breadcrumb > .active { - color: #999999; -} - -.pagination { - display: inline-block; - padding-left: 0; - margin: 20px 0; - border-radius: 4px; -} - -.pagination > li { - display: inline; -} - -.pagination > li > a, -.pagination > li > span { - position: relative; - float: left; - padding: 6px 12px; - margin-left: -1px; - line-height: 1.428571429; - text-decoration: none; - background-color: #ffffff; - border: 1px solid #dddddd; -} - -.pagination > li:first-child > a, -.pagination > li:first-child > span { - margin-left: 0; - border-bottom-left-radius: 4px; - border-top-left-radius: 4px; -} - -.pagination > li:last-child > a, -.pagination > li:last-child > span { - border-top-right-radius: 4px; - border-bottom-right-radius: 4px; -} - -.pagination > li > a:hover, -.pagination > li > span:hover, -.pagination > li > a:focus, -.pagination > li > span:focus { - background-color: #eeeeee; -} - -.pagination > .active > a, -.pagination > .active > span, -.pagination > .active > a:hover, -.pagination > .active > span:hover, -.pagination > .active > a:focus, -.pagination > .active > span:focus { - z-index: 2; - color: #ffffff; - cursor: default; - background-color: #428bca; - border-color: #428bca; -} - -.pagination > .disabled > span, -.pagination > .disabled > a, -.pagination > .disabled > a:hover, -.pagination > .disabled > a:focus { - color: #999999; - cursor: not-allowed; - background-color: #ffffff; - border-color: #dddddd; -} - -.pagination-lg > li > a, -.pagination-lg > li > span { - padding: 10px 16px; - font-size: 18px; -} - -.pagination-lg > li:first-child > a, -.pagination-lg > li:first-child > span { - border-bottom-left-radius: 6px; - border-top-left-radius: 6px; -} - -.pagination-lg > li:last-child > a, -.pagination-lg > li:last-child > span { - border-top-right-radius: 6px; - border-bottom-right-radius: 6px; -} - -.pagination-sm > li > a, -.pagination-sm > li > span { - padding: 5px 10px; - font-size: 12px; -} - -.pagination-sm > li:first-child > a, -.pagination-sm > li:first-child > span { - border-bottom-left-radius: 3px; - border-top-left-radius: 3px; -} - -.pagination-sm > li:last-child > a, -.pagination-sm > li:last-child > span { - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; -} - -.pager { - padding-left: 0; - margin: 20px 0; - text-align: center; - list-style: none; -} - -.pager:before, -.pager:after { - display: table; - content: " "; -} - -.pager:after { - clear: both; -} - -.pager:before, -.pager:after { - display: table; - content: " "; -} - -.pager:after { - clear: both; -} - -.pager li { - display: inline; -} - -.pager li > a, -.pager li > span { - display: inline-block; - padding: 5px 14px; - background-color: #ffffff; - border: 1px solid #dddddd; - border-radius: 15px; -} - -.pager li > a:hover, -.pager li > a:focus { - text-decoration: none; - background-color: #eeeeee; -} - -.pager .next > a, -.pager .next > span { - float: right; -} - -.pager .previous > a, -.pager .previous > span { - float: left; -} - -.pager .disabled > a, -.pager .disabled > a:hover, -.pager .disabled > a:focus, -.pager .disabled > span { - color: #999999; - cursor: not-allowed; - background-color: #ffffff; -} - -.label { - display: inline; - padding: .2em .6em .3em; - font-size: 75%; - font-weight: bold; - line-height: 1; - color: #ffffff; - text-align: center; - white-space: nowrap; - vertical-align: baseline; - border-radius: .25em; -} - -.label[href]:hover, -.label[href]:focus { - color: #ffffff; - text-decoration: none; - cursor: pointer; -} - -.label:empty { - display: none; -} - -.label-default { - background-color: #999999; -} - -.label-default[href]:hover, -.label-default[href]:focus { - background-color: #808080; -} - -.label-primary { - background-color: #428bca; -} - -.label-primary[href]:hover, -.label-primary[href]:focus { - background-color: #3071a9; -} - -.label-success { - background-color: #5cb85c; -} - -.label-success[href]:hover, -.label-success[href]:focus { - background-color: #449d44; -} - -.label-info { - background-color: #5bc0de; -} - -.label-info[href]:hover, -.label-info[href]:focus { - background-color: #31b0d5; -} - -.label-warning { - background-color: #f0ad4e; -} - -.label-warning[href]:hover, -.label-warning[href]:focus { - background-color: #ec971f; -} - -.label-danger { - background-color: #d9534f; -} - -.label-danger[href]:hover, -.label-danger[href]:focus { - background-color: #c9302c; -} - -.badge { - display: inline-block; - min-width: 10px; - padding: 3px 7px; - font-size: 12px; - font-weight: bold; - line-height: 1; - color: #ffffff; - text-align: center; - white-space: nowrap; - vertical-align: baseline; - background-color: #999999; - border-radius: 10px; -} - -.badge:empty { - display: none; -} - -a.badge:hover, -a.badge:focus { - color: #ffffff; - text-decoration: none; - cursor: pointer; -} - -.btn .badge { - position: relative; - top: -1px; -} - -a.list-group-item.active > .badge, -.nav-pills > .active > a > .badge { - color: #428bca; - background-color: #ffffff; -} - -.nav-pills > li > a > .badge { - margin-left: 3px; -} - -.jumbotron { - padding: 30px; - margin-bottom: 30px; - font-size: 21px; - font-weight: 200; - line-height: 2.1428571435; - color: inherit; - background-color: #eeeeee; -} - -.jumbotron h1 { - line-height: 1; - color: inherit; -} - -.jumbotron p { - line-height: 1.4; -} - -.container .jumbotron { - border-radius: 6px; -} - -@media screen and (min-width: 768px) { - .jumbotron { - padding-top: 48px; - padding-bottom: 48px; - } - .container .jumbotron { - padding-right: 60px; - padding-left: 60px; - } - .jumbotron h1 { - font-size: 63px; - } -} - -.thumbnail { - display: inline-block; - display: block; - height: auto; - max-width: 100%; - padding: 4px; - line-height: 1.428571429; - background-color: #ffffff; - border: 1px solid #dddddd; - border-radius: 4px; - -webkit-transition: all 0.2s ease-in-out; - transition: all 0.2s ease-in-out; -} - -.thumbnail > img { - display: block; - height: auto; - max-width: 100%; -} - -a.thumbnail:hover, -a.thumbnail:focus { - border-color: #428bca; -} - -.thumbnail > img { - margin-right: auto; - margin-left: auto; -} - -.thumbnail .caption { - padding: 9px; - color: #333333; -} - -.alert { - padding: 15px; - margin-bottom: 20px; - border: 1px solid transparent; - border-radius: 4px; -} - -.alert h4 { - margin-top: 0; - color: inherit; -} - -.alert .alert-link { - font-weight: bold; -} - -.alert > p, -.alert > ul { - margin-bottom: 0; -} - -.alert > p + p { - margin-top: 5px; -} - -.alert-dismissable { - padding-right: 35px; -} - -.alert-dismissable .close { - position: relative; - top: -2px; - right: -21px; - color: inherit; -} - -.alert-success { - color: #468847; - background-color: #dff0d8; - border-color: #d6e9c6; -} - -.alert-success hr { - border-top-color: #c9e2b3; -} - -.alert-success .alert-link { - color: #356635; -} - -.alert-info { - color: #3a87ad; - background-color: #d9edf7; - border-color: #bce8f1; -} - -.alert-info hr { - border-top-color: #a6e1ec; -} - -.alert-info .alert-link { - color: #2d6987; -} - -.alert-warning { - color: #c09853; - background-color: #fcf8e3; - border-color: #fbeed5; -} - -.alert-warning hr { - border-top-color: #f8e5be; -} - -.alert-warning .alert-link { - color: #a47e3c; -} - -.alert-danger { - color: #b94a48; - background-color: #f2dede; - border-color: #eed3d7; -} - -.alert-danger hr { - border-top-color: #e6c1c7; -} - -.alert-danger .alert-link { - color: #953b39; -} - -@-webkit-keyframes progress-bar-stripes { - from { - background-position: 40px 0; - } - to { - background-position: 0 0; - } -} - -@-moz-keyframes progress-bar-stripes { - from { - background-position: 40px 0; - } - to { - background-position: 0 0; - } -} - -@-o-keyframes progress-bar-stripes { - from { - background-position: 0 0; - } - to { - background-position: 40px 0; - } -} - -@keyframes progress-bar-stripes { - from { - background-position: 40px 0; - } - to { - background-position: 0 0; - } -} - -.progress { - height: 20px; - margin-bottom: 20px; - overflow: hidden; - background-color: #f5f5f5; - border-radius: 4px; - -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); - box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); -} - -.progress-bar { - float: left; - width: 0; - height: 100%; - font-size: 12px; - color: #ffffff; - text-align: center; - background-color: #428bca; - -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); - box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); - -webkit-transition: width 0.6s ease; - transition: width 0.6s ease; -} - -.progress-striped .progress-bar { - background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-size: 40px 40px; -} - -.progress.active .progress-bar { - -webkit-animation: progress-bar-stripes 2s linear infinite; - -moz-animation: progress-bar-stripes 2s linear infinite; - -ms-animation: progress-bar-stripes 2s linear infinite; - -o-animation: progress-bar-stripes 2s linear infinite; - animation: progress-bar-stripes 2s linear infinite; -} - -.progress-bar-success { - background-color: #5cb85c; -} - -.progress-striped .progress-bar-success { - background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); -} - -.progress-bar-info { - background-color: #5bc0de; -} - -.progress-striped .progress-bar-info { - background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); -} - -.progress-bar-warning { - background-color: #f0ad4e; -} - -.progress-striped .progress-bar-warning { - background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); -} - -.progress-bar-danger { - background-color: #d9534f; -} - -.progress-striped .progress-bar-danger { - background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); -} - -.media, -.media-body { - overflow: hidden; - zoom: 1; -} - -.media, -.media .media { - margin-top: 15px; -} - -.media:first-child { - margin-top: 0; -} - -.media-object { - display: block; -} - -.media-heading { - margin: 0 0 5px; -} - -.media > .pull-left { - margin-right: 10px; -} - -.media > .pull-right { - margin-left: 10px; -} - -.media-list { - padding-left: 0; - list-style: none; -} - -.list-group { - padding-left: 0; - margin-bottom: 20px; -} - -.list-group-item { - position: relative; - display: block; - padding: 10px 15px; - margin-bottom: -1px; - background-color: #ffffff; - border: 1px solid #dddddd; -} - -.list-group-item:first-child { - border-top-right-radius: 4px; - border-top-left-radius: 4px; -} - -.list-group-item:last-child { - margin-bottom: 0; - border-bottom-right-radius: 4px; - border-bottom-left-radius: 4px; -} - -.list-group-item > .badge { - float: right; -} - -.list-group-item > .badge + .badge { - margin-right: 5px; -} - -a.list-group-item { - color: #555555; -} - -a.list-group-item .list-group-item-heading { - color: #333333; -} - -a.list-group-item:hover, -a.list-group-item:focus { - text-decoration: none; - background-color: #f5f5f5; -} - -.list-group-item.active, -.list-group-item.active:hover, -.list-group-item.active:focus { - z-index: 2; - color: #ffffff; - background-color: #428bca; - border-color: #428bca; -} - -.list-group-item.active .list-group-item-heading, -.list-group-item.active:hover .list-group-item-heading, -.list-group-item.active:focus .list-group-item-heading { - color: inherit; -} - -.list-group-item.active .list-group-item-text, -.list-group-item.active:hover .list-group-item-text, -.list-group-item.active:focus .list-group-item-text { - color: #e1edf7; -} - -.list-group-item-heading { - margin-top: 0; - margin-bottom: 5px; -} - -.list-group-item-text { - margin-bottom: 0; - line-height: 1.3; -} - -.panel { - margin-bottom: 20px; - background-color: #ffffff; - border: 1px solid transparent; - border-radius: 4px; - -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); - box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); -} - -.panel-body { - padding: 15px; -} - -.panel-body:before, -.panel-body:after { - display: table; - content: " "; -} - -.panel-body:after { - clear: both; -} - -.panel-body:before, -.panel-body:after { - display: table; - content: " "; -} - -.panel-body:after { - clear: both; -} - -.panel > .list-group { - margin-bottom: 0; -} - -.panel > .list-group .list-group-item { - border-width: 1px 0; -} - -.panel > .list-group .list-group-item:first-child { - border-top-right-radius: 0; - border-top-left-radius: 0; -} - -.panel > .list-group .list-group-item:last-child { - border-bottom: 0; -} - -.panel-heading + .list-group .list-group-item:first-child { - border-top-width: 0; -} - -.panel > .table { - margin-bottom: 0; -} - -.panel > .panel-body + .table { - border-top: 1px solid #dddddd; -} - -.panel-heading { - padding: 10px 15px; - border-bottom: 1px solid transparent; - border-top-right-radius: 3px; - border-top-left-radius: 3px; -} - -.panel-title { - margin-top: 0; - margin-bottom: 0; - font-size: 16px; -} - -.panel-title > a { - color: inherit; -} - -.panel-footer { - padding: 10px 15px; - background-color: #f5f5f5; - border-top: 1px solid #dddddd; - border-bottom-right-radius: 3px; - border-bottom-left-radius: 3px; -} - -.panel-group .panel { - margin-bottom: 0; - overflow: hidden; - border-radius: 4px; -} - -.panel-group .panel + .panel { - margin-top: 5px; -} - -.panel-group .panel-heading { - border-bottom: 0; -} - -.panel-group .panel-heading + .panel-collapse .panel-body { - border-top: 1px solid #dddddd; -} - -.panel-group .panel-footer { - border-top: 0; -} - -.panel-group .panel-footer + .panel-collapse .panel-body { - border-bottom: 1px solid #dddddd; -} - -.panel-default { - border-color: #dddddd; -} - -.panel-default > .panel-heading { - color: #333333; - background-color: #f5f5f5; - border-color: #dddddd; -} - -.panel-default > .panel-heading + .panel-collapse .panel-body { - border-top-color: #dddddd; -} - -.panel-default > .panel-footer + .panel-collapse .panel-body { - border-bottom-color: #dddddd; -} - -.panel-primary { - border-color: #428bca; -} - -.panel-primary > .panel-heading { - color: #ffffff; - background-color: #428bca; - border-color: #428bca; -} - -.panel-primary > .panel-heading + .panel-collapse .panel-body { - border-top-color: #428bca; -} - -.panel-primary > .panel-footer + .panel-collapse .panel-body { - border-bottom-color: #428bca; -} - -.panel-success { - border-color: #d6e9c6; -} - -.panel-success > .panel-heading { - color: #468847; - background-color: #dff0d8; - border-color: #d6e9c6; -} - -.panel-success > .panel-heading + .panel-collapse .panel-body { - border-top-color: #d6e9c6; -} - -.panel-success > .panel-footer + .panel-collapse .panel-body { - border-bottom-color: #d6e9c6; -} - -.panel-warning { - border-color: #fbeed5; -} - -.panel-warning > .panel-heading { - color: #c09853; - background-color: #fcf8e3; - border-color: #fbeed5; -} - -.panel-warning > .panel-heading + .panel-collapse .panel-body { - border-top-color: #fbeed5; -} - -.panel-warning > .panel-footer + .panel-collapse .panel-body { - border-bottom-color: #fbeed5; -} - -.panel-danger { - border-color: #eed3d7; -} - -.panel-danger > .panel-heading { - color: #b94a48; - background-color: #f2dede; - border-color: #eed3d7; -} - -.panel-danger > .panel-heading + .panel-collapse .panel-body { - border-top-color: #eed3d7; -} - -.panel-danger > .panel-footer + .panel-collapse .panel-body { - border-bottom-color: #eed3d7; -} - -.panel-info { - border-color: #bce8f1; -} - -.panel-info > .panel-heading { - color: #3a87ad; - background-color: #d9edf7; - border-color: #bce8f1; -} - -.panel-info > .panel-heading + .panel-collapse .panel-body { - border-top-color: #bce8f1; -} - -.panel-info > .panel-footer + .panel-collapse .panel-body { - border-bottom-color: #bce8f1; -} - -.well { - min-height: 20px; - padding: 19px; - margin-bottom: 20px; - background-color: #f5f5f5; - border: 1px solid #e3e3e3; - border-radius: 4px; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); -} - -.well blockquote { - border-color: #ddd; - border-color: rgba(0, 0, 0, 0.15); -} - -.well-lg { - padding: 24px; - border-radius: 6px; -} - -.well-sm { - padding: 9px; - border-radius: 3px; -} - -.close { - float: right; - font-size: 21px; - font-weight: bold; - line-height: 1; - color: #000000; - text-shadow: 0 1px 0 #ffffff; - opacity: 0.2; - filter: alpha(opacity=20); -} - -.close:hover, -.close:focus { - color: #000000; - text-decoration: none; - cursor: pointer; - opacity: 0.5; - filter: alpha(opacity=50); -} - -button.close { - padding: 0; - cursor: pointer; - background: transparent; - border: 0; - -webkit-appearance: none; -} - -.modal-open { - overflow: hidden; -} - -body.modal-open, -.modal-open .navbar-fixed-top, -.modal-open .navbar-fixed-bottom { - margin-right: 15px; -} - -.modal { - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 1040; - display: none; - overflow: auto; - overflow-y: scroll; -} - -.modal.fade .modal-dialog { - -webkit-transform: translate(0, -25%); - -ms-transform: translate(0, -25%); - transform: translate(0, -25%); - -webkit-transition: -webkit-transform 0.3s ease-out; - -moz-transition: -moz-transform 0.3s ease-out; - -o-transition: -o-transform 0.3s ease-out; - transition: transform 0.3s ease-out; -} - -.modal.in .modal-dialog { - -webkit-transform: translate(0, 0); - -ms-transform: translate(0, 0); - transform: translate(0, 0); -} - -.modal-dialog { - z-index: 1050; - width: auto; - padding: 10px; - margin-right: auto; - margin-left: auto; -} - -.modal-content { - position: relative; - background-color: #ffffff; - border: 1px solid #999999; - border: 1px solid rgba(0, 0, 0, 0.2); - border-radius: 6px; - outline: none; - -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); - box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); - background-clip: padding-box; -} - -.modal-backdrop { - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 1030; - background-color: #000000; -} - -.modal-backdrop.fade { - opacity: 0; - filter: alpha(opacity=0); -} - -.modal-backdrop.in { - opacity: 0.5; - filter: alpha(opacity=50); -} - -.modal-header { - min-height: 16.428571429px; - padding: 15px; - border-bottom: 1px solid #e5e5e5; -} - -.modal-header .close { - margin-top: -2px; -} - -.modal-title { - margin: 0; - line-height: 1.428571429; -} - -.modal-body { - position: relative; - padding: 20px; -} - -.modal-footer { - padding: 19px 20px 20px; - margin-top: 15px; - text-align: right; - border-top: 1px solid #e5e5e5; -} - -.modal-footer:before, -.modal-footer:after { - display: table; - content: " "; -} - -.modal-footer:after { - clear: both; -} - -.modal-footer:before, -.modal-footer:after { - display: table; - content: " "; -} - -.modal-footer:after { - clear: both; -} - -.modal-footer .btn + .btn { - margin-bottom: 0; - margin-left: 5px; -} - -.modal-footer .btn-group .btn + .btn { - margin-left: -1px; -} - -.modal-footer .btn-block + .btn-block { - margin-left: 0; -} - -@media screen and (min-width: 768px) { - .modal-dialog { - right: auto; - left: 50%; - width: 600px; - padding-top: 30px; - padding-bottom: 30px; - } - .modal-content { - -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); - box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); - } -} - -.tooltip { - position: absolute; - z-index: 1030; - display: block; - font-size: 12px; - line-height: 1.4; - opacity: 0; - filter: alpha(opacity=0); - visibility: visible; -} - -.tooltip.in { - opacity: 0.9; - filter: alpha(opacity=90); -} - -.tooltip.top { - padding: 5px 0; - margin-top: -3px; -} - -.tooltip.right { - padding: 0 5px; - margin-left: 3px; -} - -.tooltip.bottom { - padding: 5px 0; - margin-top: 3px; -} - -.tooltip.left { - padding: 0 5px; - margin-left: -3px; -} - -.tooltip-inner { - max-width: 200px; - padding: 3px 8px; - color: #ffffff; - text-align: center; - text-decoration: none; - background-color: #000000; - border-radius: 4px; -} - -.tooltip-arrow { - position: absolute; - width: 0; - height: 0; - border-color: transparent; - border-style: solid; -} - -.tooltip.top .tooltip-arrow { - bottom: 0; - left: 50%; - margin-left: -5px; - border-top-color: #000000; - border-width: 5px 5px 0; -} - -.tooltip.top-left .tooltip-arrow { - bottom: 0; - left: 5px; - border-top-color: #000000; - border-width: 5px 5px 0; -} - -.tooltip.top-right .tooltip-arrow { - right: 5px; - bottom: 0; - border-top-color: #000000; - border-width: 5px 5px 0; -} - -.tooltip.right .tooltip-arrow { - top: 50%; - left: 0; - margin-top: -5px; - border-right-color: #000000; - border-width: 5px 5px 5px 0; -} - -.tooltip.left .tooltip-arrow { - top: 50%; - right: 0; - margin-top: -5px; - border-left-color: #000000; - border-width: 5px 0 5px 5px; -} - -.tooltip.bottom .tooltip-arrow { - top: 0; - left: 50%; - margin-left: -5px; - border-bottom-color: #000000; - border-width: 0 5px 5px; -} - -.tooltip.bottom-left .tooltip-arrow { - top: 0; - left: 5px; - border-bottom-color: #000000; - border-width: 0 5px 5px; -} - -.tooltip.bottom-right .tooltip-arrow { - top: 0; - right: 5px; - border-bottom-color: #000000; - border-width: 0 5px 5px; -} - -.popover { - position: absolute; - top: 0; - left: 0; - z-index: 1010; - display: none; - max-width: 276px; - padding: 1px; - text-align: left; - white-space: normal; - background-color: #ffffff; - border: 1px solid #cccccc; - border: 1px solid rgba(0, 0, 0, 0.2); - border-radius: 6px; - -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); - box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); - background-clip: padding-box; -} - -.popover.top { - margin-top: -10px; -} - -.popover.right { - margin-left: 10px; -} - -.popover.bottom { - margin-top: 10px; -} - -.popover.left { - margin-left: -10px; -} - -.popover-title { - padding: 8px 14px; - margin: 0; - font-size: 14px; - font-weight: normal; - line-height: 18px; - background-color: #f7f7f7; - border-bottom: 1px solid #ebebeb; - border-radius: 5px 5px 0 0; -} - -.popover-content { - padding: 9px 14px; -} - -.popover .arrow, -.popover .arrow:after { - position: absolute; - display: block; - width: 0; - height: 0; - border-color: transparent; - border-style: solid; -} - -.popover .arrow { - border-width: 11px; -} - -.popover .arrow:after { - border-width: 10px; - content: ""; -} - -.popover.top .arrow { - bottom: -11px; - left: 50%; - margin-left: -11px; - border-top-color: #999999; - border-top-color: rgba(0, 0, 0, 0.25); - border-bottom-width: 0; -} - -.popover.top .arrow:after { - bottom: 1px; - margin-left: -10px; - border-top-color: #ffffff; - border-bottom-width: 0; - content: " "; -} - -.popover.right .arrow { - top: 50%; - left: -11px; - margin-top: -11px; - border-right-color: #999999; - border-right-color: rgba(0, 0, 0, 0.25); - border-left-width: 0; -} - -.popover.right .arrow:after { - bottom: -10px; - left: 1px; - border-right-color: #ffffff; - border-left-width: 0; - content: " "; -} - -.popover.bottom .arrow { - top: -11px; - left: 50%; - margin-left: -11px; - border-bottom-color: #999999; - border-bottom-color: rgba(0, 0, 0, 0.25); - border-top-width: 0; -} - -.popover.bottom .arrow:after { - top: 1px; - margin-left: -10px; - border-bottom-color: #ffffff; - border-top-width: 0; - content: " "; -} - -.popover.left .arrow { - top: 50%; - right: -11px; - margin-top: -11px; - border-left-color: #999999; - border-left-color: rgba(0, 0, 0, 0.25); - border-right-width: 0; -} - -.popover.left .arrow:after { - right: 1px; - bottom: -10px; - border-left-color: #ffffff; - border-right-width: 0; - content: " "; -} - -.carousel { - position: relative; -} - -.carousel-inner { - position: relative; - width: 100%; - overflow: hidden; -} - -.carousel-inner > .item { - position: relative; - display: none; - -webkit-transition: 0.6s ease-in-out left; - transition: 0.6s ease-in-out left; -} - -.carousel-inner > .item > img, -.carousel-inner > .item > a > img { - display: block; - height: auto; - max-width: 100%; - line-height: 1; -} - -.carousel-inner > .active, -.carousel-inner > .next, -.carousel-inner > .prev { - display: block; -} - -.carousel-inner > .active { - left: 0; -} - -.carousel-inner > .next, -.carousel-inner > .prev { - position: absolute; - top: 0; - width: 100%; -} - -.carousel-inner > .next { - left: 100%; -} - -.carousel-inner > .prev { - left: -100%; -} - -.carousel-inner > .next.left, -.carousel-inner > .prev.right { - left: 0; -} - -.carousel-inner > .active.left { - left: -100%; -} - -.carousel-inner > .active.right { - left: 100%; -} - -.carousel-control { - position: absolute; - top: 0; - bottom: 0; - left: 0; - width: 15%; - font-size: 20px; - color: #ffffff; - text-align: center; - text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); - opacity: 0.5; - filter: alpha(opacity=50); -} - -.carousel-control.left { - background-image: -webkit-gradient(linear, 0 top, 100% top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.0001))); - background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, 0.5) 0), color-stop(rgba(0, 0, 0, 0.0001) 100%)); - background-image: -moz-linear-gradient(left, rgba(0, 0, 0, 0.5) 0, rgba(0, 0, 0, 0.0001) 100%); - background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0, rgba(0, 0, 0, 0.0001) 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); -} - -.carousel-control.right { - right: 0; - left: auto; - background-image: -webkit-gradient(linear, 0 top, 100% top, from(rgba(0, 0, 0, 0.0001)), to(rgba(0, 0, 0, 0.5))); - background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, 0.0001) 0), color-stop(rgba(0, 0, 0, 0.5) 100%)); - background-image: -moz-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0, rgba(0, 0, 0, 0.5) 100%); - background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0, rgba(0, 0, 0, 0.5) 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); -} - -.carousel-control:hover, -.carousel-control:focus { - color: #ffffff; - text-decoration: none; - opacity: 0.9; - filter: alpha(opacity=90); -} - -.carousel-control .icon-prev, -.carousel-control .icon-next, -.carousel-control .glyphicon-chevron-left, -.carousel-control .glyphicon-chevron-right { - position: absolute; - top: 50%; - left: 50%; - z-index: 5; - display: inline-block; -} - -.carousel-control .icon-prev, -.carousel-control .icon-next { - width: 20px; - height: 20px; - margin-top: -10px; - margin-left: -10px; - font-family: serif; -} - -.carousel-control .icon-prev:before { - content: '\2039'; -} - -.carousel-control .icon-next:before { - content: '\203a'; -} - -.carousel-indicators { - position: absolute; - bottom: 10px; - left: 50%; - z-index: 15; - width: 60%; - padding-left: 0; - margin-left: -30%; - text-align: center; - list-style: none; -} - -.carousel-indicators li { - display: inline-block; - width: 10px; - height: 10px; - margin: 1px; - text-indent: -999px; - cursor: pointer; - border: 1px solid #ffffff; - border-radius: 10px; -} - -.carousel-indicators .active { - width: 12px; - height: 12px; - margin: 0; - background-color: #ffffff; -} - -.carousel-caption { - position: absolute; - right: 15%; - bottom: 20px; - left: 15%; - z-index: 10; - padding-top: 20px; - padding-bottom: 20px; - color: #ffffff; - text-align: center; - text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); -} - -.carousel-caption .btn { - text-shadow: none; -} - -@media screen and (min-width: 768px) { - .carousel-control .icon-prev, - .carousel-control .icon-next { - width: 30px; - height: 30px; - margin-top: -15px; - margin-left: -15px; - font-size: 30px; - } - .carousel-caption { - right: 20%; - left: 20%; - padding-bottom: 30px; - } - .carousel-indicators { - bottom: 20px; - } -} - -.clearfix:before, -.clearfix:after { - display: table; - content: " "; -} - -.clearfix:after { - clear: both; -} - -.pull-right { - float: right !important; -} - -.pull-left { - float: left !important; -} - -.hide { - display: none !important; -} - -.show { - display: block !important; -} - -.invisible { - visibility: hidden; -} - -.text-hide { - font: 0/0 a; - color: transparent; - text-shadow: none; - background-color: transparent; - border: 0; -} - -.affix { - position: fixed; -} - -@-ms-viewport { - width: device-width; -} - -@media screen and (max-width: 400px) { - @-ms-viewport { - width: 320px; - } -} - -.hidden { - display: none !important; - visibility: hidden !important; -} - -.visible-xs { - display: none !important; -} - -tr.visible-xs { - display: none !important; -} - -th.visible-xs, -td.visible-xs { - display: none !important; -} - -@media (max-width: 767px) { - .visible-xs { - display: block !important; - } - tr.visible-xs { - display: table-row !important; - } - th.visible-xs, - td.visible-xs { - display: table-cell !important; - } -} - -@media (min-width: 768px) and (max-width: 991px) { - .visible-xs.visible-sm { - display: block !important; - } - tr.visible-xs.visible-sm { - display: table-row !important; - } - th.visible-xs.visible-sm, - td.visible-xs.visible-sm { - display: table-cell !important; - } -} - -@media (min-width: 992px) and (max-width: 1199px) { - .visible-xs.visible-md { - display: block !important; - } - tr.visible-xs.visible-md { - display: table-row !important; - } - th.visible-xs.visible-md, - td.visible-xs.visible-md { - display: table-cell !important; - } -} - -@media (min-width: 1200px) { - .visible-xs.visible-lg { - display: block !important; - } - tr.visible-xs.visible-lg { - display: table-row !important; - } - th.visible-xs.visible-lg, - td.visible-xs.visible-lg { - display: table-cell !important; - } -} - -.visible-sm { - display: none !important; -} - -tr.visible-sm { - display: none !important; -} - -th.visible-sm, -td.visible-sm { - display: none !important; -} - -@media (max-width: 767px) { - .visible-sm.visible-xs { - display: block !important; - } - tr.visible-sm.visible-xs { - display: table-row !important; - } - th.visible-sm.visible-xs, - td.visible-sm.visible-xs { - display: table-cell !important; - } -} - -@media (min-width: 768px) and (max-width: 991px) { - .visible-sm { - display: block !important; - } - tr.visible-sm { - display: table-row !important; - } - th.visible-sm, - td.visible-sm { - display: table-cell !important; - } -} - -@media (min-width: 992px) and (max-width: 1199px) { - .visible-sm.visible-md { - display: block !important; - } - tr.visible-sm.visible-md { - display: table-row !important; - } - th.visible-sm.visible-md, - td.visible-sm.visible-md { - display: table-cell !important; - } -} - -@media (min-width: 1200px) { - .visible-sm.visible-lg { - display: block !important; - } - tr.visible-sm.visible-lg { - display: table-row !important; - } - th.visible-sm.visible-lg, - td.visible-sm.visible-lg { - display: table-cell !important; - } -} - -.visible-md { - display: none !important; -} - -tr.visible-md { - display: none !important; -} - -th.visible-md, -td.visible-md { - display: none !important; -} - -@media (max-width: 767px) { - .visible-md.visible-xs { - display: block !important; - } - tr.visible-md.visible-xs { - display: table-row !important; - } - th.visible-md.visible-xs, - td.visible-md.visible-xs { - display: table-cell !important; - } -} - -@media (min-width: 768px) and (max-width: 991px) { - .visible-md.visible-sm { - display: block !important; - } - tr.visible-md.visible-sm { - display: table-row !important; - } - th.visible-md.visible-sm, - td.visible-md.visible-sm { - display: table-cell !important; - } -} - -@media (min-width: 992px) and (max-width: 1199px) { - .visible-md { - display: block !important; - } - tr.visible-md { - display: table-row !important; - } - th.visible-md, - td.visible-md { - display: table-cell !important; - } -} - -@media (min-width: 1200px) { - .visible-md.visible-lg { - display: block !important; - } - tr.visible-md.visible-lg { - display: table-row !important; - } - th.visible-md.visible-lg, - td.visible-md.visible-lg { - display: table-cell !important; - } -} - -.visible-lg { - display: none !important; -} - -tr.visible-lg { - display: none !important; -} - -th.visible-lg, -td.visible-lg { - display: none !important; -} - -@media (max-width: 767px) { - .visible-lg.visible-xs { - display: block !important; - } - tr.visible-lg.visible-xs { - display: table-row !important; - } - th.visible-lg.visible-xs, - td.visible-lg.visible-xs { - display: table-cell !important; - } -} - -@media (min-width: 768px) and (max-width: 991px) { - .visible-lg.visible-sm { - display: block !important; - } - tr.visible-lg.visible-sm { - display: table-row !important; - } - th.visible-lg.visible-sm, - td.visible-lg.visible-sm { - display: table-cell !important; - } -} - -@media (min-width: 992px) and (max-width: 1199px) { - .visible-lg.visible-md { - display: block !important; - } - tr.visible-lg.visible-md { - display: table-row !important; - } - th.visible-lg.visible-md, - td.visible-lg.visible-md { - display: table-cell !important; - } -} - -@media (min-width: 1200px) { - .visible-lg { - display: block !important; - } - tr.visible-lg { - display: table-row !important; - } - th.visible-lg, - td.visible-lg { - display: table-cell !important; - } -} - -.hidden-xs { - display: block !important; -} - -tr.hidden-xs { - display: table-row !important; -} - -th.hidden-xs, -td.hidden-xs { - display: table-cell !important; -} - -@media (max-width: 767px) { - .hidden-xs { - display: none !important; - } - tr.hidden-xs { - display: none !important; - } - th.hidden-xs, - td.hidden-xs { - display: none !important; - } -} - -@media (min-width: 768px) and (max-width: 991px) { - .hidden-xs.hidden-sm { - display: none !important; - } - tr.hidden-xs.hidden-sm { - display: none !important; - } - th.hidden-xs.hidden-sm, - td.hidden-xs.hidden-sm { - display: none !important; - } -} - -@media (min-width: 992px) and (max-width: 1199px) { - .hidden-xs.hidden-md { - display: none !important; - } - tr.hidden-xs.hidden-md { - display: none !important; - } - th.hidden-xs.hidden-md, - td.hidden-xs.hidden-md { - display: none !important; - } -} - -@media (min-width: 1200px) { - .hidden-xs.hidden-lg { - display: none !important; - } - tr.hidden-xs.hidden-lg { - display: none !important; - } - th.hidden-xs.hidden-lg, - td.hidden-xs.hidden-lg { - display: none !important; - } -} - -.hidden-sm { - display: block !important; -} - -tr.hidden-sm { - display: table-row !important; -} - -th.hidden-sm, -td.hidden-sm { - display: table-cell !important; -} - -@media (max-width: 767px) { - .hidden-sm.hidden-xs { - display: none !important; - } - tr.hidden-sm.hidden-xs { - display: none !important; - } - th.hidden-sm.hidden-xs, - td.hidden-sm.hidden-xs { - display: none !important; - } -} - -@media (min-width: 768px) and (max-width: 991px) { - .hidden-sm { - display: none !important; - } - tr.hidden-sm { - display: none !important; - } - th.hidden-sm, - td.hidden-sm { - display: none !important; - } -} - -@media (min-width: 992px) and (max-width: 1199px) { - .hidden-sm.hidden-md { - display: none !important; - } - tr.hidden-sm.hidden-md { - display: none !important; - } - th.hidden-sm.hidden-md, - td.hidden-sm.hidden-md { - display: none !important; - } -} - -@media (min-width: 1200px) { - .hidden-sm.hidden-lg { - display: none !important; - } - tr.hidden-sm.hidden-lg { - display: none !important; - } - th.hidden-sm.hidden-lg, - td.hidden-sm.hidden-lg { - display: none !important; - } -} - -.hidden-md { - display: block !important; -} - -tr.hidden-md { - display: table-row !important; -} - -th.hidden-md, -td.hidden-md { - display: table-cell !important; -} - -@media (max-width: 767px) { - .hidden-md.hidden-xs { - display: none !important; - } - tr.hidden-md.hidden-xs { - display: none !important; - } - th.hidden-md.hidden-xs, - td.hidden-md.hidden-xs { - display: none !important; - } -} - -@media (min-width: 768px) and (max-width: 991px) { - .hidden-md.hidden-sm { - display: none !important; - } - tr.hidden-md.hidden-sm { - display: none !important; - } - th.hidden-md.hidden-sm, - td.hidden-md.hidden-sm { - display: none !important; - } -} - -@media (min-width: 992px) and (max-width: 1199px) { - .hidden-md { - display: none !important; - } - tr.hidden-md { - display: none !important; - } - th.hidden-md, - td.hidden-md { - display: none !important; - } -} - -@media (min-width: 1200px) { - .hidden-md.hidden-lg { - display: none !important; - } - tr.hidden-md.hidden-lg { - display: none !important; - } - th.hidden-md.hidden-lg, - td.hidden-md.hidden-lg { - display: none !important; - } -} - -.hidden-lg { - display: block !important; -} - -tr.hidden-lg { - display: table-row !important; -} - -th.hidden-lg, -td.hidden-lg { - display: table-cell !important; -} - -@media (max-width: 767px) { - .hidden-lg.hidden-xs { - display: none !important; - } - tr.hidden-lg.hidden-xs { - display: none !important; - } - th.hidden-lg.hidden-xs, - td.hidden-lg.hidden-xs { - display: none !important; - } -} - -@media (min-width: 768px) and (max-width: 991px) { - .hidden-lg.hidden-sm { - display: none !important; - } - tr.hidden-lg.hidden-sm { - display: none !important; - } - th.hidden-lg.hidden-sm, - td.hidden-lg.hidden-sm { - display: none !important; - } -} - -@media (min-width: 992px) and (max-width: 1199px) { - .hidden-lg.hidden-md { - display: none !important; - } - tr.hidden-lg.hidden-md { - display: none !important; - } - th.hidden-lg.hidden-md, - td.hidden-lg.hidden-md { - display: none !important; - } -} - -@media (min-width: 1200px) { - .hidden-lg { - display: none !important; - } - tr.hidden-lg { - display: none !important; - } - th.hidden-lg, - td.hidden-lg { - display: none !important; - } -} - -.visible-print { - display: none !important; -} - -tr.visible-print { - display: none !important; -} - -th.visible-print, -td.visible-print { - display: none !important; -} - -@media print { - .visible-print { - display: block !important; - } - tr.visible-print { - display: table-row !important; - } - th.visible-print, - td.visible-print { - display: table-cell !important; - } - .hidden-print { - display: none !important; - } - tr.hidden-print { - display: none !important; - } - th.hidden-print, - td.hidden-print { - display: none !important; - } -} \ No newline at end of file diff --git a/public/libs/bootstrap-v3.0.0/css/bootstrap.min.css b/public/libs/bootstrap-v3.0.0/css/bootstrap.min.css deleted file mode 100644 index a553c4f5..00000000 --- a/public/libs/bootstrap-v3.0.0/css/bootstrap.min.css +++ /dev/null @@ -1,9 +0,0 @@ -/*! - * Bootstrap v3.0.0 - * - * Copyright 2013 Twitter, Inc - * Licensed under the Apache License v2.0 - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Designed and built with all the love in the world by @mdo and @fat. - *//*! normalize.css v2.1.0 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{margin:.67em 0;font-size:2em}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}hr{height:0;-moz-box-sizing:content-box;box-sizing:content-box}mark{color:#000;background:#ff0}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre-wrap}q{quotes:"\201C" "\201D" "\2018" "\2019"}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}fieldset{padding:.35em .625em .75em;margin:0 2px;border:1px solid #c0c0c0}legend{padding:0;border:0}button,input,select,textarea{margin:0;font-family:inherit;font-size:100%}button,input{line-height:normal}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button}button[disabled],html input[disabled]{cursor:default}input[type="checkbox"],input[type="radio"]{padding:0;box-sizing:border-box}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}@media print{*{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}@page{margin:2cm .5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.table td,.table th{background-color:#fff!important}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table-bordered th,.table-bordered td{border:1px solid #ddd!important}}*,*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:62.5%;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}button,input,select[multiple],textarea{background-image:none}a{color:#428bca;text-decoration:none}a:hover,a:focus{color:#2a6496;text-decoration:underline}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}img{vertical-align:middle}.img-responsive{display:block;height:auto;max-width:100%}.img-rounded{border-radius:6px}.img-thumbnail{display:inline-block;height:auto;max-width:100%;padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16.099999999999998px;font-weight:200;line-height:1.4}@media(min-width:768px){.lead{font-size:21px}}small{font-size:85%}cite{font-style:normal}.text-muted{color:#999}.text-primary{color:#428bca}.text-warning{color:#c09853}.text-danger{color:#b94a48}.text-success{color:#468847}.text-info{color:#3a87ad}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small{font-weight:normal;line-height:1;color:#999}h1,h2,h3{margin-top:20px;margin-bottom:10px}h4,h5,h6{margin-top:10px;margin-bottom:10px}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}h1 small,.h1 small{font-size:24px}h2 small,.h2 small{font-size:18px}h3 small,.h3 small,h4 small,.h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-bottom:20px}dt,dd{line-height:1.428571429}dt{font-weight:bold}dd{margin-left:0}@media(min-width:768px){.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}.dl-horizontal dd:before,.dl-horizontal dd:after{display:table;content:" "}.dl-horizontal dd:after{clear:both}.dl-horizontal dd:before,.dl-horizontal dd:after{display:table;content:" "}.dl-horizontal dd:after{clear:both}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{font-size:17.5px;font-weight:300;line-height:1.25}blockquote p:last-child{margin-bottom:0}blockquote small{display:block;line-height:1.428571429;color:#999}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:1.428571429}code,pre{font-family:Monaco,Menlo,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;white-space:nowrap;background-color:#f9f2f4;border-radius:4px}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.428571429;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.container:before,.container:after{display:table;content:" "}.container:after{clear:both}.container:before,.container:after{display:table;content:" "}.container:after{clear:both}.row{margin-right:-15px;margin-left:-15px}.row:before,.row:after{display:table;content:" "}.row:after{clear:both}.row:before,.row:after{display:table;content:" "}.row:after{clear:both}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11{float:left}.col-xs-1{width:8.333333333333332%}.col-xs-2{width:16.666666666666664%}.col-xs-3{width:25%}.col-xs-4{width:33.33333333333333%}.col-xs-5{width:41.66666666666667%}.col-xs-6{width:50%}.col-xs-7{width:58.333333333333336%}.col-xs-8{width:66.66666666666666%}.col-xs-9{width:75%}.col-xs-10{width:83.33333333333334%}.col-xs-11{width:91.66666666666666%}.col-xs-12{width:100%}@media(min-width:768px){.container{max-width:750px}.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11{float:left}.col-sm-1{width:8.333333333333332%}.col-sm-2{width:16.666666666666664%}.col-sm-3{width:25%}.col-sm-4{width:33.33333333333333%}.col-sm-5{width:41.66666666666667%}.col-sm-6{width:50%}.col-sm-7{width:58.333333333333336%}.col-sm-8{width:66.66666666666666%}.col-sm-9{width:75%}.col-sm-10{width:83.33333333333334%}.col-sm-11{width:91.66666666666666%}.col-sm-12{width:100%}.col-sm-push-1{left:8.333333333333332%}.col-sm-push-2{left:16.666666666666664%}.col-sm-push-3{left:25%}.col-sm-push-4{left:33.33333333333333%}.col-sm-push-5{left:41.66666666666667%}.col-sm-push-6{left:50%}.col-sm-push-7{left:58.333333333333336%}.col-sm-push-8{left:66.66666666666666%}.col-sm-push-9{left:75%}.col-sm-push-10{left:83.33333333333334%}.col-sm-push-11{left:91.66666666666666%}.col-sm-pull-1{right:8.333333333333332%}.col-sm-pull-2{right:16.666666666666664%}.col-sm-pull-3{right:25%}.col-sm-pull-4{right:33.33333333333333%}.col-sm-pull-5{right:41.66666666666667%}.col-sm-pull-6{right:50%}.col-sm-pull-7{right:58.333333333333336%}.col-sm-pull-8{right:66.66666666666666%}.col-sm-pull-9{right:75%}.col-sm-pull-10{right:83.33333333333334%}.col-sm-pull-11{right:91.66666666666666%}.col-sm-offset-1{margin-left:8.333333333333332%}.col-sm-offset-2{margin-left:16.666666666666664%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-4{margin-left:33.33333333333333%}.col-sm-offset-5{margin-left:41.66666666666667%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-7{margin-left:58.333333333333336%}.col-sm-offset-8{margin-left:66.66666666666666%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-10{margin-left:83.33333333333334%}.col-sm-offset-11{margin-left:91.66666666666666%}}@media(min-width:992px){.container{max-width:970px}.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11{float:left}.col-md-1{width:8.333333333333332%}.col-md-2{width:16.666666666666664%}.col-md-3{width:25%}.col-md-4{width:33.33333333333333%}.col-md-5{width:41.66666666666667%}.col-md-6{width:50%}.col-md-7{width:58.333333333333336%}.col-md-8{width:66.66666666666666%}.col-md-9{width:75%}.col-md-10{width:83.33333333333334%}.col-md-11{width:91.66666666666666%}.col-md-12{width:100%}.col-md-push-0{left:auto}.col-md-push-1{left:8.333333333333332%}.col-md-push-2{left:16.666666666666664%}.col-md-push-3{left:25%}.col-md-push-4{left:33.33333333333333%}.col-md-push-5{left:41.66666666666667%}.col-md-push-6{left:50%}.col-md-push-7{left:58.333333333333336%}.col-md-push-8{left:66.66666666666666%}.col-md-push-9{left:75%}.col-md-push-10{left:83.33333333333334%}.col-md-push-11{left:91.66666666666666%}.col-md-pull-0{right:auto}.col-md-pull-1{right:8.333333333333332%}.col-md-pull-2{right:16.666666666666664%}.col-md-pull-3{right:25%}.col-md-pull-4{right:33.33333333333333%}.col-md-pull-5{right:41.66666666666667%}.col-md-pull-6{right:50%}.col-md-pull-7{right:58.333333333333336%}.col-md-pull-8{right:66.66666666666666%}.col-md-pull-9{right:75%}.col-md-pull-10{right:83.33333333333334%}.col-md-pull-11{right:91.66666666666666%}.col-md-offset-0{margin-left:0}.col-md-offset-1{margin-left:8.333333333333332%}.col-md-offset-2{margin-left:16.666666666666664%}.col-md-offset-3{margin-left:25%}.col-md-offset-4{margin-left:33.33333333333333%}.col-md-offset-5{margin-left:41.66666666666667%}.col-md-offset-6{margin-left:50%}.col-md-offset-7{margin-left:58.333333333333336%}.col-md-offset-8{margin-left:66.66666666666666%}.col-md-offset-9{margin-left:75%}.col-md-offset-10{margin-left:83.33333333333334%}.col-md-offset-11{margin-left:91.66666666666666%}}@media(min-width:1200px){.container{max-width:1170px}.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11{float:left}.col-lg-1{width:8.333333333333332%}.col-lg-2{width:16.666666666666664%}.col-lg-3{width:25%}.col-lg-4{width:33.33333333333333%}.col-lg-5{width:41.66666666666667%}.col-lg-6{width:50%}.col-lg-7{width:58.333333333333336%}.col-lg-8{width:66.66666666666666%}.col-lg-9{width:75%}.col-lg-10{width:83.33333333333334%}.col-lg-11{width:91.66666666666666%}.col-lg-12{width:100%}.col-lg-push-0{left:auto}.col-lg-push-1{left:8.333333333333332%}.col-lg-push-2{left:16.666666666666664%}.col-lg-push-3{left:25%}.col-lg-push-4{left:33.33333333333333%}.col-lg-push-5{left:41.66666666666667%}.col-lg-push-6{left:50%}.col-lg-push-7{left:58.333333333333336%}.col-lg-push-8{left:66.66666666666666%}.col-lg-push-9{left:75%}.col-lg-push-10{left:83.33333333333334%}.col-lg-push-11{left:91.66666666666666%}.col-lg-pull-0{right:auto}.col-lg-pull-1{right:8.333333333333332%}.col-lg-pull-2{right:16.666666666666664%}.col-lg-pull-3{right:25%}.col-lg-pull-4{right:33.33333333333333%}.col-lg-pull-5{right:41.66666666666667%}.col-lg-pull-6{right:50%}.col-lg-pull-7{right:58.333333333333336%}.col-lg-pull-8{right:66.66666666666666%}.col-lg-pull-9{right:75%}.col-lg-pull-10{right:83.33333333333334%}.col-lg-pull-11{right:91.66666666666666%}.col-lg-offset-0{margin-left:0}.col-lg-offset-1{margin-left:8.333333333333332%}.col-lg-offset-2{margin-left:16.666666666666664%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-4{margin-left:33.33333333333333%}.col-lg-offset-5{margin-left:41.66666666666667%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-7{margin-left:58.333333333333336%}.col-lg-offset-8{margin-left:66.66666666666666%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-10{margin-left:83.33333333333334%}.col-lg-offset-11{margin-left:91.66666666666666%}}table{max-width:100%;background-color:transparent}th{text-align:left}.table{width:100%;margin-bottom:20px}.table thead>tr>th,.table tbody>tr>th,.table tfoot>tr>th,.table thead>tr>td,.table tbody>tr>td,.table tfoot>tr>td{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.table thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table caption+thead tr:first-child th,.table colgroup+thead tr:first-child th,.table thead:first-child tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed thead>tr>th,.table-condensed tbody>tr>th,.table-condensed tfoot>tr>th,.table-condensed thead>tr>td,.table-condensed tbody>tr>td,.table-condensed tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd)>td,.table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover>tbody>tr:hover>td,.table-hover>tbody>tr:hover>th{background-color:#f5f5f5}table col[class*="col-"]{display:table-column;float:none}table td[class*="col-"],table th[class*="col-"]{display:table-cell;float:none}.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th{background-color:#dff0d8;border-color:#d6e9c6}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td{background-color:#d0e9c6;border-color:#c9e2b3}.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th{background-color:#f2dede;border-color:#eed3d7}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td{background-color:#ebcccc;border-color:#e6c1c7}.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th{background-color:#fcf8e3;border-color:#fbeed5}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td{background-color:#faf2cc;border-color:#f8e5be}@media(max-width:768px){.table-responsive{width:100%;margin-bottom:15px;overflow-x:scroll;overflow-y:hidden;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0;background-color:#fff}.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>thead>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>thead>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;margin-bottom:5px;font-weight:bold}input[type="search"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type="file"]{display:block}select[multiple],select[size]{height:auto}select optgroup{font-family:inherit;font-size:inherit;font-style:inherit}input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}input[type="number"]::-webkit-outer-spin-button,input[type="number"]::-webkit-inner-spin-button{height:auto}.form-control:-moz-placeholder{color:#999}.form-control::-moz-placeholder{color:#999}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle;background-color:#fff;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6)}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee}textarea.form-control{height:auto}.form-group{margin-bottom:15px}.radio,.checkbox{display:block;min-height:20px;padding-left:20px;margin-top:10px;margin-bottom:10px;vertical-align:middle}.radio label,.checkbox label{display:inline;margin-bottom:0;font-weight:normal;cursor:pointer}.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"]{float:left;margin-left:-20px}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:normal;vertical-align:middle;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type="radio"][disabled],input[type="checkbox"][disabled],.radio[disabled],.radio-inline[disabled],.checkbox[disabled],.checkbox-inline[disabled],fieldset[disabled] input[type="radio"],fieldset[disabled] input[type="checkbox"],fieldset[disabled] .radio,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}textarea.input-sm{height:auto}.input-lg{height:45px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-lg{height:45px;line-height:45px}textarea.input-lg{height:auto}.has-warning .help-block,.has-warning .control-label{color:#c09853}.has-warning .form-control{border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-warning .form-control:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.has-warning .input-group-addon{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.has-error .help-block,.has-error .control-label{color:#b94a48}.has-error .form-control{border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-error .form-control:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.has-error .input-group-addon{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.has-success .help-block,.has-success .control-label{color:#468847}.has-success .form-control{border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-success .form-control:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.has-success .input-group-addon{color:#468847;background-color:#dff0d8;border-color:#468847}.form-control-static{padding-top:7px;margin-bottom:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media(min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block}.form-inline .radio,.form-inline .checkbox{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:none;margin-left:0}}.form-horizontal .control-label,.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{padding-top:7px;margin-top:0;margin-bottom:0}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}.form-horizontal .form-group:before,.form-horizontal .form-group:after{display:table;content:" "}.form-horizontal .form-group:after{clear:both}.form-horizontal .form-group:before,.form-horizontal .form-group:after{display:table;content:" "}.form-horizontal .form-group:after{clear:both}@media(min-width:768px){.form-horizontal .control-label{text-align:right}}.btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:normal;line-height:1.428571429;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;border:1px solid transparent;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus{color:#333;text-decoration:none}.btn:active,.btn.active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{color:#333;background-color:#ebebeb;border-color:#adadad}.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{background-image:none}.btn-default.disabled,.btn-default[disabled],fieldset[disabled] .btn-default,.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled:active,.btn-default[disabled]:active,fieldset[disabled] .btn-default:active,.btn-default.disabled.active,.btn-default[disabled].active,fieldset[disabled] .btn-default.active{background-color:#fff;border-color:#ccc}.btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary[disabled],fieldset[disabled] .btn-primary,.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled:active,.btn-primary[disabled]:active,fieldset[disabled] .btn-primary:active,.btn-primary.disabled.active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary.active{background-color:#428bca;border-color:#357ebd}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-warning,.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled:active,.btn-warning[disabled]:active,fieldset[disabled] .btn-warning:active,.btn-warning.disabled.active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning.active{background-color:#f0ad4e;border-color:#eea236}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled,.btn-danger[disabled],fieldset[disabled] .btn-danger,.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled:active,.btn-danger[disabled]:active,fieldset[disabled] .btn-danger:active,.btn-danger.disabled.active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger.active{background-color:#d9534f;border-color:#d43f3a}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{background-image:none}.btn-success.disabled,.btn-success[disabled],fieldset[disabled] .btn-success,.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled:active,.btn-success[disabled]:active,fieldset[disabled] .btn-success:active,.btn-success.disabled.active,.btn-success[disabled].active,fieldset[disabled] .btn-success.active{background-color:#5cb85c;border-color:#4cae4c}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{background-image:none}.btn-info.disabled,.btn-info[disabled],fieldset[disabled] .btn-info,.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled:active,.btn-info[disabled]:active,fieldset[disabled] .btn-info:active,.btn-info.disabled.active,.btn-info[disabled].active,fieldset[disabled] .btn-info.active{background-color:#5bc0de;border-color:#46b8da}.btn-link{font-weight:normal;color:#428bca;cursor:pointer;border-radius:0}.btn-link,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#2a6496;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus{color:#999;text-decoration:none}.btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-sm,.btn-xs{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs{padding:1px 5px}.btn-block{display:block;width:100%;padding-right:0;padding-left:0}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;transition:height .35s ease}@font-face{font-family:'Glyphicons Halflings';src:url('../fonts/glyphicons-halflings-regular.eot');src:url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'),url('../fonts/glyphicons-halflings-regular.woff') format('woff'),url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'),url('../fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular') format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';-webkit-font-smoothing:antialiased;font-style:normal;font-weight:normal;line-height:1}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-print:before{content:"\e045"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-briefcase:before{content:"\1f4bc"}.glyphicon-calendar:before{content:"\1f4c5"}.glyphicon-pushpin:before{content:"\1f4cc"}.glyphicon-paperclip:before{content:"\1f4ce"}.glyphicon-camera:before{content:"\1f4f7"}.glyphicon-lock:before{content:"\1f512"}.glyphicon-bell:before{content:"\1f514"}.glyphicon-bookmark:before{content:"\1f516"}.glyphicon-fire:before{content:"\1f525"}.glyphicon-wrench:before{content:"\1f527"}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid #000;border-right:4px solid transparent;border-bottom:0 dotted;border-left:4px solid transparent;content:""}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);box-shadow:0 6px 12px rgba(0,0,0,0.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.428571429;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{color:#fff;text-decoration:none;background-color:#428bca}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;background-color:#428bca;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#999}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0 dotted;border-bottom:4px solid #000;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media(min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}}.btn-default .caret{border-top-color:#333}.btn-primary .caret,.btn-success .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret{border-top-color:#fff}.dropup .btn-default .caret{border-bottom-color:#333}.dropup .btn-primary .caret,.dropup .btn-success .caret,.dropup .btn-warning .caret,.dropup .btn-danger .caret,.dropup .btn-info .caret{border-bottom-color:#fff}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover,.btn-group>.btn:focus,.btn-group-vertical>.btn:focus,.btn-group>.btn:active,.btn-group-vertical>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn.active{z-index:2}.btn-group>.btn:focus,.btn-group-vertical>.btn:focus{outline:0}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar:before,.btn-toolbar:after{display:table;content:" "}.btn-toolbar:after{clear:both}.btn-toolbar:before,.btn-toolbar:after{display:table;content:" "}.btn-toolbar:after{clear:both}.btn-toolbar .btn-group{float:left}.btn-toolbar>.btn+.btn,.btn-toolbar>.btn-group+.btn,.btn-toolbar>.btn+.btn-group,.btn-toolbar>.btn-group+.btn-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group-xs>.btn{padding:5px 10px;padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{display:table;content:" "}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{display:table;content:" "}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-right-radius:0;border-bottom-left-radius:4px;border-top-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child>.btn:last-child,.btn-group-vertical>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;border-collapse:separate;table-layout:fixed}.btn-group-justified .btn{display:table-cell;float:none;width:1%}[data-toggle="buttons"]>.btn>input[type="radio"],[data-toggle="buttons"]>.btn>input[type="checkbox"]{display:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group.col{float:none;padding-right:0;padding-left:0}.input-group .form-control{width:100%;margin-bottom:0}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:45px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:45px;line-height:45px}textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:normal;line-height:1;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type="radio"],.input-group-addon input[type="checkbox"]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-4px}.input-group-btn>.btn:hover,.input-group-btn>.btn:active{z-index:2}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav:before,.nav:after{display:table;content:" "}.nav:after{clear:both}.nav:before,.nav:after{display:table;content:" "}.nav:after{clear:both}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#999}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#999;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#eee;border-color:#428bca}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{text-align:center}@media(min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}}.nav-tabs.nav-justified>li>a{margin-right:0;border-bottom:1px solid #ddd}.nav-tabs.nav-justified>.active>a{border-bottom-color:#fff}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:5px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#fff;background-color:#428bca}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{text-align:center}@media(min-width:768px){.nav-justified>li{display:table-cell;width:1%}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-bottom:1px solid #ddd}.nav-tabs-justified>.active>a{border-bottom-color:#fff}.tabbable:before,.tabbable:after{display:table;content:" "}.tabbable:after{clear:both}.tabbable:before,.tabbable:after{display:table;content:" "}.tabbable:after{clear:both}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.nav .caret{border-top-color:#428bca;border-bottom-color:#428bca}.nav a:hover .caret{border-top-color:#2a6496;border-bottom-color:#2a6496}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;z-index:1000;min-height:50px;margin-bottom:20px;border:1px solid transparent}.navbar:before,.navbar:after{display:table;content:" "}.navbar:after{clear:both}.navbar:before,.navbar:after{display:table;content:" "}.navbar:after{clear:both}@media(min-width:768px){.navbar{border-radius:4px}}.navbar-header:before,.navbar-header:after{display:table;content:" "}.navbar-header:after{clear:both}.navbar-header:before,.navbar-header:after{display:table;content:" "}.navbar-header:after{clear:both}@media(min-width:768px){.navbar-header{float:left}}.navbar-collapse{max-height:340px;padding-right:15px;padding-left:15px;overflow-x:visible;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);-webkit-overflow-scrolling:touch}.navbar-collapse:before,.navbar-collapse:after{display:table;content:" "}.navbar-collapse:after{clear:both}.navbar-collapse:before,.navbar-collapse:after{display:table;content:" "}.navbar-collapse:after{clear:both}.navbar-collapse.in{overflow-y:auto}@media(min-width:768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-collapse .navbar-nav.navbar-left:first-child{margin-left:-15px}.navbar-collapse .navbar-nav.navbar-right:last-child{margin-right:-15px}.navbar-collapse .navbar-text:last-child{margin-right:0}}.container>.navbar-header,.container>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media(min-width:768px){.container>.navbar-header,.container>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{border-width:0 0 1px}@media(min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;border-width:0 0 1px}@media(min-width:768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;z-index:1030}.navbar-fixed-bottom{bottom:0;margin-bottom:0}.navbar-brand{float:left;padding:15px 15px;font-size:18px;line-height:20px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}@media(min-width:768px){.navbar>.container .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:8px;margin-right:15px;margin-bottom:8px;background-color:transparent;border:1px solid transparent;border-radius:4px}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media(min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media(max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media(min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}@media(min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important}}.navbar-form{padding:10px 15px;margin-top:8px;margin-right:-15px;margin-bottom:8px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1)}@media(min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.navbar-form .radio input[type="radio"],.navbar-form .checkbox input[type="checkbox"]{float:none;margin-left:0}}@media(max-width:767px){.navbar-form .form-group{margin-bottom:5px}}@media(min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-nav.pull-right>li>.dropdown-menu,.navbar-nav>li>.dropdown-menu.pull-right{right:0;left:auto}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-text{float:left;margin-top:15px;margin-bottom:15px}@media(min-width:768px){.navbar-text{margin-right:15px;margin-left:15px}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#ccc}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e6e6e6}.navbar-default .navbar-nav>.dropdown>a:hover .caret,.navbar-default .navbar-nav>.dropdown>a:focus .caret{border-top-color:#333;border-bottom-color:#333}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.open>a .caret,.navbar-default .navbar-nav>.open>a:hover .caret,.navbar-default .navbar-nav>.open>a:focus .caret{border-top-color:#555;border-bottom-color:#555}.navbar-default .navbar-nav>.dropdown>a .caret{border-top-color:#777;border-bottom-color:#777}@media(max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#999}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#999}.navbar-inverse .navbar-nav>li>a{color:#999}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.dropdown>a:hover .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-nav>.dropdown>a .caret{border-top-color:#999;border-bottom-color:#999}.navbar-inverse .navbar-nav>.open>a .caret,.navbar-inverse .navbar-nav>.open>a:hover .caret,.navbar-inverse .navbar-nav>.open>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}@media(max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#999}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.breadcrumb>.active{color:#999}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.428571429;text-decoration:none;background-color:#fff;border:1px solid #ddd}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>li>a:hover,.pagination>li>span:hover,.pagination>li>a:focus,.pagination>li>span:focus{background-color:#eee}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus{z-index:2;color:#fff;cursor:default;background-color:#428bca;border-color:#428bca}.pagination>.disabled>span,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager:before,.pager:after{display:table;content:" "}.pager:after{clear:both}.pager:before,.pager:after{display:table;content:" "}.pager:after{clear:both}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#999;cursor:not-allowed;background-color:#fff}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.label[href]:hover,.label[href]:focus{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.label-default{background-color:#999}.label-default[href]:hover,.label-default[href]:focus{background-color:#808080}.label-primary{background-color:#428bca}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#3071a9}.label-success{background-color:#5cb85c}.label-success[href]:hover,.label-success[href]:focus{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:hover,.label-info[href]:focus{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;background-color:#999;border-radius:10px}.badge:empty{display:none}a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.btn .badge{position:relative;top:-1px}a.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#428bca;background-color:#fff}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding:30px;margin-bottom:30px;font-size:21px;font-weight:200;line-height:2.1428571435;color:inherit;background-color:#eee}.jumbotron h1{line-height:1;color:inherit}.jumbotron p{line-height:1.4}.container .jumbotron{border-radius:6px}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron{padding-right:60px;padding-left:60px}.jumbotron h1{font-size:63px}}.thumbnail{display:inline-block;display:block;height:auto;max-width:100%;padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.thumbnail>img{display:block;height:auto;max-width:100%}a.thumbnail:hover,a.thumbnail:focus{border-color:#428bca}.thumbnail>img{margin-right:auto;margin-left:auto}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:bold}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable{padding-right:35px}.alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#356635}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#2d6987}.alert-warning{color:#c09853;background-color:#fcf8e3;border-color:#fbeed5}.alert-warning hr{border-top-color:#f8e5be}.alert-warning .alert-link{color:#a47e3c}.alert-danger{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.alert-danger hr{border-top-color:#e6c1c7}.alert-danger .alert-link{color:#953b39}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-transition:width .6s ease;transition:width .6s ease}.progress-striped .progress-bar{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.media,.media-body{overflow:hidden;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:hover,a.list-group-item:focus{text-decoration:none;background-color:#f5f5f5}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}.list-group-item.active .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:hover .list-group-item-text,.list-group-item.active:focus .list-group-item-text{color:#e1edf7}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.05);box-shadow:0 1px 1px rgba(0,0,0,0.05)}.panel-body{padding:15px}.panel-body:before,.panel-body:after{display:table;content:" "}.panel-body:after{clear:both}.panel-body:before,.panel-body:after{display:table;content:" "}.panel-body:after{clear:both}.panel>.list-group{margin-bottom:0}.panel>.list-group .list-group-item{border-width:1px 0}.panel>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.panel>.list-group .list-group-item:last-child{border-bottom:0}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.table{margin-bottom:0}.panel>.panel-body+.table{border-top:1px solid #ddd}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-title{margin-top:0;margin-bottom:0;font-size:16px}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-group .panel{margin-bottom:0;overflow:hidden;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#428bca}.panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.panel-warning{border-color:#fbeed5}.panel-warning>.panel-heading{color:#c09853;background-color:#fcf8e3;border-color:#fbeed5}.panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#fbeed5}.panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#fbeed5}.panel-danger{border-color:#eed3d7}.panel-danger>.panel-heading{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#eed3d7}.panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#eed3d7}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:bold;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}body.modal-open,.modal-open .navbar-fixed-top,.modal-open .navbar-fixed-bottom{margin-right:15px}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;display:none;overflow:auto;overflow-y:scroll}.modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.modal-dialog{z-index:1050;width:auto;padding:10px;margin-right:auto;margin-left:auto}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,0.5);box-shadow:0 3px 9px rgba(0,0,0,0.5);background-clip:padding-box}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{min-height:16.428571429px;padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.428571429}.modal-body{position:relative;padding:20px}.modal-footer{padding:19px 20px 20px;margin-top:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer:before,.modal-footer:after{display:table;content:" "}.modal-footer:after{clear:both}.modal-footer:before,.modal-footer:after{display:table;content:" "}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}@media screen and (min-width:768px){.modal-dialog{right:auto;left:50%;width:600px;padding-top:30px;padding-bottom:30px}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,0.5);box-shadow:0 5px 15px rgba(0,0,0,0.5)}}.tooltip{position:absolute;z-index:1030;display:block;font-size:12px;line-height:1.4;opacity:0;filter:alpha(opacity=0);visibility:visible}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.top-right .tooltip-arrow{right:5px;bottom:0;border-top-color:#000;border-width:5px 5px 0}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#000;border-width:5px 5px 5px 0}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#000;border-width:5px 0 5px 5px}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#000;border-width:0 5px 5px}.tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-bottom-color:#000;border-width:0 5px 5px}.tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-bottom-color:#000;border-width:0 5px 5px}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;white-space:normal;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);background-clip:padding-box}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover .arrow,.popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover .arrow{border-width:11px}.popover .arrow:after{border-width:10px;content:""}.popover.top .arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);border-bottom-width:0}.popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0;content:" "}.popover.right .arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,0.25);border-left-width:0}.popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0;content:" "}.popover.bottom .arrow{top:-11px;left:50%;margin-left:-11px;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);border-top-width:0}.popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0;content:" "}.popover.left .arrow{top:50%;right:-11px;margin-top:-11px;border-left-color:#999;border-left-color:rgba(0,0,0,0.25);border-right-width:0}.popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0;content:" "}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;height:auto;max-width:100%;line-height:1}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6);opacity:.5;filter:alpha(opacity=50)}.carousel-control.left{background-image:-webkit-gradient(linear,0 top,100% top,from(rgba(0,0,0,0.5)),to(rgba(0,0,0,0.0001)));background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,0.5) 0),color-stop(rgba(0,0,0,0.0001) 100%));background-image:-moz-linear-gradient(left,rgba(0,0,0,0.5) 0,rgba(0,0,0,0.0001) 100%);background-image:linear-gradient(to right,rgba(0,0,0,0.5) 0,rgba(0,0,0,0.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000',endColorstr='#00000000',GradientType=1)}.carousel-control.right{right:0;left:auto;background-image:-webkit-gradient(linear,0 top,100% top,from(rgba(0,0,0,0.0001)),to(rgba(0,0,0,0.5)));background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,0.0001) 0),color-stop(rgba(0,0,0,0.5) 100%));background-image:-moz-linear-gradient(left,rgba(0,0,0,0.0001) 0,rgba(0,0,0,0.5) 100%);background-image:linear-gradient(to right,rgba(0,0,0,0.0001) 0,rgba(0,0,0,0.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000',endColorstr='#80000000',GradientType=1)}.carousel-control:hover,.carousel-control:focus{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-control .icon-prev,.carousel-control .icon-next,.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right{position:absolute;top:50%;left:50%;z-index:5;display:inline-block}.carousel-control .icon-prev,.carousel-control .icon-next{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;border:1px solid #fff;border-radius:10px}.carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .icon-prev,.carousel-control .icon-next{width:30px;height:30px;margin-top:-15px;margin-left:-15px;font-size:30px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:before,.clearfix:after{display:table;content:" "}.clearfix:after{clear:both}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.affix{position:fixed}@-ms-viewport{width:device-width}@media screen and (max-width:400px){@-ms-viewport{width:320px}}.hidden{display:none!important;visibility:hidden!important}.visible-xs{display:none!important}tr.visible-xs{display:none!important}th.visible-xs,td.visible-xs{display:none!important}@media(max-width:767px){.visible-xs{display:block!important}tr.visible-xs{display:table-row!important}th.visible-xs,td.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-xs.visible-sm{display:block!important}tr.visible-xs.visible-sm{display:table-row!important}th.visible-xs.visible-sm,td.visible-xs.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-xs.visible-md{display:block!important}tr.visible-xs.visible-md{display:table-row!important}th.visible-xs.visible-md,td.visible-xs.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-xs.visible-lg{display:block!important}tr.visible-xs.visible-lg{display:table-row!important}th.visible-xs.visible-lg,td.visible-xs.visible-lg{display:table-cell!important}}.visible-sm{display:none!important}tr.visible-sm{display:none!important}th.visible-sm,td.visible-sm{display:none!important}@media(max-width:767px){.visible-sm.visible-xs{display:block!important}tr.visible-sm.visible-xs{display:table-row!important}th.visible-sm.visible-xs,td.visible-sm.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-sm{display:block!important}tr.visible-sm{display:table-row!important}th.visible-sm,td.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-sm.visible-md{display:block!important}tr.visible-sm.visible-md{display:table-row!important}th.visible-sm.visible-md,td.visible-sm.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-sm.visible-lg{display:block!important}tr.visible-sm.visible-lg{display:table-row!important}th.visible-sm.visible-lg,td.visible-sm.visible-lg{display:table-cell!important}}.visible-md{display:none!important}tr.visible-md{display:none!important}th.visible-md,td.visible-md{display:none!important}@media(max-width:767px){.visible-md.visible-xs{display:block!important}tr.visible-md.visible-xs{display:table-row!important}th.visible-md.visible-xs,td.visible-md.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-md.visible-sm{display:block!important}tr.visible-md.visible-sm{display:table-row!important}th.visible-md.visible-sm,td.visible-md.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-md{display:block!important}tr.visible-md{display:table-row!important}th.visible-md,td.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-md.visible-lg{display:block!important}tr.visible-md.visible-lg{display:table-row!important}th.visible-md.visible-lg,td.visible-md.visible-lg{display:table-cell!important}}.visible-lg{display:none!important}tr.visible-lg{display:none!important}th.visible-lg,td.visible-lg{display:none!important}@media(max-width:767px){.visible-lg.visible-xs{display:block!important}tr.visible-lg.visible-xs{display:table-row!important}th.visible-lg.visible-xs,td.visible-lg.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-lg.visible-sm{display:block!important}tr.visible-lg.visible-sm{display:table-row!important}th.visible-lg.visible-sm,td.visible-lg.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-lg.visible-md{display:block!important}tr.visible-lg.visible-md{display:table-row!important}th.visible-lg.visible-md,td.visible-lg.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-lg{display:block!important}tr.visible-lg{display:table-row!important}th.visible-lg,td.visible-lg{display:table-cell!important}}.hidden-xs{display:block!important}tr.hidden-xs{display:table-row!important}th.hidden-xs,td.hidden-xs{display:table-cell!important}@media(max-width:767px){.hidden-xs{display:none!important}tr.hidden-xs{display:none!important}th.hidden-xs,td.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-xs.hidden-sm{display:none!important}tr.hidden-xs.hidden-sm{display:none!important}th.hidden-xs.hidden-sm,td.hidden-xs.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-xs.hidden-md{display:none!important}tr.hidden-xs.hidden-md{display:none!important}th.hidden-xs.hidden-md,td.hidden-xs.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-xs.hidden-lg{display:none!important}tr.hidden-xs.hidden-lg{display:none!important}th.hidden-xs.hidden-lg,td.hidden-xs.hidden-lg{display:none!important}}.hidden-sm{display:block!important}tr.hidden-sm{display:table-row!important}th.hidden-sm,td.hidden-sm{display:table-cell!important}@media(max-width:767px){.hidden-sm.hidden-xs{display:none!important}tr.hidden-sm.hidden-xs{display:none!important}th.hidden-sm.hidden-xs,td.hidden-sm.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}tr.hidden-sm{display:none!important}th.hidden-sm,td.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-sm.hidden-md{display:none!important}tr.hidden-sm.hidden-md{display:none!important}th.hidden-sm.hidden-md,td.hidden-sm.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-sm.hidden-lg{display:none!important}tr.hidden-sm.hidden-lg{display:none!important}th.hidden-sm.hidden-lg,td.hidden-sm.hidden-lg{display:none!important}}.hidden-md{display:block!important}tr.hidden-md{display:table-row!important}th.hidden-md,td.hidden-md{display:table-cell!important}@media(max-width:767px){.hidden-md.hidden-xs{display:none!important}tr.hidden-md.hidden-xs{display:none!important}th.hidden-md.hidden-xs,td.hidden-md.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-md.hidden-sm{display:none!important}tr.hidden-md.hidden-sm{display:none!important}th.hidden-md.hidden-sm,td.hidden-md.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}tr.hidden-md{display:none!important}th.hidden-md,td.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-md.hidden-lg{display:none!important}tr.hidden-md.hidden-lg{display:none!important}th.hidden-md.hidden-lg,td.hidden-md.hidden-lg{display:none!important}}.hidden-lg{display:block!important}tr.hidden-lg{display:table-row!important}th.hidden-lg,td.hidden-lg{display:table-cell!important}@media(max-width:767px){.hidden-lg.hidden-xs{display:none!important}tr.hidden-lg.hidden-xs{display:none!important}th.hidden-lg.hidden-xs,td.hidden-lg.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-lg.hidden-sm{display:none!important}tr.hidden-lg.hidden-sm{display:none!important}th.hidden-lg.hidden-sm,td.hidden-lg.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-lg.hidden-md{display:none!important}tr.hidden-lg.hidden-md{display:none!important}th.hidden-lg.hidden-md,td.hidden-lg.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-lg{display:none!important}tr.hidden-lg{display:none!important}th.hidden-lg,td.hidden-lg{display:none!important}}.visible-print{display:none!important}tr.visible-print{display:none!important}th.visible-print,td.visible-print{display:none!important}@media print{.visible-print{display:block!important}tr.visible-print{display:table-row!important}th.visible-print,td.visible-print{display:table-cell!important}.hidden-print{display:none!important}tr.hidden-print{display:none!important}th.hidden-print,td.hidden-print{display:none!important}} \ No newline at end of file diff --git a/public/libs/bootstrap-v3.0.0/fonts/glyphicons-halflings-regular.eot b/public/libs/bootstrap-v3.0.0/fonts/glyphicons-halflings-regular.eot deleted file mode 100644 index 87eaa434..00000000 Binary files a/public/libs/bootstrap-v3.0.0/fonts/glyphicons-halflings-regular.eot and /dev/null differ diff --git a/public/libs/bootstrap-v3.0.0/fonts/glyphicons-halflings-regular.svg b/public/libs/bootstrap-v3.0.0/fonts/glyphicons-halflings-regular.svg deleted file mode 100644 index 5fee0685..00000000 --- a/public/libs/bootstrap-v3.0.0/fonts/glyphicons-halflings-regular.svg +++ /dev/null @@ -1,228 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/public/libs/bootstrap-v3.0.0/fonts/glyphicons-halflings-regular.ttf b/public/libs/bootstrap-v3.0.0/fonts/glyphicons-halflings-regular.ttf deleted file mode 100644 index be784dc1..00000000 Binary files a/public/libs/bootstrap-v3.0.0/fonts/glyphicons-halflings-regular.ttf and /dev/null differ diff --git a/public/libs/bootstrap-v3.0.0/fonts/glyphicons-halflings-regular.woff b/public/libs/bootstrap-v3.0.0/fonts/glyphicons-halflings-regular.woff deleted file mode 100644 index 2cc3e485..00000000 Binary files a/public/libs/bootstrap-v3.0.0/fonts/glyphicons-halflings-regular.woff and /dev/null differ diff --git a/public/libs/bootstrap-v3.0.0/js/bootstrap.js b/public/libs/bootstrap-v3.0.0/js/bootstrap.js deleted file mode 100644 index 2c642571..00000000 --- a/public/libs/bootstrap-v3.0.0/js/bootstrap.js +++ /dev/null @@ -1,1999 +0,0 @@ -/** -* bootstrap.js v3.0.0 by @fat and @mdo -* Copyright 2013 Twitter Inc. -* http://www.apache.org/licenses/LICENSE-2.0 -*/ -if (!jQuery) { throw new Error("Bootstrap requires jQuery") } - -/* ======================================================================== - * Bootstrap: transition.js v3.0.0 - * http://twbs.github.com/bootstrap/javascript.html#transitions - * ======================================================================== - * Copyright 2013 Twitter, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ======================================================================== */ - - -+function ($) { "use strict"; - - // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/) - // ============================================================ - - function transitionEnd() { - var el = document.createElement('bootstrap') - - var transEndEventNames = { - 'WebkitTransition' : 'webkitTransitionEnd' - , 'MozTransition' : 'transitionend' - , 'OTransition' : 'oTransitionEnd otransitionend' - , 'transition' : 'transitionend' - } - - for (var name in transEndEventNames) { - if (el.style[name] !== undefined) { - return { end: transEndEventNames[name] } - } - } - } - - // http://blog.alexmaccaw.com/css-transitions - $.fn.emulateTransitionEnd = function (duration) { - var called = false, $el = this - $(this).one($.support.transition.end, function () { called = true }) - var callback = function () { if (!called) $($el).trigger($.support.transition.end) } - setTimeout(callback, duration) - return this - } - - $(function () { - $.support.transition = transitionEnd() - }) - -}(window.jQuery); - -/* ======================================================================== - * Bootstrap: alert.js v3.0.0 - * http://twbs.github.com/bootstrap/javascript.html#alerts - * ======================================================================== - * Copyright 2013 Twitter, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ======================================================================== */ - - -+function ($) { "use strict"; - - // ALERT CLASS DEFINITION - // ====================== - - var dismiss = '[data-dismiss="alert"]' - var Alert = function (el) { - $(el).on('click', dismiss, this.close) - } - - Alert.prototype.close = function (e) { - var $this = $(this) - var selector = $this.attr('data-target') - - if (!selector) { - selector = $this.attr('href') - selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 - } - - var $parent = $(selector) - - if (e) e.preventDefault() - - if (!$parent.length) { - $parent = $this.hasClass('alert') ? $this : $this.parent() - } - - $parent.trigger(e = $.Event('close.bs.alert')) - - if (e.isDefaultPrevented()) return - - $parent.removeClass('in') - - function removeElement() { - $parent.trigger('closed.bs.alert').remove() - } - - $.support.transition && $parent.hasClass('fade') ? - $parent - .one($.support.transition.end, removeElement) - .emulateTransitionEnd(150) : - removeElement() - } - - - // ALERT PLUGIN DEFINITION - // ======================= - - var old = $.fn.alert - - $.fn.alert = function (option) { - return this.each(function () { - var $this = $(this) - var data = $this.data('bs.alert') - - if (!data) $this.data('bs.alert', (data = new Alert(this))) - if (typeof option == 'string') data[option].call($this) - }) - } - - $.fn.alert.Constructor = Alert - - - // ALERT NO CONFLICT - // ================= - - $.fn.alert.noConflict = function () { - $.fn.alert = old - return this - } - - - // ALERT DATA-API - // ============== - - $(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close) - -}(window.jQuery); - -/* ======================================================================== - * Bootstrap: button.js v3.0.0 - * http://twbs.github.com/bootstrap/javascript.html#buttons - * ======================================================================== - * Copyright 2013 Twitter, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ======================================================================== */ - - -+function ($) { "use strict"; - - // BUTTON PUBLIC CLASS DEFINITION - // ============================== - - var Button = function (element, options) { - this.$element = $(element) - this.options = $.extend({}, Button.DEFAULTS, options) - } - - Button.DEFAULTS = { - loadingText: 'loading...' - } - - Button.prototype.setState = function (state) { - var d = 'disabled' - var $el = this.$element - var val = $el.is('input') ? 'val' : 'html' - var data = $el.data() - - state = state + 'Text' - - if (!data.resetText) $el.data('resetText', $el[val]()) - - $el[val](data[state] || this.options[state]) - - // push to event loop to allow forms to submit - setTimeout(function () { - state == 'loadingText' ? - $el.addClass(d).attr(d, d) : - $el.removeClass(d).removeAttr(d); - }, 0) - } - - Button.prototype.toggle = function () { - var $parent = this.$element.closest('[data-toggle="buttons"]') - - if ($parent.length) { - var $input = this.$element.find('input') - .prop('checked', !this.$element.hasClass('active')) - .trigger('change') - if ($input.prop('type') === 'radio') $parent.find('.active').removeClass('active') - } - - this.$element.toggleClass('active') - } - - - // BUTTON PLUGIN DEFINITION - // ======================== - - var old = $.fn.button - - $.fn.button = function (option) { - return this.each(function () { - var $this = $(this) - var data = $this.data('bs.button') - var options = typeof option == 'object' && option - - if (!data) $this.data('bs.button', (data = new Button(this, options))) - - if (option == 'toggle') data.toggle() - else if (option) data.setState(option) - }) - } - - $.fn.button.Constructor = Button - - - // BUTTON NO CONFLICT - // ================== - - $.fn.button.noConflict = function () { - $.fn.button = old - return this - } - - - // BUTTON DATA-API - // =============== - - $(document).on('click.bs.button.data-api', '[data-toggle^=button]', function (e) { - var $btn = $(e.target) - if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn') - $btn.button('toggle') - e.preventDefault() - }) - -}(window.jQuery); - -/* ======================================================================== - * Bootstrap: carousel.js v3.0.0 - * http://twbs.github.com/bootstrap/javascript.html#carousel - * ======================================================================== - * Copyright 2012 Twitter, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ======================================================================== */ - - -+function ($) { "use strict"; - - // CAROUSEL CLASS DEFINITION - // ========================= - - var Carousel = function (element, options) { - this.$element = $(element) - this.$indicators = this.$element.find('.carousel-indicators') - this.options = options - this.paused = - this.sliding = - this.interval = - this.$active = - this.$items = null - - this.options.pause == 'hover' && this.$element - .on('mouseenter', $.proxy(this.pause, this)) - .on('mouseleave', $.proxy(this.cycle, this)) - } - - Carousel.DEFAULTS = { - interval: 5000 - , pause: 'hover' - , wrap: true - } - - Carousel.prototype.cycle = function (e) { - e || (this.paused = false) - - this.interval && clearInterval(this.interval) - - this.options.interval - && !this.paused - && (this.interval = setInterval($.proxy(this.next, this), this.options.interval)) - - return this - } - - Carousel.prototype.getActiveIndex = function () { - this.$active = this.$element.find('.item.active') - this.$items = this.$active.parent().children() - - return this.$items.index(this.$active) - } - - Carousel.prototype.to = function (pos) { - var that = this - var activeIndex = this.getActiveIndex() - - if (pos > (this.$items.length - 1) || pos < 0) return - - if (this.sliding) return this.$element.one('slid', function () { that.to(pos) }) - if (activeIndex == pos) return this.pause().cycle() - - return this.slide(pos > activeIndex ? 'next' : 'prev', $(this.$items[pos])) - } - - Carousel.prototype.pause = function (e) { - e || (this.paused = true) - - if (this.$element.find('.next, .prev').length && $.support.transition.end) { - this.$element.trigger($.support.transition.end) - this.cycle(true) - } - - this.interval = clearInterval(this.interval) - - return this - } - - Carousel.prototype.next = function () { - if (this.sliding) return - return this.slide('next') - } - - Carousel.prototype.prev = function () { - if (this.sliding) return - return this.slide('prev') - } - - Carousel.prototype.slide = function (type, next) { - var $active = this.$element.find('.item.active') - var $next = next || $active[type]() - var isCycling = this.interval - var direction = type == 'next' ? 'left' : 'right' - var fallback = type == 'next' ? 'first' : 'last' - var that = this - - if (!$next.length) { - if (!this.options.wrap) return - $next = this.$element.find('.item')[fallback]() - } - - this.sliding = true - - isCycling && this.pause() - - var e = $.Event('slide.bs.carousel', { relatedTarget: $next[0], direction: direction }) - - if ($next.hasClass('active')) return - - if (this.$indicators.length) { - this.$indicators.find('.active').removeClass('active') - this.$element.one('slid', function () { - var $nextIndicator = $(that.$indicators.children()[that.getActiveIndex()]) - $nextIndicator && $nextIndicator.addClass('active') - }) - } - - if ($.support.transition && this.$element.hasClass('slide')) { - this.$element.trigger(e) - if (e.isDefaultPrevented()) return - $next.addClass(type) - $next[0].offsetWidth // force reflow - $active.addClass(direction) - $next.addClass(direction) - $active - .one($.support.transition.end, function () { - $next.removeClass([type, direction].join(' ')).addClass('active') - $active.removeClass(['active', direction].join(' ')) - that.sliding = false - setTimeout(function () { that.$element.trigger('slid') }, 0) - }) - .emulateTransitionEnd(600) - } else { - this.$element.trigger(e) - if (e.isDefaultPrevented()) return - $active.removeClass('active') - $next.addClass('active') - this.sliding = false - this.$element.trigger('slid') - } - - isCycling && this.cycle() - - return this - } - - - // CAROUSEL PLUGIN DEFINITION - // ========================== - - var old = $.fn.carousel - - $.fn.carousel = function (option) { - return this.each(function () { - var $this = $(this) - var data = $this.data('bs.carousel') - var options = $.extend({}, Carousel.DEFAULTS, $this.data(), typeof option == 'object' && option) - var action = typeof option == 'string' ? option : options.slide - - if (!data) $this.data('bs.carousel', (data = new Carousel(this, options))) - if (typeof option == 'number') data.to(option) - else if (action) data[action]() - else if (options.interval) data.pause().cycle() - }) - } - - $.fn.carousel.Constructor = Carousel - - - // CAROUSEL NO CONFLICT - // ==================== - - $.fn.carousel.noConflict = function () { - $.fn.carousel = old - return this - } - - - // CAROUSEL DATA-API - // ================= - - $(document).on('click.bs.carousel.data-api', '[data-slide], [data-slide-to]', function (e) { - var $this = $(this), href - var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7 - var options = $.extend({}, $target.data(), $this.data()) - var slideIndex = $this.attr('data-slide-to') - if (slideIndex) options.interval = false - - $target.carousel(options) - - if (slideIndex = $this.attr('data-slide-to')) { - $target.data('bs.carousel').to(slideIndex) - } - - e.preventDefault() - }) - - $(window).on('load', function () { - $('[data-ride="carousel"]').each(function () { - var $carousel = $(this) - $carousel.carousel($carousel.data()) - }) - }) - -}(window.jQuery); - -/* ======================================================================== - * Bootstrap: collapse.js v3.0.0 - * http://twbs.github.com/bootstrap/javascript.html#collapse - * ======================================================================== - * Copyright 2012 Twitter, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ======================================================================== */ - - -+function ($) { "use strict"; - - // COLLAPSE PUBLIC CLASS DEFINITION - // ================================ - - var Collapse = function (element, options) { - this.$element = $(element) - this.options = $.extend({}, Collapse.DEFAULTS, options) - this.transitioning = null - - if (this.options.parent) this.$parent = $(this.options.parent) - if (this.options.toggle) this.toggle() - } - - Collapse.DEFAULTS = { - toggle: true - } - - Collapse.prototype.dimension = function () { - var hasWidth = this.$element.hasClass('width') - return hasWidth ? 'width' : 'height' - } - - Collapse.prototype.show = function () { - if (this.transitioning || this.$element.hasClass('in')) return - - var startEvent = $.Event('show.bs.collapse') - this.$element.trigger(startEvent) - if (startEvent.isDefaultPrevented()) return - - var actives = this.$parent && this.$parent.find('> .panel > .in') - - if (actives && actives.length) { - var hasData = actives.data('bs.collapse') - if (hasData && hasData.transitioning) return - actives.collapse('hide') - hasData || actives.data('bs.collapse', null) - } - - var dimension = this.dimension() - - this.$element - .removeClass('collapse') - .addClass('collapsing') - [dimension](0) - - this.transitioning = 1 - - var complete = function () { - this.$element - .removeClass('collapsing') - .addClass('in') - [dimension]('auto') - this.transitioning = 0 - this.$element.trigger('shown.bs.collapse') - } - - if (!$.support.transition) return complete.call(this) - - var scrollSize = $.camelCase(['scroll', dimension].join('-')) - - this.$element - .one($.support.transition.end, $.proxy(complete, this)) - .emulateTransitionEnd(350) - [dimension](this.$element[0][scrollSize]) - } - - Collapse.prototype.hide = function () { - if (this.transitioning || !this.$element.hasClass('in')) return - - var startEvent = $.Event('hide.bs.collapse') - this.$element.trigger(startEvent) - if (startEvent.isDefaultPrevented()) return - - var dimension = this.dimension() - - this.$element - [dimension](this.$element[dimension]()) - [0].offsetHeight - - this.$element - .addClass('collapsing') - .removeClass('collapse') - .removeClass('in') - - this.transitioning = 1 - - var complete = function () { - this.transitioning = 0 - this.$element - .trigger('hidden.bs.collapse') - .removeClass('collapsing') - .addClass('collapse') - } - - if (!$.support.transition) return complete.call(this) - - this.$element - [dimension](0) - .one($.support.transition.end, $.proxy(complete, this)) - .emulateTransitionEnd(350) - } - - Collapse.prototype.toggle = function () { - this[this.$element.hasClass('in') ? 'hide' : 'show']() - } - - - // COLLAPSE PLUGIN DEFINITION - // ========================== - - var old = $.fn.collapse - - $.fn.collapse = function (option) { - return this.each(function () { - var $this = $(this) - var data = $this.data('bs.collapse') - var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option) - - if (!data) $this.data('bs.collapse', (data = new Collapse(this, options))) - if (typeof option == 'string') data[option]() - }) - } - - $.fn.collapse.Constructor = Collapse - - - // COLLAPSE NO CONFLICT - // ==================== - - $.fn.collapse.noConflict = function () { - $.fn.collapse = old - return this - } - - - // COLLAPSE DATA-API - // ================= - - $(document).on('click.bs.collapse.data-api', '[data-toggle=collapse]', function (e) { - var $this = $(this), href - var target = $this.attr('data-target') - || e.preventDefault() - || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7 - var $target = $(target) - var data = $target.data('bs.collapse') - var option = data ? 'toggle' : $this.data() - var parent = $this.attr('data-parent') - var $parent = parent && $(parent) - - if (!data || !data.transitioning) { - if ($parent) $parent.find('[data-toggle=collapse][data-parent="' + parent + '"]').not($this).addClass('collapsed') - $this[$target.hasClass('in') ? 'addClass' : 'removeClass']('collapsed') - } - - $target.collapse(option) - }) - -}(window.jQuery); - -/* ======================================================================== - * Bootstrap: dropdown.js v3.0.0 - * http://twbs.github.com/bootstrap/javascript.html#dropdowns - * ======================================================================== - * Copyright 2012 Twitter, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ======================================================================== */ - - -+function ($) { "use strict"; - - // DROPDOWN CLASS DEFINITION - // ========================= - - var backdrop = '.dropdown-backdrop' - var toggle = '[data-toggle=dropdown]' - var Dropdown = function (element) { - var $el = $(element).on('click.bs.dropdown', this.toggle) - } - - Dropdown.prototype.toggle = function (e) { - var $this = $(this) - - if ($this.is('.disabled, :disabled')) return - - var $parent = getParent($this) - var isActive = $parent.hasClass('open') - - clearMenus() - - if (!isActive) { - if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) { - // if mobile we we use a backdrop because click events don't delegate - $('