Commit a869a0e04507187b57f7a6898dc8d37ccd25d431
1 parent
52472cce
Displays generic and specific meta data for editing
git-svn-id: https://kt-dms.svn.sourceforge.net/svnroot/kt-dms/trunk@564 c91229c3-7414-0410-bfa2-8a42b809f60b
Showing
1 changed file
with
35 additions
and
16 deletions
lib/visualpatterns/PatternEditableTableSqlQuery.inc
| @@ -39,11 +39,13 @@ class PatternEditableTableSqlQuery { | @@ -39,11 +39,13 @@ class PatternEditableTableSqlQuery { | ||
| 39 | /** columns visible or not (store columns) */ | 39 | /** columns visible or not (store columns) */ |
| 40 | var $aColumnsVisible; | 40 | var $aColumnsVisible; |
| 41 | /** column types: 1 = text, 2 = boolean, 3 = drop down list */ | 41 | /** column types: 1 = text, 2 = boolean, 3 = drop down list */ |
| 42 | - var $aColumnTypes; | 42 | + var $aColumnDisplayTypes; |
| 43 | + /** 0 = id, 1 = text, 2 = boolean*/ | ||
| 44 | + var $aColumnDatabaseTypes; | ||
| 43 | /** Unique name */ | 45 | /** Unique name */ |
| 44 | var $sUniqueName; | 46 | var $sUniqueName; |
| 45 | 47 | ||
| 46 | - function PatternEditableTableSqlQuery($sTmpQuery, $sTmpTableName, $aTmpStoreColumnNames, $aTmpDisplayColumnNames, $aTmpColumnsEditable, $aTmpColumnsVisible, $aTmpColumnTypes, $sTmpUniqueName) { | 48 | + function PatternEditableTableSqlQuery($sTmpQuery, $sTmpTableName, $aTmpStoreColumnNames, $aTmpDisplayColumnNames, $aTmpColumnsEditable, $aTmpColumnsVisible, $aTmpColumnDisplayTypes, $aTmpColumnDatabaseTypes) { |
| 47 | $this->sQuery = $sTmpQuery; | 49 | $this->sQuery = $sTmpQuery; |
| 48 | $this->sTableName = $sTmpTableName; | 50 | $this->sTableName = $sTmpTableName; |
| 49 | $this->aStoreColumnNames = $aTmpStoreColumnNames; | 51 | $this->aStoreColumnNames = $aTmpStoreColumnNames; |
| @@ -51,7 +53,13 @@ class PatternEditableTableSqlQuery { | @@ -51,7 +53,13 @@ class PatternEditableTableSqlQuery { | ||
| 51 | $this->aColumnsEditable = $aTmpColumnsEditable; | 53 | $this->aColumnsEditable = $aTmpColumnsEditable; |
| 52 | $this->sUniqueName = $sTmpUniqueName; | 54 | $this->sUniqueName = $sTmpUniqueName; |
| 53 | $this->aColumnsVisible = $aTmpColumnsVisible; | 55 | $this->aColumnsVisible = $aTmpColumnsVisible; |
| 54 | - $this->aColumnTypes = $aTmpColumnTypes; | 56 | + $this->aColumnDisplayTypes = $aTmpColumnDisplayTypes; |
| 57 | + //echo "Types: " . $aTmpDatabaseColumnTypes; | ||
| 58 | + $this->aColumnDatabaseTypes = $aTmpColumnDatabaseTypes; | ||
| 59 | + } | ||
| 60 | + | ||
| 61 | + function setUniqueName($sNewValue) { | ||
| 62 | + $this->sUniqueName = $sNewValue; | ||
| 55 | } | 63 | } |
| 56 | 64 | ||
| 57 | 65 | ||
| @@ -92,37 +100,47 @@ class PatternEditableTableSqlQuery { | @@ -92,37 +100,47 @@ class PatternEditableTableSqlQuery { | ||
| 92 | $iRowCount = 0; | 100 | $iRowCount = 0; |
| 93 | while ($sql->next_record()) { | 101 | while ($sql->next_record()) { |
| 94 | $sToRender .= "<tr>\n"; | 102 | $sToRender .= "<tr>\n"; |
| 103 | + $sToRender .= "<input type=\"hidden\" name=\"unique_start_" . $this->sUniqueName . $iRowCount . "\" value=\"\" />\n"; | ||
| 95 | $sToRender .= "<input type=\"hidden\" name=\"" . $this->sUniqueName . "_" . $iRowCount . "\" value=\"" . $sql->f("id") . "\" />\n"; | 104 | $sToRender .= "<input type=\"hidden\" name=\"" . $this->sUniqueName . "_" . $iRowCount . "\" value=\"" . $sql->f("id") . "\" />\n"; |
| 96 | - $sToRender .= "<input type=\"hidden\" name=\"" . $this->sUniqueName . "_" . $iRowCount . "_tc\" value=\"" . $this->sTableName . "\" />\n"; | ||
| 97 | - for ($i = 0; $i < count($this->aStoreColumnNames); $i++) { | 105 | + $sToRender .= "<input type=\"hidden\" name=\"" . $this->sUniqueName . "_" . $iRowCount . "_tn\" value=\"" . $this->sTableName . "\" />\n"; |
| 106 | + for ($i = 0; $i < count($this->aStoreColumnNames); $i++) { | ||
| 98 | //generate the right kind of editable field | 107 | //generate the right kind of editable field |
| 99 | - $sToRender .= "\t<td>\n"; | ||
| 100 | - switch ($this->aColumnTypes[$i]) { | 108 | + $sToRender .= "\t<td>\n"; |
| 109 | + switch ($this->aColumnDisplayTypes[$i]) { | ||
| 101 | case 1: | 110 | case 1: |
| 111 | + //output the table column name | ||
| 112 | + $sToRender .= "\t<input type=\"hidden\" name=\"" . $this->sUniqueName . "_" . $iRowCount . $i . "_tc\" value=\"" . $this->aStoreColumnNames[$i] . "\" />\n"; | ||
| 113 | + //output the column type | ||
| 114 | + $sToRender .= "\t<input type=\"hidden\" name=\"" . $this->sUniqueName . "_" . $iRowCount . $i . "_type\" value=\"" . $this->aColumnDatabaseTypes[$i] . "\" />\n"; | ||
| 115 | + //output the value | ||
| 102 | if ($this->aColumnsVisible[$i]) { | 116 | if ($this->aColumnsVisible[$i]) { |
| 103 | if ($this->aColumnsEditable[$i]) { | 117 | if ($this->aColumnsEditable[$i]) { |
| 104 | - $sToRender .= "\t<input type=\"text\" name=\"" . $this->sUniqueName . "_" . $iRowCount . "_value\" value=\"" . $sql->f($this->aStoreColumnNames[$i]) . "\" />\n"; | 118 | + $sToRender .= "\t<input type=\"text\" name=\"" . $this->sUniqueName . "_" . $iRowCount . $i . "_value\" value=\"" . $sql->f($this->aStoreColumnNames[$i]) . "\" />\n"; |
| 105 | } else { | 119 | } else { |
| 106 | - $sToRender .= "\t<input type=\"hidden\" name=\"" . $this->sUniqueName . "_" . $iRowCount . "_value\" value=\"" . $sql->f($this->aStoreColumnNames[$i]) . "\" />".$sql->f($this->aDisplayColumnNames[$i])."\n"; | 120 | + $sToRender .= "\t<input type=\"hidden\" name=\"" . $this->sUniqueName . "_" . $iRowCount . $i . "_value\" value=\"" . $sql->f($this->aStoreColumnNames[$i]) . "\" />".$sql->f($this->aDisplayColumnNames[$i])."\n"; |
| 107 | } | 121 | } |
| 108 | } else { | 122 | } else { |
| 109 | - $sToRender .= "\t<input type=\"hidden\" name=\"" . $this->sUniqueName . "_" . $iRowCount . "_value\" value=\"" . $sql->f($this->aStoreColumnNames[$i]) . "\" />\n"; | 123 | + $sToRender .= "\t<input type=\"hidden\" name=\"" . $this->sUniqueName . "_" . $iRowCount . $i . "_value\" value=\"" . $sql->f($this->aStoreColumnNames[$i]) . "\" />\n"; |
| 110 | } | 124 | } |
| 111 | - $sToRender .= "\t<input type=\"hidden\" name=\"" . $this->sUniqueName . "_" . $iRowCount . "_tc\" value=\"" . $this->aStoreColumnNames[$i] . "\" />\n"; | ||
| 112 | break; | 125 | break; |
| 113 | case 2: | 126 | case 2: |
| 127 | + //output the table column name | ||
| 128 | + $sToRender .= "\t<input type=\"hidden\" name=\"tc_" . $this->sUniqueName . "_" . $iRowCount . $i . "_tc\" value=\"" . $this->aStoreColumnNames[$i] . "\" />\n"; | ||
| 129 | + //output the column type | ||
| 130 | + $sToRender .= "\t<input type=\"hidden\" name=\"" . $this->sUniqueName . "_" . $iRowCount . $i . "_type\" value=\"" . $this->aColumnDatabaseTypes[$i] . "\" />\n"; | ||
| 131 | + //output the value | ||
| 114 | if ($this->aColumnsVisible[$i]) { | 132 | if ($this->aColumnsVisible[$i]) { |
| 115 | if ($this->aColumnsEditable[$i]) { | 133 | if ($this->aColumnsEditable[$i]) { |
| 116 | - $sToRender .= "\t<input type=\"checkbox\" name=\"" . $this->sUniqueName . "_" . $iRowCount . "_value\" value=\"" . ($sql->f($this->aStoreColumnNames[$i] ? "1\" checked" : "0\"")) . " />\n"; | 134 | + $sToRender .= "\t<input type=\"checkbox\" name=\"" . $this->sUniqueName . "_" . $iRowCount . $i . "_value\" value=\"" . ($sql->f($this->aStoreColumnNames[$i] ? "1\" checked" : "0\"")) . " />\n"; |
| 117 | } else { | 135 | } else { |
| 118 | - $sToRender .= "\t<input type=\"hidden\" name=\"" . $this->sUniqueName . "_" . $iRowCount . "_value\" value=\"" . $sql->f($this->aStoreColumnNames[$i]) . "\" />".$sql->f($this->aDisplayColumnNames[$i])."\n"; | 136 | + $sToRender .= "\t<input type=\"hidden\" name=\"" . $this->sUniqueName . "_" . $iRowCount . $i . "_value\" value=\"" . $sql->f($this->aStoreColumnNames[$i]) . "\" />".$sql->f($this->aDisplayColumnNames[$i])."\n"; |
| 119 | } | 137 | } |
| 120 | } else { | 138 | } else { |
| 121 | - $sToRender .= "\t<input type=\"hidden\" name=\"" . $this->sUniqueName . "_" . $iRowCount . "_value\" value=\"" . $sql->f($this->aStoreColumnNames[$i]) . "\" />\n"; | ||
| 122 | - } | ||
| 123 | - $sToRender .= "\t<input type=\"hidden\" name=\"" . $this->sUniqueName . "_" . $iRowCount . "_tc\" value=\"" . $this->aStoreColumnNames[$i] . "\" />\n"; | 139 | + $sToRender .= "\t<input type=\"hidden\" name=\"" . $this->sUniqueName . "_" . $iRowCount . $i . "_value\" value=\"" . $sql->f($this->aStoreColumnNames[$i]) . "\" />\n"; |
| 140 | + } | ||
| 124 | break; | 141 | break; |
| 125 | case 3: | 142 | case 3: |
| 143 | + $sToRender .= "<b>The column type for drop downs is not implemented yet</b>\n"; | ||
| 126 | break; | 144 | break; |
| 127 | default: | 145 | default: |
| 128 | $sToRender .= "<b>You are attempting to render an unknown column type " . ($this->aColumnTypes[$i]) . " in PatternEditableTableSqlQuery</b>\n"; | 146 | $sToRender .= "<b>You are attempting to render an unknown column type " . ($this->aColumnTypes[$i]) . " in PatternEditableTableSqlQuery</b>\n"; |
| @@ -131,6 +149,7 @@ class PatternEditableTableSqlQuery { | @@ -131,6 +149,7 @@ class PatternEditableTableSqlQuery { | ||
| 131 | 149 | ||
| 132 | $sToRender .= "\t</td>\n"; | 150 | $sToRender .= "\t</td>\n"; |
| 133 | } | 151 | } |
| 152 | + $sToRender .= "<input type=\"hidden\" name=\"unique_end_" . $this->sUniqueName . $iRowCount . "\" value=\"\" />\n"; | ||
| 134 | $sToRender .= "</tr>\n"; | 153 | $sToRender .= "</tr>\n"; |
| 135 | $iRowCount++; | 154 | $iRowCount++; |
| 136 | } | 155 | } |