private function PHPExcel_Writer_Excel2007_Worksheet::_writeConditionalFormatting in Loft Data Grids 6.2
Same name and namespace in other branches
- 7.2 vendor/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Worksheet.php \PHPExcel_Writer_Excel2007_Worksheet::_writeConditionalFormatting()
* Write ConditionalFormatting * *
Parameters
PHPExcel_Shared_XMLWriter $objWriter XML Writer: * @param PHPExcel_Worksheet $pSheet Worksheet * @throws PHPExcel_Writer_Exception
1 call to PHPExcel_Writer_Excel2007_Worksheet::_writeConditionalFormatting()
- PHPExcel_Writer_Excel2007_Worksheet::writeWorksheet in vendor/
phpoffice/ phpexcel/ Classes/ PHPExcel/ Writer/ Excel2007/ Worksheet.php - * Write worksheet to XML format * *
File
- vendor/
phpoffice/ phpexcel/ Classes/ PHPExcel/ Writer/ Excel2007/ Worksheet.php, line 467
Class
- PHPExcel_Writer_Excel2007_Worksheet
- PHPExcel_Writer_Excel2007_Worksheet
Code
private function _writeConditionalFormatting(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) {
// Conditional id
$id = 1;
// Loop through styles in the current worksheet
foreach ($pSheet
->getConditionalStylesCollection() as $cellCoordinate => $conditionalStyles) {
foreach ($conditionalStyles as $conditional) {
// WHY was this again?
// if ($this->getParentWriter()->getStylesConditionalHashTable()->getIndexForHashCode( $conditional->getHashCode() ) == '') {
// continue;
// }
if ($conditional
->getConditionType() != PHPExcel_Style_Conditional::CONDITION_NONE) {
// conditionalFormatting
$objWriter
->startElement('conditionalFormatting');
$objWriter
->writeAttribute('sqref', $cellCoordinate);
// cfRule
$objWriter
->startElement('cfRule');
$objWriter
->writeAttribute('type', $conditional
->getConditionType());
$objWriter
->writeAttribute('dxfId', $this
->getParentWriter()
->getStylesConditionalHashTable()
->getIndexForHashCode($conditional
->getHashCode()));
$objWriter
->writeAttribute('priority', $id++);
if (($conditional
->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CELLIS || $conditional
->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT) && $conditional
->getOperatorType() != PHPExcel_Style_Conditional::OPERATOR_NONE) {
$objWriter
->writeAttribute('operator', $conditional
->getOperatorType());
}
if ($conditional
->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT && !is_null($conditional
->getText())) {
$objWriter
->writeAttribute('text', $conditional
->getText());
}
if ($conditional
->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT && $conditional
->getOperatorType() == PHPExcel_Style_Conditional::OPERATOR_CONTAINSTEXT && !is_null($conditional
->getText())) {
$objWriter
->writeElement('formula', 'NOT(ISERROR(SEARCH("' . $conditional
->getText() . '",' . $cellCoordinate . ')))');
}
else {
if ($conditional
->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT && $conditional
->getOperatorType() == PHPExcel_Style_Conditional::OPERATOR_BEGINSWITH && !is_null($conditional
->getText())) {
$objWriter
->writeElement('formula', 'LEFT(' . $cellCoordinate . ',' . strlen($conditional
->getText()) . ')="' . $conditional
->getText() . '"');
}
else {
if ($conditional
->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT && $conditional
->getOperatorType() == PHPExcel_Style_Conditional::OPERATOR_ENDSWITH && !is_null($conditional
->getText())) {
$objWriter
->writeElement('formula', 'RIGHT(' . $cellCoordinate . ',' . strlen($conditional
->getText()) . ')="' . $conditional
->getText() . '"');
}
else {
if ($conditional
->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT && $conditional
->getOperatorType() == PHPExcel_Style_Conditional::OPERATOR_NOTCONTAINS && !is_null($conditional
->getText())) {
$objWriter
->writeElement('formula', 'ISERROR(SEARCH("' . $conditional
->getText() . '",' . $cellCoordinate . '))');
}
else {
if ($conditional
->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CELLIS || $conditional
->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT || $conditional
->getConditionType() == PHPExcel_Style_Conditional::CONDITION_EXPRESSION) {
foreach ($conditional
->getConditions() as $formula) {
// Formula
$objWriter
->writeElement('formula', $formula);
}
}
}
}
}
}
$objWriter
->endElement();
$objWriter
->endElement();
}
}
}
}