mirror of
				https://git.code.sf.net/p/seeddms/code
				synced 2025-10-31 05:11:27 +00:00 
			
		
		
		
	Merge branch 'seeddms-4.3.x' into seeddms-5.0.x
This commit is contained in:
		
						commit
						b04571da11
					
				|  | @ -117,7 +117,7 @@ class SeedDMS_Core_Attribute { /* {{{ */ | |||
| 	/** | ||||
| 	 * Return attribute values as an array | ||||
| 	 * | ||||
| 	 * This function returns the attribute value as an array. Such an array | ||||
| 	 * This function returns the attribute value as an array. The array | ||||
| 	 * has one element for non multi value attributes and n elements for | ||||
| 	 * multi value attributes. | ||||
| 	 * | ||||
|  | @ -133,14 +133,67 @@ class SeedDMS_Core_Attribute { /* {{{ */ | |||
| 
 | ||||
| 	/** | ||||
| 	 * Set a value of an attribute | ||||
| 	 * The attribute is deleted completely if the value is the empty string | ||||
| 	 * | ||||
| 	 * @param string $value value to be set | ||||
| 	 * The attribute is completely deleted if the value is an empty string | ||||
| 	 * or empty array. An array of values is only allowed if the attribute may | ||||
| 	 * have multiple values. If an array is passed and the attribute may | ||||
| 	 * have only a single value, then the first element of the array will | ||||
| 	 * be taken. | ||||
| 	 * | ||||
| 	 * @param string $values value as string or array to be set | ||||
| 	 * @return boolean true if operation was successfull, otherwise false | ||||
| 	 */ | ||||
| 	function setValue($value) { /* {{{*/ | ||||
| 	function setValue($values) { /* {{{*/ | ||||
| 		$db = $this->_dms->getDB(); | ||||
| 
 | ||||
| 		if($this->_attrdef->getMultipleValues()) { | ||||
| 			/* Multiple values without a value set is not allowed */ | ||||
| 			if(!$valuesetstr = $this->_attrdef->getValueSet()) | ||||
| 				return false; | ||||
| 			$valueset = $this->_attrdef->getValueSetAsArray(); | ||||
| 
 | ||||
| 			if(is_array($values)) { | ||||
| 				if($values) { | ||||
| 					$error = false; | ||||
| 					foreach($values as $v) { | ||||
| 						if(!in_array($v, $valueset)) { $error = true; break; } | ||||
| 					} | ||||
| 					if($error) | ||||
| 						return false; | ||||
| 					$valuesetstr = $this->_attrdef->getValueSet(); | ||||
| 					$value = $valuesetstr[0].implode($valuesetstr[0], $values); | ||||
| 				} else { | ||||
| 					$value = ''; | ||||
| 				} | ||||
| 			} else { | ||||
| 				if($values) { | ||||
| 					if($valuesetstr[0] != $values[0]) | ||||
| 						$values = explode($valuesetstr[0], $values); | ||||
| 					else | ||||
| 						$values = explode($valuesetstr[0], substr($values, 1)); | ||||
| 
 | ||||
| 					$error = false; | ||||
| 					foreach($values as $v) { | ||||
| 						if(!in_array($v, $valueset)) { $error = true; break; } | ||||
| 					} | ||||
| 					if($error) | ||||
| 						return false; | ||||
| 					$value = $valuesetstr[0].implode($valuesetstr[0], $values); | ||||
| 				} else { | ||||
| 					$value = $values; | ||||
| 				} | ||||
| 			} | ||||
| 		} else { | ||||
| 			if(is_array($values)) { | ||||
| 				if($values) | ||||
| 					$value = $values[0]; | ||||
| 				else | ||||
| 					$value = ''; | ||||
| 			} else { | ||||
| 				$value = $values; | ||||
| 			} | ||||
| 		} | ||||
| 
 | ||||
| 		switch(get_class($this->_obj)) { | ||||
| 			case $this->_dms->getClassname('document'): | ||||
| 				if(trim($value) === '') | ||||
|  | @ -524,6 +577,12 @@ class SeedDMS_Core_AttributeDefinition { /* {{{ */ | |||
| 	/** | ||||
| 	 * Get the value set as saved in the database | ||||
| 	 * | ||||
| 	 * This is a string containing the list of valueѕ separated by a | ||||
| 	 * delimiter which also precedes the whole string, e.g. '|Yes|No' | ||||
| 	 * | ||||
| 	 * Use {@link SeedDMS_Core_AttributeDefinition::getValueSetAsArray()} | ||||
| 	 * for a list of values returned as an array. | ||||
| 	 * | ||||
| 	 * @return string value set | ||||
| 	 */ | ||||
| 	function getValueSet() { /* {{{ */ | ||||
|  | @ -540,7 +599,7 @@ class SeedDMS_Core_AttributeDefinition { /* {{{ */ | |||
| 		if(strlen($this->_valueset) > 1) | ||||
| 			return explode($this->_valueset[0], substr($this->_valueset, 1)); | ||||
| 		else | ||||
| 			return false; | ||||
| 			return array(); | ||||
| 	} /* }}} */ | ||||
| 
 | ||||
| 	/** | ||||
|  | @ -677,7 +736,7 @@ class SeedDMS_Core_AttributeDefinition { /* {{{ */ | |||
| 			$queryStr = "SELECT count(*) c, value FROM tblDocumentAttributes WHERE attrdef=".$this->_id." GROUP BY value ORDER BY c DESC"; | ||||
| 			$resArr = $db->getResultArray($queryStr); | ||||
| 			if($resArr) { | ||||
| 				$result['frequencies'] = $resArr; | ||||
| 				$result['frequencies']['document'] = $resArr; | ||||
| 			} | ||||
| 		} | ||||
| 
 | ||||
|  | @ -694,6 +753,11 @@ class SeedDMS_Core_AttributeDefinition { /* {{{ */ | |||
| 					} | ||||
| 				} | ||||
| 			} | ||||
| 			$queryStr = "SELECT count(*) c, value FROM tblFolderAttributes WHERE attrdef=".$this->_id." GROUP BY value ORDER BY c DESC"; | ||||
| 			$resArr = $db->getResultArray($queryStr); | ||||
| 			if($resArr) { | ||||
| 				$result['frequencies']['folder'] = $resArr; | ||||
| 			} | ||||
| 		} | ||||
| 
 | ||||
| 		if($this->_objtype == SeedDMS_Core_AttributeDefinition::objtype_all || | ||||
|  | @ -709,6 +773,11 @@ class SeedDMS_Core_AttributeDefinition { /* {{{ */ | |||
| 					} | ||||
| 				} | ||||
| 			} | ||||
| 			$queryStr = "SELECT count(*) c, value FROM tblDocumentContentAttributes WHERE attrdef=".$this->_id." GROUP BY value ORDER BY c DESC"; | ||||
| 			$resArr = $db->getResultArray($queryStr); | ||||
| 			if($resArr) { | ||||
| 				$result['frequencies']['content'] = $resArr; | ||||
| 			} | ||||
| 		} | ||||
| 
 | ||||
| 		return $result; | ||||
|  |  | |||
|  | @ -103,6 +103,7 @@ class UI extends UI_Default { | |||
| 			$view->setParam('workflowmode', $settings->_workflowMode); | ||||
| 			$view->setParam('partitionsize', $settings->_partitionSize); | ||||
| 			$view->setParam('showmissingtranslations', $settings->_showMissingTranslations); | ||||
| 			$view->setParam('defaultsearchmethod', $settings->_defaultSearchMethod); | ||||
| 			return $view; | ||||
| 		} | ||||
| 		return null; | ||||
|  |  | |||
|  | @ -113,12 +113,14 @@ URL: [url]', | |||
| 'assign_user_property_to' => 'تخصيص خصائص المستخدم الى', | ||||
| 'assumed_released' => 'يعتبر تم نشره', | ||||
| 'attrdef_exists' => 'تعريف السمة بالفعل موجود', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => 'تعريف السمة مشغول حاليا', | ||||
| 'attrdef_management' => 'ادارة تعريف السمات', | ||||
| 'attrdef_maxvalues' => 'اكبر عدد من القيم', | ||||
| 'attrdef_minvalues' => 'اقل عدد من القيم', | ||||
| 'attrdef_min_greater_max' => '', | ||||
| 'attrdef_multiple' => 'السماح باكثر من قيمة', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => '', | ||||
| 'attrdef_name' => 'اسم', | ||||
| 'attrdef_noname' => '', | ||||
|  |  | |||
|  | @ -104,12 +104,14 @@ $text = array( | |||
| 'assign_user_property_to' => 'Назначи свойства на потребителя', | ||||
| 'assumed_released' => 'Утверден', | ||||
| 'attrdef_exists' => 'Тази дефиниция на атрибути вече съществува', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => 'Тази дефиниция на атрибути все още се ползва', | ||||
| 'attrdef_management' => 'Управление дефинирането на атрибути', | ||||
| 'attrdef_maxvalues' => 'Max. брой стойности', | ||||
| 'attrdef_minvalues' => 'Min. брой стойности', | ||||
| 'attrdef_min_greater_max' => '', | ||||
| 'attrdef_multiple' => 'ПОзволи няколко стойности', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => '', | ||||
| 'attrdef_name' => 'Име', | ||||
| 'attrdef_noname' => '', | ||||
|  |  | |||
|  | @ -109,12 +109,14 @@ URL: [url]', | |||
| 'assign_user_property_to' => 'Assignar propietats d\'usuari a', | ||||
| 'assumed_released' => 'Se suposa com a publicat', | ||||
| 'attrdef_exists' => '', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => '', | ||||
| 'attrdef_management' => '', | ||||
| 'attrdef_maxvalues' => '', | ||||
| 'attrdef_minvalues' => '', | ||||
| 'attrdef_min_greater_max' => '', | ||||
| 'attrdef_multiple' => '', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => '', | ||||
| 'attrdef_name' => '', | ||||
| 'attrdef_noname' => '', | ||||
|  |  | |||
|  | @ -120,12 +120,14 @@ URL: [url]', | |||
| 'assign_user_property_to' => 'Přiřazení uživatelských vlastností', | ||||
| 'assumed_released' => 'Pokládá se za zveřejněné', | ||||
| 'attrdef_exists' => 'Definice atributů již existuje', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => 'Definice atributů je ještě užívána', | ||||
| 'attrdef_management' => 'Správa definic atributů', | ||||
| 'attrdef_maxvalues' => 'Max. počet hodnot', | ||||
| 'attrdef_minvalues' => 'Min. počet hodnot', | ||||
| 'attrdef_min_greater_max' => 'Minimální počet hodnot je větší, než maximální počet hodnot', | ||||
| 'attrdef_multiple' => 'Povolit více hodnot', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => 'Atribut musí mít více než jednu hodnotu, přesto není zadáno více hodnot', | ||||
| 'attrdef_name' => 'Název', | ||||
| 'attrdef_noname' => 'Chybí jméno definice atributu', | ||||
|  |  | |||
|  | @ -19,7 +19,7 @@ | |||
| //    along with this program; if not, write to the Free Software
 | ||||
| //    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 | ||||
| //
 | ||||
| //    Translators: Admin (2162), dgrutsch (21)
 | ||||
| //    Translators: Admin (2164), dgrutsch (21)
 | ||||
| 
 | ||||
| $text = array( | ||||
| 'accept' => 'Übernehmen', | ||||
|  | @ -125,12 +125,14 @@ URL: [url]', | |||
| 'assign_user_property_to' => 'Dokumente einem anderen Benutzer zuweisen', | ||||
| 'assumed_released' => 'Angenommen, freigegeben', | ||||
| 'attrdef_exists' => 'Attributdefinition existiert bereits', | ||||
| 'attrdef_info' => 'Information', | ||||
| 'attrdef_in_use' => 'Definition des Attributs noch in Gebrauch', | ||||
| 'attrdef_management' => 'Attributdefinitions-Management', | ||||
| 'attrdef_maxvalues' => 'Max. Anzahl Werte', | ||||
| 'attrdef_minvalues' => 'Min. Anzahl Werte', | ||||
| 'attrdef_min_greater_max' => 'Zahl der minimalen Werte ist größer als Zahl der maximalen Werte', | ||||
| 'attrdef_multiple' => 'Mehrfachwerte erlaubt', | ||||
| 'attrdef_multiple_needs_valueset' => 'Attributdefinition mit Mehrfachwerten erfordert eine Werteliste.', | ||||
| 'attrdef_must_be_multiple' => 'Attribut muss mehr als einen Wert haben, erlaubt aber keine Mehrfachwerte', | ||||
| 'attrdef_name' => 'Name', | ||||
| 'attrdef_noname' => 'Kein Name für die Attributedefinition eingegeben', | ||||
|  |  | |||
|  | @ -19,7 +19,7 @@ | |||
| //    along with this program; if not, write to the Free Software
 | ||||
| //    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 | ||||
| //
 | ||||
| //    Translators: Admin (1297), dgrutsch (7), netixw (14)
 | ||||
| //    Translators: Admin (1299), dgrutsch (7), netixw (14)
 | ||||
| 
 | ||||
| $text = array( | ||||
| 'accept' => 'Accept', | ||||
|  | @ -125,12 +125,14 @@ URL: [url]', | |||
| 'assign_user_property_to' => 'Assign user\'s properties to', | ||||
| 'assumed_released' => 'Assumed released', | ||||
| 'attrdef_exists' => 'Attribute definition already exists', | ||||
| 'attrdef_info' => 'Information', | ||||
| 'attrdef_in_use' => 'Attribute definition still in use', | ||||
| 'attrdef_management' => 'Attribute definition management', | ||||
| 'attrdef_maxvalues' => 'Max. number of values', | ||||
| 'attrdef_minvalues' => 'Min. number of values', | ||||
| 'attrdef_min_greater_max' => 'Minimum number of values is larger than maximum number of values', | ||||
| 'attrdef_multiple' => 'Allow multiple values', | ||||
| 'attrdef_multiple_needs_valueset' => 'Attribute definition with multiple values needs value set.', | ||||
| 'attrdef_must_be_multiple' => 'Attribute must have more than one value, but is not set multiple value', | ||||
| 'attrdef_name' => 'Name', | ||||
| 'attrdef_noname' => 'Missing name for attribute definition', | ||||
|  |  | |||
|  | @ -120,12 +120,14 @@ URL: [url]', | |||
| 'assign_user_property_to' => 'Asignar propiedades de usuario a', | ||||
| 'assumed_released' => 'Supuestamente publicado', | ||||
| 'attrdef_exists' => 'Definición de atributos ya existe', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => 'Definición de atributo en uso', | ||||
| 'attrdef_management' => 'Gestión de definición de atributos', | ||||
| 'attrdef_maxvalues' => 'Núm. máximo de valores', | ||||
| 'attrdef_minvalues' => 'Núm. mínimo de valores', | ||||
| 'attrdef_min_greater_max' => 'El número mínimo de valores es mayor que el numero máximo de valores', | ||||
| 'attrdef_multiple' => 'Permitir múltiples valores', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => 'El atributo debe tener más de un valor, pero no está seteado para valores múltiples', | ||||
| 'attrdef_name' => 'Nombre', | ||||
| 'attrdef_noname' => 'Ingrese el nombre del atributo', | ||||
|  |  | |||
|  | @ -120,12 +120,14 @@ URL : [url]', | |||
| 'assign_user_property_to' => 'Assigner les propriétés de l\'utilisateur à', | ||||
| 'assumed_released' => 'Supposé publié', | ||||
| 'attrdef_exists' => 'La définition d\'attribut existe déjà', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => 'La définition d\'attribut est en cours d\'utilisation', | ||||
| 'attrdef_management' => 'Gestion des définitions d\'attributs', | ||||
| 'attrdef_maxvalues' => 'Nombre maximum de valeurs', | ||||
| 'attrdef_minvalues' => 'Nombre minimum de valeurs', | ||||
| 'attrdef_min_greater_max' => 'Le nombre minimum de valeurs est supérieur au maximum', | ||||
| 'attrdef_multiple' => 'Permettre des valeurs multiples', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => 'L\'attribut a plusieurs valeurs mais n\'est pas définit comme possédant des valeurs multiples', | ||||
| 'attrdef_name' => 'Nom', | ||||
| 'attrdef_noname' => 'Le nom d\'attribut est manquant', | ||||
|  |  | |||
|  | @ -125,12 +125,14 @@ Internet poveznica: [url]', | |||
| 'assign_user_property_to' => 'Dodijeli svojstva korisnika za', | ||||
| 'assumed_released' => 'Podrazumijevano obrađeno', | ||||
| 'attrdef_exists' => 'Definicija atributa već postoji', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => 'Definicija atributa se već koristi', | ||||
| 'attrdef_management' => 'Upravljanje definicijama atributa', | ||||
| 'attrdef_maxvalues' => 'Max. broj vrijednosti', | ||||
| 'attrdef_minvalues' => 'Min. broj vrijednosti', | ||||
| 'attrdef_min_greater_max' => 'Minimalni broj vrijednosti je veći od maksimalnog broja vrijednosti', | ||||
| 'attrdef_multiple' => 'Dozvoli više vrijednosti', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => 'Atribut mora imati više od jedne vrijednosti, ali nije postavljeno više vrijednosti', | ||||
| 'attrdef_name' => 'Naziv', | ||||
| 'attrdef_noname' => 'Nedostaje naziv za definiciju atributa', | ||||
|  |  | |||
|  | @ -120,12 +120,14 @@ URL: [url]', | |||
| 'assign_user_property_to' => 'Felhasználói tulajdonságok hozzárendelése', | ||||
| 'assumed_released' => 'Feltételesen kiadott', | ||||
| 'attrdef_exists' => 'Jellemző meghatározás már létezik', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => 'Jellemző meghatározás még használatban van', | ||||
| 'attrdef_management' => 'Jellemző meghatározás kezelése', | ||||
| 'attrdef_maxvalues' => 'Legnagyobb érték', | ||||
| 'attrdef_minvalues' => 'Legkisebb érték', | ||||
| 'attrdef_min_greater_max' => 'A minimum érték magasabb mint a maximum érték', | ||||
| 'attrdef_multiple' => 'Több érték is megadható', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => 'A tulajdonságnak több értékkel kell rendelkeznie, de nincs több érték megadva', | ||||
| 'attrdef_name' => 'Név', | ||||
| 'attrdef_noname' => 'Hiányzó név a tulajdonság megadásánál', | ||||
|  |  | |||
|  | @ -19,7 +19,7 @@ | |||
| //    along with this program; if not, write to the Free Software
 | ||||
| //    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 | ||||
| //
 | ||||
| //    Translators: Admin (1506), s.pnt (26)
 | ||||
| //    Translators: Admin (1507), s.pnt (26)
 | ||||
| 
 | ||||
| $text = array( | ||||
| 'accept' => 'Accetta', | ||||
|  | @ -125,12 +125,14 @@ URL: [url]', | |||
| 'assign_user_property_to' => 'Assegna le proprietà dell\'utente a', | ||||
| 'assumed_released' => 'Rilascio acquisito', | ||||
| 'attrdef_exists' => 'Definizione di Attributo già esistente', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => 'Definizione di Attributo ancora in uso', | ||||
| 'attrdef_management' => 'Gestione Attributi', | ||||
| 'attrdef_maxvalues' => 'Numero di valori Max.', | ||||
| 'attrdef_minvalues' => 'Numero di valori Min.', | ||||
| 'attrdef_min_greater_max' => 'Il numero minimo di valori è maggiore del massimo', | ||||
| 'attrdef_multiple' => 'Permetti valori multipli', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => 'Gli Attributi devono avere più di un valore, ma non sono permessi valori multipli', | ||||
| 'attrdef_name' => 'Nome', | ||||
| 'attrdef_noname' => 'Nella definizione dell\'Attributo manca il nome', | ||||
|  | @ -1286,7 +1288,7 @@ URL: [url]', | |||
| 'thursday' => 'Giovedì', | ||||
| 'thursday_abbr' => 'Gio', | ||||
| 'timeline' => 'Linea del Tempo', | ||||
| 'timeline_add_file' => '', | ||||
| 'timeline_add_file' => 'Nuovo allegato', | ||||
| 'timeline_add_version' => '', | ||||
| 'timeline_full_add_file' => '', | ||||
| 'timeline_full_add_version' => '', | ||||
|  |  | |||
|  | @ -125,12 +125,14 @@ URL: [url]', | |||
| 'assign_user_property_to' => '사용자 속성에 할당', | ||||
| 'assumed_released' => '가정한 출시', | ||||
| 'attrdef_exists' => '이미 존재하는 속성', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => '사용중인 속성 정의', | ||||
| 'attrdef_management' => '속성 관리', | ||||
| 'attrdef_maxvalues' => '최대수', | ||||
| 'attrdef_minvalues' => '최소수', | ||||
| 'attrdef_min_greater_max' => '최소값은 최대 값 보다 큽니다', | ||||
| 'attrdef_multiple' => '여러 값 허용', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => '속성은 하나 이상의 값을 가져야하지만, 여러 값을 설정하지 않습니다.', | ||||
| 'attrdef_name' => '이름', | ||||
| 'attrdef_noname' => '속성 정의명이 없습', | ||||
|  |  | |||
|  | @ -118,12 +118,14 @@ URL: [url]', | |||
| 'assign_user_property_to' => 'Wijs gebruikers machtigingen toe aan', | ||||
| 'assumed_released' => 'aangenomen status: Gepubliceerd', | ||||
| 'attrdef_exists' => 'Kenmerk definitie bestaat al', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => 'Kenmerk definitie nog in gebruikt', | ||||
| 'attrdef_management' => 'Kenmerk definitie beheer', | ||||
| 'attrdef_maxvalues' => 'Max. aantal waarden', | ||||
| 'attrdef_minvalues' => 'Min. aantal waarden', | ||||
| 'attrdef_min_greater_max' => 'Het minimum aantal is groter dan het maximum aantal', | ||||
| 'attrdef_multiple' => 'Meerdere waarden toegestaan', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => 'Het attribuut moet meer dan 1 waarde hebben maar is niet ingesteld om meerdere waardes te bevatten', | ||||
| 'attrdef_name' => 'Naam', | ||||
| 'attrdef_noname' => 'Geen naam voor attribuut definitie', | ||||
|  |  | |||
|  | @ -113,12 +113,14 @@ URL: [url]', | |||
| 'assign_user_property_to' => 'Przypisz właściwości użytkownika do', | ||||
| 'assumed_released' => 'Assumed released', | ||||
| 'attrdef_exists' => 'Definicja atrybutu już istnieje', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => 'Definicja atrybutu nadal jest w użyciu', | ||||
| 'attrdef_management' => 'Zarządzanie definicją atrybutu', | ||||
| 'attrdef_maxvalues' => 'Max. ilość wartości', | ||||
| 'attrdef_minvalues' => 'Min. ilość wartości', | ||||
| 'attrdef_min_greater_max' => '', | ||||
| 'attrdef_multiple' => 'Pozwól na wiele wartości', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => '', | ||||
| 'attrdef_name' => 'Nazwa', | ||||
| 'attrdef_noname' => '', | ||||
|  |  | |||
|  | @ -120,12 +120,14 @@ URL: [url]', | |||
| 'assign_user_property_to' => 'Assign user\'s properties to', | ||||
| 'assumed_released' => 'Assumed released', | ||||
| 'attrdef_exists' => 'Definição de atributo já existe', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => 'Definição de atributo ainda em uso', | ||||
| 'attrdef_management' => 'Gerência de definição de atributo', | ||||
| 'attrdef_maxvalues' => 'Max. número de valores', | ||||
| 'attrdef_minvalues' => 'Min. número de valores', | ||||
| 'attrdef_min_greater_max' => 'Número mínimo de valores é maior do que o número máximo de valores', | ||||
| 'attrdef_multiple' => 'Permitir múltiplos valores', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => 'Atributo deve ter mais de um valor, mas não está definido valor múltiplo', | ||||
| 'attrdef_name' => 'Nome', | ||||
| 'attrdef_noname' => 'Está faltando o nome de definição de atributo', | ||||
|  |  | |||
|  | @ -125,12 +125,14 @@ URL: [url]', | |||
| 'assign_user_property_to' => 'Atribuire proprietati utilizator la', | ||||
| 'assumed_released' => 'Assumed released', | ||||
| 'attrdef_exists' => 'Definitie atribut exista deja', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => 'Definitie atribut inca in utilizare', | ||||
| 'attrdef_management' => 'Management definitii atribute', | ||||
| 'attrdef_maxvalues' => 'Numar maxim de valori', | ||||
| 'attrdef_minvalues' => 'Numar minim de valori', | ||||
| 'attrdef_min_greater_max' => 'Numărul minim de valori este mai mare decât numărul maxim de valori', | ||||
| 'attrdef_multiple' => 'Permiteți valori multiple', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => 'Atributul trebuie să aibă mai mult de o valoare, dar nu este setat valoare multiplu', | ||||
| 'attrdef_name' => 'Nume', | ||||
| 'attrdef_noname' => 'Lipsește numele pentru definirea atributului', | ||||
|  |  | |||
|  | @ -113,12 +113,14 @@ URL: [url]', | |||
| 'assign_user_property_to' => 'Назначить свойства пользователя', | ||||
| 'assumed_released' => 'Утверждён', | ||||
| 'attrdef_exists' => 'Определение атрибута уже существует', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => 'Определение этого атрибута используется', | ||||
| 'attrdef_management' => 'Управление определениями атрибутов', | ||||
| 'attrdef_maxvalues' => 'Макс. количество значений', | ||||
| 'attrdef_minvalues' => 'Мин. количество значений', | ||||
| 'attrdef_min_greater_max' => '', | ||||
| 'attrdef_multiple' => 'Несколько значений', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => '', | ||||
| 'attrdef_name' => 'Название', | ||||
| 'attrdef_noname' => '', | ||||
|  |  | |||
|  | @ -104,12 +104,14 @@ $text = array( | |||
| 'assign_user_property_to' => 'Assign user\'s properties to', | ||||
| 'assumed_released' => 'Pokladá sa za zverejnené', | ||||
| 'attrdef_exists' => '', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => '', | ||||
| 'attrdef_management' => '', | ||||
| 'attrdef_maxvalues' => '', | ||||
| 'attrdef_minvalues' => '', | ||||
| 'attrdef_min_greater_max' => '', | ||||
| 'attrdef_multiple' => '', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => '', | ||||
| 'attrdef_name' => '', | ||||
| 'attrdef_noname' => '', | ||||
|  |  | |||
|  | @ -113,12 +113,14 @@ URL: [url]', | |||
| 'assign_user_property_to' => 'Sätt användarens egenskaper till', | ||||
| 'assumed_released' => 'Antas klart för användning', | ||||
| 'attrdef_exists' => 'Attributdefinitionen finns redan', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => 'Attributdefinitionen används', | ||||
| 'attrdef_management' => 'Hantering av attributdefinitioner', | ||||
| 'attrdef_maxvalues' => 'Max tillåtna värde', | ||||
| 'attrdef_minvalues' => 'Min tillåtna värde', | ||||
| 'attrdef_min_greater_max' => 'Minimum antal värden är större än maximum antal värden', | ||||
| 'attrdef_multiple' => 'Tillåt flera värden', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => 'Attribut måste ha mer än ett värde', | ||||
| 'attrdef_name' => 'Namn', | ||||
| 'attrdef_noname' => 'Saknar namn för attribut definition', | ||||
|  |  | |||
|  | @ -119,12 +119,14 @@ URL: [url]', | |||
| 'assign_user_property_to' => 'Kullanıcının özelliklerini ata', | ||||
| 'assumed_released' => 'Yayınlandı kabul edilmekte', | ||||
| 'attrdef_exists' => 'Nitelik tanımı zaten mevcut', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => 'Nitelik tanımı halen kullanımda', | ||||
| 'attrdef_management' => 'Nitelik tanımı yönetimi', | ||||
| 'attrdef_maxvalues' => 'Maks. değer', | ||||
| 'attrdef_minvalues' => 'Min. değer', | ||||
| 'attrdef_min_greater_max' => 'Minimum değer maksimum değerden büyük', | ||||
| 'attrdef_multiple' => 'Birden fazla değere izin ver', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => 'Nitelik birden fazla değere sahip olmalı, fakat birden fazla değer ayarlanmamış', | ||||
| 'attrdef_name' => 'İsim', | ||||
| 'attrdef_noname' => 'Nitelik tanımlamada isim eksik', | ||||
|  |  | |||
|  | @ -125,12 +125,14 @@ URL: [url]', | |||
| 'assign_user_property_to' => 'Призначити властивості користувача', | ||||
| 'assumed_released' => 'Затверджено', | ||||
| 'attrdef_exists' => 'Визначення атрибуту вже існує', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => 'Визначення цього атрибуту вже використовується', | ||||
| 'attrdef_management' => 'Керування визначенням атрибутів', | ||||
| 'attrdef_maxvalues' => 'Макс. кількість значень', | ||||
| 'attrdef_minvalues' => 'Мін. кількість значень', | ||||
| 'attrdef_min_greater_max' => 'Мінімальна кількість значень більша за максимальну кількість значень', | ||||
| 'attrdef_multiple' => 'Декілька значень', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => 'Атрибут повинен мати кілька значень, але кілька значень не встановлено', | ||||
| 'attrdef_name' => 'Назва', | ||||
| 'attrdef_noname' => 'Відсутня назва для визначення атрибуту', | ||||
|  |  | |||
|  | @ -108,12 +108,14 @@ URL: [url]', | |||
| 'assign_user_property_to' => '分配用户属性给', | ||||
| 'assumed_released' => '假定发布', | ||||
| 'attrdef_exists' => '', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => '属性定义仍在使用中', | ||||
| 'attrdef_management' => '属性定义管理', | ||||
| 'attrdef_maxvalues' => '最大值', | ||||
| 'attrdef_minvalues' => '最小值', | ||||
| 'attrdef_min_greater_max' => '', | ||||
| 'attrdef_multiple' => '允许多个值', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => '', | ||||
| 'attrdef_name' => '名称', | ||||
| 'attrdef_noname' => '', | ||||
|  |  | |||
|  | @ -108,12 +108,14 @@ URL: [url]', | |||
| 'assign_user_property_to' => '分配使用者屬性給', | ||||
| 'assumed_released' => '假定發佈', | ||||
| 'attrdef_exists' => '', | ||||
| 'attrdef_info' => '', | ||||
| 'attrdef_in_use' => '', | ||||
| 'attrdef_management' => '屬性定義管理', | ||||
| 'attrdef_maxvalues' => '最大值', | ||||
| 'attrdef_minvalues' => '最小值', | ||||
| 'attrdef_min_greater_max' => '', | ||||
| 'attrdef_multiple' => '允許多個值', | ||||
| 'attrdef_multiple_needs_valueset' => '', | ||||
| 'attrdef_must_be_multiple' => '', | ||||
| 'attrdef_name' => '名稱', | ||||
| 'attrdef_noname' => '', | ||||
|  |  | |||
|  | @ -65,6 +65,9 @@ if ($action == "addattrdef") { | |||
| 	if($minvalues > $maxvalues) { | ||||
| 		UI::exitError(getMLText("admin_tools"),getMLText("attrdef_min_greater_max")); | ||||
| 	} | ||||
| 	if($multiple && $valueset == '') { | ||||
| 		UI::exitError(getMLText("admin_tools"),getMLText("attrdef_multiple_needs_valueset")); | ||||
| 	} | ||||
| 
 | ||||
| 	$newAttrdef = $dms->addAttributeDefinition($name, $objtype, $type, $multiple, $minvalues, $maxvalues, $valueset, $regex); | ||||
| 	if (!$newAttrdef) { | ||||
|  | @ -139,6 +142,9 @@ else if ($action == "editattrdef") { | |||
| 	if($minvalues > $maxvalues) { | ||||
| 		UI::exitError(getMLText("admin_tools"),getMLText("attrdef_min_greater_max")); | ||||
| 	} | ||||
| 	if($multiple && $valueset == '') { | ||||
| 		UI::exitError(getMLText("admin_tools"),getMLText("attrdef_multiple_needs_valueset")); | ||||
| 	} | ||||
| 
 | ||||
| 	if (!$attrdef->setName($name)) { | ||||
| 		UI::exitError(getMLText("admin_tools"),getMLText("error_occured")); | ||||
|  |  | |||
|  | @ -27,17 +27,32 @@ include("../inc/inc.DBInit.php"); | |||
| include("../inc/inc.ClassUI.php"); | ||||
| include("../inc/inc.Authentication.php"); | ||||
| 
 | ||||
| /** | ||||
|  * Include class to preview documents | ||||
|  */ | ||||
| require_once("SeedDMS/Preview.php"); | ||||
| 
 | ||||
| if (!$user->isAdmin()) { | ||||
| 	UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); | ||||
| } | ||||
| 
 | ||||
| $attrdefs = $dms->getAllAttributeDefinitions(); | ||||
| 
 | ||||
| if(isset($_GET['attrdefid']) && $_GET['attrdefid']) { | ||||
| 	$selattrdef = $dms->getAttributeDefinition($_GET['attrdefid']); | ||||
| } else { | ||||
| 	$selattrdef = null; | ||||
| } | ||||
| 
 | ||||
| $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); | ||||
| $view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'attrdefs'=>$attrdefs)); | ||||
| $view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'attrdefs'=>$attrdefs, 'selattrdef'=>$selattrdef)); | ||||
| if($view) { | ||||
| 	$view->show(); | ||||
| 	exit; | ||||
| 	$view->setParam('showtree', showtree()); | ||||
| 	$view->setParam('cachedir', $settings->_cacheDir); | ||||
| 	$view->setParam('enableRecursiveCount', $settings->_enableRecursiveCount); | ||||
| 	$view->setParam('maxRecursiveCount', $settings->_maxRecursiveCount); | ||||
| 	$view->setParam('previewWidthList', $settings->_previewWidthList); | ||||
| 	$view($_GET); | ||||
| } | ||||
| 
 | ||||
| ?>
 | ||||
|  |  | |||
|  | @ -61,7 +61,7 @@ if (isset($_GET["navBar"])) { | |||
| 	*/ | ||||
| } | ||||
| 
 | ||||
| if((isset($_GET["fullsearch"]) && $_GET["fullsearch"] || $settings->_defaultSearchMethod == 'fulltext') && $settings->_enableFullSearch) { | ||||
| if(isset($_GET["fullsearch"]) && $_GET["fullsearch"] && $settings->_enableFullSearch) { | ||||
| // Search in Fulltext {{{
 | ||||
| 	if (isset($_GET["query"]) && is_string($_GET["query"])) { | ||||
| 		$query = $_GET["query"]; | ||||
|  | @ -409,8 +409,9 @@ if(count($entries) == 1) { | |||
| 	if($view) { | ||||
| 		$view->setParam('totaldocs', $dcount /*resArr['totalDocs']*/); | ||||
| 		$view->setParam('totalfolders', $fcount /*resArr['totalFolders']*/); | ||||
| 		$view->setParam('fullsearch', ((isset($_GET["fullsearch"]) && $_GET["fullsearch"] || $settings->_defaultSearchMethod == 'fulltext') && $settings->_enableFullSearch) ? true : false); | ||||
| 		$view->setParam('fullsearch', (isset($_GET["fullsearch"]) && $_GET["fullsearch"] && $settings->_enableFullSearch) ? true : false); | ||||
| 		$view->setParam('mode', isset($mode) ? $mode : ''); | ||||
| 		$view->setParam('defaultsearchmethod', $settings->_defaultSearchMethod); | ||||
| 		$view->setParam('resultmode', isset($resultmode) ? $resultmode : ''); | ||||
| 		$view->setParam('searchin', isset($searchin) ? $searchin : array()); | ||||
| 		$view->setParam('startfolder', isset($startFolder) ? $startFolder : null); | ||||
|  |  | |||
|  | @ -31,29 +31,218 @@ require_once("class.Bootstrap.php"); | |||
|  */ | ||||
| class SeedDMS_View_AttributeMgr extends SeedDMS_Bootstrap_Style { | ||||
| 
 | ||||
| 	function js() { /* {{{ */ | ||||
| 		$selattrdef = $this->params['selattrdef']; | ||||
| ?>
 | ||||
| 
 | ||||
| $(document).ready( function() { | ||||
| 	$('body').on('submit', '#form', function(ev){ | ||||
| //		if(checkForm()) return;
 | ||||
| //		event.preventDefault();
 | ||||
| 	}); | ||||
| 	$( "#selector" ).change(function() { | ||||
| 		$('div.ajax').trigger('update', {attrdefid: $(this).val()}); | ||||
| 	}); | ||||
| }); | ||||
| <?php | ||||
| 	} /* }}} */ | ||||
| 
 | ||||
| 	function info() { /* {{{ */ | ||||
| 		$dms = $this->params['dms']; | ||||
| 		$user = $this->params['user']; | ||||
| 		$attrdefs = $this->params['attrdefs']; | ||||
| 		$selattrdef = $this->params['selattrdef']; | ||||
| 		$cachedir = $this->params['cachedir']; | ||||
| 		$previewwidth = $this->params['previewWidthList']; | ||||
| 		$enableRecursiveCount = $this->params['enableRecursiveCount']; | ||||
| 		$maxRecursiveCount = $this->params['maxRecursiveCount']; | ||||
| 
 | ||||
| 		if($selattrdef) { | ||||
| 			$this->contentHeading(getMLText("attrdef_info")); | ||||
| 			$res = $selattrdef->getStatistics(30); | ||||
| ?>
 | ||||
|     <div class="accordion" id="accordion1"> | ||||
|       <div class="accordion-group"> | ||||
|         <div class="accordion-heading"> | ||||
|           <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion1"       href="#collapseOne"> | ||||
| 						<?php printMLText('attribute_value'); ?>
 | ||||
|           </a> | ||||
|         </div> | ||||
|         <div id="collapseOne" class="accordion-body collapse" style="height: 0px;"> | ||||
|           <div class="accordion-inner"> | ||||
| <?php | ||||
| 			foreach(array('document', 'folder', 'content') as $type) { | ||||
| 				if(isset($res['frequencies'][$type]) && $res['frequencies'][$type]) { | ||||
| 					print "<table class=\"table table-condensed\">"; | ||||
| 					print "<thead>\n<tr>\n"; | ||||
| 					print "<th>".getMLText("attribute_value")."</th>\n"; | ||||
| 					print "<th>".getMLText("attribute_count")."</th>\n"; | ||||
| 					print "</tr></thead>\n<tbody>\n"; | ||||
| 					foreach($res['frequencies'][$type] as $entry) { | ||||
| 						echo "<tr><td>".$entry['value']."</td><td>".$entry['c']."</td></tr>"; | ||||
| 					} | ||||
| 					print "</tbody></table>"; | ||||
| 				} | ||||
| 			} | ||||
| ?>
 | ||||
|           </div> | ||||
|         </div> | ||||
|       </div> | ||||
|      </div> | ||||
| <?php | ||||
| 			if($res['folders'] || $res['docs']) { | ||||
| 				print "<table id=\"viewfolder-table\" class=\"table table-condensed\">"; | ||||
| 				print "<thead>\n<tr>\n"; | ||||
| 				print "<th></th>\n";	 | ||||
| 				print "<th>".getMLText("name")."</th>\n"; | ||||
| 				print "<th>".getMLText("status")."</th>\n"; | ||||
| 				print "<th>".getMLText("action")."</th>\n"; | ||||
| 				print "</tr>\n</thead>\n<tbody>\n"; | ||||
| 				foreach($res['folders'] as $subFolder) { | ||||
| 					echo $this->folderListRow($subFolder); | ||||
| 				} | ||||
| 				$previewer = new SeedDMS_Preview_Previewer($cachedir, $previewwidth); | ||||
| 				foreach($res['docs'] as $document) { | ||||
| 					echo $this->documentListRow($document, $previewer); | ||||
| 				} | ||||
| 
 | ||||
| 				echo "</tbody>\n</table>\n"; | ||||
| 			} | ||||
| 
 | ||||
| 			if($res['contents']) { | ||||
| 				print "<table id=\"viewfolder-table\" class=\"table\">"; | ||||
| 				print "<thead>\n<tr>\n"; | ||||
| 				print "<th></th>\n";	 | ||||
| 				print "<th>".getMLText("name")."</th>\n"; | ||||
| 				print "<th>".getMLText("status")."</th>\n"; | ||||
| 				print "<th>".getMLText("action")."</th>\n"; | ||||
| 				print "</tr>\n</thead>\n<tbody>\n"; | ||||
| 				$previewer = new SeedDMS_Preview_Previewer($cachedir, $previewwidth); | ||||
| 				foreach($res['contents'] as $content) { | ||||
| 					$doc = $content->getDocument(); | ||||
| 					echo $this->documentListRow($doc, $previewer); | ||||
| 				} | ||||
| 				print "</tbody></table>"; | ||||
| 			} | ||||
| 		} | ||||
| 	} /* }}} */ | ||||
| 
 | ||||
| 	function showAttributeForm($attrdef) { /* {{{ */ | ||||
| 		if($attrdef && !$attrdef->isUsed()) { | ||||
| ?>
 | ||||
| 			<form style="display: inline-block;" method="post" action="../op/op.AttributeMgr.php" > | ||||
| 				<?php echo createHiddenFieldWithKey('removeattrdef'); ?>
 | ||||
| 				<input type="hidden" name="attrdefid" value="<?php echo $attrdef->getID()?>"> | ||||
| 				<input type="hidden" name="action" value="removeattrdef"> | ||||
| 				<button type="submit" class="btn"><i class="icon-remove"></i> <?php echo getMLText("rm_attrdef")?></button>
 | ||||
| 			</form> | ||||
| <?php | ||||
| 		} | ||||
| ?>
 | ||||
| 			<form action="../op/op.AttributeMgr.php" method="post"> | ||||
| <?php | ||||
| 		if($attrdef) { | ||||
| 			echo createHiddenFieldWithKey('editattrdef'); | ||||
| ?>
 | ||||
| 			<input type="hidden" name="action" value="editattrdef"> | ||||
| 			<input type="hidden" name="attrdefid" value="<?php echo $attrdef->getID()?>" /> | ||||
| <?php | ||||
| 		} else { | ||||
|   		echo createHiddenFieldWithKey('addattrdef'); | ||||
| ?>
 | ||||
| 			<input type="hidden" name="action" value="addattrdef"> | ||||
| <?php | ||||
| 		} | ||||
| ?>
 | ||||
| 				<table class="table-condensed"> | ||||
| 					<tr> | ||||
| 						<td> | ||||
| 								<?php printMLText("attrdef_name");?>:
 | ||||
| 						</td> | ||||
| 						<td> | ||||
| 							<input type="text" name="name" value="<?php echo $attrdef ? htmlspecialchars($attrdef->getName()) : '' ?>"> | ||||
| 						</td> | ||||
| 					</tr> | ||||
| 					<tr> | ||||
| 						<td> | ||||
| 							<?php printMLText("attrdef_objtype");?>:
 | ||||
| 						</td> | ||||
| 						<td> | ||||
| 							<select name="objtype"><option value="<?php echo SeedDMS_Core_AttributeDefinition::objtype_all ?>">All</option><option value="<?php echo SeedDMS_Core_AttributeDefinition::objtype_folder ?>" <?php if($attrdef && $attrdef->getObjType() == SeedDMS_Core_AttributeDefinition::objtype_folder) echo "selected"; ?>>Folder</option><option value="<?php echo SeedDMS_Core_AttributeDefinition::objtype_document ?>" <?php if($attrdef && $attrdef->getObjType() == SeedDMS_Core_AttributeDefinition::objtype_document) echo "selected"; ?>>Document</option><option value="<?php echo SeedDMS_Core_AttributeDefinition::objtype_documentcontent ?>" <?php if($attrdef && $attrdef->getObjType() == SeedDMS_Core_AttributeDefinition::objtype_documentcontent) echo "selected"; ?>>Document content</option></select>
 | ||||
| 						</td> | ||||
| 					</tr> | ||||
| 					<tr> | ||||
| 						<td> | ||||
| 							<?php printMLText("attrdef_type");?>:
 | ||||
| 						</td> | ||||
| 						<td> | ||||
| 							<select name="type"><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_int ?>" <?php if($attrdef && $attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_int) echo "selected"; ?>><?php printMLText('attrdef_type_int'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_float ?>" <?php if($attrdef && $attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_float) echo "selected"; ?>><?php printMLText('attrdef_type_float'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_string ?>" <?php if($attrdef && $attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_string) echo "selected"; ?>><?php printMLText('attrdef_type_string'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_boolean ?>" <?php if($attrdef && $attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_boolean) echo "selected"; ?>><?php printMLText('attrdef_type_boolean'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_date ?>" <?php if($attrdef && $attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_date) echo "selected"; ?>><?php printMLText('attrdef_type_date'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_email ?>" <?php if($attrdef && $attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_email) echo "selected"; ?>><?php printMLText('attrdef_type_email'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_url ?>" <?php if($attrdef && $attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_url) echo "selected"; ?>><?php printMLText('attrdef_type_url'); ?></option></select>
 | ||||
| 						</td> | ||||
| 					</tr> | ||||
| 					<tr> | ||||
| 						<td> | ||||
| 							<?php printMLText("attrdef_multiple");?>:
 | ||||
| 						</td> | ||||
| 						<td> | ||||
| 							<input type="checkbox" value="1" name="multiple" <?php echo ($attrdef && $attrdef->getMultipleValues()) ? "checked" : "" ?>/>
 | ||||
| 						</td> | ||||
| 					</tr> | ||||
| 					<tr> | ||||
| 						<td> | ||||
| 							<?php printMLText("attrdef_minvalues");?>:
 | ||||
| 						</td> | ||||
| 						<td> | ||||
| 							<input type="text" value="<?php echo $attrdef ? $attrdef->getMinValues() : '' ?>" name="minvalues" /> | ||||
| 						</td> | ||||
| 					</tr> | ||||
| 					<tr> | ||||
| 						<td> | ||||
| 							<?php printMLText("attrdef_maxvalues");?>:
 | ||||
| 						</td> | ||||
| 						<td> | ||||
| 							<input type="text" value="<?php echo $attrdef ? $attrdef->getMaxValues() : '' ?>" name="maxvalues" /> | ||||
| 						</td> | ||||
| 					</tr> | ||||
| 					<tr> | ||||
| 						<td> | ||||
| 							<?php printMLText("attrdef_valueset");?>:
 | ||||
| 						</td> | ||||
| 						<td> | ||||
| 							<input type="text" value="<?php echo $attrdef ? $attrdef->getValueSet() : '' ?>" name="valueset" /> | ||||
| 						</td> | ||||
| 					</tr> | ||||
| 					<tr> | ||||
| 						<td> | ||||
| 							<?php printMLText("attrdef_regex");?>:
 | ||||
| 						</td> | ||||
| 						<td> | ||||
| 							<input type="text" value="<?php echo $attrdef ? $attrdef->getRegex() : '' ?>" name="regex" /> | ||||
| 						</td> | ||||
| 					</tr> | ||||
| 					<tr> | ||||
| 						<td></td> | ||||
| 						<td> | ||||
| 							<button type="submit" class="btn"><i class="icon-save"></i> <?php printMLText("save");?></button>
 | ||||
| 						</td> | ||||
| 					</tr> | ||||
| 				</table> | ||||
| 			</form> | ||||
| <?php | ||||
| } /* }}} */ | ||||
| 
 | ||||
| 	function form() { /* {{{ */ | ||||
| 		$selattrdef = $this->params['selattrdef']; | ||||
| 
 | ||||
| 		$this->showAttributeForm($selattrdef); | ||||
| 	} /* }}} */ | ||||
| 
 | ||||
| 	function show() { /* {{{ */ | ||||
| 		$dms = $this->params['dms']; | ||||
| 		$user = $this->params['user']; | ||||
| 		$attrdefs = $this->params['attrdefs']; | ||||
| 		$selattrdef = $this->params['selattrdef']; | ||||
| 
 | ||||
| 		$this->htmlStartPage(getMLText("admin_tools")); | ||||
| ?>
 | ||||
| 
 | ||||
| <script language="JavaScript"> | ||||
| obj = -1; | ||||
| function showAttributeDefinitions(selectObj) { | ||||
| 	if (obj != -1) | ||||
| 		obj.style.display = "none"; | ||||
| 	 | ||||
| 	id = selectObj.options[selectObj.selectedIndex].value; | ||||
| 	if (id == -1) | ||||
| 		return; | ||||
| 	 | ||||
| 	obj = document.getElementById("attrdefs" + id); | ||||
| 	obj.style.display = ""; | ||||
| } | ||||
| </script> | ||||
| <?php | ||||
| 		$this->globalNavigation(); | ||||
| 		$this->contentStart(); | ||||
| 		$this->pageNavigation(getMLText("admin_tools"), "admin_tools"); | ||||
|  | @ -61,19 +250,15 @@ function showAttributeDefinitions(selectObj) { | |||
| ?>
 | ||||
| 
 | ||||
| <div class="row-fluid"> | ||||
| <div class="span4"> | ||||
| <div class="span6"> | ||||
| <div class="well"> | ||||
| <?php echo getMLText("selection")?>:
 | ||||
| 	<select onchange="showAttributeDefinitions(this)" id="selector" class="span9"> | ||||
| 	<select class="chzn-select" id="selector" class="span9"> | ||||
| 		<option value="-1"><?php echo getMLText("choose_attrdef")?>
 | ||||
| 		<option value="0"><?php echo getMLText("new_attrdef")?>
 | ||||
| <?php | ||||
| 		$selected=0; | ||||
| 		$count=2; | ||||
| 		if($attrdefs) { | ||||
| 			foreach ($attrdefs as $attrdef) { | ||||
| 			 | ||||
| 				if (isset($_GET["attrdefid"]) && $attrdef->getID()==$_GET["attrdefid"]) $selected=$count;				 | ||||
| 				switch($attrdef->getObjType()) { | ||||
| 					case SeedDMS_Core_AttributeDefinition::objtype_all: | ||||
| 						$ot = getMLText("all"); | ||||
|  | @ -88,297 +273,20 @@ function showAttributeDefinitions(selectObj) { | |||
| 						$ot = getMLText("version"); | ||||
| 						break; | ||||
| 				} | ||||
| 				switch($attrdef->getType()) { | ||||
| 					case SeedDMS_Core_AttributeDefinition::type_int: | ||||
| 						$vt = getMLText('attrdef_type_int'); | ||||
| 						break; | ||||
| 					case SeedDMS_Core_AttributeDefinition::type_float: | ||||
| 						$vt = getMLText('attrdef_type_float'); | ||||
| 						break; | ||||
| 					case SeedDMS_Core_AttributeDefinition::type_string: | ||||
| 						$vt = getMLText('attrdef_type_string'); | ||||
| 						break; | ||||
| 					case SeedDMS_Core_AttributeDefinition::type_boolean: | ||||
| 						$vt = getMLText('attrdef_type_boolean'); | ||||
| 						break; | ||||
| 					case SeedDMS_Core_AttributeDefinition::type_url: | ||||
| 						$vt = getMLText('attrdef_type_url'); | ||||
| 						break; | ||||
| 					case SeedDMS_Core_AttributeDefinition::type_email: | ||||
| 						$vt = getMLText('attrdef_type_email'); | ||||
| 						break; | ||||
| 					case SeedDMS_Core_AttributeDefinition::type_date: | ||||
| 						$vt = getMLText('attrdef_type_date'); | ||||
| 						break; | ||||
| 				} | ||||
| 				print "<option value=\"".$attrdef->getID()."\">" . htmlspecialchars($attrdef->getName() ." (".$ot.", ".$vt.")"); | ||||
| 				$count++; | ||||
| 				print "<option value=\"".$attrdef->getID()."\" ".($selattrdef && $attrdef->getID()==$selattrdef->getID() ? 'selected' : '').">" . htmlspecialchars($attrdef->getName() ." (".$ot.")"); | ||||
| 			} | ||||
| 		} | ||||
| ?>
 | ||||
| 	</select> | ||||
| </div> | ||||
| <div class="ajax" data-view="AttributeMgr" data-action="info" <?php echo ($selattrdef ? "data-query=\"attrdefid=".$selattrdef->getID()."\"" : "") ?>></div>
 | ||||
| </div> | ||||
| 
 | ||||
| <div class="span8"> | ||||
| <div class="well" id="attrdefs0" style="display : none;"> | ||||
| 			<form action="../op/op.AttributeMgr.php" method="post"> | ||||
|   		<?php echo createHiddenFieldWithKey('addattrdef'); ?>
 | ||||
| 			<input type="hidden" name="action" value="addattrdef"> | ||||
| 			<table class="table-condensed"> | ||||
| 				<tr> | ||||
| 					<td><?php printMLText("attrdef_name");?>:</td><td><input type="text" name="name"></td>
 | ||||
| 				</tr> | ||||
| 				<tr> | ||||
| 					<td><?php printMLText("attrdef_objtype");?>:</td><td><select name="objtype"><option value="<?php echo SeedDMS_Core_AttributeDefinition::objtype_all ?>">All</option><option value="<?php echo SeedDMS_Core_AttributeDefinition::objtype_folder ?>">Folder</option><option value="<?php echo SeedDMS_Core_AttributeDefinition::objtype_document ?>"><?php printMLText("document"); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::objtype_documentcontent ?>"><?php printMLText("version"); ?></option></select>
 | ||||
| 				</tr> | ||||
| 				<tr> | ||||
| 				<td><?php printMLText("attrdef_type");?>:</td><td><select name="type"><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_int ?>"><?php printMLText('attrdef_type_int'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_float ?>"><?php printMLText('attrdef_type_float'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_string ?>"><?php printMLText('attrdef_type_string'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_boolean ?>"><?php printMLText('attrdef_type_boolean'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_url ?>"><?php printMLText('attrdef_type_url'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_email ?>"><?php printMLText('attrdef_type_email'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_date ?>"><?php printMLText('attrdef_type_date'); ?></option></select></td>
 | ||||
| 				</tr> | ||||
| 				<tr> | ||||
| 					<td><?php printMLText("attrdef_multiple");?>:</td><td><input type="checkbox" value="1" name="multiple" /></td>
 | ||||
| 				</tr> | ||||
| 				<tr> | ||||
| 					<td><?php printMLText("attrdef_minvalues");?>:</td><td><input type="text" value="" name="minvalues" /></td>
 | ||||
| 				</tr> | ||||
| 				<tr> | ||||
| 					<td><?php printMLText("attrdef_maxvalues");?>:</td><td><input type="text" value="" name="maxvalues" /></td>
 | ||||
| 				</tr> | ||||
| 				<tr> | ||||
| 					<td><?php printMLText("attrdef_valueset");?>:</td><td><input type="text" value="" name="valueset" /></td>
 | ||||
| 				</tr> | ||||
| 				<tr> | ||||
| 					<td><?php printMLText("attrdef_regex");?>:</td><td><input type="text" value="" name="regex" /></td>
 | ||||
| 				</tr> | ||||
| 				<tr> | ||||
| 					<td></td> | ||||
| 					<td><input type="submit" class="btn" value="<?php printMLText("new_attrdef"); ?>"></td> | ||||
| 				</tr> | ||||
| 			</table> | ||||
| 			</form> | ||||
| 			</div> | ||||
| 	 | ||||
| <?php	 | ||||
| 	 | ||||
| 			if($attrdefs) { | ||||
| 				foreach ($attrdefs as $attrdef) { | ||||
| 				 | ||||
| 					print "<div id=\"attrdefs".$attrdef->getID()."\" style=\"display : none;\">";	 | ||||
| 					if($attrdef->isUsed()) | ||||
| 						echo '<div class="alert alert-warning">'.getMLText('attrdef_in_use').'</div>'; | ||||
| ?>
 | ||||
| 				<div class="well"> | ||||
| <?php | ||||
| 					if($attrdef->isUsed()) { | ||||
| 						$res = $attrdef->getStatistics(3); | ||||
| 						if(isset($res['frequencies']) && $res['frequencies']) { | ||||
| 							print "<table class=\"table-condensed\">"; | ||||
| 							print "<thead>\n<tr>\n"; | ||||
| 							print "<th>".getMLText("attribute_count")."</th>\n"; | ||||
| 							print "<th>".getMLText("attribute_value")."</th>\n"; | ||||
| 							print "</tr></thead>\n<tbody>\n"; | ||||
| 							foreach($res['frequencies'] as $entry) { | ||||
| 								echo "<tr><td>".$entry['c']."</td><td>".$entry['value']."</td></tr>"; | ||||
| 							} | ||||
| 							print "</tbody></table>"; | ||||
| 						} | ||||
| 						if($res['docs']) { | ||||
| 							print "<table class=\"table-condensed\">"; | ||||
| 							print "<thead>\n<tr>\n"; | ||||
| 							print "<th></th>\n"; | ||||
| 							print "<th>".getMLText("name")."</th>\n"; | ||||
| 							print "<th>".getMLText("owner")."</th>\n"; | ||||
| 							print "<th>".getMLText("status")."</th>\n"; | ||||
| 							print "<th>".getMLText("attribute_value")."</th>\n"; | ||||
| 							print "<th>".getMLText("actions")."</th>\n"; | ||||
| 							print "</tr></thead>\n<tbody>\n"; | ||||
| 							foreach($res['docs'] as $doc) { | ||||
| 								$owner = $doc->getOwner(); | ||||
| 								$latest = $doc->getLatestContent(); | ||||
| 								$status = $latest->getStatus(); | ||||
| 								print "<tr>\n"; | ||||
| 								print "<td><i class=\"icon-file\"></i></td>"; | ||||
| 								print "<td><a href=\"../out/out.ViewDocument.php?documentid=".$doc->getID()."\">" . htmlspecialchars($doc->getName()) . "</a></td>\n"; | ||||
| 								print "<td>".htmlspecialchars($owner->getFullName())."</td>"; | ||||
| 								print "<td>".getOverallStatusText($status["status"])."</td>"; | ||||
| 								$value = $doc->getAttributeValue($attrdef); | ||||
| 								if(is_array($value)) | ||||
| 									print "<td>".implode('; ', $value)."</td>"; | ||||
| 								else | ||||
| 									print "<td>".$value."</td>"; | ||||
| 								print "<td>"; | ||||
| 								print "<a href='../out/out.EditDocument.php?documentid=".$doc->getID()."' class=\"btn btn-mini\"><i class=\"icon-edit\"></i> ".getMLText("edit")."</a>"; | ||||
| 								print "</td></tr>\n"; | ||||
| 							} | ||||
| 							print "</tbody></table>"; | ||||
| 						} | ||||
| 
 | ||||
| 						if($res['folders']) { | ||||
| 							print "<table class=\"table-condensed\">"; | ||||
| 							print "<thead><tr>\n"; | ||||
| 							print "<th></th>\n"; | ||||
| 							print "<th>".getMLText("name")."</th>\n"; | ||||
| 							print "<th>".getMLText("owner")."</th>\n"; | ||||
| 							print "<th>".getMLText("attribute_value")."</th>\n"; | ||||
| 							print "<th>".getMLText("actions")."</th>\n"; | ||||
| 							print "</tr></thead>\n<tbody>\n"; | ||||
| 							foreach($res['folders'] as $folder) { | ||||
| 								$owner = $folder->getOwner(); | ||||
| 								print "<tr class=\"folder\">"; | ||||
| 								print "<td><i class=\"icon-folder-close-alt\"></i></td>"; | ||||
| 								print "<td><a href=\"../out/out.ViewFolder.php?folderid=".$folder->getID()."\">" . htmlspecialchars($folder->getName()) . "</a></td>\n"; | ||||
| 								print "<td>".htmlspecialchars($owner->getFullName())."</td>"; | ||||
| 								$value = $folder->getAttributeValue($attrdef); | ||||
| 								if(is_array($value)) | ||||
| 									print "<td>".implode('; ', $value)."</td>"; | ||||
| 								else | ||||
| 									print "<td>".$value."</td>"; | ||||
| 								print "<td>"; | ||||
| 								print "<a href='../out/out.EditFolder.php?folderid=".$folder->getID()."' class=\"btn btn-mini\"><i class=\"icon-edit\"></i> ".getMLText("edit")."</a>"; | ||||
| 								print "</td></tr>"; | ||||
| 							} | ||||
| 							print "</tbody></table>"; | ||||
| 						} | ||||
| 
 | ||||
| 						if($res['contents']) { | ||||
| 							print "<table class=\"table-condensed\">"; | ||||
| 							print "<thead>\n<tr>\n"; | ||||
| 							print "<th></th>\n"; | ||||
| 							print "<th>".getMLText("name")."</th>\n"; | ||||
| 							print "<th>".getMLText("owner")."</th>\n"; | ||||
| 							print "<th>".getMLText("mimetype")."</th>\n"; | ||||
| 							print "<th>".getMLText("version")."</th>\n"; | ||||
| 							print "<th>".getMLText("attribute_value")."</th>\n"; | ||||
| 							print "<th>".getMLText("actions")."</th>\n"; | ||||
| 							print "</tr></thead>\n<tbody>\n"; | ||||
| 							foreach($res['contents'] as $content) { | ||||
| 								$doc = $content->getDocument(); | ||||
| 								$owner = $doc->getOwner(); | ||||
| 								print "<tr>\n"; | ||||
| 								print "<td><i class=\"icon-file\"></i></td>"; | ||||
| 								print "<td><a href=\"../out/out.ViewDocument.php?documentid=".$doc->getID()."\">" . htmlspecialchars($doc->getName()) . "</a></td>\n"; | ||||
| 								print "<td>".htmlspecialchars($owner->getFullName())."</td>"; | ||||
| 								print "<td>".$content->getMimeType()."</td>"; | ||||
| 								print "<td>".$content->getVersion()."</td>"; | ||||
| 								$value = $content->getAttributeValue($attrdef); | ||||
| 								if(is_array($value)) | ||||
| 									print "<td>".implode('; ', $value)."</td>"; | ||||
| 								else | ||||
| 									print "<td>".$value."</td>"; | ||||
| 								print "<td>"; | ||||
| 								print "<a href='../out/out.EditDocument.php?documentid=".$doc->getID()."' class=\"btn btn-mini\"><i class=\"icon-edit\"></i> ".getMLText("edit")."</a>"; | ||||
| 								print "</td></tr>\n"; | ||||
| 							} | ||||
| 							print "</tbody></table>"; | ||||
| 						} | ||||
| 					} else { | ||||
| ?>
 | ||||
| 				<form style="display: inline-block;" method="post" action="../op/op.AttributeMgr.php" > | ||||
| 					<?php echo createHiddenFieldWithKey('removeattrdef'); ?>
 | ||||
| 					<input type="hidden" name="attrdefid" value="<?php echo $attrdef->getID()?>"> | ||||
| 					<input type="hidden" name="action" value="removeattrdef"> | ||||
| 					<button type="submit" class="btn"><i class="icon-remove"></i> <?php echo getMLText("rm_attrdef")?></button>
 | ||||
| 				</form> | ||||
| <?php | ||||
| 					} | ||||
| ?>
 | ||||
| 				</div> | ||||
| 				<div class="well"> | ||||
| 				<table class="table-condensed"> | ||||
| 					<form action="../op/op.AttributeMgr.php" method="post"> | ||||
| 					<tr> | ||||
| 						<td> | ||||
| 								<?php echo createHiddenFieldWithKey('editattrdef'); ?>
 | ||||
| 								<input type="Hidden" name="action" value="editattrdef"> | ||||
| 								<input type="Hidden" name="attrdefid" value="<?php echo $attrdef->getID()?>" /> | ||||
| 								<?php printMLText("attrdef_name");?>:
 | ||||
| 						</td> | ||||
| 						<td> | ||||
| 							<input type="text" name="name" value="<?php echo htmlspecialchars($attrdef->getName()) ?>"> | ||||
| 						</td> | ||||
| 					</tr> | ||||
| 					<tr> | ||||
| 						<td> | ||||
| 							<?php printMLText("attrdef_objtype");?>:
 | ||||
| 						</td> | ||||
| 						<td> | ||||
| 						<select name="type"><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_int ?>" <?php if($attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_int) echo "selected"; ?>><?php printMLText('attrdef_type_int'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_float ?>" <?php if($attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_float) echo "selected"; ?>><?php printMLText('attrdef_type_float'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_string ?>" <?php if($attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_string) echo "selected"; ?>><?php printMLText('attrdef_type_string'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_boolean ?>" <?php if($attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_boolean) echo "selected"; ?>><?php printMLText('attrdef_type_boolean'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_url ?>" <?php if($attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_url) echo "selected"; ?>><?php printMLText('attrdef_type_url'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_email ?>" <?php if($attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_email) echo "selected"; ?>><?php printMLText('attrdef_type_email'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_date ?>" <?php if($attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_date) echo "selected"; ?>><?php printMLText('attrdef_type_date'); ?></option></select>
 | ||||
| 						</td> | ||||
| 					</tr> | ||||
| 					<tr> | ||||
| 						<td> | ||||
| 							<?php printMLText("attrdef_type");?>:
 | ||||
| 						</td> | ||||
| 						<td> | ||||
| 							<select name="type"><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_int ?>" <?php if($attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_int) echo "selected"; ?>><?php printMLText('attrdef_type_int'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_float ?>" <?php if($attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_float) echo "selected"; ?>><?php printMLText('attrdef_type_float'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_string ?>" <?php if($attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_string) echo "selected"; ?>><?php printMLText('attrdef_type_string'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_boolean ?>" <?php if($attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_boolean) echo "selected"; ?>><?php printMLText('attrdef_type_boolean'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_url ?>" <?php if($attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_url) echo "selected"; ?>><?php printMLText('attrdef_type_url'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_email ?>" <?php if($attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_email) echo "selected"; ?>><?php printMLText('attrdef_type_email'); ?></option><option value="<?php echo SeedDMS_Core_AttributeDefinition::type_date ?>" <?php if($attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_date) echo "selected"; ?>><?php printMLText('attrdef_type_date'); ?></option></select>
 | ||||
| 						</td> | ||||
| 					</tr> | ||||
| 					<tr> | ||||
| 						<td> | ||||
| 							<?php printMLText("attrdef_multiple");?>:
 | ||||
| 						</td> | ||||
| 						<td> | ||||
| 							<input type="checkbox" value="1" name="multiple" <?php echo $attrdef->getMultipleValues() ? "checked" : "" ?>/>
 | ||||
| 						</td> | ||||
| 					</tr> | ||||
| 					<tr> | ||||
| 						<td> | ||||
| 							<?php printMLText("attrdef_minvalues");?>:
 | ||||
| 						</td> | ||||
| 						<td> | ||||
| 							<input type="text" value="<?php echo $attrdef->getMinValues() ?>" name="minvalues" /> | ||||
| 						</td> | ||||
| 					</tr> | ||||
| 					<tr> | ||||
| 						<td> | ||||
| 							<?php printMLText("attrdef_maxvalues");?>:
 | ||||
| 						</td> | ||||
| 						<td> | ||||
| 							<input type="text" value="<?php echo $attrdef->getMaxValues() ?>" name="maxvalues" /> | ||||
| 						</td> | ||||
| 					</tr> | ||||
| 					<tr> | ||||
| 						<td> | ||||
| 							<?php printMLText("attrdef_valueset");?>:
 | ||||
| 						</td> | ||||
| 						<td> | ||||
| 							<input type="text" value="<?php echo $attrdef->getValueSet() ?>" name="valueset" /> | ||||
| 						</td> | ||||
| 					</tr> | ||||
| 					<tr> | ||||
| 						<td> | ||||
| 							<?php printMLText("attrdef_regex");?>:
 | ||||
| 						</td> | ||||
| 						<td> | ||||
| 							<input type="text" value="<?php echo $attrdef->getRegex() ?>" name="regex" /> | ||||
| 						</td> | ||||
| 					</tr> | ||||
| 					<tr> | ||||
| 						<td></td> | ||||
| 						<td> | ||||
| 							<button type="submit" class="btn"><i class="icon-save"></i> <?php printMLText("save");?></button>
 | ||||
| 						</td> | ||||
| 					</tr> | ||||
| 					</form> | ||||
| 					 | ||||
| 				</table> | ||||
| 			</div> | ||||
| 			</div> | ||||
| <?php | ||||
| 				} | ||||
| 			} | ||||
| ?>
 | ||||
| <div class="span6"> | ||||
| 	<div class="well"> | ||||
| 		<div class="ajax" data-view="AttributeMgr" data-action="form" <?php echo ($selattrdef ? "data-query=\"attrdefid=".$selattrdef->getID()."\"" : "") ?>></div>
 | ||||
| 	</div> | ||||
| </div> | ||||
| </div> | ||||
| </div> | ||||
| 	 | ||||
| <script language="JavaScript"> | ||||
| 
 | ||||
| sel = document.getElementById("selector"); | ||||
| sel.selectedIndex=<?php print $selected ?>;
 | ||||
| showAttributeDefinitions(sel); | ||||
| 
 | ||||
| </script> | ||||
| 
 | ||||
| <?php | ||||
| 		$this->htmlEndPage(); | ||||
|  |  | |||
|  | @ -319,6 +319,8 @@ $(document).ready(function () { | |||
| 			echo "      <input type=\"hidden\" name=\"searchin[]\" value=\"3\" />"; | ||||
| 			echo "      <input type=\"hidden\" name=\"searchin[]\" value=\"4\" />"; | ||||
| 			echo "      <input name=\"query\" class=\"search-query\" id=\"searchfield\" data-provide=\"typeahead\" type=\"text\" style=\"width: 150px;\" placeholder=\"".getMLText("search")."\"/>"; | ||||
| 			if($this->params['defaultsearchmethod'] == 'fulltext') | ||||
| 				echo "      <input type=\"hidden\" name=\"fullsearch\" value=\"1\" />"; | ||||
| //			if($this->params['enablefullsearch']) {
 | ||||
| //				echo "      <label class=\"checkbox\" style=\"color: #999999;\"><input type=\"checkbox\" name=\"fullsearch\" value=\"1\" title=\"".getMLText('fullsearch_hint')."\"/> ".getMLText('fullsearch')."</label>";
 | ||||
| //			}
 | ||||
|  | @ -1797,7 +1799,7 @@ $(function() { | |||
| 	function folderListRow($subFolder) { /* {{{ */ | ||||
| 		$dms = $this->params['dms']; | ||||
| 		$user = $this->params['user']; | ||||
| 		$folder = $this->params['folder']; | ||||
| //		$folder = $this->params['folder'];
 | ||||
| 		$showtree = $this->params['showtree']; | ||||
| 		$enableRecursiveCount = $this->params['enableRecursiveCount']; | ||||
| 		$maxRecursiveCount = $this->params['maxRecursiveCount']; | ||||
|  |  | |||
|  | @ -904,48 +904,34 @@ class HTTP_WebDAV_Server_SeedDMS extends HTTP_WebDAV_Server | |||
| 			} else { | ||||
| 				$this->logger->log('PROPPATCH: set '.$prop["ns"].''.$prop["val"].' to '.$prop["val"], PEAR_LOG_INFO); | ||||
| 				if($prop["ns"] == "SeedDMS:") { | ||||
| 					if (isset($prop["val"])) | ||||
| 						$val = $prop["val"]; | ||||
| 					else | ||||
| 						$val = ''; | ||||
| 					switch($prop["name"]) { | ||||
| 					case "comment": | ||||
| 						$obj->setComment($val); | ||||
| 						break; | ||||
| 					default: | ||||
| 						if($attrdef = $this->dms->getAttributeDefinitionByName($prop["name"])) { | ||||
| 							$valueset = $attrdef->getValueSetAsArray(); | ||||
| 							switch($attrdef->getType()) { | ||||
| 							case SeedDMS_Core_AttributeDefinition::type_string: | ||||
| 								if($valueset) { | ||||
| 									if(in_array($val, $valueset)) { | ||||
| 										$obj->setAttributeValue($attrdef, $val); | ||||
| 									} | ||||
| 								} else { | ||||
| 					if(in_array($prop['name'], array('id', 'version', 'status', 'status-comment', 'status-date'))) { | ||||
| 						$options["props"][$key]['status'] = "403 Forbidden"; | ||||
| 					} else { | ||||
| 						if (isset($prop["val"])) | ||||
| 							$val = $prop["val"]; | ||||
| 						else | ||||
| 							$val = ''; | ||||
| 						switch($prop["name"]) { | ||||
| 						case "comment": | ||||
| 							$obj->setComment($val); | ||||
| 							break; | ||||
| 						default: | ||||
| 							if($attrdef = $this->dms->getAttributeDefinitionByName($prop["name"])) { | ||||
| 								$valueset = $attrdef->getValueSetAsArray(); | ||||
| 								switch($attrdef->getType()) { | ||||
| 								case SeedDMS_Core_AttributeDefinition::type_string: | ||||
| 									$obj->setAttributeValue($attrdef, $val); | ||||
| 								} | ||||
| 								break; | ||||
| 							case SeedDMS_Core_AttributeDefinition::type_int: | ||||
| 								if($valueset) { | ||||
| 									if(in_array($val, $valueset)) { | ||||
| 										$obj->setAttributeValue($attrdef, (int) $val); | ||||
| 									} | ||||
| 								} else { | ||||
| 									break; | ||||
| 								case SeedDMS_Core_AttributeDefinition::type_int: | ||||
| 									$obj->setAttributeValue($attrdef, (int) $val); | ||||
| 								} | ||||
| 								break; | ||||
| 							case SeedDMS_Core_AttributeDefinition::type_float: | ||||
| 								if($valueset) { | ||||
| 									if(in_array($val, $valueset)) { | ||||
| 										$obj->setAttributeValue($attrdef, (float) $val); | ||||
| 									} | ||||
| 								} else { | ||||
| 									break; | ||||
| 								case SeedDMS_Core_AttributeDefinition::type_float: | ||||
| 									$obj->setAttributeValue($attrdef, (float) $val); | ||||
| 									break; | ||||
| 								case SeedDMS_Core_AttributeDefinition::type_boolean: | ||||
| 									$obj->setAttributeValue($attrdef, $val == 1 ? true : false); | ||||
| 									break; | ||||
| 								} | ||||
| 								break; | ||||
| 							case SeedDMS_Core_AttributeDefinition::type_boolean: | ||||
| 								$obj->setAttributeValue($attrdef, $val == 1 ? true : false); | ||||
| 								break; | ||||
| 							} | ||||
| 						} | ||||
| 					} | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Uwe Steinmann
						Uwe Steinmann