<?php
defined('BASEPATH') or exit('No direct script access allowed');

/*
|--------------------------------------------------------------------------
| Display Debug backtrace
|--------------------------------------------------------------------------
|
| If set to TRUE, a backtrace will be displayed along with php errors. If
| error_reporting is disabled, the backtrace will not display, regardless
| of this setting
|
 */
defined('SHOW_DEBUG_BACKTRACE') or define('SHOW_DEBUG_BACKTRACE', true);

/*
|--------------------------------------------------------------------------
| File and Directory Modes
|--------------------------------------------------------------------------
|
| These prefs are used when checking and setting modes when working
| with the file system.  The defaults are fine on servers with proper
| security, but you may wish (or even need) to change the values in
| certain environments (Apache running a separate process for each
| user, PHP under CGI with Apache suEXEC, etc.).  Octal values should
| always be used to set the mode correctly.
|
 */
defined('FILE_READ_MODE') or define('FILE_READ_MODE', 0644);
defined('FILE_WRITE_MODE') or define('FILE_WRITE_MODE', 0666);
defined('DIR_READ_MODE') or define('DIR_READ_MODE', 0755);
defined('DIR_WRITE_MODE') or define('DIR_WRITE_MODE', 0755);

/*
|--------------------------------------------------------------------------
| File Stream Modes
|--------------------------------------------------------------------------
|
| These modes are used when working with fopen()/popen()
|
 */
defined('FOPEN_READ') or define('FOPEN_READ', 'rb');
defined('FOPEN_READ_WRITE') or define('FOPEN_READ_WRITE', 'r+b');
defined('FOPEN_WRITE_CREATE_DESTRUCTIVE') or define('FOPEN_WRITE_CREATE_DESTRUCTIVE', 'wb'); // truncates existing file data, use with care
defined('FOPEN_READ_WRITE_CREATE_DESTRUCTIVE') or define('FOPEN_READ_WRITE_CREATE_DESTRUCTIVE', 'w+b'); // truncates existing file data, use with care
defined('FOPEN_WRITE_CREATE') or define('FOPEN_WRITE_CREATE', 'ab');
defined('FOPEN_READ_WRITE_CREATE') or define('FOPEN_READ_WRITE_CREATE', 'a+b');
defined('FOPEN_WRITE_CREATE_STRICT') or define('FOPEN_WRITE_CREATE_STRICT', 'xb');
defined('FOPEN_READ_WRITE_CREATE_STRICT') or define('FOPEN_READ_WRITE_CREATE_STRICT', 'x+b');

/*
|--------------------------------------------------------------------------
| Exit Status Codes
|--------------------------------------------------------------------------
|
| Used to indicate the conditions under which the script is exit()ing.
| While there is no universal standard for error codes, there are some
| broad conventions.  Three such conventions are mentioned below, for
| those who wish to make use of them.  The CodeIgniter defaults were
| chosen for the least overlap with these conventions, while still
| leaving room for others to be defined in future versions and user
| applications.
|
| The three main conventions used for determining exit status codes
| are as follows:
|
|    Standard C/C++ Library (stdlibc):
|       http://www.gnu.org/software/libc/manual/html_node/Exit-Status.html
|       (This link also contains other GNU-specific conventions)
|    BSD sysexits.h:
|       http://www.gsp.com/cgi-bin/man.cgi?section=3&topic=sysexits
|    Bash scripting:
|       http://tldp.org/LDP/abs/html/exitcodes.html
|
 */
defined('EXIT_SUCCESS') or define('EXIT_SUCCESS', 0); // no errors
defined('EXIT_ERROR') or define('EXIT_ERROR', 1); // generic error
defined('EXIT_CONFIG') or define('EXIT_CONFIG', 3); // configuration error
defined('EXIT_UNKNOWN_FILE') or define('EXIT_UNKNOWN_FILE', 4); // file not found
defined('EXIT_UNKNOWN_CLASS') or define('EXIT_UNKNOWN_CLASS', 5); // unknown class
defined('EXIT_UNKNOWN_METHOD') or define('EXIT_UNKNOWN_METHOD', 6); // unknown class member
defined('EXIT_USER_INPUT') or define('EXIT_USER_INPUT', 7); // invalid user input
defined('EXIT_DATABASE') or define('EXIT_DATABASE', 8); // database error
defined('EXIT__AUTO_MIN') or define('EXIT__AUTO_MIN', 9); // lowest automatically-assigned error code
defined('EXIT__AUTO_MAX') or define('EXIT__AUTO_MAX', 125); // highest automatically-assigned error code

defined('MAIN_LICI_URL') or define('MAIN_LICI_URL', 'https://www.hacienda.gob.es/es-ES/GobiernoAbierto/Datos%20Abiertos/Paginas/licitaciones_plataforma_contratacion.aspx');

//Contiene la información relativa a las licitaciones publicadas por los órganos de contratación que tienen su perfil del contratante en la Plataforma de Contratación del Sector Público.
//El conjunto de entidades que tienen su perfil del contratante en esta Plataforma ha ido creciendo progresivamente
//por lo que el periodo que cubre estos datos no es homogéneo para todas ellas.
//Diariamente se publican las actualizaciones producidas durante el día anterior, por lo que una misma licitación puede aparecer tantas veces como modificaciones se hayan producido en los datos de dicha licitación.
defined('URL_DIARIA') or define('URL_DIARIA', "https://contrataciondelsectorpublico.gob.es/sindicacion/sindicacion_643/licitacionesPerfilesContratanteCompleto3.atom");
defined('URL_COMPLETO_FECHA') or define('URL_COMPLETO_FECHA', "http://contrataciondelsectorpublico.gob.es/sindicacion/sindicacion_643/licitacionesPerfilesContratanteCompleto3_");
//Contiene la información relativa a las licitaciones publicadas mediante mecanismos de agregación por entidades del Sector Público
//que no tienen su perfil del contratante dado de alta en la Plataforma de Contratación del Sector Público.
//Las entidades que publican mediante mecanismos de agregación ha ido variando a lo largo del tiempo,
// por lo que la información corresponderá al periodo en el que han utilizado este modo de publicación.
defined('URL_DIARIA_AGREGACION_EXCLU_CONTRATOS_MENORES') or define('URL_DIARIA_AGREGACION_EXCLU_CONTRATOS_MENORES', 'https://contrataciondelsectorpublico.gob.es/sindicacion/sindicacion_1044/PlataformasAgregadasSinMenores.atom');
defined('URL_DIARIA_AGREGACION_EXCLU_CONTRATOS_MENORES_FECHA') or define('URL_DIARIA_AGREGACION_EXCLU_CONTRATOS_MENORES_FECHA', "http://contrataciondelsectorpublico.gob.es/sindicacion/sindicacion_1044/PlataformasAgregadasSinMenores_");

//Contiene la información relativa a los contratos menores publicados por los órganos de contratación que tienen su perfil de contratante en la Plataforma de Contratación del Sector Público.
//Diariamente se publican las actualizaciones producidas durante el día anterior.
defined('URL_DIARIA_CONTRATOS_MENORES_PERFILES_CONTRATANES') or define('URL_DIARIA_CONTRATOS_MENORES_PERFILES_CONTRATANES', 'https://contrataciondelsectorpublico.gob.es/sindicacion/sindicacion_1143/contratosMenoresPerfilesContratantes.atom');
defined('URL_DIARIA_CONTRATOS_MENORES_PERFILES_CONTRATANES_FECHA') or define('URL_DIARIA_CONTRATOS_MENORES_PERFILES_CONTRATANES_FECHA', 'http://contrataciondelsectorpublico.gob.es/sindicacion/sindicacion_1143/contratosMenoresPerfilesContratantes_');

//Este conjunto de datos contiene una relación de los órganos de contratación que se alojan en la Plataforma de Contratación del Sector Público, tanto activos como inactivos.
//Por cada órgano de contratación, se proporcionan los datos más relevantes.
defined('PERFILES_CONTRATANTES') or define('PERFILES_CONTRATANTES', 'https://contrataciondelsectorpublico.gob.es/datosabiertos/OrganosContratacion.xlsx');
