new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'fouo_classification' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'secret_classification' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'exception' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'false_positive' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'nf_na_conflict' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'open_conflict' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'open_cat_1_count' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'open_cat_2_count' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'open_cat_3_count' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'not_a_finding' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'true' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'not_applicable' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'not_reviewed' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'no_data' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'open' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'false' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'cat_1' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'cat_2' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'cat_3' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'not_a_finding_count' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'not_applicable_count' => new \PhpOffice\PhpSpreadsheet\Style\Conditional(), 'not_reviewed_count' => new \PhpOffice\PhpSpreadsheet\Style\Conditional() ); $styles = array( 'header' => array( 'bold' => true ), 'right' => array( 'horizontal' => \PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_RIGHT ), 'yellow_fill' => array( 'fill' => array( 'type' => \PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID, 'startcolor' => array( 'rgb' => 'FFFF00' ) ) ) ); $validation = array( 'host_status' => new \PhpOffice\PhpSpreadsheet\Cell\DataValidation(), 'true_false' => new \PhpOffice\PhpSpreadsheet\Cell\DataValidation() ); $red = new \PhpOffice\PhpSpreadsheet\Style\Color(); $red->setARGB('FFFF0000'); $green = new \PhpOffice\PhpSpreadsheet\Style\Color(); $green->setARGB('FF92D050'); $light_blue = new \PhpOffice\PhpSpreadsheet\Style\Color(); $light_blue->setARGB('FFC5D9F1'); $yellow = new \PhpOffice\PhpSpreadsheet\Style\Color(); $yellow->setARGB('FFFFFF00'); $light_yellow = new \PhpOffice\PhpSpreadsheet\Style\Color(); $light_yellow->setARGB('FFFFFF66'); $orange = new \PhpOffice\PhpSpreadsheet\Style\Color(); $orange->setARGB('FFFFC000'); $black = new \PhpOffice\PhpSpreadsheet\Style\Color(); $black->setARGB('00000000'); $white = new \PhpOffice\PhpSpreadsheet\Style\Color(); $white->setARGB('FFFFFFFF'); $light_brown = new \PhpOffice\PhpSpreadsheet\Style\Color(); $light_brown->setRGB('DDD9C4'); $light_gray = new \PhpOffice\PhpSpreadsheet\Style\Color(); $light_gray->setRGB('D6D4CA'); $conditions['unclass_classification']->setConditionType( \PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_CONTAINSTEXT); $conditions['unclass_classification']->setOperatorType( \PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_CONTAINSTEXT); $conditions['unclass_classification']->setText('UNCLASSIFIED'); $conditions['unclass_classification']->getStyle() ->getFont() ->setColor($green) ->setBold(true); $conditions['fouo_classification']->setConditionType(\PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_CONTAINSTEXT); $conditions['fouo_classification']->setOperatorType(\PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_CONTAINSTEXT); $conditions['fouo_classification']->setText('UNCLASSIFIED//FOUO'); $conditions['fouo_classification']->getStyle() ->getFont() ->setColor($orange) ->setBold(true); $conditions['secret_classification']->setConditionType( \PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_CONTAINSTEXT); $conditions['secret_classification']->setOperatorType( \PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_CONTAINSTEXT); $conditions['secret_classification']->setText('SECRET'); $conditions['secret_classification']->getStyle() ->getFont() ->setColor($red) ->setBold(true); $conditions['open']->setConditionType(\PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_CONTAINSTEXT); $conditions['open']->setOperatorType(\PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_CONTAINSTEXT); $conditions['open']->setText('Open'); $conditions['open']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['open']->getStyle() ->getFill() ->setEndColor($red); $conditions['open']->getStyle() ->getFont() ->setColor($white); $conditions['false']->setConditionType(\PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_CONTAINSTEXT); $conditions['false']->setOperatorType(\PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_CONTAINSTEXT); $conditions['false']->setText('FALSE'); $conditions['false']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['false']->getStyle() ->getFill() ->setEndColor($red); $conditions['exception']->setConditionType(\PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_CONTAINSTEXT); $conditions['exception']->setOperatorType(\PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_CONTAINSTEXT); $conditions['exception']->setText('Exception'); $conditions['exception']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['exception']->getStyle() ->getFill() ->setEndColor($red); $conditions['exception']->getStyle() ->getFont() ->setColor($white); $conditions['cat_1']->setConditionType(\PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_CELLIS); $conditions['cat_1']->setOperatorType(\PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_EQUAL); $conditions['cat_1']->addCondition('"I"'); $conditions['cat_1']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['cat_1']->getStyle() ->getFill() ->setEndColor($red); $conditions['cat_1']->getStyle() ->getFont() ->setColor($white); $conditions['cat_2']->setConditionType(\PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_CELLIS); $conditions['cat_2']->setOperatorType(\PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_EQUAL); $conditions['cat_2']->addCondition('"II"'); $conditions['cat_2']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['cat_2']->getStyle() ->getFill() ->setEndColor($light_yellow); $conditions['cat_3']->setConditionType(\PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_CELLIS); $conditions['cat_3']->setOperatorType(\PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_EQUAL); $conditions['cat_3']->addCondition('"III"'); $conditions['cat_3']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['cat_3']->getStyle() ->getFill() ->setEndColor($orange); $conditions['no_data']->setConditionType(\PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_CONTAINSTEXT); $conditions['no_data']->setOperatorType(\PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_CONTAINSTEXT); $conditions['no_data']->setText('No Data'); $conditions['no_data']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['no_data']->getStyle() ->getFill() ->setEndColor($black); $conditions['no_data']->getStyle() ->getFont() ->setColor($white); $conditions['nf_na_conflict']->setConditionType(\PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_CONTAINSTEXT); $conditions['nf_na_conflict']->setOperatorType(\PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_CONTAINSTEXT); $conditions['nf_na_conflict']->setText('NF/NA CONFLICT:'); $conditions['nf_na_conflict']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['nf_na_conflict']->getStyle() ->getFill() ->setEndColor($light_blue); $conditions['open_conflict']->setConditionType(\PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_CONTAINSTEXT); $conditions['open_conflict']->setOperatorType(\PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_CONTAINSTEXT); $conditions['open_conflict']->setText('OPEN CONFLICT:'); $conditions['open_conflict']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['open_conflict']->getStyle() ->getFill() ->setEndColor($red); $conditions['open_conflict']->getStyle() ->getFont() ->setColor($white); $conditions['not_a_finding']->setConditionType(\PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_CONTAINSTEXT); $conditions['not_a_finding']->setOperatorType(\PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_CONTAINSTEXT); $conditions['not_a_finding']->setText('Not a Finding'); $conditions['not_a_finding']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['not_a_finding']->getStyle() ->getFill() ->setEndColor($green); $conditions['true']->setConditionType(\PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_CONTAINSTEXT); $conditions['true']->setOperatorType(\PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_CONTAINSTEXT); $conditions['true']->setText('TRUE'); $conditions['true']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['true']->getStyle() ->getFill() ->setEndColor($green); $conditions['false_positive']->setConditionType(\PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_CONTAINSTEXT); $conditions['false_positive']->setOperatorType(\PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_CONTAINSTEXT); $conditions['false_positive']->setText('False Positive'); $conditions['false_positive']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['false_positive']->getStyle() ->getFill() ->setEndColor($green); $conditions['not_applicable']->setConditionType(\PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_CONTAINSTEXT); $conditions['not_applicable']->setOperatorType(\PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_CONTAINSTEXT); $conditions['not_applicable']->setText('Not Applicable'); $conditions['not_applicable']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['not_applicable']->getStyle() ->getFill() ->setEndColor($light_blue); $conditions['not_reviewed']->setConditionType(\PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_CONTAINSTEXT); $conditions['not_reviewed']->setOperatorType(\PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_CONTAINSTEXT); $conditions['not_reviewed']->setText('Not Reviewed'); $conditions['not_reviewed']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['not_reviewed']->getStyle() ->getFill() ->setEndColor($yellow); $conditions['open_cat_1_count']->setConditionType(\PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_EXPRESSION); $conditions['open_cat_1_count']->setOperatorType( \PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_GREATERTHANOREQUAL); $conditions['open_cat_1_count']->setText('1'); $conditions['open_cat_1_count']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['open_cat_1_count']->getStyle() ->getFill() ->setEndColor($red); $conditions['open_cat_1_count']->getStyle() ->getFont() ->setColor($white); $conditions['open_cat_2_count']->setConditionType(\PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_EXPRESSION); $conditions['open_cat_2_count']->setOperatorType( \PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_GREATERTHANOREQUAL); $conditions['open_cat_2_count']->setText('1'); $conditions['open_cat_2_count']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['open_cat_2_count']->getStyle() ->getFill() ->setEndColor($yellow); $conditions['open_cat_3_count']->setConditionType(\PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_EXPRESSION); $conditions['open_cat_3_count']->setOperatorType( \PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_GREATERTHANOREQUAL); $conditions['open_cat_3_count']->setText('1'); $conditions['open_cat_3_count']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['open_cat_3_count']->getStyle() ->getFill() ->setEndColor($orange); $conditions['not_a_finding_count']->setConditionType( \PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_EXPRESSION); $conditions['not_a_finding_count']->setOperatorType( \PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_GREATERTHANOREQUAL); $conditions['not_a_finding_count']->setText('1'); $conditions['not_a_finding_count']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['not_a_finding_count']->getStyle() ->getFill() ->setEndColor($green); $conditions['not_applicable_count']->setConditionType( \PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_EXPRESSION); $conditions['not_applicable_count']->setOperatorType( \PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_GREATERTHANOREQUAL); $conditions['not_applicable_count']->setText('1'); $conditions['not_applicable_count']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['not_applicable_count']->getStyle() ->getFill() ->setEndColor($light_blue); $conditions['not_reviewed_count']->setConditionType( \PhpOffice\PhpSpreadsheet\Style\Conditional::CONDITION_EXPRESSION); $conditions['not_reviewed_count']->setOperatorType( \PhpOffice\PhpSpreadsheet\Style\Conditional::OPERATOR_GREATERTHANOREQUAL); $conditions['not_reviewed_count']->setText('1'); $conditions['not_reviewed_count']->getStyle() ->getFill() ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID); $conditions['not_reviewed_count']->getStyle() ->getFill() ->setEndColor($yellow); $validation['host_status']->setType(\PhpOffice\PhpSpreadsheet\Cell\DataValidation::TYPE_LIST); $validation['host_status']->setAllowBlank(false); $validation['host_status']->setFormula1('"Not Reviewed,Not a Finding,Open,Not Applicable,No Data,Exception,False Positive"'); $validation['host_status']->setShowDropDown(true); $validation['host_status']->setShowErrorMessage(true); $validation['host_status']->setError("Selected value not valid"); $validation['host_status']->setErrorTitle("Invalid selection"); $validation['host_status']->setErrorStyle(\PhpOffice\PhpSpreadsheet\Cell\DataValidation::STYLE_STOP); $validation['true_false']->setType(\PhpOffice\PhpSpreadsheet\Cell\DataValidation::TYPE_LIST); $validation['true_false']->setAllowBlank(false); $validation['true_false']->setFormula1("=TRUE,FALSE"); $validation['true_false']->setShowDropDown(true); /** * Add borders to cells */ $borders = [ 'borders' => [ 'allborders' => [ 'style' => \PhpOffice\PhpSpreadsheet\Style\Border::BORDER_THIN, 'color' => [ 'rgb' => '000000' ] ] ] ];