66class DataTable
77{
88
9- /**
9+ /**
1010 * DataTableQuery object.
1111 *
12- * @var \Hermawan\CodeIgniter4-DataTable\ DataTableQuery
12+ * @var DataTableQuery
1313 */
14- private $ query ;
14+ private $ query ;
1515
1616
17- /**
17+ /**
1818 * DataTablColumns object.
1919 *
20- * @var \Hermawan\CodeIgniter4-DataTable\DataTableColumns
20+ * @var DataTableColumnDefs
2121 */
22- private $ columnDefs ;
22+ private $ columnDefs ;
2323
2424
25- /**
25+ /**
2626 * Builder from CodeIgniter Query Builder
27- * @param Builder $builder
27+ * @param \CodeIgniter\Database\BaseBuilder| \CodeIgniter\BaseModel $builder
2828 */
2929 public function __construct ($ builder )
3030 {
31- if (is_subclass_of ($ builder , '\CodeIgniter\BaseModel ' ) && method_exists ($ builder , 'builder ' )){
31+ if (is_subclass_of ($ builder , '\CodeIgniter\BaseModel ' ) && method_exists ($ builder , 'builder ' )) {
3232 $ builder = $ builder ->builder ();
3333 }
34- $ this ->query = new DataTableQuery ($ builder );
34+ $ this ->query = new DataTableQuery ($ builder );
3535 $ this ->columnDefs = new DataTableColumnDefs ($ builder );
3636 }
3737
3838 /**
3939 * Make a DataTable instance from builder.
4040 *
4141 * Builder from CodeIgniter Query Builder
42- * @param Builder $builder
42+ * @param \CodeIgniter\Database\BaseBuilder| \CodeIgniter\BaseModel $builder
4343 */
44- public static function of ($ builder )
44+ public static function of ($ builder ): DataTable
4545 {
4646 return new self ($ builder );
4747 }
@@ -69,21 +69,21 @@ public function filter($filterFunction)
6969
7070 /**
7171 * Add numbering to first column
72- * @param String $column
72+ * @param string $column
7373 */
7474 public function addNumbering ($ column = NULL )
7575 {
7676 $ this ->columnDefs ->addNumbering ($ column );
7777 return $ this ;
7878 }
7979
80-
81- /**
80+
81+ /**
8282 * Add extra column
8383 *
84- * @param String $column
84+ * @param string $column
8585 * @param Closure $callback
86- * @param String |int $position
86+ * @param string |int $position
8787 */
8888 public function add ($ column , $ callback , $ position = 'last ' )
8989 {
@@ -94,10 +94,10 @@ public function add($column, $callback, $position = 'last')
9494 /**
9595 * Edit column
9696 *
97- * @param String $column
97+ * @param string $column
9898 * @param Closure $callback
9999 */
100- public function edit ($ column , $ callback )
100+ public function edit ($ column , $ callback )
101101 {
102102 $ this ->columnDefs ->edit ($ column , $ callback );
103103 return $ this ;
@@ -106,7 +106,7 @@ public function edit($column, $callback)
106106 /**
107107 * Format column
108108 *
109- * @param String $column
109+ * @param string $column
110110 * @param Closure $callback
111111 */
112112 public function format ($ column , $ callback )
@@ -115,10 +115,10 @@ public function format($column, $callback)
115115 return $ this ;
116116 }
117117
118- /**
118+ /**
119119 * Hide column
120120 *
121- * @param String $column
121+ * @param string $column
122122 */
123123 public function hide ($ column )
124124 {
@@ -129,7 +129,7 @@ public function hide($column)
129129 /**
130130 * Escape column
131131 *
132- * @param String $column
132+ * @param string $column
133133 * @param bool $escape
134134 */
135135 public function escape ($ column , $ escape = TRUE )
@@ -138,9 +138,9 @@ public function escape($column, $escape = TRUE)
138138 return $ this ;
139139 }
140140
141- /**
141+ /**
142142 * Set Searchable columns
143- * @param String|Array
143+ * @param string|array
144144 */
145145 public function setSearchableColumns ($ columns )
146146 {
@@ -150,7 +150,7 @@ public function setSearchableColumns($columns)
150150
151151 /**
152152 * Add Searchable columns
153- * @param String|Array
153+ * @param string|array
154154 */
155155 public function addSearchableColumns ($ columns )
156156 {
@@ -160,32 +160,31 @@ public function addSearchableColumns($columns)
160160
161161
162162
163- /**
163+ /**
164164 * Return JSON output
165165 *
166166 * @param bool $returnAsObject
167- * @return JSON
167+ * @return \CodeIgniter\HTTP\ResponseInterface
168168 */
169169 public function toJson ($ returnAsObject = NULL )
170170 {
171171
172- if (! Request::get ('draw ' ))
173- {
172+ if (!Request::get ('draw ' )) {
174173 return self ::throwError ('no datatable request detected ' );
175174 }
176175
177- if ($ returnAsObject !== NULL )
176+ if ($ returnAsObject !== NULL )
178177 $ this ->columnDefs ->returnAsObject ($ returnAsObject );
179178
180179 $ this ->query ->setColumnDefs ($ this ->columnDefs );
181-
180+
182181 $ response = Services::response ();
183182
184183 return $ response ->setJSON ([
185- 'draw ' => Request::get ('draw ' ),
186- 'recordsTotal ' => $ this ->query ->countAll (),
187- 'recordsFiltered ' => $ this ->query ->countFiltered (),
188- 'data ' => $ this ->query ->getDataResult (),
184+ 'draw ' => Request::get ('draw ' ),
185+ 'recordsTotal ' => $ this ->query ->countAll (),
186+ 'recordsFiltered ' => $ this ->query ->countFiltered (),
187+ 'data ' => $ this ->query ->getDataResult (),
189188
190189 ]);
191190 }
@@ -194,18 +193,18 @@ public function toJson($returnAsObject = NULL)
194193 /**
195194 * Throw Error
196195 *
197- * @param String $message
198- * @return Error
196+ * @param string $message
197+ * @return \CodeIgniter\HTTP\ResponseInterface
199198 */
200199 public static function throwError ($ message )
201200 {
202201 $ response = Services::response ();
203202 return $ response ->setJSON ([
204- 'error ' => $ message ,
203+ 'error ' => $ message ,
205204
206205 ]);
207206 }
208207
209208
210-
209+
211210} // End of DataTables Library Class.
0 commit comments