BUG 10110 Añr modulo de logs para envio de correos electronicos SOLVED
- According to the specifications. - Was add the the list of emails. enter the commit message for your changes. Lines starting
This commit is contained in:
96
workflow/engine/methods/mails/emailList.php
Normal file
96
workflow/engine/methods/mails/emailList.php
Normal file
@@ -0,0 +1,96 @@
|
||||
<?php
|
||||
/**
|
||||
* eventList.php
|
||||
*
|
||||
* ProcessMaker Open Source Edition
|
||||
* Copyright (C) 2004 - 2008 Colosa Inc.23
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as
|
||||
* published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* For more information, contact Colosa Inc, 2566 Le Jeune Rd.,
|
||||
* Coral Gables, FL, 33134, USA, or email info@colosa.com.
|
||||
*/
|
||||
|
||||
global $RBAC;
|
||||
if ($RBAC->userCanAccess( 'PM_SETUP_ADVANCE' ) != 1) {
|
||||
G::SendTemporalMessage( 'ID_USER_HAVENT_RIGHTS_PAGE', 'error', 'labels' );
|
||||
G::header( 'location: ../login/login' );
|
||||
die();
|
||||
}
|
||||
|
||||
G::LoadClass( 'configuration' );
|
||||
$c = new Configurations();
|
||||
$configPage = $c->getConfiguration( 'eventList', 'pageSize', '', $_SESSION['USER_LOGGED'] );
|
||||
$Config['pageSize'] = isset( $configPage['pageSize'] ) ? $configPage['pageSize'] : 20;
|
||||
|
||||
$G_MAIN_MENU = 'processmaker';
|
||||
$G_SUB_MENU = 'logs';
|
||||
$G_ID_MENU_SELECTED = 'logs';
|
||||
$G_ID_SUB_MENU_SELECTED = 'EMAILS';
|
||||
|
||||
//get values for the comboBoxes
|
||||
$userUid = (isset( $_SESSION['USER_LOGGED'] ) && $_SESSION['USER_LOGGED'] != '') ? $_SESSION['USER_LOGGED'] : null;
|
||||
$status = array (
|
||||
array ('',G::LoadTranslation( 'ID_ALL' )),
|
||||
array ("sent", "Sent"),
|
||||
array ("pending", "Pending")
|
||||
);
|
||||
//$type = array (array ('',G::LoadTranslation( 'ID_ALL' )
|
||||
//),array ('SEND_MESSAGE',G::LoadTranslation( 'ID_EVENT_MESSAGE' )
|
||||
//),array ('EXECUTE_TRIGGER',G::LoadTranslation( 'ID_EVENT_TIMER' )
|
||||
//),array ('EXECUTE_CONDITIONAL_TRIGGER',G::LoadTranslation( 'ID_EVENT_CONDITIONAL' )
|
||||
//)
|
||||
//);
|
||||
$processes = getProcessArray( $userUid );
|
||||
|
||||
$G_PUBLISH = new Publisher();
|
||||
|
||||
$oHeadPublisher = & headPublisher::getSingleton();
|
||||
$oHeadPublisher->addExtJsScript( 'mails/emailList', false ); //adding a javascript file .js
|
||||
$oHeadPublisher->addContent( 'mails/emailList' ); //adding a html file .html.
|
||||
//sending the columns to display in grid
|
||||
//$oHeadPublisher->assign( 'typeValues', $type );
|
||||
$oHeadPublisher->assign( 'statusValues', $status );
|
||||
$oHeadPublisher->assign( 'processValues', $processes );
|
||||
|
||||
function getProcessArray ($userUid)
|
||||
{
|
||||
global $oAppCache;
|
||||
require_once ("classes/model/AppCacheView.php");
|
||||
|
||||
$processes = Array ();
|
||||
$processes[] = array ('',G::LoadTranslation( 'ID_ALL_PROCESS' ));
|
||||
|
||||
$cProcess = new Criteria( 'workflow' );
|
||||
$cProcess->clearSelectColumns();
|
||||
$cProcess->addSelectColumn( AppCacheViewPeer::PRO_UID );
|
||||
$cProcess->addSelectColumn( AppCacheViewPeer::APP_PRO_TITLE );
|
||||
$cProcess->setDistinct( AppCacheViewPeer::PRO_UID );
|
||||
|
||||
$cProcess->addAscendingOrderByColumn( AppCacheViewPeer::APP_PRO_TITLE );
|
||||
|
||||
$oDataset = AppCacheViewPeer::doSelectRS( $cProcess );
|
||||
$oDataset->setFetchmode( ResultSet::FETCHMODE_ASSOC );
|
||||
$oDataset->next();
|
||||
|
||||
while ($aRow = $oDataset->getRow()) {
|
||||
$processes[] = array ($aRow['PRO_UID'],$aRow['APP_PRO_TITLE']);
|
||||
$oDataset->next();
|
||||
}
|
||||
|
||||
return $processes;
|
||||
}
|
||||
|
||||
G::RenderPage( 'publish', 'extJs' );
|
||||
|
||||
154
workflow/engine/methods/mails/emailsAjax.php
Normal file
154
workflow/engine/methods/mails/emailsAjax.php
Normal file
@@ -0,0 +1,154 @@
|
||||
<?php
|
||||
$req = (isset($_POST['request']))? $_POST['request']:((isset($_REQUEST['request']))? $_REQUEST['request'] : 'No hayyy tal');
|
||||
|
||||
require_once 'classes/model/Content.php';
|
||||
require_once 'classes/model/AppMessage.php';
|
||||
require_once 'classes/model/AppDelegation.php';
|
||||
require_once 'classes/model/Application.php';
|
||||
switch($req){
|
||||
case 'MessageList':
|
||||
$start = (isset($_REQUEST['start']))? $_REQUEST['start'] : '0';
|
||||
$limit = (isset($_REQUEST['limit']))? $_REQUEST['limit'] : '25';
|
||||
$proUid = (isset($_REQUEST['process']))? $_REQUEST['process'] : '';
|
||||
$eventype = (isset($_REQUEST['type']))? $_REQUEST['type'] : '';
|
||||
$emailStatus = (isset($_REQUEST['status']))? $_REQUEST['status'] : '';
|
||||
$sort = isset($_REQUEST['sort']) ? $_REQUEST['sort'] : '';
|
||||
$dir = isset($_REQUEST['dir']) ? $_REQUEST['dir'] : 'ASC';
|
||||
$dateFrom = isset( $_POST["dateFrom"] ) ? substr( $_POST["dateFrom"], 0, 10 ) : "";
|
||||
$dateTo = isset( $_POST["dateTo"] ) ? substr( $_POST["dateTo"], 0, 10 ) : "";
|
||||
|
||||
$response = new stdclass();
|
||||
$response->status = 'OK';
|
||||
|
||||
$criteria = new Criteria();
|
||||
$criteria->addJoin(AppMessagePeer::APP_UID, ApplicationPeer::APP_UID);
|
||||
if ($emailStatus != '') {
|
||||
$criteria->add( AppMessagePeer::APP_MSG_STATUS, $emailStatus, Criteria::LESS_EQUAL );
|
||||
}
|
||||
if ($proUid != '') {
|
||||
$criteria->add( ApplicationPeer::PRO_UID, $proUid);
|
||||
}
|
||||
if ($dateFrom != '') {
|
||||
if ($dateTo != '') {
|
||||
$criteria->add( $criteria->getNewCriterion( AppMessagePeer::APP_MSG_DATE, $dateFrom, Criteria::GREATER_EQUAL )->addAnd( $criteria->getNewCriterion( AppMessagePeer::APP_MSG_DATE, $dateTo, Criteria::LESS_EQUAL ) ) );
|
||||
} else {
|
||||
$criteria->add( AppMessagePeer::APP_MSG_DATE, $dateFrom, Criteria::GREATER_EQUAL );
|
||||
}
|
||||
} elseif ($dateTo != '') {
|
||||
$criteria->add( AppMessagePeer::APP_MSG_DATE, $dateTo, Criteria::LESS_EQUAL );
|
||||
}
|
||||
|
||||
$result = AppMessagePeer::doSelectRS($criteria);
|
||||
$result->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
$data = Array();
|
||||
while ( $result->next() ) {
|
||||
$data[] = $result->getRow();
|
||||
}
|
||||
$totalCount = count($data);
|
||||
|
||||
$criteria = new Criteria();
|
||||
$criteria->addSelectColumn(AppMessagePeer::APP_MSG_UID);
|
||||
$criteria->addSelectColumn(AppMessagePeer::APP_UID);
|
||||
$criteria->addSelectColumn(AppMessagePeer::DEL_INDEX);
|
||||
$criteria->addSelectColumn(AppMessagePeer::APP_MSG_TYPE);
|
||||
$criteria->addSelectColumn(AppMessagePeer::APP_MSG_SUBJECT);
|
||||
$criteria->addSelectColumn(AppMessagePeer::APP_MSG_FROM);
|
||||
|
||||
$criteria->addSelectColumn(AppMessagePeer::APP_MSG_TO);
|
||||
$criteria->addSelectColumn(AppMessagePeer::APP_MSG_BODY);
|
||||
$criteria->addSelectColumn(AppMessagePeer::APP_MSG_STATUS);
|
||||
$criteria->addSelectColumn(AppMessagePeer::APP_MSG_DATE);
|
||||
$criteria->addSelectColumn(AppMessagePeer::APP_MSG_SEND_DATE);
|
||||
$criteria->addSelectColumn(AppMessagePeer::APP_MSG_SHOW_MESSAGE);
|
||||
|
||||
$criteria->addSelectColumn(ApplicationPeer::PRO_UID);
|
||||
|
||||
$criteria->addAsColumn('PRO_TITLE', 'C2.CON_VALUE');
|
||||
$criteria->addAlias('C2', 'CONTENT');
|
||||
|
||||
if ($emailStatus != '') {
|
||||
$criteria->add( AppMessagePeer::APP_MSG_STATUS, $emailStatus, Criteria::LESS_EQUAL );
|
||||
}
|
||||
if ($proUid != '') {
|
||||
$criteria->add( ApplicationPeer::PRO_UID, $proUid);
|
||||
}
|
||||
if ($dateFrom != '') {
|
||||
if ($dateTo != '') {
|
||||
$criteria->add( $criteria->getNewCriterion( AppMessagePeer::APP_MSG_DATE, $dateFrom, Criteria::GREATER_EQUAL )->addAnd( $criteria->getNewCriterion( AppMessagePeer::APP_MSG_DATE, $dateTo, Criteria::LESS_EQUAL ) ) );
|
||||
} else {
|
||||
$criteria->add( AppMessagePeer::APP_MSG_DATE, $dateFrom, Criteria::GREATER_EQUAL );
|
||||
}
|
||||
} elseif ($dateTo != '') {
|
||||
$criteria->add( AppMessagePeer::APP_MSG_DATE, $dateTo, Criteria::LESS_EQUAL );
|
||||
}
|
||||
|
||||
if ($sort != '') {
|
||||
if ($dir == 'ASC') {
|
||||
$criteria->addAscendingOrderByColumn($sort);
|
||||
} else {
|
||||
$criteria->addDescendingOrderByColumn($sort);
|
||||
}
|
||||
} else {
|
||||
$oCriteria->addDescendingOrderByColumn(AppMessagePeer::APP_MSG_SEND_DATE );
|
||||
}
|
||||
if ($limit != '') {
|
||||
$criteria->setLimit($limit);
|
||||
$criteria->setOffset($start);
|
||||
}
|
||||
$criteria->addJoin(AppMessagePeer::APP_UID, ApplicationPeer::APP_UID);
|
||||
|
||||
$conditions = array();
|
||||
$conditions[] = array(ApplicationPeer::PRO_UID, 'C2.CON_ID');
|
||||
$conditions[] = array(
|
||||
'C2.CON_CATEGORY', DBAdapter::getStringDelimiter() . 'PRO_TITLE' . DBAdapter::getStringDelimiter()
|
||||
);
|
||||
$conditions[] = array(
|
||||
'C2.CON_LANG', DBAdapter::getStringDelimiter() . SYS_LANG . DBAdapter::getStringDelimiter()
|
||||
);
|
||||
$criteria->addJoinMC($conditions, Criteria::LEFT_JOIN);
|
||||
$result = AppMessagePeer::doSelectRS($criteria);
|
||||
$result->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
$data = Array();
|
||||
$dataPro = array();
|
||||
$index = 0;
|
||||
$content = new Content();
|
||||
$tasTitleDefault = G::LoadTranslation('ID_TASK_NOT_RELATED');
|
||||
while ( $result->next() ) {
|
||||
|
||||
$row = $result->getRow();
|
||||
$row['APP_MSG_FROM'] =htmlentities($row['APP_MSG_FROM'], ENT_QUOTES, "UTF-8");
|
||||
$row['APP_MSG_STATUS'] = ucfirst ( $row['APP_MSG_STATUS']);
|
||||
$row['TAS_TITLE'] = $tasTitleDefault;
|
||||
if ($row['DEL_INDEX'] != 0) {
|
||||
$criteria = new Criteria();
|
||||
$criteria->addSelectColumn(AppDelegationPeer::PRO_UID);
|
||||
$criteria->addSelectColumn(AppDelegationPeer::TAS_UID);
|
||||
$criteria->addSelectColumn(AppDelegationPeer::DEL_INDEX);
|
||||
$criteria->add(AppDelegationPeer::APP_UID, $row['APP_UID']);
|
||||
$resultDelegation = AppDelegationPeer::doSelectRS($criteria);
|
||||
$resultDelegation->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
$row['TAS_TITLE'] = '-';
|
||||
while ($resultDelegation->next()) {
|
||||
$rowDelegation = $resultDelegation->getRow();
|
||||
if ($row['DEL_INDEX'] == $rowDelegation['DEL_INDEX']) {
|
||||
$row['TAS_TITLE'] = $content->load( 'TAS_TITLE', '', $rowDelegation['TAS_UID'], SYS_LANG );
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$data[] = $row;
|
||||
}
|
||||
$response = array();
|
||||
$response['totalCount'] = $totalCount;
|
||||
$response['data'] = $data;
|
||||
die(G::json_encode($response));
|
||||
break;
|
||||
case 'updateStatusMessage':
|
||||
if (isset($_REQUEST['APP_MSG_UID']) && isset($_REQUEST['APP_MSG_STATUS'])) {
|
||||
$message = new AppMessage();
|
||||
$result = $message->updateStatus($_REQUEST['APP_MSG_UID'], $_REQUEST['APP_MSG_STATUS']);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user