application/models/Checklistitem_model.php
/**
     * Finds all checklist item objects.
     * 
     * @return array
     */
Finds all checklist item objects.

@return array
Finds all checklist item objects . @return array
public function findAll($checklist_equipmenttype_id = '', $checklistitem_id = null)
	{
		$checklistitems = (empty($checklistitem_id) ? R::getAll('SELECT * FROM checklistitem') : R::getAll('SELECT * FROM checklistitem WHERE id = ' . $checklistitem_id));
		$checklistitemsOrig = $checklistitems;
		$preStartItems = [];
		$postStartItems = [];
		$checklist = [];
		$usedItems = [];
		array_multisort(array_map(function($element) {
			return $element['item'];
		}, $checklistitemsOrig), SORT_ASC, $checklistitemsOrig);
		if ($checklist_equipmenttype_id != '') {
			$checklist = R::findAll('checklist', ' equipmenttype_id = :equipmenttype_id ', [':equipmenttype_id' => $checklist_equipmenttype_id]);
		}
		if (!empty($checklist)) {
			foreach ($checklist as $key => $cldata) {
				$checklist_json = $cldata['checklist_json'];
			}
			$checklist = (array) json_decode($checklist_json);
		}
		$ci = [];
		foreach($checklistitems as $key => $clidata) {
			$ci[$clidata['id']] = $clidata;
		}
		if(array_key_exists('preStartData', $checklist)) {
			foreach ($checklist['preStartData'] as $ctr => $preStartData) {
				$preStartItems[] = $ci[$preStartData];
				$usedItems[] = $ci[$preStartData]['id'];
			}
		}
		if(array_key_exists('postStartData', $checklist)) {
			foreach ($checklist['postStartData'] as $ctr => $postStartData) {
				$postStartItems[] = $ci[$postStartData];
				$usedItems[] = $ci[$postStartData]['id'];
			}
		}
		foreach($checklistitems as $ctr => $cli) {
			if(in_array($cli['id'], $usedItems)) {
				unset($checklistitems[$ctr]);
			}
		}
		array_multisort(array_map(function($element) {
			return $element['item'];
		}, $checklistitems), SORT_ASC, $checklistitems);
        return ['checklistitems' => $checklistitemsOrig, 'checklistitemsremaining' => $checklistitems, 'checklist' => $checklist, 'preStartItems' => $preStartItems, 'postStartItems' => $postStartItems];
    }
public function findAll ( $ checklist_equipmenttype_id = '' , $ checklistitem_id = null ) { $ checklistitems = ( empty ( $ checklistitem_id ) ? R :: getAll ( 'SELECT * FROM checklistitem' ) : R :: getAll ( 'SELECT * FROM checklistitem WHERE id = ' . $ checklistitem_id ) ) ; $ checklistitemsOrig = $ checklistitems ; $ preStartItems = [ ] ; $ postStartItems = [ ] ; $ checklist = [ ] ; $ usedItems = [ ] ; array_multisort ( array_map ( function ( $ element ) { return $ element [ 'item' ] ; } , $ checklistitemsOrig ) , SORT_ASC , $ checklistitemsOrig ) ; if ( $ checklist_equipmenttype_id != '' ) { $ checklist = R :: findAll ( 'checklist' , ' equipmenttype_id = :equipmenttype_id ' , [ ':equipmenttype_id' => $ checklist_equipmenttype_id ] ) ; } if ( ! empty ( $ checklist ) ) { foreach ( $ checklist as $ key => $ cldata ) { $ checklist_json = $ cldata [ 'checklist_json' ] ; } $ checklist = ( array ) json_decode ( $ checklist_json ) ; } $ ci = [ ] ; foreach ( $ checklistitems as $ key => $ clidata ) { $ ci [ $ clidata [ 'id' ] ] = $ clidata ; } if ( array_key_exists ( 'preStartData' , $ checklist ) ) { foreach ( $ checklist [ 'preStartData' ] as $ ctr => $ preStartData ) { $ preStartItems [ ] = $ ci [ $ preStartData ] ; $ usedItems [ ] = $ ci [ $ preStartData ] [ 'id' ] ; } } if ( array_key_exists ( 'postStartData' , $ checklist ) ) { foreach ( $ checklist [ 'postStartData' ] as $ ctr => $ postStartData ) { $ postStartItems [ ] = $ ci [ $ postStartData ] ; $ usedItems [ ] = $ ci [ $ postStartData ] [ 'id' ] ; } } foreach ( $ checklistitems as $ ctr => $ cli ) { if ( in_array ( $ cli [ 'id' ] , $ usedItems ) ) { unset ( $ checklistitems [ $ ctr ] ) ; } } array_multisort ( array_map ( function ( $ element ) { return $ element [ 'item' ] ; } , $ checklistitems ) , SORT_ASC , $ checklistitems ) ; return [ 'checklistitems' => $ checklistitemsOrig , 'checklistitemsremaining' => $ checklistitems , 'checklist' => $ checklist , 'preStartItems' => $ preStartItems , 'postStartItems' => $ postStartItems ] ; }
Finds all checklist item objects.
Finds all checklist item objects .
/** Sorts by item ASC; we need to preserve order of checklist_json */