Index: 0.3-modules/reconversion_monetaria/reconversion_monetaria.info
===================================================================
--- 0.3-modules/reconversion_monetaria/reconversion_monetaria.info	(revision 47d62bbbeb59f56adc26533d904997dd40d44653)
+++ 0.3-modules/reconversion_monetaria/reconversion_monetaria.info	(revision 47d62bbbeb59f56adc26533d904997dd40d44653)
@@ -0,0 +1,28 @@
+; Sistema Automatizado para la PlanificaciÃ³n EstratÃ©gico-Situacional en la AdministraciÃ³n PÃºblica Venezolana
+; @file ente_planificador_hierarchical.info
+; Drupal part Module to install ente planificador module
+; Copyright 2011 Sistema Automatizado para la PlanificaciÃ³n EstratÃ©gico-Situacional en la AdministraciÃ³n PÃºblica Venezolana (CENDITEL)
+;
+; This program 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.
+; 
+; This program 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 this program; if not, write to the Free Software
+; Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+;
+; @author Cenditel Merida - TSU. Miguel Narvaez
+; @date 2019-05-27 // (a&#241;o-mes-dia)
+; @version 0.3 // (0.1)
+
+name = ReconversiÃ³n Monetaria
+description = Modulo para reconversiones monetarias.
+dependencies[] = proyectos_operativos
+package = Planificador - core
+core = 6.x
Index: 0.3-modules/reconversion_monetaria/reconversion_monetaria.module
===================================================================
--- 0.3-modules/reconversion_monetaria/reconversion_monetaria.module	(revision 47d62bbbeb59f56adc26533d904997dd40d44653)
+++ 0.3-modules/reconversion_monetaria/reconversion_monetaria.module	(revision 47d62bbbeb59f56adc26533d904997dd40d44653)
@@ -0,0 +1,318 @@
+<?php
+  /**
+  * Modulo para la reconversiÃ³n Monetaria
+  * Sistema Automatizado para la PlanificaciÃ³n EstratÃ©gico-Situacional en la AdministraciÃ³n PÃºblica Venezolana
+  * @file reconversion_monetaria.module
+  * Drupal part Module to code ente planificador module
+  * Copyright 2011 Sistema Automatizado para la PlanificaciÃ³n EstratÃ©gico-Situacional en la AdministraciÃ³n PÃºblica Venezolana (CENDITEL)
+  *
+  * This program 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.
+  * 
+  * This program 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 this program; if not, write to the Free Software
+  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+  *
+  * @author Cenditel Merida - Tsu. Miguel Narvaez
+  * @date 2019-05-27 // (a&#241;o-mes-dia)
+  * @version 0.1
+  *
+  */
+
+/*
+ * hook_form_alter
+ */
+function reconversion_monetaria_form_alter(&$form, $form_state, $form_id){
+
+	if ($form_id == 'proyectos_operativos_admin_settings') {
+
+	 $current_year = date("Y");
+	  for($i = $current_year - 10; $i <= $current_year + 10; $i++) {
+	    $years[$i] = $i;
+	  }
+
+	  $form['format_number']['format_Reconversi_n'] = array(
+	    '#type' => 'fieldset',
+	    '#title' => t('ReconversiÃ³n Monetaria'),
+	    '#collapsible' => TRUE,
+    	'#weight' => 1,
+	    '#collapsed' => FALSE,
+	  );
+	  $form['format_number']['format_Reconversi_n']['proyectos_operativos_anho_decimales_reconversion'] = array(
+	    '#title' => t('ReconversiÃ³n monetaria 2018 (montos/100.000) segÃºn gaceta oficial NÂ° 41.446 y decreto NÂ°3.548 aplicada para aÃ±os'),
+	    '#type' => 'select',
+	    '#default_value' => variable_get('proyectos_operativos_anho_decimales_reconversion', array()),
+	    '#options' => $years,
+    	'#weight' => 1,
+	    '#multiple' => TRUE,
+	  );
+    $form['format_number']['format_Reconversi_n']['proyectos_operativos_number_decimals2'] = array(
+    '#type' => 'textfield',
+    '#title' => t('Cantidad de Decimales.'),
+    '#required' => TRUE,
+    '#weight' => 3,
+    '#default_value' => variable_get('proyectos_operativos_number_decimals2', 0),
+    );
+    $form['format_number']['format_Reconversi_n']['proyectos_operativos_number_dec_point2'] = array(
+      '#type' => 'textfield',
+      '#title' => t('Separador Decimal.'),
+      '#required' => TRUE,
+      '#weight' => 4,
+      '#default_value' => variable_get('proyectos_operativos_number_dec_point2', ','),
+    );
+    $form['format_number']['format_Reconversi_n']['proyectos_operativos_number_thousands_sep2'] = array(
+      '#type' => 'textfield',
+      '#title' => t('Separador de Miles.'),
+      '#required' => TRUE,
+      '#weight' => 5,
+      '#default_value' => variable_get('proyectos_operativos_number_thousands_sep2', '.'),
+    );
+
+    //para proxima reconversion 
+	  // $form['format_number']['format_Reconversi_n']['nueva_reconver1'] = array(
+	  //   '#type' => 'textfield',
+	  //   '#title' => t('ReconversiÃ³n 2 ingrese valor a dividir o dejar en 1. ( (MONTO Ã VALOR) / TU VALOR INGRESADO)'),
+	  //   '#required' => FALSE,
+	  //   '#weight' => 5,
+	  //   '#default_value' => variable_get('nueva_reconver1', 1),
+	  // );
+
+
+	  // $form['format_number']['format_Reconversi_n']['proyectos_operativos_anho_decimales_reconversion2'] = array(
+	  //   '#title' => t('ReconversiÃ³n 2 aplicada para aÃ±os'),
+	  //   '#type' => 'select',
+	  //   '#default_value' => variable_get('proyectos_operativos_anho_decimales_reconversion2', array()),
+	  //   '#options' => $years,
+   //  	'#weight' => 6,
+	  //   '#multiple' => TRUE,
+	  // );
+
+	}
+}
+
+/**
+ * Implementation of hook_theme().
+ */
+function reconversion_monetaria_theme() {
+  return array(
+    'reconversion_monetaria' => array('arguments' => array('element' => NULL)),
+    'reconversion_monetaria_formatter_reconver' => array('arguments' => array('element' => NULL), 'function' => 'theme_reconversion_monetaria_formatter_generic'),
+    'reconversion_monetaria_formatter_reconver2' => array('arguments' => array('element' => NULL), 'function' => 'theme_reconversion_monetaria_formatter_generic'),
+    'reconversion_monetaria_formatter_reconver3' => array('arguments' => array('element' => NULL), 'function' => 'theme_reconversion_monetaria_formatter_generic'),
+    'reconversion_monetaria_formatter_reconver4' => array('arguments' => array('element' => NULL), 'function' => 'theme_reconversion_monetaria_formatter_generic'),
+  );
+}
+
+/**
+ * Implementation of hook_field_formatter_info().
+ */
+function reconversion_monetaria_field_formatter_info() {
+  return array(
+    'reconver'    => array('label' => 'reconversiÃ³n config p/op','multiple values' => CONTENT_HANDLE_CORE, 'field types' => array('number_integer','number_decimal', 'number_float','cck_plan_fields_field')),
+    'reconver2'    => array('label' => 'reconversiÃ³n config 9999','multiple values' => CONTENT_HANDLE_CORE, 'field types' => array('number_integer','number_decimal', 'number_float','cck_plan_fields_field')),
+    'reconver3'    => array('label' => 'reconversiÃ³n config 9.999','multiple values' => CONTENT_HANDLE_CORE, 'field types' => array('number_integer','number_decimal', 'number_float','cck_plan_fields_field')),
+    'reconver4'    => array('label' => 'reconversiÃ³n config 9.999,99','multiple values' => CONTENT_HANDLE_CORE, 'field types' => array('number_integer','number_decimal', 'number_float','cck_plan_fields_field')),
+  );
+}
+
+/**
+ * Proxy theme function for reconversion_monetaria field formatters.
+ */
+function theme_reconversion_monetaria_formatter_generic($element, $form) {
+
+  $value = $element['#item']['value'];
+
+  if (empty($value) && $value !== '0') {
+    return '';
+  }
+
+  switch ($element['#formatter']) {
+    //////////////////// ReconversiÃ³n config p/op
+    case 'reconver':
+      $format_number = array(
+        'decimals' => variable_get('proyectos_operativos_number_decimals', 0),
+        'dec_point' => variable_get('proyectos_operativos_number_dec_point', ','),
+        'thousands_sep' => variable_get('proyectos_operativos_number_thousands_sep', '.'),
+        'nueva_reconver1' => variable_get('nueva_reconver1','1'),
+      );
+      
+
+      if($node = node_load(arg(1))) {
+      	$arg3 = arg(3);
+      	if (isset($arg3) and is_numeric(arg(3)) ) {
+      		unset($node);
+      		$node = node_load(arg(3));
+      	}
+        if ($node->type == 'proyectos_operativos' || $node->type == 'accion_especifica') {
+          if ($node->type == 'accion_especifica') {
+            $proyecto = node_load($node->field_accion_esp_proyecto[0]['nid']);
+            $anhActual_proyecto = $proyecto->anhoproyectos_operativos;
+          }
+          elseif ($node->type == 'proyectos_operativos') {
+            $anhActual_proyecto = $node->anhoproyectos_operativos;
+          }
+          if ($years = variable_get('proyectos_operativos_anho_decimales_reconversion')) {
+            if (isset($years[$anhActual_proyecto]) || $years[$anhActual_proyecto]) {
+              $format_number = array(
+                'decimals' => variable_get('proyectos_operativos_number_decimals2', 0),
+                'dec_point' => variable_get('proyectos_operativos_number_dec_point2', ','),
+                'thousands_sep' => variable_get('proyectos_operativos_number_thousands_sep2', '.'),
+                'nueva_reconver1' => variable_get('nueva_reconver1','1'),
+              );
+
+              // se divide entre 100.000 y se le dejan 6 decimales 
+              $value_0 = round(($value/100000),6);
+              if ($years2 = variable_get('proyectos_operativos_anho_decimales_reconversion2')) {
+              	if (isset($years2[$anhActual_proyecto]) || $years2[$anhActual_proyecto]) {
+              		$value_0 = round(($value_0/$format_number['nueva_reconver1']),6);
+              	}
+              }
+              // se establece los puntos y coma y el NUMERO DE DECIMALES
+              $output = number_format($value_0, $format_number['decimals'], $format_number['dec_point'], $format_number['thousands_sep']);
+              break;
+            }
+          }
+        }
+      }
+
+      $output = number_format($value, $format_number['decimals'], $format_number['dec_point'], $format_number['thousands_sep']);
+      break;
+    ////////////////////////// END ReconversiÃ³n config p/op
+
+    //////////////////// ReconversiÃ³n config 9999
+    case 'reconver2':
+      if($node = node_load(arg(1))) {
+        $arg3 = arg(3);
+      	if (isset($arg3) and is_numeric(arg(3)) ) {
+      		unset($node);
+      		$node = node_load(arg(3));
+      	}
+        if ($node->type == 'proyectos_operativos' || $node->type == 'accion_especifica') {
+          if ($node->type == 'accion_especifica') {
+            $proyecto = node_load($node->field_accion_esp_proyecto[0]['nid']);
+            $anhActual_proyecto = $proyecto->anhoproyectos_operativos;
+          }
+          elseif ($node->type == 'proyectos_operativos') {
+            $anhActual_proyecto = $node->anhoproyectos_operativos;
+          }
+          if ($years = variable_get('proyectos_operativos_anho_decimales_reconversion')) {
+            if (isset($years[$anhActual_proyecto]) || $years[$anhActual_proyecto]) {
+              $format_number = array(
+                'decimals' => variable_get('proyectos_operativos_number_decimals2', 0),
+                'dec_point' => variable_get('proyectos_operativos_number_dec_point2', ','),
+                'thousands_sep' => variable_get('proyectos_operativos_number_thousands_sep2', '.'),
+                'nueva_reconver1' => variable_get('nueva_reconver1','1'),
+              );
+              // se divide entre 100.000 y se le dejan 6 decimales  
+              $value_0 = round(($value/100000),6);
+              if ($years2 = variable_get('proyectos_operativos_anho_decimales_reconversion2')) {
+              	if (isset($years2[$anhActual_proyecto]) || $years2[$anhActual_proyecto]) {
+              		$value_0 = round(($value_0/$format_number['nueva_reconver1']),6);
+              	}
+              }
+              $output = $value_0;
+              break;
+            }
+          }
+        }
+      }
+      $output = $value;
+      break;
+    ////////////////////////// END ReconversiÃ³n config 9999
+
+    //////////////////// ReconversiÃ³n config 9.999
+    case 'reconver3':
+      if($node = node_load(arg(1))) {
+        $arg3 = arg(3);
+      	if (isset($arg3) and is_numeric(arg(3)) ) {
+      		unset($node);
+      		$node = node_load(arg(3));
+      	}
+        if ($node->type == 'proyectos_operativos' || $node->type == 'accion_especifica') {
+          if ($node->type == 'accion_especifica') {
+            $proyecto = node_load($node->field_accion_esp_proyecto[0]['nid']);
+            $anhActual_proyecto = $proyecto->anhoproyectos_operativos;
+          }
+          elseif ($node->type == 'proyectos_operativos') {
+            $anhActual_proyecto = $node->anhoproyectos_operativos;
+          }
+          if (in_array($years = variable_get('proyectos_operativos_anho_decimales_reconversion'))) {
+            if (isset($years[$anhActual_proyecto]) || $years[$anhActual_proyecto]) {
+              $format_number = array(
+                'decimals' => variable_get('proyectos_operativos_number_decimals2', 0),
+                'dec_point' => variable_get('proyectos_operativos_number_dec_point2', ','),
+                'thousands_sep' => variable_get('proyectos_operativos_number_thousands_sep2', '.'),
+                'nueva_reconver1' => variable_get('nueva_reconver1','1'),
+              );
+              // se divide entre 100.000 y se le dejan 6 decimales 
+              $value_0 = round(($value/100000),6);
+              if ($years2 = variable_get('proyectos_operativos_anho_decimales_reconversion2')) {
+              	if (isset($years2[$anhActual_proyecto]) || $years2[$anhActual_proyecto]) {
+              		$value_0 = round(($value_0/$format_number['nueva_reconver1']),6);
+              	}
+              }
+              // se establece los puntos y coma y el NUMERO DE DECIMALES
+              $output = number_format($value_0, 0, ',', '.');
+              break;
+            }
+          }
+        }
+      }
+      $output = number_format($value, 0, ',', '.');
+      break;
+    ////////////////////////// END ReconversiÃ³n config 9.999
+
+    //////////////////// ReconversiÃ³n config 9.999,99
+    case 'reconver4':
+      if($node = node_load(arg(1))) {
+        $arg3 = arg(3);
+      	if (isset($arg3) and is_numeric(arg(3)) ) {
+      		unset($node);
+      		$node = node_load(arg(3));
+      	}
+        if ($node->type == 'proyectos_operativos' || $node->type == 'accion_especifica') {
+          if ($node->type == 'accion_especifica') {
+            $proyecto = node_load($node->field_accion_esp_proyecto[0]['nid']);
+            $anhActual_proyecto = $proyecto->anhoproyectos_operativos;
+          }
+          elseif ($node->type == 'proyectos_operativos') {
+            $anhActual_proyecto = $node->anhoproyectos_operativos;
+          }
+          if ($years = variable_get('proyectos_operativos_anho_decimales_reconversion')) {
+            if (isset($years[$anhActual_proyecto]) || $years[$anhActual_proyecto]) {
+              $format_number = array(
+                'decimals' => variable_get('proyectos_operativos_number_decimals2', 0),
+                'dec_point' => variable_get('proyectos_operativos_number_dec_point2', ','),
+                'thousands_sep' => variable_get('proyectos_operativos_number_thousands_sep2', '.'),
+                'nueva_reconver1' => variable_get('nueva_reconver1','1'),
+              );
+              // se divide entre 100.000 y se le dejan 6 decimales 
+              $value_0 = round(($value/100000),6);
+              if ($years2 = variable_get('proyectos_operativos_anho_decimales_reconversion2')) {
+              	if (isset($years2[$anhActual_proyecto]) || $years2[$anhActual_proyecto]) {
+              		$value_0 = round(($value_0/$format_number['nueva_reconver1']),6);
+              	}
+              }
+              // se establece los puntos y coma y el NUMERO DE DECIMALES
+              $output = number_format($value_0, 2, ',', '.');
+              break;
+            }
+          }
+        }
+      }
+      $output = number_format($value, 2, ',', '.');
+      break;
+    ////////////////////////// END ReconversiÃ³n config 9.999,99
+    default:
+      $output = $value;
+      break;
+  }
+  return $output;
+}
