Merged in release/3.7.4 (pull request #8376)

release/3.7.4
This commit is contained in:
Paula Quispe
2022-02-03 15:50:34 +00:00
41 changed files with 713 additions and 314 deletions

View File

@@ -35,9 +35,9 @@
"laravel/framework": "5.7.*",
"luracast/restler": "3.0",
"bshaffer/oauth2-server-php": "v1.0",
"colosa/pmui": "release/3.7.2-dev",
"colosa/michelangelofe": "release/3.7.2-dev",
"colosa/pmdynaform": "release/3.7.2-dev",
"colosa/pmui": "release/3.7.3-dev",
"colosa/michelangelofe": "release/3.7.3-dev",
"colosa/pmdynaform": "release/3.7.3-dev",
"colosa/taskscheduler": "release/1.0.2-dev",
"google/apiclient": "1.1.6",
"dapphp/securimage": "^3.6",

View File

@@ -4,7 +4,7 @@ use Faker\Generator as Faker;
$factory->define(\ProcessMaker\Model\OauthClients::class, function(Faker $faker) {
return [
"CLIENT_ID" => $faker->word,
"CLIENT_ID" => $faker->unique()->word(),
"CLIENT_SECRET" => $faker->regexify("/[a-zA-Z]{6}/"),
"CLIENT_NAME" => $faker->regexify("/[a-zA-Z]{6}/"),
"CLIENT_DESCRIPTION" => $faker->text,

View File

@@ -19,11 +19,12 @@ export default {
pageUri: String,
},
mounted() {
this.height = window.innerHeight - this.diffHeight;
this.height = `${window.innerHeight - this.diffHeight}px`;
window.addEventListener('resize', this.autoResizeFrame);
},
data() {
return {
height: "100%",
height: "0px",
width: "100%",
diffHeight: 10
};
@@ -32,6 +33,11 @@ export default {
classBtn(cls) {
return "btn v-btn-request " + cls;
},
autoResizeFrame(event) {
event.preventDefault();
this.height = `${window.innerHeight - this.diffHeight}px`;
event.stopPropagation();
},
},
};
</script>

View File

@@ -18,6 +18,8 @@ use ProcessMaker\Model\User;
use Tests\TestCase;
/**
* Class AbstractCasesTest
*
* @coversDefaultClass \ProcessMaker\BusinessModel\Cases\AbstractCases
*/
class AbstractCasesTest extends TestCase

View File

@@ -9,6 +9,8 @@ use ProcessMaker\Model\Delegation;
use Tests\TestCase;
/**
* Class BatchRoutingTest
*
* @coversDefaultClass \ProcessMaker\BusinessModel\Cases\BatchRouting
*/
class BatchRoutingTest extends TestCase
@@ -44,6 +46,7 @@ class BatchRoutingTest extends TestCase
*
* @covers \ProcessMaker\BusinessModel\Cases\BatchRouting::getColumnsView()
* @covers \ProcessMaker\BusinessModel\Cases\BatchRouting::getData()
* @covers \ProcessMaker\BusinessModel\Cases\BatchRouting::filters()
* @test
*/
public function it_test_extended_methods()
@@ -51,7 +54,7 @@ class BatchRoutingTest extends TestCase
// Create new BatchRouting object
$consolidated = new BatchRouting();
$result = $consolidated->getColumnsView();
$this->assertEmpty($result);
$this->assertNotEmpty($result);
$result = $consolidated->getData();
$this->assertEmpty($result);
}

View File

@@ -9,6 +9,8 @@ use ProcessMaker\Model\Delegation;
use Tests\TestCase;
/**
* Class CanceledTest
*
* @coversDefaultClass \ProcessMaker\BusinessModel\Cases\Canceled
*/
class CanceledTest extends TestCase
@@ -52,10 +54,10 @@ class CanceledTest extends TestCase
public function it_test_extended_methods()
{
// Create new batch Canceled object
$consolidated = new Canceled();
$result = $consolidated->getColumnsView();
$this->assertEmpty($result);
$result = $consolidated->getData();
$canceled = new Canceled();
$result = $canceled->getColumnsView();
$this->assertNotEmpty($result);
$result = $canceled->getData();
$this->assertEmpty($result);
}

View File

@@ -9,6 +9,8 @@ use ProcessMaker\Model\Delegation;
use Tests\TestCase;
/**
* Class CasesListTest
*
* @coversDefaultClass \ProcessMaker\BusinessModel\Cases\CasesList
*/
class CasesListTest extends TestCase

View File

@@ -9,6 +9,8 @@ use ProcessMaker\Model\Delegation;
use Tests\TestCase;
/**
* Class CompletedTest
*
* @coversDefaultClass \ProcessMaker\BusinessModel\Cases\Completed
*/
class CompletedTest extends TestCase
@@ -52,10 +54,10 @@ class CompletedTest extends TestCase
public function it_test_extended_methods()
{
// Create new batch Completed object
$consolidated = new Completed();
$result = $consolidated->getColumnsView();
$this->assertEmpty($result);
$result = $consolidated->getData();
$completed = new Completed();
$result = $completed->getColumnsView();
$this->assertNotEmpty($result);
$result = $completed->getData();
$this->assertEmpty($result);
}

View File

@@ -16,6 +16,8 @@ use ProcessMaker\Model\User;
use Tests\TestCase;
/**
* Class DraftTest
*
* @coversDefaultClass \ProcessMaker\BusinessModel\Cases\Draft
*/
class DraftTest extends TestCase
@@ -121,6 +123,26 @@ class DraftTest extends TestCase
$this->assertNotEmpty($res);
}
/**
* It tests the getData method with categoryId filter
*
* @covers \ProcessMaker\BusinessModel\Cases\Draft::getData()
* @covers \ProcessMaker\BusinessModel\Cases\Draft::getColumnsView()
* @covers \ProcessMaker\BusinessModel\Cases\Draft::filters()
* @test
*/
public function it_filter_by_category()
{
// Create factories related to the draft cases
$cases = $this->createDraft();
// Create new Draft object
$draft = new Draft();
$draft->setUserId($cases['USR_ID']);
$draft->setCategoryId(2000);
$res = $draft->getData();
$this->assertEmpty($res);
}
/**
* It tests the getData method with processId filter
*

View File

@@ -19,6 +19,8 @@ use ProcessMaker\Model\TaskUser;
use Tests\TestCase;
/**
* Class HomeTest
*
* @coversDefaultClass \ProcessMaker\BusinessModel\Cases\Home
*/
class HomeTest extends TestCase

View File

@@ -121,6 +121,29 @@ class InboxTest extends TestCase
$this->assertNotEmpty($res);
}
/**
* It tests the getData method with categoryId filter
*
* @covers \ProcessMaker\BusinessModel\Cases\Inbox::getData()
* @covers \ProcessMaker\BusinessModel\Cases\Inbox::getColumnsView()
* @covers \ProcessMaker\BusinessModel\Cases\Inbox::filters()
* @covers \ProcessMaker\BusinessModel\Cases\Inbox::setCategoryId()
* @test
*/
public function it_filter_by_category()
{
// Create factories related to the to_do cases
$cases = $this->createInbox();
// Create new Inbox object
$inbox = new Inbox();
// Apply filters
$inbox->setUserId($cases->USR_ID);
$inbox->setCategoryId(2000);
// Call to getData method
$res = $inbox->getData();
$this->assertEmpty($res);
}
/**
* It tests the getData method with processId filter
*

View File

@@ -10,7 +10,7 @@ use ProcessMaker\Model\Delegation;
use Tests\TestCase;
/**
* Class InboxTest
* Class ParticipatedTest
*
* @coversDefaultClass \ProcessMaker\BusinessModel\Cases\Participated
*/
@@ -61,6 +61,27 @@ class ParticipatedTest extends TestCase
*
* @return array
*/
public function createParticipatedDraft()
{
$application = factory(Application::class)->states('draft')->create();
$delegation = factory(Delegation::class)->states('foreign_keys')->create([
'APP_NUMBER' => $application->APP_NUMBER,
'APP_UID' => $application->APP_UID,
'DEL_THREAD_STATUS' => 'OPEN',
'DEL_INDEX' => 1,
'DEL_LAST_INDEX' => 1,
]);
return $delegation;
}
/**
* Create participated cases factories when the case is CANCELED
*
* @param string
*
* @return array
*/
public function createParticipatedCompleted()
{
$application = factory(Application::class)->states('completed')->create();
@@ -207,6 +228,38 @@ class ParticipatedTest extends TestCase
$this->assertNotEmpty($result);
}
/**
* It tests the getData the specific filter setCategoryId
*
* @covers \ProcessMaker\BusinessModel\Cases\Participated::getData()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::getColumnsView()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::filters()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::setFilterCases()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::setUserUid()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::setUserId()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::setCategoryId()
* @test
*/
public function it_filter_by_category()
{
// Create factories related to the participated cases
$cases = $this->createParticipated();
// Create new Participated object
$participated = new Participated();
// Set the filter
$participated->setFilterCases('STARTED');
// Set the user UID
$participated->setUserUid($cases['USR_UID']);
// Set the user ID
$participated->setUserId($cases['USR_ID']);
// Set the category
$participated->setCategoryId(3000);
// Get the data
$result = $participated->getData();
// Asserts with the result
$this->assertEmpty($result);
}
/**
* It tests the getData the specific filter setProcessId
*
@@ -239,6 +292,67 @@ class ParticipatedTest extends TestCase
$this->assertNotEmpty($result);
}
/**
* It tests the getData the specific filter setTaskId
*
* @covers \ProcessMaker\BusinessModel\Cases\Participated::getData()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::getColumnsView()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::filters()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::setFilterCases()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::setUserUid()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::setUserId()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::setProcessId()
* @test
*/
public function it_filter_by_task()
{
// Create factories related to the participated cases
$cases = $this->createParticipated();
// Create new Participated object
$participated = new Participated();
// Set the filter
$participated->setFilterCases('STARTED');
// Set the user UID
$participated->setUserUid($cases['USR_UID']);
// Set the user ID
$participated->setUserId($cases['USR_ID']);
// Set the task
$participated->setTaskId($cases['TAS_ID']);
// Get the data
$result = $participated->getData();
// Asserts with the result
$this->assertNotEmpty($result);
}
/**
* It tests the getData the specific filter setCaseNumber
*
* @covers \ProcessMaker\BusinessModel\Cases\Participated::getData()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::getColumnsView()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::filters()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::setCaseNumber()
* @test
*/
public function it_filter_by_specific_case()
{
// Create factories related to the participated cases
$cases = $this->createParticipated();
// Create new Participated object
$participated = new Participated();
// Set the filter
$participated->setFilterCases('STARTED');
// Set the user UID
$participated->setUserUid($cases['USR_UID']);
// Set the user ID
$participated->setUserId($cases['USR_ID']);
// Set the case numbers
$participated->setCaseNumber($cases['APP_NUMBER']);
// Get the data
$result = $participated->getData();
// Asserts with the result
$this->assertNotEmpty($result);
}
/**
* It tests the getData method with case number filter
*
@@ -443,7 +557,7 @@ class ParticipatedTest extends TestCase
* @covers \ProcessMaker\BusinessModel\Cases\Participated::setParticipatedStatus()
* @test
*/
public function it_get_status_in_progress()
public function it_get_status_in_progress_todo()
{
// Create factories related to the participated cases
$cases = $this->createParticipated();
@@ -461,6 +575,60 @@ class ParticipatedTest extends TestCase
$this->assertNotEmpty($result);
}
/**
* It tests the specific filter setParticipatedStatus = IN_PROGRESS
*
* @covers \ProcessMaker\BusinessModel\Cases\Participated::getData()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::getColumnsView()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::filters()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::setParticipatedStatus()
* @test
*/
public function it_get_status_in_started_and_completed()
{
// Create factories related to the participated cases
$cases = $this->createParticipatedCompleted();
// Create new Participated object
$participated = new Participated();
// Set the user UID
$participated->setUserUid($cases->USR_UID);
// Set the user ID
$participated->setUserId($cases->USR_ID);
// Set participated status
$participated->setParticipatedStatus('STARTED');
// Get the data
$result = $participated->getData();
// Asserts with the result
$this->assertNotEmpty($result);
}
/**
* It tests the specific filter setParticipatedStatus = IN_PROGRESS
*
* @covers \ProcessMaker\BusinessModel\Cases\Participated::getData()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::getColumnsView()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::filters()
* @covers \ProcessMaker\BusinessModel\Cases\Participated::setParticipatedStatus()
* @test
*/
public function it_get_status_started_and_draft()
{
// Create factories related to the participated cases
$cases = $this->createParticipatedDraft();
// Create new Participated object
$participated = new Participated();
// Set the user UID
$participated->setUserUid($cases->USR_UID);
// Set the user ID
$participated->setUserId($cases->USR_ID);
// Set participated status
$participated->setParticipatedStatus('STARTED');
// Get the data
$result = $participated->getData();
// Asserts with the result
$this->assertNotEmpty($result);
}
/**
* It tests the specific filter setParticipatedStatus = STARTED
*

View File

@@ -300,6 +300,31 @@ class PausedTest extends TestCase
$this->assertNotEmpty($res);
}
/**
* It tests the getData method with categoryId filter
*
* @covers \ProcessMaker\BusinessModel\Cases\Paused::getData()
* @covers \ProcessMaker\BusinessModel\Cases\Paused::getColumnsView()
* @covers \ProcessMaker\BusinessModel\Cases\Paused::filters()
* @test
*/
public function it_filter_by_category()
{
// Create factories related to the paused cases
$cases = $this->createPaused();
// Create new Paused object
$paused = new Paused();
// Set the user UID
$paused->setUserUid($cases->USR_UID);
// Set the user ID
$paused->setUserId($cases->USR_ID);
$paused->setCategoryId(2000);
// Get the data
$res = $paused->getData();
// Asserts
$this->assertEmpty($res);
}
/**
* It tests the getData method with processId filter
*

View File

@@ -10,7 +10,7 @@ use ProcessMaker\Model\Delegation;
use Tests\TestCase;
/**
* Class InboxTest
* Class SearchTest
*
* @coversDefaultClass \ProcessMaker\BusinessModel\Cases\Search
*/

View File

@@ -15,6 +15,8 @@ use ProcessMaker\Model\User;
use Tests\TestCase;
/**
* Class SupervisingTest
*
* @coversDefaultClass \ProcessMaker\BusinessModel\Cases\Supervising
*/
class SupervisingTest extends TestCase
@@ -405,6 +407,34 @@ class SupervisingTest extends TestCase
$this->assertNotEmpty($result);
}
/**
* Tests the specific filter category
*
* @covers \ProcessMaker\BusinessModel\Cases\Supervising::getData()
* @covers \ProcessMaker\BusinessModel\Cases\Supervising::getColumnsView()
* @covers \ProcessMaker\BusinessModel\Cases\Supervising::filters()
* @covers \ProcessMaker\BusinessModel\Cases\Supervising::setUserUid()
* @covers \ProcessMaker\BusinessModel\Cases\Supervising::setUserId()
* @covers \ProcessMaker\BusinessModel\Cases\Supervising::setCategoryId()
* @test
*/
public function it_filter_by_category()
{
$cases = $this->createSupervising();
// Instance the Supervising object
$supervising = new Supervising();
// Set the user UID
$supervising->setUserUid($cases['USR_UID']);
// Set the user ID
$supervising->setUserId($cases['USR_ID']);
// Set the process
$supervising->setCategoryId(2000);
// Get the data
$result = $supervising->getData();
// Asserts with the result
$this->assertEmpty($result);
}
/**
* Tests the specific filter process
*

View File

@@ -22,6 +22,8 @@ use ProcessMaker\Model\User;
use Tests\TestCase;
/**
* Class UnassignedTest
*
* @coversDefaultClass \ProcessMaker\BusinessModel\Cases\Unassigned
*/
class UnassignedTest extends TestCase
@@ -79,6 +81,13 @@ class UnassignedTest extends TestCase
'TU_RELATION' => $relation, //Related to the user
'TU_TYPE' => 1
]);
//Create the previous delegation before self-service
$delegation = factory(Delegation::class)->create([
'APP_NUMBER' => $application->APP_NUMBER,
'PRO_ID' => $process->PRO_ID,
'DEL_THREAD_STATUS' => 'CLOSED',
'DEL_DELEGATE_DATE' => date('Y-m-d H:i:s', strtotime("-$i year"))
]);
//Create the register in delegation relate to self-service
$delegation = factory(Delegation::class)->create([
'APP_NUMBER' => $application->APP_NUMBER,
@@ -86,6 +95,7 @@ class UnassignedTest extends TestCase
'PRO_ID' => $process->PRO_ID,
'DEL_THREAD_STATUS' => 'OPEN',
'USR_ID' => 0,
'DEL_PREVIOUS' => $delegation->DEL_INDEX,
'DEL_DELEGATE_DATE' => date('Y-m-d H:i:s', strtotime("-$i year"))
]);
}
@@ -143,6 +153,13 @@ class UnassignedTest extends TestCase
'ASSIGNEE_ID' => ($userAssignee) ? $user->USR_ID : $group->GRP_ID,
'ASSIGNEE_TYPE' => $relation
]);
//Create the previous delegation before self-service
$delegation = factory(Delegation::class)->create([
'APP_NUMBER' => $application->APP_NUMBER,
'PRO_ID' => $process->PRO_ID,
'DEL_THREAD_STATUS' => 'CLOSED',
'DEL_DELEGATE_DATE' => date('Y-m-d H:i:s', strtotime("-$i year"))
]);
//Create the register in delegation relate to self-service
$delegation = factory(Delegation::class)->create([
'APP_NUMBER' => $application->APP_NUMBER,
@@ -151,6 +168,7 @@ class UnassignedTest extends TestCase
'PRO_ID' => $process->PRO_ID,
'DEL_THREAD_STATUS' => 'OPEN',
'USR_ID' => 0,
'DEL_PREVIOUS' => $delegation->DEL_INDEX,
'DEL_DELEGATE_DATE' => date('Y-m-d H:i:s', strtotime("-$i year"))
]);
}
@@ -378,7 +396,30 @@ class UnassignedTest extends TestCase
}
/**
* This ensures get data from self-service-user-assigned with filter setRangeCasesFromTo
* This ensures get data from self-service-user-assigned with filter setCategoryId
*
* @covers \ProcessMaker\BusinessModel\Cases\Unassigned::getData()
* @covers \ProcessMaker\BusinessModel\Cases\Unassigned::filters()
* @test
*/
public function it_filter_by_category()
{
// Create factories related to the unassigned cases
$cases = $this->createSelfServiceUserOrGroup();
// Create new object
$unassigned = new Unassigned();
// Apply filters
$unassigned->setUserUid($cases['taskUser']->USR_UID);
$unassigned->setUserId($cases['delegation']->USR_ID);
$unassigned->setCategoryId(2000);
// Call to getData method
$res = $unassigned->getData();
// This assert that the expected numbers of results are returned
$this->assertEmpty($res);
}
/**
* This ensures get data from self-service-user-assigned with filter setRangeCasesFromTo, setCasesNumbers, setCaseUid
*
* @covers \ProcessMaker\BusinessModel\Cases\Unassigned::getData()
* @covers \ProcessMaker\BusinessModel\Cases\Unassigned::filters()
@@ -390,11 +431,29 @@ class UnassignedTest extends TestCase
$cases = $this->createSelfServiceUserOrGroup();
// Create new object
$unassigned = new Unassigned();
// Apply filters
$unassigned->setUserUid($cases['taskUser']->USR_UID);
$unassigned->setUserId($cases['delegation']->USR_ID);
$unassigned->setCasesNumbers([$cases['delegation']->APP_NUMBER]);
$unassigned->setRangeCasesFromTo([]);
// Create new object
$unassigned = new Unassigned();
$unassigned->setUserUid($cases['taskUser']->USR_UID);
$unassigned->setUserId($cases['delegation']->USR_ID);
$rangeOfCases = $cases['delegation']->APP_NUMBER . "-" . $cases['delegation']->APP_NUMBER;
$unassigned->setCasesNumbers([]);
$unassigned->setRangeCasesFromTo([$rangeOfCases]);
// Create new object
$unassigned = new Unassigned();
$unassigned->setUserUid($cases['taskUser']->USR_UID);
$unassigned->setUserId($cases['delegation']->USR_ID);
$rangeOfCases = $cases['delegation']->APP_NUMBER . "-" . $cases['delegation']->APP_NUMBER;
$unassigned->setRangeCasesFromTo([$rangeOfCases]);
$unassigned->setCasesNumbers([$cases['delegation']->APP_NUMBER]);
// Create new object
$unassigned = new Unassigned();
$unassigned->setUserUid($cases['taskUser']->USR_UID);
$unassigned->setUserId($cases['delegation']->USR_ID);
$unassigned->setCaseUid($cases['delegation']->APP_UID);
// Call to getData method
$res = $unassigned->getData();
// This assert that the expected numbers of results are returned

View File

@@ -547,7 +547,7 @@ class TaskTest extends TestCase
//Gets the result
$printing = ob_get_clean();
//Asserts the result is printing that there is no exisiting records to continue a case in the determined date
$this->assertRegExp('/No existing records to continue a case, on date "' . $date . '/', $printing);
$this->assertRegExp('/There are no records to start new cases, on date "' . $date . '/', $printing);
}
//assert asynchronous for job process
if ($asynchronous === true) {

View File

@@ -988,7 +988,7 @@ class WsBase
G::replaceDataGridField(file_get_contents($fileTemplate), $fieldsCase, false),
$cc,
$bcc,
'',
$template,
$attachment,
'pending',
($showMessage) ? 1 : 0,
@@ -1846,7 +1846,9 @@ class WsBase
ob_start();
print_r($variables);
$cdata = ob_get_contents();
ob_end_clean();
if (ob_get_contents()) {
ob_end_clean();
}
$up_case = $oCase->updateCase($caseId, $oldFields);
$result = new WsResponse(

View File

@@ -1205,8 +1205,8 @@ function WSNewCaseImpersonate ($processId, $userId, $name1, $value1, $name2, $va
* @label WS New Case
* @link http://wiki.processmaker.com/index.php/ProcessMaker_Functions#WSNewCase.28.29
*
* @param string(32) | $processId | Process ID | The unique ID for the process. To use the current process, use the system variable @@PROCESS.
* @param string(32) | $userId | User ID | The unique ID for the user. To use the currently logged-in user, use the system variable @@USER_LOGGED.
* @param string(32) | $processId | Process ID | The unique ID for the process. To use the current process use the system variable @@PROCESS.
* @param string(32) | $taskId | Task ID | The unique ID for the task. To use the current task use the system variable @@TASK.
* @param string(32) | $name1 | Name of the first variable | The name of the first variable to be sent to the created case.
* @param string(32) | $value1 | Value of the first variable | The value of the first variable to be sent to the created case.
* @param string(32) | $name2 | Name of the second variable | The name of the second variable to be sent to the created case.
@@ -2463,7 +2463,7 @@ function jumping ($caseId, $delIndex)
*
* @param string(32) | $PROCESS | Process ID | The unique ID of the process which contains the field.
* @param string(32) | $DYNAFORM_UID | Dynaform ID | The unique ID of the DynaForm where the field is located.
* @param string(32) | $FIELD_NAME | Fiel Name | The field name of the dropdown box, listbox, checkgroup or radiogroup from the specified DynaForm.
* @param string(32) | $FIELD_NAME | Field Name | The field name of the dropdown box, listbox, checkgroup or radiogroup from the specified DynaForm.
* @param string(32) | $FIELD_SELECTED_ID | ID selected | The value (i.e., ID) of the option from the fieldName.
* @return string | $label | Label of the specified option | A string holding the label of the specified option or NULL if the specified option does not exist.
*
@@ -3144,6 +3144,8 @@ function PMFGetProcessUidByName($processName = '')
/**
* @method
* @deprecated Method deprecated in Release 3.6.x
*
* The requested text in the specified language | If not found returns false
* @name PMFGeti18nText
* @label PMF Get i18n Text
@@ -3275,6 +3277,8 @@ function PMFGetTaskName($taskUid, $lang = SYS_LANG) {
/**
* @method
* @deprecated Method deprecated in Release 3.6.x
*
* Return the group title of the specified group uid | If not found returns false
* @name PMFGetGroupName
* @label PMF Get Group Title Text

View File

@@ -1,6 +1,7 @@
<?php
use Illuminate\Filesystem\Filesystem;
use Illuminate\Support\Facades\Log;
use ProcessMaker\Core\System;
use ProcessMaker\PDF\TCPDFHeaderFooter;
@@ -964,10 +965,16 @@ class OutputDocument extends BaseOutputDocument
}
// Fix the HTML using DOMDocument class
libxml_use_internal_errors(true);
$doc = new DOMDocument('1.0', 'UTF-8');
if ($content != '') {
$doc->loadHtml($content);
foreach (libxml_get_errors() as $error) {
$detail = (array) $error;
Log::channel(':OutputDocument::generateTcpdf')->warning('DOMDocument::loadHtml', Bootstrap::context($detail));
}
}
libxml_clear_errors();
// Add a page and put the HTML fixed
$pdf->AddPage();

View File

@@ -289,92 +289,101 @@ class Users extends BaseUsers
/**
* Get all information about the user
*
* @param string $userUid
*
* @return array $arrayData
* @throws Exception
*/
public function getAllInformation ($userUid)
public function getAllInformation($userUid)
{
if (!isset($userUid) || empty($userUid)) {
throw (new Exception('$userUid is empty.'));
throw new Exception('$userUid is empty.');
}
if (RBAC::isGuestUserUid($userUid)) {
throw new Exception(G::LoadTranslation("ID_USER_CAN_NOT_UPDATE", array($userUid)));
throw new Exception(G::LoadTranslation("ID_USER_CAN_NOT_UPDATE", [$userUid]));
return false;
}
try {
$aFields = $this->load( $userUid );
$fields = $this->load($userUid);
$c = new Criteria( "workflow" );
$c->add( IsoCountryPeer::IC_UID, $aFields["USR_COUNTRY"] );
$rs = IsoCountryPeer::doSelectRS( $c );
$rs->setFetchmode( ResultSet::FETCHMODE_ASSOC );
$rs->next();
$rowC = $rs->getRow();
$c->clearSelectColumns();
$c->add( IsoSubdivisionPeer::IC_UID, $aFields["USR_COUNTRY"] );
$c->add( IsoSubdivisionPeer::IS_UID, $aFields["USR_CITY"] );
$rs = IsoSubdivisionPeer::doSelectRS( $c );
$rs->setFetchmode( ResultSet::FETCHMODE_ASSOC );
$rs->next();
$rowS = $rs->getRow();
$c->clearSelectColumns();
$c->add( IsoLocationPeer::IC_UID, $aFields["USR_COUNTRY"] );
$c->add( IsoLocationPeer::IL_UID, $aFields["USR_LOCATION"] );
$rs = IsoLocationPeer::doSelectRS( $c );
$rs->setFetchmode( ResultSet::FETCHMODE_ASSOC );
$rs->next();
$rowL = $rs->getRow();
$rowC = [];
if (!empty($fields["USR_COUNTRY"])) {
$c->add(IsoCountryPeer::IC_UID, $fields["USR_COUNTRY"]);
$rs = IsoCountryPeer::doSelectRS($c);
$rs->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$rs->next();
$rowC = $rs->getRow();
}
$rowS = [];
if (!empty($fields["USR_CITY"])) {
$c->clearSelectColumns();
$c->add(IsoSubdivisionPeer::IC_UID, $fields["USR_COUNTRY"]);
$c->add(IsoSubdivisionPeer::IS_UID, $fields["USR_CITY"]);
$rs = IsoSubdivisionPeer::doSelectRS($c);
$rs->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$rs->next();
$rowS = $rs->getRow();
}
$rowL = [];
if (!empty($fields["USR_LOCATION"])) {
$c->clearSelectColumns();
$c->add(IsoLocationPeer::IC_UID, $fields["USR_COUNTRY"]);
$c->add(IsoLocationPeer::IL_UID, $fields["USR_LOCATION"]);
$rs = IsoLocationPeer::doSelectRS($c);
$rs->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$rs->next();
$rowL = $rs->getRow();
}
//Calendar
$calendar = new Calendar();
$calendarInfo = $calendar->getCalendarFor( $userUid, $userUid, $userUid );
$aFields["USR_CALENDAR"] = ($calendarInfo["CALENDAR_APPLIED"] != "DEFAULT") ? $calendarInfo["CALENDAR_UID"] : "";
$calendarInfo = $calendar->getCalendarFor($userUid, $userUid, $userUid);
$fields["USR_CALENDAR"] = ($calendarInfo["CALENDAR_APPLIED"] != "DEFAULT") ? $calendarInfo["CALENDAR_UID"] : "";
//Photo
$pathPhoto = PATH_IMAGES_ENVIRONMENT_USERS . $userUid . ".gif";
if (! file_exists( $pathPhoto )) {
if (!file_exists($pathPhoto)) {
$pathPhoto = PATH_HOME . "public_html" . PATH_SEP . "images" . PATH_SEP . "user.gif";
}
//Data
$arrayData = array ();
$arrayData["username"] = $aFields["USR_USERNAME"];
$arrayData["firstname"] = $aFields["USR_FIRSTNAME"];
$arrayData["lastname"] = $aFields["USR_LASTNAME"];
$arrayData["mail"] = $aFields["USR_EMAIL"];
$arrayData["address"] = $aFields["USR_ADDRESS"];
$arrayData["zipcode"] = $aFields["USR_ZIP_CODE"];
$arrayData["country"] = $rowC["IC_NAME"];
$arrayData["state"] = $rowS["IS_NAME"];
$arrayData["location"] = $rowL["IL_NAME"];
$arrayData["phone"] = $aFields["USR_PHONE"];
$arrayData["fax"] = $aFields["USR_FAX"];
$arrayData["cellular"] = $aFields["USR_CELLULAR"];
$arrayData["birthday"] = $aFields["USR_BIRTHDAY"];
$arrayData["position"] = $aFields["USR_POSITION"];
$arrayData["replacedby"] = $aFields["USR_REPLACED_BY"];
if(strlen($arrayData["replacedby"] != 0)){
$oUser = UsersPeer::retrieveByPK( $arrayData["replacedby"] );
$arrayData = [];
$arrayData["username"] = $fields["USR_USERNAME"];
$arrayData["firstname"] = $fields["USR_FIRSTNAME"];
$arrayData["lastname"] = $fields["USR_LASTNAME"];
$arrayData["mail"] = $fields["USR_EMAIL"];
$arrayData["address"] = $fields["USR_ADDRESS"];
$arrayData["zipcode"] = $fields["USR_ZIP_CODE"];
$arrayData["country"] = !empty($rowC) ? $rowC["IC_NAME"] : '';
$arrayData["state"] = !empty($rowS) ? $rowS["IS_NAME"] : '';
$arrayData["location"] = !empty($rowL) ? $rowL["IL_NAME"]: '';
$arrayData["phone"] = $fields["USR_PHONE"];
$arrayData["fax"] = $fields["USR_FAX"];
$arrayData["cellular"] = $fields["USR_CELLULAR"];
$arrayData["birthday"] = $fields["USR_BIRTHDAY"];
$arrayData["position"] = $fields["USR_POSITION"];
$arrayData["replacedby"] = $fields["USR_REPLACED_BY"];
if(strlen($arrayData["replacedby"] != 0)) {
$oUser = UsersPeer::retrieveByPK($arrayData["replacedby"]);
$arrayData["replacedbyfullname"] = $oUser->getUsrFirstname() . ' ' . $oUser->getUsrLastname();
}
$arrayData["duedate"] = $aFields["USR_DUE_DATE"];
$arrayData["calendar"] = $aFields["USR_CALENDAR"];
if(strlen($aFields["USR_CALENDAR"] != 0)){
$arrayData["calendarname"] = $calendar->calendarName( $aFields["USR_CALENDAR"] );
$arrayData["duedate"] = $fields["USR_DUE_DATE"];
$arrayData["calendar"] = $fields["USR_CALENDAR"];
if(strlen($fields["USR_CALENDAR"] != 0)) {
$arrayData["calendarname"] = $calendar->calendarName($fields["USR_CALENDAR"]);
}
$arrayData["status"] = $aFields["USR_STATUS"];
$arrayData["department"] = $aFields["DEP_UID"];
$arrayData["status"] = $fields["USR_STATUS"];
$arrayData["department"] = $fields["DEP_UID"];
if (strlen($arrayData["department"]) != 0) {
$oDepart = DepartmentPeer::retrieveByPk( $arrayData["department"] );
$oDepart = DepartmentPeer::retrieveByPk($arrayData["department"]);
$arrayData["departmentname"] = $oDepart->getDepTitle();
}
$arrayData["reportsto"] = $aFields["USR_REPORTS_TO"];
$arrayData["userexperience"] = $aFields["USR_UX"];
$arrayData["reportsto"] = $fields["USR_REPORTS_TO"];
$arrayData["userexperience"] = $fields["USR_UX"];
$arrayData["photo"] = $pathPhoto;
return $arrayData;

File diff suppressed because one or more lines are too long

View File

@@ -7598,8 +7598,8 @@ msgstr "Insert data..."
# TRANSLATION
# LABEL/ID_EMAIL_SERVER_IS_DEFAULT
#: LABEL/ID_EMAIL_SERVER_IS_DEFAULT
msgid "The email server with {0}: {1} is default."
msgstr "The email server with {0}: {1} is default."
msgid "The email server can't be deleted as it is marked as default."
msgstr "The email server can't be deleted as it is marked as default."
# TRANSLATION
# LABEL/ID_EMAIL_SERVER_NEW
@@ -9158,8 +9158,8 @@ msgstr "Format 24 hrs. (HH:MM)"
# TRANSLATION
# LABEL/ID_FORMS_HTML_CACHE
#: LABEL/ID_FORMS_HTML_CACHE
msgid "Forms Html templates cache"
msgstr "Forms Html templates cache"
msgid "Forms HTML templates cache"
msgstr "Forms HTML templates cache"
# TRANSLATION
# LABEL/ID_FORMS_METADATA_CACHE
@@ -20768,8 +20768,8 @@ msgstr "There are no older session files"
# TRANSLATION
# LABEL/ID_NO_PERMISSION_NO_PARTICIPATED
#: LABEL/ID_NO_PERMISSION_NO_PARTICIPATED
msgid "You cannot open this case because on the reason below: <br> You do not have permission to see this case. <br> You have not participated in this case. <br> Case is already claimed."
msgstr "You cannot open this case because on the reason below: <br> You do not have permission to see this case. <br> You have not participated in this case. <br> Case is already claimed."
msgid "You cannot open this case because of one of the following reasons: <br> You do not have permission to see this case. <br> You have not participated in this case. <br> Case is already claimed."
msgstr "You cannot open this case because of one of the following reasons: <br> You do not have permission to see this case. <br> You have not participated in this case. <br> Case is already claimed."
# TRANSLATION
# LABEL/ID_NO_PERMISSION_NO_PARTICIPATED_CASES
@@ -20804,8 +20804,8 @@ msgstr "No records found"
# TRANSLATION
# LABEL/ID_NO_RELATED_PROCESS
#: LABEL/ID_NO_RELATED_PROCESS
msgid "The related process does not exists"
msgstr "The related process does not exists"
msgid "The related process does not exist"
msgstr "The related process does not exist"
# TRANSLATION
# LABEL/ID_NO_REPORT_TABLE
@@ -21194,8 +21194,8 @@ msgstr "Invalid extension"
# TRANSLATION
# LABEL/ID_OUTPUT_DOCUMENT_ITS_ASSIGNED
#: LABEL/ID_OUTPUT_DOCUMENT_ITS_ASSIGNED
msgid "The Output Document with {0}: {1} it's assigned in \"{2}\"."
msgstr "The Output Document with {0}: {1} it's assigned in \"{2}\"."
msgid "The Output Document with {0}: {1} is assigned in \"{2}\"."
msgstr "The Output Document with {0}: {1} is assigned in \"{2}\"."
# TRANSLATION
# LABEL/ID_OUTPUT_DOCUMENT_TEMPLATE
@@ -21284,8 +21284,8 @@ msgstr "The report table '{0}' that you want to import is related to other proce
# TRANSLATION
# LABEL/ID_OVERWRITE_RPTABLE
#: LABEL/ID_OVERWRITE_RPTABLE
msgid "The report table '{0}' already exist, what do you want to do?"
msgstr "The report table '{0}' already exist, what do you want to do?"
msgid "The report table '{0}' already exists. What do you want to do?"
msgstr "The report table '{0}' already exists. What do you want to do?"
# TRANSLATION
# LABEL/ID_OVER_DUE
@@ -21830,8 +21830,8 @@ msgstr "Plugins Manager"
# TRANSLATION
# LABEL/ID_PLUGIN_CANT_DELETE
#: LABEL/ID_PLUGIN_CANT_DELETE
msgid "The plugin is activated, please deactivate first to remove it."
msgstr "The plugin is activated, please deactivate first to remove it."
msgid "The plugin is activated. Please deactivate it first before deleting it."
msgstr "The plugin is activated. Please deactivate it first before deleting it."
# TRANSLATION
# LABEL/ID_PLUGIN_DEPENDENCE_PLUGIN
@@ -21848,8 +21848,8 @@ msgstr "Plugin file"
# TRANSLATION
# LABEL/ID_PMDRIVE_DISABLE
#: LABEL/ID_PMDRIVE_DISABLE
msgid "Are you sure to disable the Google Drive Integration? If you do this, the input, output and file documents will be stored only in your ProcessMaker server."
msgstr "Are you sure to disable the Google Drive Integration? If you do this, the input, output and file documents will be stored only in your ProcessMaker server."
msgid "Are you sure that you want to disable Google Drive Integration? If you do this, the Input and Output Documents and attached files will only be stored in your ProcessMaker server."
msgstr "Are you sure that you want to disable Google Drive Integration? If you do this, the Input and Output Documents and attached files will only be stored in your ProcessMaker server."
# TRANSLATION
# LABEL/ID_PMDRIVE_NO_CONTENT_IN_FILE
@@ -21866,8 +21866,8 @@ msgstr "PM Gmail"
# TRANSLATION
# LABEL/ID_PMGMAIL_DISABLE
#: LABEL/ID_PMGMAIL_DISABLE
msgid "Are you sure to disable the Gmail Integration? If you do this, all the mails and relabelling sent to Gmail will be disabled."
msgstr "Are you sure to disable the Gmail Integration? If you do this, all the mails and relabelling sent to Gmail will be disabled."
msgid "Are you sure that you want to disable Gmail Integration? If you do this, all the mails and relabelling sent to Gmail will be disabled."
msgstr "Are you sure that you want to disable Gmail Integration? If you do this, all the mails and relabelling sent to Gmail will be disabled."
# TRANSLATION
# LABEL/ID_PMGMAIL_GENERAL_ERROR
@@ -21908,8 +21908,8 @@ msgstr "Please select a json file to upload"
# TRANSLATION
# LABEL/ID_PMG_TYPE_ACCEPT
#: LABEL/ID_PMG_TYPE_ACCEPT
msgid "Only accepts files in format json"
msgstr "Only accepts files in format json"
msgid "Only accepts files in JSON format"
msgstr "Only accepts files in JSON format"
# TRANSLATION
# LABEL/ID_PMPLUGIN_IMPORT_PLUGIN_IS_ENTERPRISE
@@ -21962,14 +21962,14 @@ msgstr "Please set a field size for:"
# TRANSLATION
# LABEL/ID_PMTABLES_ALERT6
#: LABEL/ID_PMTABLES_ALERT6
msgid "At least one column must be set as Primary Key."
msgstr "At least one column must be set as Primary Key."
msgid "At least one column must be set as a Primary Key."
msgstr "At least one column must be set as a Primary Key."
# TRANSLATION
# LABEL/ID_PMTABLES_ALERT7
#: LABEL/ID_PMTABLES_ALERT7
msgid "Please set columns for this Report Table."
msgstr "Please set columns for this Report Table."
msgid "Please set the columns for this Report Table."
msgstr "Please set the columns for this Report Table."
# TRANSLATION
# LABEL/ID_PMTABLES_ALERT8
@@ -21992,8 +21992,8 @@ msgstr "From each table select at least one Schema/Data to export."
# TRANSLATION
# LABEL/ID_PMTABLES_RESERVED_FIELDNAME_WARNING
#: LABEL/ID_PMTABLES_RESERVED_FIELDNAME_WARNING
msgid "The word {0} is reserved by the database engine please set another one."
msgstr "The word {0} is reserved by the database engine please set another one."
msgid "The word {0} is reserved by the database engine. Please use a different word."
msgstr "The word {0} is reserved by the database engine. Please use a different word."
# TRANSLATION
# LABEL/ID_PMTABLE_ALREADY_EXISTS
@@ -22010,8 +22010,8 @@ msgstr "ERROR: The class fie \"{0}\" doesn't exist!"
# TRANSLATION
# LABEL/ID_PMTABLE_DATA_EXISTS_WARNINIG
#: LABEL/ID_PMTABLE_DATA_EXISTS_WARNINIG
msgid "record(s) were found in this table. If you edit the structure all data will be lost."
msgstr "record(s) were found in this table. If you edit the structure all data will be lost."
msgid "record(s) were found in this table. If you edit the structure, all data will be lost."
msgstr "record(s) were found in this table. If you edit the structure, all data will be lost."
# TRANSLATION
# LABEL/ID_PMTABLE_DATA_KEEP
@@ -22058,8 +22058,8 @@ msgstr "There is a conflict with some field names: \"{0}\", please rename them a
# TRANSLATION
# LABEL/ID_PMTABLE_INVALID_FILE
#: LABEL/ID_PMTABLE_INVALID_FILE
msgid "Invalid PM table(s) file, import aborted!"
msgstr "Invalid PM table(s) file, import aborted!"
msgid "Invalid PM table(s) file. Import aborted!"
msgstr "Invalid PM table(s) file. Import aborted!"
# TRANSLATION
# LABEL/ID_PMTABLE_INVALID_NAME
@@ -22076,8 +22076,8 @@ msgstr "The PM Table associated with this DynaForm could not be found."
# TRANSLATION
# LABEL/ID_PMTABLE_NOT_FOUNDED_SAVED_DATA
#: LABEL/ID_PMTABLE_NOT_FOUNDED_SAVED_DATA
msgid "The data from this case was saved in the database, but it was not saved in the PM Table, which it couldn't be found."
msgstr "The data from this case was saved in the database, but it was not saved in the PM Table, which it couldn't be found."
msgid "The data from this case was saved in the database, but it was not saved in the PM Table, because it couldn't be found."
msgstr "The data from this case was saved in the database, but it was not saved in the PM Table, because it couldn't be found."
# TRANSLATION
# LABEL/ID_PMTABLE_NOT_HAVE_ALL_CASELIST_FIELDS_WOULD_YOU_LIKE_CONTINUE
@@ -22532,8 +22532,8 @@ msgstr "However, ProcessMaker still operates if your settings do not match the r
# TRANSLATION
# LABEL/ID_PROCESSMAKER_REQUIREMENTS_DESCRIPTION_STEP3_1
#: LABEL/ID_PROCESSMAKER_REQUIREMENTS_DESCRIPTION_STEP3_1
msgid "In order for ProcessMaker to function correctly it needs to be able to access or write to certain files or directories."
msgstr "In order for ProcessMaker to function correctly it needs to be able to access or write to certain files or directories."
msgid "In order for ProcessMaker to function correctly, it needs to be able to access or write to certain files or directories."
msgstr "In order for ProcessMaker to function correctly, it needs to be able to access or write to certain files or directories."
# TRANSLATION
# LABEL/ID_PROCESSMAKER_REQUIREMENTS_DESCRIPTION_STEP3_2
@@ -22652,8 +22652,8 @@ msgstr "ProcessMaker was successfully installed<br/>Workspace <b>\" {0} \" </b>
# TRANSLATION
# LABEL/ID_PROCESSMAKER_UI_NOT_INSTALL
#: LABEL/ID_PROCESSMAKER_UI_NOT_INSTALL
msgid "The new ProcessMaker UI couldn't be applied on installation. You can enable it afterwards in ADMIN > Settings > System."
msgstr "The new ProcessMaker UI couldn't be applied on installation. You can enable it afterwards in ADMIN > Settings > System."
msgid "The new ProcessMaker UI couldn't be applied during installation. You can enable it afterwards in ADMIN > Settings > System."
msgstr "The new ProcessMaker UI couldn't be applied during installation. You can enable it afterwards in ADMIN > Settings > System."
# TRANSLATION
# LABEL/ID_PROCESSMAKER_USER_FIELD
@@ -22670,14 +22670,14 @@ msgstr "Please insert a valid processmaker user name and password, in order to a
# TRANSLATION
# LABEL/ID_PROCESSMAKER_WRITE_CONFIG_INDEX
#: LABEL/ID_PROCESSMAKER_WRITE_CONFIG_INDEX
msgid "ProcessMaker couldn't write on configuration file: {0}<br/>"
msgstr "ProcessMaker couldn't write on configuration file: {0}<br/>"
msgid "ProcessMaker couldn't write to configuration file: {0}<br/>"
msgstr "ProcessMaker couldn't write to configuration file: {0}<br/>"
# TRANSLATION
# LABEL/ID_PROCESSMAP_CALENDAR_CONFIRM_DELETE
#: LABEL/ID_PROCESSMAP_CALENDAR_CONFIRM_DELETE
msgid "Are you sure you want to delete this calendar?"
msgstr "Are you sure you want to delete this calendar?"
msgid "Are you sure that you want to delete this calendar?"
msgstr "Are you sure that you want to delete this calendar?"
# TRANSLATION
# LABEL/ID_PROCESSMAP_DYNAFORMS
@@ -22754,8 +22754,8 @@ msgstr "The process is already in the System and the value for importOption is n
# TRANSLATION
# LABEL/ID_PROCESS_CANNOT_BE_UPDATED_THERE_ARE_TASKS_WITH_ACTIVE_CASES
#: LABEL/ID_PROCESS_CANNOT_BE_UPDATED_THERE_ARE_TASKS_WITH_ACTIVE_CASES
msgid "The process cannot be updated because there are tasks with active cases which are not presented in the new definition of the process, please verify that there are not active cases in those tasks before trying to import the process again."
msgstr "The process cannot be updated because there are tasks with active cases which are not presented in the new definition of the process, please verify that there are not active cases in those tasks before trying to import the process again."
msgid "The process cannot be updated because there are tasks with active cases which are not present in the new definition of the process. Please verify that there are no active cases in those tasks before trying to import the process again."
msgstr "The process cannot be updated because there are tasks with active cases which are not present in the new definition of the process. Please verify that there are no active cases in those tasks before trying to import the process again."
# TRANSLATION
# LABEL/ID_PROCESS_CANT_DELETE
@@ -22784,8 +22784,8 @@ msgstr "The PROCESS_DEFINITION is required to complete the process."
# TRANSLATION
# LABEL/ID_PROCESS_DEF_PROBLEM
#: LABEL/ID_PROCESS_DEF_PROBLEM
msgid "There is a problem in the process definition and/or an exception error occurred."
msgstr "There is a problem in the process definition and/or an exception error occurred."
msgid "There is a problem in the process definition and/or an exception occurred."
msgstr "There is a problem in the process definition and/or an exception occurred."
# TRANSLATION
# LABEL/ID_PROCESS_DELETE_ALL_LABEL
@@ -22832,8 +22832,8 @@ msgstr "Process File Manager"
# TRANSLATION
# LABEL/ID_PROCESS_GROUP_MERGE_PREEXISTENT
#: LABEL/ID_PROCESS_GROUP_MERGE_PREEXISTENT
msgid "Merge the imported groups, with the preexistent local groups (no changes will be made to the local groups)"
msgstr "Merge the imported groups, with the preexistent local groups (no changes will be made to the local groups)"
msgid "Merge the imported groups with the preexisting groups. (No changes will be made to the preexisting groups)"
msgstr "Merge the imported groups with the preexisting groups. (No changes will be made to the preexisting groups)"
# TRANSLATION
# LABEL/ID_PROCESS_GROUP_RENAME
@@ -22880,8 +22880,8 @@ msgstr "No Category"
# TRANSLATION
# LABEL/ID_PROCESS_NOT_EXIST
#: LABEL/ID_PROCESS_NOT_EXIST
msgid "The report table '{0}' is related to a process not present in the workspace, import the related process first. To relate the report table to other process, open the process in the designer and import from there. The report table can't be imported."
msgstr "The report table '{0}' is related to a process not present in the workspace, import the related process first. To relate the report table to other process, open the process in the designer and import from there. The report table can't be imported."
msgid "The report table '{0}' is related to a process which is not present in the workspace. Import the related process first. To relate the report table to other process, open the process in the designer and import it from there. The report table can't be imported."
msgstr "The report table '{0}' is related to a process which is not present in the workspace. Import the related process first. To relate the report table to other process, open the process in the designer and import it from there. The report table can't be imported."
# TRANSLATION
# LABEL/ID_PROCESS_NO_CATEGORY
@@ -25202,8 +25202,8 @@ msgstr "Site"
# TRANSLATION
# LABEL/ID_SITE_CREATING
#: LABEL/ID_SITE_CREATING
msgid "site creating..."
msgstr "site creating..."
msgid "Creating site..."
msgstr "Creating site..."
# TRANSLATION
# LABEL/ID_SIZE
@@ -28850,8 +28850,8 @@ msgstr "Well Done!"
# TRANSLATION
# LABEL/ID_WEN
#: LABEL/ID_WEN
msgid "Wen"
msgstr "Wen"
msgid "Wed"
msgstr "Wed"
# TRANSLATION
# LABEL/ID_WESTPANEL
@@ -29558,8 +29558,8 @@ msgstr "Do you want open the new site?"
# TRANSLATION
# LABEL/NEW_SITE_SUCCESS_CONFIRMNOTE
#: LABEL/NEW_SITE_SUCCESS_CONFIRMNOTE
msgid "Note.- If you open the new site your current session will be closed."
msgstr "Note.- If you open the new site your current session will be closed."
msgid "Note.- If you open the new site, your current session will be closed."
msgstr "Note.- If you open the new site, your current session will be closed."
# TRANSLATION
# LABEL/OPEN_NEW_WS
@@ -52998,8 +52998,8 @@ msgstr "ProcessMaker plugins"
# TRANSLATION
# LABEL/ID_TASK_SCHEDULER_PM_PLUGINS_DESC
#: LABEL/ID_TASK_SCHEDULER_PM_PLUGINS_DESC
msgid "Custom plugins execution"
msgstr "Custom plugins execution"
msgid "ProcessMaker plugins"
msgstr "ProcessMaker plugins"
# TRANSLATION
# LABEL/ID_TASK_SCHEDULER_CASE_EMAILS

View File

@@ -954,7 +954,9 @@ class pmTablesProxy extends HttpProxyController
}
//ob_end_clean is used to close the ob_start opening at the beginning of this method.
ob_end_clean();
if (ob_get_contents()) {
ob_end_clean();
}
return $result;
}

View File

@@ -58105,7 +58105,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_EMAIL_SERVER_EDIT','en','Edit Email Server','2014-12-24') ,
( 'LABEL','ID_EMAIL_SERVER_FROM_MAIL_EMPTY','en','The email has not been sent because configuration email in the Email Server Settings (admin/settings/email) is empty. Please fill this information.','2016-03-13') ,
( 'LABEL','ID_EMAIL_SERVER_INSERT_DATA','en','Insert data...','2014-12-24') ,
( 'LABEL','ID_EMAIL_SERVER_IS_DEFAULT','en','The email server with {0}: {1} is default.','2014-12-24') ,
( 'LABEL','ID_EMAIL_SERVER_IS_DEFAULT','en','The email server can''t be deleted as it is marked as default.','2022-02-02') ,
( 'LABEL','ID_EMAIL_SERVER_NEW','en','New Email Server','2014-12-24') ,
( 'LABEL','ID_EMAIL_SERVER_PORT','en','Port','2014-12-24') ,
( 'LABEL','ID_EMAIL_SERVER_RESULT_TESTING','en','Result Testing Email Server','2014-12-24') ,
@@ -58379,7 +58379,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_FORGOT_PASSWORD_Q','en','Forgot Password?','2014-01-15') ,
( 'LABEL','ID_FORMAT','en','Format','2014-01-15') ,
( 'LABEL','ID_FORMAT_24_HOURS','en','Format 24 hrs. (HH:MM)','2014-10-30') ,
( 'LABEL','ID_FORMS_HTML_CACHE','en','Forms Html templates cache','2014-01-15') ,
( 'LABEL','ID_FORMS_HTML_CACHE','en','Forms HTML templates cache','2014-01-15') ,
( 'LABEL','ID_FORMS_METADATA_CACHE','en','Forms metadata cache','2014-01-15') ,
( 'LABEL','ID_FRI','en','Fri','2014-01-15') ,
( 'LABEL','ID_FROM','en','From','2014-01-15') ,
@@ -60365,13 +60365,13 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_NO_MORE_INFORMATION','en','No more information to Load','2020-08-31') ,
( 'LABEL','ID_NO_NEW_VERSIONS','en','No new versions available','2014-09-18') ,
( 'LABEL','ID_NO_OLDER_SESSION_FILES','en','There are no older session files','2014-01-15') ,
( 'LABEL','ID_NO_PERMISSION_NO_PARTICIPATED','en','You cannot open this case because on the reason below: <br> You do not have permission to see this case. <br> You have not participated in this case. <br> Case is already claimed.','2017-06-05') ,
( 'LABEL','ID_NO_PERMISSION_NO_PARTICIPATED','en','You cannot open this case because of one of the following reasons: <br> You do not have permission to see this case. <br> You have not participated in this case. <br> Case is already claimed.','2017-06-05') ,
( 'LABEL','ID_NO_PERMISSION_NO_PARTICIPATED_CASES','en','You do not have permission to see this case or you have not participated in it.','2021-10-04') ,
( 'LABEL','ID_NO_PREVIOUS_USR_UID','en','The previous task doesn''t have any users.','2017-10-18') ,
( 'LABEL','ID_NO_REASSIGN','en','Do not reassign','2014-01-15') ,
( 'LABEL','ID_NO_RECORDS','en','No records','2014-01-15') ,
( 'LABEL','ID_NO_RECORDS_FOUND','en','No records found','2014-01-15') ,
( 'LABEL','ID_NO_RELATED_PROCESS','en','The related process does not exists','2015-05-25') ,
( 'LABEL','ID_NO_RELATED_PROCESS','en','The related process does not exist','2015-05-25') ,
( 'LABEL','ID_NO_REPORT_TABLE','en','The table ''{0}'' that you trying to import is not a report table.','2016-03-01') ,
( 'LABEL','ID_NO_RESUME','en','The user doesn''t have a resume.','2014-01-15') ,
( 'LABEL','ID_NO_SELECTED_FIELDS','en','No selected fields','2014-01-15') ,
@@ -60439,7 +60439,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_OUTPUT_DOCUMENT_CONFIG_NOT_SUPPORT_EXTENSION','en','The document in its configuration does not support this extension','2016-07-21') ,
( 'LABEL','ID_OUTPUT_DOCUMENT_DOES_NOT_EXIST','en','The Output Document with {0}: {1} does not exist.','2014-05-20') ,
( 'LABEL','ID_OUTPUT_DOCUMENT_INVALID_EXTENSION','en','Invalid extension','2016-07-21') ,
( 'LABEL','ID_OUTPUT_DOCUMENT_ITS_ASSIGNED','en','The Output Document with {0}: {1} it''s assigned in "{2}".','2014-07-01') ,
( 'LABEL','ID_OUTPUT_DOCUMENT_ITS_ASSIGNED','en','The Output Document with {0}: {1} is assigned in "{2}".','2014-07-01') ,
( 'LABEL','ID_OUTPUT_DOCUMENT_TEMPLATE','en','Output Document Template','2014-01-15') ,
( 'LABEL','ID_OUTPUT_GENERATE','en','Output Document to Generate','2014-01-15') ,
( 'LABEL','ID_OUTPUT_INFO','en','Output Document Information','2014-01-15') ,
@@ -60454,7 +60454,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_OVERWRITE_EXIST','en','Overwrite if exists?','2014-01-15') ,
( 'LABEL','ID_OVERWRITE_PMTABLE','en','The PMTable ''{0}'' already exists in the workspace, what do you want to do?','2016-03-08') ,
( 'LABEL','ID_OVERWRITE_RELATED_PROCESS','en','The report table ''{0}'' that you want to import is related to other process, what do you want to do?','2016-03-08') ,
( 'LABEL','ID_OVERWRITE_RPTABLE','en','The report table ''{0}'' already exist, what do you want to do?','2016-03-08') ,
( 'LABEL','ID_OVERWRITE_RPTABLE','en','The report table ''{0}'' already exists. What do you want to do?','2016-03-08') ,
( 'LABEL','ID_OVER_DUE','en','Inbox Status','2015-05-06') ,
( 'LABEL','ID_OWNER','en','Owner','2014-01-15') ,
( 'LABEL','ID_OWNER_INFORMATION','en','Owner Information','2015-03-09') ,
@@ -60548,20 +60548,20 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_PLUGINS','en','Plugins','2014-01-15') ,
( 'LABEL','ID_PLUGINS_DIRECTORY','en','Plugins Directory','2014-01-15') ,
( 'LABEL','ID_PLUGINS_MANAGER','en','Plugins Manager','2014-01-15') ,
( 'LABEL','ID_PLUGIN_CANT_DELETE','en','The plugin is activated, please deactivate first to remove it.','2014-01-15') ,
( 'LABEL','ID_PLUGIN_CANT_DELETE','en','The plugin is activated. Please deactivate it first before deleting it.','2014-01-15') ,
( 'LABEL','ID_PLUGIN_DEPENDENCE_PLUGIN','en','This plugin needs "{Dependence}" plugin','2014-01-15') ,
( 'LABEL','ID_PLUGIN_FILE','en','Plugin file','2014-09-18') ,
( 'LABEL','ID_PMDRIVE_DISABLE','en','Are you sure to disable the Google Drive Integration? If you do this, the input, output and file documents will be stored only in your ProcessMaker server.','2017-02-21') ,
( 'LABEL','ID_PMDRIVE_DISABLE','en','Are you sure that you want to disable Google Drive Integration? If you do this, the Input and Output Documents and attached files will only be stored in your ProcessMaker server.','2017-02-21') ,
( 'LABEL','ID_PMDRIVE_NO_CONTENT_IN_FILE','en','The file doesn''t have any content stored on Drive.','2015-12-09') ,
( 'LABEL','ID_PMGMAIL','en','PM Gmail','2015-07-27') ,
( 'LABEL','ID_PMGMAIL_DISABLE','en','Are you sure to disable the Gmail Integration? If you do this, all the mails and relabelling sent to Gmail will be disabled.','2016-01-05') ,
( 'LABEL','ID_PMGMAIL_DISABLE','en','Are you sure that you want to disable Gmail Integration? If you do this, all the mails and relabelling sent to Gmail will be disabled.','2016-01-05') ,
( 'LABEL','ID_PMGMAIL_GENERAL_ERROR','en','An error in processing Gmail requests occurred','2015-12-09') ,
( 'LABEL','ID_PMGMAIL_SETTINGS','en','Settings for Processmaker Gmail','2015-07-27') ,
( 'LABEL','ID_PMGMAIL_VALID','en','The Gmail token is not valid.','2015-09-11') ,
( 'LABEL','ID_PMG_EMAIL','en','Service Account Email','2015-07-27') ,
( 'LABEL','ID_PMG_FILE','en','Service Account Certificate','2015-12-09') ,
( 'LABEL','ID_PMG_SELECT_FILE','en','Please select a json file to upload','2016-01-05') ,
( 'LABEL','ID_PMG_TYPE_ACCEPT','en','Only accepts files in format json','2016-01-04') ,
( 'LABEL','ID_PMG_TYPE_ACCEPT','en','Only accepts files in JSON format','2016-01-04') ,
( 'LABEL','ID_PMPLUGIN_IMPORT_PLUGIN_IS_ENTERPRISE','en','The plugin "{0}" is a Enterprise Edition Plugin, please install the Enterprise Plugins Manager to use this plugin','2016-07-14') ,
( 'LABEL','ID_PMTABLE','en','PM Table','2014-01-15') ,
( 'LABEL','ID_PMTABLES','en','PM Tables','2014-01-15') ,
@@ -60570,15 +60570,15 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_PMTABLES_ALERT3','en','Field Label for all columns is required.','2014-01-15') ,
( 'LABEL','ID_PMTABLES_ALERT4','en','Please set a field type for','2014-01-15') ,
( 'LABEL','ID_PMTABLES_ALERT5','en','Please set a field size for:','2014-01-15') ,
( 'LABEL','ID_PMTABLES_ALERT6','en','At least one column must be set as Primary Key.','2014-10-21') ,
( 'LABEL','ID_PMTABLES_ALERT7','en','Please set columns for this Report Table.','2014-10-21') ,
( 'LABEL','ID_PMTABLES_ALERT6','en','At least one column must be set as a Primary Key.','2014-10-21') ,
( 'LABEL','ID_PMTABLES_ALERT7','en','Please set the columns for this Report Table.','2014-10-21') ,
( 'LABEL','ID_PMTABLES_ALERT8','en','Set a Physical Field Name for:','2014-10-21') ,
( 'LABEL','ID_PMTABLES_CANT_EXPORT','en','There are no tables to export.','2014-10-22') ,
( 'LABEL','ID_PMTABLES_NOTICE_EXPORT','en','From each table select at least one Schema/Data to export.','2014-10-21') ,
( 'LABEL','ID_PMTABLES_RESERVED_FIELDNAME_WARNING','en','The word {0} is reserved by the database engine please set another one.','2014-01-15') ,
( 'LABEL','ID_PMTABLES_RESERVED_FIELDNAME_WARNING','en','The word {0} is reserved by the database engine. Please use a different word.','2014-01-15') ,
( 'LABEL','ID_PMTABLE_ALREADY_EXISTS','en','The table "{0}" already exits!','2014-01-15') ,
( 'LABEL','ID_PMTABLE_CLASS_DOESNT_EXIST','en','ERROR: The class fie "{0}" doesn''t exist!','2014-01-15') ,
( 'LABEL','ID_PMTABLE_DATA_EXISTS_WARNINIG','en','record(s) were found in this table. If you edit the structure all data will be lost.','2014-10-21') ,
( 'LABEL','ID_PMTABLE_DATA_EXISTS_WARNINIG','en','record(s) were found in this table. If you edit the structure, all data will be lost.','2014-10-21') ,
( 'LABEL','ID_PMTABLE_DATA_KEEP','en','Keep the records of the table','2014-01-15') ,
( 'LABEL','ID_PMTABLE_DOES_NOT_EXIST','en','The PM Table with {0}: {1} does not exist.','2014-05-20') ,
( 'LABEL','ID_PMTABLE_FIELD_IS_NOT_PRIMARY_KEY','en','The field {0}: {1}, is not a primary key field of the PM Table.','2014-05-20') ,
@@ -60586,10 +60586,10 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_PMTABLE_IMPORT_WITH_ERRORS','en','File "{0}" imported but with errors:','2016-02-18') ,
( 'LABEL','ID_PMTABLE_INVALID_FIELD_NAME','en','The following fields cannot be created because they contain the reserved words "{0}"','2014-10-21') ,
( 'LABEL','ID_PMTABLE_INVALID_FIELD_NAME_VARIABLE','en','There is a conflict with some field names: "{0}", please rename them avoiding the use of numbers and considering that underscores are ignored when validating unique field names.','2018-04-03') ,
( 'LABEL','ID_PMTABLE_INVALID_FILE','en','Invalid PM table(s) file, import aborted!','2014-01-15') ,
( 'LABEL','ID_PMTABLE_INVALID_FILE','en','Invalid PM table(s) file. Import aborted!','2014-01-15') ,
( 'LABEL','ID_PMTABLE_INVALID_NAME','en','Could not create the table with the name "{0}" because it is a reserved word.','2014-01-15') ,
( 'LABEL','ID_PMTABLE_NOT_FOUND','en','The PM Table associated with this DynaForm could not be found.','2014-11-12') ,
( 'LABEL','ID_PMTABLE_NOT_FOUNDED_SAVED_DATA','en','The data from this case was saved in the database, but it was not saved in the PM Table, which it couldn''t be found.','2014-11-12') ,
( 'LABEL','ID_PMTABLE_NOT_FOUNDED_SAVED_DATA','en','The data from this case was saved in the database, but it was not saved in the PM Table, because it couldn''t be found.','2014-11-12') ,
( 'LABEL','ID_PMTABLE_NOT_HAVE_ALL_CASELIST_FIELDS_WOULD_YOU_LIKE_CONTINUE','en','The PM Table {0} does not have all the Custom Case List fields for file {1}. Would you like continue?','2014-11-12') ,
( 'LABEL','ID_PMTABLE_NOT_IMPORT_HAS_ERRORS','en','File "{0}" was not imported has errors:','2016-02-18') ,
( 'LABEL','ID_PMTABLE_PRIMARY_KEY_FIELD_IS_MISSING_IN_ATTRIBUTE','en','The primary key field {0} of the PM Table is missing in the attribute {1}.','2014-05-20') ,
@@ -60667,7 +60667,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_PROCESSMAKER_REQUIREMENTS_DESCRIPTION_STEP1_2','en','Failure to do so could lead your ProcessMaker installation not functioning correctly.','2015-01-16') ,
( 'LABEL','ID_PROCESSMAKER_REQUIREMENTS_DESCRIPTION_STEP2_1','en','These settings are recommended for PHP in order to ensure full compatibility with ProcessMaker.','2014-01-15') ,
( 'LABEL','ID_PROCESSMAKER_REQUIREMENTS_DESCRIPTION_STEP2_2','en','However, ProcessMaker still operates if your settings do not match the recommended.','2015-01-16') ,
( 'LABEL','ID_PROCESSMAKER_REQUIREMENTS_DESCRIPTION_STEP3_1','en','In order for ProcessMaker to function correctly it needs to be able to access or write to certain files or directories.','2014-01-15') ,
( 'LABEL','ID_PROCESSMAKER_REQUIREMENTS_DESCRIPTION_STEP3_1','en','In order for ProcessMaker to function correctly, it needs to be able to access or write to certain files or directories.','2014-01-15') ,
( 'LABEL','ID_PROCESSMAKER_REQUIREMENTS_DESCRIPTION_STEP3_2','en','If you see <font color="red">"unwritable"</font>, change the permissions on the file or directory to allow ProcessMaker to write to it.','2015-01-16') ,
( 'LABEL','ID_PROCESSMAKER_REQUIREMENTS_DESCRIPTION_STEP4_1','en','ProcessMaker stores all of its data in a database. This screen gives the installation program the information needed to create this database.','2014-01-15') ,
( 'LABEL','ID_PROCESSMAKER_REQUIREMENTS_DESCRIPTION_STEP4_2','en','If you are installing ProcessMaker on a remote web server, you will need to get this information from your Database Server.','2014-01-15') ,
@@ -60689,11 +60689,11 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_PROCESSMAKER_REQUIREMENTS_SOAP','en','Soap Support','2014-01-15') ,
( 'LABEL','ID_PROCESSMAKER_SLOGAN1','en','This Business Process is Powered By ProcessMaker','2014-01-15') ,
( 'LABEL','ID_PROCESSMAKER_SUCCESS_INSTALLED','en','ProcessMaker was successfully installed<br/>Workspace <b>" {0} " </b> was installed correctly.','2014-01-15') ,
( 'LABEL','ID_PROCESSMAKER_UI_NOT_INSTALL','en','The new ProcessMaker UI couldn''t be applied on installation. You can enable it afterwards in ADMIN > Settings > System.','2015-01-16') ,
( 'LABEL','ID_PROCESSMAKER_UI_NOT_INSTALL','en','The new ProcessMaker UI couldn''t be applied during installation. You can enable it afterwards in ADMIN > Settings > System.','2015-01-16') ,
( 'LABEL','ID_PROCESSMAKER_USER_FIELD','en','ProcessMaker User Field','2020-12-10') ,
( 'LABEL','ID_PROCESSMAKER_VALIDATION','en','Please insert a valid processmaker user name and password, in order to assign the case to their respective owner.','2014-01-15') ,
( 'LABEL','ID_PROCESSMAKER_WRITE_CONFIG_INDEX','en','ProcessMaker couldn''t write on configuration file: {0}<br/>','2014-01-15') ,
( 'LABEL','ID_PROCESSMAP_CALENDAR_CONFIRM_DELETE','en','Are you sure you want to delete this calendar?','2014-01-15') ,
( 'LABEL','ID_PROCESSMAKER_WRITE_CONFIG_INDEX','en','ProcessMaker couldn''t write to configuration file: {0}<br/>','2014-01-15') ,
( 'LABEL','ID_PROCESSMAP_CALENDAR_CONFIRM_DELETE','en','Are you sure that you want to delete this calendar?','2014-01-15') ,
( 'LABEL','ID_PROCESSMAP_DYNAFORMS','en','DynaForms','2014-01-15') ,
( 'LABEL','ID_PROCESSMAP_EVALUATION','en','Evaluation','2014-01-15') ,
( 'LABEL','ID_PROCESSMAP_MESSAGES','en','Messages','2014-01-15') ,
@@ -60706,12 +60706,12 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_PROCESSNAME_ALREADY_EXISTS','en','The Process Name already exists!','2014-01-15') ,
( 'LABEL','ID_PROCESSTITLE_ALREADY_EXISTS','en','The Process Title "{PRO_TITLE}" already exists!','2014-01-15') ,
( 'LABEL','ID_PROCESS_ALREADY_IN_SYSTEM','en','The process is already in the System and the value for importOption is not specified.','2014-01-15') ,
( 'LABEL','ID_PROCESS_CANNOT_BE_UPDATED_THERE_ARE_TASKS_WITH_ACTIVE_CASES','en','The process cannot be updated because there are tasks with active cases which are not presented in the new definition of the process, please verify that there are not active cases in those tasks before trying to import the process again.','2016-07-15') ,
( 'LABEL','ID_PROCESS_CANNOT_BE_UPDATED_THERE_ARE_TASKS_WITH_ACTIVE_CASES','en','The process cannot be updated because there are tasks with active cases which are not present in the new definition of the process. Please verify that there are no active cases in those tasks before trying to import the process again.','2016-07-15') ,
( 'LABEL','ID_PROCESS_CANT_DELETE','en','You can''t delete the process "{0}" because it has {1} cases.','2014-01-15') ,
( 'LABEL','ID_PROCESS_CATEGORY','en','Process Categories','2014-01-15') ,
( 'LABEL','ID_PROCESS_DEFINITION_INCOMPLETE','en','To create a new process all the process objects must be selected/included in the pmx2 file.','2016-07-05') ,
( 'LABEL','ID_PROCESS_DEFINITION_NON_EXISTENT','en','The PROCESS_DEFINITION is required to complete the process.','2016-03-30') ,
( 'LABEL','ID_PROCESS_DEF_PROBLEM','en','There is a problem in the process definition and/or an exception error occurred.','2014-01-15') ,
( 'LABEL','ID_PROCESS_DEF_PROBLEM','en','There is a problem in the process definition and/or an exception occurred.','2014-01-15') ,
( 'LABEL','ID_PROCESS_DELETE_ALL_LABEL','en','Do you want to delete all selected processes?','2014-01-15') ,
( 'LABEL','ID_PROCESS_DELETE_LABEL','en','Do you want to delete the selected process?','2014-01-15') ,
( 'LABEL','ID_PROCESS_DETAILS','en','Process Details','2014-01-15') ,
@@ -60719,7 +60719,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_PROCESS_EFFICIENCE','en','Process Efficiency Index','2015-04-01') ,
( 'LABEL','ID_PROCESS_EXIST_SOME_GROUP','en','Some of the groups that you are trying to import already exist. Please select one of the following options to continue.','2014-10-21') ,
( 'LABEL','ID_PROCESS_FILE_MANAGER','en','Process File Manager','2014-01-15') ,
( 'LABEL','ID_PROCESS_GROUP_MERGE_PREEXISTENT','en','Merge the imported groups, with the preexistent local groups (no changes will be made to the local groups)','2014-01-15') ,
( 'LABEL','ID_PROCESS_GROUP_MERGE_PREEXISTENT','en','Merge the imported groups with the preexisting groups. (No changes will be made to the preexisting groups)','2014-01-15') ,
( 'LABEL','ID_PROCESS_GROUP_RENAME','en','Rename the imported groups','2014-01-15') ,
( 'LABEL','ID_PROCESS_ID','en','Process ID','2014-01-15') ,
( 'LABEL','ID_PROCESS_INEFFICIENCE','en','Process Inefficiency Cost','2015-04-01') ,
@@ -60728,7 +60728,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_PROCESS_MAP','en','Process Map','2014-01-15') ,
( 'LABEL','ID_PROCESS_NAME','en','Process Name','2020-12-04') ,
( 'LABEL','ID_PROCESS_NOCATEGORY','en','No Category','2014-01-15') ,
( 'LABEL','ID_PROCESS_NOT_EXIST','en','The report table ''{0}'' is related to a process not present in the workspace, import the related process first. To relate the report table to other process, open the process in the designer and import from there. The report table can''t be imported.','2016-03-08') ,
( 'LABEL','ID_PROCESS_NOT_EXIST','en','The report table ''{0}'' is related to a process which is not present in the workspace. Import the related process first. To relate the report table to other process, open the process in the designer and import it from there. The report table can''t be imported.','2016-03-08') ,
( 'LABEL','ID_PROCESS_NO_CATEGORY','en','No Category','2014-01-15') ,
( 'LABEL','ID_PROCESS_NONE_CATEGORY','en','- No Category -','2020-10-23') ,
( 'LABEL','ID_PROCESS_NO_EXIST','en','Process doesn''t exist!','2014-01-15') ,
@@ -61131,7 +61131,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_SITE','en','Site','2014-01-15') ;
INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE ) VALUES
( 'LABEL','ID_SITE_CREATING','en','site creating...','2014-01-15') ,
( 'LABEL','ID_SITE_CREATING','en','Creating site...','2022-01-25') ,
( 'LABEL','ID_SIZE','en','Size','2014-01-15') ,
( 'LABEL','ID_SIZE_IN_BYTES','en','Size in bytes','2014-01-15') ,
( 'LABEL','ID_SIZE_VERY_LARGE_PERMITTED','en','The file is too large . Please upload a smaller file.','2014-10-08') ,
@@ -61346,7 +61346,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_TASK_SCHEDULER_LDAP_DESC','en','Synchronize advance LDAP attributes from their settings','2014-01-15') ,
( 'LABEL','ID_TASK_SCHEDULER_PLUGINS','en','Plugins','2014-01-15') ,
( 'LABEL','ID_TASK_SCHEDULER_PM_PLUGINS','en','ProcessMaker plugins','2014-01-15') ,
( 'LABEL','ID_TASK_SCHEDULER_PM_PLUGINS_DESC','en','Custom plugins execution','2014-01-15') ,
( 'LABEL','ID_TASK_SCHEDULER_PM_PLUGINS_DESC','en','ProcessMaker plugins','2014-01-15') ,
( 'LABEL','ID_TASK_SCHEDULER_PM_SYNC','en','ProcessMaker sync','2014-01-15') ,
( 'LABEL','ID_TASK_SCHEDULER_PM_EVENTS','en','ProcessMaker events','2014-01-15') ,
( 'LABEL','ID_TASK_SCHEDULER_PM_SCHEDULER','en','ProcessMaker scheduler','2014-01-15') ,
@@ -61798,7 +61798,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE ) VALUES
( 'LABEL','ID_WELL_DONE','en','Well Done!','2015-03-30') ,
( 'LABEL','ID_WEN','en','Wen','2014-01-15') ,
( 'LABEL','ID_WEN','en','Wed','2014-01-15') ,
( 'LABEL','ID_WESTPANEL','en','westPanel','2014-01-15') ,
( 'LABEL','ID_WEVE_MADE_IT_EASY_FOR_YOU','en',"We've made it easy for you to make the following requests",'2020-12-04') ,
( 'LABEL','ID_WF_DATABASE_NAME','en','Workflow Database Name','2014-01-15') ,
@@ -61920,7 +61920,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','NEW_SITE_NOT_AVAILABLE','en','Workspace already exists, please choose a different name.','2014-10-30') ,
( 'LABEL','NEW_SITE_SUCCESS','en','Your new site was successfully created with name:','2014-01-15') ,
( 'LABEL','NEW_SITE_SUCCESS_CONFIRM','en','Do you want open the new site?','2014-01-15') ,
( 'LABEL','NEW_SITE_SUCCESS_CONFIRMNOTE','en','Note.- If you open the new site your current session will be closed.','2014-01-15') ,
( 'LABEL','NEW_SITE_SUCCESS_CONFIRMNOTE','en','Note.- If you open the new site, your current session will be closed.','2022-01-25') ,
( 'LABEL','OPEN_NEW_WS','en','Open new site','2014-01-15') ,
( 'LABEL','OUTGOING_PORT_DEFAULT','en','Outgoing Port (default 25)','2018-11-26') ,
( 'LABEL','OUTPUT_CREATE','en','Output document has been created successfully','2014-01-15') ,

View File

@@ -194,6 +194,7 @@ if ($RBAC->userCanAccess('PM_USERS') === 1) {
'',
'users'
);
/*----------------------------------********---------------------------------*/
$G_TMP_MENU->AddIdRawOption(
'USERS_EXTENDED',
'../userExtendedAttributes/index',
@@ -202,6 +203,7 @@ if ($RBAC->userCanAccess('PM_USERS') === 1) {
'',
'users'
);
/*----------------------------------********---------------------------------*/
$G_TMP_MENU->AddIdRawOption(
'GROUPS',
'../groups/groups',
@@ -385,14 +387,19 @@ if ($licenseStatusInfo["message"] != "") {
/*----------------------------------********---------------------------------*/
if ($RBAC->userCanAccess('PM_SETUP') == 1) {
/*----------------------------------********---------------------------------*/
$G_TMP_MENU->AddIdRawOption(
'PMENTERPRISE',
'../enterprise/addonsStore',
G::LoadTranslation('ID_MENU_NAME') . $licStatusMsg,
'',
'',
'plugins'
);
if (
$RBAC->userCanAccess('PM_SETUP_PLUGINS') === 1 &&
$RBAC->userCanAccess('PM_SETUP_ADVANCE') === 1
) {
$G_TMP_MENU->AddIdRawOption(
'PMENTERPRISE',
'../enterprise/addonsStore',
G::LoadTranslation('ID_MENU_NAME') . $licStatusMsg,
'',
'',
'plugins'
);
}
if ($RBAC->userCanAccess('PM_SETUP_CUSTOM_CASES_LIST') == 1) {
$G_TMP_MENU->AddIdRawOption(
'CASES_LIST_SETUP',

View File

@@ -1,5 +1,6 @@
<?php
/*----------------------------------********---------------------------------*/
//Browser Compatibility
$browserSupported = G::checkBrowserCompatibility();
if ($browserSupported==false) {

View File

@@ -43,7 +43,9 @@ switch ($request) {
}
$x = ob_get_contents();
ob_end_clean();
if (ob_get_contents()) {
ob_end_clean();
}
///////
if ($_GET["menu"] == "plugins") {

View File

@@ -3,11 +3,15 @@
namespace ProcessMaker\BusinessModel\Cases;
use ProcessMaker\Model\Consolidated;
use ProcessMaker\Model\Delegation;
class BatchRouting extends AbstractCases
{
// Columns to see in the cases list
public $columnsView = [];
public $columnsView = [
// Columns view in the cases list
'APP_DELEGATION.APP_NUMBER', // Case #
];
/**
* Get the columns related to the cases list
@@ -37,6 +41,8 @@ class BatchRouting extends AbstractCases
*/
public function getData()
{
$query = Delegation::query()->select($this->getColumnsView());
$this->filters($query);
// todo, the list for consolidated cases was not defined for the new HOME
return [];
}

View File

@@ -7,7 +7,10 @@ use ProcessMaker\Model\Delegation;
class Canceled extends AbstractCases
{
// Columns to see in the cases list
public $columnsView = [];
public $columnsView = [
// Columns view in the cases list
'APP_DELEGATION.APP_NUMBER', // Case #
];
/**
* Get the columns related to the cases list
@@ -37,6 +40,8 @@ class Canceled extends AbstractCases
*/
public function getData()
{
$query = Delegation::query()->select($this->getColumnsView());
$this->filters($query);
// todo, the list for canceled cases was not defined
return [];
}

View File

@@ -7,7 +7,10 @@ use ProcessMaker\Model\Delegation;
class Completed extends AbstractCases
{
// Columns to see in the cases list
public $columnsView = [];
public $columnsView = [
// Columns view in the cases list
'APP_DELEGATION.APP_NUMBER', // Case #
];
/**
* Get the columns related to the cases list
@@ -37,6 +40,8 @@ class Completed extends AbstractCases
*/
public function getData()
{
$query = Delegation::query()->select($this->getColumnsView());
$this->filters($query);
// todo, the list for completed cases was defined in participated
return [];
}

View File

@@ -454,34 +454,34 @@ class InputDocument
/**
* Get data of Cases InputDocument
*
* @param string $applicationUid
* @param string $appUid
* @param string $userUid
* @param string $inputDocumentUid
*
* @return array Return an array with data of an InputDocument
* @throws Exception
*/
public function getCasesInputDocument($applicationUid, $userUid, $inputDocumentUid)
public function getCasesInputDocument($appUid, $userUid, $inputDocumentUid)
{
try {
$sApplicationUID = $applicationUid;
$sUserUID = $userUid;
$appUid = $applicationUid;
$oCase = new Cases();
$fields = $oCase->loadCase( $sApplicationUID );
$sProcessUID = $fields['PRO_UID'];
$sTaskUID = '';
$oCaseRest = new BusinessModelCases();
$oCaseRest->getAllUploadedDocumentsCriteria( $sProcessUID, $sApplicationUID, $sTaskUID, $sUserUID );
$result = array ();
$case = new Cases();
$fields = $case->loadCase($appUid);
$proUid = $fields['PRO_UID'];
$taskUid = '';
$caseRest = new BusinessModelCases();
$caseRest->getAllUploadedDocumentsCriteria($proUid, $appUid, $taskUid, $userUid);
$result = [];
global $_DBArray;
$flagInputDocument = false;
foreach ($_DBArray['inputDocuments'] as $key => $row) {
if (isset( $row['DOC_VERSION'] )) {
$docrow = array ();
if (isset($row['DOC_VERSION'])) {
$docrow = [];
$docrow['app_doc_uid'] = $row['APP_DOC_UID'];
$docrow['app_doc_filename'] = $row['APP_DOC_FILENAME'];
$docrow['app_doc_comment'] = $row['APP_DOC_COMMENT'];
$docrow['doc_uid'] = $row['DOC_UID'];
$docrow['app_doc_version'] = $row['DOC_VERSION'];
$docrow['app_doc_create_date'] = $row['CREATE_DATE'];
@@ -506,11 +506,10 @@ class InputDocument
}
if (!$flagInputDocument) {
throw new Exception(G::LoadTranslation("ID_CASES_INPUT_DOES_NOT_EXIST", array($inputDocumentUid)));
throw new Exception(G::LoadTranslation("ID_CASES_INPUT_DOES_NOT_EXIST", [$inputDocumentUid]));
}
$oResponse = json_decode(json_encode($result), false);
return $oResponse;
return json_decode(json_encode($result), false);
} catch (Exception $e) {
throw $e;
}

View File

@@ -692,7 +692,7 @@ class EmailServer
{
try {
if ($this->checkIfIsDefault($emailServerUid)) {
throw new Exception(G::LoadTranslation("ID_EMAIL_SERVER_IS_DEFAULT", array($fieldNameForException, $emailServerUid)));
throw new Exception(G::LoadTranslation("ID_EMAIL_SERVER_IS_DEFAULT"));
}
} catch (Exception $e) {
throw $e;

View File

@@ -474,7 +474,9 @@ class ReportTable
$buildResult = ob_get_contents();
ob_end_clean();
if (ob_get_contents()) {
ob_end_clean();
}
//Updating additional table struture information
$addTabData = [
@@ -572,7 +574,9 @@ class ReportTable
} catch (Exception $e) {
$buildResult = ob_get_contents();
ob_end_clean();
if (ob_get_contents()) {
ob_end_clean();
}
$result->success = false;
@@ -833,7 +837,9 @@ class ReportTable
ob_start();
$pmTable->buildModelFor($dbsUid, $tables);
$buildResult = ob_get_contents();
ob_end_clean();
if (ob_get_contents()) {
ob_end_clean();
}
$errors .= $pmTable->upgradeDatabaseFor($pmTable->getDataSource(), $tables);
}

View File

@@ -379,7 +379,9 @@ class Table
}
$pmTable->build();
$buildResult = ob_get_contents();
ob_end_clean();
if (ob_get_contents()) {
ob_end_clean();
}
unset($buildResult);
// Updating additional table struture information
@@ -586,7 +588,9 @@ class Table
$pmTable->build();
$buildResult = ob_get_contents();
ob_end_clean();
if (ob_get_contents()) {
ob_end_clean();
}
unset($buildResult);
$addTabData = [

View File

@@ -1448,16 +1448,16 @@ class TimerEvent
}
if (!$flagRecord) {
$common->frontEndShow("TEXT", "Not exists any record to start a new case, on date \"$datetime (UTC +00:00)\"");
$common->frontEndShow("TEXT", "There are no records to start new cases, on date \"$datetime (UTC +00:00)\"");
$action = "NO-RECORDS";
$this->log($action, "Not exists any record to start a new case");
$this->log($action, "There are no records to start new cases");
$aInfo = array(
'ip' => \G::getIpAddress()
,'action' => $action
,'timeZone' => $datetime
,'workspace'=> $sysSys
);
$message = 'Not exists any record to start a new case';
$message = 'There are no records to start new cases';
$context = $aInfo;
Log::channel(':TimerEventCron')->info($message, Bootstrap::context($context));
}
@@ -1466,14 +1466,14 @@ class TimerEvent
//Intermediate Catch Timer-Event (continue the case) ///////////////////////////////////////////////////////
$action = "START-CONTINUE-CASES";
$this->log($action, "Start continue the cases");
$this->log($action, "Start continuing the cases");
$aInfo = array(
'ip' => \G::getIpAddress()
,'action' => $action
,'timeZone' => $datetime
,'workspace'=> $sysSys
);
$message = 'Start continue the cases';
$message = 'Start continuing the cases';
$context = $aInfo;
Log::channel(':TimerEventCron')->info($message, Bootstrap::context($context));
@@ -1719,16 +1719,16 @@ class TimerEvent
} while ($flagNextRecord);
if (!$flagRecord) {
$common->frontEndShow("TEXT", "No existing records to continue a case, on date \"$datetime (UTC +00:00)\"");
$common->frontEndShow("TEXT", "There are no records to continue cases, on date \"$datetime (UTC +00:00)\"");
$this->log("NO-RECORDS", "No existing records to continue a case");
$this->log("NO-RECORDS", "There are no records to continue cases");
$aInfo = array(
'ip' => \G::getIpAddress()
,'action' => $action
,'timeZone' => $datetime
,'workspace'=> $sysSys
);
$message = 'No existing records to continue a case';
$message = 'There are no records to continue cases';
$context = $aInfo;
Log::channel(':TimerEventCron')->info($message, Bootstrap::context($context));
}

View File

@@ -8,7 +8,7 @@ class ProjectNotFound extends \RuntimeException
const EXCEPTION_CODE = 400;
public function __construct(Project\Handler $obj, $uid, $message = "", \Exception $previous = null) {
$message = empty($message) ? sprintf("Project \"%s\" with UID: %s, does not exist.", get_class($obj), $uid) : $message;
$message = empty($message) ? 'Project ' . $uid . ', does not exist.' : $message;
parent::__construct($message, self::EXCEPTION_CODE, $previous);
}

View File

@@ -858,6 +858,7 @@ class Cases extends Api
* PUT /cases/{app_uid}/execute-trigger/{tri_uid} to execute it.
*
* @url POST /impersonate
* @status 201
*
* @param string $pro_uid {@from body} {@min 32}{@max 32}
* @param string $usr_uid {@from body} {@min 32}{@max 32}
@@ -1194,6 +1195,7 @@ class Cases extends Api
* access case notes may create a case note.
*
* @url POST /:appUid/note
* @status 201
*
* @param string $appUid {@min 1}{@max 32}
* @param string $note_content {@min 1}{@max 500}

View File

@@ -18,17 +18,22 @@ class Variable extends Api
* @url GET /:prj_uid/process-variables
*
* @param string $prj_uid {@min 32}{@max 32}
*
* @return array
* @throws RestException
*
* @access protected
* @class AccessControl {@permission PM_FACTORY}
*/
public function doGetVariables($prj_uid)
{
try {
$variable = new \ProcessMaker\BusinessModel\Variable();
$variable = new BmVariable();
$response = $variable->getVariables($prj_uid);
return $response;
} catch (\Exception $e) {
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
} catch (Exception $e) {
throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage());
}
}
@@ -42,6 +47,12 @@ class Variable extends Api
* @param int $start {@from path}
* @param int $limit {@from path}
* @param string $search {@from path}
*
* @return array
* @throws RestException
*
* @access protected
* @class AccessControl {@permission PM_FACTORY}
*/
public function doGetVariablesByType($prj_uid, $typeVariable, $start = null, $limit = null, $search = null)
{
@@ -65,7 +76,7 @@ class Variable extends Api
return $response;
} catch (Exception $e) {
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage());
}
}
@@ -74,17 +85,22 @@ class Variable extends Api
*
* @param string $var_uid {@min 32}{@max 32}
* @param string $prj_uid {@min 32}{@max 32}
*
* @return array
* @throws RestException
*
* @access protected
* @class AccessControl {@permission PM_FACTORY}
*/
public function doGetVariable($var_uid, $prj_uid)
{
try {
$variable = new \ProcessMaker\BusinessModel\Variable();
$variable = new BmVariable();
$response = $variable->getVariable($prj_uid, $var_uid);
return $response;
} catch (\Exception $e) {
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
} catch (Exception $e) {
throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage());
}
}
@@ -107,15 +123,13 @@ class Variable extends Api
{
try {
$request_data = (array)($request_data);
$variable = new \ProcessMaker\BusinessModel\Variable();
$variable = new BmVariable();
$arrayData = $variable->create($prj_uid, $request_data);
$response = $arrayData;
return $response;
} catch (\Exception $e) {
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
} catch (Exception $e) {
throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage());
}
}
@@ -137,31 +151,32 @@ class Variable extends Api
{
try {
$request_data = (array)($request_data);
$variable = new \ProcessMaker\BusinessModel\Variable();
$variable = new BmVariable();
$variable->update($prj_uid, $var_uid, $request_data);
} catch (\Exception $e) {
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
} catch (Exception $e) {
throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage());
}
}
/**
* @url DELETE /:prj_uid/process-variable/:var_uid
* @access protected
* @class AccessControl {@permission PM_FACTORY}
*
* @param string $prj_uid {@min 32}{@max 32}
* @param string $var_uid {@min 32}{@max 32}
*
* @throws RestException
*
* @access protected
* @class AccessControl {@permission PM_FACTORY}
*/
public function doDeleteVariable($prj_uid, $var_uid)
{
try {
$variable = new \ProcessMaker\BusinessModel\Variable();
$variable = new BmVariable();
$variable->delete($prj_uid, $var_uid);
} catch (\Exception $e) {
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
} catch (Exception $e) {
throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage());
}
}
@@ -185,14 +200,12 @@ class Variable extends Api
public function doPostVariableExecuteSql($prj_uid, $var_name = '', $request_data = array())
{
try {
$variable = new \ProcessMaker\BusinessModel\Variable();
$variable = new BmVariable();
$arrayData = ($request_data != null)? $variable->executeSql($prj_uid, $var_name, $request_data) : $variable->executeSql($prj_uid, $var_name);
$response = $arrayData;
return $response;
} catch (\Exception $e) {
} catch (Exception $e) {
throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage());
}
}
@@ -217,14 +230,12 @@ class Variable extends Api
public function doPostVariableExecuteSqlSuggest($prj_uid, $var_name, $request_data)
{
try {
$variable = new \ProcessMaker\BusinessModel\Variable();
$variable = new BmVariable();
$arrayData = ($request_data != null)? $variable->executeSqlSuggest($prj_uid, $var_name, $request_data) : $variable->executeSqlSuggest($prj_uid, $var_name);
$response = $arrayData;
return $response;
} catch (\Exception $e) {
} catch (Exception $e) {
throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage());
}
}

View File

@@ -192,7 +192,7 @@ Ext.onReady(function () {
fn: function (dv, nodes) {
var l = nodes.length;
var s = l != 1 ? 's' : '';
panelLeft.setTitle(_('PHOTO_GALLERY') + '(' + l + ' ' + _('ID_IMAGE') + s + ' ' + _('ID_SELECTED') + ')');
panelLeft.setTitle(_('PHOTO_GALLERY') + ' (' + l + ' ' + _('ID_IMAGE') + s + ' ' + _('ID_SELECTED') + ')');
if (nodes.length > 0) {
Ext.getCmp('tbarAply').enable();
Ext.getCmp('tbarDelete').enable();
@@ -220,7 +220,7 @@ Ext.onReady(function () {
width: 520,
autoHeight: true,
layout: 'auto',
title: _('PHOTO_GALLERY') + '(0 ' + _('ID_IMAGES_SELECTED') + ')',
title: _('PHOTO_GALLERY') + ' (0 ' + _('ID_IMAGES_SELECTED') + ')',
items: [tbar, datav]
});

View File

@@ -1,80 +1,61 @@
<?php
$cd = (isset($_SESSION['__CD__']))? $_SESSION['__CD__'] : '';
$cd = (isset($_SESSION['__CD__'])) ? $_SESSION['__CD__'] : '';
unset($_SESSION['__CD__']);
$filter = new InputFilter();
?>
<html>
<style type="text/css">
.Footer .content {
padding :0px !important;
}
*html body {
overflow-y: hidden;
}
</style>
<body onresize="autoResizeScreen()" onload="autoResizeScreen()">
<?php
/*----------------------------------********---------------------------------*/
if (true) {
//In enterprise version this snippet of code should be always be executed
//In community version this snippet of code is deleted and is executed the next snippet of code
?>
<iframe name="casesFrame" id="casesFrame" src ="<?php echo $cd; ?>../cases/viena_init<?php echo $filter->xssFilterHard($_POST['qs']); ?>" width="99%" height="768" frameborder="0">
<p>Your browser does not support iframes.</p>
</iframe>
<?php
} else {
/*----------------------------------********---------------------------------*/
?>
<iframe name="casesFrame" id="casesFrame" src ="<?php echo $cd; ?>../cases/main_init<?php echo $filter->xssFilterHard($_POST['qs']); ?>" width="99%" height="768" frameborder="0">
<p>Your browser does not support iframes.</p>
</iframe>
<?php
/*----------------------------------********---------------------------------*/
}
/*----------------------------------********---------------------------------*/
?>
</body>
<script>
if ( document.getElementById('pm_submenu') )
document.getElementById('pm_submenu').style.display = 'none';
document.documentElement.style.overflowY = 'hidden';
<style type="text/css">
.Footer .content {
padding :0px !important;
}
*html body {
overflow-y: hidden;
}
</style>
<body onresize="autoResizeScreen()" onload="autoResizeScreen()">
<iframe name="casesFrame" id="casesFrame" src ="<?php echo $cd; ?>../cases/viena_init<?php echo $filter->xssFilterHard($_POST['qs']); ?>" width="99%" height="768" frameborder="0">
<p>Your browser does not support iframes.</p>
</iframe>
</body>
<script>
if (document.getElementById('pm_submenu'))
document.getElementById('pm_submenu').style.display = 'none';
document.documentElement.style.overflowY = 'hidden';
var oClientWinSize = getClientWindowSize();
var oClientWinSize = getClientWindowSize();
function autoResizeScreen() {
var containerList1, containerList2;
oCasesFrame = document.getElementById('casesFrame');
oClientWinSize = getClientWindowSize();
function autoResizeScreen() {
var containerList1, containerList2;
oCasesFrame = document.getElementById('casesFrame');
oClientWinSize = getClientWindowSize();
containerList1 = document.getElementById("pm_header");
if (document.getElementById("mainMenuBG") &&
document.getElementById("mainMenuBG").parentNode &&
document.getElementById("mainMenuBG").parentNode.parentNode &&
document.getElementById("mainMenuBG").parentNode.parentNode.parentNode &&
document.getElementById("mainMenuBG").parentNode.parentNode.parentNode.parentNode){
containerList2 = document.getElementById("mainMenuBG").parentNode.parentNode.parentNode.parentNode;
}
if (containerList1 === containerList2) {
height = oClientWinSize.height - containerList1.clientHeight;
oCasesFrame.style.height = height;
if (oCasesFrame.height ) {
oCasesFrame.height = height;
}
} else {
height = getClientWindowSize().height-90;
oCasesFrame.style.height = height + 'px';
oCasesSubFrame = oCasesFrame.contentWindow.document.getElementById('casesSubFrame');
if(oCasesSubFrame){
oCasesSubFrame.style.height = (height-5) + 'px';;
} else {
setTimeout('autoResizeScreen()', 2000);
}
}
}
</script>
<SCRIPT src="/jscore/src/PM.js" type=text/javascript></SCRIPT>
<SCRIPT src="/jscore/src/Sessions.js" type=text/javascript></SCRIPT>
containerList1 = document.getElementById("pm_header");
if (document.getElementById("mainMenuBG") &&
document.getElementById("mainMenuBG").parentNode &&
document.getElementById("mainMenuBG").parentNode.parentNode &&
document.getElementById("mainMenuBG").parentNode.parentNode.parentNode &&
document.getElementById("mainMenuBG").parentNode.parentNode.parentNode.parentNode) {
containerList2 = document.getElementById("mainMenuBG").parentNode.parentNode.parentNode.parentNode;
}
if (containerList1 === containerList2) {
height = oClientWinSize.height - containerList1.clientHeight;
oCasesFrame.style.height = height;
if (oCasesFrame.height) {
oCasesFrame.height = height;
}
} else {
height = getClientWindowSize().height - 90;
oCasesFrame.style.height = height + 'px';
oCasesSubFrame = oCasesFrame.contentWindow.document.getElementById('casesSubFrame');
if (oCasesSubFrame) {
oCasesSubFrame.style.height = (height - 5) + 'px';
} else {
setTimeout('autoResizeScreen()', 2000);
}
}
}
</script>
<script src="/jscore/src/PM.js" type=text/javascript></script>
<script src="/jscore/src/Sessions.js" type=text/javascript></script>
</html>