diff --git a/code/cms/DMSDocumentAddController.php b/code/cms/DMSDocumentAddController.php index aed0100..1d897e1 100644 --- a/code/cms/DMSDocumentAddController.php +++ b/code/cms/DMSDocumentAddController.php @@ -151,6 +151,22 @@ class DMSDocumentAddController extends LeftAndMain { return singleton('CMSPagesController')->Link().'edit/show/'.$pageID; } + public function documentautocomplete() { + $term = $_GET['term']; + $term_sql = Convert::raw2sql($term); + $data = DataList::create('DMSDocument'); + $data->where("(\"ID\" LIKE '%$term_sql%' OR \"Filename\" LIKE '%$term_sql%' OR \"Title\" LIKE '%$term_sql%')"); + $data->limit(20); + + $return = array(); + foreach($data as $doc) { + $return[] = $doc->ID . ' - ' . $doc->Title; + } + + + return json_encode($return); + } + } diff --git a/code/cms/DMSDocumentAddExistingField.php b/code/cms/DMSDocumentAddExistingField.php index df5f595..c31f601 100644 --- a/code/cms/DMSDocumentAddExistingField.php +++ b/code/cms/DMSDocumentAddExistingField.php @@ -30,6 +30,8 @@ class DMSDocumentAddExistingField extends FormField { } public function Field($properties = array()) { + Requirements::javascript('dms/javascript/DMSDocumentAddExistingField.js'); + return $this->renderWith('DMSDocumentAddExistingField'); } } diff --git a/javascript/DMSDocumentAddExistingField.js b/javascript/DMSDocumentAddExistingField.js new file mode 100644 index 0000000..9997322 --- /dev/null +++ b/javascript/DMSDocumentAddExistingField.js @@ -0,0 +1,9 @@ +(function($) { + $('.document-add-existing .document-autocomplete').entwine({ + onmatch: function() { + $(this).autocomplete({ + source: 'admin/pages/adddocument/documentautocomplete' + }); + } + }); +}(jQuery)); \ No newline at end of file diff --git a/templates/DMSDocumentAddExistingField.ss b/templates/DMSDocumentAddExistingField.ss index cd9bd13..4a3213b 100644 --- a/templates/DMSDocumentAddExistingField.ss +++ b/templates/DMSDocumentAddExistingField.ss @@ -1,4 +1,4 @@ -
+

@@ -6,6 +6,8 @@ Link a Document

+ +