Se agrega validacion para el campo out_doc_pdf_security_permissions en OUTPUTDOCUMENTS

This commit is contained in:
Freddy Daniel Rojas Valda
2014-01-15 12:27:50 -04:00
parent 138559b591
commit 2e57274661
4 changed files with 45 additions and 37 deletions

View File

@@ -41,7 +41,7 @@ class CaseScheduler extends BaseCaseScheduler
}
public function create ($aData)
{
{var_dump($aData); die('daniel');
$con = Propel::getConnection( CaseSchedulerPeer::DATABASE_NAME );
try {
$this->fromArray( $aData, BasePeer::TYPE_FIELDNAME );

View File

@@ -158,12 +158,13 @@ try {
$sValue = $nStartDay;
break;
}
echo "<br>sOption: " . $sOption;
//echo "<br>sOption: " . $sOption;
if (($sOption != '1') && ($sOption != '4') && ($sOption != '5')) {
if ($sStartDay == '') {
$sStartDay = date( 'Y-m-d' );
}
// echo $sOption."*". $sValue."*". $nActualTime."*". $sDaysPerformTask."*". $sWeeks."*". $sStartDay ."*". $sMonths."<br>";
echo "1*".$sOption." 2*". $sValue." 3*". $nActualTime." 4*". $sDaysPerformTask." 5*". $sWeeks." 6*". $sStartDay ." 7*". $sMonths."<br>";
die();
$dCurrentDay = date( "d" );
$dCurrentMonth = date( "m" );
$aStartDay = explode( "|", $aData['SCH_START_DAY'] );

View File

@@ -167,8 +167,7 @@ class CaseScheduler
$aData['SCH_WEEK_DAYS'] = '1|2|3|4|5|'; //check
break;
case '3': // Every [n] Days
$sDaysPerformTask = $aData['SCH_DAYS_PERFORM_TASK_OPT_3'];
$aData['SCH_DAYS_PERFORM_TASK'] = $aData['SCH_DAYS_PERFORM_TASK'] . '|' . $aData['SCH_DAYS_PERFORM_TASK_OPT_3'];
$sDaysPerformTask = $aData['SCH_DAYS_PERFORM_TASK'];
break;
}
break;
@@ -182,18 +181,10 @@ class CaseScheduler
$sWeeks = '';
if (! empty( $aData['SCH_WEEK_DAYS'] )) {
$aWeekDays = $aData['SCH_WEEK_DAYS'];
foreach ($aWeekDays as $value) {
$sWeeks = $sWeeks . $value . '|';
}
}
if (! empty( $aData['SCH_WEEK_DAYS_2'] )) {
$aWeekDays2 = $aData['SCH_WEEK_DAYS_2'];
foreach ($aWeekDays2 as $value) {
$sWeeks = $sWeeks . $value . '|';
}
$sWeeks = $aData['SCH_WEEK_DAYS'];
}
$sStartTime = $aData['SCH_START_TIME'];
$aData['SCH_WEEK_DAYS'] = $sWeeks;
$aData['SCH_WEEK_DAYS'] = $sWeeks;
break;
case '3':
$nStartDay = $aData['SCH_START_DAY'];
@@ -227,6 +218,8 @@ class CaseScheduler
$sValue = $nStartDay;
break;
}
//echo $aData['SCH_END_DATE']; die();
//echo $aData['SCH_TIME_NEXT_RUN']; die();
if (($sOption != '1') && ($sOption != '4') && ($sOption != '5')) {
if ($sStartDay == '') {
$sStartDay = date( 'Y-m-d' );
@@ -246,14 +239,12 @@ class CaseScheduler
}
}
} else {
/* echo $sOption; echo " - ";
echo $sValue; echo " - "; echo $nActualTime; echo " - "; echo $sDaysPerformTask; echo " - "; echo $sWeeks;
echo " - "; echo $sStartDay; echo " - "; echo $sMonths; echo " - "; echo $sDateTmp; die();
*/
echo $sOption."*". $sValue."*". $nActualTime."*". $sDaysPerformTask."*". $sWeeks."*". $sStartDay ."*". $sMonths."<br>";
echo "1*".$sOption." 2*". $sValue." 3*". $nActualTime." 4*". $sDaysPerformTask." 5*". $sWeeks." 6*". $sStartDay ." 7*". $sMonths."<br>"; die();
// echo $aData['SCH_END_DATE']; die();
//echo $aData['SCH_TIME_NEXT_RUN']; die();
$aData['SCH_TIME_NEXT_RUN'] = $oCaseScheduler->updateNextRun( $sOption, $sValue, $nActualTime, $sDaysPerformTask, $sWeeks, $sStartDay, $sMonths, $sDateTmp );
echo $aData['SCH_TIME_NEXT_RUN']; die ();
}
} else {
@@ -274,9 +265,11 @@ class CaseScheduler
$aData['SCH_TIME_NEXT_RUN'] = $date;
}
}
if (trim( $aData['SCH_END_DATE'] ) != '') {
$aData['SCH_END_DATE'] = $aData['SCH_END_DATE'];
}
if (! empty( $aData['SCH_REPEAT_TASK_CHK'] )) {
$nOptEvery = $aData['SCH_REPEAT_EVERY_OPT'];
if ($nOptEvery == 2) {
@@ -288,6 +281,7 @@ class CaseScheduler
if ((isset( $aData['CASE_SH_PLUGIN_UID'] )) && ($aData['CASE_SH_PLUGIN_UID'] != "")) {
$aData['CASE_SH_PLUGIN_UID'] = $aData['CASE_SH_PLUGIN_UID'];
}
// echo $aData['SCH_END_DATE']; die();
$oCaseScheduler->create( $aData );
$oCriteria = $this->getCaseScheduler($sProcessUID, $aData['SCH_UID']);
return $oCriteria;
@@ -327,8 +321,8 @@ class CaseScheduler
$sTimeTmp = $aData['SCH_START_TIME'];
// $aData['SCH_START_TIME'] = date( 'Y-m-d', strtotime( $sDateTmp ) ) . ' ' . date( 'H:i:s', strtotime( $sTimeTmp ) );
// $aData['SCH_START_DATE'] = date( 'Y-m-d', strtotime( $sDateTmp ) ) . ' ' . date( 'H:i:s', strtotime( $sTimeTmp ) );
$previousStartTime = date( 'Y-m-d', strtotime( $aData['PREV_SCH_START_DATE'] ) ) . ' ' . date( 'H:i:s', strtotime( $aData['PREV_SCH_START_TIME'] ) );
$previousStartDate = date( 'Y-m-d', strtotime( $aData['PREV_SCH_START_DATE'] ) ) . ' ' . date( 'H:i:s', strtotime( $aData['PREV_SCH_START_TIME'] ) );
// $previousStartTime = date( 'Y-m-d', strtotime( $aData['PREV_SCH_START_DATE'] ) ) . ' ' . date( 'H:i:s', strtotime( $aData['PREV_SCH_START_TIME'] ) );
// $previousStartDate = date( 'Y-m-d', strtotime( $aData['PREV_SCH_START_DATE'] ) ) . ' ' . date( 'H:i:s', strtotime( $aData['PREV_SCH_START_TIME'] ) );
$sValue = '';
$sDaysPerformTask = '';
$sWeeks = '';
@@ -350,8 +344,8 @@ class CaseScheduler
$aData['SCH_WEEK_DAYS'] = '1|2|3|4|5|';
break;
case '3': // Every [n] Days
$sDaysPerformTask = $aData['SCH_DAYS_PERFORM_TASK_OPT_3'];
$aData['SCH_DAYS_PERFORM_TASK'] = $aData['SCH_DAYS_PERFORM_TASK'] . '|' . $aData['SCH_DAYS_PERFORM_TASK_OPT_3'];
$sDaysPerformTask = $aData['SCH_DAYS_PERFORM_TASK'];
$aData['SCH_DAYS_PERFORM_TASK'] = $aData['SCH_DAYS_PERFORM_TASK'];
break;
}
break;
@@ -366,15 +360,7 @@ class CaseScheduler
$sWeeks = '';
if (! empty( $aData['SCH_WEEK_DAYS'] )) {
$aWeekDays = $aData['SCH_WEEK_DAYS'];
foreach ($aWeekDays as $value) {
$sWeeks = $sWeeks . $value . '|';
}
}
if (! empty( $aData['SCH_WEEK_DAYS_2'] )) {
$aWeekDays2 = $aData['SCH_WEEK_DAYS_2'];
foreach ($aWeekDays2 as $value) {
$sWeeks = $sWeeks . $value . '|';
}
$sWeeks = $aData['SCH_WEEK_DAYS'];
}
$sStartTime = $aData['SCH_START_TIME'];
$aData['SCH_WEEK_DAYS'] = $sWeeks;
@@ -412,6 +398,7 @@ class CaseScheduler
break;
}
echo $aData['SCH_END_DATE']; die();
if (trim( $aData['SCH_END_DATE'] ) != '') {
$aData['SCH_END_DATE'] = $aData['SCH_END_DATE'];
}
@@ -454,6 +441,7 @@ class CaseScheduler
}
}
}
echo $sOption."*". $sValue."*". $nActualTime."*". $sDaysPerformTask."*". $sWeeks."*". $sStartDay ."*". $sMonths."<br>"; die();
} else {
if ($recalculateDate) {
$aData['SCH_TIME_NEXT_RUN'] = $oCaseScheduler->updateNextRun( $sOption, $sValue, $nActualTime, $sDaysPerformTask, $sWeeks, $sStartDay, $sMonths, $sDateTmp );

View File

@@ -113,7 +113,7 @@ class OutputDocument
/**
* Return a single output document of a project
* @param string $sProcessUID
* @param string $sOutputDocumentUID
* @param string $sOutputDocumentUID
* @return array
*
* @access public
@@ -228,6 +228,15 @@ class OutputDocument
*/
public function addOutputDocument($sProcessUID, $aData)
{
$pemission = $aData['out_doc_pdf_security_permissions'];
$pemission = explode("|", $pemission);
foreach ($pemission as $row) {
if ($row == "print" || $row == "modify" || $row == "copy" || $row == "forms") {
$aData['out_doc_pdf_security_permissions'] = $aData['out_doc_pdf_security_permissions'];
} else {
throw (new \Exception( 'invalid value specified for `out_doc_pdf_security_permissions`'));
}
}
try {
require_once (PATH_TRUNK . "workflow" . PATH_SEP . "engine" . PATH_SEP . "classes" . PATH_SEP . "model" . PATH_SEP . "OutputDocument.php");
$aData = array_change_key_case($aData, CASE_UPPER);
@@ -274,7 +283,17 @@ class OutputDocument
* @access public
*/
public function updateOutputDocument($sProcessUID, $sOutputDocumentUID = '', $aData)
{ $oConnection = \Propel::getConnection(\OutputDocumentPeer::DATABASE_NAME);
{
$oConnection = \Propel::getConnection(\OutputDocumentPeer::DATABASE_NAME);
$pemission = $aData['out_doc_pdf_security_permissions'];
$pemission = explode("|", $pemission);
foreach ($pemission as $row) {
if ($row == "print" || $row == "modify" || $row == "copy" || $row == "forms") {
$aData['out_doc_pdf_security_permissions'] = $aData['out_doc_pdf_security_permissions'];
} else {
throw (new \Exception( 'invalid value specified for `out_doc_pdf_security_permissions`'));
}
}
try {
$aData = array_change_key_case($aData, CASE_UPPER);
$oOutputDocument = \OutputDocumentPeer::retrieveByPK($sOutputDocumentUID);