Exemplo n.º 1
0
	private function getFieldsNotInType($itemTypeID, $allowBaseConversion=false) {
		$fieldIDs = array();
		
		foreach ($this->itemData as $fieldID => $val) {
			if (!is_null($val)) {
				if (Zotero_ItemFields::isValidForType($fieldID, $itemTypeID)) {
					continue;
				}
				
				if ($allowBaseConversion) {
					$baseID = Zotero_ItemFields::getBaseIDFromTypeAndField($this->itemTypeID, $fieldID);
					if ($baseID) {
						$newFieldID = Zotero_ItemFields::getFieldIDFromTypeAndBase($itemTypeID, $baseID);
						if ($newFieldID) {
							continue;
						}
					}
				}
				$fieldIDs[] = $fieldID;
			}
		}
		
		if (!$fieldIDs) {
			return false;
		}
		
		return $fieldIDs;
	}