Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion classes/configdata.php
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,10 @@ class CConfigDataPIM
const CONFIG_DEFAULT = [
'Optionen' => [
'interface_pff' => 0,
'profile_addin' => '',
'profile_addin' => [
'ITEMNAME',
'LAST_RECEIVER'
],
'file_name' => 'InventoryManager',
'add_date' => 0,
'current_user_default_keeper' => 0,
Expand Down
101 changes: 62 additions & 39 deletions classes/configtable.php

Large diffs are not rendered by default.

13 changes: 10 additions & 3 deletions common_function.php
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,7 @@ function isUserAuthorizedForPreferencesPIM()
function isUserAuthorizedForAddinPIM()
{
global $gDb;

$sql = 'SELECT men_id, men_name, men_name_intern
FROM ' . TBL_MENU . '
WHERE men_men_id_parent IS NULL
Expand Down Expand Up @@ -171,7 +172,9 @@ function isUserAuthorizedForAddinPIM()
*/
function convlanguagePIM($field_name)
{
return (substr($field_name, 3, 1) === '_') ? $GLOBALS['gL10n']->get($field_name) : $field_name;
global $gL10n;

return (substr($field_name, 3, 1) === '_') ? $gL10n->get($field_name) : $field_name;
}

/**
Expand All @@ -182,6 +185,8 @@ function convlanguagePIM($field_name)
*/
function getNewNameInternPIM($name, $index)
{
global $gDb;

$name = umlautePIM($name);
$newNameIntern = strtoupper(str_replace(' ', '_', $name));

Expand All @@ -190,7 +195,7 @@ function getNewNameInternPIM($name, $index)
}

$sql = 'SELECT imf_id FROM ' . TBL_INVENTORY_MANAGER_FIELDS . ' WHERE imf_name_intern = ?;';
$userFieldsStatement = $GLOBALS['gDb']->queryPrepared($sql, array($newNameIntern));
$userFieldsStatement = $gDb->queryPrepared($sql, array($newNameIntern));

if ($userFieldsStatement->rowCount() > 0) {
return getNewNameInternPIM($name, ++$index);
Expand All @@ -205,8 +210,10 @@ function getNewNameInternPIM($name, $index)
*/
function genNewSequencePIM()
{
global $gDb, $gCurrentOrgId;

$sql = 'SELECT max(imf_sequence) as max_sequence FROM ' . TBL_INVENTORY_MANAGER_FIELDS . ' WHERE (imf_org_id = ? OR imf_org_id IS NULL);';
$statement = $GLOBALS['gDb']->queryPrepared($sql, array($GLOBALS['gCurrentOrgId']));
$statement = $gDb->queryPrepared($sql, array($gCurrentOrgId));
$row = $statement->fetch();

return $row['max_sequence'] + 1;
Expand Down
32 changes: 22 additions & 10 deletions inventory_manager_profile_addin.php
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,11 @@ function insertKeeperView($page, $user, $itemsKeeper) {
// headlines for columns
$columnNumber = 1;

$addinItemFields = array('ITEMNAME', $pPreferences->config['Optionen']['profile_addin'], 'LAST_RECEIVER');
$addinItemFields = array();
foreach ($pPreferences->config['Optionen']['profile_addin'] as $addinField) {
$addinItemFields[] = $addinField;
}

$itemsKeeper->readItemData($itemsKeeper->items[0]['imi_id'], $gCurrentOrgId);

foreach ($itemsKeeper->mItemFields as $itemField) {
Expand Down Expand Up @@ -167,10 +171,12 @@ function insertKeeperView($page, $user, $itemsKeeper) {
$content = $itemsKeeper->getValue($imfNameIntern, 'database');

if (($imfNameIntern == 'KEEPER' || $imfNameIntern == 'LAST_RECEIVER') && strlen($content) > 0) {
$user->readDataById($content);
if (!$user->getValue('usr_uuid') == '') {
$content = '<a href="' . SecurityUtils::encodeUrl(ADMIDIO_URL . FOLDER_MODULES . '/profile/profile.php', array('user_uuid' => $user->getValue('usr_uuid'))) . '">' . $user->getValue('LAST_NAME') . ', ' . $user->getValue('FIRST_NAME') . '</a>';
}
if (is_numeric($content)) {
$user->readDataById($content);
if (!$user->getValue('usr_uuid') == '') {
$content = '<a href="' . SecurityUtils::encodeUrl(ADMIDIO_URL . FOLDER_MODULES . '/profile/profile.php', array('user_uuid' => $user->getValue('usr_uuid'))) . '">' . $user->getValue('LAST_NAME') . ', ' . $user->getValue('FIRST_NAME') . '</a>';
}
}
}

if ($itemsKeeper->getProperty($imfNameIntern, 'imf_type') == 'CHECKBOX') {
Expand Down Expand Up @@ -248,7 +254,11 @@ function insertReceiverView($page, $user, $itemsReceiver) {
// headlines for columns
$columnNumber = 1;

$addinItemFields = array('ITEMNAME', $pPreferences->config['Optionen']['profile_addin'], 'LAST_RECEIVER');
$addinItemFields = array();
foreach ($pPreferences->config['Optionen']['profile_addin'] as $addinField) {
$addinItemFields[] = $addinField;
}

$itemsReceiver->readItemData($itemsReceiver->items[0]['imi_id'], $gCurrentOrgId);

foreach ($itemsReceiver->mItemFields as $itemField) {
Expand Down Expand Up @@ -312,10 +322,12 @@ function insertReceiverView($page, $user, $itemsReceiver) {
$content = $itemsReceiver->getValue($imfNameIntern, 'database');

if (($imfNameIntern == 'KEEPER' || $imfNameIntern == 'LAST_RECEIVER') && strlen($content) > 0) {
$user->readDataById($content);
if (!$user->getValue('usr_uuid') == '') {
$content = '<a href="' . SecurityUtils::encodeUrl(ADMIDIO_URL . FOLDER_MODULES . '/profile/profile.php', array('user_uuid' => $user->getValue('usr_uuid'))) . '">' . $user->getValue('LAST_NAME') . ', ' . $user->getValue('FIRST_NAME') . '</a>';
}
if (is_numeric($content)) {
$user->readDataById($content);
if (!$user->getValue('usr_uuid') == '') {
$content = '<a href="' . SecurityUtils::encodeUrl(ADMIDIO_URL . FOLDER_MODULES . '/profile/profile.php', array('user_uuid' => $user->getValue('usr_uuid'))) . '">' . $user->getValue('LAST_NAME') . ', ' . $user->getValue('FIRST_NAME') . '</a>';
}
}
}

if ($itemsReceiver->getProperty($imfNameIntern, 'imf_type') == 'CHECKBOX') {
Expand Down
8 changes: 5 additions & 3 deletions items/items_delete.php
Original file line number Diff line number Diff line change
Expand Up @@ -76,9 +76,11 @@ function displayItemDeleteForm($items, $user, $getItemId, $getItemFormer) {
$imfNameIntern = $itemField->getValue('imf_name_intern');
$content = $items->getValue($imfNameIntern, 'database');

if ($imfNameIntern === 'KEEPER' && strlen($content) > 0) {
$user->readDataById($content);
$content = $user->getValue('LAST_NAME').', '.$user->getValue('FIRST_NAME');
if ($imfNameIntern === 'KEEPER'|| $imfNameIntern == 'LAST_RECEIVER'&& strlen($content) > 0) {
if (is_numeric($content)) {
$user->readDataById($content);
$content = $user->getValue('LAST_NAME').', '.$user->getValue('FIRST_NAME');
}
} elseif ($items->getProperty($imfNameIntern, 'imf_type') === 'DATE') {
$content = $items->getHtmlValue($imfNameIntern, $content);
} elseif (in_array($items->getProperty($imfNameIntern, 'imf_type'), ['DROPDOWN', 'RADIO_BUTTON'])) {
Expand Down
Loading