<commit_before><?php

namespace Model;

use App as AppContainer;

/**
 * INVENTARIO FIJA
 *
 * Aplicacion de conciliacion de inventario para la logistica fija.
 *
 * @category  CodeIgniter
 * @package   InventarioFija
 * @author    <NAME> <<EMAIL>>
 * @copyright 2015 - DCR
 * @license   MIT License
 * @link      localhost:1520
 *
 */
if ( ! defined('BASEPATH')) exit('No direct script access allowed');

/**
 * Extension de clase CI_Model para usar con administracion de modelo
 *
 * @category CodeIgniter
 * @package  InventarioFija
 * @author   <NAME> <<EMAIL>>
 * @license  MIT License
 * @link     localhost:1520
 *
 */
trait Model_has_attributes {

	/**
	 * Campos que conforman la llave (id) del modelo
	 *
	 * @var array
	 */
	protected $campo_id = [];

	/**
	 * Arreglo de registros recuperados de la BD
	 *
	 * @var array
	 */
	protected $values = [];

	protected $list_fields = [];

	protected $fechas = [];

	// --------------------------------------------------------------------

	/**
	 * __get
	 *
	 * Permite acceder a los campos del modelo de forma directa
	 *
	 * @param  string $campo Nombre del campo
	 * @return mixed         Valor del campo
	 */
	public function __get($campo)
	{
		$method = 'get_'.$campo;

		if (method_exists($this, $method))
		{
			return $this->$method($campo);
		}

		if (array_key_exists($campo, $this->values))
		{
			if ($this->fields[$campo]->get_tipo() === Orm_field::TIPO_HAS_ONE)
			{
				return $this->get_relation($campo);
			}

			if ($this->fields[$campo]->get_tipo() === Orm_field::TIPO_HAS_MANY)
			{
				return $this->get_relation($campo);
			}

			if (count($this->fields[$campo]->get_choices()) > 0)
			{
				return array_get($this->fields[$campo]->get_choices(), $this->get_value($campo));
			}

			return $this->get_value($campo);
		}

		if (is_null(app($campo)) && ! is_null(get_instance()->{$campo}))
		{
			AppContainer::add_component($campo, get_instance()->{$campo});
		}

		return app($campo);
	}

	// --------------------------------------------------------------------<commit_msg>Corrige despliegue has many<commit_after><?php

namespace Model;

use App as AppContainer;

/**
 * INVENTARIO FIJA
 *
 * Aplicacion de conciliacion de inventario para la logistica fija.
 *
 * @category  CodeIgniter
 * @package   InventarioFija
 * @author    <NAME> <<EMAIL>>
 * @copyright 2015 - DCR
 * @license   MIT License
 * @link      localhost:1520
 *
 */
if ( ! defined('BASEPATH')) exit('No direct script access allowed');

/**
 * Extension de clase CI_Model para usar con administracion de modelo
 *
 * @category CodeIgniter
 * @package  InventarioFija
 * @author   <NAME> <<EMAIL>>
 * @license  MIT License
 * @link     localhost:1520
 *
 */
trait Model_has_attributes {

	/**
	 * Campos que conforman la llave (id) del modelo
	 *
	 * @var array
	 */
	protected $campo_id = [];

	/**
	 * Arreglo de registros recuperados de la BD
	 *
	 * @var array
	 */
	protected $values = [];

	protected $list_fields = [];

	protected $fechas = [];

	// --------------------------------------------------------------------

	/**
	 * __get
	 *
	 * Permite acceder a los campos del modelo de forma directa
	 *
	 * @param  string $campo Nombre del campo
	 * @return mixed         Valor del campo
	 */
	public function __get($campo)
	{
		$method = 'get_'.$campo;

		if (method_exists($this, $method))
		{
			return $this->$method($campo);
		}

		if (array_key_exists($campo, $this->values))
		{
			if ($this->fields[$campo]->get_tipo() === Orm_field::TIPO_HAS_ONE)
			{
				return $this->get_relation($campo);
			}

			if ($this->fields[$campo]->get_tipo() === Orm_field::TIPO_HAS_MANY)
			{
				return ul($this->get_relation($campo)->all());
			}

			if (count($this->fields[$campo]->get_choices()) > 0)
			{
				return array_get($this->fields[$campo]->get_choices(), $this->get_value($campo));
			}

			return $this->get_value($campo);
		}

		if (is_null(app($campo)) && ! is_null(get_instance()->{$campo}))
		{
			AppContainer::add_component($campo, get_instance()->{$campo});
		}

		return app($campo);
	}

	// --------------------------------------------------------------------
{'fraction_non_alphanumeric': 0.21710685728131815, 'fraction_numerical': 0.006299975769323964, 'mean_word_length': 2.561691113028473, 'pattern_counts': {'":': 0, '<': 17, '<?xml version=': 0, '>': 50, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2136425', 'n_tokens_mistral': 1536, 'n_tokens_neox': 1367, 'n_words': 305}