Commit 13acb6f059d70e95ec20d9a2a718beae5efa2267
1 parent
6cff93be
Added document type, document link type functionality
git-svn-id: https://kt-dms.svn.sourceforge.net/svnroot/kt-dms/trunk@106 c91229c3-7414-0410-bfa2-8a42b809f60b
Showing
1 changed file
with
50 additions
and
7 deletions
lib/documentmanagement/documentManager.inc
| ... | ... | @@ -81,6 +81,29 @@ class DocumentManager { |
| 81 | 81 | |
| 82 | 82 | } |
| 83 | 83 | |
| 84 | + | |
| 85 | + /** | |
| 86 | + * Get the primary key for a document type | |
| 87 | + * | |
| 88 | + * @param $sName Name of document type to get ID for | |
| 89 | + * | |
| 90 | + * @return int document type id if the document type exists, false otherwise | |
| 91 | + */ | |
| 92 | + function & getDocumentTypeID($sName) { | |
| 93 | + global $lang_err_document_type_field_does_not_exist, $default; | |
| 94 | + //escape special characters that may interfere with the db query | |
| 95 | + $sName = addslashes($sName); | |
| 96 | + | |
| 97 | + if ($this->documentTypeExists($sName)) { | |
| 98 | + $sql = new Owl_DB(); | |
| 99 | + $sql->query("SELECT ID FROM " . $default->owl_document_types_table . " WHERE name = '" . $sName . "'"); | |
| 100 | + $sql->next_record(); | |
| 101 | + return $sql->f("ID"); | |
| 102 | + } | |
| 103 | + $default->errorMessage = $lang_err_document_type_does_not_exist . $sName; | |
| 104 | + return false; | |
| 105 | + } | |
| 106 | + | |
| 84 | 107 | /** |
| 85 | 108 | * Checks to see if a document type with a given name |
| 86 | 109 | * already exists |
| ... | ... | @@ -112,9 +135,9 @@ class DocumentManager { |
| 112 | 135 | //Get hold of the global error string |
| 113 | 136 | global $default; |
| 114 | 137 | //if the document field type is not associated with the document |
| 115 | - if (!$this->documentTypeFieldExistsForDocumentType($iDocumentTypeID, $iDocumentTypeFieldID)) { | |
| 138 | + if (!($this->documentTypeFieldExistsForDocumentType($iDocumentTypeID, $iDocumentTypeFieldID))) { | |
| 116 | 139 | $sql = new Owl_DB(); |
| 117 | - $result = $sql->query("INSERT INTO " . $default->document_type_fields_table . " (document_type_id, field_id, is_mandatory) VALUES (" . $iDocumentTypeID . ", " . $iDocumentTypeFieldID . ", " . $bIsMandatory . ")"); | |
| 140 | + $result = $sql->query("INSERT INTO " . $default->owl_document_type_fields_table . " (document_type_id, field_id, is_mandatory) VALUES (" . $iDocumentTypeID . ", " . $iDocumentTypeFieldID . ", " . $bIsMandatory . ")"); | |
| 118 | 141 | if (!$result) { |
| 119 | 142 | $default->errorMessage = "Database Error. Failed to insert document field type with ID " . $iDocumentTypeFieldID; |
| 120 | 143 | return false; |
| ... | ... | @@ -132,11 +155,12 @@ class DocumentManager { |
| 132 | 155 | * @param $iDocumentTypeFieldID Primary key of document type field |
| 133 | 156 | */ |
| 134 | 157 | function deleteDocumentTypeFieldLink($iDocumentTypeID, $iDocumentTypeFieldID) { |
| 158 | + global $default; | |
| 135 | 159 | //Get hold of the global error string |
| 136 | 160 | global $default; |
| 137 | 161 | if ($this->documentTypeFieldExistsForDocumentType($iDocumentTypeID, $iDocumentTypeFieldID)) { |
| 138 | 162 | $sql = new Owl_DB(); |
| 139 | - $result = $sql->query("DELETE FROM " . $default->document_type_fields_table . " where document_type_id = " . $iDocumentTypeID . " AND field_id = " . $iDocumentTypeFieldID); | |
| 163 | + $result = $sql->query("DELETE FROM " . $default->owl_document_type_fields_table . " where document_type_id = " . $iDocumentTypeID . " AND field_id = " . $iDocumentTypeFieldID); | |
| 140 | 164 | if (!result) { |
| 141 | 165 | $default->errorMessage = "Database Error. Failed to deleted document type field with document_type_id " . $iDocumentTypeID . " and field_id " . $iDocumentTypeFieldID; |
| 142 | 166 | return false; |
| ... | ... | @@ -157,9 +181,10 @@ class DocumentManager { |
| 157 | 181 | * |
| 158 | 182 | * @return true is the document field type is linked to the document type, false otherwise |
| 159 | 183 | */ |
| 160 | - function documentTypeFieldExistsForDocumentType($iDocumentTypeID, $iDocumentTypeFieldID) { | |
| 184 | + function documentTypeFieldExistsForDocumentType($iDocumentTypeID, $iDocumentTypeFieldID) { | |
| 185 | + global $default; | |
| 161 | 186 | $sql = new Owl_DB(); |
| 162 | - $sql->query("SELECT * FROM " . $default->document_type_fields_table . " WHERE document_type_id = " . $iDocumentTypeID . " AND field_id = " . $iDocumentTypeFieldID); | |
| 187 | + $sql->query("SELECT * FROM " . $default->owl_document_type_fields_table . " WHERE document_type_id = " . $iDocumentTypeID . " AND field_id = " . $iDocumentTypeFieldID); | |
| 163 | 188 | return $sql->next_record(); |
| 164 | 189 | } |
| 165 | 190 | |
| ... | ... | @@ -216,6 +241,26 @@ class DocumentManager { |
| 216 | 241 | } |
| 217 | 242 | |
| 218 | 243 | /** |
| 244 | + * Get the primary key for a document type field | |
| 245 | + * | |
| 246 | + * @param $sName Document type field name to get primary key for | |
| 247 | + * | |
| 248 | + * @return ID if document type field exists, false otherwise and sets $default->errorMessage | |
| 249 | + */ | |
| 250 | + function & getDocumentTypeFieldID($sName) { | |
| 251 | + global $lang_err_document_type_field_does_not_exist, $default; | |
| 252 | + $sName = addslashes($sName); | |
| 253 | + if ($this->documentTypeFieldExists($sName)) { | |
| 254 | + $sql = new Owl_DB(); | |
| 255 | + $sql->query("SELECT id FROM " . $default->owl_fields_table . " WHERE name = '" . $sName . "'"); | |
| 256 | + $sql->next_record(); | |
| 257 | + return $sql->f("id"); | |
| 258 | + } | |
| 259 | + $default->errorMessage = $lang_err_document_type_field_does_not_exist . $sName; | |
| 260 | + return false; | |
| 261 | + } | |
| 262 | + | |
| 263 | + /** | |
| 219 | 264 | * Checks whether a document type field exists |
| 220 | 265 | * |
| 221 | 266 | * @param $sName Document type field name to check |
| ... | ... | @@ -232,6 +277,4 @@ class DocumentManager { |
| 232 | 277 | |
| 233 | 278 | |
| 234 | 279 | } |
| 235 | - | |
| 236 | - | |
| 237 | 280 | ?> | ... | ... |