Просмотр исходного кода

#40 Menu Moje Procesy from used proces init ids

Piotr Labudda 11 лет назад
Родитель
Сommit
c49c26e792
2 измененных файлов с 16 добавлено и 18 удалено
  1. 3 12
      SE/se-lib/ProcesMenu.php
  2. 13 6
      SE/se-lib/UserAcl.php

+ 3 - 12
SE/se-lib/ProcesMenu.php

@@ -172,20 +172,11 @@ class ProcesMenu {
 		$this->menuAction();
 		$userAcl = User::getAcl();
 
-		$map = $this->_acl->getUsedProcesMap();
-		$menu_to_show = array_keys($map);
-		if (empty($menu_to_show)) {
+		$procesy_init_ids = $this->_acl->getUsedProcesInitList();
+		if (empty($procesy_init_ids)) {
 			echo '<p>' . "Brak przypisanych procesów." . '</p>';
 			return;
 		}
-
-		$procesy_init_ids = array();
-		$db = DB::getDB();
-		$sql = "select `ID`,`DESC` from `CRM_PROCES` where `TYPE`='PROCES_INIT' and `ID` in (".implode(",", $menu_to_show).") ";
-		$res = $db->query($sql);
-		while ($r = $db->fetch($res)) {
-			$procesy_init_ids[$r->ID] = $r->DESC;
-		}
 		?>
 		<style type="text/css">
 .tbl-wyniki-testow {}
@@ -370,7 +361,7 @@ class ProcesMenu {
 		$treeZasobyFilter = FilterFactory::build('CRM_LISTA_ZASOBOW');
 		$lastZasobyFiltrIds = $treeZasobyFilter->get_arg('filtr_id');
 
-		$userProcesIdsCSV = array();//TODO: get user proces init ids
+		$userProcesIdsCSV = $this->_acl->getUsedProcesInitIds();
 		$userProcesIdsCSV = implode(',', $userProcesIdsCSV);
 
 		$typeSpecialProces = TypespecialVariable::getInstance(-1, '__PROCES');

+ 13 - 6
SE/se-lib/UserAcl.php

@@ -160,20 +160,27 @@ class UserAcl {
 	}
 
 	public function getUsedProcesInitIds() {// function admin_fetch_CRM_PROCES_USERA_UZYTY_MAP_PROCES_INIT() {
-		if (!empty($this->_proces_init_used_ids)) {
-			return $this->_proces_init_used_ids;
+		$usedProcesInitList = $this->getUsedProcesInitList();
+		return array_keys($usedProcesInitList);
+	}
+
+	public function getUsedProcesInitList() {
+		if (!empty($this->_proces_init_used)) {
+			return $this->_proces_init_used;
 		}
 
 		$map = $this->getUsedProcesMap();
 		if (!empty($map)) {
 			$db = DB::getDB();
-			$sql = "select `ID` from `CRM_PROCES` where `TYPE`='PROCES_INIT' and `ID` in (" . implode(",", array_keys($map)) . ") ";
+			$sql = "select `ID`, `DESC`
+				from `CRM_PROCES`
+				where `TYPE`='PROCES_INIT' and `ID` in (" . implode(",", array_keys($map)) . ") ";
 			$res = $db->query($sql);
-			while ($h = $db->fetch($res)) {
-				$this->_proces_init_used_ids[] = $h->ID;
+			while ($r = $db->fetch($res)) {
+				$this->_proces_init_used[$r->ID] = $r->DESC;
 			}
 		}
-		return $this->_proces_init_used_ids;
+		return $this->_proces_init_used;
 	}
 
 	function old_fixed() {