From f1ab2f022fdc780aca0944d90e9a0e844a0820d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anton=20Luka=20=C5=A0ijanec?= Date: Mon, 27 May 2024 13:12:17 +0200 Subject: =?UTF-8?q?2024-02-19:=20popravljen=20(prej=C5=A1nji=20commit=20je?= =?UTF-8?q?=20napa=C4=8Den)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../survey/excel/PHPExcel/Worksheet/AutoFilter.php | 855 --------------------- .../excel/PHPExcel/Worksheet/AutoFilter/Column.php | 381 --------- .../PHPExcel/Worksheet/AutoFilter/Column/Rule.php | 462 ----------- .../excel/PHPExcel/Worksheet/BaseDrawing.php | 485 ------------ .../excel/PHPExcel/Worksheet/CellIterator.php | 161 ---- .../excel/PHPExcel/Worksheet/ColumnDimension.php | 266 ------- admin/survey/excel/PHPExcel/Worksheet/Drawing.php | 148 ---- .../excel/PHPExcel/Worksheet/Drawing/Shadow.php | 288 ------- .../excel/PHPExcel/Worksheet/HeaderFooter.php | 465 ----------- .../PHPExcel/Worksheet/HeaderFooterDrawing.php | 350 --------- .../excel/PHPExcel/Worksheet/MemoryDrawing.php | 200 ----- .../excel/PHPExcel/Worksheet/PageMargins.php | 220 ------ .../survey/excel/PHPExcel/Worksheet/PageSetup.php | 798 ------------------- .../survey/excel/PHPExcel/Worksheet/Protection.php | 545 ------------- admin/survey/excel/PHPExcel/Worksheet/Row.php | 90 --- .../excel/PHPExcel/Worksheet/RowDimension.php | 265 ------- .../excel/PHPExcel/Worksheet/RowIterator.php | 148 ---- .../survey/excel/PHPExcel/Worksheet/SheetView.php | 188 ----- 18 files changed, 6315 deletions(-) delete mode 100644 admin/survey/excel/PHPExcel/Worksheet/AutoFilter.php delete mode 100644 admin/survey/excel/PHPExcel/Worksheet/AutoFilter/Column.php delete mode 100644 admin/survey/excel/PHPExcel/Worksheet/AutoFilter/Column/Rule.php delete mode 100644 admin/survey/excel/PHPExcel/Worksheet/BaseDrawing.php delete mode 100644 admin/survey/excel/PHPExcel/Worksheet/CellIterator.php delete mode 100644 admin/survey/excel/PHPExcel/Worksheet/ColumnDimension.php delete mode 100644 admin/survey/excel/PHPExcel/Worksheet/Drawing.php delete mode 100644 admin/survey/excel/PHPExcel/Worksheet/Drawing/Shadow.php delete mode 100644 admin/survey/excel/PHPExcel/Worksheet/HeaderFooter.php delete mode 100644 admin/survey/excel/PHPExcel/Worksheet/HeaderFooterDrawing.php delete mode 100644 admin/survey/excel/PHPExcel/Worksheet/MemoryDrawing.php delete mode 100644 admin/survey/excel/PHPExcel/Worksheet/PageMargins.php delete mode 100644 admin/survey/excel/PHPExcel/Worksheet/PageSetup.php delete mode 100644 admin/survey/excel/PHPExcel/Worksheet/Protection.php delete mode 100644 admin/survey/excel/PHPExcel/Worksheet/Row.php delete mode 100644 admin/survey/excel/PHPExcel/Worksheet/RowDimension.php delete mode 100644 admin/survey/excel/PHPExcel/Worksheet/RowIterator.php delete mode 100644 admin/survey/excel/PHPExcel/Worksheet/SheetView.php (limited to 'admin/survey/excel/PHPExcel/Worksheet') diff --git a/admin/survey/excel/PHPExcel/Worksheet/AutoFilter.php b/admin/survey/excel/PHPExcel/Worksheet/AutoFilter.php deleted file mode 100644 index 509aeed..0000000 --- a/admin/survey/excel/PHPExcel/Worksheet/AutoFilter.php +++ /dev/null @@ -1,855 +0,0 @@ -_range = $pRange; - $this->_workSheet = $pSheet; - } - - /** - * Get AutoFilter Parent Worksheet - * - * @return PHPExcel_Worksheet - */ - public function getParent() { - return $this->_workSheet; - } - - /** - * Set AutoFilter Parent Worksheet - * - * @param PHPExcel_Worksheet - * @return PHPExcel_Worksheet_AutoFilter - */ - public function setParent(PHPExcel_Worksheet $pSheet = NULL) { - $this->_workSheet = $pSheet; - - return $this; - } - - /** - * Get AutoFilter Range - * - * @return string - */ - public function getRange() { - return $this->_range; - } - - /** - * Set AutoFilter Range - * - * @param string $pRange Cell range (i.e. A1:E10) - * @throws PHPExcel_Exception - * @return PHPExcel_Worksheet_AutoFilter - */ - public function setRange($pRange = '') { - // Uppercase coordinate - $cellAddress = explode('!',strtoupper($pRange)); - if (count($cellAddress) > 1) { - list($worksheet,$pRange) = $cellAddress; - } - - if (strpos($pRange,':') !== FALSE) { - $this->_range = $pRange; - } elseif(empty($pRange)) { - $this->_range = ''; - } else { - throw new PHPExcel_Exception('Autofilter must be set on a range of cells.'); - } - - if (empty($pRange)) { - // Discard all column rules - $this->_columns = array(); - } else { - // Discard any column rules that are no longer valid within this range - list($rangeStart,$rangeEnd) = PHPExcel_Cell::rangeBoundaries($this->_range); - foreach($this->_columns as $key => $value) { - $colIndex = PHPExcel_Cell::columnIndexFromString($key); - if (($rangeStart[0] > $colIndex) || ($rangeEnd[0] < $colIndex)) { - unset($this->_columns[$key]); - } - } - } - - return $this; - } - - /** - * Get all AutoFilter Columns - * - * @throws PHPExcel_Exception - * @return array of PHPExcel_Worksheet_AutoFilter_Column - */ - public function getColumns() { - return $this->_columns; - } - - /** - * Validate that the specified column is in the AutoFilter range - * - * @param string $column Column name (e.g. A) - * @throws PHPExcel_Exception - * @return integer The column offset within the autofilter range - */ - public function testColumnInRange($column) { - if (empty($this->_range)) { - throw new PHPExcel_Exception("No autofilter range is defined."); - } - - $columnIndex = PHPExcel_Cell::columnIndexFromString($column); - list($rangeStart,$rangeEnd) = PHPExcel_Cell::rangeBoundaries($this->_range); - if (($rangeStart[0] > $columnIndex) || ($rangeEnd[0] < $columnIndex)) { - throw new PHPExcel_Exception("Column is outside of current autofilter range."); - } - - return $columnIndex - $rangeStart[0]; - } - - /** - * Get a specified AutoFilter Column Offset within the defined AutoFilter range - * - * @param string $pColumn Column name (e.g. A) - * @throws PHPExcel_Exception - * @return integer The offset of the specified column within the autofilter range - */ - public function getColumnOffset($pColumn) { - return $this->testColumnInRange($pColumn); - } - - /** - * Get a specified AutoFilter Column - * - * @param string $pColumn Column name (e.g. A) - * @throws PHPExcel_Exception - * @return PHPExcel_Worksheet_AutoFilter_Column - */ - public function getColumn($pColumn) { - $this->testColumnInRange($pColumn); - - if (!isset($this->_columns[$pColumn])) { - $this->_columns[$pColumn] = new PHPExcel_Worksheet_AutoFilter_Column($pColumn, $this); - } - - return $this->_columns[$pColumn]; - } - - /** - * Get a specified AutoFilter Column by it's offset - * - * @param integer $pColumnOffset Column offset within range (starting from 0) - * @throws PHPExcel_Exception - * @return PHPExcel_Worksheet_AutoFilter_Column - */ - public function getColumnByOffset($pColumnOffset = 0) { - list($rangeStart,$rangeEnd) = PHPExcel_Cell::rangeBoundaries($this->_range); - $pColumn = PHPExcel_Cell::stringFromColumnIndex($rangeStart[0] + $pColumnOffset - 1); - - return $this->getColumn($pColumn); - } - - /** - * Set AutoFilter - * - * @param PHPExcel_Worksheet_AutoFilter_Column|string $pColumn - * A simple string containing a Column ID like 'A' is permitted - * @throws PHPExcel_Exception - * @return PHPExcel_Worksheet_AutoFilter - */ - public function setColumn($pColumn) - { - if ((is_string($pColumn)) && (!empty($pColumn))) { - $column = $pColumn; - } elseif(is_object($pColumn) && ($pColumn instanceof PHPExcel_Worksheet_AutoFilter_Column)) { - $column = $pColumn->getColumnIndex(); - } else { - throw new PHPExcel_Exception("Column is not within the autofilter range."); - } - $this->testColumnInRange($column); - - if (is_string($pColumn)) { - $this->_columns[$pColumn] = new PHPExcel_Worksheet_AutoFilter_Column($pColumn, $this); - } elseif(is_object($pColumn) && ($pColumn instanceof PHPExcel_Worksheet_AutoFilter_Column)) { - $pColumn->setParent($this); - $this->_columns[$column] = $pColumn; - } - ksort($this->_columns); - - return $this; - } - - /** - * Clear a specified AutoFilter Column - * - * @param string $pColumn Column name (e.g. A) - * @throws PHPExcel_Exception - * @return PHPExcel_Worksheet_AutoFilter - */ - public function clearColumn($pColumn) { - $this->testColumnInRange($pColumn); - - if (isset($this->_columns[$pColumn])) { - unset($this->_columns[$pColumn]); - } - - return $this; - } - - /** - * Shift an AutoFilter Column Rule to a different column - * - * Note: This method bypasses validation of the destination column to ensure it is within this AutoFilter range. - * Nor does it verify whether any column rule already exists at $toColumn, but will simply overrideany existing value. - * Use with caution. - * - * @param string $fromColumn Column name (e.g. A) - * @param string $toColumn Column name (e.g. B) - * @return PHPExcel_Worksheet_AutoFilter - */ - public function shiftColumn($fromColumn=NULL,$toColumn=NULL) { - $fromColumn = strtoupper($fromColumn); - $toColumn = strtoupper($toColumn); - - if (($fromColumn !== NULL) && (isset($this->_columns[$fromColumn])) && ($toColumn !== NULL)) { - $this->_columns[$fromColumn]->setParent(); - $this->_columns[$fromColumn]->setColumnIndex($toColumn); - $this->_columns[$toColumn] = $this->_columns[$fromColumn]; - $this->_columns[$toColumn]->setParent($this); - unset($this->_columns[$fromColumn]); - - ksort($this->_columns); - } - - return $this; - } - - - /** - * Test if cell value is in the defined set of values - * - * @param mixed $cellValue - * @param mixed[] $dataSet - * @return boolean - */ - private static function _filterTestInSimpleDataSet($cellValue,$dataSet) - { - $dataSetValues = $dataSet['filterValues']; - $blanks = $dataSet['blanks']; - if (($cellValue == '') || ($cellValue === NULL)) { - return $blanks; - } - return in_array($cellValue,$dataSetValues); - } - - /** - * Test if cell value is in the defined set of Excel date values - * - * @param mixed $cellValue - * @param mixed[] $dataSet - * @return boolean - */ - private static function _filterTestInDateGroupSet($cellValue,$dataSet) - { - $dateSet = $dataSet['filterValues']; - $blanks = $dataSet['blanks']; - if (($cellValue == '') || ($cellValue === NULL)) { - return $blanks; - } - - if (is_numeric($cellValue)) { - $dateValue = PHPExcel_Shared_Date::ExcelToPHP($cellValue); - if ($cellValue < 1) { - // Just the time part - $dtVal = date('His',$dateValue); - $dateSet = $dateSet['time']; - } elseif($cellValue == floor($cellValue)) { - // Just the date part - $dtVal = date('Ymd',$dateValue); - $dateSet = $dateSet['date']; - } else { - // date and time parts - $dtVal = date('YmdHis',$dateValue); - $dateSet = $dateSet['dateTime']; - } - foreach($dateSet as $dateValue) { - // Use of substr to extract value at the appropriate group level - if (substr($dtVal,0,strlen($dateValue)) == $dateValue) - return TRUE; - } - } - - return FALSE; - } - - /** - * Test if cell value is within a set of values defined by a ruleset - * - * @param mixed $cellValue - * @param mixed[] $dataSet - * @return boolean - */ - private static function _filterTestInCustomDataSet($cellValue,$ruleSet) - { - $dataSet = $ruleSet['filterRules']; - $join = $ruleSet['join']; - $customRuleForBlanks = isset($ruleSet['customRuleForBlanks']) ? $ruleSet['customRuleForBlanks'] : FALSE; - - if (!$customRuleForBlanks) { - // Blank cells are always ignored, so return a FALSE - if (($cellValue == '') || ($cellValue === NULL)) { - return FALSE; - } - } - $returnVal = ($join == PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_AND); - foreach($dataSet as $rule) { - if (is_numeric($rule['value'])) { - // Numeric values are tested using the appropriate operator - switch ($rule['operator']) { - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL : - $retVal = ($cellValue == $rule['value']); - break; - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_NOTEQUAL : - $retVal = ($cellValue != $rule['value']); - break; - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHAN : - $retVal = ($cellValue > $rule['value']); - break; - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL : - $retVal = ($cellValue >= $rule['value']); - break; - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHAN : - $retVal = ($cellValue < $rule['value']); - break; - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL : - $retVal = ($cellValue <= $rule['value']); - break; - } - } elseif($rule['value'] == '') { - switch ($rule['operator']) { - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL : - $retVal = (($cellValue == '') || ($cellValue === NULL)); - break; - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_NOTEQUAL : - $retVal = (($cellValue != '') && ($cellValue !== NULL)); - break; - default : - $retVal = TRUE; - break; - } - } else { - // String values are always tested for equality, factoring in for wildcards (hence a regexp test) - $retVal = preg_match('/^'.$rule['value'].'$/i',$cellValue); - } - // If there are multiple conditions, then we need to test both using the appropriate join operator - switch ($join) { - case PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_OR : - $returnVal = $returnVal || $retVal; - // Break as soon as we have a TRUE match for OR joins, - // to avoid unnecessary additional code execution - if ($returnVal) - return $returnVal; - break; - case PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_AND : - $returnVal = $returnVal && $retVal; - break; - } - } - - return $returnVal; - } - - /** - * Test if cell date value is matches a set of values defined by a set of months - * - * @param mixed $cellValue - * @param mixed[] $dataSet - * @return boolean - */ - private static function _filterTestInPeriodDateSet($cellValue,$monthSet) - { - // Blank cells are always ignored, so return a FALSE - if (($cellValue == '') || ($cellValue === NULL)) { - return FALSE; - } - - if (is_numeric($cellValue)) { - $dateValue = date('m',PHPExcel_Shared_Date::ExcelToPHP($cellValue)); - if (in_array($dateValue,$monthSet)) { - return TRUE; - } - } - - return FALSE; - } - - /** - * Search/Replace arrays to convert Excel wildcard syntax to a regexp syntax for preg_matching - * - * @var array - */ - private static $_fromReplace = array('\*', '\?', '~~', '~.*', '~.?'); - private static $_toReplace = array('.*', '.', '~', '\*', '\?'); - - - /** - * Convert a dynamic rule daterange to a custom filter range expression for ease of calculation - * - * @param string $dynamicRuleType - * @param PHPExcel_Worksheet_AutoFilter_Column $filterColumn - * @return mixed[] - */ - private function _dynamicFilterDateRange($dynamicRuleType, &$filterColumn) - { - $rDateType = PHPExcel_Calculation_Functions::getReturnDateType(); - PHPExcel_Calculation_Functions::setReturnDateType(PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC); - $val = $maxVal = NULL; - - $ruleValues = array(); - $baseDate = PHPExcel_Calculation_DateTime::DATENOW(); - // Calculate start/end dates for the required date range based on current date - switch ($dynamicRuleType) { - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK : - $baseDate = strtotime('-7 days',$baseDate); - break; - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK : - $baseDate = strtotime('-7 days',$baseDate); - break; - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH : - $baseDate = strtotime('-1 month',gmmktime(0,0,0,1,date('m',$baseDate),date('Y',$baseDate))); - break; - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH : - $baseDate = strtotime('+1 month',gmmktime(0,0,0,1,date('m',$baseDate),date('Y',$baseDate))); - break; - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER : - $baseDate = strtotime('-3 month',gmmktime(0,0,0,1,date('m',$baseDate),date('Y',$baseDate))); - break; - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER : - $baseDate = strtotime('+3 month',gmmktime(0,0,0,1,date('m',$baseDate),date('Y',$baseDate))); - break; - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR : - $baseDate = strtotime('-1 year',gmmktime(0,0,0,1,date('m',$baseDate),date('Y',$baseDate))); - break; - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR : - $baseDate = strtotime('+1 year',gmmktime(0,0,0,1,date('m',$baseDate),date('Y',$baseDate))); - break; - } - - switch ($dynamicRuleType) { - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_TODAY : - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY : - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_TOMORROW : - $maxVal = (int) PHPExcel_Shared_Date::PHPtoExcel(strtotime('+1 day',$baseDate)); - $val = (int) PHPExcel_Shared_Date::PHPToExcel($baseDate); - break; - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE : - $maxVal = (int) PHPExcel_Shared_Date::PHPtoExcel(strtotime('+1 day',$baseDate)); - $val = (int) PHPExcel_Shared_Date::PHPToExcel(gmmktime(0,0,0,1,1,date('Y',$baseDate))); - break; - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISYEAR : - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR : - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR : - $maxVal = (int) PHPExcel_Shared_Date::PHPToExcel(gmmktime(0,0,0,31,12,date('Y',$baseDate))); - ++$maxVal; - $val = (int) PHPExcel_Shared_Date::PHPToExcel(gmmktime(0,0,0,1,1,date('Y',$baseDate))); - break; - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISQUARTER : - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER : - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER : - $thisMonth = date('m',$baseDate); - $thisQuarter = floor(--$thisMonth / 3); - $maxVal = (int) PHPExcel_Shared_Date::PHPtoExcel(gmmktime(0,0,0,date('t',$baseDate),(1+$thisQuarter)*3,date('Y',$baseDate))); - ++$maxVal; - $val = (int) PHPExcel_Shared_Date::PHPToExcel(gmmktime(0,0,0,1,1+$thisQuarter*3,date('Y',$baseDate))); - break; - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISMONTH : - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH : - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH : - $maxVal = (int) PHPExcel_Shared_Date::PHPtoExcel(gmmktime(0,0,0,date('t',$baseDate),date('m',$baseDate),date('Y',$baseDate))); - ++$maxVal; - $val = (int) PHPExcel_Shared_Date::PHPToExcel(gmmktime(0,0,0,1,date('m',$baseDate),date('Y',$baseDate))); - break; - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISWEEK : - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK : - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK : - $dayOfWeek = date('w',$baseDate); - $val = (int) PHPExcel_Shared_Date::PHPToExcel($baseDate) - $dayOfWeek; - $maxVal = $val + 7; - break; - } - - switch ($dynamicRuleType) { - // Adjust Today dates for Yesterday and Tomorrow - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY : - --$maxVal; - --$val; - break; - case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_TOMORROW : - ++$maxVal; - ++$val; - break; - } - - // Set the filter column rule attributes ready for writing - $filterColumn->setAttributes(array( 'val' => $val, - 'maxVal' => $maxVal - ) - ); - - // Set the rules for identifying rows for hide/show - $ruleValues[] = array( 'operator' => PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL, - 'value' => $val - ); - $ruleValues[] = array( 'operator' => PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHAN, - 'value' => $maxVal - ); - PHPExcel_Calculation_Functions::setReturnDateType($rDateType); - - return array( - 'method' => '_filterTestInCustomDataSet', - 'arguments' => array( 'filterRules' => $ruleValues, - 'join' => PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_AND - ) - ); - } - - private function _calculateTopTenValue($columnID,$startRow,$endRow,$ruleType,$ruleValue) { - $range = $columnID.$startRow.':'.$columnID.$endRow; - $dataValues = PHPExcel_Calculation_Functions::flattenArray( - $this->_workSheet->rangeToArray($range,NULL,TRUE,FALSE) - ); - - $dataValues = array_filter($dataValues); - if ($ruleType == PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_TOP) { - rsort($dataValues); - } else { - sort($dataValues); - } - - return array_pop(array_slice($dataValues,0,$ruleValue)); - } - - /** - * Apply the AutoFilter rules to the AutoFilter Range - * - * @throws PHPExcel_Exception - * @return PHPExcel_Worksheet_AutoFilter - */ - public function showHideRows() - { - list($rangeStart,$rangeEnd) = PHPExcel_Cell::rangeBoundaries($this->_range); - - // The heading row should always be visible -// echo 'AutoFilter Heading Row ',$rangeStart[1],' is always SHOWN',PHP_EOL; - $this->_workSheet->getRowDimension($rangeStart[1])->setVisible(TRUE); - - $columnFilterTests = array(); - foreach($this->_columns as $columnID => $filterColumn) { - $rules = $filterColumn->getRules(); - switch ($filterColumn->getFilterType()) { - case PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_FILTER : - $ruleValues = array(); - // Build a list of the filter value selections - foreach($rules as $rule) { - $ruleType = $rule->getRuleType(); - $ruleValues[] = $rule->getValue(); - } - // Test if we want to include blanks in our filter criteria - $blanks = FALSE; - $ruleDataSet = array_filter($ruleValues); - if (count($ruleValues) != count($ruleDataSet)) - $blanks = TRUE; - if ($ruleType == PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_FILTER) { - // Filter on absolute values - $columnFilterTests[$columnID] = array( - 'method' => '_filterTestInSimpleDataSet', - 'arguments' => array( 'filterValues' => $ruleDataSet, - 'blanks' => $blanks - ) - ); - } else { - // Filter on date group values - $arguments = array(); - foreach($ruleDataSet as $ruleValue) { - $date = $time = ''; - if ((isset($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_YEAR])) && - ($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_YEAR] !== '')) - $date .= sprintf('%04d',$ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_YEAR]); - if ((isset($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MONTH])) && - ($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MONTH] != '')) - $date .= sprintf('%02d',$ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MONTH]); - if ((isset($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_DAY])) && - ($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_DAY] !== '')) - $date .= sprintf('%02d',$ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_DAY]); - if ((isset($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_HOUR])) && - ($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_HOUR] !== '')) - $time .= sprintf('%02d',$ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_HOUR]); - if ((isset($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MINUTE])) && - ($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MINUTE] !== '')) - $time .= sprintf('%02d',$ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MINUTE]); - if ((isset($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_SECOND])) && - ($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_SECOND] !== '')) - $time .= sprintf('%02d',$ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_SECOND]); - $dateTime = $date . $time; - $arguments['date'][] = $date; - $arguments['time'][] = $time; - $arguments['dateTime'][] = $dateTime; - } - // Remove empty elements - $arguments['date'] = array_filter($arguments['date']); - $arguments['time'] = array_filter($arguments['time']); - $arguments['dateTime'] = array_filter($arguments['dateTime']); - $columnFilterTests[$columnID] = array( - 'method' => '_filterTestInDateGroupSet', - 'arguments' => array( 'filterValues' => $arguments, - 'blanks' => $blanks - ) - ); - } - break; - case PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_CUSTOMFILTER : - $customRuleForBlanks = FALSE; - $ruleValues = array(); - // Build a list of the filter value selections - foreach($rules as $rule) { - $ruleType = $rule->getRuleType(); - $ruleValue = $rule->getValue(); - if (!is_numeric($ruleValue)) { - // Convert to a regexp allowing for regexp reserved characters, wildcards and escaped wildcards - $ruleValue = preg_quote($ruleValue); - $ruleValue = str_replace(self::$_fromReplace,self::$_toReplace,$ruleValue); - if (trim($ruleValue) == '') { - $customRuleForBlanks = TRUE; - $ruleValue = trim($ruleValue); - } - } - $ruleValues[] = array( 'operator' => $rule->getOperator(), - 'value' => $ruleValue - ); - } - $join = $filterColumn->getJoin(); - $columnFilterTests[$columnID] = array( - 'method' => '_filterTestInCustomDataSet', - 'arguments' => array( 'filterRules' => $ruleValues, - 'join' => $join, - 'customRuleForBlanks' => $customRuleForBlanks - ) - ); - break; - case PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_DYNAMICFILTER : - $ruleValues = array(); - foreach($rules as $rule) { - // We should only ever have one Dynamic Filter Rule anyway - $dynamicRuleType = $rule->getGrouping(); - if (($dynamicRuleType == PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE) || - ($dynamicRuleType == PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_BELOWAVERAGE)) { - // Number (Average) based - // Calculate the average - $averageFormula = '=AVERAGE('.$columnID.($rangeStart[1]+1).':'.$columnID.$rangeEnd[1].')'; - $average = PHPExcel_Calculation::getInstance()->calculateFormula($averageFormula,NULL,$this->_workSheet->getCell('A1')); - // Set above/below rule based on greaterThan or LessTan - $operator = ($dynamicRuleType === PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE) - ? PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHAN - : PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHAN; - $ruleValues[] = array( 'operator' => $operator, - 'value' => $average - ); - $columnFilterTests[$columnID] = array( - 'method' => '_filterTestInCustomDataSet', - 'arguments' => array( 'filterRules' => $ruleValues, - 'join' => PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_OR - ) - ); - } else { - // Date based - if ($dynamicRuleType{0} == 'M' || $dynamicRuleType{0} == 'Q') { - // Month or Quarter - list($periodType,$period) = sscanf($dynamicRuleType,'%[A-Z]%d'); - if ($periodType == 'M') { - $ruleValues = array($period); - } else { - --$period; - $periodEnd = (1+$period)*3; - $periodStart = 1+$period*3; - $ruleValues = range($periodStart,periodEnd); - } - $columnFilterTests[$columnID] = array( - 'method' => '_filterTestInPeriodDateSet', - 'arguments' => $ruleValues - ); - $filterColumn->setAttributes(array()); - } else { - // Date Range - $columnFilterTests[$columnID] = $this->_dynamicFilterDateRange($dynamicRuleType, $filterColumn); - break; - } - } - } - break; - case PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_TOPTENFILTER : - $ruleValues = array(); - $dataRowCount = $rangeEnd[1] - $rangeStart[1]; - foreach($rules as $rule) { - // We should only ever have one Dynamic Filter Rule anyway - $toptenRuleType = $rule->getGrouping(); - $ruleValue = $rule->getValue(); - $ruleOperator = $rule->getOperator(); - } - if ($ruleOperator === PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT) { - $ruleValue = floor($ruleValue * ($dataRowCount / 100)); - } - if ($ruleValue < 1) $ruleValue = 1; - if ($ruleValue > 500) $ruleValue = 500; - - $maxVal = $this->_calculateTopTenValue($columnID,$rangeStart[1]+1,$rangeEnd[1],$toptenRuleType,$ruleValue); - - $operator = ($toptenRuleType == PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_TOP) - ? PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL - : PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL; - $ruleValues[] = array( 'operator' => $operator, - 'value' => $maxVal - ); - $columnFilterTests[$columnID] = array( - 'method' => '_filterTestInCustomDataSet', - 'arguments' => array( 'filterRules' => $ruleValues, - 'join' => PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_OR - ) - ); - $filterColumn->setAttributes( - array('maxVal' => $maxVal) - ); - break; - } - } - -// echo 'Column Filter Test CRITERIA',PHP_EOL; -// var_dump($columnFilterTests); -// - // Execute the column tests for each row in the autoFilter range to determine show/hide, - for ($row = $rangeStart[1]+1; $row <= $rangeEnd[1]; ++$row) { -// echo 'Testing Row = ',$row,PHP_EOL; - $result = TRUE; - foreach($columnFilterTests as $columnID => $columnFilterTest) { -// echo 'Testing cell ',$columnID.$row,PHP_EOL; - $cellValue = $this->_workSheet->getCell($columnID.$row)->getCalculatedValue(); -// echo 'Value is ',$cellValue,PHP_EOL; - // Execute the filter test - $result = $result && - call_user_func_array( - array('PHPExcel_Worksheet_AutoFilter',$columnFilterTest['method']), - array( - $cellValue, - $columnFilterTest['arguments'] - ) - ); -// echo (($result) ? 'VALID' : 'INVALID'),PHP_EOL; - // If filter test has resulted in FALSE, exit the loop straightaway rather than running any more tests - if (!$result) - break; - } - // Set show/hide for the row based on the result of the autoFilter result -// echo (($result) ? 'SHOW' : 'HIDE'),PHP_EOL; - $this->_workSheet->getRowDimension($row)->setVisible($result); - } - - return $this; - } - - - /** - * Implement PHP __clone to create a deep clone, not just a shallow copy. - */ - public function __clone() { - $vars = get_object_vars($this); - foreach ($vars as $key => $value) { - if (is_object($value)) { - if ($key == '_workSheet') { - // Detach from worksheet - $this->$key = NULL; - } else { - $this->$key = clone $value; - } - } elseif ((is_array($value)) && ($key == '_columns')) { - // The columns array of PHPExcel_Worksheet_AutoFilter objects - $this->$key = array(); - foreach ($value as $k => $v) { - $this->$key[$k] = clone $v; - // attach the new cloned Column to this new cloned Autofilter object - $this->$key[$k]->setParent($this); - } - } else { - $this->$key = $value; - } - } - } - - /** - * toString method replicates previous behavior by returning the range if object is - * referenced as a property of its parent. - */ - public function __toString() { - return (string) $this->_range; - } - -} diff --git a/admin/survey/excel/PHPExcel/Worksheet/AutoFilter/Column.php b/admin/survey/excel/PHPExcel/Worksheet/AutoFilter/Column.php deleted file mode 100644 index d16fbe9..0000000 --- a/admin/survey/excel/PHPExcel/Worksheet/AutoFilter/Column.php +++ /dev/null @@ -1,381 +0,0 @@ -_columnIndex = $pColumn; - $this->_parent = $pParent; - } - - /** - * Get AutoFilter Column Index - * - * @return string - */ - public function getColumnIndex() { - return $this->_columnIndex; - } - - /** - * Set AutoFilter Column Index - * - * @param string $pColumn Column (e.g. A) - * @throws Exception - * @return PHPExcel_Worksheet_AutoFilter_Column - */ - public function setColumnIndex($pColumn) { - // Uppercase coordinate - $pColumn = strtoupper($pColumn); - if ($this->_parent !== NULL) { - $this->_parent->testColumnInRange($pColumn); - } - - $this->_columnIndex = $pColumn; - - return $this; - } - - /** - * Get this Column's AutoFilter Parent - * - * @return PHPExcel_Worksheet_AutoFilter - */ - public function getParent() { - return $this->_parent; - } - - /** - * Set this Column's AutoFilter Parent - * - * @param PHPExcel_Worksheet_AutoFilter - * @return PHPExcel_Worksheet_AutoFilter_Column - */ - public function setParent(PHPExcel_Worksheet_AutoFilter $pParent = NULL) { - $this->_parent = $pParent; - - return $this; - } - - /** - * Get AutoFilter Type - * - * @return string - */ - public function getFilterType() { - return $this->_filterType; - } - - /** - * Set AutoFilter Type - * - * @param string $pFilterType - * @throws Exception - * @return PHPExcel_Worksheet_AutoFilter_Column - */ - public function setFilterType($pFilterType = self::AUTOFILTER_FILTERTYPE_FILTER) { - if (!in_array($pFilterType,self::$_filterTypes)) { - throw new PHPExcel_Exception('Invalid filter type for column AutoFilter.'); - } - - $this->_filterType = $pFilterType; - - return $this; - } - - /** - * Get AutoFilter Multiple Rules And/Or Join - * - * @return string - */ - public function getJoin() { - return $this->_join; - } - - /** - * Set AutoFilter Multiple Rules And/Or - * - * @param string $pJoin And/Or - * @throws Exception - * @return PHPExcel_Worksheet_AutoFilter_Column - */ - public function setJoin($pJoin = self::AUTOFILTER_COLUMN_JOIN_OR) { - // Lowercase And/Or - $pJoin = strtolower($pJoin); - if (!in_array($pJoin,self::$_ruleJoins)) { - throw new PHPExcel_Exception('Invalid rule connection for column AutoFilter.'); - } - - $this->_join = $pJoin; - - return $this; - } - - /** - * Set AutoFilter Attributes - * - * @param string[] $pAttributes - * @throws Exception - * @return PHPExcel_Worksheet_AutoFilter_Column - */ - public function setAttributes($pAttributes = array()) { - $this->_attributes = $pAttributes; - - return $this; - } - - /** - * Set An AutoFilter Attribute - * - * @param string $pName Attribute Name - * @param string $pValue Attribute Value - * @throws Exception - * @return PHPExcel_Worksheet_AutoFilter_Column - */ - public function setAttribute($pName, $pValue) { - $this->_attributes[$pName] = $pValue; - - return $this; - } - - /** - * Get AutoFilter Column Attributes - * - * @return string - */ - public function getAttributes() { - return $this->_attributes; - } - - /** - * Get specific AutoFilter Column Attribute - * - * @param string $pName Attribute Name - * @return string - */ - public function getAttribute($pName) { - if (isset($this->_attributes[$pName])) - return $this->_attributes[$pName]; - return NULL; - } - - /** - * Get all AutoFilter Column Rules - * - * @throws PHPExcel_Exception - * @return array of PHPExcel_Worksheet_AutoFilter_Column_Rule - */ - public function getRules() { - return $this->_ruleset; - } - - /** - * Get a specified AutoFilter Column Rule - * - * @param integer $pIndex Rule index in the ruleset array - * @return PHPExcel_Worksheet_AutoFilter_Column_Rule - */ - public function getRule($pIndex) { - if (!isset($this->_ruleset[$pIndex])) { - $this->_ruleset[$pIndex] = new PHPExcel_Worksheet_AutoFilter_Column_Rule($this); - } - return $this->_ruleset[$pIndex]; - } - - /** - * Create a new AutoFilter Column Rule in the ruleset - * - * @return PHPExcel_Worksheet_AutoFilter_Column_Rule - */ - public function createRule() { - $this->_ruleset[] = new PHPExcel_Worksheet_AutoFilter_Column_Rule($this); - - return end($this->_ruleset); - } - - /** - * Add a new AutoFilter Column Rule to the ruleset - * - * @param PHPExcel_Worksheet_AutoFilter_Column_Rule $pRule - * @param boolean $returnRule Flag indicating whether the rule object or the column object should be returned - * @return PHPExcel_Worksheet_AutoFilter_Column|PHPExcel_Worksheet_AutoFilter_Column_Rule - */ - public function addRule(PHPExcel_Worksheet_AutoFilter_Column_Rule $pRule, $returnRule=TRUE) { - $pRule->setParent($this); - $this->_ruleset[] = $pRule; - - return ($returnRule) ? $pRule : $this; - } - - /** - * Delete a specified AutoFilter Column Rule - * If the number of rules is reduced to 1, then we reset And/Or logic to Or - * - * @param integer $pIndex Rule index in the ruleset array - * @return PHPExcel_Worksheet_AutoFilter_Column - */ - public function deleteRule($pIndex) { - if (isset($this->_ruleset[$pIndex])) { - unset($this->_ruleset[$pIndex]); - // If we've just deleted down to a single rule, then reset And/Or joining to Or - if (count($this->_ruleset) <= 1) { - $this->setJoin(self::AUTOFILTER_COLUMN_JOIN_OR); - } - } - - return $this; - } - - /** - * Delete all AutoFilter Column Rules - * - * @return PHPExcel_Worksheet_AutoFilter_Column - */ - public function clearRules() { - $this->_ruleset = array(); - $this->setJoin(self::AUTOFILTER_COLUMN_JOIN_OR); - - return $this; - } - - /** - * Implement PHP __clone to create a deep clone, not just a shallow copy. - */ - public function __clone() { - $vars = get_object_vars($this); - foreach ($vars as $key => $value) { - if (is_object($value)) { - if ($key == '_parent') { - // Detach from autofilter parent - $this->$key = NULL; - } else { - $this->$key = clone $value; - } - } elseif ((is_array($value)) && ($key == '_ruleset')) { - // The columns array of PHPExcel_Worksheet_AutoFilter objects - $this->$key = array(); - foreach ($value as $k => $v) { - $this->$key[$k] = clone $v; - // attach the new cloned Rule to this new cloned Autofilter Cloned object - $this->$key[$k]->setParent($this); - } - } else { - $this->$key = $value; - } - } - } - -} diff --git a/admin/survey/excel/PHPExcel/Worksheet/AutoFilter/Column/Rule.php b/admin/survey/excel/PHPExcel/Worksheet/AutoFilter/Column/Rule.php deleted file mode 100644 index b779ede..0000000 --- a/admin/survey/excel/PHPExcel/Worksheet/AutoFilter/Column/Rule.php +++ /dev/null @@ -1,462 +0,0 @@ - - * - * - * - * - * - */ - const AUTOFILTER_COLUMN_RULE_EQUAL = 'equal'; - const AUTOFILTER_COLUMN_RULE_NOTEQUAL = 'notEqual'; - const AUTOFILTER_COLUMN_RULE_GREATERTHAN = 'greaterThan'; - const AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL = 'greaterThanOrEqual'; - const AUTOFILTER_COLUMN_RULE_LESSTHAN = 'lessThan'; - const AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL = 'lessThanOrEqual'; - - private static $_operators = array( - self::AUTOFILTER_COLUMN_RULE_EQUAL, - self::AUTOFILTER_COLUMN_RULE_NOTEQUAL, - self::AUTOFILTER_COLUMN_RULE_GREATERTHAN, - self::AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL, - self::AUTOFILTER_COLUMN_RULE_LESSTHAN, - self::AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL, - ); - - const AUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE = 'byValue'; - const AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT = 'byPercent'; - - private static $_topTenValue = array( - self::AUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE, - self::AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT, - ); - - const AUTOFILTER_COLUMN_RULE_TOPTEN_TOP = 'top'; - const AUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM = 'bottom'; - - private static $_topTenType = array( - self::AUTOFILTER_COLUMN_RULE_TOPTEN_TOP, - self::AUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM, - ); - - - /* Rule Operators (Numeric, Boolean etc) */ -// const AUTOFILTER_COLUMN_RULE_BETWEEN = 'between'; // greaterThanOrEqual 1 && lessThanOrEqual 2 - /* Rule Operators (Numeric Special) which are translated to standard numeric operators with calculated values */ -// const AUTOFILTER_COLUMN_RULE_TOPTEN = 'topTen'; // greaterThan calculated value -// const AUTOFILTER_COLUMN_RULE_TOPTENPERCENT = 'topTenPercent'; // greaterThan calculated value -// const AUTOFILTER_COLUMN_RULE_ABOVEAVERAGE = 'aboveAverage'; // Value is calculated as the average -// const AUTOFILTER_COLUMN_RULE_BELOWAVERAGE = 'belowAverage'; // Value is calculated as the average - /* Rule Operators (String) which are set as wild-carded values */ -// const AUTOFILTER_COLUMN_RULE_BEGINSWITH = 'beginsWith'; // A* -// const AUTOFILTER_COLUMN_RULE_ENDSWITH = 'endsWith'; // *Z -// const AUTOFILTER_COLUMN_RULE_CONTAINS = 'contains'; // *B* -// const AUTOFILTER_COLUMN_RULE_DOESNTCONTAIN = 'notEqual'; // notEqual *B* - /* Rule Operators (Date Special) which are translated to standard numeric operators with calculated values */ -// const AUTOFILTER_COLUMN_RULE_BEFORE = 'lessThan'; -// const AUTOFILTER_COLUMN_RULE_AFTER = 'greaterThan'; -// const AUTOFILTER_COLUMN_RULE_YESTERDAY = 'yesterday'; -// const AUTOFILTER_COLUMN_RULE_TODAY = 'today'; -// const AUTOFILTER_COLUMN_RULE_TOMORROW = 'tomorrow'; -// const AUTOFILTER_COLUMN_RULE_LASTWEEK = 'lastWeek'; -// const AUTOFILTER_COLUMN_RULE_THISWEEK = 'thisWeek'; -// const AUTOFILTER_COLUMN_RULE_NEXTWEEK = 'nextWeek'; -// const AUTOFILTER_COLUMN_RULE_LASTMONTH = 'lastMonth'; -// const AUTOFILTER_COLUMN_RULE_THISMONTH = 'thisMonth'; -// const AUTOFILTER_COLUMN_RULE_NEXTMONTH = 'nextMonth'; -// const AUTOFILTER_COLUMN_RULE_LASTQUARTER = 'lastQuarter'; -// const AUTOFILTER_COLUMN_RULE_THISQUARTER = 'thisQuarter'; -// const AUTOFILTER_COLUMN_RULE_NEXTQUARTER = 'nextQuarter'; -// const AUTOFILTER_COLUMN_RULE_LASTYEAR = 'lastYear'; -// const AUTOFILTER_COLUMN_RULE_THISYEAR = 'thisYear'; -// const AUTOFILTER_COLUMN_RULE_NEXTYEAR = 'nextYear'; -// const AUTOFILTER_COLUMN_RULE_YEARTODATE = 'yearToDate'; // -// const AUTOFILTER_COLUMN_RULE_ALLDATESINMONTH = 'allDatesInMonth'; // for Month/February -// const AUTOFILTER_COLUMN_RULE_ALLDATESINQUARTER = 'allDatesInQuarter'; // for Quarter 2 - - /** - * Autofilter Column - * - * @var PHPExcel_Worksheet_AutoFilter_Column - */ - private $_parent = NULL; - - - /** - * Autofilter Rule Type - * - * @var string - */ - private $_ruleType = self::AUTOFILTER_RULETYPE_FILTER; - - - /** - * Autofilter Rule Value - * - * @var string - */ - private $_value = ''; - - /** - * Autofilter Rule Operator - * - * @var string - */ - private $_operator = ''; - - /** - * DateTimeGrouping Group Value - * - * @var string - */ - private $_grouping = ''; - - - /** - * Create a new PHPExcel_Worksheet_AutoFilter_Column_Rule - */ - public function __construct(PHPExcel_Worksheet_AutoFilter_Column $pParent = NULL) - { - $this->_parent = $pParent; - } - - /** - * Get AutoFilter Rule Type - * - * @return string - */ - public function getRuleType() { - return $this->_ruleType; - } - - /** - * Set AutoFilter Rule Type - * - * @param string $pRuleType - * @throws Exception - * @return PHPExcel_Worksheet_AutoFilter_Column - */ - public function setRuleType($pRuleType = self::AUTOFILTER_RULETYPE_FILTER) { - if (!in_array($pRuleType,self::$_ruleTypes)) { - throw new PHPExcel_Exception('Invalid rule type for column AutoFilter Rule.'); - } - - $this->_ruleType = $pRuleType; - - return $this; - } - - /** - * Get AutoFilter Rule Value - * - * @return string - */ - public function getValue() { - return $this->_value; - } - - /** - * Set AutoFilter Rule Value - * - * @param string|string[] $pValue - * @throws Exception - * @return PHPExcel_Worksheet_AutoFilter_Column_Rule - */ - public function setValue($pValue = '') { - if (is_array($pValue)) { - $grouping = -1; - foreach($pValue as $key => $value) { - // Validate array entries - if (!in_array($key,self::$_dateTimeGroups)) { - // Remove any invalid entries from the value array - unset($pValue[$key]); - } else { - // Work out what the dateTime grouping will be - $grouping = max($grouping,array_search($key,self::$_dateTimeGroups)); - } - } - if (count($pValue) == 0) { - throw new PHPExcel_Exception('Invalid rule value for column AutoFilter Rule.'); - } - // Set the dateTime grouping that we've anticipated - $this->setGrouping(self::$_dateTimeGroups[$grouping]); - } - $this->_value = $pValue; - - return $this; - } - - /** - * Get AutoFilter Rule Operator - * - * @return string - */ - public function getOperator() { - return $this->_operator; - } - - /** - * Set AutoFilter Rule Operator - * - * @param string $pOperator - * @throws Exception - * @return PHPExcel_Worksheet_AutoFilter_Column_Rule - */ - public function setOperator($pOperator = self::AUTOFILTER_COLUMN_RULE_EQUAL) { - if (empty($pOperator)) - $pOperator = self::AUTOFILTER_COLUMN_RULE_EQUAL; - if ((!in_array($pOperator,self::$_operators)) && - (!in_array($pOperator,self::$_topTenValue))) { - throw new PHPExcel_Exception('Invalid operator for column AutoFilter Rule.'); - } - $this->_operator = $pOperator; - - return $this; - } - - /** - * Get AutoFilter Rule Grouping - * - * @return string - */ - public function getGrouping() { - return $this->_grouping; - } - - /** - * Set AutoFilter Rule Grouping - * - * @param string $pGrouping - * @throws Exception - * @return PHPExcel_Worksheet_AutoFilter_Column_Rule - */ - public function setGrouping($pGrouping = NULL) { - if (($pGrouping !== NULL) && - (!in_array($pGrouping,self::$_dateTimeGroups)) && - (!in_array($pGrouping,self::$_dynamicTypes)) && - (!in_array($pGrouping,self::$_topTenType))) { - throw new PHPExcel_Exception('Invalid rule type for column AutoFilter Rule.'); - } - - $this->_grouping = $pGrouping; - - return $this; - } - - /** - * Set AutoFilter Rule - * - * @param string $pOperator - * @param string|string[] $pValue - * @param string $pGrouping - * @throws Exception - * @return PHPExcel_Worksheet_AutoFilter_Column_Rule - */ - public function setRule($pOperator = self::AUTOFILTER_COLUMN_RULE_EQUAL, $pValue = '', $pGrouping = NULL) { - $this->setOperator($pOperator); - $this->setValue($pValue); - // Only set grouping if it's been passed in as a user-supplied argument, - // otherwise we're calculating it when we setValue() and don't want to overwrite that - // If the user supplies an argumnet for grouping, then on their own head be it - if ($pGrouping !== NULL) - $this->setGrouping($pGrouping); - - return $this; - } - - /** - * Get this Rule's AutoFilter Column Parent - * - * @return PHPExcel_Worksheet_AutoFilter_Column - */ - public function getParent() { - return $this->_parent; - } - - /** - * Set this Rule's AutoFilter Column Parent - * - * @param PHPExcel_Worksheet_AutoFilter_Column - * @return PHPExcel_Worksheet_AutoFilter_Column_Rule - */ - public function setParent(PHPExcel_Worksheet_AutoFilter_Column $pParent = NULL) { - $this->_parent = $pParent; - - return $this; - } - - /** - * Implement PHP __clone to create a deep clone, not just a shallow copy. - */ - public function __clone() { - $vars = get_object_vars($this); - foreach ($vars as $key => $value) { - if (is_object($value)) { - if ($key == '_parent') { - // Detach from autofilter column parent - $this->$key = NULL; - } else { - $this->$key = clone $value; - } - } else { - $this->$key = $value; - } - } - } - -} diff --git a/admin/survey/excel/PHPExcel/Worksheet/BaseDrawing.php b/admin/survey/excel/PHPExcel/Worksheet/BaseDrawing.php deleted file mode 100644 index 8f3d9cb..0000000 --- a/admin/survey/excel/PHPExcel/Worksheet/BaseDrawing.php +++ /dev/null @@ -1,485 +0,0 @@ -_name = ''; - $this->_description = ''; - $this->_worksheet = null; - $this->_coordinates = 'A1'; - $this->_offsetX = 0; - $this->_offsetY = 0; - $this->_width = 0; - $this->_height = 0; - $this->_resizeProportional = true; - $this->_rotation = 0; - $this->_shadow = new PHPExcel_Worksheet_Drawing_Shadow(); - - // Set image index - self::$_imageCounter++; - $this->_imageIndex = self::$_imageCounter; - } - - /** - * Get image index - * - * @return int - */ - public function getImageIndex() { - return $this->_imageIndex; - } - - /** - * Get Name - * - * @return string - */ - public function getName() { - return $this->_name; - } - - /** - * Set Name - * - * @param string $pValue - * @return PHPExcel_Worksheet_BaseDrawing - */ - public function setName($pValue = '') { - $this->_name = $pValue; - return $this; - } - - /** - * Get Description - * - * @return string - */ - public function getDescription() { - return $this->_description; - } - - /** - * Set Description - * - * @param string $pValue - * @return PHPExcel_Worksheet_BaseDrawing - */ - public function setDescription($pValue = '') { - $this->_description = $pValue; - return $this; - } - - /** - * Get Worksheet - * - * @return PHPExcel_Worksheet - */ - public function getWorksheet() { - return $this->_worksheet; - } - - /** - * Set Worksheet - * - * @param PHPExcel_Worksheet $pValue - * @param bool $pOverrideOld If a Worksheet has already been assigned, overwrite it and remove image from old Worksheet? - * @throws Exception - * @return PHPExcel_Worksheet_BaseDrawing - */ - public function setWorksheet(PHPExcel_Worksheet $pValue = null, $pOverrideOld = false) { - if (is_null($this->_worksheet)) { - // Add drawing to PHPExcel_Worksheet - $this->_worksheet = $pValue; - $this->_worksheet->getCell($this->_coordinates); - $this->_worksheet->getDrawingCollection()->append($this); - } else { - if ($pOverrideOld) { - // Remove drawing from old PHPExcel_Worksheet - $iterator = $this->_worksheet->getDrawingCollection()->getIterator(); - - while ($iterator->valid()) { - if ($iterator->current()->getHashCode() == $this->getHashCode()) { - $this->_worksheet->getDrawingCollection()->offsetUnset( $iterator->key() ); - $this->_worksheet = null; - break; - } - } - - // Set new PHPExcel_Worksheet - $this->setWorksheet($pValue); - } else { - throw new Exception("A PHPExcel_Worksheet has already been assigned. Drawings can only exist on one PHPExcel_Worksheet."); - } - } - return $this; - } - - /** - * Get Coordinates - * - * @return string - */ - public function getCoordinates() { - return $this->_coordinates; - } - - /** - * Set Coordinates - * - * @param string $pValue - * @return PHPExcel_Worksheet_BaseDrawing - */ - public function setCoordinates($pValue = 'A1') { - $this->_coordinates = $pValue; - return $this; - } - - /** - * Get OffsetX - * - * @return int - */ - public function getOffsetX() { - return $this->_offsetX; - } - - /** - * Set OffsetX - * - * @param int $pValue - * @return PHPExcel_Worksheet_BaseDrawing - */ - public function setOffsetX($pValue = 0) { - $this->_offsetX = $pValue; - return $this; - } - - /** - * Get OffsetY - * - * @return int - */ - public function getOffsetY() { - return $this->_offsetY; - } - - /** - * Set OffsetY - * - * @param int $pValue - * @return PHPExcel_Worksheet_BaseDrawing - */ - public function setOffsetY($pValue = 0) { - $this->_offsetY = $pValue; - return $this; - } - - /** - * Get Width - * - * @return int - */ - public function getWidth() { - return $this->_width; - } - - /** - * Set Width - * - * @param int $pValue - * @return PHPExcel_Worksheet_BaseDrawing - */ - public function setWidth($pValue = 0) { - // Resize proportional? - if ($this->_resizeProportional && $pValue != 0) { - $ratio = $this->_height / $this->_width; - $this->_height = round($ratio * $pValue); - } - - // Set width - $this->_width = $pValue; - - return $this; - } - - /** - * Get Height - * - * @return int - */ - public function getHeight() { - return $this->_height; - } - - /** - * Set Height - * - * @param int $pValue - * @return PHPExcel_Worksheet_BaseDrawing - */ - public function setHeight($pValue = 0) { - // Resize proportional? - if ($this->_resizeProportional && $pValue != 0) { - $ratio = $this->_width / $this->_height; - $this->_width = round($ratio * $pValue); - } - - // Set height - $this->_height = $pValue; - - return $this; - } - - /** - * Set width and height with proportional resize - * Example: - * - * $objDrawing->setResizeProportional(true); - * $objDrawing->setWidthAndHeight(160,120); - * - * - * @author Vincent@luo MSN:kele_100@hotmail.com - * @param int $width - * @param int $height - * @return PHPExcel_Worksheet_BaseDrawing - */ - public function setWidthAndHeight($width = 0, $height = 0) { - $xratio = $width / $this->_width; - $yratio = $height / $this->_height; - if ($this->_resizeProportional && !($width == 0 || $height == 0)) { - if (($xratio * $this->_height) < $height) { - $this->_height = ceil($xratio * $this->_height); - $this->_width = $width; - } else { - $this->_width = ceil($yratio * $this->_width); - $this->_height = $height; - } - } - return $this; - } - - /** - * Get ResizeProportional - * - * @return boolean - */ - public function getResizeProportional() { - return $this->_resizeProportional; - } - - /** - * Set ResizeProportional - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_BaseDrawing - */ - public function setResizeProportional($pValue = true) { - $this->_resizeProportional = $pValue; - return $this; - } - - /** - * Get Rotation - * - * @return int - */ - public function getRotation() { - return $this->_rotation; - } - - /** - * Set Rotation - * - * @param int $pValue - * @return PHPExcel_Worksheet_BaseDrawing - */ - public function setRotation($pValue = 0) { - $this->_rotation = $pValue; - return $this; - } - - /** - * Get Shadow - * - * @return PHPExcel_Worksheet_Drawing_Shadow - */ - public function getShadow() { - return $this->_shadow; - } - - /** - * Set Shadow - * - * @param PHPExcel_Worksheet_Drawing_Shadow $pValue - * @throws Exception - * @return PHPExcel_Worksheet_BaseDrawing - */ - public function setShadow(PHPExcel_Worksheet_Drawing_Shadow $pValue = null) { - $this->_shadow = $pValue; - return $this; - } - - /** - * Get hash code - * - * @return string Hash code - */ - public function getHashCode() { - return md5( - $this->_name - . $this->_description - . $this->_worksheet->getHashCode() - . $this->_coordinates - . $this->_offsetX - . $this->_offsetY - . $this->_width - . $this->_height - . $this->_rotation - . $this->_shadow->getHashCode() - . __CLASS__ - ); - } - - /** - * Implement PHP __clone to create a deep clone, not just a shallow copy. - */ - public function __clone() { - $vars = get_object_vars($this); - foreach ($vars as $key => $value) { - if (is_object($value)) { - $this->$key = clone $value; - } else { - $this->$key = $value; - } - } - } -} diff --git a/admin/survey/excel/PHPExcel/Worksheet/CellIterator.php b/admin/survey/excel/PHPExcel/Worksheet/CellIterator.php deleted file mode 100644 index 3f3f2d9..0000000 --- a/admin/survey/excel/PHPExcel/Worksheet/CellIterator.php +++ /dev/null @@ -1,161 +0,0 @@ -_subject = $subject; - $this->_rowIndex = $rowIndex; - } - - /** - * Destructor - */ - public function __destruct() { - unset($this->_subject); - } - - /** - * Rewind iterator - */ - public function rewind() { - $this->_position = 0; - } - - /** - * Current PHPExcel_Cell - * - * @return PHPExcel_Cell - */ - public function current() { - return $this->_subject->getCellByColumnAndRow($this->_position, $this->_rowIndex); - } - - /** - * Current key - * - * @return int - */ - public function key() { - return $this->_position; - } - - /** - * Next value - */ - public function next() { - ++$this->_position; - } - - /** - * Are there any more PHPExcel_Cell instances available? - * - * @return boolean - */ - public function valid() { - // columnIndexFromString() returns an index based at one, - // treat it as a count when comparing it to the base zero - // position. - $columnCount = PHPExcel_Cell::columnIndexFromString($this->_subject->getHighestColumn()); - - if ($this->_onlyExistingCells) { - // If we aren't looking at an existing cell, either - // because the first column doesn't exist or next() has - // been called onto a nonexistent cell, then loop until we - // find one, or pass the last column. - while ($this->_position < $columnCount && - !$this->_subject->cellExistsByColumnAndRow($this->_position, $this->_rowIndex)) { - ++$this->_position; - } - } - - return $this->_position < $columnCount; - } - - /** - * Get loop only existing cells - * - * @return boolean - */ - public function getIterateOnlyExistingCells() { - return $this->_onlyExistingCells; - } - - /** - * Set the iterator to loop only existing cells - * - * @param boolean $value - */ - public function setIterateOnlyExistingCells($value = true) { - $this->_onlyExistingCells = $value; - } -} diff --git a/admin/survey/excel/PHPExcel/Worksheet/ColumnDimension.php b/admin/survey/excel/PHPExcel/Worksheet/ColumnDimension.php deleted file mode 100644 index a95cd1f..0000000 --- a/admin/survey/excel/PHPExcel/Worksheet/ColumnDimension.php +++ /dev/null @@ -1,266 +0,0 @@ -_columnIndex = $pIndex; - - // set default index to cellXf - $this->_xfIndex = 0; - } - - /** - * Get ColumnIndex - * - * @return string - */ - public function getColumnIndex() { - return $this->_columnIndex; - } - - /** - * Set ColumnIndex - * - * @param string $pValue - * @return PHPExcel_Worksheet_ColumnDimension - */ - public function setColumnIndex($pValue) { - $this->_columnIndex = $pValue; - return $this; - } - - /** - * Get Width - * - * @return double - */ - public function getWidth() { - return $this->_width; - } - - /** - * Set Width - * - * @param double $pValue - * @return PHPExcel_Worksheet_ColumnDimension - */ - public function setWidth($pValue = -1) { - $this->_width = $pValue; - return $this; - } - - /** - * Get Auto Size - * - * @return bool - */ - public function getAutoSize() { - return $this->_autoSize; - } - - /** - * Set Auto Size - * - * @param bool $pValue - * @return PHPExcel_Worksheet_ColumnDimension - */ - public function setAutoSize($pValue = false) { - $this->_autoSize = $pValue; - return $this; - } - - /** - * Get Visible - * - * @return bool - */ - public function getVisible() { - return $this->_visible; - } - - /** - * Set Visible - * - * @param bool $pValue - * @return PHPExcel_Worksheet_ColumnDimension - */ - public function setVisible($pValue = true) { - $this->_visible = $pValue; - return $this; - } - - /** - * Get Outline Level - * - * @return int - */ - public function getOutlineLevel() { - return $this->_outlineLevel; - } - - /** - * Set Outline Level - * - * Value must be between 0 and 7 - * - * @param int $pValue - * @throws Exception - * @return PHPExcel_Worksheet_ColumnDimension - */ - public function setOutlineLevel($pValue) { - if ($pValue < 0 || $pValue > 7) { - throw new Exception("Outline level must range between 0 and 7."); - } - - $this->_outlineLevel = $pValue; - return $this; - } - - /** - * Get Collapsed - * - * @return bool - */ - public function getCollapsed() { - return $this->_collapsed; - } - - /** - * Set Collapsed - * - * @param bool $pValue - * @return PHPExcel_Worksheet_ColumnDimension - */ - public function setCollapsed($pValue = true) { - $this->_collapsed = $pValue; - return $this; - } - - /** - * Get index to cellXf - * - * @return int - */ - public function getXfIndex() - { - return $this->_xfIndex; - } - - /** - * Set index to cellXf - * - * @param int $pValue - * @return PHPExcel_Worksheet_ColumnDimension - */ - public function setXfIndex($pValue = 0) - { - $this->_xfIndex = $pValue; - return $this; - } - - /** - * Implement PHP __clone to create a deep clone, not just a shallow copy. - */ - public function __clone() { - $vars = get_object_vars($this); - foreach ($vars as $key => $value) { - if (is_object($value)) { - $this->$key = clone $value; - } else { - $this->$key = $value; - } - } - } - -} diff --git a/admin/survey/excel/PHPExcel/Worksheet/Drawing.php b/admin/survey/excel/PHPExcel/Worksheet/Drawing.php deleted file mode 100644 index 0e1d62e..0000000 --- a/admin/survey/excel/PHPExcel/Worksheet/Drawing.php +++ /dev/null @@ -1,148 +0,0 @@ -_path = ''; - - // Initialize parent - parent::__construct(); - } - - /** - * Get Filename - * - * @return string - */ - public function getFilename() { - return basename($this->_path); - } - - /** - * Get indexed filename (using image index) - * - * @return string - */ - public function getIndexedFilename() { - $fileName = $this->getFilename(); - $fileName = str_replace(' ', '_', $fileName); - return str_replace('.' . $this->getExtension(), '', $fileName) . $this->getImageIndex() . '.' . $this->getExtension(); - } - - /** - * Get Extension - * - * @return string - */ - public function getExtension() { - $exploded = explode(".", basename($this->_path)); - return $exploded[count($exploded) - 1]; - } - - /** - * Get Path - * - * @return string - */ - public function getPath() { - return $this->_path; - } - - /** - * Set Path - * - * @param string $pValue File path - * @param boolean $pVerifyFile Verify file - * @throws Exception - * @return PHPExcel_Worksheet_Drawing - */ - public function setPath($pValue = '', $pVerifyFile = true) { - if ($pVerifyFile) { - if (file_exists($pValue)) { - $this->_path = $pValue; - - if ($this->_width == 0 && $this->_height == 0) { - // Get width/height - list($this->_width, $this->_height) = getimagesize($pValue); - } - } else { - throw new Exception("File $pValue not found!"); - } - } else { - $this->_path = $pValue; - } - return $this; - } - - /** - * Get hash code - * - * @return string Hash code - */ - public function getHashCode() { - return md5( - $this->_path - . parent::getHashCode() - . __CLASS__ - ); - } - - /** - * Implement PHP __clone to create a deep clone, not just a shallow copy. - */ - public function __clone() { - $vars = get_object_vars($this); - foreach ($vars as $key => $value) { - if (is_object($value)) { - $this->$key = clone $value; - } else { - $this->$key = $value; - } - } - } -} diff --git a/admin/survey/excel/PHPExcel/Worksheet/Drawing/Shadow.php b/admin/survey/excel/PHPExcel/Worksheet/Drawing/Shadow.php deleted file mode 100644 index 50696d6..0000000 --- a/admin/survey/excel/PHPExcel/Worksheet/Drawing/Shadow.php +++ /dev/null @@ -1,288 +0,0 @@ -_visible = false; - $this->_blurRadius = 6; - $this->_distance = 2; - $this->_direction = 0; - $this->_alignment = PHPExcel_Worksheet_Drawing_Shadow::SHADOW_BOTTOM_RIGHT; - $this->_color = new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_BLACK); - $this->_alpha = 50; - } - - /** - * Get Visible - * - * @return boolean - */ - public function getVisible() { - return $this->_visible; - } - - /** - * Set Visible - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_Drawing_Shadow - */ - public function setVisible($pValue = false) { - $this->_visible = $pValue; - return $this; - } - - /** - * Get Blur radius - * - * @return int - */ - public function getBlurRadius() { - return $this->_blurRadius; - } - - /** - * Set Blur radius - * - * @param int $pValue - * @return PHPExcel_Worksheet_Drawing_Shadow - */ - public function setBlurRadius($pValue = 6) { - $this->_blurRadius = $pValue; - return $this; - } - - /** - * Get Shadow distance - * - * @return int - */ - public function getDistance() { - return $this->_distance; - } - - /** - * Set Shadow distance - * - * @param int $pValue - * @return PHPExcel_Worksheet_Drawing_Shadow - */ - public function setDistance($pValue = 2) { - $this->_distance = $pValue; - return $this; - } - - /** - * Get Shadow direction (in degrees) - * - * @return int - */ - public function getDirection() { - return $this->_direction; - } - - /** - * Set Shadow direction (in degrees) - * - * @param int $pValue - * @return PHPExcel_Worksheet_Drawing_Shadow - */ - public function setDirection($pValue = 0) { - $this->_direction = $pValue; - return $this; - } - - /** - * Get Shadow alignment - * - * @return int - */ - public function getAlignment() { - return $this->_alignment; - } - - /** - * Set Shadow alignment - * - * @param int $pValue - * @return PHPExcel_Worksheet_Drawing_Shadow - */ - public function setAlignment($pValue = 0) { - $this->_alignment = $pValue; - return $this; - } - - /** - * Get Color - * - * @return PHPExcel_Style_Color - */ - public function getColor() { - return $this->_color; - } - - /** - * Set Color - * - * @param PHPExcel_Style_Color $pValue - * @throws Exception - * @return PHPExcel_Worksheet_Drawing_Shadow - */ - public function setColor(PHPExcel_Style_Color $pValue = null) { - $this->_color = $pValue; - return $this; - } - - /** - * Get Alpha - * - * @return int - */ - public function getAlpha() { - return $this->_alpha; - } - - /** - * Set Alpha - * - * @param int $pValue - * @return PHPExcel_Worksheet_Drawing_Shadow - */ - public function setAlpha($pValue = 0) { - $this->_alpha = $pValue; - return $this; - } - - /** - * Get hash code - * - * @return string Hash code - */ - public function getHashCode() { - return md5( - ($this->_visible ? 't' : 'f') - . $this->_blurRadius - . $this->_distance - . $this->_direction - . $this->_alignment - . $this->_color->getHashCode() - . $this->_alpha - . __CLASS__ - ); - } - - /** - * Implement PHP __clone to create a deep clone, not just a shallow copy. - */ - public function __clone() { - $vars = get_object_vars($this); - foreach ($vars as $key => $value) { - if (is_object($value)) { - $this->$key = clone $value; - } else { - $this->$key = $value; - } - } - } -} diff --git a/admin/survey/excel/PHPExcel/Worksheet/HeaderFooter.php b/admin/survey/excel/PHPExcel/Worksheet/HeaderFooter.php deleted file mode 100644 index ad1424b..0000000 --- a/admin/survey/excel/PHPExcel/Worksheet/HeaderFooter.php +++ /dev/null @@ -1,465 +0,0 @@ - - * Header/Footer Formatting Syntax taken from Office Open XML Part 4 - Markup Language Reference, page 1970: - * - * There are a number of formatting codes that can be written inline with the actual header / footer text, which - * affect the formatting in the header or footer. - * - * Example: This example shows the text "Center Bold Header" on the first line (center section), and the date on - * the second line (center section). - * &CCenter &"-,Bold"Bold&"-,Regular"Header_x000A_&D - * - * General Rules: - * There is no required order in which these codes must appear. - * - * The first occurrence of the following codes turns the formatting ON, the second occurrence turns it OFF again: - * - strikethrough - * - superscript - * - subscript - * Superscript and subscript cannot both be ON at same time. Whichever comes first wins and the other is ignored, - * while the first is ON. - * &L - code for "left section" (there are three header / footer locations, "left", "center", and "right"). When - * two or more occurrences of this section marker exist, the contents from all markers are concatenated, in the - * order of appearance, and placed into the left section. - * &P - code for "current page #" - * &N - code for "total pages" - * &font size - code for "text font size", where font size is a font size in points. - * &K - code for "text font color" - * RGB Color is specified as RRGGBB - * Theme Color is specifed as TTSNN where TT is the theme color Id, S is either "+" or "-" of the tint/shade - * value, NN is the tint/shade value. - * &S - code for "text strikethrough" on / off - * &X - code for "text super script" on / off - * &Y - code for "text subscript" on / off - * &C - code for "center section". When two or more occurrences of this section marker exist, the contents - * from all markers are concatenated, in the order of appearance, and placed into the center section. - * - * &D - code for "date" - * &T - code for "time" - * &G - code for "picture as background" - * &U - code for "text single underline" - * &E - code for "double underline" - * &R - code for "right section". When two or more occurrences of this section marker exist, the contents - * from all markers are concatenated, in the order of appearance, and placed into the right section. - * &Z - code for "this workbook's file path" - * &F - code for "this workbook's file name" - * &A - code for "sheet tab name" - * &+ - code for add to page #. - * &- - code for subtract from page #. - * &"font name,font type" - code for "text font name" and "text font type", where font name and font type - * are strings specifying the name and type of the font, separated by a comma. When a hyphen appears in font - * name, it means "none specified". Both of font name and font type can be localized values. - * &"-,Bold" - code for "bold font style" - * &B - also means "bold font style". - * &"-,Regular" - code for "regular font style" - * &"-,Italic" - code for "italic font style" - * &I - also means "italic font style" - * &"-,Bold Italic" code for "bold italic font style" - * &O - code for "outline style" - * &H - code for "shadow style" - * - * - * @category PHPExcel - * @package PHPExcel_Worksheet - * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) - */ -class PHPExcel_Worksheet_HeaderFooter -{ - /* Header/footer image location */ - const IMAGE_HEADER_LEFT = 'LH'; - const IMAGE_HEADER_CENTER = 'CH'; - const IMAGE_HEADER_RIGHT = 'RH'; - const IMAGE_FOOTER_LEFT = 'LF'; - const IMAGE_FOOTER_CENTER = 'CF'; - const IMAGE_FOOTER_RIGHT = 'RF'; - - /** - * OddHeader - * - * @var string - */ - private $_oddHeader = ''; - - /** - * OddFooter - * - * @var string - */ - private $_oddFooter = ''; - - /** - * EvenHeader - * - * @var string - */ - private $_evenHeader = ''; - - /** - * EvenFooter - * - * @var string - */ - private $_evenFooter = ''; - - /** - * FirstHeader - * - * @var string - */ - private $_firstHeader = ''; - - /** - * FirstFooter - * - * @var string - */ - private $_firstFooter = ''; - - /** - * Different header for Odd/Even, defaults to false - * - * @var boolean - */ - private $_differentOddEven = false; - - /** - * Different header for first page, defaults to false - * - * @var boolean - */ - private $_differentFirst = false; - - /** - * Scale with document, defaults to true - * - * @var boolean - */ - private $_scaleWithDocument = true; - - /** - * Align with margins, defaults to true - * - * @var boolean - */ - private $_alignWithMargins = true; - - /** - * Header/footer images - * - * @var PHPExcel_Worksheet_HeaderFooterDrawing[] - */ - private $_headerFooterImages = array(); - - /** - * Create a new PHPExcel_Worksheet_HeaderFooter - */ - public function __construct() - { - } - - /** - * Get OddHeader - * - * @return string - */ - public function getOddHeader() { - return $this->_oddHeader; - } - - /** - * Set OddHeader - * - * @param string $pValue - * @return PHPExcel_Worksheet_HeaderFooter - */ - public function setOddHeader($pValue) { - $this->_oddHeader = $pValue; - return $this; - } - - /** - * Get OddFooter - * - * @return string - */ - public function getOddFooter() { - return $this->_oddFooter; - } - - /** - * Set OddFooter - * - * @param string $pValue - * @return PHPExcel_Worksheet_HeaderFooter - */ - public function setOddFooter($pValue) { - $this->_oddFooter = $pValue; - return $this; - } - - /** - * Get EvenHeader - * - * @return string - */ - public function getEvenHeader() { - return $this->_evenHeader; - } - - /** - * Set EvenHeader - * - * @param string $pValue - * @return PHPExcel_Worksheet_HeaderFooter - */ - public function setEvenHeader($pValue) { - $this->_evenHeader = $pValue; - return $this; - } - - /** - * Get EvenFooter - * - * @return string - */ - public function getEvenFooter() { - return $this->_evenFooter; - } - - /** - * Set EvenFooter - * - * @param string $pValue - * @return PHPExcel_Worksheet_HeaderFooter - */ - public function setEvenFooter($pValue) { - $this->_evenFooter = $pValue; - return $this; - } - - /** - * Get FirstHeader - * - * @return string - */ - public function getFirstHeader() { - return $this->_firstHeader; - } - - /** - * Set FirstHeader - * - * @param string $pValue - * @return PHPExcel_Worksheet_HeaderFooter - */ - public function setFirstHeader($pValue) { - $this->_firstHeader = $pValue; - return $this; - } - - /** - * Get FirstFooter - * - * @return string - */ - public function getFirstFooter() { - return $this->_firstFooter; - } - - /** - * Set FirstFooter - * - * @param string $pValue - * @return PHPExcel_Worksheet_HeaderFooter - */ - public function setFirstFooter($pValue) { - $this->_firstFooter = $pValue; - return $this; - } - - /** - * Get DifferentOddEven - * - * @return boolean - */ - public function getDifferentOddEven() { - return $this->_differentOddEven; - } - - /** - * Set DifferentOddEven - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_HeaderFooter - */ - public function setDifferentOddEven($pValue = false) { - $this->_differentOddEven = $pValue; - return $this; - } - - /** - * Get DifferentFirst - * - * @return boolean - */ - public function getDifferentFirst() { - return $this->_differentFirst; - } - - /** - * Set DifferentFirst - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_HeaderFooter - */ - public function setDifferentFirst($pValue = false) { - $this->_differentFirst = $pValue; - return $this; - } - - /** - * Get ScaleWithDocument - * - * @return boolean - */ - public function getScaleWithDocument() { - return $this->_scaleWithDocument; - } - - /** - * Set ScaleWithDocument - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_HeaderFooter - */ - public function setScaleWithDocument($pValue = true) { - $this->_scaleWithDocument = $pValue; - return $this; - } - - /** - * Get AlignWithMargins - * - * @return boolean - */ - public function getAlignWithMargins() { - return $this->_alignWithMargins; - } - - /** - * Set AlignWithMargins - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_HeaderFooter - */ - public function setAlignWithMargins($pValue = true) { - $this->_alignWithMargins = $pValue; - return $this; - } - - /** - * Add header/footer image - * - * @param PHPExcel_Worksheet_HeaderFooterDrawing $image - * @param string $location - * @throws Exception - * @return PHPExcel_Worksheet_HeaderFooter - */ - public function addImage(PHPExcel_Worksheet_HeaderFooterDrawing $image = null, $location = self::IMAGE_HEADER_LEFT) { - $this->_headerFooterImages[$location] = $image; - return $this; - } - - /** - * Remove header/footer image - * - * @param string $location - * @throws Exception - * @return PHPExcel_Worksheet_HeaderFooter - */ - public function removeImage($location = self::IMAGE_HEADER_LEFT) { - if (isset($this->_headerFooterImages[$location])) { - unset($this->_headerFooterImages[$location]); - } - return $this; - } - - /** - * Set header/footer images - * - * @param PHPExcel_Worksheet_HeaderFooterDrawing[] $images - * @throws Exception - * @return PHPExcel_Worksheet_HeaderFooter - */ - public function setImages($images) { - if (!is_array($images)) { - throw new Exception('Invalid parameter!'); - } - - $this->_headerFooterImages = $images; - return $this; - } - - /** - * Get header/footer images - * - * @return PHPExcel_Worksheet_HeaderFooterDrawing[] - */ - public function getImages() { - // Sort array - $images = array(); - if (isset($this->_headerFooterImages[self::IMAGE_HEADER_LEFT])) $images[self::IMAGE_HEADER_LEFT] = $this->_headerFooterImages[self::IMAGE_HEADER_LEFT]; - if (isset($this->_headerFooterImages[self::IMAGE_HEADER_CENTER])) $images[self::IMAGE_HEADER_CENTER] = $this->_headerFooterImages[self::IMAGE_HEADER_CENTER]; - if (isset($this->_headerFooterImages[self::IMAGE_HEADER_RIGHT])) $images[self::IMAGE_HEADER_RIGHT] = $this->_headerFooterImages[self::IMAGE_HEADER_RIGHT]; - if (isset($this->_headerFooterImages[self::IMAGE_FOOTER_LEFT])) $images[self::IMAGE_FOOTER_LEFT] = $this->_headerFooterImages[self::IMAGE_FOOTER_LEFT]; - if (isset($this->_headerFooterImages[self::IMAGE_FOOTER_CENTER])) $images[self::IMAGE_FOOTER_CENTER] = $this->_headerFooterImages[self::IMAGE_FOOTER_CENTER]; - if (isset($this->_headerFooterImages[self::IMAGE_FOOTER_RIGHT])) $images[self::IMAGE_FOOTER_RIGHT] = $this->_headerFooterImages[self::IMAGE_FOOTER_RIGHT]; - $this->_headerFooterImages = $images; - - return $this->_headerFooterImages; - } - - /** - * Implement PHP __clone to create a deep clone, not just a shallow copy. - */ - public function __clone() { - $vars = get_object_vars($this); - foreach ($vars as $key => $value) { - if (is_object($value)) { - $this->$key = clone $value; - } else { - $this->$key = $value; - } - } - } -} diff --git a/admin/survey/excel/PHPExcel/Worksheet/HeaderFooterDrawing.php b/admin/survey/excel/PHPExcel/Worksheet/HeaderFooterDrawing.php deleted file mode 100644 index 1074dc4..0000000 --- a/admin/survey/excel/PHPExcel/Worksheet/HeaderFooterDrawing.php +++ /dev/null @@ -1,350 +0,0 @@ -_path = ''; - $this->_name = ''; - $this->_offsetX = 0; - $this->_offsetY = 0; - $this->_width = 0; - $this->_height = 0; - $this->_resizeProportional = true; - } - - /** - * Get Name - * - * @return string - */ - public function getName() { - return $this->_name; - } - - /** - * Set Name - * - * @param string $pValue - * @return PHPExcel_Worksheet_HeaderFooterDrawing - */ - public function setName($pValue = '') { - $this->_name = $pValue; - return $this; - } - - /** - * Get OffsetX - * - * @return int - */ - public function getOffsetX() { - return $this->_offsetX; - } - - /** - * Set OffsetX - * - * @param int $pValue - * @return PHPExcel_Worksheet_HeaderFooterDrawing - */ - public function setOffsetX($pValue = 0) { - $this->_offsetX = $pValue; - return $this; - } - - /** - * Get OffsetY - * - * @return int - */ - public function getOffsetY() { - return $this->_offsetY; - } - - /** - * Set OffsetY - * - * @param int $pValue - * @return PHPExcel_Worksheet_HeaderFooterDrawing - */ - public function setOffsetY($pValue = 0) { - $this->_offsetY = $pValue; - return $this; - } - - /** - * Get Width - * - * @return int - */ - public function getWidth() { - return $this->_width; - } - - /** - * Set Width - * - * @param int $pValue - * @return PHPExcel_Worksheet_HeaderFooterDrawing - */ - public function setWidth($pValue = 0) { - // Resize proportional? - if ($this->_resizeProportional && $pValue != 0) { - $ratio = $this->_width / $this->_height; - $this->_height = round($ratio * $pValue); - } - - // Set width - $this->_width = $pValue; - - return $this; - } - - /** - * Get Height - * - * @return int - */ - public function getHeight() { - return $this->_height; - } - - /** - * Set Height - * - * @param int $pValue - * @return PHPExcel_Worksheet_HeaderFooterDrawing - */ - public function setHeight($pValue = 0) { - // Resize proportional? - if ($this->_resizeProportional && $pValue != 0) { - $ratio = $this->_width / $this->_height; - $this->_width = round($ratio * $pValue); - } - - // Set height - $this->_height = $pValue; - - return $this; - } - - /** - * Set width and height with proportional resize - * Example: - * - * $objDrawing->setResizeProportional(true); - * $objDrawing->setWidthAndHeight(160,120); - * - * - * @author Vincent@luo MSN:kele_100@hotmail.com - * @param int $width - * @param int $height - * @return PHPExcel_Worksheet_HeaderFooterDrawing - */ - public function setWidthAndHeight($width = 0, $height = 0) { - $xratio = $width / $this->_width; - $yratio = $height / $this->_height; - if ($this->_resizeProportional && !($width == 0 || $height == 0)) { - if (($xratio * $this->_height) < $height) { - $this->_height = ceil($xratio * $this->_height); - $this->_width = $width; - } else { - $this->_width = ceil($yratio * $this->_width); - $this->_height = $height; - } - } - return $this; - } - - /** - * Get ResizeProportional - * - * @return boolean - */ - public function getResizeProportional() { - return $this->_resizeProportional; - } - - /** - * Set ResizeProportional - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_HeaderFooterDrawing - */ - public function setResizeProportional($pValue = true) { - $this->_resizeProportional = $pValue; - return $this; - } - - /** - * Get Filename - * - * @return string - */ - public function getFilename() { - return basename($this->_path); - } - - /** - * Get Extension - * - * @return string - */ - public function getExtension() { - $parts = explode(".", basename($this->_path)); - return end($parts); - } - - /** - * Get Path - * - * @return string - */ - public function getPath() { - return $this->_path; - } - - /** - * Set Path - * - * @param string $pValue File path - * @param boolean $pVerifyFile Verify file - * @throws Exception - * @return PHPExcel_Worksheet_HeaderFooterDrawing - */ - public function setPath($pValue = '', $pVerifyFile = true) { - if ($pVerifyFile) { - if (file_exists($pValue)) { - $this->_path = $pValue; - - if ($this->_width == 0 && $this->_height == 0) { - // Get width/height - list($this->_width, $this->_height) = getimagesize($pValue); - } - } else { - throw new Exception("File $pValue not found!"); - } - } else { - $this->_path = $pValue; - } - return $this; - } - - /** - * Get hash code - * - * @return string Hash code - */ - public function getHashCode() { - return md5( - $this->_path - . $this->_name - . $this->_offsetX - . $this->_offsetY - . $this->_width - . $this->_height - . __CLASS__ - ); - } - - /** - * Implement PHP __clone to create a deep clone, not just a shallow copy. - */ - public function __clone() { - $vars = get_object_vars($this); - foreach ($vars as $key => $value) { - if (is_object($value)) { - $this->$key = clone $value; - } else { - $this->$key = $value; - } - } - } -} diff --git a/admin/survey/excel/PHPExcel/Worksheet/MemoryDrawing.php b/admin/survey/excel/PHPExcel/Worksheet/MemoryDrawing.php deleted file mode 100644 index 8dc4be7..0000000 --- a/admin/survey/excel/PHPExcel/Worksheet/MemoryDrawing.php +++ /dev/null @@ -1,200 +0,0 @@ -_imageResource = null; - $this->_renderingFunction = self::RENDERING_DEFAULT; - $this->_mimeType = self::MIMETYPE_DEFAULT; - $this->_uniqueName = md5(rand(0, 9999). time() . rand(0, 9999)); - - // Initialize parent - parent::__construct(); - } - - /** - * Get image resource - * - * @return resource - */ - public function getImageResource() { - return $this->_imageResource; - } - - /** - * Set image resource - * - * @param $value resource - * @return PHPExcel_Worksheet_MemoryDrawing - */ - public function setImageResource($value = null) { - $this->_imageResource = $value; - - if (!is_null($this->_imageResource)) { - // Get width/height - $this->_width = imagesx($this->_imageResource); - $this->_height = imagesy($this->_imageResource); - } - return $this; - } - - /** - * Get rendering function - * - * @return string - */ - public function getRenderingFunction() { - return $this->_renderingFunction; - } - - /** - * Set rendering function - * - * @param string $value - * @return PHPExcel_Worksheet_MemoryDrawing - */ - public function setRenderingFunction($value = PHPExcel_Worksheet_MemoryDrawing::RENDERING_DEFAULT) { - $this->_renderingFunction = $value; - return $this; - } - - /** - * Get mime type - * - * @return string - */ - public function getMimeType() { - return $this->_mimeType; - } - - /** - * Set mime type - * - * @param string $value - * @return PHPExcel_Worksheet_MemoryDrawing - */ - public function setMimeType($value = PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_DEFAULT) { - $this->_mimeType = $value; - return $this; - } - - /** - * Get indexed filename (using image index) - * - * @return string - */ - public function getIndexedFilename() { - $extension = strtolower($this->getMimeType()); - $extension = explode('/', $extension); - $extension = $extension[1]; - - return $this->_uniqueName . $this->getImageIndex() . '.' . $extension; - } - - /** - * Get hash code - * - * @return string Hash code - */ - public function getHashCode() { - return md5( - $this->_renderingFunction - . $this->_mimeType - . $this->_uniqueName - . parent::getHashCode() - . __CLASS__ - ); - } - - /** - * Implement PHP __clone to create a deep clone, not just a shallow copy. - */ - public function __clone() { - $vars = get_object_vars($this); - foreach ($vars as $key => $value) { - if (is_object($value)) { - $this->$key = clone $value; - } else { - $this->$key = $value; - } - } - } -} diff --git a/admin/survey/excel/PHPExcel/Worksheet/PageMargins.php b/admin/survey/excel/PHPExcel/Worksheet/PageMargins.php deleted file mode 100644 index c288fd8..0000000 --- a/admin/survey/excel/PHPExcel/Worksheet/PageMargins.php +++ /dev/null @@ -1,220 +0,0 @@ -_left; - } - - /** - * Set Left - * - * @param double $pValue - * @return PHPExcel_Worksheet_PageMargins - */ - public function setLeft($pValue) { - $this->_left = $pValue; - return $this; - } - - /** - * Get Right - * - * @return double - */ - public function getRight() { - return $this->_right; - } - - /** - * Set Right - * - * @param double $pValue - * @return PHPExcel_Worksheet_PageMargins - */ - public function setRight($pValue) { - $this->_right = $pValue; - return $this; - } - - /** - * Get Top - * - * @return double - */ - public function getTop() { - return $this->_top; - } - - /** - * Set Top - * - * @param double $pValue - * @return PHPExcel_Worksheet_PageMargins - */ - public function setTop($pValue) { - $this->_top = $pValue; - return $this; - } - - /** - * Get Bottom - * - * @return double - */ - public function getBottom() { - return $this->_bottom; - } - - /** - * Set Bottom - * - * @param double $pValue - * @return PHPExcel_Worksheet_PageMargins - */ - public function setBottom($pValue) { - $this->_bottom = $pValue; - return $this; - } - - /** - * Get Header - * - * @return double - */ - public function getHeader() { - return $this->_header; - } - - /** - * Set Header - * - * @param double $pValue - * @return PHPExcel_Worksheet_PageMargins - */ - public function setHeader($pValue) { - $this->_header = $pValue; - return $this; - } - - /** - * Get Footer - * - * @return double - */ - public function getFooter() { - return $this->_footer; - } - - /** - * Set Footer - * - * @param double $pValue - * @return PHPExcel_Worksheet_PageMargins - */ - public function setFooter($pValue) { - $this->_footer = $pValue; - return $this; - } - - /** - * Implement PHP __clone to create a deep clone, not just a shallow copy. - */ - public function __clone() { - $vars = get_object_vars($this); - foreach ($vars as $key => $value) { - if (is_object($value)) { - $this->$key = clone $value; - } else { - $this->$key = $value; - } - } - } -} diff --git a/admin/survey/excel/PHPExcel/Worksheet/PageSetup.php b/admin/survey/excel/PHPExcel/Worksheet/PageSetup.php deleted file mode 100644 index eede154..0000000 --- a/admin/survey/excel/PHPExcel/Worksheet/PageSetup.php +++ /dev/null @@ -1,798 +0,0 @@ - - * Paper size taken from Office Open XML Part 4 - Markup Language Reference, page 1988: - * - * 1 = Letter paper (8.5 in. by 11 in.) - * 2 = Letter small paper (8.5 in. by 11 in.) - * 3 = Tabloid paper (11 in. by 17 in.) - * 4 = Ledger paper (17 in. by 11 in.) - * 5 = Legal paper (8.5 in. by 14 in.) - * 6 = Statement paper (5.5 in. by 8.5 in.) - * 7 = Executive paper (7.25 in. by 10.5 in.) - * 8 = A3 paper (297 mm by 420 mm) - * 9 = A4 paper (210 mm by 297 mm) - * 10 = A4 small paper (210 mm by 297 mm) - * 11 = A5 paper (148 mm by 210 mm) - * 12 = B4 paper (250 mm by 353 mm) - * 13 = B5 paper (176 mm by 250 mm) - * 14 = Folio paper (8.5 in. by 13 in.) - * 15 = Quarto paper (215 mm by 275 mm) - * 16 = Standard paper (10 in. by 14 in.) - * 17 = Standard paper (11 in. by 17 in.) - * 18 = Note paper (8.5 in. by 11 in.) - * 19 = #9 envelope (3.875 in. by 8.875 in.) - * 20 = #10 envelope (4.125 in. by 9.5 in.) - * 21 = #11 envelope (4.5 in. by 10.375 in.) - * 22 = #12 envelope (4.75 in. by 11 in.) - * 23 = #14 envelope (5 in. by 11.5 in.) - * 24 = C paper (17 in. by 22 in.) - * 25 = D paper (22 in. by 34 in.) - * 26 = E paper (34 in. by 44 in.) - * 27 = DL envelope (110 mm by 220 mm) - * 28 = C5 envelope (162 mm by 229 mm) - * 29 = C3 envelope (324 mm by 458 mm) - * 30 = C4 envelope (229 mm by 324 mm) - * 31 = C6 envelope (114 mm by 162 mm) - * 32 = C65 envelope (114 mm by 229 mm) - * 33 = B4 envelope (250 mm by 353 mm) - * 34 = B5 envelope (176 mm by 250 mm) - * 35 = B6 envelope (176 mm by 125 mm) - * 36 = Italy envelope (110 mm by 230 mm) - * 37 = Monarch envelope (3.875 in. by 7.5 in.). - * 38 = 6 3/4 envelope (3.625 in. by 6.5 in.) - * 39 = US standard fanfold (14.875 in. by 11 in.) - * 40 = German standard fanfold (8.5 in. by 12 in.) - * 41 = German legal fanfold (8.5 in. by 13 in.) - * 42 = ISO B4 (250 mm by 353 mm) - * 43 = Japanese double postcard (200 mm by 148 mm) - * 44 = Standard paper (9 in. by 11 in.) - * 45 = Standard paper (10 in. by 11 in.) - * 46 = Standard paper (15 in. by 11 in.) - * 47 = Invite envelope (220 mm by 220 mm) - * 50 = Letter extra paper (9.275 in. by 12 in.) - * 51 = Legal extra paper (9.275 in. by 15 in.) - * 52 = Tabloid extra paper (11.69 in. by 18 in.) - * 53 = A4 extra paper (236 mm by 322 mm) - * 54 = Letter transverse paper (8.275 in. by 11 in.) - * 55 = A4 transverse paper (210 mm by 297 mm) - * 56 = Letter extra transverse paper (9.275 in. by 12 in.) - * 57 = SuperA/SuperA/A4 paper (227 mm by 356 mm) - * 58 = SuperB/SuperB/A3 paper (305 mm by 487 mm) - * 59 = Letter plus paper (8.5 in. by 12.69 in.) - * 60 = A4 plus paper (210 mm by 330 mm) - * 61 = A5 transverse paper (148 mm by 210 mm) - * 62 = JIS B5 transverse paper (182 mm by 257 mm) - * 63 = A3 extra paper (322 mm by 445 mm) - * 64 = A5 extra paper (174 mm by 235 mm) - * 65 = ISO B5 extra paper (201 mm by 276 mm) - * 66 = A2 paper (420 mm by 594 mm) - * 67 = A3 transverse paper (297 mm by 420 mm) - * 68 = A3 extra transverse paper (322 mm by 445 mm) - * - * - * @category PHPExcel - * @package PHPExcel_Worksheet - * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) - */ -class PHPExcel_Worksheet_PageSetup -{ - /* Paper size */ - const PAPERSIZE_LETTER = 1; - const PAPERSIZE_LETTER_SMALL = 2; - const PAPERSIZE_TABLOID = 3; - const PAPERSIZE_LEDGER = 4; - const PAPERSIZE_LEGAL = 5; - const PAPERSIZE_STATEMENT = 6; - const PAPERSIZE_EXECUTIVE = 7; - const PAPERSIZE_A3 = 8; - const PAPERSIZE_A4 = 9; - const PAPERSIZE_A4_SMALL = 10; - const PAPERSIZE_A5 = 11; - const PAPERSIZE_B4 = 12; - const PAPERSIZE_B5 = 13; - const PAPERSIZE_FOLIO = 14; - const PAPERSIZE_QUARTO = 15; - const PAPERSIZE_STANDARD_1 = 16; - const PAPERSIZE_STANDARD_2 = 17; - const PAPERSIZE_NOTE = 18; - const PAPERSIZE_NO9_ENVELOPE = 19; - const PAPERSIZE_NO10_ENVELOPE = 20; - const PAPERSIZE_NO11_ENVELOPE = 21; - const PAPERSIZE_NO12_ENVELOPE = 22; - const PAPERSIZE_NO14_ENVELOPE = 23; - const PAPERSIZE_C = 24; - const PAPERSIZE_D = 25; - const PAPERSIZE_E = 26; - const PAPERSIZE_DL_ENVELOPE = 27; - const PAPERSIZE_C5_ENVELOPE = 28; - const PAPERSIZE_C3_ENVELOPE = 29; - const PAPERSIZE_C4_ENVELOPE = 30; - const PAPERSIZE_C6_ENVELOPE = 31; - const PAPERSIZE_C65_ENVELOPE = 32; - const PAPERSIZE_B4_ENVELOPE = 33; - const PAPERSIZE_B5_ENVELOPE = 34; - const PAPERSIZE_B6_ENVELOPE = 35; - const PAPERSIZE_ITALY_ENVELOPE = 36; - const PAPERSIZE_MONARCH_ENVELOPE = 37; - const PAPERSIZE_6_3_4_ENVELOPE = 38; - const PAPERSIZE_US_STANDARD_FANFOLD = 39; - const PAPERSIZE_GERMAN_STANDARD_FANFOLD = 40; - const PAPERSIZE_GERMAN_LEGAL_FANFOLD = 41; - const PAPERSIZE_ISO_B4 = 42; - const PAPERSIZE_JAPANESE_DOUBLE_POSTCARD = 43; - const PAPERSIZE_STANDARD_PAPER_1 = 44; - const PAPERSIZE_STANDARD_PAPER_2 = 45; - const PAPERSIZE_STANDARD_PAPER_3 = 46; - const PAPERSIZE_INVITE_ENVELOPE = 47; - const PAPERSIZE_LETTER_EXTRA_PAPER = 48; - const PAPERSIZE_LEGAL_EXTRA_PAPER = 49; - const PAPERSIZE_TABLOID_EXTRA_PAPER = 50; - const PAPERSIZE_A4_EXTRA_PAPER = 51; - const PAPERSIZE_LETTER_TRANSVERSE_PAPER = 52; - const PAPERSIZE_A4_TRANSVERSE_PAPER = 53; - const PAPERSIZE_LETTER_EXTRA_TRANSVERSE_PAPER = 54; - const PAPERSIZE_SUPERA_SUPERA_A4_PAPER = 55; - const PAPERSIZE_SUPERB_SUPERB_A3_PAPER = 56; - const PAPERSIZE_LETTER_PLUS_PAPER = 57; - const PAPERSIZE_A4_PLUS_PAPER = 58; - const PAPERSIZE_A5_TRANSVERSE_PAPER = 59; - const PAPERSIZE_JIS_B5_TRANSVERSE_PAPER = 60; - const PAPERSIZE_A3_EXTRA_PAPER = 61; - const PAPERSIZE_A5_EXTRA_PAPER = 62; - const PAPERSIZE_ISO_B5_EXTRA_PAPER = 63; - const PAPERSIZE_A2_PAPER = 64; - const PAPERSIZE_A3_TRANSVERSE_PAPER = 65; - const PAPERSIZE_A3_EXTRA_TRANSVERSE_PAPER = 66; - - /* Page orientation */ - const ORIENTATION_DEFAULT = 'default'; - const ORIENTATION_LANDSCAPE = 'landscape'; - const ORIENTATION_PORTRAIT = 'portrait'; - - /* Print Range Set Method */ - const SETPRINTRANGE_OVERWRITE = 'O'; - const SETPRINTRANGE_INSERT = 'I'; - - - /** - * Paper size - * - * @var int - */ - private $_paperSize = PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER; - - /** - * Orientation - * - * @var string - */ - private $_orientation = PHPExcel_Worksheet_PageSetup::ORIENTATION_DEFAULT; - - /** - * Scale (Print Scale) - * - * Print scaling. Valid values range from 10 to 400 - * This setting is overridden when fitToWidth and/or fitToHeight are in use - * - * @var int? - */ - private $_scale = 100; - - /** - * Fit To Page - * Whether scale or fitToWith / fitToHeight applies - * - * @var boolean - */ - private $_fitToPage = FALSE; - - /** - * Fit To Height - * Number of vertical pages to fit on - * - * @var int? - */ - private $_fitToHeight = 1; - - /** - * Fit To Width - * Number of horizontal pages to fit on - * - * @var int? - */ - private $_fitToWidth = 1; - - /** - * Columns to repeat at left - * - * @var array Containing start column and end column, empty array if option unset - */ - private $_columnsToRepeatAtLeft = array('', ''); - - /** - * Rows to repeat at top - * - * @var array Containing start row number and end row number, empty array if option unset - */ - private $_rowsToRepeatAtTop = array(0, 0); - - /** - * Center page horizontally - * - * @var boolean - */ - private $_horizontalCentered = FALSE; - - /** - * Center page vertically - * - * @var boolean - */ - private $_verticalCentered = FALSE; - - /** - * Print area - * - * @var string - */ - private $_printArea = NULL; - - /** - * First page number - * - * @var int - */ - private $_firstPageNumber = NULL; - - /** - * Create a new PHPExcel_Worksheet_PageSetup - */ - public function __construct() - { - } - - /** - * Get Paper Size - * - * @return int - */ - public function getPaperSize() { - return $this->_paperSize; - } - - /** - * Set Paper Size - * - * @param int $pValue - * @return PHPExcel_Worksheet_PageSetup - */ - public function setPaperSize($pValue = PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER) { - $this->_paperSize = $pValue; - return $this; - } - - /** - * Get Orientation - * - * @return string - */ - public function getOrientation() { - return $this->_orientation; - } - - /** - * Set Orientation - * - * @param string $pValue - * @return PHPExcel_Worksheet_PageSetup - */ - public function setOrientation($pValue = PHPExcel_Worksheet_PageSetup::ORIENTATION_DEFAULT) { - $this->_orientation = $pValue; - return $this; - } - - /** - * Get Scale - * - * @return int? - */ - public function getScale() { - return $this->_scale; - } - - /** - * Set Scale - * - * Print scaling. Valid values range from 10 to 400 - * This setting is overridden when fitToWidth and/or fitToHeight are in use - * - * @param int? $pValue - * @param boolean $pUpdate Update fitToPage so scaling applies rather than fitToHeight / fitToWidth - * @return PHPExcel_Worksheet_PageSetup - * @throws Exception - */ - public function setScale($pValue = 100, $pUpdate = true) { - // Microsoft Office Excel 2007 only allows setting a scale between 10 and 400 via the user interface, - // but it is apparently still able to handle any scale >= 0, where 0 results in 100 - if (($pValue >= 0) || is_null($pValue)) { - $this->_scale = $pValue; - if ($pUpdate) { - $this->_fitToPage = false; - } - } else { - throw new Exception("Scale must not be negative"); - } - return $this; - } - - /** - * Get Fit To Page - * - * @return boolean - */ - public function getFitToPage() { - return $this->_fitToPage; - } - - /** - * Set Fit To Page - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_PageSetup - */ - public function setFitToPage($pValue = TRUE) { - $this->_fitToPage = $pValue; - return $this; - } - - /** - * Get Fit To Height - * - * @return int? - */ - public function getFitToHeight() { - return $this->_fitToHeight; - } - - /** - * Set Fit To Height - * - * @param int? $pValue - * @param boolean $pUpdate Update fitToPage so it applies rather than scaling - * @return PHPExcel_Worksheet_PageSetup - */ - public function setFitToHeight($pValue = 1, $pUpdate = TRUE) { - $this->_fitToHeight = $pValue; - if ($pUpdate) { - $this->_fitToPage = TRUE; - } - return $this; - } - - /** - * Get Fit To Width - * - * @return int? - */ - public function getFitToWidth() { - return $this->_fitToWidth; - } - - /** - * Set Fit To Width - * - * @param int? $pValue - * @param boolean $pUpdate Update fitToPage so it applies rather than scaling - * @return PHPExcel_Worksheet_PageSetup - */ - public function setFitToWidth($pValue = 1, $pUpdate = TRUE) { - $this->_fitToWidth = $pValue; - if ($pUpdate) { - $this->_fitToPage = TRUE; - } - return $this; - } - - /** - * Is Columns to repeat at left set? - * - * @return boolean - */ - public function isColumnsToRepeatAtLeftSet() { - if (is_array($this->_columnsToRepeatAtLeft)) { - if ($this->_columnsToRepeatAtLeft[0] != '' && $this->_columnsToRepeatAtLeft[1] != '') { - return true; - } - } - - return false; - } - - /** - * Get Columns to repeat at left - * - * @return array Containing start column and end column, empty array if option unset - */ - public function getColumnsToRepeatAtLeft() { - return $this->_columnsToRepeatAtLeft; - } - - /** - * Set Columns to repeat at left - * - * @param array $pValue Containing start column and end column, empty array if option unset - * @return PHPExcel_Worksheet_PageSetup - */ - public function setColumnsToRepeatAtLeft($pValue = null) { - if (is_array($pValue)) { - $this->_columnsToRepeatAtLeft = $pValue; - } - return $this; - } - - /** - * Set Columns to repeat at left by start and end - * - * @param string $pStart - * @param string $pEnd - * @return PHPExcel_Worksheet_PageSetup - */ - public function setColumnsToRepeatAtLeftByStartAndEnd($pStart = 'A', $pEnd = 'A') { - $this->_columnsToRepeatAtLeft = array($pStart, $pEnd); - return $this; - } - - /** - * Is Rows to repeat at top set? - * - * @return boolean - */ - public function isRowsToRepeatAtTopSet() { - if (is_array($this->_rowsToRepeatAtTop)) { - if ($this->_rowsToRepeatAtTop[0] != 0 && $this->_rowsToRepeatAtTop[1] != 0) { - return true; - } - } - - return false; - } - - /** - * Get Rows to repeat at top - * - * @return array Containing start column and end column, empty array if option unset - */ - public function getRowsToRepeatAtTop() { - return $this->_rowsToRepeatAtTop; - } - - /** - * Set Rows to repeat at top - * - * @param array $pValue Containing start column and end column, empty array if option unset - * @return PHPExcel_Worksheet_PageSetup - */ - public function setRowsToRepeatAtTop($pValue = null) { - if (is_array($pValue)) { - $this->_rowsToRepeatAtTop = $pValue; - } - return $this; - } - - /** - * Set Rows to repeat at top by start and end - * - * @param int $pStart - * @param int $pEnd - * @return PHPExcel_Worksheet_PageSetup - */ - public function setRowsToRepeatAtTopByStartAndEnd($pStart = 1, $pEnd = 1) { - $this->_rowsToRepeatAtTop = array($pStart, $pEnd); - return $this; - } - - /** - * Get center page horizontally - * - * @return bool - */ - public function getHorizontalCentered() { - return $this->_horizontalCentered; - } - - /** - * Set center page horizontally - * - * @param bool $value - * @return PHPExcel_Worksheet_PageSetup - */ - public function setHorizontalCentered($value = false) { - $this->_horizontalCentered = $value; - return $this; - } - - /** - * Get center page vertically - * - * @return bool - */ - public function getVerticalCentered() { - return $this->_verticalCentered; - } - - /** - * Set center page vertically - * - * @param bool $value - * @return PHPExcel_Worksheet_PageSetup - */ - public function setVerticalCentered($value = false) { - $this->_verticalCentered = $value; - return $this; - } - - /** - * Get print area - * - * @param int $index Identifier for a specific print area range if several ranges have been set - * Default behaviour, or a index value of 0, will return all ranges as a comma-separated string - * Otherwise, the specific range identified by the value of $index will be returned - * Print areas are numbered from 1 - * @throws Exception - * @return string - */ - public function getPrintArea($index = 0) { - if ($index == 0) { - return $this->_printArea; - } - $printAreas = explode(',',$this->_printArea); - if (isset($printAreas[$index-1])) { - return $printAreas[$index-1]; - } - throw new Exception("Requested Print Area does not exist"); - } - - /** - * Is print area set? - * - * @param int $index Identifier for a specific print area range if several ranges have been set - * Default behaviour, or an index value of 0, will identify whether any print range is set - * Otherwise, existence of the range identified by the value of $index will be returned - * Print areas are numbered from 1 - * @return boolean - */ - public function isPrintAreaSet($index = 0) { - if ($index == 0) { - return !is_null($this->_printArea); - } - $printAreas = explode(',',$this->_printArea); - return isset($printAreas[$index-1]); - } - - /** - * Clear a print area - * - * @param int $index Identifier for a specific print area range if several ranges have been set - * Default behaviour, or an index value of 0, will clear all print ranges that are set - * Otherwise, the range identified by the value of $index will be removed from the series - * Print areas are numbered from 1 - * @return PHPExcel_Worksheet_PageSetup - */ - public function clearPrintArea($index = 0) { - if ($index == 0) { - $this->_printArea = NULL; - } else { - $printAreas = explode(',',$this->_printArea); - if (isset($printAreas[$index-1])) { - unset($printAreas[$index-1]); - $this->_printArea = implode(',',$printAreas); - } - } - - return $this; - } - - /** - * Set print area. e.g. 'A1:D10' or 'A1:D10,G5:M20' - * - * @param string $value - * @param int $index Identifier for a specific print area range allowing several ranges to be set - * When the method is "O"verwrite, then a positive integer index will overwrite that indexed - * entry in the print areas list; a negative index value will identify which entry to - * overwrite working bacward through the print area to the list, with the last entry as -1. - * Specifying an index value of 0, will overwrite all existing print ranges. - * When the method is "I"nsert, then a positive index will insert after that indexed entry in - * the print areas list, while a negative index will insert before the indexed entry. - * Specifying an index value of 0, will always append the new print range at the end of the - * list. - * Print areas are numbered from 1 - * @param string $method Determines the method used when setting multiple print areas - * Default behaviour, or the "O" method, overwrites existing print area - * The "I" method, inserts the new print area before any specified index, or at the end of the list - * @return PHPExcel_Worksheet_PageSetup - * @throws Exception - */ - public function setPrintArea($value, $index = 0, $method = self::SETPRINTRANGE_OVERWRITE) { - if (strpos($value,'!') !== false) { - throw new Exception('Cell coordinate must not specify a worksheet.'); - } elseif (strpos($value,':') === false) { - throw new Exception('Cell coordinate must be a range of cells.'); - } elseif (strpos($value,'$') !== false) { - throw new Exception('Cell coordinate must not be absolute.'); - } - $value = strtoupper($value); - - if ($method == self::SETPRINTRANGE_OVERWRITE) { - if ($index == 0) { - $this->_printArea = $value; - } else { - $printAreas = explode(',',$this->_printArea); - if($index < 0) { - $index = count($printAreas) - abs($index) + 1; - } - if (($index <= 0) || ($index > count($printAreas))) { - throw new Exception('Invalid index for setting print range.'); - } - $printAreas[$index-1] = $value; - $this->_printArea = implode(',',$printAreas); - } - } elseif($method == self::SETPRINTRANGE_INSERT) { - if ($index == 0) { - $this->_printArea .= ($this->_printArea == '') ? $value : ','.$value; - } else { - $printAreas = explode(',',$this->_printArea); - if($index < 0) { - $index = abs($index) - 1; - } - if ($index > count($printAreas)) { - throw new Exception('Invalid index for setting print range.'); - } - $printAreas = array_merge(array_slice($printAreas,0,$index),array($value),array_slice($printAreas,$index)); - $this->_printArea = implode(',',$printAreas); - } - } else { - throw new Exception('Invalid method for setting print range.'); - } - - return $this; - } - - /** - * Add a new print area (e.g. 'A1:D10' or 'A1:D10,G5:M20') to the list of print areas - * - * @param string $value - * @param int $index Identifier for a specific print area range allowing several ranges to be set - * A positive index will insert after that indexed entry in the print areas list, while a - * negative index will insert before the indexed entry. - * Specifying an index value of 0, will always append the new print range at the end of the - * list. - * Print areas are numbered from 1 - * @return PHPExcel_Worksheet_PageSetup - * @throws Exception - */ - public function addPrintArea($value, $index = -1) { - return $this->setPrintArea($value, $index, self::SETPRINTRANGE_INSERT); - } - - /** - * Set print area - * - * @param int $column1 Column 1 - * @param int $row1 Row 1 - * @param int $column2 Column 2 - * @param int $row2 Row 2 - * @param int $index Identifier for a specific print area range allowing several ranges to be set - * When the method is "O"verwrite, then a positive integer index will overwrite that indexed - * entry in the print areas list; a negative index value will identify which entry to - * overwrite working bacward through the print area to the list, with the last entry as -1. - * Specifying an index value of 0, will overwrite all existing print ranges. - * When the method is "I"nsert, then a positive index will insert after that indexed entry in - * the print areas list, while a negative index will insert before the indexed entry. - * Specifying an index value of 0, will always append the new print range at the end of the - * list. - * Print areas are numbered from 1 - * @param string $method Determines the method used when setting multiple print areas - * Default behaviour, or the "O" method, overwrites existing print area - * The "I" method, inserts the new print area before any specified index, or at the end of the list - * @return PHPExcel_Worksheet_PageSetup - * @throws Exception - */ - public function setPrintAreaByColumnAndRow($column1, $row1, $column2, $row2, $index = 0, $method = self::SETPRINTRANGE_OVERWRITE) - { - return $this->setPrintArea(PHPExcel_Cell::stringFromColumnIndex($column1) . $row1 . ':' . PHPExcel_Cell::stringFromColumnIndex($column2) . $row2, $index, $method); - } - - /** - * Add a new print area to the list of print areas - * - * @param int $column1 Start Column for the print area - * @param int $row1 Start Row for the print area - * @param int $column2 End Column for the print area - * @param int $row2 End Row for the print area - * @param int $index Identifier for a specific print area range allowing several ranges to be set - * A positive index will insert after that indexed entry in the print areas list, while a - * negative index will insert before the indexed entry. - * Specifying an index value of 0, will always append the new print range at the end of the - * list. - * Print areas are numbered from 1 - * @return PHPExcel_Worksheet_PageSetup - * @throws Exception - */ - public function addPrintAreaByColumnAndRow($column1, $row1, $column2, $row2, $index = -1) - { - return $this->setPrintArea(PHPExcel_Cell::stringFromColumnIndex($column1) . $row1 . ':' . PHPExcel_Cell::stringFromColumnIndex($column2) . $row2, $index, self::SETPRINTRANGE_INSERT); - } - - /** - * Get first page number - * - * @return int - */ - public function getFirstPageNumber() { - return $this->_firstPageNumber; - } - - /** - * Set first page number - * - * @param int $value - * @return PHPExcel_Worksheet_HeaderFooter - */ - public function setFirstPageNumber($value = null) { - $this->_firstPageNumber = $value; - return $this; - } - - /** - * Reset first page number - * - * @return PHPExcel_Worksheet_HeaderFooter - */ - public function resetFirstPageNumber() { - return $this->setFirstPageNumber(null); - } - - /** - * Implement PHP __clone to create a deep clone, not just a shallow copy. - */ - public function __clone() { - $vars = get_object_vars($this); - foreach ($vars as $key => $value) { - if (is_object($value)) { - $this->$key = clone $value; - } else { - $this->$key = $value; - } - } - } -} diff --git a/admin/survey/excel/PHPExcel/Worksheet/Protection.php b/admin/survey/excel/PHPExcel/Worksheet/Protection.php deleted file mode 100644 index 68e665e..0000000 --- a/admin/survey/excel/PHPExcel/Worksheet/Protection.php +++ /dev/null @@ -1,545 +0,0 @@ -_sheet || - $this->_objects || - $this->_scenarios || - $this->_formatCells || - $this->_formatColumns || - $this->_formatRows || - $this->_insertColumns || - $this->_insertRows || - $this->_insertHyperlinks || - $this->_deleteColumns || - $this->_deleteRows || - $this->_selectLockedCells || - $this->_sort || - $this->_autoFilter || - $this->_pivotTables || - $this->_selectUnlockedCells; - } - - /** - * Get Sheet - * - * @return boolean - */ - function getSheet() { - return $this->_sheet; - } - - /** - * Set Sheet - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_Protection - */ - function setSheet($pValue = false) { - $this->_sheet = $pValue; - return $this; - } - - /** - * Get Objects - * - * @return boolean - */ - function getObjects() { - return $this->_objects; - } - - /** - * Set Objects - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_Protection - */ - function setObjects($pValue = false) { - $this->_objects = $pValue; - return $this; - } - - /** - * Get Scenarios - * - * @return boolean - */ - function getScenarios() { - return $this->_scenarios; - } - - /** - * Set Scenarios - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_Protection - */ - function setScenarios($pValue = false) { - $this->_scenarios = $pValue; - return $this; - } - - /** - * Get FormatCells - * - * @return boolean - */ - function getFormatCells() { - return $this->_formatCells; - } - - /** - * Set FormatCells - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_Protection - */ - function setFormatCells($pValue = false) { - $this->_formatCells = $pValue; - return $this; - } - - /** - * Get FormatColumns - * - * @return boolean - */ - function getFormatColumns() { - return $this->_formatColumns; - } - - /** - * Set FormatColumns - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_Protection - */ - function setFormatColumns($pValue = false) { - $this->_formatColumns = $pValue; - return $this; - } - - /** - * Get FormatRows - * - * @return boolean - */ - function getFormatRows() { - return $this->_formatRows; - } - - /** - * Set FormatRows - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_Protection - */ - function setFormatRows($pValue = false) { - $this->_formatRows = $pValue; - return $this; - } - - /** - * Get InsertColumns - * - * @return boolean - */ - function getInsertColumns() { - return $this->_insertColumns; - } - - /** - * Set InsertColumns - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_Protection - */ - function setInsertColumns($pValue = false) { - $this->_insertColumns = $pValue; - return $this; - } - - /** - * Get InsertRows - * - * @return boolean - */ - function getInsertRows() { - return $this->_insertRows; - } - - /** - * Set InsertRows - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_Protection - */ - function setInsertRows($pValue = false) { - $this->_insertRows = $pValue; - return $this; - } - - /** - * Get InsertHyperlinks - * - * @return boolean - */ - function getInsertHyperlinks() { - return $this->_insertHyperlinks; - } - - /** - * Set InsertHyperlinks - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_Protection - */ - function setInsertHyperlinks($pValue = false) { - $this->_insertHyperlinks = $pValue; - return $this; - } - - /** - * Get DeleteColumns - * - * @return boolean - */ - function getDeleteColumns() { - return $this->_deleteColumns; - } - - /** - * Set DeleteColumns - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_Protection - */ - function setDeleteColumns($pValue = false) { - $this->_deleteColumns = $pValue; - return $this; - } - - /** - * Get DeleteRows - * - * @return boolean - */ - function getDeleteRows() { - return $this->_deleteRows; - } - - /** - * Set DeleteRows - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_Protection - */ - function setDeleteRows($pValue = false) { - $this->_deleteRows = $pValue; - return $this; - } - - /** - * Get SelectLockedCells - * - * @return boolean - */ - function getSelectLockedCells() { - return $this->_selectLockedCells; - } - - /** - * Set SelectLockedCells - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_Protection - */ - function setSelectLockedCells($pValue = false) { - $this->_selectLockedCells = $pValue; - return $this; - } - - /** - * Get Sort - * - * @return boolean - */ - function getSort() { - return $this->_sort; - } - - /** - * Set Sort - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_Protection - */ - function setSort($pValue = false) { - $this->_sort = $pValue; - return $this; - } - - /** - * Get AutoFilter - * - * @return boolean - */ - function getAutoFilter() { - return $this->_autoFilter; - } - - /** - * Set AutoFilter - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_Protection - */ - function setAutoFilter($pValue = false) { - $this->_autoFilter = $pValue; - return $this; - } - - /** - * Get PivotTables - * - * @return boolean - */ - function getPivotTables() { - return $this->_pivotTables; - } - - /** - * Set PivotTables - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_Protection - */ - function setPivotTables($pValue = false) { - $this->_pivotTables = $pValue; - return $this; - } - - /** - * Get SelectUnlockedCells - * - * @return boolean - */ - function getSelectUnlockedCells() { - return $this->_selectUnlockedCells; - } - - /** - * Set SelectUnlockedCells - * - * @param boolean $pValue - * @return PHPExcel_Worksheet_Protection - */ - function setSelectUnlockedCells($pValue = false) { - $this->_selectUnlockedCells = $pValue; - return $this; - } - - /** - * Get Password (hashed) - * - * @return string - */ - function getPassword() { - return $this->_password; - } - - /** - * Set Password - * - * @param string $pValue - * @param boolean $pAlreadyHashed If the password has already been hashed, set this to true - * @return PHPExcel_Worksheet_Protection - */ - function setPassword($pValue = '', $pAlreadyHashed = false) { - if (!$pAlreadyHashed) { - $pValue = PHPExcel_Shared_PasswordHasher::hashPassword($pValue); - } - $this->_password = $pValue; - return $this; - } - - /** - * Implement PHP __clone to create a deep clone, not just a shallow copy. - */ - public function __clone() { - $vars = get_object_vars($this); - foreach ($vars as $key => $value) { - if (is_object($value)) { - $this->$key = clone $value; - } else { - $this->$key = $value; - } - } - } -} diff --git a/admin/survey/excel/PHPExcel/Worksheet/Row.php b/admin/survey/excel/PHPExcel/Worksheet/Row.php deleted file mode 100644 index 8d1aea0..0000000 --- a/admin/survey/excel/PHPExcel/Worksheet/Row.php +++ /dev/null @@ -1,90 +0,0 @@ -_parent = $parent; - $this->_rowIndex = $rowIndex; - } - - /** - * Destructor - */ - public function __destruct() { - unset($this->_parent); - } - - /** - * Get row index - * - * @return int - */ - public function getRowIndex() { - return $this->_rowIndex; - } - - /** - * Get cell iterator - * - * @return PHPExcel_Worksheet_CellIterator - */ - public function getCellIterator() { - return new PHPExcel_Worksheet_CellIterator($this->_parent, $this->_rowIndex); - } -} diff --git a/admin/survey/excel/PHPExcel/Worksheet/RowDimension.php b/admin/survey/excel/PHPExcel/Worksheet/RowDimension.php deleted file mode 100644 index 6f19957..0000000 --- a/admin/survey/excel/PHPExcel/Worksheet/RowDimension.php +++ /dev/null @@ -1,265 +0,0 @@ -_rowIndex = $pIndex; - - // set row dimension as unformatted by default - $this->_xfIndex = null; - } - - /** - * Get Row Index - * - * @return int - */ - public function getRowIndex() { - return $this->_rowIndex; - } - - /** - * Set Row Index - * - * @param int $pValue - * @return PHPExcel_Worksheet_RowDimension - */ - public function setRowIndex($pValue) { - $this->_rowIndex = $pValue; - return $this; - } - - /** - * Get Row Height - * - * @return double - */ - public function getRowHeight() { - return $this->_rowHeight; - } - - /** - * Set Row Height - * - * @param double $pValue - * @return PHPExcel_Worksheet_RowDimension - */ - public function setRowHeight($pValue = -1) { - $this->_rowHeight = $pValue; - return $this; - } - - /** - * Get ZeroHeight - * - * @return bool - */ - public function getzeroHeight() { - return $this->_zeroHeight; - } - - /** - * Set ZeroHeight - * - * @param bool $pValue - * @return PHPExcel_Worksheet_RowDimension - */ - public function setzeroHeight($pValue = false) { - $this->_zeroHeight = $pValue; - return $this; - } - - /** - * Get Visible - * - * @return bool - */ - public function getVisible() { - return $this->_visible; - } - - /** - * Set Visible - * - * @param bool $pValue - * @return PHPExcel_Worksheet_RowDimension - */ - public function setVisible($pValue = true) { - $this->_visible = $pValue; - return $this; - } - - /** - * Get Outline Level - * - * @return int - */ - public function getOutlineLevel() { - return $this->_outlineLevel; - } - - /** - * Set Outline Level - * - * Value must be between 0 and 7 - * - * @param int $pValue - * @throws Exception - * @return PHPExcel_Worksheet_RowDimension - */ - public function setOutlineLevel($pValue) { - if ($pValue < 0 || $pValue > 7) { - throw new Exception("Outline level must range between 0 and 7."); - } - - $this->_outlineLevel = $pValue; - return $this; - } - - /** - * Get Collapsed - * - * @return bool - */ - public function getCollapsed() { - return $this->_collapsed; - } - - /** - * Set Collapsed - * - * @param bool $pValue - * @return PHPExcel_Worksheet_RowDimension - */ - public function setCollapsed($pValue = true) { - $this->_collapsed = $pValue; - return $this; - } - - /** - * Get index to cellXf - * - * @return int - */ - public function getXfIndex() - { - return $this->_xfIndex; - } - - /** - * Set index to cellXf - * - * @param int $pValue - * @return PHPExcel_Worksheet_RowDimension - */ - public function setXfIndex($pValue = 0) - { - $this->_xfIndex = $pValue; - return $this; - } - - /** - * Implement PHP __clone to create a deep clone, not just a shallow copy. - */ - public function __clone() { - $vars = get_object_vars($this); - foreach ($vars as $key => $value) { - if (is_object($value)) { - $this->$key = clone $value; - } else { - $this->$key = $value; - } - } - } -} diff --git a/admin/survey/excel/PHPExcel/Worksheet/RowIterator.php b/admin/survey/excel/PHPExcel/Worksheet/RowIterator.php deleted file mode 100644 index 598508d..0000000 --- a/admin/survey/excel/PHPExcel/Worksheet/RowIterator.php +++ /dev/null @@ -1,148 +0,0 @@ -_subject = $subject; - $this->resetStart($startRow); - } - - /** - * Destructor - */ - public function __destruct() { - unset($this->_subject); - } - - /** - * (Re)Set the start row and the current row pointer - * - * @param integer $startRow The row number at which to start iterating - */ - public function resetStart($startRow = 1) { - $this->_startRow = $startRow; - $this->seek($startRow); - } - - /** - * Set the row pointer to the selected row - * - * @param integer $row The row number to set the current pointer at - */ - public function seek($row = 1) { - $this->_position = $row; - } - - /** - * Rewind the iterator to the starting row - */ - public function rewind() { - $this->_position = $this->_startRow; - } - - /** - * Return the current row in this worksheet - * - * @return PHPExcel_Worksheet_Row - */ - public function current() { - return new PHPExcel_Worksheet_Row($this->_subject, $this->_position); - } - - /** - * Return the current iterator key - * - * @return int - */ - public function key() { - return $this->_position; - } - - /** - * Set the iterator to its next value - */ - public function next() { - ++$this->_position; - } - - /** - * Set the iterator to its previous value - */ - public function prev() { - if ($this->_position > 1) - --$this->_position; - } - - /** - * Indicate if more rows exist in the worksheet - * - * @return boolean - */ - public function valid() { - return $this->_position <= $this->_subject->getHighestRow(); - } -} diff --git a/admin/survey/excel/PHPExcel/Worksheet/SheetView.php b/admin/survey/excel/PHPExcel/Worksheet/SheetView.php deleted file mode 100644 index 7b4413a..0000000 --- a/admin/survey/excel/PHPExcel/Worksheet/SheetView.php +++ /dev/null @@ -1,188 +0,0 @@ -_zoomScale; - } - - /** - * Set ZoomScale - * - * Valid values range from 10 to 400. - * - * @param int $pValue - * @throws Exception - * @return PHPExcel_Worksheet_SheetView - */ - public function setZoomScale($pValue = 100) { - // Microsoft Office Excel 2007 only allows setting a scale between 10 and 400 via the user interface, - // but it is apparently still able to handle any scale >= 1 - if (($pValue >= 1) || is_null($pValue)) { - $this->_zoomScale = $pValue; - } else { - throw new Exception("Scale must be greater than or equal to 1."); - } - return $this; - } - - /** - * Get ZoomScaleNormal - * - * @return int - */ - public function getZoomScaleNormal() { - return $this->_zoomScaleNormal; - } - - /** - * Set ZoomScale - * - * Valid values range from 10 to 400. - * - * @param int $pValue - * @throws Exception - * @return PHPExcel_Worksheet_SheetView - */ - public function setZoomScaleNormal($pValue = 100) { - if (($pValue >= 1) || is_null($pValue)) { - $this->_zoomScaleNormal = $pValue; - } else { - throw new Exception("Scale must be greater than or equal to 1."); - } - return $this; - } - - /** - * Get View - * - * @return string - */ - public function getView() { - return $this->_sheetviewType; - } - - /** - * Set View - * - * Valid values are - * 'normal' self::SHEETVIEW_NORMAL - * 'pageLayout' self::SHEETVIEW_PAGE_LAYOUT - * 'pageBreakPreview' self::SHEETVIEW_PAGE_BREAK_PREVIEW - * - * @param string $pValue - * @throws Exception - * @return PHPExcel_Worksheet_SheetView - */ - public function setView($pValue = NULL) { - // MS Excel 2007 allows setting the view to 'normal', 'pageLayout' or 'pageBreakPreview' - // via the user interface - if ($pValue === NULL) - $pValue = self::SHEETVIEW_NORMAL; - if (in_array($pValue, self::$_sheetViewTypes)) { - $this->_sheetviewType = $pValue; - } else { - throw new Exception("Invalid sheetview layout type."); - } - - return $this; - } - - /** - * Implement PHP __clone to create a deep clone, not just a shallow copy. - */ - public function __clone() { - $vars = get_object_vars($this); - foreach ($vars as $key => $value) { - if (is_object($value)) { - $this->$key = clone $value; - } else { - $this->$key = $value; - } - } - } -} -- cgit v1.2.3