<?php
$user_groups = array('worker_id', 'creator_id', 'manager_id'); # group
# selection
'sys_id_eq_1' => range(1, 9), 'default' => range(3, 9, 2) ),
# group
# selection
'sys_id_eq_1' => array(1, 6, 9), ),
# group
# selection
'sys_id_eq_1' => array(2, 5, 8), )
);
'sys_id' => 1,
'worker_id' => 34,
'creator_id' => 45,
'manager_id' => 45
);
1 => array('id' => 221, 'name' => 'Вася'), 2 => array('id' => 222, 'name' => 'Петя'), 3 => array('id' => 223, 'name' => 'Леша'), 4 => array('id' => 224, 'name' => 'Костя'), 5 => array('id' => 225, 'name' => 'Настя'), 6 => array('id' => 226, 'name' => 'Маша'), 7 => array('id' => 227, 'name' => 'Даша'), 8 => array('id' => 228, 'name' => 'Саша'), 9 => array('id' => 229, 'name' => 'Женя') );
$u_id = 45;
$output = PHP_EOL;
foreach ($user_groups as $group) {
$is_current_user_in_group = $u_id === $data[$group];
if ($is_current_user_in_group) {
$selection = ($data['sys_id'] == 1) ? 'sys_id_eq_1' : 'default';
foreach ($users[$group][$selection] as $user) {
$id = $status[$user]['id'];
$name = $status[$user]['name'];
$text = "{$id}||{$name}||{$user}" . PHP_EOL;
$output .= (!!strpos($output, $text)) ?
'' : $text; }
}
}
echo $output;
ICAgIDw/cGhwCgogICAgJHVzZXJfZ3JvdXBzID0gYXJyYXkoJ3dvcmtlcl9pZCcsICdjcmVhdG9yX2lkJywgJ21hbmFnZXJfaWQnKTsKICAgICR1c2VycyA9IGFycmF5KAogICAgICAgICMgZ3JvdXAKICAgICAgICAnd29ya2VyX2lkJyA9PiBhcnJheSgKICAgICAgICAgICAgIyBzZWxlY3Rpb24KICAgICAgICAgICAgJ3N5c19pZF9lcV8xJyA9PiByYW5nZSgxLCA5KSwKICAgICAgICAgICAgJ2RlZmF1bHQnID0+IHJhbmdlKDMsIDksIDIpCiAgICAgICAgKSwKICAgICAgICAjIGdyb3VwCiAgICAgICAgJ2NyZWF0b3JfaWQnID0+IGFycmF5KAogICAgICAgICAgICAjIHNlbGVjdGlvbgogICAgICAgICAgICAnc3lzX2lkX2VxXzEnID0+IGFycmF5KDEsIDYsIDkpLAogICAgICAgICAgICAnZGVmYXVsdCcgPT4gYXJyYXkoKQogICAgICAgICksCiAgICAgICAgIyBncm91cAogICAgICAgICdtYW5hZ2VyX2lkJyA9PiBhcnJheSgKICAgICAgICAgICAgIyBzZWxlY3Rpb24KICAgICAgICAgICAgJ3N5c19pZF9lcV8xJyA9PiBhcnJheSgyLCA1LCA4KSwKICAgICAgICAgICAgJ2RlZmF1bHQnID0+IGFycmF5KDkpCiAgICAgICAgKQogICAgKTsKICAgIAogICAgJGRhdGEgPSBhcnJheSgKICAgIAknc3lzX2lkJyA9PiAxLAogICAgICAgICd3b3JrZXJfaWQnID0+IDM0LAogICAgICAgICdjcmVhdG9yX2lkJyA9PiA0NSwKICAgICAgICAnbWFuYWdlcl9pZCcgPT4gNDUKICAgICk7CiAgICAKICAgICRzdGF0dXMgPSBhcnJheSgKICAgICAgICAxID0+IGFycmF5KCdpZCcgPT4gMjIxLCAnbmFtZScgPT4gJ9CS0LDRgdGPJyksCiAgICAgICAgMiA9PiBhcnJheSgnaWQnID0+IDIyMiwgJ25hbWUnID0+ICfQn9C10YLRjycpLAogICAgICAgIDMgPT4gYXJyYXkoJ2lkJyA9PiAyMjMsICduYW1lJyA9PiAn0JvQtdGI0LAnKSwKICAgICAgICA0ID0+IGFycmF5KCdpZCcgPT4gMjI0LCAnbmFtZScgPT4gJ9Ca0L7RgdGC0Y8nKSwKICAgICAgICA1ID0+IGFycmF5KCdpZCcgPT4gMjI1LCAnbmFtZScgPT4gJ9Cd0LDRgdGC0Y8nKSwKICAgICAgICA2ID0+IGFycmF5KCdpZCcgPT4gMjI2LCAnbmFtZScgPT4gJ9Cc0LDRiNCwJyksCiAgICAgICAgNyA9PiBhcnJheSgnaWQnID0+IDIyNywgJ25hbWUnID0+ICfQlNCw0YjQsCcpLAogICAgICAgIDggPT4gYXJyYXkoJ2lkJyA9PiAyMjgsICduYW1lJyA9PiAn0KHQsNGI0LAnKSwKICAgICAgICA5ID0+IGFycmF5KCdpZCcgPT4gMjI5LCAnbmFtZScgPT4gJ9CW0LXQvdGPJykKICAgICk7CgogICAgJHVfaWQgPSA0NTsKICAgICRvdXRwdXQgPSBQSFBfRU9MOyAgICAKICAgIAogICAgZm9yZWFjaCAoJHVzZXJfZ3JvdXBzIGFzICRncm91cCkgewogICAgICAgICRpc19jdXJyZW50X3VzZXJfaW5fZ3JvdXAgPSAkdV9pZCA9PT0gJGRhdGFbJGdyb3VwXTsKICAgICAgICBpZiAoJGlzX2N1cnJlbnRfdXNlcl9pbl9ncm91cCkgewogICAgICAgICAgICAkc2VsZWN0aW9uID0gKCRkYXRhWydzeXNfaWQnXSA9PSAxKSA/ICdzeXNfaWRfZXFfMScgOiAnZGVmYXVsdCc7CiAgICAgICAgICAgIGZvcmVhY2ggKCR1c2Vyc1skZ3JvdXBdWyRzZWxlY3Rpb25dIGFzICR1c2VyKSB7CiAgICAgICAgICAgICAgICAkaWQgPSAkc3RhdHVzWyR1c2VyXVsnaWQnXTsKICAgICAgICAgICAgICAgICRuYW1lID0gJHN0YXR1c1skdXNlcl1bJ25hbWUnXTsKICAgICAgICAgICAgICAgICR0ZXh0ID0gInskaWR9fHx7JG5hbWV9fHx7JHVzZXJ9IiAuIFBIUF9FT0w7CiAgICAgICAgICAgICAgICAkb3V0cHV0IC49ICghIXN0cnBvcygkb3V0cHV0LCAkdGV4dCkpID8gJycgOiAkdGV4dDsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIGVjaG8gJG91dHB1dDs=