'Lease.id', 'hidden' => true); $cols['Lease'] = array('index' => 'Lease.number', 'formatter' => 'id'); $cols['Unit'] = array('index' => 'Unit.name', 'width' => '50', 'align' => 'center'); $cols['Customer'] = array('index' => 'Customer.name', 'formatter' => 'longname'); $cols['Rent'] = array('index' => 'Lease.rent', 'formatter' => 'currency', 'hiddenz' => true); $cols['Deposit'] = array('index' => 'Lease.deposit', 'formatter' => 'currency', 'hiddenz' => true); $cols['Signed'] = array('index' => 'Lease.lease_date', 'formatter' => 'date'); $cols['Move-In'] = array('index' => 'Lease.movein_date', 'formatter' => 'date'); $cols['Move-Out'] = array('index' => 'Lease.moveout_date', 'formatter' => 'date'); $cols['Closed'] = array('index' => 'Lease.close_date', 'formatter' => 'date'); $cols['Paid-Thru'] = array('index' => 'Lease.paid_through_date', 'formatter' => 'date'); $cols['Status'] = array('index' => 'status', 'formatter' => 'enum', 'width' => 100); $cols['Balance'] = array('index' => 'balance', 'formatter' => 'currency'); $cols['Comment'] = array('index' => 'Lease.comment', 'formatter' => 'comment'); if (!empty($this->params['action'])) { if ($this->params['action'] === 'closed') $grid->invalidFields(array('Paid-Thru', 'Status')); elseif ($this->params['action'] === 'active') $grid->invalidFields(array('Closed')); elseif ($this->params['action'] === 'delinquent') $grid->invalidFields(array('Closed')); } // Render the grid $grid ->columns($cols) ->sortField('LeaseID') ->defaultFields(array('LeaseID', 'Lease')) ->searchFields(array('Customer', 'Unit')) ->render($this, isset($config) ? $config : null, array_diff(array_keys($cols), array('Signed', 'Status', 'Comment')));