+
+// Do we need to show checkboxes? We show them if we allow setting approved or paid status,
+// and also when we can assign / deassign records to invoces.
+if ($bean->getAttribute('chapproved') && ($user->can('approve_reports') || $user->can('approve_all_eports')))
+ $showForApproved = true;
+if ($bean->getAttribute('chpaid') ||
+ ($client_id && $bean->getAttribute('chinvoice') && ('no_grouping' == $bean->getAttribute('group_by1')) && !$user->isClient())) {
+ if ($user->can('manage_invoices'))
+ $showForInvoicesOrPaid = true;
+}
+$use_checkboxes = $showForApproved || $showForInvoicesOrPaid;
+if ($use_checkboxes)
+ $smarty->assign('use_checkboxes', true);
+
+// Controls for "Mark approved" block.
+if ($showForApproved) {
+ $mark_approved_select_options = array('1'=>$i18n->get('dropdown.all'),'2'=>$i18n->get('dropdown.select'));
+ $form->addInput(array('type'=>'combobox',
+ 'name'=>'mark_approved_select_options',
+ 'data'=>$mark_approved_select_options,
+ 'value'=>$cl_mark_approved_select_option));
+ $mark_approved_action_options = array('1'=>$i18n->get('dropdown.approved'),'2'=>$i18n->get('dropdown.not_approved'));
+ $form->addInput(array('type'=>'combobox',
+ 'name'=>'mark_approved_action_options',
+ 'data'=>$mark_approved_action_options,
+ 'value'=>$cl_mark_approved_action_option));
+ $form->addInput(array('type'=>'submit','name'=>'btn_mark_approved','value'=>$i18n->get('button.submit')));
+ $smarty->assign('use_mark_approved', true);
+}
+
+// Controls for "Mark paid" block.
+if ($user->can('manage_invoices') && $bean->getAttribute('chpaid')) {
+ $mark_paid_select_options = array('1'=>$i18n->get('dropdown.all'),'2'=>$i18n->get('dropdown.select'));
+ $form->addInput(array('type'=>'combobox',
+ 'name'=>'mark_paid_select_options',
+ 'data'=>$mark_paid_select_options,
+ 'value'=>$cl_mark_paid_select_option));
+ $mark_paid_action_options = array('1'=>$i18n->get('dropdown.paid'),'2'=>$i18n->get('dropdown.not_paid'));
+ $form->addInput(array('type'=>'combobox',
+ 'name'=>'mark_paid_action_options',
+ 'data'=>$mark_paid_action_options,
+ 'value'=>$cl_mark_paid_action_option));
+ $form->addInput(array('type'=>'submit','name'=>'btn_mark_paid','value'=>$i18n->get('button.submit')));
+ $smarty->assign('use_mark_paid', true);
+}
+
+// Controls for "Assign to invoice" block.
+if ($user->can('manage_invoices') &&
+ ($client_id && $bean->getAttribute('chinvoice') && ('no_grouping' == $bean->getAttribute('group_by1')) && !$user->isClient())) {